/* A viewport-sized workspace keeps garment navigation beside its details. */
.terminal-garments{--garment-stage-height:min(600px,calc(100svh - 260px));padding-block:32px 12px}
.page-spring-2026-terminal .terminal-garments>.section-title{width:100%;margin:0 0 24px;font-size:clamp(28px,3.2vw,42px)}
.page-spring-2026-terminal .terminal-garments>.section-title:after{margin-top:16px}
.garment-stage{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(24px,4vw,56px);height:var(--garment-stage-height);align-items:start}
.page-spring-2026-terminal .terminal-garments .garment-carousel{display:grid;grid-template-rows:auto 38px 1px;gap:12px;width:min(100%,calc(var(--garment-stage-height) - 64px));max-height:100%;margin:0 auto;--display-height:auto}
.terminal-garments .garment-carousel .carousel-header{grid-row:2;justify-content:center;min-height:0;margin:0}
.terminal-garments .garment-carousel .carousel-arrow{width:38px;height:38px;font-size:18px}
.terminal-garments .garment-carousel .carousel-progress{grid-row:3;height:1px;margin:0}
.terminal-garments .garment-carousel .carousel-track{grid-row:1;width:100%;height:auto;aspect-ratio:1;gap:0;scroll-snap-type:x mandatory}
.terminal-garments .garment-slide{width:100%;min-width:100%;flex:0 0 100%;height:100%;aspect-ratio:1;scroll-snap-align:start}
.terminal-garments .garment-slide .media img{object-fit:contain!important;object-position:center!important}
.terminal-garments .garment-slide .photo{border-radius:2px}
.garment-detail-panels{min-width:0;height:100%;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#706b5466 transparent;padding:2px 16px 16px 2px;scroll-padding-block:8px;scrollbar-gutter:stable}
.garment-detail-panel{display:grid;grid-template-columns:1fr;gap:20px;align-content:start;animation:garment-detail-in .22s ease both}
.garment-description{font-size:15px;line-height:1.75;letter-spacing:-.01em;overflow-wrap:anywhere}
.garment-description h3{font-family:var(--heading-font);font-size:clamp(22px,2.2vw,30px);line-height:1.2;letter-spacing:-.025em;margin:0 0 16px;font-weight:600}
.garment-description p{margin:0 0 16px}.garment-description p:last-child{margin-bottom:0}
.garment-detail-images{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:100%;max-width:480px}
.garment-detail-image{min-width:0;aspect-ratio:1}.garment-detail-image .media img{object-fit:contain}
.garment-detail-panel[hidden]{display:none!important}
@keyframes garment-detail-in{from{opacity:.35;transform:translateY(5px)}to{opacity:1;transform:none}}
@media(max-width:720px){
 .terminal-garments{--garment-stage-height:calc(100svh - 220px);padding-block:24px 8px}
 .page-spring-2026-terminal .terminal-garments>.section-title{font-size:28px;margin-bottom:18px}
 .page-spring-2026-terminal .terminal-garments>.section-title:after{margin-top:12px}
 .garment-stage{grid-template-columns:1fr;grid-template-rows:minmax(0,.52fr) minmax(0,.48fr);gap:16px}
 .page-spring-2026-terminal .terminal-garments .garment-carousel{width:min(100%,260px,calc(var(--garment-stage-height)*.52 - 64px));gap:8px}
 .garment-detail-panels{padding-inline:2px 10px}
 .garment-detail-panel{gap:16px}.garment-description{font-size:14px;line-height:1.7}.garment-description h3{font-size:22px;margin-bottom:12px}
 .garment-detail-images{max-width:420px;gap:10px;margin-inline:auto}
}
@media(min-width:721px) and (max-height:540px){
 .terminal-garments{--garment-stage-height:calc(100svh - 180px);padding-top:12px}
 .page-spring-2026-terminal .terminal-garments>.section-title{font-size:26px;margin-bottom:16px}
 .page-spring-2026-terminal .terminal-garments>.section-title:after{display:none}
}
@media(prefers-reduced-motion:reduce){.garment-detail-panel{animation:none}}
