:root{--paper:#f2eee5;--paper-deep:#e9e3d4;--ink:#181d18;--ink-soft:#555c52;--clay:#b0461f;--clay-deep:#933714;--evergreen:#12211b;--evergreen-soft:#1b2f26;--cream:#efe9da;--cream-soft:#b9b5a4;--font-display:"Fraunces", Georgia, serif;--font-body:"Archivo", "Helvetica Neue", sans-serif;--font-mono:"Spline Sans Mono", "Courier New", monospace;--gutter:clamp(1.25rem, 4.5vw, 4rem);--section-gap:clamp(6rem, 12vw, 11rem);--header-h:72px;--ease-out:cubic-bezier(.22, 1, .36, 1);--t-fast:.3s var(--ease-out);--t-med:.55s var(--ease-out)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body{font-family:var(--font-body);background-color:var(--paper);color:var(--ink);font-feature-settings:"ss01";font-size:1rem;line-height:1.65;overflow-x:hidden}body:after{content:"";z-index:9999;pointer-events:none;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}::selection{background:var(--clay);color:var(--paper)}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--clay);outline-offset:4px;border-radius:2px}h1,h2,h3{font-family:var(--font-display);color:var(--ink);font-weight:400;line-height:1.05}h2{letter-spacing:-.02em;max-width:18ch;font-size:clamp(2.2rem,5.2vw,4.2rem)}.kicker{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.22em;color:var(--clay);font-size:.72rem;font-weight:500}.rule{opacity:.25;background:currentColor;width:100%;height:1px;display:block}.header{width:100%;height:var(--header-h);z-index:100;transition:background-color var(--t-fast), box-shadow var(--t-fast);position:fixed;top:0;left:0}.header.scrolled:not(.menu-open){-webkit-backdrop-filter:blur(14px);background:#f2eee5e0;box-shadow:0 1px #181d181f}.header-inner{height:100%;padding:0 var(--gutter);justify-content:space-between;align-items:center;gap:2rem;display:flex}.brand{font-family:var(--font-display);letter-spacing:-.01em;white-space:nowrap;font-size:1.18rem;font-weight:500}.header.menu-open .brand{color:var(--cream)}.nav-desktop ul{gap:2.2rem;list-style:none;display:flex}.nav-link{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.18em;padding:.4rem 0;font-size:.72rem;font-weight:500;position:relative}.nav-link:after{content:"";background:var(--clay);transform-origin:100%;width:100%;height:1px;transition:transform var(--t-fast);position:absolute;bottom:0;left:0;transform:scaleX(0)}.nav-link:hover:after{transform-origin:0;transform:scaleX(1)}.header-controls{align-items:center;gap:1rem;display:flex}.lang-btn{font-family:var(--font-mono);letter-spacing:.14em;color:var(--ink);transition:background-color var(--t-fast), color var(--t-fast);background:0 0;border:1px solid;border-radius:999px;padding:.42rem .9rem;font-size:.72rem;font-weight:500}.lang-btn:hover{background:var(--ink);color:var(--paper)}.header.menu-open .lang-btn{color:var(--cream)}.header.menu-open .lang-btn:hover{background:var(--cream);color:var(--ink)}.menu-btn{color:var(--ink);background:0 0;border:none;padding:.4rem;display:none}.header.menu-open .menu-btn{color:var(--cream)}.menu-overlay{z-index:90;background:var(--evergreen);color:var(--cream);padding:var(--gutter);opacity:0;visibility:hidden;transition:opacity .4s var(--ease-out), visibility .4s;flex-direction:column;justify-content:center;display:flex;position:fixed;inset:0}.menu-overlay.open{opacity:1;visibility:visible}.menu-overlay ul{flex-direction:column;gap:.4rem;list-style:none;display:flex}.menu-overlay li{opacity:0;transition:opacity .5s var(--ease-out), transform .5s var(--ease-out);transform:translateY(22px)}.menu-overlay.open li{opacity:1;transform:translateY(0)}.menu-overlay a{font-family:var(--font-display);align-items:baseline;gap:1rem;font-size:clamp(2.2rem,9vw,3.4rem);line-height:1.25;display:inline-flex}.menu-overlay a:hover{color:var(--clay);font-style:italic}.menu-num{font-family:var(--font-mono);letter-spacing:.2em;color:var(--clay);font-size:.75rem}.menu-foot{bottom:var(--gutter);left:var(--gutter);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.2em;color:var(--cream-soft);font-size:.7rem;position:absolute}.hero{min-height:100svh;padding:calc(var(--header-h) + 2rem) var(--gutter) 1.5rem;flex-direction:column;justify-content:flex-end;display:flex;position:relative}.hero-kicker{margin-bottom:clamp(.8rem,2vh,1.6rem)}.hero-name{letter-spacing:-.035em;text-transform:none;font-size:clamp(3.4rem,min(13vw,19.5vh),11rem);font-weight:360;line-height:.92}.hero-line{padding-bottom:.06em;display:block;overflow:hidden}.hero-line-inner{will-change:transform;display:inline-block}.hero-line-indent{padding-left:clamp(2rem,12vw,12rem)}.hero-name em{color:var(--clay);font-style:italic;font-weight:320}.hero-lower{justify-content:space-between;align-items:flex-end;gap:clamp(2rem,5vw,5rem);margin-top:clamp(1.2rem,3vh,2.5rem);display:flex}.hero-statement{max-width:30rem}.hero-role{font-family:var(--font-display);color:var(--ink-soft);margin-bottom:.9rem;font-size:1.25rem;font-style:italic}.hero-text{margin-bottom:1.8rem;font-size:clamp(1rem,1.4vw,1.12rem);line-height:1.7}.hero-cta{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.2em;color:var(--ink);border:1px solid var(--ink);transition:background-color var(--t-fast), color var(--t-fast), border-color var(--t-fast);border-radius:999px;align-items:center;gap:.6rem;padding:.85rem 1.5rem;font-size:.74rem;font-weight:500;display:inline-flex}.hero-cta:hover{background:var(--clay);border-color:var(--clay);color:var(--paper)}.hero-cta svg{transition:transform var(--t-fast)}.hero-cta:hover svg{transform:translateY(3px)}.hero-portrait{aspect-ratio:4/5;clip-path:inset(0%);flex-shrink:0;width:clamp(200px,min(24vw,36vh),320px);margin-top:clamp(-10rem,-12vw,-4rem);position:relative;overflow:hidden}.hero-portrait img,.about-portrait img{filter:grayscale()contrast(1.06);transition:filter .7s var(--ease-out)}.hero-portrait:hover img,.about-portrait:hover img{filter:grayscale(0)contrast()}.hero-portrait img{object-fit:cover;width:100%;height:100%}.hero-portrait figcaption{position:absolute;bottom:.7rem;right:.7rem}.hero-portrait figcaption a,.about-portrait figcaption a{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.14em;color:var(--cream);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:background-color var(--t-fast);background:#12211bb8;padding:.35rem .65rem;font-size:.62rem}.hero-portrait figcaption a:hover,.about-portrait figcaption a:hover{background:var(--clay)}.hero-meta{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.18em;color:var(--ink-soft);border-top:1px solid #181d1840;justify-content:space-between;align-items:center;gap:1.5rem;margin-top:clamp(1.2rem,3vh,2.5rem);padding-top:1.1rem;font-size:.7rem;display:flex}.hero-scroll{color:var(--clay)}.marquee{background:var(--ink);color:var(--cream);padding:1.1rem 0;overflow:hidden}.marquee-track{width:max-content;animation:36s linear infinite marquee;display:flex}.marquee-group{flex-shrink:0;align-items:center;display:flex}.marquee-group span{font-family:var(--font-display);white-space:nowrap;align-items:center;font-size:1.15rem;font-style:italic;display:inline-flex}.marquee-group i{color:var(--clay);margin:0 2.2rem;font-size:.7rem;font-style:normal}@keyframes marquee{to{transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.marquee-track{animation:none}}.manifesto-section{padding:var(--section-gap) var(--gutter);max-width:70rem}.manifesto-section .kicker{margin-bottom:2.2rem}.manifesto{font-family:var(--font-display);letter-spacing:-.015em;max-width:24ch;font-size:clamp(1.85rem,4.6vw,3.7rem);font-weight:380;line-height:1.22}.section-head{flex-direction:column;gap:1.4rem;margin-bottom:clamp(2.5rem,6vw,4.5rem);display:flex}.works-section{padding:0 var(--gutter) var(--section-gap)}.works-list{flex-direction:column;display:flex}.work-row{isolation:isolate;color:var(--ink);border-top:1px solid #181d1840;grid-template-columns:4rem minmax(0,1.6fr) minmax(0,.8fr) 3rem;align-items:center;gap:clamp(1rem,3vw,3rem);padding:clamp(1.6rem,3.5vw,2.6rem) clamp(.5rem,1.5vw,1.5rem);display:grid;position:relative}.work-row:before{content:"";z-index:-1;background:var(--ink);transform-origin:bottom;transition:transform .45s var(--ease-out);position:absolute;inset:0;transform:scaleY(0)}.work-row:hover:before,.work-row:focus-visible:before{transform-origin:top;transform:scaleY(1)}.work-row:hover,.work-row:focus-visible{color:var(--cream)}.work-index{font-family:var(--font-mono);letter-spacing:.1em;color:var(--clay);font-size:.78rem}.work-main{flex-direction:column;gap:.45rem;min-width:0;display:flex}.work-title{font-family:var(--font-display);letter-spacing:-.015em;font-size:clamp(1.35rem,2.6vw,2.1rem);line-height:1.12;transition:font-style .1s}.work-row:hover .work-title{font-style:italic}.work-desc{color:var(--ink-soft);max-width:46ch;transition:color var(--t-fast);font-size:.92rem;line-height:1.6}.work-row:hover .work-desc{color:var(--cream-soft)}.work-side{flex-direction:column;align-items:flex-start;gap:.3rem;display:flex}.work-category{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.18em;opacity:.85;border:1px solid;border-radius:999px;padding:.3rem .75rem;font-size:.68rem;font-weight:500}.work-year{font-family:var(--font-mono);letter-spacing:.12em;color:var(--ink-soft);transition:color var(--t-fast);font-size:.72rem}.work-row:hover .work-year{color:var(--cream-soft)}.work-arrow{opacity:.4;transition:opacity var(--t-fast), transform var(--t-fast);justify-self:end}.work-row:hover .work-arrow{opacity:1;color:var(--clay);transform:translate(4px,-4px)}.about-section{background:var(--paper-deep);padding:var(--section-gap) var(--gutter)}.about-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:start;gap:clamp(2.5rem,6vw,6rem);display:grid}.about-portrait{aspect-ratio:4/3;grid-row:span 2;position:relative;overflow:hidden}.about-portrait img{object-fit:cover;will-change:transform;width:100%;height:116%}.about-portrait figcaption{position:absolute;bottom:.7rem;right:.7rem}.about-body p{max-width:56ch;margin-bottom:1.4rem}.about-lead{font-family:var(--font-display);letter-spacing:-.01em;font-size:clamp(1.3rem,2.2vw,1.7rem);line-height:1.4}.about-timeline{border-top:1px solid #181d1840;padding-top:1.6rem}.about-timeline .kicker{margin-bottom:1.4rem}.about-timeline ul{flex-direction:column;list-style:none;display:flex}.about-timeline li{border-bottom:1px dashed #181d182e;align-items:baseline;gap:1.4rem;padding:.55rem 0;display:flex}.tl-year{font-family:var(--font-mono);letter-spacing:.12em;color:var(--clay);min-width:3.2rem;font-size:.72rem;font-weight:500}.tl-label{font-size:.94rem}.press-section{padding:0 var(--gutter) var(--section-gap)}.press-section blockquote{text-align:center;max-width:56rem;margin:0 auto;padding:clamp(3rem,7vw,5.5rem) 0}.press-section blockquote p{font-family:var(--font-display);letter-spacing:-.01em;margin-bottom:2rem;font-size:clamp(1.5rem,3.4vw,2.6rem);font-style:italic;font-weight:360;line-height:1.35}.press-section footer{flex-direction:column;align-items:center;gap:.8rem;display:flex}.press-section cite{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.2em;color:var(--ink-soft);font-size:.72rem;font-style:normal}.press-link{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.18em;color:var(--clay);transition:border-color var(--t-fast);border-bottom:1px solid #0000;align-items:center;gap:.4rem;font-size:.74rem;font-weight:500;display:inline-flex}.press-link:hover{border-color:var(--clay)}.contact-section{background:var(--evergreen);color:var(--cream);padding:var(--section-gap) var(--gutter) clamp(4rem, 8vw, 7rem)}.contact-section .kicker{margin-bottom:1.6rem}.contact-title{letter-spacing:-.03em;color:var(--cream);margin-bottom:clamp(2.5rem,6vw,5rem);font-size:clamp(3.4rem,12vw,10rem);font-weight:360}.contact-title em,.contact-title .hero-line-inner{color:inherit}.contact-grid{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:start;gap:clamp(2.5rem,7vw,7rem);display:grid}.contact-text{color:var(--cream-soft);max-width:38ch;margin-bottom:2.2rem;font-size:1.05rem;line-height:1.7}.contact-info dt{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.2em;color:var(--clay);margin-bottom:.4rem;font-size:.68rem;font-weight:500}.contact-info dd{margin:0 0 1.8rem;font-size:1.02rem;line-height:1.6}.contact-email{font-family:var(--font-display);transition:border-color var(--t-fast), color var(--t-fast);border-bottom:1px solid #efe9da59;font-size:clamp(1.2rem,2.4vw,1.7rem);font-style:italic}.contact-email:hover{color:var(--clay);border-color:var(--clay)}.contact-form{flex-direction:column;gap:2rem;display:flex}.form-field label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.2em;color:var(--cream-soft);margin-bottom:.5rem;font-size:.68rem;font-weight:500;display:block}.form-field input,.form-field textarea{width:100%;color:var(--cream);font-family:var(--font-body);transition:border-color var(--t-fast);background:0 0;border:none;border-bottom:1px solid #efe9da4d;border-radius:0;padding:.55rem 0 .7rem;font-size:1.05rem}.form-field input:focus,.form-field textarea:focus{border-color:var(--clay);outline:none}.form-field textarea{resize:vertical;min-height:110px}.form-alert{border:1px solid;padding:.9rem 1.1rem;font-size:.92rem}.form-alert.success{color:#9fd4ae;border-color:#78be8c80}.form-alert.error{color:#e88c6a;border-color:#d95d3980}.submit-btn{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.2em;background:var(--cream);color:var(--ink);border:1px solid var(--cream);transition:background-color var(--t-fast), color var(--t-fast), border-color var(--t-fast);border-radius:999px;align-self:flex-start;align-items:center;gap:.6rem;padding:.95rem 1.8rem;font-size:.74rem;font-weight:500;display:inline-flex}.submit-btn:hover:not(:disabled){background:var(--clay);border-color:var(--clay);color:var(--cream)}.submit-btn:disabled{opacity:.6;cursor:wait}.submit-btn svg{transition:transform var(--t-fast)}.submit-btn:hover:not(:disabled) svg{transform:translate(3px,-3px)}.footer{background:var(--evergreen);color:var(--cream-soft);padding:1.8rem var(--gutter);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.14em;border-top:1px solid #efe9da24;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;font-size:.7rem;display:flex}.footer-meta{gap:.8rem;display:flex}.back-to-top{color:var(--cream);transition:color var(--t-fast)}.back-to-top:hover{color:var(--clay)}@media (width<=1024px){.about-grid{grid-template-columns:1fr}.about-portrait{grid-row:auto;max-width:640px}}@media (width<=860px){.nav-desktop{display:none}.menu-btn{display:inline-flex}.hero{padding-top:calc(var(--header-h) + 1.5rem);justify-content:flex-start}.hero-name{font-size:clamp(3.2rem,16.5vw,7rem)}.hero-line-indent{padding-left:clamp(1.5rem,10vw,4rem)}.hero-lower{flex-direction:column-reverse;align-items:flex-start}.hero-portrait{align-self:flex-end;width:min(78vw,340px);margin-top:0}.hero-meta{flex-wrap:wrap;gap:.6rem 1.5rem}.hero-scroll{display:none}.work-row{grid-template-columns:2.6rem minmax(0,1fr) 2rem;grid-template-areas:"index main arrow""index side arrow";row-gap:1rem}.work-index{grid-area:index;align-self:start;padding-top:.3rem}.work-main{grid-area:main}.work-side{flex-direction:row;grid-area:side;align-items:center;gap:1rem}.work-arrow{grid-area:arrow;align-self:start;padding-top:.3rem}.contact-grid{grid-template-columns:1fr}.footer{flex-direction:column;align-items:flex-start;gap:.6rem}}@media (width<=480px){.marquee-group span{font-size:1rem}.work-row{grid-template-columns:minmax(0,1fr) 2rem;grid-template-areas:"main arrow""side arrow"}.work-index{display:none}}
