@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Oswald:wght@400;500;600;700&display=swap');
:root{font-family:'DM Sans',Arial,sans-serif;color:#183126;background:#f7f8f3}*{box-sizing:border-box}body{margin:0}a{color:inherit}header{background:#10291f;color:white;position:relative;z-index:2}.bar{max-width:1180px;margin:auto;padding:18px 28px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{text-decoration:none;font-family:Oswald,sans-serif;font-weight:600;font-size:1.35rem;letter-spacing:.02em;text-transform:uppercase;line-height:1.05}.brand small{display:block;font-family:'DM Sans',sans-serif;font-size:.66rem;letter-spacing:.22em;margin-top:6px;color:#b7d77c}nav{display:flex;align-items:center;gap:28px}nav a{text-decoration:none;font-size:.94rem;font-weight:600}nav a:hover,nav a[aria-current]{color:#c6e18e}.nav-cta,.button{background:#d5ed9a;color:#153022;text-decoration:none;padding:14px 20px;border-radius:3px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;min-height:48px}.nav-cta:hover,.button:hover{background:#effbbf;color:#153022}.hero{background:#173b2c;color:white;min-height:590px;display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.72fr);overflow:hidden}.hero-content{padding:92px max(28px,calc((100vw - 1180px)/2)) 88px max(28px,calc((100vw - 1180px)/2));padding-right:32px;max-width:850px}.eyebrow{text-transform:uppercase;letter-spacing:.22em;font-size:.8rem;font-weight:700;color:#bfdc8b;margin:0 0 22px}h1,h2,h3{font-family:Oswald,Impact,sans-serif;text-transform:uppercase;line-height:1.08;letter-spacing:.01em}h1{font-size:clamp(3.5rem,7vw,7rem);margin:0 0 24px;font-weight:600}h2{font-size:clamp(2.3rem,4vw,3.8rem);margin:0 0 22px}h3{font-size:1.65rem;margin:0 0 12px}.hero p:not(.eyebrow){font-size:1.15rem;line-height:1.65;max-width:590px;color:#e3eadf}.hero-actions{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin-top:32px}.text-link{font-weight:700;text-underline-offset:5px}.hero-art{background:linear-gradient(155deg,rgba(16,41,31,.05),rgba(16,41,31,.45)),repeating-linear-gradient(112deg,#4e7047 0 8px,#577a4c 8px 12px,#40653e 12px 21px);position:relative}.hero-art:after{content:'TRUE LINE';font-family:Oswald,sans-serif;font-size:clamp(5rem,12vw,12rem);font-weight:700;color:rgba(255,255,255,.12);position:absolute;bottom:-.18em;right:-.1em;writing-mode:vertical-rl;transform:rotate(180deg);white-space:nowrap}.wrap{max-width:1180px;margin:auto;padding:78px 28px}.intro-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:7vw;align-items:start}.lead{font-size:1.25rem;line-height:1.6;margin:0}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:44px}.service{border-top:3px solid #9dbd69;background:white;padding:28px;min-height:200px}.service p,.muted{line-height:1.65;color:#53645a}.service p{margin:0}.band{background:#e6eddd}.split{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}.photo-slot{aspect-ratio:4/3;background:#d7dfcd;border:2px dashed #809674;display:flex;align-items:center;justify-content:center;text-align:center;padding:30px;color:#436044;font-weight:700}.photo-slot span{max-width:260px}.area-list{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}.area-list span{border:1px solid #9dac95;padding:10px 15px;font-weight:600}.cta-band{background:#10291f;color:white}.cta-band .split{align-items:center}.cta-band p{color:#dbe8d6;line-height:1.6}.page-head{background:#173b2c;color:white;padding:74px 28px}.page-head .inner{max-width:1180px;margin:auto}.page-head h1{font-size:clamp(3rem,6vw,5.5rem);margin-bottom:14px}.page-head p:last-child{max-width:690px;line-height:1.6;font-size:1.1rem;color:#e1e8df}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.gallery .photo-slot:nth-child(2){background:#dce6d3}.gallery .photo-slot:nth-child(3){background:#e4e9db}.gallery .photo-slot:nth-child(4){background:#cbd9c5}.gallery .photo-slot:nth-child(5){background:#d7e2d0}.gallery .photo-slot:nth-child(6){background:#e0e7da}.gallery figure{margin:0}.gallery figcaption{padding:12px 2px;font-weight:700}.quote-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(250px,.6fr);gap:7vw}.form-card{background:white;padding:36px;border:1px solid #dce4d8}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{font-weight:700;font-size:.92rem;display:block;margin-bottom:7px}input,select,textarea{font:inherit;width:100%;padding:13px 14px;border:1px solid #aebcaf;border-radius:2px;background:white;color:#183126;min-height:48px}textarea{min-height:135px;resize:vertical}.field{margin-bottom:20px}button.button{border:0;cursor:pointer;font:inherit;font-weight:700}.fine{font-size:.88rem;line-height:1.5;color:#53645a}.contact-email{font-size:1.05rem;font-weight:700;overflow-wrap:anywhere}footer{background:#0d2219;color:#e4eae2;padding:38px 28px}.footer-inner{max-width:1180px;margin:auto;display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap}footer p{margin:8px 0;line-height:1.6}footer a{color:#d5ed9a}@media(max-width:800px){.hero{grid-template-columns:1fr}.hero-content{padding:72px 28px}.hero-art{height:190px}.intro-grid,.split,.quote-layout{grid-template-columns:1fr}.services,.gallery{grid-template-columns:repeat(2,1fr)}.bar{flex-wrap:wrap}nav{gap:16px;flex-wrap:wrap}}@media(max-width:520px){.services,.gallery,.field-row{grid-template-columns:1fr}.wrap{padding:58px 22px}.page-head{padding:54px 22px}.bar{padding:16px 22px}.brand{font-size:1.15rem}nav{width:100%;font-size:.9rem}.nav-cta{padding:11px}.form-card{padding:22px}}

/* A brighter, white-led treatment with green reserved for emphasis. */
:root{background:#fff}
header{background:#fff;color:#153326;border-bottom:1px solid #e2e9de}
.brand small{color:#587540}
nav a:hover,nav a[aria-current]{color:#426d32}
.nav-cta,.button{background:#183c2d;color:#fff}
.nav-cta:hover,.button:hover{background:#315d41;color:#fff}
.hero{background:#fff;color:#153326;min-height:540px}
.hero .eyebrow,.page-head .eyebrow{color:#587540}
.hero p:not(.eyebrow){color:#4c6052}
.hero-art{background:linear-gradient(135deg,rgba(250,252,246,.3),rgba(226,238,211,.45)),repeating-linear-gradient(112deg,#bbd0a3 0 8px,#c8dab4 8px 12px,#adc797 12px 21px)}
.hero-art:after{color:rgba(31,72,42,.13)}
.band{background:#f4f7ef}
.service{border:1px solid #e0e8db;border-top:3px solid #729d58;box-shadow:0 12px 28px rgba(16,41,31,.035)}
.photo-slot{background:#f5f8f1;border-color:#8fa782}
.page-head{background:#fff;color:#153326;border-bottom:1px solid #e2e9de}
.page-head p:last-child{color:#4c6052}
.form-card{box-shadow:0 18px 45px rgba(16,41,31,.055)}
.cta-band{background:#f3f7ef;color:#153326;border-top:1px solid #e2e9de}
.cta-band p{color:#4c6052}

/* Prominent masthead on every page. */
header .bar{flex-direction:column;align-items:stretch;gap:0;padding:0 28px;max-width:none}
header .brand{display:block;align-self:center;text-align:center;padding:22px 14px 20px;font-size:clamp(2.7rem,5vw,4.3rem);line-height:.98;letter-spacing:.045em;color:#153326}
header .brand small{font-size:clamp(.9rem,1.7vw,1.25rem);font-weight:700;letter-spacing:.19em;margin-top:13px;color:#436d38}
header nav{width:100%;justify-content:center;gap:clamp(20px,4vw,54px);border-top:1px solid #e2e9de;min-height:62px}
header nav a{font-size:1rem}
header .nav-cta{min-height:40px;padding:9px 18px}
@media(max-width:520px){header .bar{padding:0 18px}header .brand{font-size:2.35rem;padding:20px 4px 17px}header .brand small{font-size:.82rem;letter-spacing:.11em;margin-top:9px}header nav{gap:12px;min-height:58px;flex-wrap:nowrap}header nav a{font-size:.86rem;white-space:nowrap}header .nav-cta{padding:8px 10px;min-height:38px}}
.featured-photo{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.gallery img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;background:#f4f7ef}
.gallery figure:nth-child(4) img,.gallery figure:nth-child(6) img{object-position:center 42%}

/* Centered homepage composition. */
.home .hero{display:block;min-height:0;text-align:center;background:radial-gradient(ellipse at top,#edf4e7 0,white 72%);border-bottom:1px solid #e2e9de}
.home .hero-content{max-width:940px;margin:0 auto;padding:72px 28px 76px}
.home .hero h1{font-size:clamp(2.8rem,6.5vw,5.6rem);line-height:1.08;text-wrap:balance}
.home .hero p:not(.eyebrow){max-width:650px;margin:0 auto;line-height:1.7}
.home .hero-actions{justify-content:center;gap:24px}
.home .hero .eyebrow{font-size:.74rem;letter-spacing:.16em;line-height:1.7}
.home main>.wrap{max-width:1080px;text-align:center;padding-top:64px;padding-bottom:64px}
.home .intro-grid{display:block;max-width:740px;margin:0 auto}
.home .intro-grid .lead{font-size:1.1rem;color:#53645a}
.home h2{font-size:clamp(2rem,4vw,3.1rem);text-wrap:balance}
.home .services{gap:22px;margin-top:34px}
.home .service{padding:30px 22px;min-height:0;border-radius:6px}
.home .service h3{font-size:1.5rem}
.home .band .split{display:flex;flex-direction:column-reverse;text-align:center;gap:30px;max-width:920px;padding-top:54px;padding-bottom:54px}
.home .band .split>div{max-width:640px}
.home .featured-photo{max-width:740px;aspect-ratio:16/9;border-radius:8px;box-shadow:0 12px 32px rgba(16,41,31,.1)}
.home .area-list{justify-content:center;max-width:760px;margin:26px auto 0;gap:10px}
.home .area-list span{border-color:#d8e3d1;border-radius:4px;background:#f8faf5}
.home .cta-band .split{display:flex;flex-direction:column;text-align:center;gap:12px;padding-top:50px;padding-bottom:54px}
.home .cta-band h2{margin-bottom:14px}
.home .footer-inner{justify-content:center;text-align:center;flex-direction:column;gap:16px}
@media(max-width:600px){.home .hero-content{padding:48px 22px 54px}.home .services{grid-template-columns:1fr}.home main>.wrap{padding-top:46px;padding-bottom:46px}.home .hero h1{font-size:clamp(2.5rem,9vw,3.5rem)}.home .hero p:not(.eyebrow){font-size:1.05rem}.home .featured-photo{aspect-ratio:4/3}}

/* Richer green and gold homepage palette. */
.home .hero{background:radial-gradient(ellipse at top,#397449 0,#204e35 52%,#153c2b 100%);color:#fff;border-bottom:6px solid #d8b65a}
.home .hero .eyebrow{color:#edcf7f}
.home .hero p:not(.eyebrow){color:#e5efdf}
.home .hero .button{background:#e6c56e;color:#173b29;box-shadow:0 6px 18px rgba(0,0,0,.12)}
.home .hero .button:hover{background:#f3d890}
.home .hero .text-link{color:#fff}
.home main>.wrap:first-of-type{background:#fff}
.home .service{border:1px solid #cbdcc2;border-top:4px solid #548346;background:#eff5e8;box-shadow:0 8px 24px rgba(31,73,42,.07)}
.home .service:nth-child(2){background:#faf3df;border-color:#e7d69f;border-top-color:#c49b39}
.home .service:nth-child(3){background:#e9f1ed;border-color:#c7ddd2;border-top-color:#3b7862}
.home .service h3{color:#245234}
.home .band{background:#e3edda;border-top:1px solid #cedec2;border-bottom:1px solid #cedec2}
.home .area-list span{background:#eaf2e3;color:#2d5736;border-color:#c4d9b8}
.home .cta-band{background:#204f36;color:#fff;border-top:5px solid #d8b65a}
.home .cta-band p{color:#e0ecda}
.home .cta-band .button{background:#e6c56e;color:#173b29}
.home .cta-band .button:hover{background:#f3d890}
.home header .brand{color:#245637}
.home header .brand small{color:#64813f}
