:root{--paper:#f5f2e9;--ink:#181816;--muted:#74736b;--line:#c8c6be;--white:#fcfbf7;--mono:Menlo,"DejaVu Sans Mono","Liberation Mono",Consolas,monospace}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;border-top:4px solid var(--ink);background:var(--paper);color:var(--ink);font-family:var(--mono);font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--ink);outline-offset:6px}::selection{color:var(--paper);background:var(--ink)}.wrap{width:min(1160px,calc(100% - 96px));margin-inline:auto}.header{min-height:118px;display:flex;align-items:center;gap:48px}.wordmark{display:flex;align-items:center;gap:14px;letter-spacing:.12em;font-size:16px;white-space:nowrap}.wordmark-star{font-size:32px;line-height:1}.header nav{display:flex;gap:27px;margin-left:auto;font-size:14px}.header nav a:hover{text-decoration:underline;text-underline-offset:7px}.languages{display:flex;gap:20px;letter-spacing:.14em;font-size:14px}.languages a{color:var(--muted);padding:6px 0}.languages a[aria-current]{color:var(--ink);border-bottom:2px solid}.eyebrow{text-transform:uppercase;font-size:12px;letter-spacing:.16em;line-height:1.7;color:var(--muted)}.hero{padding-top:56px}.hero-index{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:20px}.hero h1{font-size:clamp(38px,6.8vw,88px);font-weight:400;line-height:1.12;letter-spacing:-.065em;margin:43px 0 22px}.roles{text-transform:uppercase;font-size:clamp(16px,1.8vw,23px);letter-spacing:.025em;max-width:950px}.hero-bottom{display:flex;justify-content:space-between;align-items:center;gap:70px;margin-top:48px}.hero-bottom>div{max-width:590px}.intro{font-size:19px;line-height:1.7;margin:0 0 8px}.muted{color:var(--muted)}.hero-bottom .muted{font-size:14px;margin:0}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;min-height:64px;padding:17px 26px;border:1px solid #96958e;letter-spacing:.1em;text-transform:uppercase;font-size:13px;transition:background .18s,color .18s}.button.primary{background:var(--ink);color:var(--paper);border-color:var(--ink)}.button:hover{background:#e9e5dc}.button.primary:hover{background:#3d3c37}.button span{font-size:21px}.hero-bottom .button{min-width:235px}.hero-foot{display:flex;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line);margin-top:65px;padding-bottom:23px;font-size:11px;letter-spacing:.1em}.section{padding-top:100px;padding-bottom:14px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:35px}.section-heading .eyebrow{margin:0 0 15px}h2{font-size:clamp(28px,3.2vw,42px);font-weight:400;line-height:1.35;letter-spacing:-.045em;margin:0}.section-heading>.muted{max-width:350px;font-size:14px;margin:0 0 4px}.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}.filters button{border:1px solid var(--line);background:transparent;color:var(--muted);padding:10px 14px;font-size:12px;cursor:pointer}.filters button span{font-size:10px;margin-left:15px;opacity:.65}.filters button[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.filters button:hover{border-color:var(--ink)}.projects{border-top:1px solid var(--line)}.project{display:grid;grid-template-columns:minmax(0,1fr) 100px;gap:27px;border-bottom:1px solid var(--line);padding:34px 24px 25px;background:var(--white);transition:background .2s}.project[hidden]{display:none}.project-main>.eyebrow{margin:0 0 9px;font-size:11px}.project h3{font-weight:400;font-size:25px;line-height:1.4;letter-spacing:-.04em;margin:0 0 12px}.project-main>p:not(.eyebrow){font-size:14px;max-width:740px;color:#66655e;margin:0 0 10px}.project-year{font-size:12px;color:var(--muted);text-align:right;white-space:nowrap;padding-top:5px}details{max-width:740px}summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:13px;font-size:12px;padding:9px 0;width:fit-content}summary::-webkit-details-marker{display:none}summary span{font-size:21px;transition:transform .2s}details[open] summary span{transform:rotate(45deg)}.project-detail{border-top:1px solid var(--line);padding:6px 0 15px;font-size:14px}.text-link{display:inline-block;border-bottom:1px solid;padding-bottom:3px}.text-link span{margin-left:10px}.about-section{margin-top:85px;padding:74px 0;background:#eeebe2;border-block:1px solid var(--line)}.about-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:95px}.about-grid .eyebrow{margin:0 0 20px}.about-copy>p{margin:0 0 22px;line-height:1.85;font-size:16px}.about-copy>.muted{font-size:14px}.about-mark{margin-top:55px;display:flex;align-items:center;font-size:100px;line-height:1;letter-spacing:-.14em}.about-mark span{transform:translateY(16px);display:inline-block}.about-mark i{font-style:normal;font-size:70px;letter-spacing:0;margin-left:28px}.practice{background:var(--white);border:1px solid var(--line);padding:25px;margin-top:30px}.practice>.eyebrow{margin:0 0 17px}.practice>div{display:flex;gap:17px;align-items:flex-start;margin-top:14px}.practice>div>span{border:1px solid;width:27px;height:27px;flex-shrink:0;display:grid;place-items:center;font-size:12px}.practice p:not(.eyebrow){font-size:13px;margin:0;line-height:1.7}.press-grid{display:grid;grid-template-columns:1fr 1fr;border-left:1px solid var(--line);border-top:1px solid var(--line)}.press-card{padding:30px;display:flex;flex-direction:column;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:295px;transition:background .2s}.press-card:hover{background:var(--white)}.press-card>.eyebrow{display:flex;justify-content:space-between}.press-card h3{font-size:21px;line-height:1.5;font-weight:400;margin:25px 0 12px;letter-spacing:-.035em}.press-card p{font-size:13px;color:var(--muted);margin:0 0 25px}.press-link{display:flex;justify-content:space-between;font-size:12px;margin-top:auto}.press-link span{font-size:20px}.contact{text-align:center;padding-top:125px;padding-bottom:105px}.contact h2{max-width:850px;margin:25px auto}.contact>.muted{font-size:14px}.contact-actions{display:flex;justify-content:center;gap:16px;margin-top:38px}.contact-actions>.button{min-width:230px;text-align:left}.footer{border-top:1px solid var(--line);padding:25px 0 35px;display:flex;justify-content:space-between;align-items:center;font-size:11px;letter-spacing:.06em}.footer p{color:var(--muted);margin:8px 0 0;letter-spacing:0}.footer a{font-size:12px}.skip{position:absolute;left:20px;top:-100px;background:var(--ink);color:var(--paper);padding:12px;z-index:10}.skip:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(min-width:1500px){.hero h1{font-size:94px}}@media(max-width:900px){.wrap{width:calc(100% - 56px)}.header{gap:25px;min-height:100px}.header nav{gap:15px;font-size:12px}.wordmark{font-size:13px;gap:10px}.languages{gap:12px;font-size:12px}.hero{padding-top:30px}.hero-bottom{gap:30px}.hero-bottom .button{min-width:190px}.about-grid{gap:45px}.section-heading>.muted{max-width:250px}.project{padding-inline:18px;gap:20px;grid-template-columns:40px 1fr 95px}.project h3{font-size:22px}}@media(max-width:620px){.wrap{width:calc(100% - 40px)}.header{min-height:100px;flex-wrap:wrap;justify-content:space-between;padding-block:20px;gap:14px}.header nav{order:3;flex-basis:100%;margin:0;justify-content:space-between;font-size:12px;padding-top:7px}.wordmark{font-size:14px}.wordmark-star{font-size:27px}.languages{font-size:13px}.hero{padding-top:25px}.hero-index{font-size:10px;padding-top:15px}.hero-index span:last-child{max-width:130px;text-align:right;font-size:9px}.hero h1{font-size:clamp(27px,8.3vw,52px);letter-spacing:-.065em;margin-top:35px;line-height:1.22}.roles{font-size:15px;line-height:1.7;margin-top:19px}.hero-bottom{display:block;margin-top:30px}.intro{font-size:16px}.hero-bottom .muted{font-size:12px}.hero-bottom .button{display:flex;margin-top:30px;min-height:58px}.hero-foot{font-size:9px;letter-spacing:0;margin-top:35px;align-items:flex-start}.hero-foot span{max-width:48%}.hero-foot span:last-child{text-align:right}.section{padding-top:65px}.section-heading{display:block;margin-bottom:25px}.section-heading>.muted{max-width:none;margin-top:16px;font-size:13px}h2{font-size:29px}.filters{gap:6px}.filters button{font-size:11px;padding:9px 10px}.filters button span{margin-left:8px}.project{grid-template-columns:minmax(0,1fr);gap:13px;padding:24px 13px 17px;position:relative}.project-main>.eyebrow{font-size:9px;margin:2px 0 11px;padding-right:36px}.project h3{font-size:21px}.project-main>p:not(.eyebrow){font-size:13px}.project-year{grid-column:1;text-align:left;padding:0;margin-top:-4px;font-size:10px}.project-detail{font-size:13px}.about-section{margin-top:55px;padding-block:45px}.about-grid{grid-template-columns:1fr;gap:28px}.about-mark{display:none}.about-copy>p{font-size:15px}.about-copy>.muted{font-size:13px}.practice{padding:20px}.press-grid{grid-template-columns:1fr}.press-card{min-height:265px;padding:25px}.contact{padding-block:70px}.contact h2{font-size:32px}.contact-actions{flex-direction:column;gap:12px;margin-top:30px}.button{font-size:12px;padding-inline:19px;min-height:59px}.footer{gap:25px;font-size:9px}.footer a{font-size:11px;white-space:nowrap}.eyebrow{font-size:11px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Separate page layouts */
body{min-height:100vh;display:flex;flex-direction:column}main{flex:1}.page-section{padding-top:60px;padding-bottom:90px}.page-title{font-weight:400;font-size:clamp(32px,4vw,54px);line-height:1.3;letter-spacing:-.05em;margin:0;overflow-wrap:anywhere}.header nav [aria-current]{text-decoration:underline;text-underline-offset:8px}.home-directory{display:grid;grid-template-columns:repeat(5,1fr);margin:45px 0 75px;border-top:1px solid var(--line);border-left:1px solid var(--line)}.home-directory a{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:24px 20px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);font-size:14px}.home-directory a:hover{background:var(--white)}.project-card:hover{background:#eeebe2}.project-card h2{font-weight:400;font-size:25px;line-height:1.4;letter-spacing:-.04em;margin:0 0 12px}.project-open{display:block;font-size:12px;margin-top:18px}.project-open span{margin-left:12px}.about-projects{margin-top:30px}.press-card h2{font-size:21px;line-height:1.5;margin:25px 0 12px}.contact .page-title{max-width:850px;margin:25px auto}.back-link{display:inline-block;color:var(--muted);font-size:13px;border-bottom:1px solid var(--line);margin-bottom:45px}.project-title-row{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:16px}.project-title-row .eyebrow{margin:0}.project-lead{font-size:21px;line-height:1.8;max-width:870px;margin:30px 0}.project-story{font-size:16px;max-width:850px}.project-links{display:flex;flex-wrap:wrap;gap:12px;margin:35px 0 55px}.metrics{border:1px solid var(--line);padding:24px 28px;background:var(--white);max-width:850px;margin-top:30px}.metrics p{font-size:15px}.metrics .eyebrow,.metrics .metric-note{font-size:11px;color:var(--muted)}.portfolio-materials{border-top:1px solid var(--line);padding-top:35px}.portfolio-materials h2{font-size:27px}.portfolio-materials figure{margin:30px 0}.portfolio-materials img{display:block;width:100%;height:auto;border:1px solid var(--line)}.portfolio-materials figcaption{font-size:11px;color:var(--muted);margin-top:10px}.project-pagination{display:flex;justify-content:space-between;gap:25px;border-top:1px solid var(--line);padding-top:25px;margin-top:55px;font-size:13px}.project-page{max-width:1060px}@media(max-width:620px){.page-section{padding-top:35px;padding-bottom:60px}.home-directory{grid-template-columns:1fr 1fr;margin-top:30px}.home-directory a{padding:20px 12px;font-size:12px;gap:8px}.project-card h2{font-size:21px}.page-title{font-size:32px}.project-lead{font-size:17px}.project-story{font-size:14px}.project-links{flex-direction:column}.metrics{padding:20px}.metrics p{font-size:13px}.project-title-row .eyebrow{font-size:10px}.project-title-row .project-year{margin:0;white-space:nowrap}.back-link{margin-bottom:30px}.project-pagination{font-size:11px}.portfolio-materials h2{font-size:23px}}
.project-thumb{display:block;width:min(100%,360px);height:auto;aspect-ratio:16/9;object-fit:cover;margin:0 0 22px;border:1px solid var(--line)}.video-thumbnail{display:block;position:relative;margin:40px 0;overflow:hidden;border:1px solid var(--line);background:var(--ink)}.video-thumbnail img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}.video-thumbnail>span{position:absolute;bottom:20px;right:20px;background:var(--ink);color:var(--paper);padding:12px 18px;font-size:13px}.video-thumbnail:hover>span{background:#444}.project-card:has(.project-thumb) .project-main{min-width:0}@media(max-width:620px){.video-thumbnail>span{bottom:10px;right:10px;font-size:11px;padding:9px 12px}}

.press-card blockquote{margin:18px 0;padding-left:16px;border-left:2px solid var(--ink)}.press-card blockquote p{color:var(--ink)}.press-card cite{font-size:11px;font-style:normal;color:var(--muted)}

.experience-list{margin-top:45px;border-top:1px solid var(--line)}.experience-entry{display:grid;grid-template-columns:1fr 1.6fr;gap:60px;padding:38px 0;border-bottom:1px solid var(--line);scroll-margin-top:30px}.experience-entry h2{font-size:26px}.experience-entry h3{font-size:18px;font-weight:400;margin:0 0 16px}.experience-entry p{font-size:14px}.experience-links{display:flex;flex-wrap:wrap;gap:12px 24px;font-size:12px}.header{gap:30px}.header nav{gap:20px}@media(max-width:850px){.header{flex-wrap:wrap;padding-block:22px}.header nav{order:3;width:100%;margin-left:0;flex-wrap:wrap}.languages{margin-left:auto}}@media(max-width:620px){.experience-entry{grid-template-columns:1fr;gap:20px}.home-directory{grid-template-columns:1fr 1fr}}

.music-section{margin-top:70px}.music-section>h2{font-size:clamp(27px,3.2vw,40px)}.music-section>.muted{font-size:14px;margin:14px 0 28px}.music-section[hidden]{display:none}

.project-art-thumb{display:block;width:min(100%,300px);max-height:300px;object-fit:contain;object-position:left;margin-bottom:22px}.project-story.with-art{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:center;max-width:none;margin:40px 0}.project-art{margin:0}.project-art img{display:block;width:100%;height:auto}.project-art figcaption{font-size:11px;color:var(--muted);margin-top:12px}.project-narrative p{margin:0}.project-story.art-wide{grid-template-columns:1fr}.project-story.art-wide .project-narrative{max-width:760px}@media(max-width:620px){.project-story.with-art{grid-template-columns:1fr;gap:25px}.project-art{max-width:100%}}
