/* Compatibility corrections to the approved V12 composition. */
html{overflow-x:hidden}body{min-width:0}.container>*{min-width:0}
[hidden]{display:none!important}
.text-gradient{-webkit-background-clip:text}
.reveal{opacity:1;transform:none}.reveal.will-reveal:not(.visible){opacity:0;transform:translateY(22px)}
@keyframes launchWords{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
@keyframes productEntrance{from{opacity:0;transform:translateX(-50%) translateY(30px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}
.launch-pack{translate:0 var(--parallax,0px)}
.film-sheet{-webkit-backdrop-filter:none;backdrop-filter:none}
.faq-answer-inner p{font-family:var(--body-family)}
.mobile-menu{visibility:hidden;pointer-events:none}.menu-open .mobile-menu{visibility:visible;pointer-events:auto;overflow-y:auto}
.hydro-cinema-bottom{bottom:62px}.hydro-theatre{aspect-ratio:16/9}
.hydro-shade,.hydro-cinema-label{pointer-events:none}
.hydro-theatre:has(video:focus-visible){outline:2px solid var(--accent)}
.field input,.field select,.field textarea{font-size:16px}
.modal{max-height:calc(100vh - 40px);max-height:calc(100dvh - 40px)}
.box-viewer{padding-bottom:max(20px,env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(20px)}
.box-viewer-main img{min-width:0}.box-viewer-bottom{flex-wrap:wrap}
.btn{white-space:normal;max-width:100%}.film-toolbar>*{min-width:0}.film-call-intro{gap:10px}
@media(min-width:761px) and (max-width:1100px){.navlinks{display:none}.nav-actions>.btn{display:inline-flex}}
@media(max-width:760px){
 html,body{overflow-x:hidden}.nav-actions{gap:2px}.brand{gap:9px}
 .nav .brand-logo-real{width:clamp(96px,27vw,125px)}
 .menu-toggle{min-width:40px;min-height:44px}#languageButton{min-width:66px;padding:8px}
 .launch-heading .trademark{top:0;vertical-align:super}
 .launch-hero{min-height:760px!important;min-height:max(100svh,760px)!important}
 .film-call-intro{flex-wrap:wrap}.film-toolbar{padding-inline:0;gap:8px}.film-toolbar button{letter-spacing:.05em;padding:12px}
 .hydro-metric strong{line-height:1.6;letter-spacing:.08em}
 .modal-backdrop{padding:14px}.modal h2{padding-right:16px;font-size:clamp(24px,7vw,31px)}
 .box-viewer-main img{max-width:calc(100vw - 116px)}
 .launch-redglow,.pack-aura{filter:none}
 .tech-head .section-title{font-size:clamp(30px,7.6vw,58px)}
 .journey-card h3{font-size:clamp(26px,7vw,43px)}
 .film-sheet i{font-size:8px;letter-spacing:.12em}
}
@media(prefers-reduced-motion:reduce){.reveal.will-reveal{opacity:1;transform:none}.launch-pack{translate:none}}

/* Keep the replacement 2:1 photo inside the established desktop hero slot. */
@media(min-width:761px){#packTilt img{aspect-ratio:3/1;object-fit:contain}}

/* The supplied photo has an opaque background: stack hero content to avoid overlap. */
@media(min-width:761px){
 .launch-hero{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;height:auto;min-height:100svh;max-height:none;padding:112px 0 28px}
 .launch-meta{position:relative;inset:auto;width:calc(100% - 2 * var(--gutter));margin:0 0 32px}
 .launch-heading{position:relative;inset:auto;width:100%;margin:0;animation:none}
 .launch-heading h1{font-size:clamp(130px,20vw,290px)}
 .launch-pack{position:relative;inset:auto;width:min(90vw,1180px);margin:24px auto 0;transform:none;translate:none;animation:none}
 .pack-tilt{transform-origin:center}
 .pack-index{position:relative;inset:auto;transform:none;margin:22px auto 0;opacity:.5}
 .launch-copy{position:relative;inset:auto;margin:28px auto 0;animation:none}
 .hero-foot{position:relative;inset:auto;width:calc(100% - 2 * var(--gutter));margin:30px auto 0}
}

/* Tighter chapter rhythm while preserving the product launch composition. */
.cinematic-reveal{padding-top:96px;padding-bottom:96px}
.intro,.technology,.performance.hydro-premiere,.packaging,.journey,.faq{
 padding-top:88px;padding-bottom:88px;
}
.intro .rule{margin-top:56px}
@media(max-width:760px){
 .cinematic-reveal{padding-top:68px;padding-bottom:68px}
 .intro,.technology,.performance.hydro-premiere,.packaging,.journey,.faq{
  padding-top:64px;padding-bottom:64px;
 }
 .intro .rule{margin-top:36px}
}
