/* Mobile reading and touch targets. All content remains available without motion. */
@media(max-width:700px){
 html{scroll-padding-top:88px}
 body{overflow-x:clip}
 body>header.site-header{height:72px;background:#100e0ef5;backdrop-filter:none}
 .site-header .brand{font-size:14px}
 .site-header .menu-toggle{min-height:44px;min-width:68px;font-size:13px}
 .site-header nav{top:71px;max-height:calc(100dvh - 72px);overflow-y:auto;background:#171310;backdrop-filter:none}
 .site-header nav a,.site-header nav button{font-size:17px;min-height:48px}
 .site-header .nav-cta{font-size:13px;min-height:44px;align-items:center}
 main>section:not(.arrival):not(.situation-hero){padding:64px 6%}
 .eyebrow,.tech-copy .eyebrow,.section-top>.eyebrow{font-size:12px;line-height:1.6;letter-spacing:.08em}
 .section-top{align-items:flex-start;gap:16px;flex-wrap:wrap}
 .section-top>span{font-size:12px;line-height:1.5;letter-spacing:.04em;max-width:none;text-align:left}
 .manifesto h2,.how h2,.connection h2,.trust h2,.faq-section h2,.end h2,.tech-copy h2{
  font-size:clamp(30px,8.5vw,40px);line-height:1.15;letter-spacing:-.04em;margin:24px 0 28px;overflow-wrap:normal
 }
 .manifesto h2 span{color:#5b5e55}
 .light:not(.end) h2 em{color:#bb2f24}
 .reveal,.reveal.pending,.wow-enter,.wow-enter.wow-visible{opacity:1;translate:none;transform:none;transition:none}
 .entrance-ready .arrival-copy>*{animation:none}
 .manifesto-bottom>p,.step p,.connection p:not(.eyebrow),.trust-details p,.tech-description,.tech-explanation,.faq details p,.end>p:not(.eyebrow){
  font-size:16px;line-height:1.7;max-width:none
 }
 .step p,.trust-details p{color:#50554b}
 .manifesto-bottom .small-note{font-size:14px;color:#53594c}
 .connection .boundary{font-size:14px!important;color:#c3c0b6!important}
 .arrival-overline{font-size:clamp(36px,10.8vw,68px);gap:12px;line-height:1.04;letter-spacing:-.045em;margin:0 0 24px}
 section.arrival{display:flex;flex-direction:column;align-items:stretch;height:auto;min-height:0;max-height:none;padding:112px 6% 32px}
 .arrival-copy{display:contents;width:auto;max-width:none}
 .arrival-copy>.arrival-overline{order:0}
 .arrival-message{order:1;font-size:clamp(25px,7vw,36px);line-height:1.18;letter-spacing:-.035em;margin:0 0 12px}
 .arrival-message em{letter-spacing:-.035em}
 .arrival-controls{position:relative;inset:auto;order:2;align-self:flex-end;margin:6px 0 -50px;gap:10px}
 .arrival-controls button{width:44px;height:44px;font-size:19px}
 .arrival-stage{order:3;position:relative;inset:auto;width:114%;height:clamp(290px,82vw,420px);margin:0 -7% 24px}
 .sculpture-caption{bottom:0;left:50%;width:86%;font-size:10px;letter-spacing:.04em;white-space:normal;line-height:1.6}
 .sculpture-caption b{font-size:11px;letter-spacing:.08em}
 .arrival-lead{order:4;font-size:16px;line-height:1.7;max-width:none}
 .arrival .hero-actions{order:5;gap:12px 20px;margin-top:18px;max-width:none}
 .arrival .button.red,.situation-content .button{font-size:14px;padding:16px 20px;min-height:48px}
 .arrival .text-link,.situation-content .text-link{display:inline-flex;align-items:center;min-height:44px;font-size:14px}
 .arrival-fine{order:6;font-size:12px;line-height:1.65;color:#c4b3a7;max-width:none;margin:18px 0 0}
 .arrival-bottom{position:relative;inset:auto;order:7;margin-top:24px;padding-top:22px;gap:20px;flex-wrap:wrap}
 .arrival-bottom>a{font-size:12px;line-height:1.5;max-width:none;min-height:44px;gap:12px}
 .arrival-bottom>a span{width:36px;height:36px}
 .arrival-facts{gap:24px;flex-wrap:wrap}
 .arrival-facts b{font-size:26px}
 .arrival-facts small{font-size:11px;letter-spacing:.02em;color:#c6b4a5}
 .signal-ribbon{gap:10px;padding:24px 5%}
 .signal-ribbon span{font-size:11px;letter-spacing:.02em}
 .signal-ribbon i{min-width:8px}
 .hero.situation-hero{height:auto;min-height:100svh;max-width:100%;display:flex;flex-direction:column;padding:72px 6% 28px;isolation:isolate}
 .situation-images{top:0;transform:none;will-change:auto}
 .situation-slide img{animation:none;filter:none}
 .situation-content{position:relative;inset:auto;width:100%;transform:none;margin:0;z-index:2}
 .situation-content .eyebrow{font-size:12px;line-height:1.6;letter-spacing:.07em}
 .situation-kicker{font-size:13px;margin:20px 0 16px}
 .hero.situation-hero #situation-headline{font-size:clamp(32px,8.5vw,44px);letter-spacing:-.045em;line-height:1.13;margin:0 0 24px}
 .situation-caption{font-size:16px;line-height:1.65;min-height:0;margin-bottom:20px}
 .situation-promise{font-size:15px;line-height:1.7;max-width:none}
 .situation-content .hero-actions{gap:8px 20px;align-items:flex-start;flex-direction:row;flex-wrap:wrap}
 .situation-tools{position:relative;inset:auto;margin-top:24px;align-self:flex-end;gap:10px;z-index:2}
 .situation-tools>span{font-size:13px;letter-spacing:.03em;margin-right:8px}
 .situation-tools button{width:44px;height:44px;font-size:20px;backdrop-filter:none}
 .situation-tools #slide-pause{font-size:15px}
 .situation-bottom{position:relative;inset:auto;margin-top:26px;width:100%;z-index:2}
 .situation-tabs{gap:16px;scrollbar-width:auto;padding-bottom:14px}
 .situation-tab{font-size:13px;min-height:64px;min-width:112px;gap:8px}
 .situation-tab>span{font-size:11px}
 .situation-notes{font-size:12px;line-height:1.65;color:#ccd2d7;letter-spacing:0}
 .situation-notes span+span{margin-top:6px}
 .situation-shade{background:linear-gradient(90deg,#03090fed,#03090fa6),linear-gradient(0deg,#03090ff7,transparent 80%)}
 .hero-depth-grid,.hero-lens,.hero-orbit{display:none}
 .immersive-tech{display:flex;min-height:0;flex-direction:column;gap:20px}
 .tech-copy{order:0;padding:0}
 .tech-description{color:#c9c0bb}
 .tech-stages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:24px 0}
 .tech-stage{justify-content:center;min-height:48px;padding:12px 2px;font-size:13px;color:#b8aea8}
 .tech-stage span{display:none}
 .tech-explanation{min-height:0;color:#e3dad4}
 .tech-disclaimer{font-size:12px;line-height:1.7;color:#b6a89e;margin:18px 0 0;max-width:none}
 .tech-visual{order:1;height:clamp(330px,95vw,450px);width:100%;margin:0;overflow:hidden}
 .tech-callout,.tech-coordinates,.tech-halo{display:none}
 .tech-legend{bottom:0;left:0;right:0;gap:12px;flex-wrap:wrap}
 .tech-legend>span{font-size:12px;letter-spacing:.03em;min-height:44px}
 #motion-toggle{font-size:12px;color:#e0d0c4;padding:12px 14px;min-height:44px}
 .film-poster{padding:26px 22px;height:380px;transform:none}
 .film-word{font-size:clamp(30px,8.5vw,42px);line-height:1.15;letter-spacing:-.04em;max-width:100%}
 .film-bottom{left:22px;right:22px;bottom:22px;font-size:12px;line-height:1.6;letter-spacing:.02em;gap:12px;flex-wrap:wrap}
 .play-circle{width:56px;height:56px;right:24px;bottom:95px;animation:none}
 .step-art{height:210px}
 .art-label{font-size:11px;letter-spacing:.05em;color:#565d4e}
 .step-heading{gap:12px}
 .step-heading>span,.trust-details article>span{font-size:12px;color:#58604d}
 .step h3,.trust h3{font-size:23px;line-height:1.35}
 .network-art{margin-top:36px;gap:14px}
 .network-art>span{font-size:14px;padding:20px 14px;gap:12px;color:#d0c0ae;transform:none;animation:none}
 .network-art b{font-size:12px;letter-spacing:.02em;white-space:nowrap}
 .network-caption{font-size:12px;line-height:1.6;letter-spacing:.04em;color:#c2ad99}
 .trust-details article{gap:15px}
 .faq details{padding:0}
 .faq summary{font-size:17px;line-height:1.55;padding:22px 0;min-height:48px}
 .faq summary span{flex-shrink:0;font-size:24px}
 .faq details p{margin:0;padding:0 0 24px;color:#c8c0b8}
 .faq details[open]{padding-left:12px;padding-right:12px}
 .end{min-height:0}
 .end .eyebrow{max-width:100%}
 .end h2{max-width:100%}
 .end .official-art{animation:none;opacity:.15}
 .end:before{display:none}
 .store-badges{gap:8px;align-items:center;max-width:100%}
 .store-link{min-height:48px}
 .apple-store img{width:125px;height:42px}
 .google-store img{width:154px;height:60px}
 footer{gap:18px;padding:32px 6%}
 footer button{font-size:14px;min-height:44px;padding:8px 0;text-align:left}
 footer small{font-size:12px;color:#b7aaa0}
 footer .patent-note{display:block;position:static;max-width:none;width:100%;text-align:left;font-size:12px;line-height:1.6;color:#b7aaa0}
 dialog{width:calc(100% - 20px);max-height:calc(100dvh - 24px);padding:54px 10px 16px;overflow-y:auto}
 .close-modal{width:44px;height:44px;right:8px;top:5px}
 dialog video{max-height:calc(100dvh - 160px)}
 dialog>p{font-size:12px;line-height:1.65}
 #info{padding:54px 22px 24px}
 #info h2{font-size:30px;line-height:1.15}
 #info p:not(.eyebrow){font-size:16px}
}
/* Decorative layers stop when their section leaves the screen. */
.motion-offscreen *,.motion-offscreen *:before,.motion-offscreen *:after{animation-play-state:paused!important}
@media(pointer:coarse){
 .situation-images,.situation-content,.step-art,.film-poster{will-change:auto}
 .hero-depth-grid,.hero-lens{display:none}
}
