@font-face {
  font-family: 'Club Playfair';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/assets/vendor-fonts/display/5ae86d38cfa3525e.ttf') format('truetype');
}
.mobile-brand, .mobile-menu-icon, .mobile-menu-label { display: none; }
@media (min-width: 0px) {
  #logoAndNav.containermenu { padding: 24px 5% 14px; z-index: 20; height: auto; background: radial-gradient(ellipse at 15% 0, #21102f66, transparent 65%), #050407; }
  #logoAndNav > .navbar { display: flex; flex-wrap: nowrap; align-items: center; justify-content: space-between; padding: 0; position: relative; gap: 22px; }
  #logoAndNav .cat { display: none; }
  #logoAndNav .mobile-brand { display: flex; align-items: center; gap: 12px; width: 65%; max-width: 370px; flex-shrink: 1; text-decoration: none; }
  .mobile-brand__mask { display: block; width: 23%; height: auto; }
  .mobile-brand__wordmark { display: flex; flex: 1; min-width: 0; position: relative; flex-direction: column; align-items: center; padding-top: 0; }
  .mobile-brand__wordmark > img { display: block; width: 100%; height: auto; }
  .mobile-brand__wordmark > .mobile-brand__divider { position: absolute; top: calc(100% + 2px); left: 26%; width: 48%; }
  #logoAndNav .site-navbar { margin: 0; min-height: 0; position: static; }
  #logoAndNav .nav-toggler { display: flex; align-items: center; justify-content: center; gap: 11px; width: auto; height: 52px; margin: 0; padding: 0 14px; border: 1px solid #8a45cf; border-radius: 15px; background: linear-gradient(145deg,#161020,#08070e); box-shadow: 0 0 15px #7024b726; color: #f7f4ef; font: 400 16.5px/1 Arial,sans-serif; cursor: pointer; }
  #logoAndNav .nav-toggler svg { display: none; }
  #logoAndNav .mobile-menu-label { display: inline; width: auto; height: auto; background: none; }
  #logoAndNav .mobile-menu-label::before, #logoAndNav .mobile-menu-label::after { content: none; }
  #logoAndNav .mobile-menu-icon { display: block; width: 22px; height: 18px; border-top: 3px solid #efdab0; border-bottom: 3px solid #efdab0; border-radius: 2px; background: none; position: relative; }
  #logoAndNav .mobile-menu-icon::before { content: ''; position: absolute; top: 5px; left: 0; width: 22px; height: 3px; background: #efdab0; transform: none; border-radius: 2px; }
  #logoAndNav .mobile-menu-icon::after { content: none; }
  #logoAndNav .site-navbar ul { top: calc(100% + 14px); height: auto; max-height: none; display: none; padding: 8px; border: 1px solid #694092; border-radius: 16px; background: #0e0a16fa; box-shadow: 0 20px 40px #0009; }
  #logoAndNav .site-navbar ul.open { display: flex; max-height: 70vh; max-height: 70dvh; overflow-y: auto; }
  #logoAndNav .site-navbar ul li a { padding: 14px; font-size: 14px; line-height: 1.4; text-transform: none; }
  #logoAndNav a:focus-visible, #logoAndNav button:focus-visible { outline: 2px solid #efdab0; outline-offset: 4px; }
}
@media (max-width: 359px) {
  #logoAndNav > .navbar { gap: 12px; }
  #logoAndNav .mobile-brand { gap: 7px; }
  #logoAndNav .nav-toggler { padding: 0 10px; gap: 8px; font-size: 15.5px; }
}

/* One shared header for the home page and all inner pages. */
.club-header { position: relative; z-index: 1000; background: #050407; border-bottom: 1px solid #b89a5a66; }
.club-header #logoAndNav { max-width: none; margin: 0 auto; box-sizing: border-box; }
@media (min-width: 1100px) {
  .club-header #logoAndNav { padding: 18px max(64px, calc((100vw - 1280px) / 2)) 16px; }
  .club-header #logoAndNav .mobile-brand { width: 250px; flex: 0 0 250px; gap: 14px; }
  .club-header #logoAndNav .site-navbar { flex: 1; min-width: 0; }
  .club-header #logoAndNav .nav-toggler { display: none; }
  .club-header #logoAndNav .site-navbar ul,
  .club-header #logoAndNav .site-navbar ul.open { position: static; display: flex; flex-direction: row; align-items: center; justify-content: space-between; gap: 12px; width: 100%; height: auto; max-height: none; overflow: visible; padding: 0; border: 0; border-radius: 0; background: none; box-shadow: none; }
  .club-header #logoAndNav .site-navbar ul li { width: auto; flex: 0 1 auto; text-align: center; }
  .club-header #logoAndNav .site-navbar ul li a { padding: 10px 0; font-size: 13px; line-height: 1.4; }
}
@media (min-width: 1100px) and (max-width: 1199px) {
  .club-header #logoAndNav .mobile-brand { width: 210px; flex-basis: 210px; }
  .club-header #logoAndNav .site-navbar ul { gap: 8px; }
  .club-header #logoAndNav .site-navbar ul li a { font-size: 12px; }
}

/* Compact primary navigation and its secondary links. */
#logoAndNav .site-navbar #primary-navigation { margin: 0; list-style: none; }
#logoAndNav .site-navbar #primary-navigation > li > a,
#logoAndNav .club-about__toggle { display: flex; justify-content: center; align-items: center; min-height: 46px; box-sizing: border-box; padding: 10px 12px; font: 400 16px/1.4 Arial, sans-serif; color: #f7f4ef; text-decoration: none; white-space: nowrap; }
#logoAndNav .club-about__toggle { width: 100%; gap: 8px; border: 0; background: transparent; cursor: pointer; }
#logoAndNav .club-about__toggle i { font-size: 10px; }
#logoAndNav .club-about { position: relative; }
#logoAndNav .site-navbar ul.club-about__links { position: static; display: flex; flex-direction: column; align-items: stretch; width: 100%; max-height: none; height: auto; padding: 6px; margin: 0; border: 0; border-radius: 10px; background: #191020; box-shadow: none; list-style: none; gap: 0; }
#logoAndNav .site-navbar ul.club-about__links[hidden] { display: none; }
#logoAndNav .site-navbar ul.club-about__links li { width: 100%; text-align: left; }
#logoAndNav .site-navbar ul.club-about__links a { display: flex; align-items: center; min-height: 44px; padding: 10px 14px; font: 400 15px/1.4 Arial,sans-serif; text-transform: none; }
#logoAndNav .site-navbar #primary-navigation a:hover,
#logoAndNav .club-about__toggle:hover { color: #efdab0; background: transparent; }
#logoAndNav .site-navbar #primary-navigation a[aria-current="page"] { color: #efdab0; text-decoration: underline; text-underline-offset: 7px; text-decoration-thickness: 2px; }
#logoAndNav .site-navbar #primary-navigation .club-booking > a { gap: 9px; border: 1px solid #9859db; border-radius: 12px; background: linear-gradient(135deg,#6424a5,#3c1769); color: #fff; padding: 10px 22px; }
#logoAndNav .site-navbar #primary-navigation .club-booking > a:hover { background: #7135b0; }
#logoAndNav .site-navbar #primary-navigation > li > a,
#logoAndNav .club-about__toggle,
#logoAndNav .site-navbar ul.club-about__links a,
#logoAndNav .nav-toggler { font-family: 'Club Playfair', Georgia, serif; }
@media (min-width: 1100px) {
  #logoAndNav .site-navbar #primary-navigation { justify-content: flex-end; gap: 28px; }
  #logoAndNav .site-navbar #primary-navigation > li { flex: 0 0 auto; }
  #logoAndNav .site-navbar #primary-navigation > li > a,
  #logoAndNav .club-about__toggle { padding-left: 0; padding-right: 0; }
  #logoAndNav .site-navbar ul.club-about__links { position: absolute; top: calc(100% + 8px); left: 0; width: 240px; border: 1px solid #694092; box-shadow: 0 16px 32px #0008; }
}
@media (max-width: 1099px) {
  #logoAndNav .site-navbar #primary-navigation { position: absolute; left: 0; width: 100%; flex-direction: column; align-items: stretch; }
  #logoAndNav .site-navbar #primary-navigation > li { width: 100%; }
  #logoAndNav .site-navbar #primary-navigation .club-booking { padding: 8px; box-sizing: border-box; }
}
