@font-face{font-family:"Archivo";src:url(/fonts/archivo-latin-wdth-normal.woff2) format("woff2");font-weight:100 900;font-stretch:62% 125%;font-display:swap}
:root{--red:#ED1C24;--red-dk:#B5121B;--brick:#77282B;--ink:#111;--paper:#fff;--stone:#F6F5F2;--line:#DCDAD5;--mute:#555;
 --cond:"Archivo","Arial Narrow",Arial,sans-serif;--sans:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;--serif:Georgia,"Times New Roman",Times,serif}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;font:17px/1.6 var(--sans);color:var(--ink);background:var(--paper)}
img{max-width:100%;height:auto}
a{color:var(--red-dk);text-underline-offset:3px}a:hover{color:var(--ink)}
:focus-visible{outline:3px solid var(--red-dk);outline-offset:2px}
.wrap{max-width:1160px;margin:0 auto;padding:0 22px}
.skip{position:absolute;left:-999px}.skip:focus{left:12px;top:12px;background:#fff;padding:8px 12px;z-index:9}
h1,h2,h3,h4{line-height:1.15;margin:0 0 .5em}
h2,h3,h4{font-family:var(--cond);font-stretch:75%;font-weight:800;text-transform:uppercase;letter-spacing:.02em}
h2{font-size:clamp(1.6rem,3vw,2.2rem)}h2::after{content:"";display:block;width:48px;height:3px;background:var(--red);margin-top:10px}
h3{font-size:1.25rem}
.lead{font-size:1.15rem;color:var(--mute);max-width:62ch}
.sec{padding:clamp(44px,6vw,80px) 0}.sec.alt{background:var(--stone)}
.sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:18px}.sec-head h2{margin:0}
.kicker{display:block;font:700 .8rem/1.2 var(--cond);font-stretch:75%;letter-spacing:.14em;text-transform:uppercase;color:var(--brick);margin:0 0 6px}
.seeall{font:800 .95rem var(--cond);font-stretch:75%;text-transform:uppercase;letter-spacing:.06em;text-decoration:none}
.btn{display:inline-block;font:800 1.05rem/1 var(--cond);font-stretch:75%;text-transform:uppercase;letter-spacing:.06em;
 background:var(--red);color:#fff;padding:15px 24px;border:2px solid var(--red);border-radius:2px;text-decoration:none;margin:0 10px 10px 0}
.btn:hover{background:var(--red-dk);border-color:var(--red-dk);color:#fff}
.btn-line{background:transparent;color:var(--ink);border-color:var(--ink)}.btn-line:hover{background:var(--ink);color:#fff;border-color:var(--ink)}
/* header + brand-rule lockup: "Veteran-built." directly under the logo */
.hdr{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}
.hdr-in{display:flex;align-items:center;justify-content:space-between;min-height:84px;gap:16px;position:relative}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink)}
.card-lock{margin-bottom:8px;align-items:flex-start}.card-vb{display:block;font:800 .58rem/1 Archivo,system-ui,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#E6E6E6;margin:-4px 0 10px}
.vb-lock{display:inline-flex;flex-direction:column;align-items:center;gap:3px;line-height:1}
.vb-lock .vb{font:800 .58rem/1 Archivo,system-ui,sans-serif;letter-spacing:.16em;text-transform:uppercase;white-space:nowrap;display:block;color:var(--brick)}
.brand .logo{display:block;width:34px;height:auto}
.wm{font-family:var(--serif);font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:1.02rem;line-height:1.15;max-width:15em}
#nav ul{display:flex;gap:26px;list-style:none;margin:0;padding:0}
#nav a{font:800 .95rem/1 var(--cond);font-stretch:75%;text-transform:uppercase;letter-spacing:.08em;color:var(--ink);text-decoration:none;padding:8px 0;border-bottom:3px solid transparent}
#nav a:hover,#nav a[aria-current="page"]{border-bottom-color:var(--red)}
.menu-btn{display:none;font:800 .9rem var(--cond);text-transform:uppercase;background:#fff;border:2px solid var(--ink);padding:10px 14px;min-height:44px}
@media (max-width:860px){.menu-btn{display:block}#nav{display:none;position:absolute;left:-22px;right:-22px;top:84px;background:#fff;border-bottom:1px solid var(--line)}
 #nav.open{display:block}#nav ul{flex-direction:column;gap:0;padding:8px 22px}#nav a{display:block;padding:14px 0}.wm{font-size:.86rem}}
/* cards */
.grid{display:grid;gap:22px}.g2{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(3,1fr)}
@media (max-width:860px){.g2,.g3{grid-template-columns:1fr}}
.card{background:#fff;border:1px solid var(--line);border-top:4px solid var(--ink);padding:24px;display:flex;flex-direction:column}
.card .logo{height:48px;width:auto;margin-bottom:14px;object-fit:contain;object-position:left}
.card .logo-dark{background:#000;padding:6px 10px;height:52px;align-self:flex-start}
.card .kind{font:700 .75rem var(--cond);text-transform:uppercase;letter-spacing:.14em;color:var(--brick)}
.card p{margin:.4em 0 1em}.card .go{margin-top:auto;font-weight:700}
.note{font-size:.92rem;color:var(--mute);border-left:3px solid var(--red);padding-left:12px}
.facts{border-collapse:collapse;width:100%}.facts th,.facts td{text-align:left;padding:12px;border-bottom:1px solid var(--line);vertical-align:top}
.facts th{width:32%;font:800 .9rem var(--cond);font-stretch:75%;text-transform:uppercase;letter-spacing:.06em}
@media (max-width:560px){.facts th,.facts td{display:block;width:100%;padding:8px 0}.facts th{border-bottom:0;padding-top:14px}}
.brand-sec{border-top:1px solid var(--line);padding-top:28px;margin-top:28px}
/* form */
.form label{display:block;font-weight:700;margin:16px 0 6px}
.form input,.form select,.form textarea{width:100%;font:inherit;padding:12px;border:1px solid #8a8a8a;border-radius:2px;background:#fff;min-height:48px}
.form .check{display:flex;gap:10px;font-weight:400;align-items:flex-start}.form .check input{width:22px;min-height:22px;margin-top:3px}
.hp{position:absolute!important;left:-5000px!important}
/* footer: same on every page */
.ftr{background:var(--ink);color:#E6E6E6;padding:48px 0 30px}
.ftr a{color:#fff}.ftr-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:32px}
.ftr ul{list-style:none;padding:0;margin:0}.ftr li{margin:6px 0}
.ftr-h{font-size:1rem;color:#fff}.ftr-h::after{background:var(--red)}
.ftr-brand{display:flex;gap:16px;align-items:flex-start}.ftr-brand .vb-lock .vb{color:#E6E6E6}.ftr-brand img{width:56px;height:auto;display:block}
.fine{font-size:.8rem;color:#A9A3A4}.std{font-size:.9rem;border-top:1px solid #333;margin-top:26px;padding-top:16px}
@media (max-width:860px){.ftr-grid{grid-template-columns:1fr}}
/* hero (C.6.3 option A: the red badge beside the company name; no people) */
.vhero{background:var(--stone);border-bottom:4px solid var(--red);padding:clamp(48px,8vw,104px) 0}
.vhero-in{display:grid;grid-template-columns:auto 1fr;gap:clamp(28px,5vw,72px);align-items:center}
.vhero-mark img{display:block;width:clamp(150px,22vw,260px);height:auto}
.eyebrow{font:700 .8rem/1.2 var(--cond);font-stretch:75%;letter-spacing:.14em;text-transform:uppercase;color:var(--brick);margin:0 0 14px}
.coname{font-family:var(--serif);font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:clamp(2rem,4.6vw,3.6rem);line-height:1.08;color:var(--ink);margin:0 0 18px;overflow-wrap:anywhere}
.coname::after{content:"";display:block;width:72px;height:4px;background:var(--red);margin-top:20px}
.coname.coname-sm{font-size:clamp(1.8rem,3.4vw,2.6rem)}.coname.u-fs2{font-size:2rem}
.tagline{font-size:clamp(1.1rem,1.8vw,1.35rem);color:var(--mute);margin:0 0 26px;max-width:34ch}
@media (max-width:760px){.vhero-in{grid-template-columns:1fr;text-align:center;justify-items:center}.coname::after{margin-left:auto;margin-right:auto}.tagline{margin-left:auto;margin-right:auto}}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
.u-center{text-align:center}.u-start{align-items:start}.u-mt22{margin-top:22px}.u-mx-auto{margin-left:auto;margin-right:auto}.u-mb18{margin-bottom:18px}
.badge-side img{width:220px;height:auto}
/* David: dark backgrounds on VIG (brand-rules note, Oct 29), colors from the 2026 logo: red #ED1C24, black #231F20, white */
body{background:#141213;color:#F2F0EF}
a{color:#FF6B70}a:hover{color:#fff}
.sec.alt{background:#1D1A1B}.lead,.tagline,.note{color:#CFC9CA}
.hdr{background:#141213;border-bottom-color:#2D2829}.wm{color:#fff}.vb-lock .vb{color:#E6E6E6}
#nav a{color:#fff}.menu-btn{background:#141213;color:#fff;border-color:#fff}
@media (max-width:860px){#nav{background:#141213;border-bottom-color:#2D2829}}
.card{background:#1D1A1B;border-color:#2D2829;border-top-color:#ED1C24;color:#F2F0EF}
.card .logo-light{background:#fff;padding:6px 10px;height:52px;align-self:flex-start}
.kicker,.eyebrow,.card .kind{color:#FF8A8F}
.facts th,.facts td{border-bottom-color:#2D2829}
.vhero{background:#1D1A1B}.coname{color:#fff}
.btn-line{color:#fff;border-color:#fff}.btn-line:hover{background:#fff;color:#141213;border-color:#fff}
.brand-sec{border-top-color:#2D2829}
.form label{color:#fff}.form input,.form select,.form textarea{background:#fff;color:#111}
.ftr{background:#0C0A0B}
