        :root {
            --teal: #1ABC9C;
            --orange: #FF6F3C;
            --gold: #FFD166;
            --charcoal: #111111;
            --cream: #FAF9F6;
        }

        body {
            font-family: 'Inter', sans-serif;
            background-color: #fff;
            color: var(--charcoal);
            overflow-x: hidden;
            line-height: 1.6;
        }

        .font-serif { font-family: 'Playfair Display', serif; }
        .font-cursive { font-family: 'Playfair Display', serif; font-style: italic; }
        .font-heading { font-family: 'Montserrat', sans-serif; }

        /* Smooth Scroll & Animations */
        html { scroll-behavior: smooth; }
        .reveal { opacity: 0; transform: translateY(40px); transition: all 1s cubic-bezier(0.22, 1, 0.36, 1); }
        .reveal.active { opacity: 1; transform: translateY(0); }

        /* Custom UI Elements */
        .btn-premium {
            position: relative; overflow: hidden;
            padding: 18px 36px; font-size: 11px; font-weight: 700;
            text-transform: uppercase; letter-spacing: 2px;
            transition: 0.4s; border-radius: 2px;
        }
        .btn-premium:hover { transform: scale(1.02); }

        .drawer {
            position: fixed; top: 0; right: -100%; width: 100%; max-width: 600px;
            height: 100%; background: white; z-index: 2000;
            transition: 0.6s cubic-bezier(0.85, 0, 0.15, 1);
            padding: 50px; overflow-y: auto; box-shadow: -20px 0 60px rgba(0,0,0,0.1);
        }
        .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: 0.5s; z-index: 1999;
        }
        .overlay.active { opacity: 1; pointer-events: auto; }

        /* Custom Scrollbar */
        ::-webkit-scrollbar { width: 5px; }
        ::-webkit-scrollbar-track { background: var(--cream); }
        ::-webkit-scrollbar-thumb { background: var(--charcoal); }

        .no-scrollbar::-webkit-scrollbar { display: none; }
        
        .hero-gradient {
            background: linear-gradient(135deg, #ffffff 0%, #f3f4f6 100%);
            background-size: 400% 400%;
            animation: flow 15s ease infinite;
        }
        @keyframes flow { 0% {background-position:0% 50%} 50% {background-position:100% 50%} 100% {background-position:0% 50%} }

        .parallax-section { background-attachment: fixed; }
