:root{--red:#f4374c;--ink:#202322;--muted:#676c6a;--line:#e4e7e5;--soft:#f4f6f5}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:#fff;color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #f4374c;outline-offset:5px}.wrap{width:min(1220px,calc(100% - 96px));margin:auto}header{background:#fff;position:sticky;top:0;z-index:10;border-bottom:1px solid var(--line)}.nav{height:100px;display:flex;align-items:center;justify-content:space-between;gap:30px}.logo{font-size:30px;font-weight:850;letter-spacing:-1.7px;position:relative;white-space:nowrap;line-height:1.2}.logo span{font-size:11px;vertical-align:top;letter-spacing:0;margin-left:3px}.logo i{display:block;position:absolute;height:4px;width:33px;background:var(--red);bottom:-9px;left:1px}nav{display:flex;gap:30px;font-size:14px;font-weight:600}nav a:hover,.text-link:hover{color:var(--red)}.btn{display:inline-flex;gap:25px;justify-content:center;align-items:center;border:1px solid var(--red);padding:16px 22px;background:var(--red);color:#fff;border-radius:6px;font-weight:650;font-size:14px;line-height:1.45;transition:background .2s,transform .2s}.btn:hover{background:#d92237;border-color:#d92237;transform:translateY(-2px)}.btn span{font-size:20px;line-height:1}.btn.small{padding:12px 17px}.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:54px;padding-top:64px;padding-bottom:65px;align-items:center}.eyebrow{font-size:12px;letter-spacing:1.7px;font-weight:750;display:flex;align-items:center;gap:10px;margin-bottom:25px}.dash{height:2px;width:22px;background:var(--red)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(50px,4.85vw,70px);line-height:1.065;letter-spacing:-3.5px;margin-bottom:28px;font-weight:750}em{font-style:normal;color:var(--red)}.lead{font-size:17px;line-height:1.7;max-width:490px;color:var(--muted);margin-bottom:28px}.actions{display:flex;gap:23px;align-items:center;flex-wrap:wrap}.text-link{font-size:14px;font-weight:650;display:inline-flex;gap:18px;align-items:center}.micro{font-size:12px;color:var(--muted);margin:17px 0 0}.micro span{color:var(--ink);margin-right:5px}.micro span:nth-child(2){margin-left:17px}.hero-visual{height:567px;position:relative;border-radius:10px;overflow:hidden;background:var(--soft)}.hero-visual img{width:100%;height:100%;object-fit:cover}.image-label{position:absolute;left:24px;right:24px;bottom:25px;background:#fff;padding:22px 25px;border-radius:6px;box-shadow:0 12px 30px #0001}.image-label>span:first-child{display:block;font-size:10px;letter-spacing:1.4px;color:var(--muted);margin-bottom:8px}.image-label b{font-size:22px;line-height:1.3;letter-spacing:-.5px;display:block}.label-arrow{position:absolute;right:25px;bottom:26px;color:var(--red);font-size:32px}.image-tag{position:absolute;top:22px;left:22px;background:#ffffffed;border-radius:30px;padding:8px 14px;font-size:12px;font-weight:600}.benefit-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.benefit-strip .wrap{display:grid;grid-template-columns:1.1fr repeat(4,1fr);padding:28px 0;gap:25px}.benefit-strip span{font-size:12px;color:var(--muted)}.benefit-strip b{display:block;font-size:14px;color:var(--ink)}.benefit-strip span:first-child b{display:inline}.section{padding-top:100px;padding-bottom:100px}h2{font-size:43px;letter-spacing:-1.7px;line-height:1.18;font-weight:700;margin-bottom:24px}.section-top{display:flex;justify-content:space-between;align-items:flex-end;gap:70px;margin-bottom:40px}.section-top>p{color:var(--muted);max-width:350px;font-size:15px;margin-bottom:28px}.adv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.adv-grid article{padding-top:27px;border-top:1px solid var(--line)}.stat{font-size:68px;line-height:1.1;letter-spacing:-4px;font-weight:650;margin-bottom:27px}.stat span{font-size:24px;color:var(--red);letter-spacing:-1px;padding-left:6px}h3{font-size:21px;line-height:1.3;letter-spacing:-.45px;margin-bottom:16px}.adv-grid p,.steps p{color:var(--muted);font-size:15px;line-height:1.75}small{font-size:12px;line-height:1.6;color:var(--muted);display:block}.audience{background:var(--soft)}.audience-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:45px}.audience article{position:relative;border-radius:8px;padding:40px;overflow:hidden}.advertiser{background:var(--ink);color:#fff}.market{background:#fff;border:1px solid var(--line)}.card-kicker{font-size:11px;letter-spacing:1.5px;margin-bottom:65px}.card-symbol{position:absolute;right:32px;top:24px;font-size:49px;color:var(--red);font-weight:300}.audience h3{font-size:31px;line-height:1.2;letter-spacing:-1px}.audience p{font-size:15px;max-width:425px;margin-bottom:30px}.advertiser p{color:#c7ccca}.market p{color:var(--muted)}.market .text-link{padding:16px 0}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.step-number{border-top:1px solid var(--line);padding:20px 0 29px;font-size:14px;color:var(--red);font-weight:700;display:flex;justify-content:space-between}.step-number span{color:#9ba19e;font-size:22px;font-weight:400}.faq-section{padding:85px 0;background:var(--soft)}.faq-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:80px}.faq-grid>div>p{font-size:15px;color:var(--muted);margin-top:30px;margin-bottom:5px}details{border-bottom:1px solid #dce1de}details:first-child{border-top:1px solid #dce1de}summary{list-style:none;cursor:pointer;padding:23px 35px 23px 0;position:relative;font-weight:600;font-size:15px}summary::-webkit-details-marker{display:none}summary span:after{content:'+';position:absolute;right:2px;top:17px;font-size:24px;font-weight:400;color:var(--red)}details[open] summary span:after{content:'−'}details p{font-size:15px;color:var(--muted);padding-right:38px;margin-bottom:24px}.contact>h2{font-size:46px}.contact-intro{color:var(--muted);font-size:16px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px;margin-top:42px}.booking{border:1px solid var(--line);border-radius:8px;padding:32px}.booking-top{display:flex;align-items:center;gap:15px;margin-bottom:24px}.mini-logo{background:var(--ink);color:white;border-radius:10px;width:52px;height:52px;text-align:center;font-size:37px;font-weight:700;line-height:1.2;letter-spacing:-3px}.mini-logo span{color:var(--red)}.booking-top div>span{font-size:10px;letter-spacing:1.5px}.booking-top h3{font-size:19px;margin:3px 0 0}.booking>p{font-size:14px;color:var(--muted)}.calendar-box{background:var(--soft);padding:26px 20px;text-align:center;border-radius:6px;margin:25px 0}.calendar-icon{font-size:34px;color:var(--red);line-height:1;margin-bottom:12px}.calendar-box h3{font-size:22px;margin-bottom:10px}.calendar-box p{font-size:14px;color:var(--muted)}.calendar-box small{margin-top:15px;font-size:12px}.direct{display:flex;flex-direction:column;gap:12px;font-size:14px;font-weight:600}.direct a{display:flex;justify-content:space-between}.direct span{color:var(--red)}form{padding-top:7px}form>h3{font-size:26px;margin-bottom:6px}form>p{font-size:14px;color:var(--muted);margin-bottom:22px}label{display:block;font-size:13px;font-weight:600;margin:17px 0 7px}input,textarea{display:block;width:100%;border:1px solid #d9dedb;border-radius:5px;background:#fff;padding:13px 14px;min-width:0;color:var(--ink);font-size:14px}textarea{resize:vertical}.form-row{display:grid;grid-template-columns:1.5fr 1fr;gap:16px}.form-note{font-size:12px;line-height:1.6;color:var(--muted);margin:17px 0}.inline{font:inherit;border:0;background:none;text-decoration:underline;padding:0;color:inherit}.full{width:100%;justify-content:space-between}footer{background:var(--soft);padding:45px 0 25px}.footer-main{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-bottom:38px}.footer-main p,.footer-main>a:last-child{font-size:13px;color:var(--muted);margin:0}.footer-bottom{border-top:1px solid var(--line);padding-top:24px;display:flex;justify-content:space-between;gap:20px;font-size:12px;color:var(--muted)}.footer-bottom button{border:0;background:none;font:inherit;color:inherit;margin-left:22px;padding:0}dialog{border:0;border-radius:12px;padding:44px;width:min(600px,calc(100% - 32px));color:var(--ink);max-height:85vh;overflow:auto;box-shadow:0 20px 80px #0002}dialog::backdrop{background:#10201988;backdrop-filter:blur(4px)}dialog h2{font-size:33px}dialog p{color:var(--muted);font-size:15px}.close{position:absolute;right:15px;top:10px;background:none;border:0;font-size:30px}.dialog-phone{display:block;margin-top:20px;font-size:14px}.skip{position:fixed;top:-100px;background:white;padding:10px;z-index:100}.skip:focus{top:0}#legal-content a{text-decoration:underline}#legal-content h3{margin-top:25px}
@media(min-width:1500px){.hero{padding-top:80px;padding-bottom:80px}.hero-visual{height:590px}}@media(max-width:1100px){.wrap{width:calc(100% - 56px)}nav{gap:16px;font-size:12px}.nav{gap:20px}.hero{gap:30px}h1{font-size:54px}.actions{gap:17px}.hero-visual{height:540px}.btn{padding:15px 17px}.section-top{gap:30px}h2{font-size:37px}.contact-grid{gap:30px}.audience article{padding:30px}.audience .btn{font-size:12px}.faq-grid{gap:40px}}@media(max-width:800px){.nav{height:80px}nav{display:none}.hero{grid-template-columns:1fr;padding-top:40px;gap:35px}.hero-copy{max-width:600px}h1{font-size:58px;letter-spacing:-2.7px}.hero-visual{height:460px}.lead{max-width:560px}.benefit-strip .wrap{grid-template-columns:repeat(2,1fr);gap:24px}.benefit-strip .wrap>span:first-child{grid-column:1/-1}.section{padding-top:65px;padding-bottom:65px}.section-top{display:block;margin-bottom:25px}.section-top>p{max-width:550px}.adv-grid{gap:24px}.stat{font-size:53px}.adv-grid h3{font-size:18px}.audience-grid{grid-template-columns:1fr}.card-kicker{margin-bottom:40px}.steps{gap:23px}.faq-grid{grid-template-columns:1fr;gap:25px}.contact>h2{font-size:39px}.contact-grid{grid-template-columns:1fr;gap:40px}.footer-main{flex-wrap:wrap}.footer-main p{display:none}}@media(max-width:500px){.wrap{width:calc(100% - 40px)}.logo{font-size:26px}.nav .btn{font-size:12px;padding:11px 12px;gap:9px}.hero{padding-top:34px;padding-bottom:35px}.eyebrow{font-size:10px;letter-spacing:1.2px;margin-bottom:20px}h1{font-size:48px;letter-spacing:-2px}.lead{font-size:16px}.hero-visual{height:390px}.image-label{left:16px;right:16px;bottom:16px;padding:20px}.image-label b{font-size:20px}.image-label .label-arrow{right:20px}.actions{gap:20px}.micro{font-size:11px}.benefit-strip .wrap{padding:24px 0}.section{padding-top:55px;padding-bottom:55px}h2,.contact>h2{font-size:34px;letter-spacing:-1.2px}.adv-grid,.steps{grid-template-columns:1fr}.adv-grid article{padding-top:25px}.stat{margin-bottom:15px;font-size:60px}.adv-grid h3{font-size:21px}.adv-grid small{margin-bottom:15px}.audience article{padding:26px}.audience h3{font-size:28px}.audience .btn{font-size:13px;gap:14px;width:100%}.step-number{padding-bottom:15px}.steps article p{margin-bottom:5px}.faq-section{padding:55px 0}.booking{padding:23px}.contact-intro br{display:none}.form-row{grid-template-columns:1fr}.footer-main{padding-bottom:30px}.footer-bottom{flex-direction:column}.footer-bottom button{margin:0 22px 0 0}dialog{padding:40px 26px}dialog h2{font-size:28px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn{transition:none}}

/* Full-width supermarket hero, with a readable foreground on all screens. */
.hero{position:relative;isolation:isolate;display:flex;align-items:center;min-height:690px;width:100%;margin:0;padding:72px 0;overflow:hidden;gap:0}
.hero-inner{position:relative;z-index:2}
.hero-copy{max-width:610px}
.hero .hero-visual{position:absolute;inset:0;z-index:0;width:100%;height:100%;border-radius:0;background:var(--soft);pointer-events:none}
.hero-visual img{display:block;object-fit:cover;object-position:center 45%}
.hero::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(255,255,255,.97) 0%,rgba(255,255,255,.91) 30%,rgba(255,255,255,.67) 48%,rgba(255,255,255,.12) 76%,rgba(255,255,255,.04) 100%);pointer-events:none}
.hero .lead,.hero .micro{color:#444b47}
@media(min-width:1500px){.hero{min-height:750px;padding:90px 0}}
@media(max-width:800px){.hero{min-height:650px;padding:56px 0}.hero::after{background:linear-gradient(90deg,rgba(255,255,255,.96),rgba(255,255,255,.88) 50%,rgba(255,255,255,.48))}.hero .hero-copy{max-width:560px}.hero-visual img{object-position:60% center}}
@media(max-width:500px){.hero{min-height:640px;padding:44px 0 52px}.hero::after{background:linear-gradient(90deg,rgba(255,255,255,.95),rgba(255,255,255,.87) 68%,rgba(255,255,255,.68))}.hero-visual img{object-position:58% center}}

/* Original supplied brand asset in the header. */
.brand-logo{display:flex;align-items:center;flex-shrink:0;width:190px}.brand-logo img{display:block;width:100%;height:auto}@media(max-width:500px){.brand-logo{width:145px}}@media(max-width:360px){.nav{gap:12px}.brand-logo{width:125px}}

/* Customer revisions: full-width product photo and quieter footnotes. */
.benefits-photo{display:block;width:100%;height:auto;aspect-ratio:1672 / 460;object-fit:cover;object-position:center 54.054%}
#vorteile .adv-grid small{font-size:.6875rem;line-height:1.55}
.footer-bottom>span{max-width:820px}
.footer-bottom>div{flex-shrink:0}
@media(max-width:800px){.footer-main{padding-bottom:0}.footer-bottom{border-top:0;padding-top:0;flex-wrap:wrap}}

.benefit-strip .wrap{grid-template-columns:1.1fr repeat(3,1fr)}
@media(max-width:800px){.benefit-strip .wrap{grid-template-columns:repeat(2,1fr)}}

/* Text directly on photography, without the white hero wash. */
.hero::after{display:none}
.hero-copy{color:#fff;text-shadow:0 2px 8px #000c,0 1px 2px #000}
.hero h1 em{color:inherit}
.hero .lead,.hero .micro,.hero .micro span{color:#fff}
.hero .dash{background:#fff}
.hero .btn{text-shadow:none}
.hero .text-link{color:#fff;text-decoration:underline;text-underline-offset:5px}
.hero .text-link:hover{color:#fff}
.benefits-visual{position:relative;isolation:isolate;display:grid;align-items:center;min-height:390px;padding:65px 0;overflow:hidden}
.benefits-visual .benefits-photo{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:center 54.054%;z-index:-2}
.benefits-visual::after{content:"";position:absolute;inset:0;background:rgba(15,18,17,.67);z-index:-1;pointer-events:none}
.benefits-overlay{color:#fff;text-shadow:0 2px 8px #0006}
.benefits-overlay .section-top{display:block;margin:0;max-width:740px}
.benefits-overlay .eyebrow{color:#fff}
.benefits-overlay h2{font-size:clamp(34px,4.1vw,58px);margin-bottom:22px}
.benefits-overlay .section-top>p{color:#fff;font-size:18px;max-width:580px;margin:0}
@media(min-width:1500px){.benefits-visual{min-height:450px}}
@media(max-width:800px){.benefits-visual{min-height:360px;padding:50px 0}}
@media(max-width:500px){.benefits-visual{min-height:360px;padding:45px 0}.benefits-overlay .section-top>p{font-size:16px}}

/* Fullscreen, scroll-controlled footage. No timed playback or easing. */
header{position:fixed;inset:0 0 auto}
.hero-scroll{--copy-opacity:1;background:#141819}
.hero-scroll .hero{height:100vh;height:100svh;min-height:0;padding:120px 0 70px}
.hero-scroll.is-scrubbing{height:var(--hero-track-height)}
.hero-scroll.is-scrubbing .hero{position:sticky;top:0}
.hero-scroll .hero-visual{background:#141819 url('hero-poster.jpg') center/cover no-repeat}
.hero-video{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.hero-scroll .hero-inner{opacity:var(--copy-opacity)}
.hero-scroll .hero-inner[inert]{pointer-events:none;visibility:hidden}
.hero-scroll-hint{position:absolute;z-index:3;bottom:24px;left:50%;transform:translateX(-50%);color:#fff;font-size:12px;letter-spacing:.08em;text-shadow:0 1px 5px #000;white-space:nowrap}
.hero-scroll-hint span{display:inline-block;margin-left:12px}
.hero-scroll .hero h1{font-size:clamp(34px,7svh,70px)}
@media(max-width:800px){.hero-scroll .hero{padding:100px 0 65px}.hero-scroll .hero h1{font-size:clamp(30px,6svh,54px)}.hero-scroll .lead{font-size:16px}.hero-scroll .hero-copy{max-width:560px}}
@media(orientation:portrait){.hero-video{object-fit:contain}.hero-scroll .hero-visual{background-size:contain}}
@media(max-height:620px){.hero-scroll .hero h1{font-size:30px;line-height:1.05;margin-bottom:12px}.hero-scroll .lead{font-size:14px;line-height:1.4;margin-bottom:16px}.hero-scroll .eyebrow{margin-bottom:12px}.hero-scroll .micro{margin-top:12px}.hero-scroll-hint{bottom:12px}}
@media(prefers-reduced-motion:reduce){.hero-scroll.is-scrubbing{height:auto}.hero-scroll .hero{position:relative;top:auto}.hero-scroll-hint{display:none}}

/* Benefits introduction without photography. */
.benefits-visual{background:var(--soft);min-height:0;padding:65px 0}
.benefits-visual::after{display:none}
.benefits-overlay{color:var(--ink);text-shadow:none}
.benefits-overlay .eyebrow{color:var(--ink)}
.benefits-overlay .section-top>p{color:var(--ink)}
.audience-grid .market .btn{background:#F4374C;color:#fff}
.audience-grid .market .btn:hover{background:#d9253a}
@media(max-width:800px){.benefits-visual{padding:50px 0}}

/* Full-width audience cards, including the supermarket owner section. */
.audience-grid{grid-template-columns:1fr}

/* Separate audience journeys and navigation to the market section. */
nav{gap:20px}nav a{font-size:14px}
#supermarktinhaber .audience-grid{margin-top:0}
#supermarktinhaber .market p{max-width:760px}
.market-faq{background:#fff}
@media(max-width:1100px){
  .nav{height:140px;flex-wrap:wrap;gap:0 20px;padding:10px 0}
  .nav nav{display:flex;order:3;width:100%;justify-content:space-between;gap:12px}
  html{scroll-padding-top:155px}
  .hero-scroll .hero{padding-top:160px}
}
@media(max-width:600px){
  .nav nav{display:grid;grid-template-columns:1fr 1fr;gap:5px 16px}
  .nav nav a{font-size:14px;line-height:1.35;padding:3px 0}
}

/* Keep the process introduction directly below its heading. */
#ablauf > .section-top{display:block}
#ablauf > .section-top > p{max-width:620px;margin:20px 0 0}

/* Calendly booking, loaded on request. */
.calendly-frame{display:block;width:100%;height:740px;border:0;background:#fff}
#calendar:has(iframe){padding:0;display:block;background:#fff}
.calendar-fallback{display:block;margin:16px 0;font-size:14px;text-decoration:underline;text-underline-offset:3px}
#booking-dialog{width:min(920px,calc(100vw - 24px));max-width:920px;padding:30px}
#booking-dialog h2{font-size:28px;margin-bottom:18px}
#booking-dialog .calendly-frame{height: min(700px,70vh);min-height:400px}
@media(max-width:500px){#booking-dialog{padding:24px 12px}.calendly-frame{height:780px}}

.legal-document{max-width:900px;padding-top:150px;padding-bottom:80px}.legal-document h1{font-size:clamp(34px,6vw,54px);line-height:1.15;margin-bottom:25px;overflow-wrap:anywhere}.legal-document h2{font-size:25px;line-height:1.25;margin:36px 0 14px}.legal-document p{line-height:1.75;margin:0 0 16px}.legal-document a,.calendar-consent p a{text-decoration:underline;text-underline-offset:3px}.footer-bottom>div{display:flex;gap:18px;flex-wrap:wrap}.calendar-consent p{font-size:14px;line-height:1.6}.calendar-consent .btn{white-space:normal}[hidden]{display:none!important}@media(max-width:600px){.legal-document{padding-top:115px}.legal-page .nav{gap:20px}.legal-page .nav>a:last-child{font-size:13px}}

/* Mobile layout: compact header, legible controls and full-height footage. */
.menu-toggle{display:none}
@media(max-width:1100px){
 html{scroll-padding-top:90px}
 .nav{height:80px;flex-wrap:nowrap;gap:14px;padding:0;position:relative}
 .nav .brand-logo{width:155px}
 .menu-toggle{display:inline-flex;align-items:center;gap:8px;min-height:44px;border:1px solid var(--line);border-radius:6px;background:white;padding:8px 12px;font-size:14px;margin-left:auto}
 .nav nav{display:none;position:absolute;top:80px;left:0;right:0;width:auto;background:#fff;border:1px solid var(--line);border-radius:0 0 8px 8px;padding:12px;box-shadow:0 12px 24px #0001;z-index:20}
 .nav nav.is-open{display:flex;flex-direction:column;gap:4px}
 .nav nav a{display:block;font-size:15px;line-height:1.4;padding:12px;min-height:44px}
 .hero-scroll .hero{padding-top:110px}
 .legal-document{padding-top:115px}
}
@media(max-width:800px){
 .wrap{width:calc(100% - 40px)}
 .hero-scroll .hero{padding:104px 0 64px}
 .hero-video{object-fit:cover;object-position:center}
 .hero-scroll .hero-visual{background-size:cover}
 .hero-scroll .hero-copy{max-width:100%}
 .hero-scroll .hero h1{font-size:clamp(36px,8.7vw,54px);letter-spacing:-1.7px;line-height:1.08;margin-bottom:20px}
 .hero-scroll .lead{font-size:16px;line-height:1.55;max-width:480px;margin-bottom:22px}
 .hero-scroll .micro{display:flex;align-items:center;flex-wrap:wrap;gap:4px 8px;line-height:1.5}
 .hero-scroll .micro span:nth-child(2){margin-left:8px}
 .adv-grid,.steps{grid-template-columns:1fr;gap:30px}
 .adv-grid article{min-width:0}
 .section-top{gap:20px}
 .booking,form,.contact-grid,.faq-grid,.faqs{min-width:0}
 .footer-bottom>div{flex-shrink:1}
 .footer-bottom{overflow-wrap:anywhere}
 input,textarea{font-size:16px}
 summary{min-height:48px}
 .legal-page .nav .brand-logo{width:145px}
 .calendly-frame{max-width:100%}
}
@media(max-width:500px){
 .wrap{width:calc(100% - 32px)}
 .nav{height:72px;gap:8px}
 .nav .brand-logo{width:125px}
 .menu-toggle{padding:8px;gap:5px;font-size:12px}
 .nav>.btn{padding:10px;font-size:12px;gap:6px;min-height:44px}
 .nav>.btn span{display:none}
 .nav nav{top:72px}
 html{scroll-padding-top:84px}
 .hero-scroll .hero{padding:96px 0 64px}
 .hero-scroll .eyebrow{font-size:10px;letter-spacing:1px;margin-bottom:18px}
 .hero-scroll .hero h1 br{display:none}
 .hero-scroll .hero h1{font-size:clamp(34px,9.5vw,46px)}
 .hero-scroll .actions{align-items:stretch;flex-direction:column;gap:14px;max-width:340px}
 .hero-scroll .actions .btn{min-height:48px}
 .hero-scroll .actions .text-link{min-height:44px;justify-content:center}
 .hero-scroll .micro{font-size:11px}
 .benefit-strip .wrap{gap:20px 14px}
 .benefit-strip .wrap>span{min-width:0}
 h2,.contact>h2{font-size:clamp(28px,8vw,34px);letter-spacing:-1px}
 .benefits-overlay h2{font-size:clamp(28px,8vw,34px)}
 .benefits-visual{padding:40px 0}
 .section{padding-top:44px;padding-bottom:44px}
 .audience article{padding:24px 20px}
 .audience h3{font-size:27px}
 .card-kicker{max-width:calc(100% - 35px)}
 .booking{padding:20px 14px}
 .calendar-box{padding:22px 12px}
 .direct a{gap:12px;overflow-wrap:anywhere}
 .form-row{grid-template-columns:1fr}
 #booking-dialog{max-height:calc(100dvh - 24px)}
 #booking-dialog .calendly-frame{min-height:360px;height:65dvh}
 .legal-page .nav{height:72px}
 .legal-document{padding-top:104px;padding-bottom:48px}
}
@media(max-width:360px){
 .nav .brand-logo{width:106px}
 .nav>.btn{font-size:11px;padding:8px}
 .hero-scroll .lead{font-size:15px}
}
@media(max-height:600px) and (orientation:landscape){
 .nav{height:60px}
 .nav nav{top:60px}
 .hero-scroll .hero{padding:78px 0 42px}
 .hero-scroll .hero h1{font-size:30px;margin-bottom:10px}
 .hero-scroll .lead{font-size:13px;line-height:1.35;margin-bottom:12px;max-width:520px}
 .hero-scroll .actions{flex-direction:row;gap:16px;max-width:none;align-items:center}
 .hero-scroll .actions .btn{padding:10px 14px;min-height:40px}
 .hero-scroll .eyebrow,.hero-scroll .micro{display:none}
 .hero-scroll-hint{bottom:10px}
}

@media(max-width:500px){.menu-toggle{font-size:0;gap:0;width:44px;min-width:44px;justify-content:center}.menu-toggle span{font-size:20px}}

.hero-canvas{display:block;width:100%;height:100%}.hero-scroll:not(.is-scrubbing) .hero-canvas{visibility:hidden}

.region-section{background:var(--soft);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.region-section h2{max-width:900px}.region-section p{max-width:760px;color:var(--muted);font-size:17px;margin-bottom:26px}@media(max-width:500px){.region-section p{font-size:16px}}

/* Preserve the entire film in portrait; present benefits in a consistent list. */
@media(max-width:800px) and (orientation:portrait){
 .hero-scroll .hero-visual{background-size:contain;background-color:#141819}
}
@media(max-width:600px){
 .benefit-strip .wrap{grid-template-columns:1fr;gap:0;padding:8px 0}
 .benefit-strip .wrap>span,.benefit-strip .wrap>span:first-child{grid-column:auto;padding:18px 0;display:block}
 .benefit-strip .wrap>span+span{border-top:1px solid var(--line)}
 .benefit-strip .wrap>span:first-child b{display:block}
 .benefit-strip span{font-size:14px;line-height:1.6}
 .benefit-strip b{font-size:16px;line-height:1.6}
}

/* Adaptive portrait framing with a soft continuation of the same scene. */
.hero-ambient{position:absolute;inset:-5%;width:110%;height:110%;object-fit:cover;filter:blur(22px) brightness(.65);opacity:0;pointer-events:none}.hero-canvas{position:relative;z-index:1}
@media(max-width:800px) and (orientation:portrait){.hero-scroll .hero-visual{background-size:cover}.hero-ambient{opacity:1}}

/* Disclosure stays outside the fading hero copy, including the static fallback. */
.hero-ai-label{position:absolute;z-index:4;left:max(24px,calc((100vw - 1220px)/2));bottom:24px;margin:0;padding:8px 12px;border-radius:5px;background:rgba(15,18,17,.88);color:#fff;font-size:12px;line-height:1.5;max-width:calc(100% - 48px);pointer-events:none;text-shadow:none}
@media(max-width:1100px){.hero-ai-label{left:24px;bottom:62px}}
@media(max-width:500px){.hero-ai-label{left:16px;bottom:60px;max-width:calc(100% - 32px);font-size:12px;padding:8px 10px}.hero-scroll .hero{padding-bottom:116px}}
@media(max-height:600px) and (orientation:landscape){.hero-ai-label{bottom:42px;padding:5px 10px;font-size:11px}.hero-scroll .hero{padding-bottom:78px}}
