
:root{
  --turkis:#01c1b5;
  --turkis-dark:#01998f;
  --turkis-soft:#e9fbf8;
  --sand:#f3ede4;
  --soft:#f7f8f7;
  --panel:#fcfcfb;
  --ink:#272727;
  --muted:#676767;
  --line:rgba(25,25,25,.08);
  --line-strong:rgba(25,25,25,.12);
  --card:#ffffff;
  --shadow:0 16px 48px rgba(20,20,20,.06);
  --shadow-soft:0 8px 26px rgba(20,20,20,.045);
  --radius:24px;
  --radius-lg:34px;
  --max:1180px;
  --header-h:78px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter, Arial, Helvetica, sans-serif;
  color:var(--ink);
  background:
    radial-gradient(circle at top left, rgba(1,193,181,.04), transparent 24%),
    radial-gradient(circle at 100% 18%, rgba(243,237,228,.8), transparent 24%),
    linear-gradient(180deg,#fbf8f4 0%,#fcfbf9 44%,#f8f6f2 100%);
  line-height:1.6;
}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}
button,input,select,textarea{font:inherit}
.wrap{width:min(var(--max),calc(100% - 32px));margin:0 auto}
.skip-link{position:absolute;left:-9999px;top:0;background:#000;color:#fff;padding:10px 14px;z-index:999}
.skip-link:focus{left:12px;top:12px}
.site-header{
  position:sticky;top:0;z-index:100;
  background:rgba(255,255,255,.78);
  backdrop-filter:blur(18px);
  border-bottom:1px solid rgba(255,255,255,.4);
}
.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:var(--header-h);gap:18px}
.brand{display:flex;align-items:center;gap:12px;font-weight:800;color:var(--turkis)}
.brand-mark{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--turkis);color:#fff;box-shadow:var(--shadow-soft);font-size:1rem}
.brand-sub{display:block;font-size:.82rem;color:var(--muted);font-weight:600}
.nav-toggle{display:none;border:1px solid var(--line);background:#fff;border-radius:14px;padding:10px 12px;color:var(--ink)}
.nav{display:flex;align-items:center;gap:20px;padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.75);border:1px solid rgba(0,0,0,.05);box-shadow:var(--shadow-soft)}
.nav a{color:#383838;font-weight:650;font-size:.96rem}
.nav a:hover,.nav a.active{color:var(--turkis)}
.header-cta{display:flex;align-items:center;gap:10px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 18px;border-radius:16px;background:var(--turkis);color:#fff;font-weight:700;transition:.25s ease;border:1px solid transparent;box-shadow:var(--shadow-soft)}
.btn:hover{transform:translateY(-2px);background:var(--turkis-dark)}
.btn.secondary{background:rgba(255,255,255,.86);color:var(--ink);border-color:rgba(0,0,0,.08);box-shadow:none}
.btn.small{padding:10px 13px;border-radius:12px;font-size:.94rem}
main{display:block}
.section{padding:56px 0;position:relative}
.section.tight{padding:28px 0}
.section::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,transparent,rgba(0,0,0,.05),transparent)}
.eyebrow{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.14);backdrop-filter:blur(8px);color:rgba(255,255,255,.96);font-weight:650;font-size:.9rem}
.page-hero .eyebrow,.band .eyebrow{background:#fff;border:1px solid var(--line);color:var(--muted);backdrop-filter:none}
h1,h2,h3{margin:0 0 10px;letter-spacing:-.03em;color:#232323}
h1{font-size:clamp(2rem,4.5vw,3.45rem);line-height:1.02;font-weight:760;max-width:12ch}
h2{font-size:clamp(1.55rem,3vw,2.45rem);line-height:1.08;font-weight:730;max-width:16ch}
h3{font-size:clamp(1.12rem,1.8vw,1.35rem);line-height:1.2;font-weight:720}
p{margin:0 0 16px}
.lead{font-size:1rem;color:#555;max-width:60ch}
.muted{color:var(--muted)}
.small{font-size:.94rem}
.grid-2{display:grid;grid-template-columns:1.02fr .98fr;gap:28px;align-items:center}
.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.card{
  background:linear-gradient(180deg,rgba(255,255,255,.95),#fff);
  border:1px solid rgba(0,0,0,.05);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  overflow:hidden;
}
.card-body{padding:22px 22px 24px}
.card-body p{color:#555}
.card-media{aspect-ratio:4/3;object-fit:cover;width:100%}
.kicker{font-size:.88rem;font-weight:720;color:var(--turkis);margin-bottom:8px;text-transform:uppercase;letter-spacing:.03em}
.hero{padding:14px 0 26px}
.hero.hero-immersive{padding:8px 0 24px}
.hero-shell{display:grid;grid-template-columns:1fr;gap:0;align-items:stretch}
.hero-copy{display:none}
.hero-media{
  position:relative;min-height:min(88svh,780px);border-radius:var(--radius-lg);overflow:hidden;
  box-shadow:var(--shadow);background:#d7e1df;border:1px solid rgba(255,255,255,.4)
}
.hero-video-wrap,.poster-img{position:absolute;inset:0;width:100%;height:100%}
.hero-video-wrap iframe{position:absolute;top:50%;left:50%;width:120%;height:120%;border:0;transform:translate(-50%,-50%) scale(1.08)}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.22),rgba(0,0,0,.52) 68%,rgba(0,0,0,.66))}
.hero-content{
  position:absolute;left:clamp(18px,4vw,42px);right:clamp(18px,4vw,42px);bottom:clamp(18px,4vw,40px);z-index:2;
  max-width:690px;color:#fff
}
.hero-content h1{color:#fff;margin-bottom:12px}
.hero-content .lead{color:rgba(255,255,255,.94);font-size:1.02rem;max-width:46ch;margin-bottom:18px;text-wrap:pretty}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:8px 0 20px}
.hero .btn.secondary{background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.25);color:#fff;backdrop-filter:blur(10px)}
.hero-mobile-meta{display:none}
.hero-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:8px;max-width:760px}
.stat{background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.22);backdrop-filter:blur(12px);border-radius:18px;padding:14px 16px;color:#fff;box-shadow:0 14px 36px rgba(0,0,0,.18)}
.stat strong{display:block;font-size:1rem;margin-bottom:2px}
.stat span{color:rgba(255,255,255,.9);font-size:.93rem}
.hero-badge{display:none}
.scroll-indicator{
  position:fixed;left:50%;bottom:18px;transform:translateX(-50%);
  width:50px;height:50px;border-radius:999px;display:grid;place-items:center;
  background:rgba(255,255,255,.58);border:1px solid rgba(255,255,255,.42);
  backdrop-filter:blur(12px);box-shadow:0 14px 34px rgba(0,0,0,.16);z-index:90;
  color:rgba(48,48,48,.82);animation:bbFloat 2.2s ease-in-out infinite;transition:opacity .25s ease,transform .25s ease, background .25s ease;
}
.scroll-indicator:hover{background:rgba(255,255,255,.76)}
.scroll-indicator svg{width:18px;height:18px;display:block}
@keyframes bbFloat{
  0%{transform:translateX(-50%) translateY(0);opacity:.74}
  50%{transform:translateX(-50%) translateY(7px);opacity:1}
  100%{transform:translateX(-50%) translateY(0);opacity:.74}
}
.scroll-indicator.hide{opacity:0;pointer-events:none;transform:translateX(-50%) translateY(10px)}

.section-head{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:18px}
.section-head p{margin:0;max-width:60ch}
.band{padding:30px;border-radius:30px;background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(255,255,255,.9));box-shadow:var(--shadow);border:1px solid rgba(0,0,0,.05)}
.band.alt{background:linear-gradient(180deg,rgba(248,251,250,.96),rgba(255,255,255,.96))}
.feature-list,.check-list{display:grid;gap:12px}
.feature-item,.check-item{background:linear-gradient(180deg,#fff,#fcfcfc);border:1px solid rgba(0,0,0,.05);border-radius:18px;padding:15px 16px;box-shadow:var(--shadow-soft)}
.quote{background:linear-gradient(180deg,#fbfbfa,#f7f8f7);border-radius:22px;padding:22px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.04)}
.quote-stars{width:120px;margin-bottom:12px}
.faq{border-top:1px solid var(--line)}
.faq-item{border-bottom:1px solid var(--line);padding:18px 0}.faq-item summary{cursor:pointer;font-weight:700;list-style:none}.faq-item summary::-webkit-details-marker{display:none}.faq-item p{padding-top:10px}
.cta-strip{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:24px;background:linear-gradient(180deg,#fff,#fcfcfc);border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow)}
.split-cta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.contact-box{display:grid;grid-template-columns:.95fr 1.05fr;gap:18px}.contact-card,.map-card{background:#fff;border-radius:26px;box-shadow:var(--shadow);overflow:hidden;border:1px solid rgba(0,0,0,.04)}.contact-card{padding:26px}.contact-row{display:flex;gap:14px;border-top:1px solid var(--line);padding:14px 0}.contact-row:first-of-type{border-top:0}.map-card iframe{width:100%;height:100%;min-height:360px;border:0}
.breadcrumbs{font-size:.94rem;color:var(--muted);margin:14px 0}.breadcrumbs a{color:var(--muted)}.page-hero{padding:28px 0 8px}.page-hero .band{padding:36px}
.list-clean{padding-left:18px;margin:0}.list-clean li{margin-bottom:10px}
.form{display:grid;gap:14px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}label{font-weight:700;font-size:.96rem}input,select,textarea{width:100%;padding:14px 14px;border-radius:14px;border:1px solid #d6d6d6;background:#fff;color:var(--ink)}textarea{min-height:130px;resize:vertical}
.notice{background:#fff9ee;border:1px solid #eeddb5;color:#614e23;padding:14px 16px;border-radius:16px}.success-box,.error-box{display:none;padding:15px 16px;border-radius:16px;margin-top:8px}.success-box.show{display:block;background:#effaf8;border:1px solid #b6ebe4}.error-box.show{display:block;background:#fff2f2;border:1px solid #e8b7b7}
.logo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.logo-pill{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;text-align:center;font-weight:800;color:#454545;box-shadow:var(--shadow-soft)}
.social-row{display:flex;gap:12px;flex-wrap:wrap}.social-chip{display:inline-flex;align-items:center;gap:10px;border:1px solid var(--line);padding:12px 14px;border-radius:16px;background:#fff;box-shadow:var(--shadow-soft)}
.region-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
footer{margin-top:32px;padding:38px 0 48px;background:linear-gradient(180deg,rgba(251,251,251,.96),rgba(247,248,247,.96));border-top:1px solid var(--line)}.footer-grid{display:grid;grid-template-columns:1.1fr .8fr .8fr;gap:20px}.footer-nav{display:grid;gap:8px}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease, transform .7s ease}.reveal.visible{opacity:1;transform:none}
@media (max-width:1024px){
  .grid-3,.grid-4,.logo-grid,.region-links,.footer-grid,.contact-box,.split-cta,.grid-2,.hero-stats{grid-template-columns:1fr}
}
@media (max-width:820px){
  .scroll-indicator{bottom:12px;width:40px;height:40px}
  .nav-toggle{display:inline-flex}
  .header-cta .btn.small{display:none}
  .nav{position:absolute;left:14px;right:14px;top:calc(var(--header-h) - 4px);background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:12px;display:none;flex-direction:column;align-items:flex-start}
  .nav.open{display:flex}
}
@media (max-width:640px){
  :root{--header-h:68px}
  .wrap{width:min(var(--max),calc(100% - 20px))}
  .hero.hero-immersive{padding-top:6px}
  .hero-media{min-height:82svh;border-radius:28px}
  .hero-video-wrap iframe{top:50%;left:50%;width:260%;height:138%;transform:translate(-50%,-50%)}
  .hero-content{left:18px;right:18px;bottom:56px;max-width:none}
  .hero-content h1{font-size:1.68rem;line-height:1.03;max-width:10.5ch;margin-bottom:10px;text-shadow:0 8px 28px rgba(0,0,0,.28)}
  .hero-content .lead{font-size:.96rem;line-height:1.44;max-width:21ch;margin-bottom:14px}
  .hero .eyebrow,.hero-stats{display:none}
  .hero-mobile-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;max-width:22rem}
  .hero-mobile-meta span{display:inline-flex;align-items:center;padding:8px 10px;border-radius:999px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.22);backdrop-filter:blur(10px);box-shadow:0 10px 28px rgba(0,0,0,.18);font-size:.84rem;color:#fff}
  .hero-actions{display:grid;grid-template-columns:1fr;gap:10px;margin:0}
  .hero-actions .btn{width:100%}
  .scroll-indicator{bottom:10px;width:42px;height:42px}
  .section,.hero{padding:24px 0}
  .page-hero .band,.band,.contact-card,.card-body{padding:22px}
  .form-row{grid-template-columns:1fr}
  .section-head{align-items:flex-start;flex-direction:column}
}

#weiter{scroll-margin-top:92px}

section{scroll-margin-top:96px}
@media (max-width:640px){
  .scroll-indicator{bottom:12px;width:46px;height:46px}
}

.scroll-indicator{cursor:pointer}
.voucher-preview{padding:0;background:linear-gradient(180deg,rgba(255,255,255,.96),#fff)}
.voucher-preview img{width:100%;height:auto;display:block;border-radius:22px}
.voucher-preview .card-body{padding:18px 22px 24px}
.voucher-note{font-size:.95rem;color:var(--muted)}
@media (max-width:760px){
  .voucher-preview img{border-radius:20px}
}


/* V8 refinements */
body{background:radial-gradient(circle at top left, rgba(1,193,181,.05), transparent 24%),radial-gradient(circle at 100% 18%, rgba(243,237,228,.95), transparent 26%),linear-gradient(180deg,#fbf8f4 0%,#f9f5ef 44%,#f7f3ee 100%)}
.brand{font-family:Georgia, 'Times New Roman', serif;font-weight:700;letter-spacing:-.01em}
.brand-sub,.nav,.btn,body,input,select,textarea{font-family:Inter, Arial, Helvetica, sans-serif}
h1,h2,h3{font-family:Georgia, 'Times New Roman', serif;font-weight:600;letter-spacing:-.02em}
h1{max-width:14ch;font-size:clamp(2rem,4.4vw,3.3rem)}
h2{max-width:18ch}
.lead{font-size:1.02rem;line-height:1.65}
.card,.band,.contact-card,.map-card,.cta-strip{box-shadow:0 18px 46px rgba(20,20,20,.055)}
.hero-overlay{background:linear-gradient(180deg,rgba(0,0,0,.26),rgba(0,0,0,.52) 68%,rgba(0,0,0,.68))}
.page-hero{padding:24px 0 10px}
.page-hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:22px;align-items:stretch}
.page-hero-copy .band{height:100%;display:flex;flex-direction:column;justify-content:center}
.page-hero-media{position:relative;overflow:hidden;border-radius:28px;min-height:360px;box-shadow:var(--shadow);border:1px solid rgba(0,0,0,.04);background:#ede6dc}
.page-hero-media img,.page-hero-media video{width:100%;height:100%;object-fit:cover}
.page-hero-media::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.02),rgba(0,0,0,.18))}
.page-hero-card{position:absolute;left:18px;right:18px;bottom:18px;padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.8);backdrop-filter:blur(10px);box-shadow:0 14px 30px rgba(0,0,0,.12);z-index:2}
.page-scroll-indicator{position:absolute;left:50%;bottom:16px;transform:translateX(-50%);width:44px;height:44px;border-radius:999px;display:grid;place-items:center;background:rgba(255,255,255,.62);border:1px solid rgba(255,255,255,.44);backdrop-filter:blur(12px);box-shadow:0 14px 34px rgba(0,0,0,.16);z-index:2;color:rgba(48,48,48,.82);animation:bbFloat 2.2s ease-in-out infinite;cursor:pointer}
.page-scroll-indicator svg{width:18px;height:18px;display:block}
.legal-page .band{max-width:900px}
.legal-copy{display:grid;gap:14px}
.legal-copy section{padding:0;border:0}
.legal-copy h2{font-size:1.5rem;max-width:none;margin-top:10px}
.legal-copy h3{font-size:1.12rem;margin-top:10px}
.legal-copy p,.legal-copy li{color:#444}
.legal-copy ul{padding-left:20px;margin:0}
.cookie-banner{position:fixed;left:16px;right:16px;bottom:16px;z-index:120;display:none}
.cookie-banner.show{display:block}
.cookie-panel{max-width:920px;margin:0 auto;background:rgba(255,255,255,.96);backdrop-filter:blur(18px);border:1px solid rgba(0,0,0,.08);border-radius:24px;box-shadow:0 24px 60px rgba(0,0,0,.14);padding:20px}
.cookie-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.cookie-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}
.cookie-choice{border:1px solid rgba(0,0,0,.08);border-radius:18px;padding:12px 14px;background:#fff}
.cookie-choice strong{display:block;margin-bottom:4px}
.voucher-hero .page-hero-media{min-height:440px;background:#f6f1e8}
.voucher-hero .page-hero-media img{object-fit:contain;padding:18px}
.meta-note{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}
.meta-note span{display:inline-flex;align-items:center;padding:8px 10px;border-radius:999px;background:#fff;border:1px solid rgba(0,0,0,.06);font-size:.9rem;color:#555}
@media (max-width:900px){.page-hero-grid,.cookie-choices{grid-template-columns:1fr}.page-hero-media{min-height:300px}.voucher-hero .page-hero-media{order:-1;min-height:330px}.cookie-panel{padding:18px}}
@media (max-width:640px){h1{font-size:1.85rem;max-width:12ch}.lead{font-size:.98rem}.page-hero-media{min-height:260px}.page-hero-copy .band{padding:24px}.page-scroll-indicator{bottom:12px;width:42px;height:42px}.footer-grid{grid-template-columns:1fr}.cookie-banner{left:10px;right:10px;bottom:10px}}


/* V9 refinements */
:root{--helper:#72706d}
.brand-mark{display:grid;place-items:center;width:54px;height:54px;border-radius:50%;background:linear-gradient(180deg,#fff,#f4eee5);color:var(--turkis);box-shadow:0 10px 24px rgba(0,0,0,.08);border:1px solid rgba(0,0,0,.05)}
.brand-mark svg{width:34px;height:34px;display:block}
.brand{gap:14px}
.brand-sub{font-size:.72rem;opacity:.8;margin-top:2px}
.muted,.feature-item span,.footer-nav.small.muted,.voucher-note,.cookie-panel .muted{font-size:.92rem;color:var(--helper);line-height:1.55}
.kicker,.eyebrow,.meta-note span{font-size:.8rem;letter-spacing:.02em}
.card-body p,.band p,.contact-card p,.lead{max-width:62ch}
.notice,.success-box,.error-box{font-size:.94rem}
.page-hero-card .muted,.hero-stats span,.stat span{font-size:.84rem}
.hero-mobile-meta span{font-size:.78rem}
.page-scroll-indicator,.scroll-indicator{transition:opacity .25s ease, transform .25s ease, background .25s ease}
.page-scroll-indicator:hover,.scroll-indicator:hover{background:rgba(255,255,255,.82)}
.mobile-scroll-fixed{position:fixed !important;left:50% !important;bottom:14px !important;transform:translateX(-50%) !important;z-index:95 !important;box-shadow:0 16px 38px rgba(0,0,0,.18)}
.mobile-scroll-fixed.hide{opacity:0;pointer-events:none;transform:translateX(-50%) translateY(12px) !important}
@media (max-width:760px){
  .page-hero-grid{grid-template-columns:1fr}
  .page-hero-media{order:-1;min-height:250px}
  .page-hero-copy .band{padding:20px 18px}
  .page-hero-card{left:12px;right:12px;bottom:12px;padding:12px 14px}
  .hero-stats{display:none}
  .brand-mark{width:48px;height:48px}
  .brand-mark svg{width:30px;height:30px}
  .muted,.feature-item span,.footer-nav.small.muted,.voucher-note,.cookie-panel .muted{font-size:.86rem}
  .lead{font-size:.96rem;line-height:1.58}
}

/* V9.1 Server-Test: Vimeo-Fallback und Noindex-Testversion */
.hero-video-wrap{background:#0F3D3A;}
.hero-video-wrap .hero-fallback{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.95);transform:scale(1.02);}
.hero-video-wrap iframe.vimeo-frame{opacity:0;transition:opacity .7s ease;}
.hero-video-wrap iframe.vimeo-frame.is-ready{opacity:1;}
.test-badge{position:fixed;right:12px;bottom:12px;z-index:150;background:#0F3D3A;color:#fff;border:1px solid rgba(255,255,255,.22);border-radius:999px;padding:8px 12px;font-size:12px;box-shadow:0 10px 30px rgba(0,0,0,.18)}


/* Bewertungen / Stimmen von Eltern */
.reviews-section {
  background:
    radial-gradient(circle at top left, rgba(1,193,181,.10), transparent 28%),
    linear-gradient(180deg, rgba(247,245,242,.96), rgba(243,237,228,.72));
}
.eyebrow.dark {
  color: var(--petrol, #0F3D3A);
  background: rgba(15,61,58,.08);
  border-color: rgba(15,61,58,.12);
}
.review-summary {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 24px;
  align-items: center;
  margin: 24px 0;
  padding: 24px;
  border-radius: 26px;
  background: rgba(255,255,255,.78);
  border: 1px solid rgba(15,61,58,.10);
  box-shadow: 0 18px 45px rgba(15,61,58,.08);
}
.review-stars {
  color: #01C1B5;
  letter-spacing: .08em;
  font-size: 1.05rem;
  margin-bottom: 8px;
}
.review-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}
.review-tags span {
  display: inline-flex;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(15,61,58,.08);
  color: #0F3D3A;
  font-size: .86rem;
}
.reviews-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}
.review-card {
  padding: 22px;
  border-radius: 24px;
  background: rgba(255,255,255,.9);
  border: 1px solid rgba(15,61,58,.10);
  box-shadow: 0 12px 34px rgba(15,61,58,.07);
}
.review-card p {
  margin: 0 0 14px;
  color: #263b39;
  line-height: 1.55;
}
.review-card strong {
  color: #0F3D3A;
}
.review-note {
  margin-top: 22px;
  padding: 18px 20px;
  border-radius: 20px;
  background: rgba(1,193,181,.10);
  color: #0F3D3A;
  display: flex;
  gap: 10px;
  align-items: flex-start;
}
.review-note span {
  color: rgba(15,61,58,.82);
}
@media (max-width: 900px) {
  .review-summary {
    grid-template-columns: 1fr;
  }
  .review-tags {
    justify-content: flex-start;
  }
  .reviews-grid {
    grid-template-columns: 1fr;
  }
}

:root{--focus:#6a1b9a;--test-bg:#7a1d1d;--test-fg:#fff}
html{scroll-padding-top:150px}
.test-banner{position:relative;z-index:1200;background:var(--test-bg);color:var(--test-fg);border-bottom:2px solid rgba(255,255,255,.35)}
.test-banner-inner{display:flex;align-items:center;justify-content:center;gap:12px;min-height:42px;padding-top:8px;padding-bottom:8px;text-align:center;font-size:.92rem}
.skip-link{position:fixed;top:8px;left:8px;z-index:2000;transform:translateY(-160%);background:#fff;color:#0F3D3A;border:3px solid var(--focus);border-radius:10px;padding:12px 16px;font-weight:800}
.skip-link:focus{transform:translateY(0)}
:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:4px}
button,.btn,.nav a,.footer-nav a,input[type=checkbox],input[type=radio]{min-height:44px}
.nav a,.footer-nav a{display:inline-flex;align-items:center}
.nav a[aria-current=page]{text-decoration:underline;text-decoration-thickness:3px;text-underline-offset:5px}
img{max-width:100%;height:auto}
.accessibility-tools{position:fixed;right:14px;bottom:14px;z-index:1100;display:flex;flex-direction:column;gap:8px;max-width:min(260px,calc(100vw - 28px))}
.accessibility-button{border:1px solid rgba(15,61,58,.25);border-radius:999px;background:rgba(255,255,255,.96);color:#0F3D3A;box-shadow:0 10px 28px rgba(15,61,58,.16);padding:10px 14px;font-weight:700;cursor:pointer}
body.high-contrast{--turquoise:#007d75;--petrol:#082e2b;--warm-white:#fff;color:#111}
body.high-contrast .muted{color:#303030!important}
body.reduce-motion *,body.reduce-motion *::before,body.reduce-motion *::after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}
@media(max-width:700px){.test-banner-inner{align-items:flex-start;flex-direction:column;gap:2px;text-align:left}.accessibility-tools{right:8px;bottom:8px}.accessibility-button{font-size:.78rem;padding:8px 11px}}
@media print{.test-banner,.accessibility-tools,.cookie-banner,.nav-toggle,.page-scroll-indicator{display:none!important}}


/* =========================================================
   RC2 – Instagram / Reel Cover inspired styling
   Warm, soft, feminine, high-recognition visual system
   ========================================================= */
:root{
  --turkis:#01c1b5;
  --turkis-dark:#0e8f88;
  --turkis-soft:#e9f7f5;
  --sand:#efe3d3;
  --sand-2:#f7efe5;
  --warm-white:#fcf8f3;
  --warm-white-2:#f8f2ea;
  --almond:#e3d3bf;
  --petrol:#365955;
  --petrol-soft:#597874;
  --ink:#3c342f;
  --muted:#6f655e;
  --card:#fffaf5;
  --line:rgba(93,76,56,.12);
  --line-strong:rgba(93,76,56,.18);
  --shadow:0 18px 45px rgba(96,72,47,.10);
  --shadow-soft:0 10px 28px rgba(96,72,47,.08);
  --radius:26px;
  --radius-lg:34px;
}
html{background:var(--warm-white)}
body.theme-reels{
  font-family:Inter,Arial,Helvetica,sans-serif;
  color:var(--ink);
  background:
    radial-gradient(circle at top left, rgba(1,193,181,.06), transparent 23%),
    radial-gradient(circle at right top, rgba(230,216,198,.7), transparent 26%),
    linear-gradient(180deg, #fdf9f5 0%, #fbf5ee 40%, #f8f1e7 100%);
}
body.theme-reels h1,
body.theme-reels h2,
body.theme-reels .display-serif,
body.theme-reels .section-head h2,
body.theme-reels .page-hero h1{
  font-family: Georgia, 'Times New Roman', serif;
  font-weight: 700;
  letter-spacing: -.025em;
  color: var(--petrol);
}
body.theme-reels h3{color:var(--petrol)}
body.theme-reels .site-header{
  background:rgba(252,248,243,.84);
  border-bottom:1px solid rgba(80,62,45,.08);
  box-shadow:0 10px 24px rgba(95,75,49,.04);
}
body.theme-reels .brand{color:var(--petrol)}
body.theme-reels .brand-mark{background:var(--turkis); box-shadow:0 12px 25px rgba(1,193,181,.20)}
body.theme-reels .brand-sub{color:#766b62}
body.theme-reels .nav,
body.theme-reels .cookie-panel,
body.theme-reels .band,
body.theme-reels .social-chip,
body.theme-reels .review-summary,
body.theme-reels .faq-item,
body.theme-reels .stat,
body.theme-reels .card,
body.theme-reels .quote{
  background:linear-gradient(180deg, rgba(255,251,247,.96), rgba(249,243,235,.96));
  border:1px solid rgba(126,100,73,.10);
  box-shadow:var(--shadow-soft);
}
body.theme-reels .nav a{color:#4f4741}
body.theme-reels .nav a:hover,
body.theme-reels .nav a[aria-current="page"],
body.theme-reels .nav a.active{color:var(--petrol)}
body.theme-reels .btn{
  border-radius:20px;
  background:var(--turkis);
  box-shadow:0 12px 22px rgba(1,193,181,.18);
}
body.theme-reels .btn:hover{background:var(--turkis-dark)}
body.theme-reels .btn.secondary{
  background:rgba(255,249,242,.95);
  color:var(--petrol);
  border-color:rgba(126,100,73,.12);
}
body.theme-reels .eyebrow{
  background:rgba(255,250,244,.72);
  color:var(--petrol);
  border:1px solid rgba(126,100,73,.10);
  backdrop-filter:blur(8px);
}
body.theme-reels .hero.hero-immersive .hero-media{
  border-radius:40px;
  overflow:hidden;
  box-shadow:0 24px 55px rgba(89,68,46,.16);
  border:1px solid rgba(155,127,94,.12);
}
body.theme-reels .hero-overlay{
  background:linear-gradient(180deg, rgba(49,44,38,.12), rgba(64,53,43,.48));
}
body.theme-reels .hero-content{
  padding:24px;
}
body.theme-reels .hero-content h1{color:#fff; text-shadow:0 2px 12px rgba(0,0,0,.16)}
body.theme-reels .hero-content .lead{color:rgba(255,255,255,.94)}
body.theme-reels .hero-stats .stat,
body.theme-reels .hero-mobile-meta span{
  background:rgba(252,248,243,.88);
  color:var(--petrol);
  border:1px solid rgba(126,100,73,.10);
  backdrop-filter:blur(5px);
}
body.theme-reels .hero-stats .stat strong{color:var(--petrol)}
body.theme-reels .scroll-indicator{background:rgba(255,248,241,.9);color:var(--petrol);border:1px solid rgba(126,100,73,.16);box-shadow:var(--shadow-soft)}
body.theme-reels .section{padding:60px 0}
body.theme-reels .section:nth-of-type(odd):not(.hero){
  background:linear-gradient(180deg, rgba(255,252,248,.55), rgba(246,238,227,.55));
}
body.theme-reels .section::after{background:linear-gradient(90deg,transparent,rgba(90,66,44,.08),transparent)}
body.theme-reels .card,
body.theme-reels .review-card,
body.theme-reels .social-chip,
body.theme-reels .band,
body.theme-reels .faq-item{border-radius:28px}
body.theme-reels .card-media{border-radius:22px 22px 0 0}
body.theme-reels .card-body,
body.theme-reels .review-card,
body.theme-reels .faq-item,
body.theme-reels .band{position:relative}
body.theme-reels .card-body::after,
body.theme-reels .review-card::after,
body.theme-reels .faq-item::after,
body.theme-reels .band::after{
  content:'♡';
  position:absolute;
  right:16px;
  bottom:12px;
  font-size:15px;
  color:rgba(54,89,85,.35);
}
body.theme-reels .kicker,
body.theme-reels .feature-item strong,
body.theme-reels .review-card strong,
body.theme-reels .review-summary strong,
body.theme-reels .faq-item summary{color:var(--petrol)}
body.theme-reels .lead,
body.theme-reels .muted,
body.theme-reels p,
body.theme-reels li,
body.theme-reels .card p,
body.theme-reels .review-card p{color:var(--muted)}
body.theme-reels .review-stars{color:#d7a61e}
body.theme-reels .review-tags span{background:rgba(1,193,181,.09); color:var(--petrol)}
body.theme-reels .review-note{background:linear-gradient(180deg, rgba(1,193,181,.10), rgba(1,193,181,.04)); border:1px solid rgba(1,193,181,.16); color:var(--petrol)}
body.theme-reels .quote{padding:22px}
body.theme-reels .quote p{font-family:Georgia, 'Times New Roman', serif; font-size:1.1rem; color:var(--petrol)}
body.theme-reels .cookie-banner{backdrop-filter:blur(5px)}
body.theme-reels .cookie-panel{background:rgba(255,250,245,.98)}
body.theme-reels footer{
  background:linear-gradient(180deg, #4e5e5b 0%, #364845 100%);
}
body.theme-reels footer .brand,
body.theme-reels footer strong,
body.theme-reels footer a,
body.theme-reels footer span{color:#fff}
body.theme-reels footer .muted{color:rgba(255,255,255,.82)!important}
body.theme-reels .accessibility-button{background:rgba(255,250,245,.98); color:var(--petrol)}
body.theme-reels .test-banner{background:#8b6a47}
body.theme-reels .test-banner strong{font-family:Georgia,'Times New Roman',serif}
body.theme-reels .page-hero{
  background:
    radial-gradient(circle at top right, rgba(1,193,181,.08), transparent 22%),
    linear-gradient(180deg, #fcf8f3 0%, #f7efe4 100%);
}
body.theme-reels .page-hero .band{background:linear-gradient(180deg, rgba(255,252,248,.92), rgba(249,242,233,.96))}
body.theme-reels .feature-item,
body.theme-reels .stat,
body.theme-reels .social-chip,
body.theme-reels .cookie-choice{
  border-radius:22px;
}
body.theme-reels .hero-shell::before,
body.theme-reels .reviews-section .wrap::before{
  content:'';
  position:absolute;
  width:110px; height:110px;
  background:url('../images/bunny-accent.png') center/contain no-repeat;
  opacity:.14;
  pointer-events:none;
}
body.theme-reels .hero-shell{position:relative}
body.theme-reels .hero-shell::before{top:26px; right:24px}
body.theme-reels .reviews-section .wrap{position:relative}
body.theme-reels .reviews-section .wrap::before{left:-10px; bottom:-20px}
body.theme-reels .hero-content .lead,
body.theme-reels .hero-content .eyebrow{max-width:58ch}
@media (max-width: 900px){
  body.theme-reels .hero.hero-immersive .hero-media{border-radius:30px}
  body.theme-reels .hero-shell::before{width:74px; height:74px; top:18px; right:18px}
  body.theme-reels .reviews-section .wrap::before{width:74px; height:74px; left:auto; right:14px; bottom:14px}
}


/* RC2.1 – Logo integration */
.site-header .brand,
.footer-brand{display:inline-flex;align-items:center}
.brand-mark{display:none!important}
.site-header .brand-logo{display:block;height:56px;width:auto;max-width:240px;object-fit:contain}
.footer-brand .brand-logo{display:block;height:92px;width:auto;max-width:min(280px, 100%);object-fit:contain}
@media (max-width: 900px){
  .site-header .brand-logo{height:46px;max-width:180px}
  .footer-brand .brand-logo{height:78px;max-width:220px}
}


/* =========================================================
   RC2.2 – Lesbarkeit und Kontrast auf transparenten Flächen
   ========================================================= */

/* Startseite: Kennzahlen im Hero – keine weiße Schrift auf hellem Glas */
body.theme-reels .hero-stats .stat{
  background:rgba(255,250,245,.94);
  border:1px solid rgba(93,76,56,.18);
  color:var(--petrol);
  box-shadow:0 14px 34px rgba(57,42,27,.16);
  backdrop-filter:blur(14px);
}
body.theme-reels .hero-stats .stat strong{
  color:var(--petrol);
}
body.theme-reels .hero-stats .stat span{
  color:#5b514a;
  opacity:1;
}

/* Mobile Kennzahlen ebenfalls unabhängig vom jeweiligen Videoframe */
body.theme-reels .hero-mobile-meta span{
  background:rgba(255,250,245,.95);
  border-color:rgba(93,76,56,.18);
  color:var(--petrol);
  text-shadow:none;
}

/* Sekundärer Hero-Button: sichere Lesbarkeit auch vor hellen Bildbereichen */
body.theme-reels .hero .btn.secondary{
  background:rgba(255,250,245,.96);
  color:var(--petrol);
  border-color:rgba(93,76,56,.18);
  text-shadow:none;
}

/* Informationskarten auf den Unterseiten etwas deckender */
body.theme-reels .page-hero-card{
  background:rgba(255,250,245,.96);
  border:1px solid rgba(93,76,56,.16);
  color:var(--petrol);
  text-shadow:none;
}
body.theme-reels .page-hero-card .muted{
  color:#5b514a !important;
}

/* Haupttext auf dem Herobild: stärkere lokale Abdunklung statt pauschal dunkler Seite */
body.theme-reels .hero-overlay{
  background:
    linear-gradient(90deg, rgba(35,31,27,.52) 0%, rgba(35,31,27,.26) 54%, rgba(35,31,27,.08) 100%),
    linear-gradient(180deg, rgba(35,31,27,.06) 0%, rgba(35,31,27,.52) 100%);
}
body.theme-reels .hero-content h1,
body.theme-reels .hero-content .lead{
  text-shadow:0 2px 14px rgba(0,0,0,.35);
}

/* Scroll-Hinweise auf hellen Bildern */
body.theme-reels .scroll-indicator,
body.theme-reels .page-scroll-indicator{
  background:rgba(255,250,245,.95);
  color:var(--petrol);
  border-color:rgba(93,76,56,.18);
}


/* RC2.3 – Interne Erklärungen ein-/ausblenden */
body.hide-explanations [data-explanation="true"]{
  display:none !important;
}
body:not(.hide-explanations) [data-explanation="true"]{
  position:relative;
}
body:not(.hide-explanations) [data-explanation="true"]::before{
  content:"Interne Erklärung";
  display:inline-flex;
  width:max-content;
  max-width:100%;
  margin:0 0 10px;
  padding:4px 9px;
  border-radius:999px;
  background:rgba(139,106,71,.12);
  color:#694d31;
  font-size:.72rem;
  line-height:1.2;
  font-weight:800;
  letter-spacing:.02em;
}
.explanation-toggle[aria-pressed="true"]{
  border-color:rgba(1,193,181,.5);
  box-shadow:0 0 0 3px rgba(1,193,181,.12), 0 10px 28px rgba(15,61,58,.16);
}
@media print{
  [data-explanation="true"]{display:none !important}
}


/* =========================================================
   RC2.4 – vollständiges Ausblenden interner Erklärungen
   ========================================================= */
body.hide-explanations [data-explanation="true"],
body.hide-explanations [data-explanation-group="true"]{
  display:none !important;
}
body.hide-explanations .grid-2.has-explanation-card{
  grid-template-columns:minmax(0,1fr);
}
body:not(.hide-explanations) [data-explanation-group="true"]{
  position:relative;
}
body:not(.hide-explanations) [data-explanation-group="true"]::before{
  content:"Interner Arbeitsbereich";
  display:inline-flex;
  width:max-content;
  max-width:calc(100% - 32px);
  margin:12px 16px 0;
  padding:5px 10px;
  border-radius:999px;
  background:#f3e5cf;
  border:1px solid rgba(143,106,63,.34);
  color:#694d31;
  font-size:.72rem;
  line-height:1.2;
  font-weight:800;
  letter-spacing:.02em;
}

/* =========================================================
   RC2.4 – eleganteres, satteres Farbsystem mit Goldkonturen
   ========================================================= */
:root{
  --gold:#b08a57;
  --gold-dark:#8f6a3f;
  --gold-light:#dfc79e;
  --petrol:#244e4a;
  --petrol-soft:#466b67;
  --ink:#3b342f;
  --muted:#6a5c51;
  --card:#fff9f1;
  --sand:#ead8c2;
  --warm-white:#f8efe4;
  --line:rgba(176,138,87,.34);
  --line-strong:rgba(143,106,63,.48);
  --shadow:0 20px 46px rgba(72,53,34,.13);
  --shadow-soft:0 11px 28px rgba(72,53,34,.10);
}
body.theme-reels{
  background:
    radial-gradient(circle at 4% 1%, rgba(1,193,181,.10), transparent 22%),
    radial-gradient(circle at 96% 7%, rgba(176,138,87,.13), transparent 24%),
    linear-gradient(180deg,#f8efe4 0%,#f3e5d5 46%,#eee0ce 100%);
}
body.theme-reels .site-header{
  background:rgba(250,243,234,.94);
  border-bottom:1px solid rgba(176,138,87,.40);
  box-shadow:0 10px 28px rgba(72,53,34,.09);
}
body.theme-reels .nav{
  background:rgba(255,249,241,.93);
  border-color:rgba(176,138,87,.36);
  box-shadow:0 8px 24px rgba(72,53,34,.08), inset 0 1px 0 rgba(255,255,255,.8);
}
body.theme-reels .nav a[aria-current="page"]{
  color:var(--petrol);
  text-decoration-color:var(--gold);
}
body.theme-reels .btn{
  background:#0b7f79;
  border:1px solid rgba(176,138,87,.48);
  box-shadow:0 12px 25px rgba(11,127,121,.20), inset 0 1px 0 rgba(255,255,255,.20);
}
body.theme-reels .btn:hover{background:#076d68}
body.theme-reels .btn.secondary{
  background:linear-gradient(180deg,#fffaf3,#f3e5d5);
  color:var(--petrol);
  border:1px solid rgba(143,106,63,.48);
  box-shadow:0 8px 20px rgba(72,53,34,.07);
}
body.theme-reels .hero.hero-immersive .hero-media,
body.theme-reels .page-hero-media{
  border:1px solid rgba(176,138,87,.65);
  box-shadow:0 25px 60px rgba(72,53,34,.20), 0 0 0 5px rgba(223,199,158,.18);
}
body.theme-reels .card,
body.theme-reels .review-card,
body.theme-reels .review-summary,
body.theme-reels .band,
body.theme-reels .faq-item,
body.theme-reels .social-chip,
body.theme-reels .page-hero-card,
body.theme-reels .feature-item,
body.theme-reels .stat,
body.theme-reels .cookie-panel,
body.theme-reels .cookie-choice{
  background:linear-gradient(145deg,#fffaf3 0%,#f5e8d8 100%);
  border:1px solid rgba(176,138,87,.42);
  box-shadow:0 16px 38px rgba(72,53,34,.11), inset 0 1px 0 rgba(255,255,255,.72);
}
body.theme-reels .card:hover,
body.theme-reels a.card:hover,
body.theme-reels .social-chip:hover{
  border-color:rgba(143,106,63,.70);
  box-shadow:0 20px 44px rgba(72,53,34,.16), 0 0 0 3px rgba(223,199,158,.20);
}
body.theme-reels .section:nth-of-type(odd):not(.hero){
  background:linear-gradient(180deg,rgba(255,250,243,.76),rgba(235,218,197,.58));
}
body.theme-reels .section:nth-of-type(even):not(.hero){
  background:linear-gradient(180deg,rgba(246,235,222,.58),rgba(252,247,240,.72));
}
body.theme-reels .section-head h2::after,
body.theme-reels .band > h2::after,
body.theme-reels .page-hero-copy h1::after{
  content:"";
  display:block;
  width:64px;
  height:2px;
  margin-top:13px;
  background:linear-gradient(90deg,var(--gold-dark),var(--gold-light));
  border-radius:999px;
}
body.theme-reels .eyebrow{
  background:rgba(255,249,241,.90);
  border-color:rgba(176,138,87,.42);
  color:var(--petrol);
}
body.theme-reels .review-stars{color:#b7862f}
body.theme-reels .review-tags span{
  background:rgba(176,138,87,.13);
  border:1px solid rgba(176,138,87,.24);
  color:var(--petrol);
}
body.theme-reels .review-note{
  border:1px solid rgba(176,138,87,.44);
  background:linear-gradient(180deg,rgba(244,229,207,.96),rgba(235,215,190,.92));
}
body.theme-reels footer{
  background:linear-gradient(180deg,#315652 0%,#203e3b 100%);
  border-top:3px solid var(--gold);
  box-shadow:0 -10px 30px rgba(72,53,34,.10);
}
body.theme-reels .accessibility-button{
  background:linear-gradient(180deg,#fffaf3,#f1e2cf);
  color:var(--petrol);
  border:1px solid rgba(143,106,63,.48);
  box-shadow:0 10px 26px rgba(72,53,34,.15);
}
body.theme-reels .accessibility-button[aria-pressed="true"]{
  background:var(--petrol);
  color:#fff;
  border-color:var(--gold-light);
  box-shadow:0 0 0 3px rgba(176,138,87,.24),0 10px 26px rgba(36,78,74,.20);
}
body.theme-reels .test-banner{
  background:linear-gradient(90deg,#765533,#9a7446,#765533);
  border-bottom:1px solid var(--gold-light);
}
body.theme-reels .scroll-indicator,
body.theme-reels .page-scroll-indicator{
  background:#fff9f1;
  border:1px solid rgba(143,106,63,.55);
  box-shadow:0 10px 24px rgba(72,53,34,.16);
}
body.theme-reels .muted{color:var(--muted)}
body.theme-reels h1,
body.theme-reels h2,
body.theme-reels h3{color:var(--petrol)}
@media (max-width:700px){
  body:not(.hide-explanations) [data-explanation-group="true"]::before{
    margin-left:12px;
    margin-right:12px;
  }
}


/* =========================================================
   V10-F1 SCROLLYTELLLING FORK
   Scroll-gesteuerte Überblendung auf der Startseite
   ========================================================= */
:root{--story-scenes:7;--story-header-offset:78px}
.scroll-story{
  position:relative;
  height:calc(var(--story-scenes) * 100svh);
  margin:0;
  background:#1c2422;
}
.scroll-story-stage{
  position:sticky;
  top:var(--story-header-offset);
  height:calc(100svh - var(--story-header-offset));
  min-height:560px;
  overflow:hidden;
  isolation:isolate;
  background:#18201f;
}
.story-scene{
  position:absolute;
  inset:0;
  z-index:1;
  opacity:0;
  transform:scale(1.018);
  filter:blur(9px);
  will-change:opacity,transform,filter;
  pointer-events:none;
}
.story-scene.is-active{pointer-events:auto}
.story-scene:first-of-type{opacity:1;transform:scale(1);filter:blur(0)}
.story-media,.story-shade{position:absolute;inset:0}
.story-media{overflow:hidden;background:#26322f}
.story-image{
  width:100%;height:100%;object-fit:cover;
  transform:scale(1.035);
}
.story-media .vimeo-frame{
  position:absolute;left:50%;top:50%;width:120%;height:120%;border:0;
  transform:translate(-50%,-50%) scale(1.06);
  opacity:0;transition:opacity .35s ease;
}
.story-media .vimeo-frame.is-ready{opacity:1}
.story-shade{
  background:
    linear-gradient(90deg,rgba(13,20,18,.73) 0%,rgba(13,20,18,.48) 42%,rgba(13,20,18,.16) 72%,rgba(13,20,18,.30) 100%),
    linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.42));
  z-index:2;
}
.story-copy{
  position:absolute;z-index:4;left:max(24px,calc((100vw - 1180px)/2 + 16px));
  bottom:clamp(78px,11vh,120px);width:min(690px,calc(100% - 48px));
  transform:translateY(18px);opacity:.94;
}
.story-copy-light,.story-copy-light h1,.story-copy-light h2{color:#fff}
.story-copy-light p{color:rgba(255,255,255,.91)}
.story-copy h1,.story-copy h2{
  max-width:14ch;margin-bottom:16px;
  font-size:clamp(2.3rem,5vw,5.15rem);line-height:.98;
  text-wrap:balance;text-shadow:0 4px 22px rgba(0,0,0,.22);
}
.story-copy p{max-width:54ch;font-size:clamp(1rem,1.5vw,1.2rem);line-height:1.6;margin-bottom:20px}
.story-kicker{
  display:inline-flex;align-items:center;gap:8px;margin-bottom:14px;padding:7px 12px;
  border:1px solid rgba(223,199,158,.65);border-radius:999px;
  background:rgba(35,37,32,.28);backdrop-filter:blur(8px);
  color:#f5e7d2;font-size:.88rem;font-weight:800;letter-spacing:.03em;text-transform:uppercase;
}
.story-actions{display:flex;flex-wrap:wrap;gap:11px}
.story-copy-light .btn.secondary{background:rgba(255,248,238,.93);color:var(--petrol);border-color:rgba(223,199,158,.75)}
.story-skip{
  position:absolute;z-index:20;right:22px;top:18px;padding:9px 13px;border-radius:999px;
  background:rgba(255,250,243,.91);color:var(--petrol);font-size:.82rem;font-weight:800;
  border:1px solid rgba(176,138,87,.52);box-shadow:0 8px 22px rgba(0,0,0,.12)
}
.story-ui{
  position:absolute;z-index:15;left:50%;bottom:20px;transform:translateX(-50%);
  width:min(460px,calc(100% - 42px));display:grid;grid-template-columns:auto 1fr auto;gap:13px;align-items:center;
  color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.32);
}
.story-counter{font-size:.78rem;font-weight:800;letter-spacing:.08em;white-space:nowrap}
.story-counter-sep{opacity:.5;margin:0 3px}
.story-progress{height:2px;background:rgba(255,255,255,.34);overflow:hidden;border-radius:999px}
.story-progress span{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--gold-light),var(--gold));box-shadow:0 0 12px rgba(223,199,158,.7)}
.story-scroll-cue{display:flex;align-items:center;gap:5px;white-space:nowrap;font-size:.78rem;font-weight:800}
.story-scroll-cue svg{width:19px;height:19px;animation:storyCue 1.7s ease-in-out infinite}
@keyframes storyCue{0%,100%{transform:translateY(-2px)}50%{transform:translateY(4px)}}

.story-scene-finale{
  background:
    radial-gradient(circle at 15% 20%,rgba(1,193,181,.13),transparent 26%),
    radial-gradient(circle at 84% 18%,rgba(176,138,87,.18),transparent 26%),
    linear-gradient(135deg,#f7ecde 0%,#ead6bd 100%);
}
.story-scene-finale::before,.story-scene-finale::after{
  content:'';position:absolute;border:1px solid rgba(176,138,87,.34);border-radius:50%;pointer-events:none
}
.story-scene-finale::before{width:44vw;height:44vw;min-width:360px;min-height:360px;right:-12vw;top:-18vw}
.story-scene-finale::after{width:22vw;height:22vw;min-width:220px;min-height:220px;left:-8vw;bottom:-10vw}
.story-finale-mark{
  position:absolute;right:clamp(30px,8vw,130px);top:50%;transform:translateY(-50%);
  width:min(27vw,330px);opacity:.93;filter:drop-shadow(0 18px 28px rgba(75,52,31,.12));
}
.story-finale-mark img{width:100%;height:auto;mix-blend-mode:multiply;border-radius:30px}
.story-copy-dark{color:var(--petrol)}
.story-copy-dark h2{color:var(--petrol);text-shadow:none;max-width:15ch}
.story-copy-dark p{color:#5f5247}
.story-copy-dark .story-kicker{background:rgba(255,250,243,.68);color:var(--petrol);border-color:rgba(176,138,87,.46)}
.story-copy-center{bottom:50%;transform:translateY(50%);width:min(650px,56vw)}

/* High contrast keeps the story readable */
body.high-contrast .story-shade{background:linear-gradient(90deg,rgba(0,0,0,.88),rgba(0,0,0,.54))}
body.high-contrast .story-copy-light p{color:#fff!important}
body.high-contrast .story-kicker{background:#111;color:#fff;border-color:#fff}

/* Reduced motion: no pinned cross-fade; all story cards become normal content. */
body.reduce-motion .scroll-story{height:auto;background:transparent;padding:16px 0}
body.reduce-motion .scroll-story-stage{position:relative;top:auto;height:auto;min-height:0;overflow:visible;background:transparent;display:grid;gap:16px}
body.reduce-motion .story-scene{position:relative;inset:auto;min-height:70svh;opacity:1!important;filter:none!important;transform:none!important;pointer-events:auto!important;border-radius:30px;overflow:hidden;box-shadow:var(--shadow);border:1px solid rgba(176,138,87,.46)}
body.reduce-motion .story-ui{display:none}
body.reduce-motion .story-skip{display:none}
body.reduce-motion .story-copy-center{bottom:auto;top:auto;transform:none;width:min(650px,calc(100% - 48px));position:relative;margin:clamp(180px,40vh,360px) 24px 60px;left:auto}
body.reduce-motion .story-finale-mark{top:28px;right:28px;transform:none;width:min(32vw,220px)}


@media (prefers-reduced-motion:reduce){
  .scroll-story{height:auto;background:transparent;padding:16px 0}
  .scroll-story-stage{position:relative;top:auto;height:auto;min-height:0;overflow:visible;background:transparent;display:grid;gap:16px}
  .story-scene{position:relative;inset:auto;min-height:70svh;opacity:1!important;filter:none!important;transform:none!important;pointer-events:auto!important;border-radius:30px;overflow:hidden;box-shadow:var(--shadow);border:1px solid rgba(176,138,87,.46)}
  .story-ui,.story-skip{display:none}
  .story-copy-center{bottom:auto;top:auto;transform:none;width:min(650px,calc(100% - 48px));position:relative;margin:clamp(180px,40vh,360px) 24px 60px;left:auto}
  .story-finale-mark{top:28px;right:28px;transform:none;width:min(32vw,220px)}
  .story-scroll-cue svg{animation:none}
}
@media(max-width:900px){
  :root{--story-header-offset:68px}
  .scroll-story-stage{min-height:520px}
  .story-copy{left:20px;bottom:86px;width:calc(100% - 40px)}
  .story-copy h1,.story-copy h2{font-size:clamp(2.05rem,10vw,3.6rem);max-width:13ch}
  .story-copy p{font-size:.98rem;max-width:42ch}
  .story-finale-mark{width:180px;right:20px;top:24px;transform:none;opacity:.24}
  .story-copy-center{bottom:90px;transform:none;width:calc(100% - 40px)}
  .story-ui{bottom:16px;grid-template-columns:auto 1fr auto;gap:8px}
  .story-scroll-cue span{display:none}
  .story-skip{right:12px;top:12px;font-size:.74rem;padding:7px 10px}
}
@media(max-width:560px){
  .story-copy h1,.story-copy h2{font-size:clamp(1.95rem,10.8vw,3rem)}
  .story-copy p{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
  .story-actions .btn{padding:11px 13px;font-size:.88rem}
  .story-counter{font-size:.7rem}
}

/* Menu fix state */
.nav-toggle[aria-expanded="true"]{
  background:var(--petrol,#365955);
  color:#fff;
  border-color:var(--petrol,#365955);
}
@media (max-width:820px){
  .nav.open{
    display:flex;
    z-index:1300;
  }
}

/* V10-F1.2 – kompaktere Startseite bei gleichbleibender semantischer Tiefe */
.seo-topic-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.topic-chip{
  display:flex;
  flex-direction:column;
  gap:5px;
  padding:18px 20px;
  min-height:104px;
  justify-content:center;
  border-radius:22px;
  background:linear-gradient(180deg,rgba(255,251,246,.98),rgba(247,239,229,.98));
  border:1px solid rgba(180,145,85,.34);
  box-shadow:var(--shadow-soft);
}
.topic-chip strong{color:var(--petrol,#365955);font-size:1.02rem}
.topic-chip span{color:var(--muted);font-size:.92rem;line-height:1.4}
.topic-chip:hover{transform:translateY(-2px);border-color:rgba(180,145,85,.60)}
.compact-region .card{min-height:0}
.b2b-mini{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:22px 26px;
  border-radius:26px;
  background:linear-gradient(135deg,rgba(252,248,241,.97),rgba(239,226,207,.86));
  border:1px solid rgba(180,145,85,.38);
  box-shadow:var(--shadow-soft);
}
.b2b-mini h2{margin-bottom:6px}
@media(max-width:900px){
  .seo-topic-grid{grid-template-columns:1fr 1fr}
  .b2b-mini{align-items:flex-start;flex-direction:column}
}
@media(max-width:620px){
  .seo-topic-grid{grid-template-columns:1fr}
}


/* =========================================================
   V10-F1.3 – View Transitions + living header
   ========================================================= */

/* Cross-document View Transitions in supporting browsers.
   Links stay real HTML links; unsupported browsers simply navigate normally. */
@view-transition {
  navigation: auto;
}

.site-header {
  view-transition-name: bb-header;
  overflow: visible;
}

.site-header .brand-logo {
  view-transition-name: bb-logo;
}

main {
  view-transition-name: bb-main;
}

::view-transition-group(bb-header),
::view-transition-group(bb-logo) {
  animation-duration: 380ms;
  animation-timing-function: cubic-bezier(.22,.7,.22,1);
}

::view-transition-old(bb-main) {
  animation: bb-page-out 300ms cubic-bezier(.4,0,.7,.2) both;
}

::view-transition-new(bb-main) {
  animation: bb-page-in 440ms cubic-bezier(.16,.8,.22,1) both;
}

@keyframes bb-page-out {
  from { opacity: 1; filter: blur(0); transform: scale(1); }
  to   { opacity: 0; filter: blur(7px); transform: scale(.992); }
}

@keyframes bb-page-in {
  from { opacity: 0; filter: blur(8px); transform: scale(1.008); }
  to   { opacity: 1; filter: blur(0); transform: scale(1); }
}

/* Living context label */
.header-context {
  position: absolute;
  left: 50%;
  bottom: 3px;
  transform: translateX(-50%);
  z-index: 4;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  max-width: min(42vw, 430px);
  pointer-events: none;
  font-size: .68rem;
  line-height: 1;
  letter-spacing: .055em;
  text-transform: uppercase;
  color: rgba(54,89,85,.88);
  white-space: nowrap;
}

.header-context-label {
  overflow: hidden;
  text-overflow: ellipsis;
}

.header-context-counter {
  color: rgba(167,126,55,.95);
  font-variant-numeric: tabular-nums;
}

.site-progress {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 5;
  height: 2px;
  overflow: hidden;
  background: rgba(167,126,55,.10);
  pointer-events: none;
}

.site-progress > span {
  display: block;
  width: 0%;
  height: 100%;
  transform-origin: left center;
  background: linear-gradient(90deg, #aa7b32, #d9bd79, #a8762d);
  box-shadow: 0 0 12px rgba(184,143,66,.32);
  transition: width 90ms linear;
}

/* Fallback transition for browsers without cross-document View Transitions. */
.route-transition {
  position: fixed;
  inset: 0;
  z-index: 5000;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  display: grid;
  place-items: center;
  background: rgba(249,243,234,.82);
  backdrop-filter: blur(0);
  transition: opacity 180ms ease, visibility 0s linear 180ms, backdrop-filter 260ms ease;
}

.route-transition::before {
  content: "";
  position: absolute;
  width: min(74vw, 860px);
  height: 1px;
  background: linear-gradient(90deg, transparent, #b78b43 18%, #e3ca89 50%, #b78b43 82%, transparent);
  transform: scaleX(.05);
  opacity: .5;
  transition: transform 260ms cubic-bezier(.2,.8,.2,1), opacity 180ms ease;
}

.route-transition::after {
  content: "Baby Bellmann";
  font-family: Georgia, "Times New Roman", serif;
  color: var(--petrol,#365955);
  letter-spacing: .06em;
  font-size: clamp(.78rem,1.2vw,.95rem);
  transform: translateY(18px);
  opacity: 0;
  transition: opacity 160ms ease 70ms, transform 220ms ease 50ms;
}

body.route-transition-active .route-transition {
  opacity: 1;
  visibility: visible;
  backdrop-filter: blur(8px);
  transition-delay: 0s;
}

body.route-transition-active .route-transition::before {
  transform: scaleX(1);
  opacity: 1;
}

body.route-transition-active .route-transition::after {
  opacity: 1;
  transform: translateY(14px);
}

body.route-transition-arriving .route-transition {
  opacity: 0;
  visibility: visible;
  backdrop-filter: blur(2px);
  transition: opacity 360ms ease, backdrop-filter 360ms ease;
}

@media (max-width: 820px) {
  .header-context {
    left: 12px;
    bottom: auto;
    top: calc(100% + 7px);
    transform: none;
    max-width: calc(100vw - 24px);
    padding: 7px 10px;
    border-radius: 999px;
    background: rgba(251,246,239,.94);
    border: 1px solid rgba(180,145,85,.30);
    box-shadow: 0 8px 18px rgba(80,60,38,.08);
    font-size: .64rem;
    letter-spacing: .04em;
  }
}

@media (prefers-reduced-motion: reduce) {
  ::view-transition-group(*),
  ::view-transition-old(*),
  ::view-transition-new(*) {
    animation-duration: .001ms !important;
    animation-delay: 0ms !important;
  }
  .site-progress > span { transition: none; }
  .route-transition { display: none !important; }
}

body.reduce-motion .route-transition { display:none !important; }
body.reduce-motion .site-progress > span { transition:none; }


/* V10-F1.4 – Vimeo hero fix */
.hero-video-wrap{position:absolute;inset:0;overflow:hidden;background:#2e3836}
.hero-video-wrap .hero-fallback{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.hero-video-wrap .vimeo-frame{position:absolute;z-index:1;top:50%;left:50%;width:max(100%,177.78vh);height:max(100%,56.25vw);min-width:100%;min-height:100%;transform:translate(-50%,-50%) scale(1.12);border:0;opacity:0;pointer-events:none;transition:opacity .45s ease}
.hero-video-wrap .vimeo-frame.is-ready{opacity:1}
[data-scroll-story] .hero-video-wrap .vimeo-frame{transform:translate(-50%,-50%) scale(1.14)}
@media(max-width:760px){.hero-video-wrap .vimeo-frame,[data-scroll-story] .hero-video-wrap .vimeo-frame{width:280%;height:100%;min-width:280%;min-height:100%;transform:translate(-50%,-50%) scale(1.03)}}
@media(prefers-reduced-motion:reduce){.hero-video-wrap .vimeo-frame{display:none!important}}
body.reduce-motion .hero-video-wrap .vimeo-frame{display:none!important}


/* =========================================================
   V10-F1.5 – readability + stronger scroll cue + optional scene videos
   ========================================================= */

/* Scene 0 readability */
.story-scene[data-story-scene="0"] .story-copy{
  padding: clamp(18px,2.2vw,28px);
  border-radius: 28px;
  background:
    linear-gradient(135deg, rgba(9,18,17,.68) 0%, rgba(13,22,20,.52) 52%, rgba(13,22,20,.18) 100%);
  box-shadow: 0 18px 34px rgba(0,0,0,.18);
  backdrop-filter: blur(6px);
}
.story-scene[data-story-scene="0"] .story-copy h1{
  color:#fff !important;
  text-shadow: 0 8px 26px rgba(0,0,0,.42);
}
.story-scene[data-story-scene="0"] .story-copy p{
  color:rgba(255,255,255,.94) !important;
  text-shadow: 0 2px 12px rgba(0,0,0,.22);
}
.story-scene[data-story-scene="0"] .story-kicker{
  background: rgba(255,248,239,.14);
  color: #fff4e6;
  border-color: rgba(223,199,158,.82);
}

/* a bit stronger general overlay for scene 0 */
.story-scene[data-story-scene="0"] .story-shade{
  background:
    linear-gradient(90deg,rgba(8,14,13,.80) 0%,rgba(8,14,13,.58) 38%,rgba(8,14,13,.18) 74%,rgba(8,14,13,.30) 100%),
    linear-gradient(180deg,rgba(0,0,0,.10),rgba(0,0,0,.48));
}

/* stronger scroll cue */
.story-ui{
  bottom: 18px;
}
.story-scroll-cue-link{
  display:inline-flex;
  align-items:center;
  gap:7px;
  white-space:nowrap;
  padding:9px 13px;
  border-radius:999px;
  background: rgba(255,250,243,.92);
  color: var(--petrol);
  border:1px solid rgba(176,138,87,.55);
  box-shadow: 0 10px 26px rgba(0,0,0,.14);
  text-decoration:none;
  animation: bbCuePulse 1.7s ease-in-out infinite;
}
.story-scroll-cue-link span{
  font-size:.79rem;
  font-weight:800;
  letter-spacing:.02em;
}
.story-scroll-cue-link svg{
  width:18px;height:18px;
  animation:storyCue 1.6s ease-in-out infinite;
}
@keyframes bbCuePulse{
  0%,100%{transform:translateY(0); box-shadow:0 10px 26px rgba(0,0,0,.14)}
  50%{transform:translateY(-2px); box-shadow:0 16px 32px rgba(176,138,87,.25)}
}

/* Hide cue after first interaction */
.scroll-story-has-started .story-scroll-cue-link{
  opacity:0;
  visibility:hidden;
  transform:translateY(8px);
  transition: opacity .35s ease, transform .35s ease, visibility 0s linear .35s;
  animation:none;
}

/* Optional scene videos */
.story-scene-has-optional-video .story-media{
  position: relative;
}
.story-fallback-image{
  position: relative;
  z-index: 1;
}
.story-optional-video{
  position:absolute;
  left:50%;
  top:50%;
  width:120%;
  height:120%;
  min-width:100%;
  min-height:100%;
  object-fit:cover;
  transform:translate(-50%,-50%) scale(1.06);
  opacity:0;
  z-index:2;
  transition: opacity .45s ease;
  pointer-events:none;
  background:#25322f;
}
.story-optional-video.is-ready{
  opacity:1;
}

/* Mobile tuning */
@media (max-width: 820px){
  .story-scene[data-story-scene="0"] .story-copy{
    width:min(92vw,calc(100% - 28px));
    left:14px;
    right:14px;
    bottom:118px;
    padding:16px 16px 14px;
    border-radius:22px;
    background: linear-gradient(180deg, rgba(8,15,14,.70) 0%, rgba(8,15,14,.52) 100%);
  }
  .story-scene[data-story-scene="0"] .story-copy h1{
    font-size: clamp(2.2rem, 9.6vw, 3.8rem);
    max-width: 10.5ch;
  }
  .story-scene[data-story-scene="0"] .story-copy p{
    font-size: 1.02rem;
    max-width: 28ch;
  }
  .story-ui{
    grid-template-columns: auto 1fr;
    row-gap:10px;
  }
  .story-scroll-cue-link{
    grid-column: 1 / -1;
    justify-self: center;
  }
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce){
  .story-scroll-cue-link{animation:none}
  .story-scroll-cue-link svg{animation:none}
  .story-optional-video{display:none !important}
}
body.reduce-motion .story-scroll-cue-link,
body.reduce-motion .story-optional-video{
  animation:none !important;
}
body.reduce-motion .story-optional-video{
  display:none !important;
}


/* =========================================================
   V10-F1.6 – new logo mark + menu/header context fix
   ========================================================= */

/* Better logo usage */
.brand {
  gap: 12px;
}
.brand-logo {
  width: 58px;
  height: 58px;
  object-fit: contain;
  border-radius: 0;
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
}
.brand-text {
  align-self: center;
}
.brand-title {
  line-height: 1.02;
}

/* The context line must not visually sit inside the menu/nav row. */
.header-context {
  position: absolute;
  left: 50%;
  bottom: -20px;
  transform: translateX(-50%);
  z-index: 2;
  max-width: min(40vw, 420px);
  padding: 5px 10px;
  border-radius: 999px;
  background: rgba(249, 243, 234, .94);
  border: 1px solid rgba(184, 145, 82, .24);
  box-shadow: 0 8px 18px rgba(75, 55, 28, .08);
  color: rgba(54, 89, 85, .84);
}

/* On desktop: hide the tiny second line completely to keep the menu clean. */
@media (min-width: 821px) {
  .header-context {
    display: none !important;
  }
  .site-progress {
    bottom: -1px;
  }
}

/* On mobile it can remain as a helpful context pill under the header, not inside the menu. */
@media (max-width: 820px) {
  .header-context {
    left: 12px;
    right: auto;
    top: calc(100% + 10px);
    bottom: auto;
    transform: none;
    max-width: calc(100vw - 24px);
    font-size: .64rem;
    letter-spacing: .04em;
  }
}

/* Keep the site progress visible and elegant */
.site-progress {
  background: rgba(176, 138, 87, .12);
}

/* Slightly better alignment when the menu button exists */
.site-header {
  overflow: visible;
}

/* Story skip and top spacing play nicer with moved context line */
@media (min-width: 821px) {
  [data-scroll-story] {
    margin-top: 6px;
  }
}


/* =========================================================
   V10-F1.7 – logo box + Lieferanten + Influencer
   ========================================================= */

/* Logo gets the same premium container language as nav and header CTAs */
.site-header .brand{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:78px;
  min-height:62px;
  padding:7px 11px;
  border-radius:20px;
  background:rgba(255,250,244,.90);
  border:1px solid rgba(176,138,87,.34);
  box-shadow:0 12px 28px rgba(54,42,29,.08);
  backdrop-filter:blur(12px);
}
.site-header .brand:hover{
  border-color:rgba(176,138,87,.58);
  box-shadow:0 15px 32px rgba(54,42,29,.11);
}
.site-header .brand-logo{
  width:52px;
  height:52px;
}

/* More links, but keep desktop header elegant */
.nav{
  gap:14px;
  padding:10px 13px;
}
.nav a{
  font-size:.90rem;
  white-space:nowrap;
}
.header-cta{
  gap:8px;
}
.header-cta .btn.small{
  padding:10px 11px;
  font-size:.88rem;
}

/* Switch to compact menu earlier so the extra partner links never squeeze */
@media (max-width:1240px){
  .nav-toggle{
    display:inline-flex;
  }
  .header-cta .btn.small{
    display:none;
  }
  .nav{
    position:absolute;
    left:14px;
    right:14px;
    top:calc(var(--header-h) - 4px);
    background:#fff;
    border:1px solid var(--line);
    border-radius:20px;
    box-shadow:var(--shadow);
    padding:14px;
    display:none;
    flex-direction:column;
    align-items:flex-start;
    gap:4px;
    z-index:1300;
  }
  .nav.open{
    display:flex;
  }
  .nav a{
    width:100%;
    padding:10px 12px;
    border-radius:12px;
  }
  .nav a:hover,
  .nav a[aria-current="page"]{
    background:rgba(1,193,181,.07);
  }
}

@media (max-width:640px){
  .site-header .brand{
    min-width:62px;
    min-height:54px;
    padding:5px 8px;
    border-radius:17px;
  }
  .site-header .brand-logo{
    width:43px;
    height:43px;
  }
}

/* Partner pages */
.partner-hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:20px;
}
.partner-eyebrow{
  color:var(--petrol)!important;
  background:rgba(255,250,244,.84)!important;
  border:1px solid rgba(176,138,87,.32)!important;
}
.partner-benefits{
  margin-top:26px;
}
.partner-number{
  display:inline-flex;
  margin-bottom:14px;
  color:var(--gold);
  font-size:.76rem;
  font-weight:800;
  letter-spacing:.12em;
}
.partner-card-accent{
  background:
    radial-gradient(circle at 92% 10%,rgba(1,193,181,.08),transparent 28%),
    linear-gradient(180deg,rgba(255,251,246,.98),rgba(246,237,224,.94));
  border-color:rgba(176,138,87,.32);
}
.partner-checklist{
  list-style:none;
  margin:18px 0 0;
  padding:0;
  display:grid;
  gap:12px;
}
.partner-checklist li{
  position:relative;
  padding-left:27px;
  color:#444;
}
.partner-checklist li::before{
  content:"✓";
  position:absolute;
  left:0;
  top:0;
  color:var(--turkis-dark);
  font-weight:900;
}
.partner-startup{
  background:linear-gradient(90deg,rgba(247,237,223,.64),rgba(255,255,255,.16),rgba(1,193,181,.035));
}
.partner-cta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  padding:28px;
  border:1px solid rgba(176,138,87,.32);
  background:linear-gradient(135deg,rgba(255,249,240,.98),rgba(245,235,220,.94));
}
.partner-link-card{
  display:block;
  color:inherit;
  text-decoration:none;
  transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease;
}
.partner-link-card:hover{
  transform:translateY(-4px);
  border-color:rgba(176,138,87,.42);
  box-shadow:0 22px 48px rgba(54,42,29,.09);
}
.partner-link-card strong{
  color:var(--petrol);
}
.influencer-values{
  background:linear-gradient(90deg,rgba(1,193,181,.035),rgba(255,255,255,.20),rgba(247,237,223,.62));
}
.influencer-formats .card{
  height:100%;
}

@media (max-width:900px){
  .partner-cta{
    align-items:flex-start;
    flex-direction:column;
  }
}


/* =========================================================
   V10-F1.8 – Gutscheinformular
   ========================================================= */
.voucher-order-form{position:relative}
.voucher-form-status{
  margin:0 0 14px;padding:10px 12px;border-radius:12px;
  background:rgba(176,138,87,.08);border:1px solid rgba(176,138,87,.20);
  color:var(--muted);font-size:.9rem
}
.voucher-form-status.is-ready{display:none}
.bb-honeypot{
  position:absolute!important;left:-10000px!important;top:auto!important;
  width:1px!important;height:1px!important;overflow:hidden!important
}
.form-help{margin:7px 0 0;color:var(--muted);font-size:.9rem}
.voucher-amount-wrap{display:grid;gap:6px}
.voucher-amount-input{position:relative;max-width:240px}
.voucher-amount-input input{padding-right:42px}
.voucher-amount-input>span{
  position:absolute;right:15px;top:50%;transform:translateY(-50%);
  color:var(--petrol);font-weight:800
}
.voucher-payment-box{
  display:grid;grid-template-columns:minmax(160px,.55fr) 1fr;gap:18px;
  align-items:center;padding:16px 18px;border-radius:18px;
  background:linear-gradient(135deg,rgba(247,237,223,.74),rgba(255,255,255,.88));
  border:1px solid rgba(176,138,87,.26)
}
.voucher-payment-box p{margin:0;color:var(--muted);font-size:.92rem}
.voucher-payment-label{
  display:block;margin-bottom:3px;color:var(--muted);font-size:.78rem;
  text-transform:uppercase;letter-spacing:.07em;font-weight:800
}
.voucher-price-summary{
  display:grid;gap:8px;padding:16px 18px;border-radius:18px;
  background:rgba(255,255,255,.72);border:1px solid var(--line)
}
.voucher-price-summary>div{
  display:flex;justify-content:space-between;gap:20px;align-items:center
}
.voucher-price-summary .voucher-total{
  padding-top:10px;margin-top:3px;border-top:1px solid rgba(176,138,87,.28);
  color:var(--petrol);font-size:1.05rem
}
.privacy-check label{display:flex;gap:10px;align-items:flex-start}
.privacy-check input{margin-top:4px;flex:0 0 auto}
.voucher-submit[disabled]{opacity:.48;cursor:not-allowed;transform:none!important}
.voucher-submit.is-sending{pointer-events:none;opacity:.72}
.voucher-order-form input.is-invalid,
.voucher-order-form textarea.is-invalid{
  border-color:#aa3d34!important;box-shadow:0 0 0 3px rgba(170,61,52,.09)
}
@media(max-width:640px){
  .voucher-payment-box{grid-template-columns:1fr;gap:8px}
  .voucher-amount-input{max-width:none}
}


/* =========================================================
   V10-F1.9 – Scroll cue, Zielgruppen-Navigation, B2B-Logistik, Kontaktformular
   ========================================================= */

/* --- initial scroll cue: intentionally obvious --- */
.story-entry-scroll-hint{
  position:absolute;
  left:50%;
  bottom:24px;
  transform:translateX(-50%);
  z-index:40;
  display:flex;
  align-items:center;
  gap:10px;
  padding:10px 15px;
  border-radius:999px;
  background:rgba(255,249,241,.96);
  color:var(--petrol);
  border:1px solid rgba(176,138,87,.58);
  box-shadow:0 14px 34px rgba(0,0,0,.22),0 0 0 0 rgba(1,193,181,.22);
  text-decoration:none;
  font-size:.82rem;
  font-weight:850;
  letter-spacing:.025em;
  animation:bbInitialCuePulse 1.65s ease-in-out infinite;
  backdrop-filter:blur(12px);
}
.story-entry-scroll-hint svg{width:18px;height:18px;animation:storyCue 1.45s ease-in-out infinite}
.story-entry-scroll-mouse{
  width:17px;height:25px;border:2px solid currentColor;border-radius:10px;position:relative;opacity:.82
}
.story-entry-scroll-mouse i{
  position:absolute;left:50%;top:4px;width:3px;height:5px;border-radius:3px;
  background:currentColor;transform:translateX(-50%);animation:bbMouseWheel 1.35s ease-in-out infinite
}
@keyframes bbInitialCuePulse{
  0%,100%{transform:translateX(-50%) translateY(0);box-shadow:0 14px 34px rgba(0,0,0,.20),0 0 0 0 rgba(1,193,181,.16)}
  50%{transform:translateX(-50%) translateY(-4px);box-shadow:0 18px 38px rgba(0,0,0,.24),0 0 0 9px rgba(1,193,181,0)}
}
@keyframes bbMouseWheel{
  0%{opacity:0;transform:translate(-50%,0)}
  35%{opacity:1}
  100%{opacity:0;transform:translate(-50%,8px)}
}
.story-entry-scroll-hint.is-hidden{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .32s ease,visibility 0s linear .32s}

/* Keep older story cue from being the only orientation signal */
.story-scroll-cue-link{display:none!important}

/* --- target-group split in navigation --- */
.nav .nav-b2b{
  background:rgba(176,138,87,.085);
  border-radius:11px;
  color:#665033;
}
.nav .nav-b2b:hover,
.nav .nav-b2b[aria-current="page"]{
  background:rgba(176,138,87,.17);
  color:var(--petrol);
}
.nav .nav-b2b-start{
  position:relative;
  margin-left:11px;
  padding-left:20px;
}
.nav .nav-b2b-start::before{
  content:"";
  position:absolute;
  left:-7px;
  top:17%;
  bottom:17%;
  width:1px;
  background:rgba(132,98,51,.56);
}

/* supplier CTA on hero */
.story-actions .supplier-action{
  background:rgba(244,231,210,.96);
  color:#5c472c;
  border-color:rgba(176,138,87,.52);
}
.story-actions .supplier-action:hover{
  background:#ead4af;
  color:#3f3323;
}

/* On the compact/mobile menu the partner target group becomes its own visual block */
@media(max-width:1240px){
  .nav .nav-b2b{
    background:linear-gradient(90deg,rgba(176,138,87,.11),rgba(176,138,87,.045));
    border-left:3px solid rgba(176,138,87,.52);
    border-radius:10px;
    padding-left:14px;
  }
  .nav .nav-b2b-start{
    margin-left:0;
    margin-top:12px;
    padding-top:16px;
    border-top:1px solid rgba(176,138,87,.32);
  }
  .nav .nav-b2b-start::before{display:none}
}
@media(max-width:820px){
  .story-entry-scroll-hint{
    position:absolute;
    bottom:18px;
    padding:10px 14px;
    font-size:.79rem;
  }
  .story-actions{
    gap:8px;
  }
  .story-actions .supplier-action{
    width:auto;
  }
}
@media(max-width:560px){
  .story-entry-scroll-hint{
    bottom:14px;
  }
}

/* --- supplier logistics --- */
.supplier-logistics{
  background:linear-gradient(180deg,rgba(245,236,222,.62),rgba(255,255,255,.20));
}
.logistics-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  margin-top:26px;
}
.logistics-card{
  min-height:210px;
  padding:22px;
  border-radius:22px;
  background:rgba(255,255,255,.86);
  border:1px solid rgba(176,138,87,.22);
  box-shadow:0 14px 34px rgba(55,43,29,.055);
}
.logistics-card strong{display:block;margin:7px 0 10px;font-size:1.08rem;color:var(--petrol)}
.logistics-card p{margin:0;color:var(--muted)}
.logistics-label{
  color:#8b6736;
  font-size:.73rem;
  font-weight:850;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.logistics-card-todo{
  border-style:dashed;
  background:rgba(255,249,239,.76);
}
.logistics-card-todo strong{color:#8a6332}
.logistics-card-action{
  background:linear-gradient(145deg,rgba(235,247,245,.96),rgba(255,250,241,.96));
}
.logistics-card-action .btn{margin-top:17px}
.logistics-note{
  margin-top:18px;
  padding:14px 17px;
  border-radius:16px;
  display:flex;
  gap:10px 18px;
  flex-wrap:wrap;
  background:rgba(255,247,233,.92);
  border:1px dashed rgba(176,138,87,.46);
  color:#695539;
  font-size:.9rem;
}
@media(max-width:900px){.logistics-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.logistics-grid{grid-template-columns:1fr}.logistics-card{min-height:0}}

/* --- contact topic form --- */
.contact-form-section{
  background:
    radial-gradient(circle at 94% 12%,rgba(1,193,181,.055),transparent 28%),
    linear-gradient(180deg,rgba(255,255,255,.18),rgba(245,236,222,.48));
}
.contact-form-layout{align-items:start}
.contact-topic-list{display:grid;gap:10px;margin-top:24px}
.contact-topic-list>div{
  padding:13px 15px;
  border-radius:15px;
  background:rgba(255,255,255,.72);
  border:1px solid rgba(176,138,87,.18)
}
.contact-topic-list strong{display:block;color:var(--petrol);margin-bottom:3px}
.contact-topic-list span{display:block;color:var(--muted);font-size:.9rem;line-height:1.45}
.contact-form-status{
  margin:0 0 14px;padding:10px 12px;border-radius:12px;
  background:rgba(176,138,87,.08);border:1px solid rgba(176,138,87,.20);
  color:var(--muted);font-size:.9rem
}
.contact-form-status.is-ready{display:none}
.contact-request-form select{
  width:100%;
  min-height:48px;
  border:1px solid var(--line);
  border-radius:13px;
  padding:10px 12px;
  background:#fff;
  color:var(--ink);
  font:inherit
}
.contact-request-form button[disabled]{opacity:.48;cursor:not-allowed}

/* V10-F1.10 – finalisierte Lieferlogistik */
.logistics-note-final{
  align-items:center;
  background:linear-gradient(90deg,rgba(235,247,245,.92),rgba(255,248,236,.94));
  border-style:solid;
  color:#4e493f;
}
.logistics-note-final strong{color:var(--petrol)}
@media(max-width:680px){
  .logistics-note-final{display:grid;grid-template-columns:1fr}
  .logistics-note-final strong{margin-top:4px}
}


/* =========================================================
   V10-F1.11 – Navigation, Scrollytelling, Regionen, dynamischer Kontakt
   ========================================================= */

/* NAV: one uniform background, partner distinction only via type + divider */
.nav .nav-partner{
  background:transparent!important;
  border-radius:0!important;
  color:#8a6533!important;
  font-weight:760;
}
.nav .nav-partner:hover,
.nav .nav-partner[aria-current="page"]{
  background:transparent!important;
  color:var(--petrol)!important;
}
.nav .nav-partner[aria-current="page"]{
  box-shadow:inset 0 -2px 0 rgba(176,138,87,.72);
}
.nav .nav-partner-start{
  position:relative;
  margin-left:10px;
  padding-left:20px!important;
  border-left:0!important;
}
.nav .nav-partner-start::before{
  content:"";
  position:absolute;
  left:-6px;
  top:18%;
  bottom:18%;
  width:1px;
  background:rgba(126,93,47,.62);
}

/* compact/mobile menu: same clean background, visible group divider */
@media(max-width:1240px){
  .nav .nav-partner{
    background:transparent!important;
    border-left:0!important;
    border-radius:10px!important;
    color:#8a6533!important;
  }
  .nav .nav-partner:hover,
  .nav .nav-partner[aria-current="page"]{
    background:rgba(176,138,87,.07)!important;
  }
  .nav .nav-partner-start{
    margin:10px 0 0!important;
    padding:15px 12px 10px!important;
    border-top:1px solid rgba(126,93,47,.42)!important;
  }
  .nav .nav-partner-start::before{display:none}
}

/* Scrollytelling: every scene uses the same readable dark glass panel */
.story-copy-panel{
  padding:clamp(18px,2.25vw,30px)!important;
  border-radius:28px!important;
  background:
    linear-gradient(135deg,rgba(7,17,16,.80) 0%,rgba(10,22,20,.68) 58%,rgba(10,22,20,.48) 100%)!important;
  border:1px solid rgba(255,244,226,.12)!important;
  box-shadow:0 20px 52px rgba(0,0,0,.27)!important;
  backdrop-filter:blur(8px)!important;
  -webkit-backdrop-filter:blur(8px)!important;
  max-width:min(640px,calc(100% - 32px))!important;
}
.story-copy-panel h1,
.story-copy-panel h2{
  color:#fffaf4!important;
  text-shadow:0 8px 28px rgba(0,0,0,.38)!important;
}
.story-copy-panel p{
  color:rgba(255,255,255,.91)!important;
  text-shadow:0 2px 14px rgba(0,0,0,.24)!important;
}
.story-copy-panel .story-kicker{
  color:#fff2df!important;
  background:rgba(255,248,239,.10)!important;
  border-color:rgba(222,194,146,.70)!important;
}
.story-copy-center.story-copy-panel{
  text-align:left!important;
}

/* Stronger overlays across all story scenes */
.story-scene .story-shade{
  background:
    linear-gradient(90deg,rgba(6,13,12,.62) 0%,rgba(6,13,12,.36) 42%,rgba(6,13,12,.14) 72%,rgba(6,13,12,.28) 100%),
    linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.43))!important;
}

/* Scroll cue: fixed in viewport until the first real scroll so it cannot fall below the fold */
.story-entry-scroll-hint{
  position:fixed!important;
  left:50%!important;
  bottom:18px!important;
  transform:translateX(-50%)!important;
  z-index:1250!important;
}
.story-entry-scroll-hint.is-hidden{
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
@media(max-width:820px){
  .story-copy-panel{
    width:calc(100% - 28px)!important;
    max-width:none!important;
    left:14px!important;
    right:14px!important;
    padding:17px 16px!important;
    border-radius:22px!important;
  }
  .story-entry-scroll-hint{
    bottom:12px!important;
  }
}

/* Three hero actions */
.story-actions{
  flex-wrap:wrap;
}
.story-actions .supplier-action{
  background:transparent!important;
  color:#f3dcae!important;
  border-color:rgba(221,188,128,.70)!important;
}
.story-actions .supplier-action:hover{
  background:rgba(221,188,128,.13)!important;
}

/* Region section */
.region-section{
  background:
    radial-gradient(circle at 10% 0%,rgba(1,193,181,.045),transparent 25%),
    linear-gradient(180deg,rgba(255,255,255,.20),rgba(244,235,222,.52));
}
.region-metaphor-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
  margin-top:25px;
}
.region-metaphor-card{
  color:inherit;
  text-decoration:none;
  height:100%;
  transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease;
}
.region-metaphor-card:hover{
  transform:translateY(-4px);
  border-color:rgba(176,138,87,.42);
  box-shadow:0 22px 46px rgba(55,43,29,.09);
}
.region-city{
  display:inline-block;
  font-weight:850;
  color:var(--petrol);
  margin-bottom:5px;
}
.region-metaphor{
  display:block;
  color:#9a7139;
  font-size:.72rem;
  letter-spacing:.09em;
  text-transform:uppercase;
  font-weight:850;
  margin-bottom:13px;
}
.region-metaphor-card h3{font-size:1.15rem;line-height:1.16}
.region-metaphor-card p{color:var(--muted);font-size:.92rem}
.region-metaphor-card strong{color:var(--petrol);font-size:.88rem}
.region-footnote{
  margin:18px 0 0;
  color:var(--muted);
  font-size:.88rem;
}
.region-why-section{background:rgba(247,240,230,.42)}
@media(max-width:1050px){.region-metaphor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.region-metaphor-grid{grid-template-columns:1fr}}

/* Dynamic contact form */
.topic-panel{
  display:grid;
  gap:14px;
  padding:18px;
  border-radius:19px;
  background:linear-gradient(145deg,rgba(249,244,236,.92),rgba(255,255,255,.96));
  border:1px solid rgba(176,138,87,.24);
}
.topic-panel[hidden]{display:none!important}
.topic-panel-head{
  display:grid;
  gap:3px;
  padding-bottom:11px;
  border-bottom:1px solid rgba(176,138,87,.20);
}
.topic-panel-head strong{font-family:Georgia,"Times New Roman",serif;font-size:1.18rem;color:var(--petrol)}
.topic-panel-head span{color:var(--muted);font-size:.9rem}
.file-upload-grid,.social-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:13px;
}
.file-upload-box{
  padding:14px;
  border-radius:15px;
  border:1px dashed rgba(176,138,87,.42);
  background:rgba(255,255,255,.76);
}
.file-upload-box input[type=file]{margin-top:8px;width:100%}
.file-upload-box>span{display:block;margin-top:7px;color:var(--muted);font-size:.8rem}
.delivery-rule-box,.influencer-profile-requirement{
  padding:12px 14px;
  border-radius:14px;
  background:rgba(1,193,181,.055);
  border:1px solid rgba(1,160,151,.19);
  color:var(--petrol);
  font-size:.9rem;
}
.delivery-rule-box.is-no-avis{
  background:rgba(73,153,97,.08);
  border-color:rgba(73,153,97,.20);
}
.delivery-rule-box.is-avis{
  background:rgba(176,138,87,.10);
  border-color:rgba(176,138,87,.28);
}
.influencer-profile-requirement.is-error{
  background:rgba(170,61,52,.08);
  border-color:rgba(170,61,52,.22);
  color:#81342e;
}
.contact-message-block{display:grid;gap:14px}
.voucher-contact-panel .btn{justify-self:start}
.contact-request-form input[type=file]{font:inherit;color:var(--ink)}
.contact-request-form .is-field-error{
  border-color:#aa3d34!important;
  box-shadow:0 0 0 3px rgba(170,61,52,.08)!important;
}
@media(max-width:680px){
  .file-upload-grid,.social-grid{grid-template-columns:1fr}
}

/* Slightly clearer regional landing pages */
.region-page-hero .page-hero-card{max-width:calc(100% - 36px)}


/* =========================================================
   V10-F1.12 – Regional Master: 8 layout families + region hub
   ========================================================= */
.regional-page{background:var(--bg);color:var(--ink)}
.regional-page .breadcrumbs,.regional-hub-page .breadcrumbs{margin-bottom:22px}
.regional-signature{
  display:inline-block;margin-bottom:13px;color:#956b34;font-weight:850;
  font-size:.72rem;letter-spacing:.15em;text-transform:uppercase
}
.regional-local-line{font-family:Georgia,"Times New Roman",serif;font-size:1.06rem;line-height:1.5;color:#6e573a}
.regional-source-note{font-size:.78rem;color:var(--muted);margin-top:14px}
.regional-practical-card{
  padding:26px;border-radius:24px;background:linear-gradient(135deg,rgba(255,250,244,.96),rgba(243,234,220,.94));
  border:1px solid rgba(176,138,87,.28);box-shadow:0 16px 40px rgba(55,43,29,.06)
}
.regional-practical-card h2,.regional-practical-card h3{margin-top:0}
.regional-quote-card{
  padding:28px;border-radius:24px;background:var(--petrol);color:#fff;border:1px solid rgba(222,194,146,.22);
  box-shadow:0 18px 45px rgba(25,43,40,.16)
}
.regional-quote-card p{font:700 clamp(1.3rem,2.3vw,2rem)/1.2 Georgia,"Times New Roman",serif;margin:0 0 16px}
.regional-quote-card span{color:#e7ca94;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase}
.editorial-split{display:grid;grid-template-columns:1.15fr .85fr;gap:28px;align-items:center}

/* Layout 1 – premium split */
.regional-hero-split{padding:clamp(54px,8vw,110px) 0;background:linear-gradient(135deg,#f7eee2,#fff 58%,rgba(1,193,181,.035))}
.regional-hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:42px;align-items:center}
.regional-premium-panel{padding:34px;border-radius:30px;background:#263f3c;color:#fff;border:1px solid rgba(221,188,128,.28);box-shadow:0 30px 70px rgba(26,48,44,.18)}
.regional-premium-panel>span{color:#e4c78f;font-weight:850;letter-spacing:.12em;text-transform:uppercase;font-size:.72rem}
.regional-premium-panel h2{color:#fff;font-size:clamp(2rem,3vw,3rem)}
.regional-premium-panel p{color:rgba(255,255,255,.82)}
.regional-mini-facts{display:grid;gap:9px;margin-top:24px;padding-top:20px;border-top:1px solid rgba(255,255,255,.16)}
.regional-mini-facts b{font-size:.9rem}

/* Layout 2 – heritage / centered */
.regional-hero-centered{position:relative;overflow:hidden;padding:clamp(70px,10vw,135px) 0;text-align:center;background:#f7efe5}
.regional-hero-centered>.wrap{position:relative;z-index:2;max-width:900px}
.regional-hero-word{position:absolute;inset:auto 0 15%;font-size:clamp(6rem,16vw,14rem);font-weight:900;letter-spacing:-.07em;color:rgba(86,89,77,.045);white-space:nowrap}
.center-actions{justify-content:center}
.regional-local-pill{display:inline-block;margin:18px auto;padding:10px 14px;border:1px solid rgba(176,138,87,.28);border-radius:999px;background:rgba(255,255,255,.70);color:#705538}
.regional-three-story{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.regional-story-step{padding:22px;border-top:2px solid rgba(176,138,87,.48)}
.regional-story-step>span{color:#9b7138;font-size:.76rem;font-weight:900}

/* Layout 3 – movement / path */
.regional-path-hero{padding:clamp(55px,8vw,105px) 0;background:linear-gradient(180deg,#eff7f5,#fff)}
.regional-path-grid{display:grid;grid-template-columns:110px 1fr;gap:28px;max-width:980px}
.regional-path-line{display:flex;flex-direction:column;align-items:center;padding-top:20px}
.path-dot{width:16px;height:16px;border-radius:50%;border:3px solid #9c7541;background:#fff}
.path-dot.active{background:var(--turkis);border-color:var(--turkis-dark)}
.path-rail{width:2px;height:78px;background:linear-gradient(#b58b50,#d8c197)}
.regional-route-story{display:grid;gap:0;max-width:920px}
.route-item{display:grid;grid-template-columns:90px 1fr;gap:22px;padding:25px 0;border-bottom:1px solid rgba(176,138,87,.20)}
.route-item>span{color:#99713d;font-size:.72rem;letter-spacing:.14em;font-weight:900}

/* Layout 4 – craft */
.regional-craft-hero{padding:clamp(55px,8vw,105px) 0;background:#fffaf4}
.regional-craft-title{max-width:880px}
.regional-craft-title h1{max-width:14ch}
.regional-detail-strip{display:grid;grid-template-columns:repeat(4,1fr);margin-top:36px;border-top:1px solid rgba(176,138,87,.28);border-bottom:1px solid rgba(176,138,87,.28)}
.regional-detail-strip span{padding:15px;text-align:center;color:#785a33;font-size:.72rem;font-weight:900;letter-spacing:.12em}
.regional-detail-card{padding:28px;border:1px solid rgba(176,138,87,.30);border-radius:24px;background:linear-gradient(145deg,#fff,#f4ede3)}

/* Layout 5 – industrial */
.regional-industrial-hero{padding:clamp(55px,8vw,108px) 0;background:linear-gradient(135deg,#243936,#365955);color:#fff}
.regional-industrial-hero h1{color:#fff}
.regional-industrial-hero .lead{color:rgba(255,255,255,.84)}
.industrial-kicker{display:inline-block;color:#e5c78d;font-size:.74rem;letter-spacing:.16em;font-weight:900;margin-bottom:22px}
.industrial-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:38px;align-items:end}
.industrial-quote{font:700 clamp(1.3rem,2.5vw,2.15rem)/1.18 Georgia,"Times New Roman",serif;color:#f3dfb9;border-left:2px solid #d3aa67;padding-left:22px}

/* Layout 6 – near / practical */
.regional-near-hero{padding:clamp(50px,7vw,95px) 0;background:linear-gradient(135deg,#fff,#f7efe5)}
.regional-near-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:32px;align-items:center}
.regional-near-facts{display:grid;gap:12px}
.regional-near-facts>div{padding:17px 18px;border-radius:17px;background:#fff;border:1px solid rgba(176,138,87,.20)}
.regional-near-facts b{display:block;color:var(--petrol)}
.regional-near-facts span{display:block;color:var(--muted);font-size:.88rem;margin-top:2px}

/* Layout 7 – birth network */
.regional-birth-hero{padding:clamp(55px,8vw,105px) 0;background:radial-gradient(circle at 85% 18%,rgba(1,193,181,.12),transparent 28%),linear-gradient(135deg,#f7eee2,#fff)}
.birth-hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:34px;align-items:center}
.birth-hero-network{padding:28px;border-radius:28px;background:#fff;border:1px solid rgba(1,160,151,.22);box-shadow:0 22px 50px rgba(42,83,78,.09)}
.birth-hero-network>span{color:var(--turkis-dark);font-size:.72rem;letter-spacing:.13em;font-weight:900}
.birth-hero-network strong{display:block;margin:9px 0 12px;font:700 1.6rem/1.15 Georgia,"Times New Roman",serif;color:var(--petrol)}
.birth-hero-network p{color:var(--muted)}
.regional-birth-card{display:grid;grid-template-columns:1fr 80px;gap:24px;padding:28px;border-radius:26px;background:linear-gradient(135deg,#f2faf8,#fffaf3);border:1px solid rgba(1,160,151,.18)}
.regional-birth-mark{font-size:4rem;line-height:1;color:rgba(1,160,151,.28);font-weight:200;align-self:center;text-align:center}

/* Layout 8 – border / extended west */
.regional-border-hero{padding:clamp(55px,8vw,105px) 0;background:linear-gradient(90deg,#f5eee4,#fff 50%,#eff7f4)}
.border-stamp{display:inline-block;padding:8px 12px;border:1px solid rgba(176,138,87,.35);border-radius:8px;color:#7e5d31;font-size:.72rem;font-weight:900;letter-spacing:.13em;transform:rotate(-1deg);margin-bottom:20px}
.border-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:34px;align-items:center}
.border-local{padding:25px;border-radius:22px;background:#2c4743;color:#fff}
.border-local>span{color:#e4c78f;font-size:.70rem;letter-spacing:.13em;font-weight:900}
.border-local p{font:700 1.25rem/1.32 Georgia,"Times New Roman",serif;margin-bottom:0}

/* Region pages */
.regional-region-hero{padding:clamp(55px,8vw,105px) 0;background:linear-gradient(135deg,#f7efe5,#fff)}
.regional-region-title{max-width:920px}
.regional-area-cloud{margin-top:28px;padding:14px 18px;border-radius:16px;background:rgba(54,89,85,.065);color:var(--petrol);font-weight:700}
.regional-region-story{display:grid;grid-template-columns:1.2fr .8fr;gap:28px;align-items:center}
.regional-score-card{padding:24px;border-radius:22px;background:#2b4541;color:#fff}
.regional-score-card>span{font-size:.69rem;letter-spacing:.13em;color:#e4c78f;font-weight:900}
.regional-score-card strong{display:block;font:700 1.55rem/1.2 Georgia,"Times New Roman",serif;margin:8px 0}
.regional-score-card p{color:rgba(255,255,255,.78)}

/* FAQ */
.regional-faq{display:grid;gap:10px;max-width:900px}
.faq-item{border:1px solid rgba(176,138,87,.22);border-radius:16px;background:rgba(255,255,255,.78);overflow:hidden}
.faq-item summary{cursor:pointer;padding:15px 17px;font-weight:800;color:var(--petrol)}
.faq-item p{padding:0 17px 16px;margin:0;color:var(--muted)}

/* Hub */
.regional-hub-hero{padding:clamp(62px,8vw,110px) 0;background:radial-gradient(circle at 90% 15%,rgba(1,193,181,.09),transparent 30%),linear-gradient(135deg,#f7eee2,#fff)}
.regional-hub-hero h1{max-width:19ch}
.regional-hub-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:30px}
.regional-hub-stats>div{padding:16px;border:1px solid rgba(176,138,87,.22);border-radius:16px;background:rgba(255,255,255,.76)}
.regional-hub-stats strong{display:block;font-size:1.75rem;color:var(--petrol)}
.regional-hub-stats span{color:var(--muted);font-size:.82rem}
.regional-hub-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.regional-hub-grid-two{grid-template-columns:repeat(2,minmax(0,1fr))}
.regional-hub-card{display:block;padding:20px;border-radius:20px;background:#fff;border:1px solid rgba(176,138,87,.20);text-decoration:none;color:inherit;transition:.22s ease}
.regional-hub-card:hover{transform:translateY(-3px);border-color:rgba(176,138,87,.44);box-shadow:0 18px 38px rgba(55,43,29,.08)}
.regional-hub-card h3{margin:6px 0 7px}
.regional-hub-card>strong{color:#7c5b30;font-size:.84rem}
.regional-hub-card p{color:var(--muted);font-size:.9rem}
.regional-hub-type{color:#92703f;font-size:.67rem;font-weight:900;letter-spacing:.1em}
.regional-hub-more{color:var(--petrol);font-weight:800;font-size:.84rem}
.regional-tier-a{border-top:3px solid rgba(1,160,151,.45)}
.regional-tier-b{border-top:3px solid rgba(176,138,87,.40)}
.regional-tier-c{border-top:3px solid rgba(90,104,101,.28)}
.regional-hub-region-bg{background:rgba(246,238,226,.55)}
.regional-strategy-public{background:linear-gradient(135deg,rgba(1,193,181,.035),rgba(247,238,225,.68))}
.region-hub-cta{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-top:20px;padding:20px;border-radius:18px;background:linear-gradient(135deg,#fff,#f4eadb);border:1px solid rgba(176,138,87,.24)}
.region-hub-cta strong,.region-hub-cta span{display:block}
.region-hub-cta span{color:var(--muted);font-size:.86rem;margin-top:3px}

@media(max-width:900px){
 .regional-hero-grid,.editorial-split,.industrial-grid,.regional-near-grid,.birth-hero-grid,.border-grid,.regional-region-story{grid-template-columns:1fr}
 .regional-three-story{grid-template-columns:1fr}
 .regional-detail-strip{grid-template-columns:1fr 1fr}
 .regional-hub-grid{grid-template-columns:1fr 1fr}
 .regional-hub-stats{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){
 .regional-path-grid{grid-template-columns:42px 1fr}
 .route-item{grid-template-columns:60px 1fr}
 .regional-detail-strip{grid-template-columns:1fr}
 .regional-hub-grid,.regional-hub-grid-two{grid-template-columns:1fr}
 .regional-hub-stats{grid-template-columns:1fr 1fr}
 .region-hub-cta{align-items:flex-start;flex-direction:column}
 .regional-birth-card{grid-template-columns:1fr}
 .regional-birth-mark{display:none}
}


/* =========================================================
   V10-F1.13 – Scrollytelling: lesbarer, ruhiger, länger scharf
   ========================================================= */

/* Mehr Scrollweg = echte Ruhephasen zwischen den Crossfades */
@media (prefers-reduced-motion: no-preference){
  body:not(.reduce-motion) .scroll-story{
    height:calc(var(--story-scenes) * 115svh);
  }
}

/* Keine unscharfen ganzen Scenes mehr – Crossfade + minimale Skalierung genügen */
.story-scene{
  filter:none!important;
  will-change:opacity,transform;
}

/* Textbox bewusst lesbarer und etwas breiter */
.story-copy-panel{
  width:min(730px,calc(100% - 56px))!important;
  max-width:730px!important;
  padding:clamp(20px,2vw,30px)!important;
  top:50%!important;
  bottom:auto!important;
  transform:translateY(-50%)!important;
  max-height:calc(100% - 138px);
  overflow:auto;
  scrollbar-width:thin;
}

/* Überschriften dürfen niemals aus dem Panel herausragen */
.story-copy-panel h1,
.story-copy-panel h2{
  max-width:100%!important;
  width:100%;
  font-size:clamp(2.25rem,4.25vw,4.55rem)!important;
  line-height:1.01!important;
  overflow-wrap:normal;
  word-break:normal;
  hyphens:none;
  text-wrap:balance;
}
.story-heading-line{display:block}
.story-copy-panel p{
  max-width:56ch!important;
  font-size:clamp(.98rem,1.25vw,1.14rem)!important;
  line-height:1.5!important;
}
.story-copy-panel .story-actions{margin-top:4px}

/* In sehr niedrigen Browserfenstern Headline gezielt kleiner statt abgeschnitten */
@media (max-height:720px) and (min-width:821px){
  .story-copy-panel{
    top:48%!important;
    width:min(700px,calc(100% - 46px))!important;
    padding:18px 22px!important;
    max-height:calc(100% - 104px);
  }
  .story-copy-panel h1,
  .story-copy-panel h2{
    font-size:clamp(2rem,3.8vw,3.7rem)!important;
    margin-bottom:11px!important;
  }
  .story-copy-panel p{
    font-size:.98rem!important;
    line-height:1.42!important;
    margin-bottom:13px!important;
  }
  .story-kicker{
    margin-bottom:10px!important;
    padding:6px 10px!important;
    font-size:.76rem!important;
  }
  .story-actions .btn{
    padding:10px 13px!important;
    font-size:.87rem!important;
  }
}

/* Tablet / Mobile: vollständiger Inhalt, keine künstliche Textkürzung */
@media(max-width:820px){
  .story-copy-panel{
    width:calc(100% - 28px)!important;
    max-width:none!important;
    left:14px!important;
    right:14px!important;
    top:49%!important;
    bottom:auto!important;
    transform:translateY(-50%)!important;
    max-height:calc(100% - 132px);
    padding:17px 16px!important;
  }
  .story-copy-panel h1,
  .story-copy-panel h2{
    font-size:clamp(2rem,8.8vw,3.2rem)!important;
    line-height:1.02!important;
  }
  .story-copy-panel p{
    display:block!important;
    -webkit-line-clamp:unset!important;
    overflow:visible!important;
    font-size:.96rem!important;
    line-height:1.42!important;
  }
  .story-heading-line{display:block}
}
@media(max-width:440px){
  .story-copy-panel{
    top:48%!important;
    max-height:calc(100% - 120px);
  }
  .story-copy-panel h1,
  .story-copy-panel h2{
    font-size:clamp(1.78rem,8.7vw,2.55rem)!important;
  }
}

/* Der Inhalt bleibt während des Crossfades lesbar: kein zusätzlicher Filter */
.story-media,
.story-image,
.story-copy-panel{
  filter:none!important;
}


/* =========================================================
   V10-F1.13 – Regionale Hero-Visuals
   Eigene lokale Illustration + Baby-Bellmann-Farbüberlagerung
   ========================================================= */

.regional-local-visual{
  margin:0;
  min-width:0;
}
.regional-local-visual-frame{
  position:relative;
  overflow:hidden;
  min-height:260px;
  aspect-ratio:4 / 3;
  border-radius:28px;
  border:1px solid rgba(221,193,145,.38);
  background:#2d4b47;
  box-shadow:0 24px 56px rgba(38,58,54,.16);
  isolation:isolate;
}
.regional-local-visual img{
  width:100%;
  height:100%;
  object-fit:cover;
  transform:scale(1.015);
  transition:transform .7s cubic-bezier(.2,.65,.25,1);
}
.regional-local-visual-frame::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  background:
    linear-gradient(180deg,rgba(20,48,45,.03) 10%,rgba(20,48,45,.15) 55%,rgba(16,39,36,.64) 100%),
    linear-gradient(120deg,rgba(1,193,181,.09),rgba(210,177,118,.10) 55%,rgba(27,61,57,.12));
  mix-blend-mode:multiply;
}
.regional-local-visual-overlay{
  position:absolute;
  inset:0;
  z-index:3;
  pointer-events:none;
  background:
    radial-gradient(circle at 20% 16%,rgba(255,246,232,.22),transparent 30%),
    linear-gradient(135deg,rgba(255,248,236,.04),rgba(35,71,66,.16));
}
.regional-local-visual-tag{
  position:absolute;
  left:16px;
  right:16px;
  bottom:14px;
  z-index:4;
  display:inline-block;
  color:#fff8ed;
  font-size:.72rem;
  font-weight:850;
  letter-spacing:.055em;
  line-height:1.35;
  text-transform:uppercase;
  text-shadow:0 2px 14px rgba(0,0,0,.42);
}
.regional-local-visual:hover img{transform:scale(1.035)}
.regional-visual-stack{display:grid;gap:14px;align-content:start}

/* Layout 1 */
.regional-layout-1 .regional-visual-stack .regional-local-visual-frame{
  aspect-ratio:16/10;
}
.regional-layout-1 .regional-premium-panel{
  padding:24px 26px;
}

/* Layout 2: die bisher zentrierte Seite wird zu einer editorialen Asymmetrie */
.regional-layout-2 .regional-hero-centered{
  text-align:left;
}
.regional-layout-2 .regional-hero-centered>.regional-hero-word{
  text-align:center;
}
.regional-layout-2 .regional-layout2-hero-grid{
  max-width:1180px!important;
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);
  grid-template-rows:auto 1fr;
  gap:16px 38px;
  align-items:center;
}
.regional-layout-2 .regional-layout2-hero-grid>.breadcrumbs{
  grid-column:1 / -1;
}
.regional-layout-2 .regional-layout2-copy{
  min-width:0;
}
.regional-layout-2 .regional-layout2-copy .center-actions{
  justify-content:flex-start;
}
.regional-layout-2 .regional-local-pill{
  margin:18px 0;
}
.regional-layout-2 .regional-local-visual-frame{
  aspect-ratio:4/5;
  max-height:540px;
}

/* Layout 3: Weg/Bewegung + sichtbares Ortsmotiv */
.regional-layout-3 .regional-path-grid{
  grid-template-columns:72px minmax(0,1fr) minmax(300px,400px);
  align-items:center;
}
.regional-layout-3 .regional-local-visual-frame{
  aspect-ratio:4/5;
  min-height:360px;
}

/* Layout 4: Handwerk / Detail */
.regional-craft-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1.12fr) minmax(310px,.88fr);
  gap:36px;
  align-items:center;
}
.regional-layout-4 .regional-local-visual-frame{
  aspect-ratio:16/11;
}
.regional-layout-4 .regional-detail-strip{margin-top:28px}

/* Layout 5: Ruhr / Wandel – Bild ersetzt nicht die lokale Pointe, sondern rahmt sie */
.regional-industrial-visual-stack .regional-local-visual-frame{
  aspect-ratio:16/10;
}
.regional-industrial-visual-stack .industrial-quote{
  padding:14px 0 0 18px;
}

/* Layout 6: Nähe – Bild + Fakten rechts */
.regional-near-visual-stack .regional-local-visual-frame{
  aspect-ratio:16/9;
  min-height:210px;
}

/* Layout 7: Geburtsstandort – Ort + medizinisches Netzwerk getrennt sichtbar */
.regional-birth-visual-stack .regional-local-visual-frame{
  aspect-ratio:16/10;
}
.regional-birth-visual-stack .birth-hero-network{
  padding:21px 23px;
}

/* Layout 8: Grenz-/Westregion */
.regional-border-visual-stack .regional-local-visual-frame{
  aspect-ratio:16/10;
}
.regional-border-visual-stack .border-local{
  padding:18px 21px;
}

/* Regionsseiten */
.regional-region-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1.12fr) minmax(310px,.88fr);
  gap:38px;
  align-items:center;
}
.regional-region-hero-grid .regional-local-visual-frame{
  aspect-ratio:16/10;
}
.regional-region-hero .regional-area-cloud{
  margin-top:24px;
}

/* Kleine Bildbewegung aus, wenn Bewegung reduziert ist */
@media(prefers-reduced-motion:reduce){
  .regional-local-visual img{transition:none!important;transform:none!important}
}
body.reduce-motion .regional-local-visual img{transition:none!important;transform:none!important}

/* Tablet / Mobile */
@media(max-width:980px){
  .regional-layout-2 .regional-layout2-hero-grid,
  .regional-layout-3 .regional-path-grid,
  .regional-craft-hero-grid,
  .regional-region-hero-grid{
    grid-template-columns:1fr;
  }
  .regional-layout-3 .regional-path-line{display:none}
  .regional-layout-2 .regional-layout2-hero-grid>.breadcrumbs{grid-column:auto}
  .regional-layout-2 .regional-local-visual-frame,
  .regional-layout-3 .regional-local-visual-frame,
  .regional-layout-4 .regional-local-visual-frame,
  .regional-region-hero-grid .regional-local-visual-frame{
    aspect-ratio:16/9;
    min-height:230px;
    max-height:none;
  }
  /* auf Mobilgeräten bleibt zuerst die Aussage, dann das Ortsmotiv */
  .regional-local-visual{order:2}
}
@media(max-width:620px){
  .regional-local-visual-frame{
    border-radius:21px;
    min-height:205px;
  }
  .regional-local-visual-tag{
    left:13px;right:13px;bottom:11px;font-size:.65rem
  }
}


/* =========================================================
   V10-F1.14 – Pregnancy Journey + reduzierte Startseite
   ========================================================= */

.pregnancy-entry{
  background:
    radial-gradient(circle at 90% 10%,rgba(1,193,181,.075),transparent 25%),
    linear-gradient(180deg,#fffaf4,#f7efe5);
}
.pregnancy-entry-grid{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);
  gap:34px;
  align-items:center;
}
.pregnancy-entry-copy h2{max-width:12ch}
.pregnancy-phases{display:grid;gap:10px}
.pregnancy-phase{
  display:grid;
  grid-template-columns:46px 1fr;
  column-gap:14px;
  padding:16px 18px;
  border-radius:18px;
  background:rgba(255,255,255,.83);
  border:1px solid rgba(176,138,87,.20);
  color:inherit;
  text-decoration:none;
  transition:.2s ease;
}
.pregnancy-phase:hover{transform:translateX(4px);border-color:rgba(176,138,87,.42)}
.pregnancy-phase>span{
  grid-row:1 / 3;
  color:#9a7139;
  font:700 1.4rem/1 Georgia,"Times New Roman",serif;
  align-self:center;
}
.pregnancy-phase strong{color:var(--petrol)}
.pregnancy-phase p{margin:2px 0 0;color:var(--muted);font-size:.9rem}

.decision-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
.decision-card{
  overflow:hidden;
  border-radius:24px;
  background:#fff;
  border:1px solid rgba(176,138,87,.20);
  color:inherit;
  text-decoration:none;
  box-shadow:0 14px 35px rgba(55,43,29,.055);
  transition:.22s ease;
}
.decision-card:hover{transform:translateY(-4px);box-shadow:0 22px 45px rgba(55,43,29,.09)}
.decision-media{height:220px;overflow:hidden;background:#e8e1d6}
.decision-media img{width:100%;height:100%;object-fit:cover;transition:.5s ease}
.decision-card:hover .decision-media img{transform:scale(1.035)}
.decision-body{padding:18px 19px 20px}
.decision-body>span{color:#9a7139;font-size:.7rem;font-weight:900;letter-spacing:.12em}
.decision-body h3{margin-top:5px}
.decision-body p{color:var(--muted);margin-bottom:0}

/* Pregnancy page */
.pregnancy-hero{
  padding:clamp(58px,8vw,108px) 0;
  background:
    radial-gradient(circle at 85% 15%,rgba(1,193,181,.10),transparent 28%),
    linear-gradient(135deg,#f8eee1,#fff 60%);
}
.pregnancy-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr);
  gap:42px;
  align-items:center;
}
.pregnancy-hero h1{max-width:13ch}
.pregnancy-hero-visual{
  position:relative;
  min-height:470px;
}
.pregnancy-photo{
  position:absolute;
  overflow:hidden;
  border-radius:27px;
  border:1px solid rgba(176,138,87,.28);
  box-shadow:0 24px 55px rgba(54,69,63,.14);
  background:#e9e1d5;
}
.pregnancy-photo img{width:100%;height:100%;object-fit:cover}
.pregnancy-photo-main{inset:0 50px 70px 0}
.pregnancy-photo-small{width:48%;height:42%;right:0;bottom:0;border:6px solid #f8f1e8}
.pregnancy-hero-note{
  position:absolute;left:17px;bottom:88px;z-index:3;
  padding:9px 13px;border-radius:999px;background:rgba(36,68,64,.92);color:#fff7e9;
  font-size:.77rem;font-weight:850;letter-spacing:.02em
}
.pregnancy-three-grid{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px
}
.pregnancy-topic{
  padding:23px;border-radius:22px;background:linear-gradient(145deg,#fff,#f7efe4);
  border:1px solid rgba(176,138,87,.20)
}
.pregnancy-topic>span{color:#9a7139;font-size:.72rem;font-weight:900;letter-spacing:.12em}
.pregnancy-topic h3{margin-top:7px}
.pregnancy-topic p{color:var(--muted)}
.pregnancy-topic a{color:var(--petrol);font-weight:850;font-size:.88rem}

.pregnancy-phase-section{background:rgba(244,236,224,.55)}
.pregnancy-phase-grid{
  display:grid;grid-template-columns:1.05fr .95fr;gap:34px;align-items:center
}
.pregnancy-check-list{display:grid;gap:10px}
.pregnancy-check-list>div{
  padding:15px 17px;border-radius:15px;background:#fff;border:1px solid rgba(176,138,87,.18)
}
.pregnancy-check-list strong{display:block;color:var(--petrol)}
.pregnancy-check-list span{display:block;color:var(--muted);font-size:.9rem;margin-top:2px}

.pregnancy-compass{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;
  max-width:980px
}
.pregnancy-compass fieldset{
  min-width:0;margin:0;padding:17px;border-radius:18px;
  border:1px solid rgba(176,138,87,.22);background:rgba(255,255,255,.82)
}
.pregnancy-compass legend{font-weight:850;color:var(--petrol);padding:0 5px}
.pregnancy-compass label{
  display:flex;gap:9px;align-items:flex-start;padding:7px 0;color:#4d4d4d;font-size:.92rem
}
.pregnancy-compass input{margin-top:4px}
.pregnancy-compass>.btn{justify-self:start;align-self:start}
.pregnancy-compass-result{
  display:none;grid-column:1 / -1;padding:19px 20px;border-radius:18px;
  background:linear-gradient(135deg,rgba(1,193,181,.07),rgba(247,237,223,.82));
  border:1px solid rgba(1,160,151,.20)
}
.pregnancy-compass-result.show{display:block}
.pregnancy-compass-result strong{display:block;color:var(--petrol);font:700 1.3rem/1.25 Georgia,"Times New Roman",serif}
.pregnancy-compass-result p{margin:7px 0;color:#3e4e4b}
.pregnancy-compass-result span{color:var(--muted);font-size:.85rem}
.pregnancy-later-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.pregnancy-later-chips span{
  padding:8px 11px;border-radius:999px;background:#fff;border:1px solid rgba(176,138,87,.22);
  color:var(--petrol);font-size:.84rem;font-weight:750
}
.pregnancy-final-cta{text-align:left}

@media(max-width:900px){
  .pregnancy-entry-grid,.pregnancy-hero-grid,.pregnancy-phase-grid{grid-template-columns:1fr}
  .decision-grid,.pregnancy-three-grid{grid-template-columns:1fr 1fr}
  .pregnancy-hero-visual{min-height:390px}
}
@media(max-width:620px){
  .decision-grid,.pregnancy-three-grid,.pregnancy-compass{grid-template-columns:1fr}
  .pregnancy-compass-result{grid-column:auto}
  .pregnancy-entry-grid{gap:22px}
  .pregnancy-hero-visual{min-height:310px}
  .pregnancy-photo-main{inset:0 30px 48px 0}
  .pregnancy-photo-small{height:38%}
  .pregnancy-hero-note{bottom:61px;font-size:.7rem}
  .decision-media{height:190px}
}

/* F1.14: interne Redaktion standardmäßig unsichtbar */
body.hide-explanations .regional-score-card[data-explanation-group="true"],
body.hide-explanations .regional-hub-stats[data-explanation-group="true"]{
  display:none!important;
}


/* =========================================================
   V10-F1.15 – Regional-Kontrast auf dunklen Flächen
   ========================================================= */
.regional-page .regional-premium-panel,
.regional-page .regional-quote-card,
.regional-page .regional-score-card,
.regional-page .border-local{
  color:#fffaf2!important;
}
.regional-page .regional-premium-panel h1,
.regional-page .regional-premium-panel h2,
.regional-page .regional-premium-panel h3,
.regional-page .regional-quote-card h1,
.regional-page .regional-quote-card h2,
.regional-page .regional-quote-card h3,
.regional-page .regional-score-card h1,
.regional-page .regional-score-card h2,
.regional-page .regional-score-card h3,
.regional-page .border-local h1,
.regional-page .border-local h2,
.regional-page .border-local h3{
  color:#fffaf2!important; opacity:1!important;
}
.regional-page .regional-premium-panel p,
.regional-page .regional-premium-panel li,
.regional-page .regional-quote-card p,
.regional-page .regional-quote-card li,
.regional-page .regional-score-card p,
.regional-page .regional-score-card li,
.regional-page .border-local p,
.regional-page .border-local li{
  color:rgba(255,250,242,.89)!important; opacity:1!important;
}
.regional-page .regional-premium-panel>span,
.regional-page .regional-score-card>span,
.regional-page .border-local>span{
  color:#f0d6a4!important;
}
.regional-page .regional-premium-panel .muted,
.regional-page .regional-quote-card .muted,
.regional-page .regional-score-card .muted,
.regional-page .border-local .muted{
  color:rgba(255,250,242,.75)!important;
}

/* Google Reviews: 9 Desktop / 6 Mobil */
@media(max-width:820px){
  #bewertungen .reviews-grid .review-card:nth-child(n+7){display:none!important}
}
@media(min-width:821px){
  #bewertungen .reviews-grid .review-card{display:block!important}
}

/* Service – kompakt auf Startseite */
.service-benefits-section{background:linear-gradient(180deg,rgba(249,243,234,.38),rgba(255,255,255,.82))}
.service-benefit-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.service-benefit{padding:18px 17px 20px;border-radius:19px;background:#fff;border:1px solid rgba(176,138,87,.20);box-shadow:0 12px 30px rgba(55,43,29,.045)}
.service-benefit-icon{display:inline-grid;place-items:center;width:35px;height:35px;border-radius:50%;margin-bottom:13px;background:rgba(1,193,181,.075);border:1px solid rgba(1,160,151,.20);color:var(--petrol);font-size:.70rem;font-weight:900}
.service-benefit h3{margin:0 0 8px;font-size:1.04rem}
.service-benefit p{margin:0;color:var(--muted);font-size:.88rem;line-height:1.47}

/* Service – ausführlich auf Beratung */
.service-detail-section{background:linear-gradient(135deg,rgba(247,239,228,.70),rgba(255,255,255,.96))}
.service-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.service-detail-card{padding:22px;border-radius:21px;background:#fff;border:1px solid rgba(176,138,87,.20)}
.service-detail-card>span{display:block;color:#98703a;font-size:.70rem;font-weight:900;letter-spacing:.11em;text-transform:uppercase;margin-bottom:8px}
.service-detail-card h3{margin-top:0}
.service-detail-card p{color:var(--muted);margin-bottom:0}

/* Schwangerschaftsseite – Lagerung und Abholung */
.pregnancy-storage-section{background:radial-gradient(circle at 85% 10%,rgba(1,193,181,.07),transparent 25%),linear-gradient(135deg,#fffaf3,#f3eadc)}
.pregnancy-storage-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:30px;align-items:center}
.pregnancy-storage-card{padding:25px;border-radius:22px;background:#284743;color:#fffaf2;border:1px solid rgba(225,195,143,.28);box-shadow:0 18px 42px rgba(39,69,65,.12)}
.pregnancy-storage-card strong{display:block;color:#f4d8a6;font:700 1.32rem/1.2 Georgia,"Times New Roman",serif;margin-bottom:9px}
.pregnancy-storage-card p{color:rgba(255,250,242,.88)}
.pregnancy-storage-card .btn{color:#fffaf2;border-color:rgba(240,214,164,.50)}

/* Sortiment – Service nur dort, wo es zur Entscheidung passt */
.assortment-service-note{margin-top:20px;padding:18px 20px;border-radius:18px;background:linear-gradient(135deg,rgba(1,193,181,.055),rgba(247,238,225,.70));border:1px solid rgba(1,160,151,.16)}
.assortment-service-note strong{display:block;color:var(--petrol);margin-bottom:5px}
.assortment-service-note p{margin:0 0 7px;color:var(--muted)}
.assortment-service-note a{color:var(--petrol);font-weight:800;font-size:.88rem}

@media(max-width:1100px){.service-benefit-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:820px){.service-benefit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-detail-grid{grid-template-columns:1fr 1fr}.pregnancy-storage-grid{grid-template-columns:1fr}}
@media(max-width:560px){.service-benefit-grid,.service-detail-grid{grid-template-columns:1fr}}


/* =========================================================
   V10-F1.16 – ServicePlus + Preisgarantie-Formular
   ========================================================= */
.service-benefit-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
.service-benefit{
  min-height:100%;
}
.service-detail-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
.price-guarantee-upload-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:13px;
}
.price-guarantee-panel .field-help{
  display:block;
  margin-top:6px;
  color:var(--muted);
  font-size:.8rem;
}
.price-guarantee-note{
  background:rgba(176,138,87,.08);
  border-color:rgba(176,138,87,.22);
}
.price-proof-section{
  background:linear-gradient(135deg,rgba(1,193,181,.035),rgba(247,238,225,.58));
}
.price-proof-list{
  margin:0 0 20px;
  padding-left:1.3rem;
}
.price-proof-list li{
  padding:5px 0;
  color:#3e4e4b;
}
.pregnancy-order-note{
  margin:0 0 15px!important;
  padding:10px 12px;
  border-radius:13px;
  background:rgba(244,216,166,.11);
  border:1px solid rgba(244,216,166,.20);
  color:#fff3dc!important;
  font-size:.88rem;
}
@media(max-width:900px){
  .service-benefit-grid,
  .service-detail-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:620px){
  .service-benefit-grid,
  .service-detail-grid,
  .price-guarantee-upload-grid{
    grid-template-columns:1fr!important;
  }
}


/* =========================================================
   V10-F1.17 - Final polish: story, footer, mobile visit bar
   ========================================================= */
.story-copy-panel{
  overflow:visible!important;
  max-height:none!important;
}
.story-scene-finale .story-copy-panel{
  width:min(650px,calc(100% - 48px))!important;
  padding:18px 22px!important;
}
.story-scene-finale .story-copy-panel h2{
  font-size:clamp(2rem,3.7vw,3.55rem)!important;
  line-height:1.01!important;
  max-width:14ch!important;
  margin-bottom:11px!important;
}
.story-scene-finale .story-copy-panel p{
  font-size:clamp(.92rem,1.1vw,1.04rem)!important;
  line-height:1.42!important;
  margin-bottom:12px!important;
}
@media(max-height:760px) and (min-width:821px){
  .story-scene-finale .story-copy-panel h2{font-size:clamp(1.85rem,3.25vw,3rem)!important}
  .story-scene-finale .story-copy-panel{padding:15px 20px!important}
}
@media(max-width:820px){
  .story-scene-finale .story-copy-panel h2{font-size:clamp(1.72rem,7.6vw,2.55rem)!important;max-width:100%!important}
  .story-scene-finale .story-copy-panel p{font-size:.9rem!important;line-height:1.36!important}
}

.footer-grid-v17{
  display:grid!important;
  grid-template-columns:1.05fr .85fr .82fr 1.08fr .78fr!important;
  gap:28px!important;
  align-items:start!important;
  grid-auto-rows:auto!important;
}
.footer-grid-v17>div{min-height:0!important;align-self:start!important}
.footer-logo-mark{width:58px;height:58px;object-fit:contain;border-radius:15px;background:#fffaf2;padding:5px}
.footer-grid-v17 .footer-nav{margin-top:10px;gap:7px}
.footer-grid-v17 .footer-nav a,.footer-grid-v17 .footer-link-button{min-height:32px!important}
.footer-link-button{appearance:none;background:none;border:0;padding:0;color:inherit;text-align:left;font:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.footer-hours b{color:#f0d6a4!important}
.footer-special-hours{font-size:.78rem!important;color:rgba(255,255,255,.72)!important;line-height:1.45!important}
.footer-whatsapp-link{font-weight:800;color:#f0d6a4!important}
.footer-whatsapp-note{font-size:.76rem;color:rgba(255,255,255,.68)!important;line-height:1.35}
.footer-social-links{display:grid;gap:9px;margin-top:11px}
.footer-social-links a{display:flex;align-items:center;gap:9px;text-decoration:none;min-height:36px}
.footer-social-links svg{width:22px;height:22px;flex:0 0 22px;color:#f0d6a4}
.footer-withdraw-link{font-weight:850!important;color:#f3d8a6!important}
@media(max-width:1100px){.footer-grid-v17{grid-template-columns:repeat(3,1fr)!important}}
@media(max-width:760px){
  .footer-grid-v17{grid-template-columns:1fr!important;gap:24px!important}
  .footer-grid-v17>div{margin:0!important;padding:0!important;min-height:0!important}
  footer{padding-bottom:98px!important}
}

.external-media-placeholder{display:grid;place-items:center;text-align:center;gap:9px;min-height:300px;padding:28px;background:linear-gradient(135deg,#f3eadc,#e5efec);color:var(--petrol)}
.external-media-placeholder p{margin:0;max-width:38ch}
.map-card iframe:not([src]){display:none}

.mobile-visit-bar,.mobile-hours-panel{display:none}
@media(max-width:760px){
  body{padding-bottom:68px}
  .mobile-visit-bar{position:fixed;left:8px;right:8px;bottom:8px;z-index:1450;display:grid;grid-template-columns:.66fr .88fr .70fr 1.30fr;background:rgba(32,62,59,.97);border:1px solid rgba(240,214,164,.36);border-radius:17px;box-shadow:0 16px 42px rgba(0,0,0,.24);overflow:hidden;backdrop-filter:blur(12px)}
  .mobile-visit-bar a,.mobile-visit-bar button{display:flex;align-items:center;justify-content:center;min-height:52px;padding:8px 7px;border:0;background:transparent;color:#fffaf2;font:800 .78rem/1.15 system-ui,sans-serif;text-decoration:none;text-align:center;border-right:1px solid rgba(255,255,255,.12)}
  .mobile-visit-bar button{border-right:0;color:#f2d49d}
  .mobile-visit-bar .mobile-whatsapp{color:#a9eee4;background:rgba(1,193,181,.10)}
  .mobile-visit-bar.is-open button{color:#9ce6d9}
  .mobile-hours-panel[hidden]{display:none!important}
  .mobile-hours-panel{position:fixed;inset:0;z-index:1460;display:grid;align-items:end;background:rgba(10,25,23,.46);padding:12px}
  .mobile-hours-card{position:relative;background:#fffaf3;color:var(--petrol);border-radius:24px 24px 16px 16px;padding:24px;box-shadow:0 18px 60px rgba(0,0,0,.25)}
  .mobile-hours-card p{color:#4c5b58}
  .mobile-hours-close{position:absolute;right:12px;top:10px;border:0;background:transparent;font-size:1.8rem;color:var(--petrol);cursor:pointer}
  .cookie-banner{bottom:72px!important}
}

.withdraw-card{max-width:850px;margin:0 auto;padding:clamp(20px,4vw,36px);border-radius:24px;background:#fff;border:1px solid rgba(176,138,87,.22);box-shadow:0 16px 42px rgba(55,43,29,.07)}
.withdraw-summary{padding:16px;border-radius:16px;background:#f6efe5;border:1px solid rgba(176,138,87,.20);margin-bottom:18px}
.withdraw-summary p{margin:5px 0}
.legal-form-sample{padding:18px;border-radius:16px;background:#f8f3ec;border:1px solid rgba(176,138,87,.18)}


/* F1.17: Skip nur am Beginn des Einstiegs zeigen */
.scroll-story-has-started .story-skip{opacity:0!important;visibility:hidden!important;pointer-events:none!important;transform:translateY(-6px)!important}
.story-skip{transition:opacity .2s ease,transform .2s ease,visibility .2s ease}

/* Footer: Unterzeile auf dunklem Petrol lesbar */
.footer-grid-v17 .brand-sub{color:rgba(255,255,255,.72)!important}


/* =========================================================
   V10-F1.19 – Instagram Current Feed + relevance filter
   ========================================================= */
.instagram-current-section{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 8% 12%,rgba(1,193,181,.09),transparent 26%),
    radial-gradient(circle at 92% 0%,rgba(176,138,87,.11),transparent 30%),
    linear-gradient(180deg,rgba(252,248,243,.96),rgba(247,239,229,.72));
}
.instagram-current-head{display:grid;grid-template-columns:minmax(0,1.55fr) auto;align-items:end;gap:28px;margin-bottom:24px}
.instagram-current-head h2{max-width:760px;margin-bottom:12px}
.instagram-current-head .lead{max-width:720px;margin:0}
.instagram-current-actions{display:flex;flex-direction:column;align-items:flex-end;gap:12px;padding-bottom:4px}
.instagram-current-actions .text-link{font-weight:800;color:var(--petrol);text-decoration:none}
.instagram-current-actions .text-link:hover{text-decoration:underline}
.instagram-feed-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.instagram-post-card{position:relative;display:flex;flex-direction:column;min-width:0;overflow:hidden;border-radius:24px;background:rgba(255,255,255,.93);border:1px solid rgba(86,66,42,.13);box-shadow:0 16px 38px rgba(72,52,30,.075)}
.instagram-post-media{position:relative;display:block;overflow:hidden;aspect-ratio:1/1;background:linear-gradient(135deg,#eee3d6,#dce9e6)}
.instagram-post-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s ease}
.instagram-post-media::after{content:"";position:absolute;inset:0;pointer-events:none;background:rgba(247,237,222,.045);z-index:1}
.instagram-post-card:hover .instagram-post-media img{transform:scale(1.018)}
.instagram-post-type{position:absolute;z-index:2;top:12px;right:12px;display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border-radius:999px;background:rgba(23,57,55,.88);color:#fffaf3;font:800 .7rem/1 system-ui,sans-serif;backdrop-filter:blur(8px)}
.instagram-post-body{display:flex;flex:1;flex-direction:column;padding:18px 18px 19px}
.instagram-post-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;font-size:.72rem;color:#786b61}
.instagram-post-category{font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#168c84}
.instagram-post-body p{margin:0;color:#4d4641;line-height:1.53}
.instagram-feed-home .instagram-post-body p{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.instagram-post-link{display:inline-flex;align-items:center;gap:6px;margin-top:auto;padding-top:16px;font-weight:850;color:var(--petrol);text-decoration:none}
.instagram-post-link:hover{text-decoration:underline}
.instagram-feed-note{margin:15px 0 0;color:#766b63;font-size:.77rem;text-align:right}
.instagram-feed-empty{grid-column:1/-1;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;padding:22px;border:1px dashed rgba(54,89,85,.28);border-radius:22px;background:rgba(255,255,255,.68)}
.instagram-feed-empty-mark{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:rgba(1,193,181,.10);color:var(--petrol);font-size:1.55rem}
.instagram-feed-empty p{margin:4px 0 0;color:var(--muted)}
.instagram-archive-section{background:linear-gradient(180deg,#fffaf5,#f8f1e8)}
.instagram-feed-archive .instagram-post-body p{white-space:normal}
.instagram-archive-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:28px;padding:22px;border-radius:22px;background:var(--petrol);color:#fffaf3}
.instagram-archive-footer p{margin:0;color:rgba(255,250,243,.84)}
.instagram-editorial-visual{display:grid;place-items:center;min-height:360px;background:linear-gradient(145deg,#315956,#607773 55%,#a9906c);border-radius:32px;overflow:hidden}
.instagram-editorial-stack{width:min(84%,430px);padding:28px;border:1px solid rgba(247,215,158,.4);border-radius:26px;background:rgba(33,58,55,.72);box-shadow:0 26px 60px rgba(0,0,0,.18);color:#fffaf2;backdrop-filter:blur(12px)}
.instagram-editorial-stack span{display:inline-block;margin-bottom:14px;padding:6px 10px;border:1px solid rgba(247,215,158,.55);border-radius:999px;color:#f2d49d;font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.instagram-editorial-stack strong{display:block;font-family:Georgia,'Times New Roman',serif;font-size:clamp(1.7rem,3vw,2.65rem);line-height:1.04}
.instagram-editorial-stack small{display:block;margin-top:18px;color:rgba(255,250,242,.72)}
@media(max-width:900px){
  .instagram-current-head{grid-template-columns:1fr;gap:14px}
  .instagram-current-actions{align-items:flex-start;flex-direction:row;flex-wrap:wrap}
  .instagram-feed-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:640px){
  .instagram-feed-grid{grid-template-columns:1fr}
  .instagram-feed-home .instagram-post-card:nth-of-type(n+4){display:none!important}
  .instagram-current-actions{display:grid;grid-template-columns:1fr;width:100%}
  .instagram-current-actions .btn{width:100%;justify-content:center}
  .instagram-feed-note{text-align:left}
  .instagram-feed-empty{grid-template-columns:auto 1fr;padding:18px}
  .instagram-feed-empty .btn{grid-column:1/-1;width:100%;justify-content:center}
  .instagram-archive-footer{align-items:flex-start;flex-direction:column}
  .instagram-archive-footer .btn{width:100%;justify-content:center}
}
.instagram-post-placeholder{display:grid;place-items:center;width:100%;height:100%;padding:24px;background:linear-gradient(145deg,#e9f5f2,#efe2d2);color:var(--petrol);font-family:Georgia,'Times New Roman',serif;font-size:1.35rem;text-align:center}


/* V10-F1.20 – WhatsApp Business */
@media(max-width:390px){
  .mobile-visit-bar a,.mobile-visit-bar button{font-size:.72rem;padding-left:4px;padding-right:4px}
}

/* V10-F1.22 – serverseitig aktualisierte Google-Bewertungen */
.review-card .review-meta{display:flex;flex-direction:column;gap:2px;margin-top:12px}
.review-card .review-meta span{font-size:.84rem;color:var(--muted)}
.review-card .review-source{font-size:.78rem;font-weight:700;letter-spacing:.02em}
.review-card .review-text{white-space:pre-line;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:9;overflow:hidden}
.review-summary .review-sync-note{font-size:.88rem;margin-top:4px}


/* =========================================================
   V10-F1.23 – Header-Schnellzugriffe + responsive Vimeo-Story
   ========================================================= */
.nav-mobile-actions{display:none}
.header-cta .header-instagram{color:var(--petrol)}
@media (max-width:1240px){
  .nav-mobile-actions{
    display:grid;
    width:100%;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:8px;
    margin-top:9px;
    padding-top:11px;
    border-top:1px solid var(--line);
  }
  .nav .nav-mobile-actions a{
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    min-height:43px;
    padding:9px 8px;
    border:1px solid rgba(1,193,181,.18);
    border-radius:12px;
    background:rgba(1,193,181,.06);
    color:var(--petrol);
    font-size:.82rem;
    font-weight:800;
    text-align:center;
  }
  .nav .nav-mobile-actions .nav-mobile-whatsapp{
    background:rgba(32,62,59,.96);
    color:#fffaf2;
    border-color:rgba(32,62,59,.96);
  }
}
@media (max-width:520px){
  .nav-mobile-actions{grid-template-columns:1fr}
  .nav .nav-mobile-actions a{min-height:40px}
}

/* Vimeo bleibt ein nicht-interaktiver Hintergrund und wird per JS pro Format geladen. */
.story-media .responsive-vimeo-frame{
  position:absolute;
  z-index:2;
  left:50%;
  top:50%;
  width:max(100%,177.78vh);
  height:max(100%,56.25vw);
  min-width:100%;
  min-height:100%;
  transform:translate(-50%,-50%) scale(1.06);
  border:0;
  opacity:0;
  pointer-events:none;
  transition:opacity .45s ease;
}
.story-media .responsive-vimeo-frame.is-ready{opacity:1}
.story-scene-finale-video::before,.story-scene-finale-video::after{display:none!important}
@media(max-width:760px){
  .story-media .responsive-vimeo-frame{
    width:max(100%,177.78vh);
    height:max(100%,56.25vw);
    transform:translate(-50%,-50%) scale(1.08);
  }
}
@media(prefers-reduced-motion:reduce){.story-media .responsive-vimeo-frame{display:none!important}}
body.reduce-motion .story-media .responsive-vimeo-frame{display:none!important}
@media (max-width:1240px){
  .nav.open{max-height:calc(100dvh - var(--header-h) - 18px);overflow:auto;overscroll-behavior:contain}
}


/* V10-F1.26 – intelligentes Kontaktformular + mobile Cookie-Korrektur */
.contact-request-form .contact-locked-area{position:relative;transition:filter .22s ease,opacity .22s ease}
.contact-request-form.form-locked .contact-locked-area{filter:blur(3px);opacity:.48;pointer-events:none;user-select:none}
.form-lock-hint{display:none}
.contact-request-form.form-locked .form-lock-hint{display:flex;position:absolute;z-index:5;left:50%;top:24px;transform:translateX(-50%);width:min(92%,560px);padding:14px 18px;border-radius:16px;background:rgba(255,255,255,.96);box-shadow:0 12px 32px rgba(0,0,0,.12);filter:none;flex-direction:column;gap:3px;text-align:center;color:var(--petrol)}
.form-lock-hint span{font-size:.88rem;color:var(--muted)}
.topic-selector{position:relative;z-index:7;margin-bottom:16px}
.inline-check{display:flex!important;align-items:flex-start;gap:8px;margin-top:10px;font-weight:400!important}
.inline-check input{width:auto!important;margin-top:3px}
.aligned-fields>div{display:flex;flex-direction:column}
.aligned-fields input,.aligned-fields select{margin-top:auto}
[data-person-fields][hidden],[data-response-choice][hidden]{display:none!important}
@media(max-width:640px){
 .cookie-banner{left:8px!important;right:8px!important;bottom:70px!important}
 .cookie-panel{max-height:min(70vh,520px);overflow:auto;padding:12px!important;border-radius:18px!important}
 .cookie-panel h2,.cookie-panel h3{font-size:1.05rem;margin:0 0 5px}
 .cookie-panel p,.cookie-panel .muted{font-size:.78rem!important;line-height:1.35!important;margin:4px 0}
 .cookie-choices{gap:6px!important;margin-top:8px!important}
 .cookie-choice{padding:8px 10px!important;border-radius:13px!important}
 .cookie-choice strong{font-size:.88rem;margin-bottom:1px!important}
 .cookie-actions{gap:6px!important;margin-top:8px!important}
 .cookie-actions .btn{padding:8px 10px!important;font-size:.78rem!important}
}

/* V10-F1.26 – klickbare Google-Bewertungskarten */
.review-card-link{display:flex;flex-direction:column;color:inherit;text-decoration:none}
.review-card-link:hover{transform:translateY(-2px);border-color:rgba(1,193,181,.45)}
.review-card-link:focus-visible{outline:3px solid rgba(1,193,181,.35);outline-offset:3px}
.review-card-link .review-meta{margin-top:auto}


/* V10-F1.27 – Formular, kompakte Bedienhilfen, Musik */
.privacy-check{max-width:100%;overflow:hidden}
.privacy-check label{display:grid!important;grid-template-columns:22px minmax(0,1fr);gap:10px;align-items:start;max-width:100%;margin:0}
.privacy-check input[type="checkbox"]{width:18px!important;height:18px!important;margin:3px 0 0!important;flex:none}
.privacy-check span{display:block;min-width:0;max-width:100%;overflow-wrap:anywhere;word-break:normal;line-height:1.45}
.privacy-check a{overflow-wrap:anywhere}

/* Die beiden Darstellungsoptionen bleiben auf Desktop dezent; mobil kompakter. */
.accessibility-tools{max-width:210px}
@media(max-width:700px){
  .accessibility-tools{right:10px;bottom:74px;gap:5px;max-width:152px}
  .accessibility-button{font-size:.69rem!important;line-height:1.15!important;padding:6px 9px!important;box-shadow:0 5px 16px rgba(15,61,58,.12)!important}
}

.bb-music-toggle{position:fixed;left:14px;bottom:14px;z-index:1095;display:none;align-items:center;gap:7px;min-height:40px;padding:8px 12px;border-radius:999px;border:1px solid rgba(15,61,58,.24);background:rgba(255,255,255,.96);color:#0F3D3A;font:700 .78rem/1 system-ui,-apple-system,"Segoe UI",sans-serif;box-shadow:0 8px 24px rgba(15,61,58,.14);cursor:pointer}
.bb-music-toggle.is-ready{display:inline-flex}.bb-music-toggle[aria-pressed="true"]{background:#0F3D3A;color:#fff}.bb-music-toggle .bb-music-icon{font-size:1rem}
@media(max-width:700px){.bb-music-toggle{left:10px;bottom:74px;min-height:36px;padding:7px 10px;font-size:.69rem}}
@media print{.bb-music-toggle{display:none!important}}


/* V10-F1.27.1 – kompakte runde Bedienung: Aa + Musik nebeneinander */
.bb-access-toggle,.bb-music-toggle{
  position:fixed;z-index:1105;width:44px;height:44px;min-width:44px;min-height:44px;
  padding:0;border-radius:50%;border:1px solid rgba(15,61,58,.28);
  background:rgba(255,250,245,.97);color:var(--petrol,#0F3D3A);
  box-shadow:0 8px 22px rgba(15,61,58,.17);font:800 .82rem/1 system-ui,-apple-system,"Segoe UI",sans-serif;
  align-items:center;justify-content:center;cursor:pointer
}
.bb-access-toggle{display:flex;right:64px;bottom:14px}
.bb-access-toggle[aria-expanded="true"]{background:var(--petrol,#0F3D3A);color:#fffaf2}
.bb-music-toggle{left:auto;right:14px;bottom:14px;display:none;gap:0}
.bb-music-toggle.is-ready{display:flex}
.bb-music-toggle .bb-music-icon{font-size:1.05rem;line-height:1}
.bb-music-toggle [data-bb-music-label]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.bb-music-toggle[aria-pressed="true"]{background:var(--petrol,#0F3D3A);color:#fffaf2}
.accessibility-tools.bb-access-panel{
  position:fixed;right:14px;bottom:66px;z-index:1104;display:flex;flex-direction:column;gap:7px;
  width:min(220px,calc(100vw - 28px));max-width:none;padding:8px;border-radius:18px;
  background:rgba(255,250,245,.98);border:1px solid rgba(15,61,58,.18);box-shadow:0 12px 34px rgba(15,61,58,.18)
}
.accessibility-tools.bb-access-panel[hidden]{display:none!important}
.accessibility-tools.bb-access-panel .accessibility-button{
  width:100%;margin:0;font-size:.78rem!important;line-height:1.2!important;padding:9px 11px!important;box-shadow:none!important
}
@media(max-width:700px){
  .bb-access-toggle{right:62px;bottom:72px}
  .bb-music-toggle{right:10px;bottom:72px;left:auto}
  .accessibility-tools.bb-access-panel{right:10px;bottom:124px;width:min(210px,calc(100vw - 20px));max-width:none;gap:6px}
}
@media print{.bb-access-toggle,.bb-music-toggle,.accessibility-tools.bb-access-panel{display:none!important}}


/* V10-F1.27.2 – harter UI-Fix: alte große Bedienbuttons niemals ungeöffnet anzeigen */
.accessibility-tools:not(.bb-access-panel){display:none!important}
.accessibility-tools.bb-access-panel[hidden]{display:none!important}
.accessibility-tools.bb-access-panel:not([hidden]){display:flex!important}
@media(max-width:700px){
  .bb-access-toggle,.bb-music-toggle{width:42px;height:42px;min-width:42px;min-height:42px;bottom:70px}
  .bb-access-toggle{right:60px}
  .bb-music-toggle{right:10px}
  .accessibility-tools.bb-access-panel{right:10px;bottom:120px;width:min(205px,calc(100vw - 20px))}
}


/* V10-F1.27.3 – kompakte Scroll-/Audio-Steuerung und Song-Finale */
.test-badge{display:none!important}
.story-entry-scroll-hint{display:none!important}
.story-ui{z-index:1103}
.story-scroll-cue-link{display:inline-flex!important}
.story-scroll-count{display:inline-flex!important;align-items:center;gap:2px;padding-left:7px;margin-left:2px;border-left:1px solid rgba(15,61,58,.18);font-variant-numeric:tabular-nums;letter-spacing:.04em}
.story-scroll-cue-link.is-final svg{transform:rotate(180deg)}
.bb-music-toggle .bb-music-icon{font-size:1.55rem!important;line-height:.8!important;font-weight:900}
@media(max-width:820px){
  .story-ui{position:fixed;left:10px;right:112px;bottom:70px;transform:none;width:auto;display:flex!important;align-items:center;justify-content:flex-start;pointer-events:none;color:var(--petrol,#0F3D3A);text-shadow:none}
  .story-ui .story-progress{display:none!important}
  .story-scroll-cue-link{pointer-events:auto;justify-self:auto!important;grid-column:auto!important;padding:8px 10px!important;gap:5px!important;min-height:42px;background:rgba(255,250,245,.97)!important;font-size:.68rem!important;box-shadow:0 8px 22px rgba(15,61,58,.17)!important}
  .story-scroll-cue-link span{display:inline-flex!important;font-size:.68rem!important}
  .story-scroll-cue-link svg{width:16px!important;height:16px!important}
  .scroll-story-has-started .story-scroll-cue-link{opacity:1!important;visibility:visible!important;transform:none!important;transition:none!important;animation:none!important}
  .bb-access-toggle,.bb-music-toggle{bottom:70px!important}
}
.bb-song-prompt{position:fixed;z-index:1200;left:50%;bottom:126px;transform:translateX(-50%);width:min(390px,calc(100vw - 28px));padding:18px 18px 16px;border-radius:22px;border:1px solid rgba(176,138,87,.5);background:rgba(255,249,240,.98);color:var(--petrol,#0F3D3A);box-shadow:0 20px 55px rgba(7,27,25,.26);display:grid;gap:7px;text-align:left}
.bb-song-prompt strong{font-size:1.12rem;line-height:1.2}.bb-song-prompt>span:not(.bb-song-kicker){font-size:.86rem;color:#6d6258}.bb-song-kicker{font-size:.68rem;text-transform:uppercase;letter-spacing:.12em;font-weight:900;color:#a0712d}.bb-song-close{position:absolute;right:10px;top:8px;width:34px;height:34px;border:0;background:transparent;color:inherit;font-size:1.5rem;cursor:pointer}.bb-song-actions{display:flex;gap:8px;margin-top:7px;flex-wrap:wrap}.bb-song-actions button{min-height:40px;border-radius:999px;padding:9px 14px;border:1px solid rgba(15,61,58,.22);font-weight:800;cursor:pointer}.bb-song-listen{background:var(--petrol,#0F3D3A);color:#fff}.bb-song-later{background:#fffaf2;color:var(--petrol,#0F3D3A)}
@media(max-width:700px){.bb-song-prompt{bottom:124px;padding:16px}.bb-song-prompt strong{font-size:1rem}}
@media(prefers-reduced-motion:reduce){.story-scroll-cue-link svg{animation:none!important}}

/* V10-F1.27.4 – kompakter Cookie-Banner (Mobile Hotfix) */
@media(max-width:700px){
  .cookie-banner{
    left:8px!important;
    right:8px!important;
    bottom:68px!important;
  }
  .cookie-panel{
    width:100%!important;
    max-width:none!important;
    max-height:min(58dvh,430px)!important;
    overflow:auto!important;
    -webkit-overflow-scrolling:touch;
    padding:10px!important;
    border-radius:16px!important;
    box-shadow:0 14px 34px rgba(0,0,0,.16)!important;
  }
  .cookie-panel h2,.cookie-panel h3{
    font-size:.98rem!important;
    line-height:1.18!important;
    margin:0 0 3px!important;
  }
  .cookie-panel p,.cookie-panel .muted{
    font-size:.72rem!important;
    line-height:1.28!important;
    margin:2px 0!important;
  }
  .cookie-choices{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:5px!important;
    margin-top:6px!important;
  }
  .cookie-choice{
    min-width:0!important;
    padding:6px 8px!important;
    border-radius:11px!important;
  }
  .cookie-choice strong{
    font-size:.78rem!important;
    line-height:1.15!important;
    margin:0 0 1px!important;
  }
  .cookie-choice input[type="checkbox"]{
    width:16px!important;
    height:16px!important;
    margin-top:5px!important;
  }
  .cookie-actions{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:5px!important;
    margin-top:6px!important;
  }
  .cookie-actions .btn{
    min-height:34px!important;
    padding:6px 7px!important;
    border-radius:10px!important;
    font-size:.7rem!important;
    line-height:1.15!important;
    justify-content:center!important;
    text-align:center!important;
  }
}
@media(max-width:390px){
  .cookie-panel{max-height:min(55dvh,400px)!important;padding:8px!important}
  .cookie-panel p,.cookie-panel .muted{font-size:.68rem!important}
  .cookie-choice{padding:5px 6px!important}
  .cookie-actions .btn{font-size:.67rem!important;padding:6px 5px!important}
}


/* V10-F1.28.3 – Hauspreis-vs-UVP Preisbeleg */
.bb-houseprice-section{overflow:hidden}
.bb-houseprice-grid{display:grid;grid-template-columns:minmax(0,.78fr) minmax(420px,1.22fr);gap:clamp(22px,4vw,56px);align-items:center}
.bb-houseprice-copy{max-width:620px}
.bb-houseprice-copy h2{margin-top:.35rem}
.bb-houseprice-note{font-size:.92rem;margin-top:1rem}
.bb-houseprice-visual{margin:0;border:1px solid rgba(181,145,91,.28);border-radius:28px;overflow:hidden;background:#f6eee2;box-shadow:0 20px 55px rgba(35,54,51,.09)}
.bb-houseprice-visual img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.bb-houseprice-visual figcaption{padding:10px 16px 12px;font-size:.8rem;line-height:1.4;color:var(--muted,#6f6860);background:rgba(255,250,243,.92)}
@media(max-width:820px){.bb-houseprice-grid{grid-template-columns:1fr;gap:18px}.bb-houseprice-copy{max-width:none}.bb-houseprice-visual{border-radius:20px}.bb-houseprice-visual figcaption{font-size:.76rem}}

/* Musik-Fortsetzen nach klassischen Seitenwechseln */
.bb-music-toggle.is-resume-pending{outline:2px solid rgba(1,193,181,.55);outline-offset:2px}

/* V10-F1.28.5 – Mobile Cookie Compact Rows */
@media(max-width:700px){
  .cookie-banner{
    left:8px!important;
    right:8px!important;
    bottom:68px!important;
  }
  .cookie-panel{
    width:100%!important;
    max-width:none!important;
    max-height:min(46dvh,330px)!important;
    overflow:auto!important;
    -webkit-overflow-scrolling:touch;
    padding:8px 9px!important;
    border-radius:14px!important;
    box-shadow:0 12px 28px rgba(0,0,0,.17)!important;
  }
  .cookie-panel>strong{
    display:block!important;
    font-size:.88rem!important;
    line-height:1.12!important;
    margin:0!important;
  }
  .cookie-panel>p.muted{
    font-size:.64rem!important;
    line-height:1.22!important;
    margin:3px 0 5px!important;
  }
  .cookie-choices{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:3px!important;
    margin-top:4px!important;
  }
  .cookie-choice{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:center!important;
    column-gap:8px!important;
    min-height:31px!important;
    padding:5px 8px!important;
    border-radius:9px!important;
  }
  .cookie-choice strong{
    grid-column:1!important;
    font-size:.72rem!important;
    line-height:1.08!important;
    margin:0!important;
  }
  .cookie-choice .muted{
    display:none!important;
  }
  .cookie-choice input[type="checkbox"]{
    grid-column:2!important;
    grid-row:1!important;
    width:17px!important;
    height:17px!important;
    margin:0!important;
    align-self:center!important;
  }
  .cookie-choice:first-child::after{
    content:"Immer aktiv";
    grid-column:2;
    grid-row:1;
    font-size:.59rem;
    font-weight:700;
    color:var(--helper,#6f655c);
    white-space:nowrap;
  }
  .cookie-actions{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:4px!important;
    margin-top:5px!important;
  }
  .cookie-actions .btn{
    min-height:31px!important;
    padding:5px 7px!important;
    border-radius:9px!important;
    font-size:.64rem!important;
    line-height:1.05!important;
    justify-content:center!important;
    text-align:center!important;
  }
  .cookie-actions [data-cookie-accept-all]{grid-column:1 / -1!important}
  .cookie-actions a.btn{
    grid-column:1 / -1!important;
    min-height:22px!important;
    padding:2px 4px!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
    text-decoration:underline!important;
    font-size:.61rem!important;
  }
  body:has(.cookie-banner.show) .bb-access-toggle,
  body:has(.cookie-banner.show) .bb-music-toggle{
    opacity:0!important;
    pointer-events:none!important;
  }
}
@media(max-width:390px){
  .cookie-panel{max-height:min(44dvh,305px)!important;padding:7px 8px!important}
  .cookie-panel>p.muted{font-size:.61rem!important}
  .cookie-choice{min-height:29px!important;padding:4px 7px!important}
  .cookie-actions .btn{min-height:29px!important;font-size:.61rem!important}
}


/* V10-F1.28.6 – Story cue smooth-step and gold double arrow */
.story-scroll-cue-link{
  overflow:hidden;
}
.story-scroll-cue-link svg{
  color: var(--gold, #b08a57) !important;
  width:18px !important;
  height:18px !important;
  animation: bbStoryCueGold 1.15s ease-in-out infinite !important;
}
.story-scroll-cue-link.is-final svg{
  animation: none !important;
}
.story-scroll-cue-link.is-auto-scrolling{
  pointer-events:none;
  opacity:.96;
}
.story-scroll-cue-link.is-auto-scrolling svg{
  animation-duration:.9s !important;
}
@keyframes bbStoryCueGold{
  0%,100%{transform:translateY(-2px); opacity:.82}
  35%{transform:translateY(2px); opacity:1}
  70%{transform:translateY(7px); opacity:.94}
}
@media(max-width:820px){
  .story-scroll-cue-link svg{
    width:18px !important;
    height:18px !important;
  }
}


/* V10-F1.28.7 – music prompt hint */
.bb-song-note-hint{margin:2px 0 1px;padding:10px 12px;border-radius:14px;background:rgba(176,138,87,.08);border:1px solid rgba(176,138,87,.18);font-size:.85rem;line-height:1.45;color:var(--petrol,#0F3D3A)}
.bb-song-note-hint strong{font-size:inherit;line-height:inherit}
@media(max-width:700px){.bb-song-note-hint{font-size:.8rem;padding:9px 10px}}


/* V10-F1.28.8 – centered music prompt, desktop+mobile variants */
.bb-song-prompt{position:fixed;z-index:1300;left:50%;top:50%;transform:translate(-50%,-50%);width:min(460px,calc(100vw - 30px));padding:18px 24px 20px;border-radius:24px;border:1.5px solid rgba(176,138,87,.62);background:rgba(255,250,243,.985);color:var(--petrol,#0F3D3A);box-shadow:0 22px 60px rgba(7,27,25,.32);display:grid;gap:10px;text-align:center}
.bb-song-prompt::before{content:"";position:fixed;inset:0;z-index:-1;background:rgba(7,27,25,.16);backdrop-filter:blur(2px)}
.bb-song-symbol{display:flex;align-items:center;justify-content:center;gap:8px;color:var(--gold,#b08a57);font-size:1rem;line-height:1;margin-top:2px}
.bb-song-symbol span{font-size:2rem;line-height:1;display:inline-block}
.bb-song-kicker{font-size:.72rem;text-transform:uppercase;letter-spacing:.22em;font-weight:900;color:#a0712d}
.bb-song-prompt strong{font-size:2rem;line-height:1.15;letter-spacing:-.02em;font-family:Georgia,'Times New Roman',serif}
.bb-song-subtitle{font-size:1.08rem;color:#b08a57;font-style:italic;font-family:Georgia,'Times New Roman',serif}
.bb-song-divider{font-size:1.05rem;color:#b08a57;line-height:1;margin-top:-2px}
.bb-song-close{position:absolute;right:12px;top:10px;width:36px;height:36px;border:0;background:transparent;color:#a0712d;font-size:1.7rem;cursor:pointer}
.bb-song-actions{display:flex;justify-content:center;gap:14px;margin-top:2px;flex-wrap:wrap}
.bb-song-actions button{min-height:48px;border-radius:14px;padding:12px 22px;border:1px solid rgba(176,138,87,.5);font-weight:800;cursor:pointer;font-size:1rem}
.bb-song-listen{background:var(--petrol,#0F3D3A);color:#fff;min-width:142px}
.bb-song-later{background:#fffaf2;color:#b08a57;min-width:142px}
.bb-song-note-hint{margin:0;padding:12px 14px;border-radius:14px;background:rgba(176,138,87,.08);border:1px solid rgba(176,138,87,.18);font-size:.96rem;line-height:1.45;color:var(--petrol,#0F3D3A);text-align:left}
.bb-song-note-hint strong{font-size:inherit;line-height:inherit;font-family:inherit}
@media(max-width:700px){
  .bb-song-prompt{width:min(360px,calc(100vw - 22px));padding:16px 18px 16px;border-radius:22px;gap:8px}
  .bb-song-symbol{gap:6px;font-size:.86rem}
  .bb-song-symbol span{font-size:1.75rem}
  .bb-song-kicker{font-size:.66rem;letter-spacing:.18em}
  .bb-song-prompt strong{font-size:1.35rem}
  .bb-song-subtitle{font-size:.98rem}
  .bb-song-actions{gap:10px}
  .bb-song-actions button{flex:1 1 0;min-width:124px;min-height:46px;padding:11px 14px;font-size:.98rem}
  .bb-song-note-hint{font-size:.84rem;padding:10px 11px}
}


/* V10-F1.28.9 – Desktop scroll control position */
@media (min-width: 821px){
  .story-ui{
    bottom: 42px !important;
  }
}


/* V10-F1.28.11 – desktop story controls stay visible through 07/07 */
@media (min-width:821px){
  body.story-cue-in-story .story-ui{
    position:fixed!important;
    left:50%!important;
    bottom:34px!important;
    transform:translateX(-50%)!important;
    z-index:1103!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:none!important;
  }
  body.story-cue-in-story .story-scroll-cue-link{
    opacity:1!important;
    visibility:visible!important;
    transform:none!important;
    pointer-events:auto!important;
  }
  body:not(.story-cue-in-story) .story-ui{
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transition:opacity .22s ease, visibility 0s linear .22s!important;
  }
}


/* V10-F1.28.11 – 07/07 continues into website; compact mobile cue */
.story-scroll-cue-link.is-final svg{
  transform:none!important;
  animation:bbStoryCueGold 1.15s ease-in-out infinite!important;
}
@media(max-width:820px){
  .story-ui{
    left:10px!important;
    right:auto!important;
    width:max-content!important;
    max-width:calc(100vw - 132px)!important;
  }
  .story-scroll-cue-link{
    width:auto!important;
    max-width:100%!important;
    flex:0 0 auto!important;
    justify-content:flex-start!important;
  }
  .story-scroll-cue-link [data-story-scroll-text]{
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
}

/* =========================================================
   V10-F1.28.14 – Scene 01 layout cleanup
   Scene 01 uses ONE positioning model only.
   It is bottom-anchored and may grow with its content.
   The global top/translate/max-height story-copy-panel model
   remains untouched for scenes 02–07.
   ========================================================= */

/* Scene 01: cancel the old centered/clipped panel model completely. */
.story-scene[data-story-scene="0"] .story-copy.story-copy-panel{
  top:auto!important;
  bottom:112px!important;
  transform:none!important;
  max-height:none!important;
  overflow:visible!important;
  box-sizing:border-box!important;
}

/* Desktop: keep the strong opening scene, but make it fit short notebooks too. */
@media (min-width:821px){
  .story-scene[data-story-scene="0"] .story-copy.story-copy-panel{
    width:min(730px,calc(100% - 56px))!important;
  }
  .story-scene[data-story-scene="0"] .story-copy h1{
    font-size:clamp(2.7rem,4.15vw,4.35rem)!important;
    line-height:.98!important;
    margin-bottom:12px!important;
  }
  .story-scene[data-story-scene="0"] .story-copy p{
    font-size:clamp(.94rem,1.2vw,1.08rem)!important;
    line-height:1.46!important;
    margin-bottom:14px!important;
  }
}

/* Lower desktop windows: reduce content, never the panel height. */
@media (min-width:821px) and (max-height:820px){
  .story-scene[data-story-scene="0"] .story-copy.story-copy-panel{
    bottom:92px!important;
    padding:18px 22px!important;
  }
  .story-scene[data-story-scene="0"] .story-copy h1{
    font-size:clamp(2.45rem,5.2vh,3.55rem)!important;
    line-height:.96!important;
    margin-bottom:10px!important;
  }
  .story-scene[data-story-scene="0"] .story-copy p{
    font-size:.92rem!important;
    line-height:1.4!important;
    margin-bottom:11px!important;
  }
  .story-scene[data-story-scene="0"] .story-kicker{
    padding:6px 10px!important;
    margin-bottom:9px!important;
    font-size:.74rem!important;
  }
  .story-scene[data-story-scene="0"] .story-actions{
    gap:8px!important;
  }
  .story-scene[data-story-scene="0"] .story-actions .btn{
    min-height:40px!important;
    padding:9px 13px!important;
    font-size:.84rem!important;
  }
}

@media (min-width:821px) and (max-height:680px){
  .story-scene[data-story-scene="0"] .story-copy.story-copy-panel{
    bottom:78px!important;
    padding:15px 18px!important;
  }
  .story-scene[data-story-scene="0"] .story-copy h1{
    font-size:clamp(2.15rem,5.2vh,3rem)!important;
    margin-bottom:7px!important;
  }
  .story-scene[data-story-scene="0"] .story-copy p{
    font-size:.84rem!important;
    line-height:1.34!important;
    margin-bottom:8px!important;
  }
  .story-scene[data-story-scene="0"] .story-kicker{
    margin-bottom:7px!important;
    font-size:.68rem!important;
  }
  .story-scene[data-story-scene="0"] .story-actions .btn{
    min-height:36px!important;
    padding:7px 11px!important;
    font-size:.78rem!important;
  }
}

/* Mobile: same principle — grow naturally, with a clear control strip below. */
@media (max-width:820px){
  .story-scene[data-story-scene="0"] .story-copy.story-copy-panel{
    left:12px!important;
    right:12px!important;
    width:calc(100% - 24px)!important;
    top:auto!important;
    bottom:132px!important;
    transform:none!important;
    max-height:none!important;
    overflow:visible!important;
    padding:14px 14px 13px!important;
    border-radius:20px!important;
  }
  .story-scene[data-story-scene="0"] .story-copy h1{
    font-size:clamp(1.82rem,8vw,2.7rem)!important;
    line-height:.98!important;
    max-width:100%!important;
    margin-bottom:8px!important;
  }
  .story-scene[data-story-scene="0"] .story-copy p{
    display:block!important;
    font-size:.88rem!important;
    line-height:1.36!important;
    max-width:36ch!important;
    margin-bottom:10px!important;
  }
  .story-scene[data-story-scene="0"] .story-kicker{
    padding:5px 9px!important;
    margin-bottom:8px!important;
    font-size:.66rem!important;
  }
  .story-scene[data-story-scene="0"] .story-actions{
    gap:7px!important;
  }
  .story-scene[data-story-scene="0"] .story-actions .btn{
    min-height:38px!important;
    padding:8px 10px!important;
    font-size:.76rem!important;
  }

  /* Scroll cue remains in its own strip above the persistent bottom bar. */
  body.story-cue-in-story .story-ui,
  .story-ui{
    bottom:72px!important;
  }
}

/* Short phones: compact typography only; never clip the card. */
@media (max-width:820px) and (max-height:760px){
  .story-scene[data-story-scene="0"] .story-copy.story-copy-panel{
    bottom:126px!important;
    padding:12px 13px 11px!important;
  }
  .story-scene[data-story-scene="0"] .story-copy h1{
    font-size:clamp(1.62rem,6.4vh,2.22rem)!important;
    line-height:.96!important;
    margin-bottom:6px!important;
  }
  .story-scene[data-story-scene="0"] .story-copy p{
    font-size:.79rem!important;
    line-height:1.31!important;
    margin-bottom:7px!important;
  }
  .story-scene[data-story-scene="0"] .story-kicker{
    padding:4px 8px!important;
    margin-bottom:6px!important;
    font-size:.61rem!important;
  }
  .story-scene[data-story-scene="0"] .story-actions{
    gap:6px!important;
  }
  .story-scene[data-story-scene="0"] .story-actions .btn{
    min-height:34px!important;
    padding:7px 9px!important;
    font-size:.70rem!important;
  }
}

/* Ensure both compact utility controls can sit next to each other on mobile. */
@media (max-width:820px){
  .bb-access-toggle{right:60px!important}
  .bb-music-toggle{right:10px!important}
}


/* V1.0 Final Server Build 1 – Upload manager */
.bb-upload-native{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  opacity:0!important;
  pointer-events:none!important;
}
.bb-upload-manager{display:grid;gap:8px;margin-top:8px}
.bb-upload-list{display:grid;gap:6px}
.bb-upload-empty{padding:9px 10px;border:1px dashed rgba(23,53,49,.18);border-radius:10px;font-size:.82rem;color:#6d7c78;background:rgba(255,255,255,.45)}
.bb-upload-file{display:grid;grid-template-columns:minmax(0,1fr) auto 30px;align-items:center;gap:8px;padding:8px 9px 8px 11px;border:1px solid rgba(23,53,49,.16);border-radius:11px;background:#fff}
.bb-upload-filename{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.84rem;font-weight:700;color:#173531}
.bb-upload-filesize{font-size:.74rem;color:#6e7d79;white-space:nowrap}
.bb-upload-remove{width:28px;height:28px;border-radius:50%;border:1px solid rgba(23,53,49,.18);background:#fff;color:#7f443c;font-size:1.15rem;line-height:1;cursor:pointer;display:grid;place-items:center}
.bb-upload-remove:hover{background:#fff4f1;border-color:#c6867c}
.bb-upload-add{justify-self:start;border:1px solid #b8c8c4;border-radius:999px;background:#fff;color:#173531;padding:8px 12px;font-weight:800;font-size:.8rem;cursor:pointer}
.bb-upload-add:hover{background:#f3f8f6}
.bb-upload-add:disabled{opacity:.45;cursor:not-allowed}
.bb-upload-note{font-size:.72rem;color:#75827f}
@media(max-width:620px){
  .bb-upload-file{grid-template-columns:minmax(0,1fr) 28px}
  .bb-upload-filesize{grid-column:1/2;font-size:.7rem}
  .bb-upload-remove{grid-column:2;grid-row:1/3}
}


/* V1.0 Build 1 – Form UX fixes: voucher handoff + real upload progress */
.contact-base-fields[hidden],.contact-message-block[hidden],.privacy-check[hidden]{display:none!important}
.bb-submit-progress{margin-top:12px;padding:12px 14px;border:1px solid rgba(23,53,49,.16);border-radius:12px;background:rgba(255,255,255,.72)}
.bb-submit-progress[hidden]{display:none!important}
.bb-submit-progress-head{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:.82rem;color:#405651}
.bb-submit-progress-head strong{font-variant-numeric:tabular-nums;color:#173531}
.bb-submit-progress-track{height:8px;margin-top:8px;border-radius:999px;background:rgba(23,53,49,.10);overflow:hidden}
.bb-submit-progress-track span{display:block;width:0;height:100%;border-radius:inherit;background:currentColor;color:#0d8f84;transition:width .15s ease}
@media (prefers-reduced-motion:reduce){.bb-submit-progress-track span{transition:none}}


/* V1.0 Action Flag – schwebendes Aktions-Fähnchen */
/* Action Flag v1.3 – transform-basiertes Panel, 75vh Zielhöhe, schwebendes Ziehfähnchen */
.bb-action-drawer{
  --bb-action-panel-w:min(58vw,980px);
  --bb-action-closed-x:100%;
  position:fixed;right:0;top:50%;z-index:1200;
  width:var(--bb-action-panel-w);
  transform:translate3d(var(--bb-action-closed-x),-50%,0);
  transition:transform .52s cubic-bezier(.2,.75,.2,1);
  pointer-events:none;will-change:transform;contain:layout;overflow:visible;
}
.bb-action-drawer.is-open{transform:translate3d(0,-50%,0)}
.bb-action-drawer.is-peek{transform:translate3d(calc(100% - 118px),-50%,0)}
.bb-action-drawer.is-dragging{transform:translate3d(var(--drag-x),-50%,0)!important;transition:none}
.bb-action-tab{
  position:absolute;left:-58px;top:34%;width:54px;min-height:142px;
  border:1px solid rgba(164,121,56,.66);border-radius:20px 10px 10px 20px;
  background:
    linear-gradient(90deg,rgba(255,255,255,.48),rgba(255,255,255,0) 34%),
    repeating-linear-gradient(0deg,rgba(111,79,40,.028) 0 1px,transparent 1px 4px),
    linear-gradient(180deg,#fbf1df 0%,#ead0a4 100%);
  color:#174542;
  box-shadow:-15px 15px 34px rgba(40,31,20,.28),-4px 5px 12px rgba(40,31,20,.16),inset 0 1px 0 rgba(255,255,255,.95);
  font:700 14px/1.1 inherit;display:flex;align-items:center;justify-content:center;
  padding:13px 7px;cursor:ew-resize;pointer-events:auto;touch-action:none;
  animation:bbActionFloat 3.8s ease-in-out infinite;
}
.bb-action-tab::before{
  content:"";position:absolute;inset:5px;border:1px dashed rgba(135,96,43,.34);
  border-radius:15px 7px 7px 15px;pointer-events:none;
}
.bb-action-tab::after{
  content:"";position:absolute;right:-9px;top:18px;bottom:18px;width:10px;
  border-radius:0 9px 9px 0;background:linear-gradient(180deg,#f5e6cd,#dfbd86);
  box-shadow:6px 4px 13px rgba(47,37,24,.16);z-index:-1;
}
.bb-action-tab span{
  writing-mode:vertical-rl;text-orientation:mixed;letter-spacing:.03em;white-space:nowrap;
  transform:none;
}
.bb-action-panel{
  position:relative;width:100%;height:min(75vh,820px);max-height:75vh;
  border-radius:24px 0 0 24px;overflow:hidden;background:#f7f0e3;
  box-shadow:-26px 22px 64px rgba(42,34,23,.28),-6px 8px 22px rgba(42,34,23,.14);
  border:1px solid rgba(176,135,71,.38);pointer-events:auto;
}
.bb-action-link{display:flex;width:100%;height:100%;align-items:center;justify-content:flex-end;background:#f7f0e3;overflow:hidden}
.bb-action-link img{display:block;width:100%;height:100%;object-fit:contain;object-position:center right;background:#f7f0e3}
.bb-action-close{position:absolute;right:14px;top:14px;z-index:2;width:40px;height:40px;border:1px solid rgba(23,69,66,.18);border-radius:50%;background:rgba(250,246,238,.94);color:#173531;font:400 28px/1 inherit;display:grid;place-items:center;cursor:pointer;box-shadow:0 7px 20px rgba(0,0,0,.13)}
@keyframes bbActionFloat{0%,100%{margin-top:-5px}50%{margin-top:5px}}
@media(max-width:1100px) and (min-width:761px){
  .bb-action-drawer{--bb-action-panel-w:min(64vw,820px)}
}
@media(max-width:760px){
  .bb-action-drawer{--bb-action-panel-w:min(94vw,470px);top:50%}
  .bb-action-drawer.is-peek{transform:translate3d(calc(100% - 92px),-50%,0)}
  .bb-action-tab{left:-51px;width:47px;min-height:126px;top:31%;font-size:12px;border-radius:18px 9px 9px 18px}
  .bb-action-panel{height:75vh;max-height:75vh;border-radius:21px 0 0 21px}
  .bb-action-link img{object-fit:contain;object-position:center right}
  .bb-action-close{width:38px;height:38px;right:11px;top:11px}
}
@media(max-height:650px){.bb-action-panel{height:72vh;max-height:72vh}}
@media(prefers-reduced-motion:reduce){.bb-action-drawer,.bb-action-tab{transition:none!important;animation:none!important}}


/* =========================================================
   V1.4.1 – Formular-Erfolg & Kinderwagen-Kompass UX
   ========================================================= */
.pregnancy-compass-hint{
  margin:14px 0 0;padding:11px 14px;border-radius:14px;
  background:rgba(255,255,255,.66);border:1px solid rgba(176,138,87,.24);
  color:#44524f;font-size:.9rem;line-height:1.45
}
.pregnancy-compass-hint strong{color:var(--petrol)}
.pregnancy-compass fieldset.is-unanswered{transition:border-color .2s ease,box-shadow .2s ease}
.pregnancy-compass fieldset.needs-answer{
  border-color:rgba(190,111,34,.58);box-shadow:0 0 0 3px rgba(190,111,34,.10)
}
.pregnancy-compass>[data-compass-submit]:disabled{
  opacity:.52;cursor:not-allowed;filter:saturate(.55);box-shadow:none
}

.voucher-order-form{position:relative;isolation:isolate}
.voucher-order-form.is-success-state{min-height:420px;overflow:hidden}
.voucher-order-form.is-success-state>*:not(#formSuccess){
  filter:blur(3.5px);opacity:.36;pointer-events:none;user-select:none;
  transition:filter .35s ease,opacity .35s ease
}
.voucher-order-form.is-success-state::after{
  content:"";position:absolute;inset:-8px;z-index:2;
  background:rgba(248,243,235,.28);backdrop-filter:blur(1px);pointer-events:none
}
.voucher-order-form #formSuccess.voucher-success-focus{
  display:block;position:absolute;z-index:3;left:50%;top:50%;transform:translate(-50%,-50%);
  width:min(540px,calc(100% - 34px));margin:0;padding:26px 28px;text-align:center;
  background:rgba(241,252,250,.98);border:1px solid rgba(1,160,151,.30);
  border-radius:20px;box-shadow:0 18px 46px rgba(17,64,58,.16);
  color:#334743;outline:none
}
.voucher-order-form #formSuccess.voucher-success-focus strong{
  display:block;color:var(--petrol);font:700 1.42rem/1.25 Georgia,"Times New Roman",serif;
  margin-bottom:10px
}
.voucher-order-form #formSuccess.voucher-success-focus p{margin:0;line-height:1.55}
.voucher-success-ticket{
  display:inline-block;margin-top:14px;padding:7px 11px;border-radius:999px;
  background:#fff;border:1px solid rgba(1,160,151,.20);font-size:.82rem;color:#5c6b68
}
@media(max-width:620px){
  .voucher-order-form.is-success-state{min-height:360px}
  .voucher-order-form #formSuccess.voucher-success-focus{padding:22px 18px;width:calc(100% - 22px)}
  .voucher-order-form #formSuccess.voucher-success-focus strong{font-size:1.25rem}
}
@media(prefers-reduced-motion:reduce){
  .voucher-order-form.is-success-state>*:not(#formSuccess){transition:none}
}

/* =========================================================
   V1.4.2 – Kinderwagen-Kompass Radio-Layout Fix
   ========================================================= */
.pregnancy-compass fieldset label{
  display:grid;
  grid-template-columns:24px minmax(0,1fr);
  align-items:center;
  gap:11px;
  width:100%;
  padding:8px 7px;
  margin:0;
  border-radius:11px;
  cursor:pointer;
  line-height:1.35;
}
.pregnancy-compass fieldset label:hover{
  background:rgba(1,193,181,.055);
}
.pregnancy-compass fieldset input[type="radio"]{
  appearance:auto;
  -webkit-appearance:radio;
  width:20px!important;
  height:20px!important;
  min-width:20px!important;
  min-height:20px!important;
  max-width:20px!important;
  padding:0!important;
  margin:0!important;
  border-radius:50%;
  flex:none;
  cursor:pointer;
}
.pregnancy-compass fieldset label:has(input[type="radio"]:checked){
  background:rgba(1,193,181,.075);
  color:var(--petrol);
}
@media(max-width:620px){
  .pregnancy-compass fieldset label{padding:9px 5px;gap:10px}
  .pregnancy-compass fieldset input[type="radio"]{
    width:22px!important;height:22px!important;min-width:22px!important;min-height:22px!important;max-width:22px!important
  }
}

/* =========================================================
   V1.4.3 – Kinderwagen-Kompass: Fragetitel innerhalb der Karte
   ========================================================= */
.pregnancy-compass fieldset.pregnancy-compass-card{
  position:relative;
  padding:18px 17px 16px;
}
.pregnancy-compass-sr-legend{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}
.pregnancy-compass-question{
  margin:0 0 8px;
  color:var(--petrol);
  font-weight:850;
  font-size:.96rem;
  line-height:1.3;
}
@media(max-width:620px){
  .pregnancy-compass fieldset.pregnancy-compass-card{padding:16px 14px 14px}
  .pregnancy-compass-question{margin-bottom:7px;font-size:.94rem}
}


/* =========================================================
   V1.5.2 – Aktions-Fähnchen responsive Größe
   Desktop: bis 80vw (4/5 der Fensterbreite)
   Tablet:  82vw
   Mobile:  96vw, sichere Viewport-Höhe
   ========================================================= */
@media (min-width:1101px){
  .bb-action-drawer{
    --bb-action-panel-w:min(80vw,1440px)!important;
  }
  .bb-action-panel{
    height:min(78vh,900px)!important;
    max-height:78vh!important;
  }
}

@media (max-width:1100px) and (min-width:761px){
  .bb-action-drawer{
    --bb-action-panel-w:min(82vw,980px)!important;
  }
  .bb-action-panel{
    height:min(76vh,820px)!important;
    max-height:76vh!important;
  }
}

@media (max-width:760px){
  .bb-action-drawer{
    --bb-action-panel-w:min(96vw,560px)!important;
    top:50%!important;
  }
  .bb-action-panel{
    height:min(78dvh,760px)!important;
    max-height:78dvh!important;
    border-radius:20px 0 0 20px!important;
  }
  .bb-action-link,
  .bb-action-link picture{
    width:100%!important;
    height:100%!important;
  }
  .bb-action-link img{
    width:100%!important;
    height:100%!important;
    object-fit:contain!important;
    object-position:center right!important;
  }
  .bb-action-close{
    right:10px!important;
    top:10px!important;
  }
}

/* Sehr kleine Displays: etwas mehr Luft zu Browserleisten */
@media (max-width:430px){
  .bb-action-drawer{
    --bb-action-panel-w:96vw!important;
  }
  .bb-action-panel{
    height:74dvh!important;
    max-height:74dvh!important;
  }
}


/* =========================================================
   V1.5.3 – Aktions-Fähnchen Drag-/Snap-Stabilität
   Verhindert vertikalen Zwischen-Sprung beim Loslassen.
   ========================================================= */
.bb-action-drawer{
  top:50dvh!important;
}
.bb-action-drawer.is-dragging,
.bb-action-drawer.is-settling{
  transition:none!important;
}
.bb-action-drawer.is-dragging{
  transform:translate3d(var(--drag-x),-50%,0)!important;
}
.bb-action-drawer.is-settling{
  transform:translate3d(var(--drag-x),-50%,0)!important;
}
.bb-action-drawer.is-dragging .bb-action-tab,
.bb-action-drawer.is-settling .bb-action-tab{
  animation:none!important;
  margin-top:0!important;
}
@media (max-width:760px){
  .bb-action-drawer{
    top:50dvh!important;
  }
}

