/* Every rule is phone-only. The approved desktop styles and rally are untouched. */
@media (max-width:700px) {
  html:has(body.home) { scroll-behavior:auto; }
  body.home .hero .rally-control { display:none; }
  body.home .hero-bottom { justify-content:flex-end; }
  body.home .cinematic-scene { position:relative; height:300vh; height:300svh; background:#081d11; overflow-anchor:none; }
  body.home .cinematic-stage { position:sticky; top:0; height:100vh; height:100svh; overflow:hidden; isolation:isolate; background:#081d11; }
  body.home .cinematic-canvas { position:absolute; inset:0; width:100%; height:100%; display:block; pointer-events:none; }
  html.cinematic-ready body.home .hero { position:absolute; inset:0; z-index:2; padding:25px 0 0; background:none; min-height:0; border:0; }
  html.cinematic-ready body.home .hero::before,
  html.cinematic-ready body.home .hero::after { display:none; }
  html.cinematic-ready body.home .hero-frame { border:0; background:none; padding:0; }
  html.cinematic-ready body.home .hero-grid { display:block; padding:26px 0 0; }
  html.cinematic-ready body.home .hero-copy { max-width:28rem; }
  html.cinematic-ready body.home .hero h1 { font-size:clamp(68px,17vw,92px); }
  html.cinematic-ready body.home .hero-tagline { margin-top:18px; }
  html.cinematic-ready body.home .hero-actions { margin-top:20px; }
  html.cinematic-ready body.home .hero-description,
  html.cinematic-ready body.home .hero-copy>.text-link,
  html.cinematic-ready body.home .hero-identity,
  html.cinematic-ready body.home .hero-bottom { display:none; }
  body.home .cinematic-hint { position:absolute; z-index:3; bottom:calc(96px + env(safe-area-inset-bottom,0px)); right:22px; color:#ead99c; font:500 12px/1.5 var(--sans); letter-spacing:.12em; text-transform:uppercase; pointer-events:none; }
  body.home .cinematic-skip { position:absolute; z-index:4; left:20px; bottom:calc(86px + env(safe-area-inset-bottom,0px)); min-height:44px; padding:12px 16px; border:1px solid #ead99c55; border-radius:30px; background:#081d11c9; color:#f8f7f2; font:500 12px/1.5 var(--sans); }
  body.home .cinematic-skip[hidden] { display:none; }
  body.home .cinematic-arrival { position:relative; z-index:5; margin-top:-100vh; margin-top:-100svh; padding-top:78px; background:#081d11; opacity:0; overflow-anchor:none; }
  body.home .cinematic-arrival .facts,
  body.home .cinematic-arrival #philosophy { background:#081d11; color:#f8f7f2; border-color:#ead99c26; }
  body.home .cinematic-arrival .facts-grid>div { border-color:#ead99c26; }
  body.home .cinematic-arrival .facts strong,
  body.home .cinematic-arrival h2 em,
  body.home .cinematic-arrival .index { color:#ead99c; }
  body.home .cinematic-arrival .facts span,
  body.home .cinematic-arrival p { color:#bdcbbb; }
  body.home .cinematic-arrival .text-link { color:#ead99c; border-color:#ead99c66 !important; }
  body.home .facts:focus { outline:none; }
}
@media (max-width:700px) and (max-height:660px) {
  html.cinematic-ready body.home .hero { padding-top:16px; }
  html.cinematic-ready body.home .hero-grid { padding-top:14px; }
  html.cinematic-ready body.home .hero h1 { font-size:62px; }
  html.cinematic-ready body.home .hero-tagline { margin-top:12px; }
  html.cinematic-ready body.home .hero-actions { margin-top:14px; }
}
@media (max-width:700px) and (prefers-reduced-motion:reduce) {
  body.home .serve-stage { background:url('frame_000.webp') center 63% / cover no-repeat #081d11; }
  body.home .serve-stage .serve-still, body.home .serve-stage .shuttle-halo { visibility:hidden; }
}
