/* =============================================================================
   Design tokens — Chetan Engineers
   Single source of truth for color, type, spacing, radius, shadow, motion.
   ========================================================================== */

:root {
    /* Brand */
    --color-primary: #b32c2d;
    --color-primary-dark: #8f2223;
    --color-primary-light: #d24a4b;
    --color-secondary: #1b2a41;
    --color-secondary-dark: #131f30;
    --color-accent: #c8922e;

    /* Status */
    --color-success: #2e7d5b;
    --color-warning: #c47a1a;
    --color-danger: #c0392b;
    --color-info: #2f6f9f;

    /* Neutrals */
    --color-neutral-900: #1a1d21;
    --color-neutral-800: #2b2f36;
    --color-neutral-700: #3f454e;
    --color-neutral-600: #5a616b;
    --color-neutral-500: #767d88;
    --color-neutral-400: #9aa1ab;
    --color-neutral-300: #c4c9d0;
    --color-neutral-200: #e2e5ea;
    --color-neutral-100: #f1f3f6;
    --color-neutral-50: #f8f9fb;
    --color-white: #ffffff;

    /* Semantic */
    --color-text: #2b2f36;
    --color-text-muted: #5a616b;
    --color-heading: #1b2a41;
    --color-bg: #ffffff;
    --color-bg-alt: #f8f9fb;
    --color-border: #e2e5ea;
    --color-link: var(--color-primary);
    --color-link-hover: var(--color-primary-dark);

    /* Typography */
    --font-heading: "Montserrat", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --font-body: "PT Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;

    --fs-xs: 0.8125rem;
    --fs-sm: 0.9375rem;
    --fs-base: 1rem;
    --fs-md: clamp(1.0625rem, 1rem + 0.3vw, 1.1875rem);
    --fs-lg: clamp(1.25rem, 1.1rem + 0.6vw, 1.5rem);
    --fs-xl: clamp(1.5rem, 1.3rem + 1vw, 2rem);
    --fs-2xl: clamp(1.875rem, 1.5rem + 1.8vw, 2.75rem);
    --fs-3xl: clamp(2.25rem, 1.7rem + 2.8vw, 3.75rem);

    --lh-tight: 1.15;
    --lh-snug: 1.3;
    --lh-normal: 1.6;

    --fw-normal: 400;
    --fw-medium: 500;
    --fw-semibold: 600;
    --fw-bold: 700;

    /* Spacing (4px base) */
    --space-1: 0.25rem;
    --space-2: 0.5rem;
    --space-3: 0.75rem;
    --space-4: 1rem;
    --space-5: 1.5rem;
    --space-6: 2rem;
    --space-7: 3rem;
    --space-8: 4rem;
    --space-9: 6rem;

    --section-y: clamp(3rem, 6vw, 5rem);
    --container-max: 1200px;
    --container-pad: clamp(1rem, 4vw, 2rem);

    /* Radius */
    --radius-sm: 4px;
    --radius-md: 8px;
    --radius-lg: 12px;
    --radius-pill: 999px;

    /* Shadows */
    --shadow-sm: 0 1px 3px rgba(27, 42, 65, 0.08), 0 1px 2px rgba(27, 42, 65, 0.06);
    --shadow-md: 0 4px 16px rgba(27, 42, 65, 0.1);
    --shadow-lg: 0 12px 32px rgba(27, 42, 65, 0.14);
    --shadow-focus: 0 0 0 3px rgba(179, 44, 45, 0.35);

    /* Motion */
    --dur-fast: 150ms;
    --dur-base: 250ms;
    --dur-slow: 400ms;
    --ease: cubic-bezier(0.4, 0, 0.2, 1);

    /* Layout */
    --header-h: 84px;
    --header-h-scrolled: 66px;
}
