:root{--ink:#1b1813;--bark:#2c2017;--char:#20271f;--orange:#e2700c;--orange-d:#bf5c00;--cream:#f3eee4;--cream2:#ece5d7;--line:#d6ccba;--mut:#6c6353;--green:#3f6f4a}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:"Segoe UI",system-ui,Arial;color:var(--ink);background:var(--cream);line-height:1.65}
.wrap{max-width:1060px;margin:0 auto;padding:0 22px}
a{color:var(--orange-d);text-decoration:none;font-weight:700}
h1,h2,h3,.brand{letter-spacing:-.01em;line-height:1.15}
.cta{display:inline-block;background:var(--orange);color:#fff;font-weight:800;text-transform:uppercase;letter-spacing:.04em;padding:15px 26px;box-shadow:4px 4px 0 var(--orange-d)}
.cta:hover{transform:translate(-1px,-1px)}
.demo{background:var(--orange);color:#1a1205;text-align:center;font-size:.78rem;font-weight:800;padding:6px}
/* header */
.hd{position:sticky;top:0;z-index:9;background:var(--ink);color:#f1ece2;border-bottom:3px solid var(--orange)}
.hd .wrap{display:flex;justify-content:space-between;align-items:center;height:62px;gap:12px}
.brand{display:flex;align-items:center;gap:9px;font-weight:900;text-transform:uppercase;letter-spacing:.05em;font-size:1.02rem;color:#f1ece2}
.brand .logo{flex:none}.brand span{display:block}
.brand small{display:block;font-size:.52rem;letter-spacing:.2em;color:var(--orange);font-weight:700}
.nav{display:flex;align-items:center;gap:18px}
.nav a{color:#f1ece2;font-size:.9rem}
.nav a.tel{font-size:.92rem}
/* hero */
.hero{background:var(--char);color:#f1ece2;padding:54px 0 60px;border-bottom:6px solid var(--orange)}
/* photographic hero: dark overlay (left-weighted for text/proof readability) over the page image */
.hero.has-img{background-image:linear-gradient(100deg,rgba(20,26,18,.80) 0%,rgba(20,26,18,.52) 46%,rgba(20,26,18,.22) 100%),var(--hero);background-size:cover;background-position:center;background-repeat:no-repeat}
.hero.has-img h1,.hero.has-img .lede,.hero.has-img .kicker,.hero.has-img .sub{text-shadow:0 1px 10px rgba(0,0,0,.55)}
.hero h1{font-size:2.3rem;max-width:680px}
.hero p.lede{font-size:1.12rem;color:#cfc9bb;margin:18px 0 28px;max-width:560px}
.hero .stars{color:var(--orange);letter-spacing:2px}.hero .sub{margin-top:18px;color:#b7b0a0;font-size:.92rem}
.hero .sub b{color:#fff}.hero .sub a{color:#fff}
section{padding:72px 0}
.s-cream{background:var(--cream2)}
h2{font-size:1.5rem;color:var(--bark);margin-bottom:14px}
h3{font-size:1.08rem;color:var(--bark);margin:18px 0 6px}
p{margin:0 0 12px}
.lead{color:var(--mut);font-size:1.02rem;margin-bottom:14px}
/* promise grid */
.promise{display:grid;grid-template-columns:repeat(2,1fr);gap:26px;margin-top:14px}
.promise .c{background:#fff;border:1px solid var(--line);border-left:4px solid var(--orange);padding:24px 22px}
.promise .c h3{margin:0 0 4px}.promise .c p{color:var(--mut);font-size:.94rem;margin:0}
/* owner */
.owner{display:grid;grid-template-columns:300px 1fr;align-items:center;background:#fff;border:1px solid var(--line);box-shadow:6px 6px 0 rgba(32,39,31,.12);margin:8px 0 44px;overflow:hidden}
.owner>div{padding:26px 30px}
.owner .pic{width:74px;height:74px;border-radius:50%;background:var(--green);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1.5rem;flex:none}
.owner p{color:var(--ink);font-size:.97rem;margin-top:6px}
/* service teaser / hub cards */
.svc{display:block;background:#fff;border:1px solid var(--line);border-left:4px solid var(--green);padding:20px;margin-top:14px}
.svc:hover{border-left-color:var(--orange)}
.svc h3{margin:0 0 4px;color:var(--bark);font-size:1.2rem}
.svc p{color:var(--mut);margin:0;font-weight:400}
.svc .go{color:var(--orange-d);font-weight:800;font-size:.85rem;text-transform:uppercase;letter-spacing:.04em;display:inline-block;margin-top:10px}
/* money page specifics */
.kicker{color:var(--orange);text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;font-weight:800}
ul.ticks{list-style:none;margin:6px 0 14px}
ul.ticks li{padding:6px 0 6px 26px;position:relative;color:var(--ink)}
ul.ticks li::before{content:"\2713";position:absolute;left:0;color:var(--green);font-weight:900}
.faq dt{font-weight:800;color:var(--bark);margin:16px 0 3px;font-size:1.04rem}
.faq dd{margin:0;color:var(--ink)}
.steps{counter-reset:s;margin-top:10px}
.step{position:relative;padding:8px 0 8px 44px;border-bottom:1px solid var(--cream2)}
.step::before{counter-increment:s;content:counter(s);position:absolute;left:0;top:8px;width:30px;height:30px;background:var(--orange);color:#fff;font-weight:900;display:flex;align-items:center;justify-content:center}
.cta-band{background:var(--char);color:#f1ece2;text-align:center;padding:40px 0}
.cta-band h2{color:#fff}.cta-band p{color:#cfc9bb;max-width:520px;margin:8px auto 18px}
/* contact */
.contact{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:8px}
form label{display:block;font-size:.82rem;font-weight:700;color:var(--bark);margin:10px 0 3px}
form input,form textarea{width:100%;padding:10px;border:1px solid var(--line);background:#fff;font-family:inherit;font-size:.95rem}
form button{margin-top:14px;border:0;cursor:pointer}
.mapwrap{border:1px solid var(--line);min-height:260px}
.mapwrap iframe{width:100%;height:100%;min-height:260px;border:0;display:block}
/* footer (no internal page links — keeps the silo sealed) */
footer{background:var(--ink);color:#9aa79d;font-size:.85rem;padding:30px 0}
.foot-brand{display:flex;align-items:center;gap:11px;margin-bottom:12px}
.foot-brand strong{display:block;color:#f1ece2;font-size:1.02rem;letter-spacing:.04em;text-transform:uppercase}
.foot-brand small{display:block;color:var(--orange);font-size:.58rem;letter-spacing:.2em;text-transform:uppercase;font-weight:700}
.foot-meta{margin-bottom:12px}.foot-meta a{color:#f1ece2}
.fnav{display:flex;flex-wrap:wrap;gap:20px;margin:0 0 16px}
.fnav a{color:#f1ece2;font-size:.92rem;font-weight:700}
.fnav a:hover{color:var(--orange)}
.foot-legal{opacity:.65;font-size:.78rem;border-top:1px solid #2e3a30;padding-top:12px}
@media(max-width:680px){.promise,.contact{grid-template-columns:1fr}.hero h1{font-size:1.7rem}.nav{gap:12px}section{padding:48px 0}}

/* ---- customer proof (hero) + reviews + lightbox ---- */
.hero-grid{display:grid;grid-template-columns:1.3fr .82fr;gap:40px;align-items:center}
.proof{background:var(--bark);border-left:6px solid var(--orange);padding:26px}
.proof .avatars{display:flex;gap:6px;margin-bottom:14px}
.mono{display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;border-radius:50%}
.proof .avatars .mono{width:32px;height:32px;font-size:.72rem}
.proof .big{font-size:2.6rem;font-weight:900;color:#fff;line-height:1}
.proof .lab{color:#b7a98f;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;margin:5px 0 16px}
.proof .q{font-style:italic;color:#e6ded0;font-size:.94rem}
.proof .attrib{display:flex;align-items:center;gap:9px;margin-top:14px;padding-top:14px;border-top:1px solid #4a3a2a}
.proof .attrib .mono{width:30px;height:30px;font-size:.7rem}
.proof .attrib .nm{font-weight:800;color:#fff;font-size:.82rem;text-transform:uppercase;letter-spacing:.03em}
.proof .attrib .src{color:#b7a98f;font-size:.72rem}
.revbox{max-width:1040px;margin:26px auto 0;max-height:640px;overflow-y:auto;background:var(--cream2);padding:14px;border:1px solid var(--line)}
.revbox::-webkit-scrollbar{width:10px}.revbox::-webkit-scrollbar-thumb{background:var(--orange)}.revbox::-webkit-scrollbar-track{background:#ded6c6}
.revcols{display:flex;gap:14px;align-items:flex-start}
.revcol{flex:1;min-width:0;display:flex;flex-direction:column;gap:14px}
.revcard{background:var(--cream);border:1px solid var(--line);padding:18px 20px}
.rc-head{display:flex;align-items:center;gap:11px;margin-bottom:10px}
.rc-mono{width:42px;height:42px;font-size:.85rem;flex:none}
.rc-name{font-weight:800;text-transform:uppercase;letter-spacing:.03em;font-size:.86rem;color:var(--ink);line-height:1.2}
.rc-meta{color:var(--mut);font-size:.7rem;text-transform:uppercase;letter-spacing:.04em}
.rc-stars{color:var(--orange);font-size:.82rem;margin-left:auto;letter-spacing:1px;flex:none}
.rc-text{color:#3a352d;font-size:.92rem;line-height:1.58;white-space:pre-wrap}
.rc-text strong{color:var(--bark)}
.rc-photos{display:flex;gap:6px;flex-wrap:wrap;margin-top:12px}
.rc-thumb{width:70px;height:70px;object-fit:cover;border:1px solid var(--line);cursor:pointer}
.rc-thumb:hover{border-color:var(--orange)}
.revhint{text-align:center;color:var(--mut);font-size:.82rem;margin-top:12px}
.lb{position:fixed;inset:0;z-index:200;background:rgba(14,20,12,.94);display:none;align-items:center;justify-content:center}
.lb.open{display:flex}
.lb img{max-width:90vw;max-height:86vh;border:3px solid var(--orange);object-fit:contain}
.lb-x{position:absolute;top:18px;right:24px;color:#fff;font-size:2rem;font-weight:900;cursor:pointer;background:none;border:0}
.lb-nav{position:absolute;top:50%;transform:translateY(-50%);background:var(--orange);color:#fff;border:0;font-size:1.6rem;font-weight:900;width:52px;height:64px;cursor:pointer}
.lb-prev{left:16px}.lb-next{right:16px}
.lb-cap{position:absolute;bottom:20px;left:0;right:0;text-align:center;color:#cfc9bb;font-size:.85rem}
@media(max-width:760px){.hero-grid{grid-template-columns:1fr;gap:24px}}
/* ---- phase 4: author cards + blog ---- */
.authorcard{display:flex;align-items:center;gap:10px;margin:16px 0 4px}
.authorcard .mono{width:38px;height:38px;font-size:.8rem}
.authorcard .anm{font-weight:800;color:#fff;font-size:.9rem}
.authorcard .ameta{color:#b7b0a0;font-size:.78rem}
.postmeta{color:#b7b0a0;font-size:.8rem;text-transform:uppercase;letter-spacing:.06em}
.post h2{margin-top:24px}

/* related articles interlinking */
.related{display:flex;flex-direction:column;gap:8px;margin:6px 0 8px}
.related a{display:block;background:#fff;border:1px solid var(--line);border-left:4px solid var(--green);padding:12px 16px;font-weight:700;color:var(--bark)}
.related a:hover{border-left-color:var(--orange)}
.related a::after{content:" ›";color:var(--orange-d)}
/* ---- article layout (blog posts) ---- */
.article-banner{margin:0;width:100%;height:380px;overflow:hidden;border-bottom:5px solid var(--orange)}
.article-banner img{width:100%;height:100%;object-fit:cover;display:block}
.article-head{background:var(--cream2);padding:30px 0 26px;border-bottom:1px solid var(--line)}
.article-head .wrap{max-width:760px}
.article-head .dek{font-size:1.16rem;color:var(--mut);margin:8px 0 4px;line-height:1.6}
.post{max-width:760px;margin:0 auto}
.post p{font-size:1.08rem;line-height:1.78;margin:0 0 18px;color:#2a2620}
.post h2{font-size:1.5rem;margin:30px 0 10px;color:var(--bark)}
.post a{color:var(--orange-d);font-weight:700}
blockquote.pull{border-left:5px solid var(--orange);background:#fff;padding:16px 22px;margin:24px 0;font-size:1.22rem;font-style:italic;color:var(--bark);line-height:1.55}
.sources{background:#fff;border:1px solid var(--line);border-left:4px solid var(--green);padding:16px 20px;margin:26px 0}
.sources h3{font-size:1rem;color:var(--bark);margin-bottom:6px;text-transform:uppercase;letter-spacing:.04em}
.sources a{display:block;color:var(--orange-d);font-weight:700;margin:4px 0;font-size:.92rem}
.authorbio{display:flex;gap:14px;align-items:flex-start;background:var(--cream2);border:1px solid var(--line);padding:18px;margin:28px 0}
.authorbio .mono{width:48px;height:48px;font-size:1rem;flex:none;border-radius:50%}
.authorbio strong{color:var(--bark)}.authorbio p{font-size:.92rem;margin:4px 0 0;color:var(--mut)}
/* phase-5: owner credentials & memberships (E-E-A-T on-page parity) */
.creds{background:#fff;border:1px solid var(--line);border-left:4px solid var(--green);padding:14px 20px 16px;margin:18px 0}
.creds h3{margin:0 0 8px;font-size:1rem;letter-spacing:.02em}
.creds ul{margin:0;padding-left:18px}
.creds li{margin:5px 0}
/* phase-5: AREAS beef-up — chips, area cards, local reviews, faq accordion, nearby links */
.chips{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0}
.chips span{background:#fff;border:1px solid var(--line);border-left:3px solid var(--green);padding:6px 12px;font-size:.92rem;font-weight:700;color:var(--bark)}
.areagrid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:20px}
@media(max-width:860px){.areagrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.areagrid{grid-template-columns:1fr}}
.areacard{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);color:inherit;text-decoration:none;overflow:hidden;box-shadow:5px 5px 0 rgba(32,39,31,.12);transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease}
.areacard:hover{transform:translate(-3px,-3px);box-shadow:8px 8px 0 var(--orange);border-color:var(--char)}
.areacard .ahead{display:flex;align-items:center;gap:9px;background:var(--char);padding:15px 18px;border-bottom:3px solid var(--orange)}
.areacard .ahead svg{flex:none}
.areacard h3{margin:0;font-size:1.16rem;color:#fff;line-height:1.15}
.areacard h3 small{display:block;font-size:.62rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--orange);margin-top:3px}
.areacard .abody{flex:1;padding:15px 18px 16px}
.areacard .al{margin:0 0 8px;color:var(--mut);font-size:.82rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.areacard .an{margin:0;color:var(--ink);font-size:.95rem;line-height:1.5}
.areacard .ago{display:flex;justify-content:space-between;align-items:center;background:var(--cream2);border-top:1px solid var(--line);color:var(--orange-d);font-weight:800;font-size:.92rem;padding:12px 18px;transition:background .14s ease,color .14s ease}
.areacard .ago em{font-style:normal;font-size:1.3rem;line-height:1;transition:transform .14s ease}
.areacard:hover .ago{background:var(--orange);color:#fff}
.areacard:hover .ago em{transform:translateX(4px)}
.areviews{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin-top:8px}
.acard{background:#fff;border:1px solid var(--line);padding:16px 18px}
.acard .astars{color:var(--orange);letter-spacing:2px;font-size:.95rem}
.acard p{margin:8px 0;font-size:.95rem;color:var(--ink)}
.acard .aname{font-weight:800;color:var(--bark);font-size:.9rem}
.nearby{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}
.nearby a{background:#fff;border:1px solid var(--line);padding:8px 14px;font-weight:700;font-size:.92rem}
.nearby a:hover{border-color:var(--orange)}
.faq details{background:#fff;border:1px solid var(--line);border-left:4px solid var(--orange);margin:10px 0;padding:0}
.faq summary{cursor:pointer;font-weight:800;color:var(--bark);padding:14px 18px;font-size:1.02rem;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";float:right;color:var(--orange-d);font-size:1.2rem;line-height:1}
.faq details[open] summary::after{content:"−"}
.faq .fa{padding:0 18px 16px;color:var(--ink);line-height:1.6}
/* phase-5: service-area ZIP codes */
.ziphead{margin:16px 0 6px;font-size:.95rem}
.ziprow{display:flex;flex-wrap:wrap;gap:7px;margin:0}
.ziprow span{background:var(--char);color:#f1ece2;font-weight:700;font-size:.86rem;letter-spacing:.03em;padding:4px 10px;font-variant-numeric:tabular-nums}
.areacard .acz{margin:9px 0 0;color:var(--mut);font-size:.82rem;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:.02em}

/* ===== phase-6: CRO + maturity ===== */
/* sticky mobile conversion bar */
.stickybar{display:none}
@media(max-width:760px){
 .stickybar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:60;align-items:center;justify-content:space-between;gap:10px;background:var(--char);border-top:3px solid var(--orange);padding:9px 14px;text-decoration:none;box-shadow:0 -4px 14px rgba(0,0,0,.28)}
 .stickybar .sb-rating{color:#cfc9bb;font-size:.78rem;font-weight:700;line-height:1.2}
 .stickybar .sb-rating b{color:#fff}
 .stickybar .sb-rating .st{color:var(--orange);letter-spacing:1px}
 .stickybar .sb-cta{background:var(--orange);color:#fff;font-weight:800;text-transform:uppercase;letter-spacing:.03em;font-size:.8rem;padding:11px 14px;white-space:nowrap}
 body{padding-bottom:62px}
}
/* trust / credentials bar under hero */
.trustbar{background:var(--bark);border-bottom:3px solid var(--orange)}
.trustbar .wrap{display:flex;flex-wrap:wrap;gap:10px 28px;justify-content:center;align-items:center;padding:18px 22px}
.trustbar span{color:#efe7d8;font-size:.86rem;font-weight:700;white-space:nowrap}
.trustbar span .st{color:var(--orange);letter-spacing:1px}
.trustbar span b{color:#fff}
/* risk-reversal guarantee strip */
.guarantee{background:var(--green);color:#fff;text-align:center;padding:18px 22px;font-weight:700;font-size:.96rem}
.guarantee b{color:#fff;text-decoration:underline;text-underline-offset:2px}
/* phase-6: map embed sections taller */
.mapsec .mapwrap{min-height:360px}
.mapsec .mapwrap iframe{min-height:360px}

/* ===== phase-6: mobile nav (CSS-only hamburger) + tap targets ===== */
.hamb,.navtog{display:none}
@media(max-width:760px){
 .hd .wrap{height:auto;min-height:56px;padding-top:8px;padding-bottom:8px;position:relative;flex-wrap:nowrap;gap:8px}
 .brand{font-size:.9rem;line-height:1.12}
 .hamb{display:flex;flex-direction:column;justify-content:center;gap:5px;cursor:pointer;padding:9px;margin-left:auto}
 .hamb span{width:26px;height:3px;background:#f1ece2;display:block;border-radius:2px;transition:transform .2s,opacity .2s}
 .navtog:checked ~ .hamb span:nth-child(1){transform:translateY(8px) rotate(45deg)}
 .navtog:checked ~ .hamb span:nth-child(2){opacity:0}
 .navtog:checked ~ .hamb span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
 .nav{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:var(--ink);border-bottom:3px solid var(--orange);box-shadow:0 10px 18px rgba(0,0,0,.32);padding:4px 0 10px;z-index:40}
 .navtog:checked ~ .nav{display:flex}
 .nav a{padding:15px 22px;font-size:1.02rem;border-top:1px solid #2c2c2c}
 .nav a.tel{color:var(--orange)}
 .nav a.cta{margin:12px 18px 4px;text-align:center;box-shadow:3px 3px 0 var(--orange-d)}
 /* footer tap targets */
 .fnav{gap:2px 18px}
 .fnav a{padding:9px 0;display:inline-block}
}
/* phase-6: bolder hero headline + centered reviews block */
.hero h1{font-weight:800;letter-spacing:-.02em}
/* phase-6: review avatar photos */
.proof .avatars{align-items:center;gap:7px}
.proof .avatars .pf-av{width:36px;height:36px;border-radius:50%;object-fit:cover;border:2px solid var(--bark);flex:none}
img.rc-mono{border-radius:50%;object-fit:cover}
/* phase-6: How it works photo cards */
.howgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:8px}
.howcard{background:#fff;border:1px solid var(--line);box-shadow:5px 5px 0 rgba(32,39,31,.1);display:flex;flex-direction:column}
.howimg{position:relative;aspect-ratio:16/11;overflow:hidden}
.howimg img{width:100%;height:100%;object-fit:cover;display:block}
.hownum{position:absolute;left:0;bottom:0;width:44px;height:44px;background:var(--orange);color:#fff;font-weight:900;font-size:1.35rem;display:flex;align-items:center;justify-content:center}
.howbody{padding:18px 20px 20px}
.howbody h3{margin:0 0 7px;color:var(--bark);font-size:1.14rem}
.howbody p{margin:0;color:var(--mut);font-size:.95rem;line-height:1.55}
@media(max-width:760px){.howgrid{grid-template-columns:1fr;gap:18px}}
/* phase-6: home section restyles (owner / value-cards / service / areas) */
.ownerphoto{width:100%;height:100%;min-height:340px;object-fit:cover;border:0;box-shadow:none;align-self:stretch}
@media(max-width:680px){.owner{grid-template-columns:1fr}.ownerphoto{width:100%;height:auto;min-height:0;aspect-ratio:3/2}}
.promise .c{position:relative}
.pico{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;background:var(--orange);margin-bottom:10px}
.pico svg{width:24px;height:24px;fill:#fff}
.svccard{display:grid;grid-template-columns:1fr 1fr;background:#fff;border:1px solid var(--line);box-shadow:6px 6px 0 rgba(32,39,31,.12);text-decoration:none;color:inherit;overflow:hidden;margin-top:8px}
.svccard:hover{border-color:var(--orange)}
.svcimg img{width:100%;height:100%;object-fit:cover;display:block;min-height:250px}
.svctext{padding:28px 30px;align-self:center}
.svctext h3{margin:8px 0 10px;color:var(--bark);font-size:1.42rem}
.svctext p{color:var(--mut);margin:0 0 16px;line-height:1.6}
@media(max-width:680px){.svccard{grid-template-columns:1fr}.svcimg img{min-height:200px}}
.areas{display:grid;grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:12px;margin-top:16px}
.areas a{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--line);border-left:3px solid var(--orange);padding:13px 15px;font-weight:700;color:var(--bark);font-size:.95rem}
.areas a:hover{border-color:var(--orange);box-shadow:3px 3px 0 rgba(32,39,31,.1)}
.areas a::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--orange);flex:none}
.areas a:last-child{background:var(--char);color:#fff;justify-content:center}
.areas a:last-child::before{display:none}
/* phase-6: expanded footer with columns */
.foot-cols{display:grid;grid-template-columns:1.7fr 1fr 1.3fr 1fr;gap:32px;margin-bottom:26px}
.foot-col .foot-h{color:#fff;font-size:.78rem;text-transform:uppercase;letter-spacing:.12em;font-weight:800;margin-bottom:13px}
.foot-col a{display:block;color:#cfc9bb;font-size:.92rem;padding:5px 0;font-weight:400}
.foot-col a:hover{color:var(--orange)}
.foot-about p{color:#9aa79d;font-size:.9rem;margin:12px 0;max-width:320px;line-height:1.55}
.foot-about .foot-brand{margin-bottom:0}
.foot-phone{color:#fff !important;font-weight:800 !important;font-size:1.12rem;display:inline-block;margin-top:4px}
.foot-hours{color:#9aa79d;font-size:.85rem;margin-top:5px}
@media(max-width:760px){.foot-cols{grid-template-columns:1fr 1fr;gap:26px}.foot-about{grid-column:1/-1}}
@media(max-width:460px){.foot-cols{grid-template-columns:1fr}}

/* phase-6: areas hub card image headers */
.areacard-img{aspect-ratio:16/10;overflow:hidden;border-bottom:3px solid var(--orange)}
.areacard-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .25s ease}
.areacard:hover .areacard-img img{transform:scale(1.05)}
.areacard .ahead{border-bottom:1px solid var(--line)}
/* phase-6: blog hub image cards */
.bloggrid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:18px}
@media(max-width:860px){.bloggrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.bloggrid{grid-template-columns:1fr}}
.blogcard{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);box-shadow:5px 5px 0 rgba(32,39,31,.1);text-decoration:none;color:inherit;overflow:hidden;transition:transform .14s,box-shadow .14s}
.blogcard:hover{transform:translate(-3px,-3px);box-shadow:8px 8px 0 var(--orange)}
.blogcard-img{aspect-ratio:16/10;overflow:hidden;border-bottom:3px solid var(--orange)}
.blogcard-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .25s}
.blogcard:hover .blogcard-img img{transform:scale(1.05)}
.blogcard-body{padding:18px 20px 20px;flex:1;display:flex;flex-direction:column}
.blogcard-body h3{margin:0 0 8px;color:var(--bark);font-size:1.1rem;line-height:1.25}
.blogcard-body p{margin:0 0 13px;color:var(--mut);font-size:.92rem;flex:1;line-height:1.5}
.blogcard-body .go{color:var(--orange-d);font-weight:800;font-size:.84rem;text-transform:uppercase;letter-spacing:.04em}
/* phase-6: H4/H5/H6 subheading styles */
h4{font-size:1.05rem;color:var(--bark);margin:18px 0 5px;font-weight:800}
h5{font-size:.97rem;color:var(--bark);margin:14px 0 4px;font-weight:800}
h6{font-size:.86rem;color:var(--mut);margin:13px 0 4px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.post h4,.post h5,.post h6{margin-left:0}

/* phase-6: home Areas-we-serve image tiles */
.areatiles{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:16px}
.areatile{position:relative;aspect-ratio:16/10;overflow:hidden;display:flex;align-items:flex-end;text-decoration:none;border:1px solid var(--line);box-shadow:4px 4px 0 rgba(32,39,31,.12)}
.areatile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
.areatile::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(18,24,16,.86) 0%,rgba(18,24,16,.25) 55%,rgba(18,24,16,0) 100%)}
.areatile span{position:relative;z-index:1;color:#fff;font-weight:800;font-size:1.02rem;line-height:1.15;padding:0 0 12px 14px;border-left:4px solid var(--orange);margin-left:12px}
.areatile:hover img{transform:scale(1.07)}
.areatile:hover{box-shadow:7px 7px 0 var(--orange)}
.areatile.all{background:var(--char);align-items:center;justify-content:center;color:#fff;font-weight:800;text-transform:uppercase;letter-spacing:.04em;font-size:.9rem;text-align:center}
.areatile.all img,.areatile.all::after{display:none}
@media(max-width:860px){.areatiles{grid-template-columns:repeat(3,1fr)}}
@media(max-width:560px){.areatiles{grid-template-columns:repeat(2,1fr)}}
/* phase-6: proof-box attribution avatar sizing */
.proof .attrib .pf-av{width:32px;height:32px;border-width:2px}
/* phase-6: footer address + daily hours */
.foot-addr{color:#9aa79d;font-size:.88rem;font-style:normal;margin-top:10px;line-height:1.5}
.foot-hours{margin-top:12px}
.foot-hours strong{display:block;color:#fff;font-size:.74rem;text-transform:uppercase;letter-spacing:.1em;margin-bottom:6px}
.foot-hours span{display:block;color:#9aa79d;font-size:.85rem;line-height:1.75}
/* phase-6: about page "what sets us apart" card grid */
.apoints{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:20px}
.apoint{background:#fff;border:1px solid var(--line);border-top:4px solid var(--orange);padding:22px 24px 24px;box-shadow:5px 5px 0 rgba(32,39,31,.1)}
.apoint h3{margin:0 0 8px;color:var(--bark);font-size:1.12rem}
.apoint p{margin:0;color:var(--mut);line-height:1.6}
@media(max-width:680px){.apoints{grid-template-columns:1fr}}
/* phase-6: footer license line */
.foot-lic{color:#9aa79d;font-size:.82rem;margin-top:10px;line-height:1.5}
/* phase-6: city localized photo + content row */
.localrow{display:grid;grid-template-columns:1.1fr .9fr;gap:30px;align-items:center;margin-top:10px}
.localrow-text p{margin:0 0 14px}
.localrow-img{margin:0}
.localrow-img img{width:100%;border:1px solid var(--line);box-shadow:6px 6px 0 rgba(32,39,31,.12);display:block}
.localrow-img figcaption{color:var(--mut);font-size:.84rem;margin-top:9px;text-align:center}
@media(max-width:680px){.localrow{grid-template-columns:1fr;gap:18px}}
/* phase-6: footer email + HTML sitemap grid */
.foot-email{display:inline-block;color:#cfc9bb !important;font-size:.9rem;margin-top:4px;font-weight:400}
.foot-email:hover{color:var(--orange) !important}
.sitemapgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:30px;margin-top:18px}
.sitemapgrid h2{font-size:1.05rem;margin-bottom:10px}
.sitemapgrid ul{list-style:none;margin:0;padding:0}
.sitemapgrid li{margin:7px 0}
.sitemapgrid a{font-weight:700}
