/* Handy House Calls - trust + urgency local service identity. */
:root{
  --hm-ink:#131c2b; --hm-slate:#4c5a68; --hm-slate2:#5f6b78;
  --hm-bg:#f5f7f8; --hm-paper:#ffffff; --hm-accent:#c78a1e; --hm-accent2:#8a5f12; --hm-navy:#131c2b; --hm-tint:#f3e6c9;
  --hm-rule:#dde2e6;
  --hm-head:'Barlow Condensed',sans-serif; --hm-sans:'Inter',sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--hm-sans);color:var(--hm-ink);background:var(--hm-bg);line-height:1.6}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
h1,h2,h3{font-family:var(--hm-head);font-weight:700;letter-spacing:.01em;line-height:1.14}
.hm-skip{position:absolute;left:-999px;top:0;background:var(--hm-ink);color:#fff;padding:10px 18px;z-index:999}
.hm-skip:focus{left:16px;top:16px}
:focus-visible{outline:3px solid var(--hm-accent2);outline-offset:2px}
.hm-reveal{opacity:0;transform:translateY(8px);transition:opacity .5s,transform .5s}
.hm-reveal.in-view{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.hm-reveal{opacity:1;transform:none;transition:none}}
.hm-wrap{max-width:1180px;margin:0 auto;padding:0 26px}

.hm-topbar{background:var(--hm-navy);color:#d9e0e6;font-size:.82rem;padding:8px 0}
.hm-topbar .hm-wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}
.hm-topbar a{color:#d9e0e6}
.hm-topbar a:hover{color:#fff}

.hm-mast{border-bottom:1px solid var(--hm-rule);padding:16px 0;background:var(--hm-paper)}
.hm-mast .hm-wrap{display:flex;align-items:center;justify-content:space-between}
.hm-brand{font-family:var(--hm-head);font-weight:700;font-size:1.6rem;color:var(--hm-navy)}
.hm-nav{display:flex;gap:22px;list-style:none;font-size:.9rem;font-weight:500}
.hm-nav a{color:var(--hm-slate)}
.hm-nav a:hover,.hm-nav a[aria-current]{color:var(--hm-accent2)}
.hm-cta{background:var(--hm-accent2);color:#fff;padding:10px 18px;border-radius:4px;font-weight:700;font-size:.88rem}
.hm-cta:hover{background:#6f4c0f}
.hm-navtoggle{display:none;background:none;border:1px solid var(--hm-rule);padding:8px 14px;font:inherit;border-radius:4px}
.hm-navpanel{display:none}
.hm-navpanel.open{display:flex;flex-direction:column;border-bottom:1px solid var(--hm-rule)}
.hm-navpanel a{padding:14px 26px;border-bottom:1px solid var(--hm-rule)}

.hm-hero{position:relative}
.hm-hero figure{aspect-ratio:16/8;overflow:hidden}
.hm-hero img{width:100%;height:100%;object-fit:cover;filter:brightness(.48)}
.hm-hero .content{position:absolute;left:0;right:0;bottom:0;max-width:1180px;margin:0 auto;padding:0 26px 46px;z-index:2}
.hm-kicker{display:inline-block;background:var(--hm-accent2);color:#fff;font-size:.78rem;font-weight:700;padding:6px 14px;border-radius:4px;margin-bottom:16px}
.hm-hero h1{font-size:clamp(2rem,4.4vw,3.1rem);color:#000;max-width:20ch}
.hm-hero p{margin-top:14px;color:#000;max-width:56ch;font-size:1.02rem;font-family:var(--hm-sans)}
.hm-herobtns{margin-top:22px;display:flex;gap:12px;flex-wrap:wrap}
.hm-btn{display:inline-block;background:var(--hm-accent2);color:#fff;padding:13px 26px;border-radius:4px;font-weight:700;font-size:.94rem}
.hm-btn:hover{background:#6f4c0f}
.hm-btnghost{display:inline-block;border:1.5px solid #000;color:#000;padding:12px 24px;border-radius:4px;font-weight:700;font-size:.94rem}
.hm-content{padding: 20px}
.hm-btnghost:hover{background:rgba(255,255,255,.14)}

.hm-uspsec{padding:50px 0;border-bottom:1px solid var(--hm-rule)}
.hm-uspsec h2{font-size:1.7rem;margin-bottom:26px;text-align:center}
.hm-uspgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;background:var(--hm-rule)}
.hm-uspitem{background:var(--hm-paper);padding:26px}
.hm-uspitem h3{font-family:var(--hm-sans);font-size:1.02rem;margin-bottom:10px;color:var(--hm-accent2);font-weight:700}
.hm-uspitem p{color:var(--hm-slate);font-size:.9rem}

.hm-stepsec{padding:50px 0;border-bottom:1px solid var(--hm-rule)}
.hm-stepsec h2{font-size:1.7rem;margin-bottom:26px;text-align:center}
.hm-stepgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.hm-stepitem{text-align:center;padding:10px}
.hm-stepitem .n{font-family:var(--hm-head);color:var(--hm-accent2);font-size:1.9rem;font-weight:700;margin-bottom:8px}
.hm-stepitem h3{font-family:var(--hm-sans);font-size:1rem;margin-bottom:8px;font-weight:700}
.hm-stepitem p{color:var(--hm-slate);font-size:.88rem}

.hm-svcpreview{padding:50px 0;border-bottom:1px solid var(--hm-rule)}
.hm-svcpreview h2{font-size:1.7rem;margin-bottom:26px;text-align:center}
.hm-svcgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:var(--hm-rule)}
.hm-svcitem{background:var(--hm-paper);padding:26px;display:flex;flex-direction:column}
.hm-svcitem h3{font-size:1.3rem;margin-bottom:8px}
.hm-svcitem .dek{color:var(--hm-slate);font-size:.88rem;margin-bottom:14px}
.hm-svcitem ul{list-style:none;font-size:.88rem;color:var(--hm-ink);margin-top:auto}
.hm-svcitem li{padding:6px 0;border-top:1px solid var(--hm-rule)}
.hm-svcitem li:first-child{border-top:none}

.hm-photorow{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:var(--hm-rule)}
.hm-photorow figure{aspect-ratio:4/3;overflow:hidden;background:var(--hm-paper)}
.hm-photorow img{width:100%;height:100%;object-fit:cover}

.hm-ctasec{background:var(--hm-navy);color:#fff;padding:52px 0;text-align:center}
.hm-ctasec h2{color:#fff;font-size:1.7rem;margin-bottom:14px}
.hm-ctasec p{color:#c8d0d8;max-width:56ch;margin:0 auto 22px;font-family:var(--hm-sans)}

.hm-areasec{padding:44px 0;border-bottom:1px solid var(--hm-rule)}
.hm-areasec h2{font-size:1.5rem;margin-bottom:14px}
.hm-areasec p{color:var(--hm-slate);max-width:70ch}

.hm-why{display:grid;grid-template-columns:repeat(2,1fr);gap:2px;background:var(--hm-rule)}
.hm-why div{background:var(--hm-paper);padding:24px}
.hm-why h3{font-family:var(--hm-sans);font-size:1.02rem;margin-bottom:8px;color:var(--hm-accent2);font-weight:700}
.hm-why p{color:var(--hm-slate);font-size:.9rem}
.hm-faq{border-bottom:1px solid var(--hm-rule)}
.hm-faq summary{list-style:none;cursor:pointer;padding:16px 0;display:flex;justify-content:space-between;gap:16px;font-family:var(--hm-head);font-weight:700;font-size:1.14rem}
.hm-faq summary::-webkit-details-marker{display:none}
.hm-faq summary::after{content:"+";color:var(--hm-accent2)}
.hm-faq[open] summary::after{content:"-"}
.hm-faq p{color:var(--hm-slate);padding-bottom:14px}
.hm-cols{display:grid;grid-template-columns:.85fr 1.15fr;gap:32px}
.hm-note{background:var(--hm-tint);padding:24px;border-radius:6px}
.hm-note p{color:var(--hm-ink);font-size:.92rem;margin-bottom:8px}
.hm-field{margin-bottom:14px}
.hm-field label{display:block;font-size:.84rem;font-weight:700;margin-bottom:6px}
.hm-field input,.hm-field textarea{width:100%;border:1.5px solid var(--hm-rule);padding:11px 12px;font:inherit;font-size:1rem;background:var(--hm-paper);border-radius:4px}
.hm-field textarea{min-height:100px;resize:vertical}
.hm-two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.hm-honeypot{position:absolute;left:-9999px}
.hm-submit{width:100%;min-height:46px;border:0;background:var(--hm-accent2);color:#fff;font:inherit;font-weight:700;font-size:.92rem;cursor:pointer;margin-top:4px;border-radius:4px}
.hm-submit:hover{background:#6f4c0f}
.hm-status{margin-top:8px;font-size:.86rem;min-height:1.1em}
.hm-status.ok{color:var(--hm-accent2)}
.hm-status.err{color:#b3261e}
.hm-fine{margin-top:10px;font-size:.76rem;color:var(--hm-slate)}
.hm-fine a{color:var(--hm-accent2);text-decoration:underline}
.hm-prose h2{font-family:var(--hm-head);font-size:1.4rem;margin:20px 0 8px}
.hm-prose p{color:var(--hm-slate);margin-bottom:12px;max-width:74ch}
.hm-prose ul{color:var(--hm-slate);margin:0 0 12px 20px}
.hm-foot{border-top:1px solid var(--hm-rule);padding:30px 0;background:var(--hm-paper)}
.hm-footgrid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:24px;margin-bottom:22px}
.hm-footgrid h4{font-family:var(--hm-head);font-size:1.05rem;margin-bottom:12px;color:var(--hm-accent2)}
.hm-footgrid ul{list-style:none;font-size:.88rem}
.hm-footgrid li{margin-bottom:8px}
.hm-footgrid li a{color:var(--hm-slate)}
.hm-footgrid li a:hover{color:var(--hm-accent2)}
.hm-footline{border-top:1px solid var(--hm-rule);padding-top:16px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:.8rem;color:var(--hm-slate)}
.hm-credits{margin-top:8px;font-size:.64rem;color:var(--hm-slate2)}
@media (max-width:1000px){.hm-uspgrid,.hm-stepgrid,.hm-svcgrid,.hm-photorow{grid-template-columns:1fr 1fr}.hm-why,.hm-cols,.hm-footgrid{grid-template-columns:1fr}}
@media (max-width:640px){.hm-nav{display:none}.hm-cta{display:none}.hm-navtoggle{display:block}.hm-uspgrid,.hm-stepgrid,.hm-svcgrid,.hm-photorow{grid-template-columns:1fr}.hm-two{grid-template-columns:1fr}.hm-field input,.hm-field textarea{font-size:16px}}
