/*
Theme Name: Raf & Associates Professional
Author: Developer PT. Kobar Digital Nusantara
Description: Desain Firma Hukum Premium dengan Navigasi Dropdown Otomatis.
Version: 5.5
*/

:root {
    --navy: #0a1622;
    --gold: #c5a059; 
    --gold-light: #e0c28b;
    --white: #ffffff;
    --glass: rgba(255, 255, 255, 0.98);
    --bg-soft: #f8f9fa;
    --shadow-sm: 0 5px 15px rgba(0,0,0,0.05);
    --shadow-lg: 0 15px 45px rgba(0,0,0,0.1);
}

/* --- RESET & BASE --- */
* { margin: 0; padding: 0; box-sizing: border-box; }

html { scroll-behavior: smooth; }

body { 
    font-family: 'Montserrat', sans-serif; 
    background-color: var(--bg-soft); 
    color: var(--navy); 
    line-height: 1.8;
    -webkit-font-smoothing: antialiased;
}

/* Typography Global */
h1, h2, h3, h4, h5, h6 { 
    font-family: 'Playfair Display', serif; 
    font-weight: 700; 
    letter-spacing: -0.2px;
    line-height: 1.3;
}

a { transition: all 0.3s ease; text-decoration: none; }

/* --- HEADER & NAVIGATION --- */
header { 
    background: var(--navy); 
    padding: 30px 0; 
    position: sticky; 
    top: 0; 
    z-index: 1000; 
    transition: all 0.4s ease;
    border-bottom: 1px solid rgba(197, 160, 89, 0.2);
}

/* Efek saat discroll (Memerlukan sedikit JS nanti atau class toggle) */
header.scrolled {
    padding: 15px 0;
    box-shadow: var(--shadow-lg);
}

.container { 
    max-width: 1200px; 
    margin: 0 auto; 
    width: 90%; 
}

.logo { text-align: center; margin-bottom: 25px; }
.logo img { max-width: 240px; height: auto; transition: 0.4s; }

/* Desktop Navigation */
.nav-list { 
    list-style: none; 
    display: flex; 
    justify-content: center; 
    gap: 40px; 
    border-top: 1px solid rgba(255,255,255,0.05); 
    padding-top: 20px; 
}

.nav-list li { position: relative; }

.nav-list li a { 
    color: var(--white); 
    font-size: 11px; 
    font-weight: 600; 
    text-transform: uppercase; 
    letter-spacing: 2px;
    display: block;
    padding-bottom: 5px;
}

/* Underline Animation */
.nav-list li a::after {
    content: '';
    display: block;
    width: 0;
    height: 1px;
    background: var(--gold);
    transition: width 0.3s;
}

.nav-list li a:hover { color: var(--gold); }
.nav-list li a:hover::after { width: 100%; }

/* --- DROPDOWN SYSTEM --- */
.nav-list li ul, 
.nav-list li .sub-menu {
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%) translateY(20px);
    background: var(--navy);
    min-width: 250px;
    padding: 20px 0;
    list-style: none;
    border-top: 3px solid var(--gold);
    box-shadow: var(--shadow-lg);
    
    visibility: hidden;
    opacity: 0;
    transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    z-index: 9999;
}

.nav-list li:hover > ul, 
.nav-list li:hover > .sub-menu {
    visibility: visible;
    opacity: 1;
    transform: translateX(-50%) translateY(0);
}

.nav-list li ul li { width: 100%; }

.nav-list li ul li a {
    padding: 12px 30px !important;
    font-size: 10px !important;
    letter-spacing: 1.5px !important;
    border-bottom: 1px solid rgba(255,255,255,0.03);
    text-align: left;
}

.nav-list li ul li a::after { display: none; } /* Matikan underline di dropdown */

.nav-list li ul li a:hover {
    background: rgba(197, 160, 89, 0.08) !important;
    padding-left: 35px !important;
    color: var(--gold-light);
}

/* --- WORDPRESS CORE CLASSES --- */
.aligncenter { display: block; margin: 20px auto; }
.wp-post-image { max-width: 100%; height: auto; }

/* --- RESPONSIVE --- */
@media (max-width: 992px) {
    header { padding: 20px 0; }
    .logo { margin-bottom: 15px; }
    .logo img { max-width: 180px; }

    .nav-list { 
        display: none; 
        position: absolute;
        top: 100%;
        left: 0;
        width: 100%; 
        background: var(--navy);
        flex-direction: column;
        padding: 30px;
        gap: 20px;
        border-top: 2px solid var(--gold);
    }

    .nav-list.open { display: flex !important; }

    .nav-list li ul {
        position: static;
        transform: none !important;
        visibility: visible;
        opacity: 1;
        display: none;
        box-shadow: none;
        width: 100%;
        background: rgba(0,0,0,0.2);
        margin-top: 10px;
    }

    .nav-list li.active-mobile-dropdown > ul {
        display: block;
    }
}