/* ==========================================================
   LUXOTEL UNIFIED GUEST MENU SYSTEM
   Shared by Aqaba and Wadi Rum menu / price-list renderers.
   Homepage and admin surfaces are intentionally out of scope.
   ========================================================== */

body.lux-unified-menu-page{
  --lux-menu-navy:#102d4f;
  --lux-menu-navy-deep:#0b2238;
  --lux-menu-gold:#b9862f;
  --lux-menu-gold-light:#d8b263;
  --lux-menu-ivory:#f9f6ef;
  --lux-menu-card:#fffaf2;
  --lux-menu-line:rgba(185,134,47,.42);
  --lux-menu-muted:#66717b;
  --lux-menu-control-h:38px;
  --lux-nav-height:64px;
  max-width:100%;
  overflow-x:hidden;
  background:var(--lux-menu-ivory)!important;
}

@supports(overflow:clip){
  body.lux-unified-menu-page{overflow-x:clip;}
}

.lux-unified-menu-page .lux-topbar{
  min-height:var(--lux-nav-height)!important;
}

.lux-unified-menu-page main.lux-container{
  min-width:0;
}

/* ---------- Compact identity banner ---------- */

.lux-unified-menu-page .lux-menu-identity{
  width:100%;
  height:220px!important;
  min-height:220px!important;
  max-height:220px!important;
  margin:18px 0 14px!important;
  overflow:hidden;
  border:1px solid rgba(185,134,47,.48);
  border-radius:18px!important;
  background:
    radial-gradient(circle at 50% 0,rgba(216,178,99,.16),transparent 48%),
    linear-gradient(145deg,#173b5d,#0b2238);
  box-shadow:inset 0 0 0 1px rgba(255,239,203,.06);
}

.lux-unified-menu-page .lux-menu-identity .lux-hero-media,
.lux-unified-menu-page .lux-menu-identity .lux-hero-media img{
  width:100%;
  height:100%;
}

.lux-unified-menu-page .lux-menu-identity .lux-hero-media img{
  display:block;
  object-fit:cover;
  object-position:center;
}

.lux-unified-menu-page .lux-menu-identity .lux-hero-scrim{
  background:linear-gradient(180deg,rgba(8,24,40,.28),rgba(8,24,40,.88))!important;
}

.lux-unified-menu-page .lux-menu-identity .lux-hero-content{
  inset:0!important;
  width:100%!important;
  max-width:none!important;
  min-height:100%!important;
  padding:20px 28px!important;
  display:flex!important;
  flex-direction:column;
  align-items:center!important;
  justify-content:center!important;
  gap:5px;
  text-align:center!important;
}

.lux-unified-menu-page .lux-menu-identity .lux-hero-content > img{
  width:auto;
  height:34px!important;
  max-height:34px!important;
  margin:0 0 2px!important;
  object-fit:contain;
}

.lux-unified-menu-page .lux-menu-identity .lux-kicker{
  margin:0!important;
  color:var(--lux-menu-gold-light)!important;
  font-size:9px!important;
  line-height:1!important;
  letter-spacing:.16em!important;
}

.lux-unified-menu-page .lux-menu-identity .lux-hero-title{
  max-width:900px;
  margin:0!important;
  color:#fffaf2!important;
  font-family:var(--lux-font-display),Georgia,"Times New Roman",serif!important;
  font-size:clamp(30px,4vw,40px)!important;
  font-weight:500!important;
  line-height:1!important;
  letter-spacing:.01em!important;
  text-align:center!important;
  text-wrap:balance;
}

.lux-unified-menu-page .lux-menu-identity .lux-hero-subtitle{
  max-width:58ch;
  margin:0!important;
  color:rgba(255,250,242,.82)!important;
  font-size:11px!important;
  line-height:1.25!important;
  text-align:center!important;
}

.lux-unified-menu-page .lux-menu-identity .lux-hero-actions{
  width:auto!important;
  margin:4px 0 0!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
}

.lux-unified-menu-page .lux-menu-identity .lux-hero-actions .lux-btn{
  width:auto!important;
  min-height:32px!important;
  padding:6px 13px!important;
  border-radius:10px!important;
  font-size:8px!important;
  line-height:1!important;
  letter-spacing:.08em!important;
  white-space:nowrap!important;
}

.lux-unified-menu-page .lux-menu-identity .lux-btn-outline{
  color:#fffaf2!important;
  border-color:rgba(216,178,99,.78)!important;
  background:rgba(11,34,56,.28)!important;
}

/* ---------- Tabs, categories, and search stay above content ---------- */

.lux-unified-menu-page .lux-menu-toolbar-wrap{
  position:sticky!important;
  top:var(--lux-nav-height)!important;
  z-index:120!important;
  width:100%!important;
  margin:0 0 18px!important;
  padding:8px!important;
  border:1px solid rgba(185,134,47,.30)!important;
  border-radius:14px!important;
  background:rgba(249,246,239,.96)!important;
  box-shadow:0 8px 22px rgba(16,45,79,.07)!important;
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}

.lux-unified-menu-page .lux-menu-toolbar-inner{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr) minmax(180px,240px)!important;
  align-items:center!important;
  gap:8px!important;
}

.lux-unified-menu-page .lux-group-segmented{
  min-width:0;
  height:var(--lux-menu-control-h)!important;
  margin:0!important;
  padding:3px!important;
  display:flex!important;
  flex-wrap:nowrap!important;
  gap:3px!important;
  overflow-x:auto;
  overflow-y:hidden;
  border:1px solid var(--lux-menu-line)!important;
  border-radius:11px!important;
  background:rgba(255,250,242,.96)!important;
  scrollbar-width:none;
}

.lux-unified-menu-page .lux-group-segmented::-webkit-scrollbar,
.lux-unified-menu-page .lux-category-dock::-webkit-scrollbar{
  display:none;
}

.lux-unified-menu-page .lux-group-tab{
  flex:0 0 auto;
  min-width:max-content;
  height:30px!important;
  margin:0!important;
  padding:0 14px!important;
  border:1px solid transparent!important;
  border-radius:8px!important;
  color:var(--lux-menu-navy)!important;
  background:transparent!important;
  font-size:9px!important;
  font-weight:800!important;
  line-height:1!important;
  letter-spacing:.065em!important;
  text-transform:uppercase;
  white-space:nowrap;
}

.lux-unified-menu-page .lux-group-tab.active,
.lux-unified-menu-page .lux-group-tab[aria-pressed="true"]{
  color:#fffaf2!important;
  border-color:var(--lux-menu-gold)!important;
  background:var(--lux-menu-navy)!important;
  box-shadow:inset 0 0 0 1px rgba(216,178,99,.10)!important;
}

.lux-unified-menu-page .lux-category-dock{
  min-width:0!important;
  max-width:100%!important;
  height:var(--lux-menu-control-h)!important;
  margin:0!important;
  padding:0 2px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:6px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  white-space:nowrap;
  scrollbar-width:none;
  scroll-snap-type:x proximity;
  -webkit-overflow-scrolling:touch;
}

.lux-unified-menu-page .lux-cat-pill{
  box-sizing:border-box;
  flex:0 0 auto!important;
  width:auto!important;
  min-width:max-content!important;
  height:var(--lux-menu-control-h)!important;
  min-height:var(--lux-menu-control-h)!important;
  margin:0!important;
  padding:0 13px!important;
  border:1px solid rgba(185,134,47,.60)!important;
  border-radius:10px!important;
  background:var(--lux-menu-card)!important;
  color:var(--lux-menu-navy)!important;
  font-size:9px!important;
  font-weight:750!important;
  line-height:1!important;
  letter-spacing:.02em!important;
  white-space:nowrap!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.62)!important;
  scroll-snap-align:start;
}

.lux-unified-menu-page .lux-cat-pill.active,
.lux-unified-menu-page .lux-cat-pill.current,
.lux-unified-menu-page .lux-cat-pill[aria-pressed="true"]{
  color:#fffaf2!important;
  border-color:var(--lux-menu-gold)!important;
  background:var(--lux-menu-navy)!important;
  box-shadow:inset 0 0 0 1px rgba(216,178,99,.18)!important;
}

.lux-unified-menu-page .lux-menu-search{
  box-sizing:border-box;
  width:100%!important;
  min-width:0!important;
  height:var(--lux-menu-control-h)!important;
  margin:0!important;
  border:1px solid var(--lux-menu-line)!important;
  border-radius:10px!important;
  background:#fff!important;
  overflow:hidden;
}

.lux-unified-menu-page .lux-menu-search input{
  width:100%!important;
  height:100%!important;
  margin:0!important;
  padding:0 12px 0 34px!important;
  border:0!important;
  border-radius:0!important;
  outline:0!important;
  background:transparent!important;
  color:var(--lux-menu-navy)!important;
  font-size:10px!important;
  line-height:1!important;
  box-shadow:none!important;
}

.lux-unified-menu-page .lux-menu-search:focus-within{
  border-color:var(--lux-menu-gold)!important;
  box-shadow:0 0 0 2px rgba(185,134,47,.12)!important;
}

.lux-unified-menu-page .lux-menu-search-icon{
  left:12px!important;
  width:13px;
  height:13px;
  color:var(--lux-menu-gold)!important;
  font-size:0!important;
}

.lux-unified-menu-page .lux-menu-search-icon::before{
  content:"";
  position:absolute;
  inset:0 3px 3px 0;
  border:1.5px solid currentColor;
  border-radius:50%;
}

.lux-unified-menu-page .lux-menu-search-icon::after{
  content:"";
  position:absolute;
  right:0;
  bottom:0;
  width:5px;
  height:1.5px;
  border-radius:2px;
  background:currentColor;
  transform:rotate(45deg);
  transform-origin:right center;
}

/* Defensive rule: the unified engine never presents categories at page bottom. */
.lux-unified-menu-page > .lux-category-dock.lux-mobile-category-dock{
  position:static!important;
  width:auto!important;
  min-height:0!important;
  margin:0!important;
  box-shadow:none!important;
}

/* ---------- Category headings and item cards ---------- */

.lux-unified-menu-page .lux-menu-content-root{
  width:100%;
  max-width:1120px;
  min-width:0;
  margin:0 auto;
}

.lux-unified-menu-page .menu-section{
  min-width:0;
  margin:0 0 30px!important;
  scroll-margin-top:calc(var(--lux-nav-height) + 104px);
}

.lux-unified-menu-page .lux-menu-divider{
  width:100%;
  min-height:34px;
  margin:22px 0 14px!important;
  display:grid!important;
  grid-template-columns:minmax(32px,1fr) auto minmax(32px,1fr)!important;
  align-items:center!important;
  gap:12px!important;
}

.lux-unified-menu-page .lux-menu-rule{
  width:100%;
  height:1px!important;
  background:linear-gradient(90deg,transparent,rgba(185,134,47,.72))!important;
}

.lux-unified-menu-page .lux-menu-divider h2{
  max-width:min(620px,72vw);
  margin:0!important;
  padding:0 5px!important;
  color:var(--lux-menu-navy)!important;
  font-family:var(--lux-font-display),Georgia,"Times New Roman",serif!important;
  font-size:25px!important;
  font-weight:500!important;
  line-height:1.05!important;
  letter-spacing:.015em!important;
  text-align:center!important;
  text-transform:none!important;
  text-wrap:balance;
}

.lux-unified-menu-page .items-grid{
  width:100%;
  min-width:0;
  margin:0!important;
  padding:0!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;
}

.lux-unified-menu-page .menu-item{
  box-sizing:border-box;
  min-width:0!important;
  min-height:0!important;
  margin:0!important;
  padding:16px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
  gap:7px!important;
  overflow:hidden;
  border:1px solid var(--lux-menu-line)!important;
  border-radius:14px!important;
  background:var(--lux-menu-card)!important;
  box-shadow:0 6px 18px rgba(16,45,79,.065)!important;
  color:var(--lux-menu-navy)!important;
  transform:none!important;
}

.lux-unified-menu-page .menu-item.signature{
  border-inline-start:3px solid var(--lux-menu-gold)!important;
  background:linear-gradient(135deg,rgba(216,178,99,.09),var(--lux-menu-card) 52%)!important;
}

.lux-unified-menu-page .menu-item .item-line{
  width:100%;
  min-width:0;
  margin:0!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:start!important;
  gap:10px!important;
}

.lux-unified-menu-page .menu-item .item-line > i{
  display:none!important;
}

.lux-unified-menu-page .menu-item h3{
  min-width:0;
  margin:0!important;
  display:flex!important;
  align-items:flex-start!important;
  flex-wrap:wrap!important;
  gap:6px!important;
  color:var(--lux-menu-navy)!important;
  font-family:var(--lux-font-display),Georgia,"Times New Roman",serif!important;
  font-size:17px!important;
  font-weight:600!important;
  line-height:1.2!important;
  overflow-wrap:anywhere;
}

.lux-unified-menu-page .menu-item-name{
  min-width:0;
  color:inherit!important;
  font:inherit!important;
}

.lux-unified-menu-page .menu-item-icon{
  flex:0 0 18px;
  width:18px!important;
  height:18px!important;
  margin-top:1px;
  display:grid!important;
  place-items:center;
  color:var(--lux-menu-gold)!important;
  font-size:0!important;
  line-height:1!important;
}

.lux-unified-menu-page .menu-item-icon svg,
.lux-unified-menu-page .menu-item-icon .v10-line-icon{
  width:18px!important;
  height:18px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.65!important;
}

.lux-unified-menu-page .menu-item h3 em{
  flex:0 0 auto;
  margin-top:1px;
  padding:3px 6px!important;
  border:1px solid rgba(185,134,47,.50)!important;
  border-radius:999px!important;
  background:rgba(216,178,99,.13)!important;
  color:#986b22!important;
  font-family:var(--lux-font-sans),Arial,sans-serif!important;
  font-size:7px!important;
  font-weight:800!important;
  line-height:1!important;
  letter-spacing:.06em!important;
}

.lux-unified-menu-page .menu-item .item-line > strong{
  min-width:max-content;
  margin:1px 0 0!important;
  color:var(--lux-menu-gold)!important;
  font-family:var(--lux-font-sans),Arial,sans-serif!important;
  font-size:15px!important;
  font-weight:800!important;
  line-height:1.15!important;
  white-space:nowrap!important;
  text-align:end;
}

.lux-unified-menu-page .menu-item > p{
  max-width:none!important;
  margin:0!important;
  color:var(--lux-menu-muted)!important;
  font-family:var(--lux-font-sans),Arial,sans-serif!important;
  font-size:11.5px!important;
  font-weight:400!important;
  line-height:1.5!important;
}

.lux-unified-menu-page .item-meta{
  margin:2px 0 0!important;
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:5px!important;
}

.lux-unified-menu-page .session-duration,
.lux-unified-menu-page .nutrition-calories,
.lux-unified-menu-page .allergen-chip{
  min-height:24px;
  margin:0!important;
  padding:4px 8px!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:4px!important;
  border:1px solid rgba(185,134,47,.34)!important;
  border-radius:999px!important;
  background:rgba(185,134,47,.07)!important;
  color:#5b6670!important;
  font-size:8px!important;
  font-weight:700!important;
  line-height:1!important;
}

.lux-unified-menu-page .lux-meta-icon{
  width:16px;
  height:16px;
  fill:none;
  stroke:var(--lux-menu-gold);
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.lux-unified-menu-page .menu-item-media{
  width:100%;
  aspect-ratio:16/9;
  overflow:hidden;
  border-radius:11px;
  background:rgba(185,134,47,.07);
}

.lux-unified-menu-page .menu-item-media img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}

/* ---------- Compact shared footer ---------- */

.lux-unified-menu-page .lux-footer{
  margin-top:30px!important;
  padding:22px 0 18px!important;
  border-top:1px solid rgba(185,134,47,.25)!important;
  background:transparent!important;
}

.lux-unified-menu-page .lux-footer-inner{
  gap:9px!important;
}

.lux-unified-menu-page .lux-footer-logo{
  height:30px!important;
}

.lux-unified-menu-page .lux-footer-tagline{
  margin:0!important;
  font-size:11px!important;
}

.lux-unified-menu-page .lux-footer-pills{
  display:none!important;
}

.lux-unified-menu-page .lux-footer-social{
  gap:8px!important;
}

.lux-unified-menu-page .lux-footer-social .lux-social-link{
  width:32px!important;
  height:32px!important;
}

.lux-unified-menu-page .lux-footer-bottom{
  margin-top:2px!important;
  padding-top:9px!important;
  font-size:9px!important;
}

/* ---------- Consistent internal mobile dock ---------- */

@media(max-width:650px){
  body.lux-unified-menu-page{
    --lux-nav-height:56px;
    --lux-menu-control-h:36px;
    padding-bottom:68px!important;
  }

  .lux-unified-menu-page .lux-topbar{
    height:56px!important;
    min-height:56px!important;
  }

  .lux-unified-menu-page .lux-topbar-inner{
    min-height:56px!important;
  }

  .lux-unified-menu-page .lux-brand-logo{
    height:34px!important;
    max-width:145px!important;
  }

      .lux-unified-menu-page main.lux-container{
    width:calc(100% - 16px)!important;
    max-width:none!important;
    margin-inline:auto!important;
    padding-inline:0!important;
  }

  .lux-unified-menu-page .lux-menu-identity{
    height:136px!important;
    min-height:136px!important;
    max-height:136px!important;
    margin:7px 0 8px!important;
    border-radius:14px!important;
  }

  .lux-unified-menu-page .lux-menu-identity .lux-hero-content{
    min-height:136px!important;
    padding:8px 12px!important;
    gap:3px!important;
  }

  .lux-unified-menu-page .lux-menu-identity .lux-hero-content > img{
    display:none!important;
  }

  .lux-unified-menu-page .lux-menu-identity .lux-kicker{
    font-size:7px!important;
    letter-spacing:.13em!important;
  }

  .lux-unified-menu-page .lux-menu-identity .lux-hero-title{
    max-width:100%;
    font-size:clamp(26px,7.2vw,29px)!important;
    line-height:.98!important;
  }

  .lux-unified-menu-page .lux-menu-identity .lux-hero-subtitle{
    max-width:92%;
    font-size:8.5px!important;
    line-height:1.15!important;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }

  .lux-unified-menu-page .lux-menu-identity .lux-hero-actions{
    max-width:100%;
    margin-top:3px!important;
    gap:5px!important;
  }

  .lux-unified-menu-page .lux-menu-identity .lux-hero-actions .lux-btn{
    min-height:27px!important;
    height:27px!important;
    padding:0 10px!important;
    border-radius:8px!important;
    font-size:6.5px!important;
  }

  body.lux-site-aqaba.lux-unified-menu-page .lux-hero.lux-menu-identity{
    height:136px!important;
    min-height:136px!important;
    max-height:136px!important;
    margin:7px 0 8px!important;
    border-radius:14px!important;
  }

  body.lux-site-aqaba.lux-unified-menu-page .lux-hero.lux-menu-identity .lux-hero-content{
    min-height:136px!important;
    padding:8px 12px!important;
    justify-content:center!important;
  }

  body.lux-site-aqaba.lux-unified-menu-page .lux-hero.lux-menu-identity .lux-hero-content > img{
    display:none!important;
  }

  body.lux-site-aqaba.lux-unified-menu-page .lux-hero.lux-menu-identity .lux-kicker{
    margin:0!important;
    font-size:7px!important;
  }

  body.lux-site-aqaba.lux-unified-menu-page .lux-hero.lux-menu-identity .lux-hero-title{
    margin:0!important;
    font-size:clamp(26px,7.2vw,29px)!important;
    line-height:.98!important;
  }

  body.lux-site-aqaba.lux-unified-menu-page .lux-hero.lux-menu-identity .lux-hero-subtitle{
    display:block!important;
    font-size:8.5px!important;
    line-height:1.15!important;
  }

  body.lux-site-aqaba.lux-unified-menu-page .lux-hero.lux-menu-identity .lux-hero-actions{
    margin-top:3px!important;
    gap:5px!important;
  }

  body.lux-site-aqaba.lux-unified-menu-page .lux-hero.lux-menu-identity .lux-hero-actions .lux-btn{
    width:auto!important;
    min-height:27px!important;
    height:27px!important;
    padding:0 10px!important;
    font-size:6.5px!important;
  }

  .lux-unified-menu-page .lux-menu-toolbar-wrap{
    top:56px!important;
    margin-bottom:12px!important;
    padding:6px!important;
    border-radius:12px!important;
  }

  .lux-unified-menu-page .lux-menu-toolbar-inner{
    grid-template-columns:minmax(0,1fr) minmax(118px,42%)!important;
    gap:5px 6px!important;
  }

  .lux-unified-menu-page .lux-group-segmented{
    grid-column:1;
    grid-row:1;
    height:36px!important;
  }

  .lux-unified-menu-page .lux-group-tab{
    height:28px!important;
    padding-inline:10px!important;
    font-size:7.5px!important;
  }

  .lux-unified-menu-page .lux-menu-search{
    grid-column:2;
    grid-row:1;
    height:36px!important;
  }

  .lux-unified-menu-page .lux-menu-search input{
    padding-inline-start:31px!important;
    padding-inline-end:8px!important;
    font-size:8.5px!important;
  }

  .lux-unified-menu-page .lux-category-dock{
    grid-column:1 / -1;
    grid-row:2;
    height:36px!important;
    gap:5px!important;
  }

  .lux-unified-menu-page .lux-cat-pill{
    height:36px!important;
    min-height:36px!important;
    padding-inline:11px!important;
    border-radius:9px!important;
    font-size:8px!important;
  }

  .lux-unified-menu-page .menu-section{
    margin-bottom:22px!important;
    scroll-margin-top:150px;
  }

  .lux-unified-menu-page .lux-menu-divider{
    min-height:30px;
    margin:16px 0 10px!important;
    grid-template-columns:minmax(22px,1fr) auto minmax(22px,1fr)!important;
    gap:8px!important;
  }

  .lux-unified-menu-page .lux-menu-divider h2{
    max-width:72vw;
    padding-inline:3px!important;
    font-size:21px!important;
    line-height:1!important;
  }

  .lux-unified-menu-page .items-grid{
    grid-template-columns:1fr!important;
    gap:9px!important;
  }

  .lux-unified-menu-page .menu-item{
    padding:13px!important;
    gap:6px!important;
    border-radius:12px!important;
    box-shadow:0 4px 13px rgba(16,45,79,.055)!important;
  }

  .lux-unified-menu-page .menu-item .item-line{
    gap:8px!important;
  }

  .lux-unified-menu-page .menu-item h3{
    font-size:16px!important;
    line-height:1.2!important;
  }

  .lux-unified-menu-page .menu-item .item-line > strong{
    font-size:14px!important;
  }

  .lux-unified-menu-page .menu-item > p{
    font-size:10.5px!important;
    line-height:1.45!important;
  }

  .lux-unified-menu-page .menu-item-icon,
  .lux-unified-menu-page .menu-item-icon svg,
  .lux-unified-menu-page .menu-item-icon .v10-line-icon{
    width:17px!important;
    height:17px!important;
  }

  .lux-unified-menu-page .session-duration,
  .lux-unified-menu-page .nutrition-calories,
  .lux-unified-menu-page .allergen-chip{
    min-height:22px;
    padding:3px 7px!important;
    font-size:7.5px!important;
  }

  .lux-unified-menu-page .lux-footer{
    margin-top:20px!important;
    padding:14px 0 12px!important;
  }

  .lux-unified-menu-page .lux-footer-inner{
    gap:6px!important;
  }

  .lux-unified-menu-page .lux-footer-logo{
    height:24px!important;
  }

  .lux-unified-menu-page .lux-footer-tagline{
    display:none!important;
  }

  .lux-unified-menu-page .lux-footer-bottom{
    width:auto!important;
    margin:0!important;
    padding:4px 0 0!important;
    border:0!important;
    justify-content:center!important;
    font-size:7px!important;
  }

  .lux-unified-menu-page .lux-footer-bottom > span{
    display:none!important;
  }

  .lux-unified-menu-page .lux-mobile-dock{
    left:50%!important;
    right:auto!important;
    bottom:max(7px,env(safe-area-inset-bottom))!important;
    width:calc(100% - 16px)!important;
    max-width:430px!important;
    height:50px!important;
    min-height:50px!important;
    max-height:50px!important;
    padding:4px 6px!important;
    display:grid!important;
    grid-template-columns:none!important;
    grid-auto-flow:column!important;
    grid-auto-columns:minmax(0,1fr)!important;
    align-items:center!important;
    overflow:hidden!important;
    border:1px solid rgba(216,178,99,.74)!important;
    border-radius:16px!important;
    background:rgba(14,43,70,.97)!important;
    box-shadow:0 7px 22px rgba(16,45,79,.20),inset 0 0 0 1px rgba(255,255,255,.025)!important;
    transform:translateX(-50%)!important;
  }

  .lux-unified-menu-page .lux-mobile-dock .lux-dock-item{
    min-width:0!important;
    height:42px!important;
    min-height:42px!important;
    padding:3px 2px!important;
    gap:2px!important;
    border-radius:10px!important;
    color:rgba(255,255,255,.72)!important;
    font-size:7px!important;
    font-weight:700!important;
    line-height:1!important;
    letter-spacing:.015em!important;
  }

  .lux-unified-menu-page .lux-mobile-dock .lux-dock-item.active{
    color:var(--lux-menu-gold-light)!important;
    background:rgba(216,178,99,.11)!important;
  }

  .lux-unified-menu-page .lux-dock-icon{
    width:17px!important;
    height:17px!important;
    display:grid!important;
    place-items:center!important;
    color:inherit!important;
    font-size:0!important;
    line-height:0!important;
  }

  .lux-unified-menu-page .lux-dock-icon::before{
    content:"";
    width:17px;
    height:17px;
    display:block;
    background:currentColor;
    -webkit-mask:var(--lux-dock-glyph) center/contain no-repeat;
    mask:var(--lux-dock-glyph) center/contain no-repeat;
  }

  .lux-unified-menu-page .lux-dock-item:first-child .lux-dock-icon{
    --lux-dock-glyph:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m4 11 8-7 8 7'/%3E%3Cpath d='M6.5 10v10h11V10M10 20v-6h4v6'/%3E%3C/svg%3E");
  }

  .lux-unified-menu-page .lux-dock-item[href*="dining"] .lux-dock-icon{
    --lux-dock-glyph:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'%3E%3Cpath d='M6 3v8M3.5 3v5A2.5 2.5 0 0 0 6 10.5 2.5 2.5 0 0 0 8.5 8V3M6 10.5V21M15 3v18M15 3c3 2.4 4 5.2 4 9h-4'/%3E%3C/svg%3E");
  }

  .lux-unified-menu-page .lux-dock-item[href*="royal-diving-club"] .lux-dock-icon{
    --lux-dock-glyph:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 13c2-2 4-2 6 0s4 2 6 0 4-2 5 0'/%3E%3Cpath d='M5 17c2-2 4-2 6 0s4 2 6 0 3-2 4-1'/%3E%3Cpath d='M8 10V7a4 4 0 0 1 8 0v3M12 3v7'/%3E%3C/svg%3E");
  }

  .lux-unified-menu-page .lux-dock-item[href*="spa"] .lux-dock-icon{
    --lux-dock-glyph:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 4C12.5 4.5 7 8 7 13c0 3 2 5 5 5 5 0 8-5 8-14Z'/%3E%3Cpath d='M4 21c3-6 7-10 13-13'/%3E%3C/svg%3E");
  }

  .lux-unified-menu-page .lux-dock-item[href*="activities"] .lux-dock-icon{
    --lux-dock-glyph:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='m15.5 8.5-2 5-5 2 2-5 5-2Z'/%3E%3C/svg%3E");
  }

  .lux-unified-menu-page .lux-dock-item[data-open-contact] .lux-dock-icon{
    --lux-dock-glyph:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 3H4.5A1.5 1.5 0 0 0 3 4.5C3 13.6 10.4 21 19.5 21a1.5 1.5 0 0 0 1.5-1.5V17l-4-1-1.2 2c-4.2-1.6-8-5.4-9.6-9.6l2-1.2L7 3Z'/%3E%3C/svg%3E");
  }

  html[dir="rtl"] .lux-unified-menu-page .lux-menu-search-icon{
    right:12px!important;
    left:auto!important;
  }

  html[dir="rtl"] .lux-unified-menu-page .lux-menu-search input{
    padding-right:31px!important;
    padding-left:8px!important;
  }
}

@media(hover:hover) and (pointer:fine){
  .lux-unified-menu-page .lux-cat-pill:hover,
  .lux-unified-menu-page .lux-group-tab:hover{
    border-color:var(--lux-menu-gold)!important;
  }

  .lux-unified-menu-page .menu-item:hover{
    border-color:rgba(185,134,47,.70)!important;
    box-shadow:0 8px 22px rgba(16,45,79,.09)!important;
    transform:translateY(-1px)!important;
  }
}

@media(prefers-reduced-motion:reduce){
  .lux-unified-menu-page *,
  .lux-unified-menu-page *::before,
  .lux-unified-menu-page *::after{
    scroll-behavior:auto!important;
    transition-duration:.01ms!important;
  }
}


/* Keep shared page heroes full bleed after the menu-specific mobile rules. */
@media(max-width:720px){
  body.lux-unified-menu-page main.lux-container .lux-hero.lux-menu-identity{
    width:100vw!important;
    max-width:100vw!important;
    margin-left:calc(50% - 50vw)!important;
    margin-right:calc(50% - 50vw)!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
  }

  body.lux-unified-menu-page main.lux-container .lux-hero.lux-menu-identity > .lux-hero-media,
  body.lux-unified-menu-page main.lux-container .lux-hero.lux-menu-identity > .lux-hero-media img,
  body.lux-unified-menu-page main.lux-container .lux-hero.lux-menu-identity > .lux-hero-media video{
    border-radius:0!important;
  }
}
