.cmdk-trigger{display:inline-flex;align-items:center;gap:8px;height:36px;padding:0 10px;border:1px solid var(--line);font:400 11px/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink);transition:border-color .2s}.cmdk-trigger:hover{border-color:var(--ink)}.cmdk-trigger kbd{font:inherit;color:var(--muted)}.cmdk-scrim{position:fixed;inset:0;z-index:300;display:flex;justify-content:center;align-items:flex-start;padding:12vh 16px 16px;background:color-mix(in srgb,var(--ink) 45%,transparent);animation:cmdk-fade .15s var(--ease) both}.cmdk{width:min(640px,100%);max-height:70vh;display:flex;flex-direction:column;background:var(--paper-2);color:var(--ink);border:1px solid var(--ink);box-shadow:10px 10px 0 var(--red)}.cmdk-input-row{display:flex;align-items:center;gap:12px;padding:16px 18px;border-bottom:1px solid var(--ink)}.cmdk-prompt{color:var(--red-text)}.cmdk-input{flex:1;min-width:0;border:0;outline:0;background:transparent;font:500 20px/1.2 var(--font-display);letter-spacing:-.02em}.cmdk-input::placeholder{color:var(--muted)}.cmdk kbd{font:400 11px/1 var(--font-mono);color:var(--muted);border:1px solid var(--line);padding:3px 5px}.cmdk-list{overflow-y:auto;padding:6px 0;overscroll-behavior:contain}.cmdk-group{padding:14px 18px 6px;font:400 10px/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.cmdk-item{width:100%;display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:10px 18px;text-align:left}.cmdk-item[data-active=true]{background:var(--ink);color:var(--paper)}.cmdk-item-title{font-size:15px}.cmdk-item-hint{font-size:11px;opacity:.7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:45%}.cmdk-empty{padding:18px;color:var(--muted);font-size:13px}.cmdk-foot{display:flex;gap:18px;padding:10px 18px;border-top:1px solid var(--line);font-size:11px;color:var(--muted)}.cmdk-foot kbd{margin-right:4px}@keyframes cmdk-fade{0%{opacity:0}}@media(max-width:640px){.cmdk-trigger-label,.cmdk-trigger kbd,.cmdk-foot{display:none}.cmdk{box-shadow:6px 6px 0 var(--red)}}.intro-playing body{overflow:hidden}.intro{position:fixed;inset:0;z-index:1000;background:var(--paper);color:var(--ink);cursor:pointer;transition:transform .6s cubic-bezier(.76,0,.24,1)}.intro.is-lift{transform:translateY(-100%)}.intro-stage{position:absolute;inset:0;display:grid;grid-template-rows:auto 1fr auto;padding:22px var(--gutter)}.intro-top,.intro-bottom{display:flex;justify-content:space-between;gap:16px;color:var(--muted)}.intro-top{padding-bottom:16px;border-bottom:1px solid var(--ink);animation:intro-fade .4s var(--ease) both}.intro-bottom{padding-top:16px;border-top:1px solid var(--ink);align-items:baseline;animation:intro-fade .4s .1s var(--ease) both}.intro-grid{--cell: min(calc((100vw - 2 * var(--gutter)) / 16), 64px);--gap: calc(var(--cell) * .16);align-self:center;justify-self:center;display:grid;grid-template-columns:repeat(var(--cols),var(--cell));grid-template-rows:repeat(var(--rows),var(--cell));gap:var(--gap)}.intro-cell{border:1px dashed var(--line);animation:intro-fade .3s calc(var(--i) * 12ms) both}.is-fill .intro-cell,.is-flood .intro-cell,.is-lift .intro-cell{animation:intro-fill .35s calc(var(--i) * 25ms) cubic-bezier(.3,1.4,.5,1) both}.intro-cell.is-dot{border-radius:50%;border-color:var(--red)}.is-fill .intro-cell.is-dot,.is-flood .intro-cell.is-dot,.is-lift .intro-cell.is-dot{animation-name:intro-fill-dot}@keyframes intro-fill{0%{background:transparent;transform:scale(.4)}60%{background:var(--red)}to{background:var(--ink);border-color:transparent;transform:none}}@keyframes intro-fill-dot{0%{transform:scale(.3)}to{background:var(--red);transform:none}}@keyframes intro-fade{0%{opacity:0}}.intro-stages{display:flex;flex-wrap:wrap}.intro-stages li{transition:color .2s}.intro-stages li.is-on{color:var(--ink)}.intro-stages li.is-on:last-child{color:var(--red-text)}.intro-arrow{margin-inline:.7em;color:var(--muted)}.intro-flood{position:absolute;inset:0;background:var(--red);clip-path:circle(0 at var(--fx, 50%) var(--fy, 50%));transition:clip-path .5s cubic-bezier(.7,0,.3,1)}.is-flood .intro-flood,.is-lift .intro-flood{clip-path:circle(150vmax at var(--fx, 50%) var(--fy, 50%))}.intro-reveal .hero-eyebrow,.intro-reveal .hero-title,.intro-reveal .hero-foot,.intro-reveal .hero-aside{animation:intro-rise .8s cubic-bezier(.2,.7,.2,1) both}.intro-reveal .hero-eyebrow{animation-delay:.15s}.intro-reveal .hero-title{animation-delay:.22s}.intro-reveal .hero-foot{animation-delay:.34s}.intro-reveal .hero-aside{animation-delay:.28s}@keyframes intro-rise{0%{opacity:0;transform:translateY(48px)}}@media(max-width:600px){.intro-skip{display:none}.intro-grid{--cell: calc((100vw - 2 * var(--gutter)) / 15.5)}}:root{color-scheme:light;--paper: #e9e5dc;--paper-2: #f5f2e9;--paper-3: #dfdace;--ink: #171b19;--ink-2: #3a3d38;--muted: #5b5e57;--line: #bcbeb4;--line-strong: var(--ink);--red: #d7442d;--red-text: #b3341f;--blue: #2347ad;--on-accent: #f5f2e9;--block: #171b19;--block-fg: #e9e5dc;--block-fg-2: #b8bab3;--block-muted: #92968c;--block-line: #4a4e47;--cobalt: #2347ad;--cobalt-fg: #f5f2e9;--cobalt-fg-2: #c9cee5;--cobalt-accent: #f2c3b3;--cobalt-line: #7e8fcf;--font-display: "Space Grotesk", ui-sans-serif, system-ui, sans-serif;--font-sans: "DM Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "DM Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--gutter: clamp(16px, 3.2vw, 56px);--max: 1560px;--nav-h: 68px;--ease: cubic-bezier(.2, .7, .2, 1);--dur: .5s;--red-block: #c13a25;--on-red: #f5f2e9;--block-red-text: #f07a63;--focus: var(--blue);--selection-bg: var(--red);--selection-fg: #ffffff;--page-ink: var(--ink);--page-ink-2: var(--ink-2);--page-muted: var(--muted);--page-line: var(--line)}:root[data-theme=dark]{color-scheme:dark;--paper: #141715;--paper-2: #1b1f1c;--paper-3: #232824;--ink: #ebe7de;--ink-2: #cfcbc2;--muted: #a3a59c;--line: #3b403a;--red: #ef5a40;--red-text: #f47b64;--blue: #7d9bf0;--on-accent: #141715;--block: #0c0e0d;--block-fg: #ebe7de;--block-fg-2: #b8bab3;--block-muted: #8d9188;--block-line: #343832;--cobalt: #1d3a8f;--cobalt-fg: #f5f2e9;--cobalt-fg-2: #c9cee5;--cobalt-accent: #f2c3b3;--cobalt-line: #6173b8;--red-block: #a8301d;--block-red-text: #f47b64;--focus: #9db4ff}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-h) + 12px)}body{margin:0;min-height:100vh;background:var(--paper);color:var(--ink);font-family:var(--font-sans);font-size:1rem;line-height:1.55;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;overflow-x:hidden}h1,h2,h3,h4,p,ul,ol,dl,dd,figure,blockquote{margin:0}ul,ol{padding:0;list-style:none}img,svg{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input{font:inherit;color:inherit}button{cursor:pointer;background:none;border:0;padding:0}::selection{background:var(--selection-bg);color:var(--selection-fg)}:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.block-ink :focus-visible,.block-cobalt :focus-visible{outline-color:currentColor}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;left:var(--gutter);top:-100px;z-index:100;background:var(--ink);color:var(--paper);padding:10px 14px;font:500 12px/1 var(--font-mono);text-transform:uppercase;letter-spacing:.08em}.skip-link:focus{top:10px}.wrap{padding-inline:var(--gutter);max-width:var(--max);margin-inline:auto}.eyebrow{font:400 11px/1.4 var(--font-mono);letter-spacing:.14em;text-transform:uppercase}.mono{font-family:var(--font-mono)}.accent{color:var(--red)}.section-head{display:flex;justify-content:space-between;gap:24px;padding:22px 0 clamp(40px,7vw,80px)}.section-head>:last-child{color:var(--muted);text-align:right}.section-title{font:600 clamp(56px,9vw,150px) / .9 var(--font-display);letter-spacing:-.075em;margin:0}.section-title .dot{color:var(--red)}.round{width:64px;height:64px;flex:none;border:1px solid currentColor;border-radius:50%;display:grid;place-items:center;font-size:26px;line-height:1;transition:background .2s,color .2s,transform .25s var(--ease)}.round:hover{background:var(--ink);color:var(--paper);transform:rotate(45deg)}.btn{display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:0 22px;border:1px solid var(--ink);font:500 13px/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;transition:background .2s,color .2s,border-color .2s}.btn-solid{background:var(--ink);color:var(--paper)}.btn-solid:hover{background:var(--red);border-color:var(--red);color:var(--selection-fg)}.btn-line:hover{background:var(--ink);color:var(--paper)}.link-under{background-image:linear-gradient(currentColor,currentColor);background-size:0 1px;background-position:0 100%;background-repeat:no-repeat;transition:background-size .3s var(--ease)}.link-under:hover,.link-under:focus-visible{background-size:100% 1px}.reveal-ready [data-reveal]{opacity:0;transform:translateY(24px);transition:opacity .6s var(--ease),transform .6s var(--ease)}.reveal-ready [data-reveal].in{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal-ready [data-reveal]{opacity:1;transform:none}}.nav{position:sticky;top:0;z-index:50;background:var(--paper);border-bottom:1px solid var(--ink)}.nav-inner{height:var(--nav-h);max-width:var(--max);margin-inline:auto;padding-inline:var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:24px}.nav-brand{font:700 29px/1 var(--font-display);letter-spacing:-.07em;flex:none}.nav-brand span{color:var(--red)}.nav-primary{flex:1;display:flex;justify-content:center}.nav-links{display:flex;align-items:center;gap:clamp(14px,1.6vw,28px)}.nav-link{display:inline-block;padding:8px 0;font:700 12px/1 var(--font-sans);letter-spacing:.07em;text-transform:uppercase;position:relative}.nav-link:after{content:"";position:absolute;left:0;right:0;bottom:2px;height:2px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .25s var(--ease)}.nav-link:hover,.nav-link[aria-current]{color:var(--red-text)}.nav-link[aria-current]:after{transform:scaleX(1)}.nav-blogs{position:relative;display:flex;align-items:center;gap:2px}.nav-caret{width:24px;height:28px;display:grid;place-items:center}.nav-caret[aria-expanded=true] svg{transform:rotate(180deg)}.nav-dropdown{position:absolute;top:calc(100% + 12px);left:50%;transform:translate(-50%);width:340px;background:var(--paper-2);border:1px solid var(--ink);box-shadow:8px 8px 0 var(--ink);padding:16px 0 0}.nav-dropdown[hidden]{display:none}.nav-dropdown:before{content:"";position:absolute;inset:-14px 0 auto;height:14px}.nav-dropdown-label{padding:0 18px 8px;color:var(--muted)}.nav-dropdown-item{display:block;padding:10px 18px;border-top:1px solid var(--line)}.nav-dropdown-item:hover,.nav-dropdown-item:focus-visible{background:var(--paper-3)}.nav-dropdown-title{display:block;font:500 16px/1.25 var(--font-display);letter-spacing:-.02em}.nav-dropdown-date{display:block;margin-top:4px;font:400 11px/1 var(--font-mono);color:var(--muted)}.nav-dropdown-all{display:block;padding:14px 18px;background:var(--ink);color:var(--paper);font:500 12px/1 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.nav-dropdown-all:hover{background:var(--red);color:var(--selection-fg)}.nav-actions{display:flex;align-items:center;gap:10px;flex:none}.nav-resume{height:36px;display:inline-flex;align-items:center;padding:0 14px;background:var(--ink);color:var(--paper);font:500 11px/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;transition:background .2s}.nav-resume:hover{background:var(--red);color:var(--selection-fg)}.theme-toggle{width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--line);transition:border-color .2s}.theme-toggle:hover{border-color:var(--ink)}.theme-toggle.btn{width:auto;display:inline-flex}.nav-menu-btn{display:none;height:36px;padding:0 14px;border:1px solid var(--ink);font:500 11px/1 var(--font-mono);letter-spacing:.1em;text-transform:uppercase}.nav-panel{position:fixed;inset:0;z-index:200;background:var(--paper);color:var(--ink);display:flex;flex-direction:column;overflow-y:auto;padding:0 var(--gutter) 32px;animation:panel-in .25s var(--ease) both}.nav-panel-top{height:var(--nav-h);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--ink);flex:none}.nav-panel-links{padding:12px 0 28px}.nav-panel-links a{display:flex;align-items:baseline;gap:16px;padding:10px 0;border-bottom:1px solid var(--line);font:600 clamp(34px,9vw,56px) / 1 var(--font-display);letter-spacing:-.06em}.nav-panel-links a .eyebrow{color:var(--red-text);letter-spacing:.14em;min-width:2.2em}.nav-panel-links a:hover,.nav-panel-links a[aria-current]{color:var(--red-text)}.nav-panel-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:auto}@keyframes panel-in{0%{opacity:0;transform:translateY(-8px)}}@media(max-width:1179px){.nav-primary{display:none}.nav-menu-btn{display:inline-flex;align-items:center}}@media(max-width:560px){:root{--nav-h: 60px}.nav-inner{gap:8px}.nav-brand{font-size:25px}.nav-actions{gap:6px}.nav-resume{padding:0 10px}.nav-actions>.theme-toggle{display:none}}.block-cobalt{background:var(--cobalt);color:var(--cobalt-fg)}.site-footer{border-top:1px solid var(--cobalt-line)}.site-footer-inner{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px 40px;padding-block:28px 32px}.site-footer-brand{display:flex;align-items:baseline;gap:16px}.site-footer-brand .nav-brand span{color:var(--cobalt-accent)}.site-footer-links{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 22px}.site-footer-top{justify-self:end}@media(max-width:900px){.site-footer-inner{grid-template-columns:1fr}.site-footer-links{justify-content:flex-start}.site-footer-top{justify-self:start}}.back-to-top{position:fixed;right:var(--gutter);bottom:24px;z-index:40;width:48px;height:48px;display:grid;place-items:center;background:var(--ink);color:var(--paper);font-size:20px;opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .25s,transform .25s var(--ease),visibility .25s,background .2s}.back-to-top.is-visible{opacity:1;visibility:visible;transform:none}.back-to-top:hover{background:var(--red);color:var(--selection-fg)}.route-loading{padding-block:20vh;color:var(--muted)}.not-found,.article-missing{padding-block:clamp(60px,12vw,160px)}.not-found>p:not(.eyebrow),.article-missing>p:not(.eyebrow){max-width:52ch;margin-top:24px;font-size:19px}.article-missing-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:36px}main:focus{outline:none}section[id]{border-top:1px solid var(--ink)}.dash-list li{position:relative;padding-left:1.1em}.dash-list li+li{margin-top:6px}.dash-list li:before{content:"—";position:absolute;left:0;color:var(--red-text)}.case-link{display:inline-block;margin-top:18px;font:500 12px/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.hero{min-height:calc(100svh - var(--nav-h));display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,34%)}.hero-copy{padding:clamp(28px,6vh,64px) clamp(20px,3vw,48px) 32px 0;display:flex;flex-direction:column;justify-content:space-between;gap:40px}.hero-eyebrow span{color:var(--red-text)}.hero-title{font:600 clamp(52px,9.6vw,168px) / .86 var(--font-display);letter-spacing:-.075em;margin:4vh 0 0}.hero-title .accent{display:inline-block}.hero-foot{border-top:1px solid var(--ink);padding-top:22px;display:flex;justify-content:space-between;align-items:flex-end;gap:28px;flex-wrap:wrap}.hero-lede{max-width:34em;font-size:clamp(17px,1.35vw,21px);line-height:1.4}.hero-actions{display:flex;flex-wrap:wrap;gap:10px}.hero-aside{border-left:1px solid var(--ink);padding:20px 0 24px 24px;display:flex;flex-direction:column;justify-content:space-between;gap:20px}.hero-aside-top{display:flex;justify-content:space-between;gap:16px}.monogram{position:relative;overflow:hidden;aspect-ratio:1 / 1.04;max-height:480px;background:var(--cobalt);color:var(--cobalt-fg);display:grid;place-items:center}.monogram:before,.monogram:after{content:"";position:absolute;width:85%;aspect-ratio:1;border:1px solid color-mix(in srgb,var(--cobalt-fg) 60%,transparent);border-radius:50%;transform:rotate(-28deg) scaleX(.58)}.monogram:after{transform:rotate(40deg) scaleX(.58)}.monogram strong{position:relative;z-index:1;font:700 clamp(110px,14vw,250px) / 1 var(--font-display);letter-spacing:-.13em;margin-left:-.13em}.monogram-orb{position:absolute;z-index:1;width:42px;height:42px;right:16%;top:19%;border-radius:50%;background:var(--red)}.monogram-corner{position:absolute;z-index:1;left:18px;bottom:16px;font:400 10px/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase}.hero-facts{border-top:1px solid var(--ink);padding-top:14px;display:grid;gap:10px}.hero-facts div{display:grid;grid-template-columns:84px 1fr;gap:12px;align-items:baseline}.hero-facts dt{color:var(--muted)}.hero-facts dd{font-size:14px;line-height:1.35}.services{padding-bottom:clamp(70px,10vw,130px)}.statement{margin-bottom:clamp(56px,8vw,110px)}.statement-title{font:500 clamp(38px,5.6vw,100px) / 1.02 var(--font-display);letter-spacing:-.065em;max-width:15em}.statement-title em{font-style:normal;color:var(--red)}.statement-note{margin:clamp(32px,5vw,64px) 0 0 auto;max-width:400px;font-size:17px;line-height:1.5}.service-list{counter-reset:service}.service{display:grid;grid-template-columns:7% minmax(0,.9fr) minmax(0,1.6fr);grid-template-areas:"num head body" "num head meta";gap:20px 3%;padding:34px 0 38px;border-top:1px solid var(--ink)}.service-num{grid-area:num;color:var(--red-text)}.service-head{grid-area:head}.service-head h3{font:500 clamp(28px,3.2vw,52px) / 1 var(--font-display);letter-spacing:-.05em}.service-head p{margin-top:16px;color:var(--ink-2);max-width:30em}.service-body{grid-area:body;display:grid;grid-template-columns:1fr 1.25fr 1fr;gap:24px}.service-body dt{color:var(--muted);margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid var(--line)}.service-body dd{font-size:15px;line-height:1.5}.service-meta{grid-area:meta;display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 24px;font-size:12px;color:var(--muted);padding-top:14px;border-top:1px dashed var(--line)}.service-meta p:first-child{color:var(--ink)}.stack-line{display:flex;flex-wrap:wrap;gap:8px 24px;align-items:baseline;padding-top:22px;border-top:1px solid var(--ink);font-size:13px}.stack-line .eyebrow{color:var(--red-text)}.block-ink{background:var(--block);color:var(--block-fg);--ink: var(--block-fg);--muted: var(--block-muted);--line: var(--block-line);--red-text: var(--block-red-text)}section.block-ink{border-top-color:var(--block-line)}.work{padding-bottom:clamp(70px,9vw,120px)}.work .section-head{border-color:var(--block-line)}.work-intro{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:clamp(48px,6vw,80px)}.work-intro p{max-width:320px;color:var(--block-fg-2)}.case{border-top:1px solid var(--block-line);padding:clamp(32px,4vw,56px) 0;display:grid;gap:28px 4%}.case-head{grid-area:head}.case-num{color:var(--block-muted)}.case-meta{margin-top:10px;color:var(--block-muted)}.case-title{margin-top:22px;font-weight:inherit}.case-kicker{display:block;font:500 13px/1.4 var(--font-mono);letter-spacing:.04em;color:var(--block-fg-2);margin-bottom:14px}.case-headline{display:block;font:500 clamp(40px,5.2vw,88px) / .95 var(--font-display);letter-spacing:-.06em}.case-headline em{font-style:normal;color:var(--red)}.case-story{grid-area:story;display:grid;gap:22px}.case-story dt{color:var(--block-muted);margin-bottom:6px}.case-story dd{color:var(--block-fg-2);font-size:16px;line-height:1.55}.case-story-result dd{color:var(--block-fg)}.case-foot{grid-area:foot;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:8px 32px}.case-stack{display:grid;gap:8px;font-size:12px;line-height:1.6;color:var(--block-fg-2);max-width:60ch}.case-stack .eyebrow{color:var(--block-muted)}.case-foot .case-link{margin-top:0}.case--split{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);grid-template-areas:"head story" "head foot";transition:padding-left .3s var(--ease)}.case--split .case-story{align-self:end}.case--stacked{grid-template-areas:"head" "story" "foot"}.case--stacked .case-head{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:32px}.case--stacked .case-num,.case--stacked .case-meta{grid-column:2;text-align:right}.case--stacked .case-meta{grid-row:2}.case--stacked .case-title{grid-column:1;grid-row:1 / span 3;margin-top:0}.case--stacked .case-story{grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-top:1px solid var(--block-line)}.case--stacked .case-story>div{padding:20px 20px 0 0}.case--stacked .case-story>div+div{padding-left:20px;border-left:1px solid var(--block-line)}.case--stacked .case-story-result{box-shadow:inset 0 3px 0 var(--red)}.case--research{margin-top:clamp(16px,3vw,40px);padding:clamp(24px,4vw,56px);background:var(--paper-2);border-top:0;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);grid-template-areas:"head fig" "story story" "foot foot"}.case--research{color:var(--page-ink)}.case--research .case-num,.case--research .case-meta,.case--research .case-story dt,.case--research .case-stack .eyebrow,.case--research .case-kicker{color:var(--page-muted)}.case--research .case-story dd,.case--research .case-stack{color:var(--page-ink-2)}.case--research .case-story-result dd{color:var(--page-ink)}.case--research .case-headline em{color:var(--red)}.case--research .case-story{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 40px;padding-top:24px;border-top:1px solid var(--page-line)}.case--research :focus-visible{outline-color:var(--focus)}.voxel-figure{grid-area:fig;align-self:center}.voxel-figure svg{width:100%;height:auto;max-width:420px;margin-left:auto}.voxel-figure figcaption{margin-top:12px;text-align:right;color:var(--page-muted)}.vx{fill:var(--page-ink)}.vx-gap{fill:none;stroke:var(--page-muted);stroke-dasharray:2 2}.vx-fill{fill:var(--red)}.vx-arrow{stroke:var(--page-ink);stroke-width:1.5}@media(hover:hover){.case--split:hover{padding-left:14px}}.more-projects{margin-top:clamp(48px,6vw,88px);padding-top:22px;border-top:1px solid var(--block-line)}.more-projects>h3{color:var(--block-red-text);margin-bottom:8px}.more-projects ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.more-project{padding:22px 28px 8px 0}.more-project+.more-project{padding-left:28px;border-left:1px solid var(--block-line)}.more-project-kind{color:var(--block-muted)}.more-project h4{margin:12px 0;font:500 clamp(24px,2.4vw,36px) / 1.05 var(--font-display);letter-spacing:-.04em}.more-project-summary{color:var(--block-fg-2);font-size:15px;line-height:1.55}.more-project-links{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:16px;font:500 12px/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}@media(max-width:900px){.more-projects ul{grid-template-columns:1fr}.more-project,.more-project+.more-project{padding:22px 0;border-left:0;border-bottom:1px solid var(--block-line)}}.logo-mark{display:block;width:auto;max-width:132px;object-fit:contain;opacity:.88;transition:opacity .2s}.logo-mark--md{height:40px}.logo-mark--wide{height:22px;margin-block:9px}.logo-mark--lg{height:58px}.timeline-row:hover .logo-mark,.edu-step:hover .logo-mark{opacity:1}:root[data-theme=dark] .logo-mark,.block-red .logo-mark{filter:invert(1) sepia(.12) brightness(.96)}:root[data-theme=dark] .block-red .logo-mark{filter:invert(1) sepia(.12) brightness(.96)}.timeline-head .logo-mark{margin-bottom:16px}.now-top{display:flex;align-items:center;gap:18px}.edu-top{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.edu-top+.edu-date{margin-top:8px}.experience{padding-bottom:clamp(60px,8vw,110px)}.experience .section-title{margin-bottom:clamp(36px,5vw,64px)}.block-red{background:var(--red-block);color:var(--on-red)}.now{padding-block:clamp(36px,5vw,64px)}.now-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px 6%}.now-company{font:600 clamp(64px,10vw,170px) / .85 var(--font-display);letter-spacing:-.08em;margin:18px 0 20px}.now-role{font-size:clamp(18px,1.6vw,24px);line-height:1.35}.now-role .eyebrow{display:inline-block;margin-top:10px}.now-body{align-self:end;font-size:17px}.now .dash-list li:before{color:inherit}.role-summary{font-size:1.08em;line-height:1.45;margin-bottom:18px}.role-stack{margin-top:18px;font-size:12px;line-height:1.6;opacity:.85}.timeline-row{display:grid;grid-template-columns:17% minmax(0,.85fr) minmax(0,1.4fr);gap:18px 3%;padding:30px 0;border-bottom:1px solid var(--line)}.timeline-date{color:var(--red-text)}.timeline-head h3{font:500 clamp(28px,3vw,46px) / 1 var(--font-display);letter-spacing:-.05em}.timeline-head p{margin-top:8px}.timeline-loc{color:var(--muted)}.timeline-body{font-size:15px}.timeline-body .role-summary{font-size:16px}.timeline-body .role-stack{color:var(--muted);opacity:1}.experience-note{margin-top:28px;max-width:62ch;font-size:13px;color:var(--muted)}.education{padding-bottom:clamp(60px,8vw,110px)}.edu-intro{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:clamp(40px,6vw,80px)}.edu-intro p{max-width:400px;font-size:17px}.edu-track{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--ink)}.edu-step{padding:22px 28px 32px 0;position:relative}.edu-step+.edu-step{padding-left:28px;border-left:1px solid var(--line)}.edu-step:last-child{background:var(--paper-2);padding-right:28px}.edu-stage{color:var(--red-text)}.edu-date{margin:20px 0 16px;font:500 clamp(36px,4.4vw,72px) / .9 var(--font-display);letter-spacing:-.06em}.edu-step h3{font:600 20px/1.2 var(--font-display);letter-spacing:-.02em}.edu-track-name{display:block;font:400 15px/1.4 var(--font-sans);color:var(--muted);margin-top:4px}.edu-school{margin-top:10px;display:flex;flex-wrap:wrap;align-items:center;gap:10px}.edu-status{padding:4px 7px;border:1px solid var(--ink);font-size:10px}.edu-note{margin-top:16px;font-size:15px;line-height:1.5}.edu-highlights{margin-top:16px;font-size:14px}.edu-course{margin-top:18px;font-size:14px;color:var(--ink-2)}.edu-course .eyebrow{display:block;color:var(--muted);margin-bottom:6px}.research{margin-top:clamp(40px,5vw,64px);display:grid;grid-template-columns:17% 1fr;gap:20px 3%;padding-top:22px;border-top:3px solid var(--ink)}.research-label{color:var(--red-text)}.research-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 5%}.research-list h3{font:500 clamp(24px,2.4vw,36px) / 1.05 var(--font-display);letter-spacing:-.04em;margin-bottom:10px}.research-list p{max-width:44ch}.about{padding-bottom:clamp(60px,8vw,110px)}.about-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:48px 8vw}.about-portrait{margin-top:clamp(32px,4vw,56px);width:min(300px,70%)}.about-portrait img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;filter:grayscale(1) contrast(1.08)}.about-portrait-frame{display:block;box-shadow:14px 14px 0 var(--red)}.about-portrait figcaption{margin-top:24px;color:var(--muted)}.about-copy{font-size:clamp(19px,1.8vw,27px);line-height:1.42;letter-spacing:-.015em}.about-copy p+p{margin-top:1em}.philosophy{margin:clamp(56px,8vw,110px) 0;padding:clamp(28px,4vw,48px) 0;border-block:1px solid var(--ink)}.philosophy p{font:500 clamp(28px,3.8vw,64px) / 1.08 var(--font-display);letter-spacing:-.05em;max-width:22em}.philosophy footer{margin-top:22px;color:var(--red-text)}.interests h3{color:var(--muted);margin-bottom:18px}.interests ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line)}.interests li{display:grid;grid-template-columns:34px 1fr;gap:2px 10px;padding:14px 16px 14px 0;border-bottom:1px solid var(--line)}.interests li .eyebrow{grid-row:span 2;color:var(--red-text);padding-top:3px}.interests li strong{font:500 17px/1.2 var(--font-display)}.interests li span:last-child{font-size:14px;color:var(--muted)}.about-name-note{margin-top:28px;font-size:13px;color:var(--muted)}.contact{padding-bottom:20px;border-top-color:var(--cobalt);--ink: var(--cobalt-fg);--muted: var(--cobalt-fg-2);--line: var(--cobalt-line)}.contact .section-head>:last-child{color:var(--cobalt-fg-2)}.contact-title{font:600 clamp(60px,10.5vw,180px) / .88 var(--font-display);letter-spacing:-.08em}.contact-title span{color:var(--cobalt-accent)}.contact-message{margin:clamp(28px,4vw,48px) 0 0 auto;max-width:420px;font-size:17px;color:var(--cobalt-fg-2)}.contact-primary{margin-top:clamp(40px,6vw,80px);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);border-top:1px solid var(--cobalt-line)}.contact-book,.contact-email{padding:26px 0 30px;display:flex;flex-direction:column;gap:14px}.contact-email{padding-left:4%;border-left:1px solid var(--cobalt-line)}.contact-book .eyebrow,.contact-email .eyebrow{color:var(--cobalt-fg-2)}.contact-book-line{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-right:4%;font:500 clamp(22px,2.4vw,38px) / 1.1 var(--font-display);letter-spacing:-.04em}.contact-book .round{border-color:var(--cobalt-fg)}.contact-book:hover .round{background:var(--cobalt-fg);color:var(--cobalt);transform:rotate(45deg)}.contact-email-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px}.contact-email-link{font:500 clamp(20px,2.2vw,34px) / 1.15 var(--font-display);letter-spacing:-.035em;overflow-wrap:anywhere}.contact-copy{height:34px;padding:0 12px;border:1px solid var(--cobalt-fg);font:500 11px/1 var(--font-mono);letter-spacing:.1em;text-transform:uppercase}.contact-copy:hover{background:var(--cobalt-fg);color:var(--cobalt)}.contact-status{min-height:1.4em}.contact-profiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--cobalt-line)}.contact-profiles li{display:flex;flex-direction:column;gap:6px;padding:20px 16px 20px 0}.contact-profiles li+li{padding-left:16px;border-left:1px solid var(--cobalt-line)}.contact-profiles a{align-self:flex-start;font:500 20px/1.2 var(--font-display)}.contact-profiles .eyebrow{color:var(--cobalt-fg-2)}.contact-foot{padding-top:18px;border-top:1px solid var(--cobalt-line);color:var(--cobalt-fg-2)}@media(max-width:1100px){.service{grid-template-columns:7% minmax(0,1fr);grid-template-areas:"num head" "num body" "num meta"}.case--stacked .case-story{grid-template-columns:repeat(2,minmax(0,1fr))}.case--stacked .case-story>div:nth-child(3){padding-left:0;border-left:0}.case--stacked .case-story>div:nth-child(n+3){margin-top:16px;border-top:1px solid var(--block-line)}}@media(max-width:900px){.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding-right:0;min-height:min(78svh,720px)}.hero-title{font-size:clamp(46px,15.5vw,130px)}.hero-aside{border-left:0;border-top:1px solid var(--ink);padding:20px 0 28px}.monogram{aspect-ratio:1.7;max-height:none}.monogram strong{font-size:27vw}.service-body{grid-template-columns:1fr}.work-intro,.edu-intro{flex-direction:column;align-items:flex-start}.case--split,.case--research{grid-template-columns:1fr;grid-template-areas:"head" "story" "foot"}.case--research{grid-template-areas:"head" "fig" "story" "foot"}.voxel-figure svg{margin-left:0}.voxel-figure figcaption{text-align:left}.now-grid,.about-grid,.contact-primary{grid-template-columns:1fr}.contact-email{padding-left:0;border-left:0;border-top:1px solid var(--cobalt-line)}.timeline-row{grid-template-columns:minmax(0,1fr) minmax(0,1.6fr)}.timeline-date{grid-column:1 / -1}.edu-track{grid-template-columns:1fr}.edu-step,.edu-step+.edu-step,.edu-step:last-child{padding:22px 0 28px;border-left:0;border-bottom:1px solid var(--line)}.edu-step:last-child{padding-inline:18px}.research{grid-template-columns:1fr}.interests ul{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.section-head{flex-direction:column;gap:6px}.section-head>:last-child{text-align:left}.hero-copy{min-height:0;gap:28px}.hero-actions,.hero-actions .btn{width:100%}.hero-actions .btn{justify-content:center}.service{grid-template-columns:1fr;grid-template-areas:"num" "head" "body" "meta";gap:16px}.case--stacked .case-head{grid-template-columns:1fr}.case--stacked .case-num,.case--stacked .case-meta,.case--stacked .case-title{grid-column:1;grid-row:auto;text-align:left}.case--stacked .case-title{margin-top:22px}.case--stacked .case-story,.case--research .case-story{grid-template-columns:1fr}.case--stacked .case-story>div,.case--stacked .case-story>div+div{padding:16px 0 0;border-left:0}.case--stacked .case-story>div+div{margin-top:16px;border-top:1px solid var(--block-line)}.timeline-row,.interests ul,.research-list,.contact-profiles{grid-template-columns:1fr}.contact-profiles li+li{padding-left:0;border-left:0;border-top:1px solid var(--cobalt-line)}.contact-book .round{width:52px;height:52px}}
