:root{
  --ink:#0E1B25;        /* wet asphalt, 2am */
  --paper:#F7F8F6;      /* dry white */
  --signal:#E8552F;     /* safety-cone orange: PHONE ONLY */
  --hazard:#FFB020;     /* amber: the 60/90 numbers */
  --steel:#5A6B78;      /* secondary text */
  --line:#D8DEE2;
  --mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  --body:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --disp:"Barlow Condensed",var(--body);
}
*{margin:0;padding:0;box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{font-family:var(--body);color:var(--ink);background:var(--paper);line-height:1.55;font-size:17px}
a{color:inherit}
.wrap{max-width:960px;margin:0 auto;padding:0 20px}

/* ---------- header ---------- */
header{background:var(--ink);color:var(--paper);padding:14px 0}
header .wrap{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.brandmark{font-family:var(--disp);font-weight:600;font-size:22px;letter-spacing:.04em;text-transform:uppercase;text-decoration:none}
.brandmark span{color:var(--hazard)}
.head-call{font-family:var(--disp);font-weight:600;font-size:24px;letter-spacing:.03em;color:#fff;background:var(--signal);text-decoration:none;padding:8px 18px;border-radius:6px;white-space:nowrap}
.head-call:focus-visible,.callbar a:focus-visible,a:focus-visible{outline:3px solid var(--hazard);outline-offset:2px}

/* ---------- hero ---------- */
.hero{background:var(--ink);color:var(--paper);padding:44px 0 52px}
.hero h1{font-family:var(--disp);font-weight:600;font-size:clamp(34px,6vw,58px);line-height:1.05;text-transform:uppercase;letter-spacing:.01em;max-width:800px}
.hero .sub{color:#B9C4CC;margin-top:14px;font-size:19px;max-width:640px}
.hero .bignum{display:inline-block;margin-top:26px;font-family:var(--disp);font-weight:600;font-size:clamp(40px,8vw,72px);color:#fff;background:var(--signal);text-decoration:none;padding:10px 28px;border-radius:8px;line-height:1.1}
.hero .always{margin-top:10px;font-family:var(--mono);font-size:13px;color:var(--hazard);letter-spacing:.08em;text-transform:uppercase}

/* ---------- dispatch strip (signature) ---------- */
.dispatch{background:#132430;border-top:1px solid #24384633;border-bottom:1px solid #24384633;color:#DDE6EC;padding:18px 0}
.dispatch .wrap{display:flex;gap:0;flex-wrap:wrap}
.dispatch .leg{font-family:var(--mono);font-size:13.5px;letter-spacing:.04em;padding:6px 18px 6px 0;margin-right:18px;border-right:1px dashed #3A4F5E;display:flex;align-items:baseline;gap:10px}
.dispatch .leg:last-child{border-right:0;margin-right:0}
.dispatch .t{color:var(--hazard);font-weight:700}
.dispatch .label{text-transform:uppercase}

/* ---------- sections ---------- */
main{padding:40px 0 60px}
h2{font-family:var(--disp);font-weight:600;font-size:30px;text-transform:uppercase;letter-spacing:.02em;margin:38px 0 12px}
h3{font-family:var(--disp);font-weight:600;font-size:22px;text-transform:uppercase;letter-spacing:.02em;margin:26px 0 8px}
p{margin:0 0 14px;max-width:70ch}
.lede{font-size:19px;color:var(--steel)}
.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin:18px 0 8px}
.tile{border:1px solid var(--line);background:#fff;border-radius:8px;padding:18px 18px 16px;text-decoration:none;display:block}
.tile:hover{border-color:var(--ink)}
.tile .k{font-family:var(--mono);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--steel)}
.tile .n{font-family:var(--disp);font-weight:600;font-size:21px;text-transform:uppercase;margin-top:6px;line-height:1.15}
.tile .d{font-size:14.5px;color:var(--steel);margin-top:6px}
.rowlinks{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0}
.rowlinks a{font-family:var(--mono);font-size:13px;text-decoration:none;border:1px solid var(--line);background:#fff;padding:8px 14px;border-radius:999px}
.rowlinks a:hover{border-color:var(--signal);color:var(--signal)}

/* ---------- faq ---------- */
.faq{border-top:1px solid var(--line);margin-top:34px;padding-top:8px}
.faq h3{font-size:19px;text-transform:none;letter-spacing:0;font-family:var(--body);font-weight:700;margin:22px 0 6px}
.faq p{color:var(--steel)}

/* ---------- inline call block ---------- */
.callblock{background:var(--ink);color:var(--paper);border-radius:10px;padding:26px 24px;margin:36px 0 8px}
.callblock .q{font-family:var(--disp);font-weight:600;font-size:26px;text-transform:uppercase}
.callblock a{display:inline-block;margin-top:12px;font-family:var(--disp);font-weight:600;font-size:30px;color:#fff;background:var(--signal);text-decoration:none;padding:8px 22px;border-radius:8px}
.callblock .note{font-family:var(--mono);font-size:12px;color:var(--hazard);margin-top:10px;letter-spacing:.06em;text-transform:uppercase}

/* ---------- footer ---------- */
footer{background:var(--ink);color:#9FB0BB;padding:30px 0 90px;font-size:14px}
footer a{color:#DDE6EC;text-decoration:none}
footer .cols{display:flex;flex-wrap:wrap;gap:28px;justify-content:space-between}
footer .mono{font-family:var(--mono);font-size:12px;letter-spacing:.05em;margin-top:14px}

/* ---------- sticky call bar (mobile) ---------- */
.callbar{position:fixed;left:0;right:0;bottom:0;z-index:50;display:none;background:var(--signal);padding:12px 16px calc(12px + env(safe-area-inset-bottom))}
.callbar a{display:block;text-align:center;color:#fff;text-decoration:none;font-family:var(--disp);font-weight:600;font-size:24px;letter-spacing:.03em;text-transform:uppercase}
@media(max-width:760px){.callbar{display:block}.head-call{display:none}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
.breadcrumb{font-family:var(--mono);font-size:12px;color:var(--steel);letter-spacing:.05em;text-transform:uppercase;margin-bottom:18px}
.breadcrumb a{color:var(--steel);text-decoration:none}
.breadcrumb a:hover{color:var(--signal)}
