/*
 * Global mobile CLS stabilizer for Jupiter full-height sections.
 * Uses the actual #theme-page top padding as offset to avoid "double subtract"
 * issues with custom fixed-header snippets.
 */

html,
body {
  background-color: #fff;
}

:root {
  --mk-header-h: 50px;
  --mk-adminbar-h: 0px;
  --mk-theme-page-offset: calc(var(--mk-header-h) + var(--mk-adminbar-h));
  --bekaa-red: #ec1d25;
  --bekaa-red-deep: #d11921;
  --bekaa-system-font: -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
  --bekaa-accent-line: #ec1d25;
  --bekaa-accent-line-soft: rgba(236, 29, 37, 0.22);
  --bekaa-accent-line-width: 2px;
  --bekaa-accent-rail-width: 3px;
  --bekaa-motion-ease: cubic-bezier(0.22, 1, 0.36, 1);
  --bekaa-motion-duration-fast: 0.24s;
  --bekaa-motion-duration-base: 0.52s;
  --bekaa-mobile-header-enter-duration: 0.52s;
  --bekaa-mobile-header-exit-duration: 0.34s;
  --bekaa-mobile-header-enter-ease: cubic-bezier(0.19, 1, 0.22, 1);
  --bekaa-mobile-header-exit-ease: cubic-bezier(0.55, 0, 0.22, 1);
  --bekaa-motion-shift-sm: 10px;
  --bekaa-motion-shift-md: 18px;
  --bekaa-form-label-gap: 8px;
  --bekaa-ink: #111;
  --bekaa-muted: #666;
  --bekaa-border: rgba(0, 0, 0, 0.12);
  --bekaa-border-strong: rgba(0, 0, 0, 0.18);
  --bekaa-bg: #fff;
  --bekaa-soft: #f6f6f6;
  --bekaa-radius: 3px;
  --bekaa-shadow: 0 18px 60px rgba(0, 0, 0, 0.14);
  --bekaa-focus: 0 0 0 3px rgba(236, 29, 37, 0.14);
}

/* Desktop page-frame contract. Shared components consume this token; deliberate
 * full-bleed/editorial components declare their own geometry instead. */
@media (min-width: 1280px) {
  :root {
    --bekaa-page-gutter: 5vw;
  }
}

/* =========================================
   Composite Hero Heading
   Reusable single-H1 destination hero pattern with a typed eyebrow line and
   large split display title. This is the intended replacement path for the
   older kicker plus split-heading treatment once proven out locally.
   ========================================= */
.mk-page-section.bekaa-hero .wpb_raw_code.wpb_raw_html.wpb_content_element {
  margin-bottom: 3px !important;
}

.bekaa-hero-heading {
  position: relative;
  z-index: 12;
  margin: 0 !important;
  color: #ffffff !important;
  font-family: "Gilda Display", Georgia, serif !important;
  font-size: var(--bekaa-hero-display-size, 52px) !important;
  line-height: 0.92 !important;
  font-weight: 300 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

.bekaa-hero-heading-eyebrow,
.bekaa-hero-heading-line {
  display: block;
}

.bekaa-hero-heading-eyebrow {
  margin: 0 0 18px !important;
  color: #ffffff !important;
  font-family: var(--bekaa-system-font) !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
  font-style: normal !important;
  font-weight: 500 !important;
  letter-spacing: 0.3em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

.bekaa-hero-heading-title {
  display: block !important;
  color: #ffffff !important;
  font-family: "Gilda Display", Georgia, serif !important;
  font-size: inherit !important;
  line-height: 0.92 !important;
  letter-spacing: 0 !important;
}

.bekaa-home-hero-title {
  margin: 0 !important;
  color: #ffffff !important;
  font-family: "Gilda Display", Georgia, serif !important;
  font-size: inherit !important;
  line-height: 0.92 !important;
  font-weight: 300 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

.bekaa-hero-heading-line {
  color: #ffffff !important;
}

.bekaa-hero-heading-line--primary {
  font-family: "Gilda Display", Georgia, serif !important;
  font-weight: 300 !important;
  font-style: normal !important;
  line-height: 1.5 !important;
}

.bekaa-hero-heading-line--accent {
  margin-top: -0.015em !important;
  font-family: "Gilda Display", Georgia, serif !important;
  font-weight: 500 !important;
  font-style: italic !important;
}

.bekaa-hero-heading-word-slot {
  display: inline-flex !important;
  align-items: baseline !important;
  white-space: nowrap !important;
}

.bekaa-hero-heading-word {
  display: inline-block !important;
}

.bekaa-hero-heading-cursor {
  display: inline-block !important;
  width: 1px !important;
  height: 0.92em !important;
  margin-left: 0.08em !important;
  transform: translateY(0.08em) !important;
  background: currentColor !important;
  opacity: 0;
}

.bekaa-hero-heading.is-typed-ready .bekaa-hero-heading-cursor {
  opacity: 0.82;
  animation: bekaaHeroHeadingCursor 1s steps(1, end) infinite;
}

.mk-page-section.bekaa-hero .hero-red-line {
  padding: 0 0 18px !important;
}

.mk-page-section.bekaa-hero .bekaa-hero-summary {
  width: 33.333333% !important;
  max-width: 33.333333% !important;
  margin: 32px 0 30px !important;
  color: #ffffff !important;
  font-family: var(--bekaa-system-font) !important;
  font-size: var(--bekaa-type-subtitle, 20px) !important;
  line-height: 1.8 !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
}

.mk-page-section.bekaa-hero .bekaa-hero-summary p {
  margin: 0 !important;
  color: inherit !important;
  font: inherit !important;
}

.mk-fancy-title .bekaa-heading-dot,
.bekaa-hero-heading .bekaa-heading-dot {
  color: var(--bekaa-red);
}

.bekaa-closing-cta-heading {
  max-width: 520px;
}

.bekaa-closing-cta-heading .bekaa-hero-heading-eyebrow {
  margin-bottom: 18px !important;
}

/* Desktop-only WPBakery split heading rhythm. */
@media only screen and (min-width: 1025px) {
  .mk-page-section .mk-fancy-title.nomar {
    position: relative;
    z-index: 2;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    line-height: 0.94 !important;
  }

  .mk-page-section .mk-fancy-title.nomar p,
  .mk-page-section .mk-fancy-title.nomar span {
    position: relative;
    z-index: 2;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    line-height: 0.94 !important;
  }

  .mk-page-section .mk-fancy-title.nomar + .clearboth {
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 0 !important;
  }
}

.mk-page-section .hero-red-line {
  position: relative;
  z-index: 1;
}

.mk-page-section .hero-red-line .divider-inner {
  position: relative;
  z-index: 1;
}

@media only screen and (max-width: 767px) {
  .mk-page-section .mk-fancy-title.nomar,
  .mk-page-section .mk-fancy-title.nomar p,
  .mk-page-section .mk-fancy-title.nomar span {
    position: relative;
    z-index: 2;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    line-height: 0.94 !important;
  }

  .mk-page-section .mk-fancy-title.nomar + .clearboth {
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 0 !important;
  }

  .mk-page-section .mk-fancy-title.nomar ~ .hero-red-line {
    margin-top: -0.03em !important;
  }

  .mk-page-section .hero-red-line .divider-inner {
    width: 90px !important;
    border-top-width: 2px !important;
  }
}


@keyframes bekaaHeroHeadingCursor {
  0%,
  49% {
    opacity: 0.82;
  }

  50%,
  100% {
    opacity: 0;
  }
}

@media only screen and (max-width: 1279px) {
  .bekaa-hero-heading {
    font-size: var(--bekaa-hero-display-size, 42px) !important;
    line-height: 0.94 !important;
  }

  .bekaa-hero-heading-eyebrow {
    margin-bottom: 16px !important;
    font-size: 12px !important;
    letter-spacing: 0.24em !important;
  }
}

@media only screen and (max-width: 767px) {
  .bekaa-hero-heading {
    font-size: var(--bekaa-hero-display-size, 34px) !important;
    line-height: 0.94 !important;
    text-align: center !important;
  }

  .bekaa-hero-heading-eyebrow {
    margin-bottom: 14px !important;
    font-size: 10px !important;
    line-height: 1.22 !important;
    letter-spacing: 0.18em !important;
    white-space: nowrap !important;
  }

  .bekaa-hero-heading-line--accent {
    margin-top: -0.01em !important;
  }

  .mk-page-section.bekaa-hero .hero-red-line {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding: 0 0 18px !important;
    text-align: center !important;
  }

  .mk-page-section.bekaa-hero .hero-red-line .divider-inner {
    border-top-width: 2px !important;
    width: 65px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .mk-page-section.bekaa-hero .bekaa-hero-summary {
    display: none !important;
  }

}

body.admin-bar {
  --mk-adminbar-h: 46px;
}

@media (min-width: 783px) {
  body.admin-bar {
    --mk-adminbar-h: 32px;
  }
}

html body .mk-page-section[data-mk-component="FullHeight"],
html body .mk-page-section.bekaa-stable-fullscreen,
html body .mk-page-section.bekaa-hero {
  min-height: 100vh !important;
}

@media only screen and (max-width: 767px) {
  html body .mk-page-section[data-mk-component="FullHeight"],
  html body .mk-page-section.bekaa-stable-fullscreen,
  html body .mk-page-section.bekaa-hero {
    min-height: calc(100vh - var(--mk-theme-page-offset, calc(var(--mk-header-h, 50px) + var(--mk-adminbar-h, 0px)))) !important;
  }
}

@supports (height: 100svh) {
  @media only screen and (max-width: 767px) {
    html body .mk-page-section[data-mk-component="FullHeight"],
    html body .mk-page-section.bekaa-stable-fullscreen,
    html body .mk-page-section.bekaa-hero {
      min-height: calc(100svh - var(--mk-theme-page-offset, calc(var(--mk-header-h, 50px) + var(--mk-adminbar-h, 0px)))) !important;
    }
  }
}

/* iOS Safari / modern mobile viewport unit fix: use dynamic viewport height when available. */
@supports (height: 100dvh) {
  @media only screen and (max-width: 767px) {
    html body .mk-page-section[data-mk-component="FullHeight"],
    html body .mk-page-section.bekaa-stable-fullscreen,
    html body .mk-page-section.bekaa-hero {
      min-height: calc(100dvh - var(--mk-theme-page-offset, calc(var(--mk-header-h, 50px) + var(--mk-adminbar-h, 0px)))) !important;
    }
  }
}

/*
 * Jupiter stretches full-width sections with footer-time JS. When that runs after
 * first paint, users briefly see the boxed layout. Mirror the intended full-width
 * geometry in CSS so the first paint already matches the post-init state.
 */
body:not(.mk-boxed-enabled):not(.vertical-header-enabled) #theme-page .theme-content .wpb-content-wrapper > .mk-page-section-wrapper[data-mk-full-width="true"],
body:not(.mk-boxed-enabled):not(.vertical-header-enabled) #theme-page .theme-content .wpb-content-wrapper > .wpb_row[data-mk-full-width="true"] {
  position: relative;
  left: 50%;
  right: 50%;
  width: 100vw;
  max-width: 100vw;
  margin-left: -50vw;
  margin-right: -50vw;
}

/* Reserve logo space to prevent late lazy-load header reflow. */
.header-logo .mk-desktop-logo img,
.header-logo img.mk-resposnive-logo,
.header-logo img.mk-sticky-logo {
  width: 80px !important;
  height: auto !important;
  aspect-ratio: 2516 / 1989;
  display: block;
}

/* Brand the current Brisbane / Gold Coast header location on every viewport. */
.bekaa-header-brand-group .bekaa-market-switcher__label {
  font-family: var(--bekaa-brand-display);
  font-size: 17px;
}

@media handheld, only screen and (max-width: 1279px) {
  .bekaa-header-brand-group .bekaa-market-switcher__label {
    font-size: 15px;
  }

  body #theme-page {
    padding-top: calc(var(--mk-header-h, 50px) + var(--mk-adminbar-h, 0px)) !important;
  }

  .mk-header:not(.header-style-4) .mk-header-holder {
    position: fixed !important;
    top: var(--mk-adminbar-h, 0px) !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    z-index: 350 !important;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
  }

  /* The child runtime owns mobile header visibility; neutralize Jupiter's legacy holder transform. */
  .sticky-style-fixed.header-style-1 .mk-header-holder.header--hidden,
  .sticky-style-fixed.header-style-3 .mk-header-holder.header--hidden {
    transform: none !important;
  }

  .mk-header:not(.header-style-4) .mk-header-inner {
    transform: translate3d(0, 0, 0);
    transition-property: transform, background-color, border-color, box-shadow;
    transition-duration: var(--bekaa-mobile-header-enter-duration);
    transition-timing-function: var(--bekaa-mobile-header-enter-ease);
    will-change: transform;
    transform-origin: 50% 0;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
  }

  .mk-header:not(.header-style-4) .mk-header-holder.bekaa-mobile-header-hidden .mk-header-inner {
    transform: translate3d(0, -100%, 0);
  }

  .mk-header:not(.header-style-4) .mk-header-holder[data-bekaa-mobile-header-motion="in"] .mk-header-inner {
    transition-duration: var(--bekaa-mobile-header-enter-duration);
    transition-timing-function: var(--bekaa-mobile-header-enter-ease);
  }

  .mk-header:not(.header-style-4) .mk-header-holder[data-bekaa-mobile-header-motion="out"] .mk-header-inner {
    transition-duration: var(--bekaa-mobile-header-exit-duration);
    transition-timing-function: var(--bekaa-mobile-header-exit-ease);
  }

  body.bekaa-menu-opening .mk-header:not(.header-style-4) .mk-header-inner,
  body.mk-opened-nav .mk-header:not(.header-style-4) .mk-header-inner,
  body.bekaa-menu-closing .mk-header:not(.header-style-4) .mk-header-inner {
    transform: translate3d(0, 0, 0);
    background: rgba(255, 255, 255, 0.96);
    border-bottom: 0 !important;
    box-shadow: none;
  }
}

@media (prefers-reduced-motion: reduce) and (max-width: 1279px) {
  .mk-header:not(.header-style-4) .mk-header-inner {
    transition: none !important;
  }
}

/* =========================================
   DESKTOP MEGA MENU STABILITY
   The Bekaa runtime owns `dropdownOpen` on native pages; Jupiter retains it on
   exception routes. This smooths the shell animation, preserves the hover bridge
   for the fixed full-width panel, and hides raw background-image decode until
   the menu cards are ready.
   ========================================= */
@media only screen and (min-width: 1280px) {
  .mk-main-navigation .has-mega-menu .megamenu-title {
    font-family: var(--bekaa-brand-display);
    font-size: 15px;
    line-height: 1.2;
  }

  .mk-main-navigation .has-mega-menu .bekaa-button {
    font-family: var(--bekaa-button-font);
    font-size: 15px;
    letter-spacing: 0.15em;
  }

  .mk-main-navigation .dropdownJavascript > li.menu-item > ul.sub-menu {
    display: block !important;
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    transform: translate3d(0, 12px, 0);
    transform-origin: 50% 0;
    transition:
      opacity 0.32s ease,
      transform 0.58s var(--bekaa-motion-ease, cubic-bezier(0.22, 1, 0.36, 1)),
      visibility 0s linear 0.58s;
    will-change: opacity, transform;
  }

  .mk-main-navigation .dropdownJavascript > li.dropdownOpen > ul.sub-menu {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
    transform: translate3d(0, 0, 0);
    transition-delay: 0s, 0s, 0s;
  }

  .mk-main-navigation .dropdownJavascript > li.menu-item:hover > ul.sub-menu,
  .mk-main-navigation .dropdownJavascript > li.menu-item:focus-within > ul.sub-menu {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
    transform: translate3d(0, 0, 0);
    transition-delay: 0s, 0s, 0s;
  }

  .mk-main-navigation .dropdownJavascript > li.bekaa-menu-escape-closed > ul.sub-menu {
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }

  .mk-main-navigation .has-mega-menu > ul.sub-menu {
    position: fixed !important;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
  }

  .mk-main-navigation .main-navigation-ul > li.has-mega-menu.dropdownOpen > ul.sub-menu > li {
    opacity: 1 !important;
    transform: translate3d(0, 0, 0) !important;
  }

  .mk-main-navigation .main-navigation-ul > li.has-mega-menu:hover > ul.sub-menu > li,
  .mk-main-navigation .main-navigation-ul > li.has-mega-menu:focus-within > ul.sub-menu > li {
    opacity: 1 !important;
    transform: translate3d(0, 0, 0) !important;
  }

  .mk-main-navigation .has-mega-menu > ul.sub-menu > li {
    opacity: 0;
    transform: translate3d(0, 14px, 0);
    transition:
      opacity 0.34s ease,
      transform 0.62s var(--bekaa-motion-ease, cubic-bezier(0.22, 1, 0.36, 1));
  }

  .mk-main-navigation .main-navigation-ul > li.has-mega-menu.dropdownOpen > ul.sub-menu > li:nth-child(1) {
    transition-delay: 0.04s;
  }

  .mk-main-navigation .main-navigation-ul > li.has-mega-menu.dropdownOpen > ul.sub-menu > li:nth-child(2) {
    transition-delay: 0.08s;
  }

  .mk-main-navigation .main-navigation-ul > li.has-mega-menu.dropdownOpen > ul.sub-menu > li:nth-child(3) {
    transition-delay: 0.12s;
  }

  .mk-main-navigation .main-navigation-ul > li.has-mega-menu.dropdownOpen > ul.sub-menu > li:nth-child(4) {
    transition-delay: 0.16s;
  }

  .mk-main-navigation .main-navigation-ul > li.has-mega-menu.dropdownOpen > ul.sub-menu > li:nth-child(5) {
    transition-delay: 0.20s;
  }

  .mk-main-navigation .main-navigation-ul > li.has-mega-menu:hover > ul.sub-menu > li:nth-child(1),
  .mk-main-navigation .main-navigation-ul > li.has-mega-menu:focus-within > ul.sub-menu > li:nth-child(1) {
    transition-delay: 0.04s;
  }

  .mk-main-navigation .main-navigation-ul > li.has-mega-menu:hover > ul.sub-menu > li:nth-child(2),
  .mk-main-navigation .main-navigation-ul > li.has-mega-menu:focus-within > ul.sub-menu > li:nth-child(2) {
    transition-delay: 0.08s;
  }

  .mk-main-navigation .main-navigation-ul > li.has-mega-menu:hover > ul.sub-menu > li:nth-child(3),
  .mk-main-navigation .main-navigation-ul > li.has-mega-menu:focus-within > ul.sub-menu > li:nth-child(3) {
    transition-delay: 0.12s;
  }

  .mk-main-navigation .main-navigation-ul > li.has-mega-menu:hover > ul.sub-menu > li:nth-child(4),
  .mk-main-navigation .main-navigation-ul > li.has-mega-menu:focus-within > ul.sub-menu > li:nth-child(4) {
    transition-delay: 0.16s;
  }

  .mk-main-navigation .main-navigation-ul > li.has-mega-menu:hover > ul.sub-menu > li:nth-child(5),
  .mk-main-navigation .main-navigation-ul > li.has-mega-menu:focus-within > ul.sub-menu > li:nth-child(5) {
    transition-delay: 0.20s;
  }

  .mk-main-navigation .has-mega-menu > ul.sub-menu::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: -16px;
    height: 16px;
    pointer-events: auto;
  }

  .mk-main-navigation .sub-menu a.menu-item-link::after {
    content: "";
    display: inline-block;
    width: var(--bekaa-cursor-dot-size, var(--bekaa-button-dot-size, 4px));
    height: var(--bekaa-cursor-dot-size, var(--bekaa-button-dot-size, 4px));
    margin-left: 0.13em;
    border-radius: 999px;
    background: var(--bekaa-red, #ec1d25);
    opacity: 0;
    filter: blur(1px);
    transform: translate3d(-0.16em, 1px, 0) scale(0.2);
    transform-origin: center;
    vertical-align: baseline;
    transition:
      opacity 0.24s var(--bekaa-motion-ease, cubic-bezier(0.22, 1, 0.36, 1)) 0.06s,
      transform 0.42s var(--bekaa-motion-ease, cubic-bezier(0.22, 1, 0.36, 1)) 0.03s,
      filter 0.34s var(--bekaa-motion-ease, cubic-bezier(0.22, 1, 0.36, 1)) 0.03s;
  }

  .mk-main-navigation .sub-menu a.menu-item-link:hover::after,
  .mk-main-navigation .sub-menu a.menu-item-link:focus-visible::after {
    opacity: 1;
    filter: blur(0);
    transform: translate3d(0, 1px, 0) scale(1);
  }

  :is(#menu-item-9996, #menu-item-20343) .bekaa-adventures-accordion {
    display: block;
    width: 100%;
    margin-top: 12px;
    padding-right: 14px;
  }

  :is(#menu-item-9996, #menu-item-20343) .bekaa-adventures-accordion::before {
    content: "";
    display: block;
    width: 100%;
    border-top: 1px solid rgba(15, 23, 42, 0.1);
  }

  :is(#menu-item-9996, #menu-item-20343) .bekaa-adventures-accordion__item {
    display: block;
    width: 100%;
    margin: 0;
  }

  :is(#menu-item-9996, #menu-item-20343) .bekaa-adventures-accordion__button {
    appearance: none;
    position: relative;
    display: flex;
    align-items: center;
    box-sizing: border-box;
    width: 100%;
    min-height: 42px;
    margin: 0;
    padding: 12px 32px 12px 15px;
    border: 0;
    border-bottom: 1px solid rgba(15, 23, 42, 0.1);
    border-left: 2px solid transparent;
    border-radius: 0;
    background: transparent;
    color: #333333;
    cursor: pointer;
    font-family: var(--bekaa-system-font, -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1px;
    line-height: 18px;
    text-align: left;
    text-transform: uppercase;
    transition: color 0.18s ease, background-color 0.18s ease, border-color 0.18s ease;
  }

  :is(#menu-item-9996, #menu-item-20343) .bekaa-adventures-accordion__button::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 15px;
    width: 7px;
    height: 7px;
    border-right: 1.5px solid currentColor;
    border-bottom: 1.5px solid currentColor;
    transform: translateY(-70%) rotate(45deg);
    transition: transform 0.18s ease;
  }

  :is(#menu-item-9996, #menu-item-20343) .bekaa-adventures-accordion__button:hover {
    background: rgba(15, 23, 42, 0.025);
    color: #111827;
  }

  :is(#menu-item-9996, #menu-item-20343) .bekaa-adventures-accordion__button[aria-expanded="true"] {
    border-left-color: var(--bekaa-red, #ec1d25);
    background: rgba(236, 29, 37, 0.055);
    color: var(--bekaa-red, #ec1d25);
  }

  :is(#menu-item-9996, #menu-item-20343) .bekaa-adventures-accordion__button[aria-expanded="true"]::after {
    transform: translateY(-25%) rotate(-135deg);
  }

  :is(#menu-item-9996, #menu-item-20343) .bekaa-adventures-accordion__button:focus-visible {
    outline: 2px solid var(--bekaa-red, #ec1d25);
    outline-offset: -2px;
  }

  :is(#menu-item-9996, #menu-item-20343) .bekaa-adventures-accordion__panel {
    display: block;
    width: 100%;
  }

  :is(#menu-item-9996, #menu-item-20343) .bekaa-adventures-accordion__panel[hidden] {
    display: none !important;
  }

  :is(#menu-item-9996, #menu-item-20343) .bekaa-adventures-accordion__link {
    box-sizing: border-box;
    display: block;
    width: 100%;
    padding: 12px 15px 12px 30px;
    border-bottom: 1px solid rgba(15, 23, 42, 0.08);
    color: #333333;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 13px;
    font-weight: 400;
    letter-spacing: 1px;
    line-height: 18px;
    text-align: left;
    text-decoration: none;
    text-transform: uppercase;
  }

  .mk-main-navigation .has-mega-menu .mk-custom-box.mk-animate-element,
  .mk-main-navigation .has-mega-menu .mk-custom-box.bekaa-megamenu-static,
  .mk-main-navigation .has-mega-menu .widget.mk-in-viewport,
  .mk-main-navigation .has-mega-menu .widget_text.mk-in-viewport,
  .mk-main-navigation .has-mega-menu .bekaa-megamenu-widget {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    animation: none !important;
  }

  .mk-main-navigation .has-mega-menu .mk-custom-box .box-holder {
    background:
      linear-gradient(180deg, rgba(39, 41, 46, 0.96) 0%, rgba(24, 26, 30, 0.98) 100%) !important;
  }

  .mk-main-navigation .has-mega-menu .bekaa-megamenu-card-has-picture .box-holder {
    overflow: hidden;
    isolation: isolate;
  }

  .mk-main-navigation .has-mega-menu .click-custom-box-holder .bekaa-megamenu-media::after {
    content: "";
    position: absolute;
    z-index: 1;
    top: -1px;
    bottom: -1px;
    left: -48%;
    width: 68%;
    pointer-events: none;
    opacity: 0;
    transform: translate3d(0, 0, 0);
    background: linear-gradient(113deg, transparent 26%, rgba(255, 255, 255, 0.46) 47%, transparent 68%);
  }

  .mk-main-navigation .has-mega-menu .click-custom-box-holder.bekaa-card-loading .bekaa-megamenu-media::after {
    animation: bekaa-card-sheen-pass 0.82s cubic-bezier(0.22, 1, 0.36, 1) forwards;
  }

  @media (prefers-reduced-motion: reduce) {
    .mk-main-navigation .has-mega-menu .click-custom-box-holder .bekaa-megamenu-media::after {
      animation: none !important;
    }
  }

  .mk-main-navigation .has-mega-menu .bekaa-megamenu-card-has-picture .box-holder::after {
    content: none !important;
    background-image: none !important;
  }

  .mk-main-navigation .has-mega-menu .bekaa-megamenu-media {
    position: absolute;
    z-index: 0;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    pointer-events: none;
  }

  .mk-main-navigation .has-mega-menu .bekaa-megamenu-media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    filter: brightness(0.5);
    transform: scale(1);
    transition:
      filter 0.6s ease,
      transform 0.6s cubic-bezier(.25,.46,.45,.94);
  }

  .mk-main-navigation .has-mega-menu .bekaa-megamenu-card-has-picture:hover .bekaa-megamenu-media img,
  .mk-main-navigation .has-mega-menu .bekaa-megamenu-card-has-picture:focus-within .bekaa-megamenu-media img {
    transform: scale(1.05);
  }

  .has-mega-menu .mk-custom-box .box-holder::after {
    opacity: 1;
    transition:
      opacity 0.34s ease,
      filter 0.6s ease,
      transform 0.6s cubic-bezier(.25,.46,.45,.94) !important;
  }
}

/* =========================================
   MOBILE HERO / USP OVERLAP TUNING
   Avoid CTA collision with the overlapping USP gradient
   without changing cross-section stacking order.

   Guardrail:
   This is only the mobile CTA-clearance companion layer. The authoritative
   desktop seam/overlap system still lives in custom.css, and we already know
   this area is cascade-order-sensitive. Do not "clean up" or merge these
   rules without side-by-side visual verification.
   ========================================= */
@media only screen and (max-width: 767px) {
  .mk-page-section.bekaa-hero .bekaa-hero-vogue-text,
  .mk-page-section.bekaa-hero:has(.bekaa-hero-vogue-text) .mk-button-container {
    translate: 0 var(--bekaa-booking-offset, 0px);
  }

  /* Lift hero CTA block slightly on mobile (global product heroes). */
  .mk-page-section.bekaa-hero .mk-padding-divider.jupiter-donut-visible-sm {
    height: 150px !important;
  }

  /* Make the inner hero row fill the section on mobile so viewport-width
   * descendants cannot widen the shrink-to-fit flex item in WebKit. */
  .mk-page-section.bekaa-hero .page-section-content {
    width: 100% !important;
    max-width: none !important;
  }

  /* Restore the stronger top/bottom split on the homepage hero only. */
  body.page-id-5 .mk-page-section.bekaa-hero {
    align-items: stretch !important;
  }

  body.page-id-5 .mk-page-section.bekaa-hero .page-section-content,
  body.page-id-5 .mk-page-section.bekaa-hero .mk-padding-wrapper,
  body.page-id-5 .mk-page-section.bekaa-hero .column_container.jupiter-donut-height-full {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
  }

  body.page-id-5 .mk-page-section.bekaa-hero .page-section-content {
    position: absolute !important;
    inset: 0 !important;
    min-height: 100% !important;
    padding: 0 !important;
  }

  body.page-id-5 .mk-page-section.bekaa-hero .mk-padding-wrapper,
  body.page-id-5 .mk-page-section.bekaa-hero .column_container.jupiter-donut-height-full {
    flex: 1 1 auto !important;
    min-height: 100% !important;
  }

  body.page-id-5 .mk-page-section.bekaa-hero .column_container.jupiter-donut-height-full {
    justify-content: flex-start !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  body.page-id-5 .mk-page-section.bekaa-hero .bekaa-hero-heading {
    position: absolute !important;
    top: 94px !important;
    left: 50% !important;
    width: min(282px, calc(100% - 40px)) !important;
    margin: 0 !important;
    transform: translateX(-50%) !important;
  }

  body.page-id-5 .mk-page-section.bekaa-hero .hero-red-line {
    position: absolute !important;
    top: 204px !important;
    left: 50% !important;
    width: 140px !important;
    margin: 0 !important;
    padding: 0 0 18px !important;
    transform: translateX(-50%) !important;
  }

  body.page-id-5 .mk-page-section.bekaa-hero .mk-padding-divider.jupiter-donut-visible-sm {
    display: none !important;
  }

  body.page-id-5 .mk-page-section.bekaa-hero .mk-button-container:not(.ghost-btn) {
    position: absolute !important;
    right: 0 !important;
    bottom: 145px !important;
    left: 0 !important;
    width: 100% !important;
    margin: 0 !important;
    text-align: center !important;
  }

  body.page-id-5 .mk-page-section.bekaa-hero .mk-button-container.ghost-btn {
    position: absolute !important;
    right: 0 !important;
    bottom: 85px !important;
    left: 0 !important;
    width: 100% !important;
    margin: 0 !important;
    text-align: center !important;
  }

  .mk-page-section.bekaa-hero .mk-button-container {
    position: relative !important;
    z-index: 24 !important;
    isolation: isolate;
  }

  .mk-page-section.bekaa-hero .mk-button-container .mk-button {
    position: relative !important;
    z-index: 25 !important;
  }

  /* Scenic mobile polish:
   * lift the review copy above the marquee in the hierarchy and make the
   * price suffix read more like a unit label than a second heading. */
  body:not(.bekaa-charter-planner-page):where(:not(.bekaa-charter-landing-prototype-page)) .bh-vogue-review-text:not(:where([data-bekaa-charter-scope], [data-bekaa-charter-scope] *)) {
    font-size: var(--bekaa-type-eyebrow, 12px) !important;
    line-height: 1.1 !important;
    letter-spacing: 1.7px !important;
  }

  body:not(.bekaa-charter-planner-page):where(:not(.bekaa-charter-landing-prototype-page)) .bekaa-hero-heading-eyebrow:not(:where([data-bekaa-charter-scope], [data-bekaa-charter-scope] *)) {
    font-size: var(--bekaa-fs-eyebrow-large, 12px) !important;
    line-height: 1.22 !important;
    letter-spacing: 0.16em !important;
  }

  body:not(.bekaa-charter-planner-page):where(:not(.bekaa-charter-landing-prototype-page)) .bh-vogue-pp:not(:where([data-bekaa-charter-scope], [data-bekaa-charter-scope] *)) {
    font-size: 24px !important;
    line-height: 24px !important;
  }

  /* Keep the signature overlap, but lower the seam so it clears the CTA row. */
  .mk-page-section.bekaa-usp-section {
    margin-top: -80px !important;
    padding-top: 130px !important;
    -webkit-mask-image: linear-gradient(to bottom, transparent 0%, black 80px) !important;
    mask-image: linear-gradient(to bottom, transparent 0%, black 80px) !important;
  }
}

/* =========================================
   USP / Concierge Surface Polish
   Bring the slower soft sheen language from the carousel cards into the
   static value and concierge modules without turning them into clickable cards.
   ========================================= */
.bekaa-concierge-note {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  transition:
    opacity 0.56s cubic-bezier(0.22, 1, 0.36, 1),
    transform 0.82s cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 0.46s cubic-bezier(0.22, 1, 0.36, 1),
    border-color 0.46s ease,
    background-color 0.46s ease !important;
}

.bekaa-concierge-note::before,
.bekaa-concierge-note::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
}

.bekaa-concierge-note::before {
  z-index: 0;
  opacity: 0;
  background:
    radial-gradient(circle at top right, rgba(255, 255, 255, 0.52) 0%, rgba(255, 255, 255, 0) 36%),
    radial-gradient(circle at bottom left, rgba(236, 29, 37, 0.055) 0%, rgba(236, 29, 37, 0) 42%);
  transition: opacity 0.6s ease;
}

.bekaa-concierge-note::after {
  z-index: 1;
  top: -1px;
  bottom: -1px;
  left: -52%;
  width: 72%;
  opacity: 0;
  transform: translate3d(0, 0, 0);
  background:
    linear-gradient(113deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 26%, rgba(255, 255, 255, 0.08) 37%, rgba(255, 255, 255, 0.42) 49%, rgba(255, 255, 255, 0.12) 57%, rgba(255, 255, 255, 0) 68%, rgba(255, 255, 255, 0) 100%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.02) 0%, rgba(236, 29, 37, 0.04) 100%);
  transition:
    opacity 0.24s ease,
    transform 1.12s cubic-bezier(0.22, 1, 0.36, 1);
}

.bekaa-concierge-note > * {
  position: relative;
  z-index: 2;
}

@media (hover: hover) and (pointer: fine) {
  .bekaa-concierge-note:hover,
  .bekaa-concierge-note:focus-within {
    transform: translate3d(0, -4px, 0);
    border-color: rgba(222, 164, 168, 0.72);
    box-shadow: 0 18px 38px rgba(16, 14, 12, 0.08), 0 4px 12px rgba(16, 14, 12, 0.04);
  }

  .bekaa-concierge-note:hover::before,
  .bekaa-concierge-note:focus-within::before {
    opacity: 1;
  }

  .bekaa-concierge-note:hover::after,
  .bekaa-concierge-note:focus-within::after {
    opacity: 0.92;
    transform: translate3d(214%, 0, 0);
  }
}

@media (prefers-reduced-motion: reduce) {
  .bekaa-concierge-note,
  .bekaa-concierge-note::before,
  .bekaa-concierge-note::after {
    transition: none !important;
  }
}

/* =========================================
   Similar Experiences
   Shared premium tour-card treatment

   Note:
   Matching fallback rules still exist in custom.css on purpose. The child
   theme copy is the preferred home, but the fallback remains active until the
   final cascade order is proven stable on live pages.
   ========================================= */
.bekaa-smart-grid > div {
  display: flex;
}

.bekaa-smart-grid .tour-card {
  width: 100%;
  margin-bottom: 0;
  background: linear-gradient(180deg, #ffffff 0%, #fcfbfa 100%);
  border-color: #ebe5df;
  border-radius: 4px;
  box-shadow: 0 10px 24px rgba(18, 21, 26, 0.06), 0 1px 2px rgba(18, 21, 26, 0.04);
}

.bekaa-smart-grid .tour-image {
  height: 210px;
  overflow: hidden;
  transition: transform 0.8s cubic-bezier(0.2, 0.7, 0.2, 1);
}

.tour-card .tour-image {
  position: relative;
  background-color: #f3efe9;
}

.tour-card .tour-image > picture {
  display: block;
  width: 100%;
  height: 100%;
}

.tour-card .tour-image > img,
.tour-card .tour-image > picture > img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.bekaa-similar-experiences-grid .tour-image {
  position: relative;
  background-color: #f3efe9;
}

.bekaa-smart-grid .tour-image::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(10, 10, 10, 0.34) 0%, rgba(10, 10, 10, 0) 52%);
  opacity: 0.75;
  transition: opacity 0.45s ease;
}

.bekaa-smart-grid.bekaa-similar-experiences-grid {
  --bekaa-similar-gutter: var(--bekaa-page-gutter, clamp(56px, 5vw, 96px));
  --bekaa-smart-grid-mobile-gutter-left: max(35px, env(safe-area-inset-left));
  --bekaa-smart-grid-mobile-gutter-right: max(35px, env(safe-area-inset-right));
  --bekaa-similar-cloud-bleed: 64px;
  --bekaa-similar-cloud-lift: clamp(82px, 20%, 104px);
  --bekaa-similar-content-pad: clamp(14px, 4%, 22px);
  --bekaa-similar-content-seam-blend: clamp(18px, 5%, 30px);
  --bekaa-similar-text-lift: clamp(16px, 5%, 26px);
  --bekaa-similar-cloud-height: clamp(206px, 46%, 270px);
  --bekaa-similar-cloud-seam-fade: clamp(52px, 13%, 70px);
  --bekaa-similar-cloud-white: #fdfdfd;
  --bekaa-similar-cloud-offset: 50%;
}

@supports selector(.mk-page-section:has(.bekaa-smart-grid.bekaa-similar-experiences-grid)) {
  @media (min-width: 768px) {
    .mk-page-section:has(.bekaa-smart-grid.bekaa-similar-experiences-grid) .page-section-content,
    .mk-page-section:has(.bekaa-smart-grid.bekaa-similar-experiences-grid) .mk-grid,
    .mk-page-section:has(.bekaa-smart-grid.bekaa-similar-experiences-grid) .mk-padding-wrapper {
      width: calc(100vw - (var(--bekaa-page-gutter, clamp(56px, 5vw, 96px)) * 2)) !important;
      max-width: none !important;
      padding-left: 0 !important;
      padding-right: 0 !important;
    }

    .mk-page-section:has(.bekaa-smart-grid.bekaa-similar-experiences-grid) .vc_row,
    .mk-page-section:has(.bekaa-smart-grid.bekaa-similar-experiences-grid) .wpb_column.column_container,
    .mk-page-section:has(.bekaa-smart-grid.bekaa-similar-experiences-grid) .vc_column_container > .vc_column-inner {
      padding-left: 0 !important;
      padding-right: 0 !important;
      margin-left: 0 !important;
      margin-right: 0 !important;
    }
  }
}

@media only screen and (min-width: 1280px) and (prefers-reduced-motion: reduce) {
  .mk-main-navigation .sub-menu a.menu-item-link::after {
    transition: none !important;
  }
}

.bekaa-smart-grid.bekaa-similar-experiences-grid .tour-card {
  background: linear-gradient(
    to bottom,
    rgba(255, 255, 255, 0) 0,
    var(--bekaa-similar-cloud-white) var(--bekaa-similar-content-seam-blend),
    var(--bekaa-similar-cloud-white) 100%
  );
  overflow: hidden;
}

.bekaa-smart-grid.bekaa-similar-experiences-grid .tour-image {
  height: clamp(348px, 26vw, 420px) !important;
  isolation: isolate;
}

.bekaa-smart-grid.bekaa-similar-experiences-grid .tour-image::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: var(--bekaa-similar-cloud-seam-fade);
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(to top, var(--bekaa-similar-cloud-white) 0%, rgba(255, 255, 255, 0) 100%);
}

.bekaa-smart-grid.bekaa-similar-experiences-grid .tour-image::after {
	content: "";
  position: absolute;
  top: auto;
  left: calc(var(--bekaa-similar-cloud-bleed) * -1);
  right: calc(var(--bekaa-similar-cloud-bleed) * -1);
  bottom: -1px;
  height: var(--bekaa-similar-cloud-height);
	pointer-events: none;
	z-index: 2;
	transition: transform 0.8s cubic-bezier(0.2, 0.7, 0.2, 1);
	background: url("../img/similar-experiences-cloud-foreground.webp") var(--bekaa-similar-cloud-offset) 100% / 100% 100% no-repeat;
	opacity: 1;
}

.bekaa-smart-grid.bekaa-similar-experiences-grid .tour-content {
  position: relative;
  z-index: 3;
  flex: 1 1 auto;
  margin-top: calc(var(--bekaa-similar-cloud-lift) * -1);
  padding-top: var(--bekaa-similar-content-pad);
  background: var(--bekaa-similar-cloud-white);
}

.bekaa-smart-grid.bekaa-similar-experiences-grid .tour-content::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: -28px;
  height: 28px;
  pointer-events: none;
  z-index: 0;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0), var(--bekaa-similar-cloud-white));
}

.bekaa-smart-grid.bekaa-similar-experiences-grid .tour-content > * {
  position: relative;
  z-index: 1;
}

.bekaa-smart-grid.bekaa-similar-experiences-grid .tour-header {
  margin-top: calc(var(--bekaa-similar-text-lift) * -1);
}

.bekaa-smart-grid.bekaa-similar-experiences-grid > div:nth-child(3n + 1) {
  --bekaa-similar-cloud-offset: 44%;
}

.bekaa-smart-grid.bekaa-similar-experiences-grid > div:nth-child(3n + 2) {
  --bekaa-similar-cloud-offset: 58%;
}

.bekaa-smart-grid.bekaa-similar-experiences-grid > div:nth-child(3n) {
  --bekaa-similar-cloud-offset: 50%;
}

@media only screen and (min-width: 1080px) and (hover: hover) and (pointer: fine) {
  .bekaa-sticky-booktour-host {
    z-index: 298 !important;
  }

  #mk-boxed-layout:has(.bekaa-rail-controls),
  #mk-boxed-layout:has(.fleet-arrow),
  #mk-boxed-layout:has(.bekaa-smart-grid .tour-card),
  #mk-boxed-layout:has(.bekaa-inline-review-card),
  #mk-boxed-layout:has(.fleet-card),
  #mk-theme-container:has(.bekaa-rail-controls),
  #mk-theme-container:has(.fleet-arrow),
  #mk-theme-container:has(.bekaa-smart-grid .tour-card),
  #mk-theme-container:has(.bekaa-inline-review-card),
  #mk-theme-container:has(.fleet-card),
  .master-holder:has(.bekaa-rail-controls),
  .master-holder:has(.fleet-arrow),
  .master-holder:has(.bekaa-smart-grid .tour-card),
  .master-holder:has(.bekaa-inline-review-card),
  .master-holder:has(.fleet-card),
  .mk-page-section:has(.bekaa-rail-controls),
  .mk-page-section:has(.fleet-arrow),
  .mk-page-section:has(.bekaa-smart-grid .tour-card),
  .mk-page-section:has(.bekaa-inline-review-card),
  .mk-page-section:has(.fleet-card),
  .mk-page-section-wrapper:has(.bekaa-smart-grid.bekaa-similar-experiences-grid),
  .mk-page-section:has(.bekaa-rail-controls) .page-section-content,
  .mk-page-section:has(.fleet-arrow) .page-section-content,
  .mk-page-section:has(.bekaa-smart-grid .tour-card) .page-section-content,
  .mk-page-section:has(.bekaa-inline-review-card) .page-section-content,
  .mk-page-section:has(.fleet-card) .page-section-content {
    z-index: auto !important;
  }

  .bekaa-rail-host {
    isolation: auto !important;
  }

  .bekaa-inline-carousel {
    z-index: auto !important;
  }

  .bekaa-rail-host .bekaa-rail-controls,
  .bekaa-inline-carousel .bekaa-rail-controls,
  .bekaa-rail-host .bekaa-rail-nav,
  .bekaa-inline-carousel .bekaa-rail-nav,
  .bekaa-product-fleet .fleet-arrow {
    z-index: 300 !important;
  }

  .bekaa-smart-grid.bekaa-similar-experiences-grid,
  .bekaa-smart-grid.bekaa-similar-experiences-grid > div,
  .bekaa-smart-grid .tour-card,
  .bekaa-itinerary-scrub__container,
  .bekaa-product-fleet .fleet-frame,
  .bekaa-product-fleet .fleet-scroll,
  .bekaa-product-fleet .fleet-rail,
  .bekaa-product-fleet .fleet-card {
    position: relative;
    z-index: 299 !important;
  }
}

@media (hover: hover) and (pointer: fine) {
  .bekaa-smart-grid .tour-card:hover {
    transform: translateY(-6px) !important;
    border-color: rgba(176, 22, 30, 0.24) !important;
    box-shadow: 0 20px 42px rgba(18, 21, 26, 0.12), 0 4px 10px rgba(18, 21, 26, 0.06) !important;
  }

  .bekaa-smart-grid .tour-card:hover .tour-image {
    transform: scale(1.035);
  }

  .bekaa-smart-grid .tour-card:hover .tour-image::after {
    opacity: 0.92;
  }

  .bekaa-smart-grid.bekaa-similar-experiences-grid .tour-card:hover .tour-image::after {
    opacity: 1;
    animation-play-state: running;
    will-change: transform;
  }

  .bekaa-smart-grid.bekaa-similar-experiences-grid .tour-image::after {
    animation: bekaa-card-cloud-hover 5.8s ease-in-out infinite alternate;
    animation-play-state: paused;
  }
}

@keyframes bekaa-card-cloud-hover {
  from {
    transform: translate3d(-13px, -5px, 0) scale(1.012);
  }

  to {
    transform: translate3d(18px, 11px, 0) scale(1.026);
  }
}

@media (prefers-reduced-motion: reduce) {
  .bekaa-smart-grid.bekaa-similar-experiences-grid .tour-card:hover .tour-image::after,
  body.page-id-858 .bekaa-full-range-section .tour-card:hover .tour-image::after {
    animation: none !important;
    transform: none !important;
    will-change: auto !important;
  }
}

.bekaa-smart-grid .tour-content {
  padding: 24px 22px 22px;
}

.bekaa-smart-grid .tour-title {
  font-size: 19px !important;
  line-height: 1.28 !important;
  letter-spacing: 0.15px;
  color: #171717 !important;
}

.bekaa-smart-grid .tour-meta {
  border-bottom-color: #ede9e5;
}

.bekaa-smart-grid .tour-tag {
  background: #f6f2ee;
  border: 1px solid #ede5de;
  color: #5e554e;
  letter-spacing: 0.65px;
}

.bekaa-smart-grid .tour-duration {
  background: #fff4f4;
  border-color: #ffd9dc;
  color: #b9171d;
}

.bekaa-smart-grid .tour-desc {
  color: #5c5651;
  line-height: 1.65;
}

.bekaa-smart-grid .btn-card {
  border-radius: 2px;
  font-size: 11px;
  letter-spacing: 1px;
  text-transform: uppercase;
  font-weight: 700;
  padding: 11px 0;
}

.bekaa-smart-grid .btn-book {
  border-color: #ccc5bf;
  color: #181818 !important;
  background: linear-gradient(180deg, #ffffff 0%, #fbf9f7 100%);
}

.bekaa-smart-grid .btn-book:hover {
  background: #111;
  border-color: #111;
  color: #fff !important;
}

@media (max-width: 767px) {
  .bekaa-smart-grid .tour-card {
    margin-bottom: 0;
  }

  .bekaa-smart-grid .tour-image {
    height: 160px;
  }

  .bekaa-smart-grid.bekaa-similar-experiences-grid {
    --bekaa-similar-cloud-lift: clamp(62px, 18%, 82px);
    --bekaa-similar-content-pad: clamp(12px, 4%, 18px);
    --bekaa-similar-content-seam-blend: clamp(14px, 5%, 22px);
    --bekaa-similar-text-lift: clamp(12px, 4%, 20px);
    --bekaa-similar-cloud-height: clamp(176px, 45%, 220px);
    --bekaa-similar-cloud-seam-fade: clamp(44px, 14%, 60px);
  }

  .bekaa-smart-grid.bekaa-similar-experiences-grid .tour-image {
    height: clamp(314px, 82vw, 362px) !important;
  }

  .bekaa-smart-grid.bekaa-similar-experiences-grid .tour-image::after {
    background-size: 100% 100%;
  }

  .bekaa-smart-grid.bekaa-similar-experiences-grid .tour-content {
    margin-top: calc(var(--bekaa-similar-cloud-lift) * -1);
    padding-top: var(--bekaa-similar-content-pad) !important;
  }

  .bekaa-smart-grid .tour-content {
    padding: 14px 14px 13px;
  }

  .bekaa-smart-grid .tour-header {
    margin-bottom: 10px;
    gap: 8px;
  }

  .bekaa-smart-grid .tour-title {
    font-size: 16px !important;
    min-height: 0;
    -webkit-line-clamp: 2;
  }

  .bekaa-smart-grid .tour-meta {
    height: auto;
    margin-bottom: 11px;
    padding-bottom: 10px;
    gap: 7px;
    flex-wrap: wrap;
  }

  .bekaa-smart-grid .tour-tag,
  .bekaa-smart-grid .tour-duration {
    padding: 4px 8px;
    font-size: var(--bekaa-type-micro, 9px);
    letter-spacing: 0.4px;
  }

  .bekaa-smart-grid .tour-desc {
    min-height: 0;
    max-height: none;
    -webkit-line-clamp: 2;
    margin-bottom: 14px;
    font-size: var(--bekaa-type-label, 13px);
    line-height: 1.5;
  }

  .bekaa-smart-grid .btn-card {
    padding: 9px 0;
    font-size: 10px;
  }
}

/* =========================================
   Scroll Reveal Foundation
   ========================================= */
.reveal-item {
  opacity: 1;
  transform: translateY(0);
  transition-property: opacity, transform;
  transition-duration: 0.56s, 0.82s;
  transition-timing-function: var(--bekaa-motion-ease, cubic-bezier(0.22, 1, 0.36, 1)), var(--bekaa-motion-ease, cubic-bezier(0.22, 1, 0.36, 1));
}

html.bekaa-anim-js .reveal-item {
  opacity: 0;
  transform: translate3d(0, var(--bekaa-motion-shift-md, 18px), 0);
}

html.bekaa-anim-js .reveal-item.is-visible,
html.bekaa-anim-js .reveal-item.bekaa-reveal-done {
  opacity: 1;
  transform: translateY(0);
}

@media (max-width: 767px) {
  html.bekaa-anim-js .reveal-item {
    transform: translate3d(0, var(--bekaa-motion-shift-sm, 10px), 0);
  }

  .reveal-item {
    transition-duration: 0.44s, 0.78s;
  }

  .tour-card.reveal-item,
  html.bekaa-anim-js .tour-card.reveal-item,
  html.bekaa-anim-js .tour-card.reveal-item.is-visible,
  html.bekaa-anim-js .tour-card.reveal-item.bekaa-reveal-done {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
    transition-delay: 0s !important;
    will-change: auto !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .reveal-item,
  html.bekaa-anim-js .reveal-item,
  html.bekaa-anim-js .reveal-item.is-visible,
  html.bekaa-anim-js .reveal-item.bekaa-reveal-done {
    transition: none !important;
    transform: none !important;
    opacity: 1 !important;
  }
}

/* =========================================
   FAQ UI
   Structural alignment + premium accordion finish
   ========================================= */
.bekaa-section-heading {
  --bekaa-section-heading-color: #020202;
  --bekaa-section-heading-align: left;
  --bekaa-section-heading-kicker-gap: 28px;
  margin: 0;
  color: var(--bekaa-section-heading-color);
  text-align: var(--bekaa-section-heading-align);
}

.bekaa-section-heading--dark {
  --bekaa-section-heading-color: #ffffff;
}

.bekaa-section-heading--center {
  --bekaa-section-heading-align: center;
}

.bekaa-section-heading__kicker {
  display: block;
  margin: 0 0 var(--bekaa-section-heading-kicker-gap);
  color: var(--bekaa-section-heading-color);
  font-family: var(--bekaa-system-font, -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif);
  font-size: var(--bekaa-fs-eyebrow-large, 12px);
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: var(--bekaa-tracking-eyebrow, 0.18em);
  text-align: var(--bekaa-section-heading-align);
  text-transform: uppercase;
}

.bekaa-section-heading__title {
  margin: 0;
  color: var(--bekaa-section-heading-color);
  font-family: var(--bekaa-display, "Gilda Display", Georgia, "Times New Roman", serif);
  font-weight: 300;
  line-height: var(--bekaa-lh-section-display, 0.94);
  letter-spacing: 0;
  text-align: var(--bekaa-section-heading-align);
  text-transform: none;
}

.bekaa-section-heading__line {
  display: block;
  margin: 0;
  color: var(--bekaa-section-heading-color);
  font-family: inherit;
  font-size: var(--bekaa-fs-section-display-top, 40px);
  font-style: normal;
  font-weight: 300;
  line-height: var(--bekaa-lh-section-display, 0.94);
  letter-spacing: 0;
  text-align: var(--bekaa-section-heading-align);
  text-transform: none;
}

.bekaa-section-heading__line--accent {
  font-size: var(--bekaa-fs-section-display-accent, 50px);
  font-style: italic;
  font-weight: 500;
}

/* Keep the normal-page composition with this component while the base values
   remain available as charter planner and charter landing fallbacks. */
:where(body:not(.bekaa-charter-planner-page):not(.bekaa-charter-landing-prototype-page)) .bekaa-section-heading__line {
  font-size: 2.5rem;
}

:where(body:not(.bekaa-charter-planner-page):not(.bekaa-charter-landing-prototype-page)) .bekaa-section-heading__line--accent {
  font-size: 3.125rem;
}

.bekaa-section-heading__dot,
.bekaa-heading-dot {
  color: #ec1d25;
  font-style: normal;
}

.bekaa-similar-heading {
  margin-bottom: clamp(44px, 4vw, 56px);
}

html.bekaa-anim-js .bekaa-faq-heading.reveal-item,
html.bekaa-anim-js .bekaa-similar-heading.reveal-item {
  opacity: 0;
  filter: blur(3px);
  transform: translate3d(0, 20px, 0);
  transition:
    opacity 1120ms cubic-bezier(0.16, 1, 0.3, 1),
    filter 1180ms cubic-bezier(0.16, 1, 0.3, 1),
    transform 1280ms cubic-bezier(0.16, 1, 0.3, 1);
  will-change: opacity, filter, transform;
}

html.bekaa-anim-js .bekaa-faq-heading.reveal-item.is-visible,
html.bekaa-anim-js .bekaa-faq-heading.reveal-item.bekaa-reveal-done,
html.bekaa-anim-js .bekaa-similar-heading.reveal-item.is-visible,
html.bekaa-anim-js .bekaa-similar-heading.reveal-item.bekaa-reveal-done {
  opacity: 1;
  filter: blur(0);
  transform: translate3d(0, 0, 0);
}

html.bekaa-anim-js .bekaa-faq-heading.reveal-item.bekaa-reveal-done,
html.bekaa-anim-js .bekaa-similar-heading.reveal-item.bekaa-reveal-done {
  will-change: auto;
}

@media (max-width: 767px) {
  .bekaa-section-heading {
    --bekaa-section-heading-kicker-gap: 24px;
  }

  :where(body:not(.bekaa-charter-planner-page):not(.bekaa-charter-landing-prototype-page)) .bekaa-section-heading__line {
    font-size: 2.0625rem;
  }

  :where(body:not(.bekaa-charter-planner-page):not(.bekaa-charter-landing-prototype-page)) .bekaa-section-heading__line--accent {
    font-size: 2.5rem;
  }

  .bekaa-similar-heading {
    margin-bottom: 40px;
  }

  html.bekaa-anim-js .bekaa-faq-heading.reveal-item,
  html.bekaa-anim-js .bekaa-similar-heading.reveal-item {
    filter: none;
    transform: translate3d(0, 10px, 0);
    transition:
      opacity 460ms cubic-bezier(0.16, 1, 0.3, 1),
      transform 780ms cubic-bezier(0.16, 1, 0.3, 1);
    will-change: opacity, transform;
  }
}

@media (prefers-reduced-motion: reduce) {
  html.bekaa-anim-js .bekaa-faq-heading.reveal-item,
  html.bekaa-anim-js .bekaa-faq-heading.reveal-item.is-visible,
  html.bekaa-anim-js .bekaa-faq-heading.reveal-item.bekaa-reveal-done,
  html.bekaa-anim-js .bekaa-similar-heading.reveal-item,
  html.bekaa-anim-js .bekaa-similar-heading.reveal-item.is-visible,
  html.bekaa-anim-js .bekaa-similar-heading.reveal-item.bekaa-reveal-done {
    opacity: 1;
    filter: none;
    transform: none;
    transition: none;
    will-change: auto;
  }
}

.bekaa-faq-wrap {
  --bekaa-faq-gutter: var(--bekaa-page-gutter, clamp(56px, 5vw, 96px));
  --bekaa-faq-mobile-gutter: 35px;
  --bekaa-faq-max: 1120px;
  --bekaa-faq-rail: clamp(240px, 18vw, 320px);
  --bekaa-faq-gap: clamp(48px, 5vw, 88px);
}

.bekaa-faq-wrap .page-section-content,
.bekaa-faq-wrap .mk-grid,
.bekaa-faq-wrap .mk-padding-wrapper {
  width: calc(100vw - (var(--bekaa-faq-gutter) * 2)) !important;
  max-width: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.bekaa-faq-wrap .mk-padding-wrapper > .wpb_column {
  display: grid;
  grid-template-columns: minmax(0, var(--bekaa-faq-rail)) minmax(0, var(--bekaa-faq-max));
  column-gap: var(--bekaa-faq-gap);
  align-items: start;
  justify-content: space-between;
  width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.bekaa-faq-wrap .mk-padding-wrapper > .wpb_column > style,
.bekaa-faq-wrap .mk-padding-wrapper > .wpb_column > .clearboth {
  display: none !important;
}

.bekaa-faq-wrap .mk-padding-wrapper > .wpb_column > .bekaa-section-heading,
.bekaa-faq-wrap .mk-padding-wrapper > .wpb_column > .hero-red-line {
  grid-column: 1;
  width: 100% !important;
  text-align: left !important;
}

.bekaa-faq-wrap .mk-padding-wrapper > .wpb_column > .wpb_row.vc_inner {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 28px;
  grid-column: 2;
  grid-row: 1 / span 8;
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.bekaa-faq-wrap .mk-padding-wrapper > .wpb_column > .wpb_row.vc_inner::before,
.bekaa-faq-wrap .mk-padding-wrapper > .wpb_column > .wpb_row.vc_inner::after {
  display: none !important;
}

.bekaa-faq-wrap .mk-padding-wrapper > .wpb_column > .wpb_row.vc_inner > .wpb_column {
  float: none !important;
  width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.bekaa-faq-wrap .mk-padding-wrapper > .wpb_column > .wpb_row.vc_inner > .wpb_column > .vc_column-inner {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.bekaa-faq-wrap .mk-toggle-title {
  display: flex !important;
  align-items: center !important;
}

.bekaa-faq-wrap .mk-toggle-title > .mk-svg-icon {
  position: static !important;
  float: none !important;
  right: auto !important;
  left: auto !important;
  top: auto !important;
  transform: none !important;
  order: 2 !important;
  margin-left: auto !important;
}

.bekaa-faq-wrap .mk-toggle-title > span {
  order: 1 !important;
}

.bekaa-faq-wrap .mk-toggle-title:after {
  content: none !important;
  display: none !important;
  border: 0 !important;
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
}

.bekaa-faq-wrap .mk-toggle-title:before,
.bekaa-faq-wrap .mk-toggle-title > span:after {
  content: none !important;
  display: none !important;
}

.bekaa-faq-wrap .mk-toggle-title.active-toggle {
  box-shadow: inset 3px 0 0 #ec1d25;
  background: linear-gradient(90deg, rgba(236, 29, 37, 0.06), rgba(236, 29, 37, 0)) !important;
}

.mk-toggle.fancy-style {
  border-radius: 3px !important;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.02) !important;
  border: 1px solid rgba(0, 0, 0, 0.06) !important;
  margin-bottom: 20px !important;
  background: #fff !important;
  transition-property: opacity, transform, box-shadow;
  transition-duration: 1.2s, 1.2s, 0.4s;
  transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1), cubic-bezier(0.22, 1, 0.36, 1), ease;
}

@media (hover: hover) and (pointer: fine) {
  .mk-toggle.fancy-style:hover {
    transition-duration: 0.4s, 0.4s, 0.4s;
    transition-delay: 0s !important;
    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.08) !important;
  }
}

.mk-toggle.fancy-style .mk-toggle-title {
  display: flex !important;
  align-items: center !important;
  padding: 24px 28px !important;
  background: transparent !important;
  font-family: var(--bekaa-system-font, -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif) !important;
  font-weight: 600 !important;
  font-size: var(--bekaa-type-control, 16px) !important;
  line-height: 1.35 !important;
  color: #111 !important;
  letter-spacing: 0 !important;
  border: none !important;
}

.mk-toggle.fancy-style .mk-toggle-title svg.mk-svg-icon {
  order: 2 !important;
  margin-left: auto !important;
  margin-right: 0 !important;
  fill: #ec1d25 !important;
  transition: transform 0.3s ease !important;
  position: static !important;
}

.mk-toggle.fancy-style .mk-toggle-title span {
  order: 1 !important;
}

.mk-toggle.fancy-style .mk-toggle-title::after,
.mk-toggle.fancy-style .mk-toggle-title::before {
  display: none !important;
}

.mk-toggle.fancy-style .mk-toggle-title.active-toggle {
  box-shadow: inset 3px 0 0 #ec1d25 !important;
  background: #fcfaf7 !important;
}

.mk-toggle.fancy-style .mk-toggle-title.active-toggle svg.mk-svg-icon {
  transform: rotate(180deg) !important;
}

.mk-toggle.fancy-style .mk-toggle-pane {
  background: #fcfaf7 !important;
  box-shadow: inset 3px 0 0 #ec1d25 !important;
  transform: translateZ(0);
  backface-visibility: hidden;
  perspective: 1000px;
}

.mk-toggle.fancy-style .mk-toggle-pane > * {
  padding: 0 28px 28px 28px !important;
  margin: 0 !important;
  font-size: var(--bekaa-type-copy, 15px) !important;
  color: #555 !important;
  line-height: 1.7 !important;
  opacity: 0;
  transform: translateY(-10px);
  transition: opacity 0.3s ease, transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
}

.mk-toggle.fancy-style .mk-toggle-title.active-toggle + .mk-toggle-pane > * {
  opacity: 1;
  transform: translateY(0);
  transition-delay: 0.05s;
}

.bekaa-faq-wrap .mk-toggle.fancy-style {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(20, 12, 8, 0.045) !important;
  border-radius: 3px !important;
  background: #fff !important;
  box-shadow:
    0 16px 18px rgba(20, 12, 8, 0.08),
    0 1px 2px rgba(20, 12, 8, 0.03) !important;
}

.bekaa-faq-wrap .mk-toggle.fancy-style .mk-toggle-title.active-toggle {
  background: #fff !important;
  box-shadow: inset 2px 0 0 #ec1d25 !important;
}

.bekaa-faq-wrap .mk-toggle.fancy-style .mk-toggle-pane {
  background: #fff !important;
  box-shadow: inset 2px 0 0 #ec1d25 !important;
}

@media (max-width: 1180px) {
  .bekaa-faq-wrap .mk-padding-wrapper > .wpb_column {
    grid-template-columns: 1fr;
    row-gap: 42px;
  }

  .bekaa-faq-wrap .mk-padding-wrapper > .wpb_column > .wpb_row.vc_inner {
    grid-column: 1;
    grid-row: auto;
    max-width: var(--bekaa-faq-max);
  }
}

@media (max-width: 767px) {
  .bekaa-faq-wrap .mk-padding-wrapper > .wpb_column > .wpb_row.vc_inner {
    grid-template-columns: 1fr;
    row-gap: 0;
  }

  .bekaa-faq-wrap .page-section-content,
  .bekaa-faq-wrap .mk-grid,
  .bekaa-faq-wrap .mk-padding-wrapper {
    width: calc(100vw - (var(--bekaa-faq-mobile-gutter) * 2)) !important;
  }

  .mk-toggle.fancy-style {
    margin-bottom: 16px !important;
  }

  .mk-toggle.fancy-style .mk-toggle-title {
    padding: 22px 20px !important;
    font-size: var(--bekaa-type-copy, 15px) !important;
    font-weight: 600 !important;
    line-height: 1.35 !important;
  }

  .mk-toggle.fancy-style .mk-toggle-pane > * {
    padding: 0 20px 24px 20px !important;
  }
}

/* =========================================
   Tour Card Tap Feedback
   Matches extracted child-theme JS
   ========================================= */
.tour-card,
.bekaa-pack-card,
.bekaa-pack-card-scenic {
  --bekaa-pack-media-position: center;
  position: relative;
  isolation: isolate;
  cursor: pointer;
}

@media (max-width: 767px), (hover: none), (pointer: coarse) {
  .tour-card,
  .tour-card .tour-image,
  .tour-card .tour-image *,
  .tour-card::before,
  .tour-card::after,
  .bekaa-pack-card,
  .bekaa-pack-card .bekaa-pack-media,
  .bekaa-pack-card .bekaa-pack-media *,
  .bekaa-pack-card::before,
  .bekaa-pack-card::after,
  .bekaa-pack-card-scenic,
  .bekaa-pack-card-scenic .bekaa-pack-media,
  .bekaa-pack-card-scenic .bekaa-pack-media *,
  .bekaa-pack-card-scenic::before,
  .bekaa-pack-card-scenic::after {
    -webkit-tap-highlight-color: transparent;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    user-select: none;
  }

  .tour-card .tour-content,
  .tour-card .tour-content *,
  .bekaa-pack-card .bekaa-pack-content,
  .bekaa-pack-card .bekaa-pack-content *,
  .bekaa-pack-card-scenic .bekaa-pack-content,
  .bekaa-pack-card-scenic .bekaa-pack-content * {
    -webkit-touch-callout: default;
    -webkit-user-select: text;
    user-select: text;
  }

  .tour-card .tour-actions,
  .tour-card .tour-actions *,
  .bekaa-pack-card .bekaa-pack-cta,
  .bekaa-pack-card .bekaa-pack-cta *,
  .bekaa-pack-card .bekaa-pack-choose,
  .bekaa-pack-card .bekaa-pack-choose *,
  .bekaa-pack-card-scenic .bekaa-pack-cta,
  .bekaa-pack-card-scenic .bekaa-pack-cta *,
  .bekaa-pack-card-scenic .bekaa-pack-choose,
  .bekaa-pack-card-scenic .bekaa-pack-choose * {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    user-select: none;
  }
}

.bekaa-pack-media {
  display: block;
  overflow: hidden;
  position: relative;
}

.bekaa-pack-media__picture,
.bekaa-pack-media__image {
  display: block;
  height: 100%;
  inset: 0;
  max-width: none;
  position: absolute;
  width: 100%;
}

.bekaa-pack-media img.bekaa-pack-media__image {
  height: 100%;
  width: 100%;
}

.bekaa-pack-media__image {
  object-fit: cover;
  object-position: var(--bekaa-pack-media-position);
}

.tour-card::after,
.bekaa-pack-card::after,
.bekaa-pack-card-scenic::after {
  content: "";
  position: absolute;
  top: -1px;
  bottom: -1px;
  left: -48%;
  width: 68%;
  z-index: 30;
  border-radius: inherit;
  pointer-events: none;
  opacity: 0;
  transform: translate3d(0, 0, 0);
  background:
    linear-gradient(113deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 26%, rgba(255, 255, 255, 0.10) 36%, rgba(255, 255, 255, 0.46) 47%, rgba(255, 255, 255, 0.12) 56%, rgba(255, 255, 255, 0) 68%, rgba(255, 255, 255, 0) 100%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.03) 0%, rgba(236, 29, 37, 0.05) 100%);
  transition: opacity 0.18s ease, transform 0.72s cubic-bezier(0.22, 1, 0.36, 1);
}

.tour-card.bekaa-card-pressing,
.tour-card.bekaa-card-loading,
.bekaa-pack-card.bekaa-card-pressing,
.bekaa-pack-card.bekaa-card-loading,
.bekaa-pack-card-scenic.bekaa-card-pressing,
.bekaa-pack-card-scenic.bekaa-card-loading {
  transition-property: transform, border-color, box-shadow, opacity !important;
  transition-duration: 0.16s, 0.22s, 0.28s, 0.22s !important;
  transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1), ease, cubic-bezier(0.22, 1, 0.36, 1), ease !important;
}

.tour-card.bekaa-card-pressing,
.bekaa-pack-card.bekaa-card-pressing,
.bekaa-pack-card-scenic.bekaa-card-pressing {
  transform: translate3d(0, 1px, 0) scale(0.988) !important;
  border-color: rgba(236, 29, 37, 0.22) !important;
}

.tour-card.bekaa-card-touching,
.bekaa-pack-card.bekaa-card-touching,
.bekaa-pack-card-scenic.bekaa-card-touching {
  transform: translate3d(0, -1px, 0) scale(0.997) !important;
  border-color: rgba(236, 29, 37, 0.18) !important;
  box-shadow: 0 12px 28px rgba(18, 21, 26, 0.08), 0 2px 6px rgba(18, 21, 26, 0.04) !important;
}

.tour-card.bekaa-card-pressing::after,
.bekaa-pack-card.bekaa-card-pressing::after,
.bekaa-pack-card-scenic.bekaa-card-pressing::after {
  opacity: 0.38;
  transform: translate3d(42%, 0, 0);
}

.tour-card.bekaa-card-touching::after,
.bekaa-pack-card.bekaa-card-touching::after,
.bekaa-pack-card-scenic.bekaa-card-touching::after {
  opacity: 0.2;
  transform: translate3d(24%, 0, 0);
}

.tour-card.bekaa-card-loading,
.bekaa-pack-card.bekaa-card-loading,
.bekaa-pack-card-scenic.bekaa-card-loading {
  transform: translate3d(0, -2px, 0) scale(0.992) !important;
  border-color: rgba(176, 22, 30, 0.26) !important;
  box-shadow: 0 16px 34px rgba(18, 21, 26, 0.11), 0 2px 7px rgba(18, 21, 26, 0.05) !important;
}

.tour-card.bekaa-card-loading::after,
.bekaa-pack-card.bekaa-card-loading::after,
.bekaa-pack-card-scenic.bekaa-card-loading::after {
  animation: bekaa-card-sheen-pass 0.82s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

.tour-card.bekaa-card-loading .tour-image {
  transform: scale(1.018) !important;
  transition: transform 0.72s cubic-bezier(0.22, 1, 0.36, 1) !important;
}

.tour-card.bekaa-card-loading .tour-image::after {
  opacity: 0.94 !important;
  transition: opacity 0.34s ease !important;
}

.bekaa-pack-card.bekaa-card-loading .bekaa-pack-media,
.bekaa-pack-card-scenic.bekaa-card-loading .bekaa-pack-media {
  transform: scale(1.018) !important;
  transition: transform 0.72s cubic-bezier(0.22, 1, 0.36, 1) !important;
}

@media (prefers-reduced-motion: reduce) {
  .tour-card::after,
  .tour-card.bekaa-card-pressing,
  .tour-card.bekaa-card-touching,
  .tour-card.bekaa-card-loading,
  .tour-card.bekaa-card-loading .tour-image,
  .tour-card.bekaa-card-loading .tour-image::after,
  .bekaa-pack-card::after,
  .bekaa-pack-card-scenic::after,
  .bekaa-pack-card.bekaa-card-pressing,
  .bekaa-pack-card.bekaa-card-touching,
  .bekaa-pack-card.bekaa-card-loading,
  .bekaa-pack-card-scenic.bekaa-card-touching,
  .bekaa-pack-card-scenic.bekaa-card-pressing,
  .bekaa-pack-card-scenic.bekaa-card-loading,
  .bekaa-pack-card.bekaa-card-loading .bekaa-pack-media,
  .bekaa-pack-card-scenic.bekaa-card-loading .bekaa-pack-media {
    transition: none !important;
    animation: none !important;
  }
}

@keyframes bekaa-card-sheen-pass {
  0% {
    opacity: 0.12;
    transform: translate3d(0, 0, 0);
  }

  22% {
    opacity: 0.78;
  }

  72% {
    opacity: 0.48;
  }

  100% {
    opacity: 0;
    transform: translate3d(224%, 0, 0);
  }
}

@keyframes bekaa-card-sheen-pass-touch {
  0% {
    opacity: 0.08;
    transform: translate3d(0, 0, 0);
  }

  28% {
    opacity: 0.56;
  }

  76% {
    opacity: 0.34;
  }

  100% {
    opacity: 0;
    transform: translate3d(224%, 0, 0);
  }
}

@media (hover: none), (pointer: coarse) {
  .tour-card.bekaa-card-touching,
  .bekaa-pack-card.bekaa-card-touching,
  .bekaa-pack-card-scenic.bekaa-card-touching,
  .tour-card.bekaa-card-loading,
  .bekaa-pack-card.bekaa-card-loading,
  .bekaa-pack-card-scenic.bekaa-card-loading {
    transition-duration: 0.28s, 0.34s, 0.46s, 0.28s !important;
    transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1), ease, cubic-bezier(0.22, 1, 0.36, 1), ease !important;
  }

  .tour-card.bekaa-card-loading,
  .bekaa-pack-card.bekaa-card-loading,
  .bekaa-pack-card-scenic.bekaa-card-loading {
    transform: translate3d(0, -1px, 0) scale(0.9965) !important;
    border-color: rgba(176, 22, 30, 0.2) !important;
    box-shadow: 0 14px 30px rgba(18, 21, 26, 0.09), 0 2px 6px rgba(18, 21, 26, 0.04) !important;
  }

  .tour-card.bekaa-card-loading::after,
  .bekaa-pack-card.bekaa-card-loading::after,
  .bekaa-pack-card-scenic.bekaa-card-loading::after {
    animation: bekaa-card-sheen-pass-touch 1.14s cubic-bezier(0.22, 1, 0.36, 1) forwards;
  }

  .tour-card.bekaa-card-loading .tour-image,
  .bekaa-pack-card.bekaa-card-loading .bekaa-pack-media,
  .bekaa-pack-card-scenic.bekaa-card-loading .bekaa-pack-media {
    transform: scale(1.008) !important;
    transition-duration: 1.02s !important;
  }

  .tour-card.bekaa-card-loading .tour-image::after {
    opacity: 0.82 !important;
    transition-duration: 0.48s !important;
  }
}

.bekaa-smart-grid.bekaa-similar-experiences-grid .tour-card.bekaa-card-pressing .tour-image,
.bekaa-smart-grid.bekaa-similar-experiences-grid .tour-card.bekaa-card-touching .tour-image,
.bekaa-smart-grid.bekaa-similar-experiences-grid .tour-card.bekaa-card-loading .tour-image,
.bekaa-smart-grid.bekaa-similar-experiences-grid .tour-card:active .tour-image {
  transform: none !important;
}

.bekaa-smart-grid.bekaa-similar-experiences-grid .tour-card.bekaa-card-pressing .tour-image::after,
.bekaa-smart-grid.bekaa-similar-experiences-grid .tour-card.bekaa-card-touching .tour-image::after,
.bekaa-smart-grid.bekaa-similar-experiences-grid .tour-card.bekaa-card-loading .tour-image::after,
.bekaa-smart-grid.bekaa-similar-experiences-grid .tour-card:active .tour-image::after {
  opacity: 1 !important;
  transition-property: transform !important;
}

/* =========================================
   MODERN MOBILE MENU (JUPITER 6 SAFE MODE)
   CSS-only enhancement of Jupiter's native responsive menu.
   ========================================= */
@media (min-width: 1280px) {
  /* The mobile runtime retains inline display:block after opening the drawer. */
  .mk-responsive-wrap {
    display: none !important;
  }
}

@media handheld, only screen and (max-width: 1279px) {
  :root {
    --bekaa-drawer-dur: 0.28s;
    --bekaa-drawer-close-dur: 0.2s;
    --bekaa-drawer-fade-dur: 0.18s;
    --bekaa-curtain-dur: 0.26s;
    --bekaa-item-dur: 0.24s;
    --bekaa-item-fade-dur: 0.18s;
    --bekaa-submenu-dur: 0.26s;
    --bekaa-submenu-fade-dur: 0.18s;
    --bekaa-ease-premium: cubic-bezier(0.4, 0, 0.6, 1);
    --bekaa-ease-sheet: cubic-bezier(0.4, 0, 0.22, 1);
    --bekaa-ease-item: cubic-bezier(0.32, 0.72, 0, 1);
    --bekaa-sheet-lift: 10px;
    --bekaa-item-shift: 10px;
  }

  /*
   * Structural mobile header alignment:
   * Jupiter positions logo + trigger absolutely; move to flex row on mobile
   * so the icon cannot drift relative to the logo.
   */
  .header-style-1 .mk-grid.header-grid {
    position: relative !important;
    display: block !important;
    height: 72px !important;
    min-height: 72px !important;
    padding: 0 16px !important;
  }

  .header-style-1 .mk-grid.header-grid .mk-header-nav-container {
    display: none !important;
  }

  .header-style-1 .mk-grid.header-grid .header-logo {
    position: absolute !important;
    top: 50% !important;
    left: 16px !important;
    right: auto !important;
    float: none !important;
    transform: translateY(-50%) !important;
    width: auto !important;
    margin: 0 !important;
    min-width: 0;
    height: auto !important;
    line-height: 1 !important;
    display: flex !important;
    align-items: center !important;
    z-index: 381 !important;
  }

  .header-style-1 .mk-grid.header-grid .header-logo a {
    display: inline-flex !important;
    align-items: center !important;
    float: none !important;
    margin: 0 !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible;
  }

  .header-style-1 .mk-grid.header-grid .header-logo img.mk-resposnive-logo {
    display: block !important;
    position: relative !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
    -ms-transform: none !important;
    margin: 0 !important;
    width: auto !important;
    height: auto !important;
    max-width: none !important;
    height: 58px !important;
    max-height: 58px !important;
    object-fit: contain;
  }

  .header-style-1 .mk-grid.header-grid .header-logo .mk-desktop-logo.dark-logo,
  .header-style-1 .mk-grid.header-grid .header-logo .mk-desktop-logo.light-logo,
  .header-style-1 .mk-grid.header-grid .header-logo img.mk-sticky-logo {
    display: none !important;
  }

  .header-style-1 .mk-grid.header-grid .mk-header-right {
    display: none !important;
  }

  /* Keep mobile menu focused to mobile-only IA. */
  .mk-responsive-nav .only-desktop {
    display: none !important;
  }

  .mk-responsive-nav .only-mobile {
    display: block !important;
  }

  /* Trigger button: invisible 44px touch target, no floating square. */
  .mk-nav-responsive-link,
  .header-style-1 .mk-grid.header-grid .mk-nav-responsive-link {
    position: absolute !important;
    top: 50% !important;
    left: auto !important;
    right: 16px !important;
    margin: 0 !important;
    transform: translateY(-50%) !important;
    float: none !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    -webkit-tap-highlight-color: transparent;
    z-index: 380 !important;
  }

  .mk-nav-responsive-link::after {
    content: none !important;
  }

  .mk-nav-responsive-link.is-active::after {
    content: none !important;
  }

  .mk-nav-responsive-link .mk-css-icon-menu {
    position: relative;
    width: 22px;
    height: 16px;
    display: block;
  }

  .mk-nav-responsive-link .mk-css-icon-menu div {
    position: absolute;
    left: 0;
    top: 7px !important;
    width: 22px;
    height: 2.5px;
    margin: 0 !important;
    border-radius: 999px;
    background-color: #111827 !important;
    transition: transform 0.24s var(--bekaa-ease-sheet), opacity 0.18s ease;
  }

  .mk-nav-responsive-link .mk-css-icon-menu-line-1 {
    transform: translateY(-6px) rotate(0deg);
  }

  .mk-nav-responsive-link .mk-css-icon-menu-line-2 {
    transform: translateY(0) rotate(0deg);
  }

  .mk-nav-responsive-link .mk-css-icon-menu-line-3 {
    transform: translateY(6px) rotate(0deg);
  }

  .mk-nav-responsive-link.is-active .mk-css-icon-menu-line-1,
  body.bekaa-menu-opening .mk-nav-responsive-link .mk-css-icon-menu-line-1,
  body.bekaa-menu-closing .mk-nav-responsive-link .mk-css-icon-menu-line-1 {
    transform: translateY(0) rotate(45deg);
  }

  .mk-nav-responsive-link.is-active .mk-css-icon-menu-line-2,
  body.bekaa-menu-opening .mk-nav-responsive-link .mk-css-icon-menu-line-2,
  body.bekaa-menu-closing .mk-nav-responsive-link .mk-css-icon-menu-line-2 {
    opacity: 0;
  }

  .mk-nav-responsive-link.is-active .mk-css-icon-menu-line-3,
  body.bekaa-menu-opening .mk-nav-responsive-link .mk-css-icon-menu-line-3,
  body.bekaa-menu-closing .mk-nav-responsive-link .mk-css-icon-menu-line-3 {
    transform: translateY(0) rotate(-45deg);
  }

  .mk-nav-responsive-link:active {
    background: rgba(241, 245, 249, 0.98) !important;
  }

  /* Keep body scroll locked while menu is open. */
  body.mk-opened-nav,
  body.bekaa-menu-closing {
    overflow: hidden;
  }

  /*
   * Do not use a body-level pseudo backdrop here: Jupiter wraps content in
   * #mk-theme-container (z-index: 200), which can place the menu under it.
   */
  body.mk-opened-nav::before {
    content: none !important;
  }

  body.mk-opened-nav .mk-header,
  body.mk-opened-nav .mk-responsive-wrap,
  body.bekaa-menu-closing .mk-header,
  body.bekaa-menu-closing .mk-responsive-wrap {
    z-index: 360 !important;
  }

  /* Drawer shell: uses existing Jupiter open/close state. */
  .mk-responsive-wrap {
    display: block !important;
    position: fixed !important;
    top: calc(var(--mk-header-h, 50px) + var(--mk-adminbar-h, 0px)) !important;
    right: 0 !important;
    left: 0 !important;
    width: 100vw !important;
    max-width: 100vw !important;
    height: calc(100vh - (var(--mk-header-h, 50px) + var(--mk-adminbar-h, 0px))) !important;
    max-height: calc(100vh - (var(--mk-header-h, 50px) + var(--mk-adminbar-h, 0px))) !important;
    background: rgba(255, 255, 255, 0.96) !important;
    border-left: 0;
    border-top: 0;
    box-shadow: none;
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    z-index: 340 !important;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    clip-path: inset(0 0 100% 0);
    transform: translate3d(0, calc(-1 * var(--bekaa-sheet-lift)), 0);
    transition:
      clip-path var(--bekaa-drawer-dur) var(--bekaa-ease-sheet),
      transform var(--bekaa-drawer-dur) var(--bekaa-ease-sheet),
      opacity var(--bekaa-drawer-fade-dur) var(--bekaa-ease-sheet);
    will-change: transform, opacity, clip-path;
  }

  .mk-responsive-wrap::before {
    content: "";
    position: fixed;
    top: calc(var(--mk-header-h, 50px) + var(--mk-adminbar-h, 0px));
    right: 0;
    bottom: 0;
    left: 0;
    background: rgba(244, 246, 249, 0.76);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    z-index: -1;
    transition:
      opacity var(--bekaa-curtain-dur) var(--bekaa-ease-premium);
  }

  @supports (height: 100dvh) {
    .mk-responsive-wrap {
      height: calc(100dvh - (var(--mk-header-h, 50px) + var(--mk-adminbar-h, 0px))) !important;
      max-height: calc(100dvh - (var(--mk-header-h, 50px) + var(--mk-adminbar-h, 0px))) !important;
    }
  }

  body.bekaa-menu-opening .mk-responsive-wrap,
  body.mk-opened-nav .mk-responsive-wrap {
    display: block !important;
    visibility: visible;
    pointer-events: auto;
    opacity: 1;
    clip-path: inset(0 0 0 0);
    transform: translate3d(0, 0, 0);
  }

  body.bekaa-menu-closing .mk-responsive-wrap {
    display: block !important;
    visibility: visible;
    pointer-events: none;
    opacity: 0;
    clip-path: inset(0 0 100% 0);
    transform: translate3d(0, calc(-0.65 * var(--bekaa-sheet-lift)), 0);
    transition-duration: var(--bekaa-drawer-close-dur), var(--bekaa-drawer-close-dur), var(--bekaa-drawer-close-dur);
  }

  body.bekaa-menu-opening .mk-responsive-wrap::before,
  body.mk-opened-nav .mk-responsive-wrap::before {
    opacity: 1;
    visibility: visible;
  }

  body.bekaa-menu-closing .mk-responsive-wrap::before {
    opacity: 0;
    visibility: visible;
    transition-duration: var(--bekaa-drawer-close-dur);
  }

  /* Main list reset and structure. */
  .mk-responsive-wrap .menu-main-menu-container,
  .mk-responsive-wrap .mk-responsive-nav {
    margin: 0 !important;
    padding: 0 !important;
    width: 100%;
    border: 0 !important;
    position: relative;
    z-index: 1;
  }

  .mk-responsive-wrap .menu-main-menu-container {
    padding-bottom: 12px !important;
  }

  .mk-responsive-wrap .mk-responsive-nav {
    padding-top: 0 !important;
  }

  .mk-responsive-wrap .mk-responsive-nav > li,
  .mk-responsive-wrap .bekaa-mobile-menu-actions {
    opacity: 0;
    transform: translate3d(0, var(--bekaa-item-shift), 0);
    transition:
      transform var(--bekaa-item-dur) var(--bekaa-ease-item),
      opacity var(--bekaa-item-fade-dur) ease-out;
    transition-delay: 0s;
    will-change: transform, opacity;
  }

  body.bekaa-menu-opening .mk-responsive-wrap .mk-responsive-nav > li,
  body.mk-opened-nav .mk-responsive-wrap .mk-responsive-nav > li,
  body.bekaa-menu-opening .mk-responsive-wrap .bekaa-mobile-menu-actions,
  body.mk-opened-nav .mk-responsive-wrap .bekaa-mobile-menu-actions {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }

  body.bekaa-menu-closing .mk-responsive-wrap .mk-responsive-nav > li,
  body.bekaa-menu-closing .mk-responsive-wrap .bekaa-mobile-menu-actions {
    opacity: 0;
    transform: translate3d(0, 8px, 0);
    transition-duration: 0.18s, 0.18s;
    transition-delay: 0s !important;
  }

  body.bekaa-menu-opening .mk-responsive-wrap .mk-responsive-nav > li:nth-child(1) { transition-delay: 0.045s; }
  body.bekaa-menu-opening .mk-responsive-wrap .mk-responsive-nav > li:nth-child(2) { transition-delay: 0.063s; }
  body.bekaa-menu-opening .mk-responsive-wrap .mk-responsive-nav > li:nth-child(3) { transition-delay: 0.081s; }
  body.bekaa-menu-opening .mk-responsive-wrap .mk-responsive-nav > li:nth-child(4) { transition-delay: 0.099s; }
  body.bekaa-menu-opening .mk-responsive-wrap .mk-responsive-nav > li:nth-child(5) { transition-delay: 0.117s; }
  body.bekaa-menu-opening .mk-responsive-wrap .mk-responsive-nav > li:nth-child(6) { transition-delay: 0.135s; }
  body.bekaa-menu-opening .mk-responsive-wrap .mk-responsive-nav > li:nth-child(7) { transition-delay: 0.153s; }
  body.bekaa-menu-opening .mk-responsive-wrap .mk-responsive-nav > li:nth-child(8) { transition-delay: 0.171s; }
  body.bekaa-menu-opening .mk-responsive-wrap .bekaa-mobile-menu-actions { transition-delay: 0.185s; }

  .mk-responsive-wrap .mk-responsive-nav > li {
    margin: 0 !important;
    background: #ffffff !important;
    border-bottom: 1px solid rgba(15, 23, 42, 0.1) !important;
    transition: background-color 0.22s ease;
  }

  .mk-responsive-wrap .mk-responsive-nav > li > a {
    height: 64px;
    min-height: 64px;
    display: flex !important;
    align-items: center;
    padding: 0 68px 0 24px !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    letter-spacing: 0.05em;
    line-height: 1.2 !important;
    color: #111827 !important;
    text-transform: uppercase;
    background: #ffffff !important;
    position: relative;
    transition:
      color 0.2s ease,
      background-color 0.2s ease,
      padding-left 0.24s cubic-bezier(0.22, 1, 0.36, 1);
  }

  .mk-responsive-wrap .mk-responsive-nav > li > a:hover,
  .mk-responsive-wrap .mk-responsive-nav > li > a:focus-visible {
    background: rgba(15, 23, 42, 0.025) !important;
    padding-left: 24px !important;
  }

  .mk-responsive-wrap .mk-responsive-nav > li.bekaa-open > a {
    background: linear-gradient(90deg, rgba(237, 28, 38, 0.08) 0%, rgba(237, 28, 38, 0.018) 28%, #ffffff 64%) !important;
    color: #111827 !important;
  }

  .mk-responsive-wrap .mk-responsive-nav > li.bekaa-open > a::before {
    content: "";
    position: absolute;
    left: 0;
    top: 12px;
    bottom: 12px;
    width: 3px;
    border-radius: 2px;
    background: #ed1c26;
  }

  .mk-responsive-wrap .mk-responsive-nav li ul {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    transform: translateY(-4px);
    border-top: 1px solid rgba(15, 23, 42, 0.08) !important;
    background: #f8fafd;
    transition:
      max-height var(--bekaa-submenu-dur) var(--bekaa-ease-sheet),
      opacity var(--bekaa-submenu-fade-dur) ease-out,
      transform 0.28s var(--bekaa-ease-sheet);
  }

  /* Jupiter toggles the state class on the arrow; open the adjacent submenu. */
  .mk-responsive-wrap .mk-responsive-nav .mk-nav-arrow.mk-nav-sub-opened + ul {
    max-height: 1400px;
    opacity: 1;
    transform: translateY(0);
  }

  .mk-responsive-wrap .mk-responsive-nav .mk-nav-arrow.mk-nav-sub-closed + ul {
    max-height: 0;
    opacity: 0;
    transform: translateY(-4px);
  }

  .mk-responsive-wrap .mk-responsive-nav li ul li {
    margin: 0 !important;
    border-bottom: 1px solid rgba(15, 23, 42, 0.06);
  }

  .mk-responsive-wrap .mk-responsive-nav li ul li a,
  .mk-responsive-wrap .mk-responsive-nav li ul li .megamenu-title {
    height: 52px;
    min-height: 52px;
    display: flex !important;
    align-items: center;
    padding: 0 24px !important;
    color: #374151 !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    line-height: 1.3 !important;
    text-transform: none;
    background: transparent !important;
    transition:
      color 0.18s ease,
      background-color 0.18s ease,
      padding-left 0.22s cubic-bezier(0.22, 1, 0.36, 1);
  }

  .mk-responsive-wrap .mk-responsive-nav li ul li .megamenu-title {
    font-family: var(--bekaa-brand-display);
    font-size: 15px !important;
    font-weight: 700 !important;
  }

  .mk-responsive-wrap .mk-responsive-nav li ul li a:hover,
  .mk-responsive-wrap .mk-responsive-nav li ul li a:focus-visible {
    background: rgba(255, 255, 255, 0.58) !important;
    padding-left: 24px !important;
  }

  .mk-responsive-wrap .mk-responsive-nav li ul ul {
    padding-left: 12px !important;
  }

  .mk-responsive-wrap .mk-responsive-nav .bekaa-mobile-adventures-menu-item > .bekaa-mobile-adventures__toggle {
    appearance: none;
    padding: 0 !important;
    border: 0 !important;
  }

  .mk-responsive-wrap .mk-responsive-nav .bekaa-mobile-adventures__group-label {
    background: #f8fafd !important;
  }

  .mk-responsive-wrap .mk-responsive-nav .bekaa-mobile-adventures__group-label > span {
    display: flex;
    align-items: center;
    height: 44px;
    min-height: 44px;
    padding: 0 24px;
    color: #111827;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: var(--bekaa-type-eyebrow, 12px);
    font-weight: 700;
    letter-spacing: 0.08em;
    line-height: 1.2;
    text-transform: uppercase;
  }

  .mk-responsive-wrap .mk-responsive-nav .bekaa-mobile-adventures__link-item > a {
    padding-right: 24px !important;
    padding-left: 36px !important;
  }

  .mk-responsive-wrap .mk-responsive-nav .bekaa-mobile-adventures__link-item > a:hover,
  .mk-responsive-wrap .mk-responsive-nav .bekaa-mobile-adventures__link-item > a:focus-visible {
    padding-left: 36px !important;
  }

  /* Chevron target and state animation. */
  .mk-responsive-wrap .mk-responsive-nav .mk-nav-arrow {
    width: 64px !important;
    height: 64px !important;
    right: 0 !important;
    top: 0 !important;
    position: absolute !important;
    line-height: 64px !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
    background: transparent !important;
    opacity: 1 !important;
    transition: none;
    z-index: 2;
  }

  .mk-responsive-wrap .mk-responsive-nav .mk-nav-arrow::before {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 34px;
    height: 34px;
    border-radius: 999px;
    transform: translate(-50%, -50%);
    background: transparent;
    transition: background-color 0.22s ease;
  }

  .mk-responsive-wrap .mk-responsive-nav li ul .mk-nav-arrow {
    height: 52px !important;
    line-height: 52px !important;
  }

  .mk-responsive-wrap .mk-responsive-nav .mk-nav-arrow svg {
    position: relative;
    z-index: 1;
    width: 16px;
    height: 16px;
    fill: #596273;
    transition: transform 0.28s var(--bekaa-ease-sheet), fill 0.2s ease;
  }

  .mk-responsive-wrap .mk-responsive-nav .mk-nav-arrow.mk-nav-sub-opened svg {
    fill: #ed1c26;
    transform: rotate(180deg);
  }

  .mk-responsive-wrap .mk-responsive-nav .mk-nav-arrow.mk-nav-sub-opened::before {
    background: rgba(237, 28, 38, 0.11);
  }

  .mk-responsive-wrap .mk-responsive-nav .mk-nav-arrow:hover,
  .mk-responsive-wrap .mk-responsive-nav .mk-nav-arrow:focus-visible {
    background: transparent !important;
  }

  .mk-responsive-wrap .mk-responsive-nav .mk-nav-arrow:hover::before,
  .mk-responsive-wrap .mk-responsive-nav .mk-nav-arrow:focus-visible::before {
    background: rgba(15, 23, 42, 0.06);
  }

  .mk-responsive-wrap .bekaa-mobile-menu-actions {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 14px 16px 16px;
    padding-bottom: calc(16px + env(safe-area-inset-bottom));
    border-top: 1px solid rgba(15, 23, 42, 0.08);
    background: #ffffff;
    box-shadow: none;
  }

  .mk-responsive-wrap .bekaa-mobile-menu-btn {
    height: 52px;
    min-height: 52px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
    border: 1px solid transparent;
    border-radius: 0;
    text-decoration: none !important;
    text-transform: uppercase;
    letter-spacing: 0.11em;
    font-family: var(--bekaa-button-font);
    font-size: 15px;
    font-weight: 700;
    transition: transform 0.2s ease, background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
  }

  .mk-responsive-wrap .bekaa-mobile-menu-btn:active {
    transform: translateY(1px);
  }

  .mk-responsive-wrap .bekaa-mobile-menu-btn-icon {
    width: 15px;
    height: 15px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  .mk-responsive-wrap .bekaa-mobile-menu-btn-icon svg {
    width: 15px;
    height: 15px;
    fill: currentColor;
  }

  .mk-responsive-wrap .bekaa-mobile-menu-btn-primary {
    background: #ec1d25;
    border-color: #ec1d25;
    color: #ffffff !important;
  }

  .mk-responsive-wrap .bekaa-mobile-menu-btn-primary:hover,
  .mk-responsive-wrap .bekaa-mobile-menu-btn-primary:focus-visible {
    background: #d8171f;
    border-color: #d8171f;
  }

  .mk-responsive-wrap .bekaa-mobile-menu-btn-ghost {
    background: #ffffff;
    border-color: #111827;
    color: #111827 !important;
  }

  .mk-responsive-wrap .bekaa-mobile-menu-btn-ghost:hover,
  .mk-responsive-wrap .bekaa-mobile-menu-btn-ghost:focus-visible {
    background: rgba(15, 23, 42, 0.035);
  }

  /* Visual state and focus treatment. */
  .mk-responsive-wrap .mk-responsive-nav > li.current-menu-item > a,
  .mk-responsive-wrap .mk-responsive-nav > li.current-menu-ancestor > a,
  .mk-responsive-wrap .mk-responsive-nav > li.current-menu-parent > a {
    color: #ed1c26 !important;
  }

  .mk-nav-responsive-link:focus-visible,
  .mk-responsive-wrap a:focus-visible,
  .mk-responsive-wrap .mk-nav-arrow:focus-visible {
    outline: 2px solid #ed1c26 !important;
    outline-offset: 2px;
  }

  /*
   * Product pages inject a separate sticky mobile "Plan Your Experience" CTA
   * after page load. Hide that sticky layer while Jupiter's native mobile
   * drawer is open so it cannot sit on top of the menu.
   */
  body.mk-opened-nav .bekaa-sticky-booktour-mobile-host,
  body.bekaa-menu-closing .bekaa-sticky-booktour-mobile-host,
body.mk-opened-nav .bekaa-sticky-booktour-mobile-wrap,
  body.bekaa-menu-closing .bekaa-sticky-booktour-mobile-wrap {
    display: none !important;
  }

}
