:root{--green:#003a12;--green-2:#0b4c21;--stone:#918a76;--ink:#161b17;--cream:#f3f1ea;--white:#fff;--line:#d9d6cc;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.6;background:var(--white)}a{color:inherit}.skip-link{position:fixed;left:1rem;top:-5rem;background:#fff;padding:.7rem 1rem;z-index:100}.skip-link:focus{top:1rem}.container{width:min(calc(100% - 40px),var(--max));margin:auto}.site-header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.96);border-bottom:1px solid rgba(0,58,18,.12);backdrop-filter:blur(10px)}.nav-wrap{width:min(calc(100% - 40px),var(--max));height:88px;margin:auto;display:flex;align-items:center;gap:34px}.brand{display:flex;width:155px;height:70px;overflow:hidden;align-items:center}.brand img{width:100%;height:auto}.site-header nav{display:flex;gap:26px;margin-left:auto}.site-header nav a{text-decoration:none;font-weight:700;font-size:.9rem}.site-header nav a:hover{color:var(--green-2)}.button{display:inline-flex;align-items:center;justify-content:center;background:var(--green);color:#fff;padding:15px 22px;text-decoration:none;text-transform:uppercase;letter-spacing:.08em;font-size:.79rem;font-weight:800;border:1px solid var(--green);transition:.2s}.button:hover{background:#062d12;transform:translateY(-1px)}.button-small{padding:11px 16px}.menu-button{display:none;background:none;border:1px solid var(--green);padding:9px 12px;font-weight:700;color:var(--green)}.hero{position:relative;overflow:hidden;background:var(--cream);min-height:650px;display:flex;align-items:center}.hero-shape{position:absolute;right:-8%;top:0;width:49%;height:100%;background:var(--green);clip-path:polygon(25% 0,100% 0,100% 100%,0 100%)}.hero-shape:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(135deg,transparent 0 27px,rgba(255,255,255,.035) 27px 29px)}.hero-grid{position:relative;display:grid;grid-template-columns:1.2fr .65fr;align-items:center;gap:9vw;padding:95px 0}.hero-copy{max-width:700px}.eyebrow{color:var(--green);font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;font-weight:900;margin:0 0 18px}.eyebrow.light{color:#d8d3c4}h1,h2,h3{margin-top:0;line-height:1.08}h1,h2{font-family:Georgia,'Times New Roman',serif}h1{font-size:clamp(3.2rem,6.7vw,6.1rem);letter-spacing:-.045em;margin-bottom:24px;color:var(--green)}h2{font-size:clamp(2.25rem,4vw,3.65rem);letter-spacing:-.035em;margin-bottom:24px}.hero-lead{font-size:1.15rem;max-width:650px;color:#3d433e}.hero-actions{display:flex;align-items:center;gap:30px;margin-top:34px}.text-link{font-weight:800;text-decoration:none;color:var(--green)}.principles{color:#fff;display:grid;grid-template-columns:40px 1fr;gap:19px 12px;align-items:center}.principles span{color:#c8c1ae;font-size:.72rem;letter-spacing:.14em}.principles strong{font:normal 2rem Georgia,serif}.trust-strip{background:var(--green);color:#fff}.trust-grid{display:grid;grid-template-columns:repeat(3,1fr)}.trust-grid div{padding:26px 30px;border-right:1px solid rgba(255,255,255,.16);display:flex;flex-direction:column}.trust-grid div:first-child{padding-left:0}.trust-grid strong{font-size:.95rem;text-transform:uppercase;letter-spacing:.06em}.trust-grid span{color:#c8d2c9;font-size:.82rem}.section{padding:110px 0}.split{display:grid;grid-template-columns:1fr 1fr;gap:9vw}.prose{font-size:1.13rem;color:#464b46}.prose p:first-child{font-size:1.35rem;color:var(--ink);margin-top:4px}.section-tint{background:var(--cream)}.section-heading{display:grid;grid-template-columns:1.15fr .7fr;gap:8vw;align-items:end;margin-bottom:55px}.section-heading p:last-child{color:#535953}.card-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line)}.service-card{padding:35px 27px;min-height:285px;border-right:1px solid var(--line);background:rgba(255,255,255,.5)}.service-card:last-child{border:0}.service-card>span{color:var(--stone);font-weight:800;font-size:.75rem}.service-card h3{margin-top:55px;font-size:1.25rem;color:var(--green)}.service-card p{color:#555a55;font-size:.92rem}.experience{padding:0;background:var(--green);color:#fff}.experience-grid{display:grid;grid-template-columns:1fr 1fr}.experience-panel{padding:100px 8vw 100px 0}.experience-panel p{color:#c9d3cb;max-width:550px}.experience-panel .fine-print{font-size:.75rem;color:#93a497;margin-top:35px}.project-preview{background:#e9e6dc;color:var(--ink);padding:70px;display:flex;flex-direction:column;justify-content:center}.project-placeholder{aspect-ratio:4/3;border:1px solid #aaa38e;background:linear-gradient(135deg,#ddd8ca,#f3f1ea);display:flex;flex-direction:column;justify-content:flex-end;padding:32px;position:relative;overflow:hidden}.project-placeholder:before{content:"HMG";position:absolute;right:-25px;top:-60px;font:900 10rem Arial;color:rgba(0,58,18,.06)}.project-placeholder span{font-size:.72rem;text-transform:uppercase;letter-spacing:.13em;color:var(--stone);font-weight:800}.project-placeholder strong{font:2rem Georgia,serif;color:var(--green)}.project-preview>p{font-size:.85rem;color:#555a55}.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:55px;margin-top:45px}.values-grid article{border-top:3px solid var(--green);padding-top:25px}.values-grid h3{color:var(--green);font-size:1.3rem}.values-grid p{color:#555a55}.contact{background:#19221b;color:#fff;padding:90px 0}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:9vw}.contact h2{font-size:clamp(2.2rem,4vw,3.5rem)}.contact p{color:#c9d0ca}.contact-actions{display:flex;flex-direction:column;justify-content:center}.contact-actions a{padding:23px 0;border-bottom:1px solid #4a534b;text-decoration:none;display:flex;flex-direction:column}.contact-actions a:hover strong{color:#d5cfbe}.contact-actions span{text-transform:uppercase;font-size:.7rem;letter-spacing:.16em;color:#aeb8af}.contact-actions strong{font-size:1.25rem;overflow-wrap:anywhere}footer{background:#0d120e;color:#b5bcb6;padding:34px 0;font-size:.78rem}.footer-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:35px}.footer-grid div{display:flex;flex-direction:column}.footer-grid strong{color:#fff}.footer-grid p{text-align:right;margin:0}@media(max-width:900px){.header-cta{display:none}.hero{min-height:auto}.hero-shape{width:38%}.hero-grid{grid-template-columns:1fr;padding:75px 0}.hero-copy{max-width:78%}.principles{display:none}.card-grid{grid-template-columns:1fr 1fr}.service-card:nth-child(2){border-right:0}.service-card:nth-child(-n+2){border-bottom:1px solid var(--line)}.experience-grid{grid-template-columns:1fr}.experience-panel{padding-right:0}.project-preview{padding:50px}.values-grid{gap:25px}}@media(max-width:680px){.nav-wrap{height:76px}.brand{width:125px}.menu-button{display:block;margin-left:auto}.site-header nav{display:none;position:absolute;top:76px;left:0;right:0;background:#fff;padding:20px;flex-direction:column;border-bottom:1px solid var(--line);box-shadow:0 10px 20px rgba(0,0,0,.08)}.site-header nav.open{display:flex}.hero-shape{display:none}.hero-grid{padding:60px 0}.hero-copy{max-width:none}h1{font-size:3.25rem}.hero-actions{align-items:flex-start;flex-direction:column}.trust-grid,.split,.section-heading,.card-grid,.values-grid,.contact-grid,.footer-grid{grid-template-columns:1fr}.trust-grid div,.trust-grid div:first-child{padding:18px 0;border-right:0;border-bottom:1px solid rgba(255,255,255,.16)}.section{padding:75px 0}.split,.section-heading{gap:25px}.card-grid{border:0;gap:12px}.service-card,.service-card:nth-child(2),.service-card:nth-child(-n+2){border:1px solid var(--line);min-height:auto}.service-card h3{margin-top:28px}.experience-panel{padding:75px 0}.project-preview{padding:35px 20px}.contact{padding:70px 0}.contact-grid{gap:30px}.footer-grid{gap:18px}.footer-grid p{text-align:left}}

.brand{justify-content:center}.brand img{transform:scale(1.85)}

.experience{padding:105px 0;background:var(--green);color:#fff}.experience-heading{display:grid;grid-template-columns:1.1fr .75fr;gap:8vw;align-items:end;margin-bottom:50px}.experience-heading>p{color:#c9d3cb}.project-list{border-top:1px solid rgba(255,255,255,.23)}.project-card{display:grid;grid-template-columns:55px minmax(0,1fr) 210px;gap:32px;padding:42px 0;border-bottom:1px solid rgba(255,255,255,.23)}.project-number{color:#a7b4a9;font-size:.75rem;letter-spacing:.14em;padding-top:5px}.project-meta{text-transform:uppercase;letter-spacing:.1em;color:#b9c5bb;font-size:.7rem;font-weight:800;margin:0 0 10px}.project-card h3{font:normal 1.85rem Georgia,serif;margin-bottom:15px}.project-card>div:nth-child(2)>p:last-child{color:#d0d9d2;margin-bottom:0}.project-card dl{margin:0}.project-card dl div{padding:10px 0;border-bottom:1px solid rgba(255,255,255,.15)}.project-card dt{text-transform:uppercase;letter-spacing:.12em;color:#9caa9e;font-size:.65rem}.project-card dd{margin:2px 0 0;font-weight:800}.experience-note{color:#93a497;font-size:.74rem;margin:30px 0 0;max-width:800px}
@media(max-width:900px){.experience-heading{grid-template-columns:1fr;gap:20px}.project-card{grid-template-columns:40px minmax(0,1fr)}.project-card dl{grid-column:2;display:flex;gap:35px}.project-card dl div{flex:1}}
@media(max-width:680px){.experience{padding:75px 0}.project-card{grid-template-columns:1fr;gap:10px}.project-card dl{grid-column:1;display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.project-card h3{font-size:1.55rem}.project-number{padding-top:0}}

/* Image-led portfolio refinements */
.principles{display:flex;flex-direction:column;gap:19px}.principles strong{font:normal 2rem Georgia,serif}
.work-banner{display:grid;grid-template-columns:1.35fr .65fr;background:#19221b;color:#fff;min-height:320px}.work-banner img{width:100%;height:100%;max-height:420px;object-fit:cover}.work-banner div{padding:55px;display:flex;flex-direction:column;justify-content:center}.work-banner span{color:#bfc9c0;text-transform:uppercase;letter-spacing:.14em;font-size:.68rem}.work-banner strong{font:normal clamp(1.8rem,3vw,2.8rem) Georgia,serif;margin-top:15px}
.project-card{grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:45px;padding:52px 0;align-items:start}.project-card>div:first-child>p:last-child{color:#d0d9d2;margin-bottom:0}.project-gallery{display:grid;gap:8px}.gallery-two{grid-template-columns:1fr 1fr}.gallery-three{grid-template-columns:repeat(3,1fr)}.gallery-four{grid-template-columns:repeat(2,1fr)}.project-gallery img{width:100%;height:180px;object-fit:cover;background:#233629}
.field-gallery{background:var(--cream)}.photo-mosaic{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:270px;gap:12px}.photo-mosaic img{width:100%;height:100%;object-fit:cover}.photo-mosaic .wide{grid-column:span 2}
@media(max-width:900px){.project-card{grid-template-columns:1fr;gap:28px}.work-banner{grid-template-columns:1fr 1fr}.photo-mosaic{grid-auto-rows:220px}}
@media(max-width:680px){.project-card{grid-template-columns:1fr;gap:22px}.project-gallery img{height:145px}.work-banner{grid-template-columns:1fr}.work-banner img{height:260px}.work-banner div{padding:38px 20px}.photo-mosaic{grid-template-columns:1fr 1fr;grid-auto-rows:180px}.photo-mosaic .wide{grid-column:span 2}}

/* Calm, automatically rotating project gallery */
.project-card{grid-template-columns:1fr}.project-card>div:first-child{max-width:880px}.slideshow{position:relative;background:#172019;overflow:hidden}.slides{position:relative;aspect-ratio:16/8.5}.slide{position:absolute;inset:0;margin:0;opacity:0;visibility:hidden;transition:opacity .8s ease}.slide.active{opacity:1;visibility:visible}.slide img{width:100%;height:100%;object-fit:cover}.slideshow:after{content:"";pointer-events:none;position:absolute;inset:0 0 58px;background:linear-gradient(90deg,rgba(0,30,10,.16),transparent 45%,rgba(0,0,0,.08))}.slideshow-controls{height:58px;display:flex;align-items:center;gap:16px;padding:0 20px;color:#fff;position:relative;z-index:2}.slideshow-controls button{border:1px solid rgba(255,255,255,.38);background:transparent;color:#fff;height:34px;min-width:40px;padding:0 12px;font-weight:800;cursor:pointer}.slideshow-controls button:hover,.slideshow-controls button:focus-visible{background:#fff;color:var(--green)}.slide-count{font-size:.75rem;letter-spacing:.12em}.slide-toggle{margin-left:auto;text-transform:uppercase;letter-spacing:.08em;font-size:.68rem}.portfolio-strip,.portfolio-thumbnails{display:none}
@media(prefers-reduced-motion:reduce){.slide{transition:none}}
@media(max-width:680px){.slides{aspect-ratio:4/3}.slideshow:after{bottom:58px}.slideshow-controls{gap:9px;padding:0 12px}}

/* 2026 polish: clearer interaction, stronger conversion, and refined mobile behavior */
:focus-visible{outline:3px solid #d3b96f;outline-offset:4px}.site-header nav a{position:relative}.site-header nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:2px;background:var(--green);transition:right .2s ease}.site-header nav a:hover:after,.site-header nav a[aria-current]:after{right:0}.eyebrow-rule{display:inline-block;width:28px;height:1px;background:currentColor;vertical-align:middle;margin-right:8px}.hero-proof{margin:30px 0 0;color:#687069;font-size:.74rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.work-banner img{object-position:center 48%}.service-card{transition:transform .25s ease,background .25s ease,box-shadow .25s ease}.service-card:hover{position:relative;z-index:2;transform:translateY(-7px);background:#fff;box-shadow:0 18px 40px rgba(0,58,18,.1)}.project-card h3{color:#fff}.slide img{transform:scale(1.005);transition:transform 6s ease}.slide.active img{transform:scale(1.035)}.process{background:#fff}.process-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:9vw;align-items:start}.process-intro{position:sticky;top:130px}.process-intro>p:last-child{color:#555a55;font-size:1.05rem}.process-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.process-list li{display:grid;grid-template-columns:52px 1fr;gap:24px;padding:30px 0;border-bottom:1px solid var(--line)}.process-list li>span{color:var(--stone);font-weight:900;font-size:.74rem;letter-spacing:.12em}.process-list h3{color:var(--green);font-size:1.25rem;margin-bottom:8px}.process-list p{margin:0;color:#555a55}.mobile-contact{display:none}.contact-actions a{transition:padding .2s ease,background .2s ease}.contact-actions a:hover{padding-left:16px;background:rgba(255,255,255,.035)}
@media(max-width:900px){.process-grid{grid-template-columns:1fr;gap:35px}.process-intro{position:static}}
@media(max-width:680px){body{padding-bottom:58px}.menu-button{display:flex;align-items:center;gap:9px}.menu-lines,.menu-lines:before,.menu-lines:after{display:block;width:18px;height:2px;background:var(--green);transition:.2s}.menu-lines{position:relative}.menu-lines:before,.menu-lines:after{content:"";position:absolute;left:0}.menu-lines:before{top:-6px}.menu-lines:after{top:6px}.menu-button[aria-expanded="true"] .menu-lines{background:transparent}.menu-button[aria-expanded="true"] .menu-lines:before{top:0;transform:rotate(45deg)}.menu-button[aria-expanded="true"] .menu-lines:after{top:0;transform:rotate(-45deg)}.site-header nav{gap:0;padding:8px 20px 20px}.site-header nav a{padding:14px 0;border-bottom:1px solid var(--line)}.site-header nav a:after{display:none}.hero{min-height:calc(100svh - 76px)}.hero-grid{padding:54px 0 62px}h1{font-size:clamp(3rem,15vw,4.3rem)}.hero-lead{font-size:1.05rem}.hero-proof{line-height:1.8}.service-card:hover{transform:none;box-shadow:none}.process-list li{grid-template-columns:38px 1fr;gap:10px}.mobile-contact{display:flex;position:fixed;z-index:30;left:0;right:0;bottom:0;height:58px;background:var(--green);color:#fff;align-items:center;justify-content:center;text-decoration:none;text-transform:uppercase;font-size:.76rem;font-weight:900;letter-spacing:.1em;box-shadow:0 -5px 20px rgba(0,0,0,.16)}footer{padding-bottom:42px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* Brand and service clarity, using the existing design. */
.hero h1{font-size:clamp(3rem,6vw,5.2rem);line-height:1.08}
.hero-service{display:block;font-size:clamp(1.8rem,3.1vw,2.8rem);line-height:1.18;letter-spacing:-.025em;margin-top:18px}
.hero-tagline{font-weight:700;color:var(--green);font-size:1.1rem;margin:24px 0 10px}
.values h2.eyebrow{font-family:Arial,Helvetica,sans-serif;line-height:1.6}
section[id]{scroll-margin-top:100px}
@media(max-width:680px){.hero h1{font-size:clamp(2.7rem,12vw,4.1rem)}.hero-service{font-size:clamp(1.7rem,7vw,2.35rem)}section[id]{scroll-margin-top:86px}}

/* Final editorial pass: unnumbered services and process, clear contact routes. */
.service-card{padding:32px 26px;min-height:0}
.service-card h3{margin-top:0;line-height:1.22}
.service-card p{margin-bottom:0}
.process-list li{display:block;padding:30px 0}
.site-header nav{gap:20px}
.contact-guidance{margin-top:28px;padding-top:24px;border-top:1px solid #4a534b}
.contact-guidance h3{font-size:1.1rem;line-height:1.3;margin-bottom:10px;color:#fff}
.contact-guidance p{font-size:.96rem;margin:0}
.team-email{display:inline-block;margin-top:14px;color:#fff;text-underline-offset:4px}
#team{scroll-margin-top:110px}
.project-card p{max-width:78ch}
@media(max-width:1100px){.header-cta{display:none}}
@media(max-width:680px){.service-card,.service-card:nth-child(2){padding:28px 24px}.service-card h3{margin-top:0}.process-list li{display:block;padding:25px 0}.site-header nav{gap:0}#team{scroll-margin-top:92px}}

/* Approved project-led homepage and optional project brief. */
.hero-grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:56px;padding:70px 0}
.hero-copy{max-width:100%;min-width:0}.hero h1{font-size:clamp(3rem,5.5vw,4.7rem)}
.hero-project{margin:0;position:relative;align-self:stretch;min-height:490px;background:#19221b;overflow:hidden}
.hero-project img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center}
.hero-project figcaption{position:absolute;bottom:0;left:0;right:0;padding:36px 24px 20px;color:#fff;font-size:.85rem;background:linear-gradient(transparent,rgba(0,0,0,.85))}
.project-story{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:55px}
.project-story h3{font-size:2rem}.project-facility{color:#c9d3cb}.project-story h4{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:#d8d3c4;margin:0 0 8px}
.project-story-detail p{color:#e2e8e3;margin:0 0 20px}.project-story-detail p:last-child{margin-bottom:0}
.brief-section{background:var(--cream)}.brief-form{display:grid;gap:10px;min-width:0}.brief-form[hidden],[hidden]{display:none!important}
.brief-form label{font-weight:700;color:var(--green);margin-top:8px}.brief-form input,.brief-form select,.brief-form textarea{font:inherit;width:100%;min-width:0;padding:12px;border:1px solid #9b9f96;background:#fff;border-radius:0;color:var(--ink)}
.brief-form textarea{resize:vertical}.brief-note{font-size:.85rem;color:#535953}.brief-form button{justify-self:start;cursor:pointer}#brief-result{margin-top:16px}#brief-copy{font-size:.9rem}
@media(max-width:900px){.hero-grid{gap:32px;grid-template-columns:1fr 1fr}.hero h1{font-size:3.1rem}.hero-service{font-size:2rem}.hero-project{min-height:430px}.project-story{gap:30px}}
@media(max-width:680px){.hero-grid{grid-template-columns:1fr;padding:42px 0;gap:30px}.hero{min-height:auto}.hero h1{font-size:clamp(2.7rem,12vw,4rem)}.hero-project{min-height:0;aspect-ratio:4/3}.hero-actions{gap:20px}.project-story{grid-template-columns:1fr;gap:20px}.project-story h3{font-size:1.65rem}.brief-form button{width:100%}.brief-section .split{gap:30px}}
