/* Small, deliberate experiments. All controls remain useful without motion. */
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}
.transition{grid-template-columns:repeat(12,1fr);visibility:hidden}
.transition.is-switching{visibility:visible}
.transition>i{transition:none;transform-origin:center;transform:scaleY(0);margin-right:-1px;background:#e7e7e3}
.transition>i:nth-child(2n){transform-origin:top}
.transition>i:nth-child(2n+1){transform-origin:bottom}
.transition.is-opening>i{transform-origin:center}
.particle-actions{position:absolute;z-index:6;left:50%;bottom:-44px;transform:translateX(-50%);display:flex;align-items:center;gap:14px;pointer-events:auto;white-space:nowrap}
.particle-actions .particle-replay,.particle-transform{position:static;transform:none;min-height:44px;min-width:90px;display:flex;align-items:center;justify-content:center;gap:7px;color:#aaa;font-size:8px;letter-spacing:.1em;padding:0 6px}
.particle-transform:hover,.particle-transform:focus-visible{color:#fff}
.particle-transform[aria-disabled=true]{opacity:.35;cursor:default}
.elastic-title .elastic-line{display:block;white-space:nowrap}
.elastic-title .elastic-letter{display:inline-block;transform-origin:50% 85%;will-change:auto}
.type-wave{display:block;margin:-30px auto 35px;min-height:44px;font-size:9px;letter-spacing:.08em;position:relative}
.studio-section{margin:44px 0 54px}
.studio-heading{display:flex;justify-content:space-between;align-items:center;gap:18px}
.studio-heading h3{font-size:32px;letter-spacing:-1px;font-weight:400;margin:0}
.studio-heading button,.studio-tools button{min-height:44px;font-size:10px;letter-spacing:.04em}
.studio-section>p,.studio-note{font-size:12px;line-height:1.6;color:#aaa;max-width:560px;margin:12px 0 22px}
.design-assembly{position:relative;height:420px;overflow:hidden;background:#151515;isolation:isolate}
.assembly-garment{position:absolute;left:20%;top:0;width:60%;height:100%;object-fit:contain;transition:opacity .65s,transform .65s}
.assembly-part{position:absolute;left:50%;top:45%;width:24%;height:110px;padding:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;opacity:0;visibility:hidden;transform:translate(-50%,-50%) scale(.2);transition:transform .65s cubic-bezier(.2,.8,.2,1),opacity .5s;transition-delay:calc(var(--part)*35ms);background:#151515;color:#eee}
.assembly-part svg{display:block;width:100%;height:75px;object-fit:contain;mix-blend-mode:lighten;pointer-events:none}
.assembly-part span{font-size:8px;line-height:1.3;letter-spacing:.05em}
.assembly-part[aria-pressed=true]{outline:1px dashed #777;outline-offset:3px}
.design-assembly.is-exploded .assembly-garment{opacity:.23;transform:scale(.86)}
.design-assembly.is-exploded .assembly-part{visibility:visible;opacity:1;transform:translate(calc(-50% + var(--dx)),calc(-50% + var(--dy))) scale(1)}
.assembly-description{min-height:60px;margin:16px 0 0;font-size:13px;line-height:1.6;color:#ccc}
.assembly-description strong{font-weight:400;color:#fff}
.lenticular-stage{position:relative;height:380px;background:#181818;overflow:hidden;touch-action:pan-y;--slit:0px}
.lenticular-stage img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;pointer-events:none;user-select:none}
.lenticular-stage .lenticular-back{background:#181818;-webkit-mask-image:repeating-linear-gradient(90deg,#000 0 var(--slit),transparent var(--slit) 14px);mask-image:repeating-linear-gradient(90deg,#000 0 var(--slit),transparent var(--slit) 14px)}
.lenticular-stage:after{content:'↔';position:absolute;left:50%;bottom:16px;transform:translateX(-50%);color:#aaa;font-size:17px}
.lenticular-controls{display:flex;align-items:center;gap:16px;margin-top:8px}
.lenticular-controls button{min-width:55px;min-height:44px;font-size:10px}
.lenticular-controls button[aria-pressed=true]{text-decoration:underline;text-underline-offset:5px}
.lenticular-controls input{flex:1;min-width:0;min-height:44px;accent-color:#ddd}
.photo-stage .inspection-lens{position:absolute;inset:0;z-index:7;width:100%;height:100%;cursor:crosshair;touch-action:none}
.inspection-lens:focus-visible{outline:1px dashed #aaa;outline-offset:-3px}
.inspection-hint{text-align:center;font-size:9px;line-height:1.5;color:#aaa;margin:6px 15px 0}
.zoom-controls .inspect-toggle{font-size:9px;min-width:68px}
.zoom-controls .inspect-toggle[aria-pressed=true]{text-decoration:underline;text-underline-offset:5px}
.photo-stage.is-inspecting .product-sheen{display:none}
.studio-tools{display:flex;justify-content:flex-end;align-items:center;gap:24px;margin:0 0 18px}
.archive-grid.is-arranging{position:relative;display:block;height:530px;overflow:hidden;background:radial-gradient(#ffffff18 .7px,transparent .7px) 0 0/18px 18px;border:1px solid #333}
.archive-grid.is-arranging figure{position:absolute;left:0;top:0;width:35%;margin:0;padding:10px;background:#181818;touch-action:none;cursor:grab;user-select:none;box-shadow:0 12px 30px #0005}
.archive-grid.is-arranging figure.is-dragging{cursor:grabbing;box-shadow:0 16px 40px #0008}
.archive-grid.is-arranging img{height:200px;pointer-events:none}
.archive-grid.is-arranging figcaption{font-size:8px;pointer-events:none}
.archive-grid.is-arranging figure:focus-visible{outline:1px solid #ddd;outline-offset:-1px}
.archive-board-hint{font-size:11px;line-height:1.5;color:#aaa;min-height:32px}
.no-motion .assembly-garment,.no-motion .assembly-part{transition:none}
.no-motion .type-wave{display:none}
@media(max-width:600px){.particle-actions{gap:5px;bottom:-35px}.particle-actions .particle-replay,.particle-transform{font-size:7px;min-width:85px}.studio-heading{align-items:flex-start}.studio-heading h3{font-size:27px;max-width:64%}.studio-heading button{font-size:8px;flex-shrink:0}.studio-section{margin:32px 0 42px}.design-assembly{height:350px}.assembly-garment{left:6%;width:88%}.assembly-part{width:29%;height:92px;padding:6px}.assembly-part svg{height:60px}.assembly-part span{font-size:7px}.lenticular-stage{height:310px}.archive-grid.is-arranging{height:490px}.archive-grid.is-arranging figure{width:47%;padding:7px}.archive-grid.is-arranging img{height:140px}.archive-grid.is-arranging figcaption{font-size:7px}.zoom-controls{gap:9px}.type-wave{font-size:8px;margin-top:-25px}}
@media(prefers-reduced-motion:reduce){.assembly-garment,.assembly-part{transition:none}.type-wave{display:none}}
@media(max-width:600px){.particle-actions{flex-direction:column;gap:0;bottom:-80px}.particle-actions .particle-replay,.particle-transform{min-height:44px}}
