/* services_style.css */

:root {
    --bg-dark: #0A192F; 
    --navy-light: #112240;
    --teal: #1A9F9F;
    --teal-bright: #1A9F9F; /* Cyan Color buat Nav */
    --accent-gold: #FFD700;
    --text-light: #E6F1FF;
    --text-dark: #1D2B2B;
    --white: #FFFFFF;
    --bg-light: #F8FAFC;
}

/* --- Global Reset --- */
* { margin: 0; padding: 0; box-sizing: border-box; }
body { 
    font-family: 'Inter', sans-serif; 
    color: var(--text-dark); 
    line-height: 1.7; 
    background-color: var(--white); 
    overflow-x: hidden; 
}

/* --- Navigation & Header Styling --- */
header { 
    background: var(--white); 
    padding: 15px 0; 
    position: sticky; 
    top: 0; 
    z-index: 1000; 
    box-shadow: 0 2px 15px rgba(0,0,0,0.04); 
}

.logo img { height: 45px; }

/* Dorong nav ke pojok kanan */
header nav { margin-left: auto; } 

.nav-list { 
    display: flex; 
    list-style: none; 
    gap: 5px; 
    margin: 0; 
    align-items: center; 
}

.nav-list a { 
    text-decoration: none; 
    color: var(--text-dark); 
    font-weight: 700; 
    padding: 10px 18px; 
    border-radius: 30px; 
    font-size: 1.05rem; 
    transition: 0.3s; 
}

/* STATE ACTIVE: Teks Teal Bright & Background nyala (REVISI MART) */
.nav-list a.active { 
    color: var(--teal-bright) !important; 
    background: rgba(26, 159, 159, 0.15) !important; 
}

.nav-list a:hover { 
    color: var(--teal-bright); 
    background: rgba(26, 159, 159, 0.1); 
}

/* Dropdown Menu Styling */
.nav-dropdown { position: relative; }
.dropdown-menu-custom {
    position: absolute; 
    top: 100%; 
    right: 0; 
    background: var(--white); 
    min-width: 220px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.1); 
    border-radius: 12px; 
    padding: 10px 0;
    display: none; 
    list-style: none; 
    z-index: 1100; 
    margin-top: 5px;
}

.dropdown-menu-custom li a { 
    border-radius: 0; 
    padding: 10px 20px; 
    display: block; 
    font-size: 0.95rem; 
    background: none; 
}

.nav-dropdown:hover .dropdown-menu-custom { 
    display: block; 
    animation: fadeInNav 0.3s ease; 
}

@keyframes fadeInNav {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}

/* --- Hero Section --- */
.services-hero {
    background: linear-gradient(rgba(10, 25, 47, 0.85)), 
                url('foto/37.jpg') center/cover no-repeat;
    min-height: 70vh; 
    display: flex; 
    align-items: center; 
    color: var(--text-light);
}
.services-hero h1 span { color: var(--accent-gold); }
.subheadline-v2 { font-weight: 700; text-transform: uppercase; letter-spacing: 3px; display: block; color: var(--teal); margin-bottom: 1rem; }
.description-v2 { opacity: 0.8; }

/* --- Section Utils --- */
.section-padding { padding: 100px 0; }
.section-title { font-weight: 800; color: var(--navy-light); text-transform: uppercase; letter-spacing: 1px; }
.accent-line-center { width: 60px; height: 4px; background: var(--teal); margin: 15px auto 30px; border-radius: 2px; }
.accent-line-left { width: 50px; height: 4px; background: var(--teal); margin: 15px 0 25px; }

/* --- Consulting Blocks --- */
.block-image-container { width: 100%; height: 100%; min-height: 350px; position: relative; overflow: hidden; }
.block-image { width: 100%; height: 100%; position: absolute; top: 0; left: 0; background-size: cover; background-position: center; transition: 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94); }
.consulting-block:hover .block-image { transform: scale(1.1); }

.key-items-list { 
    list-style: none; 
    padding: 0; 
    margin: 0; 
    display: flex; 
    flex-direction: column; 
    gap: 12px; 
}
.key-items-list li { 
    display: flex; 
    align-items: flex-start; 
    font-weight: 600; 
    color: var(--navy-light); 
    line-height: 1.4;
}
.key-items-list i { 
    color: var(--teal); 
    font-size: 1.1rem; 
    margin-right: 12px; 
    margin-top: 3px; 
}

.btn-view-service { 
    text-decoration: none; 
    color: var(--teal); 
    font-weight: 700; 
    text-transform: uppercase; 
    letter-spacing: 1px; 
    transition: 0.3s; 
}
.btn-view-service:hover { color: var(--navy-light); padding-left: 10px; }

/* --- Feature Cards --- */
.work-feature-card { 
    background: rgba(255, 255, 255, 0.05); 
    padding: 30px; 
    border-radius: 15px; 
    border-bottom: 3px solid var(--teal); 
    transition: 0.3s; 
    height: 100%; 
}
.work-feature-card i { font-size: 2.2rem; color: var(--teal); margin-bottom: 20px; display: block; }


/* Pastikan class ini ada di CSS lo */
.social-icon-box {
    width: 40px;
    height: 40px;
    background: #eee;
    color: var(--navy-light);
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 50%;
    text-decoration: none;
    transition: 0.3s;
}

.social-icon-box i {
    margin: 0 !important; /* Fix ikon miring */
    display: block;
}

.social-icon-box:hover {
    background: var(--teal-bright);
    color: white;
    transform: translateY(-3px);
}

/* ============================================================ */
/* MASTER FONT SIZING (MART: ATUR DI SINI BIAR GAMPANG)       */
/* ============================================================ */
.fs-hero-title { font-size: 4rem; }
.fs-hero-sub { font-size: 1.1rem; }
.fs-hero-desc { font-size: 1.2rem; }

.fs-section-title { font-size: 2.2rem; }
.fs-section-desc { font-size: 1.1rem; }

.fs-card-title { font-size: 1.35rem; font-weight: 700; }
.fs-card-desc { font-size: 1rem; }
/* ============================================================ */

/* --- REVISI RESPONSIVE (Taruh di paling bawah CSS lo) --- */
@media (max-width: 992px) {
    /* Header & Nav */
    .navbar-collapse { background: white; padding: 20px; box-shadow: 0 5px 10px rgba(0,0,0,0.1); }
    .nav-list { flex-direction: column !important; gap: 15px; }
    
    /* Hero/Intro Text Fix */
    .display-title { font-size: 3.5rem !important; letter-spacing: -1px; }
    .fs-hero-desc { font-size: 1rem !important; line-height: 1.6; }
    
    /* Footer Fix */
    footer .row { text-align: center; gap: 30px; }
    .social-links-v2 { justify-content: center; }
}

/* Biar dropdown menu gak off-screen di mobile */
@media (max-width: 992px) {
    .dropdown-menu-custom { position: relative; width: 100%; box-shadow: none; border: none; }
}