/* Bass Portal UI — primary navigation, including responsive overlay. */
@media(max-width:1050px){.bp-global-footer__grid{grid-template-columns:minmax(240px,1.25fr) 1fr 1fr;gap:42px 34px}.bp-global-footer__brand{grid-row:span 2}}
@media(max-width:700px){.bp-global-footer__inner{padding:52px 20px 24px}.bp-global-footer__grid{grid-template-columns:1fr 1fr;gap:38px 24px}.bp-global-footer__brand{grid-column:1/-1;grid-row:auto;padding-right:0}.bp-global-footer__bottom{margin-top:42px;align-items:flex-start;flex-direction:column}}
@media(max-width:440px){.bp-global-footer__grid{grid-template-columns:1fr}.bp-global-footer__brand{grid-column:auto}.bp-global-footer__logo img{width:140px}}

/* Primary navigation typography is owned by assets/css/components/navigation.css. */

/* Bass Portal UI 0.2.46 — canonical mobile navigation.
   Roc Grotesk uppercase, quiet left-aligned links and WP core open/close.
   Mobile overlay shows ONLY page links; no decorative arrows, social icons
   or CZ/EN language widget. Desktop header/footer are deliberately untouched. */
@media (max-width:781px){
  body.bpui-mobile-menu-open header .wp-block-site-logo,
  body.bpui-mobile-menu-open header .custom-logo-link,
  body.bpui-mobile-menu-open header>a[rel="home"] img.custom-logo{
    visibility:hidden;
    pointer-events:none;
  }

  header .wp-block-navigation__responsive-container.is-menu-open{
    position:fixed;
    inset:0;
    width:100vw;
    height:100vh;
    height:100dvh;
    min-height:100vh;
    min-height:100dvh;
    padding:0;
    overflow:hidden;
    background:
      radial-gradient(ellipse at 10% 12%,rgba(0,114,194,.17),transparent 54%),
      linear-gradient(165deg,rgba(2,30,43,.97),rgba(1,17,26,.985) 70%,rgba(1,13,21,.99));
    -webkit-backdrop-filter:blur(24px) saturate(1.05);
    backdrop-filter:blur(24px) saturate(1.05);
    color:var(--bp-ui-text);
  }

  header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog{
    position:relative;
    width:100%;
    height:100%;
    min-height:100vh;
    min-height:100dvh;
    margin:0;
    background:transparent;
  }

  header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content{
    box-sizing:border-box;
    position:relative;
    width:min(560px,100%);
    height:100%;
    min-height:100vh;
    min-height:100dvh;
    margin:0 auto;
    padding:calc(env(safe-area-inset-top,0px) + 76px) clamp(22px,5.4vw,32px) calc(env(safe-area-inset-bottom,0px) + 32px);
    display:flex;
    flex-direction:column;
    align-items:stretch;
    overflow-x:hidden;
    overflow-y:auto;
    overscroll-behavior:contain;
    background:transparent;
  }

  /* WP themes may include a logo inside the overlay; keep only the site's
     real header mark underneath (hidden while open), never a second logo. */
  header .wp-block-navigation__responsive-container.is-menu-open .wp-block-site-logo,
  header .wp-block-navigation__responsive-container.is-menu-open .custom-logo-link,
  header .wp-block-navigation__responsive-container.is-menu-open img.custom-logo,
  header .wp-block-navigation__responsive-container.is-menu-open figure.wp-block-image,
  header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content>.wp-block-image{
    display:none;
  }

  header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{
    box-sizing:border-box;
    flex:0 0 auto;
    width:100%;
    max-width:100%;
    margin:clamp(34px,7.2vh,74px) 0 0;
    padding:0;
    display:flex;
    flex-direction:column;
    align-items:stretch;
    justify-content:flex-start;
    gap:0;
    border:0;
    list-style:none;
  }

  header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .wp-block-navigation-item{
    box-sizing:border-box;
    position:relative;
    flex:0 0 auto;
    width:100%;
    max-width:100%;
    margin:0;
    padding:0;
    border:0;
    border-bottom:1px solid rgba(238,241,255,.12);
  }

  header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .wp-block-navigation-item:first-child{
    border-top:1px solid rgba(238,241,255,.12);
  }

  header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content{
    box-sizing:border-box;
    display:flex;
    flex-direction:row;
    align-items:center;
    justify-content:flex-start;
    width:100%;
    max-width:100%;
    min-height:clamp(58px,7.8vh,70px);
    margin:0;
    padding:8px 4px;
    border:0;
    border-radius:0;
    background:none;
    color:var(--bp-ui-text);
    font-family:var(--bp-ui-font-heading,roc-grotesk);
    font-size:clamp(1.5rem,6.4vw,1.9rem);
    font-weight:800;
    line-height:1.06;
    letter-spacing:-.025em;
    text-align:left;
    text-decoration:none;
    text-transform:uppercase;
    white-space:nowrap;
    transition:color .18s ease;
  }

  header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content .wp-block-navigation-item__label{
    display:inline;
    width:auto;
    min-height:0;
    max-width:100%;
    margin:0;
    padding:0;
    border:0;
    color:inherit;
    font-family:inherit;
    font-size:inherit;
    font-weight:inherit;
    line-height:inherit;
    letter-spacing:inherit;
    text-align:left;
    text-transform:uppercase;
    white-space:nowrap;
  }

  /* Remove BOTH the old BPUI chevron and any theme-provided arrow
     pseudo-elements (including arrow decoration on the current-page row).
     Keep the actual link text, underline/border separators and full hit area. */
  header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .wp-block-navigation-item::before,
  header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .wp-block-navigation-item::after,
  header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content::before,
  header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content::after,
  header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content .wp-block-navigation-item__label::before,
  header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content .wp-block-navigation-item__label::after{
    content:none;
    display:none;
  }
  header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation__submenu-icon,
  header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content > .wp-block-navigation__submenu-icon,
  header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content > svg{
    display:none;
  }

  header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content[aria-current="page"],
  header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .current-menu-item > .wp-block-navigation-item__content{
    color:var(--bp-ui-blue);
    text-shadow:none;
  }

  header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content:hover,
  header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content:focus-visible{
    color:var(--bp-ui-blue);
  }

  header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content:focus-visible,
  header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close:focus-visible{
    outline:2px solid var(--bp-ui-amber);
    outline-offset:4px;
  }

  header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close{
    box-sizing:border-box;
    position:absolute;
    top:calc(env(safe-area-inset-top,0px) + 20px);
    right:clamp(20px,5.4vw,30px);
    z-index:4;
    display:grid;
    place-items:center;
    width:44px;
    height:44px;
    margin:0;
    padding:9px;
    border:1px solid rgba(238,241,255,.16);
    border-radius:50%;
    color:var(--bp-ui-text);
    background:rgba(7,29,42,.32);
    opacity:1;
    cursor:pointer;
  }

  header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close svg{
    display:block;
    width:24px;
    height:24px;
  }

  /* Only primary navigation remains in the open mobile overlay.
     The WP core close button lives alongside .responsive-container-content;
     hide only its other siblings (e.g. site-specific CZ / EN widget).
     Other content siblings of the actual UL are auxiliary groups/social links.
     This makes old theme markup harmless without global selector side effects. */
  header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog > :not(.wp-block-navigation__responsive-container-close):not(.wp-block-navigation__responsive-container-content),
  header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content > :not(.wp-block-navigation__container){
    display:none;
  }
  header .wp-block-navigation__responsive-container.is-menu-open .wp-block-social-links,
  header .wp-block-navigation__responsive-container.is-menu-open .wp-social-link,
  header .wp-block-navigation__responsive-container.is-menu-open .lang,
  header .wp-block-navigation__responsive-container.is-menu-open .language-switcher,
  header .wp-block-navigation__responsive-container.is-menu-open [class*="language-switch"],
  header .wp-block-navigation__responsive-container.is-menu-open [class*="lang-switch"]{
    display:none;
  }

}

@media (max-width:781px) and (max-height:620px){
  header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content{
    padding-top:calc(env(safe-area-inset-top,0px) + 60px)!important;
  }
  header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{
    margin-top:12px!important;
  }
  header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content{
    min-height:50px!important;
    font-size:clamp(1.35rem,5.6vw,1.65rem)!important;
  }
  /* No bottom widget exists on any orientation; keep safe-area padding. */
  header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content{
    padding-bottom:calc(env(safe-area-inset-bottom,0px) + 24px)!important;
  }

}
@media (prefers-reduced-motion:reduce){
  header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content{
    transition:none!important;
  }
}


/* Bass Portal UI 0.2.77 — one primary header navigation typography owner.
   Intentionally scoped to WordPress navigation; never changes body, footer or card text.
   Loaded after page CSS so Site V2 and theme body typography cannot override it. */
header .wp-block-navigation :is(.wp-block-navigation-item__content,.wp-block-navigation-item__label,a){
  font-family:var(--bp-ui-font-heading,roc-grotesk,sans-serif);
  font-weight:800;
  text-transform:uppercase;
  font-style:normal;
}
@media(min-width:782px){
  header .wp-block-navigation :is(.wp-block-navigation-item__content,.wp-block-navigation-item__label,a){
    font-size:14px;
    line-height:1.25;
  }
}
@media(max-width:781px){
  header .wp-block-navigation__responsive-container.is-menu-open :is(.wp-block-navigation-item__content,.wp-block-navigation-item__label,a){
    font-family:var(--bp-ui-font-heading,roc-grotesk,sans-serif);
  }
}

/* Mobile navigation: Bass Awards-inspired minimal blurred overlay.
   Preserve the existing Bass Portal close icon dimensions. */
@media (max-width:781px){
  header .wp-block-navigation__responsive-container.is-menu-open{
    background:rgba(2,10,22,.58)!important;
    -webkit-backdrop-filter:blur(22px) saturate(.85)!important;
    backdrop-filter:blur(22px) saturate(.85)!important;
  }
  header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content{
    width:100%!important;
    padding:calc(env(safe-area-inset-top,0px) + 88px) 24px calc(env(safe-area-inset-bottom,0px) + 28px)!important;
    align-items:center!important;
  }
  header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{
    width:100%!important;
    max-width:540px!important;
    margin:0 auto!important;
    align-items:center!important;
    gap:clamp(30px,5vh,58px)!important;
  }
  header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .wp-block-navigation-item{
    width:100%!important;
    border:0!important;
    text-align:center!important;
  }
  header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content{
    min-height:44px!important;
    padding:0!important;
    justify-content:center!important;
    text-align:center!important;
    font-size:clamp(1.65rem,7vw,2.2rem)!important;
    white-space:normal!important;
  }
  header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__label{
    text-align:center!important;
    white-space:normal!important;
  }
  header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close{
    border:0!important;
    background:transparent!important;
  }
  header .wp-block-navigation__responsive-container.is-menu-open :is(.wp-block-social-links,.wp-social-link,.lang,.language-switcher,[class*="language-switch"],[class*="lang-switch"]){
    display:none!important;
  }
}

/* Mobile fullscreen glass menu — override legacy theme panel and dividers. */
@media (max-width:781px){
  body.bpui-mobile-menu-open header .wp-block-navigation__responsive-container.is-menu-open,
  header .wp-block-navigation__responsive-container.is-menu-open{
    position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;
    max-width:none!important;margin:0!important;padding:0!important;
    background:rgba(0,0,0,.12)!important;background-image:none!important;
    -webkit-backdrop-filter:blur(26px)!important;backdrop-filter:blur(26px)!important;
    border:0!important;border-radius:0!important;box-shadow:none!important;
  }
  header .wp-block-navigation__responsive-container.is-menu-open :is(
    .wp-block-navigation__responsive-dialog,
    .wp-block-navigation__responsive-container-content,
    .wp-block-navigation__container,
    .wp-block-navigation-item,
    .wp-block-navigation-item__content
  ){
    background:transparent!important;background-image:none!important;
    border:0!important;border-radius:0!important;box-shadow:none!important;
  }
  header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content{
    max-width:none!important;width:100%!important;
    padding:calc(env(safe-area-inset-top,0px) + 88px) 22px calc(env(safe-area-inset-bottom,0px) + 24px)!important;
  }
  header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{
    margin:0 auto!important;gap:clamp(30px,5vh,58px)!important;
  }
  header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .wp-block-navigation-item{
    border-top:0!important;border-bottom:0!important;
  }
  header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close{
    background:transparent!important;border:0!important;box-shadow:none!important;
  }
  header .wp-block-navigation__responsive-container.is-menu-open :is(
    .wp-block-social-links,.wp-social-link,.lang,.language-switcher,
    [class*="language-switch"],[class*="lang-switch"]
  ){display:none!important;}
}

/* Single mobile glass layer: transparent ancestor and overlay, no panels. */
@media(max-width:781px){
  body:has(header .wp-block-navigation__responsive-container.is-menu-open) header.wp-block-template-part,
  body:has(header .wp-block-navigation__responsive-container.is-menu-open) header #bp-header,
  body:has(header .wp-block-navigation__responsive-container.is-menu-open) header #bp-header .bp-site-header-inner{
    background:transparent!important;background-image:none!important;
    box-shadow:none!important;border:0!important;
  }
  header #bp-header .wp-block-navigation__responsive-container.is-menu-open,
  header .wp-block-navigation__responsive-container.is-menu-open{
    background:transparent!important;background-color:transparent!important;
    background-image:none!important;border:0!important;box-shadow:none!important;
    -webkit-backdrop-filter:blur(28px)!important;backdrop-filter:blur(28px)!important;
  }
  header #bp-header .wp-block-navigation__responsive-container.is-menu-open :is(
    .wp-block-navigation__responsive-close,
    .wp-block-navigation__responsive-dialog,
    .wp-block-navigation__responsive-container-content,
    .wp-block-navigation__container,
    .wp-block-navigation-item,
    .wp-block-navigation-item__content
  ){
    background:transparent!important;background-image:none!important;
    border:0!important;box-shadow:none!important;
  }
  header #bp-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{
    gap:clamp(30px,5vh,58px)!important;
    align-items:center!important;
  }
  header #bp-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content{
    justify-content:center!important;text-align:center!important;
  }
}
