/* FSA design tokens: main cf96312's design system (Cormorant Garamond / DM Sans / JetBrains Mono, navy+gold+cream), one scale. */
@font-face { font-family: 'Cormorant Garamond'; font-style: italic; font-weight: 400; font-display: swap; src: url(/fonts/CormorantGaramond-italic-0.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Cormorant Garamond'; font-style: normal; font-weight: 400; font-display: swap; src: url(/fonts/CormorantGaramond-normal-1.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Cormorant Garamond'; font-style: normal; font-weight: 500; font-display: swap; src: url(/fonts/CormorantGaramond-normal-1.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Cormorant Garamond'; font-style: normal; font-weight: 600; font-display: swap; src: url(/fonts/CormorantGaramond-normal-1.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Cormorant Garamond'; font-style: normal; font-weight: 700; font-display: swap; src: url(/fonts/CormorantGaramond-normal-1.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'DM Sans'; font-style: normal; font-weight: 300; font-display: swap; src: url(/fonts/DMSans-normal-2.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'DM Sans'; font-style: normal; font-weight: 400; font-display: swap; src: url(/fonts/DMSans-normal-2.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'DM Sans'; font-style: normal; font-weight: 500; font-display: swap; src: url(/fonts/DMSans-normal-2.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'DM Sans'; font-style: normal; font-weight: 600; font-display: swap; src: url(/fonts/DMSans-normal-2.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'DM Sans'; font-style: normal; font-weight: 700; font-display: swap; src: url(/fonts/DMSans-normal-2.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'JetBrains Mono'; font-style: normal; font-weight: 400; font-display: swap; src: url(/fonts/JetBrainsMono-normal-3.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'JetBrains Mono'; font-style: normal; font-weight: 500; font-display: swap; src: url(/fonts/JetBrainsMono-normal-3.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
:root{
  /* main's three families, one role each */
  --font:'DM Sans',sans-serif; --font-head:'Cormorant Garamond',serif; --font-mono:'JetBrains Mono',monospace;
  /* one type scale (desktop) */
  --fs-hero:88px; --fs-h1:60px; --fs-h2:42px; --fs-lede:22px; --fs-h3:18px; --fs-body:16px; --fs-small:14px; --fs-label:12px;
  --lh-hero:1.05; --lh-h1:1.1; --lh-h2:1.2; --lh-h3:1.4; --lh-body:1.75; --lh-small:1.55;
  --ls-hero:0; --ls-h1:0; --ls-h2:0; --ls-h3:0; --ls-label:.2em;
  /* main's colours */
  --navy:#0B1D33; --navy-mid:#122A47; --navy-light:#1A3558; --gold:#D4A843; --gold-light:#E8C566; --cream:#FAF9F6; --white:#FFFFFF;
  --text-primary:#1A1A1A; --text-secondary:#6B7280; --text-tertiary:#9CA3AF; --border:#E5E7EB; --border-dark:#1E3A5F;
  /* role aliases used by the shared CSS */
  --bg:var(--cream); --surface:#FFFFFF; --surface-alt:#FAF9F6; --surface-dark:var(--navy); --surface-dark-2:var(--navy-mid);
  --border-strong:#E5E7EB; --text:var(--text-primary); --text-muted:#6B7280; --text-on-dark:#FFFFFF; --text-on-dark-muted:rgba(255,255,255,.72);
  --ink:var(--navy); --accent:var(--gold); --accent-on-light:#1A3558;
  --sp-4:4px; --sp-8:8px; --sp-12:12px; --sp-16:16px; --sp-24:24px; --sp-32:32px; --sp-48:48px; --sp-64:64px; --sp-96:96px;
  --radius:12px; --radius-sm:8px; --radius-md:12px; --header-h:72px; --container:1200px; --measure:720px; --gutter:48px;
  --sb-w:260px; --drawer-w:min(320px,86vw);
  --fsb-navy:var(--navy); --fsb-gold:var(--gold); --fsb-gold-l:var(--gold-light); --fsb-border:var(--border-dark);
  --shadow-card:0 1px 3px rgba(11,29,51,0.04),0 8px 24px rgba(11,29,51,0.06);
}
@media (max-width:767.98px){
  :root{--fs-hero:44px; --fs-h1:40px; --fs-h2:30px; --fs-lede:20px; --gutter:16px; --header-h:60px}
}
