        :root {
            --primary-red: #9E2A3A;
            --accent-blue: #5A7ACD;
            --bg-cream: #FCFAFA;
        }

        body {
            font-family: "DM Sans", sans-serif;
            background-color: var(--bg-cream);
            color: #1a1a1a;
            scroll-behavior: smooth;
        }

        .lobster-two-bold { font-family: "Lobster Two", sans-serif; font-weight: 700; }
        .lobster-two-bold-italic { font-family: "Lobster Two", sans-serif; font-weight: 700; font-style: italic; }
        .text-primary { color: var(--primary-red); }
        .text-accent { color: var(--accent-blue); }
        .bg-primary { background-color: var(--primary-red); }
        .bg-accent { background-color: var(--accent-blue); }

        /* Smooth Scroll reveal */
        .reveal { opacity: 0; transform: translateY(40px); transition: all 1s ease; }
        .reveal.active { opacity: 1; transform: translateY(0); }

        /* Parallax & Hero Animation */
        .hero-bg-anim {
            animation: zoomEffect 20s infinite alternate linear;
        }
        @keyframes zoomEffect {
            from { transform: scale(1); }
            to { transform: scale(1.15); }
        }

        /* Buttons & Interactions */
        .btn-accent {
            background-color: var(--accent-blue);
            color: white;
            transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
            position: relative;
        }
        .btn-accent:hover {
            background-color: var(--primary-red);
            transform: scale(1.05);
            box-shadow: 0 10px 30px rgba(158, 42, 58, 0.3);
        }

        /* Nav underline effect */
        .nav-link { position: relative; }
        .nav-link::after {
            content: '';
            position: absolute;
            width: 0; height: 2px;
            bottom: -4px; left: 0;
            background-color: var(--primary-red);
            transition: width 0.3s ease;
        }
        .nav-link:hover::after { width: 100%; }

        /* Quick View Modal styling */
        #quickview-overlay {
            background: rgba(0,0,0,0.85);
            backdrop-filter: blur(8px);
        }

        .page-view { display: none; }
        .page-view.active { display: block; animation: fadeIn 0.8s ease forwards; }
        @keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }

        /* Asymmetric margins */
        .asym-left { margin-left: 5%; }
        .asym-right { margin-right: 5%; }
        
        /* Filter Styles */
        .filter-btn.active {
            background-color: var(--primary-red);
            color: white;
            border-color: var(--primary-red);
        }
