/* tokens.css: design tokens (DESIGN_SYSTEM 2-4). The only file with raw colour values; every other file uses var(--rgn-*). */

/* Fonts: self-hosted Latin subsets (assets/fonts, OFL), metric-matched fallbacks so the swap does not shift the layout. */
@font-face{font-family:"Lato";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/lato-400.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2190-2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Lato";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/lato-700.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2190-2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Merriweather";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/merriweather-700.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2190-2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Lato Fallback";font-weight:400;src:local("Arial"),local("Helvetica");size-adjust:97.45%;ascent-override:101.28%;descent-override:21.86%;line-gap-override:0%}
@font-face{font-family:"Lato Fallback";font-weight:700;src:local("Arial Bold"),local("Arial");size-adjust:92.31%;ascent-override:106.93%;descent-override:23.08%;line-gap-override:0%}
@font-face{font-family:"Merriweather Fallback";font-weight:700;src:local("Georgia Bold"),local("Georgia");size-adjust:96.5%;ascent-override:101.97%;descent-override:28.29%;line-gap-override:0%}

:root{
  /* colour */
  --rgn-night:#043162;--rgn-night-2:#054676;--rgn-night-3:#022556;
  --rgn-navy:#273F5D;--rgn-ink:#1B2B40;--rgn-muted:#5B6470;
  --rgn-purple:#580881;--rgn-plum:#8C2682;
  --rgn-orange:#FF7F08;--rgn-orange-hover:#E66F00;--rgn-orange-edge:#C25E00;--rgn-cta-ink:#0E1A2B;
  --rgn-bg:#FFFFFF;--rgn-bg-alt:#F5F7FA;--rgn-bg-sky:#EEF3F9;
  --rgn-border:#D6DBE2;--rgn-border-strong:#7A8699;
  --rgn-on-dark:#FFFFFF;--rgn-on-dark-muted:#C5D4E1;--rgn-focus-on-dark:#FFC27A;
  --rgn-success:#1A7F37;--rgn-error:#B3261E;
  --rgn-scrim:rgba(4,49,98,.85);
  /* semantic layer (swapped by .rgn-on-dark) */
  --rgn-text:var(--rgn-ink);--rgn-text-muted:var(--rgn-muted);--rgn-link:var(--rgn-purple);--rgn-link-hover:var(--rgn-plum);
  --rgn-focus:var(--rgn-purple);--rgn-surface:var(--rgn-bg);
  /* type */
  --rgn-font-body:"Lato","Lato Fallback",system-ui,"Segoe UI",Arial,sans-serif;
  --rgn-font-heading:"Merriweather","Merriweather Fallback",Georgia,"Times New Roman",serif;
  --rgn-fs-xs:.8125rem;--rgn-lh-xs:1.45;
  --rgn-fs-sm:.875rem;--rgn-lh-sm:1.5;
  --rgn-fs-base:1rem;--rgn-lh-base:1.6;
  --rgn-fs-md:1.1875rem;--rgn-lh-md:1.7;
  --rgn-fs-lg:1.25rem;--rgn-lh-lg:1.35;
  --rgn-fs-xl:clamp(1.5rem,1.333rem + .741vw,2rem);--rgn-lh-xl:1.25;
  --rgn-fs-2xl:clamp(1.75rem,1.5rem + 1.111vw,2.5rem);--rgn-lh-2xl:1.2;
  --rgn-fs-3xl:clamp(2rem,1.583rem + 1.852vw,3.25rem);--rgn-lh-3xl:1.15;
  /* space, shape, layout */
  --rgn-space-1:4px;--rgn-space-2:8px;--rgn-space-3:12px;--rgn-space-4:16px;--rgn-space-5:24px;--rgn-space-6:32px;--rgn-space-7:48px;--rgn-space-8:64px;--rgn-space-9:96px;
  --rgn-section-y:clamp(3rem,2rem + 4.444vw,6rem);
  --rgn-gutter:clamp(16px,4vw,32px);--rgn-tap:44px;
  --rgn-radius-sm:4px;--rgn-radius:8px;--rgn-radius-lg:16px;--rgn-radius-pill:999px;
  --rgn-shadow-1:0 1px 2px rgba(4,49,98,.08),0 2px 8px rgba(4,49,98,.06);
  --rgn-shadow-2:0 8px 24px rgba(4,49,98,.14);
  --rgn-shadow-up:0 -4px 16px rgba(4,49,98,.12);
  --rgn-container:1200px;--rgn-container-wide:1320px;--rgn-container-text:700px;
  --rgn-header-h:56px;--rgn-announce-h:32px;
  /* layers: the drawer sits above p2's #rgp1-sticky (9980); Klaviyo and Freshchat stay above ours */
  --rgn-z-sticky-col:10;--rgn-z-sticky-buy:80;--rgn-z-header:100;--rgn-z-dropdown:110;--rgn-z-drawer:9990;--rgn-z-skip:10000;
  /* motion */
  --rgn-dur-fast:120ms;--rgn-dur:200ms;--rgn-ease:cubic-bezier(.2,0,0,1);
}
@media (min-width:1024px){:root{--rgn-header-h:72px;--rgn-announce-h:36px}}

/* night-sky surfaces: text, link and focus tokens swap */
.rgn-on-dark{
  --rgn-text:var(--rgn-on-dark);--rgn-text-muted:var(--rgn-on-dark-muted);--rgn-link:var(--rgn-on-dark);--rgn-link-hover:var(--rgn-focus-on-dark);
  --rgn-focus:var(--rgn-focus-on-dark);--rgn-surface:var(--rgn-night);
}
