        :root {
            --olive: #8A8635;
            --wine: #432323;
            --paper: #EFE9E3;
            --white: #ffffff;
        }

        body {
            font-family: 'Barlow', sans-serif;
            background-color: var(--white);
            color: var(--wine);
            overflow-x: hidden;
            scroll-behavior: smooth;
        }

        .heading-bold { font-weight: 900; letter-spacing: -0.03em; line-height: 0.85; }
        .heading-wide { font-weight: 800; letter-spacing: 0.5em; text-transform: uppercase; }
        
        /* Navigation Overlay */
        .nav-overlay {
            position: fixed;
            inset: 0;
            background: var(--wine);
            color: var(--white);
            z-index: 100;
            display: flex;
            align-items: center;
            justify-content: center;
            clip-path: circle(0% at 50% 50%);
            transition: clip-path 0.8s cubic-bezier(0.77, 0, 0.175, 1);
        }
        .nav-overlay.open {
            clip-path: circle(150% at 50% 50%);
        }

        /* Hero Image Pan Animation */
        @keyframes panHero {
            0% { transform: scale(1.1) translateX(0); }
            50% { transform: scale(1.15) translateX(-2%); }
            100% { transform: scale(1.1) translateX(0); }
        }
        .animate-hero-bg {
            animation: panHero 20s ease-in-out infinite;
        }

        /* Custom Scrollbar */
        ::-webkit-scrollbar { width: 5px; }
        ::-webkit-scrollbar-track { background: var(--paper); }
        ::-webkit-scrollbar-thumb { background: var(--wine); }

        .view { display: none; min-height: 100vh; }
        .view.active { display: block; animation: fadeIn 0.8s ease forwards; }

        @keyframes fadeIn {
            from { opacity: 0; transform: translateY(10px); }
            to { opacity: 1; transform: translateY(0); }
        }

        /* Card Hover Effects */
        .editorial-card { transition: all 0.6s cubic-bezier(0.16, 1, 0.3, 1); }
        .editorial-card:hover { transform: translateY(-15px); }
        .editorial-card:hover img { transform: scale(1.05); filter: grayscale(0); }

        .horizontal-scroll {
            display: flex;
            overflow-x: auto;
            scroll-behavior: smooth;
            scrollbar-width: none;
            -ms-overflow-style: none;
        }
        .horizontal-scroll::-webkit-scrollbar { display: none; }
        
        /* Modal UI */
        .modal {
            position: fixed;
            inset: 0;
            background: rgba(0,0,0,0.85);
            backdrop-filter: blur(10px);
            z-index: 200;
            display: none;
            overflow-y: auto;
            padding: 2rem;
        }
        .modal.open { display: flex; align-items: flex-start; justify-content: center; }

        .search-overlay {
            position: fixed;
            top: 0; left: 0; width: 100%; height: 100%;
            background: var(--paper);
            z-index: 150;
            display: none;
            flex-direction: column;
            padding: 100px 10%;
        }
        .search-overlay.open { display: flex; animation: fadeIn 0.4s ease; }

        .category-block {
            border: 1px solid rgba(67, 35, 35, 0.1);
            transition: all 0.4s ease;
        }
        .category-block:hover {
            background: var(--wine);
            color: white;
            border-color: var(--wine);
        }

        .filter-chip.active {
            background-color: var(--wine);
            color: white;
        }
