
:root{--green:#224f2c;--green2:#2f6c3a;--lime:#3f741f;--earth:#8a6438;--cream:#f6f2e8;--ink:#1d2a22;--muted:#657268;--blue:#34495e;--line:#e4e1d8;--white:#fff;--shadow:0 18px 55px rgba(23,40,29,.14)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--ink);background:#fff;margin:0;line-height:1.65}a{text-decoration:none;color:inherit}.topbar{background:var(--green);color:#fff;font-size:14px}.wrap{max-width:1180px;margin:0 auto;padding:0 22px}.topbar .wrap,.mainhead .wrap{display:flex;align-items:center;justify-content:space-between;gap:18px}.topbar a{font-weight:800;color:#fff}.mainhead{position:sticky;top:0;background:rgba(255,255,255,.96);backdrop-filter:blur(14px);box-shadow:0 6px 25px rgba(0,0,0,.08);z-index:50}.logo{display:flex;align-items:center;gap:12px;padding:11px 0}.logo img{height:62px;max-width:236px;object-fit:contain}.brandname{font-family:Georgia,serif;font-weight:900;color:var(--green);font-size:23px;line-height:1}.brandname span{display:block;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--earth)}.nav{display:flex;align-items:center;gap:3px}.nav>a,.dropbtn{padding:30px 12px;font-weight:800;font-size:14px;color:#22372a}.nav a:hover,.dropbtn:hover{color:var(--green2)}.dropdown{position:relative}.dropdown-menu{display:none;position:absolute;top:100%;left:0;background:#fff;min-width:270px;box-shadow:var(--shadow);border-radius:0 0 16px 16px;border-top:4px solid var(--lime);padding:10px;max-height:74vh;overflow:auto}.dropdown:hover .dropdown-menu{display:grid}.dropdown-menu a{display:block;padding:9px 11px;border-radius:10px;font-size:13px;font-weight:750;color:#29402e}.dropdown-menu a:hover{background:var(--cream);color:var(--green)}.headcta{background:var(--lime);color:#fff!important;border-radius:999px;padding:12px 18px!important;margin-left:5px;box-shadow:0 10px 24px rgba(120,169,67,.26)}.mobile-toggle{display:none;background:var(--green);color:#fff;border:0;border-radius:8px;padding:10px 12px;font-weight:900}.hero{position:relative;min-height:720px;display:flex;align-items:center;overflow:hidden;background:#111}.hero>video,.hero>iframe{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.08);border:0}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,26,12,.94),rgba(14,38,20,.86) 46%,rgba(14,38,20,.58));z-index:1}.hero .wrap{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.15fr) 430px;gap:42px;align-items:center}.eyebrow{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.28);color:#fff;border-radius:999px;padding:7px 14px;font-weight:900;font-size:13px;text-transform:uppercase;letter-spacing:.08em}.hero h1{font-family:Georgia,serif;color:#fff;font-size:clamp(44px,6vw,72px);line-height:.98;margin:18px 0 16px;text-shadow:0 5px 25px rgba(0,0,0,.28)}.hero p{color:#f5f7ee;font-size:20px;max-width:720px}.btnrow{display:flex;flex-wrap:wrap;gap:13px;margin-top:24px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;padding:14px 22px;font-weight:900;transition:.2s transform,.2s box-shadow}.btn:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(0,0,0,.18)}.btn-primary{background:var(--lime);color:#fff}.btn-dark{background:var(--green);color:#fff}.btn-light{background:#fff;color:var(--green)}.truststrip{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:30px}.truststrip div{background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.22);border-radius:16px;padding:13px;color:#fff;font-weight:900}.quote-card{background:#fff;border-radius:24px;padding:28px;box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.5)}.quote-card h2{font-family:Georgia,serif;color:var(--green);font-size:29px;margin:0 0 7px}.formgrid{display:grid;gap:12px}.formgrid input,.formgrid textarea,.formgrid select{width:100%;border:1px solid #d7d9d2;border-radius:13px;padding:13px 14px;font:inherit;background:#fff}.formgrid textarea{min-height:104px}.notice{display:none;background:#edf8ed;border:1px solid #b7dbb7;color:#19451d;border-radius:12px;padding:12px;font-weight:800;margin-top:10px}.section{padding:82px 0}.section.alt{background:var(--cream)}.split{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}.kicker{color:var(--lime);font-weight:950;text-transform:uppercase;letter-spacing:.11em;font-size:13px}.section h2,.page-title h1{font-family:Georgia,serif;color:var(--green);font-size:clamp(34px,4vw,52px);line-height:1.05;margin:10px 0 16px}.section h3{font-family:Georgia,serif;color:var(--green);font-size:27px}.lead{font-size:18px;color:#3a4a3f}.imgcard{border-radius:24px;overflow:hidden;box-shadow:var(--shadow);background:#ddd;min-height:420px}.imgcard img{width:100%;height:100%;min-height:420px;object-fit:cover;display:block}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.service-card,.benefit,.testimonial,.faq,.location-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:24px;box-shadow:0 10px 30px rgba(24,45,30,.06)}.service-card img{width:100%;height:184px;object-fit:cover;border-radius:16px;margin-bottom:15px}.service-card h3,.location-card h3{margin:0 0 9px}.service-card .more{color:var(--green2);font-weight:950}.benefit{display:flex;gap:16px}.icon{width:46px;height:46px;min-width:46px;border-radius:15px;background:var(--cream);display:grid;place-items:center;color:var(--green);font-weight:950}.page-hero{background:linear-gradient(100deg,rgba(32,79,44,.92),rgba(32,79,44,.66)),var(--bg);background-position:center;background-size:cover;color:#fff;padding:110px 0 80px}.breadcrumbs{font-weight:800;color:#dcefd6;font-size:14px}.page-title h1{color:#fff;max-width:920px}.page-title p{font-size:20px;max-width:820px;color:#f4f7ef}.content-grid{display:grid;grid-template-columns:minmax(0,1fr) 365px;gap:42px}.sidebar{position:sticky;top:110px;align-self:start}.sidebox{background:#fff;border-radius:22px;padding:24px;box-shadow:var(--shadow);border:1px solid var(--line);margin-bottom:20px}.sidebox h3{margin-top:0}.checklist{list-style:none;padding:0;margin:18px 0}.checklist li{padding:9px 0 9px 30px;position:relative}.checklist li:before{content:'✓';position:absolute;left:0;color:var(--lime);font-weight:950}.cta-band{background:linear-gradient(100deg,var(--green),#17371f);color:#fff;padding:55px 0}.cta-band .wrap{display:flex;justify-content:space-between;align-items:center;gap:25px}.cta-band h2{color:#fff;margin:0;font-family:Georgia,serif;font-size:38px}.footer{background:#17251b;color:#dfe8df;padding:55px 0 30px}.footer-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr 1fr;gap:34px}.footer h3{color:#fff;margin-top:0}.footer a{display:block;color:#dfe8df;margin:7px 0}.footer .phone{font-size:24px;color:#fff;font-weight:950}.subfooter{border-top:1px solid rgba(255,255,255,.12);margin-top:34px;padding-top:18px;font-size:14px;color:#b8c4b8}.mobile-cta{display:none;position:fixed;left:0;right:0;bottom:0;z-index:90;background:#fff;box-shadow:0 -8px 25px rgba(0,0,0,.18);grid-template-columns:1fr 1fr}.mobile-cta a{padding:13px 8px;text-align:center;font-weight:950;color:#fff}.mobile-cta a:first-child{background:var(--green)}.mobile-cta a:last-child{background:var(--lime)}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.gallery img{width:100%;height:250px;object-fit:cover;border-radius:18px;box-shadow:0 10px 28px rgba(0,0,0,.08)}.service-list-link{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding:10px 0;font-weight:850}.toc{columns:2;column-gap:28px}.toc a{display:block;padding:8px 0;color:var(--green);font-weight:850}details{background:#fff;border:1px solid var(--line);border-radius:18px;padding:15px 18px;margin:12px 0}summary{font-weight:950;color:var(--green);cursor:pointer}.legacy-note{font-size:13px;color:#6f786f}.visually-hidden{position:absolute!important;height:1px;width:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
@media(max-width:1000px){.mobile-toggle{display:block}.nav{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;box-shadow:var(--shadow);padding:14px 22px;flex-direction:column;align-items:stretch}.nav.open{display:flex}.nav>a,.dropbtn{padding:13px 8px}.dropdown-menu{position:static;display:grid;box-shadow:none;border:0;max-height:none;padding:0}.hero .wrap,.split,.content-grid{grid-template-columns:1fr}.hero{min-height:auto;padding:95px 0 48px}.quote-card{max-width:560px}.truststrip{grid-template-columns:1fr 1fr}.grid3,.grid4,.footer-grid,.gallery{grid-template-columns:1fr 1fr}.sidebar{position:static}.cta-band .wrap{display:block}.mobile-cta{display:grid}body{padding-bottom:55px}}
@media(max-width:640px){.topbar .wrap{display:block;text-align:center;padding:7px 16px}.logo img{height:52px}.brandname{font-size:18px}.hero h1{font-size:40px}.hero p,.page-title p{font-size:17px}.truststrip,.grid3,.grid4,.footer-grid,.gallery{grid-template-columns:1fr}.section{padding:58px 0}.page-hero{padding:80px 0 58px}.toc{columns:1}.gallery img{height:220px}}

.hero:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 25% 45%,rgba(0,0,0,.18),transparent 46%);z-index:1;pointer-events:none}
.hero h1,.hero p,.hero .eyebrow,.truststrip div{text-shadow:0 3px 18px rgba(0,0,0,.55)}
.hero p{font-weight:650;color:#fff}
.eyebrow{background:rgba(255,255,255,.19);border-color:rgba(255,255,255,.42)}
.truststrip div{background:rgba(8,26,12,.56);border-color:rgba(255,255,255,.34)}
.quote-card{box-shadow:0 26px 70px rgba(0,0,0,.26);border:1px solid rgba(255,255,255,.82)}
.quote-card p{color:#344137}
.formgrid input:focus,.formgrid textarea:focus,.formgrid select:focus{outline:3px solid rgba(63,116,31,.22);border-color:var(--green2)}

.footer-badge{grid-column:1/-1;margin:28px auto 0;max-width:280px;background:#fff;border-radius:18px;padding:16px;box-shadow:0 14px 36px rgba(0,0,0,.18);text-align:center;color:#17251b}.footer-badge a{color:#17251b}.footer-badge img{max-width:100%;height:auto}

/* Client revision polish */
.logo img{height:72px;max-width:170px;border-radius:6px;background:#fff;object-fit:contain}
.hero h1{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-weight:950;letter-spacing:-.055em;line-height:.96;text-transform:none}
.hero p{font-size:21px;line-height:1.55;max-width:760px}
.service-card p,.location-card p,.benefit p{font-size:15.5px;line-height:1.62;color:#4d5c52}
.service-card h3,.benefit h3{font-size:25px;line-height:1.15}
.service-card{display:flex;flex-direction:column}
.service-card .more{margin-top:auto;padding-top:8px}
.service-card img{height:210px}
.grid4 .benefit{min-height:170px}
@media(max-width:640px){.logo img{height:58px;max-width:140px}.hero h1{font-size:42px;letter-spacing:-.04em}.hero p{font-size:18px}.service-card img{height:230px}}


/* Timberline revision round 2 */
.logo{display:flex;align-items:center;gap:12px}
.logo img{height:76px;max-width:170px;border-radius:6px;background:#fff;object-fit:contain;flex:0 0 auto}
.brandname{display:block;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:20px;line-height:1.05;font-weight:900;letter-spacing:-.02em;color:var(--green)}
.hero-brand{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:22px;line-height:1.1;font-weight:900;letter-spacing:-.02em;color:#fff;margin-top:14px}
.section p,.content-grid p,.service-card p,.location-card p,.benefit p,.testimonial p,.sidebox p,.footer p,.page-title p,.hero p,.quote-card p{font-size:17px;line-height:1.72}
.lead{font-size:17px;line-height:1.72;color:#445349}
.service-card p,.location-card p,.benefit p{font-size:16px;line-height:1.68;color:#4d5c52}
.service-card h3,.benefit h3{font-size:24px;line-height:1.18}
.gallery{grid-template-columns:repeat(3,1fr);align-items:start}
.gallery figure{margin:0}
.gallery img{height:260px}
.gallery figcaption{padding:8px 4px 0;font-size:14px;line-height:1.5;color:#4a554b;font-weight:700}
@media(max-width:1000px){.brandname{font-size:18px}.gallery{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.logo{gap:10px}.logo img{height:58px;max-width:132px}.brandname{font-size:16px}.hero-brand{font-size:18px}.gallery{grid-template-columns:1fr}}


/* Timberline final homepage image cleanup */
.service-card img{background:#e8ece4}
.service-card:nth-child(1) img{object-position:center center}
.service-card:nth-child(2) img{object-position:center top}
.service-card:nth-child(3) img{object-position:center center}
.service-card:nth-child(4) img{object-position:center center}
.service-card:nth-child(5) img{object-position:center center}
.service-card:nth-child(6) img{object-position:center center}
.service-card:nth-child(7) img{object-position:center center}
.service-card:nth-child(8) img{object-position:center center}
.service-card:nth-child(9) img{object-position:center top}
.service-card:nth-child(10) img{object-position:center top}
.service-card:nth-child(11) img{object-position:center center}
.service-card:nth-child(12) img{object-position:center center}
.service-card:nth-child(13) img{object-position:center center}


/* Homepage duplicate-image cleanup and final polish */
.additional-service-links{margin-top:30px;background:#fff;border:1px solid var(--line);border-radius:22px;padding:28px;box-shadow:0 10px 30px rgba(24,45,30,.06)}
.additional-service-links h3{margin:0 0 8px}
.additional-service-links p{margin:0 0 16px}
.quick-service-links{display:flex;flex-wrap:wrap;gap:10px}
.quick-service-links a{display:inline-flex;align-items:center;border-radius:999px;background:var(--cream);color:var(--green);font-weight:900;padding:10px 15px}
.quick-service-links a:hover{background:var(--green);color:#fff}


/* Final Timberline image and typography cleanup */
.logo img{height:64px;max-width:88px;object-fit:contain}
.brandname,.hero-brand,.hero h1{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}
.brandname{font-size:21px;font-weight:900;letter-spacing:-.02em}
.hero-brand{font-size:24px;font-weight:900;letter-spacing:-.025em}
.hero h1{font-size:clamp(44px,6vw,72px);font-weight:950;letter-spacing:-.055em;line-height:.95}
.section p,.content-grid p,.sidebox p,.page-title p,.quote-card p,.footer p{font-size:17px;line-height:1.7}
.lead{font-size:19px;line-height:1.72}
.service-card p,.benefit p,.location-card p,.testimonial p,.faq p{font-size:16.5px;line-height:1.7}
.service-card h3,.benefit h3,.location-card h3{font-size:19px;line-height:1.25}
.gallery img{height:260px}
@media(max-width:640px){.brandname{font-size:16px}.hero-brand{font-size:18px}.section p,.content-grid p,.sidebox p,.page-title p,.quote-card p,.footer p,.lead{font-size:17px}.service-card p,.benefit p,.location-card p,.testimonial p,.faq p{font-size:16px}}


/* Final v7 Timberline QA cleanup */
.logo img{height:64px;max-width:88px;object-fit:contain}
.brandname,.hero-brand,.hero h1{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}
.brandname{font-size:21px;font-weight:900;letter-spacing:-.02em}
.hero-brand{font-size:24px;font-weight:900;letter-spacing:-.025em}
.hero h1{font-size:clamp(44px,6vw,72px);font-weight:950;letter-spacing:-.055em;line-height:.95}
.section p,.content-grid p,.sidebox p,.page-title p,.quote-card p,.footer p{font-size:17px;line-height:1.7}
.lead{font-size:19px;line-height:1.72}
.service-card p,.benefit p,.location-card p,.testimonial p,.faq p{font-size:16.5px;line-height:1.7}
.service-card h3,.benefit h3,.location-card h3{font-size:19px;line-height:1.25}
.service-card.has-icon .service-icon{height:184px;border-radius:16px;margin-bottom:15px;display:grid;place-items:center;background:linear-gradient(135deg,#eef5e7,#ffffff);border:1px solid #dfe8d8;color:var(--green);font-size:58px;font-weight:950}
.service-card.has-icon{background:#fff}
.gallery img{height:260px}
@media(max-width:640px){.brandname{font-size:16px}.hero-brand{font-size:18px}.section p,.content-grid p,.sidebox p,.page-title p,.quote-card p,.footer p,.lead{font-size:17px}.service-card p,.benefit p,.location-card p,.testimonial p,.faq p{font-size:16px}.service-card.has-icon .service-icon{height:220px}}


/* v9 logo and cleanup image update */
.logo img{height:68px;max-width:96px;object-fit:contain;background:#fff}
.brandname,.hero-brand,.hero h1{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}
.section p,.content-grid p,.sidebox p,.page-title p,.quote-card p,.footer p{font-size:17px;line-height:1.7}
.lead{font-size:19px;line-height:1.72}
.service-card p,.benefit p,.location-card p,.testimonial p,.faq p{font-size:16.5px;line-height:1.7}

.about-team-figure{margin-top:1.5rem;background:#fff;border:1px solid #d7ddd3;border-radius:18px;overflow:hidden;box-shadow:0 12px 30px rgba(0,0,0,.08)}
.about-team-figure img{width:100%;display:block;max-height:560px;object-fit:cover}
.about-team-figure figcaption{padding:.9rem 1rem;color:#35543b;font-weight:600}
.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.gallery img{width:100%;height:320px;object-fit:cover;border-radius:18px;box-shadow:0 10px 28px rgba(0,0,0,.08)}
@media (max-width:900px){.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery img{height:240px}}
@media (max-width:640px){.gallery{grid-template-columns:1fr}.gallery img{height:auto}}

/* v12 logo + Vimeo hero repair */
.logo img{height:72px;max-width:170px;object-fit:contain;background:#fff;border-radius:6px;display:block}
.hero{background:#102117 var(--hero-poster) center/cover no-repeat!important;isolation:isolate}
.hero .hero-poster{position:absolute;inset:0;background:var(--hero-poster) center/cover no-repeat;z-index:0;transform:scale(1.02)}
.hero iframe.hero-video{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;border:0!important;z-index:0!important;display:block!important;pointer-events:none;transform:scale(1.08);background:transparent}
.hero:before{z-index:1!important}
.hero:after{z-index:1!important}
.hero .wrap{position:relative!important;z-index:2!important}
@media(max-width:640px){.logo img{height:58px;max-width:132px}.hero iframe.hero-video{transform:scale(1.15)}}


/* Luxury refresh v13 */
:root{--lux-gold:#c9a24f;--lux-gold-dark:#8f6b2a;--lux-cream:#f8f4ea;--lux-ink:#142318;--lux-charcoal:#111a14;--lux-border:rgba(201,162,79,.28)}
body{font-family:Manrope,Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:#fbfaf6;color:var(--lux-ink)}
.topbar{background:#0e2015;color:#f7f0df;border-bottom:1px solid rgba(201,162,79,.25)}
.mainhead{background:rgba(255,255,255,.92);backdrop-filter:blur(18px);box-shadow:0 18px 50px rgba(15,30,19,.09);border-bottom:1px solid rgba(201,162,79,.22)}
.logo img{height:74px;max-width:104px;border-radius:12px;box-shadow:0 10px 28px rgba(0,0,0,.12)}
.brandname{font-family:Manrope,Inter,sans-serif;font-weight:900;letter-spacing:-.035em;color:#173e24;font-size:24px}.nav>a,.dropbtn{font-weight:900;color:#1c3322}.headcta,.btn-primary{background:linear-gradient(135deg,var(--lux-gold),var(--lux-gold-dark));color:#172315!important;box-shadow:0 18px 38px rgba(143,107,42,.28)}
.btn-dark{background:linear-gradient(135deg,#153d24,#0e2417);box-shadow:0 16px 34px rgba(14,36,23,.22)}.btn-light{color:#173e24;border:1px solid rgba(201,162,79,.35)}
.hero{min-height:760px}.hero:before{background:linear-gradient(90deg,rgba(8,20,12,.92),rgba(14,36,22,.82) 44%,rgba(14,36,22,.42));z-index:1}.hero:after{background:radial-gradient(circle at 20% 50%,rgba(201,162,79,.15),transparent 42%);z-index:1}.hero h1,.section h2,.page-title h1,.cta-band h2{font-family:'Playfair Display',Georgia,serif;letter-spacing:-.035em}.hero h1{font-weight:800;font-size:clamp(50px,6.8vw,88px);line-height:.92}.hero-brand{font-weight:900;color:#f5e6bd;letter-spacing:.06em;text-transform:uppercase;font-size:14px}.eyebrow,.kicker{color:#b88d3a;letter-spacing:.18em}.quote-card{border:1px solid rgba(201,162,79,.35);box-shadow:0 30px 90px rgba(0,0,0,.28);background:rgba(255,255,255,.94)}
.truststrip div{border:1px solid rgba(201,162,79,.35);background:rgba(255,255,255,.12)}
.section{padding:96px 0}.section.alt{background:linear-gradient(180deg,#f8f4ea,#fdfbf6)}.lead{color:#324537}.service-card,.location-card,.benefit,.testimonial,.sidebox,.faq{border:1px solid rgba(201,162,79,.2);box-shadow:0 18px 50px rgba(18,40,24,.08);background:rgba(255,255,255,.95)}.service-card{transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.service-card:hover{transform:translateY(-7px);box-shadow:0 26px 70px rgba(18,40,24,.16);border-color:rgba(201,162,79,.45)}.service-card img{height:245px;border-radius:18px}.service-card h3,.location-card h3,.benefit h3{font-family:'Playfair Display',Georgia,serif;color:#173e24}.icon{background:linear-gradient(135deg,#f8efd9,#fff);border:1px solid rgba(201,162,79,.25);color:#8f6b2a}.imgcard{border:1px solid rgba(201,162,79,.25);box-shadow:0 24px 70px rgba(18,40,24,.14)}.footer{background:linear-gradient(180deg,#111a14,#08120c);border-top:1px solid rgba(201,162,79,.35)}.footer h3{font-family:'Playfair Display',Georgia,serif}.cta-band{background:linear-gradient(135deg,#102417,#183f25 60%,#8f6b2a)}
.luxury-blog{background:linear-gradient(180deg,#fff,#f8f4ea);border-top:1px solid rgba(201,162,79,.18)}.blog-intro{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:30px}.blog-intro h2{margin-bottom:0}.blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.blog-card{background:#fff;border:1px solid rgba(201,162,79,.22);border-radius:24px;overflow:hidden;box-shadow:0 18px 50px rgba(18,40,24,.08);transition:transform .25s ease,box-shadow .25s ease}.blog-card:hover{transform:translateY(-6px);box-shadow:0 28px 80px rgba(18,40,24,.14)}.blog-card img{width:100%;height:205px;object-fit:cover;display:block}.blog-card-body{padding:22px}.blog-card .meta{font-size:12px;text-transform:uppercase;letter-spacing:.13em;color:#8f6b2a;font-weight:900}.blog-card h3{font-family:'Playfair Display',Georgia,serif;color:#173e24;font-size:25px;line-height:1.12;margin:9px 0 10px}.blog-card p{font-size:15.8px;line-height:1.65}.blog-card a{font-weight:900;color:#173e24}.blog-page-hero{background:linear-gradient(135deg,rgba(12,31,18,.88),rgba(12,31,18,.58)),var(--bg);background-size:cover;background-position:center;color:#fff;padding:115px 0}.blog-article{max-width:860px;margin:0 auto}.blog-article h2{font-family:'Playfair Display',Georgia,serif}.blog-article p{font-size:18px;line-height:1.82}.blog-article img{width:100%;border-radius:24px;box-shadow:0 24px 70px rgba(18,40,24,.15);margin:22px 0}.admin-callout{background:#fff8e8;border:1px solid rgba(201,162,79,.3);padding:18px;border-radius:16px}
@media(max-width:1000px){.blog-grid{grid-template-columns:1fr 1fr}.blog-intro{display:block}.service-card img{height:230px}}
@media(max-width:640px){.hero h1{font-size:43px}.blog-grid{grid-template-columns:1fr}.logo img{height:58px}.brandname{font-size:17px}}


/* Sitewide service/location image cleanup */
.service-card img,
.location-card img,
.blog-card img,
.gallery img {
  width: 100% !important;
  aspect-ratio: 3 / 2 !important;
  height: auto !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block !important;
}
.service-card img { border-radius: 16px; margin-bottom: 15px; }
.gallery img { border-radius: 18px; box-shadow: 0 10px 28px rgba(0,0,0,.12); }
.imgcard img { width: 100% !important; height: 100% !important; min-height: 420px; object-fit: cover !important; object-position:center !important; }
.about-team-figure{margin-top:1.5rem;background:#fff;border:1px solid #d7ddd3;border-radius:18px;overflow:hidden;box-shadow:0 12px 30px rgba(0,0,0,.08)}
.about-team-figure img{width:100%;display:block;max-height:560px;object-fit:cover}
.about-team-figure figcaption{padding:.9rem 1rem;color:#35543b;font-weight:600}


/* Customer requested crop/centering fixes + quote form fields */
.service-card img[src*="service-card-trimming-edging-blowing"],
.service-card img[src*="service-trimming-edging-centered"],
.page-hero[style*="service-card-trimming-edging-blowing"],
.imgcard img[src*="service-card-trimming-edging-blowing"]{object-position:center 38%!important;background-position:center 38%!important;}
.service-card img[src*="service-card-shrub-tree-trimming"],
.service-card img[src*="service-shrub-tree-centered"],
.page-hero[style*="service-card-shrub-tree-trimming"],
.imgcard img[src*="service-card-shrub-tree-trimming"]{object-position:center 42%!important;background-position:center 42%!important;}
.formgrid input[name="address"],.formgrid select[name="budget"]{border-color:#cfd8cc;background:#fff;}
.formgrid select[name="budget"]{color:#38483d;}


/* Interior hero image centering + service-safe hero crops */
.page-hero,
.blog-page-hero{
  background-image: linear-gradient(100deg,rgba(12,30,18,.93),rgba(21,57,34,.76) 54%,rgba(21,57,34,.42)), var(--bg) !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  min-height: 390px;
  display: flex;
  align-items: center;
}
.page-hero .wrap,
.blog-page-hero .wrap{position:relative;z-index:2;}
@media(max-width:640px){.page-hero,.blog-page-hero{min-height:330px;background-position:center center!important;}}


/* Gutter hero focal-point fix: keeps the technician visible on interior gutter pages */
.page-hero[data-hero-image*="hero-gutter-downspout-cleaning"]{
  background-image:linear-gradient(100deg,rgba(8,25,14,.96) 0%,rgba(8,25,14,.90) 42%,rgba(8,25,14,.34) 70%,rgba(8,25,14,.12) 100%),var(--bg)!important;
  background-position:center center!important;
}


/* Mailgun + reCAPTCHA form support */
.hp-field{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important}
.g-recaptcha{margin:6px 0 10px;transform-origin:left top}
.notice.notice-success{display:block;background:#edf8ed;border:1px solid #b7dbb7;color:#19451d}
.notice.notice-error{display:block;background:#fff2f1;border:1px solid #efb8b0;color:#7d1d14}
.formgrid button[disabled]{opacity:.72;cursor:not-allowed;transform:none!important}
@media(max-width:420px){.g-recaptcha{transform:scale(.88);margin-bottom:0}}


/* Lazy reCAPTCHA placement: hidden until a visitor submits a form */
.captcha-slot{display:none;margin:10px 0 14px;min-height:78px}
.captcha-slot.captcha-loaded{display:block}
.hp-field{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important}
.notice.notice-success{display:block;background:#edf8ed;border:1px solid #b7dbb7;color:#19451d}
.notice.notice-error{display:block;background:#fff2f1;border:1px solid #efb8b0;color:#7d1d14}
.formgrid button[disabled]{opacity:.72;cursor:not-allowed;transform:none!important}
@media(max-width:420px){.captcha-slot.captcha-loaded{transform:scale(.88);transform-origin:left top;margin-bottom:-4px}}


/* Visible reCAPTCHA placement fix */
.captcha-slot{display:none!important}
.g-recaptcha{display:block!important;margin:12px 0 16px!important;min-height:78px;transform-origin:left top}
.quote-card .g-recaptcha,.sidebox .g-recaptcha{margin-top:4px!important}
.notice.notice-success{display:block;background:#edf8ed;border:1px solid #b7dbb7;color:#19451d}
.notice.notice-error{display:block;background:#fff2f1;border:1px solid #efb8b0;color:#7d1d14}
.formgrid button[disabled]{opacity:.72;cursor:not-allowed;transform:none!important}
@media(max-width:420px){.g-recaptcha{transform:scale(.88);margin-bottom:-4px!important}}


/* reCAPTCHA iframe positioning fix
   The hero background selector must not affect Google reCAPTCHA iframes inside the hero quote form. */
.g-recaptcha,
.quote-card .g-recaptcha,
.sidebox .g-recaptcha{
  display:block!important;
  position:relative!important;
  z-index:3!important;
  width:304px!important;
  max-width:100%!important;
  min-height:78px!important;
  margin:12px 0 16px!important;
  transform:none!important;
}

.g-recaptcha iframe,
.hero .g-recaptcha iframe,
.quote-card .g-recaptcha iframe,
.sidebox .g-recaptcha iframe{
  position:static!important;
  inset:auto!important;
  width:304px!important;
  max-width:100%!important;
  height:78px!important;
  min-height:0!important;
  transform:none!important;
  object-fit:initial!important;
  border:0!important;
  display:block!important;
}

.g-recaptcha > div{
  position:relative!important;
  width:304px!important;
  max-width:100%!important;
  height:78px!important;
}

.hero .quote-card iframe{
  position:static!important;
  inset:auto!important;
  transform:none!important;
}

@media(max-width:420px){
  .g-recaptcha{transform:scale(.88)!important;transform-origin:left top!important;margin-bottom:-4px!important}
}
