.assembly-experience{height:550svh;position:relative;padding:0;border:0;margin:18px calc(-5vw) 0;background:#050505}
.assembly-pin{position:sticky;top:0;height:100svh;overflow:hidden;isolation:isolate;background:#050505}
.assembly-heading{position:absolute;z-index:10;top:clamp(25px,5vh,64px);left:clamp(22px,5vw,80px);pointer-events:none}
.assembly-heading .eyebrow{margin-bottom:12px;color:#b79c70}
.assembly-heading h2{font-size:clamp(42px,4.6vw,76px);line-height:1;letter-spacing:-.055em}
.assembly-heading h2 em{color:#d4b278}
.assembly-heading>p:last-child{color:#9c9b98;font-size:13px;line-height:1.5;margin:14px 0 0}
.assembly-canvas{position:absolute;z-index:1;left:50%;top:50%;width:90%;aspect-ratio:3/2;transform:translate(-50%,-50%);transform-origin:center}
.assembly-part{position:absolute;display:block;max-width:none;object-fit:fill;opacity:0;pointer-events:none;backface-visibility:hidden}
.assembly-part[data-kind="glow"]{filter:brightness(1.85) drop-shadow(0 0 2px rgba(255,244,213,.8)) drop-shadow(0 0 5px rgba(255,233,177,.42))}
.assembly-footer{position:absolute;z-index:10;left:clamp(22px,5vw,80px);right:clamp(22px,5vw,80px);bottom:clamp(22px,4vh,44px);display:grid;grid-template-columns:auto 1fr;align-items:end;column-gap:28px;row-gap:13px}
.assembly-step{display:flex;gap:16px;align-items:center;min-width:250px}
.assembly-step>span{font-family:Georgia,serif;color:#e4d7bd;font-size:39px;font-variant-numeric:tabular-nums;line-height:1}
.assembly-step small,.assembly-step strong{display:block}
.assembly-step small{font-size:10px;letter-spacing:.18em;color:#b9a687}
.assembly-step strong{font-size:13px;font-weight:400;color:#f0ece4;margin-top:4px}
.assembly-progress{height:2px;background:#ffffff31;align-self:center}
.assembly-progress span{display:block;width:0;height:100%;background:#d5b888}
.assembly-scrub{grid-column:1/-1;width:100%!important;margin:0;height:16px;accent-color:#d5b888;cursor:ew-resize}
.assembly-caveat{grid-column:1/-1;font-size:10px;color:#777773;letter-spacing:.02em}
@media(max-width:700px){
  .assembly-experience{margin-inline:-20px;height:550svh}
  .assembly-pin{min-height:0}
  .assembly-heading{top:30px;left:22px;right:22px}
  .assembly-heading h2{font-size:clamp(38px,10vw,52px)}
  .assembly-heading>p:last-child{font-size:12px;max-width:300px}
  .assembly-footer{left:22px;right:22px;bottom:25px;grid-template-columns:1fr;gap:13px}
  .assembly-step{min-width:0}
  .assembly-step>span{font-size:34px}
  .assembly-progress{width:100%}
  .assembly-caveat{font-size:9px;line-height:1.35}
}
@media(max-height:550px){.assembly-heading{top:16px}.assembly-heading h2{font-size:30px}.assembly-heading .eyebrow{margin-bottom:6px}.assembly-heading>p:last-child{margin-top:8px}.assembly-footer{bottom:12px;row-gap:5px}.assembly-step>span{font-size:26px}}
@media(prefers-reduced-motion:reduce){
  .assembly-experience{height:100svh}
  .assembly-pin{position:relative}
  .assembly-part{opacity:1}
}
