:root{--ink:#152123;--deep:#111b1d;--green:#d2c2a1;--mint:#f3f1eb;--paper:#f5f4f0;--line:#d8d8d1;--muted:#58625f}
body{font-family:Manrope,Arial,sans-serif;line-height:1.7}
.site-header{background:#111b1d}.header-inner{height:92px}.brand-mark{border-radius:0;border-color:#d2c2a1;color:#d2c2a1}.brand-dot{color:#d2c2a1}.header-cta{border-color:#8d8c7b;border-radius:0}
.hero{position:relative;background:#111b1d url('hero-architecture.webp') center 57%/cover no-repeat;isolation:isolate}.hero:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(9,17,20,.85) 0%,rgba(9,17,20,.72) 40%,rgba(9,17,20,.20) 78%),linear-gradient(0deg,rgba(9,17,20,.4),transparent 40%)}
.hero-grid{min-height:750px;grid-template-columns:minmax(0,790px) 1fr;align-items:end}.hero-copy{padding:100px 0 132px}.hero-art{display:none}h1{font-weight:500;font-size:clamp(3.8rem,6.8vw,7.2rem);letter-spacing:-.065em;margin-bottom:36px}h1 em,.contact h2 em{color:#d7c6a3}.hero-intro{max-width:650px;font-size:18px;color:#eeeae2}.eyebrow{color:#d7c6a3}.eyebrow-line{background:#d7c6a3}.button-light{background:#d7c6a3;border-radius:0}.button-light:hover{background:#eee5d4}.hero-bottom{border-color:#ffffff44;color:#e1dbce}
.section-pad{padding-block:130px}h2{font-weight:500;letter-spacing:-.055em}.section-kicker{color:#7c6c50}.intro-grid{grid-template-columns:1.15fr .85fr}.intro-body{padding-top:55px}.services{background:#e9e8e1}.service-grid{border-left:0;border-top:1px solid #bfc3bb;grid-template-columns:repeat(2,1fr)}.service-card{background:transparent;min-height:310px;border-color:#bfc3bb;padding:37px 45px 40px 0;position:relative}.service-card:nth-child(odd){border-right:1px solid #bfc3bb}.service-card:nth-child(even){padding-left:45px;border-right:0}.service-card:hover{transform:none;background:#ffffff4d}.service-number,.service-icon{color:#7c6c50}.service-icon{margin:9px 0 30px;font-size:28px}.service-card h3{font-size:1.6rem;font-weight:500}.service-card p{max-width:480px;font-size:16px}.approach{background:#f8f8f5}.step>span{color:#7c6c50}.contact{background:#192326}.contact .section-kicker,.contact-body a{color:#d7c6a3}.contact-body a{border-color:#b8a885}footer{background:#111b1d}
@media(max-width:720px){.header-inner{height:70px}.hero{background-position:60% center}.hero:before{background:linear-gradient(90deg,rgba(9,17,20,.87),rgba(9,17,20,.48)),linear-gradient(0deg,rgba(9,17,20,.45),transparent)}.hero-grid{min-height:660px}.hero-copy{padding:110px 0 90px}h1{font-size:clamp(3.4rem,11vw,5.5rem)}.section-pad{padding-block:85px}.service-grid{grid-template-columns:1fr}.service-card,.service-card:nth-child(even){padding:28px 5px;border-right:0}.service-card:nth-child(odd){border-right:0}}

/* EasyComp identity: the owner's open-line E, refined in midnight blue and warm stone. */
:root{--ink:#111735;--deep:#111735;--green:#d6c6a5;--paper:#f6f5f1;--muted:#555d68}
.site-header,footer{background:#111735}
.brand-logo{display:block;width:205px;height:auto;max-height:55px;object-fit:contain}
footer .brand-logo{width:185px}
.hero{background-color:#111735}
.hero:before{background:linear-gradient(90deg,rgba(12,16,43,.88) 0%,rgba(12,16,43,.72) 42%,rgba(12,16,43,.17) 80%),linear-gradient(0deg,rgba(12,16,43,.35),transparent 43%)}
.contact{background:#111735}
.services{background:#ecebe7}
.approach{background:#faf9f6}
.button-light{color:#111735}
@media(max-width:720px){.site-header nav{background:#111735}.brand-logo{width:157px}.hero:before{background:linear-gradient(90deg,rgba(12,16,43,.9),rgba(12,16,43,.48)),linear-gradient(0deg,rgba(12,16,43,.42),transparent)}}

.section-photo{background-color:#111735;background-repeat:no-repeat;overflow:hidden}
.about-photo{height:clamp(280px,31vw,420px);margin-top:70px;background-image:url('about-architecture.webp');background-size:cover;background-position:center 57%}
.process-photo{height:310px;margin-top:54px;background-image:url('process-infrastructure.webp');background-size:cover;background-position:center}
@media(max-width:720px){.about-photo{height:250px;margin-top:45px;background-position:61% center}.process-photo{height:230px;margin-top:35px;background-position:62% center}}
