/* ============================================================
   selltransportcompany.com — TMA95
   Design System v2 "Freight Corporate" — derived from CEVA Logistics
   Navy #0E2240 · Red CTAs · Nunito Sans 900 uppercase · square corners
   ============================================================ */
:root{
  --navy:#0E2240;
  --navy-90:#1A3357;
  --navy-deep:#0E2240;
  --red:#B08D3E;
  --red-dark:#8F7025;
  --red-soft:#F1E9D8;
  --blue:#407ec9;
  --blue-royal:#1d4289;
  --blue-pale:#BDD6E6;
  --paper:#F7F4EC;
  --band:#EFEAE0;
  --ink:#0E2240;
  --body:#37424E;
  --muted:#64707D;
  --line:#DDD5C7;
  --hair:#DDD5C7;
  --hair-strong:#C6BCA6;
  --card:#FFFFFF;
  --amber:#B08D3E;        /* legacy hook: v1 accent now = CEVA red */
  --amber-deep:#8F7025;
  --amber-soft:#F1E9D8;
  --ok:#28a745;
  --ease:ease-in-out;
  --navy-grad:linear-gradient(0deg,#0E2240E8 0%,#0E224066 38%,#0E224014 70%,#0E224000 100%);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  font-family:'Nunito Sans',system-ui,sans-serif;
  font-size:18px;line-height:1.65;color:var(--body);
  background:var(--paper);
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3,.display{font-family:'Nunito Sans',sans-serif;color:var(--ink);line-height:1.1}
h1{font-size:clamp(2.1rem,4.2vw,3.15rem);font-weight:900;text-transform:uppercase;line-height:1.06;letter-spacing:-.005em}
h2{font-size:clamp(1.6rem,2.8vw,2.2rem);font-weight:900;text-transform:uppercase}
h3{font-size:1.25rem;font-weight:800;line-height:1.3}
p{margin-bottom:1.1em}
a{color:var(--blue-royal)}
img{max-width:100%;display:block}
.wrap{max-width:1180px;margin:0 auto;padding:0 24px}
.narrow{max-width:820px}
section{padding:88px 0}
section:nth-of-type(even){background:var(--band)}
@media(max-width:768px){section{padding:56px 0}}

/* eyebrow / kicker — CEVA-style plain uppercase label */
.eyebrow{
  display:inline-block;
  font-size:12.5px;font-weight:800;letter-spacing:.18em;
  text-transform:uppercase;color:var(--red);
  margin-bottom:16px;
}
.eyebrow::before{content:"";display:inline-block;width:26px;height:3px;background:var(--red);margin-right:12px;vertical-align:middle}

/* ---------- top ribbon + nav ---------- */
.ribbon{background:var(--navy);color:#C7D3E4;font-size:14px;padding:9px 0;text-align:center;font-weight:600}
.ribbon a{color:#fff;font-weight:800;text-decoration:none}
.ribbon a:hover{color:var(--blue-pale)}
header.site{position:sticky;top:0;z-index:40;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 2px 10px rgba(2,29,73,.06)}
.navpill{
  max-width:1180px;margin:0 auto;
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:14px 24px;
}
.brand{font-weight:900;font-size:1.35rem;color:var(--navy);text-decoration:none;text-transform:uppercase;letter-spacing:.02em}
.brand span{color:var(--red)}
nav.main{display:flex;gap:26px;align-items:center}
nav.main a{color:var(--navy);text-decoration:none;font-size:15.5px;font-weight:700;transition:color .15s var(--ease)}
nav.main a:hover{color:var(--red)}
.nav-cta{display:flex;gap:10px;align-items:center}
@media(max-width:980px){nav.main{display:none}}

/* ---------- buttons — CEVA square, bold, fast ---------- */
.btn{
  display:inline-flex;align-items:center;gap:10px;border-radius:0;
  font-family:'Nunito Sans',sans-serif;font-weight:700;font-size:16.5px;
  padding:15px 26px;text-decoration:none;cursor:pointer;border:2px solid transparent;
  transition:background-color .15s var(--ease),border-color .15s var(--ease),color .15s var(--ease);
  text-transform:uppercase;letter-spacing:.03em;
}
.btn:active{transform:translateY(1px)}
.btn .ico{
  width:auto;height:auto;border-radius:0;background:none !important;flex:none;
  display:inline-flex;align-items:center;justify-content:center;
  transition:transform .15s var(--ease);
}
.btn:hover .ico{transform:translateX(3px)}
.btn-primary{background:var(--red);color:var(--navy);border-color:var(--red);font-weight:800}
.btn-primary:hover{background:var(--red-dark);border-color:var(--red-dark);color:var(--navy)}
/* on navy grounds the gold CTA keeps navy text; the secondary button gets a real edge
   instead of a near-invisible translucent fill */
.coverage .btn-primary,.hero .btn-primary,footer.site .btn-primary{color:var(--navy)}
.btn-ghost{background:transparent;color:var(--navy);border-color:var(--navy)}
.btn-ghost:hover{background:var(--navy);color:#fff}
.btn-navy{background:var(--navy);color:#fff;border-color:var(--navy)}
.btn-navy:hover{background:var(--navy-90);border-color:var(--navy-90)}
.btn svg{width:16px;height:16px;stroke-width:2}

/* ---------- cards: flat, square (double-bezel retired) ---------- */
.shell{background:transparent;border:0;border-radius:0;padding:0}
.core{
  background:var(--card);border-radius:0;
  border:1px solid var(--line);border-top:4px solid var(--navy);
  box-shadow:none;
  padding:34px;height:100%;
}
section:nth-of-type(even) .core{border-color:var(--line)}
.shell.dark .core{background:var(--navy);border-color:var(--navy);border-top-color:var(--red)}

/* ---------- hero ---------- */
.hero{padding:0;position:relative;overflow:hidden;background:var(--navy)}
.hero::before{content:"";position:absolute;inset:0;background:
  radial-gradient(900px 480px at 88% 8%, rgba(64,126,201,.28), transparent 60%),
  radial-gradient(700px 420px at -5% 100%, rgba(29,66,137,.5), transparent 60%);pointer-events:none}
.hero .wrap{position:relative}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:56px;align-items:center;padding-top:88px;padding-bottom:96px}
@media(max-width:900px){.hero-grid{grid-template-columns:1fr;gap:40px;padding-top:56px;padding-bottom:64px}}
.hero h1{color:#fff;font-size:clamp(1.6rem,2.6vw,2.25rem);letter-spacing:-.012em}
.hero h1 em{font-style:normal;color:var(--blue-pale)}
.hero .eyebrow{color:#fff}
.hero .eyebrow::before{background:var(--red)}
.hero .lede{font-size:19px;max-width:32em;margin:20px 0 26px;color:#D5DEEB}
.hero .btn-ghost{color:#fff;border-color:#fff}
.hero .btn-ghost:hover{background:#fff;color:var(--navy)}
.cta-row{display:flex;gap:14px;flex-wrap:wrap;align-items:center}
.cta-note{font-size:14.5px;color:#9FB1C8;margin-top:14px}
.hero-stats{display:flex;gap:34px;margin-top:40px;padding-top:28px;border-top:1px solid rgba(255,255,255,.18);flex-wrap:wrap}
.stat b{font-size:1.6rem;font-weight:900;color:#fff;display:block;line-height:1}
.stat span{font-size:13px;color:#9FB1C8;letter-spacing:.06em;text-transform:uppercase;font-weight:700}

/* principal card */
.principal .core{padding:0;overflow:hidden;border-top-color:var(--red)}
.principal-photo{
  aspect-ratio:4/3.1;
  background:linear-gradient(0deg,#0E2240f2,#0E224080),#1d4289;
  background-color:#0A2A5C;
  display:flex;align-items:center;justify-content:center;color:#8FA6C4;
  font-size:13px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;
}
.principal-body{padding:26px 28px 28px}
.principal-body h3{margin-bottom:2px}
.principal-body .role{color:var(--muted);font-size:15px;margin-bottom:14px;font-weight:600}
.principal-body .quote{font-size:16px;color:var(--body);border-left:4px solid var(--red);padding-left:14px;margin-bottom:18px}
.tel-line{display:flex;align-items:center;gap:10px;font-weight:900;color:var(--navy);text-decoration:none;font-size:20px}
.tel-line:hover{color:var(--red)}
.tel-sub{font-size:13.5px;color:var(--muted);margin-top:4px}

/* ---------- trust bar ---------- */
.trustbar{border-bottom:1px solid var(--line);background:#fff;padding:18px 0}
.trustbar .wrap{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap}
.trustbar span{font-size:14.5px;font-weight:700;color:var(--navy);display:flex;align-items:center;gap:9px}
.trustbar svg{width:17px;height:17px;stroke:var(--red);stroke-width:2;flex:none}

/* ---------- grids ---------- */
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
@media(max-width:900px){.grid3{grid-template-columns:1fr;gap:18px}}
.path-ico{
  width:48px;height:48px;border-radius:0;background:var(--red-soft);
  display:flex;align-items:center;justify-content:center;margin-bottom:18px;
}
.path-ico svg{width:23px;height:23px;stroke:var(--red);stroke-width:1.8}
.sec-head{max-width:680px;margin-bottom:46px}
.sec-head.center{margin:0 auto 46px;text-align:center}
.sec-head.center .eyebrow::before{display:none}
.sec-head p{margin-top:14px;font-size:19px}

/* ---------- sectors bento ---------- */
.bento{display:grid;grid-template-columns:repeat(12,1fr);gap:22px}
.bento .b-lead{grid-column:span 7}
.bento .b-side{grid-column:span 5}
.bento .b-half{grid-column:span 6}
.bento .b-third{grid-column:span 4}
@media(max-width:1000px){.bento .b-third{grid-column:span 6}}
@media(max-width:900px){.bento .b-lead,.bento .b-side,.bento .b-half,.bento .b-third{grid-column:span 12}}
.sector .core{display:flex;flex-direction:column;gap:8px}
.b-lead .core{border-top-color:var(--red)}
.sector .tag{font-size:11.5px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--red)}
.sector p{font-size:16.5px;margin:4px 0 14px}
.sector .go{font-weight:800;text-decoration:none;color:var(--navy);display:inline-flex;align-items:center;gap:8px;transition:color .15s var(--ease);text-transform:uppercase;font-size:15px;letter-spacing:.03em}
.sector .go:hover{color:var(--red)}
/* product-shot treatment: white/light vehicle on a soft neutral panel, contained (never cropped),
   with the mode label as a small navy chip. Suits isolated studio photos far better than the old
   dark-overlay-on-environmental-photo look. */
.sector-visual{
  position:relative;border-radius:8px;overflow:hidden;
  background:#fff center/78% auto no-repeat;
  border:1px solid var(--line);
  min-height:200px;margin-bottom:18px;display:block;
}
.b-lead .sector-visual{min-height:300px;background-size:72% auto}
.sv-label{position:absolute;left:12px;bottom:12px;background:var(--navy);color:#fff;
  font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;
  padding:5px 11px;border-radius:4px}

/* ---------- compare table ---------- */
.compare .core{padding:0;overflow-x:auto;border-top-color:var(--navy)}
table.cmp{width:100%;border-collapse:collapse;font-size:16px;min-width:640px}
table.cmp th,table.cmp td{padding:16px 18px;text-align:left;border-bottom:1px solid var(--line)}
table.cmp tr:last-child td{border-bottom:0}
table.cmp thead th{background:var(--navy);color:#fff;font-weight:800;font-size:15px;text-transform:uppercase;letter-spacing:.04em}
table.cmp thead th.you{background:var(--red)}
table.cmp .you{background:var(--red-soft);font-weight:700;color:var(--navy)}
table.cmp td:first-child{color:var(--muted);font-size:15px;font-weight:600}
.ok{color:var(--ok);font-weight:800}

/* ---------- process steps ---------- */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;counter-reset:step}
@media(max-width:900px){.steps{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.steps{grid-template-columns:1fr}}
.step{position:relative;padding:26px 24px;border:1px solid var(--line);border-top:4px solid var(--red);border-radius:0;background:#fff}
.step::before{
  counter-increment:step;content:"0" counter(step);
  font-weight:900;font-size:15px;color:var(--red);
  display:inline-block;margin-bottom:12px;letter-spacing:.08em;
}
.step h3{font-size:1.06rem;margin-bottom:8px}
.step p{font-size:15.5px;margin:0}

/* ---------- coverage ---------- */
.coverage{background:var(--navy) !important;color:#AFC3DC;position:relative;overflow:hidden}
.coverage::before{content:"";position:absolute;inset:0;background:radial-gradient(800px 500px at 90% 110%, rgba(64,126,201,.25), transparent 60%)}
.coverage .wrap{position:relative}
.coverage h2,.coverage h3{color:#fff}
.coverage .sec-head p{color:#AFC3DC}
.coverage .eyebrow{color:#fff}
.states{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;position:relative}
@media(max-width:900px){.states{grid-template-columns:1fr 1fr}}
.states h3{font-size:12.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--blue-pale);margin-bottom:12px;font-weight:800}
.states ul{list-style:none;font-size:15.5px;line-height:2}
.states a{color:#D7E0E9;text-decoration:none}
.states a:hover{color:#fff}

/* ---------- about strip ---------- */
.about-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:center}
@media(max-width:900px){.about-grid{grid-template-columns:1fr;gap:36px}}
.bring{display:grid;gap:14px;margin-top:26px}
.bring .item{display:flex;gap:14px;align-items:flex-start;font-size:16.5px}
.bring b{color:var(--navy)}
.bring svg{width:21px;height:21px;stroke:var(--red);stroke-width:1.8;flex:none;margin-top:3px}

/* ---------- FAQ ---------- */
details.faq{border:1px solid var(--line);border-left:4px solid var(--navy);border-radius:0;background:#fff;margin-bottom:12px;overflow:hidden;transition:border-color .15s var(--ease)}
details.faq[open]{border-left-color:var(--red)}
details.faq summary{
  cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;
  padding:19px 24px;font-weight:800;font-size:1.04rem;color:var(--navy);
}
details.faq summary::-webkit-details-marker{display:none}
details.faq summary::after{content:"+";font-size:1.5rem;color:var(--red);transition:transform .15s var(--ease);flex:none;font-weight:400}
details.faq[open] summary::after{transform:rotate(45deg)}
details.faq .a{padding:0 24px 22px;font-size:16.5px}

/* ---------- final CTA ---------- */
.finale .core{padding:56px;display:grid;grid-template-columns:1.2fr .8fr;gap:40px;align-items:center;background:var(--navy);border-top:4px solid var(--red)}
@media(max-width:900px){.finale .core{grid-template-columns:1fr;padding:36px}}
.finale h2{color:#fff}
.finale p{color:#AFC3DC}
.finale .tel-line{color:#fff;font-size:22px}
.finale .tel-line:hover{color:var(--blue-pale)}
.finale .tel-sub{color:#8FA6C4}

/* ---------- footer ---------- */
footer.site{background:var(--navy);color:#8FA6C4;padding:64px 0 40px;font-size:15px}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:36px;margin-bottom:44px}
@media(max-width:900px){.foot-grid{grid-template-columns:1fr 1fr}}
footer.site h4{color:#fff;font-size:13px;letter-spacing:.18em;text-transform:uppercase;margin-bottom:16px;font-weight:800}
footer.site ul{list-style:none;line-height:2.1}
footer.site a{color:#BDD6E6;text-decoration:none}
footer.site a:hover{color:#fff}
.legal{border-top:1px solid rgba(255,255,255,.14);padding-top:24px;font-size:13.5px;line-height:1.8}

/* ---------- mobile call bar ---------- */
.callbar{display:none}
@media(max-width:768px){
  .callbar{
    display:grid;grid-template-columns:1fr;position:fixed;z-index:45;
    left:0;right:0;bottom:0;
    background:var(--navy);border-top:3px solid var(--red);
  }
  .callbar a{display:flex;align-items:center;justify-content:center;gap:8px;padding:16px 8px;font-weight:800;font-size:15.5px;text-decoration:none;text-transform:uppercase;letter-spacing:.03em}
  .callbar .c1{background:var(--red);color:#fff}
  .callbar .c2{background:var(--navy);color:#fff}
  body{padding-bottom:64px}
}

/* ---------- forms ---------- */
.form-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:44px;align-items:start}
@media(max-width:900px){.form-grid{grid-template-columns:1fr}}
.field{margin-bottom:20px}
.field label{display:block;font-weight:800;font-size:15.5px;color:var(--navy);margin-bottom:8px}
.field .hint{font-weight:400;color:var(--muted);font-size:13.5px;text-transform:none}
.field input,.field select,.field textarea{
  width:100%;font:inherit;font-size:16.5px;color:var(--navy);
  padding:14px 16px;border:2px solid var(--hair-strong);border-radius:0;background:#fff;
  transition:border-color .15s var(--ease),box-shadow .15s var(--ease);
}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--navy);box-shadow:0 0 0 3px rgba(64,126,201,.25)}
.radio-cards{display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media(max-width:560px){.radio-cards{grid-template-columns:1fr}}
.radio-cards label{
  display:flex;align-items:center;gap:10px;border:2px solid var(--hair-strong);border-radius:0;
  padding:13px 14px;cursor:pointer;font-weight:700;font-size:15.5px;color:var(--navy);background:#fff;
  transition:border-color .15s var(--ease),background .15s var(--ease);
}
.radio-cards label:has(input:checked){border-color:var(--red);background:var(--red-soft)}
.radio-cards input{accent-color:var(--red);width:17px;height:17px}
.micro{font-size:13.5px;color:var(--muted);margin-top:6px}
.form-note{font-size:14.5px;color:var(--muted);border-top:1px solid var(--line);padding-top:18px;margin-top:8px}
.lead-fields{display:grid;grid-template-columns:1fr 1fr;gap:0 18px;margin-top:22px}
.lead-fields .field{min-width:0}
.lead-fields select{max-width:100%}
.lead-submit{margin-top:18px;margin-bottom:18px;justify-content:center;gap:14px;width:100%;cursor:pointer}
.lead-submit:disabled{opacity:.65;cursor:wait}
.form-status{font-size:15px;color:var(--navy);margin:0 0 20px}
.form-status.is-error{color:#9e2027;border-left:3px solid currentColor;padding-left:12px}
.form-trap{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:560px){.lead-fields{grid-template-columns:1fr}}

/* ---------- article pages ---------- */
.article-hero{padding:64px 0 52px;background:var(--navy);position:relative;overflow:hidden}
.article-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(700px 400px at 92% 0%, rgba(64,126,201,.28), transparent 60%)}
.article-hero .wrap{position:relative}
.article-hero h1{color:#fff}
.article-hero .eyebrow{color:#fff}
.article-hero .lede{font-size:19.5px;max-width:38em;margin-top:18px;color:#D5DEEB}
.article-hero a{color:#fff}
.article{padding:64px 0 88px}
.article-body h2{margin:52px 0 18px}
.article-body h3{margin:34px 0 12px}
.article-body ul,.article-body ol{margin:0 0 1.2em 1.4em}
.article-body li{margin-bottom:.45em}
.article-body table{width:100%;border-collapse:collapse;margin:24px 0;font-size:16px}
.article-body th,.article-body td{border:1px solid var(--line);padding:12px 14px;text-align:left}
.article-body th{background:var(--navy);color:#fff;font-weight:800}
.article-body blockquote{border-left:4px solid var(--red);padding-left:18px;color:var(--muted);margin:24px 0}
.verify{background:#FFF3D6;border:1px dashed #B8860B;border-radius:0;padding:1px 7px;font-size:.85em;color:#7A5605}
.placeholder{background:#E2EAF4;border:1px dashed var(--blue);border-radius:0;padding:1px 7px;font-size:.9em;color:var(--blue-royal);font-weight:700}

/* ---------- reveal motion: fast utilitarian fade (CEVA tempo) ---------- */
.rv{opacity:0;transform:translateY(14px);transition:opacity .3s var(--ease),transform .3s var(--ease)}
.rv.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}}

/* mobile: photo heroes get a solid scrim under the text (inline gradients are tuned for desktop) */
@media(max-width:900px){
  .hero::after,.article-hero::after{content:"";position:absolute;inset:0;background:#0E2240E0;pointer-events:none}
  .hero .wrap,.article-hero .wrap{position:relative;z-index:2}
  .hero::after,.article-hero::after{z-index:1}
}

/* ---------- nav dropdowns ---------- */
nav.main .dd{position:relative}
nav.main .dd-toggle{display:inline-flex;align-items:center;gap:6px;color:var(--navy);text-decoration:none;font-size:15.5px;font-weight:700;padding:8px 0;transition:color .15s var(--ease)}
nav.main .dd-toggle:hover{color:var(--red)}
nav.main .dd-menu{
  display:none;position:absolute;top:100%;left:-14px;min-width:250px;z-index:50;
  background:#fff;border:1px solid var(--line);border-top:3px solid var(--red);
  box-shadow:0 14px 34px rgba(2,29,73,.14);padding:8px 0;
}
nav.main .dd:hover .dd-menu,nav.main .dd:focus-within .dd-menu{display:block}
nav.main .dd-menu a{display:block;padding:10px 20px;font-size:15px;font-weight:700;color:var(--navy);text-decoration:none}
nav.main .dd-menu a:hover{background:var(--band);color:var(--red)}
nav.main .dd-menu .dd-all{border-top:1px solid var(--line);margin-top:6px;color:var(--red)}

/* ---------- mobile menu ---------- */
.mnav-btn{display:none;flex-direction:column;justify-content:center;gap:5px;width:48px;height:44px;background:none;border:2px solid var(--navy);cursor:pointer;padding:10px}
.mnav-btn span{display:block;height:2.5px;background:var(--navy);transition:transform .2s var(--ease),opacity .2s var(--ease)}
.mnav-btn.x span:nth-child(1){transform:translateY(7.5px) rotate(45deg)}
.mnav-btn.x span:nth-child(2){opacity:0}
.mnav-btn.x span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}
.mnav{display:none;position:sticky;top:0;z-index:39;background:#fff;border-bottom:3px solid var(--red);box-shadow:0 18px 34px rgba(2,29,73,.16);max-height:calc(100vh - 80px);overflow-y:auto}
.mnav.open{display:block}
.mnav a{display:block;padding:15px 24px;font-size:17px;font-weight:700;color:var(--navy);text-decoration:none;border-bottom:1px solid var(--line);min-height:48px}
.mnav a:active{background:var(--band)}
.mnav .mnav-group{padding:14px 24px 6px;font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--red)}
.mnav .mnav-cta{background:var(--red);color:#fff;text-align:center;margin:14px 24px 18px;border:0;text-transform:uppercase;letter-spacing:.03em}
@media(max-width:980px){
  .mnav-btn{display:flex}
  .nav-cta .btn-ghost{display:none}
  .nav-cta .btn-primary{font-size:14px;padding:11px 14px !important}
  .navpill{padding:12px 16px}
}
@media(max-width:560px){
  .nav-cta{display:none}
  .hero-stats{gap:20px}
  .stat b{font-size:1.25rem}
  h1{font-size:1.9rem}
  .btn{width:100%;justify-content:center}
  .cta-row{flex-direction:column;align-items:stretch}
  table.cmp{font-size:14.5px}
  .core{padding:24px}
  .finale .core{padding:28px}
}

/* Option B additions */
.focus-strip{display:grid;grid-template-columns:repeat(6,1fr);gap:0;border:1px solid var(--line);background:#fff}
@media(max-width:900px){.focus-strip{grid-template-columns:repeat(2,1fr)}}
.focus-strip .fi{padding:26px 14px;text-align:center;border-right:1px solid var(--line);font-size:12.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--navy)}
.focus-strip .fi:last-child{border-right:0}
@media(max-width:900px){.focus-strip .fi{border-bottom:1px solid var(--line)}}
.focus-strip .fi svg{width:30px;height:30px;stroke:var(--red);stroke-width:1.5;margin:0 auto 12px;display:block}
.alliance{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:34px 0}
@media(max-width:900px){.alliance{grid-template-columns:1fr}}
.alliance .col{padding:30px;color:#fff}
.alliance .col.tma{background:var(--navy)}
.alliance .col.cap{background:var(--red)}
.alliance h3{color:#fff;margin-bottom:4px}
.alliance .sub{font-size:12px;letter-spacing:.14em;text-transform:uppercase;opacity:.85;margin-bottom:16px;font-weight:700}
.alliance ul{list-style:none;line-height:2.05;font-size:15.5px;margin:0}
.alliance li:before{content:"\2713\00a0\00a0";opacity:.75}
.crit{display:grid;grid-template-columns:repeat(2,1fr);gap:14px 28px;margin:24px 0}
@media(max-width:700px){.crit{grid-template-columns:1fr}}
.crit .ci{border-left:3px solid var(--red);padding:4px 0 4px 16px}
.crit .ci b{display:block;color:var(--navy);font-size:14px;text-transform:uppercase;letter-spacing:.06em}
.crit .ci span{font-size:16.5px}

/* logo image brand */
.brand-img{height:54px;width:auto;display:block}
.foot-lockup{width:236px;max-width:82%;height:auto;display:block}
.foot-brand{display:inline-block}
@media(max-width:560px){.foot-lockup{width:200px}}
footer.site .brand-img{height:60px;filter:drop-shadow(0 0 0 transparent)}
@media(max-width:560px){.brand-img{height:42px}}

@media(max-width:560px){.hero h1{font-size:1.42rem;line-height:1.2}}

/* homepage alliance + pillars */
.alliance.with-logo{grid-template-columns:1fr auto 1fr;align-items:center}
@media(max-width:900px){.alliance.with-logo{grid-template-columns:1fr}}
.alli-logo{background:#fff;border:1px solid var(--line);border-radius:50%;width:170px;height:170px;display:flex;align-items:center;justify-content:center;margin:0 auto;padding:20px}
.alli-logo img{width:100%;height:auto}
.alli-outcome{border:1px solid var(--red);background:#fff;text-align:center;padding:22px 16px;max-width:640px;margin:30px auto 0}
.alli-outcome b{display:block;color:var(--navy);font-size:17px;text-transform:uppercase;letter-spacing:.08em}
.alli-outcome span{color:var(--red-dark);font-size:14.5px;font-weight:800;text-transform:uppercase;letter-spacing:.12em}
.pillars{display:grid;grid-template-columns:repeat(3,1fr);background:var(--navy);color:#B9C6D2}
@media(max-width:768px){.pillars{grid-template-columns:1fr}}
.pillars .pi{padding:32px 26px;text-align:center;border-right:1px solid rgba(255,255,255,.12)}
.pillars .pi:last-child{border-right:0}
@media(max-width:768px){.pillars .pi{border-right:0;border-bottom:1px solid rgba(255,255,255,.12)}}
.pillars svg{width:28px;height:28px;stroke:var(--red);stroke-width:1.6;margin:0 auto 12px;display:block}
.pillars b{display:block;color:#fff;font-size:14px;text-transform:uppercase;letter-spacing:.14em;margin-bottom:8px}
.pillars span{font-size:15px}

/* v4: hero offer stack */
.offer-list{list-style:none;margin:24px 0 28px;display:grid;gap:11px}
.offer-list li{position:relative;padding-left:32px;font-size:17px;color:#E4EAF2;line-height:1.5}
.offer-list li::before{
  content:"";position:absolute;left:0;top:7px;width:19px;height:19px;
  background:var(--red);
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6L9 17l-5-5'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6L9 17l-5-5'/%3E%3C/svg%3E") center/contain no-repeat;
}
@media(max-width:560px){.offer-list li{font-size:16px;padding-left:28px}}
.sector .go+.go{display:block}

/* Zoho form embed */
.form-embed{background:#fff;border:1px solid var(--line);border-radius:0;overflow:hidden}
.form-embed iframe{display:block;width:100%;min-height:620px}
@media(max-width:560px){.form-embed iframe{min-height:760px}}

/* v5: single-column hero over the school-bus banner */
/* ---------- two-column photo hero ---------- */
/* ---------- two-column photo hero: prominent bus on the right ---------- */
.hero-photo{min-height:0}
.hero-photo .hero-grid{grid-template-columns:0.95fr 1.05fr;gap:52px;align-items:stretch;
  padding-top:60px;padding-bottom:68px}
.hero-copy{position:relative;z-index:2;align-self:center}
.hero-media{position:relative;z-index:2;min-height:600px}
.hero-media img{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;
  border-radius:16px;box-shadow:0 30px 70px -24px rgba(0,0,0,.65);
  border:1px solid rgba(255,255,255,.12);display:block;
}
/* gold corner accent */
.hero-media::after{content:"";position:absolute;right:-10px;bottom:-10px;width:130px;height:130px;
  border-right:3px solid var(--red);border-bottom:3px solid var(--red);border-bottom-right-radius:16px;
  pointer-events:none;z-index:3}
/* full-bleed to the right viewport edge (wrap is max-width 1180, 24px padding):
   right offset = -(50vw - 566px). Applied only >=1181px where the maths is exact. */
@media(min-width:1181px){
  .hero-media img{left:0;right:auto;width:calc(50vw + 1px);max-width:none;border-radius:16px 0 0 16px}
  .hero-media::after{left:-10px;right:auto;border-left:3px solid var(--red);border-right:0;
    border-bottom-left-radius:16px;border-bottom-right-radius:0}
}
@media(max-width:900px){
  .hero-photo .hero-grid{grid-template-columns:1fr;gap:34px}
  .hero-media{min-height:320px}
  .hero-media img{width:100%}
  .hero-media::after{width:90px;height:90px;right:-8px;bottom:-8px}
}

.hero-single{padding:96px 0 104px;max-width:760px}
.hero-single .lede{max-width:36em}
@media(max-width:900px){.hero-single{padding:60px 0 68px}}
.hero{min-height:640px;display:flex;align-items:center}
@media(max-width:900px){.hero{min-height:0}}

/* ===== Coverage map (2026-08-21) — navy ground, gold accent, single meaning per tier ===== */
.cvg-map{display:flex;flex-wrap:wrap;gap:30px;align-items:flex-start;margin-top:14px}
.cvg-figure{flex:1 1 560px;min-width:0}
.cvg-svg{width:100%;height:auto;display:block;overflow:visible}
.cvg-st path,a.cvg-st>path{transition:fill .15s var(--ease)}
.cvg-st.off{fill:var(--navy-90);stroke:#28406a;stroke-width:1}
.cvg-st.also{fill:#6E86A8;stroke:var(--navy);stroke-width:1}
.cvg-st.pri{fill:#fff;stroke:var(--navy);stroke-width:1}
a.cvg-st{cursor:pointer}
a.cvg-st>path{outline:none}
a.cvg-st:hover>path{fill:var(--red)}
a.cvg-st:focus-visible>path{fill:var(--red);stroke:#fff;stroke-width:1.5}
.cvg-ring{fill:none;stroke:var(--red);stroke-width:2.3;stroke-linejoin:round;stroke-linecap:round;pointer-events:none}
.cvg-lab{font-family:"Nunito Sans",system-ui,sans-serif;font-size:12px;font-weight:900;
  letter-spacing:.08em;fill:#fff;pointer-events:none;paint-order:stroke;stroke:var(--navy);stroke-width:3.6px;stroke-linejoin:round}
.cvg-key{display:flex;flex-wrap:wrap;gap:13px 22px;margin:18px 0 0;padding:0;list-style:none}
.cvg-key li{display:flex;align-items:center;gap:9px;font-size:14px;color:#C7D2E0}
.cvg-key i{width:14px;height:14px;flex:none;border:1px solid #28406a}
.cvg-key i.pri{background:#fff;border-color:#fff}
.cvg-key i.also{background:#6E86A8;border-color:#6E86A8}
.cvg-key i.ring{background:transparent;border:2px solid var(--red)}
.cvg-key b{color:#fff;font-weight:800}
/* small-state tiles (NJ / CT / MA) — squares under the map so slivers stay clickable + labelled */
.cvg-tiles{display:flex;gap:8px;margin:16px 0 0;flex-wrap:wrap}
.cvg-tile{width:44px;height:38px;display:flex;align-items:center;justify-content:center;
  font-family:"Nunito Sans",system-ui,sans-serif;font-weight:800;font-size:13px;letter-spacing:.02em;
  text-decoration:none;border-radius:6px;border:1px solid #28406a;transition:.15s var(--ease)}
.cvg-tile.pri{background:#fff;color:var(--navy);border-color:#fff}
.cvg-tile.also{background:#6E86A8;color:var(--navy);border-color:#6E86A8}
.cvg-tile:hover{background:var(--red);border-color:var(--red);color:var(--navy)}
.cvg-aside{flex:1 1 250px;min-width:230px}
.cvg-regions{display:grid;grid-template-columns:1fr 1fr;gap:18px 22px}
.cvg-regions .reg h4{font-family:"Nunito Sans",sans-serif;font-size:12px;font-weight:800;text-transform:uppercase;
  letter-spacing:.16em;margin:0 0 8px;display:flex;align-items:center;gap:7px;color:#fff}
.cvg-regions .reg.pri h4::before{content:"";width:9px;height:9px;background:var(--red);flex:none}
.cvg-regions .reg.also h4{color:#9FB0C4}
.cvg-regions ul{margin:0;padding:0;list-style:none}
.cvg-regions li{margin:0 0 4px}
.cvg-regions a{color:#D7E0E9;text-decoration:none;font-size:14.5px;line-height:1.5}
.cvg-regions a:hover{color:#fff;text-decoration:underline;text-decoration-color:var(--red)}
@media(max-width:640px){
  .cvg-map{flex-direction:column;gap:20px}
  .cvg-regions{grid-template-columns:1fr 1fr}
}

/* per-cluster mini maps ("map visualizer" for each state group) */
.rm-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-top:30px}
.rm-card{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.14);padding:16px 14px 14px;
  transition:border-color .15s var(--ease),background .15s var(--ease)}
.rm-card:hover{border-color:var(--red);background:rgba(176,141,62,.10)}
.rm-fig{height:96px;display:flex;align-items:center;justify-content:center;margin-bottom:12px}
.rm-svg{width:100%;height:96px;overflow:visible}
.rm-st{fill:#fff;stroke:var(--navy);stroke-width:1.2;transition:fill .15s var(--ease)}
.rm-card:hover .rm-st{fill:var(--red)}
.rm-name{font-family:"Nunito Sans",sans-serif;font-size:12.5px!important;font-weight:800;text-transform:uppercase;
  letter-spacing:.14em;color:var(--red)!important;margin:0 0 8px;display:flex;align-items:center;gap:7px}
.rm-name::before{content:"";width:8px;height:8px;background:var(--red);flex:none}
.rm-list{margin:0;padding:0;list-style:none}
.rm-list li{margin:0 0 3px}
.rm-list a{color:#D7E0E9;text-decoration:none;font-size:13.5px;line-height:1.5}
.rm-list a:hover{color:#fff;text-decoration:underline;text-decoration-color:var(--red)}
@media(max-width:900px){.rm-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:560px){.rm-grid{grid-template-columns:repeat(2,1fr);gap:10px}.rm-svg,.rm-fig{height:74px}}

.cvg-aside .reg h4{font-family:"Nunito Sans",sans-serif;font-size:12px;font-weight:800;text-transform:uppercase;
  letter-spacing:.16em;margin:0 0 10px;color:#9FB0C4}
.cvg-aside .reg ul{margin:0;padding:0;list-style:none;columns:2;column-gap:20px}
.cvg-aside .reg li{margin:0 0 5px;break-inside:avoid}
.cvg-aside .reg a{color:#D7E0E9;text-decoration:none;font-size:14.5px}
.cvg-aside .reg a:hover{color:#fff;text-decoration:underline;text-decoration-color:var(--red)}

/* ---------- Craig feedback 2026-09-17 ---------- */
/* What we buy: larger vehicles on a road scene (cutout PNG/WebP over a drawn backdrop) */
.sector-visual.scene{
  min-height:260px;border:0;border-radius:6px;isolation:isolate;
  background:linear-gradient(180deg,#D5E1EC 0%,#E7EDF1 50%,#F2F1EC 66%);
}
.sector-visual.scene::before{ /* city skyline sitting on the kerb line */
  content:"";position:absolute;left:0;right:0;bottom:34%;height:44%;z-index:0;pointer-events:none;opacity:.16;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='520' height='140' viewBox='0 0 520 140' preserveAspectRatio='none'%3E%3Cpath fill='%230E2240' d='M0 140V92h18V70h22v22h12V48h16V30h14v18h10v44h14V76h22v16h10V22h12V8h8v14h12v70h14V58h26v34h12V66h18v26h16V40h14V26h16v14h8v52h12V72h24v20h14V50h26v42h10V62h20v30h14V34h12V18h10v16h10v58h16V70h22v22h14V54h22v38h18V80h12v60z'/%3E%3C/svg%3E") left bottom/520px 100% repeat-x;
}
.sector-visual.scene::after{ /* road with gold centre line */
  content:"";position:absolute;left:0;right:0;bottom:0;height:34%;z-index:1;pointer-events:none;
  background:
    repeating-linear-gradient(90deg,#C9A857 0 38px,transparent 38px 70px) left 55%/100% 3px no-repeat,
    linear-gradient(180deg,#9AA3AE 0,#9AA3AE 4px,#3B4655 4px,#2A3440 100%);
}
.b-lead .sector-visual.scene{min-height:360px}
.sv-veh{
  position:absolute;z-index:2;left:50%;bottom:9%;transform:translateX(-50%);
  width:90%;height:82%;object-fit:contain;object-position:center bottom;
  filter:drop-shadow(0 14px 10px rgba(14,34,64,.38));
  transition:transform .35s var(--ease);
}
.b-lead .sv-veh{width:84%;height:86%}
.sector:hover .sv-veh{transform:translateX(-50%) scale(1.03)}
.sector-visual.scene .sv-label{z-index:3;top:12px;bottom:auto}
@media(max-width:560px){.sector-visual.scene,.b-lead .sector-visual.scene{min-height:230px}}

/* Where we buy: ranked priority regions + other areas considered */
.cvg-st.oth{fill:#3E5A82;stroke:#28406a;stroke-width:1}
a.cvg-st.oth:hover>path{fill:#5A769C}
.cvg-key i.oth{background:#3E5A82;border-color:#5A769C}
.cvg-tile.oth{background:#3E5A82;color:#D7E0E9;border-color:#3E5A82}
.cvg-aside .reg + .reg{margin-top:26px;padding-top:22px;border-top:1px solid rgba(255,255,255,.14)}
.reg-rank{list-style:none;margin:0;padding:0;counter-reset:none}
.reg-rank li{margin:0 0 2px}
.reg-rank a{display:flex;align-items:baseline;gap:12px;color:#fff;text-decoration:none;font-weight:800;font-size:17px;padding:7px 0;border-bottom:1px solid rgba(255,255,255,.08)}
.reg-rank a span{color:var(--red);font-size:12px;letter-spacing:.12em}
.reg-rank a:hover{color:var(--red)}
.cvg-aside .reg.also p{color:#C7D2E0;font-size:14.5px;line-height:1.6;margin:0 0 12px}
.reg-cta{color:#fff;font-weight:800;font-size:14px;text-decoration:none;border-bottom:2px solid var(--red);padding-bottom:2px}
.reg-cta:hover{color:var(--red)}
.rm-rank{color:var(--red);margin-right:2px}
.rm-card{scroll-margin-top:110px}
#other-areas{scroll-margin-top:110px}
.rm-name:has(.rm-rank)::before{display:none}
@media(min-width:901px){.b-side .sector-visual.scene{min-height:300px}}

/* ---------- 2026-09-18: What we buy = one column on desktop ---------- */
/* Each sector is a full-width row: vehicle scene left, copy right. Stacks below 900px as before. */
#what-we-buy .bento{grid-template-columns:1fr}
#what-we-buy .bento>.sector{grid-column:1/-1}
@media(min-width:901px){
  #what-we-buy .sector .core{display:grid;grid-template-columns:minmax(0,46%) minmax(0,1fr);
    grid-auto-rows:auto;column-gap:44px;row-gap:0;align-items:start}
  #what-we-buy .sector .sector-visual.scene{grid-column:1;grid-row:1/span 7;margin:0;min-height:300px;height:100%}
  #what-we-buy .sector h3{margin:8px 0 6px}
  #what-we-buy .sector .core>:not(.sector-visual){grid-column:2}
  #what-we-buy .sector .tag{margin-top:18px}
  #what-we-buy .sector .go{align-self:start}
  #what-we-buy .sector .go+.go{margin-top:12px}
}

/* ---------- hero, 2026-09-21: wider measure, qualifying stats, sector tag ---------- */
.hero-photo .offer-list{margin:22px 0 26px;gap:10px}
.hero-photo .offer-list li{font-size:16.5px}
.hero-photo .hero-stats{margin-top:30px;padding-top:24px;gap:26px}
.hero-photo .hero-stats b{font-size:1.12rem;letter-spacing:-.01em;white-space:nowrap}
.hero-photo .hero-stats span{font-size:11.5px;letter-spacing:.11em;margin-top:5px;display:block}
.hero-tag{position:absolute;left:18px;bottom:18px;z-index:4;
  background:var(--navy);color:#fff;font-size:11.5px;font-weight:800;
  letter-spacing:.13em;text-transform:uppercase;padding:9px 13px;
  border-left:3px solid var(--red)}
@media(max-width:900px){
  .hero-photo .hero-stats{gap:20px;margin-top:26px;padding-top:20px}
  .hero-tag{left:14px;bottom:14px}
}
@media(max-width:560px){
  .hero-photo .hero-stats b{font-size:1.02rem}
  .hero-tag{font-size:10px;letter-spacing:.09em;padding:7px 10px}
}
/* hero CTA pair fits the 513px measure on one line at desktop */
.hero-photo .cta-row{flex-wrap:nowrap}
.hero-photo .cta-row .btn{font-size:14px;padding:14px 18px;letter-spacing:.02em}
.hero-photo .cta-row .btn svg{width:14px;height:14px}
.hero-photo .cta-note{margin-top:16px;margin-bottom:0;max-width:34em}
@media(max-width:900px){
  .hero-photo .cta-row{flex-wrap:wrap}
  .hero-photo .cta-row .btn{font-size:15px;padding:14px 22px}
}
