/* ==========================================================================
   Design tokens + web font (self-hosted)
   Fonte di verita: DESIGN.md
   ========================================================================== */

/* Raleway - variabile (titoli, UI) */
@font-face {
  font-family: 'Raleway';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url('../fonts/raleway-latin.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+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Raleway';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url('../fonts/raleway-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* Plus Jakarta Sans - variabile (corpo) */
@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-weight: 200 800;
  font-display: swap;
  src: url('../fonts/jakarta-latin.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+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-weight: 200 800;
  font-display: swap;
  src: url('../fonts/jakarta-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

:root {
  /* --- Brand --- */
  --c-navy: #1a3a5c;
  --c-navy-deep: #0f2040;
  --c-navy-light: #1f4a74;          /* solo nei gradienti */
  --c-accent: #4caaed;
  --c-accent-light: #6cbcf2;
  --c-accent-lighter: #8fd0ff;
  --c-accent-dark: #1a6ab0;
  --c-gold: #c9a84c;
  --c-gold-light: #e4cd85;
  --c-linkedin: #0077b5;

  /* --- Superfici e bordi --- */
  --c-page: #f7fafd;
  --c-surface: #ffffff;
  --c-surface-alt: #f0f6fc;
  --c-border: #e8eef4;
  --c-border-2: #e0eaf4;

  /* --- Testo --- */
  --c-text-strong: #1a3a5c;
  --c-text: #4a6a7e;
  --c-text-muted: #7a9aaa;

  /* Testo su fondo scuro */
  --c-on-dark: #9dbdd4;
  --c-on-dark-muted: #7aa8c4;
  --c-on-dark-soft: #cfe4f5;

  /* --- Alpha ricorrenti --- */
  --c-accent-08: rgba(76, 170, 237, 0.08);
  --c-accent-10: rgba(76, 170, 237, 0.10);
  --c-accent-13: rgba(76, 170, 237, 0.13);
  --c-accent-14: rgba(76, 170, 237, 0.14);
  --c-accent-20: rgba(76, 170, 237, 0.20);
  --c-accent-33: rgba(76, 170, 237, 0.33);
  --c-gold-08: rgba(201, 168, 76, 0.08);
  --c-gold-15: rgba(201, 168, 76, 0.15);
  --c-gold-27: rgba(201, 168, 76, 0.27);
  --c-navy-04: rgba(26, 58, 92, 0.04);
  --c-navy-10: rgba(26, 58, 92, 0.10);
  --c-white-06: rgba(255, 255, 255, 0.06);
  --c-white-08: rgba(255, 255, 255, 0.08);
  --c-white-10: rgba(255, 255, 255, 0.10);
  --c-white-14: rgba(255, 255, 255, 0.14);
  --c-white-60: rgba(255, 255, 255, 0.60);

  /* --- Gradienti ricorrenti --- */
  --g-dark: linear-gradient(140deg, #0f2040 0%, #1a3a5c 60%, #1f4a74 100%);
  --g-dark-card: linear-gradient(160deg, #0f2040 0%, #1a3a5c 60%, #1f4a74 100%);
  --g-dark-135: linear-gradient(135deg, #0f2040 0%, #1a3a5c 60%, #1f4a74 100%);
  --g-title-light: linear-gradient(92deg, #4caaed 10%, #1a6ab0 55%, #1a3a5c 100%);
  --g-title-dark: linear-gradient(92deg, #6cbcf2 10%, #4caaed 60%, #8fd0ff 100%);
  --g-title-gold: linear-gradient(92deg, #e4cd85 10%, #c9a84c 60%, #e4cd85 100%);
  --g-cta: linear-gradient(135deg, #1a3a5c, #0f2040);
  --g-gold: linear-gradient(135deg, #c9a84c, #e4cd85);
  --g-gold-rev: linear-gradient(135deg, #e4cd85, #c9a84c);
  --g-sphere: radial-gradient(circle at 30% 30%, #6cbcf2, #1a6ab0);
  --g-hero-light:
    radial-gradient(900px 480px at 12% 0%, rgba(76, 170, 237, 0.10), transparent 60%),
    radial-gradient(700px 420px at 95% 30%, rgba(201, 168, 76, 0.08), transparent 60%);

  /* Overlay hero video (home) */
  --g-hero-overlay: linear-gradient(82deg,
    rgba(15, 32, 64, 0.94) 0%,
    rgba(15, 32, 64, 0.68) 42%,
    rgba(15, 32, 64, 0.12) 72%,
    rgba(15, 32, 64, 0.30) 100%);

  /* --- Tipografia --- */
  --font-head: 'Raleway', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --font-body: 'Plus Jakarta Sans', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --font-mono: ui-monospace, 'SFMono-Regular', 'Cascadia Mono', Menlo, monospace;

  --fs-h1: clamp(42px, 5.4vw, 74px);      /* hero home */
  --fs-h1-xl: clamp(46px, 6vw, 84px);     /* hero identita */
  --fs-h1-page: clamp(40px, 5vw, 66px);   /* hero pagine interne */
  --fs-h2: clamp(30px, 3.4vw, 42px);
  --fs-h3: 20px;
  --fs-body: 16px;
  --fs-body-lg: 17px;
  --fs-small: 15px;
  --fs-eyebrow: 11px;

  /* --- Spaziatura (base 4pt) --- */
  --sp-1: 0.25rem; --sp-2: 0.5rem;  --sp-3: 0.75rem; --sp-4: 1rem;
  --sp-5: 1.25rem; --sp-6: 1.5rem;  --sp-8: 2rem;    --sp-10: 2.5rem;
  --sp-12: 3rem;   --sp-16: 4rem;   --sp-20: 5rem;

  /* --- Layout --- */
  --container-max: 1200px;
  --container-pad: 20px;
  --section-pad: 84px;
  --nav-h: 84px;

  /* --- Raggi --- */
  --r-pill: 999px;
  --r-card: 24px;
  --r-card-lg: 28px;
  --r-band: 44px;                    /* bande scure interne al container */
  --r-sharp: 6px;                    /* angolo vivo, firma del design */
  --r-chip: 999px;
  --r-input: 22px;

  /* --- Ombre --- */
  --shadow-card: 0 16px 40px rgba(15, 32, 64, 0.08);
  --shadow-card-lg: 0 18px 48px rgba(15, 32, 64, 0.10);
  --shadow-card-dark: 0 26px 60px rgba(15, 32, 64, 0.35);
  --shadow-media: 0 40px 90px rgba(15, 32, 64, 0.30);
  --shadow-band: 0 40px 90px rgba(15, 32, 64, 0.35);
  --shadow-cta: 0 12px 30px rgba(26, 58, 92, 0.30);
  --shadow-cta-hover: 0 18px 40px rgba(26, 58, 92, 0.38);
  --shadow-light: 0 16px 40px rgba(0, 0, 0, 0.30);
  --shadow-nav: 0 4px 24px rgba(15, 32, 64, 0.06);
  --shadow-nav-scrolled: 0 14px 44px rgba(15, 32, 64, 0.16);

  /* --- Movimento --- */
  --ease-out: cubic-bezier(0.22, 1, 0.36, 1);
  --dur: 1s;              /* reveal */
  --dur-hover: 0.25s;
}
