/* ==========================================================================
   IYS — Design tokens
   Do not hard-code colours, spacing or type sizes anywhere else.
   ========================================================================== */

:root{
  /* ---------- Brand / core palette ---------- */
  --primary:#001026;
  --on-primary:#ffffff;
  --primary-container:#0b2545;     /* navy — the brand blue */
  --on-primary-container:#778db2;
  --navy:#0B2545;
  --navy-deep:#081A33;

  --secondary:#466179;
  --on-secondary:#ffffff;
  --secondary-container:#c3e0fd;
  --secondary-fixed-dim:#adcae6;   /* body copy on navy */
  --steel:#8DA9C4;

  /* Gold is the single accent. --gold for marks on light,
     --gold-light for marks on navy (contrast-safe). */
  --gold:#C9A24B;
  --gold-light:#E4C87A;
  --gold-wash:#FBEFD2;

  /* ---------- Surfaces ---------- */
  --background:#f8f9fb;
  --surface:#f8f9fb;
  --surface-container-lowest:#ffffff;
  --surface-container-low:#f2f4f6;
  --surface-container:#eceef0;
  --surface-container-high:#e6e8ea;
  --surface-container-highest:#e0e3e5;
  --white:#ffffff;

  /* ---------- Text ---------- */
  --ink:#1B2A38;
  --on-surface:#191c1e;
  --on-surface-variant:#44474e;
  --mute:#5C6B7A;

  /* ---------- Lines & status ---------- */
  --border:#E1E6EC;
  --outline:#74777f;
  --outline-variant:#c4c6cf;
  --border-on-dark:#1E3E66;
  --success:#1E7A4C;
  --error:#ba1a1a;

  /* ---------- Type families ---------- */
  --font-display: 'Fraunces', Georgia, 'Times New Roman', serif;
  --font-body: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-wordmark: 'Nyala', 'Fraunces', Georgia, serif;  /* logo lockup only */

  /* ---------- Type scale ---------- */
  --text-display-hero:54px;
  --text-display-hero-mobile:34px;
  --text-headline-lg:32px;
  --text-headline-md:24px;
  --text-card-title:19px;
  --text-body-lg:17px;
  --text-body-default:15px;
  --text-body-sm:13.5px;
  --text-label:12.5px;
  --text-button:13.5px;
  --text-eyebrow:12px;
  --text-tag:11px;

  /* ---------- Spacing ---------- */
  --section-std:76px;
  --section-tight:56px;
  --grid-gap-md:22px;
  --grid-gap-lg:56px;
  --card-padding:28px;
  --gutter:28px;
  --max-width:1180px;

  /* ---------- Radii (roundness: ROUND_EIGHT) ---------- */
  --radius-sm:0.25rem;
  --radius-btn:7px;
  --radius-card:10px;
  --radius-panel:14px;
  --radius-full:9999px;

  /* ---------- Elevation ---------- */
  --shadow-card:0 14px 30px rgba(11,37,69,0.08);
  --shadow-panel:0 2px 8px rgba(11,37,69,0.05);
  --shadow-header:0 4px 20px rgba(8,26,51,0.06);

  /* ---------- Motion ---------- */
  --ease:cubic-bezier(.4,0,.2,1);
  --dur-fast:.15s;
  --dur:.3s;
  --dur-slow:.5s;

  --header-h:76px;
}

@media (max-width:900px){
  :root{
    --section-std:56px;
    --section-tight:40px;
    --grid-gap-lg:36px;
    --gutter:20px;
    --header-h:66px;
  }
}
