
:root{--forest:#14231f;--ink:#182520;--gold:#cda85f;--gold2:#e7c987;--cream:#f8f7f3;--muted:#5f6b64;--line:#e2e5df;--white:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Inter,Arial,Helvetica,sans-serif;line-height:1.58}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #b58b44;outline-offset:3px}img{max-width:100%;height:auto}p,h1,h2,h3{margin-top:0}p{color:var(--muted)}.wrap{width:min(1210px,91%);margin:0 auto}.skip{position:absolute;top:-80px;left:15px;z-index:200;background:#fff;padding:12px}.skip:focus{top:10px}.eyebrow{color:#ad874a;letter-spacing:.17em;font-size:12px;font-weight:800;text-transform:uppercase}.topbar{background:#13231f;color:#e6ece7;text-transform:uppercase;font-size:11px;padding:9px 0;letter-spacing:.07em}.topbar .wrap{display:flex;justify-content:space-between;gap:12px}.header{background:#fff;position:sticky;z-index:50;top:0;border-bottom:1px solid #eae9e3}.header-inner{min-height:83px;display:flex;align-items:center;gap:20px;justify-content:space-between}.brand{display:flex;align-items:center;gap:10px;flex-shrink:0}.brand img{width:39px;height:44px}.brand .brand-name{font-size:23px;font-weight:900;letter-spacing:-.05em;line-height:1}.brand .brand-name span{color:#ac8136}.brand small{display:block;font-size:9px;font-weight:800;letter-spacing:.38em;margin-top:6px;color:#5d6055}.nav{display:flex;gap:24px;font-size:13px;font-weight:750}.nav a:hover{color:#99733a}.btn{display:inline-flex;justify-content:center;align-items:center;gap:9px;border:1px solid transparent;border-radius:3px;padding:13px 20px;background:var(--gold);color:#18221d;font-size:12px;letter-spacing:.06em;text-transform:uppercase;font-weight:900;cursor:pointer;transition:transform .2s,background .2s}.btn:hover{background:var(--gold2);transform:translateY(-1px)}.btn-dark{background:#223731;color:#fff}.btn-outline{background:transparent;border-color:#fff8;color:#fff}.btn-outline:hover{background:#ffffff25}.mobile-toggle{display:none;border:0;background:transparent;font-size:24px;cursor:pointer}.mobile-menu{display:none;background:#fff;flex-direction:column;padding:12px 5%;gap:16px;font-weight:700}.mobile-menu.open{display:flex}.hero{position:relative;isolation:isolate;min-height:640px;padding:85px 0;background:var(--forest);color:#fff;overflow:hidden}.hero:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#0b1715f5 0%,#11201ddc 38%,#11201d94 100%),url('/assets/hero.webp') 50% 54%/cover no-repeat}.hero-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(350px,.8fr);align-items:center;gap:6%}.hero h1{margin:19px 0 20px;letter-spacing:-.055em;line-height:1.03;font-weight:950;font-size:clamp(42px,5.3vw,72px)}.hero h1 em{color:var(--gold2);font-style:normal}.hero p{color:#ecf1ed;font-size:17px;max-width:560px}.hero .eyebrow{color:var(--gold2)}.hero-btns{display:flex;gap:12px;flex-wrap:wrap;margin:25px 0}.chips{display:flex;flex-wrap:wrap;gap:13px;font-size:12px;font-weight:800;color:#e1e7df;margin-top:28px}.chips span:before{content:'✓';color:var(--gold2);margin-right:7px}.quote{background:#fff;color:#16251e;padding:27px;border-top:4px solid var(--gold);box-shadow:0 12px 50px #0005}.quote h2{font-size:25px;letter-spacing:-.04em;margin:8px 0}.quote p{font-size:13px;color:var(--muted);margin:0 0 16px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:11px}.fields input,.fields select,.fields textarea{width:100%;border-radius:2px;border:1px solid #cdd3cd;background:white;color:#15251c;padding:12px;font:13px Arial,sans-serif;min-width:0}.fields label{font-size:12px;font-weight:700;color:#39453e}.fields .wide{grid-column:1/-1}.fields textarea{resize:vertical}.quote .btn{width:100%;margin-top:12px}.quote small{display:block;color:#5e6963;font-size:11px;margin-top:12px}.quote small a{text-decoration:underline}.trust{background:#fff;border-bottom:1px solid var(--line);padding:23px 0}.trust .wrap{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.trust div div{text-align:center;text-transform:uppercase;font-size:12px;letter-spacing:.055em;font-weight:850}.section{padding:75px 0}.intro{text-align:center;max-width:740px;margin:0 auto 35px}.intro h2,.section h2{font-size:clamp(30px,3.7vw,44px);line-height:1.14;letter-spacing:-.047em;margin:9px 0 13px}.intro p{margin-bottom:0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:19px}.card{background:white;border:1px solid #e6e4de;box-shadow:0 5px 25px #14201c09;display:flex;flex-direction:column}.card img{width:100%;height:210px;object-fit:cover;display:block}.card-body{padding:22px;display:flex;flex-direction:column;flex:1}.card h3{font-size:19px;letter-spacing:-.035em;line-height:1.2;margin-bottom:9px}.card p{font-size:13px;line-height:1.7;flex:1}.textlink{color:#99743d;letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:850}.textlink:hover{text-decoration:underline}.dark{background:#172823;color:#fff;padding:70px 0}.dark h2{font-size:clamp(32px,3.8vw,47px);letter-spacing:-.05em;line-height:1.1}.dark p,.dark li{color:#d8e0d9}.split{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center}.split img{height:340px;width:100%;object-fit:cover}.checklist{padding-left:22px;margin:0 0 25px}.checklist li{margin:9px 0}.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.gallery figure{margin:0;background:#fff;border:1px solid var(--line)}.gallery img{display:block;width:100%;height:180px;object-fit:cover}.gallery figcaption{font-size:12px;padding:12px;font-weight:780}.callout{padding:67px 0;background:#e8d9bd;text-align:center}.callout h2{font-size:clamp(31px,4vw,43px);margin-bottom:14px;letter-spacing:-.05em}.callout p{color:#4f554c}.service-header{background:#182922;color:white;padding:65px 0}.service-header .eyebrow{color:#e3c381}.service-header h1{font-size:clamp(38px,5.4vw,60px);line-height:1.08;letter-spacing:-.055em;margin:14px 0}.service-header p{color:#e6ebe7;max-width:680px}.service-layout{display:grid;grid-template-columns:1.24fr .76fr;gap:50px;align-items:start}.service-image{width:100%;height:350px;object-fit:cover;border-radius:2px;display:block;margin-bottom:27px}.prose h2{font-size:27px;letter-spacing:-.04em;margin:32px 0 12px}.prose h3{font-size:20px;margin:26px 0 10px}.prose p,.prose li{font-size:15px;line-height:1.85}.prose ul{padding-left:20px}.sidebar{position:sticky;top:105px}.sidebar .quote{border:1px solid #ddd;border-top:4px solid var(--gold);box-shadow:none}.breadcrumbs{font-size:12px;color:#d6dcd5}.breadcrumbs a{text-decoration:underline}.faqs details{background:white;border:1px solid #dfe4dc;margin:8px 0;padding:16px 20px}.faqs summary{font-weight:800;cursor:pointer}.faqs p{margin:12px 0 0}.areas-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.areas-grid div{border:1px solid #e4e5de;background:#fff;padding:19px}.areas-grid strong{display:block;margin-bottom:6px}.footer{background:#101e19;color:#fff;padding:42px 0 22px}.footer .foot{display:flex;justify-content:space-between;gap:35px}.footer p{color:#bfc8be;font-size:13px}.footer .foot-links{display:flex;flex-wrap:wrap;gap:17px;font-size:13px}.footer .legal{font-size:11px;border-top:1px solid #ffffff28;padding-top:17px;margin-top:30px;color:#9eada3}.foot a:hover{text-decoration:underline}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
@media(max-width:1010px){.nav{gap:12px}.hero-grid{gap:3%}.gallery{grid-template-columns:repeat(2,1fr)}}@media(max-width:830px){.nav,.nav-cta{display:none}.mobile-toggle{display:block}.hero{padding:55px 0}.hero-grid,.service-layout,.split{grid-template-columns:1fr}.quote{max-width:600px}.sidebar{position:static}.cards{grid-template-columns:repeat(2,1fr)}.topbar .extra{display:none}.gallery{grid-template-columns:repeat(2,1fr)}}@media(max-width:550px){.wrap{width:90%}.header-inner{min-height:73px}.brand .brand-name{font-size:20px}.brand img{width:32px}.hero h1{font-size:43px}.hero p{font-size:15px}.hero-btns .btn{width:100%}.quote{padding:20px}.fields{grid-template-columns:1fr}.fields .wide{grid-column:auto}.trust .wrap{grid-template-columns:1fr;gap:12px}.trust div div{text-align:left}.section{padding:55px 0}.cards,.areas-grid{grid-template-columns:1fr}.card img{height:235px}.gallery img{height:150px}.footer .foot{flex-direction:column}.split img{height:255px}.service-header{padding:45px 0}}

section[id], .quote[id]{scroll-margin-top:115px}
@media(max-width:800px){section[id], .quote[id]{scroll-margin-top:85px}}
