/* =========================================
   STYLE.CSS - GENESA (BLUE & ORANGE THEME)
   Primary: #053c5f (Deep Blue)
   Secondary: #ef8418 (Orange)
   ========================================= */

body {
    font-family: 'Poppins', sans-serif;
    color: #1a1a1a;
    background-color: #fff;
    overflow-x: hidden;
    line-height: 1.6;
}

/* Seleksi Teks warna Orange */
::selection {
    background: #ef8418;
    color: #fff;
}

a {
    text-decoration: none;
    transition: all 0.3s ease;
}

/* =========================================
   NAVBAR STYLING
   ========================================= */
.navbar {
    padding-top: 20px;
    padding-bottom: 20px;
    z-index: 1030; /* Standar Bootstrap z-index tinggi */
}

.transition-all { 
    transition: all 0.4s ease-in-out; 
}

.navbar-brand span {
    font-weight: 700;
    letter-spacing: 1px;
}

/* Navbar Scrolled State */
.navbar-scrolled {
    background-color: rgba(255, 255, 255, 0.98) !important;
    backdrop-filter: blur(10px);
    box-shadow: 0 4px 20px rgba(0,0,0,0.05);
    padding-top: 10px !important;
    padding-bottom: 10px !important;
}

.navbar-scrolled .navbar-brand span,
.navbar-scrolled .navbar-brand i { 
    color: #053c5f !important; /* PRIMARY BLUE */
}

.navbar-scrolled .nav-link { 
    color: #555 !important; 
    font-weight: 500;
}

.navbar-scrolled .nav-link:hover,
.navbar-scrolled .nav-link.active {
    color: #053c5f !important; /* PRIMARY BLUE */
}

.navbar-scrolled .navbar-toggler {
    border-color: rgba(0,0,0,0.1);
}
.navbar-scrolled .navbar-toggler-icon { 
    filter: invert(1);
}

@media (max-width: 991px) {
    .navbar-collapse {
        background: #fff;
        padding: 20px;
        border-radius: 10px;
        box-shadow: 0 10px 30px rgba(0,0,0,0.1);
        margin-top: 15px;
    }
    .navbar-dark .navbar-nav .nav-link {
        color: #333 !important;
    }
}

/* =========================================
   HERO SECTION DENGAN DARK OVERLAY (PERBAIKAN)
   ========================================= */

.hero-section {
    position: relative;
    min-height: 100vh;
    width: 100%;
    overflow: hidden;
    padding: 0;
}

/* LAPISAN MASKING GELAP (INI YANG DIPERTEBAL) */
.hero-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    
    /* GRADIENT GELAP PEKAT: */
    /* 0% (Atas): Hitam 90% (Supaya Navbar Sangat Jelas) */
    /* 50% (Tengah): Hitam 70% (Supaya Teks Hero Kontras Maksimal) */
    /* 100% (Bawah): Hitam 90% (Supaya Footer/Bawah Kontras) */
    background: linear-gradient(
        to bottom, 
        rgba(0, 0, 0, 0.6) 0%, 
        rgba(0, 0, 0, 0.6) 50%, 
        rgba(0, 0, 0, 0.6) 100%
    );
    
    z-index: 1; /* Wajib di atas gambar */
    pointer-events: none; /* Agar klik tembus ke bawah jika perlu */
}

/* PASTIKAN GAMBAR DI BELAKANG MASKING */
.hero-carousel {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0; /* Paling Bawah */
}

.hero-carousel .carousel-item {
    height: 100vh;
}

.hero-carousel .carousel-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

/* PASTIKAN TEKS DI DEPAN MASKING */
.hero-content {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 90%;
    text-align: center;
    z-index: 2; /* Paling Atas */
}

/* =========================================
   KHUSUS TAMPILAN HP (MOBILE)
   Agar gambar tidak nge-zoom parah
   ========================================= */
@media (max-width: 991px) {
    .hero-section {
        min-height: 60vh !important; 
        height: 60vh !important;
    }

    .hero-carousel .carousel-item {
        height: 60vh !important;
    }

    .hero-carousel .carousel-item img {
        height: 100% !important; 
        object-fit: cover;
        object-position: top center; 
    }
}

/* =========================================
   CARDS & SERVICES
   ========================================= */
.card-hover {
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    border: none;
    border-radius: 15px;
    background: #fff;
    box-shadow: 0 5px 15px rgba(0,0,0,0.05);
    overflow: hidden;
}

.card-hover:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 40px rgba(5, 60, 95, 0.1);
}

.icon-circle {
    width: 70px;
    height: 70px;
    background: rgba(239, 132, 24, 0.1); /* Orange Transparan */
    color: #053c5f; /* PRIMARY BLUE */
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    margin-bottom: 20px;
    transition: all 0.3s ease;
}

.card-hover:hover .icon-circle {
    background: #053c5f; /* PRIMARY BLUE */
    color: #fff;
    transform: scale(1.1);
}

/* Effect untuk Halaman Profile */
.hover-effect {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.hover-effect:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 20px rgba(0,0,0,0.1) !important;
}

/* =========================================
   TYPOGRAPHY & UTILITIES
   ========================================= */
.section-title {
    font-weight: 700;
    position: relative;
    display: inline-block;
    padding-bottom: 15px;
    margin-bottom: 20px;
    color: #053c5f; /* PRIMARY BLUE */
}

.section-title::after {
    content: '';
    position: absolute;
    width: 60px;
    height: 4px;
    background: #ef8418; /* SECONDARY ORANGE */
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    border-radius: 2px;
}

.ls-2 { letter-spacing: 2px; }
.tracking-wide { letter-spacing: 1px; }
.tracking-wider { letter-spacing: 2px; }

.hover-warning:hover {
    color: #ef8418 !important; /* ORANGE */
    padding-left: 5px;
}

/* =========================================
   BOOTSTRAP OVERRIDES (FORCING COLORS)
   ========================================= */

/* 1. Mengubah .text-success (Hijau) jadi BIRU */
.text-success {
    color: #053c5f !important;
}

/* 2. Mengubah .text-warning (Kuning) jadi ORANGE */
.text-warning {
    color: #ef8418 !important;
}

/* 3. Mengubah .bg-success (Background Hijau) jadi BIRU */
.bg-success {
    background-color: #053c5f !important;
}

/* 4. Mengubah .btn-success jadi Button BIRU */
.btn-success {
    background-color: #053c5f;
    border-color: #053c5f;
}
.btn-success:hover, .btn-success:focus {
    background-color: #032b45; /* Biru lebih gelap */
    border-color: #032b45;
}

/* 5. Mengubah .btn-outline-success jadi Outline BIRU */
.btn-outline-success {
    color: #053c5f;
    border-color: #053c5f;
}
.btn-outline-success:hover {
    background-color: #053c5f;
    color: #fff;
}

/* 6. Mengubah .btn-warning jadi Button ORANGE */
.btn-warning {
    background-color: #ef8418;
    border-color: #ef8418;
    color: #fff;
}
.btn-warning:hover, .btn-warning:focus {
    background-color: #d16f0e; /* Orange lebih gelap */
    border-color: #d16f0e;
    color: #fff;
}

/* 7. Footer Styling */
footer {
    background-color: #111;
    color: #bbb;
}
footer h3, footer h4, footer h5 {
    color: #fff;
}