.mobile-menu{display:none}
@media(max-width:768px){
  html{scroll-padding-top:88px}
  body{overscroll-behavior-x:none}
  .nav{padding:calc(10px + env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) 10px max(16px,env(safe-area-inset-left));gap:12px;align-items:center}
  .nav-logo{display:flex;align-items:center;min-height:44px;margin-right:auto}
  .nav-links{display:none}
  .nav-cta{display:block;min-height:44px;padding:10px 12px;font-size:9px;letter-spacing:.07em}
  .mobile-menu{display:block}
  .mobile-menu summary{display:flex;align-items:center;gap:10px;min-height:44px;padding:8px;font:10px 'IBM Plex Mono',monospace;letter-spacing:.08em;cursor:pointer;list-style:none}
  .mobile-menu summary::-webkit-details-marker{display:none}
  .mobile-menu summary:focus-visible{outline:2px solid var(--acc);outline-offset:2px}
  .mobile-menu summary span{font-size:20px;color:var(--acc)}
  .mobile-menu[open] summary span{transform:rotate(45deg)}
  .mobile-menu-panel{position:absolute;top:100%;right:16px;left:16px;padding:12px;background:#0e0e0ef5;border:1px solid var(--fg3);box-shadow:0 20px 40px #0008}
  .mobile-menu-panel a,.mobile-menu-panel button{display:flex;align-items:center;width:100%;min-height:48px;padding:12px;color:var(--fg);background:none;border:0;font:12px 'IBM Plex Mono',monospace;text-transform:uppercase;text-align:left}
  .hero-journey{height:150svh}
  .hero-journey .hero{min-height:560px;padding:80px max(20px,env(safe-area-inset-right)) calc(24px + env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left))}
  .hero-canvas{top:64px;height:42%}
  .hero-object-caption{top:40%;right:24px}
  .hero-kicker{font-size:8px;letter-spacing:.18em;margin-bottom:14px}
  .hero h1{font-size:clamp(2.4rem,12.7vw,5.9rem);margin-bottom:24px}
  .hero-meta{gap:14px;align-items:flex-start}
  .hero-sub{width:100%;font-size:13px}
  .hero-tags{width:100%;gap:8px;letter-spacing:.08em}
  .hero-cta{min-height:48px;padding:14px 20px}
  .editorial{gap:32px;padding-block:56px}
  .editorial h2{font-size:clamp(2rem,9.5vw,4rem)}
  .editorial-desc{font-size:14px;margin-bottom:24px}
  .stat{padding:16px}.stat-l{font-size:9px;line-height:1.5}
  .coll{padding-top:40px}
  .coll-header{gap:14px;padding-bottom:20px}
  .coll-name{font-size:clamp(2rem,10vw,4.5rem);overflow-wrap:anywhere}
  .coll-meta{font-size:9px;line-height:1.6}
  .scroll-hint{font-size:0}
  .scroll-hint::before{content:'SWIPE TO EXPLORE';font-size:9px}
  .scroll-hint::after{font-size:12px}
  .coll-track{gap:12px;padding-bottom:32px;scroll-snap-type:x mandatory;scroll-padding-inline:20px;overscroll-behavior-x:contain}
  .coll-track .pcard{width:min(78vw,300px);scroll-snap-align:start}
  .pcard-img{height:220px}
  .pcard-body{padding:16px}
  .pcard-name{font-size:14px}.pcard-desc{font-size:12px}
  .builder,.wall{padding-block:56px}
  .builder h2{margin-bottom:32px;font-size:clamp(2.5rem,12vw,5rem)}
  .gb-prog{margin-bottom:28px}
  .gb-q{font-size:22px;line-height:1.2;margin-bottom:24px}
  .gb-opts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .gb-opt{min-height:48px;padding:12px 8px;font-size:11px;letter-spacing:.04em}
  .gb-back{min-height:44px;padding:10px 0}
  .gb-launch{width:100%;justify-content:center;min-height:52px;font-size:12px;padding:16px}
  .gb-result-grid{grid-template-columns:1fr}
  .wall-sub{font-size:11px;line-height:1.8;margin-bottom:28px}
  .wall-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .wall-item-name{font-size:12px;line-height:1.3}
  .wall-item-img{height:140px}
  .wall-item-body{padding:12px}.wall-item-cat{font-size:8px;line-height:1.5}
  .detail{height:100dvh;overscroll-behavior:contain}
  .detail-vis{min-height:200px;height:32svh}
  .detail-body{flex:0 0 auto;justify-content:flex-start;padding-bottom:calc(24px + env(safe-area-inset-bottom))}
  .detail-close{width:44px;height:44px;top:calc(12px + env(safe-area-inset-top));right:max(12px,env(safe-area-inset-right))}
  .detail-name{font-size:clamp(1.8rem,8vw,2.6rem);line-height:1;overflow-wrap:anywhere}
  .detail-item{align-items:flex-start;line-height:1.5}
  .component-number{padding-top:3px}
  .detail-cta{width:100%;min-height:52px;text-align:center}
  .quote{max-height:calc(100dvh - 32px - env(safe-area-inset-top) - env(safe-area-inset-bottom));padding-top:52px;overscroll-behavior:contain}
  .quote input,.quote textarea{font-size:16px;min-height:48px}
  .quote-intro{font-size:13px}
  .foot{padding-block:40px;padding-bottom:calc(40px + env(safe-area-inset-bottom));gap:28px}
  .foot-links{display:grid;grid-template-columns:1fr 1fr;width:100%;gap:4px}
  .foot-link{display:flex;align-items:center;min-height:44px;font-size:10px}
}
@media(max-width:768px) and (max-height:680px){
  .hero-canvas{height:38%;top:64px}
  .hero-object-caption{display:none}
  .hero-tags{display:none}
  .hero h1{margin-bottom:18px}
  .hero-meta{gap:12px}
}
@media(max-width:768px) and (orientation:landscape){
  .hero-journey{height:auto}
  .hero-journey .hero{min-height:480px;position:relative}
  .hero h1{font-size:clamp(2.4rem,7vw,4rem)}
  .hero-canvas{width:48%;height:75%;top:72px}
  .hero-sub{width:55%}
  .hero-meta{flex-direction:column}
}
@media(hover:none){
  .pcard-cta{position:static;transform:none;padding:10px;font-size:10px}
  .pcard-img{height:auto}
  .pcard-img img{height:220px;display:block}
  .pcard:hover,.wall-item:hover{transform:none}
}
@media(prefers-reduced-motion:reduce){.hero-journey{height:auto}}
