 
        /* */
        .cursor-dot, .cursor-outline {
            position: fixed;
            pointer-events: none;
            z-index: 9999;
            transform: translate(-50%, -50%) rotate(45deg);
            will-change: left, top;
        }
        
        .cursor-dot {
            width: 6px; height: 6px;
            background: #C5A96A;
            box-shadow: 0 0 10px #C5A96A;
        }

        .cursor-outline {
            width: 30px; height: 30px;
            border: 1px solid rgba(197, 169, 106, 0.7);
            transition: background-color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
        }

        .cursor-outline.hovering {
            background: rgba(197, 169, 106, 0.15);
            border-color: #C5A96A;
            box-shadow: 0 0 15px rgba(197, 169, 106, 0.5);
            transform: translate(-50%, -50%) rotate(45deg) scale(1.8);
        }

        @media (min-width: 768px) {
            body, a, button, input, textarea, .glow-hover-card, .btn-premium { cursor: none !important; }
        }

        /* */
        .shimmer-gold {
            background: linear-gradient(to right, #C5A96A 20%, #FFF8E7 40%, #FFF8E7 60%, #C5A96A 80%);
            background-size: 200% auto;
            color: transparent;
            -webkit-background-clip: text;
            background-clip: text;
            animation: shine 5s linear infinite;
        }
        @keyframes shine { to { background-position: 200% center; } }

        .nav-link { position: relative; padding-bottom: 5px; }
        .nav-link::after {
            content: ''; position: absolute; bottom: 0; left: 50%;
            transform: translateX(-50%); width: 20px; height: 1px;
            background: linear-gradient(90deg, transparent, rgba(197, 169, 106, 0.5), transparent);
            transition: width 0.3s ease, background 0.3s ease, box-shadow 0.3s ease;
        }
        .nav-link:hover::after {
            width: 100%; background: linear-gradient(90deg, transparent, #C5A96A, transparent);
            box-shadow: 0 0 10px #C5A96A;
        }

        /* */
        .glow-hover-card {
            position: relative; transition: all 0.5s ease;
            box-shadow: inset 0 0 30px rgba(197, 169, 106, 0.02), 0 10px 30px rgba(0,0,0,0.5);
        }
        .glow-hover-card::before, .glow-hover-card::after {
            content: ''; position: absolute; width: 20px; height: 20px;
            border: 1px solid #C5A96A; opacity: 0.5; transition: all 0.5s ease;
            pointer-events: none; z-index: 10;
        }
        .glow-hover-card::before { top: 15px; left: 15px; border-right: none; border-bottom: none; }
        .glow-hover-card::after { bottom: 15px; right: 15px; border-left: none; border-top: none; }
        
        .glow-hover-card:hover {
            box-shadow: inset 0 0 40px rgba(197, 169, 106, 0.05), 0 15px 40px rgba(197, 169, 106, 0.1);
            transform: translateY(-5px);
        }
        .glow-hover-card:hover::before, .glow-hover-card:hover::after {
            width: calc(100% - 30px); height: calc(100% - 30px); opacity: 1;
        }

        .btn-premium {
            position: relative; overflow: hidden; transition: color 0.4s ease;
        }
        .btn-premium::before {
            content: ''; position: absolute; top: 0; left: -100%; width: 100%; height: 100%;
            background: #C5A96A; transition: left 0.4s cubic-bezier(0.25, 1, 0.5, 1); z-index: -1;
        }
        .btn-premium:hover { color: #000 !important; border-color: #C5A96A; }
        .btn-premium:hover::before { left: 0; }

        /* */
        .editorial-text { position: relative; padding-top: 15px; }
        .editorial-text::before {
            content: ''; position: absolute; top: 0; left: 50%;
            transform: translateX(-50%) rotate(45deg); width: 6px; height: 6px;
            background: rgba(197, 169, 106, 0.8); box-shadow: 0 0 5px rgba(197, 169, 106, 0.5);
        }
        .editorial-text::first-line { color: #C5A96A; font-variant: small-caps; letter-spacing: 0.1em; }
        @media (min-width: 768px) {
            .text-left-desktop::before { left: 0; transform: rotate(45deg); }
            .text-right-desktop::before { left: 100%; transform: translateX(-100%) rotate(45deg); }
        }

        .decorated-category { display: inline-flex; align-items: center; gap: 15px; }
        .decorated-category::before, .decorated-category::after {
            content: ''; width: 30px; height: 1px;
            background: linear-gradient(to right, transparent, rgba(197, 169, 106, 0.8), transparent);
            transition: width 0.3s ease;
        }
        .glow-hover-card:hover .decorated-category::before, .glow-hover-card:hover .decorated-category::after { width: 50px; }

        .fade-up-element {
            opacity: 0; transform: translateY(40px);
            transition: opacity 1s cubic-bezier(0.25, 1, 0.5, 1), transform 1s cubic-bezier(0.25, 1, 0.5, 1);
        }
        .is-visible .fade-up-element { opacity: 1; transform: translateY(0); }
        
        .delay-100 { transition-delay: 0.1s; } .delay-200 { transition-delay: 0.2s; }
        .delay-300 { transition-delay: 0.3s; } .delay-400 { transition-delay: 0.4s; }

        .hero-element { opacity: 0; animation: heroFadeUp 1.2s cubic-bezier(0.25, 1, 0.5, 1) forwards; }
        .hero-delay-1 { animation-delay: 0.3s; } .hero-delay-2 { animation-delay: 0.6s; } .hero-delay-3 { animation-delay: 0.9s; }
        @keyframes heroFadeUp { from { opacity: 0; transform: translateY(30px); } to { opacity: 1; transform: translateY(0); } }

        /* Mobile Carousel Utilities */
        .hide-scrollbar::-webkit-scrollbar { display: none; }
        .hide-scrollbar { -ms-overflow-style: none; scrollbar-width: none; }
    