/* 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.
*
* @param string   $additionalSelectors     additional comma-separated selectors to add.
*
* @return string  The included CSS wrapped with selectors for the specified background.
*/
/*
* Used to target button elements with a background color set to use the alt button colors.
*
* @param string   $additionalSelectors     additional comma-separated selectors to add.
*
* @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.
*/
/*
* Used to visually hide an element but still allow screen readers to access the element and its contents for accessibility.
*
* @return string  The styles needed to visually hide an element.
*/
/****************
 * 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-neutral-10, etc: */
/* This variable controls the default text color on a light background. Used with paint(text) to generate a CSS variable that changes to use background font colors. */
/* 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: */
/* Backgrounds specified in this variable will use the alternative button 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;
}
*/
.block-hero-hyline {
  z-index: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: clamp(15rem, 5rem + 20.8333333333vw, 23.75rem);
  padding: 0;
  text-align: center;
  overflow: hidden;
}
@media (min-width: 62rem) {
  .block-hero-hyline {
    position: relative;
  }
}
.block-hero-hyline:not(.block-hero-hyline-centered--has-image).bg-transparent + .acf-block.bg-transparent {
  margin-top: clamp(-7.5rem, 5.3571428571rem + -14.2857142857vw, -1.5rem);
}
.block-hero-hyline:not(.block-hero-hyline-centered--has-image).bg-white + .acf-block.bg-white {
  margin-top: clamp(-7.5rem, 5.3571428571rem + -14.2857142857vw, -1.5rem);
}
.block-hero-hyline:not(.block-hero-hyline-centered--has-image).bg-neutral-10 + .acf-block.bg-neutral-10 {
  margin-top: clamp(-7.5rem, 5.3571428571rem + -14.2857142857vw, -1.5rem);
}
.block-hero-hyline:not(.block-hero-hyline-centered--has-image).bg-neutral-11 + .acf-block.bg-neutral-11 {
  margin-top: clamp(-7.5rem, 5.3571428571rem + -14.2857142857vw, -1.5rem);
}
.block-hero-hyline:not(.block-hero-hyline-centered--has-image).bg-dark + .acf-block.bg-dark {
  margin-top: clamp(-7.5rem, 5.3571428571rem + -14.2857142857vw, -1.5rem);
}
.block-hero-hyline:not(.block-hero-hyline-centered--has-image).bg-blog-related + .acf-block.bg-blog-related {
  margin-top: clamp(-7.5rem, 5.3571428571rem + -14.2857142857vw, -1.5rem);
}
.block-hero-hyline .block-hero-hyline__video, .block-hero-hyline .block-hero-hyline__image {
  min-height: 23.4375rem;
  object-fit: cover;
}
@media (max-width: 47.98rem) {
  .block-hero-hyline .block-hero-hyline__video, .block-hero-hyline .block-hero-hyline__image {
    margin-top: calc(clamp(6rem, 2.5714285714rem + 7.1428571429vw, 9rem) * -1);
  }
}
@media (min-width: 48rem) {
  .block-hero-hyline .block-hero-hyline__video, .block-hero-hyline .block-hero-hyline__image {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
  }
}
.block-hero-hyline + * {
  position: relative;
  z-index: 2;
  margin-top: -2.5rem;
  padding-top: 2.5rem;
  padding-bottom: 5rem;
  background-color: #fff;
}
@media (min-width: 48rem) {
  .block-hero-hyline + * {
    border-radius: 3.125rem 3.125rem 0 0;
  }
  .block-hero-hyline + * .container {
    margin-top: 2.5rem;
  }
}
@media (max-width: 61.98rem) {
  .block-hero-hyline + * {
    border-radius: 1.875rem 1.875rem 0 0;
  }
  .block-hero-hyline + * .container {
    margin-top: 1.25rem;
  }
}
.block-hero-hyline + .block-content-section {
  padding-top: 5.375rem;
}
.block-hero-hyline .gradient {
  position: absolute;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: -1;
  height: 20.5rem;
  background: linear-gradient(0deg, rgba(0, 39, 61, 0.9) 0%, rgba(0, 39, 61, 0) 100%);
}
.block-hero-hyline__is-home {
  min-height: 100vh;
}
@media (max-width: 47.98rem) {
  .block-hero-hyline__is-home {
    min-height: 90vh;
  }
}
@media (max-width: 47.98rem) {
  .block-hero-hyline__video {
    max-height: 100vh;
  }
}
.block-hero-hyline__patterned {
  background: linear-gradient(180deg, #49535a calc(100% - 300px), rgba(0, 0, 0, 0) 100%), url("../png/hlc-pattern.png");
  background-color: #49535a;
  background-repeat: repeat-x;
  background-position-x: center;
  background-position-y: bottom;
  background-size: contain;
}
.block-hero-hyline__patterned * {
  color: #fff;
}
.block-hero-hyline .wp-block-image {
  width: calc(var(--columnWidth) * 12 - clamp(1rem, -0.1428571429rem + 2.380952381vw, 2rem));
  max-width: calc(var(--columnMaxWidth) * 12 - clamp(1rem, -0.1428571429rem + 2.380952381vw, 2rem));
  margin: clamp(3rem, -0.4285714286rem + 7.1428571429vw, 6rem) auto 0 auto;
}
@media (min-width: 36rem) {
  .block-hero-hyline .wp-block-image {
    width: calc(var(--columnWidth) * 12 - clamp(1rem, -0.1428571429rem + 2.380952381vw, 2rem));
    max-width: calc(var(--columnMaxWidth) * 12 - clamp(1rem, -0.1428571429rem + 2.380952381vw, 2rem));
  }
}
@media (min-width: 48rem) {
  .block-hero-hyline .wp-block-image {
    width: calc(var(--columnWidth) * 12 - clamp(1rem, -0.1428571429rem + 2.380952381vw, 2rem));
    max-width: calc(var(--columnMaxWidth) * 12 - clamp(1rem, -0.1428571429rem + 2.380952381vw, 2rem));
  }
}
@media (min-width: 62rem) {
  .block-hero-hyline .wp-block-image {
    width: calc(var(--columnWidth) * 10 - clamp(1rem, -0.1428571429rem + 2.380952381vw, 2rem));
    max-width: calc(var(--columnMaxWidth) * 10 - clamp(1rem, -0.1428571429rem + 2.380952381vw, 2rem));
  }
}
.block-hero-hyline .booking-widget-container {
  padding: 0 1rem;
  margin-bottom: 7.5rem;
}
.block-hero-hyline .booking-widget-container .booking-button {
  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);
  text-transform: var(--link-1-text-transform);
  display: inline-flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  padding: 0.625rem 1.875rem;
  text-align: center;
  border-radius: 0.25rem;
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
  transition: color 0.2s linear, background-color 0.2s linear, border 0.2s linear;
  color: #fff;
  border: 0.125rem solid #d73835;
  border-radius: 2rem;
  background-color: #d73835;
}
@media (max-width: 35.98rem) {
  .block-hero-hyline .booking-widget-container .booking-button {
    width: 100%;
  }
}
.bg-dark .block-hero-hyline .booking-widget-container .booking-button {
  color: #d73835;
  border-color: #fff;
  background-color: #fff;
}
.bg-dark .block-hero-hyline .booking-widget-container .booking-button.hover, a:hover .bg-dark .block-hero-hyline .booking-widget-container .booking-button, a:focus .bg-dark .block-hero-hyline .booking-widget-container .booking-button, .bg-dark .block-hero-hyline .booking-widget-container .booking-button:hover, .bg-dark .block-hero-hyline .booking-widget-container .booking-button:focus {
  color: #af1e2d;
  border-color: #fff;
  background-color: #fff;
}
.block-hero-hyline .booking-widget-container .booking-button.hover, a:hover .block-hero-hyline .booking-widget-container .booking-button, a:focus .block-hero-hyline .booking-widget-container .booking-button, .block-hero-hyline .booking-widget-container .booking-button:hover, .block-hero-hyline .booking-widget-container .booking-button:focus {
  color: #fff;
  border-color: #af1e2d;
  background-color: #af1e2d;
}
.bg-white .block-hero-hyline .booking-widget-container .booking-button {
  color: #fff;
  border: 2px solid #d73835;
  background-color: #d73835;
}
.bg-white .block-hero-hyline .booking-widget-container .booking-button.hover, a:hover .bg-white .block-hero-hyline .booking-widget-container .booking-button, a:focus .bg-white .block-hero-hyline .booking-widget-container .booking-button, .bg-white .block-hero-hyline .booking-widget-container .booking-button:hover, .bg-white .block-hero-hyline .booking-widget-container .booking-button:focus {
  color: #fff;
  border-color: #af1e2d;
  background-color: #af1e2d;
}
.block-hero-hyline .booking-widget-container .booking-button::after {
  content: "Book Your Trip";
}
.block-hero-hyline .booking-widget-container .booking-form-wrapper {
  position: relative;
}
.block-hero-hyline .booking-widget-container .booking-form-wrapper .notes-container {
  position: absolute;
  top: calc(100% + 1.15rem);
  color: #006bb2;
  text-align: center;
  left: 0;
  right: 0;
  padding-bottom: 0.5rem;
  z-index: 2;
}
.block-hero-hyline .booking-widget-container .booking-form-wrapper .notes-container div div {
  background: #f4f5f6;
  width: fit-content;
  margin: auto;
  padding: 0 4.5rem;
  border-radius: 5.5rem;
  color: #141414 !important;
}
.block-hero-hyline .booking-widget-container.inner-page-booking-form {
  height: 0;
  transition: all 0.5s ease-out;
  padding: 0;
  margin-bottom: 0;
  background: #f9fafa;
}
.block-hero-hyline .booking-widget-container.inner-page-booking-form.is-expanded {
  height: 11rem;
}
.block-hero-hyline .booking-widget-container.inner-page-booking-form.is-expanded .booking-form {
  display: block;
  opacity: 1;
  transition: all 0.5s 0.5s ease-out;
  max-height: none;
}
@media (max-width: 74.98rem) {
  .block-hero-hyline .booking-widget-container.inner-page-booking-form.is-expanded {
    height: auto;
    display: block;
    position: sticky;
    padding: 2.5rem;
  }
  .block-hero-hyline .booking-widget-container.inner-page-booking-form.is-expanded .booking-box {
    justify-content: space-between;
    position: relative;
    flex-direction: column;
    gap: 1.25rem;
  }
  .block-hero-hyline .booking-widget-container.inner-page-booking-form.is-expanded .booking-box .booking-form-col {
    border: 0;
    border-left: none !important;
    padding: 0.75rem 1.25rem 0.75rem 1.75rem !important;
    border-radius: 6.25rem;
    box-shadow: 0 0.3125rem 1.25rem 0 rgba(0, 0, 0, 0.1);
    position: relative;
    max-width: none !important;
  }
  .block-hero-hyline .booking-widget-container.inner-page-booking-form.is-expanded .booking-box .booking-form-col:last-of-type {
    box-shadow: none !important;
    padding: 0 !important;
  }
  .block-hero-hyline .booking-widget-container.inner-page-booking-form.is-expanded .booking-box .booking-form-col .booking-form-section {
    border-left: none;
    padding-left: 0;
  }
  .block-hero-hyline .booking-widget-container.inner-page-booking-form.is-expanded .booking-box .booking-form-col .booking-form-section .passengers-pop-over {
    position: absolute;
    z-index: 100;
    top: auto;
    left: 0;
    right: 0;
    bottom: calc(100% - 10rem);
  }
  .block-hero-hyline .booking-widget-container.inner-page-booking-form.is-expanded .booking-box .booking-form-col .booking-form-section .passengers-pop-over .passenger-selection {
    min-width: 100%;
  }
  .block-hero-hyline .booking-widget-container.inner-page-booking-form.is-expanded .booking-box .booking-form-col .booking-form-section .date-inputs {
    top: 0;
  }
  .block-hero-hyline .booking-widget-container.inner-page-booking-form.is-expanded .booking-box .booking-form-col .booking-button {
    width: max-content;
  }
}
.block-hero-hyline .booking-widget-container.inner-page-booking-form .date-inputs {
  bottom: auto;
  top: 100%;
  z-index: 100;
}
.block-hero-hyline .booking-widget-container.inner-page-booking-form:first-child {
  padding-top: 5.5rem !important;
}
.block-hero-hyline .booking-widget-container.inner-page-booking-form.show-mobile {
  position: fixed;
  background-color: #fff;
  height: auto;
  z-index: 100;
}
.block-hero-hyline .booking-widget-container.inner-page-booking-form .booking-form {
  background: transparent !important;
  border-radius: 0 !important;
  opacity: 0;
}
.block-hero-hyline .booking-widget-container.inner-page-booking-form .booking-form .passengers-pop-over {
  bottom: auto;
  top: 100%;
}
.block-hero-hyline .booking-widget-container.inner-page-booking-form .booking-button {
  background: #faa614;
  border: #faa614;
}
.block-hero-hyline .booking-widget-container.inner-page-booking-form .booking-button::after {
  content: "Let's Go!";
}
@media (max-width: 74.98rem) {
  .block-hero-hyline .booking-widget-container {
    display: none;
  }
  .block-hero-hyline .booking-widget-container.show-mobile {
    display: flex;
    flex-direction: column;
    position: fixed;
    bottom: 1.25rem;
    left: 1.25rem;
    right: 1.25rem;
    top: 1.25rem;
    background: #fff;
    border-radius: 1.25rem;
    padding: 0;
    z-index: 10000000;
    box-shadow: 0 0 0 10rem rgba(0, 0, 0, 0.4);
  }
}
@media (max-width: 74.98rem) and (min-width: 62rem) {
  .block-hero-hyline .booking-widget-container.show-mobile {
    top: 4.25rem;
  }
}
@media (max-width: 74.98rem) {
  .block-hero-hyline .booking-widget-container.show-mobile .booking-form {
    width: 100%;
    padding: 2rem;
  }
  .block-hero-hyline .booking-widget-container.show-mobile .booking-form .booking-form-col {
    min-width: 100%;
  }
}
@media (max-width: 74.98rem) {
  .block-hero-hyline .booking-widget-container.show-mobile .booking-form-header {
    color: #00273d;
    font-size: 1rem;
    text-align: left;
    display: flex;
    justify-content: space-between;
    margin: 2.5rem 2.5rem 0 2.5rem;
  }
  .block-hero-hyline .booking-widget-container.show-mobile .booking-form-header::after {
    content: "";
    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;
    content: var(--icon-close);
    margin-right: -1.5rem;
    margin-top: -1.5rem;
  }
}
@media (max-width: 74.98rem) {
  .block-hero-hyline .booking-widget-container.show-mobile .booking-box {
    flex-direction: column;
  }
}
@media (max-width: 74.98rem) {
  .block-hero-hyline .booking-widget-container.show-mobile .booking-form-section {
    border-left: none !important;
    padding: 0.75rem 1.25rem 0.75rem 2rem !important;
    margin: 0.75rem 0;
    border-radius: 6.25rem;
    box-shadow: 0 0.3125rem 1.25rem 0 rgba(0, 0, 0, 0.1);
    position: relative;
  }
}
@media (max-width: 74.98rem) {
  .block-hero-hyline .booking-widget-container.show-mobile .date-inputs {
    margin-left: 0 !important;
    left: 0;
    top: calc(100% - 5rem);
    z-index: 3;
  }
}
@media (max-width: 74.98rem) {
  .block-hero-hyline .booking-widget-container.show-mobile .ui-datepicker-inline {
    box-shadow: 0 0.3125rem 1.25rem 0 rgba(0, 0, 0, 0.1) !important;
  }
}
@media (max-width: 74.98rem) {
  .block-hero-hyline .booking-widget-container.show-mobile .passengers-pop-over {
    position: absolute;
    bottom: calc(100% - 5rem);
    right: 0;
    border-radius: 6.25rem;
    min-width: 100%;
  }
  .block-hero-hyline .booking-widget-container.show-mobile .passengers-pop-over .passenger-selection {
    box-shadow: 0 0.3125rem 1.25rem 0 rgba(0, 0, 0, 0.1) !important;
    width: 100% !important;
  }
}
@media (max-width: 74.98rem) {
  .block-hero-hyline .booking-widget-container.show-mobile .booking-button {
    margin-top: 1rem;
  }
}
.block-hero-hyline .booking-widget-container h4 {
  margin-bottom: 1.5rem;
  line-height: 1rem;
}
.block-hero-hyline .booking-widget-container .booking-form {
  max-width: 82rem;
  margin: auto;
  color: #00273d;
  border-radius: 2.5rem;
  background: #fff;
}
@media (max-width: 89.98rem) {
  .block-hero-hyline .booking-widget-container .booking-form {
    max-height: unset;
  }
}
@media (min-width: 75rem) {
  .block-hero-hyline .booking-widget-container .booking-form {
    max-height: 5rem;
  }
}
.block-hero-hyline .booking-widget-container .booking-form .booking-box {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  min-height: 5rem;
  padding: 0;
  position: relative;
}
.block-hero-hyline .booking-widget-container .booking-form .booking-box .date-inputs {
  position: absolute;
  bottom: 100%;
  width: max-content;
  padding-bottom: 0.625rem;
  margin-left: -1.875rem;
  display: none;
}
.block-hero-hyline .booking-widget-container .booking-form .booking-box .date-inputs .ui-datepicker-inline {
  background: #fff;
  border-radius: 1.25rem;
  padding: 1.25rem;
  opacity: 0;
  font-size: 1rem;
}
.block-hero-hyline .booking-widget-container .booking-form .booking-box .date-inputs .ui-datepicker-inline th {
  padding: 0.5rem;
  color: #00273d;
  font-weight: 300;
}
.block-hero-hyline .booking-widget-container .booking-form .booking-box .date-inputs .ui-datepicker-inline td {
  padding: 0.5rem;
  color: #707070;
}
.block-hero-hyline .booking-widget-container .booking-form .booking-box .date-inputs .ui-datepicker-inline td a {
  color: #00273d;
}
.block-hero-hyline .booking-widget-container .booking-form .booking-box .date-inputs .ui-datepicker-inline td a:hover {
  color: #d73835;
}
.block-hero-hyline .booking-widget-container .booking-form .booking-box .date-inputs .ui-datepicker-inline .ui-datepicker-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.block-hero-hyline .booking-widget-container .booking-form .booking-box .date-inputs .ui-datepicker-inline .ui-datepicker-header .ui-icon {
  width: 1.5rem;
  height: 1.5rem;
  display: block;
  overflow: hidden;
  position: relative;
}
.block-hero-hyline .booking-widget-container .booking-form .booking-box .date-inputs .ui-datepicker-inline .ui-datepicker-header .ui-icon::after {
  position: absolute;
  background: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
}
.block-hero-hyline .booking-widget-container .booking-form .booking-box .date-inputs .ui-datepicker-inline .ui-datepicker-header .ui-icon.ui-icon-circle-triangle-e::after {
  content: "\ea16";
  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;
}
.block-hero-hyline .booking-widget-container .booking-form .booking-box .date-inputs .ui-datepicker-inline .ui-datepicker-header .ui-icon.ui-icon-circle-triangle-w::after {
  content: "\ea15";
  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;
}
.block-hero-hyline .booking-widget-container .booking-form .booking-box .date-inputs .ui-datepicker-inline .ui-datepicker-header .ui-datepicker-next {
  order: 3;
}
.block-hero-hyline .booking-widget-container .booking-form .booking-box .passengers-pop-over {
  display: none;
}
@media (min-width: 36rem) {
  .block-hero-hyline .booking-widget-container .booking-form .booking-box .passengers-pop-over {
    z-index: 100;
    position: absolute;
    bottom: 100%;
    right: 0;
    min-width: 100%;
    padding-bottom: 0.625rem;
  }
}
@media (max-width: 47.98rem) {
  .block-hero-hyline .booking-widget-container .booking-form .booking-box .passengers-pop-over {
    flex-direction: column;
  }
  .block-hero-hyline .booking-widget-container .booking-form .booking-box .passengers-pop-over .passenger-selection-inner {
    flex-direction: column;
  }
}
.block-hero-hyline .booking-widget-container .booking-form .booking-box .passenger-details {
  position: relative;
}
.block-hero-hyline .booking-widget-container .booking-form .booking-box .passenger-selection {
  width: max-content;
  padding: 1.25rem;
  border-radius: 1.25rem;
  background: #fff;
  box-shadow: 1px 1px 8px rgba(0, 0, 0, 0.4);
  font-size: 1rem;
}
.block-hero-hyline .booking-widget-container .booking-form .booking-box .passenger-selection .passenger-selection-inner {
  display: flex;
  justify-content: center;
  gap: 1.875rem;
}
.block-hero-hyline .booking-widget-container .booking-form .booking-box .passenger-selection .custom-inputs-box {
  display: flex;
  gap: 1.25rem;
  align-items: center;
}
.block-hero-hyline .booking-widget-container .booking-form .booking-box .passenger-selection .custom-inputs-box .custom-input-wrapper {
  display: flex;
  align-items: center;
  gap: 0.25rem;
}
.block-hero-hyline .booking-widget-container .booking-form .booking-box .passenger-selection .custom-inputs-box .custom-input-wrapper::before, .block-hero-hyline .booking-widget-container .booking-form .booking-box .passenger-selection .custom-inputs-box .custom-input-wrapper::after {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 1.5rem;
  height: 1.5rem;
  line-height: 1.5rem;
  font-size: 1rem;
  font-weight: 500;
  background: #d73835;
  border-radius: 50%;
  overflow: hidden;
  color: #fff;
  cursor: pointer;
  padding: 0;
}
.block-hero-hyline .booking-widget-container .booking-form .booking-box .passenger-selection .custom-inputs-box .custom-input-wrapper::before {
  content: "-";
}
.block-hero-hyline .booking-widget-container .booking-form .booking-box .passenger-selection .custom-inputs-box .custom-input-wrapper::after {
  content: "+";
}
.block-hero-hyline .booking-widget-container .booking-form .booking-box .passenger-selection .custom-inputs-box .custom-input-wrapper input {
  width: 4rem !important;
  margin: 0.3125rem 0;
  padding: 0.3125rem !important;
  text-align: center;
  border: solid 1px #00273d !important;
  border-radius: 0 !important;
  -moz-appearance: none;
}
.block-hero-hyline .booking-widget-container .booking-form .booking-box .passenger-selection .custom-inputs-box .custom-input-wrapper input::-webkit-outer-spin-button, .block-hero-hyline .booking-widget-container .booking-form .booking-box .passenger-selection .custom-inputs-box .custom-input-wrapper input::-webkit-inner-spin-button {
  -webkit-appearance: none;
}
.block-hero-hyline .booking-widget-container .booking-form .booking-box .booking-form-col {
  display: flex;
  flex-flow: column;
  flex-grow: 1;
  justify-content: center;
}
@media (min-width: 36rem) {
  .block-hero-hyline .booking-widget-container .booking-form .booking-box .booking-form-col:nth-child(1) {
    max-width: 17.5rem;
  }
  .block-hero-hyline .booking-widget-container .booking-form .booking-box .booking-form-col:nth-child(1) .booking-form-section {
    max-width: inherit;
    border-left: none;
  }
  .block-hero-hyline .booking-widget-container .booking-form .booking-box .booking-form-col:nth-child(2) {
    max-width: 11.5625rem;
  }
  .block-hero-hyline .booking-widget-container .booking-form .booking-box .booking-form-col:last-child {
    flex-grow: 0;
    flex-shrink: 1;
    max-width: 15rem;
    padding-right: 1.875rem;
  }
}
.block-hero-hyline .booking-widget-container .booking-form .booking-box .booking-form-col .booking-form-section {
  display: flex;
  flex-flow: column;
  padding-left: 3.75rem;
  border-left: 1px #c7cdd1 solid;
}
.block-hero-hyline .booking-widget-container .booking-form .booking-box .booking-form-col.is-active .passengers-pop-over {
  display: block !important;
}
.block-hero-hyline .booking-widget-container .booking-form .booking-box .booking-form-col.is-active .date-inputs {
  display: block;
}
.block-hero-hyline .booking-widget-container .booking-form .booking-box .booking-form-col.is-active .date-inputs .ui-datepicker-inline {
  transition: opacity 500ms;
  opacity: 1;
}
.block-hero-hyline .booking-widget-container .booking-form .booking-box .booking-form-col label.booking-form-label {
  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: calc(var(--t5-margin-bottom) * 2);
  margin-bottom: var(--t5-margin-bottom);
  margin: 0;
  padding: 0;
  text-align: left;
}
.block-hero-hyline .booking-widget-container .booking-form .booking-box .booking-form-col label.booking-form-label:first-child {
  margin-top: 0;
}
.block-hero-hyline .booking-widget-container .booking-form .booking-box .booking-form-col label.booking-form-label:last-child {
  margin-bottom: 0;
}
.block-hero-hyline .booking-widget-container .booking-form .booking-box .booking-form-col .selection-display {
  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: 0;
  padding: 0;
  color: #707070;
  text-align: left;
  cursor: pointer;
}
.block-hero-hyline .booking-widget-container .booking-form .booking-box .booking-form-col .selection-display:first-child {
  margin-top: 0;
}
.block-hero-hyline .booking-widget-container .booking-form .booking-box .booking-form-col .selection-display:last-child {
  margin-bottom: 0;
}
.block-hero-hyline .booking-widget-container .booking-form .booking-box .booking-form-col .custom-select {
  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);
  width: fit-content;
  padding: 0;
  color: #707070;
  border: none;
  background: transparent;
  cursor: pointer;
  appearance: none;
}
.block-hero-hyline .booking-widget-container .booking-form .booking-box .booking-form-col .custom-select:first-child {
  margin-top: 0;
}
.block-hero-hyline .booking-widget-container .booking-form .booking-box .booking-form-col .custom-select:last-child {
  margin-bottom: 0;
}
.block-hero-hyline .booking-widget-container .booking-form .booking-box .booking-form-col .custom-select optgroup,
.block-hero-hyline .booking-widget-container .booking-form .booking-box .booking-form-col .custom-select optgroup option {
  padding-left: 0;
}
.block-hero-hyline .video-container {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  justify-content: center;
  align-items: center;
}
@media (max-width: 74.98rem) {
  .block-hero-hyline .video-container {
    position: relative;
  }
}
@media (min-width: 62rem) {
  .block-hero-hyline .video-container {
    margin-bottom: -6.25rem;
  }
}
.block-hero-hyline .video-container .mobile-booking-widgets {
  position: absolute;
  width: 100%;
  bottom: 5rem;
  gap: 1rem;
  display: flex;
  flex-direction: column;
  padding: 0 1.25rem;
}
.block-hero-hyline .video-container .mobile-booking-widgets .book-schedule-button {
  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);
  text-transform: var(--link-1-text-transform);
  display: inline-flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  padding: 0.625rem 1.875rem;
  text-align: center;
  border-radius: 0.25rem;
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
  transition: color 0.2s linear, background-color 0.2s linear, border 0.2s linear;
  color: #fff;
  border: 0.125rem solid #d73835;
  border-radius: 2rem;
  background-color: #d73835;
  color: #fff;
  background: transparent;
  border: solid 0.1875rem #fff;
}
@media (max-width: 35.98rem) {
  .block-hero-hyline .video-container .mobile-booking-widgets .book-schedule-button {
    width: 100%;
  }
}
.bg-dark .block-hero-hyline .video-container .mobile-booking-widgets .book-schedule-button {
  color: #d73835;
  border-color: #fff;
  background-color: #fff;
}
.bg-dark .block-hero-hyline .video-container .mobile-booking-widgets .book-schedule-button.hover, a:hover .bg-dark .block-hero-hyline .video-container .mobile-booking-widgets .book-schedule-button, a:focus .bg-dark .block-hero-hyline .video-container .mobile-booking-widgets .book-schedule-button, .bg-dark .block-hero-hyline .video-container .mobile-booking-widgets .book-schedule-button:hover, .bg-dark .block-hero-hyline .video-container .mobile-booking-widgets .book-schedule-button:focus {
  color: #af1e2d;
  border-color: #fff;
  background-color: #fff;
}
.block-hero-hyline .video-container .mobile-booking-widgets .book-schedule-button.hover, a:hover .block-hero-hyline .video-container .mobile-booking-widgets .book-schedule-button, a:focus .block-hero-hyline .video-container .mobile-booking-widgets .book-schedule-button, .block-hero-hyline .video-container .mobile-booking-widgets .book-schedule-button:hover, .block-hero-hyline .video-container .mobile-booking-widgets .book-schedule-button:focus {
  color: #fff;
  border-color: #af1e2d;
  background-color: #af1e2d;
}
.bg-white .block-hero-hyline .video-container .mobile-booking-widgets .book-schedule-button {
  color: #fff;
  border: 2px solid #d73835;
  background-color: #d73835;
}
.bg-white .block-hero-hyline .video-container .mobile-booking-widgets .book-schedule-button.hover, a:hover .bg-white .block-hero-hyline .video-container .mobile-booking-widgets .book-schedule-button, a:focus .bg-white .block-hero-hyline .video-container .mobile-booking-widgets .book-schedule-button, .bg-white .block-hero-hyline .video-container .mobile-booking-widgets .book-schedule-button:hover, .bg-white .block-hero-hyline .video-container .mobile-booking-widgets .book-schedule-button:focus {
  color: #fff;
  border-color: #af1e2d;
  background-color: #af1e2d;
}
.block-hero-hyline .video-container .mobile-booking-widgets .mobile-form-cta {
  background: #fff;
  padding: 0.75rem 1.25rem 0.75rem 2rem;
  border-radius: 2.5rem;
  text-align: left;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.block-hero-hyline .video-container .mobile-booking-widgets .mobile-form-cta h5 {
  color: #00273d;
  padding: 0;
  margin: 0;
}
.block-hero-hyline .video-container .mobile-booking-widgets .mobile-form-cta h6 {
  color: #707070;
  padding: 0;
  margin: 0;
}
.block-hero-hyline .video-container .mobile-booking-widgets .mobile-form-cta span::after {
  content: "";
  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;
  content: var(--icon-chev-right);
  display: flex;
  justify-content: center;
  align-items: center;
  width: 2rem;
  height: 2rem;
  color: #fff;
  border-radius: 50%;
  background: #d73835;
  overflow: hidden;
  transition: background-color 0.5s ease, color 0.5s ease;
}
@media (min-width: 62rem) {
  .block-hero-hyline .video-container .mobile-booking-widgets {
    bottom: 10rem;
  }
}
@media (min-width: 75rem) {
  .block-hero-hyline .video-container .mobile-booking-widgets {
    display: none;
  }
}
@media (max-width: 47.98rem) {
  .block-hero-hyline .video-container .block-hero-hyline__image {
    height: 90vh;
    margin: 0;
  }
}
@media (max-width: 47.98rem) {
  .block-hero-hyline .video-container .content-wrapper {
    position: absolute;
    max-width: 100%;
  }
}