/* ==========================================================
   HOSTIVIQ NAVBAR
========================================================== */

.hostiva-header{

    background:#ffffff;

    border-bottom:1px solid #e5e7eb;

    box-shadow:0 8px 30px rgba(15,23,42,.06);

    position:fixed;

    top:0;

    left:0;

    right:0;

    width:100%;

    z-index:1050;

    display:block;

}

/* ===========================
   TOP BAR
=========================== */

.hostiva-topbar{

    height:90px;

    padding-top:6px;

    display:flex;

    justify-content:space-between;

    align-items:center;

}

.hostiva-logo{

    display:flex;

    align-items:center;

    gap:10px;

    text-decoration:none;

}

/* ===========================
   LOGO
=========================== */

.hostiva-mobile-logo{

    display:flex;

    align-items:center;

    gap:10px;

    flex:1 1 auto;

    min-width:0;

    overflow:hidden;

    text-decoration:none;

}

.hostiva-logo-icon{

    width:62px;

    height:62px;

    border-radius:18px;

    background:linear-gradient(135deg,#3976ff,#2355d4);

    display:flex;

    align-items:center;

    justify-content:center;

    color:#ffffff;

    font-size:30px;

    box-shadow:0 10px 25px rgba(29,78,216,.25);

}

.hostiva-logo-text h2{

    margin:0;

    font-size:31px;

    font-weight:800;

    color:#0f172a;

    letter-spacing:-1px;

}

.hostiva-logo-text span{

    display:block;

    margin-top:3px;

    color:#3976ff;

    font-size:13px;

    font-weight:600;

}

/* ===========================
   RIGHT SIDE
=========================== */

.hostiva-actions{

    display:flex;

    align-items:center;

    gap:18px;

}

.cart-link{

    width:46px;

    height:46px;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    background:#f8fafc;

    border:1px solid #e2e8f0;

    color:#334155;

    text-decoration:none;

    font-size:22px;

    transition:.25s;

}

.cart-link:hover{

    background:#2355d4;

    color:#ffffff;

}

.theme-toggle-btn{

    width:46px;
    height:46px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    background: var(--surface, #f8fafc);
    border:1px solid var(--border, #e2e8f0);
    color: var(--ink2, #334155);
    font-size:19px;
    cursor:pointer;
    transition:.25s;
}

.theme-toggle-btn:hover{
    background:#2355d4;
    color:#ffffff;
    border-color:#2355d4;
}

.theme-toggle-btn-mobile{
    width:36px;
    height:36px;
    font-size:16px;
    margin-right:8px;
}

/* ===========================
   MENU
=========================== */

.hostiva-menu{

    position:relative;

    height:58px;

    border-top:1px solid #eef2f7;

    display:flex;

    align-items:center;

}

.hostiva-menu ul{

    list-style:none;

    display:flex;

    align-items:center;

    gap:42px;

    margin:0;

    padding:0;

}

.hostiva-menu a{

    color:#334155;

    font-weight:600;

    text-decoration:none;

    transition:.25s;

    position:relative;

}

.hostiva-menu a:hover{

    color:#3976ff;

}

.hostiva-menu a::after{

    content:"";

    position:absolute;

    left:0;

    bottom:-18px;

    width:0;

    height:3px;

    background:#2355d4;

    border-radius:30px;

    transition:.25s;

}

.hostiva-menu a:hover::after{

    width:100%;

}

/* ===========================
   BUTTONS
=========================== */

.hostiva-actions .btn{

    height:46px;

    border-radius:12px;

    font-weight:700;

    padding:0 26px;

    display:flex;

    align-items:center;

}

/* ===========================
   MOBILE
=========================== */

@media(max-width:991px){

    .hostiva-header{

        display:none;

    }

}

/* ===========================
   ACTIVE NAVIGATION
=========================== */

.hostiva-menu a.active{

    color:#3976ff;

    font-weight:700;

}

.hostiva-menu a.active::after{

    width:100%;

}

/* ===========================================
   HOSTIVIQ MEGA MENU
=========================================== */

/* .hostiva-dropdown no longer needs its own positioning context —
   .hostiva-menu (the full nav bar) is now the anchor for .mega-menu,
   so every dropdown centers under the whole nav instead of overflowing
   past the viewport edge when the trigger item sits near the right side. */

.hostiva-dropdown .dropdown-menu{

    display:none;

}

.hostiva-dropdown.mega-open .dropdown-menu{

    display:block;

}

.mega-menu{

    position:absolute;

    left:50%;

    top:100%;

    transform:translateX(-50%);

    width:900px;

    max-width:min(900px, calc(100vw - 32px));

    max-height:calc(100vh - 140px);

    overflow-y:auto;

    background:#ffffff;

    border-radius:20px;

    padding:30px;

    border:1px solid #e5e7eb;

    box-shadow:0 25px 60px rgba(15,23,42,.12);

    z-index:999;

}

/* ==========================================
   HOSTIVIQ MEGA MENU
========================================== */

.mega-item{

    position:relative;

    padding:22px;

    border-radius:18px;

    transition:.25s;

}

.mega-item:hover{

    background:#f8fafc;

    transform:translateY(-4px);

}

.mega-badge{

    position:absolute;

    top:16px;

    right:16px;

    background:#2355d4;

    color:#fff;

    font-size:11px;

    padding:4px 10px;

    border-radius:30px;

    font-weight:700;

    letter-spacing:.4px;

}

.cart-badge{

    position:absolute;

    top:-6px;

    right:-6px;

    min-width:20px;

    height:20px;

    padding:0 6px;

    border-radius:20px;

    background:#ef4444;

    color:#fff;

    font-size:11px;

    font-weight:700;

    display:flex;

    align-items:center;

    justify-content:center;

    line-height:1;

}

/* ==========================================================
   MOBILE NAVBAR
========================================================== */

.hostiva-mobile{

    background:#ffffff;

    border-bottom:1px solid #e5e7eb;

    box-shadow:0 4px 20px rgba(15,23,42,.06);

    position:sticky;

    top:0;

    z-index:1100;

}

.hostiva-mobile-top{

    display:flex;

    align-items:center;

    justify-content:space-between;

    flex-wrap:nowrap;

    gap:10px;

    width:100%;

    height:72px;

}

.hostiva-menu-toggle{

    flex:0 0 46px;

    height:46px;

    border:none;

    background:#f8fafc;

    border-radius:12px;

    font-size:28px;

    color:#0f172a;

    transition:.25s;

}

.hostiva-menu-toggle:hover{

    background:#2355d4;

    color:#ffffff;

}

.hostiva-mobile-logo{

    display:flex;

    align-items:center;

    gap:10px;

    flex:1;

    min-width:0;

    overflow:hidden;

}

.hostiva-mobile-logo-icon{

    width:46px;

    height:46px;

    border-radius:14px;

    background:linear-gradient(135deg,#3976ff,#2355d4);

    color:#ffffff;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:22px;

}

.hostiva-mobile-logo-text strong{

    display:block;

    color:#0f172a;

    font-size:20px;

    font-weight:800;

    white-space:nowrap;

    overflow:hidden;

    text-overflow:ellipsis;

}

.hostiva-mobile-cart{

    flex:0 0 46px;

    width:46px;

    height:46px;

    border-radius:50%;

    background:#f8fafc;

    border:1px solid #e2e8f0;

    display:flex;

    align-items:center;

    justify-content:center;

    color:#0f172a;

    text-decoration:none;

    font-size:22px;

}

.hostiva-mobile-cart:hover{

    background:#2355d4;

    color:#ffffff;

}

.hostiva-mobile .container{

    max-width:100%;

    padding-left:16px;

    padding-right:16px;

}

.hostiva-mobile-menu{

    padding:20px 0 30px;

}

.hostiva-mobile-menu a{

    display:block;

    padding:14px 0;

    color:#334155;

    font-weight:600;

    text-decoration:none;

    border-bottom:1px solid #f1f5f9;

}

.hostiva-mobile-menu a:hover{

    color:#3976ff;

}

.hostiva-mobile-menu hr{

    margin:18px 0;

}

/* ==========================================
   RESPONSIVE NAVBAR
========================================== */

@media (max-width: 991.98px){

    .hostiva-header{

        display:none !important;

    }

    .hostiva-mobile{

        display:block !important;

    }

}

@media (min-width: 992px){

    .hostiva-header{

        display:block !important;

    }

    .hostiva-mobile{

        display:none !important;

    }

}