@font-face{font-family:'Barlow Condensed';src:url('/assets/fonts/barlow-condensed-var.woff2') format('woff2');font-weight:500 700;font-display:swap}
@font-face{font-family:'Archivo';src:url('/assets/fonts/archivo-var.woff2') format('woff2');font-weight:400 800;font-display:swap}
:root{--green:#14532d;--green2:#166534;--lime:#84cc16;--lime2:#d9f99d;--yellow:#facc15;--ink:#14231a;--mut:#475569;--bg:#f6f9f3;--card:#ffffff;--line:#dce8d5}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:'Archivo',Arial,sans-serif;color:var(--ink);background:var(--bg);line-height:1.55;padding-bottom:64px}
h1,h2,h3{font-family:'Barlow Condensed',Arial,sans-serif;line-height:1.05;letter-spacing:.01em}
h1{font-size:clamp(2.4rem,5.5vw,4.2rem);font-weight:700;text-transform:uppercase}
h2{font-size:clamp(1.7rem,3.4vw,2.5rem);font-weight:700;text-transform:uppercase;margin-bottom:.6rem}
h3{font-size:1.35rem;font-weight:600}
a{color:var(--green2)}
section{max-width:1180px;margin:0 auto;padding:2.2rem 1.2rem}
.topbar{background:var(--green);color:#fff;display:flex;gap:1rem;justify-content:space-between;align-items:center;padding:.45rem 1.2rem;font-size:.9rem;font-weight:600;flex-wrap:wrap}
.topbar a{color:var(--yellow);text-decoration:none}
.tb-mid{opacity:.85;font-weight:400}
.site-header{position:sticky;top:0;z-index:40;background:#fff;border-bottom:3px solid var(--lime);display:flex;align-items:center;gap:1.4rem;padding:.6rem 1.2rem;flex-wrap:wrap}
.logo{display:flex;align-items:center;gap:.55rem;text-decoration:none;color:var(--green)}
.logo-mark{background:var(--green);color:var(--lime2);font-family:'Barlow Condensed';font-weight:700;font-size:1.3rem;padding:.25rem .5rem;border-radius:8px}
.logo-name{font-family:'Barlow Condensed';font-size:1.8rem;font-weight:700}
.logo-name em{color:var(--lime);font-style:normal}
.main-nav{display:flex;gap:1.1rem;flex-wrap:wrap;margin-left:auto}
.main-nav a{color:var(--ink);text-decoration:none;font-weight:600;font-size:.98rem}
.header-cta{background:var(--lime);color:var(--green);font-weight:800;padding:.6rem 1.1rem;border-radius:999px;text-decoration:none;box-shadow:0 3px 0 var(--green)}
.hero{max-width:1180px;margin:0 auto;padding:2.6rem 1.2rem 1.4rem;display:grid;grid-template-columns:1.15fr .85fr;gap:2rem;align-items:start}
.kicker{color:var(--green2);font-weight:800;text-transform:uppercase;letter-spacing:.12em;font-size:.85rem;margin-bottom:.6rem}
.hero-sub{font-size:1.15rem;color:var(--mut);margin:1rem 0;max-width:56ch}
.trust-strip{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1.2rem}
.trust-strip span{background:#fff;border:1.5px solid var(--line);border-left:5px solid var(--lime);padding:.45rem .8rem;border-radius:8px;font-weight:600;font-size:.92rem}
.hero-photo,.photo{width:100%;height:330px;object-fit:cover;border-radius:14px;display:block}
.ba-grid img{height:300px}
.call-panel{background:var(--green);color:#fff;border-radius:14px;padding:1.3rem;margin-top:1rem;box-shadow:0 12px 28px rgba(20,83,45,.28)}
.cp-title{font-family:'Barlow Condensed';font-size:1.6rem;text-transform:uppercase}
.btn-call{display:inline-block;background:var(--yellow);color:var(--green);font-weight:800;font-size:1.25rem;padding:.8rem 1.4rem;border-radius:999px;text-decoration:none;margin:.6rem 0;box-shadow:0 4px 0 #a16207}
.btn-call.big{font-size:1.4rem}
.cp-hours{font-weight:700;color:var(--lime2)}
.cp-note{font-size:.92rem;opacity:.92}
.crumbs{max-width:1180px;margin:0 auto;padding:.4rem 1.2rem}
.crumbs ol{display:flex;gap:.5rem;list-style:none;flex-wrap:wrap;font-size:.9rem;color:var(--mut)}
.crumbs li+li:before{content:"/";margin-right:.5rem;color:var(--lime)}
.call-block{max-width:1180px;margin:1rem auto;background:linear-gradient(100deg,var(--green),var(--green2));color:#fff;border-radius:16px;padding:1.8rem;display:flex;justify-content:space-between;align-items:center;gap:1.5rem;flex-wrap:wrap}
.call-block h2{color:#fff}
.call-block p{max-width:62ch;opacity:.95}
.svc-grid,.mini-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:1rem;margin:1rem 0}
.svc-card{background:var(--card);border:1.5px solid var(--line);border-radius:14px;padding:1rem;text-decoration:none;color:var(--ink);display:block}
.svc-card:hover{border-color:var(--lime)}
.svc-photo{width:100%;height:150px;object-fit:cover;border-radius:10px;margin-bottom:.7rem}
.svc-range{color:var(--green2);font-weight:800}
.svc-mini{background:#fff;border:1.5px solid var(--line);border-radius:12px;padding:.9rem;text-decoration:none;color:var(--ink)}
.svc-mini p{color:var(--green2);font-weight:700}
.metro-grid,.near-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem}
.metro-card{background:var(--green);color:#fff;border-radius:14px;padding:1.2rem;text-decoration:none}
.metro-card h3{color:var(--lime2)}
.metro-card span{color:var(--yellow);font-weight:700}
.near-grid a{background:#fff;border:1.5px solid var(--line);border-radius:10px;padding:.7rem .9rem;text-decoration:none;font-weight:600}
.step-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:1rem}
.step{background:#fff;border:1.5px solid var(--line);border-top:5px solid var(--lime);border-radius:12px;padding:1rem}
.step-n{font-family:'Barlow Condensed';font-size:2rem;color:var(--lime);font-weight:700}
.points ul,.signs ul,.factors ul,.check{list-style:none}
.points li,.signs li,.factors li,.check li{padding:.45rem 0 .45rem 1.6rem;position:relative;border-bottom:1px dashed var(--line)}
.points li:before,.check li:before{content:"";position:absolute;left:0;top:.75rem;width:.8rem;height:.8rem;background:var(--lime);border-radius:3px}
.signs li:before{content:"";position:absolute;left:0;top:.75rem;width:.8rem;height:.8rem;background:var(--yellow);border-radius:50%}
.factors li:before{content:"";position:absolute;left:0;top:.75rem;width:.8rem;height:.8rem;border:2.5px solid var(--green2);border-radius:50%}
.cost-table{width:100%;border-collapse:collapse;background:#fff;border-radius:12px;overflow:hidden}
.cost-table th,.cost-table td{padding:.65rem .9rem;text-align:left;border-bottom:1px solid var(--line)}
.cost-table th{background:var(--green);color:#fff}
.fineprint,.range-line{margin-top:.8rem;color:var(--mut)}
.faq details{background:#fff;border:1.5px solid var(--line);border-radius:10px;padding:.9rem 1.1rem;margin:.55rem 0}
.faq summary{font-weight:700;cursor:pointer;font-size:1.05rem}
.faq details p{margin-top:.5rem;color:#334155}
.ba-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1rem 0}
.ba-grid img{width:100%;height:100%;object-fit:cover;border-radius:14px}
.page-head{padding-bottom:0}
.intro p{margin-bottom:1rem;max-width:78ch}
.site-footer{background:var(--green);color:#e7f5e0;margin-top:3rem;padding:2.4rem 1.2rem 5rem}
.foot-grid{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.6rem}
.foot-grid h4{color:var(--lime2);font-family:'Barlow Condensed';font-size:1.3rem;margin-bottom:.5rem;text-transform:uppercase}
.foot-grid a{display:block;color:#e7f5e0;text-decoration:none;padding:.18rem 0;opacity:.92}
.foot-hours,.foot-disclaimer,.foot-copy{max-width:1180px;margin:1.2rem auto 0;font-size:.9rem;opacity:.9}
.foot-disclaimer{border-top:1px solid rgba(255,255,255,.25);padding-top:1rem}
.sticky-call{position:fixed;left:0;right:0;bottom:0;z-index:50;background:var(--yellow);color:var(--green);text-align:center;font-weight:800;padding:.85rem .5rem;text-decoration:none;font-size:1.05rem;box-shadow:0 -4px 18px rgba(0,0,0,.18)}
@media(max-width:820px){.hero{grid-template-columns:1fr}.tb-mid{display:none}.ba-grid{grid-template-columns:1fr}.header-cta{margin-left:auto}}
