@font-face{font-family:DM Sans;src:url('fonts/dm-sans.woff2') format('woff2');font-style:normal;font-weight:100 1000;font-display:swap}
@font-face{font-family:Instrument;src:url('fonts/instrument-serif.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Instrument;src:url('fonts/instrument-serif-italic.woff2') format('woff2');font-style:italic;font-weight:400;font-display:swap}
:root{--paper:#f6f5f0;--ink:#142f43;--muted:#58666e;--line:#d7d9d3;--orange:#c36743;--pale:#e9eeed;--white:#fff;--shell:1320px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--paper);color:var(--ink);font-family:DM Sans,Arial,sans-serif;font-size:16px;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{display:block;width:100%;object-fit:cover}figure,p,h1,h2,h3{margin:0}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--orange);outline-offset:6px}::selection{background:#e6b8a0;color:var(--ink)}.shell{width:calc(100% - 112px);max-width:var(--shell);margin-inline:auto}.eyebrow{font-size:10px;letter-spacing:1.8px;text-transform:uppercase;font-weight:600;line-height:1.6}.signal{width:6px;height:6px;border-radius:50%;display:inline-block;background:var(--orange);margin-right:10px;vertical-align:2px}.wordmark{font-size:40px;letter-spacing:-3px;font-weight:650;line-height:1;display:inline-flex;align-items:baseline}.brand-dot{width:7px;height:7px;background:var(--orange);display:inline-block;border-radius:50%;margin-left:4px}.header-inner{height:106px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}nav{display:flex;align-items:center;gap:37px;font-size:12px;font-weight:500}nav a{padding-block:12px;transition:color .2s}nav a:hover{color:var(--orange)}.nav-contact{margin-left:25px;border-bottom:1px solid var(--ink);padding-bottom:8px}nav span{margin-left:28px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.25fr 1fr;column-gap:48px;padding-top:65px}.hero-main{padding-top:17px}.hero h1{font-size:clamp(72px,6.7vw,102px);font-weight:400;letter-spacing:-5.5px;line-height:1.03;margin-top:34px}.hero h1 em{font:inherit;letter-spacing:inherit;color:var(--orange)}.hero-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:41px}.hero-bottom p{font-size:14px;line-height:1.8;color:var(--muted)}.round-link{width:49px;height:49px;flex:0 0 49px;border:1px solid #bbc3c5;border-radius:50%;display:grid;place-items:center;font-size:23px;transition:background .2s,color .2s}.round-link:hover{background:var(--ink);color:var(--paper)}.hero-visual{background:#142f43;min-height:500px;position:relative;display:flex;flex-direction:column;overflow:hidden;color:#eff0e9}.visual-top{display:flex;justify-content:space-between;align-items:center;padding:25px 28px 0;font-size:8px;letter-spacing:1.65px;color:#bdccd2}.visual-cross{font-size:24px;font-weight:300}.structure-art{display:block;width:100%;flex:1;max-height:355px;margin:4px 0 -3px}.visual-bottom{display:flex;justify-content:space-between;gap:18px;align-items:flex-end;margin:0 28px 27px;padding-top:16px;border-top:1px solid #3f5665}.tiny-index{font-size:8px;letter-spacing:1.3px;color:#adbec7}.visual-bottom p{font-family:Instrument,Georgia,serif;font-size:21px;line-height:1.12}.hero-caption{grid-column:1/-1;display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:27px 0 28px;font-size:10px;color:var(--muted)}.hero-caption>span:first-child{letter-spacing:.4px}.hero-caption>span:last-child span{margin-left:24px}.intro{display:grid;grid-template-columns:1fr 2fr;gap:70px;padding-block:100px 105px}.section-label{padding-top:12px}h2{font-family:Instrument,Georgia,serif;font-weight:400;font-size:56px;line-height:1.06;letter-spacing:-1.25px}.intro h2{font-size:56px}.large-copy{font-size:21px;line-height:1.6;max-width:660px;margin-top:28px}.body-copy{font-size:14px;line-height:1.9;color:var(--muted);max-width:575px;margin-top:20px}.section-top{display:flex;justify-content:space-between;gap:48px;align-items:flex-end;margin-bottom:48px}.section-top h2{margin-top:20px}.section-top>p{font-size:13px;line-height:1.9;color:var(--muted);padding-bottom:3px}.expertise{padding-block:0 106px}.service{display:grid;grid-template-columns:60px 1.15fr 1.5fr 30px;gap:28px;border-top:1px solid var(--line);padding:34px 0 33px;align-items:start}.service:last-child{border-bottom:1px solid var(--line)}.service-number{font-size:11px;color:var(--orange);padding-top:8px}.service h3{font-size:26px;font-weight:400;letter-spacing:-.8px;line-height:1.3}.service p{font-size:13px;line-height:1.85;max-width:470px;color:var(--muted)}.service-tags{display:block;font-size:9px;letter-spacing:.4px;margin-top:17px;color:#65747b}.service-mark{font-size:22px;font-weight:300;color:var(--orange);text-align:right}.focus-section{background:var(--pale);padding-block:87px 90px}.focus-tabs{display:grid;grid-template-columns:repeat(3,1fr);margin-bottom:31px}.focus-tabs button{border:0;border-bottom:1px solid #bdc9cc;background:none;padding:20px 0;display:flex;align-items:center;justify-content:space-between;font-size:13px;text-align:left;gap:15px;margin-right:28px;transition:color .2s,border-color .2s}.focus-tabs button:last-child{margin-right:0}.focus-tabs button[aria-selected=true]{border-bottom:2px solid var(--ink);font-weight:600}.focus-tabs button:hover{color:var(--orange)}.focus-tabs button span{font-size:20px}.focus-panel{display:grid;grid-template-columns:1fr 1fr;gap:70px;min-height:410px;align-items:center}.focus-panel[hidden]{display:none}.focus-panel figure{height:410px;overflow:hidden}.focus-panel img{height:100%;object-position:center 55%}.focus-copy{padding-right:36px}.focus-copy .eyebrow{color:#5b707b;font-size:9px}.focus-copy h3{font-family:Instrument,Georgia,serif;font-size:46px;line-height:1.08;letter-spacing:-.6px;font-weight:400;margin-top:24px}.focus-copy>p:not(.eyebrow){font-size:13px;line-height:1.85;color:#506571;margin-top:22px;max-width:420px}.focus-copy ul{padding:0;list-style:none;margin:22px 0 0;font-size:11px}.focus-copy li{padding:11px 0;border-top:1px solid #c9d3d4;display:flex;gap:12px}.focus-copy li:before{content:'↗';color:var(--orange)}.approach{padding-block:102px 92px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:42px}.step-line{display:flex;justify-content:space-between;border-top:1px solid #aebbc1;padding-top:18px;font-size:11px;color:var(--orange)}.step-line span:last-child{font-size:18px}.steps h3{font-size:25px;font-weight:400;letter-spacing:-.6px;margin-top:34px}.steps p{font-size:13px;line-height:1.85;color:var(--muted);margin-top:16px;max-width:320px}.perspective{display:grid;grid-template-columns:.85fr 1fr;gap:100px;align-items:center;padding-bottom:100px}.perspective figure{height:385px;position:relative;overflow:hidden}.perspective img{height:100%;filter:saturate(.3);object-position:45% center}.perspective-copy h2{font-size:51px;margin-top:20px}.perspective-copy>p:not(.eyebrow){max-width:400px;font-size:14px;line-height:1.85;color:var(--muted);margin-top:25px}.text-link{display:inline-flex;gap:36px;border-bottom:1px solid #91a1a9;padding-bottom:11px;font-size:12px;margin-top:30px}.text-link:hover{color:var(--orange)}.contact{background:var(--ink);color:var(--paper);padding-block:65px 60px}.contact-top{display:flex;justify-content:space-between;align-items:center}.contact .eyebrow{color:#c5d2d7}.contact .signal{background:#e69b74}.contact-flower{font-size:61px;font-weight:300;color:#e39b77;line-height:1}.contact h2{font-family:DM Sans,Arial,sans-serif;font-size:clamp(64px,6.4vw,94px);letter-spacing:-4px;line-height:1.08;margin-top:30px;font-weight:400}.contact h2 em{font:inherit;color:#e6a07f}.contact-bottom{display:flex;align-items:center;justify-content:space-between;gap:40px;margin-top:45px}.contact-bottom>p{font-size:13px;line-height:1.9;color:#bfccd1}.contact-link{display:flex;justify-content:space-between;align-items:center;gap:55px;border-bottom:1px solid #728693;padding-bottom:16px;font-size:18px;min-width:350px}.contact-link>span:last-child{font-size:30px;color:#e6a07f}.contact-channel{display:block;font-size:8px;letter-spacing:1.4px;color:#b8c8d0;margin-top:9px}.contact-link:hover{color:#e6a07f}.footer{padding-block:45px 27px}.footer-top{display:flex;align-items:center;gap:44px}.footer-top .wordmark{font-size:35px}.footer-top p{font-size:11px;color:var(--muted)}.back-top{margin-left:auto;font-size:10px}.back-top span{margin-left:22px}.footer-bottom{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-top:31px;border-top:1px solid var(--line);padding-top:22px;font-size:9px;color:#68767b;line-height:1.8}.footer-bottom p{max-width:630px}.footer-bottom>span{flex-shrink:0}.skip{position:fixed;top:10px;left:10px;background:var(--ink);color:white;padding:14px;z-index:99;transform:translateY(-200%)}.skip:focus{transform:translateY(0)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:1500px){.hero{column-gap:65px}.hero-main{padding-top:24px}.hero h1{font-size:102px}.hero-visual{min-height:530px}.structure-art{max-height:385px}.hero-bottom{margin-top:42px}}
@media(max-width:1100px){.shell{width:calc(100% - 72px)}nav{gap:24px}.nav-contact{margin-left:6px}.hero{column-gap:30px;padding-top:46px}.hero h1{font-size:76px;letter-spacing:-4px}.hero-visual{min-height:450px}.visual-bottom{flex-direction:column;align-items:flex-start;gap:12px}.hero-bottom{margin-top:30px}.hero-bottom p{font-size:12px}.desktop-break{display:none}.intro{gap:40px;padding-block:80px}.intro h2,h2{font-size:49px}.large-copy{font-size:19px}.service{grid-template-columns:34px 1fr 1.3fr 20px;gap:20px}.service h3{font-size:23px}.focus-panel{gap:40px}.focus-copy{padding-right:0}.focus-copy h3{font-size:40px}.perspective{gap:55px}.perspective-copy h2{font-size:45px}.steps{gap:28px}}
@media(max-width:760px){html{scroll-padding-top:20px}.shell{width:calc(100% - 40px)}.header-inner{height:83px;position:relative}.wordmark{font-size:36px}.menu-toggle{display:flex;align-items:center;gap:18px;border:0;background:none;padding:10px 0;font-size:12px}.menu-toggle span{font-size:23px;font-weight:300}.menu-toggle[aria-expanded=true] span{transform:rotate(45deg)}nav{display:none;position:absolute;top:82px;left:-20px;right:-20px;background:var(--paper);z-index:10;padding:14px 20px 25px;border-bottom:1px solid var(--line);box-shadow:0 15px 25px #142f4308}nav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:0}nav a{padding:16px 0;border-bottom:1px solid var(--line);font-size:14px}.nav-contact{margin-left:0;display:flex;justify-content:space-between}.hero{grid-template-columns:1fr;padding-top:36px;gap:34px}.hero-main{padding-top:0}.hero .eyebrow{font-size:9px;letter-spacing:1.5px}.hero h1{font-size:clamp(65px,11.2vw,84px);letter-spacing:-3.7px;margin-top:26px;line-height:1.03}.hero-bottom{margin-top:26px;gap:25px}.hero-bottom p{font-size:13px;line-height:1.75;max-width:300px}.round-link{width:44px;height:44px;flex-basis:44px}.hero-visual{min-height:420px;max-height:480px}.visual-top{padding:19px 22px 0}.structure-art{max-height:320px;min-height:265px}.visual-bottom{flex-direction:row;align-items:flex-end;margin:0 22px 23px}.visual-bottom p{font-size:20px}.tiny-index{max-width:130px;line-height:1.6}.hero-caption{margin-top:-14px;padding:0 0 25px;gap:20px;font-size:9px;line-height:1.7;align-items:start}.hero-caption>span:last-child{max-width:145px;text-align:right}.hero-caption>span:last-child span{margin-left:8px}.intro{grid-template-columns:1fr;gap:25px;padding-block:62px 64px}.section-label{padding-top:0}h2,.intro h2{font-size:43px;letter-spacing:-.8px}.large-copy{font-size:18px;line-height:1.65;margin-top:23px}.body-copy{font-size:13px;line-height:1.85;margin-top:19px}.section-top{flex-direction:column;align-items:flex-start;gap:22px;margin-bottom:31px}.section-top h2{margin-top:18px}.section-top>p{font-size:12px}.section-top>p br{display:none}.expertise{padding-bottom:65px}.service{grid-template-columns:26px 1fr 20px;gap:9px 16px;padding-block:25px 27px}.service-number{padding-top:5px;font-size:10px}.service h3{font-size:24px}.service>div{grid-column:2;grid-row:2}.service-mark{grid-column:3;grid-row:1}.service p{font-size:13px;margin-top:8px}.service-tags{font-size:9px;line-height:1.8;margin-top:14px}.focus-section{padding-block:57px 58px}.focus-tabs{grid-template-columns:1fr;gap:0;margin-top:-4px;margin-bottom:28px}.focus-tabs button{margin-right:0;padding:15px 0;font-size:13px}.focus-tabs button[aria-selected=true]{color:var(--ink)}.focus-panel{grid-template-columns:1fr;gap:28px;min-height:0}.focus-panel figure{height:290px}.focus-copy h3{font-size:40px;margin-top:17px}.focus-copy>p:not(.eyebrow){margin-top:20px}.focus-copy ul{margin-top:20px}.focus-copy li{font-size:12px;padding:12px 0}.approach{padding-block:61px 60px}.approach .section-top{gap:19px}.steps{grid-template-columns:1fr;gap:27px}.step-line{padding-top:14px}.steps h3{margin-top:15px;font-size:25px}.steps p{margin-top:12px;max-width:none;font-size:13px}.perspective{grid-template-columns:1fr;gap:30px;padding-bottom:61px}.perspective figure{height:280px}.perspective-copy h2{font-size:43px;margin-top:18px}.perspective-copy>p:not(.eyebrow){font-size:13px;margin-top:22px}.text-link{margin-top:24px}.contact{padding-block:39px 39px}.contact-flower{font-size:43px}.contact .eyebrow{font-size:9px}.contact h2{font-size:clamp(46px,8.4vw,64px);line-height:1.12;letter-spacing:-2px;margin-top:23px}.contact-bottom{flex-direction:column;align-items:stretch;gap:32px;margin-top:27px}.contact-bottom>p{font-size:12px}.contact-link{min-width:0;gap:18px;font-size:17px;padding-bottom:14px}.contact-link>span:last-child{font-size:28px}.footer{padding-block:32px 22px}.footer-top{flex-wrap:wrap;gap:20px}.footer-top .wordmark{font-size:33px}.footer-top p{font-size:9px}.back-top{font-size:9px}.back-top span{margin-left:6px}.footer-bottom{flex-direction:column;align-items:flex-start;gap:17px;font-size:9px;margin-top:25px;padding-top:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
