:root{--navy:#102d38;--navy2:#173c47;--gold:#d4af7c;--cream:#f5f3ee;--paper:#fbfaf7;--ink:#1d292c;--muted:#697579;--line:#dcded9;--serif:"Playfair Display",Georgia,serif;--sans:"DM Sans",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.7}a{color:inherit;text-decoration:none}.site-header{height:86px;padding:0 7.2%;display:flex;align-items:center;justify-content:space-between;background:var(--paper);position:sticky;top:0;z-index:20;border-bottom:1px solid rgba(16,45,56,.08)}.brand{display:flex;align-items:center;gap:12px;color:var(--navy)}.brand-mark{font-family:var(--serif);font-size:32px;letter-spacing:-3px;font-weight:600;line-height:1}.brand-mark span{color:var(--gold);font-size:25px}.brand-name{font-size:12px;font-weight:700;letter-spacing:1.5px;line-height:1.25}.brand-name small{display:block;font-size:8px;letter-spacing:1.65px;font-weight:500;margin-top:5px}.nav{display:flex;align-items:center;gap:32px;font-size:12px;font-weight:600;color:#425257}.nav a:not(.nav-cta):hover,.text-link:hover{color:#a77c45}.nav-cta{background:var(--navy);color:white;padding:13px 18px}.nav-cta span,.button span{color:var(--gold);padding-left:12px}.menu-toggle{display:none;background:none;border:0;font-size:24px;color:var(--navy)}
.hero{min-height:620px;background:var(--navy);color:white;display:grid;grid-template-columns:1.02fr .98fr;padding:80px 7.2% 58px;overflow:hidden}.hero-copy{align-self:center;max-width:650px;padding:0 5% 0 0}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;color:#a77c45;margin:0 0 22px}.hero .eyebrow{color:var(--gold)}.hero .eyebrow span{display:inline-block;width:26px;height:1px;background:var(--gold);vertical-align:middle;margin-right:10px}.hero h1,.section h2{font-family:var(--serif);font-size:clamp(42px,5.1vw,70px);line-height:1.12;font-weight:500;letter-spacing:-1.5px;margin:0}.hero h1 em,.section h2 em{color:var(--gold);font-weight:500}.hero-intro{font-size:16px;line-height:1.9;color:#d1dcdd;max-width:510px;margin:28px 0 34px}.hero-actions{display:flex;align-items:center;gap:30px}.button{display:inline-flex;align-items:center;justify-content:center;border:0;padding:15px 21px;font:700 11px var(--sans);letter-spacing:.3px;cursor:pointer}.button-gold{background:var(--gold);color:var(--navy)}.button-gold span{color:var(--navy)}.text-link{font-size:11px;font-weight:700;color:white}.text-link span{color:var(--gold);padding-left:8px}.hero-footnote{margin-top:82px;font-size:8px;letter-spacing:1.6px;color:#a9b9ba;display:flex;align-items:center;gap:13px}.hero-footnote .line{width:35px;height:1px;background:var(--gold)}
.hero-art{position:relative;min-height:470px;overflow:hidden;background:linear-gradient(135deg,#214b55,#102d38 75%);border:1px solid rgba(212,175,124,.28)}.art-sun{position:absolute;width:270px;height:270px;border-radius:50%;background:rgba(212,175,124,.16);top:35px;right:12%}.art-frame{position:absolute;inset:45px 45px 45px 85px;border:1px solid rgba(212,175,124,.45)}.art-building{position:absolute;bottom:70px;left:18%;width:64%;height:57%;background:#d8d2c5;clip-path:polygon(0 20%,62% 0,100% 17%,100% 100%,0 100%);box-shadow:0 20px 50px #081b21}.building-roof{position:absolute;top:0;left:0;width:100%;height:22%;background:#b6aa96;clip-path:polygon(0 90%,62% 0,100% 72%,100% 100%,0 100%)}.building-body{position:absolute;inset:30% 10% 0;display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.building-body i{background:#244650;border-top:5px solid #b88f5e;opacity:.95}.art-caption{position:absolute;bottom:16px;left:20px;right:20px;display:flex;justify-content:space-between;font-size:8px;letter-spacing:1.4px;color:#d2c4aa}
.section{padding:105px 7.2%;display:grid;grid-template-columns:18% 1fr;gap:4%}.section-label{font-size:9px;letter-spacing:2px;font-weight:700;color:#9a7a50;padding-top:10px}.intro{background:var(--cream)}.intro-content .eyebrow,.section-heading .eyebrow,.approach .eyebrow,.contact .eyebrow{margin-bottom:16px}.section h2{font-size:clamp(36px,4.3vw,56px);color:var(--navy)}.intro-columns{display:grid;grid-template-columns:1fr 1fr;gap:50px;margin-top:28px;max-width:900px}.intro-columns p{margin:0;color:#5c696b;font-size:14px;line-height:1.95}.people{background:var(--paper);display:block;padding-top:85px;padding-bottom:85px}.people-grid{margin-left:22%;display:grid;grid-template-columns:1fr 1fr;gap:22px}.person-card{background:var(--navy);color:white;padding:32px 35px 30px;min-height:330px;position:relative}.person-card-alt{background:#eae7df;color:var(--navy)}.person-number{font-family:var(--serif);font-size:34px;color:var(--gold)}.person-rule{height:1px;background:rgba(212,175,124,.45);margin:14px 0 25px}.person-card .eyebrow{font-size:8px;letter-spacing:1.5px;margin-bottom:9px;color:var(--gold)}.person-card h3{font:500 34px var(--serif);margin:0 0 13px}.person-card p:not(.eyebrow){font-size:12px;line-height:1.9;color:#d4dddd}.person-card-alt p:not(.eyebrow){color:#586366}.person-tag{display:block;margin-top:25px;font-size:8px;letter-spacing:1.4px;color:var(--gold);font-weight:700}.person-card-alt .person-tag{color:#987044}.small-note{font-size:10px;line-height:1.7;color:#7b8585;margin:18px 0 0 22%}
.services{background:var(--cream);display:block}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-left:22%;margin-bottom:45px}.section-heading>p{max-width:340px;color:#647174;font-size:13px;line-height:1.9;margin:0 0 6px}.service-grid{margin-left:22%;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #d3d4cd;border-bottom:1px solid #d3d4cd}.service{padding:25px 22px 28px 0;min-height:265px;border-right:1px solid #d3d4cd;position:relative}.service:not(:first-child){padding-left:22px}.service:last-child{border-right:0}.service-index{font-size:9px;color:#a27c4d;letter-spacing:1px}.service-icon{font:32px var(--serif);color:#a27c4d;margin:20px 0 10px}.service h3{font:500 19px var(--serif);color:var(--navy);line-height:1.3;margin:0 0 12px}.service p{font-size:11px;line-height:1.8;color:#697577;min-height:80px}.service a{font-size:9px;font-weight:700;letter-spacing:1px;color:var(--navy)}.service a span{color:#a27c4d;margin-left:8px}.services .small-note{margin-top:20px}
.portfolio{display:block;background:var(--paper)}.portfolio .section-heading{margin-bottom:42px}.portfolio-grid{margin-left:22%;display:grid;grid-template-columns:1.2fr 1fr;gap:30px}.project-large{grid-row:span 2}.project-visual{height:230px;position:relative;overflow:hidden;background:#d9ded9}.project-large .project-visual{height:360px}.visual-architecture{background:linear-gradient(145deg,#b8c8c6,#e8e4d8 60%,#b6b7a9)}.visual-sky{position:absolute;inset:0 0 35%;background:linear-gradient(#b5c8c7,#e5e0d1)}.visual-house{position:absolute;left:17%;right:15%;bottom:0;height:65%;background:#e9e4d8;clip-path:polygon(0 25%,48% 0,100% 20%,100% 100%,0 100%);box-shadow:0 5px 30px #73817b}.visual-house b{position:absolute;inset:20% 0 auto;height:10%;background:#9c9c8d}.visual-house i{position:relative;display:inline-block;background:#35515a;width:15%;height:38%;margin:30% 0 0 12%;border-top:4px solid #c29d6b}.visual-stamp{position:absolute;top:17px;left:18px;font-size:8px;letter-spacing:1.4px;color:#344b4d;background:rgba(255,255,255,.55);padding:7px 9px}.visual-plan{background:#e7e3d8}.plan-lines{position:absolute;inset:30px 12%;border:2px solid #6d7d79;transform:rotate(-5deg);background:repeating-linear-gradient(90deg,transparent 0 36px,rgba(64,87,85,.25) 37px 39px),repeating-linear-gradient(0deg,transparent 0 36px,rgba(64,87,85,.25) 37px 39px)}.plan-lines i{position:absolute;border:2px solid #6d7d79;background:rgba(245,243,238,.65)}.plan-lines i:nth-child(1){inset:10% 55% 50% 8%}.plan-lines i:nth-child(2){inset:10% 8% 50% 55%}.plan-lines i:nth-child(3){inset:55% 55% 8% 8%}.plan-lines i:nth-child(4){inset:55% 8% 8% 55%}.plan-lines i:nth-child(5){left:47%;top:10%;height:80%;width:6%;background:#b9a17f}.plan-lines i:nth-child(6){left:8%;top:47%;height:6%;width:84%;background:#b9a17f}.visual-structure{background:#d9e0dd}.structure-lines{position:absolute;inset:25px 20%;border:4px solid #526b6a;display:flex;justify-content:space-around}.structure-lines:before,.structure-lines:after{content:"";position:absolute;left:0;right:0;height:4px;background:#526b6a}.structure-lines:before{top:30%}.structure-lines:after{top:65%}.structure-lines i{width:4px;background:#526b6a;height:100%}.project-info{display:flex;justify-content:space-between;align-items:end;gap:12px;margin-top:18px}.project-type{font-size:8px;letter-spacing:1.5px;color:#a17b4d;font-weight:700}.project-info h3{font:500 22px var(--serif);color:var(--navy);margin:4px 0}.project-status{font-size:7px;letter-spacing:1px;color:#8a8f8c;text-align:right}.project-desc{font-size:11px;line-height:1.8;color:#707b7b;margin:10px 0 0}.portfolio-disclaimer{margin:35px 0 0 22%;padding:13px 16px;border-left:2px solid var(--gold);background:var(--cream);font-size:10px;color:#687476}
.approach{background:var(--navy);color:white}.approach .section-label{color:var(--gold)}.approach-main{margin-left:0}.approach h2{color:white}.steps{grid-column:2;display:grid;grid-template-columns:repeat(4,1fr);gap:25px;margin-top:42px}.step{border-top:1px solid rgba(212,175,124,.5);padding-top:17px}.step span{font:26px var(--serif);color:var(--gold)}.step h3{font:500 18px var(--serif);margin:12px 0 6px}.step p{font-size:11px;color:#c0cccd;line-height:1.8;margin:0}
.contact{background:var(--cream)}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:12%;margin-left:0}.contact h2{font-size:clamp(42px,5vw,64px)}.contact-intro{max-width:400px;color:#657174;font-size:13px;line-height:1.9;margin:25px 0 32px}.contact-details{display:grid;grid-template-columns:100px 1fr;gap:8px 15px}.contact-details span{font-size:8px;letter-spacing:1.3px;color:#9b7b50;font-weight:700}.contact-details strong{font-size:11px;font-weight:600;color:var(--navy)}.contact-form{display:grid;gap:15px}.contact-form label{font-size:10px;font-weight:700;color:#465558;letter-spacing:.4px}.contact-form input,.contact-form textarea,.contact-form select{display:block;width:100%;margin-top:6px;border:1px solid #d5d7d0;background:#fbfaf7;padding:12px 13px;font:12px var(--sans);color:var(--ink);border-radius:0;outline:none}.contact-form input:focus,.contact-form textarea:focus,.contact-form select:focus{border-color:#a77c45}.contact-form textarea{resize:vertical}.contact-form .button{justify-self:start}.form-note{font-size:9px;color:#7d8786;margin:0}.footer{background:#0b222a;color:#c5d0d0;padding:35px 7.2%;display:flex;align-items:center;justify-content:space-between;gap:20px}.footer-brand{color:white}.footer-brand .brand-mark{color:white}.footer p{font-size:10px;color:#aab9b9}.footer>span{font-size:9px;color:#879999}.back-top{font-size:8px;letter-spacing:1.4px;color:var(--gold)}
@media(max-width:900px){.site-header{padding:0 5%;height:75px}.nav{gap:17px}.hero{padding:65px 5%;grid-template-columns:1fr 1fr}.section{padding:80px 5%;grid-template-columns:14% 1fr}.people-grid,.section-heading,.service-grid,.portfolio-grid,.portfolio-disclaimer,.small-note{margin-left:18%}.section-heading{gap:25px}.service-grid{grid-template-columns:repeat(2,1fr)}.service:nth-child(2){border-right:0}.service:nth-child(n+3){border-top:1px solid #d3d4cd}.portfolio-grid{grid-template-columns:1fr 1fr}.footer{padding:30px 5%}}
@media(max-width:680px){.site-header{height:70px}.menu-toggle{display:block}.nav{display:none;position:absolute;top:70px;left:0;right:0;background:var(--paper);padding:20px 6%;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:17px}.nav.open{display:flex}.nav-cta{text-align:center}.hero{display:block;padding:62px 6% 35px}.hero-copy{padding:0}.hero h1{font-size:47px}.hero-intro{font-size:14px}.hero-footnote{margin-top:48px;font-size:7px}.hero-art{margin-top:45px;min-height:340px}.art-frame{inset:28px}.art-building{bottom:55px}.section{display:block;padding:70px 6%}.section-label{margin-bottom:28px}.section h2{font-size:42px}.intro-columns{grid-template-columns:1fr;gap:15px}.people{padding-top:65px}.people-grid,.section-heading,.service-grid,.portfolio-grid,.portfolio-disclaimer,.small-note{margin-left:0}.people-grid{grid-template-columns:1fr}.person-card{min-height:0}.small-note{margin-top:16px}.section-heading{display:block}.section-heading>p{margin-top:22px}.service-grid{grid-template-columns:1fr 1fr}.service{padding:20px 14px 22px 0;min-height:260px}.service:not(:first-child){padding-left:14px}.service:nth-child(2){border-right:0}.service:nth-child(3){padding-left:0}.service:nth-child(n+3){border-top:1px solid #d3d4cd}.service h3{font-size:17px}.service p{font-size:10px}.portfolio-grid{grid-template-columns:1fr;gap:28px}.project-large{grid-row:auto}.project-large .project-visual{height:280px}.project-visual{height:220px}.project-info{align-items:start;flex-direction:column}.project-status{text-align:left}.approach .section-label{margin-bottom:28px}.steps{grid-template-columns:1fr 1fr;gap:25px 18px;margin-top:35px}.contact-layout{grid-template-columns:1fr;gap:40px}.footer{flex-wrap:wrap;justify-content:flex-start}.footer p{width:100%;order:3;margin:0}.footer>span{width:100%;order:4}.back-top{margin-left:auto}}
