/* Studio */
.prose em{font-style:normal;font-weight:700;color:var(--yuzu)}
.philo .prose{max-width:820px;margin-left:auto}
.person{gap:16px}
.person h3{font-size:clamp(34px,3.4vw,52px);font-weight:800;letter-spacing:-.045em}
/* monogram portrait: abstract, no photos */
.mono-portrait{--c:var(--yuzu);position:relative;width:clamp(120px,14vw,170px);aspect-ratio:1;border-radius:50%;margin-bottom:14px;overflow:hidden;background:radial-gradient(circle at 30% 25%,color-mix(in oklab,var(--c) 45%,#fff),var(--c) 55%,color-mix(in oklab,var(--c) 70%,var(--mocha-deep)));display:grid;place-items:center}
.mono-portrait--alt{--c:var(--mocha)}
.mono-portrait b{position:relative;font-size:clamp(56px,6vw,84px);font-weight:200;letter-spacing:-.06em;color:var(--paper);line-height:1}
.mono-portrait__ring{position:absolute;inset:12%;border-radius:50%;border:1px solid rgba(255,253,251,.5)}
.mono-portrait__dot{position:absolute;width:22%;aspect-ratio:1;border-radius:50%;background:var(--paper);opacity:.85;top:14%;right:14%;transition:transform .8s var(--ease)}
.person:hover .mono-portrait__dot{transform:translate(-160%,160%)}
.mono-portrait--alt .mono-portrait__dot{top:auto;bottom:14%;right:auto;left:14%;background:var(--peach)}
.person:hover .mono-portrait--alt .mono-portrait__dot{transform:translate(160%,-160%)}
/* timeline */
.tl{list-style:none;position:relative;max-width:1000px;counter-reset:tl}
.tl::before,.tl__prog{content:"";position:absolute;left:calc(var(--pad) + 9px);top:8px;width:1px}
.tl::before{bottom:8px;background:var(--line)}
.tl__prog{height:0;background:var(--yuzu)}
.tl__step{counter-increment:tl;position:relative;display:grid;grid-template-columns:130px 1fr;gap:6px 28px;padding:0 0 clamp(34px,4vw,54px) 40px}
.tl__step::before{content:"";position:absolute;left:4px;top:6px;width:11px;height:11px;border-radius:50%;background:var(--rice);box-shadow:0 0 0 1.5px var(--mocha);transition:background .4s,box-shadow .4s}
.tl__step.is-on::before{background:var(--yuzu);box-shadow:0 0 0 1.5px var(--yuzu),0 0 0 6px rgba(228,98,15,.18)}
.tl__when{color:var(--yuzu);padding-top:6px}
.tl__when::before{content:counter(tl,decimal-leading-zero) " · ";color:var(--ink-2)}
.tl__step h3{font-size:clamp(22px,2.2vw,32px);font-weight:600;letter-spacing:-.03em;line-height:1.1}
.tl__step p{grid-column:2;color:var(--ink-2);max-width:600px}
@media (max-width:640px){.tl__step{grid-template-columns:minmax(0,1fr);padding-left:32px}.tl__step h3,.tl__when{overflow-wrap:anywhere}.tl__step p{grid-column:1}}
.tl__cta{margin-top:10px}
@media (max-width:420px){.tl__cta .pill{white-space:normal}}
/* rules */
.rule__v{font-weight:200;font-size:clamp(34px,3.4vw,52px);letter-spacing:-.05em;line-height:1;color:var(--peach);transition:color .4s}
.rule h3{margin-top:18px}
.rules .card:hover .rule__v{color:var(--yuzu-hi)}
/* read further */
.further .row{grid-template-columns:70px minmax(0,1fr) minmax(0,1.6fr) auto}
.further .mono{display:inline-block;margin-bottom:6px;color:var(--ink)}
.further__a::after{content:"";position:absolute;inset:0}
.further .row__v{transition:transform .5s var(--ease)}
.further .row:hover .row__v{transform:translateX(6px)}
.further .row:focus-within{outline:2px solid var(--yuzu);outline-offset:4px;border-radius:8px}
.further__a:focus-visible{outline:0}
@media (max-width:860px){.further .row{grid-template-columns:40px 1fr auto}}
.band{text-decoration:none}
