        body {
            font-family: 'Inter', sans-serif;
        }

        /* Custom Scrollbar */
        ::-webkit-scrollbar {
            width: 6px;
        }

        ::-webkit-scrollbar-track {
            background: #f1f1f1;
        }

        ::-webkit-scrollbar-thumb {
            background: #d1d5db;
            border-radius: 3px;
        }

        ::-webkit-scrollbar-thumb:hover {
            background: #9ca3af;
        }

        /* Marquee Animation */
        .marquee-container {
            overflow: hidden;
            white-space: nowrap;
        }

        .marquee-content {
            display: inline-block;
            animation: marquee 20s linear infinite;
        }

        @keyframes marquee {
            0% {
                transform: translateX(0);
            }

            100% {
                transform: translateX(-50%);
            }
        }

        /* Custom Radio Color Swatch */
        .color-radio {
            appearance: none;
            -webkit-appearance: none;
            width: 1.25rem;
            height: 1.25rem;
            border-radius: 50%;
            border: 1px solid rgba(0, 0, 0, 0.1);
            cursor: pointer;
            position: relative;
            transition: all 0.2s ease;
        }

        .color-radio:checked {
            transform: scale(1.1);
            border: 1px solid rgba(0, 0, 0, 0.2);
            box-shadow: 0 0 0 2px white, 0 0 0 3px black;
        }

        /* Smooth reveal */
        .reveal {
            opacity: 0;
            transform: translateY(10px);
            animation: revealAnim 0.8s cubic-bezier(0.16, 1, 0.3, 1) forwards;
        }

        @keyframes revealAnim {
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }

        /* Hero text animation (SEO-safe) */
        .slide-content {
            opacity: 0;
            transform: translateY(24px);
            transition: opacity 600ms ease, transform 600ms ease;
        }

        .hero-slide.active .slide-content {
            opacity: 1;
            transform: translateY(0);
        }