@font-face{font-family:Sora;src:url('assets/fonts/sora-latin.woff2') format('woff2');font-weight:100 800;font-display:swap}
@font-face{font-family:Inter;src:url('assets/fonts/inter-latin.woff2') format('woff2');font-weight:100 900;font-display:swap}
:root{
 --family-ground:#101113;--family-surface:#191b1e;--family-hover:#222427;--family-field:#1b1d20;
 --family-ink:#f5f2ec;--family-muted:#bcbab5;--family-line:#ffffff26;
 --family-gold:#e9ba72;--family-gold-hover:#ffd69b;--family-on-gold:#1c1710;
 --family-display:Sora,sans-serif;--family-body:Inter,sans-serif;
 --family-action-radius:5px;--family-field-radius:6px;--family-panel-radius:8px;--family-hero-radius:10px;
 --family-gutter:48px;--family-content:1600px;--family-ease:cubic-bezier(.16,1,.3,1);
 --ink:var(--family-ground);--bone:var(--family-ink);--champagne:var(--family-gold);--surface:var(--family-surface);--muted:var(--family-muted);--line:var(--family-line);--gutter:var(--family-gutter);--display:var(--family-display);--body:var(--family-body);--ease:var(--family-ease)
}
body{font:400 16px/1.7 var(--body)}
html{scrollbar-color:var(--line) var(--ink)}
::selection{background:var(--champagne);color:var(--family-on-gold)}
h1,h2,h3,h4{font-family:var(--display);font-weight:550;line-height:1.12;letter-spacing:-.03em}
:is(a,button,[tabindex]):focus-visible{outline:2px solid var(--champagne);outline-offset:5px}
.header{height:92px;padding:24px max(var(--gutter),calc((100vw - var(--family-content))/2));background:var(--ink);border-bottom:1px solid var(--line);gap:24px}
.header.is-fixed{height:76px;background:#101113fa}
.brand{font:600 19px/1.3 var(--display);letter-spacing:-.025em;gap:12px}.brand .mark{width:26px;color:var(--champagne)}
.desktop-nav{gap:28px;font:500 14px/1.5 var(--body)}.desktop-nav a{min-height:44px;display:inline-flex;align-items:center;border-bottom-width:2px}
#menu-toggle{min-width:44px;min-height:44px;font:500 14px/1.5 var(--body);padding:10px 12px;border:1px solid var(--line);border-radius:var(--family-action-radius)}
#mobile-menu nav{font:550 28px/1.4 var(--display);gap:12px}#mobile-menu a{min-height:44px;display:flex;align-items:center}
.menu-close{min-height:44px;border-radius:var(--family-action-radius);background:var(--surface);font-size:14px}
.hero-content{padding-top:clamp(180px,23vh,260px)}
.hero h1{font-size:clamp(3.2rem,6vw,5.4rem);font-weight:550;line-height:1.09;max-width:14ch;margin-bottom:28px}
.hero-content>p{font-size:18px;line-height:1.7;color:var(--bone);max-width:37ch}
.text-link{min-height:48px;font:600 14px/1.5 var(--body);gap:16px;text-underline-offset:5px}
.hero-content>.text-link{padding:12px 22px;background:var(--champagne);color:var(--family-on-gold);border:1px solid transparent;border-radius:var(--family-action-radius)}
.hero-content>.text-link:hover{background:var(--family-gold-hover)}
.hero-bottom,.material-caption{font-size:14px;color:var(--muted)}
.company,.work,.principles,.contact,footer{padding-inline:max(var(--gutter),calc((100vw - var(--family-content))/2))}
.company{padding-block:112px}.company-heading{margin-bottom:64px;gap:64px}
.company-heading h2{font-size:clamp(2rem,4.4vw,4.25rem);max-width:20ch;line-height:1.15}
.company-copy{gap:80px}.company-copy .lead{font:500 24px/1.55 var(--display);max-width:32ch}.company-copy>div{font-size:16px;line-height:1.7}
.work{background:var(--bone);color:var(--family-on-gold);padding-block:104px}
.work :is(a,button,[tabindex]):focus-visible{outline-color:var(--family-on-gold)}
.section-heading h2{font-size:clamp(2rem,4vw,3.5rem);line-height:1.15}.section-heading>p{font-size:16px;line-height:1.7}
.featured-work{gap:64px}.featured-copy h3{font-size:clamp(2rem,3.5vw,3rem);font-weight:600;line-height:1.15}
.featured-copy .project-lead{font:500 25px/1.4 var(--display)}
.featured-copy>p{font-size:16px;line-height:1.7}.featured-copy .project-type{font-size:14px;line-height:1.65}
.featured-copy .text-link{border-color:var(--family-on-gold)}
.image-link{background:var(--ink);color:var(--bone);font-size:14px;min-height:48px}
.development{margin-top:64px}.development>h3{font-size:28px;line-height:1.35;margin-bottom:28px}
.project-row{padding:32px 0;gap:32px}.project-row h4{font-size:24px;line-height:1.35;font-weight:600}
.project-row p{font-size:16px;line-height:1.7}.project-row>div>p,.project-row>span{font-size:14px;line-height:1.65}
.material-copy h2{font-size:clamp(2rem,4.4vw,4.25rem);line-height:1.15}.material-copy p{font-size:18px;line-height:1.7}
.principles{padding-block:112px;gap:80px}.principles>h2{font-size:clamp(2rem,3.7vw,3.5rem);line-height:1.15}
.principle-list h3{font-size:23px;font-weight:600;line-height:1.4}.principle-list p{font-size:16px;line-height:1.7}
.passage h2{font-size:clamp(2.2rem,5vw,4.75rem);line-height:1.12}.passage-copy p{font-size:18px;line-height:1.7}
.art-credit{font-size:14px;line-height:1.65;color:var(--bone)}
.contact{padding-block:104px;gap:64px}.contact h2{font-size:clamp(2rem,3.2vw,3rem);line-height:1.2}.contact>div>p{font-size:16px;line-height:1.7}
.contact-routes strong{font:600 23px/1.4 var(--display)}.contact-routes small{font-size:14px;line-height:1.65}
footer{padding-top:64px}.footer-top nav{font:500 14px/1.5 var(--body);gap:28px}.footer-top nav a{display:inline-flex;align-items:center;min-height:44px}
.footer-statement{font:550 clamp(2.7rem,5.8vw,5.4rem)/1.15 var(--display);letter-spacing:-.03em;margin:64px 0}
.footer-bottom,.legal-status{font-size:14px;line-height:1.65}.footer-bottom{font-variant-numeric:tabular-nums}
.motion-control{font:500 14px/1.5 var(--body);padding:12px 16px;min-height:44px;border:1px solid var(--line);border-radius:var(--family-action-radius);background:var(--surface)}
.motion-control:hover{background:var(--family-hover)}.motion-control:disabled{border:1px solid var(--line);opacity:.7}
.footer-bottom>a{display:inline-flex;align-items:center;min-height:44px}
@media(max-width:1100px){:root{--family-gutter:28px}.header{padding-inline:var(--gutter)}.desktop-nav{gap:24px}.company-copy,.featured-work,.principles,.contact{gap:40px}.hero h1{font-size:clamp(3.2rem,7.6vw,5.4rem)}}
@media(max-width:760px){:root{--family-gutter:16px}.header{height:80px;padding:16px;gap:16px}.brand{font-size:19px}.brand .mark{width:24px}.header.is-fixed{height:76px}.hero-content{padding:180px 20px 120px}.hero h1{font-size:clamp(2.7rem,10.5vw,4rem);line-height:1.12;margin-bottom:24px}.hero-content>p{font-size:16px}.hero-bottom{font-size:14px;bottom:28px;gap:16px}.hero-bottom>span:first-child{display:none}.hero-bottom .scroll-note{gap:10px}.company,.work,.principles,.contact{padding-block:72px}.company-heading{margin-bottom:32px;gap:32px}.company-heading h2{font-size:clamp(2rem,7.5vw,3rem)}.company-copy{gap:24px}.company-copy .lead{font-size:22px}.company-copy>div{font-size:16px}.section-heading h2{font-size:36px}.featured-work{gap:32px}.featured-copy h3{font-size:36px}.featured-copy .project-lead{font-size:24px}.project-row{gap:16px;padding:24px 0}.project-row h4{font-size:22px}.project-row>span{font-size:14px;max-width:13ch}.project-row>p{font-size:16px}.material-copy{padding:210px 20px 120px}.material-copy h2{font-size:clamp(2.2rem,8.8vw,3.2rem)}.material-copy p{font-size:16px}.material-caption{font-size:14px}.principles>h2{font-size:34px;margin-bottom:32px}.principle-list h3{font-size:22px}.passage h2{font-size:clamp(2.3rem,9.6vw,3.5rem)}.passage-copy{padding:70px 20px}.passage-copy p{font-size:16px}.art-credit{font-size:14px;padding-inline:20px;bottom:24px}.contact h2{font-size:32px}.contact-routes{margin-top:32px}.footer-top nav{font-size:14px;gap:8px 24px}.footer-statement{font-size:clamp(2.3rem,8vw,3.5rem);margin:48px 0}.footer-bottom{gap:16px}.footer-bottom>div{width:100%}footer{padding-top:48px}.motion-control{font-size:14px}}
