/* Custom Styles & Animations */
body {
    font-family: 'Open Sans', sans-serif;
    overflow-x: hidden;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Montserrat', sans-serif;
}

/* Background Premium Dark */
.body-bg {
    background-color: #050505;
    background-image: url('https://www.transparenttextures.com/patterns/black-felt.png');
    background-attachment: fixed;
    background-size: cover;
    background-position: center;
}

/* Glass Navbar Dark Mode */
.glass-nav {
    background-color: rgba(10, 10, 10, 0.85) !important;
    backdrop-filter: blur(12px);
    border-bottom: 1px solid rgba(212, 175, 55, 0.2);
}

/* Hover Effects untuk Kartu Premium */
.product-card {
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    border: 1px solid rgba(255, 255, 255, 0.05);
}
.product-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 40px -5px rgba(0, 0, 0, 0.5);
    border-color: #D4AF37;
}

/* Text Selection Color (Gold) */
::selection {
    background: #D4AF37;
    color: #000;
}

/* Fade In Animation classes (General) */
.fade-in-section {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.8s ease-out, transform 0.8s ease-out;
    will-change: opacity, visibility;
}
.fade-in-section.is-visible {
    opacity: 1;
    transform: none;
}

/* SLIDER ANIMATIONS */

/* Saat slide aktif, teks di dalamnya muncul */
.hero-slide.active .slide-content {
    opacity: 1;
    transform: translateY(0);
}

/* Dot indicator saat aktif */
.slider-dot.active {
    background-color: #D4AF37; /* Warna Gold */
    transform: scale(1.3);
}