:root{--g:#0e7a3b;--gd:#0a3d22;--cream:#f6f1e4;--ink:#141414;--hi:#f2c230}
html{scroll-behavior:smooth;scroll-padding-top:80px}
body{font-family:'Work Sans',sans-serif;color:var(--ink);background:#fff;line-height:1.6}
h1,h2,h3,.navbar-brand,.doorband{font-family:'Lilita One',sans-serif;font-weight:400;letter-spacing:.01em}
h2{font-size:clamp(2rem,4.5vw,3rem);color:var(--gd);margin-bottom:.5rem}
h3{font-size:1.4rem}
.clover{width:1.2em;height:1.2em;color:var(--g);vertical-align:-.2em;margin-right:.35em}
.topbar{background:var(--gd);color:#e8f3ea;font-size:.85rem;padding:.4rem 0}
.topbar a{color:#fff;font-weight:600;text-decoration:none;margin-left:1.2rem}
.topcall{margin-left:auto}
.mainnav{background:var(--cream);border-bottom:3px solid var(--g)}
.navbar-brand{font-size:1.7rem;color:var(--gd)!important}
.mainnav .nav-link{color:var(--ink);font-weight:600;font-size:.92rem}
.mainnav .nav-link:hover{color:var(--g)}
.btn-casey{background:var(--g);color:#fff;border:2px solid var(--g);font-weight:700;border-radius:4px}
.btn-casey:hover{background:var(--gd);border-color:var(--gd);color:#fff}
.btn-ghost{border:2px solid var(--gd);color:var(--gd);font-weight:700;border-radius:4px}
.btn-ghost:hover{background:var(--gd);color:#fff}
.hero{background:var(--cream);padding:2.5rem 0 3rem}
.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.8rem;font-weight:700;color:var(--g)}
.hero h1{font-size:clamp(2.6rem,6vw,4.6rem);line-height:1.02;color:var(--gd)}
.hero .lead{font-size:1.1rem;margin:1rem 0 1.4rem;max-width:34rem}
.fine{font-size:.85rem;opacity:.8;margin-top:.8rem}
.truckframe{border:6px solid var(--gd);box-shadow:10px 10px 0 var(--g);border-radius:4px;overflow:hidden;max-height:min(66vh,480px)}
.truckframe img{display:block;width:100%;height:100%;max-height:min(66vh,480px);object-fit:cover;object-position:35% 60%}
.doorband{background:var(--gd);color:#fff;padding:.9rem 0;font-size:clamp(1.1rem,3vw,1.8rem);letter-spacing:.08em;text-align:center}
.doorband .container{display:flex;justify-content:center;align-items:center;gap:1rem;flex-wrap:wrap}
.doorband .clover{color:#6fd18d;margin:0}
.sec{padding:clamp(3rem,7vw,5rem) 0}
.sec-cream{background:var(--cream)}
.sec-green{background:var(--g);color:#fff}
.sec-green h2,.sec-black h2{color:#fff}
.sec-black{background:#111;color:#eee}
.narrow{max-width:860px}
.sub{max-width:44rem;font-size:1.1rem;margin-bottom:2rem}
.svc .tag{height:100%;background:var(--cream);border-left:8px solid var(--g);padding:1.2rem 1.3rem;position:relative}
.svc .tag::after{content:"";position:absolute;top:12px;right:12px;width:12px;height:12px;border-radius:50%;background:#fff;border:2px solid var(--gd)}
.svc h3{color:var(--gd)}
.svc p{margin:0}
.crewimg{width:100%;height:auto;display:block}
.checks{list-style:none;padding:0;font-size:1.1rem}
.checks li{padding:.45rem 0 .45rem 2rem;position:relative;border-bottom:1px solid rgba(255,255,255,.2)}
.checks li::before{content:"✓";position:absolute;left:0;color:var(--hi);font-weight:700}
details{border-bottom:2px solid #e3dcc8;padding:.9rem 0}
summary{font-weight:700;font-size:1.1rem;cursor:pointer;color:var(--gd)}
details p{margin:.6rem 0 0}
.pricelist{list-style:none;padding:0;margin-top:1.5rem}
.pricelist li{display:flex;justify-content:space-between;gap:1rem;padding:.8rem 0;border-bottom:2px dashed #c9c0a4}
.mn{font-weight:700;font-size:1.05rem}
.mn small{display:block;font-weight:400;font-size:.9rem;opacity:.8}
.mp{font-family:'Lilita One',sans-serif;font-size:1.3rem;color:var(--g);white-space:nowrap}
.people{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;max-width:960px}
.person{margin:0;text-align:center}
.person img{width:100%;aspect-ratio:1/1;object-fit:cover;border:4px solid var(--g);border-radius:4px}
.person figcaption{font-family:'Lilita One',sans-serif;font-size:1.3rem;color:var(--gd);margin-top:.4rem}
.subhead{margin:2.2rem 0 1rem;color:var(--gd)}
.people:last-child{max-width:600px}
.pills{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0 1.4rem}
.pills span{border:2px solid #6fd18d;color:#fff;border-radius:99px;padding:.2rem .9rem;font-size:.95rem}
.towns{list-style:none;padding:0;columns:5 140px;column-gap:1rem;font-size:.95rem}
.towns li{padding:.1rem 0;break-inside:avoid}
.clients{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:1.5rem 2.5rem;justify-content:center;align-items:center;margin:2rem 0}
.clients img{height:90px;width:auto;max-width:200px;object-fit:contain}
.rating{font-weight:600}
.contact{list-style:none;padding:0}
.contact li{padding:.6rem 0;border-bottom:1px solid rgba(255,255,255,.25);display:flex;flex-direction:column}
.contact b{font-size:.75rem;text-transform:uppercase;letter-spacing:.14em;color:var(--hi)}
.contact a{color:#fff;font-size:1.3rem;font-weight:700;text-decoration:none}
.social a{color:#fff;margin-right:1.2rem;font-weight:600}
.mapwrap iframe{width:100%;height:100%;min-height:380px;border:0;border-radius:4px}
.foot{background:#0a1f13;color:#cfe3d5;padding:1.2rem 0;font-size:.85rem}
.foot a{color:#fff}
@media(max-width:575px){.pricelist li{flex-direction:column;gap:.2rem}.topcall a{margin-left:.6rem}}
