/* =========================
   HEADER
========================= */

.custom-header{
    position:relative;
    width:100%;
    height:90px;
    overflow:hidden;
    z-index:999;
}

/* BACKGROUND */

.header-overlay{
    position:absolute;
    inset:0;

    background-image:url('https://images.unsplash.com/photo-1506744038136-46273834b3fb');

    background-size:cover;
    background-position:center;

    filter:blur(2px);

    transform:scale(1.1);
}

/* GLASS EFFECT */

.custom-header::before{
    content:"";
    position:absolute;
    inset:0;

    background:rgba(20,20,20,0.35);

    backdrop-filter:blur(12px);

    z-index:1;
}

/* NAVBAR */

/* =========================
   FIX HEADER ALIGNMENT
========================= */

/* NAVBAR */

.custom-navbar{
    position:relative;
    z-index:10;

    height:110px;

    display:flex;
    align-items:center;
}

/* DESKTOP COLLAPSE */

/* DESKTOP COLLAPSE */

.custom-navbar .navbar-collapse{
    height:100%;
    align-items:center;
    justify-content:space-between;
}

/* LEFT */

.header-left{
    flex:0 0 auto;

    display:flex;
    align-items:center;

    height:100%;
}

/* CENTER */

.header-center{
    flex:1;

    display:flex;
    align-items:center;
    justify-content:center;

    height:100%;

    padding:0 30px;
}

/* RIGHT */

.header-right{
    flex:0 0 auto;

    display:flex;
    align-items:center;

    height:100%;
}

/* MENU */

.header-right-menu{
    display:flex;
    align-items:center;

    gap:24px;

    margin:0;
}

/* LOGO */

.brand-logo{
    display:flex;
    align-items:center;

    height:100%;
}

.brand-logo img{
    height:140px;
    width:auto;

    object-fit:contain;

    display:block;
}

/* HEADER HEIGHT */

.custom-header{
    height:110px;
}

/* MENU */

.header-right-menu{
    display:flex;
    align-items:center;
    gap:24px;
}

.navbar-nav .nav-link{
    color:#fff;
    font-size:15px;
    font-weight:600;
    position:relative;
    padding:0 !important;
    transition:0.3s;
}

.navbar-nav .nav-link:hover{
    color:#d4a762;
}

.navbar-nav .nav-link::after{
    content:"";
    position:absolute;
    left:0;
    bottom:-5px;

    width:0%;
    height:2px;

    background:#d4a762;

    transition:0.3s;
}

.navbar-nav .nav-link:hover::after{
    width:100%;
}

/* SEARCH */

.header-search{
    width:100%;
    max-width:360px;

    display:flex;
    align-items:center;
    gap:10px;

    background:#fff;

    padding:8px 10px 8px 16px;

    border-radius:50px;
}

.header-search i{
    color:#777;
    font-size:14px;
}

.header-search input{
    border:none;
    outline:none;
    width:100%;
    background:transparent;
    font-size:14px;
}

/* SEARCH BUTTON */

.search-btn{
    border:none;

    background:#0d6efd;
    color:#fff;

    padding:9px 18px;

    border-radius:30px;

    font-size:13px;
    font-weight:600;

    transition:0.3s;
}

.search-btn:hover{
    background:#0b5ed7;
}

/* BOOK BUTTON */

.book-btn{
    background:linear-gradient(90deg,#0095d9,#00bfff);

    color:#fff !important;

    padding:10px 22px;

    border-radius:50px;

    border:none;

    font-size:14px;
    font-weight:600;

    transition:0.3s;
}

.book-btn:hover{
    transform:translateY(-2px);

    box-shadow:0 8px 20px rgba(0,149,217,0.35);
}

/* MOBILE LOGO */

.mobile-brand img{
    height:55px;
    width:auto;
    object-fit:contain;
}

/* HAMBURGER */

.navbar-toggler{
    z-index:11;
}

.hamburger{
    display:block;

    width:26px;
    height:3px;

    background:#fff;

    margin:5px 0;

    border-radius:20px;
}

/* =========================
   SIDEBAR
========================= */

.mobile-sidebar{
    position:fixed;
    top:0;
    left:-320px;

    width:300px;
    height:100%;

    background:rgba(15,23,42,0.97);

    backdrop-filter:blur(18px);

    z-index:9999;

    transition:0.4s ease;

    padding:25px;

    overflow-y:auto;
}

.mobile-sidebar.active{
    left:0;
}

.sidebar-top{
    display:flex;
    align-items:center;
    justify-content:space-between;

    margin-bottom:30px;
}

.sidebar-logo{
    width:140px;
}

.close-sidebar{
    border:none;
    background:none;

    font-size:35px;
    color:#fff;
}

/* MOBILE SEARCH */

.mobile-search{
    height:50px;

    border-radius:50px;

    background:rgba(255,255,255,0.10);

    border:1px solid rgba(255,255,255,0.12);

    display:flex;
    align-items:center;

    gap:10px;

    padding:0 18px;

    margin-bottom:35px;
}

.mobile-search input{
    border:none;
    outline:none;
    background:none;

    color:#fff;
    width:100%;
}

.mobile-search input::placeholder{
    color:#ddd;
}

/* MOBILE MENU */

.mobile-sidebar ul{
    list-style:none;
    padding:0;
}

.mobile-sidebar ul li{
    margin-bottom:20px;
}

.mobile-sidebar ul li a{
    display:flex;
    align-items:center;
    gap:14px;

    text-decoration:none;

    color:#fff;

    font-size:16px;
    font-weight:500;

    transition:0.3s;
}

.mobile-sidebar ul li a:hover{
    color:#00bfff;
    padding-left:5px;
}

/* OVERLAY */

.sidebar-overlay{
    position:fixed;
    inset:0;

    background:rgba(0,0,0,0.5);

    opacity:0;
    visibility:hidden;

    z-index:999;

    transition:0.4s;
}

.sidebar-overlay.active{
    opacity:1;
    visibility:visible;
}

/* =========================
   RESPONSIVE
========================= */

@media(max-width:1400px){

    .header-right-menu{
        gap:18px;
    }

    .navbar-nav .nav-link{
        font-size:14px;
    }

    .header-search{
        max-width:300px;
    }

}

@media(max-width:1199px){

    .brand-logo img{
        height:100px;
    }

    .header-search{
        max-width:240px;
    }

    .search-btn{
        padding:8px 14px;
    }

    .book-btn{
        padding:9px 18px;
    }

}

@media(max-width:991px){

    .custom-header{
        height:80px;
    }

    .custom-navbar{
        height:80px;
        min-height:80px;

        display:flex;
        align-items:flex-start;
        justify-content:space-between;

        padding-top:0;
    }

    /* MOBILE LOGO */

    .mobile-brand{
        display:flex;
        align-items:flex-start;

        margin-top:-6px;
    }

    .mobile-brand img{
        height:90px;
        width:auto;

        object-fit:contain;

        display:block;
    }

    /* HAMBURGER */

    .navbar-toggler{
        padding:0;

        margin-top:14px;

        display:flex;
        flex-direction:column;
        justify-content:center;
        align-items:center;
    }

    .hamburger{
        width:30px;
        height:3px;

        margin:4px 0;
    }

}

@media(max-width:576px){

    .custom-header{
        height:70px;
    }

    .custom-navbar{
        min-height:70px;
    }


    .mobile-sidebar{
        width:280px;
    }

}