:root{--bg:#f6f3eb;--text:#17201a;--muted:#5d665f;--green:#275436;--green-deep:#142d20;--yellow:#e4b331;--rust:#a6532a;--line:#17201a24;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);margin:0;font-family:Arial,Helvetica,sans-serif;line-height:1.5}a{color:inherit;text-decoration:none}.hero{isolation:isolate;align-items:center;min-height:86vh;display:grid;position:relative;overflow:hidden}.heroImage{object-fit:cover;object-position:center;z-index:-2}.heroShade{z-index:-1;background:linear-gradient(90deg,#0d1710d1 0%,#0d171099 43%,#0d17102e 100%),linear-gradient(#0d171014,#0d171061);position:absolute;inset:0}.siteHeader{color:var(--white);justify-content:space-between;align-items:center;gap:24px;padding:24px clamp(18px,5vw,72px);display:flex;position:absolute;top:0;left:0;right:0}.brand{letter-spacing:.08em;text-transform:uppercase;font-size:1rem;font-weight:800}nav{gap:clamp(14px,3vw,32px);font-size:.94rem;font-weight:700;display:flex}nav a{opacity:.88}nav a:hover{opacity:1}.heroContent{width:min(700px,100% - 36px);color:var(--white);margin-left:clamp(18px,7vw,96px);padding:96px 0 54px}.eyebrow,.sectionLabel{color:var(--yellow);letter-spacing:.12em;text-transform:uppercase;margin:0 0 12px;font-size:.8rem;font-weight:800}h1,h2,h3,p{overflow-wrap:anywhere}h1{letter-spacing:0;max-width:680px;margin:0;font-size:clamp(2.3rem,5.35vw,4.55rem);line-height:1}.lead{color:#ffffffe0;max-width:660px;margin:26px 0 0;font-size:clamp(1.05rem,2.2vw,1.35rem)}.heroActions,.contactActions{flex-wrap:wrap;gap:12px;margin-top:34px;display:flex}.button,.contactActions a{border-radius:6px;justify-content:center;align-items:center;min-height:48px;padding:13px 20px;font-weight:800;display:inline-flex}.primary{background:var(--yellow);color:#15160f}.secondary{color:var(--white);border:1px solid #ffffff80}.section{width:min(1180px,100% - 36px);margin:0 auto;padding:clamp(56px,8vw,96px) 0}.sectionLabel{color:var(--rust)}h2{letter-spacing:0;margin:0;font-size:clamp(2rem,4vw,3.45rem);line-height:1.05}.introText,.contact p{color:var(--muted);margin:0;font-size:1.08rem}.brands h2,.intro h2{max-width:900px}.introText{gap:18px;max-width:1120px;margin-top:28px;font-size:clamp(1.08rem,1.7vw,1.26rem);display:grid}.introText p{margin:0}.services{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.sectionHeading{margin-bottom:34px}.sectionHeading h2{max-width:860px}.serviceGrid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:18px;display:grid}.serviceCard{border:1px solid var(--line);background:#ffffff9e;border-radius:8px;min-height:255px;padding:26px}.serviceCard span{background:var(--green);border-radius:999px;width:42px;height:6px;margin-bottom:28px;display:block}.serviceCard h3{margin:0 0 12px;font-size:1.35rem;line-height:1.16}.serviceCard p{color:var(--muted);margin:0}.brands{border-top:1px solid var(--line)}.brandCopy{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 42px;max-width:1080px;margin-top:30px;display:grid}.brandCopy p{color:var(--muted);margin:0;font-size:1.08rem}.contact{background:var(--green-deep);width:100%;min-height:100vh;color:var(--white);grid-template-columns:minmax(0,1fr) minmax(280px,.72fr);align-items:center;gap:clamp(28px,7vw,96px);margin:0;padding:clamp(48px,8vw,112px) clamp(18px,7vw,96px);display:grid}.contact .sectionLabel{color:var(--yellow)}.contact p{color:#ffffffc7;margin-top:18px}.contactActions{place-content:start flex-start;margin:0}.contactActions a{background:var(--white);width:100%;color:var(--green-deep)}.mapPanel{background:var(--white);border-radius:8px;width:100%;overflow:hidden}.contactActions .mapAddress{border-bottom:1px solid var(--line);border-radius:0;min-height:48px}.mapPanel iframe{border:0;width:100%;height:clamp(220px,28vw,340px);display:block}.contact h2{max-width:820px;font-size:clamp(2.6rem,6.5vw,5.8rem)}.contact p{max-width:650px}@media (max-width:820px){.hero{min-height:84vh}.siteHeader{align-items:flex-start;padding-top:18px}nav{display:none}.heroShade{background:linear-gradient(90deg,#0d1710e0,#0d171085),linear-gradient(#0d17101f,#0d17107a)}.heroContent{margin:0 auto;padding-top:112px}.intro,.brands,.contact,.serviceGrid{grid-template-columns:1fr;display:grid}.brandCopy{grid-template-columns:1fr}.serviceCard{min-height:auto}.contact{align-content:center}}@media (max-width:460px){.heroActions .button{width:100%}h1{font-size:2.42rem}}
