/* GACG mobile overlay menu: icon-only repair
   This file only controls the mobile hamburger and floating menu close star.
   It does not alter page layout, footer, hero, or desktop content.
*/

@media (min-width: 992px){
    .gacg-floating-mobile-menu,
    .gacg-floating-mobile-menu__star-close{
        display:none !important;
        visibility:hidden !important;
        opacity:0 !important;
        pointer-events:none !important;
    }
}

@media (max-width: 991px){
    html.gacg-menu-open,
    body.gacg-menu-open{
        height:100%;
        overflow:hidden !important;
    }

    /* Reset the original Unika hamburger container */
    .nk-nav-icons a.nk-navbar-full-toggle{
        position:relative !important;
        z-index:100000 !important;
        width:34px !important;
        height:34px !important;
        padding:0 !important;
        margin:0 !important;
        border:0 !important;
        background:transparent !important;
        box-shadow:none !important;
        opacity:1 !important;
        display:inline-flex !important;
        align-items:center !important;
        justify-content:center !important;
        cursor:pointer !important;
        color:#d0ad64 !important;
    }

    .nk-nav-icons a.nk-navbar-full-toggle .nk-icon-burger{
        position:relative !important;
        display:block !important;
        width:26px !important;
        height:16px !important;
        margin:0 !important;
        padding:0 !important;
        border:0 !important;
        background:transparent !important;
        box-shadow:none !important;
        transform:none !important;
        opacity:1 !important;
        overflow:visible !important;
    }

    .nk-nav-icons a.nk-navbar-full-toggle .nk-icon-burger::before,
    .nk-nav-icons a.nk-navbar-full-toggle .nk-icon-burger::after{
        content:none !important;
        display:none !important;
    }

    /* Actual 3 strokes: force single clean line per child span */
    .nk-nav-icons a.nk-navbar-full-toggle .nk-icon-burger span,
    .nk-nav-icons a.nk-navbar-full-toggle .nk-icon-burger .nk-t-1,
    .nk-nav-icons a.nk-navbar-full-toggle .nk-icon-burger .nk-t-2,
    .nk-nav-icons a.nk-navbar-full-toggle .nk-icon-burger .nk-t-3{
        position:absolute !important;
        left:0 !important;
        right:auto !important;
        width:26px !important;
        height:3px !important;
        min-height:0 !important;
        max-height:3px !important;
        padding:0 !important;
        margin:0 !important;
        border:0 !important;
        border-radius:999px !important;
        background:#d0ad64 !important;
        opacity:1 !important;
        display:block !important;
        box-shadow:none !important;
        outline:0 !important;
        transform-origin:center center !important;
        transition:top .22s ease, transform .22s ease, opacity .16s ease !important;
    }

    .nk-nav-icons a.nk-navbar-full-toggle .nk-icon-burger .nk-t-1{
        top:2px !important;
    }
    .nk-nav-icons a.nk-navbar-full-toggle .nk-icon-burger .nk-t-2{
        top:7px !important;
    }
    .nk-nav-icons a.nk-navbar-full-toggle .nk-icon-burger .nk-t-3{
        top:12px !important;
    }

    /* Hide header hamburger once overlay is open; overlay gets its own visible star button */
    .nk-nav-icons a.nk-navbar-full-toggle.is-open{
        opacity:0 !important;
        pointer-events:none !important;
    }

    /* Full-screen floating overlay */
    .gacg-floating-mobile-menu{
        position:fixed !important;
        inset:0 !important;
        width:100vw !important;
        height:100vh !important;
        height:100dvh !important;
        min-height:100vh !important;
        min-height:100dvh !important;
        display:none !important;
        align-items:center !important;
        justify-content:center !important;
        padding:110px 24px 72px !important;
        background:rgba(5,13,24,.985) !important;
        z-index:99998 !important;
        overflow:hidden !important;
        pointer-events:auto !important;
    }

    .gacg-floating-mobile-menu.is-open{
        display:flex !important;
    }

    .gacg-floating-mobile-menu__inner{
        display:flex !important;
        flex-direction:column !important;
        align-items:center !important;
        justify-content:center !important;
        gap:32px !important;
        width:100% !important;
        text-align:center !important;
    }

    .gacg-floating-mobile-menu__inner a{
        color:#d0ad64 !important;
        font-family:"Playfair Display", Georgia, serif !important;
        font-size:2rem !important;
        font-weight:700 !important;
        letter-spacing:.08em !important;
        line-height:1.2 !important;
        text-transform:none !important;
        text-decoration:none !important;
        pointer-events:auto !important;
    }

    .gacg-floating-mobile-menu__inner a:hover{
        color:#ffffff !important;
    }

    /* Independent star close icon. This avoids clipping by the old template hamburger. */
    .gacg-floating-mobile-menu__star-close{
        position:fixed !important;
        top:22px !important;
        right:22px !important;
        z-index:100001 !important;
        width:44px !important;
        height:44px !important;
        padding:0 !important;
        margin:0 !important;
        border:0 !important;
        background:transparent !important;
        box-shadow:none !important;
        cursor:pointer !important;
        display:flex !important;
        align-items:center !important;
        justify-content:center !important;
        opacity:1 !important;
        pointer-events:auto !important;
    }

    .gacg-floating-mobile-menu__star-close span{
        position:absolute !important;
        left:5px !important;
        top:20px !important;
        width:34px !important;
        height:4px !important;
        margin:0 !important;
        padding:0 !important;
        border:0 !important;
        border-radius:999px !important;
        background:#d0ad64 !important;
        display:block !important;
        opacity:1 !important;
        transform-origin:center center !important;
        box-shadow:none !important;
    }

    .gacg-floating-mobile-menu__star-close span:nth-child(1){
        transform:rotate(45deg) !important;
    }
    .gacg-floating-mobile-menu__star-close span:nth-child(2){
        transform:rotate(0deg) !important;
    }
    .gacg-floating-mobile-menu__star-close span:nth-child(3){
        transform:rotate(-45deg) !important;
    }

    .nk-navbar-full.open,
    .nk-navbar-full.gacg-original-menu-suppressed{
        display:none !important;
        visibility:hidden !important;
        opacity:0 !important;
        pointer-events:none !important;
    }
}

@media (max-width:520px){
    .gacg-floating-mobile-menu__inner a{
        font-size:1.85rem !important;
    }
}
