@font-face{font-family:CreekSerif;src:url('assets/serif.woff2') format('woff2');font-weight:400 600;font-display:swap}@font-face{font-family:CreekSans;src:url('assets/sans.woff2') format('woff2');font-weight:400 600;font-display:swap}
:root{--paper:#f3f1eb;--ink:#262c28;--muted:#7b8077;--bronze:#9c7850;--line:#d8d8cc;--dark:#25352f;--serif:CreekSerif,Georgia,serif;--sans:CreekSans,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button{border:0;background:none}img{display:block;width:100%;object-fit:cover}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--bronze);outline-offset:6px}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:400}h1,h2{font-family:var(--serif);letter-spacing:-.045em;line-height:1.03}h2{font-size:clamp(44px,5.4vw,78px)}em{font-weight:400;color:var(--bronze)}.eyebrow,.section-label{font-size:10px;letter-spacing:.16em;font-weight:500;line-height:1.6}.eyebrow{margin-bottom:25px}.section-pad{padding:100px 6.2%}.header{height:104px;padding:0 4.3%;display:flex;align-items:center;justify-content:space-between;gap:24px;background:var(--paper);position:sticky;top:0;z-index:20;transition:height .4s,box-shadow .4s}.header.scrolled{height:78px;box-shadow:0 1px 0 #d8d8cc}.brand{display:inline-flex;flex-direction:column;width:190px;flex-shrink:0}.brand-main{font-family:var(--serif);font-size:34px;line-height:1;letter-spacing:-.04em}.brand-mark{color:var(--bronze);margin-left:7px;font-size:32px}.brand-sub{font-size:8px;letter-spacing:.4em;margin:8px 0 0 20px}.desktop-nav{display:flex;gap:32px;font-size:12px}.desktop-nav a{position:relative;padding:10px 0}.desktop-nav a:after{content:'';height:1px;width:0;background:var(--bronze);position:absolute;bottom:3px;left:0;transition:width .3s}.desktop-nav a:hover:after{width:100%}.nav-cta{border-bottom:1px solid var(--bronze);padding:12px 0;font-size:11px}.nav-cta span{margin-left:20px;font-size:18px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:45% 55%;min-height:650px;height:calc(100svh - 104px);max-height:880px}.hero-copy{padding:65px 5% 28px 13.8%;display:flex;flex-direction:column;align-items:flex-start}.hero h1{font-size:clamp(65px,6.6vw,105px);margin:10px 0 24px}.hero-description{font-size:13px;line-height:1.9;color:#61685e;margin-bottom:30px}.text-link{font-size:12px;display:inline-flex;align-items:center;gap:38px;padding:0 0 10px;border-bottom:1px solid var(--bronze);transition:gap .3s}.text-link:hover{gap:47px}.text-link span{font-size:20px}.hero-bottom{display:flex;width:100%;justify-content:space-between;align-items:center;margin-top:auto;padding-top:35px;font-size:10px}.hero-bottom a{display:flex;gap:24px;align-items:center}.small-index{color:var(--bronze);font-size:11px}.down-arrow{font-size:25px}.hero-visual{position:relative;overflow:hidden;background:#a2a899}.hero-image{height:100%;object-position:47% 50%;animation:heroZoom 12s ease-out both}.hero-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#18251d70,transparent 40%)}.hero-photo-footer{position:absolute;bottom:32px;left:32px;right:32px;display:flex;align-items:center;justify-content:space-between;z-index:1;color:white;font-size:9px;letter-spacing:.16em}.round-button{border:1px solid #ffffff90;border-radius:50%;height:46px;width:46px;font-size:25px;color:white;transition:background .3s}.round-button:hover{background:#ffffff25}.photo-number{position:absolute;right:28px;top:28px;font-size:8px;letter-spacing:.2em;color:white;background:#24332965;padding:8px 11px}.intro-bar{min-height:98px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:27px;padding:22px 6.2%;font-family:var(--serif);font-size:25px}.bar-symbol{color:var(--bronze);font-family:var(--sans);font-size:28px}.intro-bar a{font-family:var(--sans);font-size:9px;letter-spacing:.12em;margin-left:auto;display:flex;gap:23px;align-items:center}.intro-bar a span{font-size:20px}.section-label{display:flex;align-items:center;gap:15px;color:var(--bronze);margin-bottom:40px}.line{height:1px;width:42px;background:var(--bronze)}.philosophy-main{display:grid;grid-template-columns:1.25fr 1fr;gap:9%}.muted{color:#7e8479}.philosophy h2{font-size:clamp(43px,4.9vw,72px)}.philosophy-copy{padding-top:2px;max-width:420px}.philosophy-copy p{font-size:14px;line-height:1.9;margin-bottom:19px;color:#60685f}.philosophy-copy .text-link{margin-top:10px}.work{padding-top:30px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:45px}.section-heading .eyebrow{margin-bottom:20px}.section-aside{font-size:12px;line-height:1.8;color:#6e756b;padding-bottom:4px}.work-grid{display:grid;grid-template-columns:1.18fr 1fr;gap:45px}.project{padding:0;text-align:left;width:100%;display:block}.image-wrap{overflow:hidden;position:relative;background:#d8d8cc}.image-wrap img{height:100%;transition:transform 1s cubic-bezier(.2,.7,.2,1),filter .6s}.project:hover img{transform:scale(1.035);filter:brightness(.94)}.project-large .image-wrap{height:680px}.work-right{padding-top:105px;display:grid;gap:48px}.work-right .image-wrap{height:260px}.image-arrow{position:absolute;bottom:18px;right:18px;height:40px;width:40px;background:var(--paper);border-radius:50%;display:grid;place-items:center;font-size:22px;transition:transform .3s}.project:hover .image-arrow{transform:rotate(45deg)}.project-caption{margin-top:20px;display:flex;justify-content:space-between;align-items:center;gap:15px}.project-caption h3{font-family:var(--serif);font-size:25px;letter-spacing:-.03em}.project-caption>span{font-size:8px;letter-spacing:.1em;color:#7b8077;text-align:right}.gallery-note{font-size:11px;color:#7b8077;margin-top:38px;display:flex;align-items:center;justify-content:space-between}.gallery-note button{border-bottom:1px solid var(--bronze);padding:8px 0;font-size:11px;color:var(--ink)}.gallery-note button span{margin-left:20px}.approach{background:var(--dark);color:var(--paper);display:grid;grid-template-columns:1fr 1.2fr;gap:12%;padding-top:105px;padding-bottom:110px}.approach .eyebrow{color:#b9ad96}.approach h2{font-size:clamp(58px,5.5vw,83px)}.approach em{color:#c0a481}.approach-intro>p:last-child{font-size:13px;line-height:1.9;color:#c1c9bf;margin-top:30px;max-width:340px}.process-list{padding-top:14px}.process{border-bottom:1px solid #ffffff2b}.process:first-child{border-top:1px solid #ffffff2b}summary{list-style:none;cursor:pointer}summary::-webkit-details-marker{display:none}.process summary{display:flex;align-items:center;gap:25px;padding:28px 0}.process-no{font-size:10px;color:#baa384}.process h3{font-family:var(--serif);font-size:29px;letter-spacing:-.02em}.process-icon{margin-left:auto;position:relative;width:14px;height:14px}.process-icon:before,.process-icon:after{content:'';position:absolute;top:6px;left:0;width:14px;height:1px;background:#b8c0b6}.process-icon:after{transform:rotate(90deg);transition:transform .3s}details[open] .process-icon:after{transform:rotate(0)}.process-body{padding:0 10px 30px 44px;animation:fadeIn .4s ease}.process-body p{font-size:13px;line-height:1.85;color:#c1c9bf}.process-tag{display:block;font-size:8px;letter-spacing:.13em;margin-top:20px;color:#c0a481}.detail-image{height:530px;position:relative;overflow:hidden}.detail-image img{height:100%;object-position:50% 50%}.detail-image:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#1a241bd6,transparent)}.detail-overlay{position:absolute;left:6.2%;top:50%;transform:translateY(-50%);z-index:1;color:white}.detail-overlay .eyebrow{color:#e1d3bf}.detail-overlay>p:last-child{font-family:var(--serif);font-size:clamp(50px,6vw,86px);line-height:1.05;letter-spacing:-.035em}.detail-overlay em{color:#dac4a3}.people-title{margin-bottom:50px}.people-grid{display:grid;grid-template-columns:1fr 1fr;gap:9%}.people-image img{height:520px;object-position:center}.image-footnote{font-size:8px;letter-spacing:.15em;margin-top:15px;color:#777f73}.people-copy{padding-top:10px}.large-copy{font-family:var(--serif);font-size:31px;line-height:1.2;letter-spacing:-.025em;margin-bottom:23px}.people-copy>p:not(.large-copy):not(.credential-note){font-size:13px;line-height:1.9;color:#646d60;margin-bottom:20px}.credential{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0;margin-top:27px;display:flex;gap:20px;align-items:center}.credential-icon{height:50px;width:50px;border:1px solid var(--bronze);border-radius:50%;display:grid;place-items:center;font-family:var(--serif);font-size:24px;color:var(--bronze);flex-shrink:0}.credential strong{font-size:11px;font-weight:500}.credential p{font-size:11px;line-height:1.7;color:#646d60;margin-top:7px}.credential-note{font-size:9px;line-height:1.5;color:#858b80;margin-top:12px}.regions{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:9%;background:#e9e9df}.regions h2{font-size:clamp(45px,4.8vw,70px)}.region-copy>p:first-child{font-size:14px;line-height:1.9;color:#636d60;max-width:420px}.city-list{margin:30px 0;display:grid;grid-template-columns:1fr 1fr;gap:13px;font-family:var(--serif);font-size:24px}.region-footnote{font-size:10px;line-height:1.8;max-width:390px;color:#7b8375}.faq{display:grid;grid-template-columns:1fr 1.2fr;gap:12%}.faq h2{font-size:64px}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:25px 0;font-size:13px;line-height:1.5}.faq-list summary span{color:var(--bronze);font-size:21px;transition:transform .3s}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{font-size:13px;line-height:1.9;color:#68715f;padding:0 20px 25px 0;animation:fadeIn .4s}.contact{background:#dddccd;padding-top:90px;padding-bottom:70px}.contact h2{font-size:clamp(75px,9.8vw,150px)}.contact-bottom{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-top:35px}.contact-bottom p{font-size:13px;line-height:1.8;color:#626b5d}.contact-button{display:flex;align-items:center;gap:65px;border-bottom:1px solid #8c927e;padding:0 0 18px;font-size:14px}.contact-button span{font-size:30px;transition:transform .3s}.contact-button:hover span{transform:translate(4px,-4px)}.footer{padding:48px 6.2% 25px;display:flex;align-items:center;gap:8%;position:relative;flex-wrap:wrap}.footer>.brand{width:190px}.footer>p{font-size:11px;line-height:1.8;color:#7b8375}.footer>div:not(.pilot-note){margin-left:auto}.footer>div>span{font-size:8px;letter-spacing:.16em}.footer>div>p{font-size:10px;margin-top:10px;color:#7b8375}.back-top{border:1px solid var(--line);border-radius:50%;width:42px;height:42px;display:grid;place-items:center;font-size:22px}.pilot-note{width:100%;font-size:8px;letter-spacing:.12em;color:#8a8e80;margin-top:35px;padding-top:18px;border-top:1px solid var(--line)}.skip{position:fixed;top:-100px;left:15px;padding:15px;background:white;z-index:100}.skip:focus{top:10px}.reveal{opacity:1;transform:none}.motion-ready .reveal:not(.visible){opacity:0;transform:translateY(24px)}.reveal{transition:opacity .85s ease,transform .85s cubic-bezier(.2,.7,.2,1)}.hero-enter{animation:heroEnter 1s both}.hero-enter:nth-child(2){animation-delay:.12s}.hero-enter:nth-child(3){animation-delay:.24s}.hero-enter:nth-child(4){animation-delay:.36s}.hero-enter:nth-child(5){animation-delay:.48s}dialog{border:0;color:var(--ink);padding:0;max-height:92svh}dialog::backdrop{background:#14201bdd;backdrop-filter:blur(7px)}.dialog-close{position:absolute;top:14px;right:20px;z-index:2;font-size:32px;width:40px;height:40px;line-height:1}.consult-dialog{background:var(--paper);padding:50px;width:min(690px,calc(100% - 30px));overflow-y:auto}.consult-dialog h2{font-size:58px}.consult-dialog .eyebrow{margin-bottom:15px}.form-intro{font-size:13px;color:#717a69;margin-top:18px;margin-bottom:24px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:block;font-size:10px;margin-bottom:18px}input,select,textarea{width:100%;border:0;border-bottom:1px solid #bfc5b5;border-radius:0;background:transparent;padding:12px 0;font-size:13px;outline-offset:3px;color:var(--ink)}textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline:1px solid var(--bronze)}.demo-notice{font-size:10px;line-height:1.7;color:#747d69;margin-bottom:20px}.form-submit{width:100%;padding:16px 20px;background:var(--dark);color:white;display:flex;justify-content:space-between;font-size:12px}.form-submit:hover{background:#3a5045}#form-status{margin-top:20px;border-left:2px solid var(--bronze);padding:10px 15px;font-size:13px;line-height:1.7}.gallery-dialog{width:min(1100px,95vw);background:#1c2a23;color:white;overflow:visible}.gallery-dialog .dialog-close{color:white;top:8px;right:8px;background:#15221b85;border-radius:50%}.gallery-frame img{height:min(70svh,720px);object-fit:contain;background:#18251e}.gallery-controls{display:flex;align-items:center;justify-content:space-between;padding:15px 22px;gap:20px}.gallery-controls button{color:white;font-size:27px;width:44px;height:40px;border:1px solid #ffffff40}.gallery-controls p{font-size:12px;text-align:center;line-height:1.6}.mobile-nav[hidden]{display:none}@keyframes heroEnter{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes heroZoom{from{transform:scale(1.055)}to{transform:scale(1)}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@media(min-width:1700px){body{max-width:1920px;margin:auto}.hero{max-height:940px}}@media(max-width:1100px){.header{padding:0 5%;height:90px}.desktop-nav{gap:20px}.nav-cta{font-size:10px}.nav-cta span{margin-left:10px}.brand{width:170px}.hero{height:700px;min-height:0}.hero-copy{padding-top:55px}.hero h1{font-size:76px}.hero-copy .eyebrow{font-size:8px}.project-large .image-wrap{height:580px}.work-grid{gap:25px}.work-right .image-wrap{height:220px}.project-caption{align-items:start;flex-direction:column;gap:8px}.approach,.faq{gap:7%}.process h3{font-size:25px}.people-grid{gap:6%}.people-image img{height:530px}.intro-bar{gap:20px;font-size:22px}.intro-bar a{font-size:8px;gap:12px}.footer{gap:5%}}
@media(max-width:760px){html{scroll-padding-top:76px}.header,.header.scrolled{height:78px;padding:0 6%}.header .brand-main{font-size:31px}.header .brand-sub{font-size:7px}.desktop-nav,.nav-cta{display:none}.menu-toggle{display:flex;width:40px;height:40px;flex-direction:column;justify-content:center;gap:7px;padding:7px}.menu-toggle span{height:1px;background:var(--ink);width:26px;transition:transform .3s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.mobile-nav{position:fixed;top:78px;left:0;right:0;z-index:19;background:var(--paper);padding:20px 6% 30px;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:22px}.mobile-nav a{font-family:var(--serif);font-size:31px}.mobile-nav button{text-align:left;font-size:13px;padding:10px 0;color:var(--bronze)}.hero{height:auto;display:flex;flex-direction:column;max-height:none}.hero-copy{padding:35px 6% 28px}.hero-copy .eyebrow{font-size:8px;margin-bottom:15px}.hero h1{font-size:clamp(65px,14vw,94px);margin:0 0 22px;line-height:1}.hero-description{font-size:13px;margin-bottom:22px}.hero-bottom{display:none}.hero-visual{height:420px;margin-top:10px}.hero-image{object-position:center}.hero-photo-footer{left:24px;right:24px;bottom:22px;font-size:8px}.photo-number{top:20px;right:20px}.intro-bar{padding:24px 6%;gap:9px 13px;flex-wrap:wrap;font-size:21px;min-height:100px}.bar-symbol{font-size:22px}.intro-bar a{width:100%;margin:6px 0 0;justify-content:space-between;font-size:8px}.section-pad{padding:65px 6%}.section-label{font-size:8px;margin-bottom:25px}.philosophy-main{grid-template-columns:1fr;gap:28px}.philosophy h2{font-size:48px}.philosophy-copy{max-width:none}.philosophy-copy p{font-size:13px}.work{padding-top:10px}.section-heading{align-items:start;margin-bottom:30px}.section-heading h2{font-size:48px}.section-heading .eyebrow{margin-bottom:15px}.section-aside{display:none}.work-grid{grid-template-columns:1fr;gap:35px}.project-large .image-wrap{height:430px}.work-right{padding-top:0;gap:35px;grid-template-columns:1fr 1fr}.work-right .image-wrap{height:230px}.project-caption h3{font-size:22px}.project-caption>span{font-size:7px}.work-right .project-caption h3{font-size:21px}.gallery-note{align-items:start;gap:20px;font-size:10px;line-height:1.8}.gallery-note button{flex-shrink:0;font-size:10px}.approach{grid-template-columns:1fr;gap:35px}.approach h2{font-size:66px}.approach-intro>p:last-child{max-width:none}.process summary{padding:24px 0;gap:20px}.process h3{font-size:27px}.process-body{padding-left:35px}.detail-image{height:430px}.detail-overlay{left:6%}.detail-overlay>p:last-child{font-size:57px}.detail-overlay .eyebrow{font-size:8px}.people-title h2{font-size:49px}.people-title .eyebrow{font-size:8px;max-width:270px}.people-grid{grid-template-columns:1fr;gap:30px}.people-image img{height:370px}.people-copy{padding:0}.large-copy{font-size:30px}.people-title{margin-bottom:30px}.regions{grid-template-columns:1fr;gap:30px}.regions h2{font-size:51px}.region-copy>p:first-child{font-size:13px}.city-list{font-size:24px}.faq{grid-template-columns:1fr;gap:25px}.faq h2{font-size:55px}.faq-list summary{font-size:12px}.contact h2{font-size:80px}.contact-bottom{align-items:start;flex-direction:column;gap:35px}.contact-button{width:100%;justify-content:space-between;gap:20px}.footer{padding:40px 6% 22px;gap:30px;align-items:start}.footer>.brand{width:160px}.footer>p{font-size:10px}.footer>div:not(.pilot-note){margin-left:0;flex:1}.back-top{margin-left:auto}.pilot-note{margin-top:0;font-size:7px}.consult-dialog{padding:40px 25px 25px}.consult-dialog h2{font-size:50px}.form-row{grid-template-columns:1fr;gap:0}.gallery-controls p{font-size:10px}.gallery-frame img{height:60svh}.gallery-controls{padding:12px}.gallery-controls button{flex-shrink:0}.motion-ready .reveal:not(.visible){transform:translateY(15px)}}
@media(max-width:420px){.hero-visual{height:340px}.work-right{grid-template-columns:1fr}.work-right .image-wrap{height:285px}.intro-bar{font-size:18px;gap:10px}.intro-bar .bar-symbol{font-size:19px}.project-large .image-wrap{height:370px}.contact h2{font-size:70px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion-ready .reveal:not(.visible){opacity:1;transform:none}}
