
/* 937 Ground Worx — brand tokens pulled from the badge:
   ink black field, burnt-orange gradient type, pine-teal scene, cobble base */
:root{
  --ink:#14110D; --coal:#1F1A14; --paper:#F5F1E8; --card:#FFFFFF;
  --orange:#E8761E; --ember:#B9500F; --pine:#17564A; --pine-deep:#0C332B;
  --stone:#C58A3F; --rule:#DFD8C8; --body:#2B261F; --muted:#6E6656;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
body{margin:0;font-family:'Source Sans 3',system-ui,sans-serif;font-size:1.06rem;line-height:1.65;color:var(--body);background:var(--paper)}
img{max-width:100%;height:auto}
.wrap{max-width:1080px;margin:0 auto;padding:0 1.1rem}
h1,h2,h3{font-family:'Khand',sans-serif;line-height:1.12;color:var(--pine-deep);letter-spacing:.01em;text-transform:uppercase}
h1{font-size:clamp(2rem,5.2vw,3.3rem);font-weight:700;margin:.2rem 0 .8rem}
h2{font-size:clamp(1.45rem,3vw,2rem);font-weight:600;margin:2.2rem 0 .6rem}
h3{font-size:1.2rem;font-weight:600;margin:1.2rem 0 .4rem}
a{color:var(--ember)}
p{margin:.7rem 0}
ul{padding-left:1.2rem}
li{margin:.35rem 0}
strong{color:var(--pine-deep)}

/* header */
header.site{background:var(--ink);color:#EDE7DA;border-bottom:4px solid var(--orange)}
header.site .bar{display:flex;align-items:center;gap:1rem;padding:.7rem 0}
header.site img.logo{width:72px;height:auto;flex:none}
header.site .brand{font-family:'Khand',sans-serif;font-weight:700;font-size:1.45rem;text-transform:uppercase;letter-spacing:.03em;color:#fff;text-decoration:none;line-height:1.05}
header.site .brand small{display:block;font-size:.72rem;font-weight:500;color:var(--stone);letter-spacing:.14em}
header.site .call{margin-left:auto;text-align:right}
header.site .call a.phone{font-family:'Khand',sans-serif;font-size:1.5rem;font-weight:700;color:var(--orange);text-decoration:none;white-space:nowrap}
header.site .call span{display:block;font-size:.74rem;color:#B9AF9C;letter-spacing:.08em;text-transform:uppercase}
nav.main{background:var(--coal);font-family:'Khand',sans-serif;text-transform:uppercase;letter-spacing:.05em;font-size:1.02rem}
nav.main ul{display:flex;flex-wrap:wrap;gap:0;list-style:none;margin:0;padding:0}
nav.main a{display:block;padding:.55rem .9rem;color:#E6DFCF;text-decoration:none}
nav.main a:hover{color:var(--orange)}

/* hero */
.hero{background:linear-gradient(160deg,var(--ink) 0%,#241C12 55%,var(--pine-deep) 130%);color:#F2ECDF;padding:3.2rem 0 2.6rem}
.hero .kicker{font-family:'Khand',sans-serif;color:var(--stone);text-transform:uppercase;letter-spacing:.22em;font-size:.95rem;margin:0}
.hero h1{color:#fff;margin:.3rem 0 .7rem}
.hero h1 em{font-style:normal;color:var(--orange)}
.hero p.lede{font-size:1.18rem;max-width:44rem;color:#D9D2C2}
.cta-row{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.4rem}
a.btn{display:inline-block;font-family:'Khand',sans-serif;font-size:1.25rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;text-decoration:none;padding:.65rem 1.5rem;border-radius:4px}
a.btn.primary{background:linear-gradient(180deg,var(--orange),var(--ember));color:#fff;box-shadow:0 3px 0 #7E3608}
a.btn.primary:hover{filter:brightness(1.08)}
a.btn.ghost{border:2px solid var(--stone);color:#F2ECDF}
a.btn.ghost:hover{border-color:var(--orange);color:var(--orange)}

/* signature: cobblestone band, echoing the badge's stone base */
.cobble{height:34px;background:
  radial-gradient(ellipse 26px 15px at 18px 20px, var(--stone) 60%, transparent 62%),
  radial-gradient(ellipse 20px 12px at 52px 12px, #A56E2C 60%, transparent 62%),
  radial-gradient(ellipse 24px 14px at 84px 22px, #8F5D22 60%, transparent 62%),
  radial-gradient(ellipse 18px 11px at 112px 10px, var(--stone) 60%, transparent 62%);
  background-color:var(--ink);background-size:130px 34px;background-repeat:repeat-x;
  border-bottom:4px solid var(--orange)}

/* sections */
section{padding:2.4rem 0}
section.tint{background:#EDE7D8}
section.dark{background:var(--pine-deep);color:#E3E9E2}
section.dark h2{color:#fff}
.grid{display:grid;gap:1.2rem}
@media(min-width:760px){.g2{grid-template-columns:1fr 1fr}.g3{grid-template-columns:repeat(3,1fr)}}

/* hex service cards — the badge shape */
.svc{list-style:none;padding:0;margin:1.2rem 0 0}
.svc .card{background:var(--card);border:1px solid var(--rule);border-radius:8px;padding:1.15rem 1.15rem 1rem;border-top:5px solid var(--orange);height:100%}
.svc .card .hex{width:52px;height:58px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;
  background:linear-gradient(180deg,var(--pine),var(--pine-deep));color:#fff;
  clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%);margin-bottom:.6rem}
.svc .card h3{margin:.2rem 0 .3rem}
.svc .card a.more{font-family:'Khand',sans-serif;text-transform:uppercase;letter-spacing:.06em;font-weight:600;text-decoration:none}

/* area list */
.area{background:var(--card);border:1px solid var(--rule);border-radius:8px;padding:1.1rem;border-left:5px solid var(--pine)}
.area h3{margin-top:0}
.area p{font-size:.98rem}

/* blog cards */
.post-card{background:var(--card);border:1px solid var(--rule);border-radius:8px;padding:1.2rem;border-left:5px solid var(--orange)}
.post-card h3{margin-top:0}
.post-card .date{font-size:.85rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.post-meta{font-size:.9rem;color:var(--muted);margin-bottom:1rem}
article.post{max-width:760px}

/* lead form */
form.lead{background:var(--card);border:1px solid var(--rule);border-radius:8px;padding:1.4rem;border-top:6px solid var(--orange)}
form.lead label{font-weight:600;font-size:.92rem;display:block;margin-top:.7rem}
form.lead input,form.lead select,form.lead textarea{width:100%;padding:.6rem .7rem;border:1px solid #BFB8A6;border-radius:4px;font-size:1rem;font-family:inherit;margin-top:.25rem}
form.lead textarea{min-height:90px}
form.lead button{margin-top:1rem;font-family:'Khand',sans-serif;font-size:1.25rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;background:linear-gradient(180deg,var(--orange),var(--ember));color:#fff;border:0;border-radius:4px;padding:.7rem 1.6rem;cursor:pointer;box-shadow:0 3px 0 #7E3608}
.hp{position:absolute;left:-9999px}

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

/* call strip */
.callstrip{background:linear-gradient(180deg,var(--orange),var(--ember));color:#fff;text-align:center;padding:1.6rem 1rem}
.callstrip .big{font-family:'Khand',sans-serif;font-size:clamp(1.6rem,4.5vw,2.5rem);font-weight:700;text-transform:uppercase;letter-spacing:.03em}
.callstrip a{color:#fff;text-decoration:none}
.callstrip .sub{font-size:1rem;opacity:.92}

/* footer */
footer.site{background:var(--ink);color:#C9C1AF;padding:2.4rem 0 1.4rem;font-size:.95rem}
footer.site h3{color:#fff;font-size:1.05rem;text-transform:uppercase;font-family:'Khand',sans-serif}
footer.site a{color:#E8E2D2;text-decoration:none}
footer.site a:hover{color:var(--orange)}
footer .fineprint{border-top:1px solid #3A3226;margin-top:1.6rem;padding-top:1rem;font-size:.83rem;color:#8F8672}
.crumb{font-size:.88rem;padding:.9rem 0 0;color:var(--muted)}
.crumb a{color:var(--pine);text-decoration:none}
:focus-visible{outline:3px solid var(--orange);outline-offset:2px}
