/* A complete static scene first. The existing decoder enhances it when available. */
#atomic-location .tomcat-location { display:block; overflow:visible; min-height:0; }
#atomic-location .tomcat-location::after { content:none; }
#atomic-location .tomcat-location-stage { position:relative; min-height:100svh; overflow:hidden; display:flex; }
#atomic-location.location-motion .tomcat-location-stage { position:sticky; top:0; height:100svh; }
#atomic-location .tomcat-location-media { position:absolute; inset:0; }
#atomic-location .tomcat-location-media img,
#atomic-location .tomcat-location-media video { object-position:center; }
#atomic-location .tomcat-location video { opacity:0; transition:opacity .2s; }
#atomic-location.location-motion video.sc-has-clip { opacity:1; }
#atomic-location .tomcat-location-scrim { position:absolute; inset:0; pointer-events:none; background:linear-gradient(270deg,rgba(6,10,18,.86),rgba(6,10,18,.7) 27%,transparent 57%); }
#atomic-location .tomcat-location-inner { justify-content:center; padding-top:100px; }
#atomic-location .tomcat-location-copy { margin:0 0 0 auto; width:min(500px,35vw); }
#atomic-location .tomcat-location p { color:#fffaf0; font-weight:400; }
#atomic-location .tomcat-location-marks { margin:40px 0 0 auto; width:min(500px,35vw); flex-wrap:wrap; justify-content:flex-start; gap:16px 22px; }
#atomic-location.location-motion .tomcat-location p { opacity:clamp(0,calc((var(--sc-p,0) - .06)/.34),1); transform:translateY(clamp(0px,calc((.4 - var(--sc-p,0))*100px),34px)); }
#atomic-location.location-motion .tomcat-location-marks { opacity:clamp(0,calc((var(--sc-p,0) - .36)/.2),1); transform:translateY(clamp(0px,calc((.56 - var(--sc-p,0))*60px),12px)); }
#atomic-location.location-static .tomcat-location { height:auto!important; }
#atomic-location.location-static video { display:none; }
@media(max-width:900px) {
  #atomic-location .tomcat-location-stage { flex-direction:column; min-height:0; background:#0b1018; padding-top:72px; box-sizing:border-box; }
  #atomic-location.location-motion .tomcat-location-stage { height:100svh; min-height:620px; }
  #atomic-location .tomcat-location-media { position:relative; flex:none; width:100%; height:auto; aspect-ratio:16/9; }
  #atomic-location .tomcat-location-scrim { display:none; }
  #atomic-location .tomcat-location-inner { flex:1; justify-content:flex-start; padding:24px 24px 28px; }
  #atomic-location .tomcat-location-copy { width:100%; margin:0; }
  #atomic-location .tomcat-location .tomcat-section-mark { display:none; }
  #atomic-location .tomcat-location h2 { margin-top:0; font-size:clamp(26px,4vw,36px); }
  #atomic-location .tomcat-location h2::after { margin-top:16px; }
  #atomic-location .tomcat-location p { margin-top:16px; font-size:15px; line-height:1.6; max-width:65ch; }
  #atomic-location .tomcat-location-marks { width:100%; margin:20px 0 0; padding-top:16px; gap:12px 18px; }
  #atomic-location .tomcat-location-marks li { font-size:9px; letter-spacing:.1em; gap:8px; }
  #atomic-location .tomcat-location-marks svg { width:20px; height:20px; }
}
@media(prefers-reduced-motion:reduce) {
  #atomic-location .tomcat-location { height:auto!important; }
  #atomic-location.location-motion .tomcat-location-stage { position:relative; height:auto; }
  #atomic-location.location-motion .tomcat-location p,
  #atomic-location.location-motion .tomcat-location-marks { opacity:1; transform:none; }
  #atomic-location video { display:none; }
}
