.jsh-header.jsh-active {
  position: fixed !important; top: var(--jsh-top,0px) !important;
  left: 0 !important; right: 0 !important; width: 100% !important; max-width: none !important;
  margin: 0 !important; z-index: 9990 !important; box-sizing: border-box;
  background: var(--jsh-normal) !important;
  transition: background-color var(--jsh-duration) ease, padding var(--jsh-duration) ease, box-shadow var(--jsh-duration) ease !important;
}
.jsh-header.jsh-active.jsh-scrolled {
  background: var(--jsh-scroll) !important;
  padding-top: var(--jsh-padding) !important; padding-bottom: var(--jsh-padding) !important;
  min-height: 0 !important; height: auto !important;
  box-shadow: var(--jsh-shadow) !important;
}
.jsh-active .jsh-logo img { transition: width var(--jsh-duration) ease, height var(--jsh-duration) ease !important; }
.jsh-active.jsh-scrolled .jsh-logo img { width: var(--jsh-logo-width) !important; height: auto !important; max-width: 100% !important; }
.jsh-active .jsh-button .elementor-button,
.jsh-active .jsh-button a[role="button"],
.jsh-active .jsh-button button { transition: padding var(--jsh-duration) ease, font-size var(--jsh-duration) ease !important; }
.jsh-active.jsh-scrolled .jsh-button .elementor-button,
.jsh-active.jsh-scrolled .jsh-button a[role="button"],
.jsh-active.jsh-scrolled .jsh-button button {
  font-size: var(--jsh-button-font) !important;
  padding: var(--jsh-button-padding) !important;
  min-height: 44px !important; box-sizing: border-box;
}
.jsh-spacer { display: block; width: 100%; pointer-events: none; flex-shrink: 0; }
@media (prefers-reduced-motion: reduce) {
 .jsh-header.jsh-active, .jsh-active .jsh-logo img, .jsh-active .jsh-button .elementor-button,
 .jsh-active .jsh-button a[role="button"], .jsh-active .jsh-button button { transition: none !important; }
}

.jsh-header.jsh-active.jsh-scrolled {
  height: var(--jsh-height) !important;
  min-height: var(--jsh-height) !important;
}
.jsh-active.jsh-scrolled.jsh-compact .e-con,
.jsh-active.jsh-scrolled.jsh-compact .e-con-inner,
.jsh-active.jsh-scrolled.jsh-compact .elementor-container,
.jsh-active.jsh-scrolled.jsh-compact .elementor-column,
.jsh-active.jsh-scrolled.jsh-compact .elementor-widget-wrap {
  min-height: 0 !important; height: auto !important;
  padding-top: 0 !important; padding-bottom: 0 !important;
  margin-top: 0 !important; margin-bottom: 0 !important;
}
.jsh-active.jsh-scrolled.jsh-compact .elementor-widget {
  margin-top: 0 !important; margin-bottom: 0 !important;
}
.jsh-active.jsh-scrolled .jsh-logo img {
  max-height: max(24px, calc(var(--jsh-height) - 2 * var(--jsh-padding))) !important;
  object-fit: contain;
}
/* Exclude interaction and WordPress/UAE selected states; override normal text only. */
.jsh-active [data-jsh-menu]:not(:hover):not(:focus):not(.elementor-item-active):not(.hfe-menu-item-active):not(.highlighted):not([aria-current]):not([aria-expanded="true"]):not(.current-menu-item a):not(.current-menu-parent a):not(.current-menu-ancestor a):not(.current_page_item a):not(.current_page_parent a):not(.current_page_ancestor a):not(li:hover a):not(li:focus-within a) {
  color: var(--jsh-menu-color) !important;
}
.jsh-active [data-jsh-btn] {
  color: var(--jsh-btn-color) !important;
  background-color: var(--jsh-btn-bg) !important;
}


/* Hero travel uses the document position rather than a fixed viewport position. */
.jsh-header.jsh-active.jsh-hero-travel { pointer-events: auto; }
.jsh-header.jsh-active.jsh-hero-revealed {
  animation: jsh-reveal var(--jsh-duration) ease-out both;
}
@keyframes jsh-reveal {
  from { transform: translateY(-110%); opacity: 0; }
  to { transform: translateY(0); opacity: 1; }
}
@media (prefers-reduced-motion: reduce) {
  .jsh-header.jsh-active.jsh-hero-revealed { animation: none; }
}

/* Keep a linked logo's inline layout from re-centering during the image swap. */
.jsh-active .jsh-logo a[data-jsh-logo-link] {
  display: inline-block !important;
  width: var(--jsh-link-width) !important;
  max-width: 100% !important;
  vertical-align: middle;
}
.jsh-active .jsh-logo img[data-jsh-linked-logo] {
  display: block !important;
  margin-left: 0 !important; margin-right: 0 !important;
  width: var(--jsh-logo-normal-width) !important;
  height: var(--jsh-logo-normal-height) !important;
  object-fit: contain !important; object-position: left center !important;
}
.jsh-active.jsh-scrolled .jsh-logo img[data-jsh-linked-logo] {
  width: var(--jsh-logo-linked-width) !important;
  height: var(--jsh-logo-linked-height) !important;
}

/* Make the actual image link the hit target without overriding navigation. */
.jsh-active .jsh-logo { position: relative; z-index: 2; }
.jsh-active .jsh-logo a { pointer-events: auto; }
.jsh-active .jsh-logo img { pointer-events: auto; }
