
:root{
  --green:#1F3D2B; --green-2:#2C5540; --bark:#4A3728; --gold:#C99A3C;
  --paper:#FAF7F0; --ink:#22251F; --muted:#5C5A50; --safety:#C6511F;
  --line:#E4DECE; --radius:10px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  color:var(--ink);background:var(--paper);line-height:1.65;font-size:17px}
h1,h2,h3,.brand{font-family:"Bitter",Georgia,"Times New Roman",serif}
h1{font-size:clamp(1.7rem,4.5vw,2.6rem);line-height:1.15;color:var(--green)}
h2{font-size:clamp(1.3rem,3vw,1.7rem);color:var(--green);margin:2.2rem 0 .8rem}
h3{font-size:1.1rem;color:var(--bark);margin:1.4rem 0 .4rem}
p{margin:.8rem 0}
a{color:var(--green-2)}
.wrap{max-width:960px;margin:0 auto;padding:0 20px}
/* header */
header{position:sticky;top:0;z-index:50;background:var(--green);color:#fff;
  box-shadow:0 2px 8px rgba(0,0,0,.25)}
.topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0}
.brand{font-weight:700;font-size:1.05rem;color:#fff;text-decoration:none;line-height:1.2}
.brand small{display:block;font-family:inherit;font-weight:400;font-size:.72rem;color:#CBBF9F;letter-spacing:.06em;text-transform:uppercase}
.call-btn{background:var(--safety);color:#fff;text-decoration:none;font-weight:700;
  padding:10px 16px;border-radius:var(--radius);white-space:nowrap;font-size:.95rem;
  box-shadow:0 2px 0 rgba(0,0,0,.2)}
.call-btn:hover{background:#A84318}
nav{background:var(--green-2)}
nav ul{display:flex;gap:2px;list-style:none;overflow-x:auto;-webkit-overflow-scrolling:touch}
nav a{display:block;padding:9px 13px;color:#EDE7D6;text-decoration:none;font-size:.86rem;white-space:nowrap}
nav a:hover,nav a.on{background:var(--green);color:#fff}
/* hero */
.hero{background:linear-gradient(180deg,var(--green) 0%,var(--green-2) 100%);color:#fff;padding:44px 0 0}
.hero h1{color:#fff}
.hero p.lead{color:#E7E0CE;font-size:1.08rem;max-width:44rem;margin-top:.7rem}
.hero .cta-row{margin:1.4rem 0 2.2rem;display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.hero .cta-row .sub{color:#CBBF9F;font-size:.9rem}
.call-big{background:var(--safety);color:#fff;text-decoration:none;font-weight:800;
  padding:14px 22px;border-radius:var(--radius);font-size:1.1rem;box-shadow:0 3px 0 rgba(0,0,0,.25)}
.call-big:hover{background:#A84318}
/* hills divider (signature) */
.hills{display:block;width:100%;height:56px;margin-bottom:-1px}
/* content */
main{padding:2.2rem 0 3rem}
ul.checks{list-style:none;margin:.8rem 0}
ul.checks li{padding:.35rem 0 .35rem 1.7rem;position:relative}
ul.checks li::before{content:"";position:absolute;left:0;top:.72em;width:.85em;height:.85em;
  background:var(--gold);border-radius:2px;transform:rotate(45deg)}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin:1.4rem 0}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:20px}
.card h3{margin-top:0}
.card a.more{font-weight:600;font-size:.92rem}
.callout{background:#fff;border-left:5px solid var(--gold);border-radius:0 var(--radius) var(--radius) 0;
  padding:16px 20px;margin:1.6rem 0;box-shadow:0 1px 3px rgba(0,0,0,.06)}
.callout.warn{border-left-color:var(--safety)}
/* faq */
details{background:#fff;border:1px solid var(--line);border-radius:var(--radius);margin:.6rem 0;padding:0}
summary{cursor:pointer;font-weight:700;padding:14px 18px;color:var(--green);list-style-position:inside}
details[open] summary{border-bottom:1px solid var(--line)}
details .a{padding:12px 18px}
/* cta band */
.band{background:var(--bark);color:#fff;border-radius:var(--radius);padding:26px 24px;margin:2.4rem 0 0;
  display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between}
.band strong{font-family:"Bitter",Georgia,serif;font-size:1.2rem}
/* footer */
footer{background:var(--green);color:#CBBF9F;padding:28px 0;font-size:.88rem;margin-top:3rem}
footer a{color:#EDE7D6}
footer .cols{display:flex;flex-wrap:wrap;gap:26px;justify-content:space-between}
footer .disclose{margin-top:14px;padding-top:14px;border-top:1px solid rgba(255,255,255,.15);font-size:.8rem}
/* forms */
form{display:grid;gap:12px;max-width:34rem}
label{font-weight:600;font-size:.92rem}
input,textarea,select{width:100%;padding:11px;border:1px solid var(--line);border-radius:8px;
  font:inherit;background:#fff}
button{background:var(--safety);color:#fff;font-weight:700;font-size:1rem;border:0;
  padding:13px;border-radius:var(--radius);cursor:pointer}
button:hover{background:#A84318}
table{border-collapse:collapse;width:100%;margin:1rem 0;background:#fff;font-size:.93rem}
th,td{border:1px solid var(--line);padding:9px 12px;text-align:left;vertical-align:top}
th{background:var(--green);color:#fff}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media (max-width:560px){ .topbar{flex-wrap:wrap} .call-btn{flex:1;text-align:center} }
