@font-face{font-family:manrope;src:url(/_next/static/media/4c9affa5bc8f420e-s.p.woff2?dpl=dpl_5yaJpookne4tPSoexmjBnWhZFpTj) format("woff2");font-display:swap;font-weight:400 700}@font-face{font-family:manrope Fallback;src:local("Arial");ascent-override:106.45%;descent-override:29.96%;line-gap-override:0.00%;size-adjust:100.14%}.__className_18bef7{font-family:manrope,manrope Fallback}.__variable_18bef7{--font-sans:"manrope","manrope Fallback"}@font-face{font-family:crimson;src:url(/_next/static/media/8d5cc9e96c61be35-s.p.ttf?dpl=dpl_5yaJpookne4tPSoexmjBnWhZFpTj) format("truetype");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:crimson;src:url(/_next/static/media/f73ca9c3bbcb5215-s.p.ttf?dpl=dpl_5yaJpookne4tPSoexmjBnWhZFpTj) format("truetype");font-display:swap;font-weight:400;font-style:italic}@font-face{font-family:crimson Fallback;src:local("Arial");ascent-override:107.54%;descent-override:39.72%;line-gap-override:0.00%;size-adjust:88.27%}.__className_c7b9f5{font-family:crimson,crimson Fallback}.__variable_c7b9f5{--font-serif:"crimson","crimson Fallback"}:root{--color-bg:#f8f9f3;--color-text:#232720;--color-text-secondary:#62665c;--color-accent:#374636;--color-accent-dark:#202c20;--color-border:#d8dbd0;--color-tint:#e3e8da;--color-placeholder:#e9ece4;--color-footer:#20271f;--color-footer-text:#f0f1e9;--page-width:1440px;--gutter:48px;--section-gap:144px;--radius:14px;--ease-out:cubic-bezier(.16,1,.3,1)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:112px;scrollbar-color:#62665c #f8f9f3;scrollbar-gutter:stable}body{color:var(--color-text);background:var(--color-bg);font-family:var(--font-sans),sans-serif;font-size:18px;line-height:1.6;-webkit-font-smoothing:antialiased}body,figure,h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{font-weight:400;line-height:1.12;letter-spacing:-.025em;text-wrap:balance}p{text-wrap:pretty}a{text-decoration:none;text-underline-offset:5px}a,button{color:inherit}button{font:inherit;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}img,video{display:block;max-width:100%}::selection{color:var(--color-text);background:#d3dec3}:focus-visible{outline:2px solid var(--color-accent);outline-offset:6px}main:focus{outline:none}.page-shell{width:100%;max-width:calc(var(--page-width) + var(--gutter) * 2);padding-inline:var(--gutter);margin-inline:auto}.skip-link{position:fixed;z-index:100;top:10px;left:12px;transform:translateY(-180%);padding:10px 18px;color:var(--color-bg);background:var(--color-text)}.skip-link:focus{transform:translateY(0)}.arrow-icon,.logo-mark{flex-shrink:0;vertical-align:middle}.site-header{position:sticky;z-index:30;top:0;background:var(--color-bg)}.header-inner{display:flex;align-items:center;min-height:88px;gap:44px}.identity{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;margin-right:auto}.identity .logo-mark{width:36px;height:36px;transition:transform .5s var(--ease-out)}.identity:hover .logo-mark{transform:rotate(-8deg)}.desktop-navigation{gap:30px}.desktop-navigation,.nav-link{display:flex;align-items:center}.nav-link{min-height:44px;font-size:15px;white-space:nowrap}.nav-roll{position:relative;display:block;height:1.6em;overflow:hidden}.nav-roll>span{display:block;transition:transform .4s var(--ease-out)}.nav-roll>span:last-child{position:absolute;top:100%;left:0}.nav-link:focus-visible .nav-roll>span,.nav-link:hover .nav-roll>span{transform:translateY(-100%)}.menu-toggle{display:none;border:0;padding:0;min-height:44px;background:transparent;font-size:16px}.mobile-menu{width:calc(100% - 32px);max-width:420px;height:calc(100dvh - 32px);max-height:none;margin:16px 16px 16px auto;padding:0;border:0;border-radius:var(--radius);color:var(--color-text);background:var(--color-tint)}.mobile-menu::backdrop{background:#20271f59}.mobile-menu[open]{animation:menu-arrive .35s var(--ease-out)}html:has(.mobile-menu[open]){overflow:hidden}.menu-panel{display:flex;flex-direction:column;height:100%;padding:10px 20px 26px}.menu-top{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #23272026}.menu-top button{display:grid;place-items:center;border:0;border-radius:50%;background:transparent;width:44px;height:44px;margin-right:-10px}.menu-top button:focus-visible{outline-offset:0}.mobile-menu:focus{outline:none}.menu-panel nav{display:flex;flex-direction:column;margin-top:26px}.menu-panel nav a{width:fit-content;font-size:clamp(32px,10vw,44px);line-height:1.5;letter-spacing:-.03em}.menu-panel nav a:hover{text-decoration:underline}.menu-bottom{margin-top:auto;padding-top:24px;display:flex;justify-content:space-between;align-items:flex-end;gap:20px}.menu-bottom p{font-size:15px;line-height:1.4}.intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,400px);grid-template-areas:"title rings" "copy rings" "facts facts";column-gap:6vw;align-items:start;padding:56px 0 76px}.intro h1{grid-area:title}.intro-description{grid-area:copy}.intro-facts{grid-area:facts}.hero-rings{grid-area:rings;align-self:center;margin:0}.hero-rings-stage{position:relative;width:100%;aspect-ratio:1}.hero-rings svg{display:block;width:100%;height:100%;overflow:visible}.hero-ring{cursor:pointer;transition:opacity .45s ease}.hero-ring:focus{outline:none}.hero-rings[data-active=levels] .hero-ring:not(.hero-ring-levels),.hero-rings[data-active=suppco] .hero-ring:not(.hero-ring-suppco),.hero-rings[data-active=zero] .hero-ring:not(.hero-ring-zero){opacity:.5}.hero-ring-hit{fill:none;stroke:transparent;stroke-width:34;pointer-events:stroke}.hero-ring-levels line{stroke:var(--range);stroke-width:5;stroke-linecap:round;animation:hero-tick .5s var(--ease-out) both;animation-delay:calc(var(--i) * 6ms)}.hero-ring-levels [data-range=in]{--range:#0fb487}.hero-ring-levels [data-range=elevated]{--range:#ff9f1c}.hero-ring-levels [data-range=high]{--range:#f0503a}.hero-ring-levels [data-future]{stroke:#d6dacd}.hero-ring-track{fill:none;stroke:#e4e1d6}.hero-ring-zero .hero-ring-track{stroke:#fbe4d8;stroke-width:20}.hero-ring-zero path{fill:none;stroke-width:20;pointer-events:stroke}.hero-ring-zero path[data-filled]{animation:hero-tick .35s ease both;animation-delay:calc(.4s + var(--i) * 5ms)}.hero-ring-knob{fill:#fff;stroke-width:5;filter:drop-shadow(0 3px 6px #2b261d40);animation:hero-tick .5s ease 1s both}.hero-ring-suppco .hero-ring-track{stroke-width:14;pointer-events:stroke}.hero-ring-score{fill:none;stroke:#0fa968;stroke-width:14;stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:calc(100 - var(--score));animation:hero-score 1.4s var(--ease-out) both .9s;pointer-events:stroke}.hero-rings-center{position:absolute;inset:30%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;text-align:center;pointer-events:none}.hero-rings-name{font-size:13px;color:var(--color-text-secondary);animation:pill-swap .5s var(--ease-out);white-space:nowrap}.hero-rings-value{font-size:clamp(28px,3vw,40px);font-weight:500;letter-spacing:-.03em;line-height:1.15;font-variant-numeric:tabular-nums}.hero-rings-note{font-size:11.5px;line-height:1.35;color:var(--color-text-secondary);animation:pill-swap .5s var(--ease-out)}.hero-rings figcaption{margin-top:12px;font-size:13px;color:var(--color-text-secondary);text-align:center}@keyframes hero-tick{0%{opacity:0}}@keyframes hero-score{0%{stroke-dashoffset:100}}.intro h1{font-size:clamp(56px,5.8vw,88px);line-height:1.03;letter-spacing:-.04em}.intro h1>span{display:block}.intro h1>span:last-child{animation:type-arrive 1.1s var(--ease-out) both}.intro-description{max-width:560px;font-size:18px;line-height:1.6}.intro-current{font-size:14px;line-height:1.5;color:var(--color-text-secondary);text-align:right}.intro-current>span{display:block}.intro-current a{display:inline-flex;align-items:center;gap:8px;min-height:44px;color:var(--color-text)}.intro-current a:hover{text-decoration:underline}.intro-current .arrow-icon{width:16px;height:16px}.section-intro{display:flex;justify-content:space-between;align-items:flex-end;gap:48px;padding-bottom:32px}.section-intro h2{font-size:36px;font-weight:500;line-height:1.15;letter-spacing:-.03em}.section-statement{font-size:16px;line-height:1.6;max-width:390px}.studio-note{display:flex;align-items:center;gap:13px;font-size:14px;line-height:1.5}.studio-note img{flex-shrink:0}.studio-note a{font-weight:500;text-decoration:underline;white-space:nowrap}.studio-note a .arrow-icon{width:13px;height:13px}.project-card{min-width:0}.project-visual{display:block;border-radius:var(--radius);isolation:isolate}.project-artwork,.project-visual{position:relative;overflow:hidden}.project-artwork{width:100%;aspect-ratio:1.3;background:var(--color-placeholder)}.project-artwork>img{object-fit:cover;transition:transform 1.1s var(--ease-out)}.project-visual:hover .project-artwork>img{transform:scale(1.035)}.project-open{position:absolute;display:grid;place-items:center;bottom:22px;right:22px;width:46px;height:46px;border-radius:50%;color:var(--color-bg);background:var(--color-text);opacity:0;transform:translateY(8px);transition:opacity .3s ease,transform .55s var(--ease-out)}.project-visual:focus-visible .project-open,.project-visual:hover .project-open{opacity:1;transform:translateY(0)}.project-caption{padding-top:23px}.project-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.project-heading h3{font-size:24px;font-weight:500;letter-spacing:-.025em;line-height:1.25}.project-heading h3 a:hover{text-decoration:underline}.caption-arrow{transition:transform .4s var(--ease-out)}.project-card:hover .caption-arrow{transform:translate(3px,-3px)}.project-description{font-size:18px;line-height:1.55;margin-top:11px;max-width:60ch}.project-contribution{margin-top:12px;color:var(--color-text-secondary);font-size:14px;line-height:1.6}.project-tags{display:flex;flex-wrap:wrap;gap:8px 13px;padding:0;list-style:none;margin:22px 0 0;color:var(--color-text-secondary)}.project-tags li{font-size:13px;line-height:1.5}.project-tags li+li:before{content:"/";margin-right:13px;color:#959b8d}.project-card-featured .project-artwork{aspect-ratio:2.3}.project-card-featured .project-caption{display:grid;grid-template-columns:1fr 1.3fr;gap:6px 64px}.project-card-featured .project-heading{align-self:start}.project-card-featured .caption-arrow{display:none}.project-card-featured .project-heading h3{font-size:28px}.project-card-featured .project-description{margin-top:0;font-size:20px}.project-card-featured .project-tags{grid-column:1;grid-row:2;margin-top:0}.project-card-featured .project-caption-body{grid-column:2;grid-row:1/3}.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:96px 48px;align-items:start}.earlier-roles>h3{font-size:28px;letter-spacing:-.03em}.earlier-work .text-link{margin-left:6px;font-size:14px;color:var(--color-text)}.intro-description{margin-top:38px}.intro-facts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px 40px;margin:56px 0 0;padding-top:22px;border-top:1px solid var(--color-border)}.intro-facts dt{font-size:13px;color:var(--color-text-secondary);margin-bottom:4px}.intro-facts dd{margin:0;font-size:15px;line-height:1.5}.intro-facts a{text-decoration:underline}.intro-facts .arrow-icon{width:14px;height:14px;margin-left:4px;vertical-align:-1px}.work-section{margin-top:32px}.job-grid,.side-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:88px 48px;align-items:start}.job-caption,.side-caption{padding-top:22px}.job-heading{display:flex;align-items:baseline;justify-content:space-between;gap:16px}.job-heading h3,.side-heading h3{font-size:24px;font-weight:500;line-height:1.25;letter-spacing:-.025em}.job-heading h3 a:hover,.side-heading h3 a:hover{text-decoration:underline}.job-heading>span{flex-shrink:0;font-size:14px;color:var(--color-text-secondary);font-variant-numeric:tabular-nums}.job-line{margin-top:10px;font-size:18px;line-height:1.55;max-width:52ch}.job-result{margin-top:14px;font-size:15px;font-weight:600;color:var(--color-accent)}.job-role{margin-top:4px;font-size:14px;color:var(--color-text-secondary)}.earlier-roles{margin-top:120px}.earlier-roles>h3{margin-bottom:18px;font-size:24px;font-weight:500;letter-spacing:-.025em}.role-table{margin:0;padding:0;list-style:none;border-bottom:1px solid var(--color-border)}.role-table li{display:grid;grid-template-columns:8rem minmax(0,1fr) minmax(0,1fr) minmax(0,1.7fr);gap:24px;align-items:baseline;padding-block:18px;border-top:1px solid var(--color-border);font-size:15px}.role-years{color:var(--color-text-secondary);font-size:14px;font-variant-numeric:tabular-nums}.role-company{font-size:18px;font-weight:500}.role-note{color:var(--color-text-secondary)}.earlier-roles .earlier-work{border:0;padding-top:18px}.side-heading{display:flex;align-items:center;gap:12px}.status-pill{display:inline-flex;align-items:center;gap:6px;padding:2px 10px;border-radius:30px;font-size:12px;font-weight:500;color:var(--color-accent);background:#f8f9f3b3}.status-pill:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.side-platform{margin-left:auto}.side-made,.side-platform{font-size:14px;color:var(--color-text-secondary)}.side-made{margin-top:8px;max-width:56ch}.side-links{display:flex;flex-wrap:wrap;gap:0 26px;margin-top:12px}.side-links a{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:14px;text-decoration:underline}.side-links .arrow-icon{width:14px;height:14px}.in-progress{margin-top:88px}.in-progress>h3{margin-bottom:12px}.in-progress-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 48px}.in-progress .development-note{margin-top:0}.side-projects-band{margin-top:var(--section-gap);padding-block:96px 112px;background:var(--color-tint)}.side-projects-band .artwork-movable{background:#eeebe2}.in-progress>h3{font-size:15px;font-weight:600;margin-bottom:8px}.contact-section>:not(h2){grid-column:2}.contact-status{margin-top:14px;font-size:15px!important;color:#bac3b3!important}.about-copy a{text-decoration:underline}.contact-details{margin-top:18px;font-size:14px!important}.contact-details a{text-decoration:underline}.artwork-levels>img{object-fit:contain}.artwork-zero>img{object-position:50% 50%}.artwork-movable{background:#e9e6dc}.artwork-title{position:absolute;top:14%;left:6%;z-index:2;pointer-events:none}.artwork-title>span{display:block;font-size:clamp(30px,4vw,58px);font-weight:600;letter-spacing:-.04em;line-height:1}.artwork-title p{font-size:clamp(18px,1.8vw,26px);line-height:1.4;margin-top:22px;letter-spacing:-.02em}.artwork-footnote{position:absolute;bottom:9%;left:6%;font-size:12px}.device-cluster{position:absolute;inset:0 2% 0 auto;width:67%;display:flex;align-items:center;justify-content:center;gap:4%;transform:translateY(var(--drift-y,0))}.device{width:26%;border-radius:24px;overflow:hidden;box-shadow:0 22px 34px #3f382426;transition:transform .85s var(--ease-out)}.device img{width:100%;height:auto}.device-0{transform:translateY(9%)}.device-1{transform:translateY(-3%)}.device-2{transform:translateY(16%)}.project-visual:hover .device-0{transform:translateY(5%)}.project-visual:hover .device-1{transform:translateY(-6%)}.project-visual:hover .device-2{transform:translateY(10%)}.artwork-screens-zero{background:radial-gradient(80% 90% at 50% 40%,#fff6f1 0,#f4dfd5 100%)}.artwork-screens-levels{background:radial-gradient(80% 90% at 50% 40%,#1f282b 0,#0d1113 100%)}.screens-cover{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:4.5%;padding-inline:8%;transform:translateY(var(--drift-y,0))}.screens-cover-phone{width:27%;overflow:hidden;border-radius:9%/4.2%;box-shadow:0 24px 40px -12px #2a1a1040;transition:transform .85s var(--ease-out)}.artwork-screens-levels .screens-cover-phone{box-shadow:0 24px 44px -12px #000a,0 0 0 1px #ffffff14}.screens-cover-phone img{display:block;width:100%;height:auto}.screens-cover-phone-0{transform:translateY(6%)}.screens-cover-phone-1{transform:translateY(-4%)}.screens-cover-phone-2{transform:translateY(10%)}.project-visual:hover .screens-cover-phone-0{transform:translateY(3%)}.project-visual:hover .screens-cover-phone-1{transform:translateY(-7%)}.project-visual:hover .screens-cover-phone-2{transform:translateY(7%)}.case-hero .screens-cover{align-items:flex-start;padding:5% 18% 0;gap:4%}.case-hero .screens-cover-phone{width:22%}.case-gallery.case-gallery-dark{background:#111517}.case-gallery-dark figcaption{color:#9aa49e!important}.case-gallery.case-gallery-warm{background:#f6e6df}.case-gallery figure img{box-shadow:0 14px 28px -14px #0006}.artwork-movable.is-compact .artwork-footnote,.artwork-movable.is-compact .artwork-title{display:none}.artwork-movable.is-compact .device-cluster{inset:0;top:0;width:100%;height:100%;padding-inline:7%;gap:5%;align-items:center}.artwork-movable.is-compact .device{display:block;width:30%;border-radius:24px}.artwork-movable.is-compact .device-0{transform:translateY(5%)}.artwork-movable.is-compact .device-1{transform:translateY(-4%)}.artwork-movable.is-compact .device-2{transform:translateY(8%)}.project-visual:hover .artwork-movable.is-compact .device-0{transform:translateY(2%)}.project-visual:hover .artwork-movable.is-compact .device-1{transform:translateY(-7%)}.project-visual:hover .artwork-movable.is-compact .device-2{transform:translateY(5%)}.artwork-waking{background:#151617;color:#eeeee8}.artwork-waking .artwork-title{top:9%;left:8%}.artwork-waking .artwork-title>span{font-size:clamp(28px,2.7vw,40px);font-weight:500;letter-spacing:-.03em}.artwork-waking .artwork-title p{font-family:var(--font-sans),sans-serif;font-size:14px;margin-top:12px;color:#bcc0b8}.waking-views{position:absolute;inset:26% 8% 8%;transform:translateY(var(--drift-y,0))}.waking-views .screen-crop{position:absolute;width:70%;max-width:280px;border-radius:8%/10%;background:#000;box-shadow:0 18px 32px #0004}.waking-day{left:0;top:0}.waking-views .waking-focus{right:0;bottom:0;margin:0;border-radius:9%/36%}.artwork-waking .artwork-footnote{left:8%;bottom:3%;color:#bcc0b8;font-size:11px}.artwork-house{background:#bd644a}.house-studies{position:absolute;inset:0}.house-study{position:absolute;height:auto;box-shadow:0 14px 25px #55261730;transition:transform .8s var(--ease-out)}.house-study-horse{left:6%;top:20%;width:52%;transform:rotate(-7deg)}.house-study-heritage{right:4%;top:10%;width:49%;transform:rotate(7deg)}.house-study-wordmark{right:5%;bottom:17%;width:39%;transform:rotate(3deg)}.house-study-caption{position:absolute;left:7%;bottom:5%;color:#120d09;font-size:12px}.project-visual:hover .house-study-horse{transform:translateY(-5px) rotate(-4deg)}.project-visual:hover .house-study-heritage{transform:translateY(-4px) rotate(4deg)}.project-visual:hover .house-study-wordmark{transform:translateY(3px) rotate(0)}.artwork-mindbloom{background:#dfe7e4}.artwork-suppco{background:#e0e7ed}.screen-pair{position:absolute;display:flex;justify-content:center;gap:10%;width:100%;height:100%;padding:8% 10% 0;transform:translateY(var(--drift-y,0))}.screen-crop{position:relative;flex-shrink:0;align-self:flex-start;width:35%;overflow:hidden;border-radius:20px;box-shadow:0 16px 28px #152b2b1a}.screen-crop img{position:absolute;height:auto}.screen-crop:nth-child(2){margin-top:6%}.artwork-suppco .screen-pair{padding-top:16%;gap:7%}.artwork-suppco .screen-crop{width:42%;max-width:260px;border-radius:12% 12% 0 0/6.5% 6.5% 0 0;background:#fff}.artwork-suppco .screen-crop:nth-child(2){margin-top:19%}.development-note{display:flex;justify-content:space-between;align-items:center;gap:32px;padding-block:32px;margin-top:72px;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.development-name{font-size:22px;font-weight:500;letter-spacing:-.02em}.development-note p{font-size:15px;color:var(--color-text-secondary);margin-top:4px}.development-detail{margin-left:auto;white-space:nowrap;font-size:13px;color:var(--color-text-secondary)}.development-note:hover .development-name{text-decoration:underline}.split-section{display:grid;grid-template-columns:1fr 1fr;gap:9vw;margin-top:var(--section-gap);padding-top:56px;border-top:1px solid var(--color-border)}.about-copy h2,.split-section h2{font-size:clamp(36px,3.6vw,52px);line-height:1.12;letter-spacing:-.035em}.section-aside{font-size:17px;line-height:1.6;margin-top:28px;max-width:370px;color:var(--color-text-secondary)}.text-link{display:inline-flex;align-items:center;gap:12px;min-height:44px;font-size:15px;text-decoration:underline}.text-link:hover{text-decoration-thickness:2px}.capability-list>div{padding-block:25px 30px;border-bottom:1px solid var(--color-border)}.capability-list>div:first-child{padding-top:0}.capability-list>div:last-child{border:0;padding-bottom:0}.capability-list h3{font-size:23px;font-weight:500;line-height:1.2}.capability-list p{margin-top:13px;font-size:16px;max-width:65ch}.capability-list .text-link{margin-top:12px;font-size:14px}.experience-section .text-link{margin-top:24px}.career-row{padding-block:27px;border-top:1px solid var(--color-border)}.career-row:first-child{border:0;padding-top:0}.career-top{display:flex;align-items:baseline;justify-content:space-between;gap:20px}.career-top h3,.career-top h4{font-size:22px;font-weight:500;line-height:1.2}.career-top a:hover{text-decoration:underline}.career-top>span{flex-shrink:0;font-size:13px;color:var(--color-text-secondary);font-variant-numeric:tabular-nums}.career-role{font-size:14px;margin-top:10px}.career-row p:last-child{margin-top:9px}.career-row p:last-child,.earlier-work{color:var(--color-text-secondary);font-size:14px}.earlier-work{padding-top:24px}.about-section,.earlier-work{border-top:1px solid var(--color-border)}.about-section{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:9vw;padding-block:96px 130px;margin-top:104px}.about-person{width:64%;justify-self:center}.about-person img{width:100%;height:auto;border-radius:var(--radius)}.about-person p{font-size:14px;margin-top:22px;color:var(--color-text-secondary)}.about-copy h2{margin-bottom:30px}.about-copy p{max-width:65ch;font-size:17px;line-height:1.65}.about-copy p+p{margin-top:20px}.about-copy .personal-note{font-family:var(--font-serif),serif;font-size:clamp(28px,2.8vw,40px);line-height:1.2;letter-spacing:-.015em;max-width:28ch;margin-top:34px;color:var(--color-accent)}.site-footer{color:var(--color-footer-text);background:var(--color-footer)}.contact-section{display:grid;grid-template-columns:1fr 1fr;column-gap:10vw;align-items:center;padding:92px max(var(--gutter),calc((100vw - 1440px) / 2));border-bottom:1px solid #f0f1e933}.contact-section h2{font-size:clamp(42px,4.8vw,68px);line-height:1.08;letter-spacing:-.035em;grid-row:1/3}.contact-section>p{max-width:425px;font-size:17px;line-height:1.6;color:#d5dacd}.button{display:inline-flex;align-items:center;justify-content:center;gap:14px;width:fit-content;min-height:48px;padding:10px 22px;border-radius:30px;color:var(--color-bg);background:var(--color-accent);font-size:16px;line-height:1.5;transition:background .25s ease,gap .35s var(--ease-out)}.button:hover{background:var(--color-accent-dark);gap:20px}.button-secondary{border:1px solid var(--color-border);color:var(--color-text);background:transparent}.button-secondary:hover{background:var(--color-placeholder)}.contact-section .button{margin-top:26px;color:var(--color-text);background:var(--color-tint)}.contact-section .button:hover{background:#f0f1e9}.footer-content{padding-top:56px}.footer-top{display:grid;grid-template-columns:1fr 1fr 1.6fr auto;gap:40px}.footer-social,.footer-top nav{display:flex;flex-direction:column;align-items:flex-start}.footer-top a{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:14px}.footer-top a:hover{text-decoration:underline}.footer-social .arrow-icon{width:16px;height:16px}.footer-social a:last-child .arrow-icon{transform:rotate(-90deg)}.footer-contact p{margin-top:16px;font-size:14px;color:#d5dacd}.footer-contact>span{display:block;margin-top:24px;font-size:13px;color:#bac3b3}.footer-mark{width:60px;height:60px;margin-top:7px}.footer-signature{padding-block:70px 28px;font-family:var(--font-serif),serif;font-size:clamp(72px,17vw,250px);font-style:italic;letter-spacing:-.03em;line-height:1.05;text-align:center;white-space:nowrap}.site-footer :focus-visible{outline-color:var(--color-tint)}.case-page{padding-bottom:110px}.case-introduction{padding:44px 0 56px}.back-link{display:inline-flex;align-items:center;gap:10px;min-height:44px;color:var(--color-text-secondary);font-size:14px;margin-bottom:30px}.back-link:hover{text-decoration:underline}.case-heading-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:8vw;align-items:end}.case-header h1{font-size:clamp(44px,4.7vw,68px);line-height:1.08;letter-spacing:-.035em}.case-summary{font-size:18px;line-height:1.6;max-width:520px}.case-links{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;margin-top:24px}.case-links .button{font-size:14px}.case-meta{display:flex;gap:28px 5vw;flex-wrap:wrap;padding:30px 0 0;margin:36px 0 0;border-top:1px solid var(--color-border)}.case-meta>div{max-width:260px}.case-meta dt{font-size:13px;color:var(--color-text-secondary);margin-bottom:5px}.case-meta dd{font-size:14px;margin:0}.case-hero{overflow:hidden;border-radius:var(--radius)}.case-hero .project-artwork{aspect-ratio:2.25}.case-hero .artwork-levels{aspect-ratio:2}.case-hero .artwork-levels>img{width:auto!important;max-width:100%;margin-inline:auto}.case-hero .screen-pair{width:70%;left:15%;padding-top:5%}.case-hero .screen-crop{width:31%}.case-hero .screen-crop:nth-child(2){margin-top:9%}.case-hero .artwork-suppco .screen-pair{padding-top:10%}.case-hero .artwork-suppco .screen-crop{width:38%}.case-hero .waking-views{inset:14% 7% 14% 40%}.case-hero .waking-views .screen-crop{width:58%;max-width:340px}.case-hero .artwork-waking .artwork-footnote{bottom:18%}.case-hero .house-studies{width:70%;left:15%}.case-hero .house-study-horse{width:39%;top:8%}.case-hero .house-study-heritage{width:45%;top:7%;right:6%}.case-hero .house-study-wordmark{width:32%;bottom:7%;right:15%}.case-hero .artwork-waking .artwork-title{top:20%}.case-results{display:grid;grid-template-columns:200px minmax(0,1fr);gap:8vw;padding-top:72px}.case-results h2{padding-top:22px;font-size:14px;font-weight:600;letter-spacing:0}.case-results dl{margin:0}.case-results dl>div{display:grid;grid-template-columns:minmax(0,15rem) minmax(0,1fr);align-items:baseline;gap:32px;padding-block:18px 20px;border-top:1px solid var(--color-border)}.case-results dl>div:last-child{border-bottom:1px solid var(--color-border)}.case-results dd{order:-1;margin:0;font-size:clamp(40px,4vw,58px);line-height:1.05;letter-spacing:-.04em;font-variant-numeric:tabular-nums}.case-results dt{font-size:16px;line-height:1.5;color:var(--color-text-secondary);max-width:44ch}.count-up{display:inline-block}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.case-brief{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5vw;margin:0;padding-block:54px 65px}.case-brief dt{font-size:14px;font-weight:600;margin-bottom:12px}.case-brief dd{margin:0;font-size:16px;line-height:1.6;max-width:42ch}.case-layout{display:grid;grid-template-columns:200px minmax(0,1fr);gap:8vw;border-top:1px solid var(--color-border);padding-top:60px}.case-nav{position:sticky;top:115px;align-self:start;display:grid;grid-template-columns:1px minmax(0,1fr);column-gap:20px;font-size:14px}.case-nav>span:first-child{grid-column:1/-1;font-size:14px;font-weight:600;margin-bottom:14px}.case-nav ol{grid-column:2;grid-row:2}.case-nav-track{position:relative;grid-column:1;grid-row:2;background:var(--color-border)}.case-nav-track i{position:absolute;inset:0;background:var(--color-text);transform:scaleY(var(--progress,0));transform-origin:top}.case-nav a{display:block;min-height:44px;padding-block:10px;color:var(--color-text-secondary);transition:color .3s ease,transform .5s var(--ease-out)}.case-nav a.is-active{color:var(--color-text);transform:translateX(4px)}.case-progress{display:none}.case-nav a:hover{color:var(--color-text);text-decoration:underline}.case-nav ol,.case-nav ul{list-style:none;margin:0;padding:0}.case-content{min-width:0}.case-nav-mobile{display:none}.case-section{margin-bottom:84px}.case-section h2{font-size:32px;font-weight:500;line-height:1.2;letter-spacing:-.025em;margin-bottom:22px}.case-section>p{max-width:68ch;font-size:18px;line-height:1.7;margin-bottom:22px}.case-section>ul{padding-left:20px}.case-image{margin-block:40px 56px}.case-image img{width:100%;height:auto;border-radius:8px}.case-image a{display:block}.case-page figcaption{font-size:13px;line-height:1.5;color:var(--color-text-secondary);margin-top:14px}.case-gallery{display:flex;overflow-x:auto;gap:24px;padding:36px;border-radius:var(--radius);background:#e9e6dc;margin-block:36px 50px;scroll-snap-type:x proximity}.case-gallery>figure{flex:1 0 0;min-width:0;scroll-snap-align:center}.case-gallery img{width:100%;height:auto;border-radius:20px}.case-video{margin-block:36px 50px}.case-video video{width:100%;height:auto;max-height:650px;background:var(--color-footer);border-radius:var(--radius)}.next-project{display:grid;grid-template-columns:1fr auto;gap:18px 24px;border-top:1px solid var(--color-border);padding-top:40px;margin-top:40px}.next-project h2{grid-column:1;font-size:40px;line-height:1.15;max-width:800px}.next-project>span{grid-column:1;grid-row:1;font-size:14px}.next-project p{grid-column:1;max-width:650px;color:var(--color-text-secondary);font-size:16px}.next-project>svg{grid-column:2;grid-row:2;width:30px;height:30px}.next-project:hover h2{text-decoration:underline}.site-header{view-transition-name:site-header}.case-hero,.project-visual{view-transition-class:project-media}::view-transition-old(root){animation:vt-leave .2s ease both}::view-transition-new(root){animation:vt-arrive .45s .1s var(--ease-out) both}::view-transition-group(*){animation-duration:.65s;animation-timing-function:var(--ease-out)}::view-transition-group(.project-media){overflow:hidden;border-radius:var(--radius)}::view-transition-new(.project-media),::view-transition-old(.project-media){height:100%;object-fit:cover;animation-duration:.4s}@keyframes vt-leave{to{opacity:0}}@keyframes vt-arrive{0%{opacity:0;transform:translateY(14px)}}.demo{margin-block:44px 64px}.demo-frame{--demo-bg:#fffdf9;--demo-ink:#232720;--demo-muted:#676b62;--demo-line:#e8e4da;--demo-control:#f1eee6;--demo-thumb:#fffdf9;container-type:inline-size;overflow:hidden;border:1px solid var(--demo-line);border-radius:var(--radius);color:var(--demo-ink);background:var(--demo-bg);box-shadow:0 30px 60px -36px #2f2c1f4d}.demo-dark .demo-frame{--demo-bg:#111517;--demo-ink:#eef2ee;--demo-muted:#9aa49e;--demo-line:#242b2d;--demo-control:#1b2224;--demo-thumb:#2d3638;box-shadow:0 30px 60px -34px #0b0f1099}.demo-frame ::selection{color:var(--demo-bg);background:var(--demo-ink)}.demo-frame :focus-visible{outline-color:var(--demo-ink)}.demo-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 14px 14px 24px;border-bottom:1px solid var(--demo-line)}.demo-title{font-size:14px;font-weight:500}.demo-toggle{position:relative;display:grid;grid-template-columns:1fr 1fr;padding:4px;border-radius:30px;background:var(--demo-control)}.demo-toggle button{position:relative;z-index:1;min-height:36px;padding:6px 16px;border:0;border-radius:30px;color:var(--demo-muted);background:transparent;font-size:13px;white-space:nowrap;transition:color .3s ease}.demo-toggle button:hover,.demo-toggle button[aria-pressed=true]{color:var(--demo-ink)}.demo-toggle button:focus-visible{outline-offset:2px}.demo-toggle-thumb{position:absolute;top:4px;bottom:4px;left:4px;width:calc(50% - 4px);border-radius:30px;background:var(--demo-thumb);box-shadow:0 1px 2px #0000001f,0 6px 14px -6px #0000003d;transition:transform .5s var(--ease-out)}.demo-toggle[data-mode=after] .demo-toggle-thumb{transform:translateX(100%)}.demo-stage{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;gap:48px;padding:52px 48px 44px}.demo-side,.demo-stage{display:grid}.demo-side>*,.levels-visual>*{grid-area:1/1}.demo-panel-after,.demo-panel-before{transition:opacity .45s ease,transform .6s var(--ease-out),visibility 0s}.demo-stage[data-mode=after] .demo-panel-before,.demo-stage[data-mode=before] .demo-panel-after{visibility:hidden;opacity:0;transform:translateY(10px);pointer-events:none;transition:opacity .25s ease,transform .4s var(--ease-out),visibility 0s .25s}.demo-panel-quote{margin-bottom:12px;font-size:26px;font-weight:500;line-height:1.2;letter-spacing:-.025em}.demo-panel-before p:not(.demo-panel-quote),.levels-notes>p:not(.demo-panel-quote){max-width:34ch;color:var(--demo-muted);font-size:15px;line-height:1.6}.demo-controls{display:flex;align-items:center;gap:18px;padding:14px 24px 16px 16px;border-top:1px solid var(--demo-line)}.demo-replay{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;border:1px solid var(--demo-line);border-radius:50%;color:var(--demo-ink);background:transparent;transition:background .2s ease}.demo-replay svg{transition:transform .6s var(--ease-out)}.demo-replay:hover{background:var(--demo-control)}.demo-replay:hover svg{transform:rotate(-60deg)}.demo-replay[data-playing] svg{animation:demo-spin 1.4s linear infinite}.demo-scrubber{display:flex;flex:1;min-width:0}.demo-scrubber input{width:100%;height:32px;margin:0;background:transparent;cursor:pointer;appearance:none;-webkit-appearance:none}.demo-scrubber input:focus-visible{outline-offset:4px;border-radius:4px}.demo-scrubber input::-webkit-slider-runnable-track{height:4px;border-radius:4px;background:linear-gradient(to right,var(--demo-ink) var(--fill),var(--demo-line) var(--fill))}.demo-scrubber input::-webkit-slider-thumb{width:20px;height:20px;margin-top:-8px;border:1.5px solid var(--demo-ink);border-radius:50%;background:var(--demo-bg);box-shadow:0 3px 8px #0000002e;appearance:none;-webkit-appearance:none;transition:transform .25s var(--ease-out)}.demo-scrubber input:active::-webkit-slider-thumb{transform:scale(1.2)}.demo-scrubber input::-moz-range-track{height:4px;border-radius:4px;background:var(--demo-line)}.demo-scrubber input::-moz-range-progress{height:4px;border-radius:4px;background:var(--demo-ink)}.demo-scrubber input::-moz-range-thumb{width:18px;height:18px;border:1.5px solid var(--demo-ink);border-radius:50%;background:var(--demo-bg);box-shadow:0 3px 8px #0000002e}.demo-readout{min-width:6.5em;font-size:14px;text-align:right;font-variant-numeric:tabular-nums}.demo-readout span{color:var(--demo-muted)}.zero-dial{--size:320px;--stroke:22px;--start:#ffc08f;position:relative;justify-self:center;width:var(--size);aspect-ratio:1}.zero-dial:before{content:"";inset:calc(var(--stroke) / 2);border:1px dashed #cfcabd;opacity:0;transition:opacity .5s ease}.zero-dial:before,.zero-ring{position:absolute;border-radius:50%}.zero-ring{inset:0;-webkit-mask:radial-gradient(farthest-side,#0000 calc(100% - var(--stroke) - .5px),#000 calc(100% - var(--stroke)));mask:radial-gradient(farthest-side,#0000 calc(100% - var(--stroke) - .5px),#000 calc(100% - var(--stroke)));transition:opacity .5s ease,transform .7s var(--ease-out)}.zero-ring>span{position:absolute;inset:0;background:conic-gradient(#ffc08f 0deg,#ffc08f 44deg,#ff9a65 76deg,#ff9a65 224deg,#fe6e64 256deg,#fe6e64 332deg,#e23e5c 1turn)}.zero-ring-track{opacity:.15}.zero-ring-fill{-webkit-mask:conic-gradient(#000 calc(var(--p) * 1turn),#0000 0);mask:conic-gradient(#000 calc(var(--p) * 1turn),#0000 0)}.zero-cap{top:0;width:var(--stroke);height:var(--stroke);margin-left:calc(var(--stroke) / -2);border-radius:50%;background:var(--start);transition:opacity .5s ease}.zero-cap,.zero-knob{position:absolute;left:50%}.zero-knob{top:50%;width:calc(var(--stroke) + 10px);height:calc(var(--stroke) + 10px);margin:calc((var(--stroke) + 10px) / -2);border:5px solid var(--zone);border-radius:50%;background:#fff;box-shadow:0 6px 14px #2b261d33;transform:rotate(calc(var(--p) * 1turn)) translateY(calc(var(--size) / -2 + var(--stroke) / 2));transition:border-color .5s ease,opacity .5s ease}.zero-face{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;text-align:center;transition:opacity .45s ease,transform .6s var(--ease-out)}.zero-face-goal,.zero-face-label{color:var(--demo-muted);font-size:13px}.zero-face-time{font-size:64px;font-weight:500;line-height:1.05;letter-spacing:-.04em;font-variant-numeric:tabular-nums}.zero-face-before .zero-face-time{font-size:76px}.zero-zone-pill{display:inline-flex;align-items:center;gap:8px;margin-top:10px;padding:5px 13px 5px 10px;border-radius:30px;background:color-mix(in srgb,var(--zone) 16%,transparent);font-size:13px;font-weight:500;animation:pill-swap .6s var(--ease-out)}.zero-zone-pill i{width:8px;height:8px;border-radius:50%;background:var(--zone)}.demo-stage[data-mode=after] .zero-face-before,.demo-stage[data-mode=before] .zero-face-after{opacity:0;transform:scale(.94)}.demo-stage[data-mode=before] .zero-cap,.demo-stage[data-mode=before] .zero-knob,.demo-stage[data-mode=before] .zero-ring{opacity:0}.demo-stage[data-mode=before] .zero-ring{transform:scale(.92) rotate(-30deg)}.demo-stage[data-mode=before] .zero-dial:before{opacity:1}.zero-zones{display:grid;gap:2px;margin:0;padding:0;list-style:none}.zero-zones li{display:grid;grid-template-columns:12px minmax(0,1fr);gap:14px;padding:12px 14px;border-radius:10px;transition:background .4s ease,opacity .4s ease}.zero-zones li[data-state=upcoming]{opacity:.42}.zero-zones li[data-state=current]{background:color-mix(in srgb,var(--zone) 14%,transparent)}.zero-zone-swatch{width:12px;height:12px;margin-top:6px;border-radius:50%;background:var(--zone)}.zero-zone-name{display:flex;justify-content:space-between;gap:12px;font-size:15px;font-weight:500}.zero-zone-name span{color:var(--demo-muted);font-size:13px;font-weight:400;font-variant-numeric:tabular-nums}.zero-zone-note{margin-top:2px;color:var(--demo-muted);font-size:13px;line-height:1.5}.levels-visual{position:relative;display:grid;place-items:center;justify-self:center;width:100%;max-width:340px}.levels-ring{width:100%;height:auto;overflow:visible}[data-range=in]{--range:#6fd6b4}[data-range=elevated]{--range:#f0bf5e}[data-range=high]{--range:#f0745f}.levels-segment{fill:var(--range);transition:fill .35s ease}.levels-home{display:grid;justify-items:center;gap:14px;width:100%}.levels-ring-wrap{position:relative;display:grid;place-items:center;width:82%;aspect-ratio:1}.levels-ring-wrap>*{grid-area:1/1}.levels-tick{stroke:var(--range);stroke-width:4.5;stroke-linecap:round;transition:stroke .35s ease}.levels-tick[data-future]{stroke:#283134}.levels-face[data-state]{gap:4px}.levels-state-icon{color:#6fd6b4;transition:color .3s ease}.levels-face[data-state=Spiking] .levels-state-icon{color:#f0745f}.levels-face[data-state=Recovering] .levels-state-icon{color:#f0bf5e}.levels-face-state-label{font-size:30px;font-weight:500;letter-spacing:-.02em;animation:pill-swap .5s var(--ease-out)}.levels-mini{width:100%;height:auto;overflow:visible}.levels-segment[data-future]{fill:#283134}.levels-hour{fill:var(--demo-muted);font-size:11px;font-family:var(--font-sans),sans-serif}.levels-meal{fill:var(--demo-ink);transition:opacity .3s ease}.levels-meal[data-future]{opacity:.3}.levels-hand{stroke:var(--demo-ink);stroke-width:2.5;stroke-linecap:round}.levels-face{display:flex;flex-direction:column;align-items:center;gap:2px;text-align:center}.levels-face-value{font-size:64px;font-weight:500;line-height:1;letter-spacing:-.04em;font-variant-numeric:tabular-nums}.levels-face-value small{margin-left:2px;color:var(--demo-muted);font-size:28px}.levels-face-label{color:var(--demo-muted);font-size:13px}.levels-face-state{margin-top:12px;padding:5px 12px;border-radius:30px;color:var(--range);background:color-mix(in srgb,var(--range) 15%,transparent);font-size:13px;font-weight:500}.levels-chart{align-self:center;width:100%}.levels-now{color:var(--demo-muted);font-size:15px}.levels-now span{margin-right:4px;color:var(--demo-ink);font-size:64px;font-weight:500;letter-spacing:-.04em;font-variant-numeric:tabular-nums}.levels-chart svg{width:100%;height:auto;margin-top:10px;overflow:visible}.levels-band{fill:#6fd6b4;opacity:.1}.levels-line{fill:none;stroke:var(--demo-ink);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.levels-dot{fill:var(--demo-ink);stroke:var(--demo-bg);stroke-width:3}.levels-axis{fill:var(--demo-muted);font-size:11px;font-family:var(--font-sans),sans-serif}.levels-legend{display:grid;gap:10px;margin:24px 0 0;padding:18px 0 0;border-top:1px solid var(--demo-line);list-style:none}.levels-legend li{display:flex;align-items:center;gap:10px;font-size:14px}.levels-legend li:before{content:"";width:10px;height:10px;border-radius:3px;background:var(--range)}.levels-legend span{margin-left:auto;color:var(--demo-muted);font-variant-numeric:tabular-nums}@container (max-width: 700px){.demo-stage{grid-template-columns:minmax(0,1fr);gap:36px;padding:40px 28px 32px}.demo-side{max-width:460px}}@container (max-width: 480px){.demo-bar{flex-wrap:wrap;padding:14px 16px}.demo-toggle{width:100%}.demo-stage{padding:32px 20px 26px}.zero-dial{--size:256px;--stroke:18px}.zero-face-time{font-size:50px}.zero-face-before .zero-face-time{font-size:58px}.levels-visual{max-width:280px}.levels-face-value,.levels-now span{font-size:52px}.demo-panel-quote{font-size:22px}.demo-controls{gap:12px;padding:12px 16px 14px 12px}.demo-readout{min-width:5em;font-size:13px}.demo-readout span{display:none}}@keyframes demo-spin{to{transform:rotate(-1turn)}}@keyframes pill-swap{0%{opacity:0;transform:translateY(6px) scale(.96)}}.resume{max-width:980px;padding-block:48px 120px}.resume-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:40px;align-items:end;padding-bottom:32px;border-bottom:1px solid var(--color-text)}.resume-header h1{font-size:clamp(44px,5vw,64px);letter-spacing:-.035em}.resume-tagline{margin-top:14px;max-width:46ch;font-size:18px;color:var(--color-text-secondary)}.resume-contact{display:flex;flex-direction:column;align-items:flex-end;gap:2px;font-size:14px;text-align:right}.resume-contact a:hover{text-decoration:underline}.resume-print{margin-top:14px;min-height:40px;padding:6px 18px;border:0;font-size:14px}.resume-section{display:grid;grid-template-columns:160px minmax(0,1fr);gap:40px;padding-block:32px;border-bottom:1px solid var(--color-border)}.resume-section h2{font-size:14px;font-weight:600;letter-spacing:0;padding-top:4px}.resume-roles{display:grid;gap:26px}.resume-role-head{display:flex;justify-content:space-between;align-items:baseline;gap:20px}.resume-role-head h3{font-size:19px;font-weight:500;letter-spacing:-.015em}.resume-role-head h3 a:hover{text-decoration:underline}.resume-role-head span{flex-shrink:0;font-size:14px;color:var(--color-text-secondary);font-variant-numeric:tabular-nums}.resume-title{margin-top:2px;font-size:14px;color:var(--color-text-secondary)}.resume ul{margin:8px 0 0;padding-left:18px}.resume li{font-size:15px;line-height:1.55;margin-top:4px}.resume li a{text-decoration:underline}.resume-roles>p{font-size:15px;line-height:1.6}.resume-earlier{color:var(--color-text-secondary)}@media (max-width:767px){.resume{padding-block:24px 72px}.resume-header,.resume-section{grid-template-columns:1fr;gap:16px}.resume-contact{align-items:flex-start;text-align:left}.resume-role-head{display:block}.resume-role-head span{display:block;margin-top:2px}}@media print{@page{size:letter;margin:12mm 14mm}body,html{background:#fff;font-size:10pt}.case-progress,.resume-print,.site-footer,.site-header,.skip-link{display:none!important}.resume.page-shell{max-width:none;padding:0}.resume .resume-header{grid-template-columns:minmax(0,1fr) auto;gap:16pt;padding-bottom:10pt}.resume .resume-header h1{font-size:24pt}.resume .resume-tagline{margin-top:4pt;font-size:10.5pt}.resume .resume-contact{align-items:flex-end;text-align:right;font-size:9pt}.resume .resume-section{grid-template-columns:78pt minmax(0,1fr);gap:12pt;padding-block:9pt}.resume .resume-section h2{font-size:9.5pt;padding-top:1pt}.resume .resume-roles{gap:7pt}.resume .resume-role{break-inside:avoid}.resume .resume-role-head{display:flex}.resume .resume-role-head h3{font-size:10.5pt}.resume .resume-role-head span{display:inline;margin:0;font-size:9pt}.resume .resume-title{font-size:9pt}.resume ul{margin-top:2pt;padding-left:12pt}.resume .resume-roles>p,.resume li{margin-top:1pt;font-size:9pt;line-height:1.35}.resume a{color:inherit;text-decoration:none}}@keyframes type-arrive{0%{clip-path:inset(0 0 100% 0);transform:translateY(14px)}to{clip-path:inset(0);transform:translateY(0)}}@keyframes menu-arrive{0%{opacity:.5;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media (max-width:1100px){:root{--gutter:32px}.header-inner{gap:28px}.desktop-navigation{gap:24px}.career-top{display:block}.career-top>span{display:block;margin-top:8px}.case-heading-grid{gap:5vw}.case-nav{top:108px}}@media (max-width:900px){.desktop-navigation{display:none}.menu-toggle{display:block}.intro h1{font-size:8vw}.intro-current{max-width:230px}.section-intro h2{font-size:32px}.case-layout{grid-template-columns:160px minmax(0,1fr);gap:36px}.footer-top{grid-template-columns:1fr 1fr 1.5fr}.footer-mark{display:none}}@media (max-width:767px){:root{--gutter:20px;--section-gap:88px;--radius:12px}html{scroll-padding-top:92px}body{font-size:16px}.header-inner{min-height:76px}.identity{justify-content:flex-start}.identity .logo-mark{width:32px;height:32px}.intro{grid-template-columns:minmax(0,1fr);grid-template-areas:"rings" "title" "copy" "facts";padding:20px 0 52px}.hero-rings{justify-self:center;width:min(280px,74vw);margin-bottom:24px}.hero-rings-note{font-size:10.5px}.intro h1{font-size:clamp(40px,8.8vw,66px);line-height:1.03}.intro-description{font-size:16px;max-width:470px}.intro-current{max-width:none;margin-top:20px;text-align:left;font-size:13px}.intro-current a{min-height:36px}.section-intro{display:block;padding-bottom:25px}.section-intro h2{font-size:29px}.studio-note{margin-top:19px;font-size:13px;gap:10px}.studio-note br{display:none}.studio-note img{width:22px;height:22px}.section-statement{font-size:15px;margin-top:16px}.project-card-featured .project-artwork{aspect-ratio:1.04}.artwork-movable .artwork-title{top:7%;left:7%}.artwork-title>span{font-size:30px}.artwork-movable .artwork-footnote,.artwork-movable .artwork-title p{display:none}.device-cluster{top:20%;width:96%;right:0;height:80%;gap:6%;align-items:flex-start}.device{width:39%;border-radius:18px}.device-0{transform:translateY(6%)}.device-1{transform:translateY(0)}.device-2{display:none}.project-caption,.project-card-featured .project-caption{display:block;padding-top:19px}.project-card-featured .caption-arrow{display:block}.project-card-featured .project-heading h3,.project-heading h3{font-size:22px}.project-card-featured .project-description,.project-description{margin-top:10px;font-size:17px}.project-contribution{font-size:14px;margin-top:10px}.project-card-featured .project-tags,.project-tags{margin-top:16px}.project-tags li{font-size:12px}.case-results{grid-template-columns:1fr;gap:6px;padding-top:44px}.case-results h2{padding-top:0}.case-results dl>div{grid-template-columns:7.5rem minmax(0,1fr);gap:16px;padding-block:14px 16px}.case-results dd{font-size:32px}.case-results dt{font-size:14px}.case-progress{display:block;position:fixed;z-index:29;top:76px;left:0;right:0;height:2px;pointer-events:none}.case-progress i{position:absolute;inset:0;background:var(--color-accent);transform:scaleX(var(--progress,0));transform-origin:left}.side-projects-band{padding-block:64px 72px}.intro-facts{grid-template-columns:1fr 1fr;gap:18px 20px;margin-top:36px}.intro-description{margin-top:26px}.in-progress-list,.job-grid,.side-grid{grid-template-columns:minmax(0,1fr);gap:56px}.in-progress-list{gap:0}.in-progress-list .development-note+.development-note{border-top:0}.job-line{font-size:17px}.earlier-roles{margin-top:80px}.role-table li{grid-template-columns:minmax(0,1fr) auto;gap:4px 16px}.role-years{grid-column:2;grid-row:1}.role-company{grid-column:1;grid-row:1}.role-note,.role-title{grid-column:1/-1;font-size:14px}.waking-views{inset:30% 8% 8%}.artwork-waking .artwork-title>span{font-size:30px}.artwork-waking .artwork-title p{font-size:13px}.artwork-footnote{font-size:12px}.screen-crop{border-radius:16px}.project-open{width:42px;height:42px;right:16px;bottom:16px}.development-note{display:grid;grid-template-columns:1fr auto;gap:15px;padding-block:26px;margin-top:46px}.development-name{font-size:21px}.development-note p{font-size:14px}.development-detail{grid-row:2;margin:0;font-size:12px}.development-note>svg{grid-column:2;grid-row:1/3}.split-section{grid-template-columns:1fr;gap:36px;padding-top:40px}.about-copy h2,.split-section h2{font-size:36px}.section-aside{font-size:16px;margin-top:20px}.capability-list h3{font-size:22px}.career-top{display:flex}.career-top h3{font-size:20px}.career-top>span{font-size:12px;margin-top:0}.about-section{grid-template-columns:1fr;gap:40px;padding-block:54px 76px;margin-top:76px}.about-person{width:65%;justify-self:start}.about-person p{font-size:13px}.about-copy p{font-size:16px}.contact-section{display:block;padding:65px var(--gutter)}.contact-section h2{font-size:42px}.contact-section>p{font-size:16px;margin-top:27px}.contact-section .button{margin-top:24px}.footer-content{padding-top:38px}.footer-top{grid-template-columns:1fr 1fr;gap:28px 20px}.footer-contact{grid-column:1/-1}.footer-contact>a{font-size:18px}.footer-signature{padding-block:48px 26px;font-size:16.5vw}.case-page{padding-bottom:72px}.case-introduction{padding:22px 0 32px}.back-link{margin-bottom:24px}.case-heading-grid{grid-template-columns:1fr;gap:24px}.case-header h1{font-size:40px;line-height:1.1}.case-summary{font-size:17px}.case-meta{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:28px;padding-top:24px}.case-meta dd{font-size:13px}.case-meta dt{font-size:12px}.case-links{margin-top:20px}.case-links .button{text-align:left;font-size:14px}.case-hero .project-artwork{aspect-ratio:1.14}.case-hero .artwork-movable{aspect-ratio:1.04}.case-hero .artwork-levels{aspect-ratio:767/555}.case-hero .screen-pair{width:100%;left:0;padding-top:10%}.case-hero .screen-crop{width:42%}.case-hero .screen-crop:nth-child(2){margin-top:6%}.case-hero .artwork-suppco{aspect-ratio:1.3}.case-hero .screens-cover{padding-inline:8%}.case-hero .screens-cover-phone{width:27%}.case-hero .artwork-suppco .screen-pair{padding-top:16%}.case-hero .artwork-suppco .screen-crop{width:42%}.case-hero .artwork-waking{aspect-ratio:.94}.case-hero .waking-views{inset:30% 8% 8%}.case-hero .waking-views .screen-crop{width:70%;max-width:280px}.case-hero .artwork-waking .artwork-footnote{bottom:3%}.case-hero .house-studies{width:100%;left:0}.case-hero .house-study-horse{width:52%;top:20%}.case-hero .house-study-heritage{width:49%;right:4%;top:10%}.case-hero .house-study-wordmark{width:39%;right:5%;bottom:17%}.case-hero .artwork-waking .artwork-title{top:9%}.case-brief{grid-template-columns:1fr;gap:26px;padding-block:36px 44px}.case-brief dt{margin-bottom:9px}.case-brief dd{font-size:16px;max-width:65ch}.case-layout{grid-template-columns:1fr;gap:38px;padding-top:36px}.case-nav{display:none}.case-nav-mobile{display:block;padding-bottom:18px;border-bottom:1px solid var(--color-border)}.case-nav-mobile summary{min-height:44px;padding-block:10px;font-size:14px;font-weight:500;cursor:pointer}.case-nav-mobile nav{display:flex;flex-direction:column;padding-top:8px}.case-nav-mobile a{min-height:44px;padding-block:10px;font-size:14px;color:var(--color-text-secondary)}.case-nav-mobile a:hover{text-decoration:underline}.case-section{margin-bottom:55px}.case-section h2{font-size:28px;margin-bottom:20px}.case-section>p{font-size:17px;line-height:1.65}.case-gallery{padding:24px;gap:24px}.case-gallery>figure{flex:0 0 210px}.next-project h2{font-size:30px}}@media (max-width:370px){:root{--gutter:16px}.intro h1{font-size:36px}.career-top{display:block}.career-top>span{margin-top:7px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{animation:none!important;transition:none!important}[data-drift]{transform:none!important}.identity:hover .logo-mark,.project-card:hover .caption-arrow,.project-visual:hover .project-artwork>img{transform:none}.project-visual:hover .device-0{transform:translateY(9%)}.project-visual:hover .device-1{transform:translateY(-3%)}.project-visual:hover .device-2{transform:translateY(16%)}.project-visual:hover .screens-cover-phone-0{transform:translateY(6%)}.project-visual:hover .screens-cover-phone-1{transform:translateY(-4%)}.project-visual:hover .screens-cover-phone-2{transform:translateY(10%)}.project-visual:hover .artwork-movable.is-compact .device-0{transform:translateY(5%)}.project-visual:hover .artwork-movable.is-compact .device-1{transform:translateY(-4%)}.project-visual:hover .artwork-movable.is-compact .device-2{transform:translateY(8%)}.nav-link:focus-visible .nav-roll>span,.nav-link:hover .nav-roll>span{transform:none}.nav-link:hover{text-decoration:underline}.project-visual:hover .house-study-horse{transform:rotate(-7deg)}.project-visual:hover .house-study-heritage{transform:rotate(7deg)}.project-visual:hover .house-study-wordmark{transform:rotate(3deg)}}