/* ============================================
   VIRF 2.0 — Design Tokens
   ============================================ */

/* ============================================
   SELF-HOSTED FONTS
   ============================================ */
/* Latin-ext subset — pentru diacritice românești (ă, ș, ț, etc.) și alte limbi est-europene.
   Browser-ul folosește acest fișier DOAR când întâlnește caractere din unicode-range. */
@font-face {
  font-family: 'Poppins';
  src: url('../fonts/poppins-v24-latin-ext-regular.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Poppins';
  src: url('../fonts/poppins-v24-latin-ext-600.woff2') format('woff2');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Poppins';
  src: url('../fonts/poppins-v24-latin-ext-700.woff2') format('woff2');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Poppins';
  src: url('../fonts/poppins-v24-latin-ext-800.woff2') format('woff2');
  font-weight: 800;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* Latin subset — caracterele standard (a-z, A-Z, punctuație, latin-1) */
@font-face {
  font-family: 'Poppins';
  src: url('../fonts/poppins-v24-latin-regular.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Poppins';
  src: url('../fonts/poppins-v24-latin-600.woff2') format('woff2');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Poppins';
  src: url('../fonts/poppins-v24-latin-700.woff2') format('woff2');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Poppins';
  src: url('../fonts/poppins-v24-latin-800.woff2') format('woff2');
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}

:root {
  /* === COLORS === */
  --color-dark:       #0A1628;   /* primary dark navy */
  --color-dark-alt:   #0D1E36;   /* slightly lighter navy */
  --color-red:        #C8102E;   /* brand red accent */
  --color-blue:       #1B3A6B;   /* secondary blue */
  --color-gray:       #546585;   /* muted gray — #546585 passes WCAG AA (~5.5:1 on white) */
  --color-gray-mid:   #8494AD;   /* mid gray — secondary text on dark */
  --color-gray-light: #E8ECF2;   /* light gray backgrounds */
  --color-white:      #FFFFFF;
  --color-overlay:    rgba(10, 22, 40, 0.55); /* dark overlay for hero */

  /* === TYPOGRAPHY === */
  --font-primary: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;

  --text-xs:   0.75rem;   /* 12px */
  --text-sm:   0.875rem;  /* 14px */
  --text-base: 1rem;      /* 16px */
  --text-lg:   1.125rem;  /* 18px */
  --text-xl:   1.25rem;   /* 20px */
  --text-2xl:  1.5rem;    /* 24px */
  --text-3xl:  1.875rem;  /* 30px */
  --text-4xl:  2.25rem;   /* 36px */
  --text-5xl:  3rem;      /* 48px */
  --text-6xl:  3.75rem;   /* 60px */
  --text-7xl:  4.5rem;    /* 72px */

  --weight-regular:   400;
  --weight-semibold:  600;
  --weight-bold:      700;

  /* === SPACING (8px grid) === */
  --space-1:  0.25rem;  /* 4px */
  --space-2:  0.5rem;   /* 8px */
  --space-3:  0.75rem;  /* 12px */
  --space-4:  1rem;     /* 16px */
  --space-5:  1.25rem;  /* 20px */
  --space-6:  1.5rem;   /* 24px */
  --space-8:  2rem;     /* 32px */
  --space-10: 2.5rem;   /* 40px */
  --space-12: 3rem;     /* 48px */
  --space-16: 4rem;     /* 64px */
  --space-20: 5rem;     /* 80px */
  --space-24: 6rem;     /* 96px */
  --space-32: 8rem;     /* 128px */

  /* === LAYOUT === */
  --container-max:   1280px;
  --container-wide:  1440px;
  --container-narrow: 800px;

  /* === BORDER RADIUS === */
  --radius-sm:  4px;
  --radius-md:  8px;
  --radius-lg:  12px;
  --radius-xl:  20px;
  --radius-full: 9999px;

  /* === TRANSITIONS === */
  --transition-fast:   150ms ease;
  --transition-base:   250ms ease;
  --transition-slow:   400ms ease;
  --transition-slower: 600ms ease;

  /* === SHADOWS === */
  --shadow-sm:  0 1px 3px rgba(10, 22, 40, 0.08);
  --shadow-md:  0 4px 16px rgba(10, 22, 40, 0.12);
  --shadow-lg:  0 8px 32px rgba(10, 22, 40, 0.18);
  --shadow-xl:  0 16px 48px rgba(10, 22, 40, 0.24);

  /* === Z-INDEX === */
  --z-below:   -1;
  --z-base:     0;
  --z-above:    10;
  --z-overlay:  100;
  --z-nav:      200;
  --z-modal:    300;
}
