/* stylelint-disable order/order */
/*
* Converts an pixel value into a rem value.
*
* @param string  $values    the pixel value(s) as a number. Can convert multiple values if values separated by a space.
* @param integer $base      the base pixel value.
*
* @return string   a space-separated string of rem values.
*/
/*
* This is an abbreviated wrapper for the responsive-values function.
*/
/*
* Creates a CSS clamp value that sizes between breakpoints.
*
* @param integer $min                    the minimum pixel value.
* @param integer $max                    the maximum pixel value.
* @param string  $smallest-breakpoint    the name of the smallest breakpoint from the $grid-breakpoints variable.
* @param string  $largest-breakpoint     the name of the largest breakpoint from the $grid-breakpoints variable.
* @param string  $screen                 whether to use a horizontal (width) breakpoint or a vertical (height) breakpoint.
*
* @return string   a CSS clamp property value.
*/
/*
* Outputs a font family value from the $fonts variable.
*
* @param string  $key   the font key.
*
* @return string   a font family value.
*/
/*
* Outputs a color value from the $paints or $additional-paints variables.
*
* @param string  $key   the color name.
*
* @return string   a color value.
*/
/*
* Outputs an effect value from the $effects variable.
*
* @param string  $key   the effect name.
*
* @return string   an effect value.
*/
/* stylelint-enable order/order */
/*
* Used to target heading selectors.
*
* @param integer  $start               the first heading element to target. 1 through 6.
* @param integer  $end                 the last heading element to target. 1 through 6.
* @param string   $beforeCombinator    the CSS combinator to include before the heading classes.
* @param string   $afterCombinator     the CSS combinator to include after the heading classes.
* @param boolean  $includeFontClasses  whether or not to include the .has-t-1... classes or just output the standard heading elements.
*
* @return string  The included CSS wrapped with selectors for the specified headings.
*/
/*
* Used to add properties to a for a pseudo element to make an icon based on the iconfont set.
*
* @param string   $content     the content for the icon. Usually uses one of the iconfont variables.
* @param string   $font-size   the font size with unit.
*
* @return string  The CSS properties for the icon.
*/
/*
* Generates CSS to fit an element into the 12-column grid. Only works when used on an element where the parent element is the width of the entire page.
*
* @return string  CSS properties to set the width of the element to the specified column sizes.
*/
/*
* Used to target elements with a background color that has a text color different from the standard color.
*
* @return string  The included CSS wrapped with selectors for the specified background.
*/
/*
* Used to add the CSS Grid properties for the 12-column grid.
*
* @return string  The CSS Grid properties for the 12-column grid.
*/
/* Quick Positioning */
/****************
 * Fonts
 *
 * The font settings are defined via the gulp figma which task creates variables in the css/__base-includes/figma/_figma-font-styles.scss file based on the Figma file. Additional variables are defined here.
 ****************/
/*
* This array is used to specify the fonts used on the project with the following parameters:
	base - the name for use in the font() mixin.
		css - the output CSS value.
		figma-name: - the 'font-family' name ued in the _figma-font-variable.scss file.
	)
*/
/****************
 * Colors
 *
 * The primary colors are defined via the gulp figma task which creates variables in the css/__base-includes/figma/_figma-color-variables.scss file based on the Figma file. Additional variables are defined here.
 ****************/
/* If additional colors need to be added to the _figma-color-variables.scss, they can be added to this variable: */
/* This variable controls the background colors generated in the ACF background_color field and the background color classes - bg-white, bg-gray-92, etc: */
/* If a background color uses a different font color than the default color, use these variables to specify the alternate colors */
/* Backgrounds specified in this variable will use the alternative text colors: */
/****************
 * Effects
 ****************/
/****************
 * Grid Settings
 ****************/
/****************
 * Block Spacing
 *
 * These variables are based on the "Spacing" rules found in the "Foundations" section in Figma. These control the default spacing between blocks of different colors.
 ****************/
/*
This file can be used for optional additions to the Figma-generated font style mixins in the figma/_figma-font-styles.scss file.

For example, if you want to add styles to the @overline mixin, just create a mixin here called @overline-custom and that CSS will be added to the primary mixin:

@mixin overline-custom() {
	font-weight: 700;
}
*/
.single-tc_trip {
  background-color: #f7f7f7;
  overflow-x: hidden;
}

.table-of-contents__title[data-id=gallery] {
  display: none;
}

.trip-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media (max-width: 61.98rem) {
  .trip-grid {
    display: block;
    padding: 0 !important;
  }
}
.trip-grid--full-width .trip-grid__content-area {
  width: 100%;
}
.trip-grid__navigation-wrapper {
  grid-column-start: 2;
  position: sticky;
  top: var(--header-bar-height);
  align-self: flex-start;
  width: 17.5rem;
  z-index: 3;
}
@media (max-width: 61.98rem) {
  .trip-grid__navigation-wrapper {
    width: 100%;
    height: 3.125rem;
    overflow: hidden;
    margin-bottom: 1.875rem;
    padding: 0 1.25rem;
  }
}
@media (max-width: 61.98rem) {
  .trip-grid__navigation-wrapper.active {
    height: initial;
    overflow: visible;
  }
}
.trip-grid__navigation-wrapper.active .table-of-contents__title {
  display: block;
}
.trip-grid__content-area {
  width: calc(100% - 20.625rem);
  overflow: hidden;
}
@media (min-width: 62rem) {
  .trip-grid__content-area {
    overflow: visible !important;
  }
}
@media (max-width: 61.98rem) {
  .trip-grid__content-area > * {
    padding: 0 1.25rem;
  }
}
@media (max-width: 61.98rem) {
  .trip-grid__content-area {
    width: 100%;
  }
}
.trip-grid__navigation {
  position: sticky;
  top: 0;
  padding: 2rem 1.875rem 1.375rem 1.875rem;
  z-index: 3;
}
@media (max-width: 61.98rem) {
  .trip-grid__navigation {
    padding: 0;
  }
}
.trip-grid__navigation .c-btn {
  width: 100%;
  margin-bottom: 1rem;
}
@media (max-width: 61.98rem) {
  .trip-grid__navigation .c-btn {
    margin-left: 1.25rem;
    margin-right: 1.25rem;
    width: calc(100% - 2.5rem);
  }
}
.trip-grid__navigation .c-btn--secondary {
  padding-left: 1rem;
  padding-right: 1rem;
}
@media (max-width: 61.98rem) {
  .trip-grid__nav-contacts {
    padding: 0 1.25rem 1.25rem 1.25rem;
  }
}
.trip-grid__nav-contacts p {
  font-weight: var(--t5-font-weight);
  font-size: var(--t5-font-size);
  font-family: var(--t5-font-family);
  line-height: var(--t5-line-height);
  --margin-top: 2em;
  margin-bottom: var(--t5-margin-bottom);
  text-align: center;
  color: #0f4374;
}
.trip-grid__nav-contacts p:last-child {
  margin-bottom: 0;
}
.trip-grid__side-width {
  grid-column-start: 4;
}
@media (max-width: 61.98rem) {
  .trip-grid__side-width {
    padding: 0 1.25rem;
  }
}
.trip-grid__full-width {
  grid-column: 1/-1;
  width: 100vw;
  position: relative;
  overflow: hidden !important;
}
@media (max-width: 61.98rem) {
  .trip-grid__full-width {
    width: 100%;
    left: auto;
    right: auto;
  }
}
.trip-grid__full-width::before {
  content: "";
  position: absolute;
  top: 0;
  left: -50%;
  bottom: 0;
  right: -50%;
  background-color: #041a2f;
}
.trip-grid__full-width .slick-slider, .trip-grid__full-width .slick-list {
  overflow: visible !important;
}
.trip-grid__full-width .gallery-slider__single-slide {
  padding: 0 0.5rem;
}
@media (max-width: 61.98rem) {
  .trip-grid__full-width .block-slider-gallery--flexible .gallery-slider--fluid .slick-arrow.slick-next, .trip-grid__full-width .block-slider-gallery--flexible .gallery-slider--fluid .slick-arrow.slick-prev {
    display: none;
  }
}
.trip-grid__full-width .block-slider-gallery--flexible .gallery-slider--fluid .slick-arrow.slick-next {
  right: 1.875rem;
}
.trip-grid__full-width .block-slider-gallery--flexible .gallery-slider--fluid .slick-arrow.slick-prev {
  left: 1.875rem;
}
.trip-grid__full-bg {
  position: relative;
  overflow: visible !important;
}
@media (max-width: 61.98rem) {
  .trip-grid__full-bg {
    overflow: hidden !important;
  }
}
.trip-grid__full-bg::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100vw;
  left: calc(0px - var(--trip-from-left));
  z-index: -1;
}
.trip-grid__full-bg.bg-neutral-94::before {
  background-color: #f0f0f0;
}
.trip-grid__content-area-element_bg:before {
  background-color: #f0f0f0;
}
.trip-grid__navigation {
  background: #fff;
  box-shadow: 0rem 0rem 0.625rem rgba(0, 0, 0, 0.1);
}
.trip-grid .block-slider-gallery {
  position: relative;
  overflow: hidden;
}
@media (min-width: 62rem) {
  .trip-grid .block-slider-gallery {
    z-index: 13;
  }
}
.trip-grid__mobile-nav-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.75rem;
  border: 0.0625rem solid #c6cad1;
}
@media (min-width: 62rem) {
  .trip-grid__mobile-nav-header {
    display: none;
  }
}
.trip-grid__mobile-nav-header::after {
  content: "\ea22";
  font-weight: 400;
  font-size: 1.5rem;
  font-family: "iconfont-propel";
  font-style: normal;
  font-variant: normal;
  line-height: 1;
  text-transform: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 0.25rem;
}

.table-of-contents {
  padding: 0;
  margin-bottom: 1.5rem;
  position: relative;
}
@media (max-width: 61.98rem) {
  .table-of-contents {
    padding: 0.9375rem 1.5rem;
  }
}
@media (max-width: 61.98rem) {
  .table-of-contents::before {
    content: "";
    width: 100%;
    left: 0;
    height: 0.0625rem;
    position: absolute;
    background-color: #c6cad1;
    bottom: 0;
  }
}
.table-of-contents__title {
  list-style: none;
  margin-bottom: 0.5rem;
  position: relative;
  line-height: 1.5rem;
}
@media (max-width: 61.98rem) {
  .table-of-contents__title {
    display: none;
    margin-bottom: 1rem;
  }
}
.table-of-contents__title.active::before {
  content: "";
  height: 0.09375rem;
  width: 1.4375rem;
  left: -1.875rem;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background-color: #041a2f;
}
@media (max-width: 61.98rem) {
  .table-of-contents__title.active::before {
    display: none;
  }
}
@media (min-width: 62rem) {
  .table-of-contents__title.active .table-of-contents__title-link {
    color: #041a2f;
  }
}
.table-of-contents__title-link {
  color: #737373;
}
@media (max-width: 61.98rem) {
  .table-of-contents__title-link {
    font-size: 0.9375rem;
    line-height: 1.5rem;
    color: #000;
  }
}

.hide-left-side {
  position: relative;
}
@media (max-width: 61.98rem) {
  .hide-left-side.extend-your-trip {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
}
.hide-left-side::before {
  content: "";
  position: absolute;
  top: 0;
  left: -300%;
  bottom: 0;
  right: auto;
  background-color: #f7f7f7;
  width: 300%;
  height: 100%;
  z-index: 2;
}
@media (max-width: 61.98rem) {
  .hide-left-side::before {
    display: none;
  }
}
.hide-left-side .slick-list, .hide-left-side .slick-slider {
  overflow: visible !important;
}

.trip-leaders {
  width: 100vw;
  overflow: hidden;
  left: calc(0px - var(--trip-from-left));
  padding: clamp(3.5rem, 1.7857142857rem + 3.5714285714vw, 5rem) 0;
}
@media (max-width: 61.98rem) {
  .trip-leaders {
    overflow: hidden !important;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
}
.trip-leaders::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: auto;
  width: calc(var(--trip-from-left));
  background-color: #f7f7f7;
  height: 100%;
  z-index: 2;
}
@media (max-width: 61.98rem) {
  .trip-leaders::before {
    display: none;
  }
}
.trip-leaders__blurb {
  position: relative;
  left: var(--trip-from-left);
  width: calc(100% - var(--trip-from-left));
  padding-right: clamp(1.25rem, -1.8928571429rem + 6.5476190476vw, 4rem);
  max-width: 65.375rem;
}
@media (max-width: 61.98rem) {
  .trip-leaders__blurb {
    padding-right: 0;
  }
}
.trip-leaders__slider {
  left: var(--trip-from-left);
}
.trip-leaders__progress-wrap, .trip-leaders__title, .trip-leaders__callout {
  margin-left: var(--trip-from-left);
  max-width: 60rem;
}
.trip-leaders__slide {
  width: clamp(17.5rem, 16.0714285714rem + 2.9761904762vw, 18.75rem);
  margin-right: clamp(0.625rem, -0.8035714286rem + 2.9761904762vw, 1.875rem);
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
  transition: all 300ms ease;
  border-bottom: 0.125rem solid #fff;
}
.trip-leaders__slide:hover {
  border-bottom: 0.125rem solid #041a2f;
  box-shadow: none;
}
.trip-leaders__image-con {
  position: relative;
  height: clamp(23.3125rem, 21.3839285714rem + 4.0178571429vw, 25rem);
}
.trip-leaders__titles {
  background-color: #fff;
  padding: 1.25rem clamp(0.9375rem, 0.5803571429rem + 0.744047619vw, 1.25rem) 1.875rem;
}
.trip-leaders .has-t-4-font-size {
  font-size: 1.3125rem !important;
  margin-bottom: 0.5rem;
}
.trip-leaders .c-btn {
  margin-bottom: 0;
  color: #0f4374;
}
.trip-leaders.trip-grid__content-area-element_bg {
  background-color: #f0f0f0;
}
.trip-leaders.trip-grid__content-area-element_bg:before {
  background-color: #f0f0f0;
}

.trip-accommodations {
  max-width: 75rem;
  padding: clamp(2rem, -1.4285714286rem + 7.1428571429vw, 5rem) 0;
}
.trip-accommodations__btn {
  margin-bottom: 1.875rem;
}
.trip-accommodations__slide {
  position: relative;
  width: 100%;
  height: 33.75rem;
}
.trip-accommodations__img-wrap {
  height: clamp(16.875rem, -2.5535714286rem + 40.4761904762vw, 33.875rem);
  width: 100%;
  position: relative;
}
.trip-accommodations__slide-content {
  background: #fff;
  padding: 1.875rem;
  position: relative;
  max-width: 72%;
  margin-left: 1.875rem;
  margin-top: -6.9375rem;
}
@media (max-width: 61.98rem) {
  .trip-accommodations__slide-content {
    padding: 1.5rem 1.25rem;
    width: 100%;
    max-width: 100%;
    margin-left: 0;
    margin-top: 0;
  }
}
.trip-accommodations__slide-content h3 {
  margin-bottom: 0rem;
}
.trip-accommodations__slide-content h3.keep-bottom {
  margin-bottom: clamp(1rem, -0.1428571429rem + 2.380952381vw, 2rem);
}
.trip-accommodations__days {
  margin-top: 0 !important;
}
.trip-accommodations__location {
  margin-bottom: 0.5rem;
  font-style: italic;
}
.trip-accommodations__content-area {
  margin-bottom: 1.5rem;
}
.trip-accommodations__slider {
  overflow: hidden !important;
}
.trip-accommodations__slider-wrap {
  overflow: visibile !important;
  position: relative;
}
@media (max-width: 61.98rem) {
  .trip-accommodations__slider-wrap {
    margin-top: 2rem;
  }
}
.trip-accommodations .read-more {
  cursor: pointer;
  display: block;
  clear: both;
}
.trip-accommodations__slide-count {
  font-weight: var(--t5-font-weight);
  font-size: var(--t5-font-size);
  font-family: var(--t5-font-family);
  line-height: var(--t5-line-height);
  position: absolute;
  top: clamp(12.8125rem, -12.9732142857rem + 53.7202380952vw, 35.375rem);
  left: calc(72% + 3.75rem);
  color: #4d4d4d;
}
@media (max-width: 61.98rem) {
  .trip-accommodations__slide-count {
    top: -3.5rem;
    padding: 1.25rem;
    left: 0;
    right: 0;
    width: 100%;
    text-align: center;
    background-color: #fff;
  }
}
.trip-accommodations .slick-track {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
}
.trip-accommodations .slick-arrow.slick-arrow--color-alt,
.trip-accommodations .swiper-arrow {
  top: clamp(5.625rem, -7.3035714286rem + 26.9345238095vw, 16.9375rem);
  width: 3.5rem;
  height: 3.5rem;
}
@media (max-width: 61.98rem) {
  .trip-accommodations .slick-arrow.slick-arrow--color-alt,
.trip-accommodations .swiper-arrow {
    top: -3.5rem;
    transform: none;
    color: #fff;
    background-color: #0f4374;
  }
}
@media (max-width: 61.98rem) {
  .trip-accommodations .slick-arrow.slick-arrow--color-alt:hover, .trip-accommodations .slick-arrow.slick-arrow--color-alt:focus,
.trip-accommodations .swiper-arrow:hover,
.trip-accommodations .swiper-arrow:focus {
    background-color: #041a2f !important;
  }
}
@media (max-width: 61.98rem) {
  .trip-accommodations .slick-arrow.slick-arrow--color-alt:hover::after, .trip-accommodations .slick-arrow.slick-arrow--color-alt:focus::after,
.trip-accommodations .swiper-arrow:hover::after,
.trip-accommodations .swiper-arrow:focus::after {
    color: #fff;
  }
}
@media (max-width: 61.98rem) {
  .trip-accommodations .slick-arrow.slick-arrow--color-alt::after,
.trip-accommodations .swiper-arrow::after {
    color: #fff !important;
  }
}
.trip-accommodations .slick-arrow.slick-prev,
.trip-accommodations .swiper-button-prev {
  left: -1.5rem;
}
@media (max-width: 61.98rem) {
  .trip-accommodations .slick-arrow.slick-prev,
.trip-accommodations .swiper-button-prev {
    left: 0;
    display: none;
  }
}
.trip-accommodations .slick-arrow.slick-next,
.trip-accommodations .swiper-button-next {
  right: -1.5rem;
}
@media (max-width: 61.98rem) {
  .trip-accommodations .slick-arrow.slick-next,
.trip-accommodations .swiper-button-next {
    right: 0;
    display: none;
  }
}
.trip-accommodations .swiper-pagination {
  position: relative !important;
  margin-top: 2.25rem;
  margin-bottom: 1rem;
}

.trip-faq.block-accordion-centered {
  padding: clamp(3rem, -0.4285714286rem + 7.1428571429vw, 6rem) 0 0;
  margin-bottom: 6rem;
}

.trip__callout-wrap {
  background: #f0f0f0;
  padding: 1.5rem 2.5rem 1.5rem 1.875rem;
  margin-bottom: 1.5rem;
}
@media (max-width: 47.98rem) {
  .trip__callout-wrap {
    padding: 1.5rem 0.9375rem;
  }
}
.trip__callout-wrap p {
  font-weight: var(--body-2-font-weight);
  font-size: var(--body-2-font-size);
  font-family: var(--body-2-font-family);
  line-height: var(--body-2-line-height);
  margin-bottom: var(--body-2-margin-bottom);
  margin-bottom: 0.75rem;
}
.trip__callout-wrap p:last-child {
  margin-bottom: 0;
}
.trip__callout-wrap strong {
  font-weight: var(--overline-font-weight);
  font-size: var(--overline-font-size);
  font-family: var(--overline-font-family);
  line-height: var(--overline-line-height);
  letter-spacing: var(--overline-letter-spacing);
  text-transform: var(--overline-text-transform);
  margin-bottom: var(--overline-margin-bottom);
}
.trip__callout-wrap strong:last-child {
  margin-bottom: 0;
}

.trip-overview div {
  overflow: visible;
}
.trip-overview__content {
  margin-bottom: 3.5rem;
}
.trip-overview__map-area {
  border: 0.0625rem solid #a97c50;
  padding: clamp(0rem, -3.4285714286rem + 7.1428571429vw, 3rem) clamp(0rem, -2.1428571429rem + 4.4642857143vw, 1.875rem) clamp(0rem, -2.2857142857rem + 4.7619047619vw, 2rem) clamp(0rem, -2.1428571429rem + 4.4642857143vw, 1.875rem);
  margin-bottom: clamp(3rem, 0.7142857143rem + 4.7619047619vw, 5rem);
  display: flex;
  flex-wrap: wrap;
  width: calc(100% - 2.5rem);
  margin-left: auto;
}
@media (max-width: 61.98rem) {
  .trip-overview__map-area {
    width: 100%;
    border: none;
  }
}
@media (max-width: 61.98rem) {
  .trip-overview__highlight-title {
    font-size: 1.3125rem !important;
  }
}
.trip-overview__map-left, .trip-overview__content-right {
  width: 50%;
}
@media (max-width: 61.98rem) {
  .trip-overview__map-left, .trip-overview__content-right {
    width: 100%;
  }
}
.trip-overview__img-wrap {
  margin-left: -4.375rem;
  width: 100%;
  margin-bottom: 1rem;
  position: relative;
}
@media (max-width: 61.98rem) {
  .trip-overview__img-wrap {
    margin-left: 0;
  }
}
.trip-overview__img-wrap img {
  width: 100%;
}
.trip-overview__img-wrap .trip-overview__expand-img {
  position: absolute;
  top: auto;
  left: auto;
  bottom: 1rem;
  right: 1rem;
  width: 1.5rem;
  height: 1.5rem;
  cursor: pointer;
}
@media (min-width: 62rem) {
  .trip-overview__content-right {
    margin-left: -2.5rem;
  }
}
@media (max-width: 61.98rem) {
  .trip-overview__content-right h3 {
    margin-bottom: 1.5rem;
  }
}
.trip-overview__content-right ul {
  padding-left: 1.5rem;
}
.trip-overview__content-right li {
  font-weight: var(--body-2-font-weight);
  font-size: var(--body-2-font-size);
  font-family: var(--body-2-font-family);
  line-height: var(--body-2-line-height);
  margin-bottom: var(--body-2-margin-bottom);
}
.trip-overview__content-right li:last-child {
  margin-bottom: 0;
}
@media (max-width: 61.98rem) {
  .trip-overview__map-left {
    margin-bottom: 1.5rem;
  }
}
.trip-overview__map-left p {
  margin-bottom: 0.5rem;
}
@media (min-width: 48rem) {
  .trip-overview__map-left p {
    padding-right: 2.125rem;
  }
}

.trip-itinerary {
  padding: clamp(3rem, 0.7142857143rem + 4.7619047619vw, 5rem) 0;
}
.trip-itinerary__titles {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
@media (max-width: 61.98rem) {
  .trip-itinerary__titles {
    flex-wrap: wrap;
  }
}
@media (max-width: 61.98rem) {
  .trip-itinerary__title-buttons {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column-reverse;
    width: 100%;
  }
}
@media (max-width: 61.98rem) {
  .trip-itinerary__title-buttons .c-btn {
    margin-bottom: 1.1875rem;
  }
}
.trip-itinerary .c-btn--download {
  margin-right: clamp(0rem, -1.4285714286rem + 2.9761904762vw, 1.25rem);
}
.trip-itinerary__content {
  font-weight: var(--body-2-font-weight);
  font-size: var(--body-2-font-size);
  font-family: var(--body-2-font-family);
  line-height: var(--body-2-line-height);
  margin-bottom: var(--body-2-margin-bottom);
  margin: clamp(2.375rem, 0.5178571429rem + 3.869047619vw, 4rem) 0 clamp(1.5rem, 0.9285714286rem + 1.1904761905vw, 2rem);
}
.trip-itinerary__content p {
  font-weight: var(--body-2-font-weight);
  font-size: var(--body-2-font-size);
  font-family: var(--body-2-font-family);
  line-height: var(--body-2-line-height);
  margin-bottom: var(--body-2-margin-bottom);
}
.trip-itinerary__content p:last-child {
  margin-bottom: 0;
}
.trip-itinerary__content:last-child {
  margin-bottom: 0;
}
.trip-itinerary__content-h3 * {
  font-size: 1.625rem !important;
  line-height: 2rem !important;
  font-weight: 400;
  font-family: "verdigris-mvb-pro-text", sans-serif;
}

.trip-dates-and-pricing {
  width: 100vw;
  overflow: hidden;
  left: calc(0px - var(--trip-from-left));
  padding: clamp(3.5rem, 1.7857142857rem + 3.5714285714vw, 5rem) 0;
}
@media (max-width: 61.98rem) {
  .trip-dates-and-pricing {
    overflow: hidden !important;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
}
.trip-dates-and-pricing::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: auto;
  width: calc(var(--trip-from-left));
  background-color: #f7f7f7;
  height: 100%;
  z-index: 2;
}
@media (max-width: 61.98rem) {
  .trip-dates-and-pricing::before {
    display: none;
  }
}
.trip-dates-and-pricing__blurb {
  position: relative;
  left: var(--trip-from-left);
  width: calc(100% - var(--trip-from-left));
  padding-right: clamp(1.25rem, -1.8928571429rem + 6.5476190476vw, 4rem);
  max-width: 65.375rem;
}
@media (max-width: 61.98rem) {
  .trip-dates-and-pricing__blurb {
    padding-right: 0;
  }
}
.trip-dates-and-pricing > p {
  font-weight: var(--body-2-font-weight);
  font-size: var(--body-2-font-size);
  font-family: var(--body-2-font-family);
  line-height: var(--body-2-line-height);
  margin-bottom: var(--body-2-margin-bottom);
}
.trip-dates-and-pricing > p:last-child {
  margin-bottom: 0;
}
.trip-dates-and-pricing__title {
  margin-left: var(--trip-from-left);
  max-width: 60rem;
}
.trip-dates-and-pricing__title + p {
  position: relative;
  left: var(--trip-from-left);
  width: calc(100% - var(--trip-from-left));
  padding-right: clamp(1.25rem, -1.8928571429rem + 6.5476190476vw, 4rem);
  max-width: 65.375rem;
}
@media (max-width: 61.98rem) {
  .trip-dates-and-pricing__title + p {
    padding-right: 0;
  }
}
.trip-dates-and-pricing__content.dates-rates {
  margin-bottom: clamp(2rem, -0.8571428571rem + 5.9523809524vw, 4.5rem);
}
.trip-dates-and-pricing__content.dates-rates .block-accordion-item__column-content:last-child {
  border-bottom: none;
}
.trip-dates-and-pricing .block-accordion-item__inner .block-content {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
}
.trip-dates-and-pricing .block-accordion-item__inner .block-content .half-con {
  width: 100%;
}
@media (min-width: 48rem) {
  .trip-dates-and-pricing .block-accordion-item__inner .block-content .half-con {
    width: 48%;
  }
}
.trip-dates-and-pricing .block-accordion-item__inner .block-content .list-icon {
  position: relative;
  list-style-type: none;
  margin-bottom: 1rem;
}
.trip-dates-and-pricing .block-accordion-item__inner .block-content .list-icon::before {
  top: 0.5625rem;
  left: -1.4444444444em;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1em !important;
  line-height: inherit;
  position: absolute;
}
.trip-dates-and-pricing .block-accordion-item__inner .block-content .list-icon--included::before {
  content: "\ea0f";
  font-weight: 400;
  font-size: 1.5rem;
  font-family: "iconfont-propel";
  font-style: normal;
  font-variant: normal;
  line-height: 1;
  text-transform: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: #a97c50;
}
.trip-dates-and-pricing .block-accordion-item__inner .block-content .list-icon--excluded::before {
  content: "\ea1c";
  font-weight: 400;
  font-size: 1.5rem;
  font-family: "iconfont-propel";
  font-style: normal;
  font-variant: normal;
  line-height: 1;
  text-transform: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: #737373;
}
.trip-dates-and-pricing .half-con h4, .trip-dates-and-pricing .half-con h5 {
  font-weight: var(--body-1-font-weight);
  font-size: var(--body-1-font-size);
  font-family: var(--body-1-font-family);
  line-height: var(--body-1-line-height);
  margin-bottom: var(--body-1-margin-bottom);
  margin-bottom: 1rem;
  font-weight: bold;
}
.trip-dates-and-pricing .half-con h4:last-child, .trip-dates-and-pricing .half-con h5:last-child {
  margin-bottom: 0;
}
.trip-dates-and-pricing__whats-included {
  margin-left: var(--trip-from-left);
  max-width: 60rem;
  width: calc(100vw - 26.625rem);
}
@media (max-width: 61.98rem) {
  .trip-dates-and-pricing__whats-included {
    width: 100%;
  }
}
.trip-dates-and-pricing.trip-grid__content-area-element_bg {
  background-color: #f0f0f0;
}
.trip-dates-and-pricing.trip-grid__content-area-element_bg:before {
  background-color: #f0f0f0;
}

.dates-rates {
  margin: clamp(2rem, 3.0714285714rem + -1.1904761905vw, 2.5rem) 0 0 var(--trip-from-left);
  max-width: 60rem;
  width: calc(100% - 26.625rem);
}
@media (max-width: 61.98rem) {
  .dates-rates {
    width: 100%;
  }
}
.dates-rates .tabs__link-list {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding-left: 0;
  list-style: none;
  margin-bottom: 0;
}
@media (max-width: 47.98rem) {
  .dates-rates .tabs__link-list {
    flex-wrap: wrap;
  }
}
.dates-rates .tabs__link-single {
  width: 33.333%;
  list-style: none;
  padding: 1.25rem;
  border-top: 0.125rem solid #0f4374;
  text-align: center;
  color: #fff;
  background-color: #0f4374;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
@media (max-width: 61.98rem) {
  .dates-rates .tabs__link-single {
    height: 4.125rem;
    white-space: nowrap;
  }
}
@media (max-width: 47.98rem) {
  .dates-rates .tabs__link-single {
    flex-grow: 1;
    min-width: 6.25rem;
  }
}
.dates-rates .tabs__link-single.active {
  background-color: #fff;
  color: #000;
  border-top-color: #041a2f;
}
.dates-rates .tabs__link-inner {
  font-weight: var(--t4-font-weight);
  font-size: var(--t4-font-size);
  font-family: var(--t4-font-family);
  line-height: var(--t4-line-height);
}
.dates-rates .tabs__tab-content {
  overflow: scroll;
  padding: 2rem 1.25rem;
  background-color: #fff;
  display: none;
}
.dates-rates .tabs__tab-content.active {
  display: block;
}
.dates-rates .tabs__tab-content .c-btn {
  width: 12.75rem;
  padding: 0.625rem 1.25rem;
  font-size: 0.75rem;
  line-height: 1rem;
  letter-spacing: 0.03125rem;
  white-space: nowrap;
}
.dates-rates .tabs__accordions {
  padding-top: 2rem;
}
.dates-rates .tabs th {
  font-weight: 350;
  font-family: "Gotham", sans-serif;
  text-transform: none;
}
.dates-rates .tabs th > span {
  font-size: 0.75rem;
  font-weight: 325;
  line-height: 1rem;
  display: block;
}
.dates-rates .tabs td, .dates-rates .tabs th {
  font-size: 0.9375rem;
  line-height: 1.5rem;
  padding: 0.5rem 0.9375rem;
  border-bottom: 0.0625rem solid #e1e1e1;
}
.dates-rates .tabs td {
  font-weight: 325;
  color: #000;
}
.dates-rates .tabs tr:nth-child(odd) {
  background: #fff;
}
.dates-rates .tabs .has-fixed-layout {
  overflow-x: visible;
  min-width: 37.5rem;
}
@media (max-width: 47.98rem) {
  .dates-rates .tabs .has-fixed-layout thead {
    min-width: 37.5rem;
  }
  .dates-rates .tabs .has-fixed-layout thead tr {
    min-width: 37.5rem;
  }
  .dates-rates .tabs .has-fixed-layout thead tr th {
    min-width: 12.5rem;
  }
  .dates-rates .tabs .has-fixed-layout tbody {
    min-width: 43.125rem;
  }
  .dates-rates .tabs .has-fixed-layout tbody tr {
    min-width: 37.5rem;
  }
  .dates-rates .tabs .has-fixed-layout tbody tr td {
    min-width: 12.5rem;
  }
}
.dates-rates .tabs .table-status {
  display: flex;
  align-items: center;
}
.dates-rates .tabs .table-status::before {
  content: "";
  position: relative;
  width: 0.75rem;
  height: 0.75rem;
  margin-right: 0.625rem;
  border-radius: 100%;
  display: block;
}
.dates-rates .tabs .table-status.sold-out::before, .dates-rates .tabs .table-status.closed::before {
  background-color: #b00020;
}
.dates-rates .tabs .table-status.space-available::before {
  background-color: #008738;
}
.dates-rates .tabs .table-status.limited-availability::before {
  background-color: #faa614;
}
.dates-rates .tabs__btn-center {
  text-align: center;
  margin: 2rem 0 0 0;
}
.dates-rates__download {
  display: flex;
  align-items: center;
}
.dates-rates__download::after {
  content: "\ea20";
  font-weight: 400;
  font-size: 1.5rem;
  font-family: "iconfont-propel";
  font-style: normal;
  font-variant: normal;
  line-height: 1;
  text-transform: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 0.875rem;
  margin-left: 0.5625rem;
}
.dates-rates__loading {
  position: relative;
  height: 120px;
  background-color: #FFFFFF;
}
.dates-rates__loading::before {
  position: absolute;
  top: calc(50% - 1.5rem);
  left: calc(50% - 1.5rem);
  content: "";
  width: 3rem;
  height: 3rem;
  border: 0.3rem solid #a97c50;
  border-color: #a97c50 transparent #a97c50 transparent;
  border-radius: 50%;
  pointer-events: none;
  animation: loader 1.5s infinite ease-in-out;
}

@keyframes loader {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
.trip-is-like {
  padding: clamp(3rem, 0.7142857143rem + 4.7619047619vw, 5rem) 0;
}
.trip-is-like h3 {
  margin-bottom: clamp(1rem, 0.4285714286rem + 1.1904761905vw, 1.5rem);
}
.trip-is-like .c-btn {
  margin: clamp(0.875rem, 0.1607142857rem + 1.4880952381vw, 1.5rem) 0 clamp(2rem, 0.8571428571rem + 2.380952381vw, 3rem);
  text-align: left;
}

.trip-form-modal form .gfield p, .trip-form-modal form br {
  display: none !important;
}
.trip-form-modal__modal, .trip-form-modal__trip-level-content {
  background-color: #fff;
  padding: 3.125rem;
  max-height: 80vh;
  overflow: scroll;
  max-width: 53.125rem;
  margin-left: auto;
  margin-right: auto;
  display: none;
}
.trip-form-modal__modal.active, .trip-form-modal__trip-level-content.active {
  display: block;
}
.trip-form-modal__trip-image {
  overflow: scroll;
  max-height: 80vh;
  text-align: center;
  display: none;
}
.trip-form-modal__trip-image.active {
  display: block;
}
.trip-form-modal__trip-image img {
  max-height: 80vh;
  max-width: 100%;
  object-fit: contain;
}
.trip-form-modal .gfield_visibility_hidden {
  display: none !important;
}
.trip-form-modal .gform_confirmation_wrapper br {
  display: none !important;
}

.password-form-wrap {
  margin: 12.5rem 0;
}
.password-form-wrap input[type=submit] {
  font-weight: var(--link-1-font-weight);
  font-size: var(--link-1-font-size);
  font-family: var(--link-1-font-family);
  line-height: var(--link-1-line-height);
  letter-spacing: var(--link-1-letter-spacing);
  display: inline-flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  padding: 1.25rem 1.875rem;
  text-align: center;
  border-radius: 0;
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
  transition: color 0.2s linear, background-color 0.2s linear, border 0.2s linear;
  background-color: #0f4374 !important;
  color: #fff !important;
}
.password-form-wrap label {
  width: 100%;
}