        :root { scroll-behavior: smooth; }
        body { background-color: #05070A; color: #F5F2EA; overflow-x: hidden; -webkit-font-smoothing: antialiased; }
        
        ::-webkit-scrollbar { width: 4px; }
        ::-webkit-scrollbar-track { background: #05070A; }
        ::-webkit-scrollbar-thumb { background: #1F222E; border-radius: 10px; }

        .glass { background: rgba(15, 18, 29, 0.7); backdrop-filter: blur(24px); border: 1px solid rgba(180, 184, 213, 0.08); }
        .stars-bg { background-image: radial-gradient(circle at 1px 1px, rgba(245, 242, 234, 0.04) 1px, transparent 0); background-size: 80px 80px; }
        
        .fade-in { opacity: 0; transform: translateY(40px); transition: all 1.4s cubic-bezier(0.22, 1, 0.36, 1); }
        .fade-in.visible { opacity: 1; transform: translateY(0); }
        
        @keyframes slow-pulse { 0%, 100% { opacity: 0.2; transform: scale(1); } 50% { opacity: 0.5; transform: scale(1.05); } }
        .pulse-soft { animation: slow-pulse 8s ease-in-out infinite; }

        #cart-panel { transform: translateX(100%); transition: transform 0.8s cubic-bezier(0.22, 1, 0.36, 1); }
        #cart-panel.open { transform: translateX(0); }

        .nav-link { position: relative; cursor: pointer; }
        .nav-link::after { content: ''; position: absolute; bottom: -4px; left: 0; width: 0; height: 1px; background: #C5A059; transition: width 0.4s ease; }
        .nav-link:hover::after { width: 100%; }

        .mobile-menu { transform: translateY(-100%); transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1); }
        .mobile-menu.open { transform: translateY(0); }
