        /* CSS Reset */
        *, *::before, *::after {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        html {
            font-size: 16px;
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
            scroll-behavior: smooth;
        }

        body {
            line-height: 1.5;
            font-family: 'Oswald', sans-serif;
            background: var(--surface);
            color: var(--text-dark);
            overflow-x: hidden;
        }

        img {
            display: block;
            max-width: 100%;
        }

        a {
            text-decoration: none;
            color: inherit;
        }

        ul {
            list-style: none;
        }

        button {
            border: none;
            background: none;
            font: inherit;
            cursor: pointer;
        }

        .visually-hidden {
            position: absolute;
            width: 1px;
            height: 1px;
            padding: 0;
            margin: -1px;
            overflow: hidden;
            clip: rect(0, 0, 0, 0);
            border: 0;
        }

        /* CSS Variables */
        :root {
            --primary: #ee3342;
            --primary-strong: #ee3342;
            --secondary: #ee3342;
            --overlay-heading: #e4fff7;
            --overlay-body: #ffffff;
            --overlay-panel-gloss: rgba(0, 0, 0, 0.5);
            --overlay-panel-gloss-fallback: rgba(0, 0, 0, 0.65);
            --border-color: #d6d9f0;
            --surface: #ffffff;
            --surface-muted: #f8f9fa;
            --surface-blue: #e8eaf5;
            --surface-green: #b9b8ce62;
            --text-dark: #101231;
            --text-medium: #3c4164;
            --text-light: #6a6f94;
            --text-xs: 0.75rem;
            --text-sm: 0.875rem;
            --text-base: 1rem;
            --text-lg: 1.1rem;
            --text-xl: 1.5rem;
            --spacing-xs: 0.5rem;
            --spacing-sm: 0.75rem;
            --spacing-md: 1rem;
            --spacing-lg: 1.5rem;
            --spacing-xl: 2rem;
            --hero-bg-start: #000000; /* black hero */
            --hero-bg-end: #0a0f2a;
            --hero-overlay: rgba(7, 12, 24, 0.75);
            --hero-accent: #ee3342; /* CTA Red */
            --hero-accent-hover: #ff4d5b;
            --footer-bg: #000000;
            --footer-bottom-bg: #000000;
            --footer-text: rgba(255, 255, 255, 0.88);
            --footer-muted: rgba(232, 234, 245, 0.65);
            --footer-border: rgba(255, 255, 255, 0.08);
            --focus-ring: #00816f;
        }
