        :root {
            --primary-dark: #4B2E2B;
            --soft-bg: #F3E4C9;
            --white: #ffffff;
        }

        body {
            font-family: 'Roboto', sans-serif;
            background-color: var(--white);
            color: var(--primary-dark);
            overflow-x: hidden;
        }

        h1, h2, h3, h4, .serif {
            font-family: 'Cormorant Garamond', serif;
        }

        /* Animations */
        .fade-in { animation: fadeIn 1.2s ease forwards; }
        @keyframes fadeIn {
            from { opacity: 0; transform: translateY(30px); }
            to { opacity: 1; transform: translateY(0); }
        }

        .hero-zoom {
            animation: slowZoom 20s infinite alternate;
        }
        @keyframes slowZoom {
            from { transform: scale(1); }
            to { transform: scale(1.15); }
        }

        /* Custom Scrollbar */
        ::-webkit-scrollbar { width: 5px; }
        ::-webkit-scrollbar-track { background: var(--soft-bg); }
        ::-webkit-scrollbar-thumb { background: var(--primary-dark); }

        /* Navigation Styling */
        .nav-link {
            position: relative;
            letter-spacing: 0.2em;
            font-size: 0.75rem;
            transition: opacity 0.3s;
        }
        .nav-link::after {
            content: '';
            position: absolute;
            bottom: -4px;
            left: 0;
            width: 0;
            height: 1px;
            background: white;
            transition: width 0.3s;
        }
        .nav-link:hover::after { width: 100%; }

        /* Page Transitions */
        .page-node { display: none; }
        .page-node.active { display: block; }

        /* Horizontal Scroll Section */
        .no-scrollbar::-webkit-scrollbar { display: none; }
        .no-scrollbar { -ms-overflow-style: none; scrollbar-width: none; }

        /* Divider lines */
        .editorial-divider {
            border-top: 1px solid rgba(75, 46, 43, 0.15);
            margin: 2rem 0;
        }

        /* Mobile Menu */
        #mobile-menu {
            transition: clip-path 0.7s cubic-bezier(0.77, 0, 0.175, 1);
            clip-path: circle(0% at 100% 0%);
        }
        #mobile-menu.open {
            clip-path: circle(150% at 100% 0%);
        }
