.proc{display:flex;flex-direction:column;gap:.6rem;max-width:34rem;padding:clamp(1.5rem,6vh,4rem) 0}.proc-head{color:var(--ink);font-size:var(--text-h3);font-weight:500;letter-spacing:-.01em}.proc-rows>li{font-size:.9375rem;line-height:1.45;padding:.3rem 0}.proc-rows>li:before{top:1.05em}.proc-sq{display:inline-block;height:.6rem;margin-right:.6rem;transition:background-color var(--dur) var(--ease-out);vertical-align:.05em;width:.6rem}.proc-label{color:var(--ink);font-weight:500}.proc-rows .is-reading .proc-label,.proc-rows .is-working .proc-label{color:var(--ink-2)}.proc-rows .is-error .proc-label{color:var(--down)}.proc-foot,.proc-note{color:var(--ink-3)}.proc-foot{font-size:var(--text-body-sm)}.proc-dots:after{animation:procDots 1s steps(3) infinite;content:"…";display:inline-block;overflow:hidden;vertical-align:bottom;width:1em}@keyframes procDots{0%{width:0}to{width:1em}}.state{display:flex;flex-direction:column;gap:.6rem;max-width:40rem;padding:clamp(1.25rem,4vh,2.5rem) 0}.state.is-compact{padding:.75rem 0}.state-head{color:var(--ink);font-size:var(--text-h3);font-weight:500;letter-spacing:-.01em}.state-rows>li{font-size:.9375rem;line-height:1.45;padding:.3rem 0}.state-rows>li:before{top:1.05em}.state-rows .mute{color:var(--ink-3)}.state-out{color:var(--ink);font-weight:500}.state-out.is-error{color:var(--down)}.state-retry{color:var(--ink-2);font-family:var(--font-mono);font-size:var(--text-micro);height:2.5rem;margin-left:1.6rem;padding:0 .4rem;width:-webkit-fit-content;width:fit-content}.state-retry:focus-visible,.state-retry:hover{color:var(--ink);outline:none}.state-action{margin-left:1.6rem}@media (prefers-reduced-motion:reduce){.proc-dots:after{animation:none;width:1em}}.case-eyebrow{color:var(--ink-3);font-family:var(--font-mono);font-size:var(--text-micro)}.roster{padding-bottom:var(--space-section);padding-top:clamp(2rem,6vh,4rem)}.roster-head{margin-bottom:clamp(3rem,10vh,7rem);text-align:center}.roster-head,.roster-title{align-items:center;display:flex;flex-direction:column;gap:.75rem}.roster-title{font-weight:400}.roster-intro{color:var(--ink-2);font-size:var(--text-body);max-width:38ch}.start-project{align-items:center;display:flex;flex-direction:column;gap:.5rem;margin-top:clamp(4rem,12vh,8rem);text-align:center}.start-project__line{color:var(--ink);font-size:var(--text-h1);font-weight:500;letter-spacing:var(--tracking-heading);line-height:1.05}.start-project:focus-visible .start-project__line,.start-project:hover .start-project__line{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.15em}.start-project:focus-visible{outline:none}.start-project.is-case{align-items:flex-start;margin-top:clamp(2.5rem,8vh,4rem);text-align:left}.credits{gap:clamp(2rem,6vh,4rem)}.credit,.credits{display:flex;flex-direction:column}.credit{align-items:center;gap:.75rem;position:relative}.credit-line{grid-gap:2rem;align-items:baseline;display:grid;gap:2rem;grid-template-columns:minmax(0,1fr) minmax(0,1fr);width:100%}.credit-role{color:var(--ink-3);font-family:var(--font-mono);font-size:var(--text-micro);text-align:right}.credit-name{display:flex;flex-direction:column;gap:.25rem;min-width:0}.credit-title{color:var(--ink);font-size:var(--text-h1);font-weight:500;letter-spacing:var(--tracking-heading);line-height:1.05;width:-webkit-fit-content;width:fit-content}.credit-for{color:var(--ink-3);font-size:var(--text-body-sm)}.credit-line:focus-visible .credit-title,.credit-line:hover .credit-title{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.15em}.credit-line:focus-visible{outline:none}.credit-tagline{color:var(--ink-2);font-size:var(--text-body-sm);max-width:44ch;text-align:center}.credit-frame,.credit-tagline{opacity:0;transition:opacity var(--dur) var(--ease-out)}.credit-frame{pointer-events:none;position:absolute;right:0;top:50%;transform:translateY(-50%);width:min(22rem,26vw);z-index:1}.credit-frame img{display:block;height:auto;width:100%}.credit.is-active .credit-frame,.credit.is-active .credit-tagline,.credit:focus-within .credit-frame,.credit:focus-within .credit-tagline{opacity:1}.credits:has(.is-active) .credit:not(.is-active) .credit-title{color:var(--ink-3)}.case{display:flex;flex-direction:column;gap:2rem;padding-bottom:var(--space-section);padding-top:1.5rem}.case-back{align-items:center;align-self:flex-start;color:var(--ink-2);display:inline-flex;font-size:var(--text-body-sm);gap:.375rem;height:2.75rem;margin-left:-.375rem;padding:0 .375rem}.case-back:hover{color:var(--ink)}.case-open{display:flex;flex-direction:column;gap:1rem;max-width:60rem}.case-statement{text-wrap:balance;color:var(--ink-2);font-size:var(--text-h2);line-height:1.35;max-width:34ch}.case-hero{background:var(--surface);margin:0}.case-file{grid-gap:3rem;display:grid;gap:3rem;margin-top:2rem}@media (min-width:960px){.case-file{gap:5rem;grid-template-columns:15rem minmax(0,1fr)}.case-facts{align-self:start;position:-webkit-sticky;position:sticky;top:calc(var(--topbar-h) + 2rem)}}.case-facts{display:flex;flex-direction:column;gap:2rem}.case-facts dl>div{grid-gap:.75rem;display:grid;font-size:var(--text-body-sm);gap:.75rem;grid-template-columns:5.5rem minmax(0,1fr);padding:.3rem 0}.case-facts dt{color:var(--ink-3);font-family:var(--font-mono);font-size:var(--text-micro);padding-top:.2em}.case-facts dd{color:var(--ink);overflow-wrap:anywhere}.case-palette{gap:.75rem}.case-body,.case-palette{display:flex;flex-direction:column}.case-body{gap:clamp(3rem,8vh,5rem);min-width:0}.case-prose{color:var(--ink-2);line-height:1.65;max-width:62ch;white-space:pre-line}.case-section{display:flex;flex-direction:column;gap:1rem}.case-media{margin-top:.75rem}.case-logos{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(10rem,1fr))}.case-next{border-top:1px solid var(--line-strong);display:flex;flex-direction:column;gap:.5rem;margin-top:clamp(3rem,10vh,6rem);padding-top:2rem}.case-next:hover .text-h1{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.15em}@media (hover:none),(max-width:760px){.credit-frame{opacity:1;order:-1;position:static;transform:none;width:min(11rem,44vw)}.credit-tagline{opacity:1}.credits:has(.is-active) .credit:not(.is-active) .credit-title{color:var(--ink)}}@media (max-width:760px){.credit-line{gap:.375rem;grid-template-columns:1fr}.credit-line,.credit-role{text-align:center}.credit-name{align-items:center}}@media (prefers-reduced-motion:reduce){.credit-frame,.credit-tagline{transition:none}}.xlink{align-items:baseline;color:var(--ink);display:inline-flex;flex-wrap:wrap;font-size:var(--text-body-sm);font-weight:500;gap:0 .1rem;max-width:100%;padding:.35rem 0;width:-webkit-fit-content;width:fit-content}.xlink:focus-visible,.xlink:hover{outline:none;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}.xlink-sq{align-self:center;background:var(--ink);display:inline-block;flex:none;height:.5rem;margin-right:.55rem;width:.5rem}.xlink-note{color:var(--ink-3);font-family:var(--font-mono);font-size:var(--text-micro);font-weight:400}.xlinks{display:flex;flex-direction:column;gap:.5rem}.xlinks-head{color:var(--ink-3);font-family:var(--font-mono);font-size:var(--text-micro)}.xlinks .tree-rows>li{padding:.1rem 0}.xlinks .tree-rows>li:before{top:1.1em}.subject{overflow-x:clip;padding-bottom:var(--space-section)}.subject-body{display:flex;flex-direction:column}.subject-scene{padding:clamp(4rem,11vh,7rem) 0}.subject-line{text-wrap:balance;font-size:var(--text-h1);font-weight:500;letter-spacing:-.02em;line-height:1.12;max-width:24ch}.subject-open{align-items:center;display:flex;min-height:calc(92dvh - var(--topbar-h));overflow:hidden;position:relative}.subject-bloom{animation:subjectBloom 1.2s var(--ease-out) both,subjectDrift 22s var(--ease-in-out) 1.2s infinite alternate;background:radial-gradient(38% 42% at 18% 80%,var(--bloom-orange) 0,#0000 70%),radial-gradient(44% 48% at 42% 66%,var(--bloom-coral) 0,#0000 70%),radial-gradient(40% 40% at 70% 50%,var(--bloom-pink) 0,#0000 70%),radial-gradient(42% 44% at 62% 22%,var(--bloom-pill) 0,#0000 70%),radial-gradient(50% 50% at 30% 18%,var(--bloom-peach) 0,#0000 70%),var(--bloom-violet);filter:blur(70px) saturate(1.05);inset:-25%;position:absolute}@keyframes subjectBloom{0%{opacity:0;transform:scale(1.08)}}@keyframes subjectDrift{to{transform:translate3d(2.5%,-2%,0) scale(1.05)}}.subject-open-inner{color:#141514;display:flex;flex-direction:column;gap:1.75rem;margin:0 auto;max-width:80rem;max-width:var(--container,80rem);padding:4rem var(--gutter);position:relative;width:100%}.subject-eyebrow,.subject-facts{color:#141514cc;font-family:var(--font-mono);font-size:var(--text-micro)}.subject-statement{text-wrap:balance;font-size:var(--text-display);font-weight:500;letter-spacing:-.03em;line-height:1.02;max-width:22ch}.subject-statement .sweep{animation:sweep .52s var(--ease-out) both;animation-delay:calc(.3s + var(--i)*60ms);display:inline-block;white-space:pre}@keyframes sweep{0%{color:#fff;filter:blur(6px);opacity:0;transform:translateY(.12em)}}.subject-facts{display:flex;flex-direction:column;gap:.4rem}.subject-actions{margin-top:-.5rem}.subject-x{display:inline-block;font-family:var(--font-mono);font-size:var(--text-body-sm);margin-left:-.3rem;padding:.2rem .3rem}.subject-x,.subject-x:before{color:#141514}.subject-x:focus-visible,.subject-x:hover{outline:none;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.subject-open-prose{color:#141514e0;display:flex;flex-direction:column;font-size:var(--text-body);gap:.75em;line-height:1.6;max-width:52ch}.subject-roles{align-items:center;display:flex;flex-direction:column;gap:clamp(2.5rem,7vh,4rem);text-align:center}.roles-braces{align-items:baseline;display:inline-flex;font-size:var(--text-h1);font-weight:500;gap:.35em;letter-spacing:-.02em;position:relative}.roles-word{color:var(--ink-3);padding:0 .1em;transition:color var(--dur) var(--ease-out)}.roles-word.is-on,.roles-word:hover{color:var(--ink)}.roles-word:focus-visible{outline:none;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.18em}.roles-dot{color:var(--ink-3)}.roles-text{color:var(--ink-2);display:flex;flex-direction:column;font-size:var(--text-body);gap:1em;line-height:1.7;max-width:58ch;min-height:14em;text-align:left}.roles-text p:first-child{color:var(--ink);font-size:var(--text-h3);line-height:1.5}.tree-head{font-size:var(--text-h2);font-weight:500;letter-spacing:-.015em;margin-bottom:1.25rem}.tree-rows>li{font-size:.9375rem;line-height:1.45;padding:.5rem 0}.tree-rows>li:before{top:1.18em}.tree-status{display:inline-block;height:.6rem;margin-right:.6rem;vertical-align:.05em;width:.6rem}.tree-name{color:var(--ink);font-weight:500}.tree-end,.tree-note{color:var(--ink-3)}.tree-end{font-size:var(--text-body-sm)}.tree-end:before{display:none}.is-wait{opacity:0}.subject-practice{max-width:46rem}.subject-clients{grid-gap:3rem;align-items:center;display:grid;gap:3rem}@media (min-width:960px){.subject-clients{gap:5rem;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)}}.client-line{display:inline-block;margin-left:-.35rem;padding:.15rem .35rem}.client-line:hover .tree-name{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.clients-stack{height:clamp(18rem,44vh,28rem);perspective:1400px;position:relative}.stack-card{aspect-ratio:16/10;background:var(--surface);box-shadow:0 1px 0 #1415140f,0 18px 40px -24px #14151459;left:6%;opacity:calc(1 - min(var(--d), 6)*.14);overflow:hidden;position:absolute;top:50%;transform:translateY(-50%) translateX(calc(min(var(--d), 5)*2.4rem)) translateZ(calc(min(var(--d), 5)*-6rem)) rotateY(calc(min(var(--d), 1)*-18deg));transform-origin:left center;transition:transform .42s var(--ease-out),opacity .42s var(--ease-out);width:70%}.stack-card>img{display:block;height:100%;object-fit:cover;width:100%}.stack-logo{background:var(--surface);display:grid;inset:0;place-items:center;position:absolute}.stack-logo img{max-height:40%;max-width:40%;object-fit:contain}.stack-name{display:grid;font-size:var(--text-h2);font-weight:500;inset:0;place-items:center;position:absolute}.stack-label{bottom:-1.75rem;color:var(--ink-3);font-family:var(--font-mono);font-size:var(--text-micro);left:0;opacity:0;position:absolute;transition:opacity var(--dur) var(--ease-out)}.stack-card.is-front{overflow:visible}.stack-card.is-front .stack-label{opacity:1}.stack-card.is-front .stack-logo,.stack-card.is-front .stack-name,.stack-card.is-front>img{overflow:hidden}.subject-held{display:flex;flex-direction:column;gap:clamp(2.5rem,6vh,4rem)}.faces{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fill,minmax(3.25rem,1fr));max-width:60rem}.face{--handle-gap:3px;aspect-ratio:1;display:block;position:relative}.face img,.face-dot,.face-initial{height:100%;inset:0;position:absolute;width:100%}.face img{object-fit:cover;opacity:0;transform:scale(.6);transition:opacity var(--dur) var(--ease-out),transform var(--dur) var(--ease-out)}.face-initial{background:var(--surface-2);color:var(--ink-2);display:grid;font-family:var(--font-mono);font-size:var(--text-micro);opacity:0;place-items:center;text-transform:lowercase;transition:opacity var(--dur) var(--ease-out)}.face-dot{border-radius:50%;transform:scale(.5);transition:transform var(--dur) var(--ease-out),opacity var(--dur) var(--ease-out),border-radius var(--dur) var(--ease-out)}.face.is-seen .face-dot{animation:faceDot var(--dur-slow) var(--ease-out) both;animation-delay:calc(var(--i)*18ms)}.face.is-seen .face-initial,.face.is-seen img{opacity:1;transform:none;transition-delay:calc(.5s + var(--i)*18ms)}@keyframes faceDot{0%{opacity:0;transform:scale(.2)}60%{border-radius:50%;opacity:1;transform:scale(.5)}to{border-radius:0;opacity:0;transform:scale(1)}}.face-label{background:var(--bg);bottom:calc(100% + .6rem);color:var(--ink);font-family:var(--font-mono);font-size:var(--text-micro);left:50%;opacity:0;padding:.2rem .4rem;pointer-events:none;position:absolute;transform:translate(-50%,4px);transition:opacity var(--dur) var(--ease-out),transform var(--dur) var(--ease-out);white-space:nowrap;z-index:2}.face-label span{color:var(--ink-3)}.face:focus-visible .face-label,.face:hover .face-label{opacity:1;transform:translate(-50%)}.face:focus-visible{outline:none}.subject-coda{align-items:flex-start;gap:2rem}.subject-coda,.subject-coda-prose{display:flex;flex-direction:column}.subject-coda-prose{color:var(--ink-2);gap:1em;line-height:1.7;max-width:58ch}@media (max-width:640px){.subject-open{min-height:calc(86dvh - var(--topbar-h))}.subject-scene{padding:4.5rem 0}.roles-braces{font-size:var(--text-h2)}.clients-stack{height:15rem}.stack-card{width:82%}.faces{gap:.5rem;grid-template-columns:repeat(auto-fill,minmax(2.75rem,1fr))}.face-label{display:none}}@media (prefers-reduced-motion:reduce){.subject-bloom{animation:none}.stack-card{transition:none}.face-dot{display:none}.face img,.face-initial{opacity:1;transform:none;transition:none}.is-wait{opacity:1}}