/* DaytonLandClearing.com — shared stylesheet
   Palette: Pine #1E2B20 | Bark #33291E | Moss #5A7052 | Field #F1EFE6 | Safety #E8650F
   Type: Barlow Condensed (display) / Source Sans 3 (body) */

:root{
  --pine:#1E2B20;
  --pine-soft:#2C3E2E;
  --bark:#33291E;
  --moss:#5A7052;
  --moss-pale:#EDF0E6;
  --field:#F1EFE6;
  --paper:#FFFFFF;
  --safety:#E8650F;
  --safety-dark:#C4520A;
  --ink:#26221B;
  --rule:#D8D4C6;
  --max:1080px;
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

body{
  font-family:'Source Sans 3',system-ui,-apple-system,sans-serif;
  color:var(--ink);
  background:var(--paper);
  line-height:1.6;
  font-size:1.05rem;
}

h1,h2,h3,.display{
  font-family:'Barlow Condensed',system-ui,sans-serif;
  font-weight:700;
  line-height:1.08;
  color:var(--pine);
  text-transform:uppercase;
  letter-spacing:.01em;
}
h1{font-size:clamp(2.2rem,5.5vw,3.6rem)}
h2{font-size:clamp(1.6rem,3.5vw,2.3rem);margin-bottom:.6rem}
h3{font-size:1.25rem;margin-bottom:.35rem}
p{margin-bottom:1rem}
a{color:var(--safety-dark)}
ul{margin:0 0 1rem 1.2rem}
li{margin-bottom:.4rem}

.wrap{max-width:var(--max);margin:0 auto;padding:0 1.25rem}

/* ---------- top bar + nav ---------- */
.topbar{background:var(--pine);color:#EDEAE0;font-size:.9rem;padding:.35rem 0}
.topbar .wrap{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.topbar a{color:#fff;font-weight:600;text-decoration:none}

header.site{background:var(--paper);border-bottom:3px solid var(--pine);position:sticky;top:0;z-index:50}
header.site .wrap{display:flex;align-items:center;justify-content:space-between;padding-top:.7rem;padding-bottom:.7rem;gap:1rem;flex-wrap:wrap}
.logo{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:1.5rem;text-transform:uppercase;color:var(--pine);text-decoration:none;letter-spacing:.02em}
.logo span{color:var(--safety)}
nav.main{display:flex;gap:1.1rem;flex-wrap:wrap;align-items:center}
nav.main a{color:var(--pine);text-decoration:none;font-weight:600;font-size:.95rem}
nav.main a:hover,nav.main a:focus{color:var(--safety-dark)}
.btn{
  display:inline-block;background:var(--safety);color:#fff;font-family:'Barlow Condensed',sans-serif;
  font-weight:700;text-transform:uppercase;letter-spacing:.04em;font-size:1.05rem;
  padding:.65rem 1.4rem;border-radius:4px;text-decoration:none;border:0;cursor:pointer;
}
.btn:hover,.btn:focus{background:var(--safety-dark)}
.btn.ghost{background:transparent;border:2px solid #fff;color:#fff}
.btn.ghost:hover{background:rgba(255,255,255,.12)}

/* ---------- hero ---------- */
.hero{
  background:linear-gradient(160deg,var(--pine) 0%,var(--pine-soft) 70%,#3A4A38 100%);
  color:#F3F1E8;padding:3.2rem 0 2.6rem;
}
.hero h1{color:#fff;max-width:22ch}
.hero .kicker{
  font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;letter-spacing:.14em;
  color:#F0A263;font-weight:600;font-size:.95rem;margin-bottom:.5rem;display:block;
}
.hero p.lede{font-size:1.15rem;max-width:56ch;margin:1rem 0 1.4rem;color:#E4E2D6}
.hero .cta-row{display:flex;gap:.8rem;flex-wrap:wrap}

/* county band — signature element */
.county-band{background:var(--bark);color:#EFE9DC;padding:.55rem 0;border-top:4px solid var(--safety)}
.county-band .wrap{display:flex;gap:.4rem 1.6rem;flex-wrap:wrap;justify-content:center;
  font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;letter-spacing:.08em;font-size:.95rem}
.county-band a{color:#EFE9DC;text-decoration:none}
.county-band a:hover{color:#F0A263}
.county-band .sep{color:var(--safety)}

/* ---------- sections ---------- */
section{padding:2.6rem 0}
section.alt{background:var(--field)}
.grid{display:grid;gap:1.2rem}
@media(min-width:720px){
  .grid.cols-2{grid-template-columns:1fr 1fr}
  .grid.cols-3{grid-template-columns:repeat(3,1fr)}
}
.card{background:var(--paper);border:1px solid var(--rule);border-top:4px solid var(--moss);border-radius:6px;padding:1.2rem}
.card.svc{border-top-color:var(--safety)}
.card h3 a{color:var(--pine);text-decoration:none}
.card h3 a:hover{color:var(--safety-dark)}
.card p{margin-bottom:.4rem;font-size:.98rem}

.steps{counter-reset:step;display:grid;gap:1rem}
@media(min-width:720px){.steps{grid-template-columns:repeat(4,1fr)}}
.step{background:var(--paper);border:1px solid var(--rule);border-radius:6px;padding:1rem}
.step::before{
  counter-increment:step;content:counter(step,decimal-leading-zero);
  font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:1.6rem;color:var(--safety);display:block;
}

/* ---------- estimator ---------- */
.estimator{background:var(--pine);color:#F0EEE4;border-radius:8px;padding:1.6rem;border-top:6px solid var(--safety)}
.estimator h2,.estimator h3{color:#fff}
.estimator label{display:block;font-weight:600;margin:.7rem 0 .25rem;font-size:.95rem}
.estimator input,.estimator select{
  width:100%;padding:.55rem .7rem;border-radius:4px;border:1px solid #52604F;background:#fff;color:var(--ink);font-size:1rem;
}
.estimator .out{
  margin-top:1rem;background:rgba(255,255,255,.08);border:1px dashed #6E7F6A;border-radius:6px;
  padding:.9rem 1rem;font-size:1.05rem;
}
.estimator .out strong{font-family:'Barlow Condensed',sans-serif;font-size:1.6rem;color:#F0A263;letter-spacing:.02em}
.small{font-size:.85rem;color:#B9C0B2}

/* ---------- forms ---------- */
form.lead{display:grid;gap:.75rem;background:var(--paper);border:1px solid var(--rule);border-radius:8px;padding:1.4rem;border-top:6px solid var(--safety)}
form.lead label{font-weight:600;font-size:.92rem}
form.lead input,form.lead select,form.lead textarea{
  width:100%;padding:.6rem .7rem;border:1px solid #BDB9AA;border-radius:4px;font-size:1rem;font-family:inherit;
}
form.lead textarea{min-height:90px}

/* ---------- faq ---------- */
.faq details{border:1px solid var(--rule);border-radius:6px;background:var(--paper);margin-bottom:.6rem;padding:.2rem .9rem}
.faq summary{font-weight:700;cursor:pointer;padding:.6rem 0;font-family:'Barlow Condensed',sans-serif;font-size:1.15rem;color:var(--pine);text-transform:uppercase;letter-spacing:.02em}
.faq details[open]{border-left:4px solid var(--safety)}
.faq details p{padding-bottom:.8rem}

/* ---------- tables ---------- */
table{width:100%;border-collapse:collapse;margin:1rem 0;font-size:.98rem}
th,td{border:1px solid var(--rule);padding:.55rem .7rem;text-align:left}
th{background:var(--moss-pale);font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;letter-spacing:.04em;color:var(--pine)}

/* ---------- footer ---------- */
footer.site{background:var(--pine);color:#CBD2C6;padding:2.4rem 0 1.6rem;font-size:.95rem}
footer.site h3{color:#fff;font-size:1.05rem}
footer.site a{color:#E8E6DA;text-decoration:none}
footer.site a:hover{color:#F0A263}
footer.site .grid{gap:1.6rem}
footer .fineprint{border-top:1px solid #3C4B3A;margin-top:1.6rem;padding-top:1rem;font-size:.83rem;color:#9AA694}

.crumb{font-size:.88rem;padding:.8rem 0 0;color:#6C685C}
.crumb a{color:var(--moss);text-decoration:none}

:focus-visible{outline:3px solid var(--safety);outline-offset:2px}
