/* ========================================================= */
/* --- VARIABLE IDENTITAS PREMIUM --- */
/* ========================================================= */
:root {
    --fai-purple: #512da8;     
    --fai-deep: #1a0b3b;       
    --fai-gold: #ffd700;       
    --fai-green: #2d5a27;      
    --white: #ffffff;          
    --text-dark: #333333;      
    --glass-white: rgba(255, 255, 255, 0.98); 
}

/* ========================================================= */
/* --- LAYANAN MAHASISWA & UI PREMIUM --- */
/* ========================================================= */
.service-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 20px; margin-top: 20px; }

.service-item {
    background: #ffffff;
    border-left: 5px solid var(--fai-purple); 
    padding: 15px 20px;
    border-radius: 12px; 
    display: flex; align-items: center; justify-content: space-between;
    box-shadow: 0 4px 15px rgba(0,0,0,0.05); 
    transition: all 0.3s ease; 
    text-decoration: none !important;
}

.service-item:hover {
    transform: translateX(10px); 
    background: var(--fai-deep); 
    border-left: 5px solid var(--fai-gold); 
}

.service-item:hover .service-text { color: #fff !important; }
.service-item:hover .service-icon { color: var(--fai-gold) !important; }
.service-text { color: var(--fai-deep); font-weight: 700; font-size: 14px; transition: 0.3s; }
.service-icon { color: var(--fai-purple); font-size: 18px; transition: 0.3s; }

.ban-pt-group { display: flex; gap: 10px; margin-top: 10px; flex-wrap: wrap; }
.ban-pt-link { 
    background: #f0f0f0; padding: 5px 15px; border-radius: 20px; 
    font-size: 12px; font-weight: 700; color: var(--fai-purple); 
    text-decoration: none !important; transition: 0.3s;
}
.ban-pt-link:hover { background: var(--fai-gold); color: #000; } 

.premium-card { 
    background: var(--white); 
    border-radius: 15px; 
    padding: 30px; 
    box-shadow: 0 10px 40px rgba(0,0,0,0.05); 
    border-top: 4px solid var(--fai-purple); 
}

/* ========================================================= */
/* --- PENGATURAN KOMPONEN UMUM (TOP BAR, SEARCH, DLL) --- */
/* ========================================================= */
#header_meta { border: none !important; min-height: 25px !important; }
#header_meta .phone-info, #header_meta .social_bookmarks { display: none !important; }

#top #s {
    color: var(--fai-deep) !important; 
    background: #f8f8f8 !important;
    border-radius: 8px !important;
    padding-left: 15px !important;
    font-weight: 600 !important;
}

.ajax_search_response {
    background: var(--glass-white) !important;
    backdrop-filter: blur(15px); 
    border-radius: 12px !important;
    border: 1px solid var(--fai-gold) !important;
    box-shadow: 0 20px 50px rgba(0,0,0,0.3) !important;
    width: 400px !important;
    z-index: 9999 !important; 
    padding: 10px !important;
}

#top .avia-testimonial-content p,
#top .sambutan-konten p {
    font-size: 16px !important;
    line-height: 1.8 !important;
    color: #444444 !important;
    text-align: justify !important;
}

/* --- DROPDOWN MENU KELAS PREMIUM (DESKTOP) --- */
.header_color .main_menu .menu ul li a {
    background-color: var(--white) !important; 
    color: var(--text-dark) !important; 
    margin: 5px 10px !important; 
    border-radius: 10px !important; 
    box-shadow: 0 8px 25px rgba(0,0,0,0.1) !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
    height: auto !important;
    padding: 12px 15px !important;
}

.header_color .main_menu .menu ul li a:hover {
    background-color: var(--fai-purple) !important;
    color: var(--white) !important;
    border-left: 5px solid var(--fai-gold) !important;
}

/* ========================================================= */
/* --- FOOTER & CALENDAR & TABLEPRESS --- */
/* ========================================================= */
#footer { 
    background-color: var(--fai-deep) !important; 
    padding: 35px 0 !important; 
    border-top: 5px solid var(--fai-gold); 
}

#footer .widgettitle { 
    color: var(--fai-gold) !important; 
    font-weight: 800 !important; 
    margin-bottom: 12px !important;
    padding-bottom: 5px !important;
    border-bottom: 1px solid rgba(255,215,0,0.2); 
}

.contact-item { 
    display: flex !important; 
    align-items: center !important; 
    margin-bottom: 6px !important; 
    color: var(--white) !important;
    text-decoration: none !important;
    font-size: 14px !important;
}
.contact-item i { width: 25px; color: var(--fai-gold) !important; } 

#footer .av_one_fourth:nth-child(3), #footer .av_one_fourth:nth-child(4) { display: none !important; }

#footer .av_one_fourth:nth-child(1), #footer .av_one_fourth:nth-child(2) {
    width: 46% !important; margin: 0 2% !important;
    padding: 30px !important; border-radius: 25px;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.03) 0%, rgba(255, 255, 255, 0.06) 100%) !important;
    border: 1px solid rgba(255, 255, 255, 0.1);
}

#socket { 
    background: linear-gradient(90deg, var(--fai-purple) 0%, var(--fai-deep) 100%) !important; 
    padding: 20px 0 !important; 
}
#socket .sub_menu_socket, #socket .sub_menu { display: none !important; } 
#socket .copyright { width: 100% !important; text-align: center !important; font-weight: 600; color: var(--white) !important; float: none !important; display: block !important; }

.wp-calendar-table { width: 100% !important; background: var(--white) !important; border-radius: 15px !important; overflow: hidden !important; box-shadow: 0 10px 30px rgba(0,0,0,0.08) !important; }
.wp-calendar-table caption { background: linear-gradient(135deg, var(--fai-purple) 0%, var(--fai-deep) 100%) !important; color: var(--fai-gold) !important; padding: 15px !important; font-weight: 800 !important; }

.tablepress thead th { background-color: var(--fai-purple) !important; color: var(--white) !important; text-align: center; } 
.tablepress tbody tr:hover td { background-color: #e8f5e9 !important; color: var(--fai-green) !important; transition: all 0.3s ease; } 

/* ========================================================= */
/* --- TOMBOL WHATSAPP PREMIUM --- */
/* ========================================================= */
.wa-cta-button {
    background: linear-gradient(135deg, #ffd700 0%, #ffb900 100%) !important; 
    color: #000000 !important; 
    font-weight: 900 !important;
    padding: 14px 30px !important;
    border-radius: 50px !important; 
    display: inline-flex; align-items: center; justify-content: center;
    text-decoration: none !important; text-transform: uppercase;
    margin-top: 15px; box-shadow: 0 10px 20px rgba(0,0,0,0.15) !important;
    transition: all 0.3s cubic-bezier(0.23, 1, 0.32, 1) !important;
}

.wa-cta-button i { color: #000000 !important; font-size: 22px; margin-right: 12px; }
.wa-cta-button:hover { transform: translateY(-3px) scale(1.02); box-shadow: 0 15px 30px rgba(255, 215, 0, 0.4) !important; filter: brightness(1.08); } 
.wa-cta-button:active { transform: scale(0.95); background-color: #ffffff !important; color: #000000 !important; box-shadow: 0 0 40px #ffffff, 0 0 70px var(--fai-gold) !important; transition: all 0.1s ease !important; } 

.wa-floating-btn {
    position: fixed; width: 62px; height: 62px; bottom: 40px; right: 40px;
    background-color: #25d366; color: #FFF; border-radius: 50px; text-align: center;
    font-size: 32px; box-shadow: 0 10px 25px rgba(0,0,0,0.2); z-index: 9999;
    display: flex; align-items: center; justify-content: center;
}

/* ========================================================= */
/* 🚀 CORE HEADER SYSTEM V5: DESKTOP TATA LETAK */
/* ========================================================= */
#header_meta, #header_main, .header_color .header_bg, .header-scrolled #header_main {
    background: linear-gradient(90deg, var(--fai-purple) 0%, var(--fai-deep) 100%) !important;
    opacity: 1 !important;
}
#header_main { 
    border-bottom: 3px solid var(--fai-gold) !important; 
    backdrop-filter: blur(6px);
}

#top #header_main .container {
    display: flex !important; 
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important; 
    height: 140px !important; 
    padding: 0 20px !important;
    position: relative !important; 
    flex-wrap: nowrap !important;
}

#top .header-logo-text {
    position: absolute !important; 
    left: 0px !important; 
    top: 0px !important; 
    transform: none !important;
    padding-left: 5px !important; 
    border-left: 3px solid var(--fai-gold); 
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    white-space: nowrap !important; 
    margin: 0 !important;
}

.fai-text {
    display: block; color: var(--fai-gold) !important;
    font-size: 24px !important; 
    font-weight: 900 !important;
    letter-spacing: 0.5px; text-shadow: 0 0 10px rgba(255, 215, 0, 0.3);
    line-height: 1.2 !important;
}

.uni-text {
    display: block; color: #ffffff !important;
    font-size: 12px !important; font-weight: 600 !important;
    letter-spacing: 1.5px; text-transform: uppercase;
}

#top .main_menu {
    display: flex !important;
    align-items: center !important;
    float: none !important;
    width: auto !important;
    background-color: transparent !important;
    margin: 0 !important;
    padding: 0 !important;
    margin-top: 10px !important; 
}

#top .av-main-nav { display: flex !important; align-items: center !important; flex-wrap: nowrap !important; white-space: nowrap !important; }

#top .av-main-nav > li > a {
    height: 60px !important; 
    padding: 0 12px !important;
    position: relative; line-height: 60px !important; transition: all 0.4s ease-in-out !important;
}

#top .av-main-nav > li > a .avia-menu-text { color: var(--white) !important; font-size: 13px !important; font-weight: 700 !important; }
#top .av-main-nav > li > a:hover .avia-menu-text { color: var(--fai-gold) !important; } 

#top .av-main-nav > li > a::after {
    content: ''; position: absolute; bottom: 10px; left: 50%;
    width: 0%; height: 3px; background: var(--fai-gold); 
    transition: 0.3s; transform: translateX(-50%);
}
#top .av-main-nav > li > a:hover::after { width: 60%; } 

#top .logo {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    margin-left: auto !important; 
    float: none !important;
    padding: 0 !important;
    width: auto !important;
}

#top .logo a { display: flex !important; align-items: center !important; }

#top .logo img {
    max-height: 85px !important; 
    padding: 5px 0 !important;
    display: block !important;
    position: relative !important;
    width: auto !important;
    object-fit: contain;
}

/* ========================================================= */
/* 📱 HEADER HP TATA LETAK: [LOGO] | [TEKS] ....... [MENU] */
/* ========================================================= */

@media only screen and (max-width: 990px) {
    #top .header-logo-text { display: none !important; } 
}

@media only screen and (max-width: 768px) {
    /* Sembunyikan elemen pengganggu di atas */
    #header_meta, .gtranslate_wrapper { display: none !important; }

    /* Jadikan kotak Header sebagai Papan Kanvas */
    .responsive #top #header_main .container { 
        height: 80px !important; 
        position: relative !important; 
        display: block !important; 
        width: 100% !important;
        padding: 0 !important;
    }

    /* 1. LOGO: Dipaku di Kiri */
    .responsive #top .logo { 
        position: absolute !important; 
        left: 15px !important;
        top: 50% !important;
        transform: translateY(-50%) !important; 
        margin: 0 !important; 
        display: block !important;
        width: auto !important; 
        z-index: 99 !important;
    }
    .responsive #top .logo img { 
        max-height: 48px !important; 
        width: auto !important; 
    }

    /* 2. TEKS FAI: Di Sebelah Kanan Logo dengan Garis Pemisah | */
    .responsive #top .header-logo-text { 
        position: absolute !important; 
        left: 75px !important; 
        top: 50% !important;
        transform: translateY(-50%) !important; 
        display: flex !important; 
        flex-direction: column !important;
        justify-content: center !important;
        text-align: left !important;
        border-left: 2px solid var(--fai-gold) !important; 
        padding-left: 10px !important;
        margin: 0 !important; 
        width: calc(100% - 135px) !important; 
        z-index: 99 !important;
    }
    .responsive .fai-text { font-size: 11px !important; line-height: 1.2 !important; white-space: normal !important; text-shadow: none !important; display: block !important; } 
    .responsive .uni-text { font-size: 8px !important; letter-spacing: 0.5px !important; display: block !important; margin-top: 2px !important; } 

    /* 3. MENU GARIS 3: Dipaku di Mentok Kanan Paling Ujung */
    .responsive #top .main_menu {
        position: absolute !important; 
        right: 0px !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        margin: 0 !important;
        display: block !important;
        width: auto !important; 
        z-index: 999 !important; 
    }
    .responsive #top .main_menu .menu-item-avia-special a {
        height: 80px !important; 
        line-height: 80px !important;
        padding: 0 18px !important;
        border: none !important; 
        display: block !important;
    }
    .responsive #top .main_menu .menu-item-avia-special a::before {
        font-size: 28px !important; 
        color: var(--fai-gold) !important; 
    }

    /* Sembunyikan Item Menu PC di Area Header HP */
    #header_main .av-main-nav > li:not(.av-burger-menu-main) { display: none !important; }

    /* Susun ulang Footer & Sidebar HP */
    #footer .av_one_fourth { width: 100% !important; margin: 10px 0 !important; }
    #top #main .sidebar { display: block !important; width: 100% !important; padding: 30px 15px !important; }
}

/* ========================================================= */
/* 📱 MENU HP (SISTEM DEFAULT ENFOLD + TOMBOL EMAS) */
/* ========================================================= */

/* Hanya mewarnai tombol garis tiga (Menu) menjadi Emas */
.header_color .av-hamburger-inner, 
.header_color .av-hamburger-inner::before, 
.header_color .av-hamburger-inner::after {
    background-color: var(--fai-gold) !important;
}

/* Mewarnai tombol X (Close) menjadi Emas saat menu terbuka */
.html_av-overlay-side .av-burger-overlay-active #top .av-hamburger-inner,
.html_av-overlay-side .av-burger-overlay-active #top .av-hamburger-inner::before,
.html_av-overlay-side .av-burger-overlay-active #top .av-hamburger-inner::after {
    background-color: var(--fai-gold) !important;
}