/*
Theme Name: Belt Lawn & Landscape
Theme URI: https://beltlandscape.com
Author: MarketFlow Strategies
Description: Custom theme for Belt Lawn & Landscape, LLC.
Version: 1.4.4
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: belt
*/

body{margin:0;background:#F6F1E6}
a{color:#007A37}a:hover{color:#005C29}
.navlink{color:#F6F1E6;text-decoration:none}
.navlink:hover{color:#FFFFFF;text-decoration:underline}
.card-link{text-decoration:none;color:inherit}
.pg-slide{opacity:0;animation:pgfade 76s linear infinite}
@keyframes pgfade{0%{opacity:1}4.474%{opacity:1}5.526%{opacity:0}99.211%{opacity:0}100%{opacity:1}}
@media (prefers-reduced-motion: reduce){.pg-slide{animation:none}.pg-s1{opacity:1}}
.sb-slide{opacity:0;animation:sbfade 15s linear infinite}
.sb-s1{animation-delay:0s}.sb-s2{animation-delay:-10s}.sb-s3{animation-delay:-5s}
@keyframes sbfade{0%{opacity:1}30%{opacity:1}33.4%{opacity:0}96%{opacity:0}100%{opacity:1}}
@media (prefers-reduced-motion: reduce){.sb-slide{animation:none}.sb-s1{opacity:1}}
.hero-bg{background-color:#241E20;background-image:linear-gradient(90deg,rgba(26,22,23,0.84) 0%,rgba(26,22,23,0.62) 55%,rgba(26,22,23,0.38) 100%),url(assets/img/hero-house.jpg);background-size:cover;background-position:center}
@media (max-width:760px){.hide-sm{display:none !important}}

:root{--bg:#F6F1E6;--ink:#1E1F1C;--charcoal:#241E20;--green:#007A37;--orange:#F08A24;--line:#E4DCCB;color-scheme:light}
html{scroll-behavior:smooth;background:var(--bg)}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}}
body{background:var(--bg);color:var(--ink)}
*,*::before,*::after{box-sizing:border-box}
img,video,iframe{max-width:100%}
section[id],#quote{scroll-margin-top:120px}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--orange);outline-offset:2px}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
/* quote form */
.q-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.q-step{border:0;margin:0;padding:0;display:flex;flex-direction:column;gap:14px;min-width:0}
.q-step[hidden]{display:none}
.q-legend{font-size:15px;font-weight:600;padding:0;margin-bottom:2px}
.q-pills{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.q-pill{position:relative;display:flex;align-items:center;min-height:48px;padding:10px 12px;border-radius:10px;border:2px solid #CFC5AF;background:#FFFFFF;color:#1E1F1C;font-size:15px;font-weight:600;cursor:pointer;line-height:1.25}
.q-pill input{position:absolute;opacity:0;pointer-events:none}
.q-pill.on{border-color:#007A37;background:#007A37;color:#FFFFFF}
.q-pill:focus-within{outline:3px solid var(--orange);outline-offset:2px}
.q-label{font-size:15px;font-weight:600;display:flex;flex-direction:column;gap:6px}
.q-label span.opt{font-weight:400;color:#55594F;font-size:13px}
.q-input{font:inherit;font-size:16px;padding:13px 14px;border-radius:10px;border:2px solid #CFC5AF;background:#FFFFFF;color:#1E1F1C;width:100%}
.q-input:focus{border-color:#007A37;outline:none}
textarea.q-input{min-height:96px;resize:vertical}
.q-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.q-btn{font:inherit;font-size:17px;font-weight:700;padding:16px;border-radius:10px;border:none;background:#F08A24;color:#1E1F1C;cursor:pointer}
.q-btn:hover{background:#E07A14}
.q-back{font:inherit;font-size:15px;font-weight:700;padding:14px 18px;border-radius:10px;border:2px solid #241E20;background:#FFFFFF;color:#241E20;cursor:pointer}
.q-actions{display:flex;gap:10px}.q-actions .q-btn{flex:1}
.q-err{margin:0;padding:10px 12px;border-radius:8px;background:#FDECEA;color:#8A1C12;font-size:14px;font-weight:600}
.q-err[hidden]{display:none}
.q-note{font-size:13px;color:#55594F;text-align:center;margin:0}
.q-done{display:flex;flex-direction:column;gap:12px;text-align:left}
/* service area town buttons */
.town-pill{font:inherit;font-size:16px;font-weight:600;padding:10px 16px;min-height:44px;border-radius:999px;border:1px solid #CFC5AF;background:#FFFFFF;color:#1E1F1C;cursor:pointer;transition:background .15s,border-color .15s,color .15s}
.town-pill:hover{border-color:#007A37;color:#007A37}
.town-pill.on,.town-pill.on:hover{background:#007A37;border-color:#007A37;color:#FFFFFF}
.town-pill:focus-visible{outline:3px solid var(--orange);outline-offset:2px}
@media (max-width:760px){
  .hide-sm{display:none !important}
  .hero-h1{font-size:clamp(38px,11.5vw,52px) !important;overflow-wrap:break-word}
  h2{font-size:38px !important}
  .hero-form h2{font-size:28px !important}
  .q-row{grid-template-columns:minmax(0,1fr)}
  .pg-grid{grid-template-columns:minmax(0,1fr) !important}
  .pg-slides,.pg-wide{height:240px !important}
  .pg-reel{height:auto !important;aspect-ratio:9/16;width:100%;max-width:340px;justify-self:center}
  .sb-slides{height:300px !important}
}
@media (max-width:359px){.q-pills{grid-template-columns:minmax(0,1fr)}}

/* ---------- blog ---------- */
.blog-wrap{max-width:1200px;margin:0 auto;padding:0 24px}
.blog-narrow{max-width:780px}
.blog-hero{padding:72px 0 40px;border-bottom:1px solid var(--line)}
.blog-eyebrow{display:block;font-size:14px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:#007A37;margin-bottom:12px}
.blog-h1,.post-h1{margin:0;font-family:'Barlow Condensed',sans-serif;font-weight:800;line-height:1;text-transform:uppercase;color:#241E20}
.blog-h1{font-size:64px;max-width:900px}
.blog-lede{margin:18px 0 0;font-size:19px;line-height:1.55;color:#3D4038;max-width:680px}
.blog-list{padding:56px 0 88px}
.blog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:28px}
.blog-card{background:#FFFFFF;border:1px solid var(--line);border-radius:14px;overflow:hidden;display:flex;flex-direction:column;transition:transform .15s ease,box-shadow .15s ease}
.blog-card:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(36,30,32,.10)}
.blog-card-img{display:block;aspect-ratio:16/10;background:#CFC5AF;overflow:hidden}
.blog-card-img img{width:100%;height:100%;object-fit:cover;display:block}
.blog-card-body{padding:22px 24px 26px;display:flex;flex-direction:column;gap:10px;flex:1}
.blog-cat{align-self:flex-start;font-size:12px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:#007A37;text-decoration:none}
.blog-card-title{margin:0;font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:28px;line-height:1.05;text-transform:uppercase;color:#241E20}
.blog-card-title a{color:inherit;text-decoration:none}
.blog-card-title a:hover{color:#007A37}
.blog-card-excerpt{margin:0;font-size:16px;line-height:1.55;color:#3D4038}
.blog-meta{margin:auto 0 0;font-size:14px;color:#55594F}
.blog-pager{margin-top:40px;display:flex;gap:8px;flex-wrap:wrap}
.blog-pager .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0 14px;border-radius:10px;border:2px solid #CFC5AF;background:#FFFFFF;color:#241E20;font-weight:700;text-decoration:none}
.blog-pager .current{background:#241E20;border-color:#241E20;color:#FFFFFF}
.blog-empty{font-size:18px}
/* article */
.post-head{padding:56px 0 28px}
.post-head .blog-cat{display:inline-block;margin:18px 0 12px}
.post-crumbs{font-size:14px;color:#55594F}
.post-crumbs a{color:#55594F}
.post-h1{font-size:56px}
.post-head .blog-meta{display:block;margin-top:16px}
.post-figure{margin:0 0 36px;border-radius:16px;overflow:hidden;aspect-ratio:16/9;background:#CFC5AF}
.post-figure img{width:100%;height:100%;object-fit:cover;display:block}
.post-body{font-size:18px;line-height:1.7;color:#1E1F1C}
.post-body > *{margin:0 0 1.15em}
.post-body h2{font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:36px;line-height:1.05;text-transform:uppercase;color:#241E20;margin:1.6em 0 .5em}
.post-body h3{font-size:21px;font-weight:700;color:#241E20;margin:1.4em 0 .4em}
.post-body ul,.post-body ol{padding-left:1.3em}
.post-body li{margin-bottom:.45em}
.post-body a{color:#007A37;font-weight:600}
.post-body strong{color:#241E20}
.post-body blockquote{margin:1.4em 0;padding:16px 22px;border-left:4px solid #009343;background:#FFFFFF;border-radius:0 10px 10px 0}
.post-body img{border-radius:12px;height:auto}
.post-body table{width:100%;border-collapse:collapse;font-size:16px;background:#FFFFFF}
.post-body th,.post-body td{border:1px solid var(--line);padding:10px 12px;text-align:left}
.post-cta{margin:48px 0 88px;padding:28px;border-radius:16px;background:#241E20;color:#E8E2D6;display:flex;flex-wrap:wrap;gap:20px;align-items:center;justify-content:space-between}
.post-cta h2{margin:0 0 6px;font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:32px;text-transform:uppercase;color:#FFFFFF;line-height:1}
.post-cta p{margin:0;font-size:16px}
.post-cta-btns{display:flex;flex-wrap:wrap;gap:12px}
.btn-orange,.btn-line{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 22px;border-radius:10px;font-weight:700;text-decoration:none}
.btn-orange{background:#F08A24;color:#1E1F1C}
.btn-orange:hover{background:#E07A14}
.btn-line{border:2px solid #E8E2D6;color:#FFFFFF}
.blog-more{border-top:1px solid var(--line);padding-top:56px}
.blog-more-h{margin:0 0 24px;font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:40px;text-transform:uppercase;color:#241E20}
.blog-band{background:#241E20;color:#E8E2D6;padding:64px 0}
.blog-band-in{display:flex;flex-wrap:wrap;gap:24px;align-items:center;justify-content:space-between}
.blog-band h2{margin:0 0 8px;font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:44px;text-transform:uppercase;color:#FFFFFF;line-height:1}
.blog-band p{margin:0;font-size:17px}
@media (max-width:760px){
  .blog-hero{padding:48px 0 28px}
  .blog-h1{font-size:44px !important}
  .post-h1{font-size:40px !important}
  .blog-grid{grid-template-columns:minmax(0,1fr)}
  .post-body h2{font-size:30px !important}
  .post-cta h2,.blog-band h2{font-size:30px !important}
  .blog-more-h{font-size:32px !important}
}

/* ---------- service pages ---------- */
.svc-hero{padding:48px 0 72px;border-bottom:1px solid var(--line)}
.svc-hero-in{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:56px;align-items:center}
.svc-hero-copy{display:flex;flex-direction:column;gap:18px}
.svc-hero-copy .blog-eyebrow{margin:10px 0 0}
.svc-h1{margin:0;font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:60px;line-height:1;text-transform:uppercase;color:#241E20}
.svc-lede{margin:0;font-size:19px;line-height:1.6;color:#3D4038}
.btn-dark{border-color:#241E20;color:#241E20}
.btn-dark:hover{background:#241E20;color:#FFFFFF}
.svc-trust{list-style:none;margin:4px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px 20px;font-size:15px;font-weight:600;color:#241E20}
.svc-hero-img{margin:0;border-radius:16px;overflow:hidden;aspect-ratio:4/3;background:#CFC5AF}
.svc-hero-img img{width:100%;height:100%;object-fit:cover;display:block}
.svc-block{padding:80px 0}
.svc-h2{margin:0 0 32px;font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:48px;line-height:1;text-transform:uppercase;color:#241E20}
.svc-incl{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}
.svc-incl-item{background:#FFFFFF;border:1px solid var(--line);border-radius:14px;padding:24px;border-top:4px solid #F08A24}
.svc-incl-item h3{margin:0 0 8px;font-size:19px;font-weight:700;color:#241E20}
.svc-incl-item p{margin:0;font-size:16px;line-height:1.55;color:#3D4038}
.svc-photos-wrap{background:#E9E1D0}
.svc-photos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.svc-photos figure{margin:0;border-radius:14px;overflow:hidden;aspect-ratio:4/3;background:#CFC5AF}
.svc-photos img{width:100%;height:100%;object-fit:cover;display:block}
.svc-more{margin:24px 0 0;font-weight:700}
.svc-more a{color:#007A37}
.svc-quote-wrap{background:#241E20;color:#E8E2D6}
.svc-quote-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:56px;align-items:center}
.svc-quote-copy .svc-h2{color:#FFFFFF;margin-bottom:16px}
.svc-quote-copy .blog-eyebrow{color:#F2B66E}
.svc-quote-copy p{margin:0 0 14px;font-size:17px;line-height:1.6}
.svc-quote-copy a{color:#FFFFFF;font-weight:700}
.svc-faq{display:flex;flex-direction:column;gap:12px}
.svc-faq details{background:#FFFFFF;border:1px solid var(--line);border-radius:12px;padding:0 22px}
.svc-faq summary{cursor:pointer;list-style:none;padding:18px 0;font-size:18px;font-weight:700;color:#241E20;display:flex;justify-content:space-between;gap:16px}
.svc-faq summary::-webkit-details-marker{display:none}
.svc-faq summary::after{content:'+';font-size:24px;line-height:1;color:#007A37}
.svc-faq details[open] summary::after{content:'–'}
.svc-faq details p{margin:0 0 18px;font-size:17px;line-height:1.6;color:#3D4038}
.svc-others{border-top:1px solid var(--line);padding-top:64px}
.svc-other-list{display:flex;flex-wrap:wrap;gap:10px}
.svc-other-list a{display:inline-flex;align-items:center;min-height:44px;padding:10px 16px;border-radius:10px;border:2px solid #CFC5AF;background:#FFFFFF;color:#241E20;font-weight:700;text-decoration:none}
.svc-other-list a:hover{border-color:#007A37;color:#007A37}
.svc-areas{margin:28px 0 0;font-size:15px;color:#55594F}
@media (max-width:900px){
  .svc-hero-in,.svc-quote-in{grid-template-columns:minmax(0,1fr);gap:32px}
  .svc-hero-img{order:-1}
}
@media (max-width:760px){
  .svc-hero{padding:28px 0 48px}
  .svc-h1{font-size:40px !important}
  .svc-h2{font-size:34px !important}
  .svc-block{padding:56px 0}
  .svc-photos{grid-template-columns:minmax(0,1fr)}
}
.svc-photos-1{grid-template-columns:minmax(0,1fr);max-width:760px}
.svc-photos-2{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:760px){.svc-photos-2{grid-template-columns:minmax(0,1fr)}}

/* ---------- free quote page ---------- */
.fq-hero{padding:56px 0 88px;border-bottom:1px solid var(--line)}
.fq-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:56px;align-items:start}
.fq-copy{display:flex;flex-direction:column;gap:20px;padding-top:12px}
.fq-steps{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:14px;counter-reset:fq}
.fq-steps li{counter-increment:fq;position:relative;padding:16px 18px 16px 64px;background:#FFFFFF;border:1px solid var(--line);border-radius:12px;display:flex;flex-direction:column;gap:4px}
.fq-steps li::before{content:counter(fq);position:absolute;left:18px;top:16px;width:32px;height:32px;border-radius:50%;background:#241E20;color:#FFFFFF;font-weight:700;display:flex;align-items:center;justify-content:center}
.fq-steps strong{font-size:17px;color:#241E20}
.fq-steps span{font-size:15px;line-height:1.5;color:#3D4038}
.fq-call{margin:0;font-size:17px}
.fq-call a{color:#007A37;font-weight:700}
.fq-form{position:sticky;top:24px}
.fq-reviews{background:#E9E1D0}
@media (max-width:900px){
  .fq-in{grid-template-columns:minmax(0,1fr);gap:32px}
  .fq-form{position:static;order:-1}
  .fq-copy{padding-top:0}
}
@media (max-width:760px){.fq-hero{padding:28px 0 56px}}
