/* Only changes the inner-page navy geometric header; it will not touch the homepage slider. */
html body .lh-page-head {
  position: relative !important;
  isolation: isolate;
  overflow: hidden !important;
  display: flex !important;
  justify-content: center;
  align-items: center;
  min-height: var(--lhpb-banner-height,265px) !important;
  padding: 37px 18px !important;
  background: linear-gradient(110deg,#10283e 0%, #15354f 48%, #176069 100%) !important;
  border-bottom: 4px solid rgba(255,180,117,.85);
  color: #fff !important;
  text-align: center;
}
html body .lh-page-head::before {
  content: "" !important;
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background: radial-gradient(ellipse at 91% 89%, rgba(70,179,171,.28),transparent 46%),
    radial-gradient(ellipse at 0% 0%,rgba(54,91,117,.36),transparent 55%) !important;
}
html body .lh-page-head::after {
  content: "" !important;
  display: block !important;
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background-image: var(--lhpb-banner-image) !important;
  background-repeat: no-repeat !important;
  background-size: auto 105% !important;
  background-position: right bottom !important;
  opacity: var(--lhpb-banner-opacity,.96) !important;
}
html body .lh-page-head > .lh-container {
  z-index: 2 !important;
  position: relative !important;
  width: 100%;
  max-width: 1000px;
  text-shadow: 0 2px 6px rgba(9,25,39,.24);
}
html body .lh-page-head h1,
html body .lh-page-head .lh-breadcrumb,
html body .lh-page-head .lh-eyebrow,
html body .lh-page-head p {
  position: relative !important;
  z-index: 3 !important;
}
html body .lh-page-head h1 { color: #fff !important; }
html body .lh-page-head .lh-breadcrumb { color: #ffc09b !important; }
html body .lh-page-head .lh-breadcrumb a { color: #fff !important; }
@media (max-width: 900px) {
  html body .lh-page-head::after { background-size: auto 98% !important; background-position: right bottom !important; opacity: var(--lhpb-banner-mobile-opacity,.37) !important; }
  html body .lh-page-head { min-height: var(--lhpb-banner-mobile-height,205px) !important; padding: 30px 14px !important; }
  html body .lh-page-head h1 { font-size: clamp(27px,6vw,43px) !important; line-height: 1.16; }
  html body .lh-page-head p { max-width: 580px; font-size: 12px !important; }
}
@media (max-width: 480px) {
  html body .lh-page-head::after { background-size: auto 85% !important; }
  html body .lh-page-head .lh-eyebrow { font-size: 9px !important; }
  html body .lh-page-head .lh-breadcrumb { font-size: 11px !important; }
}

/* v1.1: explicit tour archive selectors to handle separate WordPress archive templates. */
html body.post-type-archive-lh_tour .lh-page-head,
html body.lhpb-packages-view .lh-page-head {
 background:linear-gradient(110deg,#10283e,#15354f 48%,#176069)!important;
 background-image:none!important;
}
html body.post-type-archive-lh_tour .lh-page-head::after,
html body.lhpb-packages-view .lh-page-head::after {
 content:""!important; background-image:var(--lhpb-banner-image)!important;
 background-repeat:no-repeat!important; background-position:right bottom!important;
 background-size:auto 105%!important; display:block!important;
}
@media(max-width:900px){html body.post-type-archive-lh_tour .lh-page-head::after,html body.lhpb-packages-view .lh-page-head::after{background-size:auto 90%!important;}}

/* v1.2 robust fix: a real image element, not the old geometric SVG background.
   This class is applied only to Holiday Packages, detected by title/archive. */
html body .lh-page-head.lhpb-fixed-package {
  background-color: #122b42 !important;
  background-image: linear-gradient(112deg, #122b42 0%, #17354e 52%, #1b5360 100%) !important;
  min-height: var(--lhpb-package-height, 265px) !important;
  isolation: isolate !important;
  overflow: hidden !important;
  position: relative !important;
}
html body .lh-page-head.lhpb-fixed-package::after { content: none !important; display: none !important; background: none !important; }
html body .lh-page-head.lhpb-fixed-package .lhpb-package-photo {
  display: block !important;
  position: absolute !important;
  z-index: 5 !important;
  right: 0 !important;
  bottom: 0 !important;
  top: auto !important;
  left: auto !important;
  width: auto !important;
  height: 105% !important;
  max-width: 90% !important;
  object-fit: contain !important;
  object-position: right bottom !important;
  opacity: var(--lhpb-package-image-opacity, .96) !important;
  pointer-events: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}
html body .lh-page-head.lhpb-fixed-package > .lh-container { position: relative !important; z-index: 15 !important; }
@media(max-width:900px) {
  html body .lh-page-head.lhpb-fixed-package { min-height: var(--lhpb-package-mobile-height, 205px) !important; }
  html body .lh-page-head.lhpb-fixed-package .lhpb-package-photo { height: 90% !important; max-width: 96% !important; opacity: var(--lhpb-package-mobile-opacity, .37) !important; }
}
