/*
 * RC105AM final cascade guard.
 * Scope: service-page header ownership + Saudi transport widget stability only.
 */

body.tt-service-route-flights,
body.tt-tigatours-flight-page,
body.tt-tigatours-flight-page-en {
  --tt-svc-header-image: url("../img/service-header-flights-unsplash.jpg") !important;
  --tt-svc-header-position: center 48% !important;
}

body.tt-service-route-hotels {
  --tt-svc-header-image: url("../img/service-header-hotels-unsplash.jpg") !important;
  --tt-svc-header-position: center 52% !important;
}

body.tt-service-route-activities {
  --tt-svc-header-image: url("../img/service-header-activities-unsplash.jpg") !important;
  --tt-svc-header-position: center 50% !important;
}

body.tt-service-route-car-rental,
body.tt-car-marketing-page {
  --tt-svc-header-image: url("../img/service-header-car-rental-unsplash.jpg") !important;
  --tt-svc-header-position: center 52% !important;
}

body.tt-service-route-airport-transfer,
body.tt-transfer-marketing-page {
  --tt-svc-header-image: url("../img/service-header-airport-transfer-unsplash.jpg") !important;
  --tt-svc-header-position: center 52% !important;
}

body.tt-service-route-medical-tourism {
  --tt-svc-header-image: url("../img/service-header-medical-unsplash.jpg") !important;
  --tt-svc-header-position: center 52% !important;
}

body.tt-service-route-insurance,
body.tt-insurance-page {
  --tt-svc-header-image: url("../img/service-header-insurance-unsplash.jpg") !important;
  --tt-svc-header-position: center 56% !important;
}

body.tt-service-route-visa {
  --tt-svc-header-image: url("../img/service-header-visa-unsplash.jpg") !important;
  --tt-svc-header-position: center 48% !important;
}

body.tt-service-visual-page .tt-service-header-shell[data-tt-service-generated="1"] {
  background: #ffffff !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(15, 23, 42, .08) !important;
  box-shadow: 0 12px 34px rgba(15, 23, 42, .08) !important;
  margin: 0 !important;
  max-width: none !important;
  min-height: 0 !important;
  overflow: visible !important;
  padding: 10px 0 14px !important;
  position: relative !important;
  width: 100% !important;
  z-index: 90 !important;
}

body.tt-service-visual-page .tt-service-header-shell[data-tt-service-generated="1"]::before,
body.tt-service-visual-page .tt-service-header-shell[data-tt-service-generated="1"]::after,
body.tt-tigatours-flight-page .tt-header.tt-service-header-shell[data-tt-service-generated="1"]::after,
body.tt-tigatours-flight-page-en .tt-header.tt-service-header-shell[data-tt-service-generated="1"]::after,
body.tt-tigatours-flight-page-en .tt-flight-en-top.tt-service-header-shell[data-tt-service-generated="1"]::after {
  content: none !important;
  display: none !important;
}

body.tt-service-visual-page .tt-service-header-shell[data-tt-service-generated="1"] .tt-service-header-inner {
  background: rgba(255, 255, 255, .94) !important;
  border: 1px solid rgba(191, 219, 232, .72) !important;
  border-radius: 0 !important;
  box-shadow: 0 14px 38px rgba(15, 23, 42, .08) !important;
  min-height: 74px !important;
  padding: 10px 16px !important;
  width: min(1210px, calc(100vw - 24px)) !important;
}

body.tt-service-visual-page .tt-service-header-shell[data-tt-service-generated="1"] .tt-service-header-panorama {
  background:
    linear-gradient(90deg, rgba(8, 13, 25, .08), rgba(8, 13, 25, 0) 46%, rgba(8, 13, 25, .08)),
    var(--tt-svc-header-image) var(--tt-svc-header-position, center center) / cover no-repeat !important;
  border: 1px solid rgba(255, 255, 255, .74) !important;
  border-radius: clamp(18px, 2.4vw, 30px) !important;
  box-shadow: 0 22px 54px rgba(15, 23, 42, .14) !important;
  display: block !important;
  height: clamp(252px, 27vw, 348px) !important;
  margin: 14px auto 0 !important;
  max-width: 1180px !important;
  opacity: 1 !important;
  transform: none !important;
  visibility: visible !important;
  width: min(1180px, calc(100vw - 36px)) !important;
}

html[data-theme="dark"] body.tt-service-visual-page .tt-service-header-shell[data-tt-service-generated="1"],
html[data-tt-theme="dark"] body.tt-service-visual-page .tt-service-header-shell[data-tt-service-generated="1"],
html.tt-dark-mode body.tt-service-visual-page .tt-service-header-shell[data-tt-service-generated="1"],
body.dark-mode.tt-service-visual-page .tt-service-header-shell[data-tt-service-generated="1"],
body.dark.tt-service-visual-page .tt-service-header-shell[data-tt-service-generated="1"] {
  background: #071827 !important;
  border-bottom-color: rgba(148, 163, 184, .18) !important;
  color: #f8fafc !important;
}

html[data-theme="dark"] body.tt-service-visual-page .tt-service-header-shell[data-tt-service-generated="1"] .tt-service-header-inner,
html[data-tt-theme="dark"] body.tt-service-visual-page .tt-service-header-shell[data-tt-service-generated="1"] .tt-service-header-inner,
html.tt-dark-mode body.tt-service-visual-page .tt-service-header-shell[data-tt-service-generated="1"] .tt-service-header-inner,
body.dark-mode.tt-service-visual-page .tt-service-header-shell[data-tt-service-generated="1"] .tt-service-header-inner,
body.dark.tt-service-visual-page .tt-service-header-shell[data-tt-service-generated="1"] .tt-service-header-inner {
  background: rgba(10, 28, 45, .94) !important;
  border-color: rgba(148, 163, 184, .20) !important;
}

html[data-theme="dark"] body.tt-service-visual-page .tt-service-header-shell[data-tt-service-generated="1"] .tt-service-header-panorama,
html[data-tt-theme="dark"] body.tt-service-visual-page .tt-service-header-shell[data-tt-service-generated="1"] .tt-service-header-panorama,
html.tt-dark-mode body.tt-service-visual-page .tt-service-header-shell[data-tt-service-generated="1"] .tt-service-header-panorama,
body.dark-mode.tt-service-visual-page .tt-service-header-shell[data-tt-service-generated="1"] .tt-service-header-panorama,
body.dark.tt-service-visual-page .tt-service-header-shell[data-tt-service-generated="1"] .tt-service-header-panorama {
  background:
    linear-gradient(90deg, rgba(2, 6, 23, .14), rgba(2, 6, 23, 0) 46%, rgba(2, 6, 23, .14)),
    var(--tt-svc-header-image) var(--tt-svc-header-position, center center) / cover no-repeat !important;
  border-color: rgba(255, 255, 255, .16) !important;
  display: block !important;
  filter: none !important;
  opacity: 1 !important;
  visibility: visible !important;
}

body.tt-service-route-saudi-transport .tt-service-header-shell[data-tt-service-generated="1"] {
  padding: 10px 0 !important;
}

body.tt-service-route-saudi-transport .tt-service-header-shell[data-tt-service-generated="1"] .tt-service-header-panorama {
  display: none !important;
}

body.tt-service-visual-page .tt-service-legacy-header-hidden,
body.tt-tigatours-flight-page > .tt-header:not(.tt-service-header-shell):not([data-tt-service-generated="1"]),
body.tt-tigatours-flight-page-en > .tt-header:not(.tt-service-header-shell):not([data-tt-service-generated="1"]),
body.tt-service-visual-page .tt-transfer-page-header:not([data-tt-service-generated="1"]),
body.tt-service-visual-page .tt-car-page-header:not([data-tt-service-generated="1"]),
body.tt-service-visual-page .tt-viator-site-header:not([data-tt-service-generated="1"]),
body.tt-service-visual-page .tt-flight-en-top:not([data-tt-service-generated="1"]),
body.tt-service-visual-page .tt-v066-service-nav:not([data-tt-service-generated="1"]) {
  display: none !important;
}

body.tt-tigatours-flight-page.tt-service-visual-page .tt-flight-hero,
body.tt-tigatours-flight-page-en.tt-service-visual-page .tt-flight-hero,
body.tt-tigatours-flight-page-en.tt-service-visual-page .tt-flight-en-hero {
  background-image: none !important;
  margin-top: 0 !important;
}

body.tt-service-route-hotels.tt-service-visual-page .tt-expedia-v12-hero,
body.tt-service-route-hotels.tt-service-visual-page .tt-expedia-ar-hero,
body.tt-service-route-medical-tourism.tt-service-visual-page .tt-medical-hero,
body.tt-service-route-insurance.tt-service-visual-page .tt-insurance-hero,
body.tt-service-route-visa.tt-service-visual-page .tt-visa-hero,
body.tt-service-route-car-rental.tt-service-visual-page .tt-car-v035-hero,
body.tt-service-route-airport-transfer.tt-service-visual-page .tt-transfer-hero,
body.tt-service-route-activities.tt-service-visual-page .tt-viator-hero,
body.tt-service-visual-page .tt-v066-service-hero {
  background-image: none !important;
}

/* Saudi transport owns its own page hero and 12Go widgets. */
body.tt-rc105am-12go-sa-landing {
  background:
    radial-gradient(circle at 8% 0%, rgba(251, 146, 60, .12), transparent 28%),
    linear-gradient(180deg, #f7f3ea, #ffffff 62%, #f4f7fb) !important;
  overflow-x: hidden !important;
}

html[data-theme="dark"] body.tt-rc105am-12go-sa-landing,
html[data-tt-theme="dark"] body.tt-rc105am-12go-sa-landing,
html.tt-dark-mode body.tt-rc105am-12go-sa-landing,
body.dark-mode.tt-rc105am-12go-sa-landing,
body.dark.tt-rc105am-12go-sa-landing {
  background:
    radial-gradient(circle at 8% 0%, rgba(251, 146, 60, .10), transparent 28%),
    linear-gradient(180deg, #071827, #0b1624 65%, #071827) !important;
}

body.tt-rc105am-12go-sa-landing .tt-12go-page-header.tt-12go-local-header {
  display: none !important;
}

body.tt-rc105am-12go-sa-landing .tt-12go-sa-shell {
  padding: 0 0 clamp(34px, 5vw, 62px) !important;
  overflow: hidden !important;
}

body.tt-rc105am-12go-sa-landing .tt-12go-sa-inner {
  width: min(1210px, calc(100vw - 24px)) !important;
  margin: 0 auto !important;
  overflow: visible !important;
}

body.tt-rc105am-12go-sa-landing .tt-12go-sa-hero.tt-12go-sa-hero-simple {
  background:
    linear-gradient(90deg, rgba(4, 10, 20, .08), rgba(4, 10, 20, 0) 45%, rgba(4, 10, 20, .08)),
    url("../img/tt-12go-sa-hero-bg.jpg") center 52% / cover no-repeat !important;
  border: 1px solid rgba(255, 255, 255, .72) !important;
  border-radius: clamp(18px, 2.4vw, 30px) !important;
  box-shadow: 0 22px 54px rgba(15, 23, 42, .14) !important;
  direction: ltr !important;
  display: block !important;
  height: clamp(252px, 27vw, 348px) !important;
  margin: 14px auto 20px !important;
  max-width: 1180px !important;
  overflow: hidden !important;
  width: min(1180px, calc(100vw - 36px)) !important;
}

body.tt-rc105am-12go-sa-landing .tt-12go-sa-hero.tt-12go-sa-hero-simple::before,
body.tt-rc105am-12go-sa-landing .tt-12go-sa-hero.tt-12go-sa-hero-simple::after,
body.tt-rc105am-12go-sa-landing .tt-12go-sa-hero.tt-12go-sa-hero-simple h1,
body.tt-rc105am-12go-sa-landing .tt-12go-sa-hero.tt-12go-sa-hero-simple p,
body.tt-rc105am-12go-sa-landing .tt-12go-sa-hero-copy,
body.tt-rc105am-12go-sa-landing .tt-12go-sa-hero-media,
body.tt-rc105am-12go-sa-landing .tt-12go-sa-kicker {
  display: none !important;
}

html[data-theme="dark"] body.tt-rc105am-12go-sa-landing .tt-12go-sa-hero.tt-12go-sa-hero-simple,
html[data-tt-theme="dark"] body.tt-rc105am-12go-sa-landing .tt-12go-sa-hero.tt-12go-sa-hero-simple,
html.tt-dark-mode body.tt-rc105am-12go-sa-landing .tt-12go-sa-hero.tt-12go-sa-hero-simple,
body.dark-mode.tt-rc105am-12go-sa-landing .tt-12go-sa-hero.tt-12go-sa-hero-simple,
body.dark.tt-rc105am-12go-sa-landing .tt-12go-sa-hero.tt-12go-sa-hero-simple {
  border-color: rgba(255, 255, 255, .14) !important;
  box-shadow: 0 24px 58px rgba(0, 0, 0, .34) !important;
}

body.tt-rc105am-12go-sa-landing .tt-12go-search-only-card {
  background: rgba(255, 255, 255, .88) !important;
  border: 1px solid rgba(251, 146, 60, .22) !important;
  border-radius: 26px !important;
  box-shadow: 0 22px 50px rgba(15, 23, 42, .10) !important;
  margin: 0 auto 22px !important;
  overflow: visible !important;
  padding: 16px !important;
  width: min(1180px, 100%) !important;
}

html[data-theme="dark"] body.tt-rc105am-12go-sa-landing .tt-12go-search-only-card,
html[data-tt-theme="dark"] body.tt-rc105am-12go-sa-landing .tt-12go-search-only-card,
html.tt-dark-mode body.tt-rc105am-12go-sa-landing .tt-12go-search-only-card,
body.dark-mode.tt-rc105am-12go-sa-landing .tt-12go-search-only-card,
body.dark.tt-rc105am-12go-sa-landing .tt-12go-search-only-card {
  background: rgba(10, 28, 45, .92) !important;
  border-color: rgba(251, 146, 60, .24) !important;
}

body.tt-rc105am-12go-sa-landing .tt-12go-widget-scroll,
body.tt-rc105am-12go-sa-landing .tt-12go-sa-widget-shell {
  box-sizing: border-box !important;
  height: auto !important;
  max-width: 100% !important;
  min-height: 0 !important;
  overflow: visible !important;
  padding: 0 !important;
  width: 100% !important;
}

body.tt-rc105am-12go-sa-landing .tt-12go-sa-widget-shell > .one2go {
  box-sizing: border-box !important;
  height: auto !important;
  margin: 0 auto !important;
  max-width: 100% !important;
  min-height: 0 !important;
  width: 100% !important;
}

body.tt-rc105am-12go-sa-landing .tt-12go-sa-widget-shell > .one2go .height {
  height: auto !important;
  min-height: 0 !important;
}

body.tt-rc105am-12go-sa-landing .tt-12go-sa-widget-shell .one2go .o2grow {
  align-items: stretch !important;
  box-sizing: border-box !important;
  display: grid !important;
  gap: 10px !important;
  grid-template-columns: minmax(160px, 1fr) minmax(160px, 1fr) minmax(180px, .9fr) minmax(180px, .9fr) !important;
  margin: 0 !important;
  padding: 14px !important;
}

body.tt-rc105am-12go-sa-landing .tt-12go-sa-widget-shell .one2go .o2gcol {
  box-sizing: border-box !important;
  float: none !important;
  max-width: none !important;
  min-width: 0 !important;
  padding: 0 !important;
  width: auto !important;
}

body.tt-rc105am-12go-sa-landing .tt-12go-sa-widget-shell .one2go .o2gform-control,
body.tt-rc105am-12go-sa-landing .tt-12go-sa-widget-shell .one2go .data-picker-button_12go,
body.tt-rc105am-12go-sa-landing .tt-12go-sa-widget-shell .one2go .o2ggo {
  box-sizing: border-box !important;
  min-height: 42px !important;
  white-space: nowrap !important;
  width: 100% !important;
}

body.tt-rc105am-12go-sa-landing .tt-12go-powered,
body.tt-rc105am-12go-sa-landing #powered.tt-12go-powered {
  line-height: 1.15 !important;
  margin: 2px 0 0 !important;
  padding: 0 !important;
}

body.tt-rc105am-12go-sa-landing .tt-12go-warning-strip {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  justify-content: space-between !important;
  margin-top: 14px !important;
}

body.tt-rc105am-12go-sa-landing .tt-12go-warning-strip span {
  flex: 1 1 260px !important;
}

body.tt-rc105am-12go-sa-landing .tt-12go-warning-strip span::before {
  content: "* " !important;
}

body.tt-rc105am-12go-sa-landing .tt-12go-sa-city-widgets {
  margin: 22px auto 0 !important;
  overflow: visible !important;
  width: min(1180px, 100%) !important;
}

body.tt-rc105am-12go-sa-landing .tt-12go-city-grid {
  align-items: start !important;
  display: grid !important;
  direction: ltr !important;
  gap: clamp(18px, 2vw, 24px) !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  justify-items: center !important;
  margin: 0 auto !important;
  max-width: 1180px !important;
  overflow: visible !important;
  width: 100% !important;
}

body.tt-rc105am-12go-sa-landing .tt-12go-city-widget {
  align-items: center !important;
  background: rgba(255, 255, 255, .90) !important;
  border: 1px solid rgba(15, 23, 42, .10) !important;
  border-radius: 26px !important;
  box-sizing: border-box !important;
  direction: ltr !important;
  display: flex !important;
  justify-content: center !important;
  margin: 0 auto !important;
  max-width: 584px !important;
  overflow: visible !important;
  padding: 12px !important;
  text-align: start !important;
  width: 100% !important;
}

body.tt-rc105am-12go-sa-landing .tt-12go-city-widget::before {
  content: none !important;
  display: none !important;
}

html[data-theme="dark"] body.tt-rc105am-12go-sa-landing .tt-12go-city-widget,
html[data-tt-theme="dark"] body.tt-rc105am-12go-sa-landing .tt-12go-city-widget,
html.tt-dark-mode body.tt-rc105am-12go-sa-landing .tt-12go-city-widget,
body.dark-mode.tt-rc105am-12go-sa-landing .tt-12go-city-widget,
body.dark.tt-rc105am-12go-sa-landing .tt-12go-city-widget {
  background: rgba(10, 28, 45, .92) !important;
  border-color: rgba(148, 163, 184, .20) !important;
}

body.tt-rc105am-12go-sa-landing .tt-12go-city-widget-inner,
body.tt-rc105am-12go-sa-landing .tt-12go-city-widget-inner onetwogo-travelto-widget,
body.tt-rc105am-12go-sa-landing .tt-12go-city-widget onetwogo-travelto-widget {
  direction: ltr !important;
  display: block !important;
  margin: 0 auto !important;
  max-width: 100% !important;
  min-width: 520px !important;
  overflow: visible !important;
  text-align: initial !important;
  transform: none !important;
  width: 560px !important;
}

@media (max-width: 1180px) {
  body.tt-rc105am-12go-sa-landing .tt-12go-city-grid {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 760px) {
  body.tt-service-visual-page .tt-service-header-shell[data-tt-service-generated="1"] {
    padding: 8px 0 10px !important;
  }

  body.tt-service-visual-page .tt-service-header-shell[data-tt-service-generated="1"] .tt-service-header-inner {
    min-height: 66px !important;
    width: 100% !important;
  }

  body.tt-service-visual-page .tt-service-header-shell[data-tt-service-generated="1"] .tt-service-header-panorama {
    height: clamp(156px, 45vw, 220px) !important;
    margin-top: 10px !important;
    width: calc(100vw - 20px) !important;
  }

  body.tt-rc105am-12go-sa-landing .tt-12go-sa-inner {
    width: calc(100vw - 20px) !important;
  }

  body.tt-rc105am-12go-sa-landing .tt-12go-sa-hero.tt-12go-sa-hero-simple {
    height: clamp(156px, 45vw, 220px) !important;
    margin: 10px auto 14px !important;
    width: calc(100vw - 20px) !important;
  }

  body.tt-rc105am-12go-sa-landing .tt-12go-search-only-card {
    border-radius: 20px !important;
    padding: 12px !important;
  }

  body.tt-rc105am-12go-sa-landing .tt-12go-sa-widget-shell .one2go .o2grow {
    grid-template-columns: 1fr !important;
    padding: 12px !important;
  }

  body.tt-rc105am-12go-sa-landing .tt-12go-sa-widget-shell .one2go .o2ggo {
    min-height: 52px !important;
    white-space: normal !important;
  }

  body.tt-rc105am-12go-sa-landing .tt-12go-city-widget {
    max-width: 100% !important;
    overflow-x: auto !important;
    padding: 10px !important;
    -webkit-overflow-scrolling: touch;
  }

  body.tt-rc105am-12go-sa-landing .tt-12go-city-widget-inner,
  body.tt-rc105am-12go-sa-landing .tt-12go-city-widget-inner onetwogo-travelto-widget,
  body.tt-rc105am-12go-sa-landing .tt-12go-city-widget onetwogo-travelto-widget {
    min-width: 0 !important;
    width: 100% !important;
  }
}
