:root{--paper:#f4f1e9;--paper-bright:#fbfaf6;--ink:#1b1d20;--muted:#656a72;--line:#1b1d2033;--line-strong:#1b1d20a6;--blue:#315cba;--blue-dark:#21448f;--white:#fff;--content:1180px;--page-pad:32px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);text-rendering:optimizelegibility;margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}a,button{-webkit-tap-highlight-color:transparent}::selection{background:var(--blue);color:var(--white)}.site-shell{min-height:100vh;overflow:clip}.skip-link{z-index:100;background:var(--ink);color:var(--white);padding:12px 16px;position:fixed;top:12px;left:12px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.section-pad,.site-header{width:min(calc(100% - (var(--page-pad) * 2)), var(--content));margin-inline:auto}.site-header{z-index:10;border-bottom:1px solid var(--line);grid-template-columns:1fr auto 1fr;align-items:center;gap:32px;min-height:76px;display:grid;position:relative}.wordmark{letter-spacing:-.04em;align-items:center;width:fit-content;min-height:44px;font-family:Georgia,Times New Roman,serif;font-size:23px;font-weight:700;display:inline-flex}.wordmark span{color:var(--blue)}.main-nav{align-items:center;gap:28px;font-size:13px;display:flex}.mobile-nav{display:none}.language-switch{letter-spacing:.14em;justify-content:flex-end;justify-self:end;align-items:center;min-width:44px;min-height:44px;font-size:12px;font-weight:800;display:inline-flex}.main-nav a,.mobile-nav a,.language-switch,.project-links a{position:relative}.main-nav a,.mobile-nav a,.project-links a{align-items:center;min-height:44px;display:inline-flex}.main-nav a:after,.mobile-nav a:after,.language-switch:after,.project-links a:after{content:"";transform-origin:100%;background:currentColor;height:1px;transition:transform .16s;position:absolute;bottom:-5px;left:0;right:0;transform:scaleX(0)}.main-nav a:hover:after,.main-nav a:focus-visible:after,.mobile-nav a:hover:after,.mobile-nav a:focus-visible:after,.language-switch:hover:after,.language-switch:focus-visible:after,.project-links a:hover:after,.project-links a:focus-visible:after{transform-origin:0;transform:scaleX(1)}.eyebrow{color:var(--muted);letter-spacing:.16em;text-transform:uppercase;margin:0;font-size:11px;font-weight:800;line-height:1.4}.hero{grid-template-columns:minmax(0,1.06fr) minmax(340px,.94fr);gap:clamp(48px,7vw,94px);min-height:660px;padding-top:clamp(64px,8vw,104px);padding-bottom:84px;display:grid;position:relative}.hero h1{letter-spacing:-.085em;margin:25px 0 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(88px,12vw,166px);font-weight:400;line-height:.84}.hero-copy{padding-top:50px}.hero-role{color:var(--blue-dark);letter-spacing:.12em;text-transform:uppercase;margin:0 0 30px;font-size:11px;font-weight:800;line-height:1.5}.hero-lead{letter-spacing:-.035em;max-width:600px;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(29px,3.2vw,43px);line-height:1.08}.hero-note{max-width:520px;color:var(--muted);margin:28px 0 0;font-size:15px;line-height:1.65}.hero-routes{border-top:1px solid var(--line-strong);border-bottom:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));margin-top:36px;display:grid}.hero-route{grid-template-columns:1fr auto;align-content:start;column-gap:18px;min-width:0;min-height:132px;padding:19px 30px 19px 0;transition:color .16s,padding .16s;display:grid}.hero-route+.hero-route{border-left:1px solid var(--line);padding-left:30px;padding-right:0}.hero-route:hover{color:var(--blue-dark)}.hero-route-label{color:var(--muted);letter-spacing:.13em;text-transform:uppercase;grid-column:1/-1;margin-bottom:13px;font-size:9px;font-weight:800}.hero-route strong{font-family:Georgia,Times New Roman,serif;font-size:20px;font-weight:400}.hero-route>span:not(.hero-route-label):not([aria-hidden]){color:var(--muted);grid-column:1;margin-top:8px;font-size:11px;line-height:1.45}.hero-route>span[aria-hidden]{grid-area:2/2}.hero-index{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;padding-top:13px;font-family:Georgia,Times New Roman,serif;font-size:11px;font-style:italic;display:flex;position:absolute;bottom:44px;left:0;right:0}.now-section{border-top:1px solid var(--line-strong);padding-top:104px;padding-bottom:110px}section[id]{scroll-margin-top:58px}.section-intro{grid-template-columns:.48fr 1.42fr .7fr;align-items:start;gap:clamp(28px,5vw,64px);display:grid}.section-intro h2,.about-heading h2,.contact-layout h2{letter-spacing:-.047em;margin:0;font-family:Georgia,Times New Roman,serif;font-weight:400}.section-intro h2{max-width:650px;font-size:clamp(44px,5.3vw,72px);line-height:.98}.section-intro>p:last-child{color:var(--muted);margin:0;font-size:14px;line-height:1.65}.direction-list{border-top:1px solid var(--ink);grid-template-columns:repeat(3,1fr);margin:76px 0 0;padding:0;list-style:none;display:grid}.direction-list li{border-right:1px solid var(--line);flex-direction:column;min-height:290px;padding:26px 30px 30px 0;display:flex}.direction-list li:not(:first-child){padding-left:30px}.direction-list li:last-child{border-right:0;padding-right:0}.direction-number,.project-number{color:var(--blue);font-family:Georgia,Times New Roman,serif;font-size:14px;font-style:italic}.direction-list h3{letter-spacing:-.04em;max-width:260px;margin:42px 0 15px;font-size:clamp(23px,2.4vw,32px);font-weight:560;line-height:1.05}.direction-list p{max-width:330px;color:var(--muted);margin:auto 0 0;font-size:14px;line-height:1.62}.projects-section{width:100%;max-width:none;padding:110px max(var(--page-pad), calc((100vw - var(--content)) / 2)) 120px;background:var(--paper-bright)}.projects-intro{padding-bottom:76px}.project-list{border-top:1px solid var(--ink)}.project-row{border-bottom:1px solid var(--line);grid-template-columns:.18fr .65fr 1.17fr;gap:clamp(24px,4vw,54px);padding:34px 0 40px;display:grid}.project-name>p{color:var(--muted);letter-spacing:.11em;text-transform:uppercase;margin:1px 0 15px;font-size:10px;font-weight:800;line-height:1.4}.project-name h3{letter-spacing:-.055em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(32px,4vw,52px);font-weight:400;line-height:.98}.project-detail{min-width:0}.project-description{letter-spacing:-.018em;max-width:680px;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(20px,2.15vw,26px);line-height:1.36}.project-facts{grid-template-columns:1.2fr .9fr .7fr;gap:28px;margin:31px 0 0;padding:0;display:grid}.project-facts div{min-width:0}.project-facts dt{color:var(--muted);letter-spacing:.13em;text-transform:uppercase;margin-bottom:8px;font-size:9px;font-weight:800}.project-facts dd{color:var(--muted);margin:0;font-size:12px;line-height:1.55}.project-facts div:last-child dd{color:var(--ink);align-items:center;gap:9px;font-weight:700;display:flex}.status-dot{background:var(--blue);border-radius:50%;flex:none;width:7px;height:7px}.project-links{flex-wrap:wrap;gap:24px;margin-top:28px;display:flex}.project-links a{gap:9px;font-size:12px;font-weight:750}.about-section{padding:116px max(var(--page-pad), calc((100vw - var(--content)) / 2));background:var(--ink);color:var(--white)}.about-inner{grid-template-columns:.88fr 1.12fr;gap:76px 108px;display:grid}.about-section .eyebrow{color:#9aa9c7}.about-heading h2{max-width:590px;margin-top:27px;font-size:clamp(49px,6vw,82px);line-height:.96}.full-name{color:#aeb4bf;letter-spacing:.1em;text-transform:uppercase;margin:34px 0 0;font-size:12px;font-weight:750}.about-copy p{margin:0 0 27px;font-family:Georgia,Times New Roman,serif;font-size:clamp(20px,2.2vw,26px);line-height:1.48}.about-copy p:first-child:first-letter{float:left;color:#8faef0;margin:5px 9px 0 0;font-size:74px;line-height:.76}.principles{border-top:1px solid #ffffff38;grid-column:1/-1;grid-template-columns:.48fr 2.12fr;gap:50px;padding-top:43px;display:grid}.principles-label{color:#aeb4bf;letter-spacing:.13em;text-transform:uppercase;margin:0;font-size:10px;font-weight:800}.principles ol{grid-template-columns:repeat(3,1fr);gap:38px;margin:0;padding:0;list-style:none;display:grid}.principles li>span{color:#8faef0;font-family:Georgia,Times New Roman,serif;font-size:13px;font-style:italic}.principles li p{color:#d1d4da;margin:18px 0 0;font-size:13px;line-height:1.55}.contact-section{padding:105px max(var(--page-pad), calc((100vw - var(--content)) / 2)) 112px;background:var(--blue);color:var(--white)}.contact-section .eyebrow{color:#ffffffe0}.contact-layout{grid-template-columns:1.12fr .88fr;align-items:end;gap:86px;margin-top:27px;display:grid}.contact-layout h2{max-width:720px;font-size:clamp(49px,6vw,82px);line-height:.95}.contact-layout>div:first-child>p{color:#ffffffe6;max-width:580px;margin:27px 0 0;font-size:14px;line-height:1.65}.contact-links{border-top:1px solid #ffffff7a}.contact-links>a{border-bottom:1px solid #ffffff52;justify-content:space-between;align-items:center;gap:20px;min-height:92px;padding:19px 2px;transition:padding .16s;display:flex}.contact-links>a:hover{padding-left:9px;padding-right:9px}.contact-links span:first-child{flex-direction:column;gap:7px;display:flex}.contact-links strong{font-family:Georgia,Times New Roman,serif;font-size:21px;font-weight:400}.contact-links small{color:#ffffffe0;font-size:10px}.site-footer{min-height:82px;padding:0 max(var(--page-pad), calc((100vw - var(--content)) / 2));background:var(--ink);color:var(--white);letter-spacing:.09em;text-transform:uppercase;justify-content:space-between;align-items:center;font-size:10px;display:flex}.site-footer a{border:1px solid #ffffff59;border-radius:50%;place-items:center;width:44px;height:44px;display:grid}a:focus-visible{outline-offset:5px;outline:2px solid}@media (width<=900px){:root{--page-pad:24px}.site-header{grid-template-columns:1fr auto}.main-nav{display:none}.mobile-nav{z-index:9;min-height:48px;padding-inline:var(--page-pad);border-bottom:1px solid var(--line);background:var(--paper);grid-template-columns:repeat(4,1fr);align-items:center;display:grid;position:sticky;top:0}.mobile-nav a{justify-content:center;align-items:center;min-height:48px;font-size:11px;font-weight:700;display:inline-flex}.hero{grid-template-columns:1fr;gap:22px;min-height:auto}.hero-copy{max-width:650px;padding-top:0;padding-left:18%}.section-intro{grid-template-columns:.38fr 1.62fr}.section-intro>p:last-child{grid-column:2}.direction-list{grid-template-columns:1fr}.direction-list li,.direction-list li:not(:first-child){border-right:0;border-bottom:1px solid var(--line);grid-template-columns:52px .75fr 1.25fr;gap:18px;min-height:0;padding:25px 0;display:grid}.direction-list h3,.direction-list p{margin:0}.project-row{grid-template-columns:.16fr .84fr}.project-detail{grid-column:2}.about-inner{grid-template-columns:1fr;gap:54px}.principles{grid-column:1}.contact-layout{grid-template-columns:1fr;gap:55px}}@media (width<=620px){:root{--page-pad:16px}.site-header{min-height:66px}.wordmark{font-size:21px}.hero{padding-top:54px;padding-bottom:75px}.hero h1{font-size:clamp(74px,25vw,110px)}.hero-copy{padding-left:0}.hero-role{margin-bottom:21px}.hero-lead{font-size:29px}.hero-routes{grid-template-columns:1fr}.hero-route,.hero-route+.hero-route{border-left:0;min-height:112px;padding:17px 0}.hero-route+.hero-route{border-top:1px solid var(--line)}.hero-index{bottom:27px}.now-section{padding-top:76px;padding-bottom:78px}.section-intro{grid-template-columns:1fr;gap:22px}.section-intro>p:last-child{grid-column:1}.section-intro h2,.about-heading h2,.contact-layout h2{font-size:43px}.direction-list{margin-top:50px}.direction-list li,.direction-list li:not(:first-child){grid-template-columns:38px 1fr;gap:14px 8px}.direction-list p{grid-column:2}.projects-section,.about-section,.contact-section{padding-top:77px;padding-bottom:82px}.projects-intro{padding-bottom:49px}.project-row{grid-template-columns:37px 1fr;gap:20px 8px;padding:27px 0 33px}.project-name h3{font-size:36px}.project-description{font-size:20px}.project-facts{grid-template-columns:1fr;gap:18px}.about-copy p{font-size:20px}.principles{grid-template-columns:1fr;gap:32px;padding-top:35px}.principles ol{grid-template-columns:1fr;gap:27px}.contact-links>a{min-height:88px}.site-footer{gap:20px;min-height:94px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
