:root {
    /* Colors - Factory Floor Brutalism */
    --color-bg: #111111;         /* Machine Black */
    --color-surface: #1e1e1e;    /* Dark Grey Surface */
    --color-surface-hover: #2a2a2a; /* Lighter Surface */
    --color-surface-alt: #0a0a0a; /* Pitch Black */

    --color-text: #f4f4f0;       /* Blueprint White */
    --color-text-muted: #a0a0a0; /* Greyed out text */
    --color-text-dark: #111111;  /* For inverse text on light bg */

    --color-accent: #ff5a00;     /* Safety Orange */
    --color-accent-hover: #ff7a33;

    --color-border: #333333;     /* Structural lines */

    /* Typography */
    --font-display: 'Oswald', sans-serif;
    --font-body: 'IBM Plex Sans', sans-serif;
    --font-mono: 'IBM Plex Mono', monospace;

    /* Spacing Scale (based on 4px grid) */
    --space-1: 0.25rem;
    --space-2: 0.5rem;
    --space-3: 0.75rem;
    --space-4: 1rem;
    --space-6: 1.5rem;
    --space-8: 2rem;
    --space-12: 3rem;
    --space-16: 4rem;
    --space-24: 6rem;
    --space-32: 8rem;

    /* Layout */
    --container-width: 1200px;
    --header-height: 4.5rem;

    /* Transitions */
    --transition-fast: 150ms ease;
    --transition-base: 250ms ease;
}

@font-face {
    font-family: 'Oswald';
    src: url('../fonts/oswald-latin-400-normal.woff2') format('woff2');
    font-weight: 400;
    font-display: swap;
}
@font-face {
    font-family: 'Oswald';
    src: url('../fonts/oswald-latin-600-normal.woff2') format('woff2');
    font-weight: 600;
    font-display: swap;
}
@font-face {
    font-family: 'Oswald';
    src: url('../fonts/oswald-latin-700-normal.woff2') format('woff2');
    font-weight: 700;
    font-display: swap;
}

@font-face {
    font-family: 'IBM Plex Sans';
    src: url('../fonts/ibm-plex-sans-latin-400-normal.woff2') format('woff2');
    font-weight: 400;
    font-display: swap;
}
@font-face {
    font-family: 'IBM Plex Sans';
    src: url('../fonts/ibm-plex-sans-latin-500-normal.woff2') format('woff2');
    font-weight: 500;
    font-display: swap;
}
@font-face {
    font-family: 'IBM Plex Sans';
    src: url('../fonts/ibm-plex-sans-latin-700-normal.woff2') format('woff2');
    font-weight: 700;
    font-display: swap;
}
@font-face {
    font-family: 'IBM Plex Mono';
    src: url('../fonts/ibm-plex-mono-latin-400-normal.woff2') format('woff2');
    font-weight: 400;
    font-display: swap;
}
