/* ============================================================
   EYP Ukraine — Design tokens (fonts + colour + type + spacing)
   Reverse-engineered from the EYP Ukraine Design System. This file is
   the single source of truth for brand variables. Do not introduce a
   second typeface, gradients, or soft elevation shadows.
   ============================================================ */

/* ---- Webfonts: Source Sans Pro (the only family) ---- */
@font-face {
  font-family: "Source Sans Pro";
  font-weight: 300; font-style: normal; font-display: swap;
  src: url("../fonts/SourceSansPro-Light.ttf") format("truetype");
}
@font-face {
  font-family: "Source Sans Pro";
  font-weight: 400; font-style: normal; font-display: swap;
  src: url("../fonts/SourceSansPro-Regular.ttf") format("truetype");
}
@font-face {
  font-family: "Source Sans Pro";
  font-weight: 600; font-style: normal; font-display: swap;
  src: url("../fonts/SourceSansPro-Semibold.ttf") format("truetype");
}
@font-face {
  font-family: "Source Sans Pro";
  font-weight: 700; font-style: normal; font-display: swap;
  src: url("../fonts/SourceSansPro-Bold.ttf") format("truetype");
}
@font-face {
  font-family: "Source Sans Pro";
  font-weight: 900; font-style: normal; font-display: swap;
  src: url("../fonts/SourceSansPro-Black.ttf") format("truetype");
}
@font-face {
  font-family: "Source Sans Pro";
  font-weight: 900; font-style: italic; font-display: swap;
  src: url("../fonts/SourceSansPro-BlackItalic.ttf") format("truetype");
}

:root {
  /* ---- Brand core (the logo lock-up) ---- */
  --eyp-blue:        #1D50A2;  /* primary brand blue */
  --eyp-blue-deep:   #0057B7;  /* Ukrainian-flag blue — bold backgrounds */
  --eyp-yellow:      #FED600;  /* primary yellow */
  --eyp-yellow-warm: #FED310;  /* logo yellow */

  /* ---- Network accent palette ---- */
  --net-pink:    #E94082;  /* CTA / energy */
  --net-sky:     #0C9FDA;  /* interactive cues */
  --net-blue:    #096AC7;
  --net-indigo:  #394692;
  --net-gold:    #FFD700;
  --net-green:   #19C984;
  --net-slate:   #253746;  /* near-ink, footer */
  --net-maroon:  #990034;

  /* ---- Neutrals ---- */
  --ink:        #000000;
  --ink-soft:   #1D1D1B;
  --white:      #FFFFFF;
  --paper:      #F1F1F1;
  --grey-300:   #D9D9D9;
  --grey-500:   #C4C4C4;
  --grey-700:   #444444;

  /* ---- Semantic aliases ---- */
  --color-bg:          var(--white);
  --color-bg-alt:      var(--paper);
  --color-text:        var(--ink);
  --color-text-muted:  var(--grey-700);
  --color-primary:     var(--eyp-blue);
  --color-accent:      var(--eyp-yellow);
  --color-cta:         var(--net-pink);
  --color-interactive: var(--net-sky);

  /* ---- Typography ---- */
  --font-sans: "Source Sans Pro", -apple-system, BlinkMacSystemFont,
               "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --font-display: var(--font-sans);
  --font-body:    var(--font-sans);

  --fw-light: 300; --fw-regular: 400; --fw-semibold: 600;
  --fw-bold: 700; --fw-black: 900;

  --fs-hero: 96px; --fs-display: 64px; --fs-title: 48px;
  --fs-heading: 36px; --fs-body-lg: 28px; --fs-body: 24px;
  --fs-caption: 20px; --fs-micro: 16px;

  --lh-tight: 1.0; --lh-snug: 1.1; --lh-normal: 1.35; --lh-relaxed: 1.5;
  --ls-tight: -0.01em; --ls-normal: 0em; --ls-wide: 0.02em; --ls-wider: 0.06em;

  /* ---- Spacing ---- */
  --space-1: 4px; --space-2: 8px; --space-3: 12px; --space-4: 16px;
  --space-5: 24px; --space-6: 32px; --space-7: 48px; --space-8: 64px;
  --space-9: 96px; --space-10: 128px;

  /* ---- Radii — sharp by default ---- */
  --radius-none: 0; --radius-xs: 2px; --radius-sm: 4px; --radius-pill: 999px;

  /* ---- Signature slant ---- */
  --slant-angle: -2deg;

  /* ---- Shadows — flat hard offset only ---- */
  --shadow-none: none;
  --shadow-flat: 6px 6px 0 rgba(0, 0, 0, 0.19);

  /* ---- Strokes ---- */
  --stroke-thin: 3px; --stroke-bold: 6px; --stroke-heavy: 10px;

  /* ---- Motion ---- */
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);
  --dur-fast: 120ms; --dur-base: 200ms; --dur-slow: 360ms;
}
