/* Promotions cards (release 20261027-promos-live). Same-origin file (CSP style-src 'self'). Uses the site's colour
   variables and its self-hosted Archivo/Inter; no new fonts, no images. Loaded on /, /ad-landing/ and /promotions/. */
.promo-strip{padding:28px 0 8px}
.promo-strip .promo-title{margin:0 0 14px;font-family:'Archivo','Inter',system-ui,sans-serif;font-weight:700;color:var(--navy);font-size:1.35rem}
.promo-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
a.promo-card{color:var(--ink);text-decoration:none;padding:16px 18px;gap:4px;border-top:4px solid var(--cta)}
a.promo-card:hover,a.promo-card:focus-visible{border-color:#c3d0dd;border-top-color:var(--cta);box-shadow:0 10px 24px rgba(20,50,79,.16)}
a.promo-card:focus-visible{outline:3px solid var(--navy);outline-offset:2px}
.promo-tag{font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--cta)}
.promo-h{font-family:'Archivo','Inter',system-ui,sans-serif;font-weight:700;color:var(--navy);font-size:1.05rem;line-height:1.25}
.promo-p{font-size:.9rem;color:var(--muted);line-height:1.45}
.promo-more{margin-top:auto;padding-top:6px;font-size:.9rem;font-weight:700;color:var(--cta);text-decoration:underline}
@media (max-width:860px){.promo-cards{grid-template-columns:1fr;gap:10px}a.promo-card{padding:12px 14px}}
/* /ad-landing/ compact version: sits above the hero, kept short so the quote form stays high on phones */
.promo-compact{padding:10px 0 0;background:var(--alt)}
.promo-compact .promo-cards{gap:8px}
.promo-compact a.promo-card{padding:9px 12px;gap:2px;border-top-width:3px}
.promo-compact .promo-h{font-size:.95rem}
.promo-compact .promo-p{font-size:.82rem;line-height:1.35}
.promo-s{display:none}
@media (max-width:860px){.promo-compact .promo-tag,.promo-compact .promo-h,.promo-compact .promo-p,.promo-compact .promo-more{display:none}.promo-compact .promo-s{display:block;font-size:.8rem;line-height:1.25;color:var(--ink)}.promo-compact .promo-s strong{color:var(--navy)}.promo-compact{padding:8px 0 0}.promo-compact .promo-cards{gap:6px}.promo-compact a.promo-card{padding:5px 10px;min-height:44px;justify-content:center}}
/* /promotions/ page */
.promo-page h2{font-family:'Archivo','Inter',system-ui,sans-serif;font-weight:700}
.promo-page .promo-offer{border:1px solid var(--line);border-top:4px solid var(--cta);border-radius:var(--r);padding:18px 20px;margin:0 0 26px;background:#fff}
.promo-page .promo-offer h2{margin-top:0}
.promo-page .promo-lead{font-size:1.05rem;color:var(--ink)}
.promo-page .promo-form{display:grid;gap:10px;max-width:520px}
.promo-page .promo-form label{display:grid;gap:4px;font-weight:600;color:var(--ink)}
.promo-page .promo-form input,.promo-page .promo-form textarea{font:inherit;padding:10px 12px;border:1px solid #6b7a89;border-radius:8px;min-height:44px}
.promo-page .promo-form .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.promo-page .promo-form button{justify-self:start;min-height:44px}
@media (max-width:860px){.promo-page .promo-offer{padding:14px 14px}.promo-page .promo-offer h2{font-size:1.25rem;line-height:1.25}}

/* C7 dark theme (release 20261027 ads-live, Andrew Oct 27 1:31 PM ET): the promo band on / sits on the homepage's dark
   background between the dark trust strip and the dark What we do section, and the promo cards (/, /ad-landing/) use the
   What we do card style (navy gradient + fine diagonal pattern, light border, shadow) with the orange top accent kept.
   CSS only, no images. Text: white / #d6e0ea / amber #f5b26b on navy, all >= 4.5:1. Layout (padding, widths) unchanged. */
.promo-strip{background:linear-gradient(180deg,#0d2236 0,#081426 100%)}
.promo-strip .promo-title{color:#fff}
a.promo-card{background-color:#14324f;background-image:repeating-linear-gradient(135deg,rgba(255,255,255,.045) 0,rgba(255,255,255,.045) 1px,transparent 1px,transparent 12px),linear-gradient(180deg,#14324f 0%,#122c46 100%);color:#d6e0ea;border:1px solid rgba(255,255,255,.20);border-top:4px solid #e8892b;border-radius:14px;box-shadow:0 14px 30px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.12)}
a.promo-card:hover,a.promo-card:focus-visible{border-color:rgba(232,137,43,.80);border-top-color:#e8892b;box-shadow:0 18px 38px rgba(0,0,0,.38)}
a.promo-card:focus-visible{outline:3px solid #f5b26b !important;outline-offset:2px}
.promo-tag{color:#f5b26b}
.promo-h{color:#fff}
.promo-p{color:#d6e0ea}
.promo-more{color:#f5b26b}
.promo-compact{background:#0d2236}
.promo-compact .promo-s{color:#d6e0ea}
.promo-compact .promo-s strong{color:#fff}
