/* Centred, layered hero: ocean, large bilingual headline, live product, short caption. */
.hero-headline{position:absolute;z-index:3;left:5%;right:5%;top:12%;text-align:center;color:#f5faff;opacity:var(--surface-opacity);transform:translateY(calc(var(--dive)*-120px));pointer-events:none;text-shadow:0 2px 20px #00275166}
.hero-headline .hero-title.dv:lang(dv){font-size:clamp(40px,5.4vw,88px);line-height:1.6;margin:0;letter-spacing:0;font-weight:700;overflow-wrap:normal}
.hero-companion{font-size:clamp(30px,4vw,66px);line-height:1.12;letter-spacing:-2px;margin:0;font-weight:500}
.hero-product-foreground{position:absolute;inset:0;width:100%;height:100%;z-index:4;pointer-events:none}
.surface-copy.hero-caption{left:50%;top:auto;bottom:14%;transform:translate(-50%,calc(var(--dive)*-100px));width:min(620px,85%);max-width:620px;text-align:center;color:white;z-index:5}
.surface-copy.hero-caption>p{display:block;max-width:580px;margin:0 auto 18px;padding:0;background:none;border-radius:0;color:#f8fbff;font-size:14px;line-height:1.7;text-shadow:0 1px 10px #002751}
.surface-copy.hero-caption .button{position:static;display:inline-flex;max-width:none;margin:0 auto;padding:15px 23px;font-size:12px;gap:28px;color:#061c34;background:#68b1ff}
.unit-controls{left:auto;right:22%;top:45%;bottom:auto;z-index:7;max-width:180px;text-align:center;transform:rotate(-7deg);opacity:var(--surface-opacity);pointer-events:none;color:#f0f7ff}
.unit-controls button.nudge-note{display:flex;flex-direction:column;align-items:center;gap:0;min-height:44px;margin:0;padding:0 8px;border:0;border-radius:0;background:none;color:#f0f7ff;backdrop-filter:none;pointer-events:auto;font-family:'Bradley Hand','Comic Sans MS',cursive;font-size:26px;line-height:1.2;font-weight:400;text-shadow:0 1px 5px #062d57}
.nudge-note svg{width:130px;height:78px;overflow:visible}
.nudge-note path{fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.unit-controls .nudge-note:hover{transform:rotate(3deg)}
.unit-controls #reset-unit{pointer-events:auto;min-height:44px;margin:5px auto 0;padding:5px 12px;font-size:11px;border:0;background:none;color:#f0f7ff;backdrop-filter:none;text-decoration:underline;text-underline-offset:4px;opacity:0}
.unit-controls:focus-within #reset-unit,.dive-sticky:has(#real-water[data-interactions]) #reset-unit{opacity:1}
.hero-scroll{position:absolute;bottom:25px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:7px;z-index:8;min-width:100px;min-height:44px;color:#eff7ff;font-size:10px;letter-spacing:.4px;text-shadow:0 1px 8px #00244b}
.hero-scroll svg{width:18px;height:27px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s}
.hero-scroll:hover svg{transform:translateY(4px)}
.illustration-note{left:4.4%;bottom:20px;max-width:190px;line-height:1.6;font-size:9px;pointer-events:none}
.below-copy{max-width:620px}.below-copy>p:not(.dv){max-width:440px}
.below-copy,.reef-copy{z-index:5}
@media(min-width:701px) and (max-height:760px){.hero-headline{top:13%}.hero-headline .hero-title.dv:lang(dv){font-size:clamp(38px,4.8vw,70px)}.hero-companion{font-size:clamp(30px,3.7vw,56px)}.surface-copy.hero-caption{bottom:13%}.unit-controls{right:10%;top:44%}}
@media(max-width:1000px) and (min-width:701px){.unit-controls{right:5%}.hero-headline{top:17%}.hero-headline .hero-title.dv:lang(dv){font-size:54px}.hero-companion{font-size:46px}}
@media(max-width:700px){
 .dive-sticky{min-height:640px}.hero-headline{left:7%;right:7%;top:14.5%}.hero-headline .hero-title.dv:lang(dv){font-size:clamp(31px,8.4vw,43px);line-height:1.7;margin:0 auto 5px;max-width:540px}.hero-companion{font-size:clamp(24px,7vw,35px);letter-spacing:-1px;line-height:1.15;margin:0}
 .surface-copy.hero-caption{left:50%;top:auto;bottom:15%;width:86%;max-width:410px}.surface-copy.hero-caption>p{font-size:12px;line-height:1.65;max-width:350px;margin-bottom:15px;padding:0;background:none;color:#f8fbff}.surface-copy.hero-caption .button{display:inline-flex;position:static;font-size:11px;padding:13px 20px;min-height:44px;margin:0}
 .unit-controls{left:auto;right:5%;top:57%;bottom:auto;max-width:135px}.unit-controls button.nudge-note{font-size:20px;padding:0 5px}.nudge-note svg{width:90px;height:55px}.unit-controls #reset-unit{font-size:10px;min-height:44px;padding:4px 10px;margin:0 auto}
 .hero-scroll{bottom:25px;font-size:9px}.illustration-note{left:7%;bottom:20px;max-width:104px;font-size:8px;line-height:1.5}
 .below-copy{top:17%;max-width:86%}.below-copy h2,.reef-copy h2{font-size:42px}.below-copy>p:not(.dv){max-width:290px;font-size:12px;line-height:1.8}
}
@media(max-width:360px){.hero-headline .hero-title.dv:lang(dv){font-size:29px}.hero-companion{font-size:24px}.surface-copy.hero-caption>p{font-size:11px}.unit-controls{top:50%;right:3%}.unit-controls button.nudge-note{font-size:18px}.surface-copy.hero-caption{bottom:14%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-headline{transform:none}.surface-copy.hero-caption{transform:translateX(-50%)}.hero-scroll svg,.unit-controls button.nudge-note{transition:none}.hero-scroll:hover svg,.unit-controls .nudge-note:hover{transform:none}}

.nudge-note span{white-space:nowrap}

@media(max-width:700px){.below-copy{top:14%}.below-copy h2{font-size:36px;max-width:335px;margin-bottom:20px}.below-copy>p:not(.dv){max-width:285px}}

/* Desktop title sits in open water and is physically occluded by the emerged model pass. */
@media(min-width:701px){.hero-headline{top:27%}.hero-companion{font-size:clamp(36px,3.6vw,60px)}}
