.case-hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:3rem clamp(2rem,5vw,5rem);min-height:100svh;padding-block:7rem 4rem;display:grid}.case-hero__back{color:var(--ink-2);font-size:.9375rem}.case-hero__back svg{width:1rem;height:1rem}.case-hero__title{letter-spacing:-.045em;margin-top:1.75rem;font-size:clamp(3.5rem,8vw,6rem);font-weight:700;font-stretch:115%;line-height:.95}.case-hero__lede{max-width:38ch;margin-top:1.5rem;font-size:clamp(1.1875rem,1.6vw,1.4375rem);line-height:1.45}.case-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem 2rem;max-width:34rem;margin-top:2.25rem;display:grid}.case-facts div{border-top:1px solid var(--line);padding-top:.875rem}.case-facts dt{color:var(--ink-2);font-size:.875rem}.case-facts dd{margin-top:.25rem;font-size:1rem;line-height:1.4}.case-hero .project__links{margin-top:2.25rem}.fan{place-items:center;height:min(78svh,700px);display:grid;position:relative}.fan:before{content:"";aspect-ratio:1;background:var(--brand);border-radius:50%;width:clamp(280px,36vw,540px);position:absolute;top:62%;left:38%;translate:-50% -50%}.fan__item{will-change:transform;position:absolute}.fan__item--center{--device-w:clamp(220px, 19vw, 300px);z-index:2}.fan__item--left,.fan__item--right{--device-w:clamp(180px, 15vw, 240px);filter:brightness(.8)}.fan__item--left{transform:translate(-62%)rotate(-7deg)}.fan__item--right{transform:translate(62%)rotate(7deg)}.case-what{padding-block:clamp(7rem,14vw,12rem)}.case-what__statement{letter-spacing:-.02em;max-width:34ch;font-size:clamp(1.5rem,2.6vw,2.25rem);font-weight:550;font-stretch:104%;line-height:1.3}.case-what__note{max-width:60ch;margin-top:2.5rem}.gallery{padding-block:clamp(6rem,10vw,8rem) 4rem}.gallery__head{margin-bottom:3.5rem}.gallery__viewport{overflow:hidden}.gallery__track{width:max-content;padding-inline:max(var(--gutter), calc((100vw - var(--max)) / 2 + var(--gutter)));will-change:transform;gap:clamp(2rem,4vw,4rem);display:flex}.gallery__item{--device-w:clamp(220px, 18vw, 270px);width:var(--device-w)}.gallery__caption{margin-top:1.25rem;font-size:1.1875rem;font-weight:650;font-stretch:106%}.gallery__note{margin-top:.25rem;font-size:.9375rem;line-height:1.45}.case-web{padding-block:clamp(6rem,12vw,10rem) clamp(8rem,14vw,12rem)}.case-web__head{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:end;gap:1.5rem clamp(2rem,6vw,6rem);display:grid}.case-web__head .project__lede{margin-top:0}.case-web__stage{margin-top:clamp(3rem,6vw,5rem);padding-right:clamp(40px,9vw,140px);position:relative}.case-web__phone{--device-w:clamp(150px, 19vw, 280px);will-change:transform;position:absolute;bottom:-12%;right:0}.timeline,.decisions{padding-block:clamp(6rem,12vw,9rem) 0}.timeline__list,.decisions__list{margin-top:3rem}.timeline__row,.decisions__row{gap:.5rem 2.5rem;padding-block:1.5rem;display:grid;position:relative}.timeline__row{grid-template-columns:minmax(0,13rem) minmax(0,1fr) minmax(0,1.2fr)}.decisions__row{grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);padding-block:2rem}.tl-rule{background:var(--line);transform-origin:0;height:1px;position:absolute;inset:0 0 auto}.timeline__row h3,.decisions__row h3{letter-spacing:-.02em;font-size:1.375rem;font-stretch:104%;line-height:1.2}.decisions__row h3{font-size:clamp(1.375rem,2vw,1.75rem)}.timeline__date{color:var(--accent-ink);font-variant-numeric:tabular-nums;padding-top:.25rem;font-weight:550}.timeline__note,.decisions__row p{max-width:58ch;color:var(--ink-2)}.case-rows{padding-block:clamp(6rem,12vw,9rem)}.case-rows .decisions__row h3{color:var(--accent-ink)}.arch{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);align-items:start;gap:3rem clamp(2rem,6vw,6rem);padding-block:clamp(6rem,12vw,9rem) 0;display:grid}.arch__title{grid-column:1/-1}.arch__intro{position:sticky;top:7rem}.arch__intro .project__lede{margin-top:0}.arch__diagram{margin:0}.arch__chain{gap:2.25rem;display:grid}.arch__node{background:var(--bg);box-shadow:inset 0 0 0 1px var(--line);border-radius:14px;gap:.25rem;padding:1.125rem 1.375rem;display:grid;position:relative}.arch__chain .arch__node:not(:last-child):after{content:"";background:var(--ink);transform-origin:top;width:1.5px;height:2.25rem;transform:scaleY(var(--grow,1));position:absolute;top:100%;left:2rem}.arch__node strong{font-size:1.125rem;font-weight:650;font-stretch:106%}.arch__node span{color:var(--ink-2);font-size:.9375rem}.arch__chain .arch__node:last-child{box-shadow:inset 0 0 0 1.5px var(--ink)}.arch__fork{background:var(--ink);transform-origin:top;width:1.5px;height:2.25rem;margin-left:2rem;display:block}.arch__sources{border-top:1.5px solid var(--ink);grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;padding-top:1.25rem;display:grid}.arch__node--source{padding:1rem 1.125rem}.stack{padding-block:clamp(6rem,12vw,9rem) 0}.stack__title{font-size:1.75rem;font-stretch:106%}.stack__list{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem clamp(2rem,6vw,6rem);margin-top:2rem;display:grid}.stack__list div{border-top:1px solid var(--line);padding-top:1rem}.stack__list dt{font-weight:650}.stack__list dd{color:var(--ink-2);margin-top:.25rem}.stack__back{margin-top:3.5rem}.stack__back svg{width:1rem;height:1rem}@media (width<=1080px){.timeline__row{grid-template-columns:minmax(0,11rem) minmax(0,1fr)}.timeline__note{grid-column:2}.arch__sources{grid-template-columns:minmax(0,1fr)}}@media (width<=899px){.case-hero,.case-web__head,.arch,.decisions__row,.stack__list{grid-template-columns:minmax(0,1fr)}.case-hero{min-height:0;padding-top:6.5rem}.fan{height:440px}.fan__item--center{--device-w:190px}.fan__item--left,.fan__item--right{--device-w:150px}.arch__intro{position:static}.gallery__viewport{scroll-snap-type:x mandatory;scrollbar-width:none;overflow-x:auto}.gallery__item{scroll-snap-align:start;--device-w:64vw}.case-web__stage{padding-right:22%}.case-web__phone{--device-w:34vw;bottom:-18%}.timeline__row{grid-template-columns:minmax(0,1fr);gap:.25rem}.timeline__note{grid-column:auto}}
