@font-face{font-family:"Fraunces";font-style:normal;font-weight:400 600;font-stretch:normal;font-display:swap;src:url(/fonts/fraunces-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Fraunces";font-style:italic;font-weight:400 600;font-stretch:normal;font-display:swap;src:url(/fonts/fraunces-italic.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--ink:#160F0A;--ink2:#1D150F;--cream:#F5F1EC;--beige:#EFE5D6;--bone:#E9E1D6;--taupe:#8A7D70;--clay:#C89A6B;--orange:#E8873E;--green:#3FD680;
--td:#F7EFE6;--md:#C6B3A3;--ml:#8A7D70;--taupe-d:#6B5E52;--line-d:rgba(247,239,230,.12);--line-l:rgba(22,15,10,.14);
--serif:'Fraunces',Georgia,serif;--sans:'Inter',-apple-system,sans-serif}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:hidden}
body{background:var(--ink);color:var(--td);font-family:var(--serif);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;font-variation-settings:"opsz" 12}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}
::selection{background:var(--orange);color:#1a0f08}
:focus-visible{outline:2px solid var(--orange);outline-offset:3px}
.wrap{max-width:1180px;margin:0 auto;padding:0 clamp(20px,4vw,48px)}
h1,h2,h3{font-weight:400;line-height:1.02;letter-spacing:-.015em;font-variation-settings:"opsz" 144;text-wrap:balance}
.lede,.item p,.acad p,.final p{text-wrap:pretty}
.quote p,.changes li,.asks li{hanging-punctuation:first}
em{font-style:italic}
/* nav (shared with site) */
.topbar{position:sticky;top:0;z-index:100}
nav{background:rgba(18,14,9,.86);backdrop-filter:blur(16px);border-bottom:1px solid var(--line-d);font-family:var(--sans)}
.navrow{display:flex;justify-content:space-between;align-items:center;padding:16px clamp(20px,4vw,48px)}
.logo{font-family:var(--serif);font-weight:600;font-size:23px}
.logo .o{color:var(--orange)}.logo .d{color:var(--green)}
.navlinks{display:flex;gap:28px;align-items:center;font-size:14px;color:var(--md)}
.navlinks a:hover,.navlinks a.on{color:var(--td)}
.watch{font-size:11px;letter-spacing:.08em;color:var(--green)}
.watch::before{content:"●";margin-right:5px;animation:blink 1.6s infinite}
@keyframes blink{0%,100%{opacity:1}50%{opacity:.3}}
.btn{display:inline-block;background:var(--orange);color:#1a0f08;font-family:var(--sans);font-weight:600;font-size:14.5px;padding:14px 26px;border-radius:100px;border:0;cursor:pointer;transition:transform .35s cubic-bezier(.16,1,.3,1),box-shadow .35s}
.btn:hover{transform:translateY(-2px);box-shadow:0 16px 34px -14px rgba(232,135,62,.55)}
.btn span{display:inline-block;margin-left:6px;transition:transform .35s cubic-bezier(.16,1,.3,1)}
.btn:hover span{transform:translateX(4px)}
@media(max-width:760px){.navlinks a:not(.btn),.watch{display:none}}
/* chapter marker */
.chap{position:relative;height:34px;background:var(--ink);border-bottom:1px solid var(--line-d)}
.chap .wrap{display:flex;justify-content:space-between;align-items:center;height:34px}
.chap span{font-style:italic;font-size:14px;color:var(--md)}
.chap i{display:block;position:absolute;left:0;bottom:-1px;height:1px;width:0;background:var(--orange);transition:width .4s}

/* sections */
.part{padding:clamp(72px,10vw,150px) 0}
.part.light{background:var(--beige);color:var(--ink)}
.part.light .marker,.part.light .lede{color:var(--taupe-d)}
.marker{font-style:italic;font-size:17px;color:var(--md);margin-bottom:22px;font-variation-settings:"opsz" 12}
.part h2{font-size:clamp(40px,5.6vw,72px);max-width:16ch}
.lede{font-size:clamp(18px,1.7vw,21px);line-height:1.5;max-width:34em;color:var(--md)}
.part.light p{color:#3a2d28}
.row{display:grid;grid-template-columns:5fr 7fr;gap:clamp(32px,6vw,96px);align-items:start}
.row.flip{grid-template-columns:7fr 5fr}
@media(max-width:860px){.row,.row.flip{grid-template-columns:1fr;gap:34px}}
.row .text{max-width:34em}
.row .text p+p{margin-top:16px}
/* mounted screenshots */
.mount{border:1px solid var(--line-d);border-radius:6px;overflow:hidden;background:var(--ink2);box-shadow:0 60px 100px -50px rgba(0,0,0,.9)}
.part.light .mount{border-color:var(--line-l);box-shadow:0 50px 90px -50px rgba(22,15,10,.45)}
.mount img{width:100%;aspect-ratio:16/10;object-fit:cover;object-position:top}
.ph{width:100%;border-radius:30px;padding:6px;background:#0f0a06;border:1px solid var(--line-d);box-shadow:0 40px 80px -40px rgba(0,0,0,.9)}
.ph::before{content:"";display:block;height:26px;border-radius:24px 24px 0 0;background:var(--sb,#F4EBDD)}
.ph img{border-radius:0 0 24px 24px;width:100%;aspect-ratio:390/818;object-fit:cover;object-position:top}
.part.light .ph{background:#1a1310;border-color:transparent;box-shadow:0 40px 80px -40px rgba(22,15,10,.5)}
/* hero */
.hero{min-height:calc(100vh - 95px);display:flex;align-items:center;padding:clamp(60px,8vw,110px) 0 clamp(60px,8vw,110px);position:relative}
.hero .wrap{width:100%}
.scrollcue{position:absolute;left:clamp(20px,4vw,48px);bottom:26px;font-style:italic;color:var(--ml);font-size:15px}
@media(max-height:620px){.hero{min-height:0}.scrollcue{display:none}}
.band{padding:0 0 clamp(60px,8vw,120px);overflow:hidden}
.wrap.wide{max-width:1400px}
.hero h1{font-size:clamp(44px,7.4vw,104px);max-width:12ch}
.hero .six{font-size:clamp(22px,2.6vw,34px);line-height:1.35;margin-top:38px;max-width:30ch;font-variation-settings:"opsz" 30}
.hero .six s{text-decoration:none;position:relative;color:var(--md)}
.hero .six s::after{content:"";position:absolute;left:0;right:0;top:54%;height:1.5px;background:var(--md);transform:scaleX(0);transform-origin:left}
.hero .six b{font-weight:400;color:var(--orange);opacity:0}
.js .hero.go .six s::after{animation:strike .5s cubic-bezier(.16,1,.3,1) forwards}
.js .hero.go .six b{animation:appear .9s cubic-bezier(.16,1,.3,1) 1.9s forwards}
.six s:nth-of-type(1)::after{animation-delay:.3s}.six s:nth-of-type(2)::after{animation-delay:.55s}.six s:nth-of-type(3)::after{animation-delay:.8s}.six s:nth-of-type(4)::after{animation-delay:1.05s}.six s:nth-of-type(5)::after{animation-delay:1.3s}.six s:nth-of-type(6)::after{animation-delay:1.55s}
@keyframes strike{to{transform:scaleX(1)}}
@keyframes appear{to{opacity:1}}
html.rm .hero .six s::after{transform:scaleX(1)}html.rm .hero .six b{opacity:1}
.hero .meta{margin-top:30px;font-style:italic;color:var(--md);font-size:17px}
.hero .meta .live{color:var(--green);font-style:normal;margin-right:8px}
.hero-art{position:relative;margin-top:0;padding-right:clamp(70px,12%,160px)}
.hero-art .mount img{will-change:transform;transition:transform .1s linear}
.hero-art .ph{position:absolute;right:0;bottom:-8%;width:clamp(140px,22%,250px)}

@media(max-width:600px){.hero-art{padding-right:0;padding-bottom:40px}.hero-art .ph{width:120px;bottom:0;right:8px}}
/* brief spread */
.brief{display:grid;grid-template-columns:4fr 7fr;gap:clamp(32px,6vw,96px);margin-top:clamp(40px,5vw,72px);align-items:start}
@media(max-width:860px){.brief{grid-template-columns:1fr;gap:40px}}
.portrait{margin:0;max-width:420px}
.portrait img{width:100%;aspect-ratio:9/11;object-fit:cover;object-position:center 30%;border-radius:6px;box-shadow:0 50px 90px -50px rgba(22,15,10,.5)}
.portrait figcaption{margin-top:14px;font-style:italic;color:var(--taupe-d);font-size:15.5px}
.marks{list-style:none;max-width:34em}
.marks li{padding:11px 0;border-top:1px solid var(--clay);font-size:16px;line-height:1.45;color:#2b1f19}
.marks li:last-child{border-bottom:1px solid var(--clay)}
.asks{list-style:none;counter-reset:a}
.asks li{counter-increment:a;position:relative;padding:16px 0 16px 60px;border-top:1px solid var(--clay);font-size:clamp(17px,1.6vw,20px);line-height:1.4;color:#2b1f19}
.asks li::before{content:counter(a);position:absolute;left:0;top:19px;font-style:italic;color:var(--taupe-d);font-size:17px}
.asks q{display:inline}
.asks li:last-child{border-bottom:1px solid var(--clay)}
.asks q{font-style:italic}.asks q::before{content:"‘"}.asks q::after{content:"’"}
.asks-h{font-size:clamp(24px,2.4vw,30px);margin-bottom:14px;font-variation-settings:"opsz" 60}
.acad{margin-top:44px;max-width:34em}
.acad p{color:#3a2d28;font-size:17px}
.acad p+p{margin-top:10px}
.acad .next{margin-top:18px;font-style:italic;color:var(--taupe-d);font-size:15.5px}
/* slider */
.cmp{position:relative;border-radius:6px;overflow:hidden;border:1px solid var(--line-d);background:var(--ink2);box-shadow:0 60px 100px -50px rgba(0,0,0,.9);user-select:none;touch-action:pan-y;aspect-ratio:16/10;margin-top:clamp(36px,5vw,60px)}
.cmp img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top}
.cmp .after{clip-path:inset(0 0 0 var(--x,50%))}
.cmp .handle{position:absolute;top:0;bottom:0;left:var(--x,50%);width:1px;background:var(--cream);pointer-events:none}
.cmp .handle i{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:46px;height:46px;border-radius:50%;background:var(--cream);color:var(--ink);display:grid;place-items:center;font-style:italic;font-size:15px;box-shadow:0 8px 24px rgba(0,0,0,.5)}
.cmp .tag{position:absolute;top:14px;font-style:italic;font-size:14px;padding:6px 12px;border-radius:100px;background:rgba(22,15,10,.7);backdrop-filter:blur(6px);color:var(--cream);pointer-events:none}
.cmp .tag.b{left:14px}.cmp .tag.a{right:14px}
.cmp input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;margin:0;-webkit-appearance:none;appearance:none}
.cmp-hint{font-style:italic;color:var(--ml);text-align:center;margin-top:14px;font-size:15px}
.cmp-m{display:none;aspect-ratio:390/726;max-width:320px;margin:36px auto 0;border-radius:28px;background:#0f0a06}
.cmp-m img{top:26px;height:calc(100% - 26px)}
.cmp-m .handle{top:26px}
@media(max-width:760px){#cmp{display:none}.cmp-m{display:block}}
/* build */
.build{display:grid;grid-template-columns:300px 1fr;gap:clamp(32px,6vw,96px);align-items:start;margin-top:clamp(40px,5vw,72px)}
.build .side{position:sticky;top:120px}
.build .side ol{list-style:none;counter-reset:b}
.build .side li{counter-increment:b;font-size:22px;color:var(--ml);padding:10px 0;border-top:1px solid var(--line-d);cursor:pointer;transition:color .35s;display:grid;grid-template-columns:40px 1fr;gap:10px;align-items:baseline}
.build .side li::before{content:counter(b,upper-roman);font-style:italic;font-size:15px}
.build .side li.on{color:var(--td)}
.build .side li small{grid-column:2;display:block;font-style:italic;font-size:14px;color:var(--md);max-height:0;overflow:hidden;opacity:0;transition:max-height .4s,opacity .4s}
.build .side li.on small{max-height:40px;opacity:1}
.deck{display:grid;gap:clamp(56px,8vw,120px)}
.item .mount,.item .pair{margin-bottom:28px}
.pair{display:flex;gap:22px;justify-content:center;padding:34px 24px 0;border:1px solid var(--line-d);border-radius:6px;background:var(--ink2);overflow:hidden}
.pair .ph{width:38%;max-width:170px;border-bottom-left-radius:0;border-bottom-right-radius:0;padding-bottom:0;margin-bottom:-6px}
.pair .ph img{aspect-ratio:390/594;border-bottom-left-radius:0;border-bottom-right-radius:0}
.item h3{font-size:clamp(28px,3vw,38px);margin-bottom:12px}
.item .ans{font-style:italic;color:var(--md);margin-bottom:12px;font-size:16px}
.item p{color:#e5d9cb;max-width:34em}
.item .more{margin-top:12px;max-width:34em}
.item .toggle{margin-top:12px;background:none;border:0;padding:0;cursor:pointer;font-family:var(--serif);font-style:italic;color:var(--orange);font-size:16px}
.item .toggle:focus-visible{outline:2px solid var(--orange);outline-offset:3px}
.item .more p+p{margin-top:10px}
.item .terms{margin-top:14px;font-style:italic;color:var(--md);font-size:16px;line-height:1.7}
.sync{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:12px;align-items:center;padding:40px 28px;border:1px solid var(--line-d);border-radius:6px;background:var(--ink2);margin-bottom:28px;text-align:center}
.sync div{font-size:19px}
.sync div small{display:block;font-style:italic;color:var(--md);font-size:15px;margin-top:2px}
.sync i{font-style:normal;color:var(--orange);font-size:24px}
@media(max-width:560px){.sync{grid-template-columns:1fr;gap:8px}.sync i{transform:rotate(90deg)}}
.inboxnote{padding:40px 28px;border:1px solid var(--line-d);border-radius:6px;background:var(--ink2);margin-bottom:28px;font-style:italic;color:var(--md);font-size:18px;line-height:1.6;max-width:none}
@media(max-width:860px){
 .build{grid-template-columns:minmax(0,1fr);gap:20px}
 .build .side{position:static;min-width:0;max-width:100%}
 .build .side ol{display:flex;gap:18px;overflow-x:auto;scrollbar-width:none;padding-bottom:8px;border-bottom:1px solid var(--line-d)}
 .build .side ol::-webkit-scrollbar{display:none}
 .build .side li{flex:0 0 auto;display:block;font-size:17px;font-style:italic;padding:6px 0;border:0;white-space:nowrap}
 .build .side li::before{display:none}.build .side li small{display:none}
 .deck{display:flex;align-items:flex-start;overflow-x:auto;scroll-snap-type:x mandatory;gap:20px;margin:0 -20px;padding:10px 20px 14px;scrollbar-width:none}
 .deck::-webkit-scrollbar{display:none}
 .item{flex:0 0 86vw;scroll-snap-align:center}
}
/* emails */
.mails{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(16px,2.5vw,32px);margin-top:clamp(40px,5vw,72px)}
@media(max-width:900px){.mails{grid-template-columns:repeat(2,1fr)}}
.mail figure{border:1px solid var(--line-d);border-radius:6px;overflow:hidden;background:#F5EEE5;height:320px;position:relative}
.mail figure img{width:100%}
.mail figure::after{content:"";position:absolute;left:0;right:0;bottom:0;height:84%;background:linear-gradient(180deg,rgba(245,238,229,0) 0%,rgba(245,238,229,.6) 30%,rgba(245,238,229,.94) 60%,#F5EEE5 100%);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);-webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 32%);mask-image:linear-gradient(180deg,transparent 0%,#000 32%)}
.mail .when{margin-top:14px;font-size:18px}
.mail .what{font-style:italic;color:var(--md);font-size:15px;margin-top:3px;line-height:1.5}
@media(max-width:600px){.mails{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:16px;margin:40px -20px 0;padding:0 20px 12px;scrollbar-width:none}.mails::-webkit-scrollbar{display:none}.mail{flex:0 0 78vw;scroll-snap-align:start}.mail figure{height:280px}}
/* pages strip */
.strip{display:flex;gap:clamp(16px,2.5vw,32px);margin-top:clamp(40px,5vw,72px);overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:12px}
.strip::-webkit-scrollbar{display:none}
.strip figure{flex:0 0 auto;width:172px;scroll-snap-align:start;margin:0}
.strip .ph{width:100%}
.strip figcaption{margin-top:12px;font-style:italic;color:var(--md);font-size:15px;text-align:center}
/* changed + timeline on cream */
.changes{list-style:none;margin-top:clamp(36px,5vw,64px);max-width:40em}
.changes li{padding:18px 0;border-top:1px solid var(--clay);font-size:clamp(17px,1.6vw,20px);line-height:1.45;color:#2b1f19}
.changes li:last-child{border-bottom:1px solid var(--clay)}
.changes li b{font-weight:400;font-style:italic;color:var(--taupe-d);display:block;font-size:16px;margin-bottom:4px}
.tline{margin-top:clamp(48px,6vw,80px);position:relative}
.tline .track{position:absolute;left:0;right:0;top:50%;height:1px;background:var(--clay)}
.tline .track i{display:block;height:100%;width:calc(var(--p)*100%);background:var(--ink);transition:width .15s linear}
.ms{list-style:none;display:grid;grid-template-columns:repeat(8,1fr);grid-template-rows:1fr 1fr;column-gap:14px;min-height:300px}
.ms li{position:relative;grid-column:var(--c);font-size:14.5px;line-height:1.4;color:#2b1f19;opacity:.35;transition:opacity .5s}
.ms li.on{opacity:1}
.ms li b{display:block;font-weight:400;font-style:italic;font-size:20px;color:var(--ink);margin-bottom:6px;font-variation-settings:"opsz" 30}
.ms li.up{grid-row:1;align-self:end;padding-bottom:30px}
.ms li.down{grid-row:2;align-self:start;padding-top:30px}
.ms li::before{content:"";position:absolute;left:0;width:9px;height:9px;border-radius:50%;background:var(--beige);border:1px solid var(--ink);transform:scale(0);transition:transform .45s cubic-bezier(.16,1,.3,1),background .3s}
.ms li.up::before{bottom:-5px}.ms li.down::before{top:-4px}
.ms li.on::before{transform:scale(1);background:var(--ink)}
.ms li.live::before{width:13px;height:13px;border-color:var(--orange)}
.ms li.live.on::before{background:var(--orange);box-shadow:0 0 0 6px rgba(232,135,62,.18)}
.ms li.live.up::before{bottom:-7px}.ms li.live.down::before{top:-6px}
.ms li.live b{color:var(--orange)}
@media(max-width:860px){
  .tline{padding-left:26px}
  .tline .track{left:4px;right:auto;top:0;bottom:0;width:1px;height:auto}
  .tline .track i{width:100%;height:calc(var(--p)*100%);transition:height .15s linear}
  .ms{display:block;min-height:0}
  .ms li,.ms li.up,.ms li.down{padding:0 0 26px 0;align-self:auto}
  .ms li::before,.ms li.up::before,.ms li.down::before{left:-26px;top:7px;bottom:auto;margin-left:0}
  .ms li.live::before,.ms li.live.up::before,.ms li.live.down::before{left:-28px;top:5px}
}
html.rm .tline .track i{width:100%}html.rm .ms li{opacity:1}html.rm .ms li::before{transform:scale(1);background:var(--ink)}
@media(max-width:860px){html.rm .tline .track i{height:100%}}
/* now */
.day{margin-top:clamp(40px,5vw,64px)}
.daylabel{font-style:italic;color:var(--md);font-size:17px}
.dayctl{position:relative;margin-top:22px;padding:14px 0 34px}
.dayctl::before{content:"";position:absolute;left:0;right:0;top:22px;height:1px;background:var(--line-d)}
#dayRange{-webkit-appearance:none;appearance:none;width:100%;height:18px;background:transparent;margin:0;cursor:pointer;position:relative;z-index:2}
#dayRange::-webkit-slider-runnable-track{height:1px;background:transparent}
#dayRange::-moz-range-track{height:1px;background:transparent}
#dayRange::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;border-radius:50%;background:var(--orange);margin-top:-8.5px;box-shadow:0 0 0 6px rgba(232,135,62,.18)}
#dayRange::-moz-range-thumb{width:18px;height:18px;border:0;border-radius:50%;background:var(--orange);box-shadow:0 0 0 6px rgba(232,135,62,.18)}
#dayRange:focus-visible{outline:none}
#dayRange:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 3px var(--ink),0 0 0 5px var(--orange)}
.ticks{position:absolute;left:0;right:0;top:40px;height:20px}
.ticks b{position:absolute;left:calc(var(--i)*(100% - 18px)/5 + 9px);transform:translateX(-50%);font-weight:400;font-style:italic;font-size:14px;color:var(--ml);transition:color .3s;white-space:nowrap}
.ticks b.on{color:var(--td)}
.ticks b:first-child{transform:translateX(-9px)}.ticks b:last-child{transform:translateX(calc(-100% + 9px))}
.moments{position:relative;margin-top:26px;min-height:380px}
.moment{position:absolute;inset:0;display:grid;grid-template-columns:1fr 300px;gap:clamp(28px,5vw,72px);align-items:start;opacity:0;pointer-events:none;transition:opacity .45s;transform:translateY(6px)}
.moment.on{opacity:1;pointer-events:auto;transform:none;transition:opacity .45s,transform .6s cubic-bezier(.16,1,.3,1)}
.mtime{font-size:clamp(44px,5vw,68px);line-height:1;font-variation-settings:"opsz" 144;letter-spacing:-.02em}
.moment h3{font-size:clamp(24px,2.6vw,32px);margin-top:14px;font-variation-settings:"opsz" 60}
.moment p{color:#e5d9cb;max-width:32em;margin-top:12px;font-size:17px}
.moment .mm{font-style:italic;color:var(--orange);margin-top:16px}
.moment .ph{width:220px;justify-self:end}
.moment .ph img{aspect-ratio:390/560}
.mshot{margin:0;justify-self:end;width:300px;border:1px solid var(--line-d);border-radius:6px;overflow:hidden;background:#F5EEE5;height:320px;position:relative}
.mshot img{width:100%}
.mshot::after{content:"";position:absolute;left:0;right:0;bottom:0;height:70%;background:linear-gradient(180deg,rgba(245,238,229,0),rgba(245,238,229,.9) 60%,#F5EEE5);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);-webkit-mask-image:linear-gradient(180deg,transparent,#000 40%);mask-image:linear-gradient(180deg,transparent,#000 40%)}
@media(max-width:760px){.ticks b{font-size:12px}.ticks b:nth-child(even){top:16px}.moments{min-height:520px}.moment{grid-template-columns:1fr;gap:22px}.moment .ph,.mshot{justify-self:start;width:170px;height:auto}.mshot{height:200px;width:220px}.mtime{font-size:40px}}
.quote{margin:clamp(56px,7vw,110px) 0 clamp(40px,5vw,72px)}
.quote p{max-width:24em;font-size:clamp(23px,2.5vw,33px);line-height:1.3;font-variation-settings:"opsz" 60;text-wrap:pretty}
.quote cite{display:block;font-style:italic;color:var(--md);margin-top:22px;font-size:17px}
.planline{font-size:clamp(22px,2.6vw,32px);line-height:1.3;max-width:28em;margin-top:28px;font-variation-settings:"opsz" 60}
.planline em{color:var(--orange)}
.final{padding:clamp(80px,12vw,170px) 0;text-align:left}
.final h2{font-size:clamp(40px,6vw,80px);max-width:14ch}
.final p{max-width:34em;color:var(--md);font-size:19px;margin:22px 0 32px}
.final .cta{display:flex;gap:26px;align-items:center;flex-wrap:wrap}
.final .alt{font-style:italic;color:var(--td);border-bottom:1px solid var(--line-d);padding-bottom:2px}
footer{border-top:1px solid var(--line-d);padding:34px 0 56px;color:var(--md);font-size:14px;font-family:var(--sans)}
.footrow{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
footer a:hover{color:var(--orange)}
html.rm *{animation:none!important;transition:none!important}

/* ---------- shared additions (v2, Oct 2026) ---------- */
.caption{font-style:italic;color:var(--md);font-size:15px;margin-top:-14px;margin-bottom:22px}
.part.light .caption{color:var(--taupe-d)}
/* ledger: what each old platform became */
.ledger{list-style:none;margin-top:clamp(40px,5vw,72px);border-top:1px solid var(--line-d)}
.ledger li{display:grid;grid-template-columns:minmax(150px,260px) 40px 1fr;gap:clamp(14px,3vw,40px);align-items:baseline;padding:clamp(22px,3vw,34px) 0;border-bottom:1px solid var(--line-d)}
.ledger .was{font-size:clamp(26px,3.2vw,44px);line-height:1;color:var(--md);font-variation-settings:"opsz" 144;position:relative;justify-self:start}
.ledger .was::after{content:"";position:absolute;left:-2px;right:-2px;top:55%;height:1.5px;background:var(--md);transform:scaleX(0);transform-origin:left;transition:transform .7s cubic-bezier(.16,1,.3,1)}
.ledger li.on .was::after,html.rm .ledger .was::after{transform:scaleX(1)}
.ledger .arw{color:var(--orange);font-size:22px}
.ledger .now{font-size:clamp(20px,2vw,26px);line-height:1.25;font-variation-settings:"opsz" 30}
.ledger .now small{display:block;font-size:16px;line-height:1.55;color:var(--md);margin-top:8px;font-variation-settings:"opsz" 12;max-width:34em}
@media(max-width:700px){.ledger li{grid-template-columns:1fr;gap:6px}.ledger .arw{display:none}.ledger .now{margin-top:6px}}
.crosslink{color:var(--orange);font-style:italic;border-bottom:1px solid rgba(232,135,62,.4)}
.crosslink:hover{border-color:var(--orange)}

/* ---------- case studies index ---------- */
.idx-hero{padding:clamp(80px,11vw,160px) 0 clamp(40px,6vw,80px)}
.idx-hero h1{font-size:clamp(48px,8vw,116px);max-width:11ch}
.idx-hero .lede{margin-top:28px}
.study{padding:clamp(56px,8vw,120px) 0;border-top:1px solid var(--line-d)}
.study .num{font-style:italic;color:var(--md);font-size:17px;display:flex;gap:18px;align-items:baseline;flex-wrap:wrap}
.study .num b{font-weight:400;color:var(--td)}
.study h2{font-size:clamp(40px,5.4vw,76px);margin-top:18px;max-width:14ch}
.study .what{font-size:clamp(18px,1.7vw,21px);line-height:1.5;color:var(--md);max-width:30em;margin-top:22px}
.study .facts{list-style:none;margin-top:26px;display:flex;flex-wrap:wrap;gap:8px 26px;font-style:italic;color:var(--md);font-size:15.5px}
.study .facts li::before{content:"·";margin-right:10px;color:var(--orange)}
.study .facts li:first-child::before{content:none}
.study .read{display:inline-flex;gap:10px;align-items:baseline;margin-top:34px;font-size:clamp(20px,2vw,24px);border-bottom:1px solid var(--line-d);padding-bottom:6px;transition:border-color .3s,color .3s}
.study .read span{transition:transform .4s cubic-bezier(.16,1,.3,1);color:var(--orange)}
.study .read:hover{border-color:var(--orange)}.study .read:hover span{transform:translateX(6px)}
.study .art{position:relative;margin-top:clamp(40px,5vw,72px);padding-right:clamp(60px,10%,140px);display:block}
.study .art .mount img{transition:transform 1.2s cubic-bezier(.16,1,.3,1)}
.study .art:hover .mount img{transform:scale(1.025)}
.study .art .ph{position:absolute;right:0;bottom:-6%;width:clamp(130px,20%,230px)}
.study.flip .art{padding-right:0;padding-left:clamp(60px,10%,140px)}
.study.flip .art .ph{right:auto;left:0}
.study blockquote{margin-top:clamp(48px,6vw,80px);max-width:30em;font-size:clamp(20px,2vw,26px);line-height:1.35;font-variation-settings:"opsz" 60}
.study blockquote cite{display:block;font-style:italic;color:var(--md);font-size:16px;margin-top:14px}
@media(max-width:600px){.study .art{padding:0 0 34px!important}.study .art .ph{width:110px;bottom:0;right:8px!important;left:auto!important}}
.reveal{opacity:0;transform:translateY(24px);transition:opacity 1s cubic-bezier(.16,1,.3,1),transform 1s cubic-bezier(.16,1,.3,1)}
.reveal.in,html.rm .reveal,html:not(.js) .reveal{opacity:1;transform:none}
