/**
 * Non GamStop Casinos UK - top navigation
 *
 * Scoped to that page only. It sits inside .abp5-ngc-wrap, so every rule is
 * prefixed with .abp5_ngc_nav to outrank the page's own `.abp5-ngc-wrap a`
 * rule (2 classes beats 1 class + 1 element).
 *
 * Container width and padding mirror .abp5-ngc-article so the bar lines up
 * with the article below it.
 */

/*
 * No overflow-x here: when one axis is hidden the other computes to `auto`,
 * which would clip the Pages dropdown against this 56px-tall bar. Horizontal
 * overflow is instead prevented by the inner container's max-width and by the
 * mobile panel being pinned to left:0/right:0 inside .abp5_ngc_nav.
 */
.abp5_ngc_nav_wrap {
    background: #ffffff;
    border-bottom: 1px solid #e4e8ef;
}

.abp5_ngc_nav_inner {
    max-width: 1080px;
    margin: 0 auto;
    padding: 0 24px;
}

.abp5_ngc_nav {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    min-height: 56px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    font-size: 0.95rem;
    line-height: 1.4;
}

/* --- burger (mobile only) ------------------------------------------- */

.abp5_ngc_nav .abp5_ngc_nav_burger {
    display: none;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    padding: 0;
    background: none;
    border: 1px solid #e4e8ef;
    border-radius: 8px;
    color: #1a1d24;
    font-size: 1rem;
    cursor: pointer;
}

.abp5_ngc_nav .abp5_ngc_nav_burger:hover,
.abp5_ngc_nav .abp5_ngc_nav_burger:focus-visible {
    color: #1f6feb;
    border-color: #c9d3e4;
}

/* --- panel ----------------------------------------------------------- */

.abp5_ngc_nav_panel {
    display: flex;
    align-items: center;
    gap: 22px;
}

.abp5_ngc_nav_list {
    display: flex;
    align-items: center;
    gap: 22px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.abp5_ngc_nav_item {
    position: relative;
    margin: 0;
}

.abp5_ngc_nav .abp5_ngc_nav_link,
.abp5_ngc_nav .abp5_ngc_nav_toggle {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin: 0;
    padding: 17px 0;
    background: none;
    border: 0;
    font: inherit;
    color: #1a1d24;
    text-decoration: none;
    cursor: pointer;
    white-space: nowrap;
}

.abp5_ngc_nav .abp5_ngc_nav_link:hover,
.abp5_ngc_nav .abp5_ngc_nav_link:focus-visible,
.abp5_ngc_nav .abp5_ngc_nav_toggle:hover,
.abp5_ngc_nav .abp5_ngc_nav_toggle:focus-visible {
    color: #1f6feb;
    text-decoration: none;
}

/* active-state underline */
.abp5_ngc_nav_current > .abp5_ngc_nav_link::after,
.abp5_ngc_nav_current > .abp5_ngc_nav_toggle::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 11px;
    height: 2px;
    border-radius: 2px;
    background: #1f6feb;
}

.abp5_ngc_nav_caret {
    font-size: 0.7em;
    transition: transform 0.2s ease;
}

.abp5_ngc_nav_item.is-open .abp5_ngc_nav_caret {
    transform: rotate(180deg);
}

/* --- Pages dropdown --------------------------------------------------- */

.abp5_ngc_nav_sub {
    display: none;
    position: absolute;
    top: 100%;
    right: 0;
    z-index: 50;
    min-width: 196px;
    margin: 0;
    padding: 6px;
    list-style: none;
    background: #ffffff;
    border: 1px solid #e4e8ef;
    border-radius: 10px;
    box-shadow: 0 10px 28px rgba(16, 19, 26, 0.12);
}

.abp5_ngc_nav_item.is-open > .abp5_ngc_nav_sub {
    display: block;
}

.abp5_ngc_nav .abp5_ngc_nav_sub a {
    display: block;
    padding: 9px 12px;
    border-radius: 6px;
    color: #1a1d24;
    text-decoration: none;
    white-space: nowrap;
}

.abp5_ngc_nav .abp5_ngc_nav_sub a:hover,
.abp5_ngc_nav .abp5_ngc_nav_sub a:focus-visible {
    background: #f6f8fb;
    color: #1f6feb;
}

/* --- icon buttons ----------------------------------------------------- */

.abp5_ngc_nav_actions {
    display: flex;
    align-items: center;
    gap: 4px;
}

.abp5_ngc_nav .abp5_ngc_nav_icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    padding: 0;
    background: none;
    border: 0;
    border-radius: 8px;
    color: #3a4150;
    font-size: 0.95rem;
    cursor: pointer;
}

.abp5_ngc_nav .abp5_ngc_nav_icon:hover,
.abp5_ngc_nav .abp5_ngc_nav_icon:focus-visible,
.abp5_ngc_nav .abp5_ngc_nav_icon[aria-expanded="true"] {
    background: #f6f8fb;
    color: #1f6feb;
}

/* --- search row ------------------------------------------------------- */

.abp5_ngc_nav_search {
    display: none;
    gap: 8px;
    padding: 0 0 14px;
}

.abp5_ngc_nav_search.is-open {
    display: flex;
}

.abp5_ngc_nav_search input[type="search"] {
    flex: 1 1 auto;
    min-width: 0;
    padding: 10px 14px;
    border: 1px solid #e4e8ef;
    border-radius: 8px;
    background: #ffffff;
    color: #1a1d24;
    font: inherit;
    font-size: 0.95rem;
}

.abp5_ngc_nav_search input[type="search"]:focus {
    outline: none;
    border-color: #1f6feb;
}

.abp5_ngc_nav_search button {
    flex: 0 0 auto;
    padding: 10px 16px;
    border: 0;
    border-radius: 8px;
    background: #1f6feb;
    color: #ffffff;
    font: inherit;
    font-size: 0.95rem;
    cursor: pointer;
}

.abp5_ngc_nav_search button:hover {
    background: #0a58c2;
}

/* --- mobile / tablet -------------------------------------------------- */

@media (max-width: 768px) {
    .abp5_ngc_nav_inner {
        padding: 0 14px;
    }

    .abp5_ngc_nav {
        min-height: 52px;
    }

    .abp5_ngc_nav .abp5_ngc_nav_burger {
        display: inline-flex;
    }

    .abp5_ngc_nav_panel {
        display: none;
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        z-index: 60;
        flex-direction: column;
        align-items: stretch;
        gap: 0;
        margin-top: 6px;
        padding: 8px;
        background: #ffffff;
        border: 1px solid #e4e8ef;
        border-radius: 10px;
        box-shadow: 0 10px 28px rgba(16, 19, 26, 0.12);
    }

    .abp5_ngc_nav_panel.is-open {
        display: flex;
    }

    .abp5_ngc_nav_list {
        flex-direction: column;
        align-items: stretch;
        gap: 0;
    }

    .abp5_ngc_nav .abp5_ngc_nav_link,
    .abp5_ngc_nav .abp5_ngc_nav_toggle {
        justify-content: space-between;
        width: 100%;
        padding: 11px 10px;
        border-radius: 6px;
    }

    .abp5_ngc_nav .abp5_ngc_nav_link:hover,
    .abp5_ngc_nav .abp5_ngc_nav_toggle:hover {
        background: #f6f8fb;
    }

    .abp5_ngc_nav_current > .abp5_ngc_nav_link::after,
    .abp5_ngc_nav_current > .abp5_ngc_nav_toggle::after {
        left: 10px;
        right: auto;
        bottom: 6px;
        width: 26px;
    }

    .abp5_ngc_nav_sub {
        position: static;
        min-width: 0;
        margin: 0 0 4px;
        padding: 0 0 0 10px;
        border: 0;
        border-radius: 0;
        box-shadow: none;
    }

    .abp5_ngc_nav_actions {
        justify-content: flex-start;
        gap: 2px;
        margin-top: 4px;
        padding-top: 6px;
        border-top: 1px solid #eef1f6;
    }
}
