/*
 * HASKE HOTEL navigation system — release 2026.09.18
 * Intentionally loaded after haske-2026.css. This file is the single,
 * authoritative visual layer for the primary navigation and Menu drawer.
 */

:root {
  --haske-nav-surface: #fffefb;
  --haske-nav-cream: #f7f1e8;
  --haske-nav-cream-deep: #eee3d4;
  --haske-nav-ink: #28241f;
  --haske-nav-muted: #746c62;
  --haske-nav-burgundy: #6f2938;
  --haske-nav-burgundy-deep: #55202c;
  --haske-nav-gold: #b58b52;
  --haske-nav-gold-light: #d6b67f;
  --haske-nav-border: rgba(181, 139, 82, .3);
  --haske-nav-shadow: 0 24px 64px rgba(38, 31, 25, .16);
}

/* Primary collection navigation ----------------------------------------- */

body:not(.haske-staff-page) .haske-primary-nav,
body:not(.haske-staff-page) .rixos-header:not(.scrolled) .haske-primary-nav {
  border-top: 1px solid rgba(181, 139, 82, .14) !important;
  border-bottom: 1px solid var(--haske-nav-border) !important;
  background: rgba(255, 254, 251, .97) !important;
  box-shadow: 0 10px 32px rgba(38, 31, 25, .09) !important;
  text-shadow: none !important;
  -webkit-backdrop-filter: blur(16px) saturate(112%) !important;
  backdrop-filter: blur(16px) saturate(112%) !important;
}

body:not(.haske-staff-page) .haske-primary-nav__inner {
  max-width: 1480px;
  color: var(--haske-nav-ink);
}

body:not(.haske-staff-page) .haske-primary-signature {
  color: var(--haske-nav-ink) !important;
}

body:not(.haske-staff-page) .haske-primary-signature__line {
  background: linear-gradient(90deg, transparent, var(--haske-nav-gold)) !important;
}

body:not(.haske-staff-page) .haske-primary-signature__line:last-child {
  background: linear-gradient(90deg, var(--haske-nav-gold), transparent) !important;
}

body:not(.haske-staff-page) .haske-primary-signature__copy strong {
  color: var(--haske-nav-ink) !important;
}

body:not(.haske-staff-page) .haske-primary-signature__copy small {
  color: var(--haske-nav-burgundy) !important;
}

body:not(.haske-staff-page) .haske-primary-item > a,
body:not(.haske-staff-page) .haske-primary-trigger {
  min-height: 52px !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--haske-nav-ink) !important;
  text-shadow: none !important;
}

body:not(.haske-staff-page) .haske-primary-trigger i {
  color: var(--haske-nav-gold) !important;
}

body:not(.haske-staff-page) .haske-primary-item:hover > a,
body:not(.haske-staff-page) .haske-primary-item > a:focus-visible,
body:not(.haske-staff-page) .haske-primary-item > a.active,
body:not(.haske-staff-page) .haske-primary-item:hover > .haske-primary-trigger,
body:not(.haske-staff-page) .haske-primary-item.is-open > .haske-primary-trigger,
body:not(.haske-staff-page) .haske-primary-item.current-section > .haske-primary-trigger {
  background: rgba(111, 41, 56, .055) !important;
  color: var(--haske-nav-burgundy) !important;
}

body:not(.haske-staff-page) .haske-primary-item > a::after,
body:not(.haske-staff-page) .haske-primary-trigger::after {
  background: var(--haske-nav-gold) !important;
}

body:not(.haske-staff-page) .haske-primary-book,
body:not(.haske-staff-page) .haske-primary-book:hover,
body:not(.haske-staff-page) .haske-primary-book:focus-visible {
  border-left-color: rgba(84, 63, 40, .18) !important;
  background: var(--haske-nav-gold) !important;
  color: #211d18 !important;
  box-shadow: none !important;
}

body:not(.haske-staff-page) .haske-primary-book:hover,
body:not(.haske-staff-page) .haske-primary-book:focus-visible {
  background: var(--haske-nav-burgundy) !important;
  color: #fff !important;
}

body:not(.haske-staff-page) .haske-primary-panel {
  border: 1px solid var(--haske-nav-border) !important;
  border-top: 3px solid var(--haske-nav-gold) !important;
  border-radius: 0 !important;
  background: var(--haske-nav-surface) !important;
  color: var(--haske-nav-ink) !important;
  box-shadow: var(--haske-nav-shadow) !important;
  text-shadow: none !important;
}

body:not(.haske-staff-page) .haske-collection-mega {
  top: 96px !important;
  width: min(1220px, calc(100vw - 48px)) !important;
  padding: 24px 26px 26px !important;
}

body:not(.haske-staff-page) .haske-mega-heading {
  margin-bottom: 18px !important;
  padding: 0 0 16px !important;
  align-items: end !important;
  grid-template-columns: minmax(145px, .65fr) minmax(270px, 1.3fr) minmax(180px, 1fr) auto !important;
  gap: 14px 22px !important;
  border-bottom: 1px solid var(--haske-nav-border) !important;
}

body:not(.haske-staff-page) .haske-mega-heading > span,
body:not(.haske-staff-page) .haske-panel-eyebrow {
  color: var(--haske-nav-gold) !important;
  font-size: 8px !important;
  font-weight: 900 !important;
  letter-spacing: .2em !important;
  text-transform: uppercase !important;
}

body:not(.haske-staff-page) .haske-mega-heading > :is(h2, strong) {
  margin: 0 !important;
  color: var(--haske-nav-ink) !important;
  font: 400 clamp(22px, 2vw, 29px)/1.08 "Gilda Display", Georgia, serif !important;
  letter-spacing: -.012em !important;
}

body:not(.haske-staff-page) .haske-mega-heading > p {
  margin: 0 !important;
  color: var(--haske-nav-muted) !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  line-height: 1.45 !important;
}

body:not(.haske-staff-page) .haske-mega-heading > a {
  display: inline-flex !important;
  min-height: 40px !important;
  padding: 0 2px !important;
  align-items: center !important;
  gap: 9px !important;
  border-bottom: 1px solid var(--haske-nav-gold) !important;
  color: var(--haske-nav-burgundy) !important;
  font-size: 9px !important;
  font-weight: 900 !important;
  letter-spacing: .09em !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
}

body:not(.haske-staff-page) .haske-collection-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 14px !important;
}

body:not(.haske-staff-page) .haske-collection-card,
body:not(.haske-staff-page) .haske-collection-card:hover,
body:not(.haske-staff-page) .haske-collection-card:focus-visible {
  overflow: hidden !important;
  border: 1px solid rgba(40, 36, 31, .12) !important;
  border-radius: 0 !important;
  background: #fff !important;
  color: var(--haske-nav-ink) !important;
  box-shadow: 0 8px 24px rgba(38, 31, 25, .06) !important;
  transform: none !important;
}

body:not(.haske-staff-page) .haske-collection-card:hover,
body:not(.haske-staff-page) .haske-collection-card:focus-visible {
  border-color: rgba(181, 139, 82, .74) !important;
  box-shadow: 0 15px 34px rgba(38, 31, 25, .11) !important;
}

body:not(.haske-staff-page) .haske-collection-card > img {
  width: 100% !important;
  height: 148px !important;
  object-fit: cover !important;
  filter: saturate(.94) contrast(1.02) !important;
  transition: filter 260ms ease, transform 600ms cubic-bezier(.22, .61, .36, 1) !important;
}

body:not(.haske-staff-page) .haske-collection-card:hover > img,
body:not(.haske-staff-page) .haske-collection-card:focus-visible > img {
  filter: saturate(1.04) contrast(1.035) !important;
  transform: scale(1.02) !important;
}

body:not(.haske-staff-page) .haske-collection-card > span:not(.haske-collection-badge) {
  min-height: 116px !important;
  padding: 15px 16px 16px !important;
  gap: 4px !important;
  background: #fff !important;
}

body:not(.haske-staff-page) .haske-collection-card strong {
  color: var(--haske-nav-ink) !important;
  font: 400 clamp(17px, 1.35vw, 20px)/1.12 "Gilda Display", Georgia, serif !important;
}

body:not(.haske-staff-page) .haske-collection-location {
  color: var(--haske-nav-burgundy) !important;
  font-size: 7.5px !important;
}

body:not(.haske-staff-page) .haske-collection-card small {
  min-height: 24px !important;
  color: var(--haske-nav-muted) !important;
  font-size: 9px !important;
}

body:not(.haske-staff-page) .haske-collection-card em {
  margin-top: 5px !important;
  color: var(--haske-nav-gold) !important;
}

body:not(.haske-staff-page) .haske-link-panel {
  width: min(350px, calc(100vw - 30px)) !important;
  padding: 18px !important;
}

body:not(.haske-staff-page) .haske-link-panel > a {
  border-left-color: transparent !important;
  background: transparent !important;
  color: var(--haske-nav-ink) !important;
}

body:not(.haske-staff-page) .haske-link-panel > a:hover,
body:not(.haske-staff-page) .haske-link-panel > a:focus-visible {
  border-left-color: var(--haske-nav-gold) !important;
  background: var(--haske-nav-cream) !important;
  color: var(--haske-nav-burgundy) !important;
}

body:not(.haske-staff-page) .haske-link-panel > a small {
  color: var(--haske-nav-muted) !important;
}

/* Full Menu / property discovery drawer -------------------------------- */

body .haske-menu-overlay {
  background: rgba(45, 38, 31, .48) !important;
  -webkit-backdrop-filter: blur(2px) !important;
  backdrop-filter: blur(2px) !important;
}

body .rixos-wrap,
body .rixos-wrap.rixos-wrap-show {
  border-color: var(--haske-nav-border) !important;
  background: var(--haske-nav-surface) !important;
  background-image: none !important;
  color: var(--haske-nav-ink) !important;
  box-shadow: var(--haske-nav-shadow) !important;
}

body .rixos-wrap .haske-drawer-header {
  border-bottom: 1px solid var(--haske-nav-border) !important;
  background: var(--haske-nav-surface) !important;
}

body .rixos-wrap .haske-drawer-brand,
body .rixos-wrap .haske-drawer-brand:hover,
body .rixos-wrap .haske-drawer-brand:focus-visible {
  background: transparent !important;
  color: var(--haske-nav-ink) !important;
}

body .rixos-wrap .haske-logo-name {
  color: var(--haske-nav-ink) !important;
}

body .rixos-wrap .haske-logo-tagline {
  color: var(--haske-nav-burgundy) !important;
}

body .rixos-wrap .haske-drawer-close {
  border: 1px solid var(--haske-nav-border) !important;
  border-radius: 50% !important;
  background: var(--haske-nav-surface) !important;
  color: var(--haske-nav-ink) !important;
}

body .rixos-wrap .haske-drawer-close:hover,
body .rixos-wrap .haske-drawer-close:focus-visible {
  border-color: var(--haske-nav-burgundy) !important;
  background: var(--haske-nav-burgundy) !important;
  color: #fff !important;
}

body .rixos-wrap .rixos-wrap-inner {
  background: var(--haske-nav-surface) !important;
}

body .rixos-wrap .rixos-menu {
  border-color: var(--haske-nav-border) !important;
  background: var(--haske-nav-cream) !important;
  background-image: none !important;
  box-shadow: none !important;
}

body .rixos-wrap .rixos-menu::before,
body .rixos-wrap .rixos-menu::after {
  content: none !important;
}

body .rixos-wrap .rixos-menu > ul > li::before {
  content: none !important;
}

body .rixos-wrap .rixos-menu > ul > li > a,
body .rixos-wrap .rixos-menu > ul > li > button,
body .rixos-wrap .rixos-menu > ul > li > a:hover,
body .rixos-wrap .rixos-menu > ul > li > button:hover,
body .rixos-wrap .rixos-menu > ul > li > a:focus-visible,
body .rixos-wrap .rixos-menu > ul > li > button:focus-visible {
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--haske-nav-ink) !important;
  text-shadow: none !important;
  transform: none !important;
}

body .rixos-wrap .rixos-menu > ul > li > :is(a, button) > span:nth-child(2) {
  color: var(--haske-nav-ink) !important;
  text-shadow: none !important;
}

body .rixos-wrap .haske-drawer-index {
  color: var(--haske-nav-gold) !important;
}

body .rixos-wrap .rixos-menu > ul > li > a.active,
body .rixos-wrap .rixos-menu > ul > li > a:hover,
body .rixos-wrap .rixos-menu > ul > li > a:focus-visible {
  background: transparent !important;
  color: var(--haske-nav-burgundy) !important;
  box-shadow: inset 0 -2px 0 var(--haske-nav-gold) !important;
}

body .rixos-wrap .rixos-menu > ul > li > a.active > span:nth-child(2),
body .rixos-wrap .rixos-menu > ul > li > a:hover > span:nth-child(2),
body .rixos-wrap .rixos-menu > ul > li > a:focus-visible > span:nth-child(2) {
  color: var(--haske-nav-burgundy) !important;
}

body .rixos-wrap .haske-branch-directory,
body .rixos-wrap .haske-drawer-submenu-open .haske-branch-directory {
  margin-top: 18px !important;
  padding-bottom: 16px !important;
  border-bottom: 1px solid var(--haske-nav-border) !important;
  background: var(--haske-nav-surface) !important;
}

body .rixos-wrap .haske-branch-directory__intro {
  display: grid !important;
  margin-bottom: 14px !important;
  padding: 0 !important;
  align-items: end !important;
  grid-template-columns: minmax(300px, 1.25fr) minmax(210px, 1fr) auto !important;
  gap: 14px 26px !important;
}

body .rixos-wrap .haske-branch-directory__intro-copy {
  display: grid !important;
  gap: 5px !important;
}

body .rixos-wrap .haske-branch-directory__intro .haske-drawer-label {
  margin: 0 !important;
  color: var(--haske-nav-gold) !important;
  font-size: 8px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  letter-spacing: .2em !important;
}

body .rixos-wrap .haske-branch-directory__intro h2 {
  margin: 0 !important;
  color: var(--haske-nav-ink) !important;
  font: 400 clamp(22px, 2vw, 30px)/1.08 "Gilda Display", Georgia, serif !important;
  letter-spacing: -.015em !important;
}

body .rixos-wrap .haske-branch-directory__intro > p {
  margin: 0 !important;
  color: var(--haske-nav-muted) !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  line-height: 1.45 !important;
}

body .rixos-wrap .haske-branch-directory__all {
  display: inline-flex !important;
  min-height: 40px !important;
  padding: 0 2px !important;
  align-items: center !important;
  gap: 9px !important;
  border-bottom: 1px solid var(--haske-nav-gold) !important;
  background: transparent !important;
  color: var(--haske-nav-burgundy) !important;
  font-size: 9px !important;
  font-style: normal !important;
  font-weight: 900 !important;
  letter-spacing: .09em !important;
  text-transform: uppercase !important;
  transform: none !important;
}

body .rixos-wrap .haske-branch-directory__grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 14px !important;
  overflow: visible !important;
  border: 0 !important;
  background: transparent !important;
}

body .rixos-wrap .haske-branch-card,
body .rixos-wrap .haske-branch-card:first-child,
body .rixos-wrap .haske-branch-card:last-child,
body .rixos-wrap .haske-branch-card:hover,
body .rixos-wrap .haske-branch-card:focus-visible,
body .rixos-wrap .haske-branch-card:active,
body .rixos-wrap .haske-branch-card.is-luxury,
body .rixos-wrap .haske-branch-card.is-luxury:hover,
body .rixos-wrap .haske-branch-card.is-luxury:focus-visible {
  position: relative !important;
  display: grid !important;
  min-width: 0 !important;
  min-height: 0 !important;
  padding: 0 !important;
  grid-template-rows: 142px minmax(112px, auto) !important;
  gap: 0 !important;
  overflow: hidden !important;
  border: 1px solid rgba(40, 36, 31, .13) !important;
  border-radius: 0 !important;
  background: #fff !important;
  color: var(--haske-nav-ink) !important;
  box-shadow: 0 8px 24px rgba(38, 31, 25, .06) !important;
  transform: none !important;
}

body .rixos-wrap .haske-branch-card:hover,
body .rixos-wrap .haske-branch-card:focus-visible,
body .rixos-wrap .haske-branch-card.is-luxury:hover,
body .rixos-wrap .haske-branch-card.is-luxury:focus-visible {
  border-color: rgba(181, 139, 82, .76) !important;
  box-shadow: 0 16px 34px rgba(38, 31, 25, .12) !important;
}

body .rixos-wrap .haske-branch-card.is-luxury {
  border-color: rgba(181, 139, 82, .7) !important;
}

body .rixos-wrap .haske-branch-card::before,
body .rixos-wrap .haske-branch-card::after {
  content: none !important;
}

body .rixos-wrap .haske-branch-card figure {
  position: relative !important;
  z-index: 0 !important;
  inset: auto !important;
  width: 100% !important;
  height: 142px !important;
  margin: 0 !important;
  overflow: hidden !important;
  background: var(--haske-nav-cream-deep) !important;
}

body .rixos-wrap .haske-branch-card figure::after {
  content: none !important;
}

body .rixos-wrap .haske-branch-card figure img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  filter: saturate(.94) contrast(1.02) !important;
  transform: scale(1.001) !important;
  transition: filter 260ms ease, transform 600ms cubic-bezier(.22, .61, .36, 1) !important;
}

body .rixos-wrap .haske-branch-card:hover figure img,
body .rixos-wrap .haske-branch-card:focus-visible figure img {
  filter: saturate(1.05) contrast(1.035) !important;
  transform: scale(1.025) !important;
}

body .rixos-wrap .haske-branch-card__content {
  position: static !important;
  z-index: auto !important;
  display: grid !important;
  min-height: 112px !important;
  padding: 14px 15px 15px !important;
  align-content: start !important;
  gap: 4px !important;
  background: #fff !important;
  color: var(--haske-nav-ink) !important;
}

body .rixos-wrap .haske-branch-card__content > small {
  min-height: 0 !important;
  color: var(--haske-nav-burgundy) !important;
  font-size: 7.5px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
  letter-spacing: .13em !important;
  text-transform: uppercase !important;
}

body .rixos-wrap .haske-branch-card__content > strong {
  min-height: 0 !important;
  color: var(--haske-nav-ink) !important;
  font: 400 clamp(17px, 1.35vw, 20px)/1.1 "Gilda Display", Georgia, serif !important;
  text-shadow: none !important;
}

body .rixos-wrap .haske-branch-card__content > span {
  color: var(--haske-nav-muted) !important;
  font-size: 8.5px !important;
  font-weight: 650 !important;
  line-height: 1.35 !important;
}

body .rixos-wrap .haske-branch-card__cta {
  display: inline-flex !important;
  margin-top: 4px !important;
  align-items: center !important;
  gap: 7px !important;
  color: var(--haske-nav-gold) !important;
  font-size: 8px !important;
  font-style: normal !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
  letter-spacing: .11em !important;
  text-transform: uppercase !important;
}

body .rixos-wrap .haske-branch-card .haske-branch-card__number,
body .rixos-wrap .haske-branch-card figure em,
body .rixos-wrap .haske-branch-card > i {
  display: none !important;
}

body .rixos-wrap .rixos-menu-footer {
  border: 0 !important;
  background: var(--haske-nav-surface) !important;
}

body .rixos-wrap :is(.haske-drawer-manage, .haske-drawer-actions a),
body .rixos-wrap :is(.haske-drawer-manage, .haske-drawer-actions a):is(:hover, :focus-visible) {
  border: 1px solid rgba(40, 36, 31, .18) !important;
  border-radius: 0 !important;
  background: #fff !important;
  color: var(--haske-nav-ink) !important;
  box-shadow: none !important;
  transform: none !important;
}

body .rixos-wrap :is(.haske-drawer-manage, .haske-drawer-actions a):is(:hover, :focus-visible) {
  border-color: var(--haske-nav-burgundy) !important;
  background: var(--haske-nav-burgundy) !important;
  color: #fff !important;
}

body .rixos-wrap .haske-drawer-book,
body .rixos-wrap .haske-drawer-book:hover,
body .rixos-wrap .haske-drawer-book:focus-visible {
  border: 1px solid var(--haske-nav-gold) !important;
  border-radius: 0 !important;
  background: var(--haske-nav-gold) !important;
  color: #211d18 !important;
  box-shadow: none !important;
  transform: none !important;
}

body .rixos-wrap .haske-drawer-book:hover,
body .rixos-wrap .haske-drawer-book:focus-visible {
  border-color: var(--haske-nav-burgundy) !important;
  background: var(--haske-nav-burgundy) !important;
  color: #fff !important;
}

body .rixos-wrap .haske-drawer-preferences {
  border-color: var(--haske-nav-border) !important;
  background: var(--haske-nav-cream) !important;
  color: var(--haske-nav-ink) !important;
}

body .rixos-wrap .haske-drawer-select select {
  color: var(--haske-nav-ink) !important;
}

/* The full Menu is a route chooser, not a second home page. Keep the four
 * properties visible as compact, scannable rows and leave photography to the
 * Stays mega-menu and the accommodation pages. */
body .rixos-wrap .haske-drawer-stays {
  margin-top: 16px !important;
  padding: 0 0 16px !important;
  border-bottom: 1px solid var(--haske-nav-border) !important;
}

body .rixos-wrap .haske-drawer-stays__heading {
  display: flex !important;
  margin-bottom: 10px !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 14px !important;
}

body .rixos-wrap .haske-drawer-stays__heading .haske-drawer-label {
  margin: 0 !important;
  color: var(--haske-nav-gold) !important;
  font-size: 8px !important;
  font-weight: 900 !important;
  letter-spacing: .2em !important;
  text-transform: uppercase !important;
}

body .rixos-wrap .haske-drawer-stays__heading > a,
body .rixos-wrap .haske-drawer-stays__heading > a:hover,
body .rixos-wrap .haske-drawer-stays__heading > a:focus-visible {
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
  border: 0 !important;
  background: transparent !important;
  color: var(--haske-nav-burgundy) !important;
  font-size: 9px !important;
  font-weight: 900 !important;
  letter-spacing: .08em !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
}

body .rixos-wrap .haske-drawer-stays__list {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 9px !important;
}

body .rixos-wrap .haske-drawer-stays__list > a,
body .rixos-wrap .haske-drawer-stays__list > a:hover,
body .rixos-wrap .haske-drawer-stays__list > a:focus-visible {
  display: grid !important;
  min-width: 0 !important;
  min-height: 64px !important;
  padding: 10px 12px !important;
  align-items: center !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 10px !important;
  border: 1px solid rgba(40, 36, 31, .13) !important;
  border-radius: 0 !important;
  background: #fff !important;
  color: var(--haske-nav-ink) !important;
  box-shadow: none !important;
  text-decoration: none !important;
  transform: none !important;
}

body .rixos-wrap .haske-drawer-stays__list > a:hover,
body .rixos-wrap .haske-drawer-stays__list > a:focus-visible {
  border-color: var(--haske-nav-gold) !important;
  background: var(--haske-nav-cream) !important;
}

body .rixos-wrap .haske-drawer-stays__list > a > span {
  display: grid !important;
  min-width: 0 !important;
  gap: 2px !important;
}

body .rixos-wrap .haske-drawer-stays__list strong {
  overflow: hidden !important;
  color: var(--haske-nav-ink) !important;
  font: 400 16px/1.15 "Gilda Display", Georgia, serif !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

body .rixos-wrap .haske-drawer-stays__list small {
  overflow: hidden !important;
  color: var(--haske-nav-muted) !important;
  font-size: 8px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

body .rixos-wrap .haske-drawer-stays__list > a > i {
  color: var(--haske-nav-gold) !important;
  font-size: 11px !important;
}

/* Desktop Menu: expansive but ordered, without black rails. */
@media (min-width: 1025px) {
  body .rixos-wrap {
    max-height: min(690px, 100dvh) !important;
    border-bottom: 1px solid var(--haske-nav-border) !important;
  }

  body .rixos-wrap .haske-drawer-header {
    min-height: 74px !important;
    padding: 10px clamp(30px, 5vw, 72px) !important;
  }

  body .rixos-wrap .rixos-wrap-inner {
    width: min(1320px, 100%) !important;
    padding: 0 22px 18px !important;
  }

  body .rixos-wrap .rixos-menu {
    min-height: 60px !important;
    border-top: 0 !important;
    border-bottom: 1px solid var(--haske-nav-border) !important;
  }

  body .rixos-wrap .rixos-menu > ul {
    min-height: 60px !important;
    height: 60px !important;
    padding: 0 clamp(18px, 3vw, 42px) !important;
    justify-content: center !important;
    gap: clamp(18px, 2.2vw, 34px) !important;
    border: 0 !important;
  }

  body .rixos-wrap .rixos-menu > ul > li > a,
  body .rixos-wrap .rixos-menu > ul > li > button,
  body .rixos-wrap .rixos-menu > ul > li > a:hover,
  body .rixos-wrap .rixos-menu > ul > li > button:hover,
  body .rixos-wrap .rixos-menu > ul > li > a:focus-visible,
  body .rixos-wrap .rixos-menu > ul > li > button:focus-visible {
    min-height: 60px !important;
    height: 60px !important;
    padding: 0 0 2px !important;
    gap: 8px !important;
    box-shadow: inset 0 -2px 0 transparent !important;
  }

  body .rixos-wrap .rixos-menu > ul > li > a.active,
  body .rixos-wrap .rixos-menu > ul > li > a:hover,
  body .rixos-wrap .rixos-menu > ul > li > a:focus-visible {
    box-shadow: inset 0 -2px 0 var(--haske-nav-gold) !important;
  }

  body .rixos-wrap .rixos-menu > ul > li > :is(a, button) > span:nth-child(2) {
    color: var(--haske-nav-ink) !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    letter-spacing: .08em !important;
  }

  body .rixos-wrap .rixos-menu-footer {
    min-height: 52px !important;
    padding-top: 12px !important;
    grid-template-columns: max-content max-content minmax(220px, 1fr) !important;
    gap: 8px !important;
  }

  body .rixos-wrap :is(.haske-drawer-manage, .haske-drawer-actions a, .haske-drawer-book),
  body .rixos-wrap :is(.haske-drawer-manage, .haske-drawer-actions a, .haske-drawer-book):is(:hover, :focus-visible) {
    min-height: 42px !important;
    height: 42px !important;
    border-radius: 0 !important;
  }
}

/* Compact menu: white drill-in layout with a swipeable property rail. */
@media (max-width: 1024px) {
  body .rixos-wrap {
    width: min(440px, 94vw) !important;
    background: var(--haske-nav-surface) !important;
  }

  body .rixos-wrap .haske-drawer-header {
    position: sticky !important;
    z-index: 6 !important;
    top: 0 !important;
    min-height: 74px !important;
    padding: 12px 16px !important;
  }

  body .rixos-wrap .rixos-wrap-inner {
    padding: 12px 16px 18px !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
  }

  body .rixos-wrap .rixos-menu {
    border: 0 !important;
    background: transparent !important;
  }

  body .rixos-wrap .rixos-menu > ul {
    display: block !important;
    min-height: 0 !important;
    height: auto !important;
  }

  body .rixos-wrap .rixos-menu > ul > li {
    border-bottom: 1px solid var(--haske-nav-border) !important;
  }

  body .rixos-wrap .rixos-menu > ul > li > a,
  body .rixos-wrap .rixos-menu > ul > li > a:hover,
  body .rixos-wrap .rixos-menu > ul > li > a:focus-visible {
    display: grid !important;
    min-height: 48px !important;
    height: auto !important;
    padding: 0 8px !important;
    align-items: center !important;
    grid-template-columns: 28px minmax(0, 1fr) !important;
    gap: 10px !important;
    box-shadow: none !important;
  }

  body .rixos-wrap .rixos-menu > ul > li > a.active {
    background: var(--haske-nav-cream) !important;
    box-shadow: inset 2px 0 0 var(--haske-nav-gold) !important;
  }

  body .rixos-wrap .haske-drawer-stays {
    margin-top: 14px !important;
    padding-bottom: 14px !important;
  }

  body .rixos-wrap .haske-drawer-stays__list {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body .rixos-wrap .haske-drawer-stays__list > a,
  body .rixos-wrap .haske-drawer-stays__list > a:hover,
  body .rixos-wrap .haske-drawer-stays__list > a:focus-visible {
    min-height: 58px !important;
  }

  body .rixos-wrap .haske-branch-directory,
  body .rixos-wrap .haske-drawer-submenu-open .haske-branch-directory {
    display: block !important;
    margin-top: 20px !important;
    padding-bottom: 18px !important;
  }

  body .rixos-wrap .haske-branch-directory__intro {
    display: grid !important;
    margin-bottom: 12px !important;
    grid-template-columns: 1fr auto !important;
    gap: 8px 12px !important;
  }

  body .rixos-wrap .haske-branch-directory__intro-copy {
    grid-column: 1 / -1 !important;
  }

  body .rixos-wrap .haske-branch-directory__intro h2 {
    font-size: 23px !important;
  }

  body .rixos-wrap .haske-branch-directory__intro > p {
    align-self: center !important;
  }

  body .rixos-wrap .haske-branch-directory__all {
    min-height: 36px !important;
    font-size: 8px !important;
  }

  body .rixos-wrap .haske-branch-directory__grid {
    display: flex !important;
    margin-inline: -16px !important;
    padding: 0 16px 8px !important;
    gap: 10px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-padding-inline: 16px !important;
    scroll-snap-type: x proximity !important;
    scrollbar-width: thin !important;
    scrollbar-color: var(--haske-nav-gold) transparent !important;
  }

  body .rixos-wrap .haske-branch-card,
  body .rixos-wrap .haske-branch-card:first-child,
  body .rixos-wrap .haske-branch-card:last-child,
  body .rixos-wrap .haske-branch-card:hover,
  body .rixos-wrap .haske-branch-card:focus-visible,
  body .rixos-wrap .haske-branch-card:active {
    flex: 0 0 min(252px, 76vw) !important;
    grid-template-rows: 122px minmax(106px, auto) !important;
    scroll-snap-align: start !important;
  }

  body .rixos-wrap .haske-branch-card figure {
    height: 122px !important;
  }

  body .rixos-wrap .haske-branch-card__content {
    min-height: 106px !important;
    padding: 12px 13px 13px !important;
  }

  body .rixos-wrap .haske-drawer-preferences {
    display: grid !important;
    margin-top: 14px !important;
  }

  body .rixos-wrap .rixos-menu-footer {
    display: grid !important;
    padding-top: 14px !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }

  body .rixos-wrap .haske-drawer-manage,
  body .rixos-wrap .haske-drawer-actions,
  body .rixos-wrap .haske-drawer-book {
    grid-column: 1 / -1 !important;
  }

  body .rixos-wrap .haske-drawer-actions {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }

  body .rixos-wrap :is(.haske-drawer-manage, .haske-drawer-actions a, .haske-drawer-book),
  body .rixos-wrap :is(.haske-drawer-manage, .haske-drawer-actions a, .haske-drawer-book):is(:hover, :focus-visible) {
    min-height: 46px !important;
    height: 46px !important;
    border-radius: 0 !important;
  }
}

@media (max-width: 575px) {
  body .rixos-wrap,
  body .rixos-wrap.rixos-wrap-show {
    width: min(420px, 94vw) !important;
  }

  body .rixos-wrap .haske-drawer-stays__heading {
    align-items: flex-start !important;
    flex-direction: column !important;
    gap: 5px !important;
  }

  body .rixos-wrap .haske-drawer-stays__list {
    grid-template-columns: 1fr !important;
    gap: 6px !important;
  }

  body .rixos-wrap .haske-drawer-stays__list > a,
  body .rixos-wrap .haske-drawer-stays__list > a:hover,
  body .rixos-wrap .haske-drawer-stays__list > a:focus-visible {
    min-height: 52px !important;
    padding: 8px 10px !important;
  }

  body .rixos-wrap .haske-branch-directory__intro {
    grid-template-columns: 1fr !important;
  }

  body .rixos-wrap .haske-branch-directory__all {
    justify-self: start !important;
  }
}

@media (max-width: 319px) {
  body .rixos-wrap .haske-drawer-actions {
    grid-template-columns: 1fr !important;
  }

  body .rixos-wrap .haske-drawer-actions a {
    white-space: normal !important;
  }
}

body .rixos-wrap :is(a, button, select):focus-visible,
body:not(.haske-staff-page) .haske-primary-nav :is(a, button):focus-visible {
  outline: 2px solid var(--haske-nav-burgundy) !important;
  outline-offset: 2px !important;
}

@media (prefers-reduced-motion: reduce) {
  body .rixos-wrap .haske-branch-card figure img,
  body .rixos-wrap .haske-branch-card:hover figure img,
  body:not(.haske-staff-page) .haske-collection-card > img,
  body:not(.haske-staff-page) .haske-collection-card:hover > img {
    transition: none !important;
    transform: none !important;
  }
}
