        :root {
            --brand-pink: #FF85BB;
            --brand-plum: #853953;
            --brand-neutral: #E8E2D8;
            --brand-navy: #021A54;
        }

        body {
            font-family: 'Commissioner', sans-serif;
            background-color: #ffffff;
            color: var(--brand-plum);
            overflow-x: hidden;
        }

        .font-forum { font-family: 'Forum', serif; }

        /* Animation Classes */
        .fade-in { opacity: 0; transform: translateY(20px); transition: all 0.8s ease-out; }
        .fade-in.visible { opacity: 1; transform: translateY(0); }

        /* Slide Menu */
        #side-menu {
            position: fixed;
            top: 0;
            right: 0;
            height: 100%;
            width: 100%;
            max-width: 500px;
            background-color: var(--brand-plum);
            z-index: 2000;
            transform: translateX(100%);
            transition: transform 0.6s cubic-bezier(0.7, 0, 0.3, 1);
            color: white;
            padding: 4rem;
        }
        #side-menu.open { transform: translateX(0); }

        /* Custom UI Elements */
        .btn-menu-outline {
            border: 1px solid var(--brand-navy);
            padding: 0.5rem 1.5rem;
            text-transform: uppercase;
            font-size: 11px;
            letter-spacing: 0.2em;
            color: var(--brand-navy);
            transition: all 0.3s ease;
        }
        .btn-menu-outline:hover {
            background-color: var(--brand-navy);
            color: white;
        }

        .luxury-hr {
            border: none;
            border-top: 1px solid var(--brand-plum);
            margin: 2rem 0;
            opacity: 0.3;
        }

        /* Product Cards */
        .product-image-container {
            position: relative;
            aspect-ratio: 2/3;
            overflow: hidden;
            background: var(--brand-neutral);
        }
        .product-image-container img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform 1.2s ease;
        }
        .product-image-container:hover img {
            transform: scale(1.08);
        }

        /* Nav Pages */
        .page-content { display: none; }
        .page-content.active { display: block; animation: pageFade 0.8s ease; }
        @keyframes pageFade { from { opacity: 0; } to { opacity: 1; } }

        /* Overlays */
        .overlay {
            position: fixed;
            inset: 0;
            background: rgba(0,0,0,0.5);
            z-index: 1999;
            opacity: 0;
            pointer-events: none;
            transition: opacity 0.5s ease;
        }
        .overlay.active { opacity: 1; pointer-events: auto; }

        /* Custom Scrollbar for side panel */
        .custom-scroll::-webkit-scrollbar { width: 4px; }
        .custom-scroll::-webkit-scrollbar-track { background: transparent; }
        .custom-scroll::-webkit-scrollbar-thumb { background: rgba(255,255,255,0.2); }
