/* Aizyne Group Platform Navigation v4
   Body overlay dropdown fix:
   Mega menu content is displayed in a fixed body-level overlay,
   so it cannot be clipped by the header or page containers. */

:root{
    --az-nav-bg:rgba(7,17,31,.96);
    --az-nav-panel:rgba(13,27,46,.98);
    --az-nav-line:rgba(130,170,220,.22);
    --az-nav-line-strong:rgba(143,220,255,.36);
    --az-nav-text:#f5f8ff;
    --az-nav-muted:#a9b6c8;
    --az-nav-link:#b8dcff;
    --az-nav-blue:#4A90E2;
    --az-nav-purple:#7B68EE;
}

body{padding-top:0!important}
.aizyne-platform-nav,.aizyne-platform-nav *{box-sizing:border-box}

.aizyne-platform-nav{
    width:100%;
    position:relative;
    z-index:9999;
    background:var(--az-nav-bg);
    border-bottom:1px solid var(--az-nav-line);
    color:var(--az-nav-text);
    backdrop-filter:blur(12px);
    overflow:visible!important;
}

.az-nav-inner{
    width:100%;
    max-width:none;
    margin:0;
    padding:.7rem clamp(1rem,2.4vw,3rem);
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:1rem;
    overflow:visible!important;
}

.az-brand{
    display:inline-flex;
    align-items:center;
    gap:.55rem;
    padding:.32rem .68rem;
    border-radius:999px;
    border:1px solid rgba(143,220,255,.28);
    background:rgba(0,217,255,.065);
    color:#fff!important;
    text-decoration:none!important;
    font-size:.9rem;
    font-weight:850;
    letter-spacing:.045em;
    white-space:nowrap;
}

.az-brand::before{
    content:"";
    width:.78rem;
    height:.78rem;
    border-radius:50%;
    background:linear-gradient(135deg,var(--az-nav-blue),var(--az-nav-purple));
    box-shadow:0 0 18px rgba(0,217,255,.35);
    flex:0 0 .78rem;
}

.az-nav-menu{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:.15rem;
    overflow:visible!important;
}

.az-nav-link,.az-drop-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:.35rem;
    min-height:38px;
    padding:.48rem .72rem;
    color:var(--az-nav-link)!important;
    text-decoration:none!important;
    border:0;
    border-radius:10px;
    background:transparent;
    cursor:pointer;
    font:inherit;
    font-size:.9rem;
    font-weight:720;
    line-height:1.2;
}

.az-drop-button::after{
    content:"▾";
    font-size:.72rem;
    color:var(--az-nav-muted);
    transform:translateY(-1px);
}

.az-nav-link:hover,.az-drop-button:hover,.az-dropdown.az-open .az-drop-button{
    background:rgba(74,144,226,.10);
    color:#fff!important;
}

.az-nav-cta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:38px;
    padding:.62rem .95rem;
    border-radius:10px;
    border:1px solid rgba(143,220,255,.32);
    background:linear-gradient(135deg,rgba(74,144,226,.92),rgba(123,104,238,.88));
    color:#fff!important;
    text-decoration:none!important;
    font-size:.9rem;
    font-weight:800;
    white-space:nowrap;
}

.az-dropdown{position:relative}

/* Hidden source content only. Real desktop dropdown displays in .az-body-mega-overlay. */
.az-mega{
    display:none!important;
}

.az-body-mega-overlay{
    position:fixed!important;
    left:50%!important;
    top:62px!important;
    transform:translateX(-50%)!important;
    width:min(980px,calc(100vw - 2rem))!important;
    max-width:calc(100vw - 2rem)!important;
    z-index:2147483000!important;
    display:none;
    pointer-events:auto;
}

.az-body-mega-overlay.open{
    display:block!important;
}

.az-body-mega-panel{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:.8rem;
    padding:.9rem;
    border:1px solid var(--az-nav-line-strong);
    border-radius:16px;
    background:var(--az-nav-panel);
    box-shadow:0 20px 45px rgba(0,0,0,.34);
    overflow:visible!important;
}

.az-body-mega-panel.az-wide{
    grid-template-columns:repeat(3,minmax(0,1fr));
}

.az-mega-section{
    min-width:0!important;
    background:rgba(255,255,255,.025);
    border:1px solid rgba(130,170,220,.14);
    border-radius:13px;
    padding:.75rem;
}

.az-mega-heading{
    margin:0 0 .25rem;
    color:#fff;
    font-size:.9rem;
    font-weight:900;
}

.az-mega-description{
    margin:0 0 .55rem;
    color:var(--az-nav-muted);
    font-size:.82rem;
    line-height:1.35;
}

.az-mega-list{display:grid;gap:.25rem}

.az-mega-item{
    display:block;
    padding:.5rem .55rem;
    border-radius:10px;
    color:var(--az-nav-link)!important;
    text-decoration:none!important;
    font-size:.88rem;
    font-weight:700;
    line-height:1.25;
    overflow-wrap:anywhere;
    word-break:normal;
}

.az-mega-item span{
    display:block;
    color:var(--az-nav-muted);
    font-size:.76rem;
    font-weight:500;
    margin-top:.12rem;
}

.az-mega-item:hover{
    background:rgba(74,144,226,.12);
    color:#fff!important;
}

.az-mobile-toggle{
    display:none;
    align-items:center;
    justify-content:center;
    width:42px;
    height:38px;
    border-radius:10px;
    border:1px solid rgba(143,220,255,.28);
    background:rgba(74,144,226,.08);
    color:#fff;
    cursor:pointer;
    font-size:1.15rem;
}

.az-mobile-panel{
    display:none;
    border-top:1px solid rgba(130,170,220,.16);
    padding:.8rem clamp(1rem,2.4vw,3rem) 1rem;
    background:rgba(7,17,31,.98);
}

.az-mobile-panel.open{display:block}

.az-mobile-group{
    border:1px solid rgba(130,170,220,.14);
    border-radius:13px;
    margin:.55rem 0;
    overflow:hidden;
}

.az-mobile-summary{
    width:100%;
    padding:.72rem .85rem;
    text-align:left;
    border:0;
    background:rgba(74,144,226,.08);
    color:#fff;
    font:inherit;
    font-weight:850;
    cursor:pointer;
}

.az-mobile-links{
    display:none;
    padding:.55rem;
    background:rgba(13,27,46,.92);
}

.az-mobile-group.open .az-mobile-links{display:grid;gap:.25rem}

.az-mobile-links a{
    display:block;
    padding:.55rem .6rem;
    border-radius:10px;
    color:var(--az-nav-link)!important;
    text-decoration:none!important;
    font-size:.9rem;
    font-weight:700;
}

.az-mobile-links a:hover{
    background:rgba(74,144,226,.12);
    color:#fff!important;
}

.az-mobile-cta{
    display:flex!important;
    justify-content:center;
    margin:.65rem 0 0;
    padding:.7rem 1rem!important;
    background:linear-gradient(135deg,rgba(74,144,226,.92),rgba(123,104,238,.88));
    color:#fff!important;
    border-radius:10px!important;
}

/* Hide older inconsistent nav bars when platform nav is active. */
body.az-platform-nav-ready nav.nav,
body.az-platform-nav-ready .tf-nav,
body.az-platform-nav-ready .pb-nav,
body.az-platform-nav-ready .pq-nav,
body.az-platform-nav-ready .rr-nav,
body.az-platform-nav-ready .isc-nav,
body.az-platform-nav-ready .rh-nav,
body.az-platform-nav-ready .alc-nav,
body.az-platform-nav-ready .uc-nav,
body.az-platform-nav-ready .er-nav,
body.az-platform-nav-ready .wc-nav{
    display:none!important;
}

body.az-platform-nav-ready .ai-service-nav,
body.az-platform-nav-ready .tf-service-nav,
body.az-platform-nav-ready .pb-service-nav,
body.az-platform-nav-ready .pq-service-nav,
body.az-platform-nav-ready .rr-service-nav,
body.az-platform-nav-ready .isc-service-nav,
body.az-platform-nav-ready .rh-service-nav,
body.az-platform-nav-ready .alc-service-nav,
body.az-platform-nav-ready .uc-service-nav,
body.az-platform-nav-ready .er-service-nav,
body.az-platform-nav-ready .wc-service-nav{
    display:none!important;
}

body.az-platform-nav-ready .wrap,
body.az-platform-nav-ready main.wrap,
body.az-platform-nav-ready #tf-app,
body.az-platform-nav-ready #pb-app,
body.az-platform-nav-ready #pq-app,
body.az-platform-nav-ready #rr-app,
body.az-platform-nav-ready #isc-app,
body.az-platform-nav-ready #rh-app,
body.az-platform-nav-ready #alc-app,
body.az-platform-nav-ready #uc-app,
body.az-platform-nav-ready #er-app,
body.az-platform-nav-ready #wc-app{
    padding-top:1rem!important;
}

@media(max-width:1180px){
    .az-nav-menu{display:none}
    .az-mobile-toggle{display:inline-flex}
    .az-nav-inner{padding:.65rem .9rem}
    .az-mobile-panel{padding:.75rem .9rem 1rem}
    .az-body-mega-overlay{display:none!important}
}

@media(max-width:900px){
    .az-body-mega-panel,
    .az-body-mega-panel.az-wide{
        grid-template-columns:1fr;
    }
}

@media(max-width:640px){
    .az-brand{font-size:.82rem;letter-spacing:.03em}
    .az-nav-cta{display:none}
    .az-mobile-panel{max-height:calc(100vh - 70px);overflow:auto}
}



/* Aizyne navigation polish v5 */
.az-body-mega-panel.az-wide{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
.az-body-mega-overlay{
    width:min(1040px,calc(100vw - 2rem))!important;
}
.az-mega-item[aria-current="page"],
.az-mobile-links a[aria-current="page"]{
    background:rgba(0,217,255,.12)!important;
    color:#fff!important;
    border:1px solid rgba(0,217,255,.18);
}
@media(max-width:1180px){
    .az-mobile-links{
        max-height:none;
    }
}


/* Aizyne remove admin from top navigation v3
   Admin login is not customer navigation. Keep it off all top/dropdown menus.
*/
.aizyne-platform-nav a[href="aizyne-admin-login.php"],
.aizyne-platform-nav a[href="/aizyne-admin-login.php"],
.az-body-mega-panel a[href="aizyne-admin-login.php"],
.az-mobile-panel a[href="aizyne-admin-login.php"],
.az-mobile-links a[href="aizyne-admin-login.php"],
.aizyne-platform-nav .az-admin-nav-entry,
.az-body-mega-panel .az-admin-nav-entry,
.az-mobile-panel .az-admin-nav-entry{
    display:none!important;
}

/* Guard against two-line nav caused by prior injected admin links. */
.aizyne-platform-nav .az-nav-inner,
.aizyne-platform-nav .az-nav-menu,
.aizyne-platform-nav .az-dropdown{
    align-items:center!important;
}

.aizyne-platform-nav .az-dropdown{
    display:flex!important;
}
