/* Marketing: Seite „Bavora Book“ (/bavora-book) und Startseiten-Teaser.
   Baut auf marketing-v43.css auf (Container, Hero, Buttons, FAQ). Präfix: bvb- */
.bvb-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Video im Hochformat (9:16) mit eigenen Bedienelementen */
.bvb-video{margin:0;justify-self:center;width:min(100%,340px)}
.bvb-video__frame{position:relative;aspect-ratio:9/16;max-height:min(78vh,640px);margin:0 auto;border-radius:30px;overflow:hidden;
  background:#e9efe9;border:1px solid rgba(255,223,155,.4);box-shadow:0 28px 70px rgba(0,0,0,.42),0 0 0 8px rgba(255,255,255,.05)}
.bvb-video video{display:block;width:100%;height:100%;object-fit:cover;background:#e9efe9}
.bvb-video__controls{position:absolute;left:12px;right:12px;bottom:12px;display:flex;justify-content:space-between;gap:8px;pointer-events:none}
.bvb-video__controls button{pointer-events:auto;appearance:none;border:1px solid rgba(255,255,255,.4);background:rgba(9,37,30,.84);color:#fff;
  border-radius:999px;padding:9px 14px;font-family:inherit;font-size:13px;font-weight:700;line-height:1;cursor:pointer;backdrop-filter:blur(6px);transition:background .2s ease}
.bvb-video__controls button:hover{background:rgba(9,37,30,.97)}
.bvb-video__controls button[data-bvb-sound][aria-pressed="true"]{background:#ffdf9b;color:#102e25;border-color:#ffdf9b}
.bvb-video__controls button:focus-visible{outline:3px solid #ffdf9b;outline-offset:3px}
.bvb-video figcaption{margin-top:12px;text-align:center;font-size:12px;line-height:1.45;color:#a9c3b8}

/* Hero */
.bvb-hero .bv43-branch-hero__layout{grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:64px;align-items:center}
.bv-marketing.bv-v43 .bvb-hero h1{font-size:clamp(44px,4.6vw,70px)}
.bv-marketing.bv-v43 .bvb-hero h1 em{display:block}
.bv-marketing.bv-v43 .bvb-hero__lead{font-size:19px;line-height:1.68;color:#d7e4dc;max-width:600px;margin:0 0 30px}

/* Telefon-Rahmen für Screenshots (600 × 1298) */
.bvb-phone{display:block;border-radius:30px;padding:7px;background:#0e1f19;box-shadow:0 22px 46px rgba(16,46,37,.22),inset 0 0 0 1px rgba(255,255,255,.08)}
.bvb-phone img{display:block;width:100%;height:auto;aspect-ratio:600/1298;border-radius:24px;background:#eef2ee}

/* Backoffice vs. Studio-Alltag */
.bvb-duo{display:grid;grid-template-columns:minmax(0,1fr) 96px minmax(0,1fr);align-items:stretch;gap:0}
.bvb-duo__card{border-radius:24px;padding:30px 30px 28px;border:1px solid #e0e5db;background:#fbfaf6}
.bvb-duo__card--book{background:#102e25;color:#fff;border-color:#102e25}
.bvb-duo__tag{display:inline-block;font-size:11px;letter-spacing:.18em;font-weight:850;text-transform:uppercase;color:#a07836;margin-bottom:12px}
.bvb-duo__card--book .bvb-duo__tag{color:#ffdf9b}
.bvb-duo h3{font-size:clamp(26px,2.6vw,34px);line-height:1.1;margin:0 0 8px;color:#102e25}
.bvb-duo__card--book h3{color:#fff}
.bv-marketing.bv-v43 .bvb-duo__card>p{margin:0 0 18px;font-size:16px;line-height:1.6;color:#54655c}
.bv-marketing.bv-v43 .bvb-duo__card--book>p{color:#c6d8ce}
.bvb-duo ul{list-style:none;margin:0 0 18px;padding:0;display:grid;gap:10px}
.bvb-duo li{position:relative;padding-left:28px;font-size:15.5px;line-height:1.5;color:#2f4439}
.bvb-duo li::before{content:"";position:absolute;left:0;top:5px;width:16px;height:16px;border-radius:50%;background:#dcebe1;box-shadow:inset 0 0 0 4px #fbfaf6}
.bvb-duo__card--book li{color:#e8f0eb}
.bvb-duo__card--book li::before{background:#ffdf9b;box-shadow:inset 0 0 0 4px #102e25}
.bvb-duo__card a{font-size:14px;font-weight:800;color:#102e25;text-decoration:underline;text-underline-offset:3px}
.bvb-duo__card--book a{color:#ffdf9b}
.bvb-duo__sync{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center}
.bvb-duo__sync span{display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:#ffdf9b;color:#102e25;font-size:24px;font-weight:800;box-shadow:0 10px 24px rgba(179,137,74,.35)}
.bvb-duo__sync small{font-size:11px;letter-spacing:.12em;font-weight:850;text-transform:uppercase;color:#6a7c72;line-height:1.4}
.bvb-promise{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:28px 0 0;padding:0;list-style:none}
.bvb-promise li{font-size:14px;font-weight:750;color:#102e25;background:#ece7da;border-radius:999px;padding:9px 16px}

/* Gründe für die eigene App */
.bvb-reasons{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.bvb-reasons li{padding:26px 24px 24px;border:1px solid #e0e5db;border-radius:20px;background:#fff}
.bvb-reasons__num{display:block;font-size:13px;font-weight:850;letter-spacing:.14em;color:#b3894a;margin-bottom:12px}
.bvb-reasons h3{font-size:20px;line-height:1.3;margin:0 0 8px;color:#153025}
.bv-marketing.bv-v43 .bvb-reasons p{margin:0;font-size:15.5px;line-height:1.62;color:#54655c}

/* Branchen-Reiter */
.bvb-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 26px;padding:0}
.bvb-tabs button{appearance:none;font:inherit;font-size:15px;font-weight:800;padding:11px 18px;border-radius:999px;border:1px solid #c9d3cc;background:#fff;color:#102e25;cursor:pointer}
.bvb-tabs button[aria-selected="true"]{background:#102e25;border-color:#102e25;color:#fff}
.bvb-tabs button:focus-visible{outline:3px solid #b3894a;outline-offset:2px}
.bvb-panel[hidden]{display:none}
.bvb-panel__intro{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px 24px;margin:0 0 18px}
.bv-marketing.bv-v43 .bvb-panel__intro p{margin:0;max-width:640px;font-size:16.5px;line-height:1.62;color:#51675b}
.bvb-panel__intro a{font-size:14px;font-weight:800;color:#102e25;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
.bvb-rail-wrap{position:relative}
.bvb-rail{list-style:none;margin:0;padding:6px 2px 18px;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(200px,228px);gap:22px;
  overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-inline:contain;scrollbar-width:thin;scrollbar-color:#b4cbb9 transparent}
.bvb-rail>li{scroll-snap-align:start}
.bvb-rail figure{margin:0}
.bvb-rail figcaption{margin-top:14px}
.bvb-rail figcaption strong{display:block;font-size:16px;line-height:1.3;color:#153025;margin-bottom:4px}
.bvb-rail figcaption span{display:block;font-size:14px;line-height:1.5;color:#5b7166}
.bvb-rail__nav{display:flex;gap:8px;justify-content:flex-end;margin-top:4px}
.bvb-rail__nav button{appearance:none;width:42px;height:42px;border-radius:50%;border:1px solid #c9d3cc;background:#fff;color:#102e25;font-size:18px;font-weight:800;cursor:pointer}
.bvb-rail__nav button:disabled{opacity:.35;cursor:default}
.bvb-rail__nav button:focus-visible{outline:3px solid #b3894a;outline-offset:2px}
.bvb-note{margin:14px 0 0;padding:14px 18px;border-radius:14px;background:#f2efe6;color:#4f5d45;font-size:15px;line-height:1.6}

/* Als App hinzufügen */
.bvb-install{background:#102e25;color:#fff;padding:clamp(64px,8vw,104px) 0}
.bvb-install__layout{display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:clamp(36px,6vw,80px);align-items:center}
.bvb-install .bvb-phone{max-width:300px;margin:0 auto;box-shadow:0 30px 70px rgba(0,0,0,.45),inset 0 0 0 1px rgba(255,255,255,.12)}
.bvb-install .bv43-eyebrow{color:#ffdf9b}
.bv-marketing.bv-v43 .bvb-install h2{font-size:clamp(32px,4vw,52px);line-height:1.08;color:#fff;margin:0 0 16px}
.bv-marketing.bv-v43 .bvb-install__lead{font-size:18px;line-height:1.65;color:#c6d8ce;margin:0 0 28px;max-width:640px}
.bvb-steps{list-style:none;margin:0 0 28px;padding:0;counter-reset:bvbstep;display:grid;gap:16px}
.bvb-steps>li{counter-increment:bvbstep;position:relative;padding:0 0 0 52px}
.bvb-steps>li::before{content:counter(bvbstep);position:absolute;left:0;top:0;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#ffdf9b;color:#102e25;font-size:15px;font-weight:850}
.bvb-steps h3{font-size:19px;line-height:1.35;margin:4px 0 6px;color:#fff}
.bv-marketing.bv-v43 .bvb-steps p{margin:0;font-size:15.5px;line-height:1.62;color:#c6d8ce}
.bvb-platforms{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}
.bvb-platforms div{border:1px solid rgba(255,255,255,.18);border-radius:16px;padding:14px 16px;background:rgba(255,255,255,.04)}
.bvb-platforms strong{display:block;font-size:14px;color:#ffdf9b;margin-bottom:6px}
.bvb-platforms ol{margin:0;padding-left:18px;font-size:14.5px;line-height:1.6;color:#e1ebe5}
.bvb-easy{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.bvb-easy li{font-size:14px;font-weight:750;padding:9px 15px;border-radius:999px;background:rgba(255,223,155,.14);color:#ffdf9b;border:1px solid rgba(255,223,155,.3)}
.bvb-easy-title{font-size:13px;letter-spacing:.16em;font-weight:850;text-transform:uppercase;color:#a9c3b8;margin:0 0 12px}

/* Kundenbuchung */
.bvb-flow{list-style:none;margin:0;padding:6px 2px 18px;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(200px,228px);gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#b4cbb9 transparent}
.bvb-flow>li{scroll-snap-align:start}
.bvb-flow figure{margin:0}
.bvb-flow figcaption{margin-top:14px}
.bvb-flow__num{display:inline-grid;place-items:center;min-width:28px;height:28px;padding:0 8px;border-radius:999px;background:#102e25;color:#ffdf9b;font-size:13px;font-weight:850;margin-bottom:8px}
.bvb-flow figcaption strong{display:block;font-size:16px;line-height:1.3;color:#153025;margin-bottom:4px}
.bvb-flow figcaption span:last-child{display:block;font-size:14px;line-height:1.5;color:#5b7166}
.bvb-arrive{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px;margin-top:22px;padding:18px 22px;border-radius:18px;background:#102e25;color:#fff}
.bvb-arrive strong{color:#ffdf9b}
.bv-marketing.bv-v43 .bvb-arrive p{margin:0;font-size:16px;line-height:1.55;color:#e1ebe5}

/* Leitsatz */
.bvb-statement{padding:clamp(56px,7vw,92px) 0;background:#f6f4ee;text-align:center}
.bv-marketing.bv-v43 .bvb-statement h2{font-size:clamp(32px,4.4vw,58px);line-height:1.08;margin:0 auto 18px;max-width:900px;color:#102e25}
.bv-marketing.bv-v43 .bvb-statement h2 em{color:#b3894a;font-style:normal;display:block}
.bv-marketing.bv-v43 .bvb-statement p{margin:0 auto 28px;max-width:640px;font-size:18px;line-height:1.65;color:#51675b}
.bvb-statement .bv43-actions{justify-content:center}

/* Startseiten-Teaser */
.bvb-teaser{background:#102e25;color:#fff;padding:clamp(64px,8vw,104px) 0}
.bvb-teaser__layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(36px,6vw,80px);align-items:center}
.bvb-teaser .bv43-eyebrow{color:#ffdf9b}
.bv-marketing.bv-v43 .bvb-teaser h2{font-size:clamp(34px,4.4vw,60px);line-height:1.05;color:#fff;margin:0 0 18px}
.bv-marketing.bv-v43 .bvb-teaser h2 em{color:#ffdf9b;font-style:normal}
.bv-marketing.bv-v43 .bvb-teaser__lead{font-size:18px;line-height:1.66;color:#c6d8ce;margin:0 0 24px;max-width:600px}
.bvb-teaser__list{list-style:none;margin:0 0 28px;padding:0;display:grid;gap:10px}
.bvb-teaser__list li{position:relative;padding-left:28px;font-size:16px;line-height:1.5;color:#e8f0eb}
.bvb-teaser__list li::before{content:"";position:absolute;left:0;top:5px;width:16px;height:16px;border-radius:50%;background:#ffdf9b;box-shadow:inset 0 0 0 4px #102e25}
.bvb-teaser .bv43-btn--outline{border-color:rgba(250,250,250,.52);color:#fff}

@media(max-width:1000px){
  .bvb-reasons{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bvb-duo{grid-template-columns:1fr;gap:14px}
  .bvb-duo__sync{flex-direction:row}
}
@media(max-width:900px){
  .bvb-hero .bv43-branch-hero__layout{grid-template-columns:1fr;gap:40px}
  .bvb-teaser__layout,.bvb-install__layout{grid-template-columns:1fr}
  .bvb-install .bvb-phone{max-width:240px}
  .bvb-teaser .bvb-video{width:min(100%,300px)}
}
@media(max-width:640px){
  .bv-marketing.bv-v43 .bvb-hero h1{font-size:44px}
  .bvb-reasons,.bvb-platforms{grid-template-columns:1fr}
  .bvb-rail,.bvb-flow{grid-auto-columns:68%;gap:16px}
  .bvb-rail__nav{display:none}
  .bvb-video{width:min(88%,290px)}
  .bvb-video__controls button{padding:8px 11px;font-size:12px}
  .bvb-duo__card{padding:24px 22px}
}
@media(prefers-reduced-motion:reduce){.bvb-video__controls button{transition:none}.bvb-rail,.bvb-flow{scroll-behavior:auto}}
.bvb-content--white{background:#fff}
.bvb-step{scroll-margin-top:90px}
