/*//////////////////////////////////////////////////////////////////////////////
|| Utilities
//////////////////////////////////////////////////////////////////////////////*/
.booking-engine .error:before, .booking-engine .error:after {
  content: " ";
  display: table; }
.booking-engine .error:after {
  clear: both; }
.booking-engine .error {
  *zoom: 1; }

/*//////////////////////////////////////////////////////////////////////////////
|| Molecules
//////////////////////////////////////////////////////////////////////////////*/
.booking-engine {
  z-index: 5; }
  .booking-engine a, .booking-engine button {
    color: #ffffff; }
  .booking-engine button {
    text-decoration: none; }
    .booking-engine button:hover, .booking-engine button:focus {
      text-decoration: underline;
      color: #ffffff; }
  .booking-engine .error {
    background: #C4161C;
    color: #ffffff; }

.booking-engine [data-tab-slider-section="flights"] .ui--expander {
  position: relative; }

.booking-engine [data-tab-slider-section="flights"] .ui--expander__controls {
  bottom: 0px;
  position: absolute;
  cursor: pointer;
  height: 23px;
  line-height: 23px;
  background-image: url("../images/icons/show-more-btn.png");
  background-repeat: no-repeat; }
  .booking-engine [data-tab-slider-section="flights"] .ui--expander__controls.open {
    background-image: url("../images/icons/show-less-btn.png"); }
  html[dir="ltr"] .booking-engine [data-tab-slider-section="flights"] .ui--expander__controls {
    padding-left: 35px;
    background-position: left center; }
  html[dir="rtl"] .booking-engine [data-tab-slider-section="flights"] .ui--expander__controls {
    padding-right: 35px;
    background-position: right center; }
  .booking-engine [data-tab-slider-section="flights"] .ui--expander__controls .ui--expander__controls--open {
    display: none; }
  .booking-engine [data-tab-slider-section="flights"] .ui--expander__controls .ui--expander__controls--closed {
    display: initial; }
  .booking-engine [data-tab-slider-section="flights"] .ui--expander__controls.open .ui--expander__controls--closed {
    display: none; }
  .booking-engine [data-tab-slider-section="flights"] .ui--expander__controls.open .ui--expander__controls--open {
    display: initial; }

.ui--tab-slider {
  position: relative; }
  .ui--tab-slider .bottom-arc {
    bottom: auto;
    top: 100%; }

.ui--tab-slider__section-shim {
  display: inline-block;
  *display: inline;
  zoom: 1; }

.ui--tab-slider.nested .ui--tab-slider__tabs.back .table-display__cell > div {
  background: #46657A; }
.ui--tab-slider.nested .ui--tab-slider__shuttle {
  background: #A5936E; }
  body.high-contrast .ui--tab-slider.nested .ui--tab-slider__shuttle {
    background: #82704A; }
.ui--tab-slider.nested .ui--tab-slider__tabs.middle-runner {
  background: none; }
html[dir="ltr"] .ui--tab-slider.nested .ui--tab-slider__tabs .table-display__cell > div {
  padding-left: 50px;
  padding-right: 20px; }
html[dir="rtl"] .ui--tab-slider.nested .ui--tab-slider__tabs .table-display__cell > div {
  padding-right: 50px;
  padding-left: 20px; }
.ui--tab-slider.nested .ui--tab-slider__tabs-blend {
  position: absolute;
  top: 100%;
  height: 15px;
  width: 400px;
  margin-top: -15px;
  background-image: url("../images/backgrounds/book-a-trip-slider-grad.png");
  background-position: left bottom;
  background-repeat: no-repeat; }

.ui--tab-slider__tab-container {
  height: 86px;
  position: relative;
  overflow: hidden;
  margin-bottom: -1px; }

.ui--tab-slider__tabs {
  border-spacing: 1px;
  border-collapse: separate;
  position: absolute;
  bottom: 0px;
  font-size: 1.2em; }
  html[lang="fr"] .ui--tab-slider__tabs {
    font-size: 1.1em; }
  html[lang="ar"] .ui--tab-slider__tabs {
    font-family: Tahoma;
    font-weight: bold; }
  .ui--tab-slider__tabs:before, .ui--tab-slider__tabs:after {
    border-spacing: 0;
    width: 0;
    background: red; }
  .ui--tab-slider__tabs.back {
    margin-bottom: -1px; }
    .ui--tab-slider__tabs.back .table-display__cell > div {
      color: transparent; }
      body.high-contrast .ui--tab-slider__tabs.back .table-display__cell > div {
        background: #82704A; }
  .ui--tab-slider__tabs.front {
    margin-bottom: -1px; }
    .ui--tab-slider__tabs.front .table-display__cell > div {
      background: transparent; }
  .ui--tab-slider__tabs.middle-runner {
    height: 10px;
    width: 100%;
    background-image: url("../images/backgrounds/tab-content-slider-shadow.png");
    background-position: left bottom;
    background-repeat: repeat-x; }
  .ui--tab-slider__tabs .ui--tab-slider__shuttle {
    position: absolute;
    bottom: 0px;
    background: #537790;
    height: 100%;
    width: 50px;
    overflow: visible !important; }
    .ui--tab-slider__tabs .ui--tab-slider__shuttle .shuttle__wing {
      position: absolute;
      height: 100%;
      width: 69px;
      bottom: -1px;
      background-repeat: no-repeat;
      background-position: bottom left; }
      .ui--tab-slider__tabs .ui--tab-slider__shuttle .shuttle__wing.left {
        right: 100%;
        background-image: url("../images/backgrounds/tab-content-slider-wing-left.png"); }
      .ui--tab-slider__tabs .ui--tab-slider__shuttle .shuttle__wing.right {
        left: 100%;
        background-image: url("../images/backgrounds/tab-content-slider-wing-right.png"); }

.ui--tab-slider__tabs .table-display__cell {
  text-align: center;
  vertical-align: bottom;
  cursor: pointer; }
  .ui--tab-slider__tabs .table-display__cell > div {
    position: relative;
    background-image: url("../images/backgrounds/tab-content-tab-gold-background.png");
    background-repeat: repeat;
    color: #ffffff;
    padding: 15px; }
    html[dir="ltr"] .ui--tab-slider__tabs .table-display__cell > div {
      padding-left: 40px;
      padding-right: 10px; }
    html[dir="rtl"] .ui--tab-slider__tabs .table-display__cell > div {
      padding-right: 40px;
      padding-left: 10px; }
  .ui--tab-slider__tabs .table-display__cell img {
    position: absolute;
    width: 25px; }
    html[dir="ltr"] .ui--tab-slider__tabs .table-display__cell img {
      left: 15px; }
    html[dir="rtl"] .ui--tab-slider__tabs .table-display__cell img {
      right: 15px; }

.ui--tab-slider__wrapper {
  background: #537790;
  color: #ffffff;
  overflow: hidden; }
  .ui--tab-slider__wrapper .customSelect {
    color: black; }

.ui--tab-slider__container {
  position: relative;
  font-size: 0; }

.ui--tab-slider [data-tab-slider-section] {
  font-size: 14px;
  width: 100%;
  display: inline-block;
  vertical-align: top;
  overflow: hidden;
  position: relative; }

.bottom-arc {
  position: absolute;
  bottom: -42px;
  left: 0px;
  background-image: url("../images/backgrounds/booking-engine-bottom-arc.png");
  background-position: bottom left;
  background-repeat: repeat-x;
  height: 64px;
  width: 100%;
  z-index: 10; }

/*----------------------------------------------------------------------------------
HOMEPAGE SLIDER - SA-SLIDER:
----------------------------------------------------------------------------------*/
.homepage-slider, .homepage-slider .ui--carousel__wrapper {
  height: 429px; }

.cust-homepage-slider {
  width: 623px; }

.cust-homepage-slider article div {
  width: 350px;
  height: 340px;
  position: absolute;
  top: 70px;
  left: 30px;
  color: #527790; }

/*----------------------------------------------------------------------------------
HOMEPAGE OFFERS
----------------------------------------------------------------------------------*/
.cust-homepage-offers article {
  height: 142px;
  position: relative;
  background: #9D7499;
  color: #ffffff; }
  .cust-homepage-offers article:hover {
    background: #885F84; }
  .cust-homepage-offers article + article {
    border-top: 1px solid #BAA0B8; }
  body.high-contrast .cust-homepage-offers article {
    background: #885F84; }
    body.high-contrast .cust-homepage-offers article:hover {
      background: #7F4F7A; }

.cust-homepage-offers article a {
  display: inline-block;
  *display: inline;
  zoom: 1;
  cursor: pointer;
  text-decoration: none;
  color: #ffffff; }

.cust-homepage-offers article a {
  position: absolute;
  bottom: 15px;
  left: 20px;
  right: 20px; }

html[lang="ar"] .cust-homepage-offers article a{right: 20px; }

.cust-homepage-offers article a h2 {
  margin: 0px;
  padding: 0px;
  text-transform: uppercase; }

.cust-homepage-offers article a .label {
  display: inline-block;
  *display: inline;
  zoom: 1;
  width: 100%;
  cursor: pointer;
  text-transform: uppercase; }

.cust-homepage-offers article a span {
  display: inline-block;
  *display: inline;
  zoom: 1;
  cursor: pointer; }

.cust-homepage-offers article a span.link {
  /*width: 100%;*/
  /*border:1px solid blue;*/
  max-width: 250px;
  line-height: 16px;
  padding-top: 5px;
  padding-bottom: 5px;
  margin-top: -5px; }

.cust-homepage-offers article span.link {
  color: #fff;
  background-repeat: no-repeat; }

html[dir="ltr"] .cust-homepage-offers article span.link {
  background-position: center right;
  background-image: url("../images/icons/homepage-offer-icon.png");
  padding-right: 28px; }
html[dir="rtl"] .cust-homepage-offers article a {
  background-position: center left; }
html[dir="rtl"] .cust-homepage-offers article span.link {
  background-position: center left;
  background-image: url("../images/icons/homepage-offer-icon-left.png");
  padding-left: 28px; }
