        :root {
            --cream: #FFF8F0;
            --charcoal: #1C1C1C;
            --blush: #FFB6B9;
            --gold: #D4AF37;
            --gray: #8E8E8E;
        }

        body {
            background-color: var(--cream);
            color: var(--charcoal);
            font-family: 'Lato', sans-serif;
            scroll-behavior: smooth;
            margin: 0;
            padding: 0;
        }

        .font-serif { font-family: 'Playfair Display', serif; }
        .font-sans { font-family: 'Montserrat', sans-serif; }

        /* Navigation Reset */
        nav { top: 0 !important; }

        /* Animation & Interaction */
        .fade-in { animation: fadeIn 0.8s ease-out forwards; }
        @keyframes fadeIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

        .editorial-img-container {
            overflow: hidden;
            position: relative;
            clip-path: inset(0 0 0 0);
            transition: clip-path 0.6s cubic-bezier(0.19, 1, 0.22, 1);
        }

        .editorial-card:hover .editorial-img-container {
            clip-path: inset(10px 10px 10px 10px);
        }

        .editorial-card img {
            transition: transform 1.2s cubic-bezier(0.19, 1, 0.22, 1);
        }

        .editorial-card:hover img {
            transform: scale(1.1);
        }

        /* Responsive Utilities */
        @media (max-width: 768px) {
            .hero-text { font-size: 3.5rem !important; }
            .section-padding { padding: 4rem 1.5rem !important; }
        }

        .page { display: none; }
        .page.active { display: block; }

        /* Custom Scrollbar */
        ::-webkit-scrollbar { width: 4px; }
        ::-webkit-scrollbar-track { background: var(--cream); }
        ::-webkit-scrollbar-thumb { background: var(--gold); }
