/* Minification failed. Returning unminified contents.
(246,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(247,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(248,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(259,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(264,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(265,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(272,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1271,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1272,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1273,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1284,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
 */
@charset "UTF-8";
/* ------------------------------------------------------------------------------------------------------
   CRUISE LINE DETAIL PAGE
   INCLUDES CSS
 * ------------------------------------------------------------------------------------------------------ */
/*
   Planet cruise website variables
*/
/* ------------------------------------------------------------------------------------------------------
   Cruise mini widget
 * ------------------------------------------------------------------------------------------------------ */
.cruise-mini-widget {
  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;
  position: relative;
  padding: 0;
  margin: 0;
  overflow-x: hidden;
}

.cruise-mini-widget__item {
  width: 47%;
  margin: 1.5%;
  font-size: 0.8rem;
  letter-spacing: 0.03em;
  padding: 2rem;
  background-color: white;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
}
.cruise-mini-widget__item:last-child {
  margin-right: 0;
}
.cruise-mini-widget__item picture {
  width: 100px;
  margin-left: 0;
  margin-right: 20px;
}
.cruise-mini-widget__item picture img {
  width: 100%;
}
.cruise-mini-widget__item > div {
  width: 100%;
}
@media (max-width: 900px) {
  .cruise-mini-widget__item {
    padding: 1rem;
  }
}
@media (max-width: 700px) {
  .cruise-mini-widget__item {
    width: 100%;
    margin-right: 0;
  }
}

.cruise-mini-widget__price {
  padding: 0;
  margin: 0;
  color: #c9005e;
}

.cruise-mini-widget__title {
  padding: 0;
  margin: 0;
  line-height: 1.2;
  color: #333;
}

.cruise-mini-widget__info {
  padding: 0;
  margin: 0;
  color: #757575;
}

/* ------------------------------------------------------------------------------------------------------
   DESTINATIONS
 * ------------------------------------------------------------------------------------------------------ */
.destinations-grid {
  width: 100%;
  display: block;
  margin-top: 3rem;
  position: relative;
}

.destinations-grid__carousel {
  width: 100%;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  padding: 0.5rem 0;
  overflow-x: hidden;
}

.destinations-grid__item {
  width: auto;
  height: 460px;
  max-height: 460px;
  margin: 0.6rem;
  position: relative;
}
@media (max-width: 1500px) {
  .destinations-grid__item {
    height: 390px;
    max-height: 390px;
  }
}
@media (max-width: 900px) {
  .destinations-grid__item {
    height: 260px;
    max-height: 260px;
  }
}
@media (max-width: 370px) {
  .destinations-grid__item {
    height: 200px;
    max-height: 200px;
  }
}
.destinations-grid__item a {
  display: block;
  height: 100%;
  position: relative;
}
@media (hover: hover) {
  .destinations-grid__item a:hover picture {
    height: 100%;
    display: block;
  }
  .destinations-grid__item a:hover picture img {
    -webkit-transform: scale(1.1) translateY(-15px);
    transform: scale(1.1) translateY(-15px);
    transition: all 0.5s ease-in-out;
  }
  .destinations-grid__item a:hover picture figcaption {
    transform: translate(0px, -10px);
    transition: all 1s ease-in-out;
  }
}
.destinations-grid__item picture {
  overflow: hidden;
}
.destinations-grid__item picture figcaption {
  position: absolute;
  left: 25px;
  right: 0;
  bottom: 20px;
  font-size: 1.4rem;
  line-height: 1.2;
  font-weight: 600;
  color: white;
  text-shadow: 0 0 3px #000, 0 0 5px #000;
  transition: all 1s ease-in-out;
}
.destinations-grid__item picture img {
  display: block;
  height: 100%;
  transition: all 0s ease-in-out;
}

.destinations-grid__2 {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
}
.destinations-grid__2 a {
  display: block;
  height: 48% !important;
}
.destinations-grid__2 a picture {
  height: 100%;
}
.destinations-grid__2 a:first-child {
  margin-bottom: 1.2rem;
}

.destinations-grid__filters {
  width: 100%;
  list-style: none;
  padding: 0;
  margin: 0;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.destinations-grid__filters li {
  margin: 1rem;
  padding: 0;
}
.destinations-grid__filters li.js-active-filter button {
  color: #c9005e;
  border-bottom: 1px solid #c9005e;
}
.destinations-grid__filters li:hover button {
  color: #c9005e;
  border-bottom: 1px solid #c9005e;
}
.destinations-grid__filters li button, .destinations-grid__filters li a {
  display: block;
  padding: 1rem;
  border: 0px;
  border-bottom: 1px solid #CCC;
  background-color: transparent;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  cursor: pointer;
  font-size: 16px;
}
@media (max-width: 600px) {
  .destinations-grid__filters {
    width: 100%;
    overflow-x: auto;
    align-items: center;
    justify-content: flex-start;
  }
  .destinations-grid__filters li {
    padding: 0.3rem;
  }
}

/* ----------------------------------------------------------------------------
    Destination carousel snapper
---------------------------------------------------------------------------- */
.destinationscarousel-snapper {
  --slider-padding: 2rem;
  --slider-column-gap: 0.5rem;
  --slide-width: 420px;
  display: block;
  width: 100%;
  max-width: 1800px;
  margin: 0 auto;
  padding-left: 2rem;
  padding-right: 2rem;
  position: relative;
}
@media (max-width: 1500px) {
  .destinationscarousel-snapper {
    --slide-width: 390px;
  }
}
@media (max-width: 900px) {
  .destinationscarousel-snapper {
    --slide-width: 260px;
    --slider-column-gap: 0.1rem;
    padding-left: 1rem;
    padding-right: 1rem;
  }
}
@media (max-width: 370px) {
  .destinationscarousel-snapper {
    --slide-width: 200px;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
}
.destinationscarousel-snapper [data-slider-prev] {
  margin-left: 1rem;
}
.destinationscarousel-snapper [data-slider-next] {
  margin-right: 1rem;
}

.destinationscarousel-snapper__slider {
  display: block;
  position: relative;
  width: 100%;
  overflow: hidden;
  margin: 0 auto;
  position: relative;
}

.destinationscarousel-snapper__track {
  display: flex;
  position: relative;
}

/* ------------------------------------------------------------------------------------------------------
   FLEET GRID
 * ------------------------------------------------------------------------------------------------------ */
.fleet-grid {
  width: 100%;
  margin: 0 auto 3rem auto;
  text-align: center;
}

.fleet-grid__ul {
  list-style: none;
  padding: 0;
  margin: 0 auto 3rem auto;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  padding-top: 4rem;
  /*    @media (max-width:790px) {
      .fleet-grid__li {
          width: 100%;
          margin-top: 2rem !important;
          display: flex;
          flex-direction: row-reverse;
      }
  }*/
}
@media (min-width: 1171px) {
  .fleet-grid__ul .fleet-grid__li {
    width: 31%;
  }
  .fleet-grid__ul .fleet-grid__li:nth-child(2), .fleet-grid__ul .fleet-grid__li:nth-child(5), .fleet-grid__ul .fleet-grid__li:nth-child(8), .fleet-grid__ul .fleet-grid__li:nth-child(11), .fleet-grid__ul .fleet-grid__li:nth-child(14), .fleet-grid__ul .fleet-grid__li:nth-child(17), .fleet-grid__ul .fleet-grid__li:nth-child(20), .fleet-grid__ul .fleet-grid__li:nth-child(23), .fleet-grid__ul .fleet-grid__li:nth-child(26), .fleet-grid__ul .fleet-grid__li:nth-child(29), .fleet-grid__ul .fleet-grid__li:nth-child(32), .fleet-grid__ul .fleet-grid__li:nth-child(35), .fleet-grid__ul .fleet-grid__li:nth-child(38) {
    margin-top: -6rem;
  }
}
@media (max-width: 1170px) {
  .fleet-grid__ul .fleet-grid__li {
    width: 46%;
    margin: 2%;
    max-width: 350px;
    padding-left: 0;
    padding-right: 0;
  }
  .fleet-grid__ul .fleet-grid__li:nth-child(odd) {
    margin-top: -6rem;
  }
}
@media (max-width: 800px) {
  .fleet-grid__ul .fleet-grid__li:nth-child(odd) {
    margin-top: 0;
  }
  .fleet-grid__ul .fleet-grid__li .fleet-grid__content {
    padding: 0 1rem;
  }
}
@media (max-width: 450px) {
  .fleet-grid__ul .fleet-grid__li {
    width: 100%;
  }
}

.fleet-grid__li {
  padding: 0;
  margin: 1rem;
  text-align: left;
  background-color: #fff;
  position: relative;
  margin: 0.5rem;
  padding-bottom: 2rem;
  border-radius: 3px;
  -webkit-box-shadow: 0 8px 8px 0 rgba(0, 0, 0, 0.05);
  -moz-box-shadow: 0 8px 8px 0 rgba(0, 0, 0, 0.05);
  box-shadow: 0 8px 8px 0 rgba(0, 0, 0, 0.03);
}

.fleet-grid__img {
  width: 100%;
  display: block;
}
.fleet-grid__img picture {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow-y: hidden;
  width: 100%;
  display: block;
}
.fleet-grid__img picture img {
  width: 100%;
  height: auto;
}

.fleet-icons {
  width: 100%;
  margin-top: -2.8rem;
  z-index: 3;
}
.fleet-icons > ul {
  width: 100%;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  list-style: none;
  padding: 0;
  margin: 0;
}
@media (max-width: 790px) {
  .fleet-icons {
    display: none;
  }
}

.fleet-icons__item {
  list-style: none;
  padding: 0;
  margin: 0 0.2rem;
  text-align: center;
  background-color: white;
  border-radius: 100px;
  height: 80px;
  min-width: 80px;
  max-width: 80px;
}
.fleet-icons__item p {
  text-align: center;
}
.fleet-icons__item p strong {
  width: 100%;
  display: block;
  font-size: 1.1rem;
  font-weight: 600;
}
.fleet-icons__item p span {
  font-size: 0.8rem;
  letter-spacing: 0.03em;
}

.fleet-grid__content {
  width: 100%;
  display: block;
  padding: 0 2rem;
}

.fleet-grid__title h2, .fleet-grid__title h3, .fleet-grid__title h4 {
  margin-bottom: 0;
}
.fleet-grid__title em {
  display: block;
  font-size: 0.9rem;
  margin-top: 0.3rem;
  color: #666;
  letter-spacing: 0.03em;
  font-weight: 200;
  text-decoration: none;
}

.fleet-grid__description {
  width: 100%;
  display: block;
  font-size: 0.9rem;
  letter-spacing: 0.03em;
  margin-top: 1rem;
}
.fleet-grid__description .fleet-grid__year {
  width: 100%;
  display: block;
  font-size: 0.8rem;
}
.fleet-grid__description .fleet-grid__p {
  display: block;
  width: 100%;
  font-size: 0.8rem;
}

.fleet-grid__cta {
  width: 100%;
  text-align: center;
}
.fleet-grid__cta button {
  width: 80%;
}
@media (max-width: 600px) {
  .fleet-grid__cta {
    font-size: 0.9rem;
  }
  .fleet-grid__cta button {
    padding: 0.8rem !important;
  }
}

/* ------------------------------------------------------------------------------------------------------
   FLEET GRID V2
 * ------------------------------------------------------------------------------------------------------ */
.ships-grid {
  width: 100%;
  margin: 0 auto 3rem auto;
  text-align: center;
}

.ships-grid__inner {
  width: 100%;
}

.ships-grid__ul {
  width: 100%;
  list-style: none;
  padding: 0;
  margin: 0 auto 3rem auto;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  margin-top: 5rem;
}
@media (max-width: 501px) {
  .ships-grid__ul {
    margin-bottom: 0rem;
  }
}

.ships-grid__li {
  width: 49%;
  background-color: #F3F5FB;
  border-bottom: 1px solid #F3F5FB;
  padding: 3rem;
  margin: 0 0 2% 0;
  text-align: left;
  position: relative;
}
@media (max-width: 1260px) {
  .ships-grid__li {
    padding: 2rem;
  }
}
.ships-grid__li h2, .ships-grid__li h3 {
  margin: 0;
  padding: 0;
}
.ships-grid__li:nth-child(even) {
  margin: -4rem 0 2% 2%;
}
@media (min-width: 660px) and (max-width: 1000px) {
  .ships-grid__li {
    padding-top: 5rem;
    margin-top: 4rem;
  }
  .ships-grid__li h2, .ships-grid__li h3 {
    font-size: 1.2rem;
  }
}
@media (max-width: 659px) {
  .ships-grid__li {
    width: 100%;
    margin: 2% 0 2% 0;
  }
  .ships-grid__li:nth-child(even) {
    margin: 2% 0 2% 0;
  }
}
@media (max-width: 501px) {
  .ships-grid__li {
    padding-top: 3rem;
    margin-top: 3rem;
  }
  .ships-grid__li h2, .ships-grid__li h3 {
    font-size: 1.1rem;
  }
  .ships-grid__li:nth-child(even) {
    margin-top: 3rem;
  }
  .ships-grid__li .btn-group.btn-group--right {
    justify-content: flex-start;
  }
}

/* ------------------------------------------------------------------------------------------------------
   IMG
 * ------------------------------------------------------------------------------------------------------ */
.ships-grid__img {
  max-width: 90px;
  display: block;
  margin-right: 2rem;
}
.ships-grid__img picture {
  display: block;
  width: 90px;
  height: 90px;
  border-radius: 200px;
  overflow: hidden;
}
.ships-grid__img picture img {
  max-height: 90px;
  display: block;
  border: 0;
  height: auto;
}
@media (min-width: 660px) and (max-width: 1000px) {
  .ships-grid__img {
    margin-right: 0;
    max-width: 140px;
    position: absolute;
    top: -70px;
    left: 50%;
    margin-left: -70px;
  }
  .ships-grid__img picture {
    width: 140px;
    height: 140px;
  }
  .ships-grid__img picture img {
    max-height: 140px;
  }
}
@media (max-width: 501px) {
  .ships-grid__img {
    margin-right: 0;
    position: absolute;
    top: -45px;
    left: 50%;
    margin-left: -45px;
  }
}

/* ------------------------------------------------------------------------------------------------------
   CONTENT
 * ------------------------------------------------------------------------------------------------------ */
.ships-grid__content {
  width: 100%;
  text-align: left;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
}

.ships-grid__description {
  font-size: 14px;
}

/* ------------------------------------------------------------------------------------------------------
   ship tags
 * ------------------------------------------------------------------------------------------------------ */
.ships-grid__tags {
  margin-bottom: 1rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid #999;
}
.ships-grid__tags span {
  margin: 0 0.6rem 0 0;
  padding: 0;
  font-size: 12px;
  letter-spacing: 0.03em;
}

/* ------------------------------------------------------------------------------------------------------
   FLEET COMPARISON
 * ------------------------------------------------------------------------------------------------------ */
.fleet-comparison {
  width: 100%;
  margin: 0 auto 3rem auto;
  text-align: center;
}

.fleet-comparison__inner {
  width: 100%;
}

.fleet-comparison__ul {
  width: 100%;
  list-style: none;
  padding: 0;
  margin: 0 auto 3rem auto;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  padding-top: 4rem;
}

.fleet-comparison__li {
  width: 100%;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: stretch;
  justify-content: flex-start;
  background-color: #fff;
  border-bottom: 1px solid #F3F5FB;
  -webkit-box-shadow: 0 8px 8px 0 rgba(0, 0, 0, 0.02);
  -moz-box-shadow: 0 8px 8px 0 rgba(0, 0, 0, 0.02);
  box-shadow: 0 8px 8px 0 rgba(0, 0, 0, 0.02);
  margin-bottom: 0.6rem;
}
@media (max-width: 800px) {
  .fleet-comparison__li {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    position: relative;
  }
  .fleet-comparison__li .fleet-table__cta {
    width: 100%;
    background-color: white;
    flex-direction: row;
    align-items: center;
    justify-content: center;
  }
  .fleet-comparison__li .fleet-table__cta .gaudi-btn--text-underline {
    margin-bottom: 0px !important;
    margin-right: 20px !important;
  }
}
@media (max-width: 550px) {
  .fleet-comparison__li .fleet-comparison__mobile-row {
    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;
    justify-content: center;
  }
  .fleet-comparison__li .fleet-table__content {
    padding: 0;
  }
  .fleet-comparison__li .fleet-table__img {
    width: 100%;
    display: block;
    min-width: initial;
    max-width: 100%;
    height: auto;
  }
  .fleet-comparison__li .fleet-table__img picture {
    width: 100%;
    height: auto;
    display: initial;
    align-items: initial;
    justify-content: initial;
    border-radius: initial;
    overflow: initial;
  }
  .fleet-comparison__li .fleet-table__img picture img {
    display: block;
    width: 100% !important;
    height: auto;
    border-radius: initial;
  }
}
@media (max-width: 420px) {
  .fleet-comparison__li {
    margin-bottom: 2rem;
    border-bottom: 1px solid #F3F5FB;
  }
  .fleet-comparison__li .fleet-table__data {
    order: 2;
  }
  .fleet-comparison__li .fleet-table__data ul {
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-start;
  }
  .fleet-comparison__li .fleet-table__data ul li {
    width: 50%;
    background-color: white;
    padding: 0;
    margin: 0px;
  }
  .fleet-comparison__li .fleet-table__description {
    margin-bottom: 10px !important;
  }
  .fleet-comparison__li .fleet-table__cta {
    width: 100%;
    flex-wrap: wrap;
    justify-content: center;
    padding: 0;
  }
  .fleet-comparison__li .fleet-table__cta .gaudi-btn--text-underline, .fleet-comparison__li .fleet-table__cta .gaudi-btn--primary {
    width: 100%;
    margin-bottom: 10px !important;
    margin-right: 0px !important;
  }
}

/* ------------------------------------------------------------------------------------------------------
  INSIDE THE LI
* ------------------------------------------------------------------------------------------------------ */
.fleet-comparison__mobile-row {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: stretch;
  justify-content: flex-start;
}

.fleet-table__img {
  width: 300px;
  max-width: 300px;
  min-width: 300px;
}
.fleet-table__img picture {
  width: 100%;
  display: block;
}
.fleet-table__img picture img {
  display: block;
  width: 100%;
}
@media (max-width: 1300px) {
  .fleet-table__img {
    width: 100px;
    max-width: 100px;
    min-width: 100px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .fleet-table__img picture {
    width: 100px;
    height: 100px;
    overflow: hidden;
    border-radius: 100px;
  }
  .fleet-table__img img {
    width: auto !important;
    height: 100px;
  }
}

.fleet-table__content {
  width: 100%;
  padding: 0 0 2rem 2rem;
  margin: 0;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
}

.fleet-table__title {
  width: 100%;
  text-align: left;
  margin-top: 0;
  margin-bottom: auto;
}
.fleet-table__title h2 {
  font-size: 1.2rem;
  margin: 0.5rem 0 0 0;
  padding: 0;
}
.fleet-table__title .fleet-table__class {
  font-size: 0.9rem;
  font-weight: 200;
  letter-spacing: 0.03em;
}
@media (max-width: 800px) {
  .fleet-table__title .fleet-table__class {
    font-size: 0.8rem;
  }
}
.fleet-table__title .fleet-table__year {
  font-size: 0.9rem;
  font-weight: 200;
  margin: 0 0 0 0;
}
@media (max-width: 800px) {
  .fleet-table__title .fleet-table__year {
    font-size: 0.8rem;
  }
}
.fleet-table__title .fleet-table__description {
  width: 100%;
  font-size: 0.9rem;
  font-weight: 200;
  margin: 0 0 0 0;
  padding: 0;
}
@media (max-width: 800px) {
  .fleet-table__title .fleet-table__description {
    font-size: 0.8rem;
  }
}

.fleet-table__data {
  width: 100%;
  border-top: 1px solid #F3F5FB;
  border-bottom: 1px solid #F3F5FB;
  padding: 1rem 0;
  font-size: 0.8em;
  letter-spacing: 0.03em;
}
.fleet-table__data ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
}
.fleet-table__data ul li {
  margin-right: 1rem;
}
.fleet-table__data ul li p {
  margin: 0 0.2em;
  padding: 0;
  text-align: left;
}

.fleet-table__cta {
  width: auto;
  min-width: 300px;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 2rem;
  margin: 0 0 0 1rem;
}
.fleet-table__cta .gaudi-btn--text-underline {
  width: 100%;
  margin-bottom: 10px !important;
}
.fleet-table__cta .gaudi-btn--primary {
  width: 100%;
}

/* ------------------------------------------------------------------------------------------------------
   FLEET ship-classes box
 * ------------------------------------------------------------------------------------------------------ */
.fleet-ship-section {
  width: 100%;
  display: block;
  margin-top: 4rem;
  padding-bottom: 2rem;
}

.ship-classes {
  display: none;
  max-width: 1200px;
  margin: auto;
  background-color: #F3F5FB;
  padding: 3rem 2rem 0 2rem;
  border: 10px solid red;
}
.ship-classes p {
  letter-spacing: 0.03em;
  line-height: 1.6;
  padding: 0;
  margin: 0;
}
.ship-classes strong {
  display: block;
  width: 100%;
}
.ship-classes h2 {
  max-width: 900px;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  margin-bottom: 2rem;
  padding-left: 0.8rem;
}
.ship-classes h2 span.close-ship-classes {
  margin-left: auto;
  margin-right: 0;
  width: 30px;
  height: 30px;
  cursor: pointer;
  display: block;
  opacity: 0.7;
}
.ship-classes h2 span.close-ship-classes:hover {
  opacity: 1;
}
.ship-classes h2 span.close-ship-classes:before {
  content: "";
  width: 1px;
  height: 30px;
  background-color: #333;
  display: block;
  transform: rotate(45deg);
  margin-left: 15px;
}
.ship-classes h2 span.close-ship-classes:after {
  content: "";
  width: 1px;
  height: 30px;
  background-color: #333;
  display: block;
  transform: rotate(-45deg);
  margin-top: -30px;
  margin-left: 15px;
}
@media (max-width: 800px) {
  .ship-classes p {
    font-size: 0.9rem;
    line-height: 1.4;
  }
}

.ship-classes__ul {
  max-width: 900px;
  list-style: none;
  padding: 0;
  margin: 0 auto 3rem auto;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
}
.ship-classes__ul > li {
  text-align: left;
  padding: 0 0 0 1rem;
  margin: 1rem;
  border-left: 1px solid #ccc;
}

/* ------------------------------------------------------------------------------------------------------
   ICONS OVERVIEW
 * ------------------------------------------------------------------------------------------------------ */
.icons-overview {
  width: 100%;
  margin: 3rem auto;
}

.icons-overview__ul {
  max-width: 1100px;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  list-style: none;
  margin: 0 auto;
}
@media (max-width: 800px) {
  .icons-overview__ul {
    overflow-x: auto;
    padding: 0 4rem;
  }
}

.icons-overview__li {
  max-width: 150px;
  list-style: none;
  margin: 0.5rem;
  padding: 0;
  text-align: center;
  position: relative;
}
.icons-overview__li picture {
  width: 150px;
  height: 150px;
  background-color: #F3F5FB;
  border-radius: 200px;
  text-align: center;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
}
.icons-overview__li picture img {
  display: block;
  width: 50px;
  height: auto;
}
.icons-overview__li p {
  width: 100%;
}
@media (min-width: 801px) {
  .icons-overview__li:hover .icons-overview__popup {
    display: block;
    -webkit-animation: slide-in-bck-bottom 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
    animation: slide-in-bck-bottom 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
  }
  .icons-overview__li:hover picture {
    background-color: #E4E9FA;
    -webkit-animation: pulsate-fwd 0.5s ease-in-out infinite both;
    animation: pulsate-fwd 0.5s ease-in-out infinite both;
  }
}

@media (max-width: 800px) {
  .icons-overview {
    background-color: #F3F5FB;
    padding: 3rem 0;
  }
}
@media (max-width: 800px) and (max-width: 500px) {
  .icons-overview {
    padding: 3rem 0;
  }
}
/* ------------------------------------------------------------------------------------------------------
   ICONS OVERVIEW POPUP
    - Maybe move on a separate file?
 * ------------------------------------------------------------------------------------------------------ */
@media (min-width: 801px) {
  .icons-overview__popup {
    display: none;
    position: absolute;
    bottom: 180px;
    left: 50%;
    z-index: 5;
    background-color: #fff;
    padding: 2rem;
    width: 400px;
    max-width: 400px;
    margin-left: -200px;
    height: auto;
    font-size: 0.8rem;
    -webkit-box-shadow: 0px 0px 19px -2px rgba(0, 0, 0, 0.17);
    -moz-box-shadow: 0px 0px 19px -2px rgba(0, 0, 0, 0.17);
    box-shadow: 0px 0px 19px -2px rgba(0, 0, 0, 0.17);
  }
  .icons-overview__popup:after {
    content: "";
    z-index: 99;
    position: absolute;
    left: 50%;
    margin-left: -20px;
    bottom: -20px;
    width: 0;
    height: 0;
    border-left: 20px solid transparent;
    border-right: 20px solid transparent;
    border-top: 20px solid #fff;
  }
}
/* ------------------------------------------------------------------------------------------------------
   latest-news-carousel
 * ------------------------------------------------------------------------------------------------------ */
.latest-news-carousel {
  display: block;
  width: 100%;
  margin: 3rem auto;
}
@media (max-width: 500px) {
  .latest-news-carousel {
    margin: 1rem auto;
  }
}

.latest-news-carousel__inner {
  width: 100%;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
}

.latest-news-carousel__slide {
  width: 100%;
  height: 100%;
  margin: 0 auto;
  border: 1px solid #F3F5FB;
  background-color: #F3F5FB;
  border-radius: 3px;
  padding: 2rem;
  display: flex;
  justify-content: center;
}
@media (max-width: 800px) {
  .latest-news-carousel__slide {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 2rem;
  }
  .latest-news-carousel__slide .latest-news-carousel__content {
    width: 100%;
  }
  .latest-news-carousel__slide .latest-news-carousel__content h2, .latest-news-carousel__slide .latest-news-carousel__content h3, .latest-news-carousel__slide .latest-news-carousel__content h4 {
    margin-top: 1rem;
    padding-top: 0;
    margin-bottom: 0;
    padding-bottom: 0;
  }
}

.latest-news-carousel__img {
  margin-right: 2rem;
  width: 240px;
  min-width: 240px;
}
@media (max-width: 800px) {
  .latest-news-carousel__img {
    width: 100%;
    min-width: 200px;
    max-width: initial;
    margin: 0 auto;
  }
}
.latest-news-carousel__img img {
  display: block;
  width: 100%;
}

.latest-news-carousel__content h2, .latest-news-carousel__content h3, .latest-news-carousel__content h4 {
  margin-top: 0;
  padding-top: 0;
}
.latest-news-carousel__content p {
  font-size: 0.9rem;
}

/* ----------------------------------------------------------------------------
    Latest news carousel snapper
---------------------------------------------------------------------------- */
.news-snapper {
  --slider-padding: 2rem;
  --slider-column-gap: 0.5rem;
  --slide-width: 700px;
  display: block;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding-left: 0rem;
  padding-right: 0rem;
  position: relative;
}
@media (max-width: 800px) {
  .news-snapper {
    --slide-width: 400px;
  }
}
.news-snapper [data-slider-prev] {
  margin-left: -0.5rem;
}
.news-snapper [data-slider-next] {
  margin-right: -0.5rem;
}

.news-snapper__slider {
  display: block;
  position: relative;
  width: 100%;
  overflow: hidden;
  margin: 0 auto;
  position: relative;
}

.news-snapper__track {
  display: flex;
  position: relative;
}

/* ------------------------------------------------------------------------------------------------------
   LIFE ONBOARD:

    the view changes through the data attribute:

    data-life-on-board-view="closed"
    data-life-on-board-view="open"

 * ------------------------------------------------------------------------------------------------------ */
[data-life-on-board-view=closed] #lob-switch--closed {
  border-color: #333;
  cursor: default;
}
[data-life-on-board-view=closed] .lob__tab {
  display: none;
}
@media (max-width: 600px) {
  [data-life-on-board-view=closed] .life-on-board__grid {
    padding-top: 1rem;
    padding-bottom: 1rem;
  }
  [data-life-on-board-view=closed] .life-on-board__grid:before {
    top: 0;
    bottom: 0;
  }
}
@media (max-width: 600px) {
  [data-life-on-board-view=closed] .life-on-board__grid__li {
    padding-top: 2rem;
  }
}
@media (max-width: 950px) {
  [data-life-on-board-view=closed] .life-on-board__grid__li {
    width: 20%;
    margin: 0.5rem;
  }
  [data-life-on-board-view=closed] .life-on-board__grid__li p {
    font-size: 0.8rem;
  }
}
@media (max-width: 600px) {
  [data-life-on-board-view=closed] .life-on-board__grid__li {
    width: 40%;
    margin: 0.5rem;
    margin-bottom: 1rem;
  }
  [data-life-on-board-view=closed] .life-on-board__grid__li:nth-child(2), [data-life-on-board-view=closed] .life-on-board__grid__li:nth-child(5), [data-life-on-board-view=closed] .life-on-board__grid__li:nth-child(8), [data-life-on-board-view=closed] .life-on-board__grid__li:nth-child(11), [data-life-on-board-view=closed] .life-on-board__grid__li:nth-child(14), [data-life-on-board-view=closed] .life-on-board__grid__li:nth-child(17) {
    margin-top: 0;
  }
  [data-life-on-board-view=closed] .life-on-board__grid__li:nth-child(odd) {
    margin-top: -2rem;
  }
}

[data-life-on-board-view=open] #lob-switch--open {
  border-color: #333;
  cursor: default;
}
[data-life-on-board-view=open] .life-on-board__grid:before {
  top: 40%;
  bottom: 0px;
}
[data-life-on-board-view=open] .life-on-board__grid__ul {
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  overflow-x: auto;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 4rem;
}
[data-life-on-board-view=open] .life-on-board__grid__ul .life-on-board__grid__li {
  width: 130px;
  min-width: 130px;
  max-width: 130px;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
[data-life-on-board-view=open] .life-on-board__grid__ul .life-on-board__grid__li p {
  width: 100%;
  font-size: 14px;
  letter-spacing: -0.01em;
  text-align: center;
  padding-bottom: 0.3rem;
}
[data-life-on-board-view=open] .life-on-board__grid__ul .life-on-board__grid__li picture {
  width: 100%;
  height: 200px;
  overflow: hidden;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
}
[data-life-on-board-view=open] .life-on-board__grid__ul .life-on-board__grid__li picture img {
  min-width: 100px;
}
[data-life-on-board-view=open] .life-on-board__grid__ul .life-on-board__grid__li:nth-child(odd) {
  margin-top: 1rem;
}

/* LIFE ON BOARD VIDEO */
.lob__video {
  background-color: #F3F5FB;
  border: 1px solid #ccc;
  padding: 2rem;
  width: 100%;
  max-width: 1000px;
  margin: 2rem auto 2rem 0;
  position: relative;
}

#lifeonboard {
  margin-top: 3rem;
}

/* ------------------------------------------------------------------------------------------------------
   LIFE ONBOARD -- GRID
 * ------------------------------------------------------------------------------------------------------ */
.life-on-board__grid {
  text-align: center;
  position: relative;
}
.life-on-board__grid:before {
  content: "";
  background-color: #F3F5FB;
  position: absolute;
  top: 20%;
  left: 0;
  right: 0;
  bottom: 20%;
  z-index: -1;
  -webkit-transition: 0.5s ease-in-out;
  -moz-transition: 0.5s ease-in-out;
  -o-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}

.life-on-board__grid__ul {
  list-style: none;
  margin: 0 auto;
  padding: 0;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  max-width: 1000px;
}

.life-on-board__grid__li {
  width: 200px;
  text-decoration: none;
  margin: 1rem;
  padding: 0;
}
.life-on-board__grid__li:nth-child(odd) {
  margin-top: 6rem;
}

.life-on-board__link {
  width: 100%;
  display: block;
  text-decoration: none;
  cursor: pointer;
}
.life-on-board__link picture img {
  width: 100%;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.life-on-board__link p {
  color: #333;
  margin: 0;
  padding: 0;
  text-align: left;
  letter-spacing: 0.02em;
}
@media (hover: hover) {
  .life-on-board__link:hover img {
    transition-duration: 0.5s;
    transition-property: transform;
    transform: translate(0, -1em);
    -webkit-transform: translate(0, -1em);
    -moz-transform: translate(0, -1em);
    -o-transform: translate(0, -1em);
    -ms-transform: translate(0, -1em);
  }
  .life-on-board__link:hover picture {
    overflow: hidden;
  }
}

/* ------------------------------------------------------------------------------------------------------
   LIFE ON BOARD -- DEALS
   -----------------------------------------------------------------------------------------------------

    They are different from .deals-filter as they are supposed to be used in 
    smaller space inside the modal of LOB.
*/
.lob-filter__ul {
  width: 100%;
  padding: 0;
  margin: 0;
  list-style: none;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: center;
}
.lob-filter__ul > li {
  display: block;
  width: 48%;
  margin: 1%;
  max-width: 400px;
  border: 1px solid #f4f4f4;
  border-radius: 2px 0 0 2px;
}
@media (max-width: 760px) {
  .lob-filter__ul > li {
    width: 100%;
    max-width: 600px;
    margin: 1% 0 1% 0;
  }
}
.lob-filter__ul > li .lob-filter__link {
  width: 100%;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  color: #333;
  background-color: white;
  text-decoration: none;
  border-radius: 8px;
}
.lob-filter__ul > li .lob-filter__link:hover .lob-filter__title {
  text-decoration: underline;
}

/* Left -- img */
.lob-filter__img {
  min-width: 140px;
  max-width: 140px;
  background-color: #f4f4f4;
}
.lob-filter__img img {
  display: block;
  max-width: 100%;
  border-radius: 2px 0 0 2px;
}
@media (max-width: 780px) {
  .lob-filter__img {
    min-width: 110px;
    max-width: 110px;
  }
}
@media (max-width: 320px) {
  .lob-filter__img {
    min-width: 50px;
    max-width: 50px;
    height: 120px;
    overflow: hidden;
  }
  .lob-filter__img img {
    width: initial;
    max-width: initial;
    height: 100%;
  }
}

/* right -- content  */
.lob-filter__content {
  text-align: left;
  padding: 1rem 0.5rem 1rem 1.5rem;
  background-color: white;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  border-radius: 0 8px 8px 0;
}

.lob-filter__date {
  width: 100%;
  text-align: left;
  margin: 0;
  padding: 0;
  font-size: 12px;
}
@media (max-width: 780px) {
  .lob-filter__date {
    font-size: 10px;
  }
}
@media (max-width: 600px) {
  .lob-filter__date {
    font-size: 12px;
  }
}

.lob-filter__title {
  width: 100%;
  display: block;
  text-align: left;
  margin: 0;
  padding: 0;
  font-weight: 600;
  font-size: 16px;
}
@media (max-width: 780px) {
  .lob-filter__title {
    font-size: 14px;
  }
}
@media all and (-ms-high-contrast: none) {
  .lob-filter__title {
    max-width: 200px;
    /* IE10 */
  }
  .lob-filter__title *::-ms-backdrop {
    max-width: 200px;
  }
}

.lob-filter__price {
  width: 100%;
  text-align: left;
  font-weight: 600;
  font-size: 18px;
  margin-top: auto;
}
.lob-filter__price small {
  font-size: 14px;
}
@media (max-width: 780px) {
  .lob-filter__price {
    font-size: 14px;
  }
  .lob-filter__price small {
    font-size: 10px;
  }
}

/* HIDDEN DEAL FILTER LIST */
.lob-filter__list ul {
  list-style: none;
  margin: 0.3rem auto;
  padding: 0;
  width: 100%;
  max-width: 900px;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}
@media (max-width: 800px) {
  .lob-filter__list ul {
    justify-content: flex-start;
  }
}
.lob-filter__list ul li {
  padding: 0.3rem;
  margin: 0.3rem 0.5rem;
}
.lob-filter__list ul li a {
  color: #333;
  letter-spacing: 0.03em;
  text-decoration: none;
}
.lob-filter__list ul li a:hover {
  text-decoration: underline;
}

/* ------------------------------------------------------------------------------------------------------
    SWITCH VIEWS


                        <div class="lob-switch-views row__1200" style="display: none;">
                        <ul>
                            <li id="lob-switch--closed">
                                <img src="/Content/Images/ship-features-icons/ship-size.svg" style="max-width: 20px;" />
                                Back to Grid View
                            </li>

                            <li id="lob-switch--open">
                                <img src="/Content/Images/ship-features-icons/ship-size.svg" style="max-width: 20px;" /> Text View
                            </li>
                        </ul>
                    </div>



----------------------------------------------------------------------------------------------------- */
.lob-switch-views ul {
  margin: 0 auto;
  padding: 0;
  list-style: none;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
}
.lob-switch-views ul li {
  border-radius: 100px;
  border: 1px solid #ccc;
  padding: 0.5rem 1.5rem 0.5rem 1rem;
  margin: 1rem;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  cursor: pointer;
}
.lob-switch-views ul li img {
  margin-right: 10px;
}
.lob-switch-views ul li:hover {
  border: 1px solid #333;
}
@media (max-width: 460px) {
  .lob-switch-views ul li {
    font-size: 0.7rem;
  }
}

/* ------------------------------------------------------------------------------------------------------
   LIFE ON BOARD  -- TAB
 * ------------------------------------------------------------------------------------------------------ */
.content-life-on-board {
  width: 100%;
  background-color: #F3F5FB;
  margin: 0 auto 3rem auto;
  -webkit-transition: 1s ease-in-out;
  -moz-transition: 1s ease-in-out;
  -o-transition: 1s ease-in-out;
  transition: 1s ease-in-out;
}

/* ------------------------------------------------------------------------------------------------------
   TAB CONTENT 
 * ------------------------------------------------------------------------------------------------------ */
.lob__tab {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  justify-content: center;
  padding: 4rem 0;
}
.lob__tab[style*="display: block"] {
  display: flex !important;
}

.lob__img {
  width: 250px;
  /*  
      -webkit-animation: kenburns-top 1s ease-out both;
      animation: kenburns-top 1s ease-out both;
  */
}
.lob__img img {
  width: 100%;
}
@media (max-width: 1250px) {
  .lob__img {
    display: none;
  }
}

.lob__content {
  width: 100%;
  max-width: 900px;
  padding: 0 0 0 3rem;
}
.lob__content h3:first-child {
  margin-top: 0;
}
@media (max-width: 960px) {
  .lob__content {
    padding: 0 3rem 0 3rem;
  }
}

/* ------------------------------------------------------------------------------------------------------
   LIFE ON BOARD - STATISTICS
 * ------------------------------------------------------------------------------------------------------ */
.life-on-board__statistics {
  text-align: center;
}
.life-on-board__statistics ul {
  max-width: 800px;
  list-style: none;
  padding: 0;
  margin: 0 auto;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
}
.life-on-board__statistics ul li {
  padding: 0.5rem 2rem;
  margin: 0;
}
.life-on-board__statistics ul li a {
  color: #333;
}
.life-on-board__statistics ul li a:hover {
  color: #0171a6;
}
.life-on-board__statistics ul li span {
  display: block;
  width: 100%;
  font-size: 0.7rem;
  letter-spacing: 0.03em;
  font-weight: 200;
}
.life-on-board__statistics ul li strong {
  display: block;
  width: 100%;
  font-size: 1.5rem;
  letter-spacing: 0.03em;
  font-weight: 800;
}
@media (max-width: 800px) {
  .life-on-board__statistics ul li {
    padding: 0.5rem 1rem;
  }
  .life-on-board__statistics ul li strong {
    font-size: 1.1rem;
  }
}
@media (max-width: 400px) {
  .life-on-board__statistics ul li strong {
    font-size: 0.8rem;
  }
}
@media (max-width: 320px) {
  .life-on-board__statistics ul {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .life-on-board__statistics ul li {
    width: 50%;
  }
  .life-on-board__statistics ul li:first-child {
    width: 100%;
  }
}

/* ------------------------------------------------------------------------------------------------------
   Supplier salespoint
 * ------------------------------------------------------------------------------------------------------ */
.supplier-salespoint {
  display: block;
  width: 100%;
  margin: 3rem auto 6rem auto;
}

.supplier-salespoint__carousel {
  width: 100%;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  justify-content: center;
}

.supplier-salespoint__item {
  width: 360px;
  min-width: 360px;
  min-height: 300px;
  background-color: #F3F5FB;
  border-radius: 10px;
  margin: 0 auto;
  margin: 1rem;
  padding: 2rem;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  justify-content: center;
}
.supplier-salespoint__item blockquote {
  width: 100%;
  padding: 2rem 1rem;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  justify-content: center;
  position: relative;
}
.supplier-salespoint__item blockquote img {
  position: absolute;
  left: -12px;
  top: 5px;
  max-width: 28px;
  opacity: 0.3;
}
.supplier-salespoint__item blockquote span {
  display: block;
  width: 100%;
  font-size: 1.1rem;
  line-height: 1.2;
  font-weight: 400;
  margin-top: 0.3rem;
  margin-bottom: auto;
}
.supplier-salespoint__item blockquote small {
  font-size: 12px;
  display: block;
  width: 100%;
  text-align: center;
  margin-top: 0.5rem;
  margin-bottom: 0;
  padding-top: 0.5rem;
  border-top: 1px solid #ccc;
}

/* --------------------------------------------------------------------------------
    COSTAL CRUISES - tabs
-------------------------------------------------------------------------------- */
.cruise-ships-facilities-section {
  margin-top: 3rem;
  padding-top: 4rem;
  padding-bottom: 1rem;
  border-top: 1px solid #f4f4f4;
  border-bottom: 1px solid #f4f4f4;
}

.facilities__wrapper {
  width: 100%;
  display: flex;
  margin-bottom: 2rem;
  padding-bottom: 1rem;
}

/* MENU */
.facilities__menu {
  width: 350px;
  margin-right: 6rem;
}
.facilities__menu ul {
  width: 100%;
  display: block;
  list-style: none;
  margin: 0;
  padding: 0;
}
.facilities__menu ul li {
  width: 100%;
  display: block;
  list-style: none;
  margin: 0;
  padding: 0;
}
.facilities__menu ul li a {
  width: 100%;
  border-left: 1px solid transparent;
  display: flex;
  align-items: center;
  padding: 1rem;
  margin: 1rem;
  text-decoration: none;
  color: #333;
  font-size: 16px;
  letter-spacing: 0.03em;
}
.facilities__menu ul li a:hover {
  border-left: 1px solid #333;
}
.facilities__menu ul li a:hover .facilities__arrow {
  display: inline-block;
}
.facilities__menu ul li.js-selected a {
  cursor: default;
  font-weight: 600;
  border-left: 1px solid #333;
}
.facilities__menu ul li.js-selected a .facilities__arrow {
  display: inline-block;
}

.facilities__arrow {
  display: none;
  margin-left: auto;
  width: 8px;
  height: 8px;
  border: solid #333;
  border-width: 0 1px 1px 0;
  padding: 4px;
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
}

/* CONTENT */
.facilities__content {
  width: 100%;
  display: block;
}

.facilities-tab__title {
  text-decoration: none;
}
.facilities-tab__title h3 {
  text-decoration: none;
  color: #333;
  font-size: 18px;
  width: 100%;
  display: flex;
  align-items: center;
}
@media (min-width: 961px) {
  .facilities-tab__title {
    cursor: default;
    display: none;
  }
}
@media (max-width: 400px) {
  .facilities-tab__title h3 {
    font-size: 16px;
  }
}

.facilities-tab__p {
  font-size: 16px;
  letter-spacing: 0.03em;
  line-height: 1.6;
}
.facilities-tab__p ul li {
  margin-bottom: 0.7rem;
  font-size: 16px;
  line-height: 1.6;
}
@media (max-width: 960px) {
  .facilities-tab__p {
    border-left: 1px solid #333;
    padding-left: 2rem;
  }
}
@media (max-width: 960px) {
  .facilities-tab__p {
    padding-left: 1rem;
  }
}

/* TAB LOGIC DESKTOP MOBILE */
@media (max-width: 960px) {
  .facilities__menu {
    display: none;
  }
}
.facilities-tab .facilities-tab__p {
  display: none;
}

.js-tab-is-visible .facilities-tab__p {
  display: block;
  margin-top: -20px;
  padding-top: 2rem;
}

@media (min-width: 961px) {
  .facilities-tab__title {
    display: none;
  }
}
@media (max-width: 960px) {
  .facilities-tab__title {
    display: block;
    width: 100%;
    padding: 0.5rem 0.5rem 0.5rem 2rem;
    border-left: 1px solid #ccc;
    margin-top: 1rem;
  }
  .facilities-tab__title:hover {
    border-left: 1px solid #333;
  }
  .js-tab-is-visible .facilities-tab__title {
    background-color: #f4f4f4;
    border-left: 1px solid #333;
  }
}
@media (max-width: 400px) {
  .facilities-tab__title {
    padding: 0.3rem 0.3rem 0.3rem 1rem;
    margin-top: 0.5rem;
  }
}
.facilities__arrow--mobile {
  display: inline-block;
  margin-left: 30px;
  width: 8px;
  height: 8px;
  border: solid #333;
  border-width: 0 1px 1px 0;
  padding: 4px;
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
}

.js-tab-is-visible .facilities__arrow--mobile {
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
}

.covid-safety {
  background-color: #FFF;
  padding: 2rem 3rem 2rem 3rem;
  margin-bottom: 4rem;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: center;
  -webkit-box-shadow: 0px 36px 34px -14px #eeeeee;
  -moz-box-shadow: 0px 36px 34px -14px #eeeeee;
  box-shadow: 0px 36px 34px -14px #eeeeee;
}
@media (max-width: 900px) {
  .covid-safety {
    padding: 1rem 1rem 0 1rem;
    margin-bottom: 0rem;
  }
}

.covid-safety__video {
  background-color: #f3f5fb;
  padding: 2rem;
  width: 800px;
  max-width: 800px;
  margin: 2rem auto 2rem auto;
  position: relative;
  /*  -webkit-box-shadow: 0px 36px 34px -14px #eeeeee;
  -moz-box-shadow: 0px 36px 34px -14px #eeeeee;
  box-shadow: 0px 36px 34px -14px #eeeeee;*/
}
@media (max-width: 500px) {
  .covid-safety__video {
    padding: 1rem;
  }
}

.covid-safety__list {
  width: 100%;
}
.covid-safety__list ul {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 1px 1px;
  grid-template-areas: ". . . " ". . . " ". . . ";
  list-style-position: inside;
}
@media (max-width: 1000px) {
  .covid-safety__list ul {
    grid-template-columns: 1fr;
    grid-template-areas: ". " ". " ". ";
  }
}
.covid-safety__list ul li {
  padding: 1.5rem;
  margin: 0;
  width: 100%;
  list-style: none;
  text-align: left;
}
.covid-safety__list ul li h3 {
  width: 100%;
  display: block;
  position: relative;
  letter-spacing: 0.03em;
}
.covid-safety__list ul li h3 svg {
  display: none;
  float: left;
  margin-left: 0px;
  margin-right: 15px;
  width: 15px;
  max-width: 15px;
}

.covid-safety__description {
  font-size: 14px;
}

/* 
    Special covid red message

    <div class="covid-message row__1200">
        <p>Message here</p>
    </div>

*/
.covid-message {
  width: 100%;
  font-size: 16px;
  color: #c9005e;
}
.covid-message a {
  width: 100%;
  display: block;
  color: #c9005e;
  text-decoration: none;
  cursor: pointer;
}
.covid-message a span {
  text-decoration: underline;
}

/* Hide and show button -- view more items 
    data-show-more-items-button="visible"
*/
[data-show-more-items-button=visible] {
  display: flex !important;
}

[data-show-more-items-button=hidden] {
  display: none !important;
}

@media (max-width: 1000px) {
  /* add lines to titles */
  .js-collapse-is-active.covid-safety__list ul li {
    border-bottom: 1px solid #f4f4f4;
    padding: 0.5rem;
    /* Hide content until clicked
       This is hidden only if:
        - JS is enabled ( .js-collapse-is-active class is present )
        - under 1000px viewport
    */
  }
  .js-collapse-is-active.covid-safety__list ul li h3 {
    font-size: 1rem;
    cursor: pointer;
  }
  .js-collapse-is-active.covid-safety__list ul li h3 svg {
    display: block;
    margin-top: 4px;
  }
  .js-collapse-is-active.covid-safety__list ul li.panel-is-open h3 svg {
    display: block;
    transform: rotate(90deg);
    transform-origin: center center;
    transition: all 0.1s linear;
  }
  .js-collapse-is-active.covid-safety__list ul li.panel-is-open .covid-safety__description {
    display: block;
  }
  .js-collapse-is-active.covid-safety__list ul li .covid-safety__description {
    display: none;
  }
}
/* ------------------------ 
      GENERIC ACCORDION 
      currently used for Home page FAQ links.
    This is only for functionality, not for style 
  ------------------------ 
    https://jsfiddle.net/lucaguglielmi/szqgnuw3

    <ul class="accordion__wrapper">

<!-- accordion item --> 
  <li class="accordion-item">
    <button aria-expanded="false" class="accordion__button">
      <span class="accordion__title">Why is the moon sometimes out during the day?</span>
      <span class="accordion__icon" aria-hidden="true"></span>
    </button>

    <div class="accordion-content">
          <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Elementum sagittis vitae et leo duis ut. Ut tortor pretium viverra suspendisse potenti.</p> 
    </div>
  </li>



<!-- accordion item --> 
  <li class="accordion-item">
    <button aria-expanded="false" class="accordion__button">
      <span class="accordion__title">Why is the moon sometimes out during the day?</span>
      <span class="accordion__icon" aria-hidden="true"></span>
    </button>

    <div class="accordion-content">
          <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Elementum sagittis vitae et leo duis ut. Ut tortor pretium viverra suspendisse potenti.</p> 
    </div>
  </li>



<!-- accordion item --> 
  <li class="accordion-item">
    <button aria-expanded="false" class="accordion__button">
      <span class="accordion__title">Why is the moon sometimes out during the day?</span>
      <span class="accordion__icon" aria-hidden="true"></span>
    </button>

    <div class="accordion-content">
          <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Elementum sagittis vitae et leo duis ut. Ut tortor pretium viverra suspendisse potenti.</p> 
    </div>
  </li>



<!-- accordion item --> 
  <li class="accordion-item">
    <button aria-expanded="false" class="accordion__button">
      <span class="accordion__title">Why is the moon sometimes out during the day?</span>
      <span class="accordion__icon" aria-hidden="true"></span>
    </button>

    <div class="accordion-content">
          <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Elementum sagittis vitae et leo duis ut. Ut tortor pretium viverra suspendisse potenti.</p> 
    </div>
  </li>



<!-- accordion item --> 
  <li class="accordion-item">
    <button aria-expanded="false" class="accordion__button">
      <span class="accordion__title">Why is the moon sometimes out during the day?</span>
      <span class="accordion__icon" aria-hidden="true"></span>
    </button>

    <div class="accordion-content">
          <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Elementum sagittis vitae et leo duis ut. Ut tortor pretium viverra suspendisse potenti.</p> 
    </div>
  </li>

<!-- accordion item --> 
  <li class="accordion-item">
    <button aria-expanded="false" class="accordion__button">
      <span class="accordion__title">Why is the moon sometimes out during the day?</span>
      <span class="accordion__icon" aria-hidden="true"></span>
    </button>

    <div class="accordion-content">
          <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Elementum sagittis vitae et leo duis ut. Ut tortor pretium viverra suspendisse potenti.</p> 
    </div>
  </li>
</ul>
*/
.accordion__wrapper {
  width: 100%;
  padding: 6rem;
  list-style: none;
  margin: 0;
  padding: 0;
}

/* ITEMS */
.accordion-item {
  border-bottom: 1px solid #ccc;
}

.accordion__button {
  position: relative;
  display: block;
  text-align: left;
  width: 100%;
  padding: 1rem 0;
  font-size: 16px;
  font-weight: 400;
  border: none;
  background: none;
  outline: none;
  border-radius: 0;
}
.accordion__button:hover {
  cursor: pointer;
}
.accordion__button:hover::after {
  cursor: pointer;
}
.accordion__button:hover .accordion__title {
  padding: 1em 1.5em 1em 0;
  font-weight: 400;
}
.accordion__button .accordion__title {
  padding: 1em 1.5em 1em 0;
  color: #333;
}
@media (max-width: 900px) {
  .accordion__button .accordion__title {
    font-size: 16px;
  }
}
.accordion__button .accordion__icon {
  display: inline-block;
  position: absolute;
  top: 18px;
  right: 0;
  width: 22px;
  height: 22px;
  border-radius: 22px;
}
.accordion__button .accordion__icon::before {
  display: block;
  position: absolute;
  content: "";
  top: 9px;
  left: 5px;
  width: 10px;
  height: 2px;
  background: #333;
}
.accordion__button .accordion__icon::after {
  display: block;
  position: absolute;
  content: "";
  top: 5px;
  left: 9px;
  width: 2px;
  height: 10px;
  background: #333;
}

.accordion__button[aria-expanded=true] {
  font-weight: 400;
  color: black;
  border-bottom: 1px solid transparent;
}
.accordion__button[aria-expanded=true] .accordion__icon::after {
  width: 0;
}
.accordion__button[aria-expanded=true] + .accordion-content {
  padding: 2rem 0;
  opacity: 1;
  max-height: 100%;
  transition: all 200ms linear;
  will-change: opacity, max-height;
}

.accordion-content {
  padding: 0;
  opacity: 0;
  max-height: 0;
  overflow: hidden;
  transition: opacity 200ms linear, max-height 200ms linear;
  will-change: opacity, max-height;
}

/* ----------------------------------------------------------------------
    FAQ WIDGET HOME PAGE
    THE REST OF THE css for FAQ is in _generic-accordion.scss
---------------------------------------------------------------------- */
.faq {
  background-color: #f4f4f4;
}
@media (max-width: 900px) {
  .faq {
    padding: 2rem 0;
  }
}

.faq__group {
  display: flex;
  margin-bottom: 3rem;
}
@media (max-width: 900px) {
  .faq__group {
    flex-wrap: wrap;
  }
}
.faq__group:first-child {
  margin-top: 0;
  padding-top: 4rem;
}
@media (max-width: 900px) {
  .faq__group:first-child {
    margin-top: 0rem;
    padding-top: 0rem;
  }
}
.faq__group:last-child {
  padding-bottom: 3rem;
  margin-bottom: 0;
}

.faq__group-title {
  width: 500px;
  min-width: 500px;
  padding: 1.5rem 0.5rem 0.5rem 0.5rem;
  margin-right: 1rem;
}
.faq__group-title h2 {
  font-size: 22px;
  margin-top: 0;
}
@media (max-width: 1100px) {
  .faq__group-title {
    width: 300px;
    min-width: 300px;
  }
}
@media (max-width: 900px) {
  .faq__group-title {
    width: 100%;
    min-width: 100%;
    padding-left: 0;
  }
  .faq__group-title h2 {
    font-size: 20px;
    font-weight: 600;
  }
}

/* --------------------------------------
    BLOG ARTICLE WIDGET HOME PAGE
-------------------------------------- */
.blog {
  width: 100%;
  display: block;
  margin: auto;
  margin-top: 4rem;
  padding-bottom: 2rem;
  text-align: center;
}

.blog__inner {
  width: 100%;
  display: flex;
  margin-top: 0rem;
  text-align: center;
  justify-content: center;
}
@media (max-width: 900px) {
  .blog__inner {
    flex-wrap: wrap;
  }
  .blog__inner .blog__intro {
    width: 100%;
    padding: 1rem 0 0 0;
    min-width: initial;
    text-align: center;
  }
  .blog__inner .blog__intro p {
    max-width: 500px;
    margin: auto;
  }
  .blog__inner .blog__list {
    max-width: 600px;
    margin: auto;
  }
}

.blog__intro {
  width: 500px;
  min-width: 500px;
  padding: 2rem 3rem 0 0;
  text-align: left;
}
@media (max-width: 900px) {
  .blog__intro {
    padding: 0 2rem 0rem 0;
  }
}
.blog__intro h2 {
  margin-bottom: 2rem;
}
.blog__intro p {
  line-height: 1.6;
}
@media (max-width: 1100px) {
  .blog__intro {
    width: 350px;
    min-width: 350px;
  }
  .blog__intro h2 {
    font-size: 20px;
    padding: 0px;
    margin: 0px;
  }
  .blog__intro p {
    padding: 0px;
    margin: 0px;
  }
}

.blog__list {
  width: 100%;
  padding: 2rem 0 0 0;
}
.blog__list ul {
  list-style: none;
  margin-left: 0;
  padding-left: 0;
}
.blog__list li:first-child a {
  border-top: 1px solid #f4f4f4;
}

.blog__img {
  max-width: 190px;
  margin-right: 1rem;
}
@media (max-width: 900px) {
  .blog__img {
    max-width: 80px;
  }
}

.article__link {
  width: 100%;
  display: flex;
  align-items: center;
  border-bottom: 1px solid #f4f4f4;
  padding: 10px 0;
  text-decoration: none;
}
.article__link:hover {
  text-decoration: none;
}
.article__link:hover .article__arrow-right svg {
  fill: #c9005e;
  -webkit-animation: shake-horizontal 4s cubic-bezier(0.455, 0.03, 0.515, 0.955) both;
  animation: shake-horizontal 4s cubic-bezier(0.455, 0.03, 0.515, 0.955) both;
}

.article__title {
  max-width: 400px;
  color: #333;
  font-size: 16px;
  font-weight: 600;
  letter-spacing: 0.03em;
  margin-left: 2rem;
  text-align: left;
  text-decoration: none;
}
.article__title:hover {
  text-decoration: underline;
}
@media (max-width: 900px) {
  .article__title {
    font-size: 14px;
  }
}

.article__arrow-right {
  margin-left: auto;
  width: 20px;
  margin-right: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
.article__arrow-right svg {
  width: 14px;
  max-width: 14px;
  fill: #ccc;
}

/* -------------------------------------------------------
   REVIEW BARS
-------------------------------------------------------*/
.rating-widget {
  width: 100%;
  position: relative;
  display: block;
}

.rating-widget__inner {
  display: flex;
  align-items: center;
}
@media (max-width: 800px) {
  .rating-widget__inner {
    margin: 0 auto;
    padding: 0px;
    flex-wrap: wrap;
  }
}

.rating-widget__list {
  padding: 2rem 0;
  display: flex;
  flex-wrap: wrap;
}
@media (max-width: 800px) {
  .rating-widget__list {
    padding: 0 0 0 0;
  }
}

.rating-widget__item {
  width: 100%;
  max-width: 25%;
  padding: 1rem 2rem 1rem 0;
}
@media (max-width: 960px) {
  .rating-widget__item {
    max-width: 33.33%;
  }
}
@media (max-width: 660px) {
  .rating-widget__item {
    max-width: 50%;
  }
}
@media (max-width: 450px) {
  .rating-widget__item {
    font-size: 14px;
  }
  .rating-widget__item .rating-widget__label {
    font-size: 14px;
  }
  .rating-widget__item .rating-widget__label strong {
    font-size: 14px;
  }
}

.rating-widget__label {
  width: 100%;
  display: flex;
  margin-bottom: 0.1rem;
  font-size: 16px;
  letter-spacing: 0.03rem;
  font-weight: 600;
  color: #666;
}
.rating-widget__label strong {
  margin-left: auto;
  position: relative;
  color: #333;
}
.rating-widget__label strong::before {
  content: "★";
  font-size: 0.8em;
  position: absolute;
  left: -1.2em;
  top: 50%;
  transform: translateY(-50%);
  border: none;
  margin-right: 0.2em;
  vertical-align: middle;
  color: #FBAE00;
}

.rating-widget__bar {
  width: 100%;
  height: 6px;
  display: block;
  border-radius: 10px;
  background-color: #F3F5FB;
}
.rating-widget__bar .progress {
  display: block;
  height: 100%;
  border-radius: 10px;
  background-color: #0079a8;
  transition: width 0.5s ease-out;
}

.rating-widget__score {
  padding-right: 10px;
  padding-left: 0.5rem;
}

.rating-widget__count {
  padding: 0.5rem 0 0 0rem;
  font-size: 1.3rem;
  font-weight: 600;
}
.rating-widget__count small {
  margin-left: 0.5rem;
}

@media (min-width: 801px) {
  .rating-widget__count {
    width: 110px;
    min-width: 110px;
    height: 110px;
    padding: 1rem;
    margin-right: 1rem;
    background-color: #F3F5FB;
    border-radius: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    text-align: center;
  }
  .rating-widget__count strong {
    width: 100%;
    display: block;
    font-size: 28px;
  }
  .rating-widget__count small {
    width: 100%;
    display: block;
    font-size: 14px;
    margin-top: -5px;
    margin-left: 0rem;
  }
}
.reviews-hub-page-search {
  background: #F8F8F8;
  border-radius: 6px;
  margin: 2rem 0;
  padding: 1.5rem;
}

.reviews-hub-page-search__title {
  margin-top: 0;
}

@media (min-width: 768px) {
  .reviews-hub-page-search__form-wrapper {
    display: flex;
  }
}

.reviews-hub-page-search__col-fields {
  /*@media(max-width: 767px) {
      width: 100%;
  }*/
}
@media (min-width: 768px) {
  .reviews-hub-page-search__col-fields {
    flex: 1 1 0;
    display: flex;
  }
}

@media (min-width: 768px) {
  .reviews-hub-page-search__col-submit {
    margin-left: 0.5rem;
  }
}
@media (max-width: 768px) {
  .reviews-hub-page-search__col-submit .gaudi-btn {
    width: 100%;
  }
}

.reviews-hub-page-search__field {
  position: relative;
  min-width: 200px;
  margin: 0 0 0.5rem 0;
  flex: 1 1 0;
}
@media (max-width: 991px) {
  .reviews-hub-page-search__field {
    min-width: 160px;
  }
}
@media (min-width: 768px) {
  .reviews-hub-page-search__field {
    margin: 0 0.5rem 0 0;
  }
}
.reviews-hub-page-search__field label {
  pointer-events: none;
  font-size: 13px;
  color: #717171;
  position: absolute;
  top: 8px;
  left: 8px;
}
.reviews-hub-page-search__field select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 100%;
  height: 63px;
  padding: 22px 30px 0 8px;
  font-size: inherit;
  border-radius: 4px;
  border: solid 1px #D0D0D0;
  background-position: right 6px top 51%;
  background-repeat: no-repeat;
  background-size: 16px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 960 560'%3E%3Cpath fill-opacity='1.0' d='M480,344.181L268.869,131.889c-15.756-15.859-41.3-15.859-57.054,0c-15.754,15.857-15.754,41.57,0,57.431l237.632,238.937   c8.395,8.451,19.562,12.254,30.553,11.698c10.993,0.556,22.159-3.247,30.555-11.698l237.631-238.937   c15.756-15.86,15.756-41.571,0-57.431s-41.299-15.859-57.051,0L480,344.181z'/%3E%3C/svg%3E");
}
.reviews-hub-page-search__field select:focus {
  border-color: #155d97;
}

/* 
-------------------------------------------------------
    REVIEW STARS
-------------------------------------------------------
*/
.reviews-list {
  display: block;
}

.review-wrapper {
  display: flex;
  width: 100%;
  border-bottom: 1px solid #ccc;
  padding-bottom: 1rem;
  margin-bottom: 1rem;
  /*    
  &:first-child {
      border-top: 1px solid #ccc;
      padding-top: 1rem;
  }
  */
}
@media (max-width: 800px) {
  .review-wrapper {
    flex-wrap: wrap;
    font-size: 14px;
  }
}

.review__img {
  /*    
  padding: 3rem;
  border-radius: 900px;
  background-color: #f4f4f4;
  display: flex;
  align-items:center;
  justify-content:center;
  */
}
@media (max-width: 800px) {
  .review__img {
    float: right;
    margin-right: 0.3rem;
  }
}

.review__info {
  width: 300px;
  padding: 2rem;
}
.review__info strong {
  width: 100%;
  display: block;
}
.review__info em {
  text-decoration: none;
  font-weight: normal;
}
@media (max-width: 800px) {
  .review__info {
    width: 100%;
    padding: 0px;
    margin-bottom: 0.3rem;
  }
  .review__info strong {
    /*            display: inline-block;
                width: auto;
                margin-right: 0.3rem;
    */
  }
  .review__info em {
    /*            text-decoration: none;
                font-weight: normal;
    */
  }
}

.review__content {
  width: 100%;
  max-width: 800px;
}
.review__content[data-status=collapsed] > p {
  height: 95px;
  overflow-y: hidden;
}
.review__content[data-status=expanded] > p {
  height: auto;
  overflow: initial;
}

.review__content--expand {
  display: inline-block;
  text-decoration: underline;
  letter-spacing: 0.03em;
  border: none;
  background-color: transparent;
  padding: 0;
  font-size: 16px;
  color: #155d97;
  cursor: pointer;
}
@media (max-width: 800px) {
  .review__content--expand {
    font-size: 14px;
    line-height: 1.6;
  }
}

/* 
-------------------------------------------------------
    REVIEW TITLE
-------------------------------------------------------
*/
/*
.review-title {
    width: 100%;
    padding-top: 2rem;

    h2 {
        display: block;
        width: 100%;
        margin-bottom: 0.5rem;

        @media (max-width: 800px) {
            font-size: 1.2rem;
        }
    }

    .stars-rating {
        display: inline-block;
        margin-right: 0.3rem;
    }
}
*/
.ship-stars {
  display: flex;
  align-items: center;
}

.stars-rating {
  display: inline-block;
}

.ship-stars__review-number {
  display: inline-block;
  margin-left: 6px;
}
.ship-stars__review-number a {
  text-decoration: none;
  color: #717171;
}
.ship-stars__review-number a:hover {
  text-decoration: underline;
  color: #333;
}

/* -------------------------------------------------------
   REVIEW -- READ MORE BUTTON
-------------------------------------------------------*/
.review__content {
  display: block;
  width: 100%;
}
.review__content p {
  color: #555;
  font-size: 16px;
}
.review__content[data-status=collapsed] {
  position: relative;
  overflow: hidden;
}
.review__content[data-status=collapsed] > p {
  max-height: 54px;
  overflow-y: hidden;
  margin-bottom: 0;
  position: relative;
}
.review__content[data-status=collapsed] > p::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 30px;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0), rgb(255, 255, 255) 70%);
  pointer-events: none;
}
@media (max-width: 1060px) {
  .review__content[data-status=collapsed] > p {
    max-height: 72px;
  }
}
@media (max-width: 650px) {
  .review__content[data-status=collapsed] > p {
    max-height: 124px;
  }
}
.review__content[data-status=expanded] .holiday-reviews__expand-btn {
  display: none;
}

.holiday-reviews__expand-btn {
  display: inline-block;
  text-decoration: underline;
  letter-spacing: 0.03em;
  margin-bottom: 1rem;
  border: none;
  background-color: transparent;
  padding: 0;
  font-size: 1rem;
  color: #155d97;
  cursor: pointer;
  transition: color 0.2s ease-in-out;
}
.holiday-reviews__expand-btn:hover {
  color: rgb(14.773255814, 65.4244186047, 106.226744186);
}
.holiday-reviews__expand-btn:focus {
  outline: 2px solid #155d97;
  outline-offset: 2px;
}

p {
  line-height: 1.5;
  font-size: 1rem;
}

.review__title {
  font-size: 1.5rem;
  margin-bottom: 0.5em;
}

.review__author {
  font-size: 0.9rem;
  color: #555;
}

/* 
-------------------------------------------------------
    REVIEW -- SORTING
-------------------------------------------------------
*/
/* 
    HOLIDAY REVIEWS: SORT DROPDOWN
    ----------------------------------------------------------------------------------------
*/
.holiday-reviews__sort-dropdown {
  margin-left: auto;
}
.holiday-reviews__sort-dropdown label {
  margin-right: 0.1rem;
}
.holiday-reviews__sort-dropdown select {
  font-weight: 700;
  font-size: inherit;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding: 6px 26px 6px 10px;
  border: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 960 560'%3E%3Cpath fill-opacity='1.0' d='M480,344.181L268.869,131.889c-15.756-15.859-41.3-15.859-57.054,0c-15.754,15.857-15.754,41.57,0,57.431l237.632,238.937   c8.395,8.451,19.562,12.254,30.553,11.698c10.993,0.556,22.159-3.247,30.555-11.698l237.631-238.937   c15.756-15.86,15.756-41.571,0-57.431s-41.299-15.859-57.051,0L480,344.181z'/%3E%3C/svg%3E");
  background-position: right 6px top 51%;
  background-repeat: no-repeat;
  background-size: 16px;
}
.holiday-reviews__sort-dropdown select:hover {
  background-color: #f2f2f2;
  border-radius: 4px;
  cursor: pointer;
}
.holiday-reviews__sort-dropdown select option {
  font-weight: 400;
}

.holiday-reviews__sort-bar {
  display: flex;
  margin-bottom: 2rem;
  width: 100%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}

/* 
-------------------------------------------------------
    REVIEW MODAL
-------------------------------------------------------
*/
.gaudi-modal--itinerary-reviews, .fullscreen-ship-gallery {
  overflow-y: hidden !important;
  max-width: 1200px;
  animation: none;
  -webkit-animation: none;
}
@media (max-width: 991px) {
  .gaudi-modal--itinerary-reviews, .fullscreen-ship-gallery {
    left: 1rem;
    right: 1rem;
    top: 1rem;
    bottom: 1rem;
  }
}
@media (max-width: 1232px) {
  .gaudi-modal--itinerary-reviews, .fullscreen-ship-gallery {
    left: 1rem;
    right: 1rem;
  }
}
@media (min-width: 1233px) {
  .gaudi-modal--itinerary-reviews, .fullscreen-ship-gallery {
    width: 100%;
  }
}
@media (min-width: 992px) {
  .gaudi-modal--itinerary-reviews, .fullscreen-ship-gallery {
    height: 100%;
    max-height: calc(100vh - 10rem);
  }
}
.gaudi-modal--itinerary-reviews .gaudi-modal__inner, .fullscreen-ship-gallery .gaudi-modal__inner {
  height: 100%;
  max-height: 100%;
  overflow-y: auto;
}

.darknight--reviews {
  background: rgba(0, 0, 0, 0.8);
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 3;
  cursor: pointer;
}

/* 
--------------------------------------------------------------------------------------------------------
    REVIEW WIDGET
    ITINERARY PAGE OVERWRITE 

    This SCSS is used in itinerary page and makes the review list into 2 columns rather than a list.
    On mobile, the reviews are listed in a carousel ( horizontal scrollbar )

    To use this layout, just apply the class .reviews-summary-layout at the same level of .reviews-list
--------------------------------------------------------------------------------------------------------
*/
#details-page #reviews-content {
  max-width: 1200px;
}

.reviews-list.reviews-summary-layout {
  display: flex;
  flex-wrap: wrap;
}
.reviews-list.reviews-summary-layout .review-wrapper {
  width: 100%;
  max-width: 50%;
  padding: 1rem;
  display: flex;
  flex-wrap: wrap;
  align-content: flex-start;
  border-bottom: 1px solid #fff;
}
.reviews-list.reviews-summary-layout .review-wrapper .review__info {
  width: 100%;
  padding: 0rem;
  font-size: 14px;
  letter-spacing: 0.03rem;
  margin-top: 0.2rem;
  order: 2;
}
.reviews-list.reviews-summary-layout .review-wrapper .review__img {
  float: left;
  margin-right: 0.6rem;
}
.reviews-list.reviews-summary-layout .review-wrapper .review__img img {
  max-height: 28px !important;
  opacity: 0.6;
}
@media (max-width: 1000px) {
  .reviews-list.reviews-summary-layout .review-wrapper p {
    font-size: 14px;
  }
}
@media (max-width: 900px) {
  .reviews-list.reviews-summary-layout {
    width: 100%;
    overflow-x: scroll;
    flex-wrap: nowrap;
  }
  .reviews-list.reviews-summary-layout .review-wrapper {
    min-width: 320px;
    border: 1px solid #f4f4f4;
    border-radius: 3px;
    margin-right: 1rem;
    padding: 2rem;
  }
}
@media (max-width: 370px) {
  .reviews-list.reviews-summary-layout .review-wrapper {
    min-width: 90%;
    padding: 1rem;
  }
}

.itinerary-reviews .reviews-list.row__1200.reviews-summary-layout {
  padding-left: 0;
  padding-right: 0;
}

/* 
-------------------------------------------------------
    NO REVIEW MESSAAGE
-------------------------------------------------------
*/
.no-review-message {
  display: block;
  width: 100%;
  border-left: 1px solid #ccc;
  padding: 1rem 2rem;
  margin-bottom: 2rem;
}
@media (max-width: 800px) {
  .no-review-message {
    margin-top: 1rem;
  }
}
@media (max-width: 600px) {
  .no-review-message {
    border-left: 0px;
    padding: 1rem 0rem;
  }
}
.no-review-message p {
  display: flex;
  width: 100%;
  flex-direction: column;
  margin: 0;
}
@media (max-width: 600px) {
  .no-review-message p span {
    font-size: 14px;
  }
}

.no-review-message_link {
  display: inline-block;
  width: auto;
  background: none;
  border: none;
  padding: 0;
  font: inherit;
  color: #01658c;
  text-decoration: underline;
  cursor: pointer;
  transition: color 0.15s ease-in-out;
}
.no-review-message_link:hover, .no-review-message_link:focus {
  color: #0a58ca;
  outline: none;
}

/* --------------------------------------------------------
    CRUISE DEALS FILTERS
-------------------------------------------------------- */
.deals-filter {
  width: 100%;
  text-align: center;
  margin: auto;
  padding: 3rem 0;
}
@media (max-width: 500px) {
  .deals-filter {
    padding-bottom: 1rem;
  }
}

.deals-filter__inner {
  max-width: 1200px;
  margin: auto;
}

/* row 1 -- filters dropdown wrapper */
.deals-filter__header {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow-x: auto;
}
@media (max-width: 600px) {
  .deals-filter__header {
    justify-content: flex-start;
    margin-bottom: 1rem;
  }
}
.deals-filter__header .mobile-text {
  display: none;
}
@media (max-width: 400px) {
  .deals-filter__header .desktop-text {
    display: none;
  }
  .deals-filter__header .mobile-text {
    display: block;
  }
}

/* filters dropdown  */
.deals-filter__dropdown button {
  font-size: 18px;
  font-weight: 400;
  color: #333;
  background-color: #fff !important;
  text-decoration: none;
  display: flex;
  align-items: center;
  margin: 0 1rem 1rem 1rem;
  border-bottom: 1px solid transparent;
  border-radius: 0;
}
@media (max-width: 600px) {
  .deals-filter__dropdown button {
    font-size: 16px;
    width: 100%;
    flex-wrap: nowrap !important;
    margin: 0 0 0 0;
    padding: 1rem;
    white-space: nowrap;
  }
}
.deals-filter__dropdown button:hover {
  color: #333;
  border-bottom: 1px solid #333;
}
.deals-filter__dropdown button .arrow-down {
  display: block;
  border: solid #333;
  border-width: 0 1px 1px 0;
  display: inline-block;
  padding: 3px;
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  margin-left: 15px;
}

/* row 2 -- cruise deals grid  */
.deals-filter__ul {
  width: 100%;
  padding: 0;
  margin: 0;
  list-style: none;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: center;
}
.deals-filter__ul > li {
  display: block;
  width: 31%;
  margin: 1%;
  max-width: 400px;
  border: 1px solid #f4f4f4;
  border-radius: 2px 0 0 2px;
}
@media (max-width: 1100px) {
  .deals-filter__ul > li {
    width: 48%;
    margin: 1%;
  }
  .deals-filter__ul > li:last-child {
    display: none;
  }
}
@media (max-width: 599px) {
  .deals-filter__ul > li {
    width: 100%;
    margin: 0.3rem 0 0.3rem 0;
  }
  .deals-filter__ul > li:nth-last-child(-n+6) {
    display: none;
  }
}
.deals-filter__ul > li .deals-filter__link {
  width: 100%;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  color: #333;
  background-color: white;
  text-decoration: none;
  border-radius: 8px;
}
.deals-filter__ul > li .deals-filter__link:hover .deals-filter__title {
  text-decoration: underline;
}

/* Left -- img */
.deals-filter__img {
  min-width: 140px;
  max-width: 140px;
  background-color: #f4f4f4;
}
.deals-filter__img img {
  display: block;
  max-width: 100%;
  border-radius: 2px 0 0 2px;
}
@media (max-width: 780px) {
  .deals-filter__img {
    min-width: 110px;
    max-width: 110px;
  }
}
@media (max-width: 320px) {
  .deals-filter__img {
    min-width: 50px;
    max-width: 50px;
    height: 120px;
    overflow: hidden;
  }
  .deals-filter__img img {
    width: initial;
    max-width: initial;
    height: 100%;
  }
}

/* right -- content  */
.deals-filter__content {
  text-align: left;
  padding: 1rem 0.5rem 1rem 1.5rem;
  background-color: white;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  border-radius: 0 8px 8px 0;
}

.deals-filter__date {
  width: 100%;
  text-align: left;
  margin: 0;
  padding: 0;
  font-size: 12px;
}
@media (max-width: 780px) {
  .deals-filter__date {
    font-size: 10px;
  }
}
@media (max-width: 600px) {
  .deals-filter__date {
    font-size: 12px;
  }
}

.deals-filter__title {
  width: 100%;
  display: block;
  text-align: left;
  margin: 0;
  padding: 0;
  font-weight: 600;
  font-size: 14px;
}
@media all and (-ms-high-contrast: none) {
  .deals-filter__title {
    max-width: 200px;
    /* IE10 */
  }
  .deals-filter__title *::-ms-backdrop {
    max-width: 200px;
  }
}

.deals-filter__price {
  width: 100%;
  text-align: left;
  font-weight: 600;
  font-size: 18px;
  margin-top: auto;
}
.deals-filter__price small {
  font-size: 14px;
}
@media (max-width: 780px) {
  .deals-filter__price {
    font-size: 14px;
  }
  .deals-filter__price small {
    font-size: 10px;
  }
}

/* HIDDEN DEAL FILTER LIST */
.deals-filter__list ul {
  list-style: none;
  margin: 0.3rem auto;
  padding: 0;
  width: 100%;
  max-width: 900px;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}
@media (max-width: 800px) {
  .deals-filter__list ul {
    justify-content: flex-start;
  }
}
.deals-filter__list ul li {
  padding: 0.3rem;
  margin: 0.3rem 0.5rem;
}
.deals-filter__list ul li a {
  color: #333;
  letter-spacing: 0.03em;
  text-decoration: none;
}
.deals-filter__list ul li a:hover {
  text-decoration: underline;
}

/* GENERIC RESPONSIVE VIDEO */
.cruise-line__video {
  background-color: #F3F5FB;
  padding: 2rem;
  width: 100%;
  max-width: 800px;
  margin: 2rem auto 2rem auto;
  position: relative;
  /*  -webkit-box-shadow: 0px 36px 34px -14px #eeeeee;
  -moz-box-shadow: 0px 36px 34px -14px #eeeeee;
  box-shadow: 0px 36px 34px -14px #eeeeee;*/
}
@media (max-width: 500px) {
  .cruise-line__video {
    padding: 1rem;
  }
}

.unique-tags {
  width: 100%;
  display: block;
  text-align: center;
}
.unique-tags h2, .unique-tags h3 {
  width: 100%;
  margin: auto;
  text-align: center;
}
.unique-tags ul {
  max-width: 1200px;
  margin: auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  list-style: none;
  padding: 0;
  margin: 0 auto;
}
.unique-tags ul li {
  display: block;
  padding: 1rem 0.5rem 1rem 0;
  font-size: 0.9rem;
  letter-spacing: 0.03em;
}

