/* Minification failed. Returning unminified contents.
(193,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(194,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(195,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
 */
/*  
    This was moved to a partial SCSS:
    _departure-airport.scss
*/

/* ----------------------------------------------
   CRITICAL ITINERARY PAGE
 * ---------------------------------------------- */
/*
   Planet cruise website variables
*/
/* -----------------------------------------------------------------------------------------
    Cruise Price list
----------------------------------------------------------------------------------------- */
.departs-from-message {
  font-size: 16px;
  color: #333;
  letter-spacing: 0.03rem;
}

.price-row-link {
  width: 100%;
  display: block;
  cursor: pointer;
  text-decoration: none;
  color: #333;
}
.price-row-link:hover {
  text-decoration: underline;
}
.price-row-link:hover .price-value-dd {
  text-decoration: none;
}

.price-row-dl {
  border-bottom: 1px solid #f4f4f4;
  padding: 0.5rem 0;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  text-decoration: none;
  color: #333;
}

.price-label-dt {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
  align-items: center;
  padding: 0 !important;
  margin: 0 !important;
  line-height: initial !important;
  text-decoration: none;
  color: #333;
}
.price-label-dt > p {
  font-size: 16px;
  width: 100%;
  display: block;
  padding: 0;
  margin: 0;
  color: #333;
  font-weight: 700;
}

.price-value-dd {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  margin-left: auto;
  margin-right: 0;
  padding-right: 0.5rem;
  min-width: 110px;
  font-weight: 600;
}

.price-value__wasprice {
  font-size: 12px;
  width: 100%;
  text-align: right;
  display: block;
  text-decoration: line-through;
  white-space: nowrap;
  font-weight: 400;
  color: #666;
}

.price-description-message {
  font-size: 13px;
  display: block;
  color: #333;
  letter-spacing: 0.01em;
  width: 100%;
  margin-top: 0px;
  font-weight: 400;
}

.guarantee-description-message {
  font-size: 13px;
  line-height: 1em;
  display: block;
  color: #757575;
  letter-spacing: 0.03rem;
  width: 100%;
  margin-top: 0.2rem;
  font-weight: 400;
}

/* -----------------------------------------------------------------------------------------
    ITINERARY PHOTOGALLERY
----------------------------------------------------------------------------------------- */
.photogallery {
  display: block;
  width: 100%;
  position: relative;
}

.photogallery__slide {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: auto;
  position: relative;
}
.photogallery__slide picture {
  background-color: #f4f4f4;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: auto;
}
.photogallery__slide picture img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 700/485;
}
.photogallery__slide .videoWrapper {
  width: 100%;
  background-color: #f4f4f4;
  display: flex;
  align-items: center;
  justify-content: center;
}

.photogallery__caption {
  position: absolute;
  left: 0px;
  right: 0px;
  bottom: 0px;
  background-color: rgba(0, 0, 0, 0.7);
  color: white;
  padding: 0.5rem 0.5rem 0.5rem 0.8rem;
  font-size: 14px;
  letter-spacing: 0.05em;
}
.photogallery__caption:empty {
  display: none;
}

.special-carousel-ad {
  position: absolute;
  top: 1rem;
  left: 1rem;
  padding: 0.3rem 0.6rem;
  background-color: #333;
  min-width: 80px;
  color: white;
  text-align: left;
  letter-spacing: 0.04em;
  z-index: 1;
  border-radius: 9999px;
}

/* ----------------------------------------------------------------------------
    Destination carousel snapper
---------------------------------------------------------------------------- */
.photogallery-snapper {
  --slider-padding: 0rem;
  --slider-column-gap: 0.5rem;
  --slide-width: 100%;
  display: block;
  width: 100%;
  height: auto;
  margin: 0 auto;
  padding-left: 0rem;
  padding-right: 0rem;
  position: relative;
}
.photogallery-snapper [data-slider-next], .photogallery-snapper [data-slider-prev] {
  position: absolute;
  border: none;
  appearance: none;
}

.photogallery-snapper__slider {
  display: block;
  position: relative;
  width: 100%;
  overflow: hidden;
  margin: 0 auto;
  position: relative;
}

.photogallery-snapper__track {
  display: flex;
  position: relative;
  list-style: none;
  margin: 0;
  padding: 0;
}
.photogallery-snapper__track li {
  width: 100%;
  min-width: 100%;
}

/* -----------------------------------------------------------------------------------------
    Departure airport
----------------------------------------------------------------------------------------- */
.itin-airport-select-label {
  font-size: 16px;
  letter-spacing: 0.03rem;
  margin-top: 8px;
}

#departureAirportsFieldset {
  border: 0px !important;
  padding: 0rem;
  margin-top: 0.3rem;
}

.itin-airport-dropdown-msg {
  font-size: 12px;
}

.srp-search-select select {
  font-size: 16px;
  letter-spacing: 0.03rem;
  height: 32px;
  padding: 0.2rem;
  width: 100%;
  background-color: #ffffff;
  border: 1px solid #c8c8c8;
}

.airport-selection-hr {
  border: 0;
  padding-top: 10px;
  padding-bottom: 8px;
}

/* Used when there is no airport dropdown */
.departure-info-hr {
  border-bottom: 1px dotted #f4f4f4;
  padding-top: 0.6em;
  margin-bottom: 1.4em;
}

/* -----------------------------------------------------------------------------------------
    Itinerary overview
----------------------------------------------------------------------------------------- */
.itinerary-overview__title {
  margin: 1rem 0;
  display: block;
  font-weight: 600;
  font-size: 24px;
  color: #404040;
  margin-top: 1rem;
  margin-bottom: 0.6rem;
  line-height: 1.3;
}
@media (max-width: 400px) {
  .itinerary-overview__title {
    font-size: 18px !important;
  }
}

.itinerary-overview {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
}
@media (max-width: 800px) {
  .itinerary-overview {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .itinerary-overview .itinerary-overview__left {
    width: 100%;
    max-width: 100%;
  }
  .itinerary-overview .itinerary-overview__right {
    width: 100%;
    padding: 1rem;
  }
}

.itinerary-overview__left {
  width: 100%;
  max-width: 700px;
}
.itinerary-overview__left .carousel {
  background-color: transparent !important;
}
@media (max-width: 1100px) {
  .itinerary-overview__left {
    max-width: 500px;
  }
}
@media (max-width: 900px) {
  .itinerary-overview__left {
    max-width: 400px;
  }
}

.itinerary-overview__right {
  padding: 0 0 0 2rem;
  width: 450px;
}

/* -----------------------------------------------------------------------------------------
    critical-cruise-information
----------------------------------------------------------------------------------------- */
.critical-cruise-information {
  width: 100%;
}
.critical-cruise-information > ul {
  width: 100%;
  list-style: none;
  width: 100%;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  align-items: center;
  padding: 0rem 0.2rem 0.2rem 0;
  margin: 0 0 1rem 0;
  border-bottom: 1px solid #f4f4f4;
}
.critical-cruise-information > ul > li {
  padding: 0rem 0.5rem 0.5rem 0;
  margin-right: 1.5rem;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  font-size: 14px;
  letter-spacing: 0.03em;
}
.critical-cruise-information > ul > li i {
  display: inline-block;
  width: 13.42px;
  height: 14px;
  margin-right: 15px;
}
.critical-cruise-information > ul > li > p {
  margin: 0;
  padding: 0;
}
.critical-cruise-information > ul > li .cruise-type-tag {
  margin-top: 5px;
  margin-bottom: 5px;
}
@media (max-width: 900px) {
  .critical-cruise-information > ul > li .critical-cruise-information__tags {
    width: 100%;
  }
}

/* -----------------------------------------------------------------------------------------
    Main CTA buttons and Messages
----------------------------------------------------------------------------------------- */
.social-proof-messaging {
  text-align: center;
}
.social-proof-messaging a {
  color: #c70002 !important;
  font-size: 12px;
  margin-top: 8px;
  padding: 0px;
  text-decoration: none;
}
.social-proof-messaging .fa-users {
  font-size: 14px;
}
.social-proof-messaging span {
  display: inline;
  margin-bottom: 0;
  width: 100%;
  font-weight: 600;
}

.itinerary-promo-message {
  width: 100%;
  display: block;
  color: #757575;
  text-align: center;
  font-size: 13px;
  margin-top: 0.5rem;
  letter-spacing: 0.03em;
  text-decoration: none;
  font-weight: 400;
  text-align: left;
}

.price-match-guarantee {
  width: 100%;
  display: block;
  text-align: center;
  color: #1A7F26;
  margin-bottom: 1rem;
  margin-top: 0.1rem;
  font-size: 14px;
  text-decoration: underline;
}

.price-discount-message {
  width: 100%;
  display: block;
  text-align: center;
  color: #c9005e;
  font-size: 12px;
  letter-spacing: 0.03em;
  text-decoration: none;
  font-weight: 400;
}

.cruise-id-wrapper {
  width: 100%;
  text-align: center;
  margin-bottom: 1rem;
  background-color: #fff;
}
.cruise-id-wrapper > span {
  margin: auto;
  font-size: 14px;
  letter-spacing: 0.03em;
  color: #666;
}

/* -----------------------------------------------------------------------------------------

    Cruise attributes

    <div class="cruise-type-tag__wrapper">
        <div>
                <span class="cruise-type-tag" data-tippy-theme="blue" data-tippy-content="Cruise departs from Bridgetown, Barbados" tabindex="0">
                    <i class="fa fa-ship"></i> <span>Cruise</span>
                </span>
                <span class="cruise-type-tag--plus">
                    +
                </span>
                <span class="cruise-type-tag" data-tippy-theme="blue" data-tippy-content="This cruise includes flights" tabindex="0">
                    <i class="fa fa-plane"></i> <span>Flight</span>
                </span>
                <span class="cruise-type-tag--plus">
                    +
                </span>
                <span class="cruise-type-tag" data-tippy-theme="blue" data-tippy-content="This cruise includes 7 nights hotel accommodation" tabindex="0">
                    <i class="fa fa-h-square"></i> <span>Hotel</span>
                </span>
        </div>
    </div>

----------------------------------------------------------------------------------------- */
/*------------------------------------------------------------------- 
    ITINERARY PAGE -- CRUISE TYPE TAGS 2020
-------------------------------------------------------------------*/
.cruise-type-tag__wrapper {
  width: 100%;
  display: block;
  margin-bottom: 3px;
  outline: none;
  margin-top: 0.3rem;
}

.cruise-type-tag {
  display: inline-flex;
  padding: 0.4rem 1rem;
  border-radius: 50px;
  font-size: 0.7rem;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  outline: none;
  cursor: help;
  align-items: center;
  justify-content: center;
  line-height: initial;
  background-color: #f4f4f4;
  margin-bottom: 0.5rem;
  margin-right: 5px;
}
.cruise-type-tag i {
  margin-right: 10px;
  font-size: 10px;
  color: #666;
}

.cruise-type-tag--red {
  display: inline-flex;
  padding: 0.4rem 0;
  font-size: 0.7rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  outline: none;
  line-height: initial;
  color: #E62600;
  font-weight: 600;
  cursor: default;
}
.cruise-type-tag--red[data-tippy-content] {
  cursor: help;
}

.cruise-type-tag--plus {
  margin-right: 5px;
  display: inline-flex;
  font-size: 1rem;
  align-items: center;
  justify-content: center;
  line-height: initial;
}

.cruise-card__flight-not-included {
  display: inline-flex;
  padding: 0.3rem 0.6rem;
  border-radius: 50px;
  font-size: 0.7rem;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  outline: none;
  align-items: center;
  justify-content: center;
  line-height: initial;
  color: #E62600;
  cursor: default;
}
.cruise-card__flight-not-included[data-tippy-content] {
  cursor: help;
}

.cruise-card__book-without-flight {
  width: 100%;
  display: block;
  margin-top: 0.8rem;
  font-size: 0.7rem;
  letter-spacing: 0.03em;
  text-decoration: underline;
  color: #155d97;
}

/*------------------------------------------------------------------------------------------------- 
    ITINERARY PAGE -- Temp work for AIRPORT OPTIONAL -- move in dedicated style when ready
-------------------------------------------------------------------------------------------------*/
.flight-selection {
  margin-bottom: 20px;
}
.flight-selection .radiobox-basic {
  width: auto;
  display: inline-flex;
}

.book-without-flight {
  margin-top: -10px;
  font-size: 14px;
  letter-spacing: 0.03em;
}

.flights__radiobox {
  width: auto;
  margin-bottom: 0rem;
}
.flights__radiobox ul {
  width: 100%;
  list-style: none;
  padding: 0;
  margin: 0;
  text-align: left;
}
@media (max-width: 800px) {
  .flights__radiobox ul {
    background-color: #f4f4f4;
    padding: 1rem;
  }
  .flights__radiobox ul li {
    width: 100%;
  }
}
.flights__radiobox ul li {
  display: inline-flex;
  align-items: center;
  width: auto;
  padding: 0.5rem;
  margin: 0;
  cursor: pointer;
}
.flights__radiobox ul li.js-flightoption--selected {
  cursor: default;
}

.fake-radio {
  display: block;
  width: 18px;
  height: 18px;
  min-width: 18px;
  min-height: 18px;
  max-width: 18px;
  max-height: 18px;
  border-radius: 15px;
  border: 2px solid #333;
  background-color: white;
  position: relative;
  margin-right: 10px;
}

.js-flightoption--selected .fake-radio {
  border: 2px solid #155d97;
}
.js-flightoption--selected .fake-radio:before {
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  min-width: 8px;
  min-height: 8px;
  border-radius: 15px;
  background-color: #155d97;
  position: absolute;
  top: 3px;
  left: 3px;
}

.flights__radiobox fieldset {
  padding: 0 !important;
  margin: 0 !important;
  display: inline-block;
  border: 0px;
  outline: 0px;
  min-width: 0;
  background-color: transparent;
}

.flights-radiobox__label {
  display: flex;
  align-items: center;
}
@media (max-width: 600px) {
  .flights-radiobox__label {
    flex-wrap: wrap;
  }
  .flights-radiobox__label > span {
    display: block;
    width: 100%;
  }
  .flights-radiobox__label > fieldset {
    display: block;
    width: 100%;
  }
}
@media (max-width: 450px) {
  .flights-radiobox__label > fieldset select {
    display: block;
    width: 100%;
  }
}

/*------------------------------------------------------------------------------------------------- 
    NEW MOBILE PRICE FOR AIRPORTS
-------------------------------------------------------------------------------------------------*/
.mobile-airport-single-price {
  display: none;
  width: 100%;
  text-align: center;
  font-size: 1.6rem;
  font-weight: 600;
  color: #333;
  background-color: #f4f4f4;
  padding: 2rem 0 0 0;
}
.mobile-airport-single-price small {
  font-size: 14px;
  font-weight: 400;
}
@media (max-width: 800px) {
  .mobile-airport-single-price {
    display: block;
  }
}

