@font-face {
  font-family: "Metropolis";
  src: url("../ttf/metropolis-extralight.ttf");
  font-weight: 300;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: "Metropolis";
  src: url("../ttf/metropolis-regular.ttf");
  font-weight: 400;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: "Metropolis";
  src: url("../ttf/metropolis-medium.ttf");
  font-weight: 500;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: "Metropolis";
  src: url("../ttf/metropolis-semibold.ttf");
  font-weight: 600;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: "Metropolis";
  src: url("../ttf/metropolis-bold.ttf");
  font-weight: 700;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: "Metropolis";
  src: url("../ttf/metropolis-black.ttf");
  font-weight: 800;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: "Playfair Display";
  src: url("../ttf/playfairdisplay-regular.ttf");
  font-weight: 400;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: "Playfair Display";
  src: url("../ttf/playfairdisplay-medium.ttf");
  font-weight: 500;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: "Playfair Display";
  src: url("../ttf/playfairdisplay-semibold.ttf");
  font-weight: 600;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: "Playfair Display";
  src: url("../ttf/playfairdisplay-bold.ttf");
  font-weight: 700;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: "Playfair Display";
  src: url("../ttf/playfairdisplay-extrabold.ttf");
  font-weight: 800;
  font-style: normal;
  font-display: swap; }

@keyframes HideList {
  from {
    transform: scaleY(1); }
  to {
    transform: scaleY(0); } }

@keyframes fadein {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

@keyframes slideFade {
  from {
    opacity: 0;
    transform: translateX(5rem); }
  to {
    opacity: 1;
    transform: translateX(0rem); } }

@keyframes zoomEffect {
  from {
    transform: scale(1.05); }
  to {
    transform: scale(1); } }

*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  box-sizing: border-box; }

html {
  box-sizing: border-box;
  font-size: 62.5%;
  height: 100%; }
  @media only screen and (max-width: 1200px) {
    html {
      font-size: 50%; } }

body {
  font-family: "Metropolis", sans-serif;
  color: #747474;
  font-weight: 400;
  line-height: 1.6;
  height: 100%;
  transition: all 0.3s ease-in; }
  body.logged-in .home-full-search,
  body.logged-in .search-filter-mobile-area {
    margin-top: 32px; }
    @media only screen and (max-width: 800px) {
      body.logged-in .home-full-search,
      body.logged-in .search-filter-mobile-area {
        margin-top: 46px; } }
  body.logged-in .nav-mobile,
  body.logged-in .burger-menu,
  body.logged-in .burger-menu-close {
    top: 32px; }
    @media only screen and (max-width: 800px) {
      body.logged-in .nav-mobile,
      body.logged-in .burger-menu,
      body.logged-in .burger-menu-close {
        top: 46px; } }

body.no-scroll {
  overflow: hidden; }

body.overlay {
  position: relative; }
  body.overlay::after {
    content: "";
    height: 100%;
    width: 100%;
    background-image: linear-gradient(to left, rgba(30, 30, 30, 0.7), rgba(30, 30, 30, 0.7));
    opacity: 1;
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 200;
    animation: fadein 0.3s;
    animation-fill-mode: both; }

p a:link, p a:visited {
  color: #305a7c;
  transition: all 0.2s;
  text-decoration: none;
  font-weight: 500; }

p a:hover {
  color: #40739c; }

a[href^="tel"] {
  color: inherit;
  text-decoration: none; }

.slick-slide {
  -webkit-user-select: text !important;
  -khtml-user-select: text !important;
  -moz-user-select: text !important;
  -ms-user-select: text !important;
  user-select: text !important; }

.slick-slider {
  -webkit-user-select: text !important;
  -khtml-user-select: text !important;
  -moz-user-select: text !important;
  -ms-user-select: text !important;
  user-select: text !important; }

.slick-list.draggable {
  -webkit-user-select: none !important;
  -khtml-user-select: none !important;
  -moz-user-select: none !important;
  -ms-user-select: none !important;
  user-select: none !important; }

input {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; }

.mysticky-welcomebar-fixed-wrap {
  min-height: 40px !important;
  padding: 15px 50px !important; }

.heading-1, .heading-2, .heading-3, .heading-4, .heading-5 {
  font-family: "Metropolis", sans-serif;
  font-weight: 400; }

.heading-1 {
  font-size: 2.5rem;
  text-transform: uppercase;
  letter-spacing: 0.4rem;
  font-weight: 300; }

.heading-2 {
  font-size: 3rem;
  color: #142838;
  margin-bottom: 2rem; }
  .heading-2--light {
    color: #9ea0a4; }
  .heading-2--dark {
    color: #919598; }

.heading-3 {
  margin-bottom: 2rem;
  letter-spacing: 0.2rem;
  font-weight: 600;
  font-size: 2rem;
  line-height: 2.7rem;
  color: #142838;
  display: inline-block; }
  @media only screen and (max-width: 37.5em) {
    .heading-3 {
      font-size: 1.6rem;
      line-height: 2.2rem; } }
  .heading-3--underline::after {
    content: "";
    height: 2px;
    width: 50%;
    display: block;
    background-color: #c2c6c9;
    margin: 1.2rem 0;
    margin-top: 0.7rem;
    z-index: 9; }
  .heading-3--underline-white::after {
    content: "";
    height: 1px;
    width: 8rem;
    display: block;
    background-color: #fff;
    margin: 1.5rem 0;
    z-index: 9; }

.heading-4 {
  font-size: 2rem;
  margin-bottom: 1rem;
  text-transform: uppercase;
  letter-spacing: 0.4rem;
  font-weight: 700;
  color: #142838; }

.heading-5 {
  font-size: 1.6rem;
  font-weight: 600;
  color: #9ea0a4;
  letter-spacing: 0.2rem; }

.mb-sm {
  margin-bottom: 2rem; }

.mb-md {
  margin-bottom: 3rem; }

.mb-lg {
  margin-bottom: 4rem; }

.mb-hg {
  margin-bottom: 8rem; }

p {
  font-size: 1.6rem; }
  p:not(:last-child) {
    margin-bottom: 3rem; }

.attention-box {
  text-align: center;
  margin: 4rem;
  padding: 4rem 6rem;
  font-family: "Playfair Display", serif;
  border: 1px solid #e6e6e6;
  letter-spacing: 0.15rem;
  font-size: 1.4rem; }
  .attention-box ul {
    margin: 0 5rem; }
  .attention-box li {
    text-align: start;
    font-family: "Metropolis", sans-serif;
    font-size: 1.2rem;
    padding: 1rem; }
  @media only screen and (max-width: 50em) {
    .attention-box {
      padding: 2rem 3rem;
      margin: 2rem; } }
  @media only screen and (max-width: 37.5em) {
    .attention-box {
      padding: 1rem 1.5rem;
      margin: 1rem; } }

.page-divider {
  grid-column: center-start / center-end;
  width: 100%;
  max-width: calc(112rem + 12rem);
  display: flex;
  flex-direction: row;
  color: #142838;
  font-family: "Playfair Display", serif;
  font-size: 4rem;
  line-height: 4.5rem;
  letter-spacing: 0.2rem;
  font-weight: 500;
  text-align: center;
  margin-bottom: 1rem;
  text-transform: capitalize; }
  .page-divider--padding {
    padding: 0 6rem; }
    @media only screen and (max-width: 37.5em) {
      .page-divider--padding {
        padding: 0 3rem; } }
  .page-divider::before {
    content: "";
    flex: 1 1;
    border-bottom: 1px solid currentColor;
    margin: auto;
    margin-right: 2rem;
    transform: translateY(4px); }
    @media only screen and (max-width: 50em) {
      .page-divider::before {
        transform: translateY(2px);
        margin-right: 1.5rem; } }
  .page-divider::after {
    content: "";
    flex: 1 1;
    border-bottom: 1px solid currentColor;
    margin: auto;
    margin-left: 2rem;
    transform: translateY(4px); }
    @media only screen and (max-width: 50em) {
      .page-divider::after {
        transform: translateY(2px);
        margin-left: 1.5rem; } }
  @media only screen and (max-width: 50em) {
    .page-divider {
      font-size: 3.5rem;
      line-height: 4rem;
      letter-spacing: 0.2rem; } }

.svg-divider {
  height: 9rem;
  width: 30rem;
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 1fr min-content 1fr;
  position: relative;
  margin: 0rem auto;
  align-content: center;
  column-gap: 2rem;
  color: #142838; }
  @media only screen and (max-width: 37.5em) {
    .svg-divider {
      height: 6rem; } }
  .svg-divider svg {
    height: 5rem;
    width: 5rem;
    stroke-width: 2;
    color: currentColor;
    grid-column: 2 / span 1; }
    @media only screen and (max-width: 37.5em) {
      .svg-divider svg {
        height: 3rem;
        width: 3rem; } }
  .svg-divider::after {
    content: "";
    grid-column: 3 / span 1;
    height: 2px;
    width: 50%;
    background-color: currentColor;
    z-index: 12;
    align-self: center;
    justify-self: start; }
  .svg-divider::before {
    content: "";
    grid-column: 1 / span 1;
    height: 2px;
    width: 50%;
    background-color: currentColor;
    z-index: 12;
    align-self: center;
    justify-self: end; }

.sub-divider {
  grid-column: center-start / center-end;
  text-align: center;
  display: flex;
  flex-direction: row;
  font-size: 3rem;
  line-height: 3.8rem;
  text-transform: uppercase;
  color: #142838;
  letter-spacing: 0.3rem;
  font-weight: 600;
  z-index: 10; }
  .sub-divider::before {
    content: "";
    flex: 1 1;
    border-bottom: 1px solid currentColor;
    margin: auto;
    margin-right: 2rem; }
    @media only screen and (max-width: 50em) {
      .sub-divider::before {
        margin-right: 1.5rem; } }
  .sub-divider::after {
    content: "";
    flex: 1 1;
    border-bottom: 1px solid currentColor;
    margin: auto;
    margin-left: 2rem; }
    @media only screen and (max-width: 37.5em) {
      .sub-divider::after {
        margin-left: 1.5rem; } }
  @media only screen and (max-width: 37.5em) {
    .sub-divider {
      font-size: 2rem;
      line-height: 2.7rem; } }

.xsub-divider {
  text-align: center;
  justify-content: center;
  display: flex;
  font-size: 2rem;
  line-height: 2.8rem;
  text-transform: uppercase;
  color: #e6e6e6;
  letter-spacing: 0.3rem;
  font-weight: 600;
  z-index: 10;
  padding: 0 6rem; }
  @media only screen and (max-width: 37.5em) {
    .xsub-divider {
      padding: 0 3rem; } }
  .xsub-divider--dark {
    color: #142838; }

.sub-divider-text {
  grid-column: center-start / center-end;
  text-align: center;
  font-size: 1.6rem;
  margin-bottom: 4rem;
  max-width: calc(112rem + 12rem);
  padding: 0 6rem; }
  @media only screen and (max-width: 37.5em) {
    .sub-divider-text {
      padding: 0 3rem; } }

.list-svg {
  list-style: none; }
  .list-svg li {
    display: grid;
    grid-template-columns: 2rem 1fr; }
    .list-svg li svg {
      transform: translateY(3px);
      height: 1.5rem;
      width: 1.5rem;
      fill: #142838; }
    .list-svg li span {
      font-size: 1.4rem; }
  .list-svg--large li svg {
    transform: translateY(2px);
    height: 1.8rem;
    width: 1.8rem;
    fill: #142838; }
  .list-svg--large li span {
    font-size: 1.6rem; }

.link-social svg {
  margin-top: 2px;
  height: 1.8rem;
  width: 1.8rem;
  fill: #c2c6c9;
  transition: all 0.2s; }
  .link-social svg:hover {
    fill: #fff; }

.badge {
  color: #c2c6c9;
  background-color: transparent;
  padding: 1rem 2rem;
  border: none;
  margin: 0.5rem;
  letter-spacing: 0.1rem;
  outline: none;
  font-size: 1.5rem;
  font-weight: 400;
  position: relative;
  display: inline-block; }
  .badge::after {
    content: "";
    transition: all 0.15s;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    height: 100%;
    width: 100%;
    border-radius: 2.5rem;
    border: 1px solid currentColor; }
  .badge--small {
    padding: 0.75rem 1rem;
    font-size: 1.2rem; }
  .badge--dark {
    color: #142838; }

.badge-solid {
  color: #fff;
  background-color: #142838;
  padding: 0.8rem 1.6rem;
  margin-left: 1rem;
  font-size: 1.4rem;
  font-weight: 600;
  display: inline;
  text-transform: uppercase;
  letter-spacing: 0.2rem;
  border-radius: 8rem;
  position: relative; }
  .badge-solid--red {
    background-color: #de5c52; }
  .badge-solid--green {
    background-color: #00a84b; }
  .badge-solid--green-outline {
    background-color: #fff;
    color: #00a84b;
    border: 2px solid #00a84b; }
  .badge-solid--blue {
    background-color: #40739c; }
  .badge-solid--white {
    background-color: #fff;
    color: #142838;
    font-weight: 700; }
  .badge-solid--small {
    font-size: 1.1rem;
    padding: 0.6rem 1.2rem; }

.drop-cap-1 p:first-child:first-letter {
  font-size: 400%;
  border: 1px solid #d4d5d7;
  padding: 0 2rem;
  padding-top: 5px;
  display: inline-block;
  top: 2px;
  float: left;
  line-height: 1;
  margin-right: 1rem;
  font-weight: 300; }

.drop-cap-1a p:not(.wp-caption-text):nth-child(2):first-letter {
  font-size: 400%;
  border: 1px solid #d4d5d7;
  padding: 0 2rem;
  padding-top: 5px;
  display: inline-block;
  top: 2px;
  float: left;
  line-height: 1;
  margin-right: 1rem;
  font-weight: 300; }

.drop-cap-2 p:first-child:first-letter {
  font-weight: 400;
  font-size: 5em;
  float: left;
  line-height: 0.5;
  margin-top: -0.08em;
  margin-left: -0.02em;
  margin-right: 0.05em; }

.drop-cap-3 p:first-child:first-letter {
  font-weight: 400;
  font-size: 5em;
  float: left;
  line-height: 0.6;
  margin-top: 0.1em;
  margin-left: -0.02em;
  margin-right: 0.07em;
  margin-bottom: -0.07em; }

.star-gold {
  fill: #d9a402; }

.star-grey {
  fill: #c2c6c9; }

.warning-text {
  color: #de5c52; }

h3 {
  color: #142838;
  font-size: 2rem;
  display: block;
  letter-spacing: 0.1rem;
  margin-bottom: 0.5rem; }

h4 {
  color: #142838;
  font-size: 1.8rem;
  display: block;
  letter-spacing: 0.1rem;
  margin-bottom: 0.5rem; }

h5 {
  color: #142838;
  font-size: 1.8rem;
  display: block;
  letter-spacing: 0.1rem;
  margin-bottom: 0.5rem; }

.experience-icon {
  color: #c2c6c9;
  background-color: transparent;
  padding: 1.5rem;
  border: none;
  letter-spacing: 0.1rem;
  outline: none;
  font-size: 1.5rem;
  font-weight: 400;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 0.5rem;
  cursor: pointer; }
  .experience-icon:hover .tooltiptext {
    visibility: visible; }
  .experience-icon .tooltiptext {
    box-sizing: border-box;
    visibility: hidden;
    width: max-content2rem;
    background-color: #f8f8f8;
    border: 1px solid #c2c6c9;
    color: #142838;
    text-align: center;
    border-radius: 6px;
    padding: .5rem 1rem;
    font-size: 1rem;
    font-weight: 600;
    /* Position the tooltip */
    position: absolute;
    bottom: -3.5rem;
    z-index: 1; }
  .experience-icon svg {
    height: 2rem;
    width: 2rem;
    color: #142838;
    fill: #142838;
    stroke: #142838;
    stroke-width: 6; }
  .experience-icon::after {
    content: "";
    transition: all 0.15s;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    height: 100%;
    width: 100%;
    border-radius: 50%;
    border: 1px solid currentColor; }

.u-small-text {
  font-size: 1.5rem !important;
  text-transform: uppercase;
  font-weight: 700 !important; }

.u-center-text {
  text-align: center !important; }

.u-right-text {
  text-align: right !important; }

.u-margin-bottom-huge {
  margin-bottom: 10rem !important; }

.u-margin-bottom-big {
  margin-bottom: 8rem !important; }

.u-margin-bottom-medium {
  margin-bottom: 4rem !important; }

.u-margin-bottom-small {
  margin-bottom: 1.5rem !important; }

.u-margin-bottom-none {
  margin-bottom: 0 !important; }

.u-margin-top-none {
  margin-top: 0 !important; }

.u-margin-top-small {
  margin-top: 2rem !important; }

.u-margin-top-medium {
  margin-top: 4rem !important; }

.u-margin-top-big {
  margin-top: 6rem !important; }

.u-margin-top-bigger {
  margin-top: 10rem !important; }

.u-margin-top-huge {
  margin-top: 10rem !important; }

.u-bold-600 {
  font-weight: 600; }

.fixed-position {
  position: fixed; }

.lock-scroll {
  overflow: hidden;
  height: 100%; }

.close-button {
  position: relative;
  width: 3rem;
  height: 3rem;
  color: #142838;
  border: 2px solid currentColor;
  background-color: #fff;
  border-radius: 50%;
  cursor: pointer;
  transition: all 0.3s; }
  .close-button::before {
    position: absolute;
    top: 1.2rem;
    left: 0.6rem;
    width: 13px;
    height: 2px;
    content: "";
    background-color: currentColor;
    -ms-transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg); }
    @media only screen and (max-width: 75em) {
      .close-button::before {
        top: 1.1rem;
        left: 0.5rem; } }
  .close-button::after {
    position: absolute;
    top: 1.2rem;
    left: 0.6rem;
    width: 13px;
    height: 2px;
    content: "";
    background-color: currentColor;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg); }
    @media only screen and (max-width: 75em) {
      .close-button::after {
        top: 1.1rem;
        left: 0.5rem; } }
  .close-button:hover {
    color: #305a7c; }

.btn-cta-round {
  background-color: #142838;
  font-family: "Metropolis", sans-serif;
  color: #fff;
  border: none;
  border-radius: 4rem;
  font-size: 1.6rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.3rem;
  padding: 1.5rem 3rem;
  cursor: pointer;
  transition: all 0.2s;
  outline: none;
  white-space: nowrap;
  text-decoration: none; }
  .btn-cta-round:hover {
    background-color: #305a7c; }
  .btn-cta-round--white {
    background-color: #fff;
    color: #142838; }
    .btn-cta-round--white:hover {
      background-color: #e6e6e6; }
  .btn-cta-round--green {
    background-color: #00a84b;
    color: #fff; }
    .btn-cta-round--green:hover {
      background-color: rgba(0, 168, 75, 0.8); }
  .btn-cta-round--xsmall {
    font-size: 1.2rem;
    padding: 0.5rem 1rem;
    letter-spacing: 0.2rem; }
  .btn-cta-round--small {
    font-size: 1.2rem;
    padding: 0.75rem 1.5rem;
    letter-spacing: 0.2rem; }
  .btn-cta-round--medium {
    font-size: 1.3rem;
    padding: 1.4rem 2.4rem;
    letter-spacing: 0.2rem; }

.btn-rect {
  background-color: #305a7c;
  color: #c2c6c9;
  padding: 1rem 3rem;
  border-radius: 4px;
  border: none;
  cursor: pointer;
  transition: all 0.2s; }
  .btn-rect:hover {
    background-color: #40739c; }

.slick-disabled {
  opacity: 0;
  pointer-events: none; }

.btn-outline {
  color: #142838;
  background-color: transparent;
  padding: 1.5rem 3rem;
  border: none;
  margin: 1rem;
  letter-spacing: 0.2rem;
  cursor: pointer;
  outline: none;
  font-size: 1.5rem;
  font-family: "Metropolis", sans-serif;
  text-transform: uppercase;
  font-weight: 700;
  position: relative;
  text-decoration: none;
  white-space: nowrap; }
  .btn-outline::after {
    content: "";
    transition: all 0.15s;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    height: 100%;
    width: 100%;
    border-radius: 2.5rem;
    border: 2px solid #c2c6c9; }
  .btn-outline:hover::after {
    height: 95%;
    width: 95%; }
  .btn-outline--small {
    padding: 1rem 2rem;
    font-size: 1.3rem; }
  .btn-outline--dark::after {
    border: 2px solid #142838; }
  .btn-outline--blue {
    color: #40739c; }
    .btn-outline--blue::after {
      border: 2px solid #40739c; }
  .btn-outline--green {
    color: #00a84b; }
    .btn-outline--green::after {
      border: 2px solid #00a84b; }
  .btn-outline--disabled {
    cursor: default;
    color: #919598; }
    .btn-outline--disabled::after {
      border: 2px solid #919598; }
    .btn-outline--disabled:hover::after {
      height: 100%;
      width: 100%; }

.btn-icon {
  width: 5rem;
  height: 5rem;
  background-color: transparent;
  border: none;
  margin: 1rem;
  cursor: pointer;
  position: relative;
  z-index: 0;
  outline: none;
  color: #142838; }
  .btn-icon svg {
    height: 40%;
    width: 40%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    fill: currentColor; }
  .btn-icon::after {
    content: "";
    transition: all 0.15s;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    transform-origin: center;
    height: 100%;
    width: 100%;
    border-radius: 50%;
    border: 1px solid #142838; }
  .btn-icon:hover::after {
    height: 90%;
    width: 90%; }

.btn-icon-move {
  width: 4.5rem;
  height: 4.5rem;
  background-color: transparent;
  border: none;
  margin: 1rem;
  cursor: pointer;
  position: relative;
  z-index: 0;
  outline: none;
  color: #919598; }
  .btn-icon-move svg {
    height: 70%;
    width: 70%;
    stroke-width: 1;
    stroke: currentColor; }
  .btn-icon-move--arrow-main {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    fill: currentColor;
    z-index: 1;
    opacity: 1;
    transition: all 0.2s; }
  .btn-icon-move--arrow-animate {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-120%) translateY(-50%);
    fill: currentColor;
    z-index: 2;
    opacity: 0;
    transition: all 0.4s; }
  .btn-icon-move:hover .btn-icon-move--arrow-main {
    opacity: 0; }
  .btn-icon-move:hover .btn-icon-move--arrow-animate {
    opacity: 1;
    transform: translateX(-50%) translateY(-50%); }
  .btn-icon-move--left .btn-icon-move--arrow-animate {
    transform: translateX(50%) translateY(-50%); }
  .btn-icon-move--down .btn-icon-move--arrow-animate {
    transform: translateX(-50%) translateY(-150%); }
  .btn-icon-move--up .btn-icon-move--arrow-animate {
    transform: translateX(-50%) translateY(50%); }

.btn-circle {
  width: 4.5rem;
  height: 4.5rem;
  background-color: transparent;
  border: none;
  margin: 1rem;
  cursor: pointer;
  position: relative;
  z-index: 0;
  outline: none;
  font-family: "Metropolis", sans-serif;
  font-size: 1.3rem;
  font-weight: 700;
  color: #142838; }
  .btn-circle svg {
    height: 40%;
    width: 40%;
    stroke-width: 2;
    stroke: currentColor; }
  .btn-circle--large {
    width: 8rem;
    height: 8rem; }
    .btn-circle--large svg {
      stroke-width: 1; }
  .btn-circle--small {
    width: 3.5rem;
    height: 3.5rem; }
  .btn-circle--xsmall {
    width: 2rem;
    height: 2rem; }
  .btn-circle--arrow-main {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    fill: currentColor;
    z-index: 1;
    opacity: 1;
    transition: all 0.2s; }
  .btn-circle--arrow-animate {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-120%) translateY(-50%);
    fill: currentColor;
    z-index: 2;
    opacity: 0;
    transition: all 0.4s; }
  .btn-circle:hover .btn-circle--arrow-main {
    opacity: 0; }
  .btn-circle:hover .btn-circle--arrow-animate {
    opacity: 1;
    transform: translateX(-50%) translateY(-50%); }
  .btn-circle--left .btn-circle--arrow-animate {
    transform: translateX(50%) translateY(-50%); }
  .btn-circle--down .btn-circle--arrow-animate {
    transform: translateX(-50%) translateY(-150%); }
  .btn-circle--up .btn-circle--arrow-animate {
    transform: translateX(-50%) translateY(50%); }
  .btn-circle::after {
    content: "";
    transition: all 0.15s;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    transform-origin: center;
    height: 100%;
    width: 100%;
    border-radius: 50%;
    border: 2px solid #142838; }
  .btn-circle:hover::after {
    height: 85%;
    width: 85%; }
  .btn-circle--solid::after {
    background-color: rgba(255, 255, 255, 0.95); }
  .btn-circle--white {
    color: rgba(255, 255, 255, 0.95); }
    .btn-circle--white::after {
      border: 2px solid rgba(255, 255, 255, 0.95); }
  .btn-circle--smallborder::after {
    border: 1px solid #142838; }
  .btn-circle--noborder::after {
    border: none; }
  .btn-circle--disabled {
    cursor: default;
    color: #919598; }
    .btn-circle--disabled::after {
      border: 2px solid #919598; }
    .btn-circle--disabled:hover::after {
      height: 100%;
      width: 100%; }
  .btn-circle--current {
    cursor: default;
    color: #fff; }
    .btn-circle--current::after {
      border: none;
      background-color: #142838;
      z-index: -1; }
    .btn-circle--current:hover::after {
      height: 100%;
      width: 100%; }

.btn-expand {
  width: 3rem;
  height: 3rem;
  background-color: transparent;
  border: none;
  margin: 1rem;
  cursor: pointer;
  position: relative;
  z-index: 0;
  outline: none;
  color: #142838; }
  .btn-expand svg {
    height: 40%;
    width: 40%;
    stroke-width: 2;
    stroke: currentColor; }
  .btn-expand--arrow-main {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    fill: currentColor;
    z-index: 1;
    opacity: 1;
    transition: all 0.2s; }
  .btn-expand--arrow-animate {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-120%) translateY(-50%);
    fill: currentColor;
    z-index: 2;
    opacity: 0;
    transition: all 0.4s; }
  .btn-expand:hover .btn-expand--arrow-main {
    opacity: 0; }
  .btn-expand:hover .btn-expand--arrow-animate {
    opacity: 1;
    transform: translateX(-50%) translateY(-50%); }
  .btn-expand--left .btn-expand--arrow-animate {
    transform: translateX(50%) translateY(-50%); }
  .btn-expand--down .btn-expand--arrow-animate {
    transform: translateX(-50%) translateY(-150%); }
  .btn-expand--up .btn-expand--arrow-animate {
    transform: translateX(-50%) translateY(50%); }
  .btn-expand::after {
    content: "";
    transition: all 0.15s;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    transform-origin: center;
    height: 95%;
    width: 95%;
    border-radius: 50%;
    border: 1px solid #e6e6e6;
    background-color: rgba(255, 255, 255, 0.95); }
  .btn-expand::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    transform-origin: center;
    height: 150%;
    width: 150%;
    border-radius: 50%;
    background-color: #fff; }
  .btn-expand:hover::after {
    height: 85%;
    width: 85%; }

.btn-square::after {
  border-radius: 0%; }

.btn-dark {
  color: #142838; }
  .btn-dark::after {
    border-color: #142838; }

.btn-grey {
  color: #919598 !important; }
  .btn-grey::after {
    border-color: #919598 !important; }

.btn-white {
  color: rgba(255, 255, 255, 0.8) !important; }
  .btn-white::after {
    border-color: rgba(255, 255, 255, 0.8) !important; }

.btn-underline {
  color: #142838;
  text-decoration: none;
  position: relative;
  background-color: transparent;
  border: none;
  cursor: pointer;
  font-size: 1.32rem;
  letter-spacing: 0.1rem; }
  .btn-underline::after {
    content: "";
    position: absolute;
    height: 1px;
    width: 0%;
    bottom: -0.5rem;
    left: 0;
    background-color: currentColor;
    transition: all 0.3s; }
  .btn-underline:hover {
    color: #40739c; }
    .btn-underline:hover::after {
      width: 100%; }

.text-button {
  font-size: 1.2rem;
  font-family: "Metropolis", sans-serif;
  background-color: transparent;
  border: none;
  text-decoration: none;
  color: #305a7c;
  cursor: pointer;
  display: flex;
  align-content: center; }
  .text-button:hover {
    color: #4381b3; }
  .text-button svg {
    margin-left: 0.1rem;
    height: 1.2rem;
    width: 1.2rem;
    fill: currentColor; }
  .text-button--large {
    font-size: 1.4rem; }
    .text-button--large svg {
      margin-left: 0.2rem;
      height: 1.4rem;
      width: 1.4rem; }

.goto-button {
  font-size: 1.8rem;
  font-family: "Metropolis", sans-serif;
  background-color: transparent;
  border: none;
  text-decoration: none;
  color: currentColor;
  cursor: pointer;
  outline: none;
  display: flex;
  align-content: center;
  align-items: center;
  text-transform: uppercase;
  letter-spacing: 0.3rem;
  font-weight: 600;
  padding: 1.5rem 0; }
  .goto-button:hover svg {
    transform: translateX(0.3rem) translateY(-0.2rem); }
  .goto-button svg {
    margin-left: 0.5rem;
    transform: translateY(-0.2rem);
    height: 1.8rem;
    width: 1.8rem;
    fill: currentColor;
    transition: all 0.2s; }
  .goto-button--small {
    font-size: 1.3rem;
    letter-spacing: 0.2rem; }
    .goto-button--small svg {
      height: 1.3rem;
      width: 1.3rem;
      stroke-width: 1;
      stroke: currentColor; }
  .goto-button--dark {
    color: #142838;
    transition: color .3s; }
    .goto-button--dark:hover {
      color: #40739c; }
  .goto-button--hero {
    color: currentColor; }
    @media only screen and (max-width: 62.5em) {
      .goto-button--hero {
        opacity: .85;
        padding: 1.5rem 2.5rem;
        border: 2px solid #fff;
        border-radius: 4rem; }
        .goto-button--hero svg {
          display: none; } }

.btn-cta-square {
  color: #fff;
  background-color: #142838;
  padding: 0 3rem;
  margin: 3rem 0;
  letter-spacing: 0.3rem;
  cursor: pointer;
  border: none;
  font-size: 1.3rem;
  font-family: "Metropolis", sans-serif;
  text-transform: uppercase;
  font-weight: 500;
  position: relative;
  text-decoration: none;
  white-space: nowrap;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.2s;
  height: 5rem;
  min-width: 20rem;
  max-width: max-content; }
  .btn-cta-square span {
    transform: translateY(0.1rem); }
  .btn-cta-square:hover {
    color: #142838;
    background-color: #fff;
    box-shadow: inset 0px 0px 0px 2px #142838; }
    .btn-cta-square:hover svg {
      transform: translateX(0.3rem) translateX(1rem); }
  .btn-cta-square svg {
    transform: translateX(1rem);
    height: 1.8rem;
    width: 1.8rem;
    fill: currentColor;
    transition: all 0.1s; }
  .btn-cta-square--white {
    color: #142838;
    background-color: #fff;
    box-shadow: inset 0px 0px 0px 2px #142838; }
    .btn-cta-square--white:hover {
      color: #fff;
      background-color: #142838; }
  .btn-cta-square--small {
    height: 4rem;
    box-shadow: inset 0px 0px 0px 1px #c2c6c9;
    min-width: 10rem; }

.image-popup {
  position: fixed;
  top: 0;
  left: 0;
  height: 100vh;
  width: 100%;
  background-color: rgba(30, 30, 30, 0.7);
  z-index: 3000 !important;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s; }
  .image-popup__content {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 65%;
    max-height: 75%;
    border-radius: 3px;
    display: flex;
    opacity: 0;
    transform: translate(-50%, -50%) scale(0.25);
    transition: all 0.4s 0.2s;
    object-fit: contain; }
    .image-popup__content img {
      object-fit: contain;
      display: block;
      width: 100%;
      height: auto; }
  .image-popup:target {
    opacity: 1;
    visibility: visible; }
  .image-popup:target .image-popup__content {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1); }
  .image-popup__close {
    position: fixed;
    top: 5rem;
    right: 8rem; }
    .image-popup__close svg {
      height: 8rem;
      width: 8rem;
      fill: #fff; }

.popup {
  position: fixed;
  background-color: rgba(30, 30, 30, 0.8);
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: none;
  overflow: auto;
  z-index: 999999;
  justify-content: center;
  align-items: flex-start;
  padding: 3rem 0;
  animation: fadein 0.2s; }
  @media only screen and (max-width: 50em) {
    .popup {
      align-items: flex-start; } }
  .popup.active {
    display: flex; }

.modal-content {
  max-width: 110rem;
  height: min-content;
  width: 100%; }
  .modal-content--wide {
    max-width: 142rem; }
  .modal-content__wrapper {
    padding: 4rem;
    background-color: #fff;
    border: 2px solid #142838;
    border-radius: 0.4rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative; }
    .modal-content__wrapper.transparent {
      padding: 0rem;
      background-color: transparent;
      border: none;
      display: flex;
      flex-direction: column;
      align-items: center;
      position: relative; }
    @media only screen and (max-width: 37.5em) {
      .modal-content__wrapper {
        padding: 3rem 2rem; } }
    .modal-content__wrapper__close-button {
      position: absolute;
      top: 3rem;
      right: 3rem; }
      @media only screen and (max-width: 37.5em) {
        .modal-content__wrapper__close-button {
          top: 2rem; } }

.modal {
  position: fixed;
  background-color: rgba(30, 30, 30, 0.5);
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  z-index: 999;
  justify-content: center;
  padding: 4rem;
  animation: fadein 0.2s;
  display: none; }
  .modal--video {
    background-color: rgba(30, 30, 30, 0.95);
    padding: 0; }
  @media only screen and (max-width: 50em) {
    .modal {
      padding: 0rem; } }
  .modal__video {
    padding: 0 6rem;
    width: 100%;
    height: min-content;
    max-width: 100rem;
    display: flex;
    flex-direction: column;
    color: #fff;
    align-items: center; }
    @media only screen and (max-width: 37.5em) {
      .modal__video {
        padding: 0 3rem; } }
    .modal__video__top {
      width: 100%;
      height: 8rem;
      display: flex;
      flex-direction: row;
      justify-content: space-between;
      align-items: center;
      font-size: 1.3rem; }
      .modal__video__top .close-modal-button {
        background-color: rgba(255, 255, 255, 0.1);
        -webkit-backdrop-filter: blur(2px);
        backdrop-filter: blur(2px); }
        .modal__video__top .close-modal-button:hover {
          background-color: rgba(255, 255, 255, 0.3); }
    .modal__video__main {
      width: 90%; }
      @media only screen and (max-width: 50em) {
        .modal__video__main {
          width: 100%; } }

.tab-content {
  display: none; }

.tab-content.current {
  display: grid; }

.select2-container--default {
  font-size: 1.4rem;
  font-family: "Metropolis", sans-serif !important;
  letter-spacing: 0rem;
  font-weight: 500;
  text-transform: none; }
  .select2-container--default.select2-container *:focus {
    outline: none; }
  .select2-container--default.select2-container--open.select2-container--above .select2-selection--single,
  .select2-container--default.select2-container--open.select2-container--above .select2-selection--multiple {
    border-top-left-radius: 0;
    border-top-right-radius: 0; }
  .select2-container--default.select2-container--open.select2-container--below .select2-selection--single,
  .select2-container--default.select2-container--open.select2-container--below .select2-selection--multiple {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0; }
  .select2-container--default .select2-search--dropdown .select2-search__field {
    border: 1px solid #aaa; }
  .select2-container--default .select2-search--inline .select2-search__field {
    background: transparent;
    border: none;
    outline: 0; }
  .select2-container--default .select2-results > .select2-results__options {
    max-height: 200px;
    overflow-y: auto; }
  .select2-container--default .select2-results__option[role="group"] {
    padding: 0; }
  .select2-container--default .select2-results__option[aria-disabled="true"] {
    color: #999; }
  .select2-container--default .select2-results__option[aria-selected="true"] {
    background-color: #ddd; }
  .select2-container--default .select2-results__option .select2-results__option {
    padding-left: 1em; }
    .select2-container--default .select2-results__option .select2-results__option .select2-results__group {
      padding-left: 0; }
    .select2-container--default .select2-results__option .select2-results__option .select2-results__option {
      margin-left: -1em;
      padding-left: 2em; }
      .select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
        margin-left: -2em;
        padding-left: 3em; }
        .select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
          margin-left: -3em;
          padding-left: 4em; }
          .select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
            margin-left: -4em;
            padding-left: 5em; }
            .select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
              margin-left: -5em;
              padding-left: 6em; }
  .select2-container--default .select2-results__option--highlighted[aria-selected] {
    background-color: #305a7c;
    color: white; }
  .select2-container--default .select2-results__group {
    cursor: default;
    display: block;
    padding: 6px; }

.select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 26px;
  position: absolute;
  top: 1px;
  right: 1px;
  width: 20px; }

.select2-selection__placeholder {
  padding-right: 0.2rem !important; }

.select2-selection__rendered {
  padding-right: 3rem !important; }

.select2-dropdown--below {
  border: none;
  box-shadow: 0px 0px 0px 1px #aaa; }

.home-page {
  position: relative; }
  .home-page__section-hero {
    background-color: #1d2225; }
  .home-page__section-intro {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    width: 100%; }
  .home-page__section-newsletter {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    width: 100%; }

.product-page__section-hero {
  background-color: #1d2225; }

.product-page__section-overview {
  margin: 4rem 0;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  width: 100%; }

.product-page__section-itineraries {
  margin: 4rem 0;
  display: flex;
  justify-content: center;
  width: 100%; }

.product-page__section-accommodation {
  margin-top: 4rem;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  width: 100%; }

.product-page__section-prices {
  margin: 4rem 0; }

.product-page__section-dates {
  margin: 4rem 0; }

.product-page__section-reviews {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%; }

.product-page__section-related {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  width: 100%; }

.search-page {
  padding-top: 9rem;
  display: flex;
  flex-direction: column;
  width: 100%;
  align-items: center; }
  @media only screen and (max-width: 62.5em) {
    .search-page {
      padding-top: 7rem; } }
  .search-page--hero .experience-page__section-hero {
    width: 100%; }
  .search-page--hero .experience-hero {
    height: calc(100vh - 9rem); }
  .search-page--hero .experience-intro {
    margin-bottom: 6rem;
    padding-bottom: 6rem;
    border-bottom: 1px solid #e6e6e6; }
    @media only screen and (max-width: 37.5em) {
      .search-page--hero .experience-intro {
        margin-bottom: 3rem;
        padding-bottom: 3rem; } }
  @media only screen and (max-width: 62.5em) {
    .search-page--hero .search-page__content.sticky {
      margin-top: 0rem; } }
  .search-page__intro {
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: calc(112rem + 12rem);
    padding: 0 6rem; }
    @media only screen and (max-width: 37.5em) {
      .search-page__intro {
        padding: 0 3rem; } }
  .search-page__content {
    display: flex;
    width: 100%;
    max-width: calc(112rem + 12rem);
    padding: 0 6rem;
    margin-bottom: 0rem; }
    @media only screen and (max-width: 37.5em) {
      .search-page__content {
        padding: 0 3rem; } }
    @media only screen and (max-width: 62.5em) {
      .search-page__content.sticky {
        margin-top: 7rem; } }
  .search-page__bottom {
    display: flex;
    flex-direction: column;
    max-width: calc(112rem + 12rem);
    padding: 0 6rem;
    height: 10rem;
    background-color: #e6e6e6; }
    @media only screen and (max-width: 37.5em) {
      .search-page__bottom {
        padding: 0 3rem; } }

.destination-page__section-hero {
  background-color: #1d2225; }

.destination-page__section-travel-guides {
  margin-top: 4rem;
  margin-bottom: 4rem;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  width: 100%; }

.destination-page__section-testimonials {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  width: 100%; }

.destination-page__section-faq {
  padding-top: 4rem; }

.travel-guide-page {
  padding-top: 12rem;
  display: flex;
  flex-direction: column;
  width: 100%;
  align-items: center;
  position: relative;
  z-index: 0; }
  @media only screen and (max-width: 50em) {
    .travel-guide-page {
      padding-top: 9rem; } }

.travel-guide-newsletter {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center; }

.travel-guide {
  display: flex;
  flex-direction: column;
  align-items: center;
  max-width: calc(112rem + 12rem);
  padding: 0 6rem; }
  @media only screen and (max-width: 37.5em) {
    .travel-guide {
      padding: 0 3rem; } }
  .travel-guide__toc {
    width: 100%;
    max-width: 80rem;
    padding-bottom: 3rem;
    margin-bottom: 1.5rem;
    border-bottom: 1px solid #e6e6e6; }
    .travel-guide__toc__header {
      font-size: 1.8rem;
      color: #142838;
      font-weight: 700;
      margin-bottom: 1rem;
      padding-bottom: 1rem;
      border-bottom: 1px solid #e6e6e6; }
    .travel-guide__toc ul {
      margin-left: 2rem;
      font-size: 1.4rem;
      color: #142838;
      font-weight: 600; }
      .travel-guide__toc ul a {
        color: #142838;
        text-decoration: none; }
        .travel-guide__toc ul a:hover {
          color: #305a7c; }
  .travel-guide__category {
    font-size: 1.6rem;
    letter-spacing: 0.2rem;
    text-transform: uppercase;
    color: #d9a402;
    text-align: center;
    font-weight: 500;
    margin-bottom: 3rem; }
  .travel-guide__title {
    font-size: 5rem;
    line-height: 5.8rem;
    color: #142838;
    font-weight: 500;
    letter-spacing: 0.2rem;
    text-align: center;
    margin-bottom: 1rem; }
    @media only screen and (max-width: 37.5em) {
      .travel-guide__title {
        font-size: 3.5rem;
        line-height: 4rem;
        margin-bottom: 1rem; } }
  .travel-guide__image {
    margin-bottom: 3rem; }
    .travel-guide__image img {
      object-fit: cover;
      height: 100%;
      width: 100%;
      box-shadow: 0 2rem 6rem rgba(0, 0, 0, 0.2); }
  .travel-guide__breadcrumb {
    margin-bottom: 2rem;
    font-size: 1.2rem;
    letter-spacing: 0.1rem;
    justify-self: flex-start;
    font-weight: 400;
    justify-content: center;
    display: flex;
    position: relative;
    list-style: none;
    height: max-content;
    width: 100%;
    max-width: max-content;
    flex-wrap: wrap;
    color: #305a7c; }
    .travel-guide__breadcrumb li {
      display: inline-block;
      width: max-content; }
      .travel-guide__breadcrumb li:not(:last-child):after {
        content: " / ";
        padding-left: 1px;
        padding-right: 4px; }
      .travel-guide__breadcrumb li a {
        position: relative;
        text-decoration: none;
        color: currentColor; }
        .travel-guide__breadcrumb li a::after {
          content: "";
          position: absolute;
          bottom: -0.3rem;
          left: 0;
          width: 97%;
          height: 1px;
          background-color: currentColor;
          transition: all 0.2s;
          opacity: 0; }
        .travel-guide__breadcrumb li a:hover::after {
          color: currentColor;
          opacity: 1; }
  .travel-guide__content {
    display: flex;
    flex-direction: column;
    margin-bottom: 2rem;
    hyphens: auto; }
    .travel-guide__content p:not(.wp-caption-text):first-of-type {
      font-size: 2.5rem;
      text-align: center;
      position: relative;
      line-height: 3.2rem;
      padding: 4rem 0;
      padding-top: 2rem;
      margin-bottom: 4rem; }
      .travel-guide__content p:not(.wp-caption-text):first-of-type::after {
        content: "";
        position: absolute;
        height: 1px;
        width: 60%;
        background-color: #e6e6e6;
        bottom: 0;
        left: 50%;
        transform: translateX(-50%); }
      @media only screen and (max-width: 37.5em) {
        .travel-guide__content p:not(.wp-caption-text):first-of-type {
          padding-top: 1rem;
          padding-bottom: 4rem;
          margin-bottom: 4rem;
          font-size: 2rem; } }
    .travel-guide__content p:not(:first-child) {
      max-width: 80rem;
      align-self: center;
      font-size: 1.6rem; }
    .travel-guide__content ul,
    .travel-guide__content ol {
      max-width: 80rem;
      align-self: center;
      font-size: 1.6rem;
      width: 100%;
      padding-left: 3rem;
      padding-bottom: 2rem; }
    .travel-guide__content img {
      object-fit: cover;
      height: auto;
      width: 100%;
      margin: 3rem 0; }
    .travel-guide__content p {
      width: 100%; }
    .travel-guide__content h2,
    .travel-guide__content h3,
    .travel-guide__content h4,
    .travel-guide__content h5 {
      align-self: center;
      display: block;
      width: 100%;
      max-width: 80rem;
      color: #142838;
      font-weight: 600; }
    .travel-guide__content h2 {
      font-size: 3rem;
      margin-bottom: 1rem; }
    .travel-guide__content h3 {
      font-size: 2.5rem;
      letter-spacing: 0rem; }
    .travel-guide__content a:link,
    .travel-guide__content a:visited {
      text-decoration: none;
      color: #305a7c;
      transition: all 0.2s; }
    .travel-guide__content a:hover {
      color: #40739c; }
    .travel-guide__content hr {
      align-self: center;
      display: block;
      width: 100%;
      max-width: 80rem;
      border-top: 1px solid #e6e6e6;
      font-weight: 600;
      margin-top: 3rem;
      margin-bottom: 6rem; }
    .travel-guide__content iframe {
      width: 100% !important;
      height: 50rem; }
      @media only screen and (max-width: 37.5em) {
        .travel-guide__content iframe {
          height: 35rem; } }
  .travel-guide__question {
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: 80rem;
    position: relative;
    padding: 3rem 10rem;
    text-align: center;
    align-items: center; }
    @media only screen and (max-width: 37.5em) {
      .travel-guide__question {
        padding: 3rem 0rem; } }
    .travel-guide__question__title {
      font-size: 3rem;
      font-weight: 600;
      color: #142838; }
    .travel-guide__question__text {
      font-size: 1.6rem;
      margin-top: 2rem;
      margin-bottom: 3rem; }
    .travel-guide__question__button {
      font-size: 1.3rem;
      font-family: "Metropolis", sans-serif;
      color: #142838;
      background-color: transparent;
      border: none;
      text-decoration: none;
      cursor: pointer;
      outline: none;
      width: 30rem;
      display: flex;
      align-items: center;
      justify-content: center;
      text-transform: uppercase;
      letter-spacing: 0.1rem;
      font-weight: 600;
      padding: 1.5rem 0;
      text-align: center; }
      .travel-guide__question__button:hover svg {
        transform: translateX(0.2rem) translateY(-0.1rem); }
      .travel-guide__question__button svg {
        margin-left: 0.5rem;
        transform: translateY(-0.1rem);
        height: 1.3rem;
        width: 1.3rem;
        fill: currentColor;
        transition: all 0.2s; }
    .travel-guide__question::before {
      content: "";
      position: absolute;
      height: 1px;
      width: 100%;
      background-color: #e6e6e6;
      top: 0;
      left: 50%;
      transform: translateX(-50%); }
    .travel-guide__question::after {
      content: "";
      position: absolute;
      height: 1px;
      width: 100%;
      background-color: #e6e6e6;
      bottom: 0;
      left: 50%;
      transform: translateX(-50%); }
  .travel-guide__disclaimer {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: 80rem;
    position: relative;
    padding: 3rem 10rem;
    text-align: center;
    align-items: center; }
    .travel-guide__disclaimer__header {
      font-size: 1.6rem;
      color: #142838;
      font-weight: 700;
      margin-bottom: 1.5rem; }
    @media only screen and (max-width: 50em) {
      .travel-guide__disclaimer {
        padding: 3rem 0rem; } }
    .travel-guide__disclaimer p {
      font-size: 1.3rem;
      line-height: 2rem; }
    .travel-guide__disclaimer::before {
      content: "";
      position: absolute;
      height: 1px;
      width: 100%;
      background-color: #e6e6e6;
      top: 0;
      left: 50%;
      transform: translateX(-50%); }
    .travel-guide__disclaimer::after {
      content: "";
      position: absolute;
      height: 1px;
      width: 100%;
      background-color: #e6e6e6;
      bottom: 0;
      left: 50%;
      transform: translateX(-50%); }
  .travel-guide__entry {
    font-size: 1.6rem;
    margin-top: 3rem;
    margin-bottom: 3rem;
    color: #142838; }
  .travel-guide__social {
    display: flex;
    margin-bottom: 6rem; }
    .travel-guide__social__link:link, .travel-guide__social__link:visited {
      color: #142838;
      transition: all 0.2s; }
    .travel-guide__social__link:hover {
      color: #40739c; }
    .travel-guide__social__link svg {
      height: 3rem;
      width: 3rem;
      fill: currentColor;
      margin: 0rem 0.5rem; }

.travel-guide-related {
  background-color: #1d2225;
  justify-content: center;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center; }
  .travel-guide-related__title {
    text-align: center;
    font-size: 1.8rem;
    text-transform: uppercase;
    letter-spacing: 0.2rem;
    font-weight: 500;
    color: #fff;
    margin-top: 6rem;
    margin-bottom: 5rem;
    width: 100%; }
  .travel-guide-related__slider-area {
    display: flex;
    justify-content: center;
    width: 100%;
    max-width: 140rem;
    margin-bottom: 6rem; }
    .travel-guide-related__slider-area__slider {
      width: 100%;
      padding: 0 9rem; }
      @media only screen and (max-width: 37.5em) {
        .travel-guide-related__slider-area__slider {
          padding: 0rem; } }
      .travel-guide-related__slider-area__slider .slick-slide {
        margin: 0 1.5rem; }
      .travel-guide-related__slider-area__slider__item {
        display: grid !important;
        grid-template-rows: 25rem minmax(25rem, min-content);
        width: 100%;
        color: white; }
        .travel-guide-related__slider-area__slider__item__image {
          grid-column: 1 / -1;
          grid-row: 1 / span 1;
          width: 100%;
          height: 100%;
          object-fit: cover;
          object-position: center;
          position: relative; }
        .travel-guide-related__slider-area__slider__item__content {
          grid-column: 1 / -1;
          grid-row: 2 / span 1;
          width: 100%;
          display: flex;
          flex-direction: column; }
          .travel-guide-related__slider-area__slider__item__content__title:link, .travel-guide-related__slider-area__slider__item__content__title:visited {
            text-decoration: none;
            color: #fff; }
          .travel-guide-related__slider-area__slider__item__content__title h3 {
            font-size: 3rem;
            line-height: 3.5rem;
            margin-top: 2.5rem;
            font-weight: 600;
            text-decoration: none;
            color: #fff; }
          .travel-guide-related__slider-area__slider__item__content__text {
            font-size: 1.6rem;
            margin-top: 1rem; }
          .travel-guide-related__slider-area__slider__item__content__cta {
            font-size: 1.6rem;
            text-transform: uppercase; }
      .travel-guide-related__slider-area__slider__btn--left {
        transform: translateY(-50%);
        position: absolute;
        z-index: 10;
        top: 40%;
        left: 1.5rem; }
      .travel-guide-related__slider-area__slider__btn--right {
        transform: translateY(-50%);
        position: absolute;
        z-index: 10;
        top: 40%;
        right: 1.5rem; }

.disclaimer-box {
  margin: 3rem;
  padding: 2rem 3rem;
  padding-bottom: 1rem;
  border: 1px solid #e6e6e6;
  border-radius: 0.4rem;
  font-size: 1.4rem;
  color: #142838;
  width: 45rem;
  display: grid;
  grid-template-columns: max-content 1fr;
  column-gap: 3rem; }
  @media only screen and (max-width: 37.5em) {
    .disclaimer-box {
      grid-template-columns: 1fr;
      justify-items: center;
      width: 100%;
      row-gap: 1rem;
      text-align: center; } }
  .disclaimer-box svg {
    height: 5rem;
    width: 5rem;
    fill: currentColor; }
  .disclaimer-box__warning {
    font-size: 1.3rem; }
    @media only screen and (max-width: 37.5em) {
      .disclaimer-box__warning {
        display: flex;
        flex-direction: column;
        align-items: center; } }
    .disclaimer-box__warning span {
      color: #9ea0a4; }
    .disclaimer-box__warning button {
      font-size: 1.3rem;
      font-family: "Metropolis", sans-serif;
      background-color: transparent;
      border: none;
      text-decoration: none;
      color: currentColor;
      cursor: pointer;
      outline: none;
      display: flex;
      align-items: center;
      text-transform: uppercase;
      letter-spacing: 0.1rem;
      font-weight: 600;
      padding: 1.5rem 0; }
      .disclaimer-box__warning button:hover svg {
        transform: translateX(0.2rem) translateY(-0.1rem); }
      .disclaimer-box__warning button svg {
        margin-left: 0.5rem;
        height: 1.3rem;
        width: 1.3rem;
        fill: currentColor;
        transition: all 0.2s; }

.wp-caption {
  width: auto !important;
  display: flex;
  flex-direction: column;
  align-items: center;
  max-width: calc(112rem + 12rem); }

.wp-caption-text {
  max-width: calc(112rem + 12rem) !important;
  align-self: center;
  font-size: 1.6rem !important;
  margin-bottom: 2rem;
  color: #9ea0a4;
  transform: translateY(-2rem); }

.custom-review {
  padding: 2rem 3rem;
  padding-right: 4.5rem;
  border-radius: 1rem;
  background-color: #142838;
  width: 100%;
  max-width: 100%;
  gap: 4rem;
  margin: 20px auto;
  text-align: center;
  display: flex;
  align-items: center;
  font-family: "Metropolis", sans-serif;
  flex-direction: row !important;
  color: #e6e6e6 !important; }
  @media only screen and (max-width: 37.5em) {
    .custom-review {
      flex-direction: column !important;
      text-align: center !important;
      gap: 2rem; } }
  .custom-review__person {
    display: flex;
    flex-direction: column;
    align-items: center; }
    .custom-review__person__avatar {
      width: 8rem !important;
      height: 8rem !important;
      border-radius: 50% !important;
      margin: 0 !important; }
    .custom-review__person__name {
      font-size: 2rem !important;
      font-weight: 700 !important;
      width: max-content !important; }
    .custom-review__person__title {
      font-size: 1.4rem !important;
      width: max-content !important; }
  .custom-review__quote {
    font-size: 2rem !important;
    position: relative;
    color: #fff !important;
    font-style: italic; }
    .custom-review__quote__start-quote {
      position: absolute;
      top: -1rem;
      left: -3rem;
      z-index: 1; }
      @media only screen and (max-width: 37.5em) {
        .custom-review__quote__start-quote {
          left: -2rem; } }
      .custom-review__quote__start-quote svg {
        fill: #c2c6c9;
        height: 3rem;
        width: 3rem;
        transform: rotate(180deg); }
    .custom-review__quote__end-quote {
      position: absolute;
      bottom: -2rem;
      right: -3.5rem;
      z-index: 1; }
      .custom-review__quote__end-quote svg {
        fill: #c2c6c9;
        height: 3rem;
        width: 3rem; }

.guide-menu-area {
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
  position: relative;
  width: 100%;
  pointer-events: none;
  position: fixed;
  bottom: 0rem;
  left: 0rem;
  z-index: 50;
  display: none; }
  .guide-menu-area.active {
    display: flex;
    animation: fadein 0.4s; }
  .guide-menu-area__content {
    width: 100%;
    padding: 0 6rem;
    max-width: calc(112rem + 12rem);
    padding-bottom: 2rem !important; }
    @media only screen and (max-width: 50em) {
      .guide-menu-area__content {
        padding: 0 3rem; } }

.guide-menu {
  position: relative;
  pointer-events: all; }
  .guide-menu__button {
    color: #142838;
    font-size: 1.4rem;
    background-color: #fff;
    font-weight: 600;
    border-radius: 4rem;
    padding: 1rem 2.5rem;
    display: flex;
    align-items: center;
    width: max-content;
    border: 1px solid #142838;
    box-shadow: 0 2rem 6rem rgba(0, 0, 0, 0.2);
    cursor: pointer;
    position: relative; }
    .guide-menu__button svg {
      color: currentColor;
      height: 2rem;
      width: 2rem;
      margin-right: 1.5rem; }
    .guide-menu__button:hover {
      transition: all 0.2s;
      background-color: #e6e6e6; }
  .guide-menu__menu {
    display: none;
    background-color: #fff;
    padding: 2rem 3rem;
    border: 1px solid #142838;
    border-radius: 1rem; }
    .guide-menu__menu.active {
      display: flex;
      position: absolute;
      left: 0;
      bottom: calc(-100% + 9.5rem); }
    .guide-menu__menu ul {
      margin-left: 2rem;
      font-size: 1.4rem;
      color: #142838;
      font-weight: 600; }
      .guide-menu__menu ul a {
        color: #142838;
        text-decoration: none; }
        .guide-menu__menu ul a:hover {
          color: #305a7c; }

.travel-guide-landing-page {
  display: flex;
  flex-direction: column;
  width: 100%;
  align-items: center;
  position: relative;
  padding-top: 14rem; }
  @media only screen and (max-width: 62.5em) {
    .travel-guide-landing-page {
      padding-top: 12rem; } }
  @media only screen and (max-width: 37.5em) {
    .travel-guide-landing-page {
      padding-top: 10rem; } }
  .travel-guide-landing-page__breadcrumb {
    margin-bottom: 2rem;
    font-size: 1.2rem;
    letter-spacing: 0.1rem;
    justify-self: flex-start;
    font-weight: 400;
    justify-content: center;
    display: flex;
    position: relative;
    list-style: none;
    height: max-content;
    width: 100%;
    max-width: max-content;
    flex-wrap: wrap;
    color: #305a7c; }
    .travel-guide-landing-page__breadcrumb li {
      display: inline-block;
      width: max-content; }
      .travel-guide-landing-page__breadcrumb li:not(:last-child):after {
        content: " / ";
        padding-left: 1px;
        padding-right: 4px; }
      .travel-guide-landing-page__breadcrumb li a {
        position: relative;
        text-decoration: none;
        color: currentColor; }
        .travel-guide-landing-page__breadcrumb li a::after {
          content: "";
          position: absolute;
          bottom: -0.3rem;
          left: 0;
          width: 97%;
          height: 1px;
          background-color: currentColor;
          transition: all 0.2s;
          opacity: 0; }
        .travel-guide-landing-page__breadcrumb li a:hover::after {
          color: currentColor;
          opacity: 1; }
  .travel-guide-landing-page__header {
    max-width: calc(112rem + 12rem);
    padding: 0 6rem;
    position: relative;
    margin-bottom: 6rem; }
    @media only screen and (max-width: 62.5em) {
      .travel-guide-landing-page__header {
        display: none; } }
    .travel-guide-landing-page__header__image-area {
      width: 100%;
      height: 100%;
      height: 35rem;
      display: flex;
      position: relative;
      align-items: center;
      justify-content: center;
      align-content: center;
      z-index: 1; }
      .travel-guide-landing-page__header__image-area img {
        border-radius: 0.4rem;
        object-fit: cover;
        height: 100%;
        width: 100%;
        z-index: 1;
        position: relative; }
      .travel-guide-landing-page__header__image-area::after {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
        width: 100%;
        z-index: 2;
        border-radius: 0.4rem;
        background-image: linear-gradient(to top, rgba(255, 255, 255, 0.2), rgba(255, 255, 255, 0.2)); }
    .travel-guide-landing-page__header__icon-area {
      position: absolute;
      bottom: -5rem;
      left: 50%;
      z-index: 3;
      background-color: #fff;
      transform: translateX(-50%);
      padding: 1rem;
      border-radius: 50%; }
      .travel-guide-landing-page__header__icon-area svg {
        color: #142838;
        height: 7rem;
        width: 7rem;
        stroke-width: 2; }
  .travel-guide-landing-page__content {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%; }
    .travel-guide-landing-page__content__title {
      font-size: 5rem;
      color: #142838;
      letter-spacing: 0.2rem;
      font-weight: 500;
      line-height: 6rem;
      text-align: center;
      max-width: calc(112rem + 12rem);
      padding: 0 6rem; }
      @media only screen and (max-width: 37.5em) {
        .travel-guide-landing-page__content__title {
          padding: 0 3rem; } }
    .travel-guide-landing-page__content__search-area {
      width: 100%;
      max-width: calc(112rem + 12rem);
      padding: 2rem 6rem;
      display: flex;
      justify-content: center;
      position: relative; }
      @media only screen and (max-width: 37.5em) {
        .travel-guide-landing-page__content__search-area {
          padding: 0 3rem; } }
      .travel-guide-landing-page__content__search-area input {
        width: 100%;
        max-width: 50rem;
        border-radius: 4rem;
        background-color: rgba(255, 255, 255, 0.9);
        border: 2px solid #c2c6c9;
        padding: 1.5rem 2.5rem;
        box-shadow: none;
        font-family: "Metropolis", sans-serif;
        letter-spacing: 0.1rem;
        color: #919598;
        font-weight: 600;
        font-size: 1.6rem;
        transition: all .2s;
        outline: none; }
        .travel-guide-landing-page__content__search-area input:focus {
          box-shadow: 0 2rem 6rem rgba(0, 0, 0, 0.2);
          border: 2px solid #142838; }
    .travel-guide-landing-page__content__subtext {
      font-size: 1.6rem;
      margin: 2rem 0;
      text-align: center;
      max-width: calc(112rem + 12rem);
      padding: 0 6rem; }
      @media only screen and (max-width: 37.5em) {
        .travel-guide-landing-page__content__subtext {
          padding: 0 3rem; } }
    .travel-guide-landing-page__content__featured {
      max-width: calc(112rem + 12rem);
      padding: 0 6rem;
      margin: 0 3rem;
      margin-bottom: 4rem; }
      .travel-guide-landing-page__content__featured h2 {
        font-size: 3rem;
        color: #142838;
        letter-spacing: 0.2rem;
        font-weight: 500; }
    .travel-guide-landing-page__content__categories {
      margin: 2rem 0;
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      max-width: calc(112rem + 12rem);
      padding: 0 6rem; }
      @media only screen and (max-width: 37.5em) {
        .travel-guide-landing-page__content__categories {
          padding: 0 3rem; } }
      .travel-guide-landing-page__content__categories button {
        background-color: transparent;
        font-family: "Metropolis", sans-serif;
        color: #142838;
        font-weight: 800;
        padding: 1rem 2rem;
        border: 2px solid #c2c6c9;
        border-radius: 4rem;
        font-size: 1.6rem;
        margin: 0.5rem;
        transition: all 0.2s;
        cursor: pointer;
        outline: none; }
        .travel-guide-landing-page__content__categories button:hover, .travel-guide-landing-page__content__categories button:active {
          border: 2px solid #142838; }
      .travel-guide-landing-page__content__categories .selected {
        border: 2px solid #142838; }
    .travel-guide-landing-page__content__results {
      position: relative;
      margin-bottom: 12rem;
      width: 100%;
      margin-top: 2rem; }
    .travel-guide-landing-page__content__no-results {
      display: none;
      font-size: 2rem;
      margin-bottom: 12rem; }
  .travel-guide-landing-page .destination-main::before {
    display: none; }
  .travel-guide-landing-page .destination-main__packages__header {
    margin-bottom: 2rem; }

.experience-page__section-hero {
  background-color: #1d2225; }

.experience-page__section-intro {
  display: flex;
  align-items: center;
  flex-direction: column; }

.experience-page__section-region {
  display: flex;
  align-items: center;
  flex-direction: column; }

.experience-page__section-newsletter {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  width: 100%; }
  @media only screen and (max-width: 62.5em) {
    .experience-page__section-newsletter .newsletter {
      margin: 6rem 0; } }
  @media only screen and (max-width: 50em) {
    .experience-page__section-newsletter .newsletter {
      margin: 2rem 0;
      margin-bottom: 10rem; } }

.contact-page {
  padding-top: 12rem;
  display: flex;
  flex-direction: column;
  width: 100%;
  align-items: center;
  position: relative;
  z-index: 0; }
  @media only screen and (max-width: 37.5em) {
    .contact-page {
      padding-top: 9rem; } }
  .contact-page__intro {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    max-width: calc(112rem + 12rem);
    padding: 0 6rem;
    margin-bottom: 4.5rem; }
    @media only screen and (max-width: 37.5em) {
      .contact-page__intro {
        padding: 0 3rem; } }
    .contact-page__intro__category {
      font-size: 1.6rem;
      letter-spacing: 0.2rem;
      text-transform: uppercase;
      color: #305a7c;
      text-align: center;
      font-weight: 500;
      margin-bottom: 1rem; }
    .contact-page__intro__title {
      font-size: 5rem;
      line-height: 5.8rem;
      color: #142838;
      font-weight: 600;
      text-align: center;
      margin-bottom: 2rem; }
    .contact-page__intro__subtitle {
      font-size: 1.6rem;
      text-align: center;
      max-width: 75rem; }
  .contact-page__testimonial-title {
    font-size: 3rem;
    color: #142838;
    font-weight: 700;
    line-height: 3.5rem;
    max-width: 40rem;
    text-align: center;
    margin-top: 6rem; }

.about-page {
  padding-top: 12rem;
  display: flex;
  flex-direction: column;
  width: 100%;
  align-items: center; }
  @media only screen and (max-width: 37.5em) {
    .about-page {
      padding-top: 9rem; } }
  .about-page section {
    display: flex;
    flex-direction: column;
    width: 100%;
    align-items: center; }

.generic-page {
  padding-top: 12rem;
  display: flex;
  flex-direction: column;
  width: 100%;
  align-items: center; }
  @media only screen and (max-width: 37.5em) {
    .generic-page {
      padding-top: 9rem; } }
  .generic-page__content {
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: calc(112rem + 12rem);
    align-items: center;
    margin-bottom: 8rem;
    padding: 0 6rem; }
    @media only screen and (max-width: 37.5em) {
      .generic-page__content {
        padding: 0 3rem; } }
    .generic-page__content__title {
      font-size: 5rem;
      line-height: 5.5rem;
      font-weight: 700;
      color: #142838;
      margin-bottom: 2rem; }
    .generic-page__content__toc {
      width: 100%;
      margin: 4rem 0;
      padding: 4rem 0;
      border-top: 2px solid #142838;
      border-bottom: 2px solid #142838; }
      .generic-page__content__toc__header {
        font-size: 3rem;
        line-height: 3.5rem;
        font-weight: 700;
        color: #142838;
        margin-bottom: 4rem;
        text-align: center; }
      .generic-page__content__toc__grid {
        display: flex;
        flex-wrap: wrap;
        align-content: flex-start;
        height: 60rem;
        flex-direction: column;
        width: 100%; }
        @media only screen and (max-width: 50em) {
          .generic-page__content__toc__grid {
            width: 100%;
            height: max-content; } }
        .generic-page__content__toc__grid li {
          max-width: calc(50% - 4rem);
          min-width: 10rem;
          color: #305a7c;
          font-size: 1.8rem;
          margin-left: 4rem; }
          @media only screen and (max-width: 50em) {
            .generic-page__content__toc__grid li {
              max-width: calc(100% - 4rem); } }
          .generic-page__content__toc__grid li a:link, .generic-page__content__toc__grid li a:visited {
            text-decoration: none;
            color: #305a7c;
            font-size: 1.8rem;
            width: 100%; }
          .generic-page__content__toc__grid li a:hover {
            color: #40739c; }
    .generic-page__content h2 {
      font-size: 3rem;
      font-weight: 700;
      color: #142838;
      margin-bottom: 2rem; }
    .generic-page__content p {
      width: 100%; }
    .generic-page__content hr {
      width: 100%;
      border: 1px solid #142838;
      margin-bottom: 2rem; }
    .generic-page__content ul {
      width: 100%;
      font-size: 1.6rem;
      padding-left: 9rem;
      margin-bottom: 3rem; }
      @media only screen and (max-width: 50em) {
        .generic-page__content ul {
          padding-left: 3rem; } }
    .generic-page__content a:link, .generic-page__content a:visited {
      color: #305a7c;
      transition: all 0.2s;
      text-decoration: none;
      font-weight: 500; }
    .generic-page__content a:hover {
      color: #40739c; }

.test-page {
  position: relative; }
  .test-page__section-hero {
    background-color: #1e1e1e; }
  .test-page__section-intro {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    height: 50rem;
    width: 100%; }

.test-hero {
  display: flex;
  width: 100%;
  height: 100vh;
  position: relative;
  flex-direction: column;
  align-items: center;
  min-height: 80rem;
  position: relative; }
  @media only screen and (max-width: 62.5em) {
    .test-hero {
      min-height: 60rem;
      padding-bottom: 12rem; } }
  .test-hero__bg {
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    height: 100%; }
    .test-hero__bg .slick-list {
      height: 100% !important; }
    .test-hero__bg .slick-track {
      height: 100% !important; }
    .test-hero__bg .slick-slide div {
      height: 100% !important; }
    .test-hero__bg__slide {
      height: 100%;
      width: 100%; }
      .test-hero__bg__slide img {
        background-position: center center;
        background-repeat: no-repeat;
        object-fit: cover;
        height: 100%;
        width: 100%;
        z-index: 0; }
      .test-hero__bg__slide__image-area {
        height: min-content;
        position: relative; }
        .test-hero__bg__slide__image-area img {
          background-position: center center;
          background-repeat: no-repeat;
          object-fit: cover;
          height: 100%;
          width: 100%;
          z-index: 0; }
    .test-hero__bg:after {
      content: "";
      height: 100%;
      width: 100%;
      background-image: linear-gradient(to right, rgba(30, 30, 30, 0.4) 10%, transparent), linear-gradient(to top, rgba(30, 30, 30, 0.2), rgba(30, 30, 30, 0.2)), linear-gradient(to top, rgba(30, 30, 30, 0.7), transparent 60%);
      position: absolute;
      top: 0;
      left: 0;
      z-index: 2; }
  .test-hero__content {
    z-index: 5;
    height: 100%;
    margin-top: 15rem;
    margin-bottom: 6rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 100%;
    max-width: 135rem;
    padding: 0 6rem; }
    @media only screen and (max-width: 37.5em) {
      .test-hero__content {
        padding: 0 3rem; } }
    @media only screen and (max-width: 62.5em) {
      .test-hero__content {
        align-items: center;
        margin-top: 12rem;
        margin-bottom: 0rem; } }
    .test-hero__content__title-group {
      display: flex;
      flex-direction: column;
      max-width: 55rem;
      color: #fff;
      position: relative;
      margin-bottom: 5rem; }
      @media only screen and (max-width: 62.5em) {
        .test-hero__content__title-group {
          align-items: center;
          text-align: center; } }
      .test-hero__content__title-group__title {
        font-size: 6rem;
        line-height: 6.5rem;
        font-family: "Playfair Display", serif;
        letter-spacing: 0.2rem;
        font-weight: 300;
        margin-bottom: 2.5rem; }
        @media only screen and (max-width: 37.5em) {
          .test-hero__content__title-group__title {
            font-size: 4rem;
            line-height: 4.5rem;
            letter-spacing: 0.1rem; } }
      .test-hero__content__title-group__subtitle {
        font-size: 2.5rem;
        font-weight: 400;
        font-family: "Playfair Display", serif;
        letter-spacing: 0.1rem; }
        @media only screen and (max-width: 37.5em) {
          .test-hero__content__title-group__subtitle {
            font-size: 2rem;
            line-height: 2.5rem;
            letter-spacing: 0.1rem; } }
    .test-hero__content__search-area {
      width: 100%;
      height: min-content; }
  .test-hero__bottom {
    width: 100%;
    height: 10rem;
    max-width: 135rem;
    margin-bottom: 4rem;
    z-index: 10;
    padding: 0 6rem;
    display: flex;
    justify-content: space-between;
    align-items: center; }
    @media only screen and (max-width: 37.5em) {
      .test-hero__bottom {
        padding: 0 3rem; } }
    @media only screen and (max-width: 62.5em) {
      .test-hero__bottom {
        justify-content: center; } }
    .test-hero__bottom__slide-nav {
      width: 24rem;
      position: relative;
      margin-right: 8rem; }
      @media only screen and (max-width: 62.5em) {
        .test-hero__bottom__slide-nav {
          display: none; } }
      .test-hero__bottom__slide-nav .slick-list {
        height: 100% !important; }
      .test-hero__bottom__slide-nav .slick-track {
        height: 100% !important; }
      .test-hero__bottom__slide-nav .slick-slide div {
        height: 100% !important; }
      .test-hero__bottom__slide-nav__slide {
        display: flex !important;
        justify-content: center;
        align-items: center;
        height: 100%;
        width: 100%;
        font-size: 1.2rem;
        text-transform: uppercase;
        font-weight: 300;
        letter-spacing: 0.2rem;
        color: rgba(255, 255, 255, 0.85); }
      .test-hero__bottom__slide-nav__arrow-left {
        position: absolute;
        transform: translateY(50%);
        bottom: 50%;
        right: -2rem;
        z-index: 10;
        margin: 0; }
      .test-hero__bottom__slide-nav__arrow-right {
        position: absolute;
        transform: translateY(50%);
        bottom: 50%;
        right: -6rem;
        z-index: 10;
        margin: 0; }
    .test-hero__bottom button {
      opacity: 0.8; }

.error404-page {
  padding-top: 9rem;
  display: flex;
  flex-direction: column;
  width: 100%;
  align-items: center; }
  @media only screen and (max-width: 62.5em) {
    .error404-page {
      padding-top: 7rem; } }
  .error404-page__content {
    width: 100%;
    max-width: calc(112rem + 12rem);
    padding: 3rem 0;
    height: 60rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: calc(112rem + 12rem);
    align-items: center;
    padding: 0 6rem; }
    @media only screen and (max-width: 37.5em) {
      .error404-page__content {
        height: 50rem; } }
    @media only screen and (max-width: 37.5em) {
      .error404-page__content {
        padding: 0 3rem; } }
    .error404-page__content__title {
      font-size: 4rem;
      color: #142838;
      text-align: center; }
    .error404-page__content__subtitle {
      font-size: 2rem;
      color: #142838;
      text-align: center; }
    .error404-page__content__image-area {
      display: flex;
      justify-content: center;
      padding: 4rem; }
      .error404-page__content__image-area svg {
        height: 12rem;
        width: 12rem;
        fill: #142838; }
    .error404-page__content__snippet {
      font-size: 2rem;
      text-align: center; }
    .error404-page__content__links {
      font-size: 1.6rem;
      text-align: center; }

.deals-page {
  padding-top: 12rem; }
  .deals-page__section-hero {
    display: flex;
    align-items: center;
    flex-direction: column; }
  .deals-page__section-featured {
    display: flex;
    align-items: center;
    flex-direction: column;
    margin-top: 6rem;
    padding-top: 3rem;
    position: relative; }
    .deals-page__section-featured::before {
      content: "";
      position: absolute;
      height: 100%;
      width: 100%;
      background-image: linear-gradient(to top, rgba(255, 255, 255, 0.8), rgba(255, 255, 255, 0.8)), url(../png/topo-1.png);
      opacity: 0.35;
      top: 0;
      left: 0;
      z-index: -3; }
  .deals-page__section-destinations {
    display: flex;
    align-items: center;
    flex-direction: column;
    margin-top: 6rem;
    position: relative; }

.reviews-page {
  padding-top: 12rem; }
  .reviews-page__section-hero {
    display: flex;
    align-items: center;
    flex-direction: column;
    margin-bottom: 2rem; }
  .reviews-page__section-content {
    display: flex;
    align-items: center;
    flex-direction: column;
    margin-top: 2rem;
    padding-top: 3rem;
    position: relative; }
    .reviews-page__section-content::before {
      content: "";
      position: absolute;
      height: 100%;
      width: 100%;
      background-image: linear-gradient(to top, rgba(255, 255, 255, 0.8), rgba(255, 255, 255, 0.8)), url(../png/topo-1.png);
      opacity: 0.35;
      top: 0;
      left: 0;
      z-index: -3; }

.reviews-hero {
  max-width: 132rem;
  padding: 0 6rem; }
  @media only screen and (max-width: 37.5em) {
    .reviews-hero {
      padding: 0 3rem; } }
  .reviews-hero__title {
    font-size: 5rem;
    color: #142838;
    letter-spacing: 0.2rem;
    font-weight: 500;
    line-height: 6rem;
    text-align: center; }
  .reviews-hero__subtext {
    font-size: 1.6rem;
    margin: 2rem 0;
    text-align: center; }

.reviews-content {
  width: 100%;
  max-width: 132rem;
  padding: 0 6rem;
  font-size: 1.6rem;
  padding-bottom: 12rem; }
  @media only screen and (max-width: 50em) {
    .reviews-content {
      padding: 0 3rem;
      max-width: 100%; } }

.agency-page {
  padding-top: 12rem; }
  .agency-page__section-hero {
    display: flex;
    align-items: center;
    flex-direction: column; }
  .agency-page__section-partners {
    display: flex;
    align-items: center;
    flex-direction: column;
    margin-top: 6rem;
    padding-top: 3rem;
    position: relative; }

.agency-hero {
  display: flex;
  max-width: calc(112rem + 12rem);
  padding: 0 6rem;
  display: grid;
  grid-template-columns: 40rem 1fr;
  gap: 10rem;
  width: 100%; }
  @media only screen and (max-width: 37.5em) {
    .agency-hero {
      padding: 0 3rem; } }
  @media only screen and (max-width: 37.5em) {
    .agency-hero {
      grid-template-columns: 1fr;
      gap: 3rem; } }
  .agency-hero__content {
    display: flex;
    flex-direction: column;
    justify-content: center; }
    .agency-hero__content__title {
      font-size: 5rem;
      line-height: 5.8rem;
      font-family: "Playfair Display", serif;
      color: #142838;
      margin-bottom: 4rem;
      font-weight: 400; }
      @media only screen and (max-width: 62.5em) {
        .agency-hero__content__title {
          font-size: 3.5rem;
          line-height: 4.2rem; } }
      @media only screen and (max-width: 50em) {
        .agency-hero__content__title {
          text-align: center; } }
    .agency-hero__content__snippet {
      font-size: 1.6rem;
      margin-bottom: 5rem; }
      @media only screen and (max-width: 50em) {
        .agency-hero__content__snippet {
          margin-bottom: 6rem;
          text-align: center; } }
  .agency-hero__image img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    object-position: center;
    position: relative; }
    @media only screen and (max-width: 62.5em) {
      .agency-hero__image img {
        max-height: 48rem; } }

.agency-intro {
  max-width: calc(112rem + 12rem);
  padding: 0 6rem;
  width: 100%;
  margin-top: 8rem;
  display: flex;
  flex-direction: column; }
  @media only screen and (max-width: 37.5em) {
    .agency-intro {
      padding: 0 3rem; } }
  .agency-intro__title {
    font-size: 3rem;
    font-weight: 600;
    text-align: center;
    margin-bottom: 6rem;
    color: #142838; }

.agency-person {
  max-width: calc(112rem + 12rem);
  padding: 0 6rem;
  width: 100%;
  margin-top: 8rem;
  display: flex;
  flex-direction: column; }
  @media only screen and (max-width: 37.5em) {
    .agency-person {
      padding: 0 3rem; } }
  .agency-person__content {
    display: grid;
    grid-template-columns: 1fr 50rem;
    gap: 10rem;
    width: 100%; }
    @media only screen and (max-width: 37.5em) {
      .agency-person__content {
        grid-template-columns: 1fr;
        gap: 3rem; } }
    .agency-person__content__text__title {
      font-size: 3rem;
      font-weight: 600;
      margin-bottom: 3rem;
      color: #142838; }
    .agency-person__content__image-area img {
      height: 100%;
      width: 100%;
      object-fit: cover;
      object-position: center;
      position: relative; }
      @media only screen and (max-width: 62.5em) {
        .agency-person__content__image-area img {
          max-height: 48rem; } }

.deals-hero {
  max-width: 132rem;
  padding: 0 6rem; }
  @media only screen and (max-width: 37.5em) {
    .deals-hero {
      padding: 0 3rem; } }
  .deals-hero__title {
    font-size: 5rem;
    color: #142838;
    letter-spacing: 0.2rem;
    font-weight: 500;
    line-height: 6rem;
    text-align: center; }
  .deals-hero__subtext {
    font-size: 1.6rem;
    margin: 2rem 0;
    text-align: center; }
  .deals-hero__row {
    display: flex; }
    @media only screen and (max-width: 50em) {
      .deals-hero__row {
        flex-direction: column; } }

.deal-card {
  border-radius: 0rem;
  display: grid !important;
  margin: 1rem;
  flex: 1;
  flex-grow: 1;
  text-decoration: none;
  width: 100%;
  min-height: 35rem;
  height: min-content; }
  @media only screen and (max-width: 50em) {
    .deal-card {
      margin: 1rem 0rem; } }
  .deal-card__image {
    grid-column: 1 / -1;
    grid-row: 1 / -1;
    position: relative; }
    .deal-card__image img {
      border-radius: 0rem;
      object-fit: cover;
      height: 100%;
      width: 100%; }
    .deal-card__image::after {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-image: linear-gradient(to right, rgba(30, 30, 30, 0.2), rgba(30, 30, 30, 0.2));
      border-radius: 0rem;
      z-index: 1; }
  .deal-card__content {
    grid-column: 1 / -1;
    grid-row: 1 / -1;
    display: flex;
    justify-content: center;
    flex-direction: column;
    z-index: 20;
    color: #fff;
    text-align: center;
    margin: 4rem;
    position: relative; }
    .deal-card__content__title {
      font-size: 2.8rem;
      line-height: 3.2rem;
      font-weight: 600; }
    .deal-card__content__cta {
      margin-top: 2rem; }

.deals-featured {
  width: 100%;
  padding: 0 6rem;
  display: flex;
  flex-direction: column;
  align-items: center; }
  @media only screen and (max-width: 50em) {
    .deals-featured {
      padding: 0; } }
  .deals-featured__title {
    font-size: 3.5rem;
    color: #142838;
    letter-spacing: 0.2rem;
    font-weight: 600;
    line-height: 6rem;
    text-align: center;
    line-height: 4rem;
    margin-bottom: 3rem;
    margin-top: 2rem;
    padding: 0 1rem; }
  .deals-featured__slider {
    width: 100%;
    max-width: 140rem;
    z-index: 10;
    padding: 0 9rem; }
    @media only screen and (max-width: 50em) {
      .deals-featured__slider {
        padding: 0rem; } }
    .deals-featured__slider .slick-dots {
      max-width: 35rem;
      left: 50%;
      transform: translateX(-50%); }
    .deals-featured__slider .slick-slide {
      margin: 1.5rem;
      margin-bottom: 4rem;
      box-shadow: 0 2rem 2rem -1rem rgba(0, 0, 0, 0.25);
      min-width: 0; }
      @media only screen and (max-width: 37.5em) {
        .deals-featured__slider .slick-slide {
          margin-bottom: 3rem;
          margin: .5rem; } }
    .deals-featured__slider .deal-slide {
      border-bottom-left-radius: 0.4rem;
      border-bottom-right-radius: 0.4rem;
      background-color: #fff;
      display: flex;
      flex-direction: column; }
      .deals-featured__slider .deal-slide__image-area {
        height: 25rem; }
        @media only screen and (max-width: 50em) {
          .deals-featured__slider .deal-slide__image-area {
            height: 35rem; } }
        @media only screen and (max-width: 37.5em) {
          .deals-featured__slider .deal-slide__image-area {
            height: 25rem; } }
        .deals-featured__slider .deal-slide__image-area img {
          border-top-left-radius: 0.4rem;
          border-top-right-radius: 0.4rem;
          object-fit: cover;
          height: 100%;
          width: 100%; }
      .deals-featured__slider .deal-slide__bottom {
        display: flex;
        flex-direction: column;
        padding: 2rem 3rem; }
        .deals-featured__slider .deal-slide__bottom__category {
          text-transform: uppercase;
          color: #d9a402;
          font-size: 1.4rem;
          letter-spacing: 0.2rem;
          display: flex;
          flex-wrap: wrap;
          margin: 1rem 0;
          list-style: none; }
          .deals-featured__slider .deal-slide__bottom__category li {
            white-space: nowrap;
            margin-right: 1rem;
            position: relative; }
            .deals-featured__slider .deal-slide__bottom__category li:not(:last-child)::after {
              content: ", ";
              position: absolute;
              right: -0.4rem; }
        .deals-featured__slider .deal-slide__bottom__title {
          color: #142838; }
          .deals-featured__slider .deal-slide__bottom__title:link, .deals-featured__slider .deal-slide__bottom__title:visited {
            text-decoration: none;
            color: #142838; }
            .deals-featured__slider .deal-slide__bottom__title:link:hover, .deals-featured__slider .deal-slide__bottom__title:visited:hover {
              color: #40739c; }
          .deals-featured__slider .deal-slide__bottom__title h3 {
            font-size: 3rem;
            font-weight: 500;
            letter-spacing: 0.1rem;
            line-height: 4rem;
            margin: 0.5rem 0;
            transition: all 0.2s; }
        .deals-featured__slider .deal-slide__bottom__snippet {
          font-size: 1.6rem;
          padding: 1rem 0;
          padding-bottom: 2rem; }
        .deals-featured__slider .deal-slide__bottom__cta--multiple {
          display: flex;
          flex-wrap: wrap;
          border-top: 1px solid #c2c6c9;
          position: relative;
          margin-top: 2rem;
          padding-top: 1rem; }
          .deals-featured__slider .deal-slide__bottom__cta--multiple span {
            position: absolute;
            top: -2rem;
            font-size: 1.2rem;
            color: #142838;
            letter-spacing: 0.1rem; }
          .deals-featured__slider .deal-slide__bottom__cta--multiple a {
            color: #142838;
            background-color: #e6e6e6;
            padding: .5rem 1rem;
            border: none;
            margin: .5rem 1rem;
            margin-left: 0rem;
            letter-spacing: 0.1rem;
            cursor: pointer;
            border-radius: 4rem;
            font-size: 1.2rem;
            text-transform: uppercase;
            font-weight: 700;
            position: relative;
            text-decoration: none;
            white-space: nowrap;
            transition: all .2s; }
            .deals-featured__slider .deal-slide__bottom__cta--multiple a:hover {
              background-color: #c2c6c9; }

.deals-destinations {
  width: 100%;
  padding: 0 6rem;
  margin-bottom: 8rem;
  display: flex;
  flex-direction: column;
  align-items: center; }
  @media only screen and (max-width: 50em) {
    .deals-destinations {
      margin-bottom: 3rem;
      padding: 0; } }
  .deals-destinations__title {
    font-size: 3.5rem;
    color: #142838;
    letter-spacing: 0.2rem;
    font-weight: 600;
    line-height: 6rem;
    text-align: center;
    line-height: 4rem;
    margin-bottom: 4rem;
    margin-top: 0rem; }
  .deals-destinations__slider {
    width: 100%;
    max-width: 140rem;
    z-index: 10;
    padding: 0 9rem; }
    @media only screen and (max-width: 37.5em) {
      .deals-destinations__slider {
        padding: 0rem; } }
    .deals-destinations__slider .slick-dots {
      max-width: 35rem;
      left: 50%;
      transform: translateX(-50%); }
    .deals-destinations__slider .slick-slide {
      margin: 1rem;
      box-shadow: 0 1rem 1rem -1rem rgba(0, 0, 0, 0.25);
      min-width: 0; }
      @media only screen and (max-width: 37.5em) {
        .deals-destinations__slider .slick-slide {
          margin: .5rem; } }
      .deals-destinations__slider .slick-slide .card-square {
        margin-top: 1.5rem !important; }
    .deals-destinations__slider__btn--left {
      transform: translateY(-50%);
      position: absolute;
      z-index: 10;
      top: 50%;
      left: 1.5rem; }
    .deals-destinations__slider__btn--right {
      transform: translateY(-50%);
      position: absolute;
      z-index: 10;
      top: 50%;
      right: 1.5rem; }

.product-hero {
  display: flex;
  width: 100%;
  height: 100vh;
  position: relative;
  flex-direction: column; }
  .product-hero__top {
    height: 100%;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: center; }
    .product-hero__top__bg {
      position: absolute;
      top: 0;
      left: 0;
      z-index: 1;
      width: 100%;
      height: 100%; }
      .product-hero__top__bg img {
        background-position: center center;
        background-repeat: no-repeat;
        object-fit: cover;
        height: 100%;
        width: 100%;
        z-index: 1; }
      .product-hero__top__bg .hero-feature-image {
        display: none; }
      @media only screen and (max-width: 37.5em) {
        .product-hero__top__bg .hero-bg-image {
          display: none; }
        .product-hero__top__bg .hero-feature-image {
          display: block; } }
      .product-hero__top__bg::after {
        position: absolute;
        content: "";
        top: 0;
        left: 0;
        height: 100%;
        width: 100%;
        background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.3), transparent 20%), linear-gradient(to bottom, rgba(30, 30, 30, 0.1), rgba(30, 30, 30, 0.1)), linear-gradient(to top, rgba(30, 30, 30, 0.8), rgba(0, 0, 0, 0.1) 50%);
        z-index: 2; }
        @media only screen and (max-width: 62.5em) {
          .product-hero__top__bg::after {
            background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.3), transparent 20%), linear-gradient(to bottom, rgba(30, 30, 30, 0.4), rgba(30, 30, 30, 0.4)), linear-gradient(to top, rgba(30, 30, 30, 0.7), rgba(30, 30, 30, 0.1) 70%); } }
    .product-hero__top__content {
      z-index: 8;
      width: 100%;
      justify-self: center;
      height: calc(100% - 9rem);
      display: flex;
      flex-direction: column;
      position: relative;
      justify-content: space-between;
      color: #fff;
      max-width: calc(112rem + 12rem);
      padding: 0 6rem; }
      @media only screen and (max-width: 37.5em) {
        .product-hero__top__content {
          padding: 0 3rem; } }
      @media only screen and (max-width: 62.5em) {
        .product-hero__top__content {
          align-items: center;
          text-align: center; } }
      .product-hero__top__content__breadcrumb {
        margin-top: 3rem;
        font-size: 1.2rem;
        letter-spacing: 0.2rem;
        justify-self: flex-start;
        font-weight: 400;
        display: flex;
        position: relative;
        list-style: none;
        height: max-content;
        flex-wrap: wrap; }
        @media only screen and (max-width: 62.5em) {
          .product-hero__top__content__breadcrumb {
            justify-self: center;
            margin-top: 1rem;
            justify-content: center; } }
        .product-hero__top__content__breadcrumb li {
          display: inline-block;
          width: max-content; }
          .product-hero__top__content__breadcrumb li:not(:last-child):after {
            content: " / ";
            padding-left: 1px;
            padding-right: 4px; }
          .product-hero__top__content__breadcrumb li a {
            position: relative;
            text-decoration: none;
            color: currentColor; }
            .product-hero__top__content__breadcrumb li a::after {
              content: "";
              position: absolute;
              bottom: -0.3rem;
              left: 0;
              width: 97%;
              height: 1px;
              background-color: #fff;
              transition: all 0.2s;
              opacity: 0; }
            .product-hero__top__content__breadcrumb li a:hover::after {
              color: #fff;
              opacity: 1; }
      .product-hero__top__content__video-cta {
        margin-bottom: 3rem;
        display: flex; }
        @media only screen and (max-width: 62.5em) {
          .product-hero__top__content__video-cta {
            justify-content: center; } }
        @media only screen and (max-width: 37.5em) {
          .product-hero__top__content__video-cta {
            margin-bottom: 0rem; } }
      .product-hero__top__content__title-group {
        width: 50%; }
        @media only screen and (max-width: 62.5em) {
          .product-hero__top__content__title-group {
            margin-bottom: 4rem;
            width: 100%; } }
        @media only screen and (max-width: 37.5em) {
          .product-hero__top__content__title-group {
            margin-bottom: 0rem; } }
        .product-hero__top__content__title-group__badge-area {
          margin-bottom: 1rem;
          display: flex;
          flex-direction: column; }
          .product-hero__top__content__title-group__badge-area span {
            color: #fff;
            text-transform: uppercase;
            font-size: 1.3rem;
            letter-spacing: 0.3rem;
            line-height: 1.5rem;
            font-weight: 600; }
        .product-hero__top__content__title-group__title {
          font-size: 6rem;
          font-weight: 300;
          letter-spacing: 0.3rem;
          display: flex;
          align-self: end;
          line-height: 6.5rem;
          position: relative;
          align-items: flex-end; }
          .product-hero__top__content__title-group__title .btn-cta-round {
            margin-bottom: 1.4rem;
            margin-left: 1.5rem; }
          @media only screen and (max-width: 62.5em) {
            .product-hero__top__content__title-group__title {
              flex-direction: column;
              align-items: center; }
              .product-hero__top__content__title-group__title .btn-cta-round {
                margin-bottom: 1rem;
                margin-top: 1rem;
                margin-left: 0rem; } }
          @media only screen and (max-width: 37.5em) {
            .product-hero__top__content__title-group__title {
              font-size: 3.5rem;
              line-height: 4rem;
              margin-bottom: 1rem; } }
          .product-hero__top__content__title-group__title.active {
            grid-column: 1 / span 1;
            grid-row: 2 / span 1;
            user-select: none;
            font-size: 1.3rem;
            font-weight: 600;
            letter-spacing: 0.2rem;
            color: rgba(48, 90, 124, 0.8);
            text-transform: uppercase;
            display: flex;
            line-height: 1.3rem;
            justify-content: flex-end;
            padding-right: 4rem;
            padding-left: 2rem;
            align-items: center;
            height: 100%;
            max-width: 100%;
            min-width: 28rem;
            position: relative; }
            @media only screen and (max-width: 50em) {
              .product-hero__top__content__title-group__title.active {
                display: none; } }
            .product-hero__top__content__title-group__title.active::before {
              content: "";
              width: 1px;
              height: 40%;
              background-color: #e6e6e6;
              position: absolute;
              right: 2rem; }
        .product-hero__top__content__title-group__subtitle {
          font-size: 1.4rem;
          font-weight: 300;
          letter-spacing: 0.1rem;
          display: block;
          padding-bottom: 2rem;
          padding-top: 0.8rem; }
          @media only screen and (max-width: 62.5em) {
            .product-hero__top__content__title-group__subtitle {
              font-weight: 400; } }
      .product-hero__top__content__nav {
        user-select: none;
        width: 60%; }
        @media only screen and (max-width: 62.5em) {
          .product-hero__top__content__nav {
            display: none; } }
        .product-hero__top__content__nav__list {
          align-self: center;
          width: 100%;
          display: flex;
          list-style: none;
          justify-content: start;
          padding: 1.5rem 0;
          margin-bottom: 1rem; }
          .product-hero__top__content__nav__list__item {
            margin-right: 3rem; }
            .product-hero__top__content__nav__list__item__link {
              display: block;
              position: relative;
              font-size: 1.2rem;
              font-weight: 600;
              letter-spacing: 0.3rem;
              text-transform: uppercase;
              text-decoration: none;
              color: #fff; }
              .product-hero__top__content__nav__list__item__link::after {
                content: "";
                position: absolute;
                height: 2px;
                width: 0%;
                bottom: -0.5rem;
                left: 0;
                background-color: #f8f8f8;
                transition: all 0.2s; }
              .product-hero__top__content__nav__list__item__link:hover::after {
                content: "";
                width: 100%; }
      .product-hero__top__content__cta {
        display: none;
        margin-bottom: 8rem; }
        .product-hero__top__content__cta button {
          transform: scale(1.2); }
          @media only screen and (max-width: 37.5em) {
            .product-hero__top__content__cta button {
              transform: scale(1); } }
        @media only screen and (max-width: 62.5em) {
          .product-hero__top__content__cta {
            display: block; } }
        @media only screen and (max-width: 37.5em) {
          .product-hero__top__content__cta {
            margin-bottom: 5rem; } }
      .product-hero__top__content__gallery-expand {
        position: absolute;
        bottom: 0;
        right: 6rem;
        background-color: #747474;
        color: #e6e6e6;
        font-size: 1.3rem;
        text-transform: uppercase;
        letter-spacing: 0.2rem;
        padding: 1rem 1.5rem;
        z-index: 30;
        cursor: pointer;
        display: none; }
        @media only screen and (max-width: 62.5em) {
          .product-hero__top__content__gallery-expand {
            display: block; } }
        @media only screen and (max-width: 37.5em) {
          .product-hero__top__content__gallery-expand {
            right: 3rem;
            font-size: 1.2rem;
            padding: 0.75rem 1.2rem; } }
  .product-hero__bottom {
    bottom: 0;
    left: 0;
    z-index: 5;
    height: 25rem;
    width: 100%;
    background-color: #f8f8f8;
    display: flex;
    justify-content: center;
    border-bottom: 1px solid #e6e6e6;
    border-top: 1px solid #e6e6e6; }
    @media only screen and (max-width: 62.5em) {
      .product-hero__bottom {
        padding: 0 6rem; } }
  @media only screen and (max-width: 62.5em) and (max-width: 37.5em) {
    .product-hero__bottom {
      padding: 0 3rem; } }
    @media only screen and (max-width: 50em) {
      .product-hero__bottom {
        height: 30rem; } }
    @media only screen and (max-width: 37.5em) {
      .product-hero__bottom {
        height: 38rem; } }
    .product-hero__bottom__content {
      width: 100%;
      display: flex;
      flex-direction: column;
      max-width: calc(112rem + 12rem);
      padding: 0 6rem; }
      @media only screen and (max-width: 62.5em) {
        .product-hero__bottom__content {
          padding: 0rem;
          align-items: center; } }
      .product-hero__bottom__content__info-group {
        display: flex;
        flex-direction: column;
        width: 50%; }
        @media only screen and (max-width: 62.5em) {
          .product-hero__bottom__content__info-group {
            width: 100%; } }
        .product-hero__bottom__content__info-group__info {
          display: flex;
          justify-content: space-between;
          position: relative;
          padding: 2rem 0;
          flex-wrap: wrap; }
          @media only screen and (max-width: 62.5em) {
            .product-hero__bottom__content__info-group__info {
              justify-content: center; } }
          @media only screen and (max-width: 37.5em) {
            .product-hero__bottom__content__info-group__info {
              justify-content: flex-start;
              margin-left: 1rem; } }
          .product-hero__bottom__content__info-group__info::after {
            content: "";
            position: absolute;
            height: 1px;
            width: 100%;
            bottom: 0rem;
            left: 0;
            background-color: #c2c6c9; }
          .product-hero__bottom__content__info-group__info__starting-price {
            display: flex;
            align-items: center;
            position: relative; }
            @media only screen and (max-width: 37.5em) {
              .product-hero__bottom__content__info-group__info__starting-price {
                flex-direction: column;
                align-items: flex-start; } }
            .product-hero__bottom__content__info-group__info__starting-price__title-area {
              font-weight: 700;
              text-transform: uppercase;
              color: #142838;
              letter-spacing: 0.1rem;
              padding-right: 1.3rem;
              border-right: 1px solid #c2c6c9;
              display: flex;
              flex-direction: column; }
              @media only screen and (max-width: 37.5em) {
                .product-hero__bottom__content__info-group__info__starting-price__title-area {
                  border-right: none;
                  padding-right: 0rem; } }
              .product-hero__bottom__content__info-group__info__starting-price__title-area__tabs {
                font-size: 1.1rem;
                display: flex; }
                .product-hero__bottom__content__info-group__info__starting-price__title-area__tabs__tab {
                  padding-right: 0.5rem; }
                  .product-hero__bottom__content__info-group__info__starting-price__title-area__tabs__tab.switch-link {
                    color: #9ea0a4;
                    cursor: pointer;
                    text-decoration: none;
                    transition: color 0.2s; }
                    .product-hero__bottom__content__info-group__info__starting-price__title-area__tabs__tab.switch-link:hover {
                      color: #c2c6c9; }
              .product-hero__bottom__content__info-group__info__starting-price__title-area__text {
                font-size: 1.6rem; }
            .product-hero__bottom__content__info-group__info__starting-price__amount {
              color: #40739c;
              padding-left: 1.3rem;
              font-size: 3.2rem;
              font-weight: 500;
              letter-spacing: 0.1rem; }
              @media only screen and (max-width: 37.5em) {
                .product-hero__bottom__content__info-group__info__starting-price__amount {
                  padding-left: 0rem; } }
            .product-hero__bottom__content__info-group__info__starting-price__description {
              position: absolute;
              bottom: -1.3rem;
              left: 0;
              font-size: 1.1rem;
              letter-spacing: .1rem;
              text-align: start;
              white-space: nowrap; }
          .product-hero__bottom__content__info-group__info__cta {
            margin-left: 1rem; }
            @media only screen and (max-width: 37.5em) {
              .product-hero__bottom__content__info-group__info__cta {
                position: absolute;
                top: 1.5rem;
                right: -0.5rem; } }
        .product-hero__bottom__content__info-group__attributes {
          display: flex;
          margin: 2rem 0;
          margin-bottom: 4rem;
          font-size: 1.4rem;
          letter-spacing: 0.1rem; }
          @media only screen and (max-width: 62.5em) {
            .product-hero__bottom__content__info-group__attributes {
              flex-wrap: wrap;
              justify-content: center;
              height: 100%; } }
          @media only screen and (max-width: 50em) {
            .product-hero__bottom__content__info-group__attributes {
              margin-top: 3rem; } }
          .product-hero__bottom__content__info-group__attributes__item {
            position: relative;
            margin-right: 4rem;
            display: flex;
            text-align: center;
            align-items: center;
            flex-direction: column; }
            @media only screen and (max-width: 50em) {
              .product-hero__bottom__content__info-group__attributes__item.nomargin-attributes {
                margin-right: 0rem; } }
            @media only screen and (max-width: 50em) {
              .product-hero__bottom__content__info-group__attributes__item.experience-attributes {
                width: 100%;
                margin-top: 3rem;
                margin-right: 1rem;
                margin-left: 1rem; } }
            .product-hero__bottom__content__info-group__attributes__item__title {
              color: #919598;
              margin-bottom: 0.4rem; }
            .product-hero__bottom__content__info-group__attributes__item__data {
              color: #142838;
              display: flex;
              align-items: center;
              height: 100%;
              text-align: start; }
              .product-hero__bottom__content__info-group__attributes__item__data__icon {
                margin-right: 1rem;
                display: flex;
                align-items: center; }
                .product-hero__bottom__content__info-group__attributes__item__data__icon svg {
                  stroke: #142838;
                  stroke-width: 4;
                  height: 3rem;
                  width: 3rem;
                  color: #142838;
                  fill: #142838; }
              .product-hero__bottom__content__info-group__attributes__item__data__text {
                font-size: 1.6rem;
                line-height: 2.5rem;
                font-weight: 700;
                text-transform: uppercase;
                width: max-content; }
                .product-hero__bottom__content__info-group__attributes__item__data__text .sub-attribute {
                  font-size: 1.1rem;
                  line-height: 1.6rem;
                  font-weight: 600; }
              .product-hero__bottom__content__info-group__attributes__item__data ul {
                list-style: none;
                display: flex;
                font-size: 1.2rem; }
      .product-hero__bottom__content__nav {
        grid-row: 3 / -1;
        justify-self: start;
        align-self: end;
        width: 100%; }
        .product-hero__bottom__content__nav__list {
          list-style: none;
          display: grid;
          grid-auto-flow: column; }
          .product-hero__bottom__content__nav__list .current {
            background-color: #fff;
            border: 1px solid #e6e6e6;
            border-bottom: 1px solid #fff;
            color: #305a7c;
            height: 100%; }
          .product-hero__bottom__content__nav__list__item {
            text-transform: uppercase;
            font-size: 1.8rem;
            font-weight: 700;
            position: relative;
            cursor: pointer;
            display: block;
            align-self: end;
            transition: all 0.2s;
            padding: 1rem;
            text-align: center;
            height: 95%;
            box-sizing: border-box;
            border: 1px solid transparent; }
            .product-hero__bottom__content__nav__list__item:hover {
              background-color: #fff;
              color: #40739c; }
              .product-hero__bottom__content__nav__list__item:hover:not(.current) {
                border: 1px solid #e6e6e6; }
      @media only screen and (max-width: 62.5em) {
        .product-hero__bottom__content {
          width: 100%;
          text-align: center; }
          .product-hero__bottom__content__nav {
            justify-self: center; } }
  .product-hero__gallery {
    position: absolute;
    bottom: 0rem;
    right: 0;
    z-index: 12;
    width: calc(50% - 6rem); }
    @media only screen and (max-width: 62.5em) {
      .product-hero__gallery {
        display: none; } }
    .product-hero__gallery__slick {
      z-index: 20;
      height: min-content;
      width: 100%;
      margin-bottom: 5rem;
      visibility: hidden; }
      @media only screen and (max-width: 62.5em) {
        .product-hero__gallery__slick {
          display: none; } }
      .product-hero__gallery__slick.slick-initialized {
        visibility: visible; }
      .product-hero__gallery__slick .slick-slide {
        outline: none;
        margin: 1rem;
        margin-bottom: 3rem;
        transition: all 0.3s; }
      .product-hero__gallery__slick__item {
        position: relative;
        height: min-content;
        width: 100%;
        box-shadow: 0 2rem 2rem -1rem rgba(0, 0, 0, 0.25); }
        .product-hero__gallery__slick__item img {
          height: 100%;
          width: 100%;
          object-fit: contain; }
      .product-hero__gallery__slick__btn {
        opacity: 0.8; }
        .product-hero__gallery__slick__btn--left {
          position: absolute;
          bottom: -3rem;
          left: -1rem;
          z-index: 8; }
        .product-hero__gallery__slick__btn--right {
          position: absolute;
          bottom: -3rem;
          left: 5rem;
          z-index: 8; }

.video-play-button {
  display: flex;
  align-items: center;
  background-color: transparent;
  height: 7rem;
  width: max-content;
  border: none;
  font-family: "Metropolis", sans-serif;
  cursor: pointer; }
  .video-play-button:hover .video-play-button__icon-area__inner {
    transition: all 0.2s;
    transform: scale(0.95);
    background-color: white; }
  .video-play-button__icon-area {
    margin-right: 1rem;
    opacity: 0.7;
    background-color: rgba(255, 255, 255, 0.3);
    border-radius: 50%;
    height: 7rem;
    width: 7rem;
    display: flex;
    align-items: center;
    justify-content: center; }
    @media only screen and (max-width: 50em) {
      .video-play-button__icon-area {
        margin-right: 0;
        margin-bottom: 1.5rem; } }
    .video-play-button__icon-area__inner {
      border-radius: 50%;
      background-color: rgba(255, 255, 255, 0.9);
      display: flex;
      align-items: center;
      justify-content: center;
      height: 5rem;
      width: 5rem;
      box-shadow: 0 0 0 0 white;
      animation: pulse 8s infinite; }
      .video-play-button__icon-area__inner svg {
        height: 1rem;
        width: 1rem;
        z-index: 5;
        color: #142838; }
  .video-play-button__text {
    color: #fff;
    font-size: 1.2rem;
    text-transform: uppercase;
    white-space: nowrap;
    font-weight: 600; }
    @media only screen and (max-width: 62.5em) {
      .video-play-button__text {
        display: none; } }

@keyframes pulse {
  20% {
    box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.7); }
  40% {
    box-shadow: 0 0 0 10px rgba(0, 0, 0, 0); }
  100% {
    box-shadow: 0 0 0 0 rgba(0, 0, 0, 0); } }

.product-related {
  width: 100%;
  display: flex;
  position: relative;
  padding: 4rem 0;
  justify-content: center;
  align-items: center;
  flex-direction: column; }
  .product-related__slider {
    width: 100%;
    max-width: 140rem;
    z-index: 10;
    padding: 0 9rem; }
    @media only screen and (max-width: 37.5em) {
      .product-related__slider {
        padding: 0rem; } }
    .product-related__slider .slick-dots {
      max-width: 35rem;
      left: 50%;
      transform: translateX(-50%); }
    .product-related__slider .slick-slide {
      margin: 1.5rem;
      margin-bottom: 4rem;
      box-shadow: 0 2rem 2rem -1rem rgba(0, 0, 0, 0.25);
      min-width: 0; }
      @media only screen and (max-width: 37.5em) {
        .product-related__slider .slick-slide {
          margin-bottom: 3rem; } }
    .product-related__slider__btn--left {
      transform: translateY(-50%);
      position: absolute;
      z-index: 10;
      top: 40%;
      left: 1.5rem; }
    .product-related__slider__btn--right {
      transform: translateY(-50%);
      position: absolute;
      z-index: 10;
      top: 40%;
      right: 1.5rem; }

.product-overview {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  max-width: calc(112rem + 12rem);
  padding: 0 6rem; }
  @media only screen and (max-width: 37.5em) {
    .product-overview {
      padding: 0 3rem; } }
  .product-overview__content {
    width: 100%;
    overflow: hidden;
    max-height: 50rem;
    display: flex; }
    .product-overview__content.expand {
      max-height: 5000px !important;
      transition: max-height 0.35s ease-in-out; }
    @media only screen and (max-width: 50em) {
      .product-overview__content {
        flex-direction: column; } }
    .product-overview__content__side-detail {
      width: 40%;
      display: flex;
      flex-direction: column; }
      @media only screen and (max-width: 50em) {
        .product-overview__content__side-detail {
          width: 100%; } }
      .product-overview__content__side-detail__image-area {
        position: relative;
        z-index: 0;
        width: 100%;
        margin-bottom: 3rem;
        display: flex;
        justify-content: center; }
        .product-overview__content__side-detail__image-area img {
          height: auto;
          width: 100%;
          max-width: 60rem;
          object-fit: contain;
          position: relative;
          z-index: 0; }
    .product-overview__content__text {
      width: 60%;
      margin-left: 4rem; }
      @media only screen and (max-width: 50em) {
        .product-overview__content__text {
          width: 100%;
          margin-left: 0rem;
          margin-bottom: 3rem;
          order: -1; } }
  .product-overview__fade {
    grid-column: 1 / -1;
    width: 100%;
    display: flex;
    justify-content: center;
    position: relative;
    padding-top: 3rem; }
    .product-overview__fade::after {
      content: "";
      height: 8rem;
      width: 100%;
      position: absolute;
      top: calc(-100% + 1.5rem);
      left: 0;
      background: linear-gradient(to bottom, rgba(255, 255, 255, 0), #fff); }
    .product-overview__fade.expand::after {
      display: none; }

.product-itineraries {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  max-width: calc(112rem + 12rem);
  padding: 0 6rem; }
  @media only screen and (max-width: 37.5em) {
    .product-itineraries {
      padding: 0 3rem; } }
  .product-itineraries__nav {
    width: 100%;
    z-index: 3; }
    .product-itineraries__nav__counter {
      text-transform: uppercase;
      text-align: center;
      font-size: 1.3rem;
      color: #305a7c;
      font-weight: 700;
      width: 100%;
      letter-spacing: 0.1rem; }
    .product-itineraries__nav__slider {
      margin-top: 3rem;
      list-style: none;
      color: #9ea0a4;
      padding-right: 12rem;
      transform: translateY(1px); }
      .product-itineraries__nav__slider .slick-current {
        color: #305a7c !important; }
        .product-itineraries__nav__slider .slick-current .product-itineraries__nav__slider__item {
          border-bottom: 1px solid white;
          z-index: 20;
          transform: translateY(0rem); }
          .product-itineraries__nav__slider .slick-current .product-itineraries__nav__slider__item span {
            background-color: #305a7c; }
        .product-itineraries__nav__slider .slick-current .product-itineraries__nav__slider__item__counter {
          display: inline; }
      .product-itineraries__nav__slider .slick-slide {
        outline: none; }
        @media only screen and (min-width: 37.5em) {
          .product-itineraries__nav__slider .slick-slide:nth-of-type(3) .product-itineraries__nav__slider__item {
            box-sizing: border-box;
            -moz-box-sizing: border-box;
            -webkit-box-sizing: border-box;
            border-right: 3px solid #e6e6e6; } }
      .product-itineraries__nav__slider .slick-track {
        transform: translate3d(0, 0, 0); }
      .product-itineraries__nav__slider__item {
        padding: 1rem 2rem;
        font-size: 1.5rem;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 0.2rem;
        border: 1px solid #e6e6e6;
        transform: translateY(0.5rem);
        transition: all 0.3s;
        text-align: center;
        cursor: pointer;
        white-space: nowrap; }
        .product-itineraries__nav__slider__item:hover {
          color: #305a7c !important; }
          .product-itineraries__nav__slider__item:hover span {
            background-color: #305a7c; }
        .product-itineraries__nav__slider__item span {
          font-size: 1.2rem;
          border-radius: 4rem;
          padding: 0.4rem 0.7rem;
          background-color: #9ea0a4;
          color: #fff;
          transition: all 0.3s; }
      .product-itineraries__nav__slider__btn {
        height: 100%;
        width: 6rem;
        display: flex;
        justify-content: center;
        align-items: center;
        background-color: transparent;
        border: 1px solid #e6e6e6;
        color: #919598;
        cursor: pointer;
        transition: all 0.2s;
        outline: none;
        z-index: 5; }
        .product-itineraries__nav__slider__btn:hover {
          color: #142838;
          border: 1px solid #142838;
          z-index: 20; }
        .product-itineraries__nav__slider__btn svg {
          height: 3rem;
          width: 3rem;
          fill: currentColor; }
        .product-itineraries__nav__slider__btn--left {
          position: absolute;
          bottom: 0;
          right: 6rem;
          z-index: 8;
          border-right: none; }
        .product-itineraries__nav__slider__btn--right {
          position: absolute;
          bottom: 0;
          right: 0rem;
          z-index: 8; }
  .product-itineraries__content {
    z-index: 2;
    border: 1px solid #e6e6e6; }

.side-info-panel__top {
  display: flex;
  justify-content: space-between;
  font-size: 1.5rem;
  letter-spacing: 0.1rem;
  text-transform: uppercase;
  color: #142838;
  font-weight: 700;
  height: 4rem;
  align-items: center; }
  .side-info-panel__top__month {
    width: max-content; }

.side-info-panel__departure-grid {
  display: flex;
  width: 100%;
  flex-direction: column;
  font-size: 1.5rem; }
  .side-info-panel__departure-grid .lds-dual-ring {
    transform: translateX(0%); }
  .side-info-panel__departure-grid__grid {
    color: #142838;
    display: grid;
    width: 100%;
    grid-template-columns: repeat(4, minmax(max-content, 100%));
    row-gap: 1.5rem;
    column-gap: 1.5rem;
    margin-top: 1rem;
    font-weight: 600;
    align-items: center;
    position: relative; }
    .side-info-panel__departure-grid__grid::after {
      content: "";
      position: absolute;
      top: 2.5rem;
      left: 0;
      height: 1px;
      width: 100%;
      background-color: #e6e6e6; }
    .side-info-panel__departure-grid__grid__heading-title {
      color: #919598; }
    .side-info-panel__departure-grid__grid__season {
      display: flex;
      align-items: center; }
      @media only screen and (max-width: 37.5em) {
        .side-info-panel__departure-grid__grid__season {
          flex-direction: column; } }
      .side-info-panel__departure-grid__grid__season .promo-div {
        color: #00a84b;
        margin-left: 1rem;
        border-radius: 1.5rem;
        border: 2px solid currentColor;
        padding: 0.1rem 0.8rem;
        font-size: 1.2rem;
        position: relative;
        cursor: pointer; }
        .side-info-panel__departure-grid__grid__season .promo-div:hover .tooltiptext {
          visibility: visible; }
        .side-info-panel__departure-grid__grid__season .promo-div .tooltiptext {
          visibility: hidden;
          width: 15rem;
          background-color: #f8f8f8;
          border: 1px solid #c2c6c9;
          color: #142838;
          text-align: center;
          border-radius: 6px;
          padding: 0.5rem 1rem;
          font-size: 1rem;
          font-weight: 600;
          /* Position the tooltip */
          position: absolute;
          bottom: -3.5rem;
          z-index: 1; }
        @media only screen and (max-width: 37.5em) {
          .side-info-panel__departure-grid__grid__season .promo-div {
            margin-left: 0; } }
    .side-info-panel__departure-grid__grid__date {
      display: flex; }
      @media only screen and (max-width: 37.5em) {
        .side-info-panel__departure-grid__grid__date {
          flex-direction: column; } }
    .side-info-panel__departure-grid__grid__price-range {
      display: flex; }
      @media only screen and (max-width: 37.5em) {
        .side-info-panel__departure-grid__grid__price-range {
          flex-direction: column; } }
    .side-info-panel__departure-grid__grid__cta {
      display: flex;
      justify-content: flex-end;
      font-weight: 600; }
      .side-info-panel__departure-grid__grid__cta svg {
        height: 2rem;
        width: 2rem; }
  .side-info-panel__departure-grid__note {
    margin-top: 2rem;
    font-size: 1.2rem; }

.date-grid {
  list-style: none;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(6rem, 1fr));
  margin-top: 1.5rem; }
  .date-grid__item {
    font-size: 1.4rem;
    font-weight: 700;
    text-transform: uppercase;
    margin: 0.5rem 1rem 0.5rem 0;
    padding: 0.5rem 1rem;
    border-radius: 15px;
    border: 2px solid #c2c6c9;
    display: flex;
    align-content: center;
    justify-content: center;
    user-select: none; }
    .date-grid__item.promo-date {
      color: #00a84b !important;
      border-color: #00a84b !important; }
    .date-grid__item--available {
      color: #142838;
      border-color: #142838;
      cursor: pointer; }
    .date-grid__item--sold-out {
      color: #de5c52;
      border-color: #de5c52;
      cursor: not-allowed; }
    .date-grid__item--tba {
      color: #305a7c;
      border-color: #305a7c;
      background-color: #e6e6e6;
      cursor: pointer;
      position: relative; }
      .date-grid__item--tba:hover .tooltiptext {
        visibility: visible; }
      .date-grid__item--tba .tooltiptext {
        visibility: hidden;
        width: 8rem;
        background-color: #f8f8f8;
        border: 1px solid #c2c6c9;
        color: #142838;
        text-align: center;
        border-radius: 6px;
        padding: 0.5rem 1rem;
        font-size: 1rem;
        font-weight: 600;
        /* Position the tooltip */
        position: absolute;
        top: -2rem;
        right: -5rem;
        z-index: 1; }

.price-grid {
  display: flex;
  flex-direction: column; }
  .price-grid__season {
    display: flex;
    text-align: center;
    font-size: 1.3rem;
    color: #9ea0a4;
    margin-bottom: 0.8rem;
    font-size: 1.3rem;
    letter-spacing: 0.2rem;
    text-transform: uppercase; }
    .price-grid__season::before {
      content: "";
      flex: 1 1;
      border-bottom: 1px solid #e6e6e6;
      margin: auto;
      margin-right: 2rem; }
      @media only screen and (max-width: 50em) {
        .price-grid__season::before {
          margin-right: 1.5rem; } }
    .price-grid__season::after {
      content: "";
      flex: 1 1;
      border-bottom: 1px solid #e6e6e6;
      margin: auto;
      margin-left: 2rem; }
      @media only screen and (max-width: 50em) {
        .price-grid__season::after {
          margin-left: 1.5rem; } }
  .price-grid__grid {
    display: grid;
    grid-template-columns: 1fr max-content max-content;
    column-gap: 3rem;
    row-gap: 0.5rem;
    font-size: 1.5rem;
    color: #142838;
    font-weight: 600;
    position: relative; }
    .price-grid__grid::after {
      content: "";
      position: absolute;
      top: 2.5rem;
      left: 0;
      height: 1px;
      width: 100%;
      background-color: #e6e6e6; }
    .price-grid__grid__title {
      width: 100%;
      margin-bottom: 1rem; }
      .price-grid__grid__title__text {
        display: inline-block;
        color: #919598; }
      .price-grid__grid__title.right {
        text-align: right; }
    .price-grid__grid__double-price {
      text-align: right; }
    .price-grid__grid__single-price {
      text-align: right; }

.season-panel__range-text {
  padding-top: 1rem;
  margin-top: 1rem;
  border-top: 1px solid #e6e6e6;
  color: #142838;
  font-size: 1.3rem;
  letter-spacing: 0.1rem; }

.inclusions-area {
  margin-top: 2rem;
  position: relative; }
  .inclusions-area__itinerary-inclusions--hidden {
    display: none; }
  .inclusions-area__itinerary-inclusions__view {
    margin-top: 2rem; }
    .inclusions-area__itinerary-inclusions__view__button {
      font-size: 1.4rem;
      font-weight: 700; }

.product-itinerary-slide {
  padding: 2rem 3rem;
  display: flex !important;
  flex-direction: column; }
  .product-itinerary-slide__select-group {
    display: flex;
    align-items: center;
    font-size: 1.5rem;
    font-weight: 700;
    letter-spacing: 0.1rem;
    color: #142838;
    text-transform: uppercase;
    margin-bottom: 0.5rem;
    margin-top: 0.5rem; }
    .product-itinerary-slide__select-group label {
      margin-right: 1rem; }
  .product-itinerary-slide__top {
    height: min-content;
    display: flex;
    margin-bottom: 2rem; }
    @media only screen and (max-width: 50em) {
      .product-itinerary-slide__top {
        flex-direction: column;
        margin-bottom: 2rem; } }
    .product-itinerary-slide__top__map-area {
      width: 100%;
      max-width: 50rem;
      margin-bottom: 2rem; }
      @media only screen and (max-width: 62.5em) {
        .product-itinerary-slide__top__map-area {
          max-width: 40rem; } }
      @media only screen and (max-width: 50em) {
        .product-itinerary-slide__top__map-area {
          max-width: 100%; } }
      .product-itinerary-slide__top__map-area__title {
        margin-bottom: 2rem;
        display: flex;
        flex-direction: column;
        margin-top: 1rem; }
        .product-itinerary-slide__top__map-area__title__text {
          color: #142838;
          font-size: 2.2rem;
          line-height: 2.7rem;
          font-weight: 600;
          letter-spacing: 0; }
        .product-itinerary-slide__top__map-area__title__badge-area span {
          color: #40739c;
          text-transform: uppercase;
          font-size: 1.4rem;
          letter-spacing: 0.1rem;
          line-height: 1.2rem;
          font-weight: 700; }
      .product-itinerary-slide__top__map-area img {
        object-fit: contain;
        width: 100%;
        height: auto; }
      .product-itinerary-slide__top__map-area .itinerary-map-image {
        position: relative;
        z-index: 0; }
      .product-itinerary-slide__top__map-area .getting-there-button {
        transform: translateY(-4rem);
        z-index: 10;
        margin: 0;
        letter-spacing: 0;
        font-size: 1.2rem;
        pointer-events: all; }
        @media only screen and (max-width: 62.5em) {
          .product-itinerary-slide__top__map-area .getting-there-button {
            transform: translateY(-3rem); } }
        @media only screen and (max-width: 50em) {
          .product-itinerary-slide__top__map-area .getting-there-button {
            transform: translateY(-4rem); } }
        @media only screen and (max-width: 37.5em) {
          .product-itinerary-slide__top__map-area .getting-there-button {
            margin-top: 1rem;
            transform: translateY(0); } }
    .product-itinerary-slide__top__side-info {
      width: 60%;
      margin-left: 4rem; }
      @media only screen and (max-width: 50em) {
        .product-itinerary-slide__top__side-info {
          margin-left: 0rem;
          width: 100%;
          margin-bottom: 3rem; } }
      .product-itinerary-slide__top__side-info__tabs {
        display: flex;
        justify-content: space-between;
        align-items: center;
        border-bottom: 1px solid #e6e6e6;
        transform: translateY(-1.5rem); }
        @media only screen and (max-width: 50em) {
          .product-itinerary-slide__top__side-info__tabs {
            margin-top: 3rem; } }
        .product-itinerary-slide__top__side-info__tabs__item {
          text-align: center;
          flex-grow: 1;
          font-size: 1.3rem;
          letter-spacing: 0.1rem;
          text-transform: uppercase;
          font-weight: 700;
          color: #9ea0a4;
          padding: 1.5rem 1rem;
          position: relative;
          transition: color 0.2s;
          cursor: pointer;
          margin-bottom: 0; }
          @media only screen and (max-width: 37.5em) {
            .product-itinerary-slide__top__side-info__tabs__item {
              font-size: 1.2rem;
              letter-spacing: 0rem;
              padding: 1rem 0.5rem; } }
          .product-itinerary-slide__top__side-info__tabs__item:hover {
            color: #305a7c; }
          .product-itinerary-slide__top__side-info__tabs__item:not(:last-child)::after {
            content: "";
            position: absolute;
            right: 0;
            top: 50%;
            transform: translateY(-50%);
            background-color: #e6e6e6;
            height: 50%;
            width: 1px; }
          .product-itinerary-slide__top__side-info__tabs__item.current {
            color: #305a7c; }
      .product-itinerary-slide__top__side-info__content {
        display: none; }
        .product-itinerary-slide__top__side-info__content.current {
          display: block;
          animation: fadein 0.3s both;
          animation-timing-function: ease-out; }
        .product-itinerary-slide__top__side-info__content__widget {
          position: relative;
          padding-bottom: 2rem;
          margin-bottom: 0rem;
          position: relative; }
          .product-itinerary-slide__top__side-info__content__widget__top-section {
            display: flex;
            justify-content: space-between;
            flex-wrap: wrap;
            position: relative;
            align-items: center; }
            .product-itinerary-slide__top__side-info__content__widget__top-section__title {
              font-size: 1.5rem;
              text-transform: uppercase;
              letter-spacing: 0.1rem;
              margin-bottom: 0;
              display: flex;
              align-items: center; }
              .product-itinerary-slide__top__side-info__content__widget__top-section__title svg {
                cursor: pointer;
                height: 2rem;
                width: 2rem;
                fill: #142838;
                transition: all 0.2s;
                margin-left: 1.5rem;
                transform: translateY(-0.2rem); }
                .product-itinerary-slide__top__side-info__content__widget__top-section__title svg:hover {
                  fill: #40739c; }
          .product-itinerary-slide__top__side-info__content__widget__legend {
            margin-top: 1rem;
            display: flex;
            justify-content: space-between;
            font-size: 1.2rem; }
            @media only screen and (max-width: 37.5em) {
              .product-itinerary-slide__top__side-info__content__widget__legend {
                margin-top: 2rem; } }
            .product-itinerary-slide__top__side-info__content__widget__legend__fine-print {
              min-width: 18rem; }
            .product-itinerary-slide__top__side-info__content__widget__legend__colors {
              display: flex;
              align-items: center;
              flex-wrap: wrap; }
              .product-itinerary-slide__top__side-info__content__widget__legend__colors__item {
                padding-left: 1.3rem;
                margin-left: 2rem;
                position: relative;
                display: flex;
                align-content: center;
                width: max-content; }
                .product-itinerary-slide__top__side-info__content__widget__legend__colors__item::after {
                  content: "";
                  position: absolute;
                  top: 50%;
                  left: 0;
                  transform: translateY(-60%);
                  background-color: currentColor;
                  height: 0.8rem;
                  width: 0.8rem;
                  border-radius: 4rem; }
                .product-itinerary-slide__top__side-info__content__widget__legend__colors__item--available {
                  color: #142838; }
                .product-itinerary-slide__top__side-info__content__widget__legend__colors__item--sold-out {
                  color: #de5c52; }
                .product-itinerary-slide__top__side-info__content__widget__legend__colors__item--promo {
                  color: #00a84b; }
                .product-itinerary-slide__top__side-info__content__widget__legend__colors__item--button {
                  justify-self: end; }
                  .product-itinerary-slide__top__side-info__content__widget__legend__colors__item--button::after {
                    content: none; }
          .product-itinerary-slide__top__side-info__content__widget__deals-button {
            margin-top: 1rem; }
            @media only screen and (max-width: 37.5em) {
              .product-itinerary-slide__top__side-info__content__widget__deals-button {
                display: flex;
                justify-content: center; } }
          .product-itinerary-slide__top__side-info__content__widget__small-title {
            font-size: 1.5rem;
            text-transform: uppercase;
            letter-spacing: 0.1rem;
            color: #142838;
            font-weight: bold; }
          .product-itinerary-slide__top__side-info__content__widget__list {
            list-style: none;
            display: flex;
            font-size: 1.6rem;
            flex-wrap: wrap; }
            .product-itinerary-slide__top__side-info__content__widget__list li {
              position: relative;
              white-space: nowrap; }
              .product-itinerary-slide__top__side-info__content__widget__list li:not(:last-child)::after {
                content: ",";
                margin-right: 0.6rem; }
        .product-itinerary-slide__top__side-info__content__fine-print {
          font-size: 1.2rem;
          color: #9ea0a4;
          margin-bottom: 1rem; }
          .product-itinerary-slide__top__side-info__content__fine-print a {
            text-decoration: none;
            color: #305a7c;
            font-weight: 500;
            transition: all 0.3s; }
            .product-itinerary-slide__top__side-info__content__fine-print a:hover {
              color: #40739c; }
        .product-itinerary-slide__top__side-info__content__inclusions-title {
          margin-top: 0.8rem;
          margin-bottom: 2rem;
          font-size: 1.5rem;
          font-weight: 700;
          letter-spacing: 0.1rem;
          text-transform: uppercase;
          color: #142838; }
        .product-itinerary-slide__top__side-info__content__inclusions-list {
          list-style: none; }
          .product-itinerary-slide__top__side-info__content__inclusions-list li {
            display: grid;
            grid-template-columns: 2rem 1fr; }
            .product-itinerary-slide__top__side-info__content__inclusions-list li svg {
              transform: translateY(1px);
              height: 1.5rem;
              width: 1.5rem;
              fill: #142838; }
            .product-itinerary-slide__top__side-info__content__inclusions-list li span {
              font-size: 1.4rem; }
  .product-itinerary-slide__bottom {
    margin-top: 4rem;
    position: relative; }
    .product-itinerary-slide__bottom::after {
      content: "";
      position: absolute;
      top: -1rem;
      left: 0;
      width: 100%;
      height: 1px;
      background-color: #e6e6e6; }
    .product-itinerary-slide__bottom__counter {
      position: absolute;
      top: -4rem;
      left: 0;
      font-size: 2rem;
      color: #142838;
      font-weight: 600;
      display: none;
      top: -4rem;
      left: 5rem;
      text-align: start;
      height: min-content;
      position: absolute;
      font-size: 1.6rem;
      color: #142838;
      font-weight: 600; }
      @media only screen and (max-width: 37.5em) {
        .product-itinerary-slide__bottom__counter {
          display: block; } }
      .product-itinerary-slide__bottom__counter::before {
        content: "DAY: ";
        position: absolute;
        left: -5rem;
        top: 0; }
    .product-itinerary-slide__bottom__days {
      position: relative; }
      .product-itinerary-slide__bottom__days .slick-dots li {
        user-select: none; }
      .product-itinerary-slide__bottom__days__item {
        display: flex !important; }
        @media only screen and (max-width: 50em) {
          .product-itinerary-slide__bottom__days__item {
            flex-direction: column; } }
        .product-itinerary-slide__bottom__days__item__content {
          width: 60%; }
          @media only screen and (max-width: 50em) {
            .product-itinerary-slide__bottom__days__item__content {
              width: 100%; } }
          .product-itinerary-slide__bottom__days__item__content__title {
            font-size: 2.2rem;
            font-weight: 600;
            color: #142838;
            margin: 1rem 0;
            letter-spacing: 0; }
          .product-itinerary-slide__bottom__days__item__content__text {
            font-size: 1.4rem;
            padding-right: 4rem; }
            @media only screen and (max-width: 50em) {
              .product-itinerary-slide__bottom__days__item__content__text {
                padding-right: 0rem; } }
            .product-itinerary-slide__bottom__days__item__content__text ul,
            .product-itinerary-slide__bottom__days__item__content__text ol {
              margin-left: 3rem;
              list-style: disc;
              margin-bottom: 2rem; }
        .product-itinerary-slide__bottom__days__item__side {
          width: 40%;
          padding-top: 2rem;
          display: flex;
          flex-direction: column; }
          @media only screen and (max-width: 50em) {
            .product-itinerary-slide__bottom__days__item__side {
              width: 100%; } }
          .product-itinerary-slide__bottom__days__item__side__image-area {
            width: 100%; }
            .product-itinerary-slide__bottom__days__item__side__image-area img {
              object-fit: contain;
              width: 100%;
              height: auto; }
          .product-itinerary-slide__bottom__days__item__side__detail {
            margin-top: 3rem;
            display: flex;
            justify-content: space-between; }
            .product-itinerary-slide__bottom__days__item__side__detail__item__title {
              font-size: 1.3rem;
              letter-spacing: 0.2rem;
              text-transform: uppercase; }
            .product-itinerary-slide__bottom__days__item__side__detail__item__data {
              width: max-content;
              font-size: 1.6rem;
              color: #142838; }
      .product-itinerary-slide__bottom__days__btn {
        height: 4rem;
        width: 4rem;
        display: flex;
        justify-content: center;
        align-items: center;
        background-color: transparent;
        border: 1px solid #e6e6e6;
        border-bottom: none;
        color: #919598;
        cursor: pointer;
        transition: all 0.2s;
        outline: none;
        z-index: 5; }
        .product-itinerary-slide__bottom__days__btn:hover {
          color: #142838;
          border: 1px solid #142838;
          z-index: 20; }
        .product-itinerary-slide__bottom__days__btn svg {
          height: 3rem;
          width: 3rem;
          fill: currentColor; }
        .product-itinerary-slide__bottom__days__btn--left {
          position: absolute;
          top: -5rem;
          right: 4rem;
          z-index: 8;
          border-right: none; }
        .product-itinerary-slide__bottom__days__btn--right {
          position: absolute;
          top: -5rem;
          right: 0rem;
          z-index: 8; }
      .product-itinerary-slide__bottom__days .slick-slider {
        position: relative; }
      .product-itinerary-slide__bottom__days .slick-dotted.slick-slider {
        margin-bottom: 0px !important; }
      .product-itinerary-slide__bottom__days .slick-dots {
        top: -4rem;
        left: 5rem;
        text-align: start;
        height: min-content;
        position: absolute;
        font-size: 1.6rem;
        color: #142838;
        font-weight: 600; }
        .product-itinerary-slide__bottom__days .slick-dots::before {
          content: "DAY: ";
          position: absolute;
          left: -5rem;
          top: 0; }
        .product-itinerary-slide__bottom__days .slick-dots .slick-active {
          color: #142838; }
          .product-itinerary-slide__bottom__days .slick-dots .slick-active a.dot {
            color: #142838; }
      .product-itinerary-slide__bottom__days a.dot {
        padding: 10px 10px;
        color: #919598; }
      .product-itinerary-slide__bottom__days a.dot:hover {
        background-color: #f8f8f8; }

.charter-pricing__overall {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  margin-top: 1rem;
  width: 100%;
  column-gap: 3rem; }
  @media only screen and (max-width: 50em) {
    .charter-pricing__overall {
      display: flex;
      justify-content: space-around;
      flex-wrap: wrap; } }
  @media only screen and (max-width: 37.5em) {
    .charter-pricing__overall {
      display: flex;
      justify-content: flex-start;
      flex-wrap: wrap; } }
  .charter-pricing__overall__info-group {
    margin-bottom: 2rem;
    font-weight: 700;
    font-size: 1.5rem;
    letter-spacing: 0.1rem;
    color: #142838;
    text-transform: uppercase;
    white-space: nowrap; }
    @media only screen and (max-width: 50em) {
      .charter-pricing__overall__info-group {
        width: max-content; } }
    .charter-pricing__overall__info-group__title {
      display: flex;
      align-items: center; }
      .charter-pricing__overall__info-group__title svg {
        cursor: pointer;
        height: 2rem;
        width: 2rem;
        fill: #142838;
        transition: all 0.2s;
        margin-left: 1.5rem;
        transform: translateY(-0.2rem); }
        .charter-pricing__overall__info-group__title svg:hover {
          fill: #40739c; }
    .charter-pricing__overall__info-group__data {
      font-size: 2.4rem;
      color: #40739c; }
      .charter-pricing__overall__info-group__data div {
        transform: translateY(-0.5rem);
        font-size: 1.4rem; }

.charter-pricing__estimates {
  display: flex;
  padding-top: 2rem;
  justify-content: space-between; }
  .charter-pricing__estimates__itinerary {
    margin-right: 2rem;
    text-align: center; }
    .charter-pricing__estimates__itinerary__title {
      font-size: 2rem;
      color: #142838;
      font-weight: 600; }
    .charter-pricing__estimates__itinerary__price {
      font-size: 2rem;
      color: #40739c; }

.charter-info-snippet {
  font-size: 1.6rem;
  border-top: 1px solid #e6e6e6;
  padding-top: 2.5rem; }
  .charter-info-snippet p {
    margin-bottom: 1.5rem; }
  .charter-info-snippet ul,
  .charter-info-snippet ol {
    padding-left: 3rem; }

.charter-info-box {
  text-align: center;
  font-size: 1.3rem;
  font-style: italic;
  border: 1px solid #e6e6e6;
  padding: 1.5rem; }

.product-cabins {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  max-width: calc(112rem + 12rem);
  padding: 0 6rem;
  margin-bottom: 6rem; }
  @media only screen and (max-width: 37.5em) {
    .product-cabins {
      padding: 0 3rem; } }
  @media only screen and (max-width: 50em) {
    .product-cabins {
      border-bottom: 1px solid #e6e6e6; } }
  .product-cabins__cabin {
    width: 100%;
    display: flex;
    position: relative;
    margin: 4rem 0;
    align-items: center; }
    @media only screen and (max-width: 37.5em) {
      .product-cabins__cabin {
        margin: 3rem 0; } }
    .product-cabins__cabin:nth-child(even) .product-cabins__cabin__image-area {
      order: 2;
      margin-left: 4rem;
      margin-right: 0rem; }
    @media only screen and (max-width: 50em) {
      .product-cabins__cabin {
        flex-direction: column; }
        .product-cabins__cabin:nth-child(even) .product-cabins__cabin__image-area {
          order: -1;
          margin-left: 0rem;
          margin-right: 0rem; } }
    .product-cabins__cabin__image-area {
      width: 50%;
      margin-right: 4rem;
      margin-left: 0rem; }
      .product-cabins__cabin__image-area .flickity-button {
        background: transparent; }
      .product-cabins__cabin__image-area .flickity-button-icon {
        fill: white; }
      .product-cabins__cabin__image-area .flickity-prev-next-button {
        width: 2.5rem;
        height: 2.5rem; }
      @media only screen and (max-width: 50em) {
        .product-cabins__cabin__image-area {
          width: 100%;
          margin-left: 0rem;
          margin-right: 0rem;
          margin-bottom: 3rem; } }
      .product-cabins__cabin__image-area img {
        object-fit: contain;
        width: 100%;
        height: auto; }
    .product-cabins__cabin__content {
      width: 50%;
      height: min-content; }
      @media only screen and (max-width: 50em) {
        .product-cabins__cabin__content {
          width: 100%; } }
      .product-cabins__cabin__content__title {
        position: relative;
        z-index: 1;
        font-size: 1.4rem; }
        @media only screen and (max-width: 50em) {
          .product-cabins__cabin__content__title.center-title {
            text-align: center; } }
        .product-cabins__cabin__content__title__cabin-count {
          font-size: 1.1rem;
          color: #142838;
          letter-spacing: .2rem;
          text-transform: uppercase;
          font-weight: 600; }
        .product-cabins__cabin__content__title h4 {
          position: relative;
          margin-bottom: 1.5rem;
          letter-spacing: 0.2rem;
          font-weight: 600;
          font-size: 2.5rem;
          text-transform: capitalize;
          color: #142838;
          display: inline-block; }
          @media only screen and (max-width: 37.5em) {
            .product-cabins__cabin__content__title h4 {
              font-size: 2rem; } }
          .product-cabins__cabin__content__title h4::after {
            content: "";
            height: 2px;
            width: 50%;
            display: block;
            background-color: #c2c6c9;
            margin: 1.2rem 0;
            margin-top: 0.7rem;
            z-index: 9; }
        .product-cabins__cabin__content__title span {
          position: absolute;
          right: 0rem;
          top: 0rem;
          font-family: "Playfair Display", serif;
          color: rgba(20, 40, 56, 0.1);
          font-size: 3.5rem;
          z-index: -1; }
      .product-cabins__cabin__content__snippet {
        font-size: 1.6rem; }
      .product-cabins__cabin__content__attributes {
        display: flex;
        margin: 2rem 0;
        margin-bottom: 3rem;
        font-size: 1.4rem;
        letter-spacing: 0.1rem; }
        @media only screen and (max-width: 50em) {
          .product-cabins__cabin__content__attributes {
            margin-bottom: 1rem; } }
        .product-cabins__cabin__content__attributes a:link {
          line-height: 1.3rem !important; }
        .product-cabins__cabin__content__attributes__item {
          position: relative;
          display: flex;
          text-align: center;
          align-items: center;
          flex-direction: column; }
          .product-cabins__cabin__content__attributes__item:not(:last-child) {
            margin-right: 4rem;
            padding-right: 4rem;
            border-right: 1px solid #e6e6e6; }
          .product-cabins__cabin__content__attributes__item__title {
            color: #919598;
            margin-bottom: 0.4rem; }
          .product-cabins__cabin__content__attributes__item__data {
            color: #142838;
            display: flex;
            align-items: center;
            height: 100%;
            text-align: start; }
            .product-cabins__cabin__content__attributes__item__data__icon {
              margin-right: 1.5rem;
              display: flex;
              align-items: center; }
              .product-cabins__cabin__content__attributes__item__data__icon svg {
                stroke: #142838;
                stroke-width: 4;
                height: 3rem;
                width: 3rem;
                color: #142838;
                fill: #142838; }
            .product-cabins__cabin__content__attributes__item__data__text {
              font-size: 1.6rem;
              line-height: 2.5rem;
              font-weight: 700;
              text-transform: uppercase;
              width: max-content; }
              .product-cabins__cabin__content__attributes__item__data__text .sub-attribute {
                font-size: 1.1rem;
                line-height: 1.6rem;
                font-weight: 600; }
      .product-cabins__cabin__content__feature-grid {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        position: relative;
        margin-bottom: 2rem; }
        @media only screen and (max-width: 37.5em) {
          .product-cabins__cabin__content__feature-grid {
            display: flex;
            flex-wrap: wrap;
            justify-content: space-between;
            margin-left: 0rem;
            margin-right: 2rem; } }
      .product-cabins__cabin__content__feature-item {
        display: flex;
        flex-direction: column; }
        .product-cabins__cabin__content__feature-item span {
          display: block;
          font-size: 1.6rem;
          color: #142838; }
        .product-cabins__cabin__content__feature-item__title {
          font-size: 1.4rem;
          font-weight: 600;
          text-transform: uppercase;
          letter-spacing: 0.2rem;
          color: #919598; }
      .product-cabins__cabin__content__description {
        margin-bottom: 1rem; }
      .product-cabins__cabin__content__listing {
        margin: 2.5rem 0;
        font-size: 1.4rem;
        color: #142838; }
        .product-cabins__cabin__content__listing span {
          margin-right: 0.5rem;
          font-weight: 600; }
      .product-cabins__cabin__content__cta {
        margin-top: 0rem;
        display: flex; }
        .product-cabins__cabin__content__cta button {
          margin: 0rem; }
        @media only screen and (max-width: 50em) {
          .product-cabins__cabin__content__cta {
            margin-top: 2rem;
            justify-content: center; } }
  .product-cabins__note {
    grid-column: center-start / center-end; }
  @media only screen and (max-width: 50em) {
    .product-cabins__page-divider {
      font-size: 2.5rem; } }

.product-technical {
  width: 100%;
  display: flex;
  position: relative;
  padding: 4rem 0;
  padding-top: 8rem;
  justify-content: center;
  background-color: #1d2225;
  align-items: center;
  flex-direction: column; }
  .product-technical::before {
    content: "";
    position: absolute;
    height: 100%;
    width: 100%;
    background-image: linear-gradient(to top, rgba(255, 255, 255, 0.8), rgba(255, 255, 255, 0.8)), url(../png/topo-1.png);
    filter: invert(100%);
    opacity: 0.35;
    top: 0;
    left: 0;
    z-index: 2; }
  .product-technical__content {
    width: 100%;
    max-width: calc(112rem + 12rem);
    display: flex;
    margin: 6rem 0;
    z-index: 10;
    align-items: flex-start;
    padding: 0 6rem; }
    @media only screen and (max-width: 50em) {
      .product-technical__content {
        flex-direction: column;
        align-items: center;
        padding: 0 3rem; } }
    @media only screen and (max-width: 37.5em) {
      .product-technical__content {
        margin: 3rem 0; } }
    .product-technical__content__image-area {
      position: relative;
      flex-grow: 1;
      max-width: 50rem;
      display: flex;
      flex-direction: column;
      justify-content: center;
      margin-right: 10rem; }
      .product-technical__content__image-area.half-width {
        width: 100%; }
      @media only screen and (max-width: 62.5em) {
        .product-technical__content__image-area {
          margin-right: 4rem; } }
      @media only screen and (max-width: 50em) {
        .product-technical__content__image-area {
          width: 100%;
          margin-bottom: 4rem;
          max-width: 100%;
          margin-right: 0rem; } }
      .product-technical__content__image-area__title {
        font-size: 1.4rem;
        text-transform: uppercase;
        letter-spacing: 0.2rem;
        color: #e6e6e6;
        margin-bottom: 1.5rem;
        font-weight: 400; }
        @media only screen and (max-width: 50em) {
          .product-technical__content__image-area__title {
            text-align: center; } }
      .product-technical__content__image-area a {
        width: 100%;
        display: flex;
        justify-content: start; }
      .product-technical__content__image-area img {
        object-fit: contain;
        width: 100%;
        height: 100%;
        max-height: 35rem; }
      .product-technical__content__image-area svg {
        position: absolute;
        bottom: 2rem;
        left: 2rem;
        fill: #142838;
        height: 2rem;
        width: 2rem;
        opacity: 0;
        transition: all 0.3s; }
      .product-technical__content__image-area:hover svg {
        opacity: 1; }
    .product-technical__content__columns {
      flex-grow: 1;
      display: flex;
      align-items: flex-start;
      width: 90%;
      position: relative; }
      @media only screen and (max-width: 37.5em) {
        .product-technical__content__columns {
          flex-direction: column; } }
      .product-technical__content__columns__info {
        flex-grow: 1;
        display: flex;
        flex-direction: column;
        justify-content: center; }
        .product-technical__content__columns__info:not(:last-child) {
          margin-right: 6rem; }
          @media only screen and (max-width: 50em) {
            .product-technical__content__columns__info:not(:last-child) {
              margin-right: 0rem; } }
        @media only screen and (max-width: 50em) {
          .product-technical__content__columns__info {
            width: 100%;
            margin-left: 0rem;
            margin-right: 0rem;
            margin-bottom: 3rem; } }
        .product-technical__content__columns__info__title {
          font-size: 1.4rem;
          text-transform: uppercase;
          letter-spacing: 0.2rem;
          color: #e6e6e6;
          margin-bottom: 1.2rem;
          font-weight: 400; }
          @media only screen and (max-width: 37.5em) {
            .product-technical__content__columns__info__title {
              text-align: center; } }
        .product-technical__content__columns__info__list {
          list-style: none; }
          .product-technical__content__columns__info__list__item {
            font-size: 1.6rem;
            display: flex;
            width: 100%;
            justify-content: flex-start;
            color: #e6e6e6; }
            @media only screen and (max-width: 50em) {
              .product-technical__content__columns__info__list__item {
                justify-content: center; } }
            .product-technical__content__columns__info__list__item svg {
              height: 2rem;
              width: 2rem;
              fill: #00a84b;
              margin-right: 2rem; }
              .product-technical__content__columns__info__list__item svg.no-feature {
                fill: #de5c52; }
            .product-technical__content__columns__info__list__item span {
              width: 100%; }
      .product-technical__content__columns__fineprint {
        position: absolute;
        bottom: -4rem;
        left: 0;
        color: rgba(255, 255, 255, 0.8);
        font-size: 1.3rem; }

.product-hotels {
  width: 100%;
  display: flex;
  position: relative;
  justify-content: center;
  align-items: center;
  flex-direction: column; }
  .product-hotels__slider {
    width: 100%;
    max-width: 140rem;
    z-index: 10;
    padding: 0 9rem; }
    @media only screen and (max-width: 37.5em) {
      .product-hotels__slider {
        padding: 0rem; } }
    .product-hotels__slider .slick-dots {
      max-width: 35rem;
      left: 50%;
      transform: translateX(-50%); }
    .product-hotels__slider .slick-slide {
      margin: 1.5rem;
      box-shadow: 0 1rem 1rem -1rem rgba(0, 0, 0, 0.25);
      min-width: 0; }
    .product-hotels__slider__btn--left {
      transform: translateY(-50%);
      position: absolute;
      z-index: 10;
      top: 50%;
      left: 1.5rem; }
    .product-hotels__slider__btn--right {
      transform: translateY(-50%);
      position: absolute;
      z-index: 10;
      top: 50%;
      right: 1.5rem; }

.product-prices-extra {
  display: flex;
  flex-direction: column;
  width: 100%; }
  .product-prices-extra__policies {
    width: 100%;
    font-size: 1.4rem;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    column-gap: 4rem;
    margin-bottom: 6rem; }
    .product-prices-extra__policies--single-layout {
      grid-template-columns: 1fr; }
    @media only screen and (max-width: 50em) {
      .product-prices-extra__policies {
        grid-template-columns: 1fr;
        margin: 0;
        margin-bottom: 2rem; } }
    @media only screen and (max-width: 37.5em) {
      .product-prices-extra__policies {
        margin: 0; } }
    .product-prices-extra__policies__list-group .list-svg li span {
      font-size: 1.6rem !important; }
    @media only screen and (max-width: 50em) {
      .product-prices-extra__policies__list-group {
        margin-bottom: 5rem; }
        .product-prices-extra__policies__list-group ul {
          margin-left: 0rem; } }
  .product-prices-extra__note ul, .product-prices-extra__note ol {
    font-size: 1.6rem;
    margin-left: 2rem; }

.product-reviews {
  width: 100%;
  display: flex;
  position: relative;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  min-height: 50rem; }
  @media only screen and (max-width: 37.5em) {
    .product-reviews {
      min-height: 30rem; } }
  .product-reviews__bg {
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: 50%;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    background-attachment: fixed;
    background-position: 50% 0; }
    .product-reviews__bg::after {
      position: absolute;
      content: "";
      top: 0;
      left: 0;
      height: 100%;
      width: 100%;
      background-image: linear-gradient(to top, rgba(30, 30, 30, 0.8), rgba(30, 30, 30, 0.8));
      z-index: 2; }
  .product-reviews__slider {
    width: 100%;
    max-width: 140rem;
    z-index: 10;
    margin: 6rem 0;
    margin-top: 2rem;
    padding: 0 9rem; }
    @media only screen and (max-width: 37.5em) {
      .product-reviews__slider {
        padding: 0 6rem; } }
    .product-reviews__slider .slick-slide {
      margin: 2rem 4rem; }
    .product-reviews__slider .slick-track {
      width: 100%; }
    .product-reviews__slider .slick-active {
      position: relative; }
    .product-reviews__slider__item {
      display: flex;
      flex-direction: column;
      color: #fff;
      align-items: center; }
      .product-reviews__slider__item__snippet {
        font-size: 1.4rem;
        position: relative;
        font-weight: 300;
        letter-spacing: .1rem;
        text-align: center;
        margin: 2rem 0; }
      .product-reviews__slider__item__detail {
        font-size: 1.2rem;
        text-transform: uppercase;
        letter-spacing: 0.2rem;
        position: relative;
        text-align: center;
        display: flex;
        flex-direction: column;
        align-items: center; }
    .product-reviews__slider__btn--left {
      transform: translateY(-50%);
      position: absolute;
      z-index: 10;
      top: 20%;
      left: 1.5rem; }
    .product-reviews__slider__btn--right {
      transform: translateY(-50%);
      position: absolute;
      z-index: 10;
      top: 20%;
      right: 1.5rem; }

.product-areas {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  align-items: center;
  margin: 2rem 0;
  margin-bottom: 4rem; }
  .product-areas__slider {
    width: 100%;
    max-width: 140rem;
    margin-top: .3rem; }
    .product-areas__slider .slick-slide {
      padding: 2rem .3rem;
      outline: none;
      height: 35rem; }
    .product-areas__slider__item img {
      min-height: 35rem;
      height: auto;
      width: 100%;
      object-fit: cover;
      background-position: center;
      z-index: 0; }
  .product-areas__slider-nav {
    color: #919598;
    font-size: 1.3rem;
    text-transform: uppercase;
    width: 100%;
    max-width: 90rem; }
    .product-areas__slider-nav .slick-slide {
      outline: none; }
    .product-areas__slider-nav .slick-current {
      color: #142838; }
    .product-areas__slider-nav__item {
      display: flex !important;
      justify-content: center;
      text-align: center;
      cursor: pointer;
      font-weight: 700;
      letter-spacing: 0.2rem;
      transition: all 0.5s;
      padding: 0 3rem; }
  .product-areas__btn--left {
    position: absolute;
    top: 40%;
    left: 0;
    z-index: 40; }
  .product-areas__btn--right {
    position: absolute;
    top: 40%;
    right: 0;
    z-index: 40; }

.product-dates {
  display: grid;
  grid-template-columns: [full-start] minmax(6rem, 1fr) [center-start] repeat(8, [col-start] minmax(min-content, 14rem) [col-end]) [center-end] minmax(6rem, 1fr) [full-end];
  position: relative; }
  @media only screen and (max-width: 37.5em) {
    .product-dates {
      grid-template-columns: [full-start] minmax(3rem, 1fr) [center-start] repeat(8, [col-start] minmax(min-content, 14rem) [col-end]) [center-end] minmax(3rem, 1fr) [full-end]; } }
  .product-dates__title {
    grid-column: center-start / center-end; }
  .product-dates__search-area {
    grid-column: center-start / center-end;
    display: grid;
    margin-bottom: 4rem; }
    @media only screen and (max-width: 50em) {
      .product-dates__search-area {
        margin-bottom: 0rem; } }
    .product-dates__search-area__controls {
      margin-top: 2rem;
      margin-bottom: 4rem;
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between; }
      .product-dates__search-area__controls__control {
        display: flex;
        align-items: center;
        padding: 1rem 2rem; }
        .product-dates__search-area__controls__control__label-text {
          font-size: 1.5rem;
          padding-top: 0.2rem;
          text-transform: uppercase;
          font-weight: 700;
          color: #142838;
          margin-right: 0.5rem; }
          @media only screen and (max-width: 75em) {
            .product-dates__search-area__controls__control__label-text {
              font-size: 1.8rem; } }
        .product-dates__search-area__controls__control .select2-selection--single {
          border: none !important; }
        .product-dates__search-area__controls__control select {
          visibility: hidden !important; }
    .product-dates__search-area__results__loading {
      display: flex;
      justify-content: center;
      margin-bottom: 20rem;
      margin-top: 4rem; }
    .product-dates__search-area__results__itinerary-group__itinerary {
      display: grid;
      grid-template-columns: minmax(min-content, 1fr) 2fr max-content;
      position: relative;
      padding: 4.5rem 3rem;
      margin-bottom: 5rem;
      box-sizing: border-box;
      border-radius: 0.4rem;
      box-shadow: inset 0px 0px 0px 2px #142838;
      align-items: center; }
      @media only screen and (max-width: 50em) {
        .product-dates__search-area__results__itinerary-group__itinerary {
          grid-template-columns: 1fr;
          justify-items: center;
          row-gap: 2rem; } }
      @media only screen and (max-width: 37.5em) {
        .product-dates__search-area__results__itinerary-group__itinerary {
          padding: 2rem; } }
      .product-dates__search-area__results__itinerary-group__itinerary__title-group {
        font-family: "Playfair Display", serif;
        display: flex; }
        .product-dates__search-area__results__itinerary-group__itinerary__title-group__icon {
          grid-column: 1 / span 1;
          justify-self: center;
          align-self: center;
          margin-right: 1.5rem; }
          .product-dates__search-area__results__itinerary-group__itinerary__title-group__icon svg {
            height: 5rem;
            width: 5rem;
            color: #142838 !important;
            fill: #142838;
            stroke-width: 2.5; }
        .product-dates__search-area__results__itinerary-group__itinerary__title-group__text {
          grid-column: 2 / span 1;
          display: flex;
          flex-direction: column;
          justify-content: center;
          align-self: center;
          align-content: center;
          flex-wrap: wrap; }
          .product-dates__search-area__results__itinerary-group__itinerary__title-group__text__title {
            font-size: 3.2rem;
            color: #142838;
            line-height: 3rem;
            font-weight: 600;
            letter-spacing: 0.1rem; }
          .product-dates__search-area__results__itinerary-group__itinerary__title-group__text__subtitle {
            font-size: 1.4rem;
            color: #9ea0a4;
            text-transform: uppercase;
            letter-spacing: 0.2rem;
            font-weight: 600; }
      .product-dates__search-area__results__itinerary-group__itinerary__description {
        font-size: 1.6rem;
        padding: 0 3rem; }
        @media only screen and (max-width: 50em) {
          .product-dates__search-area__results__itinerary-group__itinerary__description {
            padding: 0; } }
    .product-dates__search-area__results__itinerary-group__departures__departure {
      display: grid;
      position: relative;
      width: 100%;
      height: auto;
      box-sizing: border-box;
      border-radius: 0.4rem;
      box-shadow: inset 0px 0px 0px 1px #e6e6e6;
      margin-bottom: 3rem;
      transition: all 0.3s;
      padding: 3rem 3rem; }
      @media only screen and (max-width: 50em) {
        .product-dates__search-area__results__itinerary-group__departures__departure {
          margin-bottom: 5rem; } }
      @media only screen and (max-width: 25em) {
        .product-dates__search-area__results__itinerary-group__departures__departure {
          padding: 2rem 2rem; } }
      .product-dates__search-area__results__itinerary-group__departures__departure--active {
        box-shadow: inset 0px 0px 0px 2px #142838; }
        .product-dates__search-area__results__itinerary-group__departures__departure--active .product-dates__search-area__results__itinerary-group__departures__departure__bottom {
          opacity: 1; }
        .product-dates__search-area__results__itinerary-group__departures__departure--active .departure-expand {
          transition: all 0.3s;
          transform: rotate(180deg); }
          .product-dates__search-area__results__itinerary-group__departures__departure--active .departure-expand::after {
            border: 2px solid #142838; }
      .product-dates__search-area__results__itinerary-group__departures__departure__top {
        display: grid;
        grid-template-columns: repeat(3, max-content) 1fr 10rem;
        align-items: center;
        column-gap: 5rem;
        position: relative; }
        @media only screen and (max-width: 50em) {
          .product-dates__search-area__results__itinerary-group__departures__departure__top {
            grid-template-columns: 1fr;
            row-gap: 2rem; } }
        .product-dates__search-area__results__itinerary-group__departures__departure__top__date {
          font-size: 1.5rem;
          font-weight: 700;
          text-transform: uppercase;
          letter-spacing: 0.2rem;
          color: #142838;
          display: inline-block;
          background-color: #fff;
          position: absolute;
          top: -3.9rem;
          left: 3rem;
          padding: 0 1rem; }
          @media only screen and (max-width: 50em) {
            .product-dates__search-area__results__itinerary-group__departures__departure__top__date {
              font-size: 1.7rem;
              top: -4.2rem; } }
          @media only screen and (max-width: 25em) {
            .product-dates__search-area__results__itinerary-group__departures__departure__top__date {
              top: -3.2rem;
              padding: 0rem; } }
        .product-dates__search-area__results__itinerary-group__departures__departure__top__icon {
          align-items: center; }
          @media only screen and (max-width: 50em) {
            .product-dates__search-area__results__itinerary-group__departures__departure__top__icon {
              display: none; } }
          .product-dates__search-area__results__itinerary-group__departures__departure__top__icon svg {
            height: 5rem;
            width: 5rem;
            fill: #142838;
            color: #142838 !important;
            stroke-width: 1.5; }
        .product-dates__search-area__results__itinerary-group__departures__departure__top__col {
          font-size: 3rem;
          color: #142838;
          font-weight: 500;
          line-height: 3rem; }
          .product-dates__search-area__results__itinerary-group__departures__departure__top__col__heading {
            font-size: 1.4rem;
            color: #9ea0a4;
            text-transform: uppercase;
            letter-spacing: 0.2rem;
            font-weight: 600;
            display: block; }
          .product-dates__search-area__results__itinerary-group__departures__departure__top__col--promo {
            text-align: right;
            padding-right: 4rem; }
            @media only screen and (max-width: 50em) {
              .product-dates__search-area__results__itinerary-group__departures__departure__top__col--promo {
                text-align: left; } }
          .product-dates__search-area__results__itinerary-group__departures__departure__top__col--expand {
            text-align: right; }
            @media only screen and (max-width: 50em) {
              .product-dates__search-area__results__itinerary-group__departures__departure__top__col--expand {
                position: absolute;
                top: 5rem;
                right: 3rem;
                transform: scale(2); } }
            @media only screen and (max-width: 25em) {
              .product-dates__search-area__results__itinerary-group__departures__departure__top__col--expand {
                top: 2rem; } }
      .product-dates__search-area__results__itinerary-group__departures__departure__bottom {
        margin-top: 3rem;
        border-top: 1px solid #e6e6e6;
        display: none;
        transition: opacity 0.4s;
        opacity: 0; }
        .product-dates__search-area__results__itinerary-group__departures__departure__bottom__info {
          display: grid;
          grid-template-columns: 2fr 1fr;
          margin: 2rem 0;
          align-items: center;
          row-gap: 2rem; }
          @media only screen and (max-width: 50em) {
            .product-dates__search-area__results__itinerary-group__departures__departure__bottom__info {
              grid-template-columns: 1fr; } }
          .product-dates__search-area__results__itinerary-group__departures__departure__bottom__info__description__title {
            font-size: 4rem;
            line-height: 5rem;
            margin-bottom: 1.5rem;
            font-weight: 500;
            color: #142838; }
            @media only screen and (max-width: 50em) {
              .product-dates__search-area__results__itinerary-group__departures__departure__bottom__info__description__title {
                font-size: 3.5rem;
                line-height: 4rem; } }
          .product-dates__search-area__results__itinerary-group__departures__departure__bottom__info__description__text {
            font-size: 1.6rem; }
          .product-dates__search-area__results__itinerary-group__departures__departure__bottom__info__cta {
            justify-self: end; }
            @media only screen and (max-width: 50em) {
              .product-dates__search-area__results__itinerary-group__departures__departure__bottom__info__cta {
                justify-self: center; } }
        .product-dates__search-area__results__itinerary-group__departures__departure__bottom__cabins {
          display: grid;
          grid-template-columns: 10rem 1fr;
          margin-top: 3rem;
          border-top: 1px solid #e6e6e6;
          padding-top: 3rem; }
          @media only screen and (max-width: 50em) {
            .product-dates__search-area__results__itinerary-group__departures__departure__bottom__cabins {
              grid-template-columns: 1fr; } }
          .product-dates__search-area__results__itinerary-group__departures__departure__bottom__cabins__icon svg {
            height: 4rem;
            width: 4rem;
            fill: #142838;
            color: #142838 !important;
            stroke-width: 3; }
            @media only screen and (max-width: 50em) {
              .product-dates__search-area__results__itinerary-group__departures__departure__bottom__cabins__icon svg {
                display: none; } }
          .product-dates__search-area__results__itinerary-group__departures__departure__bottom__cabins__cabin-group {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(10rem, 1fr));
            column-gap: 3rem;
            row-gap: 2rem; }
            .product-dates__search-area__results__itinerary-group__departures__departure__bottom__cabins__cabin-group__cabin {
              font-size: 1.8rem;
              font-weight: 500; }
              .product-dates__search-area__results__itinerary-group__departures__departure__bottom__cabins__cabin-group__cabin__heading {
                color: #142838;
                font-size: 1.4rem;
                font-weight: 600; }

.deals-indicator {
  position: absolute;
  top: -10rem;
  font-size: 1.6rem;
  letter-spacing: .2rem;
  color: #142838;
  margin-bottom: 5rem;
  padding: 1rem 3rem;
  border-radius: 4rem;
  background: #f8f8f8;
  font-weight: 700;
  opacity: .9;
  display: none; }
  .deals-indicator.active {
    display: inline; }
  @media only screen and (max-width: 37.5em) {
    .deals-indicator {
      top: -6rem;
      font-size: 1.2rem;
      padding: .5rem 1.5rem; } }

.deals-slider {
  width: 100%; }
  .deals-slider__btn-left {
    transform: translateY(-50%);
    position: absolute;
    top: 50%;
    left: 0rem;
    z-index: 20; }
  .deals-slider__btn-right {
    transform: translateY(-50%);
    position: absolute;
    top: 50%;
    right: 0rem;
    z-index: 20; }
  .deals-slider .slick-slide {
    margin: 0 15rem; }
    @media only screen and (max-width: 50em) {
      .deals-slider .slick-slide {
        margin: 0 1rem; } }

.deal-item {
  border-bottom-left-radius: 0.4rem;
  border-bottom-right-radius: 0.4rem;
  background-color: #fff;
  display: flex !important;
  flex-direction: row;
  width: 100%; }
  @media only screen and (max-width: 37.5em) {
    .deal-item {
      flex-direction: column; } }
  .deal-item__image-area {
    min-height: 30rem;
    width: 40%;
    position: relative; }
    .deal-item__image-area .exclusiveDeal {
      position: absolute;
      top: 2rem;
      left: 2rem;
      z-index: 10;
      width: max-content;
      background: #fff;
      color: #142838;
      border-radius: 4rem;
      font-size: 1.2rem;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: .2rem;
      padding: .5rem 1.5rem;
      margin-right: 2rem; }
    @media only screen and (max-width: 37.5em) {
      .deal-item__image-area {
        width: 100%; } }
    .deal-item__image-area img {
      object-fit: cover;
      height: 100%;
      width: 100%; }
  .deal-item__bottom {
    width: 60%;
    display: flex;
    flex-direction: column;
    background-color: #fff;
    padding: 2rem 3rem; }
    @media only screen and (max-width: 37.5em) {
      .deal-item__bottom {
        width: 100%; } }
    .deal-item__bottom__badge-area {
      display: flex;
      margin-right: 2rem;
      justify-content: flex-end;
      flex-grow: 1;
      align-items: flex-end; }
      .deal-item__bottom__badge-area .selectedDates {
        width: max-content;
        color: #142838;
        font-size: 1.2rem;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: .2rem; }
    .deal-item__bottom__title {
      color: #142838; }
      .deal-item__bottom__title:link, .deal-item__bottom__title:visited {
        text-decoration: none;
        color: #142838; }
        .deal-item__bottom__title:link:hover, .deal-item__bottom__title:visited:hover {
          color: #40739c; }
      .deal-item__bottom__title h2 {
        font-size: 3rem;
        font-weight: 500;
        letter-spacing: 0.1rem;
        line-height: 4rem;
        margin: 0.5rem 0;
        transition: all 0.2s; }
    .deal-item__bottom__snippet {
      font-size: 1.6rem;
      padding: 1rem 0;
      padding-bottom: 2rem; }

.search-intro {
  grid-column: center-start / center-end;
  padding: 2rem 0;
  padding-bottom: 1.5rem; }
  .search-intro__breadcrumb {
    display: flex;
    list-style: none;
    font-size: 1.5rem;
    font-weight: 500;
    flex-wrap: wrap;
    margin-bottom: .5rem;
    text-transform: capitalize; }
    .search-intro__breadcrumb li {
      display: inline-block;
      color: #9ea0a4;
      width: max-content; }
      .search-intro__breadcrumb li:not(:last-child):after {
        content: "/";
        padding-left: 1px;
        padding-right: 4px; }
      .search-intro__breadcrumb li a {
        text-decoration: none;
        color: currentColor; }
        .search-intro__breadcrumb li a:hover {
          color: #40739c; }
  .search-intro__title {
    font-size: 2.5rem;
    line-height: 3.5rem;
    color: #142838;
    cursor: pointer;
    transition: .3s all;
    font-weight: 700;
    display: flex;
    width: 100%;
    margin-bottom: .5rem;
    align-items: center; }
    .search-intro__title:hover {
      color: #305a7c; }
    .search-intro__title span {
      margin-right: .5rem; }
    .search-intro__title svg {
      height: 3rem;
      width: 3rem;
      fill: #9ea0a4;
      transform: rotate(-90deg);
      transition: all .3s; }
    .search-intro__title--collapsed svg {
      transform: rotate(90deg); }
  .search-intro__text p {
    font-size: 1.4rem; }
    .search-intro__text p:not(:last-child) {
      margin-bottom: 1rem !important; }

.search-results {
  margin-left: 3rem;
  width: 75%;
  display: flex;
  flex-direction: column;
  align-items: center; }
  @media only screen and (max-width: 62.5em) {
    .search-results {
      width: 100%;
      margin-left: 0rem;
      padding-top: 2rem; } }
  .search-results__top-section {
    display: flex;
    justify-content: space-between;
    position: relative;
    align-items: center;
    width: 100%;
    padding-bottom: 1rem; }
    @media only screen and (max-width: 62.5em) {
      .search-results__top-section {
        padding-bottom: 1.5rem; } }
    .search-results__top-section__result-count {
      font-size: 1.6rem;
      line-height: 2rem;
      font-weight: 700;
      color: #142838;
      display: flex;
      flex-direction: column; }
      .search-results__top-section__result-count span {
        font-size: 1.1rem;
        color: #747474;
        font-weight: 400; }
    .search-results__top-section__page-count {
      font-size: 1.6rem;
      line-height: 2rem;
      font-weight: 700;
      color: #142838; }
    .search-results__top-section__controls {
      position: relative;
      display: flex; }
      .search-results__top-section__controls__view-options {
        margin-right: 1.5rem;
        padding-right: 1rem;
        border-right: 1px solid #c2c6c9;
        display: flex;
        align-items: center;
        justify-content: center; }
        @media only screen and (max-width: 50em) {
          .search-results__top-section__controls__view-options {
            display: none; } }
        .search-results__top-section__controls__view-options button {
          border: none;
          background-color: transparent;
          cursor: pointer;
          width: 2.8rem; }
          .search-results__top-section__controls__view-options button svg {
            height: 1.5rem;
            width: 1.5rem;
            color: #142838;
            fill: #142838;
            transition: all 0.2s; }
          .search-results__top-section__controls__view-options button:hover svg {
            fill: #40739c;
            color: #40739c; }
          .search-results__top-section__controls__view-options button.active svg {
            fill: #40739c !important;
            color: #40739c !important; }
  .search-results__grid {
    display: grid;
    row-gap: 3rem;
    padding-bottom: 6rem;
    width: 100%;
    position: relative;
    z-index: 0; }
    .search-results__grid.gridview {
      grid-template-columns: 1fr 1fr 1fr;
      column-gap: 2rem;
      row-gap: 2rem; }
      @media only screen and (max-width: 50em) {
        .search-results__grid.gridview {
          grid-template-columns: 1fr 1fr;
          column-gap: 3rem; } }
      @media only screen and (max-width: 37.5em) {
        .search-results__grid.gridview {
          grid-template-columns: 1fr;
          row-gap: 3rem; } }
    .search-results__grid.loading .lds-ring {
      position: absolute;
      top: 12rem;
      left: 50%;
      z-index: 20; }
    .search-results__grid.loading::after {
      content: "";
      position: absolute;
      height: 100%;
      width: 100%;
      background-color: rgba(255, 255, 255, 0.5);
      z-index: 10; }
    @media only screen and (max-width: 50em) {
      .search-results__grid {
        grid-template-columns: 1fr 1fr;
        column-gap: 3rem; } }
    @media only screen and (max-width: 37.5em) {
      .search-results__grid {
        grid-template-columns: 1fr;
        row-gap: 3rem; } }
    .search-results__grid__pagination {
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      margin: 3rem auto;
      grid-column: 1 / -1; }
      .search-results__grid__pagination__pages-group {
        display: flex;
        justify-content: center;
        align-items: center;
        margin-bottom: 1.5rem;
        width: 100%;
        flex-wrap: wrap; }
        .search-results__grid__pagination__pages-group__button {
          display: flex;
          align-items: center;
          justify-content: center;
          background-color: transparent;
          border: none;
          cursor: pointer;
          width: 4rem;
          height: 4rem;
          font-family: "Metropolis", sans-serif;
          font-weight: 700;
          font-size: 1.6rem;
          border: 1px solid transparent;
          color: #9ea0a4;
          transition: all 0.3s;
          position: relative; }
          .search-results__grid__pagination__pages-group__button:hover:not(.disabled) {
            background-color: #f8f8f8; }
          .search-results__grid__pagination__pages-group__button svg {
            color: currentColor;
            fill: currentColor;
            height: 2.5rem;
            width: 2.5rem; }
          .search-results__grid__pagination__pages-group__button.disabled {
            color: #9ea0a4;
            cursor: default;
            display: none; }
          .search-results__grid__pagination__pages-group__button.current {
            color: #142838; }
      .search-results__grid__pagination__show-all-group {
        display: flex;
        justify-content: center;
        align-items: center; }
        .search-results__grid__pagination__show-all-group button {
          display: flex;
          align-items: center;
          justify-content: center;
          background-color: transparent;
          border: none;
          cursor: pointer;
          width: auto;
          height: 4rem;
          font-family: "Metropolis", sans-serif;
          font-weight: 700;
          font-size: 1.3rem;
          color: #142838;
          position: relative; }
          .search-results__grid__pagination__show-all-group button:hover:not(.disabled) {
            color: #142838; }
    .search-results__grid__loading {
      margin: 10rem auto;
      display: flex;
      justify-items: center; }
      @media only screen and (max-width: 50em) {
        .search-results__grid__loading {
          margin: 2rem auto; } }
  .search-results__bottom-section {
    display: flex;
    justify-content: center;
    margin-bottom: 5rem; }

.sort-control {
  display: flex;
  align-items: center;
  margin: 0; }
  .sort-control__label-text {
    font-size: 1.6rem;
    color: #142838;
    line-height: 2rem;
    font-weight: 700; }
    @media only screen and (max-width: 37.5em) {
      .sort-control__label-text {
        display: none; } }
  .sort-control .select2-selection--single {
    border: none !important; }
  .sort-control .select2-selection__rendered {
    font-size: 1.6rem !important;
    color: #747474 !important; }
    .sort-control .select2-selection__rendered:hover {
      color: #9ea0a4 !important; }
  .sort-control select {
    visibility: hidden !important; }

.search-sidebar {
  width: 25%;
  height: min-content;
  border: 1px solid #e6e6e6;
  border-radius: 0.5rem;
  position: relative; }
  @media only screen and (max-width: 62.5em) {
    .search-sidebar {
      position: absolute;
      width: 100%;
      z-index: 10;
      top: 0;
      left: 0;
      background-color: #fff;
      padding: 2rem;
      display: none;
      border-top: none;
      overflow-y: scroll;
      height: 100vh; }
      .search-sidebar.show {
        display: flex;
        flex-direction: column;
        padding: 0;
        padding-bottom: 32rem; }
        .search-sidebar.show .filter__heading {
          padding: 2rem 4rem; }
        .search-sidebar.show .filter__content {
          padding: 2rem 4rem; }
        .search-sidebar.show > .filter {
          margin-top: 7.5rem; }
        .search-sidebar.show > .filter ~ .filter {
          margin-top: 0rem; } }
  .search-sidebar__mobile-header {
    display: none; }
    @media only screen and (max-width: 62.5em) {
      .search-sidebar__mobile-header {
        display: flex;
        justify-content: space-between;
        align-items: center;
        border-bottom: 1px solid #c2c6c9;
        position: fixed;
        width: 100%;
        background-color: #fff;
        z-index: 15000; } }
    .search-sidebar__mobile-header__clear-button {
      margin-right: 2.5rem !important; }
    .search-sidebar__mobile-header__close-button {
      border: none;
      background-color: #fff;
      font-size: 1.5rem;
      letter-spacing: 0.2rem;
      text-transform: uppercase;
      font-weight: 700;
      height: 7rem;
      cursor: pointer;
      color: #142838;
      font-family: "Metropolis", sans-serif;
      outline: none;
      display: none; }
      @media only screen and (max-width: 62.5em) {
        .search-sidebar__mobile-header__close-button {
          display: flex;
          justify-content: start;
          align-items: center; } }
      @media only screen and (max-width: 22em) {
        .search-sidebar__mobile-header__close-button {
          font-size: 1.2rem;
          line-height: 1.5rem; } }
      .search-sidebar__mobile-header__close-button__icon-area {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 5rem;
        height: 100%; }
        @media only screen and (max-width: 37.5em) {
          .search-sidebar__mobile-header__close-button__icon-area {
            width: 7rem; } }
        .search-sidebar__mobile-header__close-button__icon-area svg {
          height: 2.5rem;
          width: 2.5rem;
          fill: #142838;
          transition: all 0.2s;
          opacity: 1;
          transform: rotate(180deg); }
      .search-sidebar__mobile-header__close-button__text-area {
        width: 10rem;
        height: 100%;
        display: flex;
        align-items: center;
        justify-content: start;
        text-align: start;
        border-right: 1px solid #c2c6c9; }

.filter:not(:last-child) {
  border-bottom: 1px solid #e6e6e6; }

.filter label {
  text-transform: capitalize; }

.filter .irs {
  text-transform: capitalize; }

.filter--clear {
  display: none;
  justify-content: center;
  align-items: center;
  padding: 2rem;
  transform: scale(0.8); }
  .filter--clear.show {
    display: flex; }
    @media only screen and (max-width: 62.5em) {
      .filter--clear.show {
        display: none; } }

.filter__heading {
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
  padding: 2rem; }
  .filter__heading__text {
    font-size: 1.6rem;
    font-weight: 700;
    color: #142838;
    position: relative;
    letter-spacing: 0;
    margin-bottom: 0;
    text-transform: capitalize; }
    .filter__heading__text__count {
      position: absolute;
      right: -3rem;
      top: 0;
      height: 2rem;
      width: 2rem;
      display: none;
      justify-content: center;
      align-items: center;
      background-color: #40739c;
      border-radius: 50%;
      color: #fff;
      font-size: 1.2rem;
      font-weight: 600; }
      .filter__heading__text__count.show {
        display: flex; }
  .filter__heading svg {
    transform: rotate(180deg) translateY(3px);
    height: 2rem;
    width: 2rem;
    color: #142838;
    transition: all 0.2s; }
  .filter__heading.closed svg {
    transform: rotate(0deg);
    height: 2rem;
    width: 2rem;
    color: #142838; }

.filter__content {
  padding: 2rem;
  padding-top: 0rem; }
  .filter__content__list {
    list-style: none;
    overflow: hidden; }
    .filter__content__list--fixedHeight {
      max-height: 20rem; }
      .filter__content__list--fixedHeight.expanded {
        max-height: 1000px !important;
        transition: max-height 0.2s ease-in-out; }
    .filter__content__list__item {
      margin-bottom: 1rem; }
      .filter__content__list__item--divider {
        padding-top: 1rem;
        margin-top: 1rem;
        max-width: max-content; }
  .filter__content__show-more {
    display: flex;
    justify-content: center;
    padding: 2rem;
    padding-bottom: 0rem; }
    .filter__content__show-more button {
      background-color: #fff;
      font-family: "Metropolis", sans-serif;
      color: #40739c;
      border: 1px solid currentColor;
      border-radius: 0.5rem;
      font-size: 1.2rem;
      font-weight: 600;
      text-transform: uppercase;
      letter-spacing: 0.1rem;
      padding: 1rem 2rem;
      cursor: pointer;
      transition: all 0.2s;
      outline: none;
      white-space: nowrap;
      width: max-content; }
      .filter__content__show-more button:hover {
        background-color: #40739c;
        color: #fff; }
  .filter__content__search-area {
    width: 100%;
    display: flex;
    justify-content: space-between;
    position: relative; }
    @media only screen and (max-width: 62.5em) {
      .filter__content__search-area {
        width: 95%; } }
    .filter__content__search-area__input {
      width: 100%;
      border-radius: 1rem;
      background-color: transparent;
      border: 1px solid #c2c6c9;
      padding: 1rem 1.5rem;
      font-family: "Metropolis", sans-serif;
      letter-spacing: 0.1rem;
      color: #142838;
      font-weight: 400;
      font-size: 1.6rem;
      transition: all 0.2s;
      outline: none; }
      .filter__content__search-area__input:hover {
        border: 1px solid #9ea0a4; }
      .filter__content__search-area__input:focus {
        border: 1px solid #142838;
        background-color: rgba(64, 115, 156, 0.1); }
    .filter__content__search-area__clear {
      position: absolute;
      top: 50%;
      right: 6rem;
      background-color: transparent;
      border-radius: 8rem;
      border: none;
      height: 2rem;
      width: 2rem;
      display: flex;
      align-items: center;
      justify-content: center;
      transform: translateY(-50%);
      cursor: pointer;
      transition: all 0.2s;
      display: none; }
      @media only screen and (max-width: 62.5em) {
        .filter__content__search-area__clear {
          right: 7rem; } }
      .filter__content__search-area__clear.active {
        display: flex; }
      .filter__content__search-area__clear svg {
        height: 1rem;
        width: 1rem;
        fill: #142838; }
      .filter__content__search-area__clear.active {
        display: flex; }
      .filter__content__search-area__clear:hover {
        background-color: #c2c6c9; }
    .filter__content__search-area__button {
      margin-left: 0rem;
      background-color: transparent;
      border-radius: 1rem;
      border: 1px solid;
      width: 6rem;
      cursor: pointer;
      transition: all 0.2s;
      border: none;
      display: flex;
      align-items: center;
      justify-content: center; }
      .filter__content__search-area__button svg {
        height: 2rem;
        width: 2rem;
        fill: #142838;
        transition: all 0.2s; }
      .filter__content__search-area__button:hover svg {
        fill: #40739c; }
      .filter__content__search-area__button.disabled {
        cursor: default; }
        .filter__content__search-area__button.disabled svg {
          fill: #9ea0a4; }
  .filter__content__fine-print {
    padding-top: 1rem;
    font-size: 1.2rem; }

.clear-filters {
  display: none; }
  .clear-filters.show {
    display: flex; }

.irs {
  font-family: "Metropolis", sans-serif !important; }
  .irs--round span {
    font-size: 1.2rem !important; }
  .irs--round .irs-single {
    background-color: #142838 !important; }
    .irs--round .irs-single::before {
      border-top-color: #142838 !important; }
  .irs--round .irs-handle {
    border: 3px solid #142838; }
  .irs--round .irs-bar {
    background-color: #142838; }
  .irs--round .irs-from {
    background-color: #142838; }
    .irs--round .irs-from::before {
      border-top-color: #142838 !important; }
  .irs--round .irs-to {
    background-color: #142838; }
    .irs--round .irs-to::before {
      border-top-color: #142838 !important; }

.search-filter-bar {
  width: 100%;
  background-color: #fff;
  border-top: 1px solid #c2c6c9;
  border-bottom: 1px solid #c2c6c9;
  height: 7rem;
  align-items: center;
  justify-content: space-between;
  position: relative;
  display: none;
  transition: all 0.3s;
  padding: 0 6rem; }
  .search-filter-bar.scrollUp {
    transform: translateY(-7rem); }
  @media only screen and (max-width: 37.5em) {
    .search-filter-bar {
      padding: 0 3rem; } }
  @media only screen and (max-width: 62.5em) {
    .search-filter-bar {
      display: flex; } }
  .search-filter-bar.sticky {
    position: fixed;
    z-index: 30;
    border-top: none; }

.search-filter-mobile-area {
  height: 100%;
  width: 100%;
  background-color: #fff;
  z-index: 150;
  position: fixed;
  top: 0;
  left: 0;
  display: none; }
  .search-filter-mobile-area.active {
    display: block; }

.search-filter-mobile-cta {
  position: fixed;
  bottom: 0;
  left: 0;
  height: 10rem;
  width: 100%;
  border-top: 1px solid #c2c6c9;
  background-color: rgba(255, 255, 255, 0.8);
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  z-index: 200;
  display: none;
  justify-content: center;
  align-items: center;
  padding: 2rem; }
  .search-filter-mobile-cta button {
    height: 4.5rem;
    width: 100%;
    max-width: 28rem;
    background-color: #40739c;
    font-family: "Metropolis", sans-serif;
    color: #fff;
    border: none;
    border-radius: 2.5rem;
    font-size: 1.5rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.2rem;
    padding: 1rem 2rem;
    cursor: pointer;
    transition: all 0.2s;
    outline: none;
    white-space: nowrap; }

.search-button {
  color: #40739c;
  background-color: transparent;
  padding: 1.2rem 2.5rem;
  border: none;
  margin-right: 1rem;
  height: 4rem;
  letter-spacing: 0.2rem;
  cursor: pointer;
  outline: none;
  font-size: 1.5rem;
  font-family: "Metropolis", sans-serif;
  text-transform: uppercase;
  font-weight: 700;
  position: relative;
  text-decoration: none;
  white-space: nowrap; }
  .search-button--inverse {
    color: #fff;
    background-color: #40739c;
    border-radius: 2.5rem; }
    .search-button--inverse::after {
      display: none; }
  .search-button::after {
    content: "";
    transition: all 0.15s;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    height: 100%;
    width: 100%;
    border-radius: 2.5rem;
    border: 1px solid currentColor; }
  .search-button:hover::after {
    height: 95%;
    width: 95%; }

.search-result {
  border: 1px solid #e6e6e6;
  border-radius: 0.4rem;
  padding: 1.5rem;
  display: grid;
  grid-template-columns: 29rem 1fr 15rem;
  column-gap: 2.5rem;
  transition: all 0.3s;
  height: min-content !important;
  width: 100%; }
  @media only screen and (max-width: 50em) {
    .search-result {
      display: flex;
      flex-direction: column;
      padding: 2rem; } }
  .search-result:link, .search-result:visited {
    text-decoration: none;
    color: #9ea0a4; }
  .search-result:hover {
    box-shadow: 0 0rem 3rem rgba(0, 0, 0, 0.2);
    border: 1px solid transparent; }
  .search-result__image-area {
    width: 100%;
    height: 100%;
    position: relative; }
    @media only screen and (max-width: 50em) {
      .search-result__image-area {
        height: min-content; } }
    .search-result__image-area img {
      width: 100%;
      height: 100%;
      object-fit: cover; }
      @media only screen and (max-width: 50em) {
        .search-result__image-area img {
          width: 100%;
          height: auto;
          object-fit: contain; } }
    .search-result__image-area .badge-solid {
      position: absolute;
      z-index: 10;
      top: 1.2rem;
      left: 0.5rem; }
  .search-result__content {
    display: flex;
    flex-direction: column;
    padding: 1rem 0; }
    .search-result__content__top {
      display: flex;
      flex-direction: column;
      position: relative;
      padding-bottom: 1.5rem;
      border-bottom: 1px solid #e6e6e6; }
      .search-result__content__top__badge-area {
        position: absolute;
        top: -0.3rem;
        right: 0; }
        .search-result__content__top__badge-area .badge-solid {
          cursor: pointer;
          display: none; }
          .search-result__content__top__badge-area .badge-solid.current {
            display: inline; }
        .search-result__content__top__badge-area:hover .deal-popover {
          font-weight: 800;
          visibility: visible; }
      .search-result__content__top .deal-popover {
        width: max-content;
        max-width: 30rem;
        visibility: hidden;
        position: absolute;
        top: 1.8rem;
        right: 2.8rem;
        background-color: #fff;
        border: 1px solid #c2c6c9;
        border-radius: .4rem;
        padding: .5rem 1.5rem;
        font-size: 1.4rem;
        box-shadow: 0 2rem 2rem -1rem rgba(0, 0, 0, 0.25);
        color: #142838;
        text-transform: none;
        letter-spacing: 0;
        cursor: default; }
        .search-result__content__top .deal-popover div:not(:last-child) {
          margin-bottom: .5rem;
          padding-bottom: .5rem;
          border-bottom: 1px solid #e6e6e6; }
      .search-result__content__top__title-group {
        padding-bottom: 1rem; }
        .search-result__content__top__title-group__title {
          font-size: 2.2rem;
          line-height: 2.6rem;
          font-weight: 700;
          color: #142838; }
        .search-result__content__top__title-group__subtitle {
          font-size: 1.2rem;
          font-weight: 600;
          text-transform: uppercase;
          align-self: end;
          letter-spacing: 0.2rem;
          margin-bottom: 0.3rem;
          color: #919598; }
          .search-result__content__top__title-group__subtitle span {
            display: none; }
            .search-result__content__top__title-group__subtitle span.current {
              display: block; }
      .search-result__content__top__snippet {
        font-size: 1.2rem;
        line-height: 1.6rem; }
    .search-result__content__bottom {
      padding-top: 0.5rem;
      display: flex;
      flex-direction: column;
      font-size: 1.2rem; }
      .search-result__content__bottom__details {
        padding: 1rem 0; }
        .search-result__content__bottom__details__group__title {
          color: #305a7c;
          font-weight: 600; }
      .search-result__content__bottom__experiences {
        display: flex; }
        .search-result__content__bottom__experiences__item .experience-icon {
          margin: 0;
          margin-right: 0.2rem;
          transform: scale(0.8) translateX(-0.8rem); }
          .search-result__content__bottom__experiences__item .experience-icon svg {
            stroke: none !important;
            stroke-width: 0 !important; }
  .search-result__detail {
    display: flex;
    flex-direction: column;
    padding-top: .5rem; }
    .search-result__detail__header {
      display: flex;
      font-size: 1.1rem;
      font-weight: 700;
      text-transform: uppercase;
      color: #142838;
      letter-spacing: 0.1rem;
      padding-bottom: .5rem;
      margin-bottom: .7rem;
      border-bottom: 1px solid #e6e6e6;
      width: min-content;
      white-space: nowrap; }
      @media only screen and (max-width: 50em) {
        .search-result__detail__header {
          border-bottom: none;
          font-size: 1.3rem;
          margin-bottom: 0rem; } }
      .search-result__detail__header__tab {
        padding-right: 0.5rem;
        transition: color 0.2s;
        cursor: pointer;
        color: #9ea0a4; }
        .search-result__detail__header__tab.current {
          cursor: default;
          color: #142838 !important; }
          .search-result__detail__header__tab.current:hover {
            color: #142838 !important; }
        .search-result__detail__header__tab.charter-tab {
          color: #9ea0a4; }
        .search-result__detail__header__tab:hover {
          color: #c2c6c9; }
    .search-result__detail__panel {
      height: 100%;
      flex-direction: column;
      justify-content: space-between;
      display: none; }
      .search-result__detail__panel.current {
        display: flex; }
      @media only screen and (max-width: 50em) {
        .search-result__detail__panel__info {
          display: flex;
          flex-direction: column;
          padding-top: 1.5rem;
          border-top: 1px solid #e6e6e6; } }
      .search-result__detail__panel__info__price-from {
        padding-bottom: .5rem; }
        @media only screen and (max-width: 50em) {
          .search-result__detail__panel__info__price-from {
            order: 0;
            display: flex;
            flex-direction: column;
            justify-content: center;
            padding-bottom: 1rem; } }
        .search-result__detail__panel__info__price-from__text {
          font-size: 1.1rem;
          line-height: 1.1rem;
          padding-bottom: .8rem; }
        .search-result__detail__panel__info__price-from__price {
          font-size: 2.2rem;
          line-height: 2.8rem;
          font-weight: 700;
          color: #142838; }
          @media only screen and (max-width: 50em) {
            .search-result__detail__panel__info__price-from__price {
              font-size: 2.8rem;
              line-height: 3.4rem; } }
          .search-result__detail__panel__info__price-from__price span {
            font-size: 1.3rem;
            text-transform: uppercase;
            color: #142838;
            font-weight: 600; }
      .search-result__detail__panel__info__attributes {
        height: 100%; }
        @media only screen and (max-width: 50em) {
          .search-result__detail__panel__info__attributes {
            display: flex; } }
        .search-result__detail__panel__info__attributes__item {
          position: relative;
          display: flex;
          text-align: center;
          flex-direction: column;
          height: 3.8rem; }
          .search-result__detail__panel__info__attributes__item:not(:last-child) {
            margin-bottom: 1.5rem; }
            @media only screen and (max-width: 50em) {
              .search-result__detail__panel__info__attributes__item:not(:last-child) {
                margin-right: 3rem; } }
          .search-result__detail__panel__info__attributes__item__data {
            color: #142838;
            display: flex;
            align-items: center;
            height: 100%;
            text-align: start; }
            .search-result__detail__panel__info__attributes__item__data__icon {
              margin-right: 1rem;
              display: flex;
              align-items: center; }
              .search-result__detail__panel__info__attributes__item__data__icon svg {
                stroke: #142838;
                stroke-width: 4;
                height: 3rem;
                width: 3rem;
                color: #142838;
                fill: #142838; }
            .search-result__detail__panel__info__attributes__item__data__text {
              font-size: 1.6rem;
              line-height: 2.5rem;
              font-weight: 700;
              text-transform: uppercase;
              width: max-content; }
              .search-result__detail__panel__info__attributes__item__data__text .sub-attribute {
                font-size: 1.1rem;
                line-height: 1.6rem;
                font-weight: 600; }
            .search-result__detail__panel__info__attributes__item__data ul {
              list-style: none;
              display: flex;
              font-size: 1.2rem; }
      .search-result__detail__panel__cta {
        width: 100%;
        display: flex;
        justify-content: center;
        padding-top: 1.5rem; }
        @media only screen and (max-width: 50em) {
          .search-result__detail__panel__cta {
            padding-top: .5rem; } }
        .search-result__detail__panel__cta a {
          width: 100%;
          text-align: center;
          text-decoration: none; }
          @media only screen and (max-width: 50em) {
            .search-result__detail__panel__cta a {
              padding: 1.5rem;
              margin-top: 1rem; } }

.search-result-gridview {
  border-radius: 0.4rem;
  transition: all 0.3s;
  width: 100%;
  position: relative;
  overflow: hidden; }
  .search-result-gridview:link, .search-result-gridview:visited {
    text-decoration: none;
    color: #9ea0a4; }
  .search-result-gridview:hover {
    box-shadow: 0 0rem 2rem rgba(0, 0, 0, 0.5); }
  .search-result-gridview__image-area {
    width: 100%;
    height: 100%;
    position: relative; }
    .search-result-gridview__image-area img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      border-radius: 0.4rem; }
  .search-result-gridview__destinations {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: min-content;
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), transparent);
    padding: 1rem 1.5rem;
    border-top-right-radius: 0.4rem;
    border-top-left-radius: 0.4rem;
    display: flex;
    list-style: none;
    justify-content: center;
    padding-bottom: 2rem;
    flex-wrap: wrap; }
    .search-result-gridview__destinations li {
      font-size: 1rem;
      letter-spacing: 0.1rem;
      text-transform: uppercase;
      color: #f8f8f8;
      font-weight: 400; }
      .search-result-gridview__destinations li:not(:last-child) {
        margin-right: 0.5rem;
        position: relative; }
        .search-result-gridview__destinations li:not(:last-child)::after {
          content: " / "; }
  .search-result-gridview__content-area {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 10rem;
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.7), transparent);
    z-index: 2;
    border-bottom-right-radius: 0.4rem;
    border-bottom-left-radius: 0.4rem;
    display: flex;
    padding: 1rem 1.5rem;
    justify-content: space-between;
    align-content: flex-end; }
    .search-result-gridview__content-area__left {
      display: flex;
      flex-direction: column;
      justify-content: flex-end;
      margin-right: 1rem;
      position: relative; }
      .search-result-gridview__content-area__left .badge-solid {
        width: min-content;
        transform: scale(0.7) translateX(-1.5rem);
        margin-left: 0;
        font-size: 1.4rem; }
      .search-result-gridview__content-area__left__charter-title {
        font-size: 1rem;
        letter-spacing: 0.1rem;
        text-transform: uppercase;
        color: #f8f8f8;
        font-weight: 400;
        white-space: nowrap; }
      .search-result-gridview__content-area__left__title {
        font-size: 1.4rem;
        line-height: 2rem;
        font-weight: 600;
        color: #f8f8f8;
        display: flex;
        flex-direction: column;
        padding-right: 0.5rem; }
    .search-result-gridview__content-area__right {
      display: flex;
      flex-direction: column;
      text-align: right;
      justify-content: flex-end;
      align-items: flex-end;
      position: relative; }
      .search-result-gridview__content-area__right__length {
        font-size: 1rem;
        letter-spacing: 0.1rem;
        text-transform: uppercase;
        color: #f8f8f8;
        font-weight: 400;
        white-space: nowrap; }
      .search-result-gridview__content-area__right__price {
        font-size: 1.4rem;
        line-height: 2rem;
        font-weight: 600;
        color: #f8f8f8;
        display: flex;
        align-items: flex-end; }
        .search-result-gridview__content-area__right__price span {
          font-size: 1rem;
          text-transform: uppercase;
          color: #f8f8f8;
          font-weight: 600;
          margin-left: 0.4rem;
          display: flex;
          align-items: flex-end; }

.search-no-results {
  width: 100%;
  text-align: center;
  padding: 2rem;
  padding-top: 7rem;
  grid-column: 1 / -1; }
  .search-no-results__maintext {
    font-size: 2rem;
    color: #142838;
    font-weight: 600; }
  .search-no-results__subtext {
    font-size: 1.4rem;
    margin-bottom: 3rem; }
  .search-no-results__button-area button {
    transform: scale(0.8); }

.checkbox {
  position: absolute;
  opacity: 0; }
  .checkbox + label {
    display: inline-block;
    position: relative;
    cursor: pointer;
    line-height: 20px;
    padding-left: 30px;
    font-size: 14px;
    font-family: "Metropolis", sans-serif;
    color: #666; }
    .checkbox + label:before {
      position: absolute;
      display: block;
      left: 0;
      top: 0;
      content: "";
      background: transparent;
      width: 20px;
      height: 20px;
      box-shadow: inset 0 0 0 1px #cecece;
      border-radius: 4px;
      transition: 200ms ease-in-out all; }
    .checkbox + label:after {
      position: absolute;
      display: block;
      top: 5px;
      left: 8px;
      content: "";
      width: 3px;
      height: 7px;
      border-right: 1px solid transparent;
      border-bottom: 1px solid transparent;
      transform: rotate(45deg);
      transition: 200ms ease-in-out all; }
  .checkbox + label:hover:before {
    box-shadow: inset 0 0 0 1px #40739c; }
  .checkbox + label:focus {
    outline: none; }
  .checkbox:checked + label:before {
    background: #40739c;
    box-shadow: none; }
  .checkbox:checked + label:after {
    border-color: white; }
  .checkbox:disabled + label:before {
    background: #f2f2f2;
    box-shadow: none; }
  .checkbox:disabled + label:after {
    border-color: transparent; }
  .checkbox:checked:disabled + label:before {
    background: #f2f2f2;
    box-shadow: none; }
  .checkbox:checked:disabled + label:after {
    border-color: #cecece; }

.destination-hero {
  display: flex;
  width: 100%;
  height: 100vh;
  position: relative;
  flex-direction: column;
  align-items: center;
  min-height: 80rem; }
  @media only screen and (max-width: 62.5em) {
    .destination-hero {
      min-height: 60rem; } }
  .destination-hero__bg-slider {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    height: 100%; }
    .destination-hero__bg-slider .slick-list {
      height: 100% !important; }
    .destination-hero__bg-slider .slick-track {
      height: 100% !important; }
    .destination-hero__bg-slider .slick-slide div {
      height: 100% !important; }
    .destination-hero__bg-slider .flickity-viewport {
      height: 100% !important; }
    .destination-hero__bg-slider__slide {
      height: 100%;
      width: 100%;
      opacity: 1;
      transition: opacity 1s; }
      .destination-hero__bg-slider__slide.is-selected {
        opacity: 1; }
      .destination-hero__bg-slider__slide__image-area {
        height: 100%;
        width: 100%; }
        .destination-hero__bg-slider__slide__image-area img {
          background-position: center center;
          background-repeat: no-repeat;
          object-fit: cover;
          height: 100%;
          width: 100%;
          z-index: 0;
          opacity: 0;
          transition: opacity 1s; }
          .destination-hero__bg-slider__slide__image-area img.flickity-lazyloaded, .destination-hero__bg-slider__slide__image-area img.flickity-lazyerror {
            opacity: 1; }
    .destination-hero__bg-slider:after {
      content: "";
      height: 100%;
      width: 100%;
      background-image: linear-gradient(to left, rgba(30, 30, 30, 0.7), transparent), linear-gradient(to right, rgba(30, 30, 30, 0.35), transparent 30%), linear-gradient(to top, rgba(30, 30, 30, 0.45), transparent 60%);
      position: absolute;
      top: 0;
      left: 0;
      z-index: 2; }
      @media only screen and (max-width: 62.5em) {
        .destination-hero__bg-slider:after {
          background-image: linear-gradient(to left, rgba(30, 30, 30, 0.6), transparent), linear-gradient(to right, rgba(30, 30, 30, 0.25), transparent 40%), linear-gradient(to top, rgba(30, 30, 30, 0.45), transparent 60%), linear-gradient(to top, rgba(30, 30, 30, 0.2), rgba(30, 30, 30, 0.2)); } }
  .destination-hero__content {
    display: grid;
    grid-template-columns: 2fr 3fr;
    column-gap: 12rem;
    row-gap: 2rem;
    grid-template-rows: min-content 1fr 25rem min-content;
    color: rgba(255, 255, 255, 0.9);
    text-transform: uppercase;
    z-index: 8;
    width: 100%;
    justify-self: center;
    height: 100%;
    margin-top: 9rem;
    margin-bottom: 6rem;
    position: relative;
    color: #fff;
    max-width: 130rem;
    padding: 0 6rem; }
    @media only screen and (max-width: 62.5em) {
      .destination-hero__content {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: space-around; } }
    @media only screen and (max-width: 37.5em) {
      .destination-hero__content {
        padding: 0rem;
        margin-top: 7rem;
        margin-bottom: 10rem; } }
    .destination-hero__content__breadcrumb {
      margin-top: 3rem;
      font-size: 1.2rem;
      letter-spacing: 0.2rem;
      font-weight: 400;
      display: flex;
      position: relative;
      list-style: none;
      height: max-content;
      width: max-content; }
      @media only screen and (max-width: 62.5em) {
        .destination-hero__content__breadcrumb {
          justify-self: center;
          margin: 0 2rem;
          margin-top: 2rem; } }
      .destination-hero__content__breadcrumb li {
        display: inline-block;
        width: max-content; }
        .destination-hero__content__breadcrumb li:not(:last-child):after {
          content: " / ";
          padding-right: 4px; }
        .destination-hero__content__breadcrumb li a {
          position: relative;
          text-decoration: none;
          color: currentColor; }
          .destination-hero__content__breadcrumb li a::after {
            content: "";
            position: absolute;
            bottom: -0.3rem;
            left: 0;
            width: 97%;
            height: 1px;
            background-color: #fff;
            transition: all 0.2s;
            opacity: 0; }
          .destination-hero__content__breadcrumb li a:hover::after {
            color: #fff;
            opacity: 1; }
    .destination-hero__content__title-group {
      height: min-content;
      align-self: center; }
      @media only screen and (max-width: 62.5em) {
        .destination-hero__content__title-group {
          display: flex;
          flex-direction: column;
          align-items: center;
          margin: 0 2rem; } }
      .destination-hero__content__title-group__title {
        font-size: 5rem;
        line-height: 5.8rem;
        letter-spacing: 0.6rem;
        font-family: "Playfair Display", serif;
        grid-column: 1 / span 1;
        align-self: center;
        position: relative;
        margin-bottom: 2rem;
        margin-top: 1rem;
        font-weight: 400; }
        .destination-hero__content__title-group__title::after {
          content: "";
          position: absolute;
          bottom: -1rem;
          left: 0;
          width: 65%;
          height: 2px;
          background-color: #fff; }
        @media only screen and (max-width: 62.5em) {
          .destination-hero__content__title-group__title {
            text-align: center; }
            .destination-hero__content__title-group__title::after {
              left: 50%;
              transform: translateX(-50%); } }
        @media only screen and (max-width: 50em) {
          .destination-hero__content__title-group__title {
            font-size: 3.5rem;
            line-height: 4.2rem;
            letter-spacing: 0.4rem; } }
        @media only screen and (max-width: 37.5em) {
          .destination-hero__content__title-group__title {
            font-size: 2.8rem;
            line-height: 3.5rem;
            letter-spacing: 0.3rem; } }
    .destination-hero__content__page-nav {
      user-select: none;
      grid-column: 1 / span 1;
      align-self: end;
      font-size: 1.6rem;
      letter-spacing: 0.3rem;
      font-weight: 300;
      line-height: 3rem;
      z-index: 10; }
      @media only screen and (max-width: 62.5em) {
        .destination-hero__content__page-nav {
          display: none; } }
      .destination-hero__content__page-nav__sticky-wrapper {
        user-select: none; }
        .destination-hero__content__page-nav__sticky-wrapper.active {
          display: flex;
          grid-column: 1 / -1;
          width: 100%;
          border-bottom: 1px solid rgba(194, 198, 201, 0.9);
          background-color: #fff; }
          @media only screen and (max-width: 62.5em) {
            .destination-hero__content__page-nav__sticky-wrapper.active {
              flex-direction: column; } }
          @media only screen and (max-width: 62.5em) {
            .destination-hero__content__page-nav__sticky-wrapper.active .page-nav__button {
              display: flex; } }
          @media only screen and (max-width: 62.5em) {
            .destination-hero__content__page-nav__sticky-wrapper.active .page-nav__collapse {
              grid-column: 1 / -1;
              justify-content: center;
              text-align: center; } }
          .destination-hero__content__page-nav__sticky-wrapper.active .destination-hero__content__page-nav__list {
            position: relative;
            grid-column: center-start / -1;
            font-weight: 500;
            font-size: 1.32rem;
            margin-bottom: 0rem;
            opacity: 1;
            grid-row: 2 / span 1;
            color: rgba(20, 40, 56, 0.6);
            display: grid;
            grid-auto-flow: column;
            justify-content: start;
            grid-gap: 4rem;
            align-content: start;
            padding: 1.5rem 0;
            letter-spacing: 0.3rem;
            text-transform: uppercase; }
            @media only screen and (max-width: 62.5em) {
              .destination-hero__content__page-nav__sticky-wrapper.active .destination-hero__content__page-nav__list {
                display: none !important;
                justify-content: center; } }
            .destination-hero__content__page-nav__sticky-wrapper.active .destination-hero__content__page-nav__list__item {
              margin-top: 0rem !important; }
              .destination-hero__content__page-nav__sticky-wrapper.active .destination-hero__content__page-nav__list__item__link:link, .destination-hero__content__page-nav__sticky-wrapper.active .destination-hero__content__page-nav__list__item__link:visited {
                transition: color 0.3s; }
                .destination-hero__content__page-nav__sticky-wrapper.active .destination-hero__content__page-nav__list__item__link:link::after, .destination-hero__content__page-nav__sticky-wrapper.active .destination-hero__content__page-nav__list__item__link:visited::after {
                  content: "";
                  opacity: 0;
                  position: absolute;
                  height: 1rem;
                  width: 1rem;
                  bottom: -2.3rem;
                  left: 50%;
                  transform: translateX(-50%);
                  border-radius: 50%;
                  background-color: #fff;
                  border: 1px solid #c2c6c9;
                  transition: opacity 0.3s; }
                .destination-hero__content__page-nav__sticky-wrapper.active .destination-hero__content__page-nav__list__item__link:link.current, .destination-hero__content__page-nav__sticky-wrapper.active .destination-hero__content__page-nav__list__item__link:visited.current {
                  color: #40739c; }
                  .destination-hero__content__page-nav__sticky-wrapper.active .destination-hero__content__page-nav__list__item__link:link.current::after, .destination-hero__content__page-nav__sticky-wrapper.active .destination-hero__content__page-nav__list__item__link:visited.current::after {
                    content: "";
                    opacity: 1;
                    position: absolute;
                    height: 1rem;
                    width: 1rem;
                    bottom: -2.3rem;
                    left: 50%;
                    transform: translateX(-50%);
                    transform-origin: center;
                    border-radius: 50%;
                    background-color: #fff;
                    border: 1px solid #c2c6c9; }
              .destination-hero__content__page-nav__sticky-wrapper.active .destination-hero__content__page-nav__list__item__link:hover, .destination-hero__content__page-nav__sticky-wrapper.active .destination-hero__content__page-nav__list__item__link:active {
                color: #305a7c; }
      .destination-hero__content__page-nav__title {
        font-weight: 800;
        position: relative;
        margin-bottom: 1rem;
        text-transform: uppercase;
        position: relative;
        display: none; }
        .destination-hero__content__page-nav__title::after {
          content: "";
          position: absolute;
          bottom: 0;
          left: 0;
          width: 5rem;
          height: 1px;
          background-color: rgba(255, 255, 255, 0.8); }
          @media only screen and (max-width: 62.5em) {
            .destination-hero__content__page-nav__title::after {
              left: 50%;
              transform: translateX(-2.6rem); } }
        .destination-hero__content__page-nav__title.active {
          order: -1;
          font-size: 1.32rem;
          font-weight: 600;
          letter-spacing: 0.2rem;
          color: rgba(48, 90, 124, 0.8);
          text-transform: uppercase;
          display: flex;
          justify-content: flex-end;
          padding: 1.5rem 4rem;
          padding-right: 4rem;
          align-items: center;
          height: 100%;
          max-width: 100%;
          min-width: 28rem;
          position: relative;
          margin-bottom: 0;
          cursor: pointer; }
          @media only screen and (max-width: 62.5em) {
            .destination-hero__content__page-nav__title.active {
              display: none; } }
          .destination-hero__content__page-nav__title.active::before {
            content: "";
            width: 1px;
            height: 40%;
            background-color: #e6e6e6;
            position: absolute;
            right: 2rem; }
      .destination-hero__content__page-nav__list {
        list-style: none;
        color: white; }
        .destination-hero__content__page-nav__list__item {
          margin-top: 1rem; }
          .destination-hero__content__page-nav__list__item__link:link, .destination-hero__content__page-nav__list__item__link:visited {
            text-decoration: none;
            color: currentColor;
            position: relative; }
            .destination-hero__content__page-nav__list__item__link:link::after, .destination-hero__content__page-nav__list__item__link:visited::after {
              content: "";
              position: absolute;
              height: 2px;
              width: 0%;
              bottom: -0.5rem;
              left: 0;
              background-color: #f8f8f8;
              transition: all 0.3s; }
          .destination-hero__content__page-nav__list__item__link:hover::after, .destination-hero__content__page-nav__list__item__link:active::after {
            width: 100%; }
          .destination-hero__content__page-nav__list__item.current {
            color: #40739c; }
            .destination-hero__content__page-nav__list__item.current::after {
              content: "";
              opacity: 1;
              position: absolute;
              height: 1rem;
              width: 1rem;
              bottom: -2rem;
              left: 50%;
              transform: translateX(-50%);
              transform-origin: center;
              border-radius: 50%;
              background-color: #fff;
              border: 1px solid #c2c6c9; }
    .destination-hero__content__arrow {
      margin-top: 2rem;
      transform: translateX(-1rem) translateY(1rem); }
      @media only screen and (max-width: 62.5em) {
        .destination-hero__content__arrow {
          transform: translateX(0);
          margin-bottom: 2rem;
          order: 5;
          margin-top: 0; } }
    .destination-hero__content__location {
      grid-column: 2 / span 1;
      grid-row: 1 / -1;
      width: 40vw;
      align-self: end;
      height: 45rem;
      display: flex;
      flex-direction: column;
      /* progress bar */ }
      @media only screen and (max-width: 62.5em) {
        .destination-hero__content__location {
          align-self: center;
          text-align: center;
          height: min-content;
          width: 100%;
          margin-top: 2rem; } }
      .destination-hero__content__location__slider {
        width: 100%;
        text-transform: none;
        font-size: 1.6rem;
        position: relative;
        justify-self: flex-start;
        height: 100%;
        visibility: hidden;
        max-height: 42rem; }
        @media only screen and (max-width: 62.5em) {
          .destination-hero__content__location__slider {
            height: min-content; }
            .destination-hero__content__location__slider .slick-list {
              padding: 0 7rem !important; } }
        .destination-hero__content__location__slider.slick-initialized {
          visibility: visible;
          max-height: 100%; }
        .destination-hero__content__location__slider .slick-active {
          animation: slideFade 1s both;
          animation-timing-function: ease-out;
          animation-delay: 0.5s; }
          @media only screen and (max-width: 62.5em) {
            .destination-hero__content__location__slider .slick-active {
              animation: none; } }
          .destination-hero__content__location__slider .slick-active .goto-button {
            animation: slideFade 1s both;
            animation-timing-function: ease-out;
            animation-delay: 1.1s; }
            @media only screen and (max-width: 62.5em) {
              .destination-hero__content__location__slider .slick-active .goto-button {
                animation: none; } }
        @media only screen and (max-width: 62.5em) {
          .destination-hero__content__location__slider__item {
            display: flex !important;
            flex-direction: column;
            align-items: center; } }
        .destination-hero__content__location__slider__item__title {
          text-transform: uppercase;
          letter-spacing: 0.3rem;
          font-size: 2.5rem;
          position: relative;
          display: inline-block;
          margin-bottom: 1rem;
          color: #fff;
          font-weight: 400; }
          @media only screen and (max-width: 50em) {
            .destination-hero__content__location__slider__item__title {
              font-size: 2rem;
              line-height: 2.6rem; } }
          .destination-hero__content__location__slider__item__title::after {
            position: absolute;
            bottom: 0;
            left: 0;
            width: 100%;
            height: 2px;
            background-color: #fff; }
        .destination-hero__content__location__slider__item__text {
          line-height: 3.5rem; }
          @media only screen and (max-width: 62.5em) {
            .destination-hero__content__location__slider__item__text {
              font-size: 1.4rem;
              line-height: 2.2rem;
              max-width: 60rem;
              margin: 0 6rem; } }
          @media only screen and (max-width: 37.5em) {
            .destination-hero__content__location__slider__item__text {
              margin: 0 1rem; } }
          @media only screen and (max-width: 25em) {
            .destination-hero__content__location__slider__item__text {
              margin: 0; } }
        .destination-hero__content__location__slider__item__cta {
          padding-top: 4rem;
          width: max-content; }
          @media only screen and (max-width: 62.5em) {
            .destination-hero__content__location__slider__item__cta {
              padding-top: 6rem; } }
          @media only screen and (max-width: 50em) {
            .destination-hero__content__location__slider__item__cta svg {
              display: none; } }
        .destination-hero__content__location__slider__arrow-left {
          position: absolute;
          bottom: -4rem;
          right: 12rem;
          z-index: 10; }
          @media only screen and (max-width: 62.5em) {
            .destination-hero__content__location__slider__arrow-left {
              top: 5%;
              left: 0rem; } }
        .destination-hero__content__location__slider__arrow-right {
          position: absolute;
          bottom: -4rem;
          right: 5rem;
          z-index: 10; }
          @media only screen and (max-width: 62.5em) {
            .destination-hero__content__location__slider__arrow-right {
              top: 5%;
              right: 0rem; } }
      .destination-hero__content__location__progress {
        display: flex;
        width: 30rem;
        align-items: center; }
        @media only screen and (max-width: 62.5em) {
          .destination-hero__content__location__progress {
            display: none; } }
        .destination-hero__content__location__progress__bar {
          width: 20rem;
          height: 2px;
          background: rgba(255, 255, 255, 0.5); }
          .destination-hero__content__location__progress__bar .progress {
            width: 0%;
            height: 2px;
            background: #fff; }
        .destination-hero__content__location__progress__odometer {
          display: inline-block;
          font-size: 1.8rem;
          text-align: center;
          margin-right: 1rem; }
          .destination-hero__content__location__progress__odometer .odometer-digit {
            padding-right: 0.4rem !important; }
        .destination-hero__content__location__progress__odometer-top {
          display: inline-block;
          text-align: center;
          font-size: 1.8rem;
          margin-left: 1.3rem;
          letter-spacing: 0.4rem; }

.destination-main {
  display: grid;
  grid-template-columns: [full-start] minmax(6rem, 1fr) [center-start] repeat(8, [col-start] minmax(min-content, 14rem) [col-end]) [center-end] minmax(6rem, 1fr) [full-end];
  overflow: hidden;
  position: relative;
  margin-bottom: 5rem; }
  @media only screen and (max-width: 37.5em) {
    .destination-main {
      grid-template-columns: [full-start] minmax(3rem, 1fr) [center-start] repeat(8, [col-start] minmax(min-content, 14rem) [col-end]) [center-end] minmax(3rem, 1fr) [full-end]; } }
  .destination-main::before {
    content: "";
    position: absolute;
    height: 100%;
    width: 100%;
    background-image: linear-gradient(to right, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.8)), linear-gradient(to top, rgba(255, 255, 255, 0.8), rgba(255, 255, 255, 0.8)), linear-gradient(to top, white 30%, transparent), url(../png/topo-1.png);
    opacity: 0.35;
    top: 0;
    left: 0; }
  .destination-main__bg {
    z-index: 0;
    grid-column: col-end 4 / -1;
    grid-row: 1 / -1;
    position: relative; }
    .destination-main__bg img {
      position: absolute;
      top: 0;
      left: 10%;
      max-height: 100rem;
      max-width: 80rem; }
    @media only screen and (max-width: 90em) {
      .destination-main__bg img {
        max-height: 80rem; } }
    @media only screen and (max-width: 50em) {
      .destination-main__bg img {
        display: none; } }
  .destination-main__intro {
    grid-column: center-start / center-end;
    grid-row: 1 / span 1;
    z-index: 10;
    display: grid;
    grid-template-columns: 1fr;
    column-gap: 8rem;
    padding-bottom: 8rem;
    font-size: 1.6rem; }
    @media only screen and (max-width: 50em) {
      .destination-main__intro {
        row-gap: 4rem;
        padding-bottom: 4rem; } }
    .destination-main__intro__description {
      margin-top: 8rem; }
      .destination-main__intro__description__title {
        font-size: 3.5rem;
        line-height: 4.3rem;
        color: #142838;
        letter-spacing: 0.2rem;
        font-weight: 700;
        margin-bottom: 2rem;
        width: 70%; }
        @media only screen and (max-width: 50em) {
          .destination-main__intro__description__title {
            text-align: center;
            width: 100%;
            font-size: 2.8rem;
            line-height: 3.5rem; } }
      .destination-main__intro__description__text {
        display: grid;
        grid-template-columns: 70% 1fr;
        gap: 2rem; }
        @media only screen and (max-width: 50em) {
          .destination-main__intro__description__text {
            grid-template-columns: 1fr;
            gap: 1rem;
            margin-bottom: 2rem; } }
        .destination-main__intro__description__text__content {
          line-height: 3.2rem;
          margin-bottom: 5rem; }
          @media only screen and (max-width: 50em) {
            .destination-main__intro__description__text__content {
              line-height: 3rem;
              text-align: center;
              width: 100%;
              margin-bottom: 0; } }
        .destination-main__intro__description__text__play {
          display: flex;
          align-items: start;
          justify-content: center; }
      .destination-main__intro__description__highlights-title {
        font-size: 1.4rem;
        text-transform: uppercase;
        letter-spacing: 0.2rem;
        font-weight: 600;
        color: #142838;
        margin-bottom: 2rem; }
        @media only screen and (max-width: 50em) {
          .destination-main__intro__description__highlights-title {
            text-align: center; } }
      .destination-main__intro__description__highlights {
        list-style: none;
        display: grid;
        grid-template-columns: 1fr 1fr;
        column-gap: 2rem; }
        @media only screen and (max-width: 50em) {
          .destination-main__intro__description__highlights {
            max-width: 85%;
            margin: 0 auto; } }
        @media only screen and (max-width: 37.5em) {
          .destination-main__intro__description__highlights {
            grid-template-columns: 1fr; } }
        .destination-main__intro__description__highlights li {
          display: grid;
          grid-template-columns: min-content 1fr;
          margin-bottom: 1.2rem; }
          .destination-main__intro__description__highlights li svg {
            align-self: flex-start;
            margin-right: 0.7rem;
            height: 2.2rem;
            width: 2.2rem;
            fill: #142838 !important;
            color: #142838 !important;
            stroke-width: 3; }
          .destination-main__intro__description__highlights li span p {
            font-size: 1.4rem;
            line-height: 2rem; }
    .destination-main__intro__lists {
      display: grid;
      grid-template-columns: 1fr;
      row-gap: 3rem; }
      @media only screen and (max-width: 50em) {
        .destination-main__intro__lists {
          grid-template-columns: 1fr 1fr; } }
      .destination-main__intro__lists__locations {
        display: none; }
        @media only screen and (max-width: 50em) {
          .destination-main__intro__lists__locations {
            display: block; } }
        .destination-main__intro__lists__locations__title {
          text-transform: uppercase;
          letter-spacing: 0.2rem;
          font-weight: 700;
          margin-bottom: 2rem;
          color: #142838; }
        .destination-main__intro__lists__locations__list {
          list-style: none;
          color: #919598;
          margin-bottom: 2rem; }
          .destination-main__intro__lists__locations__list li:not(:last-child) {
            margin-bottom: 1rem; }
          .destination-main__intro__lists__locations__list li a {
            padding: 1rem 0;
            text-decoration: none;
            color: currentColor;
            transition: all 0.3s; }
            .destination-main__intro__lists__locations__list li a:hover {
              color: #40739c; }
      .destination-main__intro__lists__experiences__title {
        text-transform: uppercase;
        letter-spacing: 0.2rem;
        font-weight: 700;
        margin-bottom: 2rem;
        color: #142838; }
      .destination-main__intro__lists__experiences__list {
        list-style: none;
        color: #919598;
        margin-bottom: 2rem; }
        .destination-main__intro__lists__experiences__list li:not(:last-child) {
          margin-bottom: 1rem; }
        .destination-main__intro__lists__experiences__list li a {
          padding: 1rem 0;
          text-decoration: none;
          color: currentColor; }
          .destination-main__intro__lists__experiences__list li a:hover {
            color: #9ea0a4; }
  .destination-main__packages {
    grid-column: 1 / -1;
    grid-row: 2 / span 1;
    z-index: 10; }
    .destination-main__packages__header {
      display: grid;
      grid-template-columns: [full-start] minmax(6rem, 1fr) [center-start] repeat(8, [col-start] minmax(min-content, 14rem) [col-end]) [center-end] minmax(6rem, 1fr) [full-end];
      margin-bottom: 6rem; }
      @media only screen and (max-width: 37.5em) {
        .destination-main__packages__header {
          grid-template-columns: [full-start] minmax(3rem, 1fr) [center-start] repeat(8, [col-start] minmax(min-content, 14rem) [col-end]) [center-end] minmax(3rem, 1fr) [full-end]; } }
      @media only screen and (max-width: 37.5em) {
        .destination-main__packages__header__title {
          margin-bottom: 2rem; } }
      .destination-main__packages__header__sub-text {
        grid-column: center-start / center-end;
        font-size: 1.6rem;
        text-align: center; }
    .destination-main__packages__best-selling {
      display: flex;
      justify-content: center;
      margin-bottom: 2rem; }
      .destination-main__packages__best-selling__slider {
        max-width: 140rem;
        width: 100%;
        margin: 0 6rem;
        position: relative; }
        .destination-main__packages__best-selling__slider__btn-left {
          transform: translateY(-50%);
          position: absolute;
          top: 50%;
          left: 8vw;
          z-index: 20; }
          @media only screen and (max-width: 62.5em) {
            .destination-main__packages__best-selling__slider__btn-left {
              left: 2vw; } }
          @media only screen and (max-width: 50em) {
            .destination-main__packages__best-selling__slider__btn-left {
              left: 0vw;
              transform: translateY(-50%) scale(0.75); } }
        .destination-main__packages__best-selling__slider__btn-right {
          transform: translateY(-50%);
          position: absolute;
          top: 50%;
          right: 8vw;
          z-index: 20; }
          @media only screen and (max-width: 62.5em) {
            .destination-main__packages__best-selling__slider__btn-right {
              right: 2vw; } }
          @media only screen and (max-width: 50em) {
            .destination-main__packages__best-selling__slider__btn-right {
              right: 0vw;
              transform: translateY(-50%) scale(0.75); } }
        .destination-main__packages__best-selling__slider .slick-slide {
          margin: 0 1.5rem; }
          @media only screen and (max-width: 50em) {
            .destination-main__packages__best-selling__slider .slick-slide {
              margin: 0 0.75rem; } }
        .destination-main__packages__best-selling__slider .slick-list {
          padding: 0 25% !important; }
          @media only screen and (max-width: 62.5em) {
            .destination-main__packages__best-selling__slider .slick-list {
              padding: 0 15% !important; } }
          @media only screen and (max-width: 37.5em) {
            .destination-main__packages__best-selling__slider .slick-list {
              padding: 0 10% !important; } }
        .destination-main__packages__best-selling__slider .slick-current .wide-slider-card {
          pointer-events: inherit; }
        .destination-main__packages__best-selling__slider .slick-current .wide-slider-card__content {
          opacity: 1; }
        .destination-main__packages__best-selling__slider .slick-current .wide-slider-card::after {
          opacity: 0; }
  .destination-main__experiences-title {
    margin-top: 4rem;
    margin-bottom: 2rem; }
  .destination-main__experiences-sub-text {
    grid-column: center-start / center-end;
    text-align: center;
    font-size: 1.6rem;
    margin-bottom: 2rem; }
  .destination-main__experiences {
    grid-column: center-start / center-end;
    height: 100%;
    display: flex;
    justify-content: center;
    flex-wrap: wrap; }
  .destination-main__lengths {
    margin-top: 4rem;
    grid-column: center-start / center-end;
    display: flex;
    justify-content: center;
    flex-wrap: wrap; }

.destination-secondary {
  display: grid;
  grid-template-columns: [full-start] minmax(6rem, 1fr) [center-start] repeat(8, [col-start] minmax(min-content, 14rem) [col-end]) [center-end] minmax(6rem, 1fr) [full-end];
  position: relative;
  grid-column: 1 / -1;
  margin-bottom: 6rem;
  outline: none; }
  .destination-secondary__header {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: [full-start] minmax(6rem, 1fr) [center-start] repeat(8, [col-start] minmax(min-content, 14rem) [col-end]) [center-end] minmax(6rem, 1fr) [full-end];
    margin-bottom: 3rem; }
    @media only screen and (max-width: 37.5em) {
      .destination-secondary__header {
        grid-template-columns: [full-start] minmax(3rem, 1fr) [center-start] repeat(8, [col-start] minmax(min-content, 14rem) [col-end]) [center-end] minmax(3rem, 1fr) [full-end]; } }
    @media only screen and (max-width: 37.5em) {
      .destination-secondary__header__title {
        margin-bottom: 2rem; } }
    .destination-secondary__header__sub-text {
      grid-column: center-start / center-end;
      font-size: 1.6rem;
      text-align: center; }
      @media only screen and (max-width: 37.5em) {
        .destination-secondary__header__sub-text {
          margin-top: 1rem; } }
  .destination-secondary__best-selling {
    grid-column: 1 / -1;
    display: flex;
    justify-content: center;
    margin-bottom: 4rem; }
    @media only screen and (max-width: 37.5em) {
      .destination-secondary__best-selling {
        margin-bottom: 2rem; } }
    .destination-secondary__best-selling__slider {
      width: 100%;
      max-width: 140rem;
      z-index: 10;
      padding: 0 9rem; }
      @media only screen and (max-width: 37.5em) {
        .destination-secondary__best-selling__slider {
          padding: 0rem; } }
      .destination-secondary__best-selling__slider .slick-slide {
        margin: 1.5rem;
        min-width: 0; }
        @media only screen and (max-width: 62.5em) {
          .destination-secondary__best-selling__slider .slick-slide {
            margin: .5rem; } }
  .destination-secondary__btn {
    grid-column: 1 / -1;
    display: flex;
    justify-content: center;
    flex-wrap: wrap; }

.destination-accommodations {
  display: grid;
  grid-template-columns: [full-start] minmax(6rem, 1fr) [center-start] repeat(8, [col-start] minmax(min-content, 14rem) [col-end]) [center-end] minmax(6rem, 1fr) [full-end];
  position: relative;
  grid-column: 1 / -1;
  margin-bottom: 6rem;
  outline: none; }
  @media only screen and (max-width: 37.5em) {
    .destination-accommodations {
      grid-template-columns: [full-start] minmax(3rem, 1fr) [center-start] repeat(8, [col-start] minmax(min-content, 14rem) [col-end]) [center-end] minmax(3rem, 1fr) [full-end]; } }
  .destination-accommodations__header {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: [full-start] minmax(6rem, 1fr) [center-start] repeat(8, [col-start] minmax(min-content, 14rem) [col-end]) [center-end] minmax(6rem, 1fr) [full-end];
    margin-bottom: 6rem; }
    @media only screen and (max-width: 37.5em) {
      .destination-accommodations__header {
        grid-template-columns: [full-start] minmax(3rem, 1fr) [center-start] repeat(8, [col-start] minmax(min-content, 14rem) [col-end]) [center-end] minmax(3rem, 1fr) [full-end]; } }
    @media only screen and (max-width: 37.5em) {
      .destination-accommodations__header__title {
        margin-bottom: 2rem; } }
    .destination-accommodations__header__sub-text {
      grid-column: center-start / center-end;
      font-size: 1.6rem;
      text-align: center; }
  .destination-accommodations__group {
    grid-column: center-start / center-end;
    grid-row: 2 / span 1;
    display: flex;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    justify-items: center;
    align-items: start; }
    @media only screen and (max-width: 62.5em) {
      .destination-accommodations__group {
        grid-template-columns: 1fr; } }
  .destination-accommodations__btn {
    grid-column: 1 / -1;
    display: flex;
    justify-content: center; }

.destination-guides {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  align-items: center; }
  .destination-guides__header {
    margin-bottom: 0rem; }
  .destination-guides__sub-text {
    text-align: center;
    font-size: 1.6rem;
    margin-top: 1rem;
    margin-bottom: 4rem;
    max-width: calc(112rem + 12rem);
    padding: 0 6rem; }
    @media only screen and (max-width: 37.5em) {
      .destination-guides__sub-text {
        padding: 0 3rem; } }
  .destination-guides__grid-container {
    max-width: 140rem;
    padding: 0 6rem;
    margin-bottom: 6rem; }
    @media only screen and (max-width: 37.5em) {
      .destination-guides__grid-container {
        padding: 0 3rem; } }
    .destination-guides__grid-container__grid {
      width: 100%;
      display: grid;
      grid-template-columns: repeat(3, 1fr); }
      @media only screen and (max-width: 50em) {
        .destination-guides__grid-container__grid {
          grid-template-columns: repeat(2, 1fr); } }
      @media only screen and (max-width: 37.5em) {
        .destination-guides__grid-container__grid {
          grid-template-columns: 1fr;
          row-gap: 1rem; } }
      .destination-guides__grid-container__grid__item {
        display: grid;
        height: 100%;
        width: 100%;
        height: 40rem;
        cursor: pointer;
        text-decoration: none; }
        .destination-guides__grid-container__grid__item img {
          grid-column: 1 / -1;
          grid-row: 1 / -1;
          z-index: 0;
          object-fit: cover;
          height: 100%;
          width: 100%; }
        .destination-guides__grid-container__grid__item__content {
          grid-column: 1 / -1;
          grid-row: 1 / -1;
          z-index: 2;
          display: grid;
          grid-template-rows: 1fr min-content min-content;
          background-image: linear-gradient(to top, rgba(30, 30, 30, 0.8), rgba(30, 30, 30, 0.1) 60%), linear-gradient(to bottom, rgba(30, 30, 30, 0.6), rgba(30, 30, 30, 0.1) 20%);
          color: rgba(255, 255, 255, 0.9);
          padding: 2rem 3rem; }
          .destination-guides__grid-container__grid__item__content__category {
            font-size: 1.8rem;
            text-transform: uppercase;
            letter-spacing: .3rem;
            font-weight: 600;
            margin-bottom: 3rem;
            padding: 1rem 0;
            color: currentColor; }
            @media only screen and (max-width: 50em) {
              .destination-guides__grid-container__grid__item__content__category {
                margin-bottom: 1rem; } }
          .destination-guides__grid-container__grid__item__content__title {
            font-size: 3.2rem;
            font-family: "Playfair Display", serif;
            letter-spacing: .3rem;
            font-weight: 400;
            line-height: 4rem;
            color: currentColor; }
          .destination-guides__grid-container__grid__item__content__link {
            font-size: 1.8rem;
            text-transform: uppercase;
            letter-spacing: .3rem;
            font-weight: 600;
            align-self: end;
            color: currentColor; }
  .destination-guides__btn {
    grid-column: 1 / -1;
    display: flex;
    justify-content: center;
    margin-bottom: 4rem; }

.destination-testimonials {
  width: 100%;
  display: flex;
  position: relative;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  background-color: #f8f8f8; }
  .destination-testimonials__header {
    max-width: calc(112rem + 12rem);
    padding: 0 6rem; }
    @media only screen and (max-width: 37.5em) {
      .destination-testimonials__header {
        padding: 0 3rem; } }
  .destination-testimonials__slider {
    width: 100%;
    max-width: 114rem;
    position: relative;
    margin-top: 6rem;
    margin-bottom: 6rem;
    padding: 0 9rem; }
    @media only screen and (max-width: 37.5em) {
      .destination-testimonials__slider {
        padding: 0rem;
        margin-top: 3rem; } }
    .destination-testimonials__slider__btn--left {
      transform: translateY(-50%);
      position: absolute;
      z-index: 10;
      top: 40%;
      left: 1.5rem; }
    .destination-testimonials__slider__btn--right {
      transform: translateY(-50%);
      position: absolute;
      z-index: 10;
      top: 40%;
      right: 1.5rem; }

.destination-testimonial {
  display: flex !important;
  width: 100%; }
  .destination-testimonial__content {
    padding: 0rem 3rem;
    display: flex;
    flex-direction: column;
    width: 60%;
    justify-content: center; }
    @media only screen and (max-width: 37.5em) {
      .destination-testimonial__content {
        width: 100%;
        margin-bottom: 2rem; } }
    .destination-testimonial__content__snippet {
      font-size: 2.2rem;
      line-height: 2.8rem;
      color: #142838;
      margin-bottom: 2.5rem;
      padding-right: 4rem; }
      @media only screen and (max-width: 62.5em) {
        .destination-testimonial__content__snippet {
          font-size: 2.4rem;
          line-height: 3rem;
          padding-right: 2rem; } }
      @media only screen and (max-width: 37.5em) {
        .destination-testimonial__content__snippet {
          padding-right: 0;
          text-align: center; } }
    .destination-testimonial__content__person {
      font-size: 1.8rem;
      font-weight: 600;
      letter-spacing: .1rem;
      text-transform: uppercase; }
      @media only screen and (max-width: 37.5em) {
        .destination-testimonial__content__person {
          text-align: center; } }
  .destination-testimonial__image-area {
    width: 40%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-right: 3rem; }
    @media only screen and (max-width: 37.5em) {
      .destination-testimonial__image-area {
        display: none; } }
    .destination-testimonial__image-area img {
      object-fit: contain;
      width: 100%;
      height: 100%; }

.destination-faq {
  display: grid;
  grid-template-columns: [full-start] minmax(6rem, 1fr) [center-start] repeat(8, [col-start] minmax(min-content, 14rem) [col-end]) [center-end] minmax(6rem, 1fr) [full-end];
  position: relative;
  grid-column: 1 / -1;
  padding-bottom: 6rem; }
  @media only screen and (max-width: 37.5em) {
    .destination-faq {
      grid-template-columns: [full-start] minmax(3rem, 1fr) [center-start] repeat(8, [col-start] minmax(min-content, 14rem) [col-end]) [center-end] minmax(3rem, 1fr) [full-end]; } }
  .destination-faq__grid-container {
    grid-column: center-start / center-end;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 6rem 0; }
    @media only screen and (max-width: 37.5em) {
      .destination-faq__grid-container {
        margin: 4rem 2rem; } }
    .destination-faq__grid-container__faq {
      width: 80%; }
      @media only screen and (max-width: 50em) {
        .destination-faq__grid-container__faq {
          width: 100%; } }
      .destination-faq__grid-container__faq__question {
        font-size: 2rem;
        line-height: 2.6rem;
        color: #142838;
        position: relative;
        margin-bottom: 2.5rem;
        display: flex;
        justify-content: space-between;
        align-items: center;
        cursor: pointer;
        transition: all .3s; }
        .destination-faq__grid-container__faq__question h3 {
          letter-spacing: 0 !important;
          font-weight: 600 !important; }
        @media only screen and (max-width: 50em) {
          .destination-faq__grid-container__faq__question {
            font-size: 1.8rem;
            line-height: 2.2rem; } }
        .destination-faq__grid-container__faq__question::after {
          content: "";
          position: absolute;
          width: 100%;
          height: 1px;
          background-color: #e6e6e6;
          bottom: -1rem;
          left: 0; }
        .destination-faq__grid-container__faq__question:hover {
          color: #40739c; }
        .destination-faq__grid-container__faq__question--active {
          color: #40739c; }
      .destination-faq__grid-container__faq__answer {
        font-size: 1.6rem;
        margin-bottom: 3rem; }

.plus-minus-toggle {
  cursor: pointer;
  height: 20px;
  position: relative;
  width: 20px;
  transform: translateY(1rem);
  margin-left: 2rem; }
  .plus-minus-toggle:before, .plus-minus-toggle:after {
    background: currentColor;
    content: '';
    height: 4px;
    left: 0;
    position: absolute;
    top: 0;
    width: 20px;
    transition: transform .3s ease; }
  @media only screen and (max-width: 50em) {
    .plus-minus-toggle {
      height: 12px;
      position: relative;
      width: 12px; }
      .plus-minus-toggle:before, .plus-minus-toggle:after {
        background: currentColor;
        content: '';
        height: 2px;
        left: 0;
        position: absolute;
        top: 0;
        width: 12px;
        transition: transform .3s ease; } }
  .plus-minus-toggle:after {
    transform-origin: center; }
  .plus-minus-toggle.plus-collapsed:after {
    transform: rotate(90deg); }
  .plus-minus-toggle.plus-collapsed:before {
    transform: rotate(180deg); }

.home-hero {
  display: flex;
  width: 100%;
  height: 100vh;
  position: relative;
  flex-direction: column;
  align-items: center;
  min-height: 80rem;
  position: relative; }
  @media only screen and (max-width: 62.5em) {
    .home-hero {
      min-height: 60rem;
      padding-bottom: 12rem; } }
  .home-hero__bg {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    height: 100%; }
    .home-hero__bg .slick-list {
      height: 100% !important; }
    .home-hero__bg .slick-track {
      height: 100% !important; }
    .home-hero__bg .slick-slide div {
      height: 100% !important; }
    .home-hero__bg .flickity-viewport {
      height: 100% !important; }
    .home-hero__bg__slide {
      height: 100%;
      width: 100%; }
      .home-hero__bg__slide__image-area {
        height: 100%;
        width: 100%;
        position: relative !important; }
        .home-hero__bg__slide__image-area img {
          background-position: center center;
          background-repeat: no-repeat;
          object-fit: cover;
          height: 100%;
          width: 100%;
          z-index: 0;
          opacity: 0;
          transition: opacity 1s; }
          .home-hero__bg__slide__image-area img.flickity-lazyloaded, .home-hero__bg__slide__image-area img.flickity-lazyerror {
            opacity: 1; }
            .home-hero__bg__slide__image-area img.flickity-lazyloaded + div, .home-hero__bg__slide__image-area img.flickity-lazyerror + div {
              opacity: 1;
              transform: translateX(0); }
        .home-hero__bg__slide__image-area__location {
          position: absolute;
          top: 92%;
          right: 20vw;
          z-index: 900;
          font-size: 1.2rem;
          text-transform: uppercase;
          font-weight: 300;
          letter-spacing: 0.2rem;
          color: rgba(255, 255, 255, 0.85);
          opacity: 0;
          transition: all 1s;
          transform: translateX(5rem); }
          @media only screen and (max-width: 62.5em) {
            .home-hero__bg__slide__image-area__location {
              display: none; } }
        .home-hero__bg__slide__image-area:after {
          content: "";
          height: 100%;
          width: 100%;
          background-image: linear-gradient(to right, rgba(30, 30, 30, 0.4) 10%, transparent), linear-gradient(to top, rgba(30, 30, 30, 0.2), rgba(30, 30, 30, 0.2)), linear-gradient(to top, rgba(30, 30, 30, 0.7), transparent 60%);
          position: absolute;
          top: 0;
          left: 0;
          z-index: 2; }
  .home-hero__content {
    z-index: 5;
    height: 100%;
    margin-top: 15rem;
    margin-bottom: 6rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 100%;
    max-width: 135rem;
    padding: 0 6rem; }
    @media only screen and (max-width: 37.5em) {
      .home-hero__content {
        padding: 0 3rem; } }
    @media only screen and (max-width: 62.5em) {
      .home-hero__content {
        align-items: center;
        margin-top: 12rem;
        margin-bottom: 0rem; } }
    .home-hero__content__title-group {
      display: flex;
      flex-direction: column;
      max-width: 55rem;
      color: #fff;
      position: relative;
      margin-bottom: 5rem; }
      @media only screen and (max-width: 62.5em) {
        .home-hero__content__title-group {
          align-items: center;
          text-align: center; } }
      .home-hero__content__title-group__title {
        font-size: 6rem;
        line-height: 6.5rem;
        font-family: "Playfair Display", serif;
        letter-spacing: 0.2rem;
        font-weight: 300;
        margin-bottom: 2.5rem; }
        @media only screen and (max-width: 37.5em) {
          .home-hero__content__title-group__title {
            font-size: 4rem;
            line-height: 4.5rem;
            letter-spacing: 0.1rem; } }
        .home-hero__content__title-group__title .trademark {
          position: relative;
          white-space: nowrap;
          display: inline-block; }
          .home-hero__content__title-group__title .trademark span {
            vertical-align: text-top;
            transform: translateY(-0.5rem);
            margin-left: .5rem;
            font-size: 1.6rem;
            line-height: 1.6rem; }
      .home-hero__content__title-group__subtitle {
        font-size: 2.5rem;
        font-weight: 400;
        font-family: "Playfair Display", serif;
        letter-spacing: 0.1rem; }
        @media only screen and (max-width: 37.5em) {
          .home-hero__content__title-group__subtitle {
            font-size: 2rem;
            line-height: 2.5rem;
            letter-spacing: 0.1rem; } }
    .home-hero__content__search-area {
      width: 100%;
      height: min-content; }
  .home-hero__bottom {
    width: 100%;
    height: 10rem;
    max-width: 135rem;
    margin-bottom: 4rem;
    z-index: 10;
    padding: 0 6rem;
    display: flex;
    justify-content: space-between;
    align-items: center; }
    @media only screen and (max-width: 37.5em) {
      .home-hero__bottom {
        padding: 0 3rem; } }
    @media only screen and (max-width: 62.5em) {
      .home-hero__bottom {
        justify-content: center; } }
    .home-hero__bottom__slide-nav {
      width: 24rem;
      position: relative;
      margin-right: 8rem; }
      @media only screen and (max-width: 62.5em) {
        .home-hero__bottom__slide-nav {
          display: none; } }
      .home-hero__bottom__slide-nav .slick-list {
        height: 100% !important; }
      .home-hero__bottom__slide-nav .slick-track {
        height: 100% !important; }
      .home-hero__bottom__slide-nav .slick-slide div {
        height: 100% !important; }
      .home-hero__bottom__slide-nav__slide {
        display: flex !important;
        justify-content: center;
        align-items: center;
        height: 100%;
        width: 100%;
        font-size: 1.2rem;
        text-transform: uppercase;
        font-weight: 300;
        letter-spacing: 0.2rem;
        color: rgba(255, 255, 255, 0.85); }
      .home-hero__bottom__slide-nav__arrow-left {
        position: absolute;
        transform: translateY(50%);
        bottom: 50%;
        right: -2rem;
        z-index: 10;
        margin: 0; }
      .home-hero__bottom__slide-nav__arrow-right {
        position: absolute;
        transform: translateY(50%);
        bottom: 50%;
        right: -6rem;
        z-index: 10;
        margin: 0; }
    .home-hero__bottom button {
      opacity: 0.8; }

.home-search {
  width: 38rem;
  height: min-content;
  display: flex;
  padding: 0.5rem 1rem;
  padding-left: 3rem;
  background-color: transparent;
  border: 2px solid #d9a402;
  border-radius: 10rem;
  transition: all 0.3s;
  align-items: center; }
  @media only screen and (max-width: 62.5em) {
    .home-search {
      display: none; } }
  .home-search.expand {
    width: 84rem;
    background-color: rgba(29, 34, 37, 0.3); }
    .home-search.expand .home-search__dates {
      animation: fadein 0.5s 0.2s;
      animation-fill-mode: both; }
  .home-search:hover {
    background-color: rgba(29, 34, 37, 0.3); }
  .home-search.active {
    background-color: rgba(29, 34, 37, 0.8);
    border: 2px solid #fff; }
  .home-search__destination {
    display: flex;
    position: relative; }
    @media only screen and (max-width: 62.5em) {
      .home-search__destination {
        height: 100vh; } }
    .home-search__destination__label {
      letter-spacing: 0.1rem;
      font-size: 1.6rem;
      line-height: 1.6rem;
      font-weight: 400;
      height: 4rem;
      color: #d9a402;
      align-items: center;
      text-transform: uppercase;
      display: none; }
      .home-search__destination__label.active {
        display: flex; }
      .home-search__destination__label svg {
        height: 2.8rem;
        width: 2.8rem;
        fill: #d9a402; }
    .home-search__destination__input {
      position: relative;
      color: rgba(255, 255, 255, 0.95);
      font-family: "Metropolis", sans-serif;
      letter-spacing: 0.1rem;
      font-size: 1.6rem;
      font-weight: 400;
      height: 4rem;
      padding: 0 1rem;
      background-color: transparent;
      border: none;
      transition: 0.3s ease-in-out;
      width: 28rem;
      box-sizing: border-box; }
      .home-search__destination__input::-webkit-input-placeholder {
        color: rgba(255, 255, 255, 0.85); }
      .home-search__destination__input:hover {
        cursor: pointer; }
        .home-search__destination__input:hover::-webkit-input-placeholder {
          color: white; }
      .home-search__destination__input:focus, .home-search__destination__input.open {
        outline: none;
        color: #fff; }
        .home-search__destination__input:focus::-webkit-input-placeholder, .home-search__destination__input.open::-webkit-input-placeholder {
          color: #fff; }
      @media only screen and (max-width: 62.5em) {
        .home-search__destination__input {
          color: #1e1e1e;
          height: 5rem;
          width: 100%;
          font-size: 2rem;
          margin: 1.5rem 3rem;
          margin-right: 1rem;
          padding: 0rem 3rem;
          border-radius: 7rem;
          background-color: #f8f8f8;
          border: 1px solid #c2c6c9; }
          .home-search__destination__input::-webkit-input-placeholder {
            color: #1e1e1e; }
          .home-search__destination__input:hover::-webkit-input-placeholder {
            color: #747474; }
          .home-search__destination__input:focus, .home-search__destination__input.open {
            color: #747474; }
            .home-search__destination__input:focus::-webkit-input-placeholder, .home-search__destination__input.open::-webkit-input-placeholder {
              color: #747474; } }
      @media only screen and (max-width: 37.5em) {
        .home-search__destination__input {
          font-size: 1.6rem; } }
      .home-search__destination__input.error {
        box-shadow: inset 0 -2px 0 #de5c52;
        color: #fff; }
        .home-search__destination__input.error::-webkit-input-placeholder {
          color: #fff; }
    .home-search__destination__clear {
      position: absolute;
      top: 50%;
      right: 0.5rem;
      background-color: #9ea0a4;
      border-radius: 8rem;
      border: none;
      height: 2.6rem;
      width: 2.6rem;
      display: flex;
      align-items: center;
      justify-content: center;
      transform: translateY(-55%);
      cursor: pointer;
      transition: all 0.2s;
      display: none; }
      @media only screen and (max-width: 62.5em) {
        .home-search__destination__clear {
          right: 13rem; } }
      .home-search__destination__clear svg {
        height: 1.2rem;
        width: 1.2rem;
        fill: #142838; }
      .home-search__destination__clear.active {
        display: flex; }
      .home-search__destination__clear:hover {
        background-color: #c2c6c9; }
    .home-search__destination__list {
      position: absolute;
      z-index: 15;
      left: 0;
      width: 100%;
      bottom: 100%;
      border-radius: 0.8rem;
      list-style: none;
      overflow: hidden;
      max-height: 0;
      transition: 0.3s ease-in-out;
      box-sizing: border-box; }
      .home-search__destination__list::-webkit-scrollbar-track {
        -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
        background-color: #1d2225; }
      .home-search__destination__list::-webkit-scrollbar {
        width: 4px;
        background-color: #1d2225; }
      .home-search__destination__list::-webkit-scrollbar-thumb {
        background-color: #747474; }
      .home-search__destination__list.open {
        max-height: 24rem;
        overflow: auto; }
      @media only screen and (max-width: 62.5em) {
        .home-search__destination__list {
          top: 8.1rem;
          background-color: #fff;
          padding-top: 1rem;
          border-radius: 0rem; }
          .home-search__destination__list::-webkit-scrollbar-track {
            -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0);
            background-color: #fff; }
          .home-search__destination__list::-webkit-scrollbar {
            width: 4px;
            background-color: #1d2225; }
          .home-search__destination__list::-webkit-scrollbar-thumb {
            background-color: #747474; }
          .home-search__destination__list.open {
            max-height: 100%;
            height: 100%;
            overflow: scroll;
            padding-bottom: 18rem; } }
      .home-search__destination__list li {
        position: relative;
        height: 4rem;
        background-color: #1d2225;
        color: #fff;
        padding: 0 1rem;
        font-size: 1.4rem;
        letter-spacing: 0.1rem;
        display: flex;
        align-items: center;
        cursor: pointer;
        transition: background-color 0.3s;
        opacity: 1;
        justify-content: space-between; }
        .home-search__destination__list li.anywhere {
          border-bottom: 1px solid rgba(59, 59, 59, 0.5); }
          @media only screen and (max-width: 62.5em) {
            .home-search__destination__list li.anywhere {
              border-bottom: none; } }
        .home-search__destination__list li span {
          font-size: 1rem;
          text-transform: uppercase;
          letter-spacing: 0.1rem;
          color: #c2c6c9; }
        .home-search__destination__list li:hover {
          background-color: #353535;
          color: #d9a402; }
        .home-search__destination__list li.closed {
          max-height: 0;
          overflow: hidden;
          padding: 0;
          opacity: 0; }
        @media only screen and (max-width: 62.5em) {
          .home-search__destination__list li {
            background-color: transparent;
            color: #1e1e1e;
            padding: 2rem 3rem;
            font-size: 1.8rem; }
            .home-search__destination__list li:hover {
              background-color: #c2c6c9;
              color: #1e1e1e; } }
    .home-search__destination__input-group {
      display: flex;
      flex-direction: column;
      align-self: center;
      position: relative;
      width: min-content; }
      .home-search__destination__input-group__label {
        position: absolute;
        top: -1rem;
        left: 0;
        letter-spacing: 0.2rem;
        font-size: 1.1rem;
        text-transform: uppercase;
        color: #fff;
        margin-left: 1rem;
        transition: opacity 0.2s;
        white-space: nowrap; }
        .home-search__destination__input-group__label.open {
          opacity: 0; }
  .home-search__dates {
    display: none;
    opacity: 0;
    position: relative;
    margin-left: 3rem; }
    .home-search__dates.show {
      display: flex;
      opacity: 1; }
    .home-search__dates::before {
      content: "";
      position: absolute;
      left: -2rem;
      top: 50%;
      height: 50%;
      transform: translateY(-50%);
      background-color: #c2c6c9;
      width: 1px; }
    .home-search__dates__label {
      letter-spacing: 0.1rem;
      font-size: 1.6rem;
      line-height: 1.6rem;
      font-weight: 400;
      height: 4rem;
      color: #d9a402;
      align-items: center;
      text-transform: uppercase;
      display: none; }
      .home-search__dates__label.active {
        display: flex; }
      .home-search__dates__label svg {
        height: 2.2rem;
        width: 2.2rem;
        fill: #d9a402; }
    .home-search__dates__input {
      position: relative;
      color: rgba(255, 255, 255, 0.95);
      font-family: "Metropolis", sans-serif;
      letter-spacing: 0.1rem;
      font-size: 1.5rem;
      font-weight: 400;
      height: 4rem;
      padding: 0 1rem;
      background-color: transparent;
      transition: 0.3s ease-in-out;
      width: 28rem;
      display: flex;
      align-items: center;
      box-sizing: border-box; }
      .home-search__dates__input:hover {
        cursor: pointer; }
        .home-search__dates__input:hover::-webkit-input-placeholder {
          color: white; }
      .home-search__dates__input.open {
        outline: 0;
        color: #fff; }
        .home-search__dates__input.open::-webkit-input-placeholder {
          color: #fff; }
      @media only screen and (max-width: 62.5em) {
        .home-search__dates__input {
          color: #1e1e1e;
          height: 5rem;
          width: 100%;
          font-size: 2rem;
          margin: 1.5rem 3rem;
          margin-left: 1rem;
          padding: 0rem 3rem;
          border-radius: 7rem;
          background-color: #f8f8f8;
          border: 1px solid #c2c6c9; }
          .home-search__dates__input::-webkit-input-placeholder {
            color: #1e1e1e; }
          .home-search__dates__input:hover::-webkit-input-placeholder {
            color: #747474; }
          .home-search__dates__input:focus, .home-search__dates__input.open {
            color: #747474; }
            .home-search__dates__input:focus::-webkit-input-placeholder, .home-search__dates__input.open::-webkit-input-placeholder {
              color: #747474; } }
      @media only screen and (max-width: 37.5em) {
        .home-search__dates__input {
          font-size: 1.6rem; } }
    .home-search__dates__list {
      position: absolute;
      z-index: 15;
      left: 0;
      width: 100%;
      bottom: 100%;
      list-style: none;
      overflow: hidden;
      max-height: 0;
      transition: 0.3s ease-in-out;
      background-color: #1d2225;
      border-radius: 0.8rem;
      display: flex;
      flex-direction: column; }
      .home-search__dates__list.open {
        max-height: 24rem; }
      @media only screen and (max-width: 62.5em) {
        .home-search__dates__list {
          top: 8.1rem;
          border-radius: 0rem;
          background-color: #fff; }
          .home-search__dates__list::-webkit-scrollbar-track {
            -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0);
            background-color: #fff; }
          .home-search__dates__list::-webkit-scrollbar {
            width: 4px;
            background-color: #000000; }
          .home-search__dates__list::-webkit-scrollbar-thumb {
            background-color: #747474; }
          .home-search__dates__list.open {
            max-height: 100%;
            height: 100%;
            overflow: scroll;
            padding-bottom: 18rem; } }
      .home-search__dates__list__years {
        display: grid;
        grid-template-columns: 1fr 1fr;
        justify-items: center; }
        @media only screen and (max-width: 62.5em) {
          .home-search__dates__list__years {
            border-bottom: 1px solid #c2c6c9; } }
        .home-search__dates__list__years__year {
          font-size: 1.8rem;
          color: #d9a402;
          letter-spacing: 0.2rem;
          width: 100%;
          text-align: center;
          padding-top: 0.5rem;
          padding-bottom: 0.5rem;
          cursor: pointer;
          position: relative;
          transition: all 0.2s; }
          .home-search__dates__list__years__year::after {
            content: "";
            position: absolute;
            bottom: 0.4rem;
            left: 50%;
            transform: translateX(-50%);
            width: 6rem;
            height: 1px;
            background-color: #d9a402;
            opacity: 0; }
          .home-search__dates__list__years__year:hover {
            background-color: #353535; }
          .home-search__dates__list__years__year.selected {
            font-weight: 500;
            color: #fff;
            position: relative; }
            .home-search__dates__list__years__year.selected::after {
              opacity: 1; }
            .home-search__dates__list__years__year.selected:hover {
              background-color: transparent; }
          @media only screen and (max-width: 62.5em) {
            .home-search__dates__list__years__year {
              font-size: 2rem;
              color: #919598;
              letter-spacing: 0.2rem;
              font-weight: 500;
              width: 100%;
              text-align: center;
              padding-top: 1.5rem;
              padding-bottom: 1.5rem;
              cursor: pointer;
              position: relative;
              transition: all 0.2s; }
              .home-search__dates__list__years__year::after {
                content: "";
                display: none; }
              .home-search__dates__list__years__year:not(:last-child)::after {
                display: inline-block;
                height: 3rem;
                width: 1px;
                background-color: #c2c6c9;
                position: absolute;
                left: auto;
                right: 0;
                top: 0;
                bottom: auto;
                transform: translateY(50%) translateX(0%);
                opacity: 1; }
              .home-search__dates__list__years__year:hover {
                background-color: #fff; }
              .home-search__dates__list__years__year.selected {
                font-weight: 700;
                color: #142838;
                position: relative; }
                .home-search__dates__list__years__year.selected::after {
                  opacity: 1; }
                .home-search__dates__list__years__year.selected:hover {
                  background-color: transparent; } }
      .home-search__dates__list__months {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        grid-template-rows: repeat(3, 1fr);
        justify-items: center;
        row-gap: 0.5rem;
        list-style: none;
        padding: 1rem; }
        @media only screen and (max-width: 62.5em) {
          .home-search__dates__list__months {
            grid-template-columns: repeat(3, 1fr);
            grid-template-rows: repeat(4, 1fr);
            column-gap: 3rem;
            padding: 1rem 3rem; } }
        .home-search__dates__list__months li {
          font-size: 1.5rem;
          color: #fff;
          letter-spacing: 0.1rem;
          width: 5rem;
          padding: 0.5rem 1rem;
          margin: 0.5rem;
          border: 1px solid #d9a402;
          border-radius: 3rem;
          box-sizing: border-box;
          display: flex;
          align-content: center;
          justify-content: center;
          background-color: transparent;
          transition: all 0.2s;
          cursor: pointer; }
          .home-search__dates__list__months li:hover {
            background-color: #d9a402;
            color: #1e1e1e;
            font-weight: 500; }
          .home-search__dates__list__months li.selected {
            background-color: #d9a402;
            color: #1e1e1e;
            font-weight: 500; }
          .home-search__dates__list__months li.disabled {
            color: #9ea0a4;
            border: 1px solid #9ea0a4;
            cursor: default;
            font-weight: 500; }
            .home-search__dates__list__months li.disabled:hover {
              background-color: transparent;
              color: #9ea0a4; }
          @media only screen and (max-width: 62.5em) {
            .home-search__dates__list__months li {
              font-size: 1.8rem;
              font-weight: 700;
              color: #142838;
              letter-spacing: 0.1rem;
              width: 100%;
              max-width: 15rem;
              padding: 1.5rem 0rem;
              margin: 1rem;
              border: 2px solid #142838;
              border-radius: 3rem;
              box-sizing: border-box;
              display: flex;
              align-content: center;
              justify-content: center;
              background-color: transparent;
              transition: all 0.2s;
              cursor: pointer; }
              .home-search__dates__list__months li:hover {
                background-color: #d9a402;
                color: #1e1e1e;
                font-weight: 500; }
              .home-search__dates__list__months li.selected {
                background-color: #d9a402;
                color: #1e1e1e;
                font-weight: 500; }
              .home-search__dates__list__months li.disabled {
                color: #9ea0a4;
                border: 2px solid #9ea0a4;
                cursor: default;
                font-weight: 500; }
                .home-search__dates__list__months li.disabled:hover {
                  background-color: transparent;
                  color: #9ea0a4; } }
  .home-search__cta {
    width: min-content;
    height: min-content;
    margin-left: auto; }
    .home-search__cta__button {
      height: 5rem;
      width: 5rem;
      border-radius: 10rem;
      background-color: transparent;
      border: none;
      transform: translateX(0.5rem);
      display: flex;
      justify-content: center;
      align-items: center;
      cursor: pointer; }
      .home-search__cta__button .lds-ring {
        display: none; }
      .home-search__cta__button span {
        color: #fff;
        font-weight: 700;
        width: max-content;
        margin-left: 1.5rem;
        font-size: 1.4rem;
        letter-spacing: 0.2rem;
        text-transform: uppercase;
        display: none;
        opacity: 0; }
      .home-search__cta__button.loading .lds-ring {
        display: block; }
      .home-search__cta__button.loading svg {
        display: none !important; }
      .home-search__cta__button.active {
        width: 14rem;
        justify-content: space-between;
        background-color: #d9a402;
        transition: all 0.3s;
        padding-left: 0.5rem;
        padding-right: 1.5rem;
        transition-delay: 0.1s; }
        .home-search__cta__button.active span {
          display: flex;
          animation: fadein 0.5s forwards;
          animation-delay: 0.2s;
          transition: all 0.3s; }
        .home-search__cta__button.active:hover {
          background-color: #fbcf00;
          transition-delay: 0s; }
      .home-search__cta__button svg {
        height: 2rem;
        width: 2rem;
        fill: #fff; }

.home-search-mobile {
  display: none;
  width: 100%; }
  @media only screen and (max-width: 62.5em) {
    .home-search-mobile {
      display: flex;
      justify-content: center;
      padding-top: 8rem;
      padding-bottom: 5rem; } }
  .home-search-mobile button {
    height: min-content;
    display: flex;
    background-color: transparent;
    border: 2px solid #d9a402;
    border-radius: 10rem;
    width: max-content;
    justify-content: space-between;
    align-items: center;
    color: #fff;
    font-family: "Metropolis", sans-serif;
    letter-spacing: 0.1rem;
    font-size: 1.6rem;
    font-weight: 400;
    padding: 0 1rem;
    padding: 2rem;
    padding-left: 3rem;
    cursor: pointer; }
    .home-search-mobile button svg {
      margin-left: 3rem;
      height: 2rem;
      width: 2rem;
      fill: currentColor; }
    .home-search-mobile button:hover {
      transition: all 0.3s;
      color: #1e1e1e;
      background-color: #d9a402;
      font-weight: 600; }

.scroll-down {
  height: min-content;
  width: min-content;
  display: flex;
  align-items: center;
  cursor: pointer; }
  @media only screen and (max-width: 62.5em) {
    .scroll-down {
      flex-direction: column;
      align-items: center;
      width: 4rem; } }
  .scroll-down-text {
    color: rgba(255, 255, 255, 0.85);
    font-weight: 600;
    width: max-content;
    margin-left: 1.5rem;
    font-size: 1.2rem;
    letter-spacing: 0.1rem; }
    @media only screen and (max-width: 62.5em) {
      .scroll-down-text {
        margin-left: 0;
        display: none; } }
  .scroll-down-bar {
    background: rgba(255, 255, 255, 0.55);
    bottom: 0;
    display: inline-block;
    height: 3rem;
    left: 0;
    margin: 0 auto;
    overflow: hidden;
    right: 0;
    width: 2px; }
    @media only screen and (max-width: 62.5em) {
      .scroll-down-bar {
        margin-bottom: 0.5rem; } }
    .scroll-down-bar::before {
      animation: scrollDown 2s infinite;
      background: white;
      content: "";
      display: inline-block;
      height: 2rem;
      left: 0;
      top: 0;
      width: 2px;
      z-index: 1; }

@keyframes scrollDown {
  0% {
    transform: translate3d(0, -2rem, 0);
    animation-timing-function: ease-in; }
  25% {
    transform: translate3d(0, 1rem, 0); }
  50% {
    animation-timing-function: ease-out;
    transform: translate3d(0, 3rem, 0); }
  100% {
    transform: translate3d(0, 3rem, 0); } }

.home-intro {
  margin-top: 12rem;
  margin-bottom: 6rem;
  display: flex;
  flex-direction: column;
  max-width: calc(112rem + 12rem);
  padding: 0 6rem; }
  @media only screen and (max-width: 37.5em) {
    .home-intro {
      padding: 0 3rem; } }
  @media only screen and (max-width: 50em) {
    .home-intro {
      margin-top: 6rem;
      margin-bottom: 4rem; } }
  .home-intro__top {
    display: flex;
    margin-bottom: 10rem;
    position: relative; }
    @media only screen and (max-width: 50em) {
      .home-intro__top {
        margin-bottom: 6rem; } }
    .home-intro__top__image-area {
      width: 50%;
      display: flex; }
      @media only screen and (max-width: 50em) {
        .home-intro__top__image-area {
          display: none; } }
      .home-intro__top__image-area img {
        object-fit: contain;
        width: 100%;
        height: 100%;
        max-width: 40rem;
        max-height: 60rem;
        justify-self: start; }
    .home-intro__top__content {
      width: 50%;
      font-size: 3rem;
      display: flex;
      flex-direction: column;
      margin-left: 3rem;
      height: min-content;
      align-self: center; }
      @media only screen and (max-width: 50em) {
        .home-intro__top__content {
          width: 100%;
          margin-left: 0rem;
          text-align: center; } }
      .home-intro__top__content__title {
        font-size: 4.5rem;
        line-height: 5.2rem;
        letter-spacing: 0.1rem;
        font-family: "Playfair Display", serif;
        font-weight: 500;
        color: #142838;
        margin-bottom: 4rem; }
        @media only screen and (max-width: 62.5em) {
          .home-intro__top__content__title {
            font-size: 3.5rem;
            line-height: 4.2rem; } }
        @media only screen and (max-width: 37.5em) {
          .home-intro__top__content__title {
            font-size: 3rem;
            line-height: 3.6rem; } }
      .home-intro__top__content__pretitle {
        font-size: 1.5rem;
        text-transform: uppercase;
        letter-spacing: 0.2rem;
        font-weight: 600;
        margin-bottom: 2rem;
        color: #bb8e06; }
        @media only screen and (max-width: 37.5em) {
          .home-intro__top__content__pretitle {
            font-size: 1.3rem; } }
      .home-intro__top__content__testimonials {
        max-width: 48rem;
        width: 100%; }
        @media only screen and (max-width: 50em) {
          .home-intro__top__content__testimonials {
            max-width: 60rem;
            align-self: center; } }
        @media only screen and (max-width: 25em) {
          .home-intro__top__content__testimonials {
            max-width: 32rem; } }
        .home-intro__top__content__testimonials__testimonial {
          display: flex;
          flex-direction: column;
          width: 100%;
          padding: 1rem 2rem;
          position: relative; }
          .home-intro__top__content__testimonials__testimonial svg {
            position: absolute;
            top: 0;
            left: 0;
            height: 8rem;
            width: 8rem;
            fill: #e6e6e6;
            transform: rotate(180deg) translateY(2rem) translateX(1rem);
            z-index: -1; }
          .home-intro__top__content__testimonials__testimonial__snippet {
            font-size: 1.6rem;
            font-style: italic; }
            @media only screen and (max-width: 50em) {
              .home-intro__top__content__testimonials__testimonial__snippet {
                font-size: 1.4rem; } }
          .home-intro__top__content__testimonials__testimonial__name {
            padding-top: 1.8rem;
            font-size: 1.6rem;
            font-style: italic;
            font-weight: 500;
            position: relative;
            text-align: right;
            padding-right: 8rem; }
            @media only screen and (max-width: 50em) {
              .home-intro__top__content__testimonials__testimonial__name {
                padding-top: 3rem;
                padding-right: 6rem; } }
          .home-intro__top__content__testimonials__testimonial__image {
            position: absolute;
            bottom: -1.4rem;
            right: 0;
            height: 8rem;
            width: 8rem;
            border-radius: 50%; }
            @media only screen and (max-width: 50em) {
              .home-intro__top__content__testimonials__testimonial__image {
                height: 6rem;
                width: 6rem;
                bottom: -.8rem; } }
  .home-intro__bottom {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    column-gap: 8rem;
    margin-bottom: 6rem; }
    @media only screen and (max-width: 62.5em) {
      .home-intro__bottom {
        column-gap: 4rem;
        margin-bottom: 3rem; } }
    @media only screen and (max-width: 50em) {
      .home-intro__bottom {
        display: flex;
        flex-direction: column;
        margin-bottom: 0rem; } }
    .home-intro__bottom__feature {
      display: grid;
      justify-content: center;
      grid-template-rows: min-content min-content min-content;
      row-gap: 2rem;
      position: relative; }
      @media only screen and (max-width: 50em) {
        .home-intro__bottom__feature {
          padding: 5rem 3rem; }
          .home-intro__bottom__feature::after {
            content: "";
            position: absolute;
            top: 0;
            left: 0;
            height: 1px;
            width: 100%;
            background-color: #e6e6e6; } }
      .home-intro__bottom__feature__icon {
        display: flex;
        justify-content: center; }
        .home-intro__bottom__feature__icon svg {
          stroke-width: 3;
          height: 5rem;
          width: 5rem;
          color: #142838; }
      .home-intro__bottom__feature__title {
        text-transform: uppercase;
        color: #142838;
        font-size: 1.6rem;
        letter-spacing: 0.3rem;
        text-align: center;
        font-weight: 800; }
      .home-intro__bottom__feature__snippet {
        text-align: center;
        font-size: 1.6rem; }
  .home-intro__cta {
    display: flex;
    justify-content: center; }

.home-destinations {
  display: grid;
  grid-template-columns: [full-start] minmax(6rem, 1fr) [center-start] repeat(8, [col-start] minmax(min-content, 14rem) [col-end]) [center-end] minmax(6rem, 1fr) [full-end];
  position: relative;
  grid-column: 1 / -1;
  padding-top: 6rem;
  outline: none;
  position: relative; }
  .home-destinations::before {
    content: "";
    position: absolute;
    height: 100%;
    width: 100%;
    background-image: linear-gradient(to top, rgba(255, 255, 255, 0.8), rgba(255, 255, 255, 0.8)), url(../png/topo-1.png);
    opacity: 0.35;
    top: 0;
    left: 0;
    z-index: -3; }
  .home-destinations__header {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: [full-start] minmax(6rem, 1fr) [center-start] repeat(8, [col-start] minmax(min-content, 14rem) [col-end]) [center-end] minmax(6rem, 1fr) [full-end];
    margin-bottom: 4rem; }
    @media only screen and (max-width: 37.5em) {
      .home-destinations__header {
        grid-template-columns: [full-start] minmax(3rem, 1fr) [center-start] repeat(8, [col-start] minmax(min-content, 14rem) [col-end]) [center-end] minmax(3rem, 1fr) [full-end]; } }
    @media only screen and (max-width: 37.5em) {
      .home-destinations__header__title {
        margin-bottom: 2rem; } }
    .home-destinations__header__sub-text {
      grid-column: center-start / center-end;
      font-size: 1.6rem;
      text-align: center; }
  .home-destinations__destinations-area {
    grid-column: 1 / -1;
    display: flex;
    justify-content: center;
    margin: 0 10rem;
    margin-bottom: 4rem;
    height: min-content; }
    @media only screen and (max-width: 37.5em) {
      .home-destinations__destinations-area {
        margin: 0;
        margin-bottom: 3rem; } }
    .home-destinations__destinations-area__slider {
      max-width: 120rem;
      width: 100%;
      margin: 0 6rem;
      max-height: 96rem; }
      .home-destinations__destinations-area__slider .slick-track {
        display: flex !important; }
      .home-destinations__destinations-area__slider .slick-slide {
        margin: 0 2rem;
        height: inherit !important; }
        @media only screen and (max-width: 37.5em) {
          .home-destinations__destinations-area__slider .slick-slide {
            margin: 0 1rem; } }
    .home-destinations__destinations-area__btn--left {
      position: absolute;
      z-index: 10;
      bottom: 50%;
      left: -7rem;
      transform: translateY(60%); }
    .home-destinations__destinations-area__btn--right {
      position: absolute;
      z-index: 10;
      bottom: 50%;
      right: -7rem;
      transform: translateY(60%); }
  .home-destinations__btn {
    grid-column: 1 / -1;
    display: flex;
    justify-content: center;
    flex-wrap: wrap; }

.home-featured {
  display: grid;
  grid-template-columns: [full-start] minmax(6rem, 1fr) [center-start] repeat(8, [col-start] minmax(min-content, 14rem) [col-end]) [center-end] minmax(6rem, 1fr) [full-end];
  position: relative;
  grid-column: 1 / -1;
  padding-top: 6rem;
  outline: none;
  position: relative; }
  .home-featured--bucket-list {
    margin-bottom: 8rem; }
  .home-featured__header {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: [full-start] minmax(6rem, 1fr) [center-start] repeat(8, [col-start] minmax(min-content, 14rem) [col-end]) [center-end] minmax(6rem, 1fr) [full-end];
    margin-bottom: 4rem; }
    @media only screen and (max-width: 37.5em) {
      .home-featured__header {
        grid-template-columns: [full-start] minmax(3rem, 1fr) [center-start] repeat(8, [col-start] minmax(min-content, 14rem) [col-end]) [center-end] minmax(3rem, 1fr) [full-end]; } }
    @media only screen and (max-width: 37.5em) {
      .home-featured__header__title {
        margin-bottom: 2rem; } }
    .home-featured__header__sub-text {
      grid-column: center-start / center-end;
      font-size: 1.6rem;
      text-align: center; }
  .home-featured__content-area {
    grid-column: 1 / -1;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 0 10rem; }
    @media only screen and (max-width: 50em) {
      .home-featured__content-area {
        margin: 0; } }
    .home-featured__content-area__slider {
      max-width: 120rem;
      width: 100%;
      margin: 2rem 6rem; }
      @media only screen and (max-width: 50em) {
        .home-featured__content-area__slider .slick-slide {
          margin: 0 2rem; } }
      @media only screen and (max-width: 37.5em) {
        .home-featured__content-area__slider .slick-slide {
          margin: 0 0.5rem; } }
    .home-featured__content-area__btn--left {
      position: absolute;
      z-index: 10;
      bottom: 50%;
      left: -7rem;
      transform: translateY(60%); }
    .home-featured__content-area__btn--right {
      position: absolute;
      z-index: 10;
      bottom: 50%;
      right: -7rem;
      transform: translateY(60%); }
  .home-featured__btn {
    grid-column: 1 / -1;
    display: flex;
    justify-content: center;
    flex-wrap: wrap; }

.home-featured-item {
  display: flex !important;
  align-items: center; }
  @media only screen and (max-width: 50em) {
    .home-featured-item {
      flex-direction: column;
      border: 1px solid #e6e6e6;
      border-radius: 4px; } }
  .home-featured-item__content {
    display: flex;
    flex-direction: column;
    justify-content: start;
    align-items: center;
    text-align: center;
    height: min-content;
    width: 50%;
    margin-right: 3rem; }
    .home-featured-item__content--inverse {
      order: 2;
      margin-right: 0rem;
      margin-left: 3rem; }
    @media only screen and (max-width: 50em) {
      .home-featured-item__content {
        width: 100%;
        margin: 3rem;
        margin-bottom: 2rem; } }
    .home-featured-item__content__title {
      font-family: "Playfair Display", serif;
      font-size: 3.5rem;
      line-height: 4.2rem;
      letter-spacing: 0.2rem;
      color: #142838;
      font-weight: 500;
      text-align: center; }
      @media only screen and (max-width: 62.5em) {
        .home-featured-item__content__title {
          font-size: 2.5rem;
          line-height: 3.2rem;
          letter-spacing: 0.1rem; } }
      @media only screen and (max-width: 50em) {
        .home-featured-item__content__title {
          padding: 0 1rem; } }
      @media only screen and (max-width: 37.5em) {
        .home-featured-item__content__title {
          font-size: 2rem;
          line-height: 2.6rem; } }
    .home-featured-item__content__text {
      font-size: 1.6rem;
      width: 80%;
      padding: 3rem 0;
      position: relative; }
      @media only screen and (max-width: 62.5em) {
        .home-featured-item__content__text {
          padding: 1.5rem 0;
          padding-bottom: 3rem; } }
      .home-featured-item__content__text::after {
        content: "";
        position: absolute;
        bottom: 0;
        left: 50%;
        transform: translateX(-50%);
        width: 20rem;
        height: 2px;
        background-color: #d9a402; }
    .home-featured-item__content__cta {
      padding-top: 1rem; }
  .home-featured-item__image-area {
    position: relative;
    width: 50%;
    padding-right: 2rem; }
    .home-featured-item__image-area--inverse {
      order: -1;
      padding-left: 2rem;
      padding-right: 0rem; }
    @media only screen and (max-width: 50em) {
      .home-featured-item__image-area {
        width: 100%;
        order: -1;
        padding-left: 0;
        padding-right: 0;
        height: 35rem;
        background-color: burlywood; } }
    @media only screen and (max-width: 25em) {
      .home-featured-item__image-area {
        height: 25rem; } }
    .home-featured-item__image-area img {
      object-fit: contain;
      width: 100%;
      height: auto;
      margin-bottom: 2rem;
      box-shadow: 0 1rem 1rem -1rem rgba(0, 0, 0, 0.25);
      position: relative; }
      @media only screen and (max-width: 50em) {
        .home-featured-item__image-area img {
          object-fit: cover;
          width: 100%;
          height: 100%;
          box-shadow: none;
          margin-bottom: 0; } }

.home-testimonials {
  background-color: #1d2225;
  display: flex;
  align-items: center;
  flex-direction: column;
  position: relative;
  width: 100%;
  padding-bottom: 6rem; }
  @media only screen and (max-width: 37.5em) {
    .home-testimonials {
      padding-bottom: 3rem; } }
  .home-testimonials::before {
    content: "";
    position: absolute;
    height: 100%;
    width: 100%;
    background-image: linear-gradient(to top, rgba(255, 255, 255, 0.8), rgba(255, 255, 255, 0.8)), url(../png/topo-1.png);
    filter: invert(100%);
    opacity: 0.35;
    top: 0;
    left: 0;
    z-index: 2; }
  .home-testimonials__title {
    font-size: 1.6rem;
    color: #e6e6e6;
    text-transform: uppercase;
    letter-spacing: 0.3rem;
    margin: 1rem;
    margin-top: 8rem;
    z-index: 5;
    font-weight: 600; }
    .home-testimonials__title.review-title {
      font-size: 3rem;
      color: #e6e6e6;
      text-transform: none;
      font-family: "Metropolis", sans-serif;
      text-transform: none;
      font-weight: 600;
      margin-bottom: 3rem;
      text-align: center; }
  .home-testimonials__publications {
    max-width: 128rem;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    z-index: 5; }
    @media only screen and (max-width: 37.5em) {
      .home-testimonials__publications {
        width: 80%;
        flex-direction: column;
        flex-wrap: nowrap; } }
    .home-testimonials__publications__logo-area {
      display: flex;
      align-items: center;
      justify-content: center; }
      .home-testimonials__publications__logo-area img {
        margin: 2rem 3rem;
        object-fit: contain; }
        @media only screen and (max-width: 75em) {
          .home-testimonials__publications__logo-area img {
            transform: scale(0.75);
            margin: 1rem 1.5rem; } }
  .home-testimonials__testimonials {
    margin: 6rem 10rem;
    margin-top: 3rem;
    z-index: 5;
    width: 100%;
    display: flex;
    justify-content: center; }
    .home-testimonials__testimonials__slider {
      max-width: 114rem;
      width: 100%; }
      .home-testimonials__testimonials__slider .slick-dots {
        bottom: -9rem; }
        @media only screen and (max-width: 37.5em) {
          .home-testimonials__testimonials__slider .slick-dots {
            bottom: -8rem; } }
      .home-testimonials__testimonials__slider .slick-dots li {
        margin: 0 1rem !important; }
      .home-testimonials__testimonials__slider .slick-dots li.slick-active button:before,
      .home-testimonials__testimonials__slider .slick-dots li button:before {
        color: #e6e6e6;
        opacity: 1;
        font-size: 8px; }
      .home-testimonials__testimonials__slider .slick-dots li.slick-active button {
        border: 3px solid #fff;
        border-radius: 100%;
        position: relative; }
        .home-testimonials__testimonials__slider .slick-dots li.slick-active button::after {
          content: "";
          position: absolute;
          height: 8px;
          width: 8px;
          background-color: #fff;
          border-radius: 50%;
          transform: translateX(-50%) translateY(-50%); }
      .home-testimonials__testimonials__slider .slick-dots li.slick-active button:before {
        color: transparent; }

.testimonial {
  display: flex !important;
  color: #fff;
  column-gap: 6rem;
  width: 100%;
  padding: 0 6rem;
  padding-top: 3rem !important;
  padding-bottom: 3rem; }
  @media only screen and (max-width: 37.5em) {
    .testimonial {
      padding: 0 3rem; } }
  .testimonial__content {
    width: 60%;
    align-self: center;
    display: flex;
    flex-direction: column;
    overflow: visible;
    position: relative; }
    @media only screen and (max-width: 37.5em) {
      .testimonial__content {
        width: 100%; } }
    .testimonial__content svg {
      position: absolute;
      top: -3rem;
      left: -3rem;
      height: 8rem;
      width: 8rem;
      fill: rgba(230, 230, 230, 0.3);
      transform: rotate(180deg);
      z-index: -1; }
    .testimonial__content__snippet {
      font-size: 1.8rem;
      font-family: "Playfair Display", serif;
      letter-spacing: 0.1rem;
      line-height: 3.5rem; }
      @media only screen and (max-width: 62.5em) {
        .testimonial__content__snippet {
          align-self: center; } }
      @media only screen and (max-width: 37.5em) {
        .testimonial__content__snippet {
          width: 90%;
          line-height: 2.8rem; } }
    .testimonial__content__person {
      margin-top: 2rem;
      margin-right: 8rem;
      font-size: 1.6rem;
      text-transform: uppercase;
      letter-spacing: 0.2rem;
      position: relative;
      display: flex;
      justify-content: flex-end; }
  .testimonial__image-area {
    width: 40%;
    display: flex;
    justify-content: center;
    align-content: center;
    order: -1; }
    .testimonial__image-area--inverse {
      order: 2; }
    @media only screen and (max-width: 37.5em) {
      .testimonial__image-area {
        display: none; } }
    .testimonial__image-area img {
      max-height: 48rem;
      object-fit: contain;
      height: auto;
      width: 100%; }

.home-full-search {
  height: 100%;
  width: 100%;
  background-color: #fff;
  z-index: 10000;
  position: fixed;
  top: 0;
  left: 0;
  display: none; }
  .home-full-search.active {
    display: block; }
  .home-full-search__destination {
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 5;
    background-color: #fff; }
    .home-full-search__destination__top {
      display: flex;
      justify-content: space-between;
      border-bottom: 1px solid #c2c6c9;
      position: relative; }
      .home-full-search__destination__top__cancel {
        order: 2;
        width: min-content;
        color: #142838;
        cursor: pointer;
        font-size: 2rem;
        font-weight: 600;
        padding: 2rem;
        display: flex;
        align-items: center;
        justify-content: center; }
        @media only screen and (max-width: 37.5em) {
          .home-full-search__destination__top__cancel {
            font-size: 1.6rem; } }
    .home-full-search__destination__logo-area {
      height: 100%;
      width: 100%;
      display: flex;
      align-items: center;
      justify-content: center;
      z-index: -1; }
      .home-full-search__destination__logo-area.hide {
        display: none; }
      .home-full-search__destination__logo-area img {
        width: 26rem;
        height: auto;
        filter: brightness(0) invert(0.8);
        transform: translateY(-50%); }
  .home-full-search__dates {
    height: 100%;
    width: 100%;
    background-color: #fff;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 6;
    transform: translateX(-100%); }
    .home-full-search__dates.active {
      transition: all 0.3s;
      transform: translateX(0%); }
    .home-full-search__dates__top {
      display: flex;
      justify-content: space-between;
      border-bottom: 1px solid #c2c6c9; }
      .home-full-search__dates__top__back {
        order: 0;
        width: min-content;
        color: #142838;
        cursor: pointer;
        padding: 2rem;
        padding-right: 0.5rem;
        display: flex;
        align-items: center;
        justify-content: center; }
        .home-full-search__dates__top__back svg {
          height: 4rem;
          width: 4rem;
          color: #142838; }

.home-full-search-cta {
  position: fixed;
  bottom: 0;
  left: 0;
  height: 11rem;
  width: 100%;
  background-color: #fff;
  border-top: 1px solid #c2c6c9;
  align-items: center;
  justify-content: center;
  z-index: 10001;
  display: none; }
  .home-full-search-cta.active {
    display: flex; }
  .home-full-search-cta__button {
    color: #40739c;
    border: 2px solid #40739c;
    background-color: transparent;
    padding: 1.2rem 2.5rem;
    height: 5rem;
    width: 100%;
    max-width: 22rem;
    border-radius: 8rem;
    letter-spacing: 0.2rem;
    cursor: pointer;
    outline: none;
    font-size: 1.5rem;
    font-family: "Metropolis", sans-serif;
    text-transform: uppercase;
    font-weight: 700;
    position: relative;
    text-decoration: none;
    white-space: nowrap;
    display: flex;
    justify-content: center;
    align-items: center; }
    .home-full-search-cta__button .lds-ring {
      display: none; }
      .home-full-search-cta__button .lds-ring div {
        border-color: #40739c transparent transparent transparent; }
    .home-full-search-cta__button--inverse {
      color: #fff;
      color: #40739c;
      border-radius: 2.5rem; }
    .home-full-search-cta__button.loading span {
      display: none !important; }
    .home-full-search-cta__button.loading .lds-ring {
      display: block; }

.home-full-search-loading {
  display: none;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background-color: #fff;
  z-index: 10002; }
  .home-full-search-loading__logo {
    width: 22rem;
    height: auto;
    margin-bottom: 6rem; }
  .home-full-search-loading.active {
    display: flex; }
  .home-full-search-loading .lds-ring {
    transform: translateX(0%) !important; }
    .home-full-search-loading .lds-ring div {
      border-color: #40739c transparent transparent transparent; }

.experience-hero {
  display: flex;
  width: 100%;
  height: 100vh;
  position: relative;
  flex-direction: column;
  align-items: center;
  min-height: 80rem; }
  @media only screen and (max-width: 62.5em) {
    .experience-hero {
      min-height: 60rem; } }
  .experience-hero__bg {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    height: 100%; }
    .experience-hero__bg img {
      position: relative;
      object-fit: cover;
      height: 100%;
      width: 100%; }
    .experience-hero__bg::after {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      height: 100%;
      width: 100%;
      z-index: 2;
      background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.3), transparent 20%), linear-gradient(to top, rgba(0, 0, 0, 0.8), transparent 50%), linear-gradient(to top, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2)); }
      @media only screen and (max-width: 50em) {
        .experience-hero__bg::after {
          background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.3), transparent 20%), linear-gradient(to top, rgba(0, 0, 0, 0.8), transparent 60%), linear-gradient(to top, rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4)); } }
  .experience-hero__content {
    z-index: 5;
    height: 100%;
    margin-top: 12rem;
    margin-bottom: 8rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-around;
    padding: 0 6rem;
    max-width: calc(112rem + 12rem); }
    @media only screen and (max-width: 37.5em) {
      .experience-hero__content {
        padding: 0 3rem; } }
    @media only screen and (max-width: 37.5em) {
      .experience-hero__content {
        margin-top: 9rem;
        justify-content: center; } }
    .experience-hero__content__title-group {
      display: grid;
      max-width: 75rem;
      color: #fff;
      position: relative;
      align-self: center; }
      .experience-hero__content__title-group__title {
        font-size: 6rem;
        line-height: 7rem;
        text-align: center;
        font-family: "Playfair Display", serif;
        letter-spacing: 0.3rem;
        font-weight: 500;
        text-transform: uppercase; }
        @media only screen and (max-width: 50em) {
          .experience-hero__content__title-group__title {
            font-size: 4rem;
            line-height: 5rem;
            letter-spacing: 0.2rem; } }
        @media only screen and (max-width: 25em) {
          .experience-hero__content__title-group__title {
            font-size: 3rem;
            line-height: 4rem; } }
      .experience-hero__content__title-group__divider {
        height: 9rem;
        width: 100%;
        display: grid;
        grid-template-columns: 1fr min-content 1fr;
        position: relative;
        align-content: center;
        column-gap: 2rem; }
        @media only screen and (max-width: 37.5em) {
          .experience-hero__content__title-group__divider {
            height: 6rem; } }
        .experience-hero__content__title-group__divider svg {
          height: 5rem;
          width: 5rem;
          stroke-width: 2;
          grid-column: 2 / span 1; }
          @media only screen and (max-width: 37.5em) {
            .experience-hero__content__title-group__divider svg {
              height: 3rem;
              width: 3rem; } }
        .experience-hero__content__title-group__divider::after {
          content: "";
          grid-column: 3 / span 1;
          height: 2px;
          width: 50%;
          background-color: #fff;
          z-index: 12;
          align-self: center;
          justify-self: start; }
        .experience-hero__content__title-group__divider::before {
          content: "";
          grid-column: 1 / span 1;
          height: 2px;
          width: 50%;
          background-color: #fff;
          z-index: 12;
          align-self: center;
          justify-self: end; }
    .experience-hero__content__snippet {
      font-size: 1.6rem;
      text-align: center;
      letter-spacing: 0.2rem;
      font-weight: 300;
      color: #fff;
      align-self: center;
      width: 80%;
      padding-top: 6rem; }
      @media only screen and (max-width: 37.5em) {
        .experience-hero__content__snippet {
          width: 100%;
          padding-top: 6rem;
          padding-bottom: 6rem;
          font-size: 1.4rem;
          line-height: 2rem;
          font-weight: 400; } }

.experience-region {
  margin: 8rem 0;
  width: 100%;
  position: relative;
  overflow-x: hidden; }
  @media only screen and (max-width: 50em) {
    .experience-region {
      text-align: center;
      margin-right: 0rem;
      margin: 4rem 0; } }
  .experience-region__content {
    max-width: 114rem;
    margin: auto;
    display: flex;
    align-items: center;
    margin-bottom: 9rem;
    padding: 0 6rem;
    position: relative; }
    @media only screen and (max-width: 50em) {
      .experience-region__content {
        margin-bottom: 4rem; } }
    @media only screen and (max-width: 37.5em) {
      .experience-region__content {
        padding: 0 2rem; } }
    .experience-region__content__accent-title {
      position: absolute;
      top: -6rem;
      left: -6rem;
      z-index: -1;
      font-size: 18rem;
      white-space: nowrap;
      overflow-x: hidden;
      font-family: "Playfair Display", serif;
      color: #f8f8f8;
      text-transform: uppercase;
      letter-spacing: .5rem; }
    .experience-region__content__text {
      margin-right: 8rem; }
      @media only screen and (max-width: 50em) {
        .experience-region__content__text {
          text-align: center;
          margin-right: 0rem;
          padding-top: 5rem; } }
      .experience-region__content__text__title-group__subtitle {
        font-size: 1.3rem;
        text-transform: uppercase;
        letter-spacing: .2rem;
        color: #d9a402;
        font-weight: 600; }
      .experience-region__content__text__title-group__title {
        color: #142838;
        font-size: 4rem;
        line-height: 4.8rem;
        letter-spacing: 1rem;
        text-transform: uppercase;
        font-family: "Playfair Display", serif;
        font-weight: 500;
        margin-bottom: 1.5rem; }
        @media only screen and (max-width: 50em) {
          .experience-region__content__text__title-group__title {
            margin-top: 1.5rem; } }
      .experience-region__content__text__snippet {
        font-size: 1.5rem;
        color: #9ea0a4; }
      .experience-region__content__text__travel-types {
        margin: 6rem 0; }
        @media only screen and (max-width: 50em) {
          .experience-region__content__text__travel-types {
            display: flex;
            justify-content: center;
            flex-wrap: wrap;
            margin: 2rem 0;
            margin-top: 4rem; } }
        .experience-region__content__text__travel-types__group {
          display: flex;
          color: #142838;
          align-items: center;
          margin: 1rem 0; }
          @media only screen and (max-width: 50em) {
            .experience-region__content__text__travel-types__group {
              margin: 1rem 2rem; } }
          .experience-region__content__text__travel-types__group svg {
            height: 2.5rem;
            width: 2.5rem;
            stroke-width: 3; }
          .experience-region__content__text__travel-types__group a {
            margin-left: 1rem;
            font-size: 1.6rem;
            text-decoration: none;
            color: #142838;
            text-align: start;
            white-space: nowrap; }
            .experience-region__content__text__travel-types__group a:hover {
              color: #40739c; }
      @media only screen and (max-width: 50em) {
        .experience-region__content__text__cta {
          display: flex;
          justify-content: center; } }
    .experience-region__content__image {
      width: 40rem;
      height: 60rem; }
      @media only screen and (max-width: 50em) {
        .experience-region__content__image {
          display: none; } }
      .experience-region__content__image img {
        object-fit: contain;
        max-width: 40rem;
        max-height: 60rem; }
  .experience-region__slider-area {
    display: flex;
    justify-content: center;
    width: 100%; }
    .experience-region__slider-area__slider {
      max-width: 140rem;
      width: 100%;
      margin: 0 6rem;
      position: relative; }
      .experience-region__slider-area__slider__btn-left {
        transform: translateY(-50%);
        position: absolute;
        top: 50%;
        left: 8vw;
        z-index: 20; }
        @media only screen and (max-width: 62.5em) {
          .experience-region__slider-area__slider__btn-left {
            left: 2vw; } }
        @media only screen and (max-width: 50em) {
          .experience-region__slider-area__slider__btn-left {
            left: 0vw;
            transform: translateY(-50%) scale(0.75); } }
      .experience-region__slider-area__slider__btn-right {
        transform: translateY(-50%);
        position: absolute;
        top: 50%;
        right: 8vw;
        z-index: 20; }
        @media only screen and (max-width: 62.5em) {
          .experience-region__slider-area__slider__btn-right {
            right: 2vw; } }
        @media only screen and (max-width: 50em) {
          .experience-region__slider-area__slider__btn-right {
            right: 0vw;
            transform: translateY(-50%) scale(0.75); } }
      .experience-region__slider-area__slider .slick-slide {
        margin: 0 1.5rem; }
        @media only screen and (max-width: 50em) {
          .experience-region__slider-area__slider .slick-slide {
            margin: 0 .75rem; } }
      .experience-region__slider-area__slider .slick-list {
        padding: 0 25% !important; }
        @media only screen and (max-width: 62.5em) {
          .experience-region__slider-area__slider .slick-list {
            padding: 0 15% !important; } }
        @media only screen and (max-width: 37.5em) {
          .experience-region__slider-area__slider .slick-list {
            padding: 0 10% !important; } }
      .experience-region__slider-area__slider .slick-current .wide-slider-card {
        pointer-events: inherit; }
      .experience-region__slider-area__slider .slick-current .wide-slider-card__content {
        opacity: 1; }
      .experience-region__slider-area__slider .slick-current .wide-slider-card::after {
        opacity: 0; }

.experience-intro {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  column-gap: 8rem;
  grid-column: 1 / -1;
  max-width: calc(112rem + 12rem);
  padding: 0 6rem;
  padding-top: 12rem;
  padding-bottom: 4rem; }
  @media only screen and (max-width: 37.5em) {
    .experience-intro {
      padding: 0 3rem; } }
  @media only screen and (max-width: 62.5em) {
    .experience-intro {
      grid-template-columns: 1fr;
      padding-top: 0rem;
      padding-bottom: 2rem; } }
  .experience-intro__feature {
    display: grid;
    justify-content: center;
    grid-template-rows: min-content min-content min-content;
    row-gap: 2rem;
    position: relative; }
    .experience-intro__feature:not(:last-child):after {
      position: absolute;
      content: "";
      top: 0;
      right: -4rem;
      width: 1px;
      height: 100%;
      background-color: #e6e6e6; }
    @media only screen and (max-width: 62.5em) {
      .experience-intro__feature {
        padding: 5rem 3rem; }
        .experience-intro__feature:not(:last-child):after {
          top: auto;
          bottom: 0;
          left: 0;
          height: 1px;
          width: 100%; } }
    .experience-intro__feature__icon {
      display: flex;
      justify-content: center; }
      .experience-intro__feature__icon svg {
        stroke-width: 3;
        height: 5rem;
        width: 5rem;
        color: #142838 !important;
        fill: #142838 !important;
        stroke: #142838 !important; }
    .experience-intro__feature__title {
      text-transform: uppercase;
      color: #142838;
      font-size: 1.6rem;
      letter-spacing: 0.3rem;
      text-align: center;
      font-weight: 800; }
    .experience-intro__feature__snippet {
      text-align: center;
      font-size: 1.6rem;
      color: #9ea0a4; }

.about-mission {
  width: 100%;
  max-width: calc(112rem + 12rem);
  padding: 0 6rem;
  display: flex;
  flex-direction: column;
  align-items: center; }
  @media only screen and (max-width: 37.5em) {
    .about-mission {
      padding: 0 3rem; } }
  .about-mission__intro {
    max-width: 75rem; }
    .about-mission__intro__title {
      font-size: 6rem;
      line-height: 6.8rem;
      font-weight: 700;
      margin-bottom: 2rem;
      color: #142838; }
    .about-mission__intro__text {
      font-size: 1.6rem; }
  .about-mission__imagery {
    width: 100%;
    margin: 8rem 0;
    display: grid;
    grid-template-columns: repeat(8, 1fr);
    grid-template-rows: repeat(8, 1fr);
    height: 80vh; }
    @media only screen and (max-width: 50em) {
      .about-mission__imagery {
        height: auto; } }
    @media only screen and (max-width: 37.5em) {
      .about-mission__imagery {
        margin-bottom: 0rem; } }
    .about-mission__imagery__main-image {
      grid-column: 1 / span 5;
      grid-row: 1 / span 5;
      z-index: 3;
      position: relative; }
      .about-mission__imagery__main-image:after {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: 4;
        background-image: linear-gradient(to top, rgba(30, 30, 30, 0.3), rgba(30, 30, 30, 0.3)); }
      @media only screen and (max-width: 37.5em) {
        .about-mission__imagery__main-image {
          grid-column: 1 / -1;
          grid-row: 1 / span 5; } }
      .about-mission__imagery__main-image img {
        height: 100%;
        width: 100%;
        object-fit: cover; }
      .about-mission__imagery__main-image__tagline {
        position: absolute;
        left: 50%;
        bottom: 50%;
        transform: translateX(-50%) translateY(50%);
        color: #fff;
        font-size: 7rem;
        line-height: 7.5rem;
        letter-spacing: 0.2rem;
        font-family: "Playfair Display", serif;
        text-align: center;
        z-index: 5;
        font-weight: 400; }
        @media only screen and (max-width: 50em) {
          .about-mission__imagery__main-image__tagline {
            font-size: 5rem;
            line-height: 5.5rem;
            letter-spacing: 0.1rem; } }
    .about-mission__imagery__secondary-image {
      grid-column: 5 / -1;
      grid-row: 3 / -1;
      z-index: 2; }
      .about-mission__imagery__secondary-image img {
        height: 100%;
        width: 100%;
        object-fit: cover; }
      @media only screen and (max-width: 37.5em) {
        .about-mission__imagery__secondary-image {
          display: none; } }
    .about-mission__imagery__text-area {
      grid-column: 2 / span 3;
      grid-row: 6 / -1;
      z-index: 3;
      display: flex;
      align-items: center;
      justify-content: center; }
      @media only screen and (max-width: 37.5em) {
        .about-mission__imagery__text-area {
          grid-column: 1 / -1;
          grid-row: 6 / -1; } }
      .about-mission__imagery__text-area__snippet {
        margin: 6rem;
        margin-left: 0; }
        @media only screen and (max-width: 37.5em) {
          .about-mission__imagery__text-area__snippet {
            margin: 4rem;
            margin-left: 4rem;
            text-align: center; } }
  .about-mission__statement {
    max-width: calc(80rem + 12rem);
    width: 100%;
    display: flex;
    justify-content: center;
    position: relative;
    margin: 6rem 0; }
    .about-mission__statement__start-quote {
      position: absolute;
      top: 0;
      left: 0;
      z-index: 1; }
      .about-mission__statement__start-quote svg {
        fill: #c2c6c9;
        height: 10rem;
        width: 10rem;
        transform: rotate(180deg); }
    .about-mission__statement__end-quote {
      position: absolute;
      bottom: 0;
      right: 0;
      z-index: 1; }
      .about-mission__statement__end-quote svg {
        fill: #c2c6c9;
        height: 10rem;
        width: 10rem; }
    .about-mission__statement__snippet {
      z-index: 2;
      padding: 6rem 8rem;
      border-top: 1px solid #e6e6e6;
      border-bottom: 1px solid #e6e6e6; }
      .about-mission__statement__snippet p {
        font-size: 3rem;
        line-height: 3.5rem;
        text-align: center;
        font-family: "Playfair Display", serif; }
      @media only screen and (max-width: 37.5em) {
        .about-mission__statement__snippet {
          padding: 9rem 3rem; } }

.about-difference {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 6rem; }
  .about-difference__title {
    font-size: 3.5rem;
    color: #142838;
    margin-bottom: 6rem;
    font-weight: 700; }
  .about-difference__slider-area {
    width: 100%; }
    .about-difference__slider-area__slider {
      width: 100%;
      user-select: text; }
      .about-difference__slider-area__slider .slick-list {
        padding: 0 25% !important; }
        @media only screen and (max-width: 62.5em) {
          .about-difference__slider-area__slider .slick-list {
            padding: 0 15% !important; } }
        @media only screen and (max-width: 37.5em) {
          .about-difference__slider-area__slider .slick-list {
            padding: 0 10% !important; } }
      .about-difference__slider-area__slider .slick-current .difference-card__content {
        opacity: 1; }
      .about-difference__slider-area__slider .slick-current .difference-card::after {
        opacity: 0; }

.difference-card {
  display: flex !important;
  flex-direction: column;
  position: relative;
  justify-content: flex-end;
  height: 60rem;
  user-select: text; }
  .difference-card__bg {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    z-index: 0; }
    .difference-card__bg img {
      height: 100%;
      width: 100%;
      object-fit: cover; }
    .difference-card__bg:after {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      z-index: 4;
      background-image: linear-gradient(to top, rgba(30, 30, 30, 0.7), rgba(30, 30, 30, 0)); }
  .difference-card__content {
    opacity: 0;
    transition: .3s all;
    z-index: 5;
    color: #fff;
    display: flex;
    flex-direction: column;
    padding: 3rem 4rem; }
    @media only screen and (max-width: 37.5em) {
      .difference-card__content {
        padding: 1.5rem 2rem; } }
    .difference-card__content__title {
      font-size: 3.5rem;
      line-height: 4rem;
      font-weight: 700;
      margin-bottom: 1.5rem;
      font-family: "Playfair Display", serif;
      letter-spacing: .2rem;
      color: currentColor; }
      @media only screen and (max-width: 37.5em) {
        .difference-card__content__title {
          font-size: 2.5rem;
          line-height: 3rem; } }
    .difference-card__content__snippet {
      font-size: 1.6rem; }
      @media only screen and (max-width: 37.5em) {
        .difference-card__content__snippet {
          font-size: 1.2rem; } }
  .difference-card::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    opacity: 1;
    transition: opacity 0.3s;
    z-index: 3;
    background-image: linear-gradient(to right, rgba(30, 30, 30, 0.3), rgba(30, 30, 30, 0.3)); }

.about-team {
  width: 100%;
  max-width: calc(112rem + 12rem);
  padding: 0 6rem;
  margin-bottom: 10rem;
  margin-top: 4rem;
  display: flex;
  flex-direction: column;
  align-items: center; }
  @media only screen and (max-width: 37.5em) {
    .about-team {
      padding: 0 3rem; } }
  @media only screen and (max-width: 37.5em) {
    .about-team {
      margin-bottom: 6rem; } }
  .about-team__title {
    font-size: 3.5rem;
    color: #142838;
    margin-bottom: 6rem;
    font-weight: 700; }
  .about-team__grid {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    column-gap: 8rem;
    row-gap: 12rem; }
    @media only screen and (max-width: 50em) {
      .about-team__grid {
        grid-template-columns: repeat(3, 1fr);
        column-gap: 2rem;
        row-gap: 6rem; } }
    @media only screen and (max-width: 37.5em) {
      .about-team__grid {
        grid-template-columns: repeat(2, 1fr); } }

.team-card__image-area {
  height: min-content;
  width: 100%; }
  .team-card__image-area img {
    height: 100%;
    width: 100%;
    object-fit: contain;
    clip-path: inset(0px round 0px 150px 150px); }

.team-card__content {
  text-align: center; }
  .team-card__content__name {
    color: #142838;
    font-size: 1.8rem;
    font-weight: 700; }
  .team-card__content__position {
    font-size: 1.5rem;
    font-weight: 400; }
  .team-card__content__phone {
    font-size: 1.5rem;
    font-weight: 400;
    color: #142838; }
    .team-card__content__phone:hover {
      color: #305a7c; }

.about-partners {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: relative;
  padding: 10rem 0; }
  @media only screen and (max-width: 37.5em) {
    .about-partners {
      padding: 6rem 0; } }
  .about-partners::before {
    content: "";
    position: absolute;
    height: 100%;
    width: 100%;
    background-image: linear-gradient(to top, rgba(255, 255, 255, 0.8), rgba(255, 255, 255, 0.8)), url(../png/topo-1.png);
    opacity: 0.35;
    top: 0;
    left: 0;
    z-index: -3; }
  .about-partners__content {
    max-width: 85rem;
    display: flex;
    padding: 0 6rem; }
    @media only screen and (max-width: 37.5em) {
      .about-partners__content {
        padding: 0 3rem; } }
    @media only screen and (max-width: 37.5em) {
      .about-partners__content {
        flex-direction: column;
        text-align: center;
        align-items: center; } }
    .about-partners__content__title {
      width: 50%;
      color: #142838;
      margin-right: 6rem;
      display: flex;
      flex-direction: column;
      align-items: flex-end;
      font-size: 3.5rem;
      line-height: 4rem;
      font-weight: 700; }
      .about-partners__content__title h2 {
        font-size: 3.5rem;
        line-height: 4rem;
        font-weight: 700;
        text-align: right; }
      @media only screen and (max-width: 37.5em) {
        .about-partners__content__title {
          margin-bottom: 2rem;
          margin-right: 0rem;
          align-items: center;
          width: 100%; }
          .about-partners__content__title h2 {
            text-align: center; } }
      .about-partners__content__title__image-area {
        margin-top: 2rem; }
        @media only screen and (max-width: 37.5em) {
          .about-partners__content__title__image-area {
            margin: auto;
            margin-top: 2rem; } }
    .about-partners__content__snippet {
      width: 50%;
      font-size: 1.6rem; }
      @media only screen and (max-width: 37.5em) {
        .about-partners__content__snippet {
          width: 100%; } }
  .about-partners__continents {
    width: 100%;
    max-width: calc(112rem + 12rem);
    padding: 0 6rem;
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 6rem;
    margin-top: 6rem;
    margin-bottom: 2rem; }
    @media only screen and (max-width: 37.5em) {
      .about-partners__continents {
        padding: 0 3rem; } }
    @media only screen and (max-width: 62.5em) {
      .about-partners__continents {
        grid-template-columns: 1fr;
        row-gap: 6rem;
        max-width: 85rem; } }
    .about-partners__continents__item__header {
      font-size: 2rem;
      font-weight: 700;
      color: #142838;
      margin-bottom: 2rem;
      text-align: center; }
    .about-partners__continents__item__text {
      font-size: 1.6rem; }

.about-corporate {
  display: flex;
  width: 100%; }
  @media only screen and (max-width: 50em) {
    .about-corporate {
      flex-direction: column; } }
  .about-corporate__grey {
    width: 50%;
    background-color: #e6e6e6;
    display: flex;
    justify-content: flex-end;
    align-content: center; }
    @media only screen and (max-width: 50em) {
      .about-corporate__grey {
        width: 100%;
        justify-content: center; } }
    .about-corporate__grey__content {
      display: flex;
      flex-direction: column;
      margin: 10rem 8rem;
      max-width: 50rem; }
      @media only screen and (max-width: 50em) {
        .about-corporate__grey__content {
          margin: 8rem 3rem;
          text-align: center;
          max-width: 70rem; } }
      .about-corporate__grey__content__corporate-info {
        margin-bottom: 6rem; }
        .about-corporate__grey__content__corporate-info__title {
          font-size: 3.5rem;
          line-height: 4rem;
          font-weight: 700;
          color: #142838;
          margin-bottom: 3rem; }
        .about-corporate__grey__content__corporate-info__snippet {
          font-size: 1.6rem; }
      .about-corporate__grey__content__contact-details {
        margin-bottom: 6rem; }
        .about-corporate__grey__content__contact-details__title {
          font-size: 2rem;
          white-space: nowrap;
          font-weight: 700;
          color: #142838;
          margin-bottom: 1.5rem; }
        .about-corporate__grey__content__contact-details__snippet {
          font-size: 1.6rem; }
      .about-corporate__grey__content__badge-area {
        margin-bottom: 6rem;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-around; }
        .about-corporate__grey__content__badge-area img {
          height: 13rem;
          width: 13rem;
          margin: 1rem; }
  .about-corporate__image-area {
    width: 50%;
    position: relative; }
    @media only screen and (max-width: 50em) {
      .about-corporate__image-area {
        display: none; } }
    .about-corporate__image-area img {
      position: absolute;
      top: 0;
      left: 0;
      height: 100%;
      width: 100%;
      object-fit: cover; }

.card-square {
  position: relative;
  z-index: 0;
  height: min-content;
  width: 100%;
  display: block !important; }
  .card-square:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    background-image: linear-gradient(to top, rgba(30, 30, 30, 0.6), rgba(30, 30, 30, 0) 40%), linear-gradient(to bottom, rgba(30, 30, 30, 0.2), rgba(30, 30, 30, 0) 20%); }
  .card-square__image-area {
    width: 100%;
    height: min-content;
    z-index: 1; }
    .card-square__image-area img {
      object-fit: contain;
      height: 100%;
      width: 100%; }
  .card-square__title-group {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    z-index: 5;
    align-items: center;
    justify-content: space-between;
    text-align: center;
    padding: 1.5rem 0.5rem;
    height: 100%; }
    .card-square__title-group__level {
      display: block;
      font-size: 1rem;
      color: #fff;
      text-transform: uppercase;
      letter-spacing: 0.4rem; }
    .card-square__title-group__name {
      display: block;
      font-size: 1.8rem;
      color: #fff;
      letter-spacing: 0.15rem;
      margin: 0.3rem 2rem;
      font-weight: 400;
      text-align: center;
      line-height: 2.4rem; }
    .card-square__title-group__subtext {
      display: block;
      font-size: 1rem;
      color: #fff;
      text-transform: uppercase;
      letter-spacing: 0.4rem; }
  .card-square__bottom {
    margin: 1rem 1.5rem;
    font-size: 1.4rem;
    display: grid;
    grid-template-columns: 1fr max-content;
    grid-template-rows: repeat(3, min-content);
    min-height: 12rem;
    align-content: space-between;
    letter-spacing: 0.1rem; }
    .card-square__bottom__header {
      font-size: 1.4rem;
      letter-spacing: 0.05rem;
      color: #919598;
      font-family: "Playfair Display", serif;
      grid-column: 1 / -1;
      grid-row: 1 / span 1;
      text-align: center;
      display: grid;
      grid-template-columns: 1fr max-content 1fr;
      align-items: center;
      column-gap: 15px; }
      .card-square__bottom__header::before {
        content: "";
        height: 1px;
        display: block;
        background-color: #e6e6e6; }
      .card-square__bottom__header::after {
        content: "";
        height: 1px;
        display: block;
        background-color: #e6e6e6; }
    .card-square__bottom__description {
      text-align: center;
      grid-column: 1 / -1;
      font-size: 1.2rem;
      color: #142838;
      padding: 0.5rem; }
    .card-square__bottom__last-section {
      grid-row: 3 / span 1;
      grid-column: 1 / -1;
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap;
      font-weight: 500; }
    .card-square__bottom__length {
      font-size: 1.2rem;
      display: flex;
      align-items: flex-end;
      flex-wrap: wrap; }
      .card-square__bottom__length__text {
        font-size: 1.1rem;
        text-transform: uppercase;
        margin-left: 0.5rem; }
      .card-square__bottom__length__numbers {
        font-size: 1.4rem;
        color: #142838; }
    .card-square__bottom__price {
      font-size: 1.6rem;
      display: flex;
      align-items: flex-end;
      flex-wrap: wrap; }
      .card-square__bottom__price__text {
        text-align: right;
        font-size: 1.1rem;
        text-transform: uppercase;
        margin: 0 0.5rem; }
      .card-square__bottom__price__numbers {
        font-size: 1.6rem;
        color: #142838; }

.product-card {
  border: 1px solid #e6e6e6;
  border-radius: 4px;
  outline: none;
  display: flex;
  flex-direction: column;
  position: relative; }
  .product-card:link, .product-card:visited {
    text-decoration: none;
    color: #9ea0a4; }
  .product-card__tag {
    position: absolute;
    top: 1rem;
    right: 1rem;
    z-index: 100; }
    .product-card__tag .deal-tag {
      font-weight: 700;
      font-size: 1.3rem;
      letter-spacing: .1rem;
      background-color: #00a84b;
      border-radius: 5rem;
      color: #fff;
      padding: .3rem 1rem;
      z-index: 100; }
  .product-card__image-area {
    height: min-content;
    position: relative; }
    .product-card__image-area img {
      object-fit: contain;
      height: 100%;
      width: 100%;
      border-top-left-radius: 0.5rem;
      border-top-right-radius: 0.5rem; }
    .product-card__image-area__charter-text {
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      height: min-content;
      background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), transparent);
      padding: 1.2rem;
      display: flex;
      font-size: 1.2rem;
      text-transform: uppercase;
      letter-spacing: 0.2rem;
      justify-content: center;
      padding-bottom: 1rem;
      color: #fff; }
    .product-card__image-area__destinations {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: min-content;
      background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), transparent);
      padding: 1.5rem;
      border-top-right-radius: 0.4rem;
      border-top-left-radius: 0.4rem;
      display: flex;
      list-style: none;
      justify-content: center;
      padding-bottom: 2rem;
      flex-wrap: wrap; }
      .product-card__image-area__destinations li {
        font-size: 1.2rem;
        letter-spacing: 0.2rem;
        text-transform: uppercase;
        color: #f8f8f8;
        font-weight: 400;
        display: inline-block;
        width: max-content; }
        .product-card__image-area__destinations li:not(:last-child) {
          margin-right: 0.5rem;
          position: relative; }
          .product-card__image-area__destinations li:not(:last-child)::after {
            content: " / "; }
  .product-card__bottom {
    background-color: #fff;
    padding: 1rem 1.5rem;
    display: flex;
    flex-direction: column; }
    .product-card__bottom__title-group {
      margin-top: 0.5rem;
      display: flex;
      justify-content: center;
      align-items: flex-start; }
      .product-card__bottom__title-group__product-name {
        width: 100%;
        text-align: center;
        letter-spacing: 0;
        font-size: 1.8rem;
        line-height: 2.2rem;
        font-weight: 700;
        color: #142838;
        margin-bottom: 0.5rem; }
    .product-card__bottom__text {
      font-size: 1.3rem;
      margin-top: 0.5rem;
      margin-bottom: 0.5rem;
      padding-bottom: 1.5rem;
      position: relative;
      border-bottom: 1px solid #e6e6e6;
      hyphens: auto;
      text-align: center; }
    .product-card__bottom__info {
      position: relative;
      padding-top: 1rem;
      padding-bottom: 0.5rem;
      display: grid;
      grid-template-columns: 1fr 1fr; }
      .product-card__bottom__info__length-group {
        display: flex;
        width: 100%;
        align-items: center;
        position: relative;
        margin-right: 0.5rem; }
        .product-card__bottom__info__length-group svg {
          height: 20px;
          width: 20px;
          fill: #142838;
          stroke-width: 4;
          margin-right: 1.2rem;
          stroke: #142838;
          color: #142838; }
        .product-card__bottom__info__length-group__length {
          display: flex;
          align-items: center;
          color: #142838;
          font-weight: 600;
          font-size: 1.4rem;
          line-height: 1.8rem;
          text-transform: uppercase;
          letter-spacing: 0.1rem;
          margin-right: 0.5rem; }
        .product-card__bottom__info__length-group::after {
          content: "";
          position: absolute;
          top: 50%;
          right: 0;
          transform: translateY(-50%);
          width: 1px;
          height: 75%;
          background-color: #e6e6e6; }
      .product-card__bottom__info__price-group {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        margin-left: 1rem; }
        .product-card__bottom__info__price-group__from {
          font-size: 1.2rem;
          line-height: 1.6rem;
          color: #9ea0a4;
          margin-right: 0.6rem; }
        .product-card__bottom__info__price-group__data {
          display: flex;
          flex-wrap: nowrap;
          align-items: flex-end;
          font-size: 1.8rem;
          line-height: 2.2rem;
          color: #142838;
          font-weight: 600; }
          .product-card__bottom__info__price-group__data span {
            margin-left: 0.4rem;
            font-size: 1.2rem;
            text-transform: uppercase; }

.wide-slider-card {
  display: grid !important;
  height: 38rem;
  display: grid;
  position: relative;
  text-decoration: none;
  pointer-events: none; }
  .wide-slider-card__image {
    grid-row: 1 / -1;
    grid-column: 1 / -1;
    z-index: 1; }
    .wide-slider-card__image img {
      object-fit: cover;
      height: 100%;
      width: 100%; }
  .wide-slider-card__content {
    padding: 4rem 6rem;
    grid-row: 1 / -1;
    grid-column: 1 / -1;
    z-index: 8;
    display: grid;
    opacity: 0;
    grid-template-rows: 1fr;
    position: relative;
    transition: opacity 0.3s;
    height: 38rem; }
    @media only screen and (max-width: 50em) {
      .wide-slider-card__content {
        text-align: center; } }
    @media only screen and (max-width: 50em) {
      .wide-slider-card__content {
        padding: 1.5rem 2rem; } }
    .wide-slider-card__content__tag-area {
      width: 100%;
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap; }
      .wide-slider-card__content__tag-area__tag {
        white-space: nowrap;
        font-size: 1.3rem;
        text-transform: uppercase;
        letter-spacing: 0.2rem;
        display: inline-block;
        color: #1e1e1e;
        background-color: #fff;
        padding: 0.5rem 1.5rem;
        padding-top: 0.7rem;
        border-radius: 3rem;
        font-weight: 700;
        width: max-content;
        height: max-content; }
        .wide-slider-card__content__tag-area__tag.deal-tag {
          background-color: #00a84b;
          color: #fff; }
        .wide-slider-card__content__tag-area__tag--length {
          color: #fff;
          background-color: #305a7c; }
    .wide-slider-card__content__text-area {
      color: #fff;
      grid-row: 2 / span 1; }
      @media only screen and (max-width: 50em) {
        .wide-slider-card__content__text-area {
          margin-bottom: 1.5rem; } }
      .wide-slider-card__content__text-area__country {
        font-size: 1.3rem;
        text-transform: uppercase;
        letter-spacing: 0.2rem;
        list-style: none;
        display: flex;
        color: currentColor; }
        @media only screen and (max-width: 50em) {
          .wide-slider-card__content__text-area__country {
            justify-content: center; } }
        .wide-slider-card__content__text-area__country li:not(:first-child) {
          margin-left: 0.8rem;
          position: relative; }
          .wide-slider-card__content__text-area__country li:not(:first-child)::before {
            content: " / "; }
      .wide-slider-card__content__text-area__title {
        font-family: "Playfair Display", serif;
        font-size: 3rem;
        letter-spacing: 0.3rem;
        text-transform: uppercase;
        line-height: 3.8rem;
        color: currentColor;
        font-weight: 500; }
        @media only screen and (max-width: 50em) {
          .wide-slider-card__content__text-area__title {
            font-size: 2.6rem;
            line-height: 3.2rem; } }
      .wide-slider-card__content__text-area__info {
        font-size: 1.6rem;
        text-transform: uppercase;
        font-weight: 700;
        letter-spacing: 0.2rem;
        display: flex;
        justify-content: space-between;
        color: currentColor; }
        @media only screen and (max-width: 50em) {
          .wide-slider-card__content__text-area__info {
            justify-content: center;
            margin-top: 1rem; } }
        @media only screen and (max-width: 37.5em) {
          .wide-slider-card__content__text-area__info {
            flex-direction: column; } }
        @media only screen and (max-width: 50em) {
          .wide-slider-card__content__text-area__info__price {
            margin-left: 4rem; } }
        @media only screen and (max-width: 37.5em) {
          .wide-slider-card__content__text-area__info__price {
            margin-left: 0rem; } }
        .wide-slider-card__content__text-area__info__price span {
          font-size: 1.2rem; }
  .wide-slider-card::after {
    content: "";
    width: 100%;
    height: 100%;
    grid-row: 1 / -1;
    grid-column: 1 / -1;
    opacity: 1;
    transition: opacity 0.3s;
    z-index: 3;
    background-image: linear-gradient(to right, rgba(30, 30, 30, 0.6), rgba(30, 30, 30, 0.6)); }
  .wide-slider-card::before {
    content: "";
    grid-row: 1 / -1;
    grid-column: 1 / -1;
    background-image: linear-gradient(to bottom, transparent 50%, rgba(30, 30, 30, 0.6));
    height: 100%;
    width: 100%;
    z-index: 3; }
    @media only screen and (max-width: 37.5em) {
      .wide-slider-card::before {
        background-image: linear-gradient(to bottom, transparent 30%, rgba(30, 30, 30, 0.6)); } }

.category-card {
  min-width: 30rem;
  min-height: 20rem;
  background-color: gainsboro;
  border-radius: 0.5rem;
  margin: 1rem 1.5rem;
  flex: 1 0 33%;
  text-decoration: none;
  position: relative; }
  .category-card__image {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%; }
    .category-card__image img {
      border-radius: 0.5rem;
      object-fit: cover;
      height: 100%;
      width: 100%;
      z-index: 0; }
  .category-card__content {
    padding: 1rem 2rem;
    height: 100%;
    width: 100%;
    z-index: 2;
    text-align: center;
    color: #fff;
    text-transform: uppercase;
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: relative; }
    .category-card__content__title {
      font-size: 2.5rem;
      line-height: 3.2rem;
      letter-spacing: 0.3rem;
      font-weight: 600;
      z-index: 2;
      color: currentColor; }
      @media only screen and (max-width: 50em) {
        .category-card__content__title {
          font-size: 2rem;
          line-height: 2.7rem;
          letter-spacing: 0.2rem; } }
    .category-card__content__availability {
      font-size: 1.5rem;
      letter-spacing: 0.2rem;
      z-index: 2;
      color: currentColor; }
      @media only screen and (max-width: 50em) {
        .category-card__content__availability {
          font-size: 1.3rem; } }
    .category-card__content::before {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-image: linear-gradient(to right, rgba(30, 30, 30, 0.4), rgba(30, 30, 30, 0.4));
      border-radius: 0.5rem;
      z-index: 1; }

.accommodations-card {
  min-width: 30rem;
  min-height: 15rem;
  margin: 1rem 1.5rem;
  flex: 1 0 33%;
  /* explanation below */
  display: grid !important;
  align-content: center;
  background-color: #fff;
  position: relative;
  z-index: 0;
  cursor: pointer;
  border-radius: 0.5rem;
  border: 1px solid #e6e6e6;
  grid-template-rows: min-content minmax(23rem, min-content);
  outline: none; }
  .accommodations-card:link, .accommodations-card:visited {
    text-decoration: none;
    color: #919598; }
  .accommodations-card:hover .accommodations-card__bottom__title {
    color: #40739c; }
  .accommodations-card__image {
    grid-row: 1 / span 1;
    height: 35rem; }
    .accommodations-card__image img {
      object-fit: cover;
      height: 100%;
      width: 100%;
      border-top-left-radius: 0.5rem;
      border-top-right-radius: 0.5rem; }
  .accommodations-card__bottom {
    grid-row: 2 / span 1;
    padding: 1rem;
    padding-bottom: 2rem;
    display: grid;
    position: relative;
    text-align: center;
    grid-template-rows: max-content 1fr; }
    .accommodations-card__bottom__title {
      font-size: 2.5rem;
      font-weight: 600;
      color: #142838;
      padding: 2rem;
      transition: all 0.3s; }
    .accommodations-card__bottom__text {
      font-size: 1.6rem;
      display: flex;
      margin-bottom: 2rem; }

.home-destination-card {
  background-color: grey;
  height: 100%;
  text-decoration: none;
  position: relative;
  box-shadow: 0 1rem 2rem rgba(0, 0, 0, 0.2);
  margin-bottom: 3rem; }
  .home-destination-card img {
    object-fit: cover;
    height: 100%;
    width: 100%;
    z-index: 0; }
  .home-destination-card::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    z-index: 2;
    border-radius: 0.4rem;
    background-image: linear-gradient(to top, rgba(30, 30, 30, 0.6), rgba(30, 30, 30, 0)); }
  .home-destination-card__title-area {
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 5;
    width: 100%;
    text-transform: uppercase;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-direction: column;
    padding: 3rem 2rem;
    text-align: center; }
    .home-destination-card__title-area__title {
      font-family: "Playfair Display", serif;
      font-size: 2.5rem;
      line-height: 3.2rem;
      color: #fff;
      letter-spacing: 0.5rem;
      font-weight: 400; }
    .home-destination-card__title-area__subtitle {
      font-size: 1.4rem;
      letter-spacing: 0.3rem;
      font-weight: 300;
      color: #fff; }

.guide-featured-item {
  position: relative; }
  .guide-featured-item__image-area {
    z-index: 1; }
  .guide-featured-item__title {
    z-index: 5;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    color: white;
    font-size: 1.8rem;
    font-weight: 700;
    padding: 1rem; }

.guide-item {
  margin: 3rem;
  margin-bottom: 6rem;
  box-shadow: 0 2rem 6rem rgba(0, 0, 0, 0.2);
  border-bottom-left-radius: 0.4rem;
  border-bottom-right-radius: 0.4rem;
  background-color: #fff;
  width: 42rem;
  display: flex;
  flex-direction: column; }
  @media only screen and (max-width: 37.5em) {
    .guide-item {
      margin-bottom: 3rem;
      width: 85%; } }
  .guide-item__image-area {
    height: 35rem;
    position: relative; }
    @media only screen and (max-width: 37.5em) {
      .guide-item__image-area {
        height: 26rem; } }
    .guide-item__image-area img {
      border-top-left-radius: 0.4rem;
      border-top-right-radius: 0.4rem;
      object-fit: cover;
      height: 100%;
      width: 100%; }
    .guide-item__image-area .exclusiveDeal {
      position: absolute;
      top: 2rem;
      left: 2rem;
      z-index: 10;
      width: max-content;
      background: #fff;
      color: #142838;
      border-radius: 4rem;
      font-size: 1.2rem;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: 0.2rem;
      padding: 0.5rem 1.5rem;
      margin-right: 2rem; }
  .guide-item__bottom {
    display: flex;
    flex-direction: column;
    padding: 2rem 3rem; }
    .guide-item__bottom__category {
      text-transform: uppercase;
      color: #d9a402;
      font-size: 1.4rem;
      letter-spacing: 0.2rem;
      display: flex;
      flex-wrap: wrap;
      margin: 1rem 0;
      list-style: none; }
      .guide-item__bottom__category li {
        white-space: nowrap;
        margin-right: 1rem;
        position: relative; }
        .guide-item__bottom__category li:not(:last-child)::after {
          content: ", ";
          position: absolute;
          right: -0.4rem; }
    .guide-item__bottom__title {
      color: #142838; }
      .guide-item__bottom__title:link, .guide-item__bottom__title:visited {
        text-decoration: none;
        color: #142838; }
        .guide-item__bottom__title:link:hover, .guide-item__bottom__title:visited:hover {
          color: #40739c; }
      .guide-item__bottom__title h3 {
        font-size: 3rem;
        font-weight: 500;
        letter-spacing: 0.1rem;
        line-height: 4rem;
        margin: 0.5rem 0;
        transition: all 0.2s; }
    .guide-item__bottom__snippet {
      font-size: 1.6rem;
      padding: 1rem 0;
      padding-bottom: 2rem; }
    .guide-item__bottom__cta--multiple {
      display: flex;
      flex-wrap: wrap;
      border-top: 1px solid #c2c6c9;
      position: relative;
      margin-top: 2rem;
      padding-top: 1rem; }
      .guide-item__bottom__cta--multiple span {
        position: absolute;
        top: -2rem;
        font-size: 1.2rem;
        color: #142838;
        letter-spacing: 0.1rem; }
      .guide-item__bottom__cta--multiple a {
        color: #142838;
        background-color: #e6e6e6;
        padding: .5rem 1rem;
        border: none;
        margin: .5rem 1rem;
        margin-left: 0rem;
        letter-spacing: 0.1rem;
        cursor: pointer;
        border-radius: 4rem;
        font-size: 1.2rem;
        text-transform: uppercase;
        font-weight: 700;
        position: relative;
        text-decoration: none;
        white-space: nowrap;
        transition: all .2s; }
        .guide-item__bottom__cta--multiple a:hover {
          background-color: #c2c6c9; }

.lds-dual-ring {
  display: inline-block;
  width: 80px;
  height: 80px;
  color: #142838;
  transform: translateX(-50%); }
  .lds-dual-ring:after {
    content: " ";
    display: block;
    width: 64px;
    height: 64px;
    margin: 8px;
    border-radius: 50%;
    border: 6px solid #fff;
    border-color: currentColor transparent  currentColor transparent;
    animation: lds-dual-ring 1.2s linear infinite; }

@keyframes lds-dual-ring {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }

.lds-ring {
  display: inline-block;
  position: relative;
  width: 20px;
  height: 20px; }
  .lds-ring div {
    box-sizing: border-box;
    display: block;
    position: absolute;
    width: 16px;
    height: 16px;
    margin: 2px;
    border: 2px solid #fff;
    border-radius: 50%;
    animation: lds-ring 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
    border-color: #fff transparent transparent transparent; }
    .lds-ring div:nth-child(1) {
      animation-delay: -0.45s; }
    .lds-ring div:nth-child(2) {
      animation-delay: -0.3s; }
    .lds-ring div:nth-child(3) {
      animation-delay: -0.15s; }
  .lds-ring--large {
    width: 80px;
    height: 80px;
    transform: translateX(-50%); }
    .lds-ring--large div {
      width: 64px;
      height: 64px;
      margin: 8px;
      border: 8px solid #40739c;
      border-color: #40739c transparent transparent transparent; }

@keyframes lds-ring {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }

.newsletter {
  display: flex;
  margin: 10rem 0;
  max-width: calc(112rem + 12rem);
  padding: 0 6rem; }
  @media only screen and (max-width: 50em) {
    .newsletter {
      margin: 6rem 0; } }
  @media only screen and (max-width: 37.5em) {
    .newsletter {
      padding: 0 3rem; } }
  .newsletter__content {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding-right: 8rem; }
    @media only screen and (max-width: 62.5em) {
      .newsletter__content {
        padding-right: 4rem; } }
    @media only screen and (max-width: 50em) {
      .newsletter__content {
        width: 100%;
        padding-right: 0rem; } }
    .newsletter__content__title {
      font-size: 5rem;
      line-height: 5.8rem;
      font-family: "Playfair Display", serif;
      color: #142838;
      margin-bottom: 4rem;
      font-weight: 400; }
      @media only screen and (max-width: 62.5em) {
        .newsletter__content__title {
          font-size: 3.5rem;
          line-height: 4.2rem; } }
      @media only screen and (max-width: 50em) {
        .newsletter__content__title {
          text-align: center; } }
    .newsletter__content__text {
      color: #142838;
      font-size: 1.6rem;
      margin-bottom: 5rem; }
      @media only screen and (max-width: 50em) {
        .newsletter__content__text {
          margin-bottom: 6rem;
          text-align: center; } }
    .newsletter__content__email {
      width: 100%;
      display: flex; }
      @media only screen and (max-width: 50em) {
        .newsletter__content__email {
          justify-content: center; } }
      .newsletter__content__email__button {
        font-size: 1.5rem;
        height: 5rem;
        width: 28rem;
        display: flex;
        justify-content: space-between;
        align-items: center;
        background-color: #fff;
        border: 2px solid #142838;
        border-radius: 4rem;
        letter-spacing: 0.1rem;
        font-family: "Metropolis", sans-serif;
        padding: 0 2.5rem;
        cursor: pointer;
        transition: all .2s; }
        .newsletter__content__email__button:hover {
          color: #747474; }
          .newsletter__content__email__button:hover svg {
            opacity: 1;
            transform: translateX(1.5rem); }
        .newsletter__content__email__button svg {
          transition: all .2s;
          transform: translateX(0);
          opacity: 0;
          height: 2rem;
          width: 2rem;
          color: #142838; }
          @media only screen and (max-width: 50em) {
            .newsletter__content__email__button svg {
              opacity: 1;
              transform: translateX(1.5rem); } }
  .newsletter__image {
    width: 40%; }
    @media only screen and (max-width: 50em) {
      .newsletter__image {
        display: none; } }
    .newsletter__image img {
      height: 100%;
      max-height: 60rem;
      width: 100%;
      object-fit: contain;
      object-position: center;
      position: relative; }
      @media only screen and (max-width: 62.5em) {
        .newsletter__image img {
          max-height: 48rem; } }

.contact {
  width: 100%;
  max-width: calc(80rem + 12rem);
  height: min-content; }
  .contact__wrapper {
    padding: 6rem 2rem;
    padding-bottom: 4rem;
    background-color: #fff;
    border: 2px solid #142838;
    border-radius: 0.4rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative; }
    .contact__wrapper__header {
      font-size: 4rem;
      font-weight: 500;
      margin-bottom: 2rem;
      text-align: center;
      color: #142838; }
    .contact__wrapper__message {
      padding: 0 3rem; }
      @media only screen and (max-width: 37.5em) {
        .contact__wrapper__message {
          padding: 0 1rem; } }
      .contact__wrapper__message ul {
        font-size: 1.6rem;
        margin-left: 2rem;
        margin-bottom: 2rem; }
    .contact__wrapper__cta {
      display: flex;
      justify-content: center;
      margin-top: 3rem; }
    .contact__wrapper__intro {
      margin-bottom: 3rem;
      display: flex;
      flex-direction: column;
      align-items: center;
      border-bottom: 1px solid #e6e6e6;
      padding-bottom: 3rem;
      width: 100%;
      max-width: 60rem; }
      .contact__wrapper__intro__departure {
        font-size: 1.6rem;
        font-weight: 700;
        color: #305a7c;
        display: none;
        margin-bottom: 1rem; }
      .contact__wrapper__intro__introtext {
        font-size: 1.6rem;
        text-align: center;
        margin-bottom: 0; }
      .contact__wrapper__intro__icon {
        display: flex;
        justify-content: center; }
        .contact__wrapper__intro__icon svg {
          height: 4rem;
          width: 4rem;
          color: #142838; }
      .contact__wrapper__intro__title {
        font-size: 3rem;
        line-height: 3.5rem;
        color: #142838;
        font-weight: 700;
        text-align: center;
        margin-bottom: 1rem; }
      .contact__wrapper__intro__subtitle {
        font-size: 1.6rem;
        text-align: center;
        margin-bottom: 1.5rem; }
      .contact__wrapper__intro__phone {
        font-size: 3rem;
        color: #142838;
        font-weight: 700;
        text-align: center; }
    .contact__wrapper__form {
      width: 100%;
      max-width: 60rem; }
    .contact__wrapper__outro {
      font-size: 1.3rem; }
      .contact__wrapper__outro a:link,
      .contact__wrapper__outro a:visited {
        color: #305a7c;
        text-decoration: none;
        font-weight: 600; }
    .contact__wrapper__close-button {
      position: absolute;
      top: 3rem;
      right: 3rem; }
      @media only screen and (max-width: 37.5em) {
        .contact__wrapper__close-button {
          top: 2rem; } }

.form-general {
  color: #142838;
  font-family: "Metropolis", sans-serif;
  font-size: 16px; }
  .form-general .wpforms-field-label {
    text-transform: uppercase !important;
    font-size: 1.3rem !important;
    letter-spacing: 0.1rem !important; }
  .form-general .wpforms-field-sublabel {
    font-size: 1.3rem !important; }
  .form-general .wpforms-submit-spinner {
    position: absolute !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    bottom: -4rem !important; }
  .form-general input {
    border-radius: 0px !important; }
  .form-general textarea {
    font-family: "Metropolis", sans-serif !important; }
  .form-general .newsletter-form-text {
    font-size: 1.6rem !important; }
  .form-general button {
    color: #fff !important;
    background-color: #142838 !important;
    padding: 0 3rem !important;
    letter-spacing: 0.3rem !important;
    cursor: pointer;
    border: none !important;
    font-size: 1.3rem !important;
    font-family: "Metropolis", sans-serif !important;
    text-transform: uppercase !important;
    font-weight: 500 !important;
    height: 5rem !important;
    width: 100% !important;
    margin-top: 3rem !important; }
    .form-general button:hover {
      color: #142838 !important;
      background-color: #fff !important;
      box-shadow: inset 0px 0px 0px 2px #142838 !important; }

.wpforms-container input[type=radio] {
  -webkit-appearance: radio !important;
  -moz-appearance: radio !important;
  appearance: radio !important;
  cursor: pointer; }

.wpforms-field-checkbox label {
  cursor: pointer; }

.wpforms-container input[type=checkbox] {
  -webkit-appearance: checkbox !important;
  -moz-appearance: checkbox !important;
  appearance: checkbox !important;
  cursor: pointer; }

.publications {
  padding: 0 3rem;
  padding-bottom: 4.5rem;
  border-top: 1px solid #e6e6e6;
  margin-bottom: 3rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative; }
  .publications__title {
    font-size: 1.6rem;
    font-weight: 600;
    margin-top: 5rem;
    margin-bottom: 2rem;
    color: #142838; }
  .publications__list {
    max-width: 128rem;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    z-index: 5; }
    @media only screen and (max-width: 37.5em) {
      .publications__list {
        width: 80%;
        flex-direction: column;
        flex-wrap: nowrap; } }
    .publications__list__logo-area {
      display: flex;
      align-items: center;
      justify-content: center; }
      .publications__list__logo-area img {
        margin: 2rem 3rem;
        object-fit: contain;
        filter: invert(1); }
        @media only screen and (max-width: 75em) {
          .publications__list__logo-area img {
            transform: scale(0.75);
            margin: 1rem 1.5rem; } }

.header {
  z-index: 100;
  position: fixed;
  width: 100%;
  user-select: none;
  transition: all 0.3s; }
  .header.scrollUp {
    transform: translateY(-7rem); }
  .header__main {
    z-index: 1;
    position: relative;
    display: flex;
    width: 100%;
    justify-content: center;
    align-items: center;
    height: 9rem;
    font-size: 1.3rem;
    text-transform: uppercase;
    letter-spacing: 0.2rem;
    font-weight: 600;
    color: #f8f8f8;
    border-bottom: 1px solid rgba(194, 198, 201, 0.1);
    background-color: rgba(255, 255, 255, 0.1);
    -webkit-backdrop-filter: blur(8px);
    backdrop-filter: blur(8px);
    transition: all 0.3s; }
    @media only screen and (max-width: 62.5em) {
      .header__main {
        justify-content: space-between;
        height: 7rem; } }
    .header__main--clear {
      border-bottom: 1px solid rgba(194, 198, 201, 0);
      background-color: rgba(255, 255, 255, 0);
      -webkit-backdrop-filter: blur(0);
      backdrop-filter: blur(0); }
    .header__main.active {
      background-color: #fff;
      border-bottom: 1px solid rgba(194, 198, 201, 0.9); }
      .header__main.active .header__main__logo-area__logo img {
        filter: brightness(1) invert(0); }
      .header__main.active .header__main__nav__list__item {
        color: #142838; }
        .header__main.active .header__main__nav__list__item:hover {
          color: #40739c; }
      .header__main.active .header__main__right {
        color: #142838; }
        .header__main.active .header__main__right__search {
          color: #142838; }
          .header__main.active .header__main__right__search .nav-search-button {
            color: #142838; }
            .header__main.active .header__main__right__search .nav-search-button::after {
              border: 1px solid rgba(20, 40, 56, 0.6); }
        .header__main.active .header__main__right__contact-link:link, .header__main.active .header__main__right__contact-link:visited {
          color: #142838; }
        .header__main.active .header__main__right__contact-link:hover {
          color: #40739c; }
        .header__main.active .header__main__right__language .trp-language-switcher {
          cursor: pointer;
          color: #142838; }
          .header__main.active .header__main__right__language .trp-language-switcher > div > a {
            color: #142838; }
      .header__main.active .burger-button::after {
        background-color: rgba(20, 40, 56, 0.3); }
      .header__main.active .burger-button__bar {
        background-color: #142838; }
    .header__main.small-nav {
      height: 7rem; }
    .header__main__logo-area {
      width: min-content;
      z-index: 5;
      position: relative;
      display: flex;
      justify-content: flex-end;
      transform: translateY(2px); }
      @media only screen and (max-width: 50em) {
        .header__main__logo-area {
          justify-self: center;
          grid-column: center-start / center-end; } }
      .header__main__logo-area__logo {
        width: min-content;
        margin: 0 4rem;
        width: 17rem; }
        @media only screen and (max-width: 37.5em) {
          .header__main__logo-area__logo {
            margin: 0 2rem;
            margin-left: 2rem; } }
        .header__main__logo-area__logo img {
          transition: all 0.4s;
          filter: brightness(0) invert(1);
          height: 4.5rem;
          width: auto; }
          @media only screen and (max-width: 37.5em) {
            .header__main__logo-area__logo img {
              height: 3.5rem; } }
    .header__main__nav {
      display: flex;
      width: 100%;
      max-width: 108rem;
      justify-content: flex-start;
      z-index: 1800;
      height: 100%;
      transition: all 0.3s; }
      @media only screen and (max-width: 62.5em) {
        .header__main__nav {
          display: none; } }
      .header__main__nav__list {
        display: flex;
        list-style: none;
        height: 100%;
        align-items: center; }
        .header__main__nav__list__item__link {
          color: currentColor;
          display: flex;
          height: 100%;
          align-items: center;
          cursor: pointer;
          transition: all 0.4s;
          text-decoration: none;
          margin-right: 4rem; }
        .header__main__nav__list__item__link:hover {
          color: #40739c; }
    .header__main__right {
      transition: all 0.3s;
      margin-right: 4rem;
      display: flex;
      height: 100%;
      align-items: center;
      color: #e6e6e6; }
      @media only screen and (max-width: 62.5em) {
        .header__main__right {
          margin-right: 0rem; } }
      .header__main__right .divider-left {
        position: relative; }
        .header__main__right .divider-left::before {
          content: "";
          position: absolute;
          left: 0rem;
          height: 3rem;
          width: 1px;
          top: 50%;
          transform: translateY(-50%);
          background-color: rgba(194, 198, 201, 0.5); }
      .header__main__right__agents {
        padding-left: 1.5rem; }
        @media only screen and (max-width: 62.5em) {
          .header__main__right__agents {
            display: none; } }
        .header__main__right__agents a {
          color: currentColor;
          text-decoration: none; }
          .header__main__right__agents a:hover {
            color: #40739c; }
      .header__main__right__search {
        color: #e6e6e6; }
        @media only screen and (max-width: 62.5em) {
          .header__main__right__search {
            display: none; } }
        .header__main__right__search .nav-search-button {
          transition: color 0.3s;
          color: #e6e6e6;
          background-color: transparent;
          padding: 1.2rem 2.5rem;
          border: none;
          margin: 1rem;
          letter-spacing: 0.2rem;
          cursor: pointer;
          outline: none;
          font-family: "Metropolis", sans-serif;
          position: relative;
          text-decoration: none;
          white-space: nowrap;
          line-height: 1.3rem; }
          .header__main__right__search .nav-search-button::after {
            content: "";
            transition: all 0.15s;
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translateX(-50%) translateY(-50%);
            height: 100%;
            width: 100%;
            border-radius: 2.5rem;
            border: 1px solid rgba(194, 198, 201, 0.6); }
          .header__main__right__search .nav-search-button:hover::after {
            height: 95%;
            width: 95%; }
      .header__main__right__contact-link {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 5rem;
        height: 3rem;
        text-decoration: none;
        cursor: pointer;
        transition: color 0.3s; }
        .header__main__right__contact-link:link, .header__main__right__contact-link:visited {
          color: #e6e6e6; }
          .header__main__right__contact-link:link svg, .header__main__right__contact-link:visited svg {
            transform: translateY(-1px);
            stroke-width: 4;
            height: 2rem;
            width: 2rem;
            color: currentColor; }
        .header__main__right__contact-link:hover {
          color: #4381b3; }
        @media only screen and (max-width: 62.5em) {
          .header__main__right__contact-link {
            display: none; } }
        .header__main__right__contact-link span {
          margin-left: 1rem; }
      .header__main__right__phone-desktop {
        display: flex;
        align-items: center;
        justify-content: center;
        color: currentColor;
        text-decoration: none;
        width: 5rem;
        height: 5rem;
        position: relative;
        cursor: pointer; }
        @media only screen and (max-width: 62.5em) {
          .header__main__right__phone-desktop {
            display: none; } }
        .header__main__right__phone-desktop svg {
          transform: translateY(-1px);
          stroke-width: 5;
          height: 1.6rem;
          width: 1.6rem;
          color: currentColor; }
          @media only screen and (max-width: 37.5em) {
            .header__main__right__phone-desktop svg {
              stroke-width: 2; } }
        .header__main__right__phone-desktop:hover .phone-popover {
          visibility: visible; }
        .header__main__right__phone-desktop .phone-popover {
          width: max-content;
          visibility: hidden;
          position: absolute;
          top: 5rem;
          left: 80%;
          transform: translateX(-80%);
          background-color: #fff;
          border: 1px solid #e6e6e6;
          border-radius: 0.4rem;
          font-size: 1.4rem;
          color: #142838;
          text-transform: none;
          letter-spacing: 0; }
          .header__main__right__phone-desktop .phone-popover__container {
            position: relative; }
            .header__main__right__phone-desktop .phone-popover__container__arrow {
              height: 16px;
              width: 16px;
              background-color: #fff;
              position: absolute;
              right: 18%;
              /* Border */
              border-left: 1px solid #e6e6e6;
              border-top: 1px solid #e6e6e6;
              transform: translate(-50%, -50%) rotate(45deg); }
            .header__main__right__phone-desktop .phone-popover__container__content {
              display: flex;
              flex-direction: column;
              padding: 1.5rem 3rem;
              align-items: center; }
              .header__main__right__phone-desktop .phone-popover__container__content__header {
                font-size: 1.2rem;
                text-transform: uppercase;
                letter-spacing: 0.2rem;
                color: #9ea0a4;
                border-bottom: 1px solid #e6e6e6;
                margin-bottom: 0.4rem;
                padding-bottom: 0.2rem; }
              .header__main__right__phone-desktop .phone-popover__container__content__number {
                font-size: 2rem;
                font-weight: 700; }
      .header__main__right__language {
        padding-left: 1.5rem;
        display: flex;
        align-items: center; }
        @media only screen and (max-width: 62.5em) {
          .header__main__right__language {
            display: none; } }
        .header__main__right__language svg {
          transform: translateY(-1px);
          stroke-width: 4;
          height: 2rem;
          width: 2rem;
          color: currentColor; }
        .header__main__right__language .trp-language-switcher {
          cursor: pointer;
          color: #fff;
          transition: color 0.3s; }
          .header__main__right__language .trp-language-switcher > div {
            border: 1px solid transparent;
            background-color: transparent;
            background-image: none;
            width: min-content !important;
            padding: 0.3rem; }
            .header__main__right__language .trp-language-switcher > div > a {
              transition: color 0.3s;
              display: inline-block;
              color: #fff;
              text-decoration: none;
              padding: 0.3rem 0.6rem; }
            .header__main__right__language .trp-language-switcher > div a.trp-ls-shortcode-disabled-language {
              cursor: pointer; }
          .header__main__right__language .trp-language-switcher:hover > div {
            border: 1px solid #e6e6e6;
            background-color: #fff; }
      .header__main__right__phone-mobile {
        display: none;
        color: currentColor;
        cursor: pointer;
        position: relative;
        z-index: 900; }
        @media only screen and (max-width: 37.5em) {
          .header__main__right__phone-mobile {
            display: flex;
            display: none;
            align-items: center;
            justify-content: center;
            height: 100%;
            width: 9rem; } }
        .header__main__right__phone-mobile svg {
          stroke-width: 3;
          height: 2.5rem;
          width: 2.5rem;
          color: currentColor; }
        .header__main__right__phone-mobile__expand {
          display: none;
          position: absolute;
          z-index: 800 !important;
          bottom: 0;
          left: 50%;
          transform: translateY(100%) translateX(-50%);
          height: min-content;
          width: 25rem;
          background-color: #fff;
          border: 1px solid #c2c6c9;
          padding: 3rem;
          text-align: center;
          font-size: 2rem;
          color: #142838;
          opacity: 0; }
          .header__main__right__phone-mobile__expand.active {
            display: flex;
            flex-direction: column;
            animation: fadein 0.3s both;
            animation-timing-function: ease-out;
            opacity: 1; }
          .header__main__right__phone-mobile__expand__title {
            font-size: 1.6rem;
            margin-bottom: 1.5rem; }
          .header__main__right__phone-mobile__expand__cta {
            background-color: #142838; }
            .header__main__right__phone-mobile__expand__cta:link, .header__main__right__phone-mobile__expand__cta:visited {
              color: #fff;
              border: none;
              border-radius: 4rem;
              font-size: 1.6rem;
              font-weight: 600;
              text-transform: uppercase;
              letter-spacing: 0.3rem;
              padding: 1.5rem 3rem;
              cursor: pointer;
              transition: all 0.2s;
              outline: none;
              white-space: nowrap; }
            .header__main__right__phone-mobile__expand__cta:hover {
              background-color: #305a7c; }

.nav-mobile {
  display: none;
  justify-items: center;
  height: 100vh;
  width: 28rem;
  position: fixed;
  z-index: 999999999999999999999;
  top: 0;
  right: 0;
  overflow-x: hidden; }
  .nav-mobile--active {
    display: grid; }
    .nav-mobile--active .burger-button {
      animation: fadein 0.3s both;
      animation-delay: 0.2s; }
  .nav-mobile__content-panel {
    grid-column: 1 / -1;
    grid-row: 1 / span 1;
    background-color: #1d2225;
    width: 100%;
    display: flex;
    flex-direction: column;
    overflow-x: hidden;
    z-index: 20;
    transform: translateX(0%);
    transition: all 0.4s;
    padding-top: 4rem;
    position: relative; }
    .nav-mobile__content-panel.slide-out-left {
      transform: translateX(-100%); }
    .nav-mobile__content-panel .search-button {
      margin-right: 0;
      margin-top: 2rem;
      color: #4381b3; }
    .nav-mobile__content-panel--top {
      animation-name: example;
      animation-duration: 0.3s;
      animation-timing-function: ease-out; }
      .nav-mobile__content-panel--top .nav-mobile__content-panel__button {
        animation-name: example;
        animation-duration: 0.4s;
        animation-timing-function: ease-out;
        animation-fill-mode: both; }
      .nav-mobile__content-panel--top .nav-mobile__content-panel__button:nth-child(1) {
        animation-delay: 0s; }
      .nav-mobile__content-panel--top .nav-mobile__content-panel__button:nth-child(2) {
        animation-delay: 0.05s; }
      .nav-mobile__content-panel--top .nav-mobile__content-panel__button:nth-child(3) {
        animation-delay: 0.1s; }
      .nav-mobile__content-panel--top .nav-mobile__content-panel__button:nth-child(4) {
        animation-delay: 0.15s; }
      .nav-mobile__content-panel--top .nav-mobile__content-panel__button:nth-child(5) {
        animation-delay: 0.2s; }
      .nav-mobile__content-panel--top .nav-mobile__content-panel__button:nth-child(6) {
        animation-delay: 0.25s; }
      .nav-mobile__content-panel--top .nav-mobile__content-panel__button:nth-child(7) {
        animation-delay: 0.3s; }
    .nav-mobile__content-panel--sub {
      z-index: 21;
      transform: translateX(100%);
      grid-template-rows: min-content; }
      .nav-mobile__content-panel--sub.slide-center {
        transform: translateX(0%); }
    .nav-mobile__content-panel .nav-mobile__content-panel__button {
      color: #d9a402;
      font-size: 1.5rem;
      letter-spacing: 0.2rem;
      font-weight: 600;
      background-color: transparent;
      text-decoration: none;
      border: none;
      cursor: pointer;
      text-transform: uppercase;
      outline: none;
      position: relative;
      display: flex;
      justify-content: flex-end;
      align-items: center;
      padding: 1.5rem 2rem;
      padding-right: 5rem;
      text-align: right; }
      .nav-mobile__content-panel .nav-mobile__content-panel__button.divider {
        padding-top: 6rem; }
        .nav-mobile__content-panel .nav-mobile__content-panel__button.divider::after {
          content: "";
          position: absolute;
          height: 1px;
          width: 12rem;
          background-color: #747474;
          top: 2rem;
          right: 5rem; }
      .nav-mobile__content-panel .nav-mobile__content-panel__button:last-child {
        margin-bottom: 14rem; }
      .nav-mobile__content-panel .nav-mobile__content-panel__button svg {
        height: 2.5rem;
        width: 2.5rem;
        fill: #9ea0a4;
        position: absolute;
        top: 50%;
        transform: translateY(-55%); }
      .nav-mobile__content-panel .nav-mobile__content-panel__button.back-link {
        text-align: start;
        margin-bottom: 3rem;
        justify-content: flex-end; }
        .nav-mobile__content-panel .nav-mobile__content-panel__button.back-link svg {
          position: relative;
          margin-right: 1rem; }
        .nav-mobile__content-panel .nav-mobile__content-panel__button.back-link::after {
          content: "";
          position: absolute;
          height: 1px;
          width: 12rem;
          background-color: #747474;
          bottom: -1rem;
          right: 6rem; }
      .nav-mobile__content-panel .nav-mobile__content-panel__button--forward svg {
        right: 2rem; }
        @media only screen and (max-width: 25em) {
          .nav-mobile__content-panel .nav-mobile__content-panel__button--forward svg {
            right: 1rem; } }
    .nav-mobile__content-panel .mobile-language-switch {
      position: absolute;
      bottom: 15rem;
      right: 4rem;
      display: flex;
      align-items: center;
      font-size: 1.5rem;
      color: #d9a402;
      z-index: 9999999; }
      .nav-mobile__content-panel .mobile-language-switch svg {
        transform: translateY(-2px);
        stroke-width: 4;
        height: 2.5rem;
        width: 2.5rem;
        color: currentColor;
        padding-right: 0.2rem; }
      .nav-mobile__content-panel .mobile-language-switch__trp {
        width: 6rem !important; }
        .nav-mobile__content-panel .mobile-language-switch__trp .trp-language-switcher {
          cursor: pointer;
          color: currentColor; }
          .nav-mobile__content-panel .mobile-language-switch__trp .trp-language-switcher > div {
            border: 1px solid transparent;
            background-color: transparent;
            background-image: none;
            width: 5rem !important;
            padding: 0rem; }
            .nav-mobile__content-panel .mobile-language-switch__trp .trp-language-switcher > div > a {
              display: flex;
              justify-content: center;
              align-items: center;
              color: currentColor;
              text-decoration: none;
              width: 40px;
              height: 30px; }
              .nav-mobile__content-panel .mobile-language-switch__trp .trp-language-switcher > div > a:hover,
              .nav-mobile__content-panel .mobile-language-switch__trp .trp-language-switcher > div > a :active {
                background-color: transparent;
                color: #fff; }
            .nav-mobile__content-panel .mobile-language-switch__trp .trp-language-switcher > div a.trp-ls-shortcode-disabled-language {
              cursor: pointer; }
          .nav-mobile__content-panel .mobile-language-switch__trp .trp-language-switcher:hover > div {
            border: 1px solid #747474;
            background-color: transparent; }

.nav-mega-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 1000%;
  background-image: linear-gradient(to left, rgba(30, 30, 30, 0.5), rgba(30, 30, 30, 0.5));
  z-index: -1;
  display: none; }
  .nav-mega-overlay.active {
    display: block;
    animation: fadein 0.3s;
    opacity: 1; }

.nav-mega {
  z-index: 18;
  display: none;
  width: 100%;
  justify-content: center;
  background-color: #fff;
  border-bottom: 1px solid #c2c6c9;
  transition: all 0.5s;
  opacity: 0;
  position: relative; }
  .nav-mega.active {
    display: flex;
    animation: fadein 0.3s;
    opacity: 1; }
  .nav-mega__nav {
    display: flex;
    width: 100%;
    max-width: 114rem;
    justify-content: space-between;
    color: #142838;
    text-decoration: none;
    font-weight: 600;
    font-size: 1.3rem;
    text-transform: uppercase;
    letter-spacing: 0.2rem; }
    .nav-mega__nav__link {
      text-decoration: none;
      color: currentColor;
      width: 100%;
      margin: 2rem 0;
      text-align: center;
      position: relative; }
      .nav-mega__nav__link:hover {
        color: #40739c; }
      .nav-mega__nav__link:not(:last-child):after {
        content: "";
        height: 100%;
        width: 1px;
        background-color: #e6e6e6;
        position: absolute;
        right: 0;
        top: 0; }
    .nav-mega__nav__sub-group {
      position: relative;
      margin: 3rem 0; }
      .nav-mega__nav__sub-group:not(:last-child) {
        margin-right: 6rem; }
      .nav-mega__nav__sub-group__title {
        transition: all 0.2s; }
        .nav-mega__nav__sub-group__title:link, .nav-mega__nav__sub-group__title:visited {
          color: #142838;
          text-decoration: none; }
        .nav-mega__nav__sub-group__title:hover {
          color: #40739c; }
      .nav-mega__nav__sub-group__list {
        color: #747474;
        margin-top: 0.75rem;
        list-style: none;
        font-size: 1.4rem;
        letter-spacing: 0.1rem;
        text-transform: none; }
      .nav-mega__nav__sub-group__item {
        margin: 0.5rem;
        margin-left: 0; }
      .nav-mega__nav__sub-group__link {
        transition: all 0.2s; }
        .nav-mega__nav__sub-group__link:link, .nav-mega__nav__sub-group__link:visited {
          text-decoration: none;
          font-weight: 400;
          color: #747474; }
        .nav-mega__nav__sub-group__link:hover, .nav-mega__nav__sub-group__link:active {
          color: #40739c; }
  .nav-mega__nav-arctic {
    justify-self: center;
    display: flex;
    width: 100%;
    max-width: 120rem;
    color: #142838;
    text-decoration: none;
    font-weight: 600;
    font-size: 1.3rem;
    text-transform: uppercase;
    letter-spacing: 0.2rem; }
    .nav-mega__nav-arctic__menu {
      border-left: 1px solid #e6e6e6;
      padding: 2rem 4rem;
      padding-top: 0;
      margin: 2rem 0;
      width: 35rem; }
      .nav-mega__nav-arctic__menu__title {
        font-weight: 300;
        font-size: 1.1rem;
        padding-bottom: 1rem; }
      .nav-mega__nav-arctic__menu__list {
        list-style: none; }
        .nav-mega__nav-arctic__menu__list__item {
          padding-bottom: 1rem; }
          .nav-mega__nav-arctic__menu__list__item__link {
            text-decoration: none; }
            .nav-mega__nav-arctic__menu__list__item__link:link, .nav-mega__nav-arctic__menu__list__item__link:visited {
              color: #3b3b3b; }
              .nav-mega__nav-arctic__menu__list__item__link:link svg, .nav-mega__nav-arctic__menu__list__item__link:visited svg {
                transform: translateY(-1px);
                stroke-width: 4;
                height: 2rem;
                width: 2rem;
                color: currentColor; }
            .nav-mega__nav-arctic__menu__list__item__link:hover {
              color: #40739c; }
            .nav-mega__nav-arctic__menu__list__item__link.active {
              color: #40739c !important; }
    .nav-mega__nav-arctic__content-area {
      height: 100%;
      width: 100%; }
      .nav-mega__nav-arctic__content-area__panel {
        display: none;
        grid-template-columns: 50rem 1fr;
        height: 100%;
        width: 100%; }
        .nav-mega__nav-arctic__content-area__panel.active {
          display: grid; }
        .nav-mega__nav-arctic__content-area__panel__description {
          border-left: 1px solid #e6e6e6;
          padding: 2rem 4rem;
          padding-top: 0;
          margin: 2rem 0; }
          .nav-mega__nav-arctic__content-area__panel__description__title {
            font-size: 1.8rem;
            font-weight: 500;
            text-transform: uppercase;
            letter-spacing: 0.1rem;
            margin-bottom: 1rem; }
          .nav-mega__nav-arctic__content-area__panel__description__snippet {
            font-size: 1.6rem;
            font-weight: 400;
            text-transform: none;
            letter-spacing: 0rem;
            margin-bottom: 3rem; }
        .nav-mega__nav-arctic__content-area__panel__image-area {
          border-left: 1px solid #e6e6e6;
          padding: 2rem 4rem;
          padding-top: 0;
          margin-top: 2rem;
          width: 100%; }
          .nav-mega__nav-arctic__content-area__panel__image-area.ship {
            border-left: none; }
          .nav-mega__nav-arctic__content-area__panel__image-area img {
            width: 100%;
            height: auto;
            border-radius: 4px; }

.nav-secondary {
  width: 100%;
  background-color: #fff;
  border-bottom: 1px solid #c2c6c9;
  height: 5rem;
  display: none;
  justify-content: center;
  opacity: 0;
  z-index: 0; }
  .nav-secondary.active {
    display: flex;
    animation: fadein 0.4s;
    opacity: 1; }
  .nav-secondary.mega-hide {
    display: none !important; }
  .nav-secondary__main {
    flex-grow: 1;
    display: flex;
    font-size: 1.3rem;
    text-transform: uppercase;
    letter-spacing: 0.2rem;
    font-weight: 600;
    align-items: center;
    height: 100%;
    padding: 0 4rem; }
    @media only screen and (max-width: 62.5em) {
      .nav-secondary__main {
        justify-content: space-between;
        padding: 0rem; } }
    .nav-secondary__main__title-area {
      display: flex;
      justify-content: flex-end;
      position: relative;
      margin-right: 1rem;
      flex-grow: 1;
      width: min-content;
      height: 100%; }
      @media only screen and (max-width: 62.5em) {
        .nav-secondary__main__title-area {
          margin-right: 0rem;
          justify-content: flex-start;
          flex-grow: 1; }
          .nav-secondary__main__title-area::after {
            display: none; } }
      .nav-secondary__main__title-area__title {
        text-decoration: none;
        height: 100%;
        display: flex;
        align-items: center;
        text-align: right;
        white-space: nowrap; }
        @media only screen and (max-width: 62.5em) {
          .nav-secondary__main__title-area__title {
            display: none;
            white-space: normal; } }
        .nav-secondary__main__title-area__title:link, .nav-secondary__main__title-area__title:visited {
          color: #142838;
          font-weight: 700; }
        .nav-secondary__main__title-area__title:hover {
          color: #40739c; }
      .nav-secondary__main__title-area::after {
        content: "";
        position: absolute;
        right: -2rem;
        top: 50%;
        width: 1px;
        height: 50%;
        transform: translateY(-50%);
        background-color: #e6e6e6; }
      .nav-secondary__main__title-area__button {
        border: none;
        background-color: transparent;
        font-size: 1.4rem;
        line-height: 1.7rem;
        letter-spacing: 0.2rem;
        text-transform: uppercase;
        font-weight: 600;
        height: 100%;
        cursor: pointer;
        color: #142838;
        width: 100%;
        font-family: "Metropolis", sans-serif;
        outline: none;
        display: none; }
        @media only screen and (max-width: 62.5em) {
          .nav-secondary__main__title-area__button {
            display: flex;
            justify-content: start;
            align-items: center; } }
        @media only screen and (max-width: 22em) {
          .nav-secondary__main__title-area__button {
            font-size: 1.2rem;
            line-height: 1.5rem; } }
        .nav-secondary__main__title-area__button__icon-area {
          display: flex;
          justify-content: center;
          align-items: center;
          width: 9rem;
          height: 100%;
          border-right: 1px solid #c2c6c9; }
          @media only screen and (max-width: 37.5em) {
            .nav-secondary__main__title-area__button__icon-area {
              width: 7rem; } }
          .nav-secondary__main__title-area__button__icon-area svg {
            height: 2.5rem;
            width: 2.5rem;
            fill: #142838;
            transition: all 0.2s;
            transform: rotate(90deg);
            opacity: 1; }
        .nav-secondary__main__title-area__button__text-area {
          width: 100%;
          height: 100%;
          display: flex;
          align-items: center;
          justify-content: start;
          text-align: start;
          padding-left: 2rem; }
        .nav-secondary__main__title-area__button.active svg {
          transform: rotate(-90deg);
          opacity: 1; }
    .nav-secondary__main__links {
      max-width: 114rem;
      width: 100%;
      display: flex;
      list-style: none; }
      @media only screen and (max-width: 62.5em) {
        .nav-secondary__main__links {
          display: none; } }
      .nav-secondary__main__links li {
        margin-left: 3rem; }
        .nav-secondary__main__links li a {
          text-decoration: none; }
          .nav-secondary__main__links li a:visited, .nav-secondary__main__links li a:link {
            color: #747474;
            transition: color 0.3s;
            font-weight: 600; }
          .nav-secondary__main__links li a:hover {
            color: #40739c; }
          .nav-secondary__main__links li a.current {
            color: #40739c; }
    .nav-secondary__main__cta {
      flex-grow: 1;
      width: max-content;
      display: flex; }
      @media only screen and (max-width: 62.5em) {
        .nav-secondary__main__cta {
          margin-right: 3rem;
          margin-left: 1rem;
          flex-grow: 0; }
          .nav-secondary__main__cta::after {
            display: none; } }

.nav-secondary-mobile {
  display: none;
  opacity: 0;
  background-color: #fff;
  border-bottom: 1px solid #c2c6c9; }
  .nav-secondary-mobile.active {
    display: flex;
    animation: fadein 0.4s;
    opacity: 1; }
    .nav-secondary-mobile.active::after {
      content: "";
      position: absolute;
      height: 1000%;
      width: 100%;
      background-color: rgba(30, 30, 30, 0.7);
      bottom: -1000%;
      left: 0;
      z-index: 40; }
    .nav-secondary-mobile.active ul li {
      animation: SlideFromLeft;
      animation-duration: 0.4s;
      animation-timing-function: ease-out;
      animation-fill-mode: both; }
    .nav-secondary-mobile.active ul li:nth-child(1) {
      animation-delay: -0.2s; }
    .nav-secondary-mobile.active ul li:nth-child(2) {
      animation-delay: -0.15s; }
    .nav-secondary-mobile.active ul li:nth-child(3) {
      animation-delay: -0.1s; }
    .nav-secondary-mobile.active ul li:nth-child(4) {
      animation-delay: -0.05s; }
    .nav-secondary-mobile.active ul li:nth-child(5) {
      animation-delay: 0s; }
    .nav-secondary-mobile.active ul li:nth-child(6) {
      animation-delay: 0.05s; }
  .nav-secondary-mobile__list {
    display: flex;
    flex-direction: column;
    list-style: none;
    width: 100%;
    margin: 1rem 0; }
    .nav-secondary-mobile__list__item {
      width: 100%;
      height: 5rem; }
      .nav-secondary-mobile__list__item__link {
        height: 100%;
        width: 100%;
        display: flex;
        align-items: center;
        padding-left: 4rem; }
        .nav-secondary-mobile__list__item__link:link, .nav-secondary-mobile__list__item__link:visited {
          text-decoration: none;
          color: #142838;
          cursor: pointer;
          font-size: 1.4rem;
          line-height: 1.7rem;
          font-weight: 600;
          text-transform: uppercase;
          letter-spacing: 0.2rem; }
        .nav-secondary-mobile__list__item__link:hover {
          color: #40739c; }
        .nav-secondary-mobile__list__item__link.current {
          color: #40739c; }

.burger-button {
  cursor: pointer;
  display: none;
  height: 7rem;
  width: 8rem;
  justify-content: center;
  align-items: center;
  transition: all 0.3s; }
  @media only screen and (max-width: 62.5em) {
    .burger-button {
      display: flex; } }
  @media only screen and (max-width: 37.5em) {
    .burger-button {
      display: flex; } }
  .burger-button__bar {
    width: 2.7rem;
    height: 1px;
    background-color: #fff;
    display: block; }
    .burger-button__bar::before {
      content: "";
      position: absolute;
      transform: translateY(-0.7rem);
      width: 2.7rem;
      height: 1px;
      background-color: inherit;
      display: block;
      transition: transform 0.3s; }
    .burger-button__bar::after {
      content: "";
      position: absolute;
      transform: translateY(0.7rem);
      width: 2.7rem;
      height: 1px;
      background-color: inherit;
      display: block;
      transition: transform 0.3s; }
  .burger-button.close {
    position: absolute;
    top: 0;
    right: 20rem;
    z-index: 999999999; }
    .burger-button.close .burger-button__bar {
      visibility: hidden; }
      .burger-button.close .burger-button__bar::before {
        transform: rotate(-45deg) translateY(0);
        visibility: visible; }
      .burger-button.close .burger-button__bar::after {
        transform: rotate(45deg) translateY(0);
        visibility: visible; }
    .burger-button.close:hover .burger-button__bar {
      visibility: hidden; }
      .burger-button.close:hover .burger-button__bar::before {
        transform: rotate(-45deg) translateY(0);
        visibility: visible; }
      .burger-button.close:hover .burger-button__bar::after {
        transform: rotate(45deg) translateY(0);
        visibility: visible; }

.change .bar-1 {
  -webkit-transform: rotate(-45deg) translate(-10px, 5px);
  transform: rotate(-45deg) translate(-10px, 8px); }

.change .bar-2 {
  opacity: 0; }

.change .bar-3 {
  -webkit-transform: rotate(45deg) translate(-10px, 5px);
  transform: rotate(45deg) translate(-10px, -5px); }

@keyframes example {
  from {
    transform: translateX(100%);
    opacity: 0; }
  to {
    transform: translateX(0%);
    opacity: 1; } }

@keyframes SlideFromLeft {
  from {
    transform: translateX(-100%);
    opacity: 0; }
  to {
    transform: translateX(0%);
    opacity: 1; } }

.footer {
  grid-row: footer-start / footer-end;
  grid-column: full-start / full-end;
  background-color: #1d2225;
  display: grid;
  grid-template-columns: [full-start] minmax(6rem, 1fr) [center-start] repeat(8, [col-start] minmax(min-content, 14rem) [col-end]) [center-end] minmax(6rem, 1fr) [full-end];
  grid-template-rows: 15rem repeat(2, min-content) 15rem;
  color: #fff;
  font-size: 1.6rem;
  position: relative; }
  @media only screen and (max-width: 50em) {
    .footer {
      grid-template-rows: 15rem repeat(5, min-content);
      justify-items: center; } }
  @media only screen and (max-width: 37.5em) {
    .footer {
      grid-template-columns: [full-start] minmax(3rem, 1fr) [center-start] repeat(8, [col-start] minmax(min-content, 14rem) [col-end]) [center-end] minmax(3rem, 1fr) [full-end];
      font-size: 1.2rem; } }
  .footer::after {
    content: "";
    grid-column: 1 / -1;
    grid-row: 1 / span 1;
    height: 2px;
    width: 100%;
    background-color: #fff;
    margin-top: 7.5rem; }
  .footer__first {
    grid-row: 1 / span 1;
    grid-column: center-start / center-end;
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative; }
    .footer__first__compass {
      background-color: #1d2225;
      padding: 0 2rem; }
      .footer__first__compass svg {
        transform: translateY(0.5rem);
        height: 7rem;
        width: 7rem;
        fill: currentColor;
        stroke-width: 1.5; }
    .footer__first__social {
      display: flex;
      background-color: #1d2225;
      padding: 0 1rem; }
      .footer__first__social__link:link, .footer__first__social__link:visited {
        color: #fff;
        transition: all 0.2s; }
      .footer__first__social__link:hover {
        color: #d9a402; }
      .footer__first__social__link svg {
        height: 3rem;
        width: 3rem;
        fill: currentColor;
        margin: 0rem 1rem; }
      @media only screen and (max-width: 37.5em) {
        .footer__first__social {
          display: none; } }
  .footer__tagline {
    grid-row: 2 / span 1;
    grid-column: center-start / col-end 6;
    font-size: 6rem;
    line-height: 7rem;
    font-weight: 500;
    letter-spacing: 0.2rem;
    font-family: "Playfair Display", serif;
    margin-right: 5rem; }
    @media only screen and (max-width: 50em) {
      .footer__tagline {
        grid-row: 2 / span 1;
        grid-column: center-start / center-end;
        text-align: center;
        margin-right: 0; } }
    @media only screen and (max-width: 37.5em) {
      .footer__tagline {
        font-size: 4rem;
        line-height: 5rem; } }
  .footer__explore {
    grid-row: 2 / span 1;
    grid-column: col-end 6 / center-end;
    display: flex;
    flex-direction: column;
    align-content: center;
    justify-content: center; }
    @media only screen and (max-width: 50em) {
      .footer__explore {
        grid-row: 3 / span 1;
        grid-column: center-start / center-end;
        max-width: 80%;
        margin-top: 4rem; } }
    @media only screen and (max-width: 37.5em) {
      .footer__explore {
        max-width: 95%; } }
    .footer__explore__cta {
      display: flex;
      justify-content: center; }
      .footer__explore__cta__button {
        background-color: transparent;
        border: 2px solid #d9a402;
        text-transform: uppercase;
        padding: 1.8rem 3.6rem;
        font-family: "Metropolis", sans-serif;
        color: #fff;
        white-space: nowrap;
        font-size: 1.5rem;
        letter-spacing: 0.3rem;
        font-weight: 500;
        text-align: center;
        margin-bottom: 2rem;
        cursor: pointer;
        transition: all 0.2s; }
        .footer__explore__cta__button:link, .footer__explore__cta__button:visited {
          text-decoration: none; }
        .footer__explore__cta__button:hover {
          background-color: #d9a402;
          color: #1e1e1e; }
    .footer__explore__phone {
      display: flex;
      justify-content: center;
      font-size: 1.5rem;
      letter-spacing: 0.3rem;
      font-weight: 500;
      width: 100%; }
  .footer__navigation {
    grid-row: 3 / span 1;
    grid-column: center-start / center-end;
    width: 100%;
    margin: 6rem 0;
    display: flex;
    justify-content: space-between; }
    @media only screen and (max-width: 50em) {
      .footer__navigation {
        grid-row: 4 / span 1;
        display: grid;
        grid-template-columns: 1fr 1fr;
        justify-content: center;
        column-gap: 1rem;
        row-gap: 5rem;
        text-align: center; } }
    .footer__navigation__group__title {
      color: #d9a402;
      text-transform: uppercase;
      letter-spacing: 0.3rem;
      font-weight: 500; }
    .footer__navigation__group__nav__list {
      list-style: none; }
      .footer__navigation__group__nav__list__item {
        margin: 0.5rem 0; }
        .footer__navigation__group__nav__list__item a:link, .footer__navigation__group__nav__list__item a:visited {
          text-decoration: none;
          letter-spacing: 0.1rem;
          font-size: 1.5rem;
          font-weight: 300;
          color: #fff;
          position: relative; }
          @media only screen and (max-width: 37.5em) {
            .footer__navigation__group__nav__list__item a:link, .footer__navigation__group__nav__list__item a:visited {
              font-size: 1.2rem; } }
        .footer__navigation__group__nav__list__item a::after {
          content: "";
          position: absolute;
          height: 1px;
          width: 0%;
          bottom: -0.5rem;
          left: 0;
          background-color: #f8f8f8;
          transition: all 0.2s; }
        .footer__navigation__group__nav__list__item a:hover::after {
          content: "";
          width: 100%; }
  .footer__logo {
    grid-row: 4 / span 1;
    grid-column: center-start / span 2;
    display: flex;
    align-items: center; }
    @media only screen and (max-width: 50em) {
      .footer__logo {
        grid-row: 5 / span 1;
        grid-column: center-start / center-end;
        margin-bottom: 3rem; } }
    .footer__logo img {
      filter: brightness(0) invert(1);
      height: 10rem;
      width: auto; }
  .footer__copyright {
    grid-row: 4 / span 1;
    grid-column: col-start 5 / center-end;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-end;
    letter-spacing: 0.1rem;
    font-size: 1.5rem;
    font-weight: 300; }
    @media only screen and (max-width: 50em) {
      .footer__copyright {
        grid-row: 6 / span 1;
        grid-column: center-start / center-end;
        margin: 1rem 0;
        text-align: center;
        align-items: center; } }

.page-nav {
  justify-content: space-between;
  z-index: 50;
  display: none;
  position: relative; }
  .page-nav__button {
    display: flex;
    letter-spacing: 0.4rem;
    text-transform: uppercase;
    justify-content: start;
    align-items: center;
    font-size: 1.5rem;
    height: 100%;
    cursor: pointer;
    padding: 1.5rem 3rem;
    color: #142838;
    width: max-content;
    outline: none; }
    .page-nav__button svg {
      height: 2rem;
      width: 2rem;
      fill: #c2c6c9;
      transition: all 0.2s;
      opacity: 1;
      margin-left: 1rem; }
    .page-nav__button.active svg {
      transform: rotate(90deg);
      opacity: 1; }
  .page-nav__cta {
    display: none;
    align-items: center; }
    @media only screen and (max-width: 62.5em) {
      .page-nav__cta {
        display: flex; } }
    .page-nav__cta button {
      margin: 0 3rem;
      border-radius: 2rem; }
  .page-nav__collapse {
    grid-column: 1/ -1;
    display: none; }
    .page-nav__collapse--active {
      display: block; }
      .page-nav__collapse--active::after {
        content: "";
        position: absolute;
        height: 1000%;
        width: 100%;
        background-color: rgba(30, 30, 30, 0.3);
        bottom: -1000%;
        left: 0;
        z-index: 40; }
    .page-nav__collapse__list {
      list-style: none;
      font-size: 1.5rem;
      letter-spacing: 0.4rem;
      text-transform: uppercase;
      background-color: #fff;
      width: 100%;
      display: block  !important;
      transition: all 0.2s; }
      .page-nav__collapse__list__item__link {
        display: block;
        padding: 2rem 0;
        padding-left: 3rem;
        text-align: start;
        width: 100%; }
        .page-nav__collapse__list__item__link:link, .page-nav__collapse__list__item__link:visited {
          text-decoration: none;
          color: #142838;
          cursor: pointer; }
          .page-nav__collapse__list__item__link:link:not(:last-child), .page-nav__collapse__list__item__link:visited:not(:last-child) {
            border-bottom: 1px solid rgba(194, 198, 201, 0.9); }
          .page-nav__collapse__list__item__link:link:first-child, .page-nav__collapse__list__item__link:visited:first-child {
            border-top: 1px solid rgba(194, 198, 201, 0.9); }
        .page-nav__collapse__list__item__link:hover {
          color: #40739c; }

.page-nav-title {
  color: #40739c;
  font-weight: 500;
  font-size: 1.3rem;
  letter-spacing: 0.3rem;
  text-transform: uppercase;
  align-items: center;
  justify-content: flex-end;
  margin-right: 4rem;
  position: relative;
  display: none; }
  .page-nav-title::after {
    content: "";
    position: absolute;
    right: -2rem;
    top: 50%;
    width: 1px;
    height: 50%;
    transform: translateY(-50%);
    background-color: #e6e6e6; }

#page-nav {
  width: 100%;
  grid-column: 1 / -1;
  display: flex;
  justify-content: center;
  border-bottom: 1px solid rgba(194, 198, 201, 0.9);
  background-color: #fff;
  position: relative; }
  @media only screen and (max-width: 50em) {
    #page-nav {
      flex-direction: column; } }
  #page-nav .page-nav-title {
    display: flex; }
    @media only screen and (max-width: 50em) {
      #page-nav .page-nav-title {
        display: none; } }
  #page-nav ul {
    width: max-content;
    margin-bottom: 0; }
    @media only screen and (max-width: 50em) {
      #page-nav ul {
        display: none;
        width: 100%; } }
    #page-nav ul li a:link, #page-nav ul li a:visited {
      color: #9ea0a4;
      font-weight: 500;
      font-size: 1.3rem;
      letter-spacing: 0.3rem;
      text-transform: uppercase; }
    #page-nav ul li a:hover {
      color: #40739c; }
      #page-nav ul li a:hover::after {
        display: none; }
    #page-nav ul li a.current {
      color: #40739c; }
  @media only screen and (max-width: 50em) {
    #page-nav {
      justify-content: space-between; }
      #page-nav .page-nav {
        width: 100%;
        display: flex; } }
