
/*******************************************
HEADER
********************************************/

.hb-header{

    position:fixed;
    top:0;
    left:0;
    right:0;
    z-index:1050;
     background:#fff;
}

.hb-navbar{

   
    padding:10px 18px;
    background:#fff !important;
    border:1px solid var(--border);
    
    box-shadow:var(--shadow);
    min-height:72px;
    flex-wrap: nowrap;
    gap: 8px;
    align-items: center;

}

.hb-navbar > .d-flex{
    flex: 0 0 auto;
    flex-wrap: nowrap;
    min-width: 0;
}

/*******************************************
LOGO
********************************************/

.hb-navbar .navbar-brand{
    margin-right: 0.35rem;
    max-width: min(280px, 42vw);
    flex: 0 1 auto;
    min-width: 0;
}

.navbar-brand img,
.hb-navbar .navbar-brand img{

    height:44px;
    width:auto;
    max-width: 100%;
    object-fit: contain;

}

/*******************************************
MENU
********************************************/

.navbar-nav{

    gap:4px;

}

.hb-navbar .nav-link{

    color:#333;
    font-size:15px;
    font-weight:500;
    padding:10px 18px !important;
    border-radius:40px;
    transition:.25s;

}

.hb-navbar .nav-link:hover{

    background:var(--primary-light);

}

.hb-navbar .nav-link i{

    margin-left:5px;
    font-size:12px;

}

/*******************************************
ICONS
********************************************/

.icon-btn{

    width:42px;
    height:42px;
    border:none;
    background:transparent;
    border-radius:50%;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    transition:.25s;
    text-decoration:none;
    flex-shrink:0;
    padding:0;
    cursor:pointer;

}

a.icon-btn{

    color:inherit;

}

.icon-btn:hover{

    background:#f4f4f4;

}

.icon-btn i{

    font-size:20px;
    color:#333;

}

/*******************************************
CONTACT BUTTON
********************************************/

/* .btn-contact{

    border:1px solid #efb700;
    color:#d99b00;
    border-radius:999px;
    padding:10px 24px;
    font-size:14px;
    font-weight:600;
    text-decoration:none;
    transition:.25s;

}

.btn-contact:hover{

    background:#f6b800;
    color:#111;

} */

/*******************************************
MEGA MENU
********************************************/

.mega-menu{

    position:fixed;
    left:0;
    right:0;
    top:0;
    z-index:1045;
    display:none;
    pointer-events:none;

}

.mega-menu.show{
    display:block;
    pointer-events:auto;
    animation:fadeMenu .28s ease;
}

.mega-menu-wrap{

    display:flex;
    justify-content:center;
    padding:8px 12px 0;

}

.mega-box{

    width:fit-content;
    max-width:min(94vw, 680px);
    background:#fff;
    border-radius:20px;
    box-shadow:0 18px 45px rgba(0,0,0,.14);
    padding:16px 18px 18px;

}

.mega-layout{

    display:flex;
    align-items:flex-start;
    gap:16px;

}

.region-column{

    flex:0 0 118px;
    width:118px;
    min-width:0;
    padding-right:14px;
    border-right:1px solid #eef2f4;

}

.mega-content{

    flex:1 1 auto;
    min-width:0;
    width:min(62vw, 480px);

}

.mega-items-columns{

    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:4px 20px;
    align-items:start;

}

.mega-items-col{

    display:flex;
    flex-direction:column;
    gap:2px;
    min-width:0;

}

.mega-title{

    color:#13b6ec;
    letter-spacing:1.5px;
    font-size:11px;
    font-weight:700;
    margin-bottom:10px;

}

.region-list{

    list-style:none;
    padding:0;
    margin:0;

}

.region-list li{

    padding:6px 8px;
    border-radius:8px;
    cursor:pointer;
    font-size:14px;
    line-height:1.35;
    transition:.25s;

}

.region-list li:hover{

    background:#cbe8f2;

}

.region-list li.active{

    background:#d3f4ff69;

}

.mega-box a.destination-link{

    display:block;
    text-decoration:none;
    color:#555;
    font-size:14px;
    line-height:1.4;
    padding:4px 0;
    transition:.2s;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;

}

.mega-box a.destination-link:hover{

    color:#000;

}

.mega-mobile-columns .mobile-link{
    font-size:13px;
    gap:6px;
}

.mega-mobile-columns .mobile-link i{
    font-size:14px;
}

/*******************************************
OFFCANVAS
********************************************/

.mobile-menu{

    width:340px;
    max-width:100%;
    background:#101010;
    color:#fff;
    z-index: 99999;
    height: 100%;
    display: flex;
    flex-direction: column;

}

.mobile-menu #mainMenu,
.mobile-menu #subMenu{

    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 0;
    flex: 1 1 auto;

}

.mobile-menu .offcanvas-header{

    border-bottom:1px solid rgba(255,255,255,.08);
    flex-shrink: 0;

}

.mobile-menu .offcanvas-body,
.mobile-menu .mobile-menu-scroll{

    padding:18px;
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto !important;
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;

}

.menu-item{

    margin-bottom:8px;

}

.menu-item a{

    display:flex;
    align-items:center;
    gap:14px;
    text-decoration:none;
    color:#fff;
    background:#181818;
    padding:14px 16px;
    border-radius:14px;
    transition:.25s;

}

.menu-item a:hover{

    background:#222;

}

.menu-item i:first-child{

    color:#5298c6;
    font-size:20px;

}

.mobile-menu .offcanvas-footer{

    position: relative;
    left: auto;
    right: auto;
    bottom: auto;
    flex-shrink: 0;
    padding: 16px;
    margin: 0;
    background: #101010;
    border-top: 1px solid rgba(255,255,255,.08);
    z-index: 2;

}

/* Keep login icon clearly visible on mobile header */
@media (max-width: 991.98px) {
    .hb-navbar .icon-btn[data-open-auth],
    .hb-navbar a.hy-account-trigger {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        visibility: visible !important;
        opacity: 1 !important;
    }

    .hb-navbar .icon-btn[data-open-auth] i,
    .hb-navbar a.hy-account-trigger i {
        font-size: 22px;
        color: #333;
    }
}
.mobile-link{
    display:flex;
    align-items:center;
    gap:8px;
    color:#ddd;
    text-decoration:none;
    font-size:14px;
    transition:.3s;
}

.mobile-link:hover{
    color:#5298c6;
}

.mobile-link i{
    color:#33aad1;
}

.mobile-menu .accordion-button{
    background:#181818;
    color:#fff;
    border-radius:12px !important;
    box-shadow:none;
}
.mobile-menu .accordion-button:hover{
    background:#222;
   
}

.mobile-menu  .accordion-button:not(.collapsed){
    background:#222;
    color:#fff;
}

.mobile-menu  .accordion-body{
    background:#121212 !important;
}

.badge{
    font-size:11px;
}

/*******************************************
ANIMATION
********************************************/

@keyframes fadeMenu{

    from{

        opacity:0;
        transform:translateY(-14px);

    }

    to{

        opacity:1;
        transform:none;

    }

}
/* Desktop */
@media (min-width:993px){

    .navbar-toggler{
        display:none;
    }

    #mobileMenu,
    #mobileMenu.show{
        display:none !important;
        visibility:hidden !important;
    }

}

@media (min-width:993px) and (max-width:1199px){

    .mega-box{
        max-width:min(96vw, 620px);
        padding:14px 16px 16px;
    }

    .region-column{
        flex-basis:108px;
        width:108px;
        padding-right:12px;
    }

    .mega-content{
        width:min(68vw, 420px);
    }

    .mega-items-columns{
        gap:4px 14px;
    }

}

@media (min-width:1200px){

    .mega-box{
        max-width:min(92vw, 720px);
    }

    .mega-content{
        width:min(58vw, 520px);
    }

}

/* Tablet & Mobile */
@media (max-width:992px){

    .hb-navbar{

        min-height:64px;
        padding:8px 12px;
        border-radius:22px;
        flex-wrap: nowrap;

    }

    .hb-navbar .navbar-brand{
        max-width: min(200px, 48vw);
    }

    .navbar-brand img,
    .hb-navbar .navbar-brand img{

        height:34px;

    }

    .navbar-collapse{

        display:none!important;

    }

    .btn-contact{

        display:none!important;

    }

    .mega-menu{

        display:none!important;

    }

    .icon-btn{

        width:38px;
        height:38px;

    }

    .hb-navbar > .d-flex{
        gap: 4px !important;
    }

}

/* Mobile */
@media (max-width:576px){

    .container{

        padding-left:14px;
        padding-right:14px;

    }

    .hb-navbar{

        margin-top:10px;
        padding:8px 10px;

    }

    .hb-navbar .navbar-brand{
        max-width: min(160px, 44vw);
    }

    .navbar-brand img,
    .hb-navbar .navbar-brand img{

        height:28px;

    }

    .icon-btn{

        width:36px;
        height:36px;

    }

    .mobile-menu{

        width:100%;

    }

    .mobile-menu .offcanvas-header .navbar-brand{
        max-width: min(200px, 70%);
    }

    .mobile-menu .offcanvas-header .navbar-brand img{
        height:32px;
    }

}
.mobile-menu .accordion-button::after {
  
    margin-left: 1rem;}