        :root {
            --breeze-green: #2ECC71;
            --sky-blue: #5DA9E9;
            --charcoal: #111111;
        }
        body {
            font-family: 'Inter', sans-serif;
            background-color: #FFFFFF;
            color: var(--charcoal);
            overflow-x: hidden;
        }
        h1, h2, h3, h4, .font-heading {
            font-family: 'Bricolage Grotesque', sans-serif;
        }
        
        /* Smooth Scroll and Scrollbar */
        html { scroll-behavior: smooth; }
        ::-webkit-scrollbar { width: 4px; }
        ::-webkit-scrollbar-track { background: #f9f9f9; }
        ::-webkit-scrollbar-thumb { background: #2ECC71; border-radius: 10px; }

        /* Navigation Glassmorphism */
        .glass-header {
            background: rgba(255, 255, 255, 0.8);
            backdrop-filter: blur(20px);
            border-bottom: 1px solid rgba(0,0,0,0.05);
        }

        /* Hero Parallax Effect */
        .parallax-bg {
            transition: transform 0.5s cubic-bezier(0, 0, 0.2, 1);
        }

        /* Section Reveal */
        .reveal-section { opacity: 0; transform: translateY(40px); transition: all 1s ease-out; }
        .reveal-section.active { opacity: 1; transform: translateY(0); }

        /* Drawer Logic */
        .side-drawer {
            position: fixed;
            top: 0;
            right: -100%;
            width: 100%;
            max-width: 600px;
            height: 100%;
            background: white;
            z-index: 1000;
            transition: right 0.6s cubic-bezier(0.83, 0, 0.17, 1);
            box-shadow: -20px 0 60px rgba(0,0,0,0.1);
            overflow-y: auto;
        }
        .side-drawer.open { right: 0; }

        .overlay {
            position: fixed;
            inset: 0;
            background: rgba(17, 17, 17, 0.4);
            backdrop-filter: blur(8px);
            opacity: 0;
            pointer-events: none;
            transition: opacity 0.5s ease;
            z-index: 999;
        }
        .overlay.active { opacity: 1; pointer-events: auto; }

        /* Custom Buttons */
        .btn-editorial {
            position: relative;
            padding: 1.25rem 2.5rem;
            font-weight: 700;
            text-transform: uppercase;
            letter-spacing: 0.1em;
            font-size: 0.75rem;
            border-radius: 100px;
            overflow: hidden;
            transition: all 0.4s ease;
            display: inline-flex;
            align-items: center;
            gap: 0.75rem;
        }
        .btn-green { background: var(--breeze-green); color: white; }
        .btn-green:hover { transform: translateY(-3px); box-shadow: 0 15px 30px rgba(46, 204, 113, 0.3); }

        /* Card Hover Effects */
        .card-img-zoom { transition: transform 1.5s cubic-bezier(0.16, 1, 0.3, 1); }
        .group:hover .card-img-zoom { transform: scale(1.1); }

        .category-card { transition: all 0.5s cubic-bezier(0.16, 1, 0.3, 1); }
        .category-card:hover { transform: translateY(-10px); }

        /* Mobile specific adjustments */
        @media (max-width: 768px) {
            .side-drawer { max-width: 100%; }
            .hero-title { font-size: 3.5rem; line-height: 1; }
        }
