@charset "UTF-8";
/*** Mixins ***/
/*** Transitions ***/
/*** Transform ***/
/*** Animate ***/
/*** Buttons Mixin ***/
/*** Borders Mixin ***/
.has-booking-loader {
  position: relative;
}
.has-booking-loader.booking-loader::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 50%;
  border: 10px solid rgba(0, 0, 0, 0);
  border-radius: 50%;
  box-shadow: 1px 1px 1px #c22b74, 0 1px 1px 1px rgba(194, 43, 116, 0.2);
  transform-origin: 50% 50%;
  animation: booking-loader 1s linear infinite;
  z-index: 1;
}
.has-booking-loader.booking-loader__medium::after {
  border: 20px solid rgba(0, 0, 0, 0);
}

@keyframes booking-loader {
  0% {
    transform: translate(-50%, -50%) rotate(0);
  }
  100% {
    transform: translate(-50%, -50%) rotate(360deg);
  }
}
/*** Variables ***/
/*** Fonts ***/
/*** Font families ***/
/*** Font sizes - rem untit ***/
/*** Font weights ***/
/*** Font styles ***/
/*** Colors ***/
/*** Background colors ***/
/*** Text colors ***/
/*** Border colors ***/
/*** Focus Colors ***/
/*** Button Colors **/
/*** Links ***/
/*** Transform ***/
.rotate-reverse-left {
  transform: rotateY(180deg);
}
.rotate-reverse-right {
  transform: rotateY(180deg);
}
.rotate-reverse-up {
  transform: rotateX(180deg);
}
.rotate-reverse-down {
  transform: rotateX(180deg);
}

/*** Typo ***/
/*** Media queries ***/
.container {
  max-width: 1440px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-left: 0.625rem;
  padding-right: 0.625rem;
}

@media (max-width: 1023px) {
  .container-md {
    max-width: 1023px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 0.625rem;
    padding-right: 0.625rem;
  }
}
@media (max-width: 767px) {
  .container-sm {
    max-width: 767px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 0.3125rem;
    padding-right: 0.3125rem;
  }
}
@media (max-width: 375px) {
  .container-xs {
    max-width: 375px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 0.3125rem;
    padding-right: 0.3125rem;
  }
}
.container-full {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}

/*** Buttons ***/
button,
.button {
  border: 0;
  background-color: transparent;
  transition: background-color 0.3s ease-in-out;
  cursor: pointer;
}
button:focus,
.button:focus {
  outline: 0;
}

.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  font-size: 1rem;
  line-height: 1;
  letter-spacing: 0.3px;
}
@media (max-width: 767px) {
  .button {
    font-size: 0.875rem;
  }
}
.button.button--primary, .button.button--secondary, .button.button--tertiary {
  padding: 0.9375rem 0;
  width: 240px;
  height: 50px;
  border-radius: 4px;
  box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.2);
  font-family: Helvetica, sans-serif;
  font-size: 1rem;
  font-weight: bold;
  line-height: normal;
  text-align: center;
  text-transform: uppercase;
}
.button.button--primary {
  border: 1px solid #0095d7;
  color: #fff;
  background-color: #0095d7;
}
.button.button--primary:hover {
  border-color: #0083be;
  background-color: #0083be;
}
.button.button--primary:focus:not(.disabled) {
  border: 1px solid #c22b74 !important;
}
.button.button--secondary {
  border: 1px solid #0095d7;
  color: #0095d7;
  background-color: #fff;
}
.button.button--secondary:hover {
  background-color: #f2f2f2;
}
.button.button--secondary:focus:not(.disabled) {
  border: 1px solid #c22b74 !important;
}
.button.button--tertiary {
  border: 1px solid #c22b74;
  color: #fff;
  background-color: #c22b74;
}
.button.button--tertiary:hover {
  border-color: #ad2668;
  background-color: #ad2668;
}
.button.button--tertiary:focus:not(.disabled) {
  border: 1px solid #0095d7 !important;
}
.button.button--edit::after {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  background: url(../img/icons/update.svg) no-repeat center;
}
.button.button--add, .button.button--remove {
  display: inline-flex;
  align-items: center;
  position: relative;
  padding-left: 1.25rem;
  color: #0095d7;
}
.button.button--add::before, .button.button--remove::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  width: 14px;
  height: 20px;
}
.button.button--add::before {
  background: url(../img/icons/plus-blue.svg) no-repeat 1px center;
}
.button.button--remove::before {
  background: url(../img/icons/minus-blue.svg) no-repeat 1px center;
}
.button.button--update::before {
  content: "";
  background: url(../img/icons/update.svg) no-repeat center;
  background-size: 24px 22px;
  width: 24px;
  height: 22px;
  margin-right: 0.3125rem;
}
.button.button--resend-information::before {
  content: "";
  background: url(../img/icons/resend.svg) no-repeat center;
  background-size: 30px 22px;
  width: 30px;
  height: 22px;
  margin-right: 0.3125rem;
}
.button.button--cancel-booking::before {
  content: "";
  background: url(../img/icons/trash.svg) no-repeat center;
  background-size: 28px 22px;
  width: 28px;
  height: 22px;
  margin-right: 0.3125rem;
}
.button--flex {
  display: flex;
  align-items: center;
}
.button.disabled {
  opacity: 0.6;
  pointer-events: none;
}
.button.has-booking-loader {
  position: relative;
}
.button.has-booking-loader.booking-loader {
  font-size: 0;
  transition: none;
}
.button.has-booking-loader.booking-loader:not(.button--secondary)::after {
  box-shadow: 1px 1px 1px #ffffff, 0 1px 1px 1px rgba(255, 255, 255, 0.2);
}

[data-edit-mode=true] .button.button--edit::after {
  background: url(../img/icons/close.svg) no-repeat;
}

.info-item {
  position: relative;
}
.info-item__button {
  display: block;
  position: absolute;
  top: 50%;
  right: -21px;
  margin: 0;
  padding: 0;
  padding-left: 1px;
  width: 16px;
  height: 16px;
  color: #fff;
  background-color: #0095d7;
  border-radius: 50%;
  font-family: monospace;
  font-size: 0.875em !important;
  line-height: 1.2 !important;
  border-radius: 50%;
  text-transform: lowercase;
  transform: translateY(-50%);
}

/*** Flexbox ***/
.flex {
  display: flex;
}
.flex-inline {
  display: inline-flex;
}
.flex-direction-column {
  flex-direction: column;
}
.flex__row {
  flex-wrap: wrap;
  margin-left: -0.625rem;
  margin-right: -0.625rem;
}
@media (max-width: 767px) {
  .flex__row {
    margin-left: -0.3125rem;
    margin-right: -0.3125rem;
  }
}
.flex__row--no-wrap {
  flex-wrap: nowrap;
}
.flex__row > .flex__column {
  flex: 1;
  padding-left: 0.625rem;
  padding-right: 0.625rem;
}
@media (max-width: 767px) {
  .flex__row > .flex__column {
    padding-left: 0.3125rem;
    padding-right: 0.3125rem;
  }
}
.flex__row--no-gutter {
  margin-left: 0;
  margin-right: 0;
}
.flex__row--no-gutter .flex__column {
  padding-left: 0;
  padding-right: 0;
}
.flex .flex__column--0 {
  flex-basis: 0%;
  max-width: 0%;
}
.flex .flex__column--1 {
  flex-basis: 8.3333333333%;
  max-width: 8.3333333333%;
}
.flex .flex__column--2 {
  flex-basis: 16.6666666667%;
  max-width: 16.6666666667%;
}
.flex .flex__column--3 {
  flex-basis: 25%;
  max-width: 25%;
}
.flex .flex__column--4 {
  flex-basis: 33.3333333333%;
  max-width: 33.3333333333%;
}
.flex .flex__column--5 {
  flex-basis: 41.6666666667%;
  max-width: 41.6666666667%;
}
.flex .flex__column--6 {
  flex-basis: 50%;
  max-width: 50%;
}
.flex .flex__column--7 {
  flex-basis: 58.3333333333%;
  max-width: 58.3333333333%;
}
.flex .flex__column--8 {
  flex-basis: 66.6666666667%;
  max-width: 66.6666666667%;
}
.flex .flex__column--9 {
  flex-basis: 75%;
  max-width: 75%;
}
.flex .flex__column--10 {
  flex-basis: 83.3333333333%;
  max-width: 83.3333333333%;
}
.flex .flex__column--11 {
  flex-basis: 91.6666666667%;
  max-width: 91.6666666667%;
}
.flex .flex__column--12 {
  flex-basis: 100%;
  max-width: 100%;
}
.flex .flex__column--auto {
  flex-basis: 0;
  flex-grow: 1;
  max-width: 100%;
}
@media (max-width: 1023px) {
  .flex .flex-md-direction-column {
    flex-direction: column;
  }
  .flex .flex__md-column--0 {
    flex-basis: 0%;
    max-width: 0%;
  }
  .flex .flex__md-column--1 {
    flex-basis: 8.3333333333%;
    max-width: 8.3333333333%;
  }
  .flex .flex__md-column--2 {
    flex-basis: 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .flex .flex__md-column--3 {
    flex-basis: 25%;
    max-width: 25%;
  }
  .flex .flex__md-column--4 {
    flex-basis: 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .flex .flex__md-column--5 {
    flex-basis: 41.6666666667%;
    max-width: 41.6666666667%;
  }
  .flex .flex__md-column--6 {
    flex-basis: 50%;
    max-width: 50%;
  }
  .flex .flex__md-column--7 {
    flex-basis: 58.3333333333%;
    max-width: 58.3333333333%;
  }
  .flex .flex__md-column--8 {
    flex-basis: 66.6666666667%;
    max-width: 66.6666666667%;
  }
  .flex .flex__md-column--9 {
    flex-basis: 75%;
    max-width: 75%;
  }
  .flex .flex__md-column--10 {
    flex-basis: 83.3333333333%;
    max-width: 83.3333333333%;
  }
  .flex .flex__md-column--11 {
    flex-basis: 91.6666666667%;
    max-width: 91.6666666667%;
  }
  .flex .flex__md-column--12 {
    flex-basis: 100%;
    max-width: 100%;
  }
}
@media (max-width: 767px) {
  .flex .flex-sm-direction-column {
    flex-direction: column;
  }
  .flex .flex__sm-column--0 {
    flex-basis: 0%;
    max-width: 0%;
  }
  .flex .flex__sm-column--1 {
    flex-basis: 8.3333333333%;
    max-width: 8.3333333333%;
  }
  .flex .flex__sm-column--2 {
    flex-basis: 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .flex .flex__sm-column--3 {
    flex-basis: 25%;
    max-width: 25%;
  }
  .flex .flex__sm-column--4 {
    flex-basis: 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .flex .flex__sm-column--5 {
    flex-basis: 41.6666666667%;
    max-width: 41.6666666667%;
  }
  .flex .flex__sm-column--6 {
    flex-basis: 50%;
    max-width: 50%;
  }
  .flex .flex__sm-column--7 {
    flex-basis: 58.3333333333%;
    max-width: 58.3333333333%;
  }
  .flex .flex__sm-column--8 {
    flex-basis: 66.6666666667%;
    max-width: 66.6666666667%;
  }
  .flex .flex__sm-column--9 {
    flex-basis: 75%;
    max-width: 75%;
  }
  .flex .flex__sm-column--10 {
    flex-basis: 83.3333333333%;
    max-width: 83.3333333333%;
  }
  .flex .flex__sm-column--11 {
    flex-basis: 91.6666666667%;
    max-width: 91.6666666667%;
  }
  .flex .flex__sm-column--12 {
    flex-basis: 100%;
    max-width: 100%;
  }
}
@media (max-width: 375px) {
  .flex .flex-xs-direction-column {
    flex-direction: column;
  }
  .flex .flex__xs-column--0 {
    flex-basis: 0%;
    max-width: 0%;
  }
  .flex .flex__xs-column--1 {
    flex-basis: 8.3333333333%;
    max-width: 8.3333333333%;
  }
  .flex .flex__xs-column--2 {
    flex-basis: 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .flex .flex__xs-column--3 {
    flex-basis: 25%;
    max-width: 25%;
  }
  .flex .flex__xs-column--4 {
    flex-basis: 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .flex .flex__xs-column--5 {
    flex-basis: 41.6666666667%;
    max-width: 41.6666666667%;
  }
  .flex .flex__xs-column--6 {
    flex-basis: 50%;
    max-width: 50%;
  }
  .flex .flex__xs-column--7 {
    flex-basis: 58.3333333333%;
    max-width: 58.3333333333%;
  }
  .flex .flex__xs-column--8 {
    flex-basis: 66.6666666667%;
    max-width: 66.6666666667%;
  }
  .flex .flex__xs-column--9 {
    flex-basis: 75%;
    max-width: 75%;
  }
  .flex .flex__xs-column--10 {
    flex-basis: 83.3333333333%;
    max-width: 83.3333333333%;
  }
  .flex .flex__xs-column--11 {
    flex-basis: 91.6666666667%;
    max-width: 91.6666666667%;
  }
  .flex .flex__xs-column--12 {
    flex-basis: 100%;
    max-width: 100%;
  }
}
.flex-wrap {
  flex-wrap: wrap;
}

.flex__column--push--0 {
  margin-left: 0%;
}
.flex__column--push-1 {
  margin-left: 8.3333333333%;
}
.flex__column--push-2 {
  margin-left: 16.6666666667%;
}
.flex__column--push-3 {
  margin-left: 25%;
}
.flex__column--push-4 {
  margin-left: 33.3333333333%;
}
.flex__column--push-5 {
  margin-left: 41.6666666667%;
}
.flex__column--push-6 {
  margin-left: 50%;
}
.flex__column--push-7 {
  margin-left: 58.3333333333%;
}
.flex__column--push-8 {
  margin-left: 66.6666666667%;
}
.flex__column--push-9 {
  margin-left: 75%;
}
.flex__column--push-10 {
  margin-left: 83.3333333333%;
}
.flex__column--push-11 {
  margin-left: 91.6666666667%;
}
.flex__column--push-12 {
  margin-left: 100%;
}

.justify-content-between {
  justify-content: space-between;
}
.justify-content-around {
  justify-content: space-around;
}
.justify-content-center {
  justify-content: center;
}
.justify-content-end {
  justify-content: flex-end;
}
.justify-content-start {
  justify-content: flex-start;
}

.align-items-center {
  align-items: center !important;
}
.align-items-end {
  align-items: flex-end !important;
}
.align-items-start {
  align-items: flex-start !important;
}

.align-self-end {
  align-self: flex-end;
}

.flex--1 {
  flex: 1;
}
.flex--2 {
  flex: 2;
}
.flex--basis-100 {
  flex-basis: 100%;
}

.flex-order--1 {
  order: 1;
}
.flex-order--2 {
  order: 2;
}
.flex-order--3 {
  order: 3;
}

@media (max-width: 1023px) {
  .flex-md-order--1 {
    order: 1;
  }
  .flex-md-order--2 {
    order: 2;
  }
  .flex-md-order--3 {
    order: 3;
  }
}
@media (max-width: 1023px) {
  .flex-md-order--1 {
    order: 1;
  }
  .flex-md-order--2 {
    order: 2;
  }
  .flex-md-order--3 {
    order: 3;
  }
}
@media (max-width: 767px) {
  .flex-sm-order--1 {
    order: 1;
  }
  .flex-sm-order--2 {
    order: 2;
  }
  .flex-sm-order--3 {
    order: 3;
  }
}
@media (max-width: 375px) {
  .flex-xs-order--1 {
    order: 1;
  }
  .flex-xs-order--2 {
    order: 2;
  }
  .flex-xs-order--3 {
    order: 3;
  }
}
/*** Forms ***/
:disabled,
.disabled {
  pointer-events: none;
}

.disabled--lighter {
  opacity: 0.23;
}

fieldset {
  padding: 0;
  margin: 0;
  border: 0;
}

.required, .invalid-text {
  color: #e34850;
}

[aria-invalid=true] + .invalid-text {
  display: block;
}
[aria-invalid=true] .invalid-text {
  display: block;
}

input[aria-invalid=true] {
  border: solid 1px #e34850 !important;
  background-color: #fff7f7 !important;
}

.invalid-text {
  display: none;
  font-size: 1rem;
  margin-top: 0.3125rem;
}

label > .required  {
  margin-right: 0.3125rem;
}

.form .valid-text {
  display: none;
  font-size: 0.875rem;
  color: #0083be;
  margin-top: 0.3125rem;
}
.form .valid-text.field-updated {
  font-size: 0.875rem;
  margin-top: 0.9375rem;
}
.form .valid-text.field-updated.visible {
  display: inline-block;
}
.form [aria-invalid=false] + .valid-text {
  display: block;
}
.form [aria-invalid=false] .valid-text {
  display: block;
}

legend {
  display: block;
  width: 100%;
  padding: 0;
  border: 0;
  letter-spacing: 0.3px;
  color: #0071aa;
  font-size: 1.125rem;
  font-weight: 600;
  text-transform: uppercase;
}
@media (max-width: 767px) {
  legend {
    font-size: 1rem;
  }
}
@media (max-width: 375px) {
  legend {
    font-size: 0.875rem;
  }
}
legend.float-left {
  width: auto;
}

label {
  font-family: HelveticaNeue, sans-serif;
  font-size: 0.875rem;
  display: block;
  letter-spacing: 0.3px;
  color: #404040;
  margin-bottom: 0.125rem;
}

.adaptive-label {
  position: absolute;
  top: 50%;
  left: 15px;
  z-index: 1;
  transform: translateY(-50%);
  transition: all 0.25s 0s linear;
}

.form__control {
  border: 0;
  border-radius: 4px;
  box-shadow: inset 0 1px 1px 0 rgba(0, 0, 0, 0.15);
  background-color: #f3f4f8;
  width: 100%;
  height: 45px;
  padding: 0 0.9375rem;
  font-size: 1rem;
}
.form__control:focus, .form__control:valid, .form__control:-webkit-autofill {
  padding-top: 0.9375rem;
}
.form__control:focus + .adaptive-label, .form__control:valid + .adaptive-label, .form__control:-webkit-autofill + .adaptive-label {
  color: #a2a5b0;
  font-size: 0.875rem;
  transform: translateY(-100%);
}
.form__control:focus {
  border: 1px solid #c22b74;
  outline: none;
}
.form__control:-webkit-autofill + .adaptive-label {
  transition: none;
}

.form__group {
  position: relative;
}
.form__group + .form__group:not(.form__group--inline) {
  margin-top: 1.25rem;
}
.form__group:disabled, .form__group.disabled {
  pointer-events: none;
  opacity: 0.5;
}

@media (max-width: 767px) {
  .form__group--inline + .form__group--inline {
    margin-top: 0.9375rem;
  }
}

.radiobuttons input {
  opacity: 0;
}
.radiobuttons--toggle input {
  position: absolute;
  width: 50%;
  height: 100%;
  top: 0;
  z-index: 1;
}
.radiobuttons--toggle input[value=no] {
  left: 0;
  width: 100%;
  z-index: 2;
}
.radiobuttons--toggle input[value=no]:checked {
  width: 50%;
  z-index: 1;
}
.radiobuttons--toggle input[value=yes] {
  right: 0;
  width: 100%;
  z-index: 2;
}
.radiobuttons--toggle input[value=yes]:checked {
  width: 50%;
  z-index: 1;
}
.radiobuttons--toggle input[value=yes]:checked + .radiobutton__group::before {
  transform: translate(100%, -50%);
}
.radiobuttons--toggle input[value=yes]:checked + .radiobutton__group .radiobutton {
  background-color: #c22b74;
}
.radiobuttons__container {
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
}
.radiobuttons__inner-container {
  position: relative;
}
.radiobuttons .radiobutton__label {
  font-size: 0.875rem;
  font-weight: 600;
  margin-left: 0.625rem;
}
.radiobuttons [type=radio] {
  cursor: pointer;
}
.radiobuttons .radiobutton__group {
  display: flex;
  align-items: center;
}
.radiobuttons .radiobutton__group::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(0.188rem, -50%);
  width: 21px;
  height: 21px;
  box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.5);
  background-color: #ffffff;
  border-radius: 50%;
  transition: all 0.5s;
}
.radiobuttons .radiobutton__group .radiobutton {
  background-color: #d8d8d8;
  width: 22px;
  height: 26px;
  display: block;
}
.radiobuttons .radiobutton__group .radiobutton--no {
  border-radius: 15px 0 0 15px;
}
.radiobuttons .radiobutton__group .radiobutton--yes {
  border-radius: 0 15px 15px 0;
}

.checkbox {
  display: flex;
  align-items: center;
  margin-bottom: 0;
  cursor: pointer;
}
.checkbox + .checkbox {
  margin-top: 0.625rem;
}
.checkbox input {
  opacity: 0;
  width: 0;
  height: 0;
}
.checkbox input:checked + .checkbox__control {
  border: 1px solid #c22b74;
  background-color: #c22b74;
}
.checkbox input:checked + .checkbox__control::before {
  content: "";
  background: url(../img/icons/check-white.svg) no-repeat center center/8px 8px;
  width: 8px;
  height: 8px;
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.checkbox input:checked ~ .checkbox__label {
  color: #c22b74;
}
.checkbox .checkbox__control {
  width: 16px;
  height: 16px;
  border: 1px solid #000;
  background-color: #fff;
  position: relative;
}
.checkbox__label {
  max-width: 90%;
  margin-left: 0.625rem;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.5px;
}
@media (max-width: 767px) {
  .checkbox__label {
    font-size: 0.875rem;
  }
}

.radio {
  display: flex;
  align-items: center;
  margin-bottom: 0;
}
.radio input {
  opacity: 0;
  width: 0;
  height: 0;
}
.radio input:checked + .radio__control {
  border: 1px solid #c22b74;
}
.radio input:checked + .radio__control::before {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  background-color: #c22b74;
  border-radius: 50%;
  transform: translate(20%, 20%);
}
.radio input:checked ~ .radio__label {
  color: inherit;
}
.radio .radio__control {
  width: 16px;
  height: 16px;
  border: solid 1px #000;
  border-radius: 50%;
}
.radio__label {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1;
  margin-left: 0.625rem;
}

.form__inline-group {
  display: flex;
  flex-direction: row;
  align-items: center;
}
.form__inline-group--space-between {
  justify-content: space-between;
}
.form__inner-group {
  position: relative;
}
.form__inner-group + .form__inner-group {
  margin-top: 1.25rem;
}
.form__control-group {
  width: 100%;
}
.form__box + .form__box {
  margin-top: 1.25rem;
}
.form__fieldset + .form__fieldset {
  margin-top: 2.5rem;
  padding-top: 1.25rem;
  border-top: 1px solid #dddede;
}
@media (max-width: 767px) {
  .form__fieldset + .form__fieldset {
    margin-top: 1.5rem;
  }
}
.form__title {
  margin-bottom: 1.25rem;
}
@media (max-width: 767px) {
  .form__title {
    font-size: 1rem;
    margin-bottom: 0.9375rem;
  }
}
@media (max-width: 375px) {
  .form__title {
    font-size: 0.875rem;
    margin-bottom: 0.625rem;
  }
}
.form__subtitle {
  font-size: 1rem;
  font-weight: 600;
  letter-spacing: 0.23px;
  color: #404040;
  margin-bottom: 0.625rem;
}
@media (max-width: 767px) {
  .form__subtitle {
    font-size: 1rem;
  }
}
@media (max-width: 375px) {
  .form__subtitle {
    font-size: 0.875rem;
  }
}
.form__label {
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.4px;
  text-transform: uppercase;
  margin-bottom: 0.438rem;
  display: inline-flex;
  align-items: center;
  color: #fff;
}
.form__listbox-container {
  box-shadow: 0 11px 13px 0 rgba(0, 0, 0, 0.3);
  background-color: #fff;
  width: 100%;
  min-width: 320px;
  position: absolute;
  top: 42px;
  left: 0;
  z-index: 2;
}
.form__listbox-container[aria-hidden=true] {
  opacity: 0;
  transform: scaleY(0);
  transform-origin: top;
  transition: transform 0.25s linear, opacity 0.25s ease-in-out;
  min-width: 300px;
  background-color: #ffffff;
}
.form__listbox-container[aria-hidden=false] {
  opacity: 1;
  transform: scaleY(1);
  visibility: visible;
  height: auto;
  overflow: visible;
}
.form__listbox-container .form__button-container {
  padding: 1.25rem 0.625rem;
}
.form .listbox:not(.return-hidden) {
  width: 100%;
}

.form-standard {
  /*  .button {
      margin: 1.25rem auto 0;

      @media (max-width: $media-sm) {
          margin-top: 0.625rem;
      }
  } */
}
.form-standard .form__title {
  margin-bottom: 0;
}
.form-standard .form__title ~ .text {
  margin-top: 0.625rem;
}
.form-standard .form__title ~ .form__box {
  margin-top: 1.25rem;
}
.form-standard label:not(.checkbox):not(.radio) {
  font-size: 0.875rem;
  letter-spacing: 0.2px;
  margin-bottom: 0.125rem;
}
.form-standard label:not(.checkbox):not(.radio).label--blue {
  color: #0071aa;
}
@media (max-width: 375px) {
  .form-standard label:not(.checkbox):not(.radio) {
    font-size: 0.625rem;
    margin-bottom: 0.188rem;
  }
}
.form-standard label:not(.checkbox):not(.radio) > span {
  text-transform: none;
}
.form-standard .form__custom-button,
.form-standard .form__custom-label {
  display: flex;
  align-items: center;
  width: 100%;
  height: 40px;
  cursor: pointer;
  font-size: 0.875rem;
  letter-spacing: 0.3px;
  border-radius: 4px;
  border: solid 1px #00436f;
  background-color: #ffffff;
  padding: 0 0.9375rem;
  position: relative;
}
.form-standard .form__custom-button--outward::before,
.form-standard .form__custom-label--outward::before {
  content: "";
  background: url(../img/icons/arrows/outward-arrow.svg) no-repeat 0 0;
  width: 20px;
  height: 18px;
  display: inline-block;
  margin-right: 0.313rem;
}
.form-standard .form__custom-button--return::before,
.form-standard .form__custom-label--return::before {
  content: "";
  background: url(../img/icons/arrows/return-arrow.svg) no-repeat 0 0;
  width: 20px;
  height: 18px;
  display: inline-block;
  margin-right: 0.313rem;
}
.form-standard .form__custom-button--calendar::before,
.form-standard .form__custom-label--calendar::before {
  content: "";
  background: url(../img/icons/calendar.svg) no-repeat 0 0;
  width: 20px;
  height: 18px;
  display: inline-block;
  margin-right: 0.313rem;
}
.form-standard .form__custom-button::after,
.form-standard .form__custom-label::after {
  content: "";
  background: url(../img/icons/dropdown-arrows.svg) no-repeat 0 center/cover;
  width: 9px;
  height: 14px;
  display: block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 15px;
  z-index: 1;
}
.form-standard .form__control {
  font-size: 1rem;
  letter-spacing: 0.3px;
  border-radius: 4px;
  border: solid 1px #00436f;
  background-color: #ffffff;
  padding: 0 0.9375rem;
  height: 40px;
}
.form-standard .form__control:focus {
  border: 1px solid #c22b74;
  outline: none;
}

.custom-checkbox {
  display: flex;
  align-items: center;
}
.custom-checkbox input {
  opacity: 0;
}
.custom-checkbox input:checked + .custom-checkbox__input::before {
  content: "";
  display: block;
  background: url(../img/icons/check-pink.svg) no-repeat 0 0/cover;
  width: 16px;
  height: 16px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}
.custom-checkbox__input {
  width: 16px;
  height: 16px;
  border: 1px solid #00436f;
  position: relative;
}
.custom-checkbox__label {
  font-size: 0.813rem;
  margin-left: 0.625rem;
}
.custom-checkbox + .custom-checkbox {
  margin-top: 0.813rem;
}
.custom-checkbox--bold .custom-checkbox__label {
  font-weight: 600;
  line-height: 1.5;
}

/*** List ***/
.list {
  line-height: 1.5;
}
.list.default-list li + li {
  margin-top: 1.25rem;
}
.list.list-group li {
  padding-left: 5px;
}
.list.bullet-list {
  list-style: disc;
}
.list.bullet-list li {
  margin-left: 2.5rem;
}
.list.checkmark-list {
  list-style: none;
}
.list.checkmark-list li {
  font-weight: 600;
  font-size: 0.75rem;
  text-transform: uppercase;
}
.list.checkmark-list li::before {
  content: "";
  background-color: #f3f4f8;
  background: url(../img/icons/check-pink.svg) no-repeat 0 center;
  width: 13px;
  height: 10px;
  margin-right: 0.625rem;
  display: inline-block;
}
.list.checkmark-list li + li {
  margin-top: 0.313rem;
}

.expanded-list {
  width: 840px;
  height: 60px;
  margin: 4px 0 10px;
  padding: 10px 20px 12px;
  border-radius: 4px;
  border: solid 1px #d9d9d9;
  background-image: linear-gradient(to bottom, #ffffff 3%, #f3f4f8);
}
.expanded-list button[aria-expanded] {
  font-size: 0.75rem;
  letter-spacing: 0.45px;
  position: relative;
  text-transform: none;
  font-weight: 500;
  display: flex;
}
.expanded-list--columns-5 li {
  flex-basis: 14%;
}
.expanded-list--columns-5 li:first-child {
  flex-basis: 25%;
}
.expanded-list--columns-5 li:nth-child(3) {
  flex-basis: 13%;
}
.expanded-list--columns-5 li:nth-child(4) {
  flex-basis: 28%;
}
.expanded-list--columns-5 li:last-child {
  flex-basis: 20%;
}
.expanded-list--columns-3 li:first-child {
  flex: 0 0 15%;
}
.expanded-list--columns-3 li:nth-child(2) {
  flex: 1;
}

.route-list li {
  font-size: 0.875rem;
  line-height: 1.5;
}
.route-list__date {
  letter-spacing: 0.3px;
}
.route-list__total-price {
  letter-spacing: 0.5px;
  text-align: right;
}

/*** Behaviours ***/
.hidden {
  display: none;
}

.d-none {
  display: none !important;
}
.d-block {
  display: block !important;
}
.d-inline-block {
  display: inline-block !important;
}
.d-inline {
  display: inline !important;
}

@media (max-width: 1023px) {
  .d-md-none {
    display: none !important;
  }
  .d-md-block {
    display: block !important;
  }
  .d-md-inline-block {
    display: inline-block !important;
  }
  .d-md-inline {
    display: inline !important;
  }
}
@media (max-width: 767px) {
  .d-sm-none {
    display: none !important;
  }
  .d-sm-block {
    display: block !important;
  }
  .d-sm-inline-block {
    display: inline-block !important;
  }
  .d-sm-inline {
    display: inline !important;
  }
}
@media (max-width: 375px) {
  .d-xs-none {
    display: none !important;
  }
  .d-xs-block {
    display: block !important;
  }
  .d-xs-inline-block {
    display: inline-block !important;
  }
  .d-xs-inline {
    display: inline !important;
  }
}
.float-left {
  float: left;
}
.float-right {
  float: right;
}
.float-none {
  float: none;
}

.clearfix:before,
.clearfix:after {
  content: " ";
  display: block;
}

.clearfix:after {
  clear: both;
}

.full-width {
  width: 100%;
}

.listbox-item-selected::before {
  content: "";
  background-color: #f3f4f8;
  background: url(../img/icons/check-pink.svg) no-repeat 0 center;
  width: 13px;
  height: 11px;
  margin-right: 0.313rem;
  display: inline-block;
}

.box-selected {
  border: solid 1px #c22b74 !important;
}

/*** Margins ***/
.mx-center {
  margin-left: auto;
  margin-right: auto;
}

.my-0 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.my-15 {
  margin-top: 0.9375rem !important;
  margin-bottom: 0.9375rem !important;
}

.myt-0 {
  margin-top: 0 !important;
}

.myt-5 {
  margin-top: 0.313rem !important;
}

.myt-10 {
  margin-top: 0.625rem !important;
}

.myt-15 {
  margin-top: 0.9375rem !important;
}

.myt-20 {
  margin-top: 1.25rem !important;
}

.myt-30 {
  margin-top: 1.875rem !important;
}

.myt-40 {
  margin-top: 2.5rem !important;
}

.myt-45 {
  margin-top: 2.813rem !important;
}

.myt-60 {
  margin-top: 3.75rem !important;
}

.myb-0 {
  margin-bottom: 0 !important;
}

.myb-5 {
  margin-bottom: 0.313rem !important;
}

.myb-10 {
  margin-bottom: 0.625rem !important;
}

.myb-15 {
  margin-bottom: 0.9375rem !important;
}

.myb-20 {
  margin-bottom: 1.25rem !important;
}

.myb-30 {
  margin-bottom: 1.875rem !important;
}

.myb-40 {
  margin-bottom: 2.5rem !important;
}

.myb-45 {
  margin-bottom: 2.813rem !important;
}

.myb-60 {
  margin-bottom: 3.75rem !important;
}

.mxl-0 {
  margin-left: 0 !important;
}

.mxl-5 {
  margin-left: 0.313rem !important;
}

.mxl-10 {
  margin-left: 0.625rem !important;
}

.mxl-15 {
  margin-left: 0.9375rem !important;
}

.mxl-20 {
  margin-left: 1.25rem !important;
}

.mxl-30 {
  margin-left: 1.875rem !important;
}

.mxl-45 {
  margin-left: 2.813rem !important;
}

.mxr-0 {
  margin-top: 0 !important;
}

.mxr-5, .route__boat-image {
  margin-right: 0.313rem !important;
}

.mxr-10 {
  margin-right: 0.625rem !important;
}

.mxr-15 {
  margin-right: 0.9375rem !important;
}

.mxr-20 {
  margin-right: 1.25rem !important;
}

.mxr-30 {
  margin-right: 1.875rem !important;
}

.mxr-45 {
  margin-right: 2.813rem !important;
}

@media (max-width: 767px) {
  .myt-sm-0 {
    margin-top: 0 !important;
  }
  .myt-sm-5 {
    margin-top: 0.313rem !important;
  }
  .myt-sm-10 {
    margin-top: 0.625rem !important;
  }
  .myt-sm-15 {
    margin-top: 0.9375rem !important;
  }
  .myt-sm-20 {
    margin-top: 1.25rem !important;
  }
  .myt-sm-30 {
    margin-top: 1.875rem !important;
  }
  .myt-sm-40 {
    margin-top: 2.5rem !important;
  }
  .myt-sm-45 {
    margin-top: 2.813rem !important;
  }
}
/*** Paddings ***/
.px-0 {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.px-5 {
  padding-left: 0.3125rem !important;
  padding-right: 0.3125rem !important;
}

.px-10 {
  padding-left: 0.625rem !important;
  padding-right: 0.625rem !important;
}

.px-15 {
  padding-left: 0.9375rem !important;
  padding-right: 0.9375rem !important;
}

.px-20 {
  padding-left: 1.25rem !important;
  padding-right: 1.25rem !important;
}

.px-30 {
  padding-left: 1.875rem !important;
  padding-right: 1.875rem !important;
}

.py-15 {
  padding-top: 0.9375rem !important;
  padding-bottom: 0.9375rem !important;
}

.pyt-20 {
  padding-left: 1.25rem !important;
  padding-right: 1.25rem !important;
}

.pyt-30 {
  padding-left: 1.875rem !important;
  padding-right: 1.875rem !important;
}

.pyt-45 {
  padding-left: 2.813rem !important;
  padding-right: 2.813rem !important;
}

.pyt-0 {
  padding-top: 0 !important;
}

.pyt-5 {
  padding-top: 0.3125rem !important;
}

.pyt-10 {
  padding-top: 0.625rem !important;
}

.pyt-15 {
  padding-top: 0.9375rem !important;
}

.pyt-20 {
  padding-top: 1.25rem !important;
}

.pyt-30 {
  padding-top: 1.875rem !important;
}

.pyt-45 {
  padding-top: 2.813rem !important;
}

.pyb-0 {
  padding-bottom: 0 !important;
}

.pyb-5 {
  padding-bottom: 0.3125rem !important;
}

.pyb-10 {
  padding-bottom: 0.625rem !important;
}

.pyb-15 {
  padding-bottom: 0.9375rem !important;
}

.pyb-20 {
  padding-bottom: 1.25rem !important;
}

.pyb-30 {
  padding-bottom: 1.875rem !important;
}

.pyb-45 {
  padding-bottom: 2.813rem !important;
}

.pxl-0 {
  padding-left: 0 !important;
}

.pxl-5 {
  padding-left: 0.3125rem !important;
}

.pxl-10 {
  padding-left: 0.625rem !important;
}

.pxl-15 {
  padding-left: 0.9375rem !important;
}

.pxl-20 {
  padding-left: 1.25rem !important;
}

.pxl-30 {
  padding-left: 1.875rem !important;
}

.pxl-45 {
  padding-left: 2.813rem !important;
}

.pxr-0 {
  padding-top: 0 !important;
}

.pxr-5 {
  padding-right: 0.3125rem !important;
}

.pxr-10 {
  padding-right: 0.625rem !important;
}

.pxr-15 {
  padding-right: 0.9375rem !important;
}

.pxr-20 {
  padding-right: 1.25rem !important;
}

.pxr-30 {
  padding-right: 1.875rem !important;
}

.pxr-45 {
  padding-right: 2.813rem !important;
}

/*** Borders ***/
.border-1 {
  border: 1px solid #dddede;
}

.border-top-1 {
  border-top: 1px solid #dddede;
}

.border-left-1 {
  border-left: 1px solid #dddede;
}

.border-right-1 {
  border-right: 1px solid #dddede;
}

.border-bottom-1 {
  border-bottom: 1px solid #dddede;
}

/*** Screenreaders ***/
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

.f32 .flag {
  background: url(/wp-content/northlink-booking/img/flags32.png) no-repeat;
  vertical-align: middle;
}
.f32 ._African_Union {
  background-position: 0 -32px;
}
.f32 ._Arab_League {
  background-position: 0 -64px;
}
.f32 ._ASEAN {
  background-position: 0 -96px;
}
.f32 ._CARICOM {
  background-position: 0 -128px;
}
.f32 ._CIS {
  background-position: 0 -160px;
}
.f32 ._Commonwealth {
  background-position: 0 -192px;
}
.f32 ._England {
  background-position: 0 -224px;
}
.f32 ._European_Union {
  background-position: 0 -256px;
}
.f32 ._Islamic_Conference {
  background-position: 0 -288px;
}
.f32 ._Kosovo {
  background-position: 0 -320px;
}
.f32 ._NATO {
  background-position: 0 -352px;
}
.f32 ._Northern_Cyprus {
  background-position: 0 -384px;
}
.f32 ._Northern_Ireland {
  background-position: 0 -416px;
}
.f32 ._Olimpic_Movement {
  background-position: 0 -448px;
}
.f32 ._OPEC {
  background-position: 0 -480px;
}
.f32 ._Red_Cross {
  background-position: 0 -512px;
}
.f32 .sc {
  background-position: 0 -544px;
}
.f32 ._Somaliland {
  background-position: 0 -576px;
}
.f32 ._Tibet {
  background-position: 0 -608px;
}
.f32 .tb {
  background-position: 0 -608px;
}
.f32 ._United_Nations {
  background-position: 0 -640px;
}
.f32 ._Wales {
  background-position: 0 -672px;
}
.f32 .eu {
  background-position: 0 -256px;
}
.f32 .an {
  background-position: 0 -704px;
}
.f32 .ae {
  background-position: 0 -736px;
}
.f32 .af {
  background-position: 0 -768px;
}
.f32 .ag {
  background-position: 0 -800px;
}
.f32 .ai {
  background-position: 0 -832px;
}
.f32 .ab {
  background-position: 0 -864px;
}
.f32 .am {
  background-position: 0 -896px;
}
.f32 .ao {
  background-position: 0 -928px;
}
.f32 .aq {
  background-position: 0 -960px;
}
.f32 .ar {
  background-position: 0 -992px;
}
.f32 .as {
  background-position: 0 -1024px;
}
.f32 .a {
  background-position: 0 -1056px;
}
.f32 .au {
  background-position: 0 -1088px;
}
.f32 .aw {
  background-position: 0 -1120px;
}
.f32 .ax {
  background-position: 0 -1152px;
}
.f32 .az {
  background-position: 0 -1184px;
}
.f32 .ba {
  background-position: 0 -1216px;
}
.f32 .bb {
  background-position: 0 -1248px;
}
.f32 .bd {
  background-position: 0 -1280px;
}
.f32 .be {
  background-position: 0 -1312px;
}
.f32 .bf {
  background-position: 0 -1344px;
}
.f32 .bg {
  background-position: 0 -1376px;
}
.f32 .bh {
  background-position: 0 -1408px;
}
.f32 .bi {
  background-position: 0 -1440px;
}
.f32 .bj {
  background-position: 0 -1472px;
}
.f32 .bm {
  background-position: 0 -1504px;
}
.f32 .bn {
  background-position: 0 -1536px;
}
.f32 .bo {
  background-position: 0 -1568px;
}
.f32 .br {
  background-position: 0 -1600px;
}
.f32 .bs {
  background-position: 0 -1632px;
}
.f32 .bt {
  background-position: 0 -1664px;
}
.f32 .bw {
  background-position: 0 -1696px;
}
.f32 .by {
  background-position: 0 -1728px;
}
.f32 .bz {
  background-position: 0 -1760px;
}
.f32 .ca {
  background-position: 0 -1792px;
}
.f32 .cd {
  background-position: 0 -1824px;
}
.f32 .car {
  background-position: 0 -1856px;
}
.f32 .cg {
  background-position: 0 -1888px;
}
.f32 .ch {
  background-position: 0 -1920px;
}
.f32 .ci {
  background-position: 0 -1952px;
}
.f32 .ck {
  background-position: 0 -1984px;
}
.f32 .cl {
  background-position: 0 -2016px;
}
.f32 .cm {
  background-position: 0 -2048px;
}
.f32 .cn {
  background-position: 0 -2080px;
}
.f32 .co {
  background-position: 0 -2112px;
}
.f32 .csr {
  background-position: 0 -2144px;
}
.f32 .cu {
  background-position: 0 -2176px;
}
.f32 .cv {
  background-position: 0 -2208px;
}
.f32 .cy {
  background-position: 0 -2240px;
}
.f32 .cz {
  background-position: 0 -2272px;
}
.f32 .d {
  background-position: 0 -2304px;
}
.f32 .dj {
  background-position: 0 -2336px;
}
.f32 .dk {
  background-position: 0 -2368px;
}
.f32 .dm {
  background-position: 0 -2400px;
}
.f32 .do {
  background-position: 0 -2432px;
}
.f32 .al {
  background-position: 0 -2464px;
}
.f32 .ec {
  background-position: 0 -2496px;
}
.f32 .ee {
  background-position: 0 -2528px;
}
.f32 .eg {
  background-position: 0 -2560px;
}
.f32 .eh {
  background-position: 0 -2592px;
}
.f32 .er {
  background-position: 0 -2624px;
}
.f32 .sp {
  background-position: 0 -2656px;
}
.f32 .et {
  background-position: 0 -2688px;
}
.f32 .fin {
  background-position: 0 -2720px;
}
.f32 .fj {
  background-position: 0 -2752px;
}
.f32 .fm {
  background-position: 0 -2784px;
}
.f32 .fo {
  background-position: 0 -2816px;
}
.f32 .fr {
  background-position: 0 -2848px;
}
.f32 .bl {
  background-position: 0 -2848px;
}
.f32 .cp {
  background-position: 0 -2848px;
}
.f32 .mf {
  background-position: 0 -2848px;
}
.f32 .yt {
  background-position: 0 -2848px;
}
.f32 .ga {
  background-position: 0 -2880px;
}
.f32 .gbr {
  background-position: 0 -2912px;
}
.f32 .sh {
  background-position: 0 -2912px;
}
.f32 .uk {
  background-position: 0 -2912px;
}
.f32 .iom {
  background-position: 0 -2912px;
}
.f32 .gd {
  background-position: 0 -2944px;
}
.f32 .ge {
  background-position: 0 -2976px;
}
.f32 .gg {
  background-position: 0 -3008px;
}
.f32 .gh {
  background-position: 0 -3040px;
}
.f32 .gb {
  background-position: 0 -3072px;
}
.f32 .gl {
  background-position: 0 -3104px;
}
.f32 .gm {
  background-position: 0 -3136px;
}
.f32 .gn {
  background-position: 0 -3168px;
}
.f32 .gp {
  background-position: 0 -3200px;
}
.f32 .gq {
  background-position: 0 -3232px;
}
.f32 .gr {
  background-position: 0 -3264px;
}
.f32 .gt {
  background-position: 0 -3296px;
}
.f32 .gu {
  background-position: 0 -3328px;
}
.f32 .gw {
  background-position: 0 -3360px;
}
.f32 .gy {
  background-position: 0 -3392px;
}
.f32 .hk {
  background-position: 0 -3424px;
}
.f32 .hn {
  background-position: 0 -3456px;
}
.f32 .cr {
  background-position: 0 -3488px;
}
.f32 .ht {
  background-position: 0 -3520px;
}
.f32 .h {
  background-position: 0 -3552px;
}
.f32 .id {
  background-position: 0 -3584px;
}
.f32 .mc {
  background-position: 0 -3584px;
}
.f32 .ir {
  background-position: 0 -3616px;
}
.f32 .il {
  background-position: 0 -3648px;
}
.f32 .im {
  background-position: 0 -3680px;
}
.f32 .in {
  background-position: 0 -3712px;
}
.f32 .iq {
  background-position: 0 -3744px;
}
.f32 .ia {
  background-position: 0 -3776px;
}
.f32 .is {
  background-position: 0 -3808px;
}
.f32 .it {
  background-position: 0 -3840px;
}
.f32 .je {
  background-position: 0 -3872px;
}
.f32 .ja {
  background-position: 0 -3904px;
}
.f32 .jo {
  background-position: 0 -3936px;
}
.f32 .jp {
  background-position: 0 -3968px;
}
.f32 .ke {
  background-position: 0 -4000px;
}
.f32 .kg {
  background-position: 0 -4032px;
}
.f32 .kh {
  background-position: 0 -4064px;
}
.f32 .ki {
  background-position: 0 -4096px;
}
.f32 .km {
  background-position: 0 -4128px;
}
.f32 .kn {
  background-position: 0 -4160px;
}
.f32 .nk {
  background-position: 0 -4192px;
}
.f32 .so {
  background-position: 0 -4224px;
}
.f32 .kw {
  background-position: 0 -4256px;
}
.f32 .ky {
  background-position: 0 -4288px;
}
.f32 .ka {
  background-position: 0 -4320px;
}
.f32 .la {
  background-position: 0 -4352px;
}
.f32 .le {
  background-position: 0 -4384px;
}
.f32 .lc {
  background-position: 0 -4416px;
}
.f32 .fl {
  background-position: 0 -4448px;
}
.f32 .lk {
  background-position: 0 -4480px;
}
.f32 .lr {
  background-position: 0 -4512px;
}
.f32 .ls {
  background-position: 0 -4544px;
}
.f32 .lt {
  background-position: 0 -4576px;
}
.f32 .lu {
  background-position: 0 -4608px;
}
.f32 .lv {
  background-position: 0 -4640px;
}
.f32 .ly {
  background-position: 0 -4672px;
}
.f32 .ma {
  background-position: 0 -4704px;
}
.f32 .md {
  background-position: 0 -4736px;
}
.f32 .me {
  background-position: 0 -4768px;
}
.f32 .mg {
  background-position: 0 -4800px;
}
.f32 .mh {
  background-position: 0 -4832px;
}
.f32 .mk {
  background-position: 0 -4864px;
}
.f32 .ml {
  background-position: 0 -4896px;
}
.f32 .bu {
  background-position: 0 -4928px;
}
.f32 .mon {
  background-position: 0 -4960px;
}
.f32 .mo {
  background-position: 0 -4992px;
}
.f32 .mq {
  background-position: 0 -5024px;
}
.f32 .mr {
  background-position: 0 -5056px;
}
.f32 .ms {
  background-position: 0 -5088px;
}
.f32 .m {
  background-position: 0 -5120px;
}
.f32 .mu {
  background-position: 0 -5152px;
}
.f32 .mv {
  background-position: 0 -5184px;
}
.f32 .mw {
  background-position: 0 -5216px;
}
.f32 .mx {
  background-position: 0 -5248px;
}
.f32 .my {
  background-position: 0 -5280px;
}
.f32 .mz {
  background-position: 0 -5312px;
}
.f32 .na {
  background-position: 0 -5344px;
}
.f32 .nc {
  background-position: 0 -5376px;
}
.f32 .ne {
  background-position: 0 -5408px;
}
.f32 .ng {
  background-position: 0 -5440px;
}
.f32 .ni {
  background-position: 0 -5472px;
}
.f32 .nl {
  background-position: 0 -5504px;
}
.f32 .bq {
  background-position: 0 -5504px;
}
.f32 .no {
  background-position: 0 -5536px;
}
.f32 .bv {
  background-position: 0 -5536px;
}
.f32 .nq {
  background-position: 0 -5536px;
}
.f32 .sj {
  background-position: 0 -5536px;
}
.f32 .np {
  background-position: 0 -5568px;
}
.f32 .nr {
  background-position: 0 -5600px;
}
.f32 .nz {
  background-position: 0 -5632px;
}
.f32 .om {
  background-position: 0 -5664px;
}
.f32 .pa {
  background-position: 0 -5696px;
}
.f32 .pe {
  background-position: 0 -5728px;
}
.f32 .pf {
  background-position: 0 -5760px;
}
.f32 .pg {
  background-position: 0 -5792px;
}
.f32 .ph {
  background-position: 0 -5824px;
}
.f32 .pk {
  background-position: 0 -5856px;
}
.f32 .po {
  background-position: 0 -5888px;
}
.f32 .pr {
  background-position: 0 -5920px;
}
.f32 .ps {
  background-position: 0 -5952px;
}
.f32 .pt {
  background-position: 0 -5984px;
}
.f32 .pw {
  background-position: 0 -6016px;
}
.f32 .py {
  background-position: 0 -6048px;
}
.f32 .qa {
  background-position: 0 -6080px;
}
.f32 .re {
  background-position: 0 -6112px;
}
.f32 .ro {
  background-position: 0 -6144px;
}
.f32 .sr {
  background-position: 0 -6176px;
}
.f32 .ru {
  background-position: 0 -6208px;
}
.f32 .rw {
  background-position: 0 -6240px;
}
.f32 .sa {
  background-position: 0 -6272px;
}
.f32 .sb {
  background-position: 0 -6304px;
}
.f32 .sd {
  background-position: 0 -6368px;
}
.f32 .se {
  background-position: 0 -6400px;
}
.f32 .sg {
  background-position: 0 -6432px;
}
.f32 .si {
  background-position: 0 -6464px;
}
.f32 .sk {
  background-position: 0 -6496px;
}
.f32 .sl {
  background-position: 0 -6528px;
}
.f32 .sm {
  background-position: 0 -6560px;
}
.f32 .sn {
  background-position: 0 -6592px;
}
.f32 .st {
  background-position: 0 -6688px;
}
.f32 .sv {
  background-position: 0 -6720px;
}
.f32 .sy {
  background-position: 0 -6752px;
}
.f32 .sz {
  background-position: 0 -6784px;
}
.f32 .tc {
  background-position: 0 -6816px;
}
.f32 .td {
  background-position: 0 -6848px;
}
.f32 .tg {
  background-position: 0 -6880px;
}
.f32 .th {
  background-position: 0 -6912px;
}
.f32 .tj {
  background-position: 0 -6944px;
}
.f32 .tl {
  background-position: 0 -6976px;
}
.f32 .tm {
  background-position: 0 -7008px;
}
.f32 .tn {
  background-position: 0 -7040px;
}
.f32 .to {
  background-position: 0 -7072px;
}
.f32 .tr {
  background-position: 0 -7104px;
}
.f32 .tt {
  background-position: 0 -7136px;
}
.f32 .tv {
  background-position: 0 -7168px;
}
.f32 .ta {
  background-position: 0 -7200px;
}
.f32 .tz {
  background-position: 0 -7232px;
}
.f32 .ur {
  background-position: 0 -7264px;
}
.f32 .ug {
  background-position: 0 -7296px;
}
.f32 .usa {
  background-position: 0 -7328px;
}
.f32 .uy {
  background-position: 0 -7360px;
}
.f32 .uz {
  background-position: 0 -7392px;
}
.f32 .va {
  background-position: 0 -7424px;
}
.f32 .vc {
  background-position: 0 -7456px;
}
.f32 .ve {
  background-position: 0 -7488px;
}
.f32 .vg {
  background-position: 0 -7520px;
}
.f32 .vi {
  background-position: 0 -7552px;
}
.f32 .vn {
  background-position: 0 -7584px;
}
.f32 .van {
  background-position: 0 -7616px;
}
.f32 .ws {
  background-position: 0 -7648px;
}
.f32 .ye {
  background-position: 0 -7680px;
}
.f32 .za {
  background-position: 0 -7712px;
}
.f32 .zb {
  background-position: 0 -7744px;
}
.f32 .zm {
  background-position: 0 -7776px;
}
.f32 .sx {
  background-position: 0 -7808px;
}
.f32 .cw {
  background-position: 0 -7840px;
}
.f32 .ss {
  background-position: 0 -7872px;
}
.f32 .nu {
  background-position: 0 -7904px;
}

/*** Components ***/
/*** Icons ***/
.icon--before::before {
  content: "";
  display: inline-block;
  vertical-align: middle;
}
.icon--before-spacing::before {
  margin-right: 0.5rem;
}
.icon--before-spacing-normal::before {
  margin-right: 0.9375rem;
}
.icon--after::after {
  content: "";
  display: inline-block;
  vertical-align: middle;
}
.icon--after-spacing::after {
  margin-left: 0.5rem;
}
.icon--after-spacing-normal::after {
  margin-left: 0.9375rem;
}
.icon--small-before::before {
  width: 20px;
  height: 18px;
}
.icon--small-after::after {
  width: 20px;
  height: 18px;
}
.icon--normal-before::before {
  width: 23px;
  height: 23px;
}
.icon--normal-after::after {
  width: 23px;
  height: 23px;
}
.icon--inside-button-before::before {
  width: 19px;
  height: 14px;
}
.icon--inside-button-after::after {
  width: 19px;
  height: 14px;
}
.icon--none-before::before {
  background: none;
}
.icon--none-after::after {
  background: none;
}
.icon--outward::before {
  background: url(../img/icons/arrows/outward-arrow.svg) no-repeat 0 0;
}
.icon--return::before {
  background: url(../img/icons/arrows/return-arrow.svg) no-repeat 0 0;
}
.icon--datepicker::before {
  background: url(../img/icons/svg/calendar.svg) no-repeat 0 0/cover;
}
.icon--search::before {
  background: url("../img/icons/svg/combined-shape.svg") no-repeat center center/cover;
}
.icon--car::before {
  background: url(../img/icons/svg/car.svg) no-repeat 0 0/cover;
}
.icon--passengers::before {
  background: url(../img/icons/svg/passengers.svg) no-repeat 0 0/cover;
}
.icon--round-trip::before {
  background: url(../img/icons/svg/round-trip.svg) no-repeat 0 0/cover;
  width: 17px;
  height: 17px;
}
.icon--checkmark-before::before {
  background: url(../img/icons/svg/green-check.svg) no-repeat 0 0/cover;
}
.icon--checkmark-after::after {
  background: url(../img/icons/svg/green-check.svg) no-repeat 0 0/cover;
}
.icon--cabin-not-available::before {
  content: "";
  background: url(../img/icons/cabin-not-available.svg) no-repeat 0 0/cover;
  width: 24px;
  height: 18px;
}
.icon--cardeck-is-full::before {
  content: "";
  background: url(../img/icons/cardeck-is-full.svg) no-repeat 0 0/cover;
  width: 24px;
  height: 18px;
}
.icon--calendar::before, .calendar-button::before {
  content: "";
  background: url(../img/icons/calendar.svg) no-repeat 0 0/cover;
  display: inline-block;
  width: 20px;
  height: 18px;
}
.icon--ribbon::before {
  content: "";
  background: url(../img/icons/magnus-lounge.svg) no-repeat 0 0/cover;
}
.icon--lounge-simple-before::before {
  background: url(../img/icons/magnus-lounge-simple.svg) no-repeat 0 0/cover;
}
.icon--lounge-simple-after::after {
  background: url(../img/icons/magnus-lounge-simple.svg) no-repeat 0 0/cover;
}
.icon--star::before {
  background: url(../img/icons/star.svg) no-repeat 0 0/cover;
}
.icon--bed::before {
  background: url(../img/icons/bed.svg) no-repeat 0 0/cover;
}
.icon--add::before {
  background: url(../img/icons/plus.svg) no-repeat 0 0;
}
.icon--remove::before {
  background: url(../img/icons/minus.svg) no-repeat 0 0;
}

.is-loading {
  position: relative;
}
.is-loading::before {
  content: "";
  display: block;
  background: url(../img/icons/loader-small.gif) no-repeat 0 center;
  width: 20px;
  height: 20px;
  position: absolute;
  top: 50%;
  left: 40px;
  transform: translateY(-50%);
}

/*** Routes ***/
.route {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  font-size: 0.875rem;
  width: 100%;
}
@media (max-width: 767px) {
  .route {
    align-items: flex-start;
    font-size: 0.75rem;
  }
}
@media (max-width: 767px) {
  .route__boat-image {
    flex: 1 0 100%;
  }
}
.route__title {
  color: #0095d7;
  font-weight: 600;
  letter-spacing: 0.2px;
  text-transform: uppercase;
}
.route__destination {
  display: flex;
  align-items: center;
}
@media (max-width: 767px) {
  .route__destination {
    flex: 1 0 50%;
  }
}
@media (max-width: 375px) {
  .route__destination {
    flex: 1 0 auto;
  }
}
.route__destination .icon {
  margin: 0 0.625rem;
}
@media (max-width: 767px) {
  .route__destination .icon {
    margin: 0 0.313rem;
  }
}
.route__destination .icon::before {
  width: 24px;
  height: 11px;
}
.route__date {
  font-size: 0.875rem;
  line-height: 1.64;
  margin-left: 0.625rem;
}
@media (max-width: 767px) {
  .route__date {
    flex: 1 0 50%;
    margin-left: 0;
    font-size: 0.75rem;
  }
}
@media (max-width: 375px) {
  .route__date {
    flex: 1 0 auto;
  }
}
.route__to {
  margin: 0 0.625rem;
}
.route__to::before {
  content: "";
  background: url(../img/icons/stroke.svg) no-repeat 0 0/cover;
  width: 24px;
  height: 10px;
  display: inline-block;
}
.route__journey::before {
  content: "";
  background: url(../img/icons/arrows/arrow-blue.svg) no-repeat 0 0/cover;
  width: 24px;
  height: 10px;
  display: inline-block;
}
.route__journey.return::before {
  transform: rotateZ(180deg);
}
.route__calendar {
  position: relative;
  align-self: center;
  flex: 1;
  display: flex;
  justify-content: flex-end;
  /* .dropdown {
      position: absolute;
      opacity: 0;
      transform: scaleY(0);
      transform-origin: top;
      transition: transform 0.25s linear, opacity 0.25s ease-in-out;
      z-index: 2;
      right: -20px;
      top: 30px;
      -webkit-box-shadow: 4px 6px 8px 1px rgba(0,0,0,0.75);
      -moz-box-shadow: 4px 6px 8px 1px rgba(0,0,0,0.75);
      box-shadow: 4px 6px 8px 1px rgba(0,0,0,0.75);
      background-color: rgba($color: #fff, $alpha: 1.0);

      &[aria-hidden="false"] {
          opacity: 1;
          transform: scaleY(1);
          visibility: visible;
          height: auto;
          overflow: visible;
      }
  } */
}
@media (max-width: 767px) {
  .route__calendar {
    flex: 1 0 50%;
  }
}
@media (max-width: 375px) {
  .route__calendar {
    flex: 1 0 auto;
  }
}
.route__calendar .button {
  font-weight: 600;
}
@media (max-width: 767px) {
  .route__calendar .button::before {
    content: none;
  }
}
.route__calendar .dropdown .dropdown__container {
  width: auto;
}
.route__calendar .dropdown .dropdown__container .calendar__wrapper {
  width: 320px;
}

.bullet::after {
  content: "";
  display: inline-block;
  border: 3px solid #000;
  border-radius: 0.375rem;
  margin: 0.125rem 0.625rem;
}
@media (max-width: 767px) {
  .bullet::after {
    margin: 0.125rem 0.3125rem;
  }
}

.routes + .text-label {
  margin-bottom: 1.25rem;
}
@media (max-width: 767px) {
  .routes + .text-label {
    margin-bottom: 0.625rem;
  }
}

.calendar-button {
  display: flex;
  align-items: center;
}
.calendar-button::before {
  margin-right: 0.625rem;
}

/*** Price box ***/
.price-box__column--right {
  margin-left: 0.9375rem;
}
@media (max-width: 375px) {
  .price-box__column--right {
    margin-left: 0.313rem;
  }
}
.price-box__title {
  font-size: 0.875rem;
  font-weight: bold;
  display: block;
  text-align: right;
  text-transform: uppercase;
  line-height: normal;
}
@media (max-width: 767px) {
  .price-box__title {
    font-size: 0.75rem;
  }
}
.price-box__price {
  font-size: 1rem;
  font-weight: bold;
  display: block;
  margin-top: 0.1rem;
  text-align: right;
  line-height: 1.5;
}
@media (max-width: 767px) {
  .price-box__price {
    font-size: 0.875rem;
  }
}

.quantity {
  display: flex;
  justify-content: center;
  align-items: center;
}
.quantity__input-button {
  border: 0;
  width: 35px;
  height: 34px;
  font-size: 0;
  cursor: pointer;
  outline: none;
  border-radius: 4px;
  border: solid 1px #000;
  transition: all 0.3s ease-in-out;
}
.quantity__input-button--up {
  background: url(../img/icons/plus.svg) no-repeat center center/12px 12px;
}
.quantity__input-button--down {
  background: url(../img/icons/minus.svg) no-repeat center center/12px 12px;
}
.quantity__input-button:hover {
  border-color: #c22b74;
}
.quantity__input-button.disabled {
  opacity: 0.3;
}
.quantity__input {
  width: 12px;
  height: 34px;
  border: 0;
  background: transparent;
  text-align: center;
  font-size: 1.125rem;
  font-weight: 500;
  letter-spacing: 0.6px;
  margin: 0 0.625rem;
  pointer-events: none;
}
@media (max-width: 375px) {
  .quantity__input {
    margin: 0 0.313rem;
  }
}
.quantity__input::-webkit-inner-spin-button {
  display: none;
}
.quantity.active .quantity__input {
  color: #c22b74;
}
.quantity.active .quantity__input-button--up {
  border-color: transparent;
  background: #c22b74 url(../img/icons/svg/plus-active.svg) no-repeat center center/12px 12px;
}
.quantity.active .quantity__input-button--down {
  border-color: #c22b74;
  background: url(../img/icons/svg/minus-active.svg) no-repeat center center/12px 12px;
}

/*** Tabs ***/
.tabs.entry-form-tabs {
  position: relative;
  margin-top: -89px;
}
.tabs.entry-form-tabs .tabs__content {
  position: relative;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  max-width: 1200px;
  z-index: 2;
}
.tabs.entry-form-tabs .tabs__content .tablist {
  display: flex;
  align-items: flex-end;
  height: 40px;
}
@media (max-width: 1023px) {
  .tabs.entry-form-tabs {
    margin-top: -40px;
  }
}

.tablist {
  display: flex;
  align-items: flex-end;
  margin: 0;
  padding: 0;
  height: 40px;
  list-style: none;
}
.tablist__tab {
  padding: 8px 20px;
  height: 30px;
  color: #9a9a9a;
  background-color: #fff;
  outline: none;
  font-size: 0.875em;
  font-weight: bold;
  line-height: 1;
  text-align: center;
  text-transform: uppercase;
  transition: all 0.2s linear;
  opacity: 0.75;
  cursor: pointer;
}
.tablist__tab.active {
  padding: 13px 20px;
  height: 40px;
  color: #0095d7;
  opacity: 1;
}
.tablist__tab + .tablist__tab {
  margin-left: 3px;
}

.entry-form-tabs .tablist__tab {
  color: rgba(255, 255, 255, 0.6);
  background: #a0215e;
  opacity: 1;
}
.entry-form-tabs .tablist__tab.current {
  background: #c22b74;
  color: #fff;
}

.tabs--default .tablist__tab {
  font-size: 1rem;
  letter-spacing: 0.3px;
  color: #0071aa;
  text-transform: uppercase;
  opacity: 0.5;
  border-bottom: 4px solid rgba(255, 255, 255, 0);
}
@media (max-width: 1023px) {
  .tabs--default .tablist__tab {
    font-size: 0.875rem;
  }
}
.tabs--default .tablist__tab:focus, .tabs--default .tablist__tab:hover, .tabs--default .tablist__tab.current {
  outline: none;
  border-bottom: 4px solid #0071aa;
  transition: all 0.5s ease;
  opacity: 1;
}
.tabs--default .tablist__tab + .tablist__tab {
  margin-left: 2.5rem;
}
@media (max-width: 1023px) {
  .tabs--default .tablist__tab + .tablist__tab {
    margin-left: 1.875rem;
  }
}
.tabs--default .panel {
  padding-top: 2.5rem;
}
@media (max-width: 1023px) {
  .tabs--default .panel {
    padding-top: 0.625rem;
  }
}

.tablist {
  padding: 0;
  margin: 0;
  list-style: none;
}
.tablist .tablist__tab {
  font-weight: 600;
  text-transform: uppercase;
  display: inline-block;
}
.tablist .tablist__tab[role=tab] {
  cursor: pointer;
}

@media (max-width: 1023px) {
  .hero > .container-md {
    padding: 0;
  }
}
@media (max-width: 767px) {
  .hero > .container-sm {
    padding: 0;
  }
}

.accordion [data-accordion-toggle] {
  cursor: pointer;
}
.accordion .accordion__content {
  display: none;
  margin-top: 0.625rem;
}
.accordion.accordion--primary {
  margin-top: 0;
  border-top: 1px solid #dddede;
}
.accordion.accordion--primary:last-of-type {
  border-bottom: 1px solid #dddede;
}
.accordion.accordion--primary > .accordion__header {
  position: relative;
  padding: 0.9375rem 0;
  padding-right: 3.75rem;
}
.accordion.accordion--primary > .accordion__header h2 + p {
  margin-top: 0.3125rem;
}
.accordion.accordion--primary > .accordion__header::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%) rotate(90deg);
  width: 40px;
  height: 40px;
  background: url(../img/icons/arrows/arrow-collapse.svg) no-repeat 0 0;
  background-size: 40px 40px;
}
.accordion.accordion--primary > a[href].accordion__header {
  display: block;
  outline: 0;
  text-decoration: none;
}
.accordion.accordion--primary > a[href].accordion__header::after {
  transform: translateY(-50%);
  background: url(../img/icons/arrows/arrow-go-to-new-page.svg) no-repeat 0 0;
}
.accordion.accordion--primary > .accordion__content {
  margin: 1.875rem 0 0.9375rem;
}
@media (max-width: 767px) {
  .accordion.accordion--primary > .accordion__content {
    margin: 1.25rem 0 0.9375rem;
  }
}
.accordion.accordion--primary[aria-expanded=true] > .accordion__header::after {
  transform: translateY(-50%) rotate(180deg);
}
.accordion.accordion--secondary > .accordion__header {
  min-height: 60px;
  padding: 0.625rem 1.25rem;
  border: solid 1px #d9d9d9;
  border-radius: 4px;
  background-image: linear-gradient(to bottom, #ffffff 3%, #f3f4f8);
}
@media (max-width: 767px) {
  .accordion.accordion--secondary > .accordion__header {
    height: auto;
  }
}
.accordion.accordion--secondary > .accordion__header .button--toggle:not(.link) {
  float: right;
  width: 90px;
  height: 30px;
  margin: 0.3125rem 0;
  border-radius: 20px;
  background-color: #0095d7;
}
.accordion.accordion--secondary > .accordion__header .button--toggle:not(.link)::before {
  color: #fff;
}
.accordion.accordion--secondary > .accordion__header .button--toggle::before {
  content: attr(data-text-open);
}
.accordion.accordion--secondary > .accordion__content {
  margin-top: 0;
  padding: 1.25rem 0;
  border: 1px solid #fff;
  border-top: 0;
}
.accordion.accordion--secondary[aria-expanded=true] > .accordion__header {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  border-top-color: #0095d7;
  border-left-color: #0095d7;
  border-right-color: #0095d7;
}
.accordion.accordion--secondary[aria-expanded=true] > .accordion__header .button--toggle::before {
  content: attr(data-text-close);
}
.accordion.accordion--secondary[aria-expanded=true] > .accordion__content {
  border: 1px solid #0095d7;
  border-top: 0;
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;
}
.accordion.accordion--secondary + .accordion--secondary {
  margin-top: 0.625rem;
}
.accordion .list {
  height: 100%;
}
.accordion .list__item {
  flex: 0 0 25%;
  align-self: center;
}
.accordion .list__item--wide {
  flex: 0 0 50%;
}
.accordion .list__item:last-of-type {
  flex: 1 0 90px;
}

.booking-details [aria-expanded=false] .button--toggle.link::before {
  content: attr(data-text-open);
}
.booking-details [aria-expanded=true] .button--toggle.link::before {
  content: attr(data-text-close);
}
.booking-details__route--title, .booking-details__route--destination {
  font-family: Helvetica;
  font-size: 14px;
  font-weight: bold;
  text-transform: uppercase;
  color: #404040;
}
.booking-details__route-list {
  padding-bottom: 0.125rem;
  border-bottom: 1px dotted #ccc;
}
.booking-details__route .accordion__content {
  margin-top: 0.9375rem;
}
.booking-details__route + .booking-details__route {
  margin-top: 0.9375rem;
}

/*** Toggle ***/
[data-hidden=true] {
  display: none;
}

[data-expandable] {
  transition: height 0.5s ease-in;
}

[data-expandable=false] {
  opacity: 0;
  visibility: collapse;
  height: 0;
}

[data-expandable=true] {
  opacity: 1;
  visibility: visible;
  height: 100%;
}

[data-is-expandable=true] {
  border: solid 1px #0095d7;
}

.button__toggle {
  position: relative;
  padding-right: calc(0.313rem + 13px);
}
.button__toggle::after {
  content: "";
  display: block;
  background: url(../../images/icons/svg/small.svg) no-repeat 0 0;
  width: 13px;
  height: 13px;
  transform: translateY(-50%);
  position: absolute;
  top: 50%;
  right: 0;
  z-index: 1;
}
.button__toggle--expanded::after {
  background: url(../../images/icons/svg/small-down.svg) no-repeat 0 0;
}
.button__toggle-link::after {
  content: "";
  display: block;
  background: url(../../images/icons/svg/small-light-blue.svg) no-repeat 0 0;
  width: 13px;
  height: 13px;
  transform: translateY(-50%);
  position: absolute;
  top: 50%;
  right: 0;
  z-index: 1;
}
.button__toggle-link--expanded::after {
  background: url(../../images/icons/svg/small-down-light-blue.svg) no-repeat 0 0;
}

.lightbox {
  position: relative;
  top: 0;
  margin: 0 auto;
  padding: 3.125rem 0 0;
  width: 100%;
  max-width: 720px;
  background-color: #fff;
  border-radius: 8px;
  box-shadow: 0 11px 17px 0 rgba(0, 0, 0, 0.5);
}
.lightbox--wide {
  max-width: 960px;
}
@media (max-width: 1023px) {
  .lightbox {
    display: block;
    top: 0;
    left: 0;
    transform: none;
    max-width: none;
    height: auto;
    min-height: 100%;
    max-height: none;
    border-radius: 0;
    box-shadow: none;
  }
}
.lightbox-overlay {
  position: fixed;
  top: 0;
  left: 0;
  padding: 60px 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 9999;
  overflow: auto;
}
.lightbox-overlay[aria-hidden=true] {
  display: none;
}
@media (max-width: 1023px) {
  .lightbox-overlay {
    padding: 0;
    background: #f3f4f8;
  }
}
.lightbox__close {
  position: absolute;
  top: 9px;
  right: 9px;
  padding: 8px;
}
.lightbox__close::after {
  content: "";
  display: block;
  background: url(../img/icons/close.svg) no-repeat 0 0;
  height: 18px;
  width: 18px;
  margin: 0 -2px -2px 0;
}
.lightbox label {
  margin-bottom: 0;
}
.lightbox--extras {
  padding: 0 0 3.75rem;
}
.lightbox--extras .lightbox__content {
  background-color: #f3f4f8;
}
.lightbox__header {
  padding: 1rem 1.25rem;
  min-height: 50px;
  border-top: 1px solid #dddede;
  background-color: #fff;
}
.lightbox__header h2 {
  text-transform: capitalize;
}
.lightbox__content {
  border-top: 1px solid #dddede;
  padding: 1.25rem;
  width: 100%;
}
.lightbox__content .radio-list li:last-of-type .form-box__content {
  margin-bottom: 0;
}
.lightbox__content .checkmark-list {
  padding: 0.9375rem 0;
  border-top: 1px solid #dddede;
}
.lightbox__content .checkmark-list:empty {
  display: none;
}
@media (max-width: 767px) {
  .lightbox__content .form-box__content {
    margin-left: 0;
    margin-right: 0;
  }
  .lightbox__content .form-box__content .form__group {
    margin-top: 0;
    width: 100%;
  }
}
.lightbox__header + .lightbox__content {
  margin-top: 1.875rem;
}
.lightbox__header + .lightbox__content h3,
.lightbox__header + .lightbox__content .h3 {
  text-transform: none;
}
.lightbox .dropdown .dropdown__container {
  background-color: initial;
  box-shadow: initial;
}
.lightbox .dropdown .dropdown__listbox {
  margin-bottom: 60px;
  box-shadow: 0 11px 13px 0 rgba(0, 0, 0, 0.3);
}

.hero .lightbox {
  padding: 50px 0 0;
  font-size: 14px;
}
@media (max-width: 1023px) {
  .hero .lightbox {
    height: 100%;
  }
}
.hero .lightbox h2, .hero .lightbox .h2 {
  margin: 0;
  font-size: 16px;
}
.hero .lightbox h2 + p, .hero .lightbox h2 + .p, .hero .lightbox .h2 + p, .hero .lightbox .h2 + .p {
  margin-top: 10px;
}
.hero .lightbox h3, .hero .lightbox .h3, .hero .lightbox p, .hero .lightbox .p,
.hero .lightbox .dropdown .dropdown__button,
.hero .lightbox .dropdown .dropdown__listbox li,
.hero .lightbox .form-standard label:not(.checkbox):not(.radio),
.hero .lightbox .checkbox__label {
  font-size: 14px;
}
.hero .lightbox h3, .hero .lightbox .h3, .hero .lightbox p, .hero .lightbox .p {
  margin: 0;
}
.hero .lightbox .lightbox__content fieldset {
  padding: 0;
  margin: 0;
}
.hero .lightbox .form-standard .form__control {
  font-family: HelveticaNeue, sans-serif;
  font-size: 14px;
}
.hero .lightbox .listbox-header {
  margin-bottom: 10px;
}
.hero .lightbox .flex__row {
  margin-left: -10px;
  margin-right: -10px;
}
.hero .lightbox .flex__row > .flex__column {
  padding-left: 10px;
  padding-right: 10px;
}
.hero .lightbox .form-standard label:not(.checkbox):not(.radio) {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}
.hero .lightbox .lightbox__close {
  padding: 8px;
}
.hero .lightbox .lightbox--extras {
  padding: 0 0 60px;
}
.hero .lightbox .lightbox__header {
  padding: 16px 20px;
}
.hero .lightbox .lightbox__content {
  padding: 20px;
}
.hero .lightbox .lightbox__content fieldset {
  border: none;
}
.hero .lightbox .vehicle-column + .vehicle-column {
  border-left: 1px solid #dddede;
}
@media (max-width: 767px) {
  .hero .lightbox .vehicle-column + .vehicle-column {
    border: none;
    margin-top: 30px;
  }
}
.hero .lightbox .vehicle-box + .vehicle-box {
  margin-top: 20px;
}
.hero .lightbox .dropdown {
  font-size: 16px;
}
.hero .lightbox .dropdown__button[aria-haspopup]:empty {
  font-size: 13px;
}
.hero .lightbox .dropdown__listbox li[role=option] {
  user-select: none;
}
.hero .lightbox input[type=number] {
  -moz-appearance: textfield;
}
.hero .lightbox input[type=number]::-webkit-outer-spin-button, .hero .lightbox input[type=number]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.hero .lightbox a[href].button,
.hero .lightbox .button {
  padding: 15px 0;
  font-family: HelveticaNeue, sans-serif;
  font-size: 16px;
  font-weight: bold;
  text-decoration: none;
}
.hero .lightbox .quantity {
  display: flex;
  justify-content: center;
  align-items: center;
}
.hero .lightbox .quantity__input-button {
  border: 0;
  width: 35px;
  height: 34px;
  font-size: 0 !important;
  cursor: pointer;
  outline: none;
  border-radius: 4px;
  border: solid 1px #000;
  transition: all 0.3s ease-in-out;
}
.hero .lightbox .quantity__input-button--up {
  background: url(../img/icons/plus.svg) no-repeat center center/12px 12px;
}
.hero .lightbox .quantity__input-button--down {
  background: url(../img/icons/minus.svg) no-repeat center center/12px 12px;
}
.hero .lightbox .quantity__input-button:hover {
  border-color: #c22b74;
}
.hero .lightbox .quantity__input-button.disabled {
  opacity: 0.3;
}
.hero .lightbox .quantity__input {
  width: 12px;
  height: 34px;
  border: 0;
  padding: 0;
  background: transparent;
  text-align: center;
  font-size: 18px;
  font-weight: 500;
  letter-spacing: 0.6px;
  margin: 0 10px;
  pointer-events: none;
}
@media (max-width: 375px) {
  .hero .lightbox .quantity__input {
    margin: 0 5px;
  }
}
.hero .lightbox .quantity.active .quantity__input {
  color: #c22b74;
}
.hero .lightbox .quantity.active .quantity__input-button--up {
  border-color: transparent;
  background: #c22b74 url(../img/icons/svg/plus-active.svg) no-repeat center center/12px 12px;
}
.hero .lightbox .quantity.active .quantity__input-button--down {
  border-color: #c22b74;
  background: url(../img/icons/svg/minus-active.svg) no-repeat center center/12px 12px;
}

.accommodation-lightbox {
  background-color: #f3f4f8;
}
.accommodation-lightbox__header {
  color: #404040;
  font-family: Helvetica;
  font-size: 1.25rem;
  font-weight: normal;
  font-style: normal;
  line-height: 1.3;
  text-transform: none;
  letter-spacing: 0.45px;
}
.accommodation-lightbox__description {
  font-family: Helvetica;
  line-height: 1.3;
  color: #717070;
}
.accommodation-lightbox .magnus-lounge {
  position: relative;
}
.accommodation-lightbox .magnus-lounge::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  width: 172px;
  height: 39px;
  background: url(../img/magnus-lounge-included.png) no-repeat 0 0;
  background-size: 172px 39px;
}

.smart-card-lightbox .lightbox__content {
  padding: 0 !important;
}
.smart-card-lightbox .smart-card-lightbox__content {
  padding: 20px 40px;
}
.smart-card-lightbox .smart-card-lightbox__image {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #f3f4f8;
}
.smart-card-lightbox .smart-card-lightbox__text h2 {
  text-align: center;
  font-size: 24px;
}

.dropdown {
  position: relative;
}
.dropdown * {
  outline: none;
}
.dropdown .dropdown__label {
  margin-bottom: 0.125rem;
}
.dropdown .dropdown__button {
  display: block;
  position: relative;
  padding: 0 1.813rem 0 0.9375rem;
  width: 100%;
  height: 40px;
  border: 1px solid #00436f;
  border-radius: 4px;
  background-color: #fff;
  text-align: left;
  line-height: 38px;
  font-size: 1rem;
  line-height: 1;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
  cursor: pointer;
}
.dropdown .dropdown__button[aria-haspopup]:empty {
  color: #717070;
  font-size: 1rem;
  font-style: italic;
  line-height: 1;
}
.dropdown .dropdown__button[aria-haspopup]:empty::before {
  content: attr(placeholder);
  margin: 0;
  width: auto;
  height: auto;
  background: none;
}
.dropdown .dropdown__button[aria-haspopup]::before {
  content: "";
  display: inline-block;
  margin-right: 0.625rem;
  width: 13px;
  height: 10px;
  background: url(../img/icons/check-pink.svg) no-repeat;
}
.dropdown .dropdown__button[aria-haspopup]::after {
  content: "";
  display: block;
  position: absolute;
  right: 0.625rem;
  top: 50%;
  transform: translateY(-50%);
  width: 9px;
  height: 14px;
  background: url(../img/icons/dropdown-arrows.svg) no-repeat;
}
.dropdown .dropdown__button[aria-haspopup]:focus, .dropdown .dropdown__button[aria-haspopup][aria-expanded=true] {
  border-color: #c22b74;
}
.dropdown .dropdown__button[aria-required=true][aria-invalid=true] {
  border-color: #e34850 !important;
  background-color: #fff7f7 !important;
}
.dropdown .dropdown__button[aria-required=true][aria-invalid=true] ~ .invalid-text {
  display: block;
}
.dropdown .dropdown__container {
  display: none;
  position: absolute;
  margin: 0.19rem 0 0 !important;
  width: calc(100% + 20px);
  min-width: 100%;
  background-color: #fff;
  box-shadow: 0 11px 13px 0 rgba(0, 0, 0, 0.3);
  z-index: 10;
}
@media (max-width: 767px) {
  .dropdown .dropdown__container {
    width: 100%;
  }
}
.dropdown .dropdown__container > label {
  margin: 0;
  padding: 0.625rem 0.625rem 0.188rem;
  border-bottom: 1px solid #e6e7e8;
  text-align: center;
}
.dropdown .dropdown__container.update-container {
  width: 100%;
  min-width: 320px;
}
.dropdown .dropdown__listbox + .dropdown__listbox,
.dropdown .dropdown__listbox + .dropdown__dialog,
.dropdown .dropdown__dialog + .dropdown__listbox,
.dropdown .dropdown__dialog + .dropdown__dialog {
  border-top: 1px solid #e6e7e8;
}
.dropdown .dropdown__listbox {
  display: block;
  padding: 0;
  margin: 0;
  list-style: none;
  max-height: 305px;
  overflow: hidden;
  overflow-y: auto;
}
.dropdown .dropdown__listbox[aria-hidden=true] {
  display: none;
}
.dropdown .dropdown__listbox li {
  display: flex;
  align-items: center;
  position: relative;
  padding: 0 0.625rem;
  min-height: 55px;
  background-color: #fff;
  cursor: pointer;
}
.dropdown .dropdown__listbox li:focus, .dropdown .dropdown__listbox li:hover {
  background-color: #f3f4f8;
}
.dropdown .dropdown__listbox li[aria-selected=true]::before {
  content: "";
  display: inline-block;
  margin-right: 0.625rem;
  width: 13px;
  height: 10px;
  background: url(../img/icons/check-pink.svg) no-repeat center;
}
.dropdown .dropdown__listbox li + li {
  border-top: 1px solid #e6e7e8;
}
.dropdown .dropdown__listbox.quantity-select li:not(.hidden) {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  justify-content: center;
  align-content: flex-start;
  height: 60px;
  cursor: initial;
}
.dropdown .dropdown__listbox.quantity-select li:not(.hidden)[aria-selected=true]::before {
  flex: 100%;
}
.dropdown .dropdown__listbox.quantity-select li:not(.hidden) .name {
  color: #404040;
  font-weight: bold;
  line-height: 1.3;
}
.dropdown .dropdown__listbox.quantity-select li:not(.hidden) .description {
  color: #717070;
  font-style: italic;
  line-height: 1.3;
  max-width: 195px;
}
.dropdown .dropdown__listbox.quantity-select li:not(.hidden) .quantity-select__input-group {
  display: flex;
  position: absolute;
  top: 50%;
  right: 0.625rem;
  transform: translateY(-50%);
}
.dropdown .dropdown__listbox.quantity-select li:not(.hidden) .quantity-select__input-group [type=button] {
  width: 34px;
  height: 34px;
  border: 1px solid #000;
  border-radius: 4px;
  background: url(../img/icons/plus.svg) no-repeat center;
  transition: all 0.3s ease-in-out;
}
.dropdown .dropdown__listbox.quantity-select li:not(.hidden) .quantity-select__input-group [type=button]:first-of-type {
  background: url(../img/icons/minus.svg) no-repeat center;
}
.dropdown .dropdown__listbox.quantity-select li:not(.hidden) .quantity-select__input-group [type=button]:hover {
  border: 1px solid #c22b74;
}
.dropdown .dropdown__listbox.quantity-select li:not(.hidden) .quantity-select__input-group [type=button].disabled {
  opacity: 0.3;
}
.dropdown .dropdown__listbox.quantity-select li:not(.hidden) .quantity-select__input-group [type=number] {
  width: 34px;
  height: 34px;
  border: 0;
  padding: 0;
  background: transparent;
  font-size: 1.125rem;
  text-align: center;
  pointer-events: none;
}
.dropdown .dropdown__listbox.quantity-select li:not(.hidden) .quantity-select__input-group [type=number]::-webkit-inner-spin-button, .dropdown .dropdown__listbox.quantity-select li:not(.hidden) .quantity-select__input-group [type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.dropdown .dropdown__dialog {
  padding: 0.9375rem 0.625rem;
}
.dropdown .disabled {
  opacity: 0.5;
}

.valid-text,
.invalid-text {
  display: none;
  margin: 0.3125rem 0 0;
  color: #e34850;
}

/*** Alert ***/
.alert {
  display: flex;
  align-items: center;
  position: relative;
  z-index: 1;
}
.alert.hidden {
  display: none;
}
@media (max-width: 767px) {
  .alert {
    align-items: flex-start;
  }
}
.alert:not(.alert--full-width) {
  background-color: #fff;
  box-shadow: 0 2px 7px 0 rgba(0, 0, 0, 0.1);
  border-left-width: 5px;
  border-left-style: solid;
  max-width: 880px;
  width: 100%;
}
.alert .icon {
  width: 32px;
  height: 32px;
  margin-right: 1.25rem;
  display: block;
}
.alert__section {
  flex: 1;
}
@media (max-width: 767px) {
  .alert__section {
    padding-right: 2rem;
  }
}
.alert__section .alert__title {
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.2px;
  color: #000;
}
.alert__section .alert__text {
  margin-top: 0;
}
.alert .alert__close-button {
  background: url(../img/icons/alerts/close.svg) no-repeat center center;
  width: 16px;
  height: 16px;
  display: block;
  padding: 1.25rem;
  position: absolute;
  top: 10px;
  right: 10px;
}
.alert--warning {
  border-left-color: #dbbb47;
}
.alert--warning .icon.icon--warning {
  background: url(../img/icons/alerts/warning.svg) no-repeat 0 center;
}
.alert--error {
  border-left-color: #e34850;
}
.alert--error .icon.icon--error {
  background: url(../img/icons/alerts/error.svg) no-repeat 0 center;
}
.alert--success {
  border-left-color: #21c27e;
  position: fixed;
  right: 10px;
  bottom: 10px;
  max-width: 400px !important;
}
.alert--success .icon.icon--success {
  background: url(../img/icons/alerts/success.svg) no-repeat 0 center;
}
.alert--info {
  border-left-color: #17abc2;
}
.alert--info .icon.icon--info {
  background: url(../img/icons/alerts/time.svg) no-repeat 0 center;
}
.alert--redirect {
  border-left-color: #17abc2;
  flex-wrap: wrap;
}
.alert--redirect .icon.icon--info {
  background: url(../img/icons/alerts/time.svg) no-repeat 0 center;
}
.alert--redirect .lightbox__content {
  width: 100%;
}
.alert.alert--full-width {
  width: 100%;
  background-color: #00436f;
  padding-left: 1.25rem;
}
.alert.alert--full-width .alert__section .alert__title,
.alert.alert--full-width .alert__section .alert__text {
  color: #fff;
}
.alert.alert--full-width .alert__close-button {
  background: url(../img/icons/alerts/close-white.svg) no-repeat center center;
}

.image-slider {
  overflow: hidden;
}
.image-slider * {
  outline: none !important;
}
.image-slider img {
  cursor: pointer;
}
.image-slider.slick-slider {
  position: relative;
}
.image-slider.slick-slider .slick-list {
  position: relative;
  padding-top: 56.25%;
}
.image-slider.slick-slider .slick-list .slick-track {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
.image-slider.slick-slider .slick-list .slick-track .slick-slide {
  height: 100%;
  object-fit: cover;
}
.image-slider.slick-slider .slick-prev,
.image-slider.slick-slider .slick-next {
  display: block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  padding: 8px;
  width: 40px;
  height: 40px;
  font-size: 0;
  z-index: 1;
}
.image-slider.slick-slider .slick-prev {
  left: 0.125rem;
  background: url(../img/icons/arrows/white-left.svg) no-repeat 7px 7px;
  background-size: 24px 24px;
}
.image-slider.slick-slider .slick-next {
  right: 0.125rem;
  background: url(../img/icons/arrows/white-right.svg) no-repeat 9px 8px;
  background-size: 23px 23px;
}
.image-slider.slick-slider .slick-dots {
  display: flex !important;
  justify-content: center;
  align-items: center;
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 40px;
  background-color: rgba(0, 0, 0, 0.4);
}
.image-slider.slick-slider .slick-dots li {
  position: relative;
  margin-left: 16px;
  width: 13px;
  height: 13px;
}
.image-slider.slick-slider .slick-dots li button {
  position: absolute;
  top: 0;
  width: 13px;
  height: 13px;
  background-color: #d8d8d8;
  border-radius: 100%;
  font-size: 0;
  cursor: pointer;
}
.image-slider.slick-slider .slick-dots li.slick-active button {
  background-color: #c22b74;
}
.image-slider.slick-slider .slick-dots li + li {
  margin-left: 16px;
}

.address-lookup .button-container {
  margin-top: 0.4375rem;
}
@media (max-width: 767px) {
  .address-lookup .button-container {
    margin-top: 1.25rem;
  }
}
.address-lookup .address-result-list {
  display: block;
  margin-top: 1.25rem;
  max-height: 202px;
  border: 1px solid #444;
  border-radius: 4px;
  background-color: #fff;
  overflow: auto;
}
.address-lookup .address-result-list[aria-hidden=true] {
  display: none;
}
.address-lookup .address-result-list li {
  display: flex;
  padding: 0 0.625rem;
  height: 40px;
  width: 100%;
}
.address-lookup .address-result-list li:hover {
  background-color: #f3f4f8;
  cursor: pointer;
}
.address-lookup .address-result-list li button {
  width: 100%;
  text-align: left;
}
.address-lookup .address-result-list li button .lookup_city::after {
  content: ",";
  display: inline-block;
}
.address-lookup .address-result-list li button .lookup_city + .lookup_postcode {
  margin-left: 2px;
}
.address-lookup .address-result-list li + li {
  border-top: 1px solid #e6e7e8;
}
.address-lookup .address-result-list + .address-result-missing {
  display: flex;
  align-items: center;
  margin-top: 1.25rem;
  padding: 0 0.625rem;
  height: 40px;
  width: 100%;
  border: 1px solid #444;
  border-radius: 4px;
  background-color: #fff;
}

.radio-button {
  position: relative;
}
.radio-button input[type=radio] {
  position: absolute;
  left: -9999px;
  visibility: hidden;
  opacity: 0;
}
.radio-button input[type=radio]:checked + label::after {
  content: "";
  display: block;
  position: absolute;
  left: 3px;
  top: 50%;
  height: 10px;
  width: 10px;
  background-color: #000;
  border-radius: 100%;
  transform: translateY(-50%);
  box-sizing: border-box;
}
.radio-button label {
  display: inline-block;
  cursor: pointer;
  position: relative;
  padding-left: 24px;
  font-size: 0.875rem;
  line-height: 1rem;
  margin: 0;
}
.radio-button label::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  height: 16px;
  width: 16px;
  border: 1px solid #000;
  border-radius: 100%;
  box-sizing: border-box;
}
.radio-button + .radio-button {
  margin-top: 5px;
}
.radio-button__container {
  margin-top: 10px;
}

.select {
  display: none;
}

/*** Datepicker ***/
strong + .datepicker {
  margin-top: 0.625rem;
}

.datepicker {
  width: 100%;
  padding: 0;
  background-color: #fff;
}
.datepicker-title {
  font-size: 0.875rem;
  letter-spacing: 0.25px;
}

/* Datepicker */
/* Reset datepicker table */
.ui-datepicker table {
  border-collapse: collapse;
  border-spacing: 0;
  table-layout: fixed;
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
}

.ui-datepicker-header {
  padding: 0.625rem;
  border-bottom: solid 1px #f3f4f8;
  text-align: center;
  position: relative;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.5;
  text-align: center;
}

.ui-datepicker-prev {
  position: absolute;
  left: 10px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
  color: #777;
  text-indent: -9999em;
  background: url(../img/icons/arrows/change-day-arrow-left.svg) no-repeat 0 0;
  width: 14px;
  height: 23px;
  display: block;
  cursor: pointer;
}

.ui-datepicker-title {
  display: inline-block;
}

.ui-datepicker-prev.ui-state-disabled {
  opacity: 0.3;
}

.ui-datepicker-next {
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
  text-indent: -9999em;
  background: url(../img/icons/arrows/change-day-arrow-right.svg) no-repeat 0 0;
  width: 14px;
  height: 23px;
  display: block;
  cursor: pointer;
}

.ui-datepicker-calendar {
  width: 100%;
  border: none;
}

.ui-datepicker-calendar tr,
.ui-datepicker-calendar th,
.ui-datepicker-calendar td {
  text-align: center;
  font-size: 1rem;
  line-height: 1.5;
}
.ui-datepicker-calendar tr a,
.ui-datepicker-calendar th a,
.ui-datepicker-calendar td a {
  font-size: inherit;
}
.ui-datepicker-calendar tr a:hover,
.ui-datepicker-calendar th a:hover,
.ui-datepicker-calendar td a:hover {
  text-decoration: none;
}

.ui-datepicker th {
  padding: 0 0 0.625rem;
  font-weight: 500;
}

.ui-datepicker-calendar td {
  font-weight: 700;
}
.ui-datepicker-calendar td.disabled {
  font-weight: 600;
}

.ui-datepicker-calendar th span {
  color: #404040;
  letter-spacing: 0.3px;
  display: block;
  padding-top: 0.813rem;
}

.ui-datepicker-calendar td a {
  display: inline-block;
  height: 40px;
  line-height: 40px !important;
  width: 40px;
  color: #404040;
}

.ui-datepicker-calendar td .ui-state-active {
  background: #0095d7;
  color: #fff !important;
  border-radius: 50%;
}
.ui-datepicker-calendar td .ui-state-active.ui-state-hover {
  color: #fff !important;
  text-decoration: none;
}

.ui-datepicker-calendar td.ui-state-disabled span {
  color: rgba(34, 39, 47, 0.29);
  line-height: 30px;
}

.entry-form {
  padding: 20px;
  color: #fff;
  background-color: #c22b74;
  box-shadow: 0 10px 20px 0 rgba(51, 51, 51, 0.1);
}
.entry-form__wrapper {
  position: relative;
  top: 0;
  left: 50%;
  width: 100%;
  max-width: 1200px;
  font-size: 16px;
  transform: translateX(-50%);
  z-index: 1;
}
.entry-form__wrapper .tab-list {
  display: flex;
  align-items: flex-end;
  margin: 0;
  padding: 0;
  height: 40px;
  list-style: none;
}
.entry-form__wrapper .tab-list__tab {
  padding: 8px 12px;
  min-width: 120px;
  height: 30px;
  color: #999;
  background: #a0215e;
  outline: none;
  font-size: 0.875em;
  font-weight: bold;
  line-height: 1;
  text-align: center;
  text-transform: uppercase;
  transition: all 0.2s linear;
  opacity: 0.75;
  cursor: pointer;
}
.entry-form__wrapper .tab-list__tab.active {
  padding: 13px 12px;
  height: 40px;
  color: #fff;
  background-color: #c22b74;
  opacity: 1;
}
.entry-form__wrapper .tab-list__tab + .tab-list__tab {
  margin-left: 3px;
}
.entry-form__container.multi-leg .entry-form__group {
  max-width: 15%;
}
.entry-form__container.multi-leg .entry-form__group + .entry-form__group:last-of-type {
  padding-left: 2px;
}
.entry-form__container.multi-leg .entry-form__fieldset + .entry-form__fieldset {
  margin-top: 30px;
}
.entry-form__container.multi-leg .entry-form__fieldset + .entry-form__fieldset .entry-form__group {
  max-width: 30%;
}
.entry-form__container.multi-leg .entry-form__fieldset + .entry-form__fieldset .entry-form__group + .entry-form__group {
  position: relative;
  max-width: calc(30% - 30px);
  margin-left: 30px;
  padding: 0 30px;
  border-left: 1px solid rgba(255, 255, 255, 0.5);
}
.entry-form__container.multi-leg .entry-form__button-group {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  width: 100%;
}
.entry-form__container.multi-leg .button[type=submit] {
  width: 100%;
  max-width: 229px;
  height: 100%;
  min-height: 50px;
  border-radius: 4px;
  text-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
}
.entry-form__container.multi-leg .button[type=submit]:hover {
  background-color: #1ba3e0;
  border-color: #1ba3e0;
}
.entry-form__container.multi-leg .button[type=submit]:focus {
  border: 1px solid #c22b74;
}
.entry-form__container.multi-leg .button[type=submit]:not(.booking-loader) {
  font-size: 1em;
}
.entry-form__container.multi-leg .button--add {
  padding-left: 24px;
  color: #fff;
  font-size: 0.75em;
  font-weight: bold;
  line-height: 1;
  text-transform: uppercase;
}
.entry-form__container.multi-leg .button--add::before {
  top: -1px;
  width: 14px;
  height: 14px;
  background: url(../img/icons/plus-white.svg) no-repeat 0 0;
  background-size: 14px;
}
.entry-form__container.multi-leg .button--remove {
  position: absolute;
  top: 29px;
  right: 0;
  padding: 0;
  width: 14px;
  height: 14px;
  background: url(../img/icons/close-white.svg) no-repeat 0 0;
  font-size: 0;
}
.entry-form__container.multi-leg .button--remove::before {
  content: none;
}
.entry-form__container.smart-card {
  padding: 0 20px 20px;
  color: #fff;
  background-color: #c22b74;
}
.entry-form__container.smart-card .checkbox__control {
  background-color: transparent;
  border: 1px solid #fff;
}
.entry-form__container.smart-card .checkbox__label {
  color: #fff;
  font-size: 1.2rem;
}
.entry-form__container.smart-card .checkbox input:checked + .checkbox__control {
  border: 1px solid #0095d7;
  background-color: #0095d7;
}
.entry-form__container.smart-card .checkbox input:checked ~ .checkbox__label {
  color: #fff;
}
.entry-form__container.smart-card .info-item__button {
  background-color: transparent;
  border: 1px solid #fff;
  border-radius: 50%;
  height: 20px;
  width: 20px;
  right: -26px;
}
.entry-form__fieldset {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}
.entry-form__group {
  flex: 1 0 0;
}
.entry-form__group[data-dirty=false] > label .icon__check--white {
  display: inline-block;
  position: relative;
}
.entry-form__group[data-dirty=false] > label .icon__check--white::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  right: -20px;
  height: 12px;
  width: 14px;
  background: url(../img/icons/check-white.svg) no-repeat 0 center;
}
.entry-form__group > label {
  margin-bottom: 2px;
  color: #fff;
  font-size: 0.75em;
  font-weight: bold;
  text-transform: uppercase;
}
.entry-form__group > .dropdown * {
  font-size: inherit;
}
.entry-form__group > .dropdown .dropdown__button {
  border-color: #fff;
  border-radius: 0;
}
.entry-form__group > .dropdown .dropdown__button[aria-haspopup] {
  padding: 0 29px 0 10px;
  font-size: 0.8125em;
}
.entry-form__group > .dropdown .dropdown__button:focus, .entry-form__group > .dropdown .dropdown__button[aria-expanded=true] {
  border-color: #fff;
}
.entry-form__group > .dropdown .dropdown__container {
  margin: 3px 0 0 !important;
  width: 320px;
}
.entry-form__group > .dropdown .dropdown__container .dropdown__listbox li {
  padding: 0 10px;
  color: #404040;
  font-size: 0.875em;
}
.entry-form__group > .dropdown .dropdown__container .dropdown__dialog {
  padding: 15px 10px;
  font-size: 0.875em;
}
.entry-form__group > .dropdown .dropdown__container .dropdown__dialog.invalid-dialog {
  padding: 0 10px;
}
.entry-form__group > .dropdown .dropdown__container .dropdown__dialog.invalid-dialog .invalid-text {
  margin-top: 10px;
  padding-bottom: 10px;
}
.entry-form__group > .dropdown .dropdown__container .dropdown__dialog .button-container {
  margin-top: 10px;
}
.entry-form__group > .dropdown .dropdown__container .dropdown__dialog .button-container .button {
  padding: 15px 0;
  text-decoration: none;
}
.entry-form__group > .dropdown .dropdown__container .dropdown__dialog .button-container .link {
  margin-top: 5px;
}
.entry-form__group > .dropdown .dropdown__container .checkbox__label {
  margin-left: 10px;
}
.entry-form__group > .dropdown .dropdown__container .checkbox + .checkbox {
  margin-top: 10px;
}
.entry-form__group > .dropdown.outward-route .dropdown__button[aria-haspopup], .entry-form__group > .dropdown.return-route .dropdown__button[aria-haspopup], .entry-form__group > .dropdown.calendar .dropdown__button[aria-haspopup] {
  padding: 0 1.813em 0 2em;
}
.entry-form__group > .dropdown.outward-route .dropdown__button[aria-haspopup]::before, .entry-form__group > .dropdown.return-route .dropdown__button[aria-haspopup]::before, .entry-form__group > .dropdown.calendar .dropdown__button[aria-haspopup]::before {
  position: absolute;
  top: 50%;
  left: 5px;
  padding-left: 26px;
  width: 20px;
  height: 18px;
  background-size: 20px 18px;
  transform: translateY(-50%);
  line-height: 20px;
}
.entry-form__group > .dropdown.outward-route .dropdown__button[aria-haspopup]::before {
  background: url(../img/icons/arrows/outward-arrow.svg) no-repeat 0 center;
}
.entry-form__group > .dropdown.return-route .dropdown__button[aria-haspopup]::before {
  background: url(../img/icons/arrows/return-arrow.svg) no-repeat 0 center;
}
.entry-form__group > .dropdown.calendar .dropdown__button[aria-haspopup]::before {
  background: url(../img/icons/calendar.svg) no-repeat 0 center;
}
.entry-form__group > .dropdown.calendar .dropdown__container {
  width: auto;
}
.entry-form__group > .dropdown.calendar .dropdown__container .calendar__wrapper {
  display: flex;
}
.entry-form__group > .dropdown.calendar .dropdown__dialog {
  padding: 10px;
  width: 320px;
}
.entry-form__group > .dropdown.calendar .dropdown__dialog label {
  color: #0095d7;
  font-weight: bold;
  text-transform: initial;
  letter-spacing: normal;
}
.entry-form__group > .dropdown.calendar .dropdown__dialog .datepicker {
  padding: 0;
  background-color: #fff;
}
.entry-form__group > .dropdown.calendar .dropdown__dialog .datepicker a {
  text-decoration: none;
}
.entry-form__group > .dropdown.calendar .dropdown__dialog .datepicker .ui-datepicker-header {
  padding: 15px 10px;
  border-color: #e6e7e8;
}
.entry-form__group > .dropdown.calendar .dropdown__dialog .datepicker .ui-datepicker-calendar {
  margin: 0;
}
.entry-form__group > .dropdown.calendar .dropdown__dialog .datepicker .ui-datepicker-calendar td {
  height: 40px;
}
.entry-form__group > .dropdown.calendar .dropdown__dialog .datepicker .ui-datepicker-month, .entry-form__group > .dropdown.calendar .dropdown__dialog .datepicker .ui-datepicker-year {
  color: #404040;
}
.entry-form__group > .dropdown.calendar .dropdown__dialog + .dropdown__dialog {
  border-left: 1px solid #e6e7e8;
}
.entry-form__group > .dropdown.passengers .passenger-container {
  max-height: 256px;
  overflow: auto;
}
.entry-form__group > .dropdown.passengers .passenger-container > label {
  margin: 0;
  padding: 10px 10px 3px;
  border-bottom: 1px solid #e6e7e8;
  font-size: 0.75em;
  font-weight: bold;
  text-transform: uppercase;
  text-align: center;
}
.entry-form__group > .dropdown.passengers .passenger-container .dropdown__listbox {
  max-height: none;
}
.entry-form__group > .dropdown.passengers .passenger-container .dropdown__listbox.quantity-select [type=number] {
  font-size: 1.125em;
}
.entry-form__group > .dropdown.passengers .passenger-container .dropdown__listbox.quantity-select li:not(.hidden) .quantity-select__input-group {
  right: 10px;
}
.entry-form__group > .dropdown.passengers .passenger-container .different-passengers.hidden {
  display: none !important;
}
.entry-form__group > .dropdown.passengers .passenger-container.smart-card [role=option]:hover {
  cursor: pointer;
}
.entry-form__group > .dropdown.passengers .passenger-container.smart-card [role=option] .radiobutton {
  right: 10px;
  display: flex;
  position: absolute;
  top: 50%;
  right: 0.625rem;
  transform: translateY(-50%);
}
.entry-form__group > .dropdown.passengers .passenger-container.smart-card [role=option] .radiobutton:hover {
  cursor: pointer;
}
.entry-form__group > .dropdown.passengers .passenger-container.smart-card [role=option] .radiobutton input {
  opacity: 0;
  width: 0;
  height: 0;
}
.entry-form__group > .dropdown.passengers .passenger-container.smart-card [role=option] .radiobutton input:checked + .radiobutton__control::after {
  content: "";
  position: absolute;
  width: 16px;
  height: 16px;
  background-color: #c22b74;
  border-radius: 50%;
  top: 4px;
  left: 4px;
}
.entry-form__group > .dropdown.passengers .passenger-container.smart-card [role=option] .radiobutton__control {
  width: 26px;
  height: 26px;
  border: 1px solid #c22b74;
  background-color: #fff;
  border-radius: 50%;
  position: relative;
}
.entry-form__group > .entry-form__button {
  display: block;
  position: relative;
  padding: 0 29px 0 10px;
  width: 100%;
  height: 40px;
  background-color: #fff;
  border: 1px solid #fff;
  border-radius: 0;
  line-height: 38px;
  text-align: left;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
  cursor: pointer;
}
.entry-form__group > .entry-form__button[aria-haspopup] {
  font-size: 0.8125em;
}
.entry-form__group > .entry-form__button[aria-haspopup]:empty {
  color: #717070;
  font-style: italic;
  line-height: 1;
}
.entry-form__group > .entry-form__button[aria-haspopup]:empty::before {
  content: attr(placeholder);
  margin: 0;
  width: auto;
  height: auto;
  background: none;
}
.entry-form__group > .entry-form__button[aria-haspopup]::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 10px;
  width: 9px;
  height: 14px;
  background: url(../img/icons/dropdown-arrows.svg) no-repeat;
  transform: translateY(-50%);
}
.entry-form__group > button[type=submit] {
  width: 100%;
  height: 100%;
  min-height: 50px;
  border-radius: 4px;
  font-size: 1em;
  text-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
}
.entry-form__group > button[type=submit]:hover {
  background-color: #1ba3e0;
  border-color: #1ba3e0;
}
.entry-form__group > button[type=submit]:focus {
  border: 1px solid #c22b74;
}
.entry-form__group + .entry-form__group {
  padding-left: 2px;
}
.entry-form__group + .entry-form__group:last-of-type {
  padding-left: 10px;
}
.entry-form__group.return + .entry-form__group > .dropdown.calendar .dropdown__container {
  right: calc(-100% - 2px);
}

@media (max-width: 1023px) {
  .entry-form__wrapper {
    margin-top: -40px;
  }
  .entry-form__container.multi-leg .entry-form__group {
    max-width: 20%;
  }
  .entry-form__container.multi-leg .entry-form__group + .entry-form__group:last-of-type {
    margin-top: 0;
  }
  .entry-form__container.multi-leg .entry-form__fieldset + .entry-form__fieldset {
    margin-top: 20px;
  }
  .entry-form__container.multi-leg .entry-form__fieldset + .entry-form__fieldset .entry-form__group {
    max-width: 40%;
  }
  .entry-form__container.multi-leg .entry-form__fieldset + .entry-form__fieldset .entry-form__group + .entry-form__group {
    max-width: calc(40% - 30px);
  }
  .entry-form__container.multi-leg .entry-form__button-group {
    margin-top: 10px;
  }
  .entry-form__group {
    flex: 1 0 50%;
  }
  .entry-form__group:nth-of-type(3) {
    flex: 1 0 100%;
  }
  .entry-form__group > .dropdown.calendar .dropdown__dialog {
    width: 100%;
  }
  .entry-form__group > .dropdown.calendar .dropdown__dialog + .dropdown__dialog {
    border-top: 1px solid #e6e7e8;
  }
  .entry-form__group > button[type=submit] {
    margin: 0 auto;
    max-width: 50%;
  }
  .entry-form__group + .entry-form__group:not(:nth-of-type(2)) {
    margin-top: 10px;
  }
  .entry-form__group + .entry-form__group:last-of-type {
    flex: 1 0 100%;
    margin-top: 20px;
    padding-left: 0;
  }
}
@media (max-width: 767px) {
  .entry-form {
    padding: 15px 10px;
  }
  .entry-form__wrapper .tab-list__tab {
    flex: 1 0 0;
    padding: 8px 8px;
    width: 33.3333333333%;
    min-width: initial;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
  }
  .entry-form__wrapper .tab-list__tab + .tab-list__tab {
    width: calc(33.3333333333% - 3px);
  }
  .entry-form__wrapper .tab-list__tab.active {
    padding: 13px 8px;
  }
  .entry-form__container.multi-leg .entry-form__group {
    max-width: 50%;
  }
  .entry-form__container.multi-leg .entry-form__fieldset + .entry-form__fieldset {
    margin-top: 15px;
    padding-top: 15px;
    border-top: 1px solid #e6e7e8;
  }
  .entry-form__container.multi-leg .entry-form__fieldset + .entry-form__fieldset .entry-form__group {
    max-width: 100%;
  }
  .entry-form__container.multi-leg .entry-form__fieldset + .entry-form__fieldset .entry-form__group + .entry-form__group {
    max-width: 100%;
    margin: 10px 0 0;
    padding: 0;
    border-left: none;
  }
  .entry-form__container.multi-leg .entry-form__fieldset + .entry-form__fieldset .entry-form__group + .entry-form__group label {
    display: none;
  }
  .entry-form__container.multi-leg .entry-form__button-group {
    flex-direction: column;
    align-items: center;
    margin-top: 15px;
  }
  .entry-form__container.multi-leg .button[type=submit] {
    flex: 1;
    max-inline-size: 100%;
    margin-top: 30px;
  }
  .entry-form__container.multi-leg .button--remove {
    position: initial;
    top: initial;
    right: initial;
    margin: 10px auto 0;
    padding: 0;
    width: auto;
    height: auto;
    color: #fff;
    background: none;
    font-size: 0.75em;
    text-decoration: underline;
  }
  .entry-form__container.multi-leg .button--remove::before {
    content: none;
  }
  .entry-form__group {
    flex: 1 0 100%;
  }
  .entry-form__group > .dropdown.calendar .dropdown__container .calendar__wrapper {
    display: block;
  }
  .entry-form__group > button[type=submit] {
    max-width: initial;
    border-radius: 0;
  }
  .entry-form__group + .entry-form__group {
    margin-top: 10px;
  }
  .entry-form__group.return + .entry-form__group > .dropdown.calendar .dropdown__container {
    right: initial;
  }
}
.access-header {
  position: absolute;
  width: 100%;
  font-size: 16px;
  font-family: sans-serif;
  z-index: 10;
  pointer-events: none;
}
.access-header a[href] {
  outline: none;
}
.access-header a[href]:not(:hover) {
  text-decoration: none;
}
.access-header .access-bar {
  height: 48px;
}
.access-header .access-bar__nav {
  margin: 0 auto;
  padding-right: 50px;
  width: 100%;
  max-width: 1440px;
  height: inherit;
}
.access-header .access-bar__nav > ul {
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  margin: 0;
  padding: 15px 0;
  width: 100%;
  height: inherit;
  list-style: none;
}
.access-header .access-bar__nav > ul > li {
  padding: 0 10px;
  pointer-events: all;
}
.access-header .access-bar__nav > ul > li > a[href],
.access-header .access-bar__nav > ul > li > a[role=button] {
  display: flex;
  align-items: center;
  height: 18px;
  color: #00537e;
  font-size: 16px;
  letter-spacing: 0;
  line-height: 1;
}
.access-header .access-bar__nav > ul > li + li {
  border-left: 1px solid #00537e;
}
.access-header .access-bar__nav > ul > li.my-account {
  position: relative;
}
.access-header .access-bar__nav > ul > li.my-account > a[role=button] {
  cursor: pointer;
  position: relative;
  padding-left: 24px;
  text-transform: capitalize;
}
.access-header .access-bar__nav > ul > li.my-account > a[role=button]::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  padding-right: 0;
  background: url(../img/icons/user-blue.svg) no-repeat center;
  background-size: 16px 16px;
  width: 16px;
  height: 16px;
  transform: translateY(-50%);
}
@media (max-width: 767px) {
  .access-header .access-bar__nav > ul > li.my-account > a[role=button] {
    padding-left: 10px;
    width: 18px;
    font-size: 0;
  }
}
.access-header .access-bar__nav > ul > li.my-account ul[aria-expanded=false] {
  display: none;
}
.access-header .access-bar__nav > ul > li.my-account ul {
  display: block;
  position: absolute;
  top: calc(100% + 5px);
  right: 5px;
  padding: 0;
  width: calc(100% - 10px);
  min-width: 140px;
  background: #fff;
  box-shadow: 0 8px 13px 0 rgba(0, 0, 0, 0.3);
  z-index: 20;
}
.access-header .access-bar__nav > ul > li.my-account ul li {
  display: flex;
  align-items: center;
  padding: 0 10px;
  width: 100%;
  height: 40px;
}
.access-header .access-bar__nav > ul > li.my-account ul li:first-of-type {
  border-top: 1px solid #ededed;
}
.access-header .access-bar__nav > ul > li.my-account ul li:hover {
  background-color: #f3f4f8;
}
.access-header .access-bar__nav > ul > li.my-account ul li form {
  height: 100%;
  width: 100%;
}
.access-header .access-bar__nav > ul > li.my-account ul li a[href],
.access-header .access-bar__nav > ul > li.my-account ul li button {
  display: flex;
  align-items: center;
  padding: 0;
  width: 100%;
  height: 100%;
  color: #0071aa;
  font-family: "HelveticaNeue", sans-serif;
  font-size: 14px;
  font-weight: bold;
  letter-spacing: 0;
  text-decoration: none;
  text-transform: capitalize;
  cursor: pointer;
}
.access-header .access-bar__nav > ul > li.my-account ul li + li {
  border-top: 1px solid #dddede;
}
@media (max-width: 1024px) {
  .access-header .access-bar__nav {
    padding-right: 0;
  }
}

.site-header.booking {
  background-color: rgba(0, 67, 111, 0.8);
}
.site-header.booking .access-header {
  background-color: #fff;
  z-index: initial;
}
.site-header a[href] {
  outline: none;
}
.site-header a[href]:not(:hover) {
  text-decoration: none;
}
.site-header .site-header__container {
  position: relative;
  padding-top: 48px;
  pointer-events: none;
}
.site-header .site-header__inner-container {
  height: 102px;
}
.site-header .site-header__inner-container .logo {
  position: absolute;
  bottom: 4px;
  left: 0;
  font-size: 0.875em !important;
  pointer-events: all;
}
.site-header .site-header__inner-container .logo img {
  width: 216px;
}
@media (max-width: 1024px) {
  .site-header .site-header__inner-container .logo {
    bottom: 8px;
  }
  .site-header .site-header__inner-container .logo img {
    width: 132px;
  }
}
@media (max-width: 1024px) {
  .site-header .site-header__inner-container {
    height: 60px;
  }
}

header + p {
  margin-top: 0.9375rem;
}

.booking-start .quantity-select li:not(.hidden) {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  justify-content: center;
  align-content: space-between;
  height: 50px;
  cursor: initial;
}
.booking-start .quantity-select li + li:not(.hidden) {
  padding: 0.5rem 0;
  border-top: 1px solid #ccc;
}
.booking-start input[type=number] {
  -moz-appearance: textfield;
}
.booking-start input[type=number]::-webkit-outer-spin-button, .booking-start input[type=number]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
@media (max-width: 767px) {
  .booking-start .return-box {
    margin-top: 20px;
  }
}
.booking-start .route-date .form__fieldset {
  margin-top: 10px !important;
  padding-bottom: 10px;
}
.booking-start .route-date .form__group {
  margin-top: 0;
  padding: 0 0.625rem;
}
@media (max-width: 767px) {
  .booking-start .route-date .form__group {
    padding: 0.3125rem;
  }
}
.booking-start .route-date .form__button-remove {
  padding: 0.625rem;
}
@media (max-width: 767px) {
  .booking-start .route-date .form__button-remove {
    padding: 0.3125rem;
  }
}

.site-main > .homehero {
  margin-bottom: 0 !important;
}
@media (max-width: 767px) {
  .site-main > .homehero .herotextholder {
    position: absolute;
    bottom: 4rem;
    padding: 0 1rem;
  }
}

.lightbox .login-form {
  padding: 30px 10px;
  font-size: 16px;
}
.lightbox .login-form legend {
  font-size: 1em;
  font-weight: bold !important;
}
.lightbox .login-form a[href] {
  font-size: 1em !important;
  text-decoration: none;
}
.lightbox .login-form a[href]:hover {
  color: #0071aa;
  text-decoration: underline;
}
.lightbox .login-form .form__title {
  margin-bottom: 20px;
}
.lightbox .login-form .form__group {
  margin-top: 15px;
}
.lightbox .login-form .form__group:first-of-type {
  margin-top: 20px;
}
.lightbox .login-form .form__group label {
  font-size: 0.875em;
}
.lightbox .login-form .form__control {
  padding: 0 15px;
  width: 100%;
  height: 45px;
  background-color: #f3f4f8;
  border: 0;
  border-radius: 4px;
  box-shadow: inset 0 1px 1px 0 rgba(0, 0, 0, 0.15);
  font-size: 0.875em;
}
.lightbox .login-form .form__control:focus, .lightbox .login-form .form__control:valid, .lightbox .login-form .form__control:-webkit-autofill {
  padding-top: 15px;
}
.lightbox .login-form .form__fieldset + .button-container {
  margin-top: 20px;
}
.lightbox .login-form input[type=text] ~ .password-button {
  background: url(../img/icons/eye-outline.svg) no-repeat center center/22px 20px;
}
.lightbox .login-form button.password-button {
  border: 0;
  outline: 0;
  width: 22px;
  height: 20px;
  display: block;
  position: absolute;
  top: 50%;
  right: 20px;
  z-index: 1;
  transform: translateY(-50%);
  transition: all 0.2s ease-in-out;
}

.dropdown .button.close {
  margin: 15px 0;
  padding: 15px 0;
  font-size: 14px;
  text-decoration: none;
}

.accessbar,
#site-navigation,
#content,
#masthead,
#leftcol {
  z-index: initial;
}

#site-navigation,
#mobilebar {
  z-index: 2;
}

/*# sourceMappingURL=entryform.css.map */
