:root{--navy:#0b1c48;--red:#d32f2f;--paper:#f6f5f1;--ink:#1c2947;--muted:#5c6473;--line:#d5d7dc;--sans:'Merriweather Sans',Arial,sans-serif;--serif:'Merriweather',Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--navy);background:var(--paper);font:16px/1.75 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-underline-offset:5px}button{font:inherit;cursor:pointer}img,svg{max-width:100%}img{display:block;object-fit:cover}p,h1,h2,h3,figure{margin:0}p+p{margin-top:1.1em}h1,h2,h3{font-weight:700;line-height:1.13;letter-spacing:-.055em}h1{font-size:clamp(48px,6.4vw,92px)}h2{font-size:clamp(34px,4vw,56px)}h3{font-size:28px}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid var(--red);outline-offset:6px}.wrap{width:min(1200px,calc(100% - 104px));margin-inline:auto}.eyebrow,.section-index{font-size:11px;font-weight:700;letter-spacing:.11em;text-transform:uppercase;line-height:1.6}.eyebrow{margin-bottom:24px}.lead{font-size:20px;line-height:1.7;font-weight:400;letter-spacing:-.02em;color:var(--muted)}.button,.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;text-decoration:none;font-size:13px;font-weight:600;line-height:1.4}.button{padding:19px 23px;border:1px solid var(--navy);border-radius:8px;color:white;background:var(--navy);transition:background .2s,transform .2s}.button:hover{background:var(--red);border-color:var(--red);transform:translateY(-2px)}.button span,.text-link span{font-size:20px;font-weight:400}.text-link{padding-block:8px;border-bottom:1px solid currentColor}.text-link:hover{color:var(--red)}.skip{position:fixed;top:-100px;left:20px;z-index:200;background:var(--navy);color:white;padding:12px}.skip:focus{top:10px}.site-header{position:sticky;top:0;background:rgba(246,245,241,.97);border-bottom:1px solid var(--line);z-index:50}.header-inner{height:100px;display:flex;justify-content:space-between;align-items:center;gap:30px}.wordmark{font-size:30px;letter-spacing:-.06em;font-weight:400;text-decoration:none;line-height:1.2}.wordmark span{font-weight:800}.wordmark i{font-style:normal;color:var(--red);font-size:40px;line-height:0}nav{display:flex;gap:36px;align-items:center}nav a{font-size:12px;text-decoration:none;position:relative;font-weight:500}nav a[aria-current]{border-bottom:2px solid var(--red)}nav a:last-child{display:flex;gap:34px;align-items:center;border:1px solid var(--navy);padding:10px 18px;border-radius:8px}nav a:hover{color:var(--red)}.menu-toggle{display:none}.home-hero{display:grid;grid-template-columns:1.15fr 1fr;position:relative;gap:44px;padding-top:66px;padding-bottom:90px;align-items:center;min-height:760px}.hero-copy{padding-top:15px}.home-hero h1{font-size:clamp(52px,6.1vw,84px);line-height:1.14;white-space:nowrap}.home-hero h1 span{color:var(--red)}.home-hero .lead{font-size:18px;max-width:470px;margin-top:30px}.hero-actions{display:flex;gap:28px;align-items:center;margin-top:36px}.current{display:flex;align-items:flex-start;gap:11px;font-size:11px;margin-top:53px;color:var(--muted);max-width:440px}.current a{color:var(--navy);font-weight:600;text-decoration:none;white-space:nowrap}.status-dot{width:7px;height:7px;border-radius:50%;background:var(--red);margin-top:7px;flex:none}.hero-photo{align-self:stretch;position:relative;min-height:540px;border-radius:12px;overflow:hidden;background:#e4e1db;border-bottom:5px solid var(--red)}.hero-photo img{width:100%;height:100%;object-position:54% 50%;position:absolute;inset:0}.hero-photo figcaption{position:absolute;bottom:0;left:0;right:0;padding:26px 24px 20px;color:white;background:linear-gradient(transparent,rgba(11,28,72,.85));font-size:11px}.scroll-cue{position:absolute;bottom:31px;left:0;display:flex;gap:25px;font-size:10px;text-transform:uppercase;letter-spacing:.08em;text-decoration:none}.scroll-cue span{font-size:17px}.statement,.approach{display:grid;grid-template-columns:1fr 2.1fr;gap:50px;padding-block:110px;border-top:1px solid var(--line)}.statement h2{font-size:clamp(32px,3.6vw,49px);margin-bottom:30px}.statement p:not(.section-index),.approach p:not(.section-index){max-width:620px;color:var(--muted)}.statement .text-link,.approach .text-link{margin-top:25px}.section-index{padding-top:8px}.journey-section{background:var(--navy);color:var(--paper);padding:94px 0 42px;overflow:hidden}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:70px;margin-bottom:60px}.section-heading>p{max-width:365px;font-size:15px;line-height:1.8;color:var(--muted)}.journey-section .section-heading>p{color:#c4cad6}.journey-section .eyebrow{color:#bac3d7}.route-scene{margin-inline:-24px}.route-scene svg{display:block;width:100%;height:auto;overflow:visible}#route{fill:none;stroke:#677696;stroke-width:2;stroke-dasharray:6 8}.route-stops circle{fill:var(--paper)}.route-stops circle:last-child{fill:var(--red)}#route-traveller{fill:var(--red);stroke:var(--navy);stroke-width:5}.route-labels{fill:var(--paper);font:14px var(--sans);text-anchor:middle;letter-spacing:.01em}.route-bottom{display:flex;justify-content:space-between;align-items:center;gap:30px;border-top:1px solid #344268;margin-top:40px;padding-top:22px}.motion-toggle{border:0;background:none;color:#c4cad6;display:flex;align-items:center;gap:15px;font-size:11px;padding:10px 0}.work-section{padding-block:110px}.projects{display:grid;grid-template-columns:1fr 1fr;gap:0 54px}.project-card{display:block;position:relative;padding:28px 0 34px;border-top:1px solid #b8bdc8;text-decoration:none}.project-top{display:flex;justify-content:space-between;color:var(--muted);font-size:10px;letter-spacing:.03em;margin-bottom:36px}.project-no{color:var(--red);font-variant-numeric:tabular-nums}.project-card h3{font-size:32px;margin-bottom:14px}.project-card>p{max-width:380px;color:var(--muted);font-size:15px;min-height:52px}.project-card .text-link{margin-top:25px;border:0;font-size:11px}.project-card:hover h3,.project-card:hover .text-link{color:var(--red)}.home-about{background:#e9e9e4;padding-block:85px}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:105px;align-items:center}.about-grid>img{width:100%;height:580px;object-position:50% 45%;border-radius:12px}.about-grid h2{margin-bottom:30px}.about-grid .lead{margin-bottom:20px;color:var(--navy)}.about-grid p:not(.eyebrow):not(.lead){color:var(--muted);font-size:15px}.about-grid .text-link{margin-top:28px}.about-signature{font:italic 29px var(--serif);color:var(--red);margin-top:40px}.offer-section{padding-block:110px}.offers{display:grid;grid-template-columns:repeat(3,1fr);gap:36px}.offers article{padding:26px 0 16px;border-top:3px solid var(--navy);display:flex;flex-direction:column;align-items:flex-start}.offer-number{font-size:10px;color:var(--muted);margin-bottom:30px}.offers h3{font-size:30px;margin-bottom:22px}.offers p{font-size:14px;color:var(--muted)}.offers ul{padding-left:17px;font-size:12px;line-height:1.9;color:var(--muted);margin:24px 0 30px}.offers li{padding-left:5px;margin:7px 0}.offers .text-link{font-size:11px;margin-top:auto}.closing{padding:90px 0 110px;border-top:1px solid var(--line);position:relative}.closing h2{font-size:clamp(40px,6vw,76px)}.closing .button{position:absolute;right:0;bottom:120px}.site-footer{background:var(--navy);color:var(--paper);padding:65px 0 30px}.site-footer>.wrap{display:grid;grid-template-columns:1fr 1fr 1fr;gap:40px}.site-footer .wordmark{font-size:40px}.site-footer p{font-size:12px;color:#c6ccda}.site-footer>.wrap>div{display:flex;flex-direction:column;gap:10px;font-size:12px;align-items:flex-start}.site-footer a{text-decoration:none}.site-footer a:hover{color:#ef9b9b}.copyright{grid-column:1/-1;border-top:1px solid #344268;margin-top:25px;padding-top:25px;font-size:10px;color:#a4aec4}.page-intro{padding-block:85px 90px;border-bottom:1px solid var(--line)}.page-intro .lead{max-width:680px;margin-top:35px}.page-intro h1{max-width:1100px}.approach{padding-top:80px}.approach h2{margin-bottom:30px}.experience-list{padding-bottom:50px}.experience{display:grid;grid-template-columns:1fr 1.1fr;gap:110px;padding-block:75px;border-bottom:1px solid var(--line);scroll-margin-top:125px}.experience-number{font-size:12px;color:var(--red);display:block;margin-bottom:30px}.experience .eyebrow{font-size:10px;margin-bottom:12px}.experience h2{font-size:42px}.experience-context{font-size:12px;color:var(--muted);margin-top:20px}.experience h3{font-size:26px;margin-top:14px;margin-bottom:22px}.experience>div>p{color:var(--muted);font-size:15px}.insight{margin-top:28px;border-left:2px solid var(--red);padding-left:22px}.insight>span{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.insight p{font-size:14px;color:var(--muted);margin-top:8px}.experience .text-link{margin-top:25px;font-size:11px}.biography{display:grid;grid-template-columns:1fr 1.3fr;gap:100px;padding-block:90px;align-items:center}.biography figure{max-width:360px}.biography img{width:100%;height:auto}.biography figcaption{font-size:10px;text-align:center;margin-top:20px;color:var(--muted)}.biography h2{font-size:38px;margin-bottom:30px}.biography p{font-size:15px;color:var(--muted)}.timeline article{display:grid;grid-template-columns:1fr 2fr;gap:65px;padding-block:75px;border-top:1px solid var(--line)}.year{font-size:38px;letter-spacing:-.05em;font-weight:700;line-height:1.25}.year span{display:block;font-size:11px;letter-spacing:0;font-weight:400;color:var(--muted);margin-top:18px}.timeline h2{font-size:42px;margin-bottom:28px}.timeline p:not(.eyebrow){font-size:15px;color:var(--muted);max-width:620px}.timeline .text-link{margin-top:23px;font-size:12px}.mission{display:grid;grid-template-columns:1fr 2fr;align-items:center;gap:65px;padding-block:80px 110px}.mission>img{width:220px;height:220px;max-width:none;justify-self:center;background:var(--navy);border-radius:20px}.mission h2{font-size:40px;margin-bottom:28px}.mission p{font-size:15px;color:var(--muted)}.mission .text-link{font-size:11px;margin-top:25px}.contact-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:110px;padding-block:90px 110px}.email-link{font-size:clamp(23px,3vw,40px);letter-spacing:-.055em;text-decoration:none;white-space:nowrap;display:inline-flex;gap:24px;align-items:center}.contact-main>p:not(.eyebrow){color:var(--muted);max-width:490px;margin-top:25px;font-size:15px}.contact-main .text-link{margin-top:30px}.contact-grid aside{background:#e9e9e4;border-radius:12px;padding:36px}.contact-grid aside h2{font-size:35px;margin-bottom:22px}.contact-grid aside p:not(.eyebrow){color:var(--muted);font-size:13px}.contact-grid aside .button{margin-top:25px}.contact-grid aside .small{font-size:10px;margin-top:15px}.contact-portrait{position:relative;margin-bottom:100px;min-height:460px;overflow:hidden;border-radius:12px}.contact-portrait img{width:100%;height:460px;object-position:50% 38%;filter:brightness(.65)}.contact-portrait p{position:absolute;left:50px;bottom:40px;color:white;font-size:48px;line-height:1.2;letter-spacing:-.05em;font-weight:700}.error-link{padding-block:40px 100px}
@media(min-width:1500px){.home-hero{min-height:820px;padding-top:85px;padding-bottom:110px}.hero-photo{min-height:590px}}
@media(max-width:1050px){.wrap{width:calc(100% - 64px)}.header-inner{height:84px}.home-hero{gap:25px;min-height:650px;padding-top:45px}.home-hero h1{font-size:5.8vw}.home-hero .lead{font-size:16px}.hero-photo{min-height:460px}.hero-actions{gap:18px}.hero-actions .button{padding:16px}.current{margin-top:35px}.about-grid,.experience,.biography,.contact-grid{gap:50px}.section-heading{gap:45px}.offers{gap:24px}.offers h3{font-size:26px}.section-heading h2{font-size:38px}nav{gap:24px}.email-link{white-space:normal}.contact-grid aside{padding:25px}.home-about{padding-block:65px}.about-grid>img{height:500px}}
@media(max-width:720px){html{scroll-padding-top:90px}.wrap{width:calc(100% - 40px)}.header-inner{height:78px;gap:20px}.wordmark{font-size:28px}.menu-toggle{display:flex;gap:18px;align-items:center;border:0;background:none;padding:10px 0;font-size:12px;color:var(--navy)}.menu-toggle span{font-size:22px}#main-nav{display:none;position:absolute;top:78px;left:0;right:0;background:var(--paper);padding:15px 20px 30px;border-bottom:1px solid var(--line);flex-direction:column;gap:0;align-items:stretch}#main-nav.is-open{display:flex}#main-nav a{font-size:17px;padding:16px 0;border:0;border-bottom:1px solid var(--line);border-radius:0}#main-nav a:last-child{padding:16px 0;justify-content:space-between}.home-hero{grid-template-columns:1fr;gap:32px;padding-top:40px;padding-bottom:70px;min-height:0}.hero-copy{padding-top:0}.home-hero h1{font-size:clamp(39px,10vw,66px);white-space:normal}.eyebrow{font-size:9px;margin-bottom:22px}.home-hero .lead{font-size:16px;margin-top:25px;max-width:500px}.hero-actions{margin-top:28px;gap:25px}.hero-actions .button{font-size:12px;padding:17px 18px}.hero-actions .text-link{font-size:12px}.current{margin-top:29px;font-size:10px}.hero-photo{height:370px;min-height:0;max-width:550px}.hero-photo img{object-position:53% 40%}.hero-photo figcaption{font-size:10px;padding:30px 18px 18px}.scroll-cue{font-size:9px;bottom:22px}.statement,.approach{grid-template-columns:1fr;gap:28px;padding-block:55px}.statement h2{font-size:30px;letter-spacing:-.045em}.statement p:not(.section-index),.approach p:not(.section-index){font-size:14px}.section-index{font-size:9px}.journey-section{padding:55px 0 25px}.section-heading{display:block;margin-bottom:35px}.section-heading h2{font-size:32px}.section-heading>p{max-width:100%;font-size:14px;margin-top:25px}.section-heading>.text-link{margin-top:25px}.route-scene{margin-inline:-10px}.route-scene svg{min-height:170px}.route-labels{font-size:24px}.route-bottom{display:block;margin-top:20px;padding-top:20px}.route-bottom .text-link{font-size:11px}.motion-toggle{font-size:10px;margin-top:15px}.work-section{padding-block:60px}.projects{grid-template-columns:1fr;gap:0}.project-card{padding:22px 0 26px}.project-top{margin-bottom:24px;font-size:9px}.project-card h3{font-size:28px}.project-card>p{font-size:14px;min-height:0}.project-card .text-link{margin-top:20px}.home-about{padding-block:45px}.about-grid{grid-template-columns:1fr;gap:38px}.about-grid>img{height:410px;object-position:50% 42%}.about-grid h2{font-size:38px;margin-bottom:25px}.about-grid .lead{font-size:18px}.about-signature{margin-top:30px}.offer-section{padding-block:60px}.offers{grid-template-columns:1fr;gap:32px}.offers article{padding-top:22px}.offer-number{margin-bottom:22px}.offers h3{font-size:29px;margin-bottom:18px}.offers p{font-size:14px}.offers ul{margin:15px 0 22px}.offers .text-link{font-size:12px}.closing{padding:55px 0 65px}.closing h2{font-size:43px}.closing .button{position:static;margin-top:30px}.site-footer{padding-top:45px}.site-footer>.wrap{grid-template-columns:1fr 1fr;gap:30px}.site-footer>.wrap>div{grid-column:1/-1;font-size:12px;gap:15px}.site-footer p{font-size:10px}.site-footer .wordmark{font-size:35px}.copyright{font-size:9px;margin-top:10px}.page-intro{padding-block:45px 50px}.page-intro h1{font-size:42px;letter-spacing:-.05em}.page-intro .lead{font-size:16px;margin-top:27px}.experience{grid-template-columns:1fr;gap:25px;padding-block:45px}.experience-number{margin-bottom:20px;font-size:10px}.experience h2{font-size:34px}.experience-context{font-size:11px;margin-top:13px}.experience h3{font-size:25px;margin-top:0}.experience>div>p{font-size:14px}.experience-list{padding-bottom:20px}.biography{grid-template-columns:1fr;gap:40px;padding-block:50px}.biography figure{max-width:260px;margin-inline:auto}.biography h2{font-size:31px}.biography p{font-size:14px}.timeline article{grid-template-columns:1fr;gap:30px;padding-block:45px}.year{font-size:31px}.year span{font-size:10px;margin-top:8px}.timeline h2{font-size:30px}.timeline p:not(.eyebrow){font-size:14px}.mission{grid-template-columns:1fr;gap:40px;padding-block:45px 60px}.mission>img{justify-self:start}.mission h2{font-size:30px}.mission p{font-size:14px}.contact-grid{grid-template-columns:1fr;gap:40px;padding-block:45px 60px}.email-link{font-size:27px;gap:15px}.contact-main>p:not(.eyebrow){font-size:14px}.contact-grid aside{padding:30px}.contact-grid aside h2{font-size:32px}.contact-portrait{min-height:330px;margin-bottom:60px}.contact-portrait img{height:330px;object-position:53% 50%}.contact-portrait p{font-size:34px;left:23px;bottom:25px}.biography figcaption{font-size:9px}.error-link{padding-bottom:65px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
