/* ==========================================================================
   TOKENS — Design System clinico
   Palette originale dello studio: navy, inchiostro, rosso clinico, bianchi.
   Tipografia IBM Plex: nata per contesti tecnici e istituzionali.
   Contrasti verificati WCAG AA.
   ========================================================================== */

:root {
    /* Superfici */
    --color-bg: #FFFFFF;
    --color-bg-alt: #F8FAFC;
    --color-surface: #FFFFFF;
    --color-primary-subtle: #EDF2FA;  /* blu tenue */
    --color-mint: #EDF2FA;            /* alias storico: ora blu tenue */

    /* Marchio */
    --color-primary: #2556A4;         /* blu del logo (7.4:1 su bianco) */
    --color-primary-dark: #0F172A;    /* navy profondo */
    --color-accent: #C92E26;          /* rosso del logo (5.4:1 su bianco) */
    --color-mint-deep: #2556A4;       /* alias storico: ora navy */

    /* Testo */
    --color-text-primary: #0F172A;
    --color-text-secondary: #475569;  /* 7.6:1 */
    --color-text-muted: #64748B;      /* 4.8:1 */

    /* Testo su fondo scuro */
    --color-on-ink: #F8FAFC;
    --color-on-ink-muted: #CBD5E1;
    --color-accent-light: #FCA5A5;
    --color-primary-light: #93C5FD;

    /* Blu notte delle illustrazioni (fondo dell'immagine cuore e reni) */
    --color-night: #001C38;
    --color-night-soft: #062A4C;

    /* Colori di tema (icone e accenti di progetti, tag laterali, figure) */
    --color-theme-green: #0E9F6E;
    --color-theme-orange: #D97706;
    --color-theme-violet: #7C3AED;
    --color-theme-fat: #F2B53A;

    /* Segnaposto Google Maps (link "apri in Maps") */
    --color-maps-pin: #EA4335;
    --color-maps-pin-dot: #A50E0E;

    /* Bordi & focus */
    --color-line: #E2E8F0;
    --color-line-strong: #CBD5E1;
    --border-default: 1px solid var(--color-line);
    --color-focus: #2556A4;

    /* Tipografia */
    --font-display: 'Poppins', system-ui, -apple-system, 'Segoe UI', sans-serif;
    --font-sans: 'Poppins', system-ui, -apple-system, 'Segoe UI', sans-serif;
    --font-mono: 'Poppins', system-ui, -apple-system, 'Segoe UI', sans-serif;

    --fs-hero: clamp(2.1rem, 1.4rem + 3.2vw, 3.5rem);
    --fs-h1: clamp(2rem, 1.4rem + 2.6vw, 3.25rem);
    --fs-h2: clamp(1.6rem, 1.3rem + 1.4vw, 2.35rem);
    --fs-h3: clamp(1.2rem, 1.1rem + 0.5vw, 1.45rem);
    --fs-h4: 1.0625rem;
    --fs-lead: clamp(1.0625rem, 1rem + 0.3vw, 1.2rem);
    --fs-body: 1rem;
    --fs-body-sm: 0.9375rem;
    --fs-caption: 0.8125rem;

    --font-weight-regular: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;

    /* Spazi (base 4px) */
    --space-1: 0.25rem;
    --space-2: 0.5rem;
    --space-3: 0.75rem;
    --space-4: 1rem;
    --space-5: 1.25rem;
    --space-6: 1.5rem;
    --space-8: 2rem;
    --space-10: 2.5rem;
    --space-12: 3rem;
    --space-16: 4rem;
    --space-20: 5rem;
    --section-y: clamp(3rem, 2rem + 4vw, 5.5rem);
    --gutter: clamp(1.25rem, 0.5rem + 3vw, 2.5rem);

    /* Forme: angoli quasi vivi, tono istituzionale */
    --radius-sm: 4px;
    --radius-md: 6px;
    --radius-lg: 8px;

    --shadow-sm: 0 1px 2px rgba(15, 23, 42, 0.06);
    --shadow-md: 0 2px 8px rgba(15, 23, 42, 0.08);

    /* Layout */
    --container-max: 1200px;
    --tap-min: 48px;
    --header-h: 92px;
    --stats-lift: 3.5rem; /* di quanto la fascia dei numeri sale sull'hero */
    --mobile-bar-h: 72px;
}
