.personal-hero{background:#151c18;min-height:790px;padding-top:130px;overflow:hidden}.personal-hero .hero-main{isolation:isolate;min-height:580px;display:block;position:relative}.personal-hero .hero-copy{z-index:2;pointer-events:none;width:53%;padding:45px 0 40px;position:relative}.personal-hero .hero-copy>*{pointer-events:auto}.personal-hello{color:#c2cbbb;letter-spacing:.05em;margin-bottom:25px;font-size:12px;display:block}.personal-hero h1{letter-spacing:-.08em;font-size:clamp(80px,8vw,133px);line-height:.96}.personal-hero .hero-copy>p{color:#bdc7b7;max-width:370px;margin-top:28px;font-size:14px;line-height:1.85}.personal-hero .hero-actions{gap:27px;margin-top:28px}.personal-hero .hero-secondary{border-bottom:1px solid #a5b59c5c;padding-bottom:6px}.hero-living-surface{z-index:0;width:68%;height:650px;position:absolute;top:-25px;right:-7%}.hero-living-surface:before{content:"";pointer-events:none;background:radial-gradient(#8da67914,#0000 65%);position:absolute;inset:10% 0}.hero-living-surface .topology{width:100%;height:100%;margin:0}.topology-immediate canvas{width:100%;height:100%}.topology-immediate .sculpture-controls{bottom:7%;left:auto;right:12%}.topology-immediate .sculpture-pause{color:#c1d2b3;background:#151c1880;width:32px;height:32px}.personal-hero .hero-bottom{z-index:3;color:#a4b29a;border-color:#ffffff1f;position:relative}.personal-work{padding-top:75px;padding-bottom:80px}.personal-work .section-heading{margin-bottom:38px}.personal-work .projects-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:45px 30px;display:grid}.personal-work .project{min-width:0;display:block;grid-column:auto!important}.personal-work .project-image-link{background:#dee3d6;border-radius:4px;height:360px}.personal-work .project-visual{height:100%;min-height:0}.personal-work .project-info{padding:22px 0 0;display:block}.personal-work .project-info>div{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.personal-work .project-info h3{letter-spacing:-.045em;font-size:28px}.personal-work .project-category{margin-left:auto;font-size:9px}.personal-work .project-number{font-size:9px}.personal-work .project-info>p{max-width:550px;margin:14px 0 0;font-size:13px;line-height:1.75}.personal-work .project-summary{display:none}.personal-work .project-explore{align-items:center;gap:15px;margin-top:18px;font-size:11px;display:flex}.contact-cta{padding-top:65px;padding-bottom:35px}.contact-cta h2{font-size:clamp(48px,7.7vw,116px)}.site-footer{gap:25px}.about-person-heading{padding:80px var(--page-gutter) 65px}.about-person-heading h1{letter-spacing:-.065em;margin:35px 0;font-size:clamp(54px,6.7vw,104px);font-weight:450;line-height:1.06}.about-person-heading h1 em{color:#637e43}.about-person-heading>p{color:#56634d;max-width:520px;font-size:15px;line-height:1.8}.about-person-body{padding:70px var(--page-gutter);border-top:1px solid #171b1924;grid-template-columns:1fr 1.25fr;align-items:center;gap:80px;display:grid}.about-person-symbol{color:#bcff41;background:#1e2b20;justify-content:center;align-items:center;height:400px;display:flex;position:relative}.about-person-symbol>svg{width:200px;height:200px}.about-person-symbol>span{font:8px var(--font-geist-mono), monospace;letter-spacing:1px;color:#a6b99a;position:absolute;bottom:25px}.about-person-body h2{margin:25px 0 30px;font-size:clamp(34px,4vw,58px)}.about-person-body p{color:#607055;max-width:620px;margin:18px 0;font-size:14px;line-height:1.9}.personal-about-links{flex-wrap:wrap;gap:30px;margin-top:30px;display:flex}.personal-expertise{padding:45px var(--page-gutter) 75px;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;display:grid}.personal-expertise>.eyebrow{grid-column:1/-1;padding-bottom:20px}.personal-expertise article{border-top:1px solid #9eac90;padding-top:25px}.personal-expertise article>span{font:10px var(--font-geist-mono), monospace;color:#56634d}.personal-expertise h3{letter-spacing:-.04em;margin:25px 0 15px;font-size:25px;font-weight:450}.personal-expertise p{color:#56634d;max-width:350px;font-size:13px;line-height:1.85}.personal-message-form{background:#f5f7ef;border:1px solid #bac5af;border-radius:5px;gap:25px;padding:35px;display:grid}.personal-message-form label{gap:10px;font-size:12px;font-weight:500;display:grid}.message-field-row{grid-template-columns:1fr 1fr;gap:20px;display:grid}.personal-message-form input:not([type=checkbox]),.personal-message-form textarea{color:#171b19;background:#fdfefb;border:1px solid #c4cdbb;border-radius:3px;width:100%;padding:14px;font-size:13px;font-weight:400}.personal-message-form textarea{resize:vertical;min-height:180px;line-height:1.8}.personal-message-form input:focus,.personal-message-form textarea:focus{outline-offset:2px;outline:2px solid #90af5c}.personal-message-form .message-consent{color:#65745a;align-items:start;gap:10px;font-size:10px;font-weight:400;line-height:1.8;display:flex}.message-consent input{accent-color:#688d3c;flex:0 0 14px;margin-top:4px}.message-consent a{text-underline-offset:3px;text-decoration:underline}.personal-message-form .message-honeypot{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.message-send-row{border-top:1px solid #c8d2bd;justify-content:space-between;align-items:center;gap:25px;padding-top:24px;display:flex}.message-send-row>small{color:#56634d;max-width:190px;font-size:10px;line-height:1.7}.message-send-row .primary-link{white-space:nowrap;gap:25px}.message-received{background:#e8efdd;border:1px solid #b3c39d;gap:25px;padding:45px;display:grid}.message-received>span{background:#bcff41;border-radius:50%;place-items:center;width:55px;height:55px;display:grid}.message-received h2{font-size:45px}.message-received p{color:#5d7050;font-size:14px;line-height:1.8}.message-received small{font:9px var(--font-geist-mono), monospace;color:#647459}@media (min-width:1800px){.personal-hero{min-height:850px}.personal-hero .hero-main{min-height:640px}.hero-living-surface{height:710px;top:-25px}}@media (max-width:1100px){.personal-hero{min-height:730px}.personal-hero .hero-main{min-height:540px}.personal-hero h1{font-size:clamp(75px,8.6vw,100px)}.hero-living-surface{width:73%;height:580px;right:-11%}.personal-work .project-image-link{height:300px}.about-person-body{gap:45px}.personal-message-form{padding:27px}}@media (max-width:800px){.personal-hero{min-height:720px;padding-top:115px}.personal-hero .hero-main{min-height:520px}.personal-hero .hero-copy{width:68%;padding-top:40px}.personal-hero h1{font-size:clamp(70px,11vw,92px)}.hero-living-surface{opacity:.66;width:90%;height:560px;top:5px;right:-26%}.personal-hero .hero-copy>p{max-width:340px;font-size:13px}.personal-hero .hero-bottom{font-size:8px}.personal-work .project-image-link{height:270px}.personal-work .project-info>div{gap:8px}.personal-work .project-category{width:100%;margin-left:23px;font-size:8px;display:block}.personal-work .project-info h3{font-size:25px}.personal-work .project-info>p{font-size:12px}.about-person-body{grid-template-columns:1fr;gap:45px}.about-person-symbol{height:280px}.personal-expertise{gap:22px}.personal-expertise h3{font-size:21px}.message-field-row{grid-template-columns:1fr}}@media (max-width:540px){.personal-hero{min-height:695px;padding-top:100px;padding-bottom:20px}.personal-hero .hero-main{min-height:515px}.personal-hero .hero-copy{width:100%;padding-top:35px;padding-bottom:30px}.personal-hello{margin-bottom:22px;font-size:10px}.personal-hero h1{font-size:clamp(60px,16.8vw,83px)}.personal-hero .hero-copy>p{max-width:290px;font-size:13px;line-height:1.85}.hero-living-surface{opacity:.43;width:120%;height:430px;top:50px;right:-35%}.hero-living-surface .sculpture-controls{bottom:-25px;right:35%}.personal-hero .hero-actions{gap:22px}.personal-hero .hero-secondary{font-size:11px}.personal-hero .hero-bottom>span{max-width:150px;font-size:7px;line-height:1.8}.personal-hero .hero-bottom>a{gap:7px;font-size:6px}.personal-work{padding-block:45px}.personal-work .section-heading{gap:20px}.personal-work .section-heading h2{font-size:43px}.personal-work .section-heading p{font-size:11px}.personal-work .projects-grid{grid-template-columns:1fr;gap:38px}.personal-work .project-image-link{height:290px}.personal-work .project-info h3{font-size:28px}.personal-work .project-category{width:auto;margin-left:auto;font-size:8px}.personal-work .project-info>p{font-size:12px}.contact-cta h2{font-size:53px}.about-person-heading{padding-top:55px;padding-bottom:45px}.about-person-heading h1{font-size:43px;line-height:1.1}.about-person-heading>p{font-size:13px}.about-person-body{padding-block:45px}.about-person-body h2{font-size:38px}.about-person-body p{font-size:13px}.personal-expertise{grid-template-columns:1fr;gap:30px;padding-bottom:45px}.personal-expertise article{padding-left:35px;position:relative}.personal-expertise article>span{position:absolute;top:30px;left:0}.personal-expertise h3{margin-top:0;font-size:25px}.personal-expertise p{font-size:12px}.personal-message-form{gap:24px;padding:24px 20px}.personal-message-form input:not([type=checkbox]),.personal-message-form textarea{font-size:16px}.message-send-row{flex-direction:column-reverse;align-items:stretch;gap:18px}.message-send-row .primary-link{justify-content:space-between}.message-send-row>small{max-width:100%}.message-received{padding:30px}.message-received h2{font-size:35px}}.personal-message-form input:disabled,.personal-message-form textarea:disabled{opacity:.7;cursor:wait}
:root{--ink:#14221b;--paper:#f3f2ec;--acid:#bbff43;--ease-out:cubic-bezier(.16, 1, .3, 1);--primary:var(--acid)}::selection{background:var(--acid);color:var(--ink)}.brand-mark{flex-shrink:0;width:38px;height:38px;display:block;overflow:visible}.wordmark{letter-spacing:-.055em;gap:13px}.wordmark .brand-symbol{color:currentColor;width:29px;height:33px;animation:none;transform:none}.brand-return{transition:transform .5s var(--ease-out);transform-origin:50%}.wordmark:hover .brand-return{transform:translate(2px,2px)}.site-footer .wordmark .brand-mark{width:25px;height:29px;color:var(--acid)}.hero-topline{position:relative}.personal-hero{background:radial-gradient(at 74% 48%,#25342b55,#0000 55%),#121c17}.hero-topline:after{content:"";transform-origin:0;height:1px;animation:trace-in 1.6s var(--ease-out) both;background:linear-gradient(90deg,#bbff4333,#0000 70%);position:absolute;bottom:-26px;left:0;right:0}.hero-copy .personal-hello{letter-spacing:.02em;color:#c6d2be}.personal-hero .hero-actions .primary-link{transition:transform .4s var(--ease-out), box-shadow .4s;box-shadow:0 0 #bbff431c}.personal-hero .primary-link:hover{transform:translateY(-3px);box-shadow:0 8px 40px #bbff4326}.hero-bottom a svg{animation:3s ease-in-out infinite arrow-drift}.project-identity{isolation:isolate;background:#dfe5d8;place-items:center;min-height:340px;display:grid;overflow:hidden;container-type:inline-size;position:relative!important}.identity-grid{z-index:-2;opacity:.55;background-image:linear-gradient(#2034260b 1px,#0000 1px),linear-gradient(90deg,#2034260b 1px,#0000 1px);background-size:44px 44px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(#000,#0000 80%);mask-image:radial-gradient(#000,#0000 80%)}.identity-index,.identity-corner{font:8px var(--font-geist-mono), monospace;letter-spacing:.09em;color:#50644c;z-index:3;position:absolute}.identity-index{top:25px;left:27px}.identity-corner{bottom:23px;right:27px}.project-identity-logo{z-index:2;transition:transform 1s var(--ease-out);flex-direction:column;justify-content:center;align-items:center;gap:18px;display:flex;position:relative}.project-identity-logo>img{object-fit:contain;max-width:70%;height:auto}.project-identity-logo>span{font:8px var(--font-geist-mono), monospace;letter-spacing:.14em;color:#61705b}.project-identity-logo>strong{letter-spacing:-.065em;text-align:center;max-width:80%;font-size:clamp(28px,7cqw,55px);font-weight:500;line-height:1.05}.project-identity-logo>strong>span{font:12px var(--font-geist-mono);vertical-align:top;margin-left:5px}.project:hover .project-identity-logo{transform:translateY(-6px)}.identity-materials{background:#dedfd1}.identity-materials:after{content:"";pointer-events:none;background:radial-gradient(at 30% 20%,#fff9,#0000 60%),linear-gradient(135deg,#0000,#a5ac9415);position:absolute;inset:0}.identity-materials .project-identity-logo{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f6f3e8dd;border:1px solid #fff8;border-radius:2px;width:min(280px,60%);padding:22px 25px 18px;box-shadow:0 15px 70px #29312013}.identity-materials .project-identity-logo>img{object-fit:contain;width:180px;max-width:100%;height:66px}.identity-materials .project-identity-logo>span{letter-spacing:.07em;font-size:7px}.material-stack{perspective:1000px;z-index:-1;place-items:center;width:70%;height:85%;display:grid;position:absolute;transform:rotate(-14deg)}.material-stack i{width:68%;height:70%;transform:translate(calc(var(--layer) * 30px - 45px), calc(var(--layer) * 15px - 25px)) rotateX(52deg) rotateZ(-34deg);animation:9s ease-in-out infinite material-breathe;animation-delay:calc(var(--layer) * -.9s);background:linear-gradient(120deg,#f6efdf,#d9d3bd 60%,#c9c6b0);border:1px solid #fff9;border-radius:2px;position:absolute;box-shadow:15px 22px 30px #303b2b15}.material-stack i:nth-child(2){background:repeating-linear-gradient(135deg,#0000 0 10px,#a89f8122 11px 12px),#c6c9b1}.material-stack i:nth-child(3){background:linear-gradient(135deg,#a1b095,#dae2cd)}.material-stack i:nth-child(4){background:linear-gradient(135deg,#faf7e9,#dfd9c5)}.identity-navigation{color:#193a36;background:#dce9e6}.identity-navigation .identity-index,.identity-navigation .identity-corner{color:#446a62}.identity-navigation .project-identity-logo>img{width:64px;height:64px}.identity-navigation .project-identity-logo{gap:8px}.identity-navigation .project-identity-logo>strong{color:#183833;max-width:100%;font-size:54px}.identity-navigation .project-identity-logo>span{color:#4c746b;margin-top:14px}.navigation-orbits{aspect-ratio:1;z-index:-1;place-items:center;width:90%;display:grid;position:absolute}.navigation-orbits i{border:1px solid #40786b29;border-radius:50%;width:82%;height:82%;position:absolute;transform:rotateX(55deg)rotate(-32deg)}.navigation-orbits i:nth-child(2){border-style:dashed;width:100%;height:100%;animation:22s linear infinite orbit-tilt;transform:rotateX(40deg)rotate(18deg)}.navigation-orbits i:nth-child(3){border-color:#fff9;width:60%;height:60%;transform:none}.navigation-orbits b{transform-origin:50%;border-radius:50%;width:82%;height:82%;animation:18s linear infinite orbit-spin;position:absolute}.navigation-orbits b:before{content:"";background:#2e7564;border:2px solid #e6f3e9;border-radius:50%;width:9px;height:9px;position:absolute;top:7%;left:21%;box-shadow:0 0 0 7px #357b6514}.identity-signal{color:#e9eee3;background:#18271e}.identity-signal .identity-index,.identity-signal .identity-corner{color:#a7bb9c}.identity-signal .identity-grid{background-image:linear-gradient(#b7dca00a 1px,#0000 1px),linear-gradient(90deg,#b7dca00a 1px,#0000 1px)}.identity-signal .project-identity-logo .brand-mark{width:44px;height:44px;color:var(--acid)}.identity-signal .project-identity-logo>span{color:#b9cfaa}.signal-network{z-index:-1;opacity:.4;place-items:center;display:grid;position:absolute;inset:0}.signal-network svg{width:100%;height:100%;fill:var(--acid);stroke:#92ae7855;stroke-width:1px}.signal-network path{stroke-dasharray:900;animation:12s linear infinite signal-trace}.signal-network circle{stroke:none;animation:5s ease-in-out infinite signal-pulse}.project-image-link{isolation:isolate}.project-open{z-index:5}.project-image-link .identity-corner{right:75px}.full-work .project-identity{min-height:430px}.personal-work .project-image-link{border-radius:3px}.personal-work .project-info{background:0 0}.personal-work .project-info>div{padding-top:2px}.project-info h3 a{transition:background-size .5s var(--ease-out);background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat}.project:hover .project-info h3 a{background-size:100% 1px}.about-person-symbol{isolation:isolate;place-items:center;display:grid;position:relative;overflow:hidden}.about-person-symbol>.brand-mark{color:var(--acid);z-index:2;filter:drop-shadow(0 25px 28px #20351612);width:160px;max-width:none;height:160px}.monogram-orbits{z-index:0;opacity:.55;place-items:center;display:grid;position:absolute;inset:0}.monogram-orbits i{color:#627b4f3b;border:1px solid;border-radius:50%;width:85%;height:85%;animation:26s linear infinite monogram-orbit;position:absolute}.monogram-orbits i:nth-child(2){width:70%;height:70%;animation-duration:34s;animation-direction:reverse}.monogram-orbits i:nth-child(3){border-style:dashed;width:55%;height:55%;animation-duration:40s}.about-person-symbol .monogram-orbits i{color:#c5ee9b36}.about-person-heading h1>span,.about-person-heading h1>em{display:block}.contact-cta{isolation:isolate;background:radial-gradient(at 80% 40%,#b0ff3a12,#0000 65%),#17251c;position:relative;overflow:hidden}.contact-cta:before,.contact-cta:after{content:"";aspect-ratio:1;z-index:-1;border:1px solid #b4d59a20;border-radius:50%;width:70%;animation:10s ease-out infinite beacon-expand;position:absolute;top:-70%;right:-10%}.contact-cta:after{animation-delay:-5s}.contact-cta .round-link{transition:transform .7s var(--ease-out), background .5s}.contact-cta .round-link:hover{background:var(--acid);color:var(--ink);transform:rotate(45deg)}.motion-toggle{z-index:35;color:#405632;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);font:9px var(--font-geist-mono);background:#f4f5edd9;border:1px solid #899b7460;border-radius:99px;align-items:center;gap:7px;padding:8px 10px;display:flex;position:fixed;bottom:19px;left:19px;box-shadow:0 3px 15px #15251208}.motion-toggle[aria-pressed=true]{background:var(--ink);color:var(--acid)}.case-study .project-identity{height:510px;min-height:0}.case-study .project-identity-logo{scale:1.2}.case-study .identity-index,.case-study .identity-corner{font-size:10px}.case-study .material-stack{width:65%;height:100%}.case-study .navigation-orbits{width:70%;max-width:660px}.case-navigation{z-index:15;border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);font:10px var(--font-geist-mono);text-transform:uppercase;letter-spacing:.04em;background:#f3f2eceb;gap:28px;margin-top:38px;padding:18px 0;display:flex;position:sticky;top:74px}.case-navigation a{padding:4px 0}.case-navigation a:hover{color:#4c6a32}.case-sections section{scroll-margin-top:150px}.case-sections h2{letter-spacing:-.05em;font-size:clamp(29px,3.1vw,45px);line-height:1.1}.case-sections p,.case-sections li{max-width:690px}.case-source{gap:20px}.case-source p{max-width:530px;font-size:11px}.personal-message-form{background:#f9faf5;border:1px solid #d8e0cf;position:relative;box-shadow:0 25px 80px #1b35100a}.personal-message-form:before{content:"";pointer-events:none;border:1px solid #78995800;transition:border-color .5s,box-shadow .5s;position:absolute;inset:-1px}.personal-message-form:focus-within:before{border-color:#78995888;box-shadow:0 0 0 5px #799d4410}.personal-message-form input:not([type=checkbox]),.personal-message-form textarea{transition:border-color .25s,background .25s}.personal-message-form textarea{resize:vertical;min-height:150px}.personal-message-form input:focus,.personal-message-form textarea:focus{background:#fff;border-color:#78984e}.personal-message-form .message-send-row .primary-link{transition:gap .4s var(--ease-out), background .25s}.personal-message-form .message-send-row .primary-link:hover{gap:35px}.message-received>span{animation:receipt-pop .6s var(--ease-out)}.contact-note{position:relative}.contact-note:after{content:"";border:1px solid #69874545;border-radius:50%;width:72px;height:72px;margin-top:50px;display:block;box-shadow:0 0 0 14px #78954a09,0 0 0 29px #78954a05}.profile-settings{gap:22px;margin:25px 0;display:grid}.profile-settings details{background:#fbfcf7;border:1px solid #d4dfc9;border-radius:5px;padding:0 22px}.profile-settings summary{cursor:pointer;letter-spacing:-.02em;padding:20px 0;font-size:17px}.profile-settings details>div{gap:17px;padding-bottom:24px;display:grid}.profile-settings details[open] summary{border-bottom:1px solid #d4dfc9;margin-bottom:22px}dialog[open]{transition:opacity .25s, transform .4s var(--ease-out)}@starting-style{dialog[open]{opacity:0;transform:translateY(12px)scale(.98)}}@supports (animation-timeline:scroll()){.reading-progress{transform-origin:0;animation:linear both reading-fill;animation-timeline:scroll(root);transform:scaleX(0);width:100%!important}}@keyframes trace-in{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes arrow-drift{0%,to{transform:translateY(-2px)}50%{transform:translateY(4px)}}@keyframes material-breathe{0%,to{translate:0 -3px}50%{translate:0 13px}}@keyframes orbit-spin{to{rotate:360deg}}@keyframes orbit-tilt{to{transform:rotateX(40deg)rotate(378deg)}}@keyframes signal-trace{to{stroke-dashoffset:-1800px}}@keyframes signal-pulse{0%,to{opacity:.25}50%{opacity:1}}@keyframes monogram-orbit{to{transform:rotate3d(1,1,.5,360deg)}}@keyframes beacon-expand{0%{opacity:0;transform:scale(.5)}20%{opacity:1}to{opacity:0;transform:scale(1.2)}}@keyframes receipt-pop{0%{opacity:.2;transform:scale(.6)}to{opacity:1;transform:scale(1)}}@keyframes reading-fill{to{transform:scaleX(1)}}@keyframes mark-scroll{0%{transform:translateY(30px)rotate(-12deg)}to{transform:translateY(-30px)rotate(12deg)}}[data-motion=paused] *,[data-motion=paused] :before,[data-motion=paused] :after{animation-play-state:paused!important}[data-in-view=false] .material-stack i,[data-in-view=false] .navigation-orbits *,[data-in-view=false] .signal-network *,[data-in-view=false] .monogram-orbits *{animation-play-state:paused}::view-transition-old(root){animation-duration:.25s}::view-transition-new(root){animation-duration:.25s}@media (max-width:800px){.full-work .project-identity{min-height:330px}.case-study .project-identity{height:390px}.case-navigation{white-space:nowrap;gap:20px;font-size:9px;top:65px;overflow:auto}.case-study .project-identity-logo{scale:1}.identity-index,.identity-corner{font-size:7px}}@media (max-width:540px){.wordmark .brand-symbol{width:25px;height:28px}.wordmark{gap:10px}.project-identity{min-height:290px}.identity-index{top:20px;left:19px}.identity-corner{bottom:18px;right:19px}.identity-materials .project-identity-logo{width:65%;padding:14px 20px}.identity-materials .project-identity-logo>img{height:55px}.identity-materials .project-identity-logo>span{font-size:6px}.identity-navigation .project-identity-logo>strong{font-size:43px}.identity-navigation .project-identity-logo>img{width:52px;height:52px}.material-stack{width:90%}.case-study .project-identity{height:300px}.case-study .identity-index,.case-study .identity-corner{font-size:7px}.motion-toggle{padding:8px;bottom:10px;left:10px}.motion-toggle>span{display:none}.case-navigation{gap:18px;font-size:8px}.profile-settings details{padding:0 16px}.case-sections section{scroll-margin-top:135px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}html:not([data-motion-choice=running]) *,html:not([data-motion-choice=running]) :before,html:not([data-motion-choice=running]) :after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}
html{min-height:100%}body{flex-direction:column;min-height:100dvh;display:flex}body>main{flex:1 0 auto;width:100%}body>.site-footer{flex-shrink:0;margin-top:auto}body>.site-header{flex-shrink:0}.site-footer>p,.site-footer>span{color:#b7c3af}.motion-toggle{bottom:calc(24px + var(--privacy-banner-height,0px));min-height:36px}.cookie-banner{max-height:70dvh;overflow-y:auto}@media (max-width:800px){.motion-toggle{min-height:44px}}.note-date,.note-sources{color:#56634d;font-size:14px;line-height:1.8}.note-sources{border-block:1px solid var(--border);padding-block:28px}.note-sources h2{letter-spacing:-.035em;font-size:23px}.note-sources ul{padding-left:20px}.note-sources a{text-underline-offset:3px;text-decoration:underline}.note-article .content-blocks>section{padding-block:28px;display:block}.note-article .content-blocks h2{font-size:clamp(25px,3vw,34px);line-height:1.2}.note-article .content-blocks p{max-width:none;font-size:17px;line-height:1.85}html[data-page-hidden=true] *,html[data-page-hidden=true] :before,html[data-page-hidden=true] :after{animation-play-state:paused!important}.story-heading{padding:60px var(--page-gutter) 45px;justify-content:space-between;align-items:flex-end;gap:40px;display:flex}.story-heading .page-heading{max-width:950px;padding:0}.story-heading .page-heading h1{overflow-wrap:anywhere;letter-spacing:-.07em;margin:25px 0 20px;font-size:clamp(60px,7.3vw,112px)}.story-edition{font:9px/1.9 var(--font-geist-mono), monospace;text-align:right;letter-spacing:.08em;color:#56634d;flex-shrink:0;padding-bottom:6px}.project-cover{border:1px solid var(--border);border-radius:3px;grid-template-columns:minmax(0,1.8fr) minmax(250px,1fr);display:grid;overflow:hidden}.project-cover>.project-visual,.project-cover .project-identity{height:470px;min-height:0}.project-cover-note{background:#e4e8dc;flex-direction:column;align-items:flex-start;padding:45px 36px 32px;display:flex}.project-cover .identity-corner{display:none}.story-casesail .project-cover-note{background:#e1eae7}.project-cover-note>p{letter-spacing:-.045em;max-width:390px;margin:28px 0 34px;font-size:clamp(22px,2.1vw,33px);line-height:1.26}.project-cover-note .eyebrow{color:#5c6c52;font-size:8px}.project-cover-note dl{width:100%;margin:0 0 26px}.project-cover-note dl>div{border-bottom:1px solid #6c7d582c;grid-template-columns:75px 1fr;gap:12px;padding:12px 0;display:grid}.project-cover-note dt{font:8px/1.7 var(--font-geist-mono), monospace;text-transform:uppercase;color:#56634d}.project-cover-note dd{margin:0;font-size:11px;line-height:1.7}.project-cover-rule{margin-top:auto}.project-cover-note .text-link{justify-content:space-between;width:100%;padding-top:12px;font-size:12px}.project-cover-note>small{font:8px var(--font-geist-mono), monospace;color:#56634d;margin-top:9px}.project-narrative .case-source{border:0;align-items:center;padding:16px 0}.project-narrative .case-source .eyebrow{white-space:nowrap;color:#56634d;font-size:8px}.story-navigation{justify-content:flex-end;gap:35px;margin:20px 0 0;padding:18px 0}.story-navigation>span{color:#56634d;align-self:center;margin-right:auto;font-size:8px}.story-navigation a{align-items:center;gap:9px;transition:color .3s;display:flex;position:relative}.story-navigation a>span{color:#8b977e;font-size:8px}.story-navigation a:after{content:"";transform-origin:0;height:2px;transition:transform .4s var(--ease-out);background:#637e43;position:absolute;bottom:-19px;left:0;right:0;transform:scaleX(0)}.story-navigation a[aria-current=location]{color:#52702e}.story-navigation a[aria-current=location]:after{transform:scaleX(1)}.project-narrative .story-chapters{max-width:none;margin:0}.story-chapters>section{grid-template-columns:minmax(170px,1fr) minmax(0,1.7fr);gap:55px;padding:80px 0;scroll-margin-top:56px;position:relative}.chapter-margin{flex-direction:column;align-items:flex-start;gap:20px;display:flex;position:relative}.chapter-number{letter-spacing:-.09em;color:#7c876c;font-size:clamp(85px,10vw,155px);font-weight:350;line-height:.86}.chapter-margin>.eyebrow{color:#56634d;font-size:9px}.story-chapters section h2{letter-spacing:-.055em;margin:0 0 30px;font-size:clamp(32px,3.8vw,58px);font-weight:450;line-height:1.06}.story-chapters section h2 em{color:#6a824d}.story-chapters .chapter-copy>p{color:#56634d;max-width:660px;font-size:16px;line-height:1.95}.context-footnote{font:9px var(--font-geist-mono), monospace;color:#56634d;gap:14px;margin-top:32px;display:flex}.context-footnote>span{color:#799a4c;font-size:22px}.story-chapters>.story-approach{color:#e0e8d5;background:#18271e;border:0;border-radius:3px;padding:65px 45px;overflow:hidden}.story-approach .chapter-number{color:#879d75}.story-approach .chapter-margin>.eyebrow{color:#99ac87}.story-approach .chapter-copy>.eyebrow{color:#9bad88;margin:4px 0 28px;font-size:8px;display:block}.story-chapters .story-approach .chapter-copy>p{color:#b4c0a7}.story-chapters .story-approach h2 em{color:var(--acid)}.story-signal{width:120%;max-width:420px;margin:30px 0 -30px -30px}.story-signal-orbit{transform-origin:258px 120px;animation:90s linear infinite story-orbit}.story-approach[data-in-view=false] .story-signal-orbit{animation-play-state:paused}.approach-signature{border-top:1px solid #a6be8a38;align-items:center;gap:15px;margin-top:35px;padding-top:26px;display:flex}.approach-signature>.brand-mark{color:var(--acid);width:34px;height:34px}.approach-signature>span{letter-spacing:-.025em;font-size:16px}.approach-signature small{color:#839674;font:8px var(--font-geist-mono), monospace;margin-top:6px;display:block}.story-chapters>.story-decisions{border:0;padding-top:85px;display:block}.chapter-heading>.eyebrow{color:#56634d;margin-bottom:26px;font-size:9px;display:block}.decision-ledger{background:var(--border);border:1px solid var(--border);grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:45px 0 0;padding:0;list-style:none;display:grid}.story-chapters .decision-ledger li{background:#e8ebe2;border:0;flex-direction:column;gap:30px;margin:0;padding:28px 28px 36px;transition:background .4s;display:flex;position:relative}.story-chapters .decision-ledger li+li{border:0}.decision-ledger li:hover{background:#e0e8d5}.decision-ledger .decision-index{font:11px var(--font-geist-mono), monospace;color:#56634d}.story-chapters .decision-ledger p{color:#394c32;margin:0;font-size:15px;line-height:1.8}.decision-point{color:#8a9d77;background:#8a9d7766;align-self:flex-end;width:24px;height:1px;margin-top:auto}.story-chapters>.story-takeaway{background:#dfe5d8;border:0;border-top:3px solid #8aaa59;margin:0 0 65px;padding:55px;display:block;overflow:hidden}.story-takeaway>.eyebrow{color:#78866a;margin-bottom:30px;display:block}.story-chapters .story-takeaway h2{font-size:clamp(30px,3.2vw,47px)}.story-chapters .story-takeaway>p{z-index:1;letter-spacing:-.035em;color:#405039;max-width:800px;font-size:clamp(20px,2.1vw,29px);line-height:1.65;position:relative}.story-takeaway>.takeaway-watermark{color:#92a97a12;width:300px;max-width:none;height:300px;position:absolute;bottom:-40px;right:-32px;transform:rotate(-8deg)}.project-narrative .story-related{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 35px;padding:30px 0;display:grid}.story-related h2{grid-column:1/-1;margin:0 0 25px}.story-related>.text-link{border-top:1px solid var(--border);justify-content:space-between;padding:25px 0;transition:color .25s;display:flex}.story-related>.text-link>span{letter-spacing:-.04em;font-size:26px;line-height:1.1}.story-related small{font:8px var(--font-geist-mono), monospace;color:#56634d;text-transform:uppercase;letter-spacing:.08em;margin-bottom:12px;display:block}@keyframes story-orbit{to{transform:rotate(360deg)}}html[data-motion=paused] .story-signal *{animation-play-state:paused!important}@media (prefers-reduced-motion:reduce){html:not([data-motion-choice=running]) .story-signal *{animation:none!important}}@media (max-width:1000px){.project-cover{grid-template-columns:minmax(0,1.5fr) minmax(240px,1fr)}.project-cover-note{padding:30px 25px}.project-cover>.project-visual,.project-cover .project-identity{height:440px}.story-navigation{gap:24px}.story-chapters>section{grid-template-columns:1fr 2fr;gap:30px}.story-chapters>.story-approach{padding:50px 30px}.story-signal{width:160%;margin-left:-50px}.story-chapters .decision-ledger li{padding:22px}}@media (max-width:700px){.story-heading{padding-top:40px;padding-bottom:30px}.story-edition{display:none}.project-cover{display:block}.project-cover>.project-visual,.project-cover .project-identity{height:340px}.project-cover-note{padding:28px}.project-cover-note>p{margin:20px 0;font-size:28px}.project-cover-note dl{margin-bottom:10px}.project-cover-note dl>div{grid-template-columns:90px 1fr}.project-narrative .case-source{display:block}.case-source>.eyebrow{display:none}.story-navigation{scrollbar-width:none;justify-content:space-between;gap:20px;padding:18px 0;top:71px;overflow-x:auto}.story-navigation>span{display:none}.story-navigation a{white-space:nowrap;gap:5px;padding:0 0 4px;font-size:9px}.story-navigation a:after{bottom:0}.story-chapters>section{padding:55px 0;display:block}.chapter-margin{flex-direction:row;align-items:center;gap:20px;margin-bottom:30px;display:flex}.chapter-number{font-size:55px}.story-chapters section h2{font-size:38px}.story-chapters .chapter-copy>p{font-size:15px}.story-chapters>.story-approach{padding:35px 26px}.story-approach .chapter-margin{margin-bottom:35px}.story-signal{opacity:.4;width:200px;height:150px;margin:0;position:absolute;top:-45px;right:-35px}.story-approach .chapter-copy>.eyebrow{font-size:7px}.story-chapters>.story-decisions{padding-top:60px}.decision-ledger{grid-template-columns:1fr;margin-top:30px}.story-chapters .decision-ledger li{grid-template-columns:30px 1fr 18px;gap:18px;padding:25px 20px;display:grid}.story-chapters .decision-ledger li+li{border-left:0;border-top:1px solid var(--border)}.decision-ledger .decision-index{padding-top:7px}.decision-point{align-self:flex-end;font-size:20px}.story-chapters>.story-takeaway{margin-bottom:40px;padding:35px 26px}.story-chapters .story-takeaway>p{font-size:23px}.project-narrative .story-related{display:block}}.hero-signal{width:67%;height:650px;top:-15px;right:-6%}.hero-signal:before{display:none}.signal-composition{width:100%;height:100%;overflow:visible}.signal-sculpture{transform-origin:52% 46%;animation:16s ease-in-out infinite signal-suspension}.signal-traveller{animation:12s linear infinite signal-travel}.signal-pulse{transform-box:fill-box;transform-origin:50%;animation:4.2s ease-out infinite signal-arrival}.hero-signal-caption{font:8px/1.65 var(--font-geist-mono), monospace;letter-spacing:.12em;color:#9da991;align-items:center;gap:14px;display:flex;position:absolute;bottom:34px;left:29%;right:15%}.hero-signal-caption strong{color:#d7e4c9;font-weight:400}.signal-caption-mark{color:var(--acid);letter-spacing:-.08em;font-size:21px}.signal-caption-rule{background:linear-gradient(90deg,#9cb58355,#0000);flex:1;height:1px}.topology canvas{background-image:none}@keyframes signal-suspension{0%,to{transform:translateY(0)rotate(-3deg)}50%{transform:translateY(-12px)rotate(3deg)}}@keyframes signal-travel{to{stroke-dashoffset:-100px}}@keyframes signal-arrival{0%{opacity:0;transform:scale(.5)}35%{opacity:.65}to{opacity:0;transform:scale(1.9)}}html[data-motion=paused] .hero-signal *{animation-play-state:paused!important}.personal-hero[data-in-view=false] .hero-signal *{animation-play-state:paused}@media (prefers-reduced-motion:reduce){html:not([data-motion-choice=running]) .hero-signal *{animation:none!important}}@media (max-width:800px){.hero-signal{opacity:.8;width:72%;right:-18%}.hero-signal-caption,.signal-coordinate{display:none}}@media (max-width:540px){.hero-signal{opacity:.35;width:125%;height:570px;top:0;right:-46%}.signal-output,.signal-inputs{opacity:.6}}
