/* Definisi Variabel Warna Sesuai Logo */
:root {
    --brand-gold: #d4af37; /* Warna Emas dari Logo */
    --brand-dark-blue: #2c3e50; /* Biru Tua dari Logo */
    --brand-light-blue: #ecf5ff; /* Biru Muda untuk Latar */
    --bs-primary: var(--brand-gold);
    --bs-primary-rgb: 212, 175, 55;
}

body {
    font-family: 'Poppins', sans-serif;
    scroll-behavior: smooth;
}

.hero-section {
    background: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6)), url('Tipe 70.jpg') no-repeat center center;
    background-size: cover;
    min-height: 90vh;
}

.section-title {
    font-weight: 700;
    color: var(--brand-dark-blue);
}

.keunggulan-icon {
    font-size: 3rem;
    color: var(--brand-gold);
}

.swiper-button-next, .swiper-button-prev {
    color: var(--brand-gold);
}

.swiper-pagination-bullet-active {
    background-color: var(--brand-gold);
}

.card {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    border: none;
}
.card:hover {
    transform: translateY(-10px);
    box-shadow: 0 1rem 3rem rgba(0,0,0,.175)!important;
}

.map-responsive {
    overflow: hidden;
    padding-bottom: 100%;
    position: relative;
    height: 0;
    border-radius: 15px;
}
.map-responsive iframe {
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    position: absolute;
}

/* CSS untuk Galeri Foto */
.gallery-top {
    aspect-ratio: 4 / 3; /* Menetapkan rasio aspek 4:3 */
    width: 100%;
    border-radius: 15px;
}
.gallery-thumbs {
    height: 100px;
    box-sizing: border-box;
    padding: 10px 0;
}
.gallery-thumbs .swiper-slide {
    width: 25%;
    height: 100%;
    opacity: 0.6;
    cursor: pointer;
    border-radius: 10px;
    overflow: hidden;
}
.gallery-thumbs .swiper-slide-thumb-active {
    opacity: 1;
    border: 2px solid var(--brand-gold);
}
.swiper-slide img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Penyesuaian Warna Komponen */
.bg-light-blue {
    background-color: var(--brand-light-blue);
}
.text-dark-blue {
    color: var(--brand-dark-blue);
}
.btn-primary {
    background-color: var(--brand-gold);
    border-color: var(--brand-gold);
}
.btn-primary:hover {
    background-color: #b89a2e; /* Warna Emas lebih gelap saat hover */
    border-color: #b89a2e;
}
.btn-outline-primary {
    color: var(--brand-gold);
    border-color: var(--brand-gold);
}
.btn-outline-primary:hover {
    color: #fff;
    background-color: var(--brand-gold);
    border-color: var(--brand-gold);
}
.final-cta {
    background-color: var(--brand-dark-blue);
}

/* --- PENYESUAIAN RESPONSIVE --- */
@media (max-width: 767.98px) {
    .navbar-brand {
        font-size: 1.1rem;
    }
    
    .hero-section h1 {
        font-size: 2.2rem; /* Ukuran font judul lebih kecil di mobile */
    }

    .hero-section {
        min-height: 70vh; /* Sedikit lebih pendek di mobile */
    }

    /* Mengurangi padding vertikal di semua section pada mobile */
    main > section {
        padding-top: 3rem !important;
        padding-bottom: 3rem !important;
    }
}
