/* Thumb-friendly mobile rails. Desktop/tablet layouts keep their native grids. */
.mobile-carousel__toolbar,.mobile-carousel__progress{display:none}.mobile-carousel__status{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:700px){
  .mobile-carousel__toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 14px}.mobile-carousel__cue{display:flex;align-items:center;gap:8px;font-size:.92rem;font-weight:700;color:var(--water);letter-spacing:.01em}.mobile-carousel__cue:before{content:"↔";display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--aqua);font-size:1.1rem}.section-dark .mobile-carousel__cue,.material-lab .mobile-carousel__cue{color:#fff}.section-dark .mobile-carousel__cue:before,.material-lab .mobile-carousel__cue:before{background:rgba(200,241,237,.16)}
  .mobile-carousel__arrows{display:flex;gap:9px}.mobile-carousel__arrow{display:grid;place-items:center;width:52px;height:52px;min-width:52px;border:1px solid rgba(20,39,47,.2);border-radius:50%;background:#fff;color:var(--night);box-shadow:0 10px 24px rgba(8,27,37,.1);font-size:1.45rem;line-height:1;cursor:pointer}.mobile-carousel__arrow:disabled{opacity:.32;box-shadow:none}.mobile-carousel__arrow:not(:disabled):active{transform:scale(.96)}.section-dark .mobile-carousel__arrow,.material-lab .mobile-carousel__arrow{background:var(--aqua);border-color:transparent}
  .mobile-carousel{display:flex!important;grid-template-columns:none!important;gap:14px!important;width:auto!important;max-width:none!important;margin-left:-20px!important;margin-right:-20px!important;padding:4px 20px 24px!important;overflow-x:auto!important;overflow-y:visible;scroll-snap-type:x mandatory;scroll-padding-left:20px;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none;touch-action:pan-x}.mobile-carousel::-webkit-scrollbar{display:none}.mobile-carousel>*{flex:0 0 min(78vw,340px)!important;width:min(78vw,340px)!important;max-width:none!important;margin:0!important;scroll-snap-align:start;scroll-snap-stop:always}
  .mobile-carousel__progress{display:flex;align-items:center;justify-content:center;gap:12px;margin:0 0 24px}.mobile-carousel__count{min-width:52px;text-align:center;font-size:.88rem;font-weight:750;color:var(--water)}.section-dark .mobile-carousel__count,.material-lab .mobile-carousel__count{color:#fff}.mobile-carousel__dots{display:flex;gap:7px}.mobile-carousel__dot{width:7px;height:7px;border-radius:999px;background:rgba(20,39,47,.22);transition:width .2s ease,background .2s ease}.mobile-carousel__dot.is-active{width:24px;background:var(--water-2)}.section-dark .mobile-carousel__dot,.material-lab .mobile-carousel__dot{background:rgba(255,255,255,.3)}.section-dark .mobile-carousel__dot.is-active,.material-lab .mobile-carousel__dot.is-active{background:var(--aqua)}
  .planning-process.mobile-carousel{margin-top:0!important}.planning-process.mobile-carousel>.planning-step{grid-template-rows:210px auto auto!important;background:#fff!important}.planning-process.mobile-carousel>.planning-step img{height:210px!important}
  .evidence-triptych.mobile-carousel article{display:grid!important;grid-template-columns:1fr!important;grid-template-rows:220px auto!important;min-height:0!important}.evidence-triptych.mobile-carousel figure{height:220px!important}.evidence-triptych.mobile-carousel article>div{padding:24px!important}
  .process-score ol.mobile-carousel,.milestone-line ol.mobile-carousel,.material-rules ol.mobile-carousel,.condition-grid.mobile-carousel,.ledger-list.mobile-carousel,.company-roster.mobile-carousel,.policy-stack.mobile-carousel{border:0!important;background:transparent!important}
  .process-score ol.mobile-carousel>li,.milestone-line ol.mobile-carousel>li,.material-rules ol.mobile-carousel>li,.condition-grid.mobile-carousel>article,.ledger-list.mobile-carousel>li,.company-roster.mobile-carousel>article,.policy-stack.mobile-carousel>article{min-height:270px!important;padding:28px!important;border:1px solid var(--line)!important;border-radius:26px 8px 26px 8px!important;background:#fff!important;color:var(--ink)!important;box-shadow:0 12px 30px rgba(8,27,37,.07)}
  .element-map__grid.mobile-carousel article{flex-basis:min(78vw,340px)!important;width:min(78vw,340px)!important}.element-map__grid.mobile-carousel figure{height:230px!important}
  .material-samples.mobile-carousel>span{flex-basis:min(72vw,290px)!important;width:min(72vw,290px)!important;min-height:180px!important;padding:95px 20px 20px!important}
  .feeling-rail.mobile-carousel,.project-index__rail.mobile-carousel,.material-lab__index.mobile-carousel{padding-bottom:16px!important}.feeling-rail.mobile-carousel>button,.project-index__rail.mobile-carousel>button,.material-lab__index.mobile-carousel>button{flex-basis:min(68vw,270px)!important;width:min(68vw,270px)!important;min-height:60px!important;padding:14px 18px!important;border:1px solid currentColor!important;border-radius:16px!important;scroll-snap-align:center}.feeling-rail.mobile-carousel>button{background:rgba(255,255,255,.45)!important}.feeling-rail.mobile-carousel>button.is-active{background:#fff!important}.project-index__rail.mobile-carousel>button,.material-lab__index.mobile-carousel>button{background:rgba(255,255,255,.08)!important}.project-index__rail.mobile-carousel>button.is-active,.material-lab__index.mobile-carousel>button.is-active{background:var(--aqua)!important;color:var(--night)!important}
}
@media(prefers-reduced-motion:reduce){.mobile-carousel{scroll-behavior:auto!important}.mobile-carousel__dot{transition:none}}
