/* --- GLOBAL STYLES --- */
body { font-family: 'Inter', sans-serif; overflow-x: hidden; }
.font-serif { font-family: 'Playfair Display', serif; }
html { scroll-behavior: smooth; }
.hide-scrollbar::-webkit-scrollbar { display: none; }
.hide-scrollbar { -ms-overflow-style: none; scrollbar-width: none; }

/* --- HERO BACKGROUNDS (TUKAR GAMBAR DI SINI) --- */
.hero-bg {
    /* CONTOH: Gambar Online (Sedang digunakan) */
    background-image: linear-gradient(rgba(0,0,0,0.3), rgba(0,0,0,0.6)), url('../images/hero/studio-gambar-wedding-tunang.webp');
    
    /* CARA TUKAR KE GAMBAR SENDIRI: */
    /* 1. Letak gambar dalam folder assets/images/ */
    /* 2. Comment line di atas, dan uncomment line di bawah ini: */
    /* background-image: linear-gradient(rgba(0,0,0,0.3), rgba(0,0,0,0.6)), url('../../assets/images/hero-bg.webp'); */
    
    background-size: cover;
    background-position: center;
}

.hero-bg-raya {
    /* Sama juga untuk Raya, tukar URL di sini */
    background-image: linear-gradient(rgba(0,0,0,0.4), rgba(0,0,0,0.6)), url('https://images.unsplash.com/photo-1620300890668-7c87027d7f95?q=80&w=1200&auto=format&fit=crop');
    background-size: cover;
    background-position: center;
}

/* --- ANIMATIONS & UTILS --- */
.fade-in { animation: fadeIn 0.5s; }
@keyframes fadeIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

.slide-up { animation: slideUp 0.5s ease-out; }
@keyframes slideUp { from { opacity: 0; transform: translateY(50px); } to { opacity: 1; transform: translateY(0); } }

/* Effect Navbar Scroll */
.scrolled-nav { background-color: rgba(255, 255, 255, 0.95) !important; backdrop-filter: blur(10px); box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1); color: black !important; }
.scrolled-nav a, .scrolled-nav button { color: black; }
.scrolled-nav a:hover, .scrolled-nav button:hover { color: #d97706; }
.scrolled-nav .logo-text { color: black; }

/* Mobile Menu */
#mobile-menu { transition: max-height 0.4s ease, opacity 0.4s ease; max-height: 0; opacity: 0; overflow: hidden; }
#mobile-menu.active { max-height: 400px; opacity: 1; }

/* Gallery Transitions */
.view-section { transition: opacity 0.3s ease-in-out; }
.hidden-view { display: none; opacity: 0; }
.active-view { display: block; opacity: 1; animation: fadeIn 0.5s; }
.album-cover-img { transition: opacity 0.5s ease-in-out; } /* Transition smooth untuk slideshow cover */
.autoplay-img { transition: opacity 0.5s ease-in-out; }

/* Lightbox */
#lightbox { background-color: rgba(0,0,0,0.98); z-index: 9999; }

/* WhatsApp Pulse */
@keyframes pulse-gold { 0% { box-shadow: 0 0 0 0 rgba(217, 119, 6, 0.7); } 70% { box-shadow: 0 0 0 15px rgba(217, 119, 6, 0); } 100% { box-shadow: 0 0 0 0 rgba(217, 119, 6, 0); } }
.pulse-gold { animation: pulse-gold 2s infinite; }

/* Spinner Animation untuk Loading */
.loader {
    border: 4px solid #f3f3f3;
    border-top: 4px solid #d97706; /* Amber-600 */
    border-radius: 50%;
    width: 30px;
    height: 30px;
    animation: spin 1s linear infinite;
    display: inline-block;
    vertical-align: middle;
}
@keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }

/* Custom warna arrow swiper */
:root {
    --swiper-theme-color: #d97706; /* Amber-600 untuk pagination dot */
    --swiper-navigation-color: #ffffff; /* Putih untuk panah kiri/kanan */
}

#theme-grid {
    transition: opacity 0.4s ease-in-out;
}
