/* LOCKED tokens — Direct Insurance Service of Minnesota (base system: professional, bespoke-tuned)
   Deep steel-blue brand on warm grey, with a restrained bronze accent reserved for
   small decorative use. Deliberately distinct from prior professional sites
   (Wiser navy, Bauman evergreen, Oakwood burgundy, Options teal-slate, Martinson ink+bronze).
   Variable NAMES match _shared/base.css; only values changed. Contrast verified for AA
   (Python WCAG check — all body/button/footer/band/eyebrow pairs >= 4.5:1). */
@import url('https://fonts.googleapis.com/css2?family=Source+Serif+4:opsz,wght@8..60,500;8..60,600&family=Inter:wght@400;500;600&display=swap');
:root{
  --bg:#ffffff; --surface:#ffffff; --ink:#2b3138; --ink-strong:#10151c; --muted:#586069;
  --line:#dfe5ea;
  --brand:#2d4a5e; --brand-dark:#1d323f; --brand-tint:#e7eef2; --on-brand:#ffffff;
  --accent:#9a6a3c;
  --hero-bg:radial-gradient(1100px 480px at 86% -14%,#e7eef2,transparent),#eef3f6;
  --header-bg:rgba(255,255,255,.9); --footer-bg:#eef2f5;
  --band-bg:#10151c; --on-band:#ffffff; --on-band-muted:#9aa3af;

  --font-heading:'Source Serif 4',Georgia,serif; --font-body:'Inter',system-ui,sans-serif;
  --fs-base:16.5px; --lh-body:1.68; --fw-body:400; --fw-head:600; --lh-head:1.14; --ls-head:-.01em;
  --fs-lead:1.18rem; --fs-h1:clamp(2.2rem,4.8vw,3.5rem); --fs-h2:clamp(1.6rem,3.2vw,2.3rem); --fs-h3:1.26rem;

  --container:1100px; --gutter:26px; --section-y:92px; --hero-y:100px; --nav-h:78px;
  --space-3:10px; --space-4:16px; --space-5:26px; --space-6:30px; --space-7:54px;
  --btn-pad:14px 28px;
  --radius:6px; --radius-lg:10px; --radius-pill:6px;
  --shadow:0 6px 20px rgba(16,21,28,.06); --shadow-lg:0 16px 40px rgba(16,21,28,.12);
  --dur:140ms; --ease:cubic-bezier(.3,.6,.3,1);
}
/* Primary buttons use deep steel-blue (white text passes AA: ~9.3:1). */
.btn{background:var(--brand);color:var(--on-brand)}
.btn:hover{background:var(--brand-dark)}
.btn.ghost{background:transparent;color:var(--brand)}
.btn.ghost:hover{background:var(--brand-tint)}
/* Eyebrow + card icons in brand steel-blue (bronze accent reserved for small decorative SVG only). */
.eyebrow{color:var(--brand);letter-spacing:.16em}
.card .ic{background:var(--brand-tint);color:var(--brand)}
