:root {
    /* Surfaces */
    --bg-primary: #050607;
    --bg-secondary: #08090b;
    --bg-tertiary: #0b0d0f;
    --surface: #0d0f12;
    --surface-2: #111317;
    --surface-3: #16191e;
    --surface-hover: #1a1d22;

    /* Text */
    --text-primary: #ffffff;
    --text-secondary: #9b9b9b;
    --text-muted: #6a6a6a;
    --text-inverse: #050607;

    /* Accents — logo red */
    --accent: #e10600;
    --accent-soft: #ff3333;
    --accent-deep: #b80500;
    --accent-dim: rgba(225, 6, 0, 0.12);
    --accent-glow: rgba(225, 6, 0, 0.38);

    --danger: #e10600;
    --danger-soft: #ff2d2d;
    --danger-dim: rgba(225, 6, 0, 0.18);
    --danger-glow: rgba(225, 6, 0, 0.28);

    /* Lines */
    --border: rgba(255, 255, 255, 0.08);
    --border-strong: rgba(255, 255, 255, 0.14);
    --border-lime: rgba(225, 6, 0, 0.45);

    /* Typography */
    --font-display: "Archivo", "Montserrat", sans-serif;
    --font-body: "Manrope", "Inter", sans-serif;

    /* Layout */
    --container: 1240px;
    --container-wide: 1400px;
    --header-h: 72px;
    --gutter: 28px;

    /* Radius — sharp, reference-like */
    --radius-sm: 2px;
    --radius: 4px;
    --radius-md: 6px;

    /* Motion */
    --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
    --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);
    --ease-expo: cubic-bezier(0.19, 1, 0.22, 1);
    --duration: 0.45s;

    /* Spacing rhythm */
    --space-2xs: 6px;
    --space-xs: 10px;
    --space-sm: 16px;
    --space-md: 24px;
    --space-lg: 40px;
    --space-xl: 64px;
    --space-2xl: 100px;
    --space-3xl: 140px;

    /* Type scale */
    --fs-hero: clamp(2.55rem, 6.4vw, 5.15rem);
    --fs-display: clamp(2.1rem, 4.4vw, 3.6rem);
    --fs-section: clamp(1.85rem, 3.4vw, 2.85rem);
    --fs-card: clamp(1.35rem, 2vw, 1.85rem);
    --fs-body: 0.98rem;
    --fs-small: 0.78rem;
    --fs-label: 0.68rem;
    --fs-stat: clamp(1.7rem, 2.6vw, 2.15rem);

    --lh-tight: 0.92;
    --lh-display: 0.96;
    --lh-body: 1.65;

    --tracking-display: -0.035em;
    --tracking-label: 0.16em;
    --tracking-btn: 0.08em;
}

@media (max-width: 768px) {
    :root {
        --gutter: 18px;
        --header-h: 64px;
        --space-2xl: 72px;
        --space-3xl: 88px;
    }
}
