/*====================================================*
HEADER COMPONENT WRAPPER
====================================================*/

#header {

    position: sticky;

    top: 0;

    z-index: 9999;

    width: 100%;

}


/*====================================================*
HEADER / NAVBAR
====================================================*/

.main-header {

    position: relative;

    z-index: 9999;

    width: 100%;

    height: 115px;

    background: #182b34;

    transition:
        background 0.3s ease,
        box-shadow 0.3s ease;

}


/*====================================================*
HEADER CONTAINER
====================================================*/

.header-container {

    width: 100%;

    height: 100%;

    max-width: 1920px;

    margin: 0 auto;

    padding: 0 48px;

    display: flex;

    align-items: center;

    justify-content: space-between;

    box-sizing: border-box;

}


/*====================================================*
LOGO
====================================================*/

.header-logo {

    display: flex;

    align-items: center;

    flex-shrink: 0;

    text-decoration: none;

}


.header-logo img {

    display: block;

    width: 185px;

    height: auto;

    object-fit: contain;

}


/*====================================================*
MAIN NAVIGATION
====================================================*/

.main-nav {

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 48px;

    margin-left: 80px;

}


/*====================================================*
NAVIGATION LINKS
====================================================*/

.nav-link {

    position: relative;

    display: inline-flex;

    align-items: center;

    color: #ffffff;

    font-family: "Poppins", sans-serif;

    font-size: 15px;

    font-weight: 400;

    line-height: 1;

    text-decoration: none;

    white-space: nowrap;

    transition:
        color 0.3s ease;

}


/*====================================================*
NAV HOVER
====================================================*/

.nav-link:hover {

    color: #f8b44c;

}


/*====================================================*
ACTIVE NAV
====================================================*/

.nav-link.active {

    color: #ffffff;

}


/*====================================================*
LOGIN BUTTON
====================================================*/

.login-button {

    min-width: 140px;

    height: 56px;

    padding: 0 25px;

    box-sizing: border-box;

    display: inline-flex;

    align-items: center;

    justify-content: center;

    gap: 12px;

    background: #f8b44c;

    border-radius: 8px;

    color: #111111;

    font-family: "Poppins", sans-serif;

    font-size: 15px;

    font-weight: 500;

    text-decoration: none;

    transition:
        background 0.3s ease,
        transform 0.3s ease;

}


/*====================================================*
LOGIN HOVER
====================================================*/

.login-button:hover {

    background: #ffbd5b;

    transform: translateY(-2px);

}


/*====================================================*
LOGIN ARROW
====================================================*/

.login-arrow {

    font-size: 23px;

    font-weight: 300;

    line-height: 1;

    transition:
        transform 0.3s ease;

}


/*====================================================*
LOGIN ARROW HOVER
====================================================*/

.login-button:hover .login-arrow {

    transform: translateX(4px);

}


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

.mobile-menu-button {

    display: none;

    width: 48px;

    height: 48px;

    padding: 0;

    border: none;

    background: transparent;

    cursor: pointer;

    flex-direction: column;

    align-items: center;

    justify-content: center;

    gap: 6px;

}


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

.mobile-menu-button span {

    display: block;

    width: 28px;

    height: 2px;

    background: #ffffff;

    transition:
        transform 0.3s ease,
        opacity 0.3s ease;

}


/*====================================================*
HEADER WHEN SCROLLED
====================================================*/

.main-header.scrolled {

    background: #182b34;

    box-shadow:
        0 4px 20px rgba(0, 0, 0, 0.18);

}


/*====================================================*
LARGE LAPTOP / SMALL DESKTOP
====================================================*/

@media (max-width: 1200px) {

    .header-container {

        padding: 0 35px;

    }


    .header-logo img {

        width: 170px;

    }


    .main-nav {

        gap: 32px;

        margin-left: 40px;

    }


    .nav-link {

        font-size: 14px;

    }


    .login-button {

        min-width: 125px;

        height: 52px;

    }

}


/*====================================================*
TABLET
====================================================*/

@media (max-width: 992px) {

    .main-header {

        height: 95px;

    }


    .header-container {

        padding: 0 30px;

    }


    .header-logo img {

        width: 160px;

    }


    /*----------------------------------------------
    HIDE DESKTOP NAVIGATION
    ----------------------------------------------*/

    .main-nav {

        display: none;

    }


    /*----------------------------------------------
    HIDE LOGIN
    ----------------------------------------------*/

    .login-button {

        display: none;

    }


    /*----------------------------------------------
    SHOW MOBILE MENU
    ----------------------------------------------*/

    .mobile-menu-button {

        display: flex;

    }

}


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

@media (max-width: 768px) {

    .main-header {

        height: 85px;

    }


    .header-container {

        padding: 0 22px;

    }


    .header-logo img {

        width: 145px;

    }


    .mobile-menu-button {

        width: 45px;

        height: 45px;

    }


    .mobile-menu-button span {

        width: 27px;

    }

}


/*====================================================*
SMALL MOBILE
====================================================*/

@media (max-width: 480px) {

    .main-header {

        height: 78px;

    }


    .header-container {

        padding: 0 16px;

    }


    .header-logo img {

        width: 130px;

    }


    .mobile-menu-button {

        width: 42px;

        height: 42px;

    }


    .mobile-menu-button span {

        width: 25px;

    }

}