*,:after,:before{box-sizing:border-box}#__next,body,html{padding:0;margin:0;height:100%;width:100%}a{text-decoration:none}@font-face{font-family:Hanken Grotesk;src:url(/fonts/HankenGrotesk-VariableFont_wght.ttf) format("truetype-variations");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Hanken Grotesk;src:url(/fonts/HankenGrotesk-Italic-VariableFont_wght.ttf) format("truetype-variations");font-weight:100 900;font-style:italic;font-display:swap}:root{--paper:#f8f7f4;--paper-warm:#f3f1ea;--paper-deep:#ece9e0;--ink:#1b1a16;--ink-80:rgba(27,26,22,.8);--ink-60:rgba(27,26,22,.58);--ink-40:rgba(27,26,22,.4);--ink-25:rgba(27,26,22,.25);--line:rgba(27,26,22,.14);--line-soft:rgba(27,26,22,.08);--mark:#c0492e;--mark-deep:#8f3320;--led:#5e9a57;--led-deep:#3e6e3a;--amber:#c47b2b;--serif:"Newsreader","Times New Roman",Georgia,serif;--sans:"Hanken Grotesk",Helvetica,Arial,sans-serif;--mono:"SF Mono","JetBrains Mono",Menlo,Consolas,monospace;--hand:"Caveat","Segoe Script",cursive;--gut:clamp(20px,4vw,56px);--header-h:68px;--ease:cubic-bezier(0.22,1,0.36,1);--ease-soft:cubic-bezier(0.4,0,0.2,1)}*{box-sizing:border-box}body,html{height:100%}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow:hidden;text-rendering:optimizeLegibility;text-transform:none}body:before{z-index:1;opacity:.45;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.5'/%3E%3C/svg%3E")}body:after,body:before{content:"";position:fixed;inset:0;pointer-events:none}body:after{z-index:0;background:radial-gradient(120% 80% at 80% -10%,rgba(192,73,46,.05),transparent 55%),radial-gradient(120% 90% at 0 110%,rgba(27,26,22,.045),transparent 55%)}::selection{background:var(--mark);color:var(--paper)}h1,h2,h3,h4,p{margin:0}.kicker{font-family:var(--sans);font-size:12px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-40)}.serif{font-family:var(--serif)}.ital{font-style:italic}.hand{font-family:var(--hand);font-weight:500}a{color:inherit}.scribble{position:relative;white-space:nowrap}.scribble svg{position:absolute;left:-2%;right:-2%;bottom:-.42em;width:104%;height:.5em;overflow:visible;pointer-events:none}.scribble svg path{fill:none;stroke:var(--mark);stroke-width:2.4;stroke-linecap:round;stroke-dasharray:320;stroke-dashoffset:320}.is-active .scribble svg path,.mode.active .scribble svg path{animation:draw .9s var(--ease) .3s forwards}@keyframes draw{to{stroke-dashoffset:0}}#shell{position:relative;z-index:2;height:100%}header.topbar{position:fixed;top:0;left:0;right:0;height:var(--header-h);z-index:60}.topbar-inner,header.topbar{display:flex;align-items:center}.topbar-inner{width:100%;max-width:1180px;margin:0 auto;padding:0 var(--gut);justify-content:space-between;height:100%}.brand{display:flex;align-items:center;gap:22px;text-decoration:none;cursor:pointer;background:none;border:0;padding:0;font:inherit;color:inherit}.brand .sig{font-family:var(--hand);font-weight:600;font-size:27px;line-height:1;color:var(--ink);border-bottom:1.5px solid var(--ink);padding-bottom:1px}.brand .loc{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--ink-60);letter-spacing:.01em}.stage{z-index:2}.mode,.stage{position:absolute;inset:0}.mode{padding-top:var(--header-h);overflow-y:auto;overflow-x:hidden;display:none;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--ink-25) transparent}.mode.active{display:block}@keyframes modeIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}.mode::-webkit-scrollbar{width:9px}.mode::-webkit-scrollbar-thumb{background:var(--ink-25);border-radius:9px;border:3px solid var(--paper)}.wrap{max-width:1180px;margin:0 auto;padding:0 var(--gut)}.section-foot{height:clamp(60px,12vh,140px)}@media (min-width:861px){body:not([data-mode=home]) .path-wrap,body:not([data-mode=home]) .wrap{padding-right:calc(var(--gut) + 178px)}}.mode-head{padding:clamp(40px,9vh,96px) 0 clamp(20px,4vh,40px)}.mode-head .kicker{display:block;margin-bottom:18px}.mode-head h2{font-family:var(--serif);font-weight:400;font-size:clamp(40px,7vw,92px);line-height:.98;letter-spacing:-.02em;max-width:16ch}.mode-head .lede{font-family:var(--serif);font-size:clamp(18px,2.1vw,23px);font-style:italic;color:var(--ink-60);margin-top:22px;max-width:46ch;line-height:1.5}.chip{font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:600;color:var(--ink-60);border:1px solid var(--line);border-radius:100px;padding:6px 13px;background:transparent;cursor:pointer;transition:all .25s var(--ease);white-space:nowrap}.chip:hover{border-color:var(--ink-40);color:var(--ink)}.chip.on{background:var(--ink);color:var(--paper);border-color:var(--ink)}[data-reveal]{opacity:0;transform:translateY(22px);transition:opacity .85s var(--ease),transform .85s var(--ease)}[data-reveal].in{opacity:1;transform:none}html:not(.js) .cp-photo,html:not(.js) .cp-text,html:not(.js) [data-reveal]{opacity:1!important;transform:none!important}@media (prefers-reduced-motion:reduce){*{animation-duration:1ms!important;transition-duration:1ms!important}}.dial{--base:clamp(212px,23vw,296px);--corner:0.58;--rgap:clamp(28px,7vw,120px);--rot:0deg;position:fixed;top:0;left:0;width:var(--base);height:var(--base);transform-origin:0 0;z-index:55;transition:transform .9s var(--ease),opacity .5s var(--ease);touch-action:none}body[data-mode=home] .dial{transform:translate(min(calc(100vw - var(--base) - var(--rgap)),calc(50vw + 534px - var(--base))),calc(27svh - var(--base) / 2 + 40px - var(--home-scroll, 0px)))}.dial.no-transition{transition:none!important}body:not([data-mode=home]) .dial{transform:translate(min(calc(100vw - var(--base) * var(--corner) - 20px),calc(50vw + 574px - var(--base) * var(--corner))),calc(100svh - var(--base) * var(--corner) - 20px)) scale(var(--corner));cursor:pointer}.dial:before{content:"";position:absolute;inset:-10%;border-radius:50%;background:radial-gradient(closest-side,var(--paper) 60%,hsla(45,22%,96%,0) 100%);opacity:0;transition:opacity .6s var(--ease);z-index:-1;pointer-events:none}body:not([data-mode=home]) .dial:before{opacity:.92}.dial-disc{position:absolute;left:50%;top:50%;width:79%;height:79%;transform:translate(-50%,-50%) rotate(var(--rot));transition:transform .6s var(--ease);border-radius:50%;cursor:-webkit-grab;cursor:grab}.dial.dragging .dial-disc{cursor:-webkit-grabbing;cursor:grabbing;transition:none}.dial-ring{position:absolute;inset:0;border-radius:50%;background:repeating-conic-gradient(from 0deg,#34322e 0deg 2deg,#15140f 2deg 4deg);box-shadow:0 34px 70px -26px rgba(20,19,15,.7),0 8px 20px -8px rgba(20,19,15,.5),inset 0 1px 1px hsla(0,0%,100%,.1)}.dial-face{background:radial-gradient(120% 120% at 38% 28%,#3a3833 0,#232220 45%,#131210 100%);box-shadow:inset 0 2px 6px hsla(0,0%,100%,.1),inset 0 -16px 32px rgba(0,0,0,.55),inset 0 0 0 1px rgba(0,0,0,.5)}.dial-deco,.dial-face{position:absolute;inset:7.5%;border-radius:50%}.dial-deco .dtick{position:absolute;left:50%;top:50%;transform-origin:0 0;width:1px;background:hsla(0,0%,100%,.16)}.dial-sheen{inset:7.5%;pointer-events:none;background:conic-gradient(from -40deg,hsla(0,0%,100%,.24) 0deg,rgba(0,0,0,.88) 100deg,hsla(0,0%,100%,.14) 185deg,rgba(0,0,0,.92) 285deg,hsla(0,0%,100%,.24) 1turn)}.dial-pointer,.dial-sheen{position:absolute;border-radius:50%}.dial-pointer{top:7%;width:7px;height:7px;background:#f6f3ea;box-shadow:0 0 5px hsla(0,0%,100%,.55),inset 0 0 1px rgba(0,0,0,.3);z-index:5}.dial-center,.dial-pointer{left:50%;transform:translate(-50%,-50%)}.dial-center{position:absolute;top:50%;width:30%;height:30%;border-radius:50%;pointer-events:none;background:radial-gradient(120% 120% at 40% 32%,#2c2a26,#0d0c0a 80%);box-shadow:inset 0 2px 4px hsla(0,0%,100%,.1),inset 0 -6px 14px rgba(0,0,0,.6),0 4px 12px rgba(0,0,0,.4);z-index:6;display:grid;place-items:center}.dial-center svg{width:52%;height:52%;transition:opacity .3s var(--ease)}.dial-center svg *{fill:none;stroke:var(--led);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.dial-icon{position:absolute;left:50%;top:50%;width:13%;height:13%;transform:translate(-50%,-50%);display:grid;place-items:center;cursor:pointer;z-index:4}.dial-icon svg{width:100%;height:100%}.dial-icon svg *{fill:none;stroke:hsla(45,23%,86%,.72);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;transition:stroke .35s var(--ease)}.dial-icon:hover svg *{stroke:#fff}.dial-icon.active svg *{stroke:var(--led);stroke-width:2}.dial-icon.active:after{content:"";inset:-42%;background:radial-gradient(closest-side,rgba(94,154,87,.5),transparent 72%);z-index:-1}.dial-dot,.dial-icon.active:after{position:absolute;border-radius:50%}.dial-dot{left:50%;top:50%;width:5px;height:5px;margin:-2.5px;background:rgba(20,19,15,.4);z-index:4;transition:background .35s var(--ease),box-shadow .35s var(--ease)}.dial-dot.active{background:var(--led);box-shadow:0 0 0 4px rgba(94,154,87,.18)}.dial-conn{transform-origin:0 0;height:1px;background:rgba(20,19,15,.22);z-index:2}.dial-conn,.dial-name{position:absolute;left:50%;top:50%}.dial-name{transform:translate(-50%,-50%);font-family:var(--sans);font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-60);white-space:nowrap;cursor:pointer;z-index:5;transition:color .35s var(--ease),opacity .5s var(--ease)}.dial-name:hover{color:var(--ink)}.dial-name.active{color:var(--led-deep)}body:not([data-mode=home]) .dial-conn,body:not([data-mode=home]) .dial-dot,body:not([data-mode=home]) .dial-name{opacity:0;pointer-events:none}.dial-bezel{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible;z-index:1}.dial-bezel .ring-band{fill:none;stroke:#0b0a08;stroke-width:6.8}.dial-bezel .ring-edge{fill:none;stroke-width:.5}.dial-bezel .ring-edge.out{stroke:rgba(0,0,0,.55)}.dial-bezel .ring-edge.in{stroke:hsla(0,0%,100%,.1)}.dial-bezel .bz-label{fill:#f1ede2;font-family:var(--sans);font-size:3.4px;font-weight:700;letter-spacing:.12em;dominant-baseline:central;cursor:pointer;pointer-events:auto;transition:fill .35s var(--ease)}.dial-bezel .bz-label:hover{fill:#fff}.dial-bezel .bz-label.active{fill:var(--led)}body[data-mode=home] .dial.nudge .dial-disc{animation:dialNudge 1.7s var(--ease) .7s 1}@keyframes dialNudge{0%,to{transform:translate(-50%,-50%) rotate(var(--rot))}40%{transform:translate(-50%,-50%) rotate(calc(var(--rot) - 14deg))}72%{transform:translate(-50%,-50%) rotate(calc(var(--rot) + 6deg))}}@media (max-width:900px){body[data-mode=home] .dial{--base:clamp(140px,38vw,180px)}.dial{--corner:0.5}body[data-mode=home] .dial{transform:translate(calc(100vw - var(--base) - var(--rgap)),calc(27svh - var(--base) / 2 + 40px))}body:not([data-mode=home]) .dial{transform:translate(calc(100vw - var(--base) * var(--corner) - 20px),calc(100svh - var(--base) * var(--corner) - 20px)) scale(var(--corner))}}@media (max-width:425px){.topbar-inner{justify-content:center}body.post .topbar-inner{position:relative}body.post .topbar-right{position:absolute;right:var(--gut)}.hero-top{text-align:center;max-width:100%!important;width:100%}.hero-sub{display:block}.hero-body,.hero-sub,.hero-what{text-align:center}.hero-body{max-width:100%}.hero-aside{border-left:none;padding-left:0;border-top:none}.hero-aside,.now-cue{text-align:center}body[data-mode=home] .dial{--base:120px;transform:translate(calc(100vw - var(--base) - 12px),calc(100svh - var(--base) - 16px));z-index:200}}.home-wrap{position:relative;z-index:3;min-height:calc(100svh - var(--header-h));display:flex;flex-direction:column;justify-content:space-between;padding-top:clamp(14px,3vh,40px);padding-bottom:clamp(18px,3vh,34px)}.hero-top{max-width:min(54vw,720px)}.bigline{font-weight:400;font-size:clamp(32px,5vw,72px);line-height:1.04;letter-spacing:-.022em;color:var(--ink)}.hero-sub{font-family:var(--hand);font-weight:500;font-size:clamp(22px,2.4vw,34px);color:var(--amber);margin-top:clamp(4px,.8vh,10px);display:block;text-underline-offset:4px;text-decoration-thickness:1.5px}.hero-what{font-size:clamp(20px,2.2vw,30px);line-height:1.25;letter-spacing:-.015em;color:var(--ink);margin-top:clamp(14px,2vh,24px)}.hero-what .hl{color:var(--amber)}.hero-body{font-size:clamp(20px,1.1vw,15px);line-height:1.65;margin-top:clamp(12px,1.6vh,20px);max-width:52ch}.hero-aside-inline{font-size:.95em;color:var(--ink-80);font-weight:500}.hero-aside{font-family:var(--hand);font-size:clamp(16px,1.5vw,20px);color:var(--ink-80);margin-top:clamp(16px,2vh,26px);line-height:1.4}.now-cue{margin-top:clamp(20px,3vh,40px)}.now-cue .hand{font-family:var(--hand);font-weight:500;font-size:clamp(18px,2vw,26px);color:var(--ink-80)}.now-cue .hand u{text-decoration-thickness:1.5px;text-underline-offset:3px}.mode.active .nowarrow .a{animation:draw 1.6s var(--ease) .7s forwards}.mode.active .nowarrow .b{animation:draw .6s var(--ease) 2.1s forwards}.nowarrow{display:inline-block;vertical-align:middle;width:clamp(40px,5vw,58px);height:auto;margin-left:5px;margin-top:8px;overflow:visible}.nowarrow path{fill:none;stroke:var(--ink);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.nowarrow .a{stroke-dasharray:150;stroke-dashoffset:150}.nowarrow .b{stroke-dasharray:50;stroke-dashoffset:50}.now-cards{margin-top:clamp(14px,2vh,26px);display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:1fr 1fr;grid-gap:12px;gap:12px}.now-cards>:first-child,.now-cards>:nth-child(2){grid-column:1/3;min-height:0}.now-cards>:nth-child(3){grid-column:3/4;grid-row:1/3}.now-cards>:nth-child(4){grid-column:4/5;grid-row:1/3}.ncard{padding:clamp(15px,1.3vw,20px);display:flex;flex-direction:column;border:1px solid var(--line);border-radius:14px;cursor:pointer;position:relative;min-height:260px;transition:background .25s var(--ease),box-shadow .25s var(--ease);background:linear-gradient(160deg,hsla(0,0%,100%,.55),hsla(47,27%,94%,.3));-webkit-backdrop-filter:blur(.5px);backdrop-filter:blur(.5px)}.ncard:hover{background:hsla(0,0%,100%,.7);box-shadow:0 8px 28px -12px rgba(27,26,22,.14)}.ncard{cursor:default}.ncard.clickable,a.ncard{cursor:pointer}.ncard:not(.clickable):not(a):hover{background:unset;box-shadow:unset}.nc-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:16px}.nc-lbl{font-size:12.5px;color:var(--ink-60);font-weight:600;letter-spacing:.01em}.nc-ic{width:34px;height:34px;flex:none;border-radius:9px;background:var(--paper-deep);display:grid;place-items:center}.nc-ic svg{width:17px;height:17px}.nc-ic svg *{fill:none;stroke:var(--ink-60);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.ncard h3{font-family:var(--serif);font-weight:500;font-size:clamp(18px,1.5vw,22px);line-height:1.12;letter-spacing:-.01em;color:var(--ink)}.ncard h3.art{font-weight:600}.nc-desc{margin-top:10px;font-size:14px;line-height:1.5;color:var(--ink-60);max-width:560px}.nc-tags{margin-top:14px;display:flex;flex-wrap:wrap;gap:7px}.nc-tags .tag{font-family:var(--sans);font-size:11px;letter-spacing:0;color:var(--ink-60);background:var(--paper-deep);border:0;border-radius:6px;padding:4px 9px}.nc-foot{margin-top:auto;padding-top:16px}.prog-row{display:flex;justify-content:space-between;font-size:12px;color:var(--ink-60);margin-bottom:8px}.prog-row .pct{font-weight:700;color:var(--ink)}.prog{height:4px;background:var(--paper-deep);overflow:hidden}.prog,.prog i{border-radius:4px}.prog i{display:block;height:100%;background:var(--ink)}.learn-row{display:flex;align-items:center;gap:10px}.learn-row .wk{font-size:11px;font-weight:700;letter-spacing:.04em;color:var(--ink);background:var(--paper-deep);border-radius:6px;padding:5px 9px}.learn-row .topic{font-size:13.5px;color:var(--ink-60)}.vidcard .nc-thumb{position:relative;aspect-ratio:16/10;border-radius:10px;overflow:hidden;background:#15140f;margin-bottom:14px}.vidcard .nc-thumb img{width:100%;height:100%;display:block;object-fit:cover}.vidcard .play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:42px;height:42px;border-radius:50%;background:hsla(45,22%,96%,.94);display:grid;place-items:center;box-shadow:0 6px 16px -6px rgba(0,0,0,.5)}.vidcard .play svg{width:15px;height:15px;fill:var(--mark);margin-left:2px}.vidcard h4{font-family:var(--serif);font-weight:500;font-size:clamp(15px,1.2vw,18px);line-height:1.18;letter-spacing:-.01em}.vc-foot{margin-top:auto;padding-top:14px;display:flex;justify-content:space-between;font-size:12px;color:var(--ink-60)}.vc-foot .yt{font-weight:600;color:var(--ink)}.art-foot{display:flex;align-items:center;justify-content:space-between}.art-foot .dt{font-size:12px;color:var(--ink-60)}.art-foot .arr{font-size:18px;color:var(--ink)}@media (max-width:1080px){.now-cards{grid-template-columns:repeat(2,1fr)}.now-cards>:first-child,.now-cards>:nth-child(2){grid-column:auto}.now-cards>:nth-child(3),.now-cards>:nth-child(4){grid-column:auto;grid-row:auto}.ncard{min-height:240px}}@media (max-width:560px){.now-cards{grid-template-columns:1fr}}.reach-row{margin-top:clamp(20px,2.8vh,36px);display:flex;flex-direction:column;align-items:center;gap:14px}.reach-lbl{font-size:11px;font-weight:700;letter-spacing:.08em;color:var(--ink-40);text-transform:uppercase}.reach-links{display:flex;align-items:center;gap:6px}.reach-link{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;color:var(--ink-60);border:1px solid var(--line);transition:color .18s,border-color .18s,background .18s}.reach-link:hover{color:var(--ink);border-color:var(--ink-40);background:var(--paper-deep)}.reach-link svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.home-foot{margin-top:clamp(18px,2.4vh,30px);display:grid;grid-template-columns:1fr auto 1fr;align-items:end;grid-gap:16px;gap:16px}.foot-quote{font-family:var(--hand);font-size:21px;line-height:1.1;color:var(--ink-80)}.home-foot .copy{font-size:12px;color:var(--ink-40);letter-spacing:.02em;text-align:center}.home-foot .copy .sep{margin:0 8px;opacity:.5}@media (max-width:720px){.home-foot{grid-template-columns:1fr}.home-foot .copy{text-align:left}}.bento{display:grid;grid-gap:18px;gap:18px;grid-template-columns:repeat(4,1fr);grid-auto-rows:minmax(150px,auto)}.card{position:relative;border:1px solid var(--line);border-radius:14px;background:var(--paper-warm);overflow:hidden;cursor:pointer;display:flex;flex-direction:column;transition:transform .5s var(--ease),box-shadow .5s var(--ease),border-color .4s}.card:hover{transform:translateY(-4px);box-shadow:0 26px 50px -28px rgba(27,26,22,.4);border-color:var(--ink-25)}.card .card-media{position:relative;overflow:hidden;background:var(--paper-deep)}.card .card-media img{width:100%;height:100%;display:block;object-fit:cover}.card .card-body{padding:clamp(18px,2vw,26px);display:flex;flex-direction:column;gap:12px;flex:1 1}.card .idx{font-family:var(--mono);font-size:11px;color:var(--ink-40);letter-spacing:.1em}.card h3{font-family:var(--serif);font-weight:400;font-size:clamp(22px,2.4vw,32px);line-height:1.05;letter-spacing:-.01em}.card .one{color:var(--ink-60);font-size:14.5px;line-height:1.5;max-width:42ch}.card .stack{margin-top:auto;display:flex;flex-wrap:wrap;gap:7px}.tag{font-family:var(--mono);font-size:10.5px;color:var(--ink-60);border:1px solid var(--line);border-radius:6px;padding:3px 8px}.card .lesson,.tag{letter-spacing:.04em}.card .lesson{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--ink-40);padding-top:12px;border-top:1px solid var(--line-soft);margin-top:4px}.card .lesson .arrow{transition:transform .4s var(--ease)}.card:hover .lesson .arrow{transform:translateX(4px)}.card.feature{grid-column:span 2;grid-row:span 2}.card.tall{grid-column:span 1;grid-row:span 2}.card.wide{grid-column:span 2}.card.feature .card-media{flex:1 1;min-height:200px}.card.tall .card-media{flex:1 1;min-height:140px}@media (max-width:920px){.bento{grid-template-columns:repeat(2,1fr)}.card.feature,.card.wide{grid-column:span 2}.card.tall{grid-row:span 1}}@media (max-width:560px){.bento{grid-template-columns:1fr}.card.feature,.card.tall,.card.wide{grid-column:span 1;grid-row:span 1}}.case{position:fixed;inset:0;z-index:90;background:rgba(27,26,22,.3);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);opacity:0;visibility:hidden;transition:opacity .45s var(--ease),visibility 0s linear .45s;display:grid;justify-items:end}.case.open{opacity:1;visibility:visible;transition:opacity .45s var(--ease)}.case-panel{width:min(760px,94vw);height:100%;background:var(--paper);box-shadow:-30px 0 80px -30px rgba(27,26,22,.5);overflow-y:auto;transform:translateX(40px);transition:transform .55s var(--ease);padding:clamp(28px,5vw,64px)}.case.open .case-panel{transform:none}.case .close{position:-webkit-sticky;position:sticky;top:0;margin-left:auto;display:flex;align-items:center;gap:8px;background:none;border:0;cursor:pointer;font:inherit;color:var(--ink-60);font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:600}.case .close:hover{color:var(--mark)}.case h2{font-family:var(--serif);font-weight:400;font-size:clamp(34px,5vw,60px);line-height:1;letter-spacing:-.02em;margin:18px 0 8px}.case .sub{color:var(--ink-60);font-size:16px;margin-bottom:30px}.case .cover{height:280px;border-radius:12px;overflow:hidden;margin-bottom:36px;background:var(--paper-deep)}.case .cover img{width:100%;height:100%;display:block;object-fit:cover}.case .block{margin-bottom:30px}.case .block .h{display:flex;align-items:baseline;gap:12px;margin-bottom:10px}.case .block .h .n{font-family:var(--mono);font-size:12px;color:var(--mark)}.case .block .h h4{font-family:var(--sans);font-size:13px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--ink)}.case .block p{font-family:var(--serif);font-size:18px;line-height:1.65;color:var(--ink-80)}#mode-timeline{scroll-behavior:smooth}.path-wrap{position:relative;max-width:1180px;margin:0 auto;padding:0 var(--gut)}.path-svg{position:absolute;top:0;left:0;width:100%;height:100%;z-index:0;pointer-events:none;overflow:visible}.path-svg .track{fill:none;stroke:var(--line);stroke-width:2.5;stroke-dasharray:6 9;stroke-linecap:round}.path-svg .draw{fill:none;stroke:var(--mark);stroke-width:3;stroke-linecap:round}.checkpoints{z-index:1}.checkpoints,.cp{position:relative}.cp{display:grid;grid-template-columns:1fr 1fr;grid-gap:clamp(20px,5vw,70px);gap:clamp(20px,5vw,70px);align-items:center;min-height:46svh;padding:22px 0}.cp:nth-child(2n) .cp-text{order:2}.cp-photo{position:relative;border-radius:14px;overflow:hidden;background:var(--paper-deep);aspect-ratio:3/2;max-height:34svh;box-shadow:0 30px 60px -34px rgba(27,26,22,.45);opacity:0;transform:translateY(36px) scale(.97);transition:all .9s var(--ease)}.cp-photo img{width:100%;height:100%;display:block;object-fit:cover}.cp.in .cp-photo{opacity:1;transform:none}.cp-text{opacity:0;transform:translateY(26px);transition:all .9s var(--ease) .12s}.cp.in .cp-text{opacity:1;transform:none}.cp .yr{font-family:var(--serif);font-size:clamp(36px,5vw,68px);line-height:.92;letter-spacing:-.03em;color:var(--ink)}.cp .yr .marker{color:var(--mark)}.cp .happened{font-family:var(--serif);font-size:clamp(17px,1.9vw,23px);margin-top:6px;line-height:1.2}.cp .changed-lbl{margin-top:14px;font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-40);font-weight:600}.cp .changed{margin-top:6px;font-family:var(--serif);font-style:italic;font-size:clamp(15px,1.6vw,18px);color:var(--ink-80);line-height:1.45;max-width:40ch}.cp .node{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:16px;height:16px;border-radius:50%;background:var(--paper);border:3px solid var(--ink-25);z-index:2;transition:all .5s var(--ease)}.cp.in .node{border-color:var(--mark);box-shadow:0 0 0 6px rgba(192,73,46,.14)}@media (max-width:820px){.cp{grid-template-columns:1fr;gap:22px;min-height:auto}.cp:nth-child(2n) .cp-text{order:0}}.blog-wrap,.media-wrap{position:relative}.back-home{display:inline-flex;align-items:center;gap:9px;background:none;border:0;font:inherit;font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--ink-60);cursor:pointer;text-decoration:none;padding:clamp(18px,4vh,38px) 0 22px;transition:gap .3s var(--ease),color .3s}.back-home:hover{color:var(--ink);gap:13px}.back-home .bk{font-size:15px}.page-head{padding-bottom:clamp(20px,3.4vh,34px)}.page-title{font-family:var(--serif);font-weight:400;font-size:clamp(40px,5.6vw,70px);line-height:.98;letter-spacing:-.022em;color:var(--ink)}.page-sub{margin-top:13px;color:var(--ink-60);font-size:clamp(15px,1.6vw,18px)}.blog-wrap .cat-bar{padding:0 0 clamp(24px,3.6vh,38px)}.blog-wrap .feat{display:grid;grid-template-columns:1.08fr 1fr;grid-gap:clamp(20px,3vw,44px);gap:clamp(20px,3vw,44px);align-items:center;padding:4px 0 clamp(26px,4vh,44px);border-bottom:1px solid var(--line)}.blog-wrap .feat .cover{aspect-ratio:3/2;border-radius:12px;overflow:hidden;background:var(--paper-deep);box-shadow:0 26px 54px -32px rgba(27,26,22,.45)}.blog-wrap .feat .cover img{width:100%;height:100%;display:block;object-fit:cover}.feat-tag{font-size:11px;letter-spacing:.2em;text-transform:uppercase;font-weight:700;color:var(--ink-40)}.blog-wrap .feat h3{font-family:var(--serif);font-weight:400;font-size:clamp(26px,3.4vw,44px);line-height:1.04;letter-spacing:-.02em;margin-top:14px;color:var(--ink)}.blog-wrap .feat .dek{margin-top:16px;font-family:var(--sans);color:var(--ink-60);font-size:clamp(15px,1.5vw,17px);line-height:1.6;max-width:40ch}.feat-foot{margin-top:22px;font-size:12.5px;color:var(--ink-40);letter-spacing:.01em}.posts.post-list{display:flex;flex-direction:column;border:0;gap:0;margin-top:8px}.post.post-row{display:grid;grid-template-columns:74px 1fr;grid-gap:20px;gap:20px;align-items:center;padding:18px 2px;border-bottom:1px solid var(--line);text-decoration:none;cursor:pointer;transition:padding-left .3s var(--ease)}.post.post-row:hover{padding-left:9px}.post.post-row.hide{display:none}.post-row .rcover{width:74px;height:74px;border-radius:8px;overflow:hidden;background:var(--paper-deep)}.post-row .rcover img{width:100%;height:100%;display:block;object-fit:cover}.post-row .rbody h4{font-family:var(--serif);font-weight:500;font-size:clamp(17px,1.7vw,21px);line-height:1.15;letter-spacing:-.01em;color:var(--ink);transition:color .3s}.post-row:hover .rbody h4{color:var(--mark)}.post-row .rmeta{margin-top:8px;font-size:12.5px;color:var(--ink-40)}.post-row .rmeta .cat{color:var(--ink-60)}.view-all{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:clamp(26px,4vh,42px);font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--ink);text-decoration:none;cursor:pointer}.view-all .arrow{transition:transform .35s var(--ease)}.view-all:hover .arrow{transform:translateX(6px)}.postmark{position:absolute;top:clamp(10px,2vh,26px);right:clamp(8px,2vw,30px);width:clamp(120px,15vw,200px);height:auto;opacity:.15;pointer-events:none;z-index:0}.postmark .wv{fill:none;stroke:var(--ink);stroke-width:2.4;stroke-linecap:round}.postmark .pm{fill:none;stroke:var(--ink);stroke-width:1.4}.postmark text{fill:var(--ink);font-family:var(--mono);font-size:8.5px;letter-spacing:.12em}.cat-bar{display:flex;flex-wrap:wrap;gap:10px;padding:clamp(28px,4vh,44px) 0 clamp(20px,3vh,30px)}.media-quote{position:absolute;top:clamp(14px,3vh,32px);right:clamp(10px,2vw,34px);font-family:var(--hand);font-weight:600;font-size:clamp(19px,2.1vw,27px);color:var(--ink-60);text-align:right;line-height:1.12;transform:rotate(-4deg);pointer-events:none;z-index:1}.media-wrap .media-tabs{margin-bottom:clamp(22px,3.4vh,36px)}.media-tabs{display:flex;gap:8px;padding:8px 0 clamp(26px,4vh,40px);border-bottom:1px solid var(--line);margin-bottom:clamp(26px,4vh,40px)}.media-pane{display:none}.media-pane.on{display:block;animation:fadeUp .6s var(--ease)}@keyframes fadeUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.gallery{column-count:3;column-gap:14px}.gallery .frame{page-break-inside:avoid;break-inside:avoid;margin:0 0 14px;border-radius:10px;overflow:hidden;background:var(--paper-deep);box-shadow:0 16px 34px -24px rgba(27,26,22,.4);transition:transform .4s var(--ease)}.gallery .frame:hover{transform:translateY(-3px)}.gallery .frame img{width:100%;display:block}@media (max-width:900px){.gallery{column-count:2}}@media (max-width:560px){.gallery{column-count:1}}.vid-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:clamp(20px,3vw,34px);gap:clamp(20px,3vw,34px)}.vid{cursor:pointer}.vid .thumb{position:relative;aspect-ratio:16/9;border-radius:12px;overflow:hidden;background:var(--paper-deep);margin-bottom:14px;box-shadow:0 20px 44px -28px rgba(27,26,22,.4)}.vid .thumb img{width:100%;height:100%;display:block;object-fit:cover}.vid .play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:64px;height:64px;border-radius:50%;background:hsla(45,22%,96%,.92);display:grid;place-items:center;box-shadow:0 8px 24px -8px rgba(27,26,22,.4);transition:transform .4s var(--ease)}.vid:hover .play{transform:translate(-50%,-50%) scale(1.08)}.vid .play svg{width:22px;height:22px;fill:var(--mark);margin-left:3px}.vid h4{font-family:var(--serif);font-weight:400;font-size:clamp(19px,2vw,24px);line-height:1.15}.vid .vmeta{font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:600;color:var(--ink-40);margin-top:7px}.film-grid{display:grid;grid-template-columns:1fr;grid-gap:clamp(20px,3vw,30px);gap:clamp(20px,3vw,30px)}@media (max-width:720px){.vid-grid{grid-template-columns:1fr}}body.post{overflow:auto}.post-page{min-height:100vh;background:var(--paper);padding-top:var(--header-h)}.topbar-right{display:flex;align-items:center;gap:16px}.post-back{font-size:13px;color:var(--ink-60);letter-spacing:.02em;transition:color .2s}.post-back:hover{color:var(--ink)}.post-body{max-width:680px;margin:0 auto;padding:clamp(28px,6vw,64px) var(--gut) clamp(60px,12vh,120px)}.post-header{margin-bottom:clamp(28px,4vh,48px);text-align:center}.post-header h1{font-family:var(--serif);font-weight:400;font-size:clamp(30px,5vw,52px);line-height:1.08;letter-spacing:-.02em;margin-bottom:18px}.post-meta{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;justify-content:center;font-size:13px;color:var(--ink-60)}.post-meta time{font-family:var(--mono);letter-spacing:.04em}.post-meta .post-tags{display:flex;flex-wrap:wrap;gap:7px;width:100%;margin-top:4px;justify-content:center}@media (max-width:425px){.post-meta .post-tags{justify-content:center}}.post-content{font-family:var(--serif);font-size:clamp(17px,1.8vw,21px);line-height:1.72;color:var(--ink-80)}.post-content h2,.post-content h3{font-family:var(--sans);font-weight:700;margin:2.2em 0 .7em;color:var(--ink)}.post-content h2{font-size:clamp(20px,2.2vw,26px)}.post-content h3{font-size:clamp(17px,1.8vw,21px)}.post-content p{margin:0 0 1.4em}.post-content a{color:var(--mark);text-decoration:underline;text-decoration-thickness:1px}.post-content code{font-family:var(--mono);font-size:.85em;background:var(--paper-warm);border:1px solid var(--line);border-radius:5px;padding:2px 6px}.post-content pre{background:var(--ink);color:var(--paper);border-radius:10px;padding:20px 24px;overflow-x:auto;margin:1.6em 0;font-family:var(--mono);font-size:14px;line-height:1.6}.post-content pre code{background:none;border:none;padding:0;color:inherit}.post-content blockquote{border-left:3px solid var(--mark);padding-left:22px;margin:1.8em 0;font-style:italic;color:var(--ink-60)}.post-content img{max-width:100%;border-radius:10px;margin:1.6em 0}.post-content hr{border:none;border-top:1px solid var(--line);margin:2.4em 0}.vmodal-backdrop{position:fixed;inset:0;z-index:400;background:rgba(0,0,0,.88);display:flex;align-items:center;justify-content:center;padding:20px;animation:vmodal-in .18s ease}@keyframes vmodal-in{0%{opacity:0}to{opacity:1}}.vmodal-box{position:relative;width:100%;max-width:960px;animation:vmodal-up .22s cubic-bezier(.22,1,.36,1)}@keyframes vmodal-up{0%{transform:translateY(24px) scale(.97);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.vmodal-player{position:relative;width:100%;padding-top:56.25%;border-radius:14px;overflow:hidden;background:#000;box-shadow:0 32px 80px rgba(0,0,0,.6)}.vmodal-player iframe{position:absolute;inset:0;width:100%;height:100%;border:none}.vmodal-close{position:absolute;top:-40px;right:0;background:none;border:none;padding:6px;color:hsla(0,0%,100%,.7);cursor:pointer;transition:color .15s;line-height:0}.vmodal-close:hover{color:#fff}.mode{view-transition-name:page-content}.dial{view-transition-name:dial}@keyframes vtOldOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-14px)}}@keyframes vtNewIn{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}::view-transition-old(page-content){animation:vtOldOut .22s ease forwards}::view-transition-new(page-content){animation:vtNewIn .55s var(--ease) forwards}::view-transition-group(dial){animation-duration:.45s;animation-timing-function:var(--ease)}