.ring-lab{--ink:#f6f1e8;--paper:#24160f;background:var(--paper);min-height:100vh;color:var(--ink);font-family:Montserrat,sans-serif}.ring-lab *{box-sizing:border-box}.ring-weave{height:320vh}.ring-weave-sticky{grid-template-rows:auto minmax(0,1fr);height:100svh;min-height:0;padding:4.5rem clamp(1.25rem,4vw,4rem) 1.5rem;display:grid;position:sticky;top:0}.ring-weave header span{letter-spacing:.18em;text-transform:uppercase;font-size:.72rem;font-weight:700}.ring-weave header h1,.ring-weave header h2{max-width:16ch;font-family:var(--font-display,"Times New Roman", serif);margin:.65rem 0 0;font-size:clamp(1.8rem,3vw,2.7rem);font-weight:400;line-height:1.05}.ring-weave-stage{width:100%;height:100%;min-height:0;position:relative;overflow:hidden}.ring-weave-figure{aspect-ratio:360/320;width:min(100%,112.5svh - 18rem);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.ring-weave-stage svg{width:100%;height:auto;display:block;overflow:visible}.ring-weave-stage article{text-align:center;pointer-events:none;width:min(7.4rem,18%);position:absolute}.ring-weave-stage strong{letter-spacing:.16em;text-transform:uppercase;font-size:.72rem;font-weight:700;display:block}.ring-weave-stage p{opacity:.82;margin:.35rem 0 0;font-size:.68rem;line-height:1.35}@media (width<=700px){.ring-weave{height:340vh}.ring-weave-stage article{width:6.2rem}.ring-weave-stage p{font-size:.68rem}}@media (prefers-reduced-motion:reduce){.ring-weave{height:auto}.ring-weave-sticky{height:auto;position:relative}}
