/* Minification failed. Returning unminified contents.
(164,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(165,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(166,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(177,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(182,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(183,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(190,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(322,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(323,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(324,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2035,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2036,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2037,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
 */
/* ------------------------------------------------------------------------------------------------------
   DESTINATION DETAIL PAGE
 * ------------------------------------------------------------------------------------------------------ */
/*
   Planet cruise website variables
*/
/* ------------------------------------------------------------------------------------------------------
   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;
}

/* ------------------------------------------------------------------------------------------------------
   hero-deals
 * ------------------------------------------------------------------------------------------------------ */
.hero-deals {
  width: 100%;
  display: block;
  background: rgb(243, 245, 251);
  background: linear-gradient(180deg, rgb(243, 245, 251) 0%, rgb(229, 232, 241) 87%, rgb(255, 255, 255) 87%, rgba(255, 255, 255, 0.9990371148) 100%);
  position: relative;
  margin-bottom: 2rem;
  overflow-x: hidden;
}
.hero-deals.hero-deals--whitebg {
  background: #fff;
}
.hero-deals.hero-deals--whitebg .hero-deals__carousel {
  background: #fff;
}

.hero-deals__carousel {
  background: rgb(243, 245, 251);
  background: linear-gradient(180deg, rgb(243, 245, 251) 0%, rgb(229, 232, 241) 87%, rgb(255, 255, 255) 87%, rgba(255, 255, 255, 0.9990371148) 100%);
  padding-top: 4rem;
}
@media (max-width: 1050px) {
  .hero-deals__carousel {
    background-color: #F3F5FB;
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
}
@media (max-width: 860px) {
  .hero-deals__carousel {
    padding-top: 0rem;
    padding-bottom: 0rem;
    background: white;
    background-color: white;
  }
}

.hero-slide__img {
  width: 620px;
  min-width: 620px;
  max-width: 620px;
}
.hero-slide__img picture {
  width: 100%;
}
.hero-slide__img picture img {
  display: block;
  width: 100%;
}
@media (max-width: 1090px) {
  .hero-slide__img {
    width: 100%;
    max-width: initial;
    min-width: initial;
  }
}

.hero-slide__content {
  width: 100%;
  padding: 0 3rem 3rem 3rem;
  text-align: left;
}
.hero-slide__content h2, .hero-slide__content h3, .hero-slide__content h4 {
  margin: 0;
  padding: 0;
}
.hero-slide__content p {
  line-height: 1.8;
}
@media (max-width: 860px) {
  .hero-slide__content {
    padding: 2rem 3rem;
    margin: -20px auto 0px auto;
    width: 90%;
    z-index: 1;
    background-color: #F3F5FB;
  }
}
@media (max-width: 600px) {
  .hero-slide__content h2, .hero-slide__content h3, .hero-slide__content h4 {
    font-size: 1.2rem;
  }
  .hero-slide__content p {
    font-size: 0.9rem;
  }
}
@media (max-width: 500px) {
  .hero-slide__content button {
    width: 100%;
  }
}
@media (max-width: 380px) {
  .hero-slide__content {
    width: 100% !important;
    margin: 0 0 2rem 0;
    padding: 1rem 3rem 2rem 3rem;
  }
}

/* ----------------------------------------------------------------------------
    herocarousel carousel snapper
---------------------------------------------------------------------------- */
.herocarousel-snapper {
  --slider-padding: 2rem;
  --slider-column-gap: 1rem;
  --slide-width: 100%;
  display: block;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding-left: 2rem;
  padding-right: 2rem;
  position: relative;
}
.herocarousel-snapper[data-number-of-slides="1"] > button [data-slider-prev], .herocarousel-snapper[data-number-of-slides="1"] > button[data-slider-next] {
  display: none !important;
}

.herocarousel-snapper__slider {
  display: block;
  position: relative;
  width: 100%;
  overflow: hidden;
  margin: 0 auto;
  position: relative;
}

.herocarousel-snapper__track {
  display: flex;
  position: relative;
}

.herocarousel-snapper__slide {
  display: flex;
  width: 100%;
  max-width: 1200px;
  margin: auto;
  position: relative;
}
@media (max-width: 860px) {
  .herocarousel-snapper__slide {
    flex-wrap: wrap;
  }
}

/* --------------------------------------
    DESTINATION GRID
-------------------------------------- */
.destination-grid {
  width: 100%;
  padding: 0;
  margin: 0 -1rem 0 0;
  display: flex;
  flex-wrap: wrap;
  position: relative;
}

.destination-grid__item {
  width: 25%;
  max-width: 25%;
  padding: 1rem;
}
@media (max-width: 800px) {
  .destination-grid__item {
    width: 33%;
    max-width: 33%;
  }
}
@media (max-width: 650px) {
  .destination-grid__item {
    width: 50%;
    max-width: 50%;
  }
}
@media (max-width: 360px) {
  .destination-grid__item {
    width: 100%;
    max-width: 100%;
  }
}

.destination-grid__img {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  position: Relative;
  transition: all 0.4s ease-in-out;
  overflow: hidden;
}
@media (max-width: 360px) {
  .destination-grid__img {
    height: 120px;
    margin-top: 15px;
  }
}
.destination-grid__img a {
  width: 100%;
  display: flex;
}
.destination-grid__img img {
  width: 100%;
  transition: all 0.4s ease-in-out;
}
@media (hover: hover) {
  .destination-grid__img:hover {
    transition: all 0.4s ease-in-out;
  }
  .destination-grid__img:hover img {
    z-index: 22;
    transform: scale(1.2);
    transition: all 0.4s ease-in-out;
  }
  .destination-grid__img:hover .destination-grid__overtext {
    text-shadow: 2px 2px 10px #333;
    z-index: 23;
  }
}

.destination-grid__overtext {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 20px;
  left: 20px;
  color: white;
  font-size: 26px;
  font-weight: 600;
  letter-spacing: 0.03em;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1;
}
.destination-grid__overtext.overtext--long {
  font-size: 20px;
}
@media (max-width: 1150px) {
  .destination-grid__overtext {
    font-size: 20px;
  }
}
@media (max-width: 500px) {
  .destination-grid__overtext {
    font-size: 16px;
  }
}

.destination-grid__link {
  display: block;
  margin: 0.5rem auto 0.2rem 0;
  color: #333;
  font-size: 16px;
  text-decoration: none;
  font-weight: 600;
}
.destination-grid__link:hover {
  color: #333;
}

.destination-grid__text {
  font-size: 14px;
  letter-spacing: 0.03em;
}

/* --------------------------------------
    DESTINATION VIDEO
-------------------------------------- */
.destination-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) {
  .destination-video {
    padding: 1rem;
  }
}

/* ------------------------------------------------------------------------------------------------------
   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%;
  }
}

/* --------------------------------------------------------------------------------
    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);
}

/* ------------------------ 
      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;
}

/* --------------------------------------------------------
    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;
}

/* --------------------------------------------------------
    CRUISE LINE LOGOS
    -------------------------------------------------------

    Currently used in:
    - home page
    - destination pages

-------------------------------------------------------- */
.cruise-lines {
  width: 100%;
  display: block;
  background-color: #ffffff;
  padding: 4rem 0;
  -webkit-box-shadow: 0px 0px 32px 32px rgba(0, 0, 0, 0.04);
  -moz-box-shadow: 0px 0px 32px 32px rgba(0, 0, 0, 0.04);
  box-shadow: 0px 0px 32px 32px rgba(0, 0, 0, 0.04);
}
.cruise-lines .row__1200 {
  display: flex;
}
@media (max-width: 900px) {
  .cruise-lines {
    padding: 2rem 0;
  }
}

.cruise-line__cell {
  display: block;
  padding: 1rem 1rem;
  margin: 1rem 1rem;
  margin-right: 1rem;
  text-align: center;
  color: #666;
}

.cruise-line__link {
  text-align: center;
  text-decoration: none;
}
.cruise-line__link p {
  font-size: 12px;
  font-style: italic;
  color: #333;
  text-decoration: none;
}
.cruise-line__link:hover {
  text-decoration: underline;
}
.cruise-line__link:hover p {
  color: #155d97;
  text-decoration: underline;
}

.cruise-line__cell__img {
  width: 206px;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 60px;
  text-decoration: none;
}
.cruise-line__cell__img img {
  max-width: 100%;
  margin-bottom: 0.5rem;
  max-height: 60px;
  text-decoration: none;
}

/* ----------------------------------------------------------------------------
    Destination carousel snapper
---------------------------------------------------------------------------- */
.cruise-line-snapper {
  --slider-padding: 2rem;
  --slider-column-gap: 0.5rem;
  --slide-width: 206px;
  display: block;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding-left: 2rem;
  padding-right: 2rem;
  position: relative;
}

.cruise-line-snapper__slider {
  display: block;
  position: relative;
  width: 100%;
  overflow: hidden;
  margin: 0 auto;
  position: relative;
}

.cruise-line-snapper__track {
  display: flex;
  position: relative;
}

/* 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;
  }
}

/* LEGACY CODE SEE IF IT"S STILL USED : */
/* CODE USED BY COUNTRY DESTINATION */
/* --------------------------------------
    DESTINATION LIST -- just LINKS
-------------------------------------- */
/* --------------------------------------
    DESTINATION SLIDER
-------------------------------------- */
/* --------------------------------------
    Why book with us 
-------------------------------------- */
.why-book-with-us {
  width: 100%;
  margin-top: 1rem;
  margin-bottom: 2rem;
}

.why-book-with-us__ul {
  width: 100%;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  list-style: none;
  padding: 0;
  margin: 0;
}
.why-book-with-us__ul li {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  width: 25%;
  min-width: 25%;
  margin: 0rem;
  padding: 0rem;
  text-align: center;
}
.why-book-with-us__ul li figure {
  display: block;
  margin: 1rem;
  padding: 1rem;
  text-align: center;
}
@media (max-width: 660px) {
  .why-book-with-us__ul {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .why-book-with-us__ul li {
    width: 50%;
    min-width: 50%;
    margin-bottom: 1.5rem;
    border: 0px;
  }
}

.why-book-with-us__img {
  width: 100%;
  width: 100%;
  height: 50px;
  max-height: 50px;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.why-book-with-us__img img {
  max-width: 150px;
  max-height: 50px;
  margin: auto;
  /*_:-ms-fullscreen, :root .foo {
      border: 2px solid green;
      max-width: 150px;
      max-height: 50px;
      flex-shrink: 0;
  }

  @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
      border: 2px solid purple;
      max-width: 150px;
      width: auto;
      max-height: initial;
      flex-shrink: 0;
  }*/
}

a.why-book-with-us__caption, .why-book-with-us__caption, .why-book-with-us__figure a {
  max-width: 150px;
  margin: auto;
  color: #333;
  font-size: 12px;
  letter-spacing: 0.03em;
  margin-top: 5px;
  text-decoration: none;
}

/* Trustpilot stars */
.why-book-with-us .logo-trustpilot {
  overflow: hidden;
  width: 120px;
  height: 30px;
  display: block;
  margin: auto;
}
.why-book-with-us .logo-trustpilot img {
  max-width: initial;
  max-height: initial;
  margin: initial;
  display: block;
  width: 100%;
}
.why-book-with-us .logo-trustpilot .logo-trustpilot-stars {
  overflow: hidden;
  width: 112px;
  height: 28px;
  margin-top: 4px;
  display: block;
  margin: auto;
}
.why-book-with-us .logo-trustpilot-stars img {
  width: 100%;
  min-width: 260px;
}
.why-book-with-us [data-trust-stars="5"] img {
  transform: translateY(-94px);
}
.why-book-with-us [data-trust-stars="4"] img {
  transform: translateY(-122px);
}
.why-book-with-us [data-trust-stars="3"] img {
  transform: translateY(-150px);
}
.why-book-with-us [data-trust-stars="2"] img {
  transform: translateY(-180px);
}
.why-book-with-us [data-trust-stars="1"] img {
  transform: translateY(-208px);
}
.why-book-with-us [data-trust-stars="0"] img {
  transform: translateY(-236px);
}
.why-book-with-us .logo-trustpilot-score {
  float: left;
  width: 100%;
  margin-left: auto !important;
}
.why-book-with-us .logo-trustpilot-score span {
  display: block;
}
.why-book-with-us .trustpilot-logo--bg-img {
  max-width: initial;
  max-height: initial;
  margin: initial;
  width: 100%;
  display: block;
  height: 20px;
  background-image: url("/Content/Images/TrustPilot/trustpilot-4stars.png");
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
}
.why-book-with-us .trustpilot-logo--bg-img[data-trust-stars="4"] {
  background-image: url("/Content/Images/TrustPilot/trustpilot-4stars.png");
}
.why-book-with-us .trustpilot-logo--bg-img[data-trust-stars="4.5"] {
  background-image: url("/Content/Images/TrustPilot/trustpilot-4halfstars.png");
}
.why-book-with-us .trustpilot-logo--bg-img[data-trust-stars="5"] {
  background-image: url("/Content/Images/TrustPilot/trustpilot-5stars.png");
}

