/* =====================================
   MOBILE NAVIGATION
===================================== */

/* Hide mobile elements on desktop */

.mobile-menu-toggle,
.mobile-sidebar,
.mobile-overlay {
    display: none;
}

/* =====================================
   TABLET + MOBILE
===================================== */

@media (max-width: 1024px) {

    /* Hide desktop navigation */
    .main-nav {
        display: none;
    }

    /* Show hamburger */
    .mobile-menu-toggle {
        display: flex;
        flex-direction: column;
        justify-content: center;
        gap: 6px;

        width: 50px;
        height: 50px;

        background: none;
        border: none;

        cursor: pointer;
    }

    .mobile-menu-toggle span {
        width: 28px;
        height: 3px;

        background: #000032;

        border-radius: 10px;
    }

    /* Enable sidebar + overlay */
    .mobile-sidebar {
        display: block;
    }

    .mobile-overlay {
        display: block;
    }
}

/* =====================================
   SIDEBAR
===================================== */

.mobile-sidebar {

    position: fixed;

    top: 0;
    right: -320px;

    width: 320px;
    height: 100vh;

    background: #ffffff;

    z-index: 99999;

    padding: 30px;

    overflow-y: auto;

    transition: right 0.35s ease;
}

.mobile-sidebar.active {
    right: 0;
}

/* =====================================
   OVERLAY
===================================== */

.mobile-overlay {

    position: fixed;
    inset: 0;

    background: rgba(0, 0, 0, 0.55);

    z-index: 99998;

    opacity: 0;
    visibility: hidden;

    transition: all 0.35s ease;
}

.mobile-overlay.active {
    opacity: 1;
    visibility: visible;
}

/* =====================================
   CLOSE BUTTON
===================================== */

.mobile-close {

    background: none;
    border: none;

    font-size: 34px;

    color: #000032;

    cursor: pointer;

    margin-bottom: 30px;
}

/* =====================================
   MOBILE MENU
===================================== */

.mobile-nav {
    list-style: none;
    margin: 0;
    padding: 0;
}

.mobile-nav li {
    margin-bottom: 10px;
}

.mobile-nav a {

    display: block;

    padding: 14px 0;

    text-decoration: none;

    color: #000032;

    font-size: 16px;

    font-weight: 700;

    text-transform: uppercase;

    border-bottom: 1px solid #e5e5e5;

    transition: color 0.2s ease;
}

.mobile-nav a:hover {
    color: #ef1b1b;
}