/* Full-height phone hero only; desktop layout declarations stay unchanged. */
@media (max-width:700px), (max-width:1000px) and (orientation:landscape) and (hover:none) and (pointer:coarse){
 .home-page .home-hero{height:100vh;height:100svh;height:100dvh;min-height:0;max-height:none;width:100%;padding:0;background:#20211e}
 .home-hero .film-frame:not(.is-expanded):not(:fullscreen){position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;background:#20211e}
 .home-hero .film-frame:not(.is-expanded):not(:fullscreen) video,.home-hero .film-frame:not(.is-expanded):not(:fullscreen) .film-fallback{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
 .home-hero .site-header{padding:calc(14px + env(safe-area-inset-top,0px)) max(5vw,env(safe-area-inset-right,0px)) 30px max(5vw,env(safe-area-inset-left,0px))}
 .home-hero .site-header nav>a:not(.brand){font-size:12px}.home-hero .brand{width:80px}
 .home-hero .hero-copy{top:calc(76px + env(safe-area-inset-top,0px));bottom:0;display:flex;flex-direction:column;justify-content:flex-end;padding:24px max(5vw,env(safe-area-inset-right,0px)) calc(86px + env(safe-area-inset-bottom,0px)) max(5vw,env(safe-area-inset-left,0px))}
 .home-hero .hero-copy>*{flex-shrink:0}
 .home-hero .hero-copy h1{font-size:clamp(38px,10.7vw,68px);line-height:1.04;letter-spacing:-.04em}
 .home-hero .hero-copy p{font-size:16px;line-height:1.6;max-width:440px;margin-top:22px}
 .home-hero .hero-actions{gap:24px;margin-top:22px}
 .home-hero .hero-actions a{font-size:11px;letter-spacing:.12em;padding-block:12px}
 .home-hero .film-controls{bottom:calc(16px + env(safe-area-inset-bottom,0px));right:max(5vw,env(safe-area-inset-right,0px))}
 @supports not (height:100dvh){.home-page .home-hero{height:var(--mobile-visible-height,100vh);height:var(--mobile-visible-height,100svh)}}
}
/* Short in-app viewports: fit the content, keeping the hero at full viewport height. */
@media (max-width:700px) and (max-height:600px), (max-width:1000px) and (max-height:600px) and (orientation:landscape) and (hover:none) and (pointer:coarse){
 .home-hero .site-header{padding-top:calc(8px + env(safe-area-inset-top,0px))}
 .home-hero .hero-copy{top:calc(64px + env(safe-area-inset-top,0px));padding-top:8px;padding-bottom:calc(74px + env(safe-area-inset-bottom,0px))}
 .home-hero .hero-copy h1{font-size:clamp(32px,9vw,44px);line-height:1.04}
 .home-hero .hero-copy p{font-size:15px;line-height:1.45;margin-top:14px}
 .home-hero .hero-actions{margin-top:14px;gap:20px}
 .home-hero .hero-actions a{padding-block:8px;min-height:40px}
}
@media (max-width:1000px) and (max-height:450px) and (orientation:landscape) and (hover:none) and (pointer:coarse){
 .home-hero .hero-copy{top:calc(60px + env(safe-area-inset-top,0px));padding-bottom:calc(64px + env(safe-area-inset-bottom,0px))}
 .home-hero .hero-copy h1{font-size:32px;line-height:1.02}
 .home-hero .hero-copy p{font-size:14px;line-height:1.4;max-width:680px;margin-top:10px}
 .home-hero .hero-actions{margin-top:10px}
 .home-hero .film-controls{bottom:calc(10px + env(safe-area-inset-bottom,0px))}
}
