*{
    box-sizing:border-box;
}

body{
    overflow-x:hidden;
}

body{
    margin:0;
    font-family:'Roboto Condensed', sans-serif;
}

.main-header{
    background-color:#002147;
    width:100%;
    height:80px;
    font-weight:500; 
    font-family: 'Roboto Condensed', sans-serif;

    position:sticky;
    top: 0;
    z-index:1000;
}

.container{
    max-width:1200px;
    margin:0 auto;
    padding:0 24px;
    width:100%;
}

.main-header nav{
    display:flex;
    align-items:center;
    justify-content:space-between;
    height:100%;
    padding:12px 0;
}

.nav-links a:hover {
    opacity: 0.8;
}

.navbar{
    display:flex;
    align-items:center;
    justify-content:space-between;
    height:100%;
    padding:0 40px;
    flex-wrap: wrap;
}

.logo img{
    height:60px;
}

.nav-links{
    display:flex;
    gap:30px;
    box-sizing:border-box;
}

.nav-links a{
    color:white;
    text-decoration:none;
    font-weight:500;
}

.hamburger{
    display:none;
    font-size:28px;
    color:white;
    cursor:pointer;
}

.close-btn{
    display:none;
}

@media (max-width:1024px){

    .mega-menu{
        position: static;
        width: 100%;
        padding: 10px 20px;
        box-shadow: none;
        border-radius: 0;

        display: none; /* default tertutup */
        opacity: 1;
        visibility: visible;
        transform: none;

        flex-direction: column !important;
        gap: 10px !important;

        flex-wrap: wrap;
    }

    .dropdown.active .mega-menu{
        display: flex;
    }

    /* biar rapi di mobile */
    .mega-column{
        gap: 5px;
    }

    .hamburger{
        display:block;
        font-size:28px;
        cursor:pointer;
    }

    .navbar{
        padding: 0 16px;
    }

    .nav-links{
        position:fixed;
        top:0;
        right:0;

        width:80%;
        max-width: 260px;
        /* width:260px; */
        height:100%;
        max-height: 100%;

        background:#002147;

        display:flex;
        flex-direction:column;

        transform:translateX(100%);
        transition:transform 0.3s ease;

        overflow-y:auto;

        z-index:1000;

        /* smooth scrolling */
        -webkit-overflow-scrolling: touch;
        overscroll-behavior: contain;
    }

    .nav-links.active{
        transform:translateX(0);
    }

    .nav-links a{
        flex-shrink:0;
    }

    /* menu header */
    .menu-header{
        display:flex;
        justify-content:flex-end;
        padding:20px;
        border-bottom:1px solid rgba(255,255,255,0.15);
    }

    /* close button */
    .close-btn{
        display:block;
        font-size:24px;
        cursor:pointer;
        color: #ffffff;
        padding:8px;
    }

    .close-btn:hover{
        opacity:0.7;
    }

    /* menu links */
    .nav-links a{
        padding:16px 20px;
        border-bottom:1px solid rgba(255,255,255,0.15);
    }

    .dropdown-menu {
        position: static;
        width: 100%;
        box-shadow: none;
        border-radius: 0;

        display: none;
        opacity: 1;
        visibility: visible;
        transform: none;
    }

    .dropdown.active .dropdown-menu {
        display: flex;
    }

}

/* Dropdown container */
.dropdown {
    position: relative;
}

/* Mega menu box */
.mega-menu {
    position: absolute;
    top: 100%;
    left: 0;

    display: flex;
    gap: 60px;

    background: white;
    padding: 30px 40px;

    width: 480px;

    box-shadow: 0 10px 25px rgba(0,0,0,0.1);
    border-radius: 8px;

    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);

    transition: all 0.25s ease;

    z-index: 999;
}

/* Show on hover */
.dropdown:hover .mega-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

/* Column */
.mega-column {
    display: flex;
    flex-direction: column;
}

/* Column title */
.mega-column h4 {
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 10px;
    color: #1f3c88;
}

/* Links */
.mega-column a {
    text-decoration: none;
    color: #555;
    padding: 5px 0;
    font-size: 14px;
}

/* Hover effect */
.mega-column a:hover {
    color: #0f4c81;
}

/* Dropdown kecil (Tentang Kami) */
.dropdown-menu {
    position: absolute;
    top: 100%;
    left: 0;

    background: white;
    min-width: 220px;

    display: flex;
    flex-direction: column;

    box-shadow: 0 8px 20px rgba(0,0,0,0.1);
    border-radius: 6px;

    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);

    transition: all 0.25s ease;

    z-index: 999;
}

/* item */
.dropdown-menu a {
    padding: 12px 16px;
    color: #333;
    text-decoration: none;
    font-size: 14px;
}

/* hover */
.dropdown-menu a:hover {
    background: #f5f5f5;
}

/* tampil saat hover (desktop) */
.dropdown:hover .dropdown-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}