:root{--navy:#101c28;--navy-light:#1a2937;--gold:#b69560;--pale-gold:#d1b37d;--ivory:#f6f4ee;--ink:#1b2a36;--muted:#687079;--line:#d9d6cd;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--ivory);color:var(--ink);font:16px/1.65 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a,button{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible{outline:2px solid var(--gold);outline-offset:6px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400}img{display:block;max-width:100%}.skip-link{position:fixed;top:-80px;left:20px;padding:12px 22px;background:#fff;z-index:100}.skip-link:focus{top:10px}.site-header{position:sticky;top:0;z-index:20;background:rgba(250,249,245,.98);border-bottom:1px solid rgba(16,28,40,.08)}.header-inner{max-width:1600px;margin:auto;padding:0 5%;height:102px;display:flex;align-items:center;justify-content:space-between}.brand{display:block;width:266px;height:74px;position:relative;overflow:hidden;flex-shrink:0}.brand img{width:325px;max-width:none;height:auto;position:absolute;top:-29px;left:-31px}.header-inner nav{display:flex;align-items:center;gap:40px;font-size:12px;letter-spacing:.04em}.header-inner nav a{position:relative;padding:12px 0}.header-inner nav a:hover{color:#846331}.header-inner nav .nav-contact{border-bottom:1px solid var(--gold);display:flex;align-items:center;gap:32px}.nav-contact span{font-size:21px;line-height:1}.menu-toggle{display:none}.hero{min-height:650px;height:calc(100svh - 102px);max-height:900px;display:grid;grid-template-columns:51% 49%;background:var(--navy);color:var(--ivory);position:relative;overflow:hidden}.hero-copy{padding:90px 6% 110px 10%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;position:relative;z-index:2}.eyebrow{font-size:10px;letter-spacing:.19em;font-weight:500;display:flex;align-items:center;gap:13px;color:var(--pale-gold);margin-bottom:33px}.gold-line{width:30px;height:1px;background:var(--gold);display:inline-block}.hero h1{font-size:clamp(48px,4.5vw,76px);line-height:1.13;letter-spacing:-.045em}.hero h1 em{font-weight:400;color:var(--pale-gold)}.hero-description{font-size:15px;line-height:1.85;color:#c0c5c9;margin:27px 0 33px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;border:1px solid transparent;padding:16px 24px;font-size:12px;letter-spacing:.03em;min-height:54px;transition:background .2s,transform .2s}.button span{font-size:22px;line-height:1}.button:hover{transform:translateY(-2px)}.button-gold{background:var(--pale-gold);color:var(--navy)}.button-gold:hover{background:#e4c994}.button-dark{background:var(--navy);color:#fff;width:100%}.button-dark:hover{background:#283d4e}.hero-location{font-size:9px;letter-spacing:.17em;color:#bdc3c8;display:flex;align-items:center;gap:10px;margin-top:52px}.location-dot{width:5px;height:5px;border-radius:50%;background:var(--pale-gold)}.location-separator{color:#69737d;margin:0 5px}.hero-visual{min-width:0;height:100%;position:relative;background:#9e907b}.hero-image{height:100%;width:100%;object-fit:cover;object-position:58% center}.image-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(13,23,32,.6),transparent 38%)}.hero-visual figcaption{position:absolute;bottom:42px;left:38px;right:38px;display:flex;flex-direction:column;color:white}.hero-visual figcaption span:first-child{font-size:9px;letter-spacing:.18em;margin-bottom:8px}.hero-visual figcaption span:last-child{font-family:var(--serif);font-size:24px;font-style:italic}.hero-scroll{position:absolute;bottom:37px;left:5.1%;display:flex;align-items:center;gap:25px;font-size:9px;letter-spacing:.15em;color:#aeb5bd}.hero-scroll span:last-child{font-size:24px;color:var(--pale-gold)}.section-wrap{width:90%;max-width:1400px;margin:0 auto}.about{padding-top:110px;padding-bottom:112px;display:grid;grid-template-columns:23% 77%}.section-label{display:flex;gap:19px;align-items:baseline;font-size:10px;letter-spacing:.16em;white-space:nowrap}.section-label>span{color:#997741;font-size:11px}.section-label>p{font-weight:600}.about .section-label{padding-top:12px}h2{font-size:clamp(35px,3.5vw,54px);letter-spacing:-.035em;line-height:1.17}.about-columns{margin-top:36px;display:grid;grid-template-columns:1fr 1fr;gap:50px}.about-columns p{font-size:14px;line-height:1.9;color:#646b71}.about-columns .large-copy{font-size:18px;line-height:1.7;color:#35424c}.text-link{display:inline-flex;align-items:center;gap:25px;font-size:12px;border-bottom:1px solid var(--gold);padding-bottom:6px;margin-top:24px}.text-link span{font-size:20px}.approach{background:#eae8e0}.approach-inner{display:grid;grid-template-columns:46% 54%;padding-top:88px;padding-bottom:88px}.approach-heading{padding-right:60px}.approach-heading .section-label{margin-bottom:30px}.approach-heading>p:not(.wordmark){font-size:14px;color:#646b71;margin-top:23px}.signature-rule{width:50px;height:1px;background:var(--gold);margin-top:35px}.wordmark{font-size:40px;font-family:var(--serif);letter-spacing:.1em;line-height:1.15;margin-top:24px;color:#7e755f}.wordmark span{display:block;font:8px var(--sans);letter-spacing:.2em;margin-top:10px}.principles{border-top:1px solid #c7c5ba}.principle{display:grid;grid-template-columns:48px 1fr;gap:15px;padding:31px 0;border-bottom:1px solid #c7c5ba}.principle-number{font-family:var(--serif);color:#92703d;font-size:23px;line-height:1.4}.principle h3{font-size:27px;letter-spacing:-.02em;line-height:1.3;margin-bottom:10px}.principle p{font-size:14px;color:#646b71;line-height:1.85;max-width:480px}.contact{display:grid;grid-template-columns:1fr 1fr;gap:9%;padding-top:110px;padding-bottom:110px}.contact-intro .section-label{margin-bottom:30px}.contact-intro>p{margin:24px 0 29px;font-size:14px;color:#646b71;line-height:1.85}.email-address{font-family:var(--serif);font-size:clamp(22px,2.4vw,33px);letter-spacing:-.02em;display:flex;align-items:center;gap:26px;width:fit-content;border-bottom:1px solid #bfb39b;padding-bottom:7px}.email-address span{color:#997741;font-family:var(--sans);font-size:25px}.phone-number{display:block;font-size:15px;letter-spacing:.06em;width:fit-content;margin-top:18px}.contact address{font-style:normal;font-size:12px;line-height:1.85;color:#73777a;margin-top:23px}.inquiry-form{background:#fff;padding:36px 38px 29px;border:1px solid #e4e1d9}.inquiry-form h3{font-size:28px;margin-bottom:24px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{margin-bottom:21px}.field label{display:block;font-size:11px;letter-spacing:.025em;margin-bottom:8px}.field label span{color:#92703d}.field input,.field select,.field textarea{display:block;width:100%;min-width:0;border:0;border-bottom:1px solid #cfcfc9;border-radius:0;background:#fff;color:var(--ink);font-size:13px;padding:10px 0 12px;outline:0}.field input:focus,.field select:focus,.field textarea:focus{border-bottom:2px solid #95753e;padding-bottom:11px}.field textarea{resize:vertical;min-height:115px}.field input::placeholder,.field textarea::placeholder{color:#7c8185;opacity:1}.form-note{font-size:10px;line-height:1.7;color:#6a7076;margin-top:11px}.form-status{font-size:12px;line-height:1.7;color:#4f6146;margin-top:12px}.form-status:empty{display:none}.site-footer{border-top:1px solid var(--line);background:#eeece6}.footer-inner{max-width:1600px;width:90%;margin:auto;display:flex;justify-content:space-between;align-items:center;gap:30px;padding:34px 0}.footer-brand{width:236px;height:67px}.footer-brand img{width:288px;top:-26px;left:-28px}.footer-tagline{font-family:var(--serif);font-size:11px;font-style:italic;color:#8d7043;letter-spacing:.07em;margin-top:0}.footer-meta{margin-left:auto;font-size:10px;line-height:1.9;color:#5b656d;text-align:right}.footer-meta .image-credit{font-size:9px;color:#7a807f;margin-top:7px}.back-top{width:44px;height:44px;border:1px solid #bab5a7;display:grid;place-items:center;font-size:22px;margin-left:20px}.back-top:hover{background:#e0dcd0}@media(min-width:1600px){.hero-copy{padding-left:max(10%,calc((100vw - 1400px)/2))}.hero-scroll{left:max(5.1%,calc((100vw - 1400px)/2))}}@media(max-width:1050px){.hero{grid-template-columns:53% 47%;min-height:630px}.hero-copy{padding-top:70px;padding-left:9.5%}.hero h1{font-size:50px}.hero .eyebrow{font-size:8px}.header-inner nav{gap:25px}.about{grid-template-columns:21% 79%}.about-columns{gap:30px}.contact{gap:6%}.inquiry-form{padding:30px 25px}.form-row{grid-template-columns:1fr;gap:0}.approach-heading{padding-right:35px}.principle h3{font-size:24px}}@media(max-width:760px){html{scroll-padding-top:80px}.header-inner{height:81px;padding:0 6%}.brand{width:226px;height:65px}.brand img{width:277px;top:-25px;left:-27px}.menu-toggle{border:0;background:none;color:var(--ink);display:flex;align-items:center;gap:12px;padding:12px 0;font-size:11px}.menu-lines{display:block;width:21px;height:12px;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);transition:transform .2s}.menu-toggle[aria-expanded=true] .menu-lines{transform:rotate(-45deg);height:1px;border-bottom:0}.header-inner nav{position:absolute;top:80px;left:0;right:0;display:none;background:var(--ivory);padding:20px 6% 28px;border-bottom:1px solid #d9d6cd;gap:15px;align-items:flex-start}.header-inner nav.open{display:flex;flex-direction:column}.header-inner nav a{width:100%;padding:12px 0;font-size:14px}.header-inner nav .nav-contact{width:auto;gap:30px}.hero{height:auto;max-height:none;min-height:0;display:flex;flex-direction:column}.hero-copy{padding:60px 6% 54px;min-height:455px}.eyebrow{margin-bottom:25px}.hero .eyebrow{font-size:9px}.hero h1{font-size:clamp(42px,8.7vw,62px)}.hero-description{font-size:14px;margin-top:23px;margin-bottom:26px}.button{padding:15px 21px}.hero-location{margin-top:30px;font-size:8px;letter-spacing:.15em}.hero-visual{height:390px}.hero-image{object-position:center 50%}.hero-visual figcaption{left:6%;bottom:27px}.hero-visual figcaption span:last-child{font-size:23px}.hero-scroll{display:none}.section-wrap{width:88%}.about{display:block;padding-top:64px;padding-bottom:65px}.about .section-label{padding:0;margin-bottom:24px}h2{font-size:38px}.about-columns{grid-template-columns:1fr;gap:20px;margin-top:25px}.about-columns .large-copy{font-size:17px}.about-columns p{font-size:14px}.text-link{margin-top:20px}.approach-inner{grid-template-columns:1fr;padding-top:64px;padding-bottom:60px}.approach-heading{padding-right:0;margin-bottom:32px}.approach-heading .section-label{margin-bottom:24px}.approach-heading>p:not(.wordmark){margin-top:20px}.signature-rule,.wordmark{display:none}.principle{padding:25px 0;grid-template-columns:34px 1fr;gap:12px}.principle h3{font-size:25px}.principle p{font-size:13px}.contact{grid-template-columns:1fr;gap:38px;padding-top:64px;padding-bottom:64px}.contact-intro .section-label{margin-bottom:24px}.contact-intro>p{margin-top:20px;margin-bottom:25px}.email-address{font-size:30px}.contact address{margin-top:17px}.inquiry-form{padding:28px 24px}.form-row{grid-template-columns:1fr 1fr;gap:15px}.footer-inner{width:88%;padding:29px 0 33px;flex-wrap:wrap;gap:20px}.footer-meta{margin:0;text-align:left;order:3;width:100%}.back-top{margin-left:auto}.footer-brand{width:212px;height:60px}.footer-brand img{width:259px;top:-23px;left:-25px}}@media(max-width:400px){.brand{width:205px}.brand img{width:254px;top:-19px;left:-24px}.hero-copy{padding-top:49px}.hero h1{font-size:41px}.hero .eyebrow{font-size:8px;letter-spacing:.12em}.hero-location{font-size:7px}.hero-visual{height:310px}.form-row{grid-template-columns:1fr;gap:0}.email-address{font-size:28px}.contact h2,.about h2,.approach h2{font-size:35px}.inquiry-form{padding:25px 20px}.footer-brand img{width:259px;top:-23px;left:-25px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}

/* Refined contact symbols and the project portfolio. */
.line-icon{display:block;width:21px;height:21px;flex:none}
.nav-contact .line-icon,.text-link .line-icon,.email-address .line-icon{color:#997741}
.email-address .line-icon{width:24px;height:24px}
.header-inner nav{gap:28px}
.header-inner nav .nav-contact{gap:20px}
.portfolio{display:grid;grid-template-columns:23% 77%;padding-top:100px;padding-bottom:100px;border-bottom:1px solid var(--line)}
.portfolio>.section-label{padding-top:12px}
.portfolio-preview{margin-top:32px;border-left:1px solid var(--gold);padding-left:28px;max-width:600px}
.portfolio-status{display:block;font-size:10px;letter-spacing:.18em;color:#846331;margin-bottom:12px}
.portfolio-preview p{font-size:15px;line-height:1.85;color:#646b71}
.portfolio-preview .text-link{margin-top:20px}
@media(max-width:1050px){.header-inner nav{gap:20px}.portfolio{grid-template-columns:25% 75%}}
@media(min-width:761px) and (max-width:900px){.header-inner nav{gap:16px;font-size:11px}.header-inner nav .nav-contact{gap:12px}.nav-contact .line-icon{width:18px;height:18px}.portfolio{grid-template-columns:28% 72%}}
@media(max-width:760px){.header-inner nav{gap:15px}.header-inner nav .nav-contact{gap:20px}.portfolio{display:block;padding-top:64px;padding-bottom:64px}.portfolio>.section-label{padding:0;margin-bottom:24px}.portfolio-preview{margin-top:26px;padding-left:22px}.portfolio-preview p{font-size:14px}}

/* Company experience and service capabilities. */
.hero-description{max-width:440px;line-height:1.85}
.hero-location{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-top:24px;padding-top:24px;border-top:1px solid #53606a;letter-spacing:0}
.heritage-label{font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:var(--pale-gold)}
.heritage-region{font-family:var(--serif);font-size:21px;line-height:1.4;color:#e5e5de}
.services{background:var(--navy);color:var(--ivory)}
.services-inner{padding-top:94px;padding-bottom:88px}
.services-heading{display:grid;grid-template-columns:23% 77%}
.services-heading .section-label{padding-top:12px}
.services .section-label>span{color:var(--pale-gold)}
.services-heading>div>p{font-size:15px;line-height:1.85;color:#c0c5c9;margin-top:23px;max-width:690px}
.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:54px;gap:42px}
.service{border-top:1px solid #6a6559;padding-top:26px}
.service-kicker{display:block;color:var(--pale-gold);font-size:9px;letter-spacing:.16em;margin-bottom:19px}
.service h3{font-size:clamp(25px,2.3vw,34px);line-height:1.23;letter-spacing:-.025em;margin-bottom:23px;min-height:2.46em}
.service>p{font-size:14px;color:#c0c5c9;line-height:1.85;min-height:7.4em}
.service ul{list-style:none;margin:25px 0 0;padding:0}
.service li{position:relative;padding:10px 0 10px 15px;border-top:1px solid #30404c;font-size:12px;line-height:1.65;color:#d9dcdd}
.service li::before{content:"";position:absolute;left:0;top:18px;width:4px;height:4px;background:var(--gold)}
.services-close{display:flex;align-items:center;justify-content:space-between;gap:35px;border-top:1px solid #4b5359;margin-top:40px;padding-top:27px}
.services-close p{font-size:13px;color:#c0c5c9;max-width:650px}
.services-close .text-link{margin-top:0;white-space:nowrap}
.services-close .line-icon{color:var(--pale-gold)}
@media(max-width:1150px){.header-inner nav{gap:18px;font-size:11px}.header-inner nav .nav-contact{gap:12px}.service-grid{gap:28px}}
@media(min-width:761px) and (max-width:1050px){.menu-toggle{border:0;background:none;color:var(--ink);display:flex;align-items:center;gap:12px;padding:12px 0;font-size:12px}.menu-lines{display:block;width:21px;height:12px;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}.menu-toggle[aria-expanded=true] .menu-lines{transform:rotate(-45deg);height:1px;border-bottom:0}.header-inner nav{position:absolute;top:101px;left:0;right:0;display:none;background:var(--ivory);padding:20px 5% 28px;border-bottom:1px solid var(--line);gap:15px;align-items:flex-start}.header-inner nav.open{display:flex;flex-direction:column}.header-inner nav a{width:100%;padding:12px 0;font-size:14px}.header-inner nav .nav-contact{width:auto;gap:20px}.services-heading{grid-template-columns:25% 75%}.service h3{font-size:25px}.service>p{min-height:10em}}
@media(max-width:760px){.hero-copy{padding-bottom:48px}.hero-description{font-size:14px;max-width:440px;margin-bottom:12px}.hero-location{margin-top:20px;padding-top:20px;gap:8px}.heritage-label{font-size:9px;letter-spacing:.12em}.heritage-region{font-size:20px}.services-inner{padding-top:64px;padding-bottom:60px}.services-heading{display:block}.services-heading .section-label{padding:0;margin-bottom:24px}.services-heading>div>p{font-size:14px;margin-top:22px}.service-grid{grid-template-columns:1fr;gap:34px;margin-top:34px}.service{padding-top:23px}.service-kicker{margin-bottom:14px}.service h3{font-size:30px;min-height:0;margin-bottom:17px}.service h3 br{display:none}.service>p{min-height:0}.service ul{margin-top:20px}.service li{font-size:13px}.services-close{align-items:flex-start;flex-direction:column;gap:19px;margin-top:34px;padding-top:24px}}
@media(max-width:400px){.hero-description{font-size:13px}.heritage-label{font-size:8px}.heritage-region{font-size:19px}.services h2{font-size:35px}.service h3{font-size:28px}}
