﻿@import url(/assets/css/select2/select2.css);
@import url(/assets/lib/leafletjs/leaflet.css);
@import url(/assets/lib/leaflet-routing-machine/leaflet-routing-machine.css);
/* new palette */
/***************/
div.white {
  background-color: #fefefe; }
  @media (nothing) {
    div.white {
      background-color: #999; } }

div.seq-0 {
  background-color: #e07272; }
  @media (nothing) {
    div.seq-0 {
      background-color: #4e2829; } }

div.seq-1 {
  background-color: #33a5dc; }
  @media (nothing) {
    div.seq-1 {
      background-color: #0f3142; } }

div.seq-2 {
  background-color: #f3af35; }
  @media (nothing) {
    div.seq-2 {
      background-color: #33250b; } }

div.seq-3 {
  background-color: #8fbe21; }
  @media (nothing) {
    div.seq-3 {
      background-color: #212C08; } }

div.seq-4 {
  background-color: #f6b592; }
  @media (nothing) {
    div.seq-4 {
      background-color: #6d2c08; } }

div.seq-5 {
  background-color: #343c52; }
  @media (nothing) {
    div.seq-5 {
      background-color: #343c52; } }

div.seq-6 {
  background-color: #4271a8; }
  @media (nothing) {
    div.seq-6 {
      background-color: #0f3d75; } }

div.seq-7 {
  background-color: #10b4c1; }
  @media (nothing) {
    div.seq-7 {
      background-color: #01606c; } }

span.white, .svg-inline--fa.white {
  color: #fefefe; }
  @media (nothing) {
    span.white, .svg-inline--fa.white {
      color: #999; } }

span.seq-0, .svg-inline--fa.seq-0 {
  color: #e07272; }
  @media (nothing) {
    span.seq-0, .svg-inline--fa.seq-0 {
      color: #4e2829; } }

span.seq-1, .svg-inline--fa.seq-1 {
  color: #33a5dc; }
  @media (nothing) {
    span.seq-1, .svg-inline--fa.seq-1 {
      color: #0f3142; } }

span.seq-2, .svg-inline--fa.seq-2 {
  color: #f3af35; }
  @media (nothing) {
    span.seq-2, .svg-inline--fa.seq-2 {
      color: #33250b; } }

span.seq-3, .svg-inline--fa.seq-3 {
  color: #8fbe21; }
  @media (nothing) {
    span.seq-3, .svg-inline--fa.seq-3 {
      color: #212C08; } }

span.seq-4, .svg-inline--fa.seq-4 {
  color: #f6b592; }
  @media (nothing) {
    span.seq-4, .svg-inline--fa.seq-4 {
      color: #6d2c08; } }

span.seq-5, .svg-inline--fa.seq-5 {
  color: #343c52; }
  @media (nothing) {
    span.seq-5, .svg-inline--fa.seq-5 {
      color: #343c52; } }

span.seq-6, .svg-inline--fa.seq-6 {
  color: #4271a8; }
  @media (nothing) {
    span.seq-6, .svg-inline--fa.seq-6 {
      color: #0f3d75; } }

span.seq-7, .svg-inline--fa.seq-7 {
  color: #10b4c1; }
  @media (nothing) {
    span.seq-7, .svg-inline--fa.seq-7 {
      color: #01606c; } }

svg .fill.white {
  fill: #fefefe; }
  @media (nothing) {
    svg .fill.white {
      fill: #999; } }

svg .fill.seq-0 {
  fill: #e07272; }
  @media (nothing) {
    svg .fill.seq-0 {
      fill: #4e2829; } }

svg .fill.seq-1 {
  fill: #33a5dc; }
  @media (nothing) {
    svg .fill.seq-1 {
      fill: #0f3142; } }

svg .fill.seq-2 {
  fill: #f3af35; }
  @media (nothing) {
    svg .fill.seq-2 {
      fill: #33250b; } }

svg .fill.seq-3 {
  fill: #8fbe21; }
  @media (nothing) {
    svg .fill.seq-3 {
      fill: #212C08; } }

svg .fill.seq-4 {
  fill: #f6b592; }
  @media (nothing) {
    svg .fill.seq-4 {
      fill: #6d2c08; } }

svg .fill.seq-5 {
  fill: #343c52; }
  @media (nothing) {
    svg .fill.seq-5 {
      fill: #343c52; } }

svg .fill.seq-6 {
  fill: #4271a8; }
  @media (nothing) {
    svg .fill.seq-6 {
      fill: #0f3d75; } }

svg .fill.seq-7 {
  fill: #10b4c1; }
  @media (nothing) {
    svg .fill.seq-7 {
      fill: #01606c; } }

svg .path.white {
  stroke: #fefefe; }
  @media (nothing) {
    svg .path.white {
      stroke: #999; } }

svg .path.seq-0 {
  stroke: #e07272; }
  @media (nothing) {
    svg .path.seq-0 {
      stroke: #4e2829; } }

svg .path.seq-1 {
  stroke: #33a5dc; }
  @media (nothing) {
    svg .path.seq-1 {
      stroke: #0f3142; } }

svg .path.seq-2 {
  stroke: #f3af35; }
  @media (nothing) {
    svg .path.seq-2 {
      stroke: #33250b; } }

svg .path.seq-3 {
  stroke: #8fbe21; }
  @media (nothing) {
    svg .path.seq-3 {
      stroke: #212C08; } }

svg .path.seq-4 {
  stroke: #f6b592; }
  @media (nothing) {
    svg .path.seq-4 {
      stroke: #6d2c08; } }

svg .path.seq-5 {
  stroke: #343c52; }
  @media (nothing) {
    svg .path.seq-5 {
      stroke: #343c52; } }

svg .path.seq-6 {
  stroke: #4271a8; }
  @media (nothing) {
    svg .path.seq-6 {
      stroke: #0f3d75; } }

svg .path.seq-7 {
  stroke: #10b4c1; }
  @media (nothing) {
    svg .path.seq-7 {
      stroke: #01606c; } }

div.seq-0-t {
  background-color: rgba(224, 114, 114, 0.8); }
  @media (nothing) {
    div.seq-0-t {
      background-color: #4e2829; } }

div.seq-1-t {
  background-color: rgba(51, 165, 221, 0.8); }
  @media (nothing) {
    div.seq-1-t {
      background-color: #0f3142; } }

div.seq-2-t {
  background-color: rgba(243, 175, 53, 0.8); }
  @media (nothing) {
    div.seq-2-t {
      background-color: #33250b; } }

div.seq-3-t {
  background-color: rgba(143, 190, 33, 0.8); }
  @media (nothing) {
    div.seq-3-t {
      background-color: #212C08; } }

div.seq-4-t {
  background-color: rgba(246, 181, 146, 0.8); }
  @media (nothing) {
    div.seq-4-t {
      background-color: #6d2c08; } }

div.seq-5-t {
  background-color: rgba(52, 60, 82, 0.8); }
  @media (nothing) {
    div.seq-5-t {
      background-color: #343c52; } }

div.seq-6-t {
  background-color: rgba(66, 113, 168, 0.8); }
  @media (nothing) {
    div.seq-6-t {
      background-color: #0f3d75; } }

div.seq-7-t {
  background-color: rgba(16, 180, 193, 0.8); }
  @media (nothing) {
    div.seq-7-t {
      background-color: #01606c; } }

.border-colour.seq-0 {
  stroke: #e07272; }
  @media (nothing) {
    .border-colour.seq-0 {
      stroke: #4e2829; } }

.border-colour.seq-0 {
  border-color: #e07272; }
  @media (nothing) {
    .border-colour.seq-0 {
      border-color: #4e2829; } }

.border-colour.seq-0 {
  border-color: #e07272; }
  @media (nothing) {
    .border-colour.seq-0 {
      border-color: #4e2829; } }

.border-colour.seq-1 {
  border-color: #33a5dc; }
  @media (nothing) {
    .border-colour.seq-1 {
      border-color: #0f3142; } }

.border-colour.seq-2 {
  border-color: #f3af35; }
  @media (nothing) {
    .border-colour.seq-2 {
      border-color: #33250b; } }

.border-colour.seq-3 {
  border-color: #8fbe21; }
  @media (nothing) {
    .border-colour.seq-3 {
      border-color: #212C08; } }

.border-colour.seq-4 {
  border-color: #f6b592; }
  @media (nothing) {
    .border-colour.seq-4 {
      border-color: #6d2c08; } }

.border-colour.seq-5 {
  border-color: #343c52; }
  @media (nothing) {
    .border-colour.seq-5 {
      border-color: #343c52; } }

.border-colour.seq-6 {
  border-color: #4271a8; }
  @media (nothing) {
    .border-colour.seq-6 {
      border-color: #0f3d75; } }

.border-colour.seq-7 {
  border-color: #10b4c1; }
  @media (nothing) {
    .border-colour.seq-7 {
      border-color: #01606c; } }

.background-colour.seq-0 {
  background-color: #e07272; }
  @media (nothing) {
    .background-colour.seq-0 {
      background-color: #4e2829; } }

.background-colour.seq-1 {
  background-color: #33a5dc; }
  @media (nothing) {
    .background-colour.seq-1 {
      background-color: #0f3142; } }

.background-colour.seq-2 {
  background-color: #f3af35; }
  @media (nothing) {
    .background-colour.seq-2 {
      background-color: #33250b; } }

.background-colour.seq-3 {
  background-color: #8fbe21; }
  @media (nothing) {
    .background-colour.seq-3 {
      background-color: #212C08; } }

.background-colour.seq-4 {
  background-color: #f6b592; }
  @media (nothing) {
    .background-colour.seq-4 {
      background-color: #6d2c08; } }

.background-colour.seq-5 {
  background-color: #343c52; }
  @media (nothing) {
    .background-colour.seq-5 {
      background-color: #343c52; } }

.background-colour.seq-6 {
  background-color: #4271a8; }
  @media (nothing) {
    .background-colour.seq-6 {
      background-color: #0f3d75; } }

.background-colour.seq-7 {
  background-color: #10b4c1; }
  @media (nothing) {
    .background-colour.seq-7 {
      background-color: #01606c; } }

@font-face {
  font-family: 'roboto-black';
  src: url("/assets/fonts/roboto-black.woff2") format("woff2"), url("/assets/fonts/roboto-black.woff") format("woff"), url("/assets/fonts/Roboto-Black.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'roboto-black-italic';
  src: url("/assets/fonts/roboto-blackitalic.woff2") format("woff2"), url("/assets/fonts/roboto-blackitalic.woff") format("woff"), url("/assets/fonts/Roboto-BlackItalic.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'roboto-bold';
  src: url("/assets/fonts/roboto-bold.woff") format("woff"), url("/assets/fonts/Roboto-Bold.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'roboto-bold-italic';
  src: url("/assets/fonts/roboto-bolditalic.woff2") format("woff2"), url("/assets/fonts/roboto-bolditalic.woff") format("woff"), url("/assets/fonts/Roboto-BoldItalic.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'roboto-italic';
  src: url("/assets/fonts/roboto-italic.woff2") format("woff2"), url("/assets/fonts/roboto-italic.woff") format("woff"), url("/assets/fonts/Roboto-Italic.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'roboto-light';
  src: url("/assets/fonts/roboto-light.woff2") format("woff2"), url("/assets/fonts/roboto-light.woff") format("woff"), url("/assets/fonts/Roboto-Light.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'roboto-light-italic';
  src: url("/assets/fonts/roboto-lightitalic.woff2") format("woff2"), url("/assets/fonts/roboto-lightitalic.woff") format("woff"), url("/assets/fonts/Roboto-LightItalic.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'roboto-medium';
  src: url("/assets/fonts/roboto-medium.woff2") format("woff2"), url("/assets/fonts/roboto-medium.woff") format("woff"), url("/assets/fonts/Roboto-Medium.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'roboto-medium-italic';
  src: url("/assets/fonts/roboto-mediumitalic.woff2") format("woff2"), url("/assets/fonts/roboto-mediumitalic.woff") format("woff"), url("/assets/fonts/Roboto-MediumItalic.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'roboto-regular';
  src: url("/assets/fonts/roboto-regular.woff2") format("woff2"), url("/assets/fonts/roboto-regular.woff") format("woff"), url("/assets/fonts/Roboto-Regular.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'roboto-thin';
  src: url("/assets/fonts/roboto-thin.woff2") format("woff2"), url("/assets/fonts/roboto-thin.woff") format("woff"), url("/assets/fonts/Roboto-Thin.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'roboto-thin-italic';
  src: url("/assets/fonts/roboto-thinitalic.woff2") format("woff2"), url("/assets/fonts/roboto-thinitalic.woff") format("woff"), url("/assets/fonts/Roboto-ThinItalic.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: swap; }

.single-column-format {
  width: 100%;
  padding: 0 15px;
  text-align: center;
  box-sizing: border-box; }
  .single-column-format > * {
    width: 100%;
    max-width: 1350px;
    display: inline-block;
    text-align: left;
    margin: 5px 0; }
  .single-column-format h2, .single-column-format .module-heading {
    text-align: center; }
  .single-column-format h2 {
    margin-top: 40px; }

h1 {
  font-family: "roboto-regular";
  font-weight: normal;
  font-size: 2em;
  margin-bottom: 30px;
  text-align: center;
  line-height: 1.2em; }

.section {
  position: relative;
  margin: 0 0 30px 0; }
  .section ~ section {
    margin: 30px 0; }
  .section > * {
    box-sizing: border-box; }

.emph {
  font-family: "roboto-regular"; }

.middle {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 100%;
  left: 0; }

.page .banner {
  width: 100%;
  height: 500px;
  position: relative;
  overflow: hidden; }
  @media only screen and (max-width: 820px) {
    .page .banner {
      height: unset;
      overflow: hidden; } }
  .page .banner svg.curve {
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    height: 90px; }
    @media only screen and (max-width: 820px) {
      .page .banner svg.curve {
        bottom: -20px; } }
  .page .banner div.curve {
    width: 100%;
    position: absolute;
    bottom: -1px;
    left: 0;
    height: 90px;
    background: url("/assets/images/tattoos/curve.svg") no-repeat transparent;
    background-position: 0% 100%;
    background-size: cover; }
    @media (nothing) {
      .page .banner div.curve {
        background: url("/assets/images/tattoos/dark-curve.svg") no-repeat transparent; } }
    @media only screen and (max-width: 820px) {
      .page .banner div.curve {
        display: none; } }

.page .video-container {
  width: 100%;
  height: 100%;
  overflow: hidden; }

.page .title-banner {
  background-color: #eee; }
  .page .title-banner > * > * {
    text-align: center; }
  .page .title-banner h1 {
    margin-bottom: 0; }
  .page .title-banner p {
    margin-top: 10px; }

.page .menu-background {
  background-color: #5c6d7f;
  height: 70px;
  margin-bottom: 10px; }
  .page .menu-background.tight {
    margin-bottom: 0; }
  @media only screen and (max-width: 820px) {
    .page .menu-background {
      height: 130px; } }

.page form .label {
  text-transform: capitalize;
  margin-top: 10px; }
  @media only screen and (max-width: 820px) {
    .page form .label {
      margin-bottom: 5px; } }

.page form .field input:not([type=checkbox]), .page form .field textarea {
  width: 100%;
  max-width: 300px; }
  @media only screen and (max-width: 820px) {
    .page form .field input:not([type=checkbox]), .page form .field textarea {
      width: 100%;
      max-width: unset;
      outline: none;
      border: none;
      border-radius: 5px;
      background-color: #eee;
      padding: 15px 10px;
      font-size: 16px;
      box-sizing: border-box; }
      .page form .field input:not([type=checkbox])::placeholder, .page form .field textarea::placeholder {
        /* Chrome, Firefox, Opera, Safari 10.1+ */
        color: #ccc;
        opacity: 1;
        /* Firefox */ }
      .page form .field input:not([type=checkbox]):-ms-input-placeholder, .page form .field textarea:-ms-input-placeholder {
        /* Internet Explorer 10-11 */
        color: #ccc; }
      .page form .field input:not([type=checkbox])::-ms-input-placeholder, .page form .field textarea::-ms-input-placeholder {
        /* Microsoft Edge */
        color: #ccc; } }

.page form .button-container {
  padding: 15px 0; }

.page .split-container > div {
  display: inline-block;
  width: 49%;
  vertical-align: top; }

.page .split-container.third > div {
  width: 32%; }

.page .split-container.col-33-66 > div:first-child {
  width: 32%; }

.page .split-container.col-33-66 > div:last-child {
  width: 65%; }

.page .bounding-container {
  position: relative; }
  .page .bounding-container .inner-content {
    height: auto; }
    .page .bounding-container .inner-content.fixed {
      position: fixed;
      width: 100%; }
    .page .bounding-container .inner-content.base {
      position: absolute;
      bottom: 0; }

.page.v2 h1 {
  margin-bottom: 0; }

.page.v2 h2 {
  text-align: left;
  margin-bottom: 0; }

.page.v2 .snippet {
  padding: 40px 100px; }

.page.v2 .inline-image-view figcaption {
  font-size: 0.8em; }

.page .splash-message {
  text-align: left;
  font-size: 1.1em;
  margin-top: 0;
  padding-top: 0;
  padding-left: 5px;
  border-left: 5px solid transparent;
  display: block;
  margin: 0 0 30px 2px; }

.field-validation-valid {
  display: none; }

.field-validation-error {
  padding: 5px 5px 5px 10px;
  background-color: #fee;
  color: #a00;
  border-left: 5px solid #a00;
  display: block;
  margin-top: 5px; }
  @media (nothing) {
    .field-validation-error {
      background-color: #211;
      color: #c66;
      border-left-color: #c66; } }

body.seq-0 .splash-message {
  border-left-color: #e07272; }
  @media (nothing) {
    body.seq-0 .splash-message {
      border-left-color: #4e2829; } }

body.seq-1 .splash-message {
  border-left-color: #33a5dc; }
  @media (nothing) {
    body.seq-1 .splash-message {
      border-left-color: #0f3142; } }

body.seq-2 .splash-message {
  border-left-color: #f3af35; }
  @media (nothing) {
    body.seq-2 .splash-message {
      border-left-color: #33250b; } }

body.seq-3 .splash-message {
  border-left-color: #8fbe21; }
  @media (nothing) {
    body.seq-3 .splash-message {
      border-left-color: #212C08; } }

body.seq-4 .splash-message {
  border-left-color: #f6b592; }
  @media (nothing) {
    body.seq-4 .splash-message {
      border-left-color: #6d2c08; } }

body.seq-5 .splash-message {
  border-left-color: #343c52; }
  @media (nothing) {
    body.seq-5 .splash-message {
      border-left-color: #343c52; } }

body.seq-6 .splash-message {
  border-left-color: #4271a8; }
  @media (nothing) {
    body.seq-6 .splash-message {
      border-left-color: #0f3d75; } }

body.seq-0 .page.v2 h2 {
  color: #e07272; }
  @media (nothing) {
    body.seq-0 .page.v2 h2 {
      color: #4e2829; } }

body.seq-1 .page.v2 h2 {
  color: #33a5dc; }
  @media (nothing) {
    body.seq-1 .page.v2 h2 {
      color: #0f3142; } }

body.seq-2 .page.v2 h2 {
  color: #f3af35; }
  @media (nothing) {
    body.seq-2 .page.v2 h2 {
      color: #33250b; } }

body.seq-3 .page.v2 h2 {
  color: #8fbe21; }
  @media (nothing) {
    body.seq-3 .page.v2 h2 {
      color: #212C08; } }

body.seq-4 .page.v2 h2 {
  color: #f6b592; }
  @media (nothing) {
    body.seq-4 .page.v2 h2 {
      color: #6d2c08; } }

body.seq-5 .page.v2 h2 {
  color: #343c52; }
  @media (nothing) {
    body.seq-5 .page.v2 h2 {
      color: #343c52; } }

body.seq-6 .page.v2 h2 {
  color: #4271a8; }
  @media (nothing) {
    body.seq-6 .page.v2 h2 {
      color: #0f3d75; } }

#icon {
  padding-right: 5px; }

.site-header {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 70px;
  color: #fefefe;
  background-color: rgba(100, 100, 100, 0.6);
  z-index: 2; }
  @supports (-webkit-backdrop-filter: blur(10px)) or (backdrop-filter: blur(10px)) {
    .site-header {
      -webkit-backdrop-filter: blur(10px);
      backdrop-filter: blur(10px);
      background-color: rgba(40, 40, 40, 0.4); } }
  @media (nothing) {
    .site-header {
      background-color: rgba(13, 13, 20, 0.7);
      color: #999; } }
  .site-header .home-link {
    font-size: 22px;
    color: #fefefe;
    border-left: solid 1px #fefefe;
    padding: 10px; }
    @media only screen and (max-width: 820px) {
      .site-header .home-link {
        visibility: hidden; } }
    @media (nothing) {
      .site-header .home-link {
        border-left-color: #5c6d7f;
        color: #5c6d7f; } }
    .site-header .home-link svg {
      border-bottom: solid 3px transparent;
      padding: 0 0 5px 0;
      position: relative;
      top: 6px; }
      .site-header .home-link svg:hover {
        border-bottom-color: #fefefe; }
        @media (nothing) {
          .site-header .home-link svg:hover {
            border-bottom-color: #5c6d7f; } }
  .site-header > * {
    vertical-align: middle; }
  .site-header .help-page-button {
    display: inline-block;
    margin-right: 20px; }
    .site-header .help-page-button .help-button {
      border-bottom: solid 3px transparent;
      color: #fefefe;
      position: absolute;
      top: 20px;
      right: 225px; }
      .site-header .help-page-button .help-button:hover {
        border-bottom-color: #fefefe; }
      @media (nothing) {
        .site-header .help-page-button .help-button {
          color: #5c6d7f; }
          .site-header .help-page-button .help-button:hover {
            border-bottom-color: #5c6d7f; } }
      @media only screen and (max-width: 820px) {
        .site-header .help-page-button .help-button {
          right: 90px; } }
      .site-header .help-page-button .help-button svg {
        font-size: 32px; }
  .site-header .login-button {
    font-family: "roboto-bold";
    display: inline-block;
    background-color: transparent;
    border: 3px solid #fefefe;
    border-radius: 35px;
    color: #fefefe;
    padding: 5px 15px;
    cursor: pointer;
    font-size: 0.9em;
    position: absolute;
    top: 14px;
    right: 23px; }
    .site-header .login-button:hover {
      color: #555;
      background-color: #fefefe; }
    @media (nothing) {
      .site-header .login-button {
        border-color: #5c6d7f;
        color: #5c6d7f; }
        .site-header .login-button:hover {
          background-color: #224;
          color: #999;
          border-color: #999; } }
    @media only screen and (max-width: 820px) {
      .site-header .login-button {
        padding: 0;
        width: 39px;
        height: 39px;
        line-height: 39px;
        text-align: center;
        border-radius: 50%;
        font-size: 1em;
        top: 11px;
        right: 23px; }
        .site-header .login-button #icon {
          padding-right: 0; } }
    .site-header .login-button span {
      display: inline-block; }
      @media only screen and (max-width: 820px) {
        .site-header .login-button span {
          display: none; } }
  .site-header .login-details {
    color: #fefefe;
    cursor: pointer;
    display: inline-block;
    position: absolute;
    top: 10px;
    right: 20px; }
    @media (nothing) {
      .site-header .login-details {
        color: #999; } }
    .site-header .login-details:hover .profile-picture-mini {
      cursor: pointer; }
    .site-header .login-details .user .username {
      font-family: "roboto-bold"; }
    .site-header .login-details .user .separator {
      margin: 0 10px; }
    .site-header .login-details .user a {
      color: #fefefe; }
      @media (nothing) {
        .site-header .login-details .user a {
          color: #999; }
          .site-header .login-details .user a:hover {
            color: #999; } }
      .site-header .login-details .user a:hover {
        color: #fefefe;
        text-decoration: underline; }
    .site-header .login-details .user span.mobile-user {
      display: none; }
    @media only screen and (max-width: 820px) {
      .site-header .login-details .user a {
        line-height: 35px;
        padding: 10px 10.42px; }
      .site-header .login-details .user #icon {
        display: none;
        padding-right: 0; }
      .site-header .login-details .user span.mobile-user {
        display: inline-block;
        text-transform: uppercase;
        cursor: pointer; } }
    .site-header .login-details .account-menu {
      display: none;
      background-color: #fefefe;
      box-shadow: rgba(40, 40, 40, 0.4) 5px 5px 20px;
      position: absolute;
      padding: 0;
      right: 0;
      cursor: pointer; }
      @media (nothing) {
        .site-header .login-details .account-menu {
          background-color: #334; } }
      .site-header .login-details .account-menu.show {
        display: block; }
      .site-header .login-details .account-menu li {
        color: #666;
        padding: 5px 10px;
        text-align: left;
        display: block;
        white-space: nowrap; }
        .site-header .login-details .account-menu li:hover {
          background-color: #5c6d7f;
          color: #fefefe; }
  .site-header .activity-basket {
    position: absolute;
    top: 20px;
    right: 91px;
    cursor: pointer;
    display: inline-block;
    margin-left: 20px;
    padding-bottom: 5px;
    border-bottom: 3px solid transparent; }
    .site-header .activity-basket .summary {
      font-size: 1.2em; }
      .site-header .activity-basket .summary .count {
        position: absolute;
        top: -10px;
        right: -10px;
        border-radius: 22px;
        min-width: 22px;
        height: 22px;
        background-color: #a00;
        color: #fefefe;
        font-size: 0.6em;
        font-family: "roboto-regular"; }
        @supports (animation-fill-mode: forwards) and (not (-ms-ime-align: auto)) {
          .site-header .activity-basket .summary .count.bounce {
            -webkit-animation: bounce 0.3s ease-in-out 2;
            -moz-animation: bounce 0.3s ease-in-out 2;
            -ms-animation: bounce 0.3s ease-in-out 2;
            -o-animation: bounce 0.3s ease-in-out 2;
            animation: bounce 0.3s ease-in-out 2; } }
        .site-header .activity-basket .summary .count span {
          display: block;
          width: 100%;
          text-align: center;
          margin: 0 3px;
          box-sizing: border-box;
          transform: translateX(-11%) translateY(-7%); }
    .site-header .activity-basket span {
      margin: 0 10px; }
    .site-header .activity-basket:hover {
      border-bottom: 3px solid #fefefe; }
      @media only screen and (max-width: 820px) {
        .site-header .activity-basket:hover {
          border-bottom: none; } }
      @media (nothing) {
        .site-header .activity-basket:hover {
          border-bottom-color: #5c6d7f; } }
    .site-header .activity-basket svg {
      font-size: 28px; }
  @media only screen and (max-width: 1024px) {
    .site-header {
      background-color: #2A6180; } }
  .site-header nav.main-nav {
    display: inline-block;
    vertical-align: top;
    margin-top: 5px;
    width: calc(100% - 500px);
    text-align: center; }
    @media only screen and (max-width: 1024px) {
      .site-header nav.main-nav {
        top: 0;
        left: 0;
        background-color: #5c6d7f;
        margin-top: -2px;
        width: 100%; } }
    @media only screen and (max-width: 820px) {
      .site-header nav.main-nav {
        overflow-x: auto; } }
    .site-header nav.main-nav > ul {
      list-style: none;
      padding-left: 0;
      margin-left: 0; }
      @media only screen and (max-width: 1024px) {
        .site-header nav.main-nav > ul {
          white-space: nowrap; } }
      @media only screen and (max-width: 820px) {
        .site-header nav.main-nav > ul {
          padding-left: 20px; } }
      .site-header nav.main-nav > ul li {
        display: inline-block;
        margin: 0 20px;
        cursor: pointer;
        font-size: 0.9em;
        border-bottom: 3px solid transparent; }
        .site-header nav.main-nav > ul li:hover {
          border-bottom-color: #fefefe; }
          @media (nothing) {
            .site-header nav.main-nav > ul li:hover {
              border-bottom-color: #5c6d7f; } }
    .site-header nav.main-nav .menu-sections {
      opacity: 0;
      transition: opacity ease-out 0.2s; }
      .site-header nav.main-nav .menu-sections .mobile-header {
        display: none; }
      .site-header nav.main-nav .menu-sections.show {
        opacity: 1; }
        @media only screen and (max-width: 820px) {
          .site-header nav.main-nav .menu-sections.show {
            position: absolute;
            width: 100%;
            z-index: 5; } }
      .site-header nav.main-nav .menu-sections .menu-pointer {
        width: 0;
        height: 0;
        border-left: 15px solid transparent;
        border-right: 15px solid transparent;
        border-bottom: 15px solid #fefefe;
        position: absolute;
        margin-top: -10px;
        transition: left ease-in-out 0.2s; }
        @media only screen and (max-width: 820px) {
          .site-header nav.main-nav .menu-sections .menu-pointer {
            display: none; } }
        @media (nothing) {
          .site-header nav.main-nav .menu-sections .menu-pointer {
            border-bottom-color: #5c6d7f; } }
  .site-header.logged-in nav.main-nav {
    /*width: calc(100% - 355px);*/ }
  .site-header.logged-in .help-button {
    right: 140px; }

.header-logo-link {
  margin: 8px 6px 0 20px;
  display: inline-block; }
  .header-logo-link div {
    width: 160px;
    height: 58px;
    background: url("/assets/images/bluestone-logo.svg") no-repeat;
    display: inline-block;
    background-size: contain; }
    @media (nothing) {
      .header-logo-link div {
        background: url("/assets/images/dark-bluestone-logo.svg") no-repeat;
        background-size: contain; } }
  @media only screen and (max-width: 820px) {
    .header-logo-link {
      margin-top: 5px; }
      .header-logo-link img {
        width: 120px; } }
  .header-logo-link:hover ~ .home-link svg {
    border-bottom-color: #fefefe; }
    @media (nothing) {
      .header-logo-link:hover ~ .home-link svg {
        border-bottom-color: #5c6d7f; } }

.site-footer {
  background-color: #eeeeee;
  padding-top: 130px; }
  @media (nothing) {
    .site-footer {
      background-color: #302f43; } }
  .site-footer #footer-links {
    margin-bottom: 30px; }
  .site-footer .footer-links {
    display: inline-block;
    vertical-align: top;
    width: calc(25% - 7.5px);
    margin: 0;
    padding: 0;
    text-align: left; }
    .site-footer .footer-links.col-2 {
      width: calc(33.333333333% - 3px); }
    .site-footer .footer-links ul {
      padding: 0;
      margin: 0;
      list-style: none; }
      .site-footer .footer-links ul li {
        margin: 5px 0; }
    .site-footer .footer-links .footer-links-header {
      margin: 10px 0;
      padding: 0;
      font-family: "roboto-regular";
      font-size: 1.1em; }
    .site-footer .footer-links.col-50 {
      width: 49%; }
    .site-footer .footer-links .social-share-view {
      margin: 0 0 10px 0;
      text-align: left; }
    .site-footer .footer-links .email-sign-up {
      margin: 0;
      padding: 0; }
      .site-footer .footer-links .email-sign-up h3 {
        margin-bottom: 0; }
      .site-footer .footer-links .email-sign-up > div {
        display: flex;
        flex-wrap: wrap; }
        .site-footer .footer-links .email-sign-up > div input {
          flex: 1 1 auto;
          min-height: 25px;
          font-size: 0.9em; }
        .site-footer .footer-links .email-sign-up > div button {
          flex: 0 0;
          white-space: nowrap; }
  .site-footer .footer-bottom {
    text-align: center;
    padding-bottom: 10px; }
    .site-footer .footer-bottom small {
      padding: 0 2vw; }
  @media only screen and (max-width: 1024px) {
    .site-footer .footer-links .footer-links-header {
      font-size: 1.4em; }
    .site-footer .footer-links ul li {
      font-size: 0.9em; } }
  @media only screen and (max-width: 820px) {
    .site-footer {
      padding-bottom: 90px; }
      .site-footer .footer-links {
        width: calc(33.333333333% - 3px); }
        .site-footer .footer-links .footer-links-header {
          font-size: 1.1em; }
        .site-footer .footer-links.col-2 {
          width: calc(50% - 3px); }
          .site-footer .footer-links.col-2 .footer-links-header {
            font-size: 1.2em; }
      .site-footer .footer-links.email {
        text-align: center;
        width: 100%; }
        .site-footer .footer-links.email .social-share-view {
          margin: 20px 0 10px 0;
          text-align: center; } }
  @media only screen and (max-width: 360px) {
    .site-footer .footer-links {
      text-align: center; }
      .site-footer .footer-links .footer-links-header {
        font-size: 1em;
        text-align: center; }
      .site-footer .footer-links.col-2 .footer-links-header {
        font-size: 1.1em; }
      .site-footer .footer-links ul li {
        font-size: 0.8em; } }

@supports (animation-fill-mode: forwards) and (not (-ms-ime-align: auto)) {
  @keyframes fade-slide-in {
    from {
      transform: translateX(-20px);
      opacity: 0; }
    to {
      transform: unset;
      opacity: 1; } }
  @-moz-keyframes fade-slide-in {
    from {
      transform: translateX(-20px);
      opacity: 0; }
    to {
      transform: unset;
      opacity: 1; } }
  @-webkit-keyframes fade-slide-in {
    from {
      transform: translateX(-20px);
      opacity: 0; }
    to {
      transform: unset;
      opacity: 1; } }
  @-ms-keyframes fade-slide-in {
    from {
      transform: translateX(-20px);
      opacity: 0; }
    to {
      transform: unset;
      opacity: 1; } }
  @-o-keyframes fade-slide-in {
    from {
      transform: translateX(-20px);
      opacity: 0; }
    to {
      transform: unset;
      opacity: 1; } } }

@supports (animation-fill-mode: forwards) and (not (-ms-ime-align: auto)) {
  @keyframes fade-slide-in-up {
    from {
      transform: translateY(20px);
      opacity: 0; }
    to {
      transform: unset;
      opacity: 1; } }
  @-moz-keyframes fade-slide-in-up {
    from {
      transform: translateY(20px);
      opacity: 0; }
    to {
      transform: unset;
      opacity: 1; } }
  @-webkit-keyframes fade-slide-in-up {
    from {
      transform: translateY(20px);
      opacity: 0; }
    to {
      transform: unset;
      opacity: 1; } }
  @-ms-keyframes fade-slide-in-up {
    from {
      transform: translateY(20px);
      opacity: 0; }
    to {
      transform: unset;
      opacity: 1; } }
  @-o-keyframes fade-slide-in-up {
    from {
      transform: translateY(20px);
      opacity: 0; }
    to {
      transform: unset;
      opacity: 1; } } }

@supports (animation-fill-mode: forwards) and (not (-ms-ime-align: auto)) {
  @keyframes slide-in {
    from {
      transform: translateX(-100%);
      opacity: 0; }
    to {
      transform: unset;
      opacity: 1; } }
  @-moz-keyframes slide-in {
    from {
      transform: translateX(-100%);
      opacity: 0; }
    to {
      transform: unset;
      opacity: 1; } }
  @-webkit-keyframes slide-in {
    from {
      transform: translateX(-100%);
      opacity: 0; }
    to {
      transform: unset;
      opacity: 1; } }
  @-ms-keyframes slide-in {
    from {
      transform: translateX(-100%);
      opacity: 0; }
    to {
      transform: unset;
      opacity: 1; } }
  @-o-keyframes slide-in {
    from {
      transform: translateX(-100%);
      opacity: 0; }
    to {
      transform: unset;
      opacity: 1; } } }

@supports (animation-fill-mode: forwards) and (not (-ms-ime-align: auto)) {
  @keyframes slide-in-reverse {
    from {
      transform: translateX(100%);
      opacity: 0; }
    to {
      transform: unset;
      opacity: 1; } }
  @-moz-keyframes slide-in-reverse {
    from {
      transform: translateX(100%);
      opacity: 0; }
    to {
      transform: unset;
      opacity: 1; } }
  @-webkit-keyframes slide-in-reverse {
    from {
      transform: translateX(100%);
      opacity: 0; }
    to {
      transform: unset;
      opacity: 1; } }
  @-ms-keyframes slide-in-reverse {
    from {
      transform: translateX(100%);
      opacity: 0; }
    to {
      transform: unset;
      opacity: 1; } }
  @-o-keyframes slide-in-reverse {
    from {
      transform: translateX(100%);
      opacity: 0; }
    to {
      transform: unset;
      opacity: 1; } } }

@supports (animation-fill-mode: forwards) and (not (-ms-ime-align: auto)) {
  @keyframes fade-in {
    from {
      opacity: 0; }
    to {
      opacity: 1; } }
  @-moz-keyframes fade-in {
    from {
      opacity: 0; }
    to {
      opacity: 1; } }
  @-webkit-keyframes fade-in {
    from {
      opacity: 0; }
    to {
      opacity: 1; } }
  @-ms-keyframes fade-in {
    from {
      opacity: 0; }
    to {
      opacity: 1; } }
  @-o-keyframes fade-in {
    from {
      opacity: 0; }
    to {
      opacity: 1; } } }

@supports (animation-fill-mode: forwards) and (not (-ms-ime-align: auto)) {
  @keyframes bounce {
    0% {
      transform: unset; }
    50% {
      transform: translateY(-5px); }
    100% {
      transform: unset; } }
  @-moz-keyframes bounce {
    0% {
      transform: unset; }
    50% {
      transform: translateY(-5px); }
    100% {
      transform: unset; } }
  @-webkit-keyframes bounce {
    0% {
      transform: unset; }
    50% {
      transform: translateY(-5px); }
    100% {
      transform: unset; } }
  @-ms-keyframes bounce {
    0% {
      transform: unset; }
    50% {
      transform: translateY(-5px); }
    100% {
      transform: unset; } }
  @-o-keyframes bounce {
    0% {
      transform: unset; }
    50% {
      transform: translateY(-5px); }
    100% {
      transform: unset; } } }

.video-container {
  width: 100%;
  position: relative; }
  .video-container.w16-9 {
    padding-top: 56.25%; }
  .video-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%; }

.accommodation-search-widget {
  position: relative;
  width: 100%;
  text-align: center;
  color: #fefefe;
  box-sizing: border-box;
  display: block;
  -moz-user-select: -moz-none;
  -khtml-user-select: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
  cursor: default; }
  .accommodation-search-widget.show {
    z-index: 2; }
    .accommodation-search-widget.show .inner-container {
      display: inline-block; }
    .accommodation-search-widget.show .button-bar.mobile-availability .button-link {
      background-color: #54636e; }
      .accommodation-search-widget.show .button-bar.mobile-availability .button-link svg {
        transform: rotate(-180deg); }
  .accommodation-search-widget .inner-container {
    display: inline-block;
    width: 840px;
    padding: 0 10px 10px 10px;
    font-size: 1em;
    text-align: center;
    box-sizing: border-box; }
    @media only screen and (max-width: 820px) {
      .accommodation-search-widget .inner-container {
        width: 100%;
        padding: 20px 20px;
        display: none; } }
    .accommodation-search-widget .inner-container .rate-title {
      text-align: left;
      margin-bottom: 10px; }
      .accommodation-search-widget .inner-container .rate-title svg {
        margin: 0 3px; }
    @media only screen and (min-width: 821px) {
      .accommodation-search-widget .inner-container .criteria {
        width: 81%;
        float: left; } }
    .accommodation-search-widget .inner-container .criteria .search-who, .accommodation-search-widget .inner-container .criteria .search-when {
      color: #555;
      cursor: pointer;
      position: relative;
      min-height: 40px; }
      @media (nothing) {
        .accommodation-search-widget .inner-container .criteria .search-who, .accommodation-search-widget .inner-container .criteria .search-when {
          color: #999; } }
      .accommodation-search-widget .inner-container .criteria .search-who > div:not(.dropdown), .accommodation-search-widget .inner-container .criteria .search-when > div:not(.dropdown) {
        background-color: #fefefe;
        padding: 10px;
        box-sizing: border-box; }
        @media only screen and (max-width: 820px) {
          .accommodation-search-widget .inner-container .criteria .search-who > div:not(.dropdown), .accommodation-search-widget .inner-container .criteria .search-when > div:not(.dropdown) {
            border: 2px solid #ccc; } }
        @media (nothing) {
          .accommodation-search-widget .inner-container .criteria .search-who > div:not(.dropdown), .accommodation-search-widget .inner-container .criteria .search-when > div:not(.dropdown) {
            background-color: #222;
            color: #999; } }
        .accommodation-search-widget .inner-container .criteria .search-who > div:not(.dropdown) svg, .accommodation-search-widget .inner-container .criteria .search-when > div:not(.dropdown) svg {
          margin-right: 10px; }
        .accommodation-search-widget .inner-container .criteria .search-who > div:not(.dropdown) span svg, .accommodation-search-widget .inner-container .criteria .search-when > div:not(.dropdown) span svg {
          margin: 0 5px; }
        .accommodation-search-widget .inner-container .criteria .search-who > div:not(.dropdown):hover, .accommodation-search-widget .inner-container .criteria .search-when > div:not(.dropdown):hover {
          color: #fefefe;
          background-color: #555; }
      .accommodation-search-widget .inner-container .criteria .search-who span, .accommodation-search-widget .inner-container .criteria .search-when span {
        line-height: 1em; }
      @media only screen and (max-width: 820px) {
        .accommodation-search-widget .inner-container .criteria .search-who, .accommodation-search-widget .inner-container .criteria .search-when {
          display: block; } }
      .accommodation-search-widget .inner-container .criteria .search-who.show .dropdown, .accommodation-search-widget .inner-container .criteria .search-when.show .dropdown {
        display: block; }
    @media only screen and (min-width: 821px) {
      .accommodation-search-widget .inner-container .criteria .search-who {
        float: left;
        width: 43%; } }
    .accommodation-search-widget .inner-container .criteria .search-who > .guests-lodges {
      border-radius: 5px;
      font-size: 0.9em; }
      .accommodation-search-widget .inner-container .criteria .search-who > .guests-lodges .guests {
        width: 50%;
        display: inline-block; }
      .accommodation-search-widget .inner-container .criteria .search-who > .guests-lodges .lodges {
        width: 50%;
        float: right; }
    @media only screen and (max-width: 820px) {
      .accommodation-search-widget .inner-container .criteria .search-who .dropdown {
        padding: 0; } }
    @media only screen and (min-width: 821px) {
      .accommodation-search-widget .inner-container .criteria .search-who .dropdown {
        overflow-y: auto;
        max-height: calc(100vh - 110px); } }
    .accommodation-search-widget .inner-container .criteria > .search-when {
      font-size: 0.9em; }
      @media only screen and (min-width: 821px) {
        .accommodation-search-widget .inner-container .criteria > .search-when {
          float: right;
          width: 55%; } }
      @media only screen and (max-width: 820px) {
        .accommodation-search-widget .inner-container .criteria > .search-when {
          margin-top: 30px; } }
      .accommodation-search-widget .inner-container .criteria > .search-when > div:not(.dropdown) {
        border-radius: 5px; }
      .accommodation-search-widget .inner-container .criteria > .search-when .day {
        font-weight: bold; }
      .accommodation-search-widget .inner-container .criteria > .search-when .ord {
        vertical-align: top;
        font-size: 0.7em; }
      .accommodation-search-widget .inner-container .criteria > .search-when .dropdown {
        padding: 20px 20px 10px 20px; }
        @media only screen and (min-width: 821px) {
          .accommodation-search-widget .inner-container .criteria > .search-when .dropdown {
            width: 650px;
            left: -50%; } }
        @media only screen and (max-width: 820px) {
          .accommodation-search-widget .inner-container .criteria > .search-when .dropdown {
            padding: 0; } }
        .accommodation-search-widget .inner-container .criteria > .search-when .dropdown::before {
          left: 350px; }
        .accommodation-search-widget .inner-container .criteria > .search-when .dropdown .calendar-message {
          display: block;
          text-align: center;
          color: #5c6d7f;
          padding-top: 10px; }
          .accommodation-search-widget .inner-container .criteria > .search-when .dropdown .calendar-message p {
            margin: 5px; }
          @media only screen and (max-width: 820px) {
            .accommodation-search-widget .inner-container .criteria > .search-when .dropdown .calendar-message {
              display: none; } }
        .accommodation-search-widget .inner-container .criteria > .search-when .dropdown .calendar-message-mobile {
          display: none; }
          @media only screen and (max-width: 820px) {
            .accommodation-search-widget .inner-container .criteria > .search-when .dropdown .calendar-message-mobile {
              display: block;
              text-align: center;
              padding: 5px 20px 10px 20px;
              margin: 0;
              line-height: 1em;
              border-bottom: 2px solid #efefef; }
              .accommodation-search-widget .inner-container .criteria > .search-when .dropdown .calendar-message-mobile p {
                display: inline;
                margin: 0 1px 0 0;
                font-size: 0.8em; }
              .accommodation-search-widget .inner-container .criteria > .search-when .dropdown .calendar-message-mobile .arrive-depart-holder {
                padding-top: 10px; }
                .accommodation-search-widget .inner-container .criteria > .search-when .dropdown .calendar-message-mobile .arrive-depart-holder span {
                  font-size: 0.9em;
                  color: #5c6d7f;
                  font-weight: bold; }
                .accommodation-search-widget .inner-container .criteria > .search-when .dropdown .calendar-message-mobile .arrive-depart-holder span.arrive-text {
                  padding: 0 5px 0 0; }
                .accommodation-search-widget .inner-container .criteria > .search-when .dropdown .calendar-message-mobile .arrive-depart-holder span.depart-text {
                  padding: 0 0 0 5px; } }
        .accommodation-search-widget .inner-container .criteria > .search-when .dropdown .bs-date-range-picker {
          position: relative;
          border-radius: 5px;
          background-color: #fefefe; }
          @media (nothing) {
            .accommodation-search-widget .inner-container .criteria > .search-when .dropdown .bs-date-range-picker {
              background-color: #224; } }
          .accommodation-search-widget .inner-container .criteria > .search-when .dropdown .bs-date-range-picker .dp-day.dow-1, .accommodation-search-widget .inner-container .criteria > .search-when .dropdown .bs-date-range-picker .dp-day.dow-5 {
            background-color: #eff9ef; }
            @media (nothing) {
              .accommodation-search-widget .inner-container .criteria > .search-when .dropdown .bs-date-range-picker .dp-day.dow-1, .accommodation-search-widget .inner-container .criteria > .search-when .dropdown .bs-date-range-picker .dp-day.dow-5 {
                background-color: #5c2593; } }
          @media only screen and (max-width: 820px) {
            .accommodation-search-widget .inner-container .criteria > .search-when .dropdown .bs-date-range-picker {
              position: unset;
              border-radius: 0;
              height: calc(100% - 151px); } }
        .accommodation-search-widget .inner-container .criteria > .search-when .dropdown .button-container.done-button {
          padding-top: 10px; }
    .accommodation-search-widget .inner-container .check-prices {
      display: inline-block;
      margin: 0 10px;
      padding: 10px 20px; }
      @media only screen and (max-width: 820px) {
        .accommodation-search-widget .inner-container .check-prices {
          margin: 25px 0 5px 0; } }
      @media (nothing) {
        .accommodation-search-widget .inner-container .check-prices {
          background-color: #290260;
          color: #999; }
          .accommodation-search-widget .inner-container .check-prices:hover {
            background-color: #5c2593; } }
      .accommodation-search-widget .inner-container .check-prices.wait span {
        display: none; }
      .accommodation-search-widget .inner-container .check-prices.wait .wait-animation {
        display: inline; }
      .accommodation-search-widget .inner-container .check-prices .wait-animation {
        display: none; }
    .accommodation-search-widget .inner-container .dropdown {
      position: absolute;
      z-index: 3;
      padding: 10px;
      box-shadow: rgba(40, 40, 40, 0.2) 5px 5px 5px;
      top: calc(100% + 15px);
      background-color: rgba(245, 245, 245, 0.98);
      left: 0;
      cursor: default;
      text-align: left;
      display: none;
      border: 1px solid #eee; }
      @media (nothing) {
        .accommodation-search-widget .inner-container .dropdown {
          background-color: #222;
          border-color: #333; } }
      @media only screen and (min-width: 821px) {
        .accommodation-search-widget .inner-container .dropdown {
          border-radius: 5px;
          white-space: nowrap; } }
      @media only screen and (max-width: 820px) {
        .accommodation-search-widget .inner-container .dropdown {
          position: fixed;
          top: 70px;
          width: 100%;
          height: 100%;
          background-color: #fefefe;
          box-sizing: border-box;
          border: none; } }
      .accommodation-search-widget .inner-container .dropdown::before {
        content: "";
        width: 0;
        height: 0;
        border-left: 16px solid transparent;
        border-right: 16px solid transparent;
        border-bottom: 16px solid rgba(245, 245, 245, 0.98);
        position: absolute;
        top: -17px;
        left: 30px; }
        @media only screen and (max-width: 820px) {
          .accommodation-search-widget .inner-container .dropdown::before {
            display: none; } }
        @media (nothing) {
          .accommodation-search-widget .inner-container .dropdown::before {
            border-bottom-color: #444; } }
      .accommodation-search-widget .inner-container .dropdown .dropdown-header {
        display: none; }
        @media only screen and (max-width: 820px) {
          .accommodation-search-widget .inner-container .dropdown .dropdown-header {
            display: block;
            color: #fefefe;
            padding: 0;
            width: 100%;
            height: 70px;
            position: fixed;
            top: 0;
            left: 0; }
            .accommodation-search-widget .inner-container .dropdown .dropdown-header a {
              display: block;
              position: absolute;
              top: 23px;
              right: 20px;
              color: #fefefe;
              font-size: 1.4em; }
            .accommodation-search-widget .inner-container .dropdown .dropdown-header .text {
              display: block;
              font-size: 1em;
              text-align: center;
              height: 70px;
              line-height: 70px;
              width: 100%; } }
      .accommodation-search-widget .inner-container .dropdown h2 {
        font-size: 1.2em;
        margin-top: 0; }
      .accommodation-search-widget .inner-container .dropdown .button-container {
        display: none;
        text-align: center; }
        .accommodation-search-widget .inner-container .dropdown .button-container .done-button {
          text-align: center;
          display: inline-block;
          margin-top: 20px; }
        @media only screen and (max-width: 820px) {
          .accommodation-search-widget .inner-container .dropdown .button-container {
            display: block;
            position: fixed;
            width: 100%;
            height: 70px;
            bottom: 0;
            left: 0; } }
      @media only screen and (max-width: 820px) {
        .accommodation-search-widget .inner-container .dropdown .scrollable {
          position: relative;
          overflow-y: auto;
          height: calc(100vh - 140px); } }
      .accommodation-search-widget .inner-container .dropdown .scrollable .lodges-container .lodge-row {
        border-top: solid 2px #999;
        padding-top: 10px;
        margin-top: 10px;
        position: relative; }
        .accommodation-search-widget .inner-container .dropdown .scrollable .lodges-container .lodge-row h3 {
          margin: 0; }
        @media only screen and (max-width: 820px) {
          .accommodation-search-widget .inner-container .dropdown .scrollable .lodges-container .lodge-row {
            margin-top: 20px;
            padding: 10px 20px 0 20px;
            border-top: solid 2px #ccc; } }
        .accommodation-search-widget .inner-container .dropdown .scrollable .lodges-container .lodge-row:first-child {
          border-top: none;
          margin-top: 0; }
          .accommodation-search-widget .inner-container .dropdown .scrollable .lodges-container .lodge-row:first-child .remove-button {
            display: none; }
        .accommodation-search-widget .inner-container .dropdown .scrollable .lodges-container .lodge-row .selector {
          text-align: center;
          display: inline-block;
          border-right: 1px solid #999; }
          @media only screen and (min-width: 821px) {
            .accommodation-search-widget .inner-container .dropdown .scrollable .lodges-container .lodge-row .selector {
              padding: 20px; }
              .accommodation-search-widget .inner-container .dropdown .scrollable .lodges-container .lodge-row .selector:last-child {
                border-right: none; } }
          @media only screen and (max-width: 820px) {
            .accommodation-search-widget .inner-container .dropdown .scrollable .lodges-container .lodge-row .selector {
              width: 100%;
              margin-top: 10px;
              text-align: left;
              border: none; }
              .accommodation-search-widget .inner-container .dropdown .scrollable .lodges-container .lodge-row .selector:nth-child(even) {
                border-right: none; } }
          .accommodation-search-widget .inner-container .dropdown .scrollable .lodges-container .lodge-row .selector .title {
            display: block; }
            @media only screen and (max-width: 820px) {
              .accommodation-search-widget .inner-container .dropdown .scrollable .lodges-container .lodge-row .selector .title {
                display: inline-block;
                margin-bottom: 0;
                padding-top: 20px; } }
          .accommodation-search-widget .inner-container .dropdown .scrollable .lodges-container .lodge-row .selector .age-range {
            font-size: 0.7em;
            margin-bottom: 20px; }
            @media only screen and (max-width: 820px) {
              .accommodation-search-widget .inner-container .dropdown .scrollable .lodges-container .lodge-row .selector .age-range {
                margin-left: 5px; }
                .accommodation-search-widget .inner-container .dropdown .scrollable .lodges-container .lodge-row .selector .age-range:before {
                  content: "("; }
                .accommodation-search-widget .inner-container .dropdown .scrollable .lodges-container .lodge-row .selector .age-range:after {
                  content: ")"; } }
          @media only screen and (max-width: 820px) {
            .accommodation-search-widget .inner-container .dropdown .scrollable .lodges-container .lodge-row .selector .buttons-container {
              display: inline-block;
              float: right;
              margin-right: -10px; } }
          .accommodation-search-widget .inner-container .dropdown .scrollable .lodges-container .lodge-row .selector svg {
            font-size: 2em;
            padding: 5px;
            cursor: pointer; }
            @media only screen and (max-width: 820px) {
              .accommodation-search-widget .inner-container .dropdown .scrollable .lodges-container .lodge-row .selector svg {
                padding: 10px; } }
            .accommodation-search-widget .inner-container .dropdown .scrollable .lodges-container .lodge-row .selector svg:hover {
              color: #a00; }
              @media (nothing) {
                .accommodation-search-widget .inner-container .dropdown .scrollable .lodges-container .lodge-row .selector svg:hover {
                  color: #c66; } }
          .accommodation-search-widget .inner-container .dropdown .scrollable .lodges-container .lodge-row .selector.disabled {
            color: #ccc; }
            .accommodation-search-widget .inner-container .dropdown .scrollable .lodges-container .lodge-row .selector.disabled svg {
              cursor: default; }
              .accommodation-search-widget .inner-container .dropdown .scrollable .lodges-container .lodge-row .selector.disabled svg:hover {
                color: inherit; }
          .accommodation-search-widget .inner-container .dropdown .scrollable .lodges-container .lodge-row .selector .count {
            display: inline-block;
            vertical-align: top;
            margin: 10px 5px 0 5px;
            font-size: 1.2em; }
            @media only screen and (max-width: 820px) {
              .accommodation-search-widget .inner-container .dropdown .scrollable .lodges-container .lodge-row .selector .count {
                margin-top: 15px;
                min-width: 20px;
                text-align: center; } }
        .accommodation-search-widget .inner-container .dropdown .scrollable .lodges-container .lodge-row .remove-button {
          color: #0f7fb5;
          cursor: pointer;
          position: absolute;
          right: 5px;
          top: 12px;
          font-size: 0.9em; }
          @media only screen and (max-width: 820px) {
            .accommodation-search-widget .inner-container .dropdown .scrollable .lodges-container .lodge-row .remove-button {
              right: 20px;
              top: 15px; } }
          .accommodation-search-widget .inner-container .dropdown .scrollable .lodges-container .lodge-row .remove-button svg {
            margin-right: 5px; }
          .accommodation-search-widget .inner-container .dropdown .scrollable .lodges-container .lodge-row .remove-button:hover {
            color: #a00;
            text-decoration: underline; }
      .accommodation-search-widget .inner-container .dropdown .add-lodge-wrapper .done-button {
        display: none; }
      @media only screen and (max-width: 820px) {
        .accommodation-search-widget .inner-container .dropdown .add-lodge-wrapper {
          display: block;
          width: 100%;
          text-align: right;
          padding-right: 20px;
          box-sizing: border-box; }
          .accommodation-search-widget .inner-container .dropdown .add-lodge-wrapper > * {
            margin: 10px; }
          .accommodation-search-widget .inner-container .dropdown .add-lodge-wrapper .done-button {
            display: inline-block; } }
      .accommodation-search-widget .inner-container .dropdown .add-lodge {
        font-size: 0.9em;
        cursor: pointer;
        margin-left: 10px;
        display: inline-block;
        color: #fefefe; }
        @media (nothing) {
          .accommodation-search-widget .inner-container .dropdown .add-lodge {
            color: #5c6d7f; } }
  .accommodation-search-widget .button-bar.mobile-availability {
    margin: 0;
    padding: 0 10px 20px 10px; }
    @media only screen and (min-width: 821px) {
      .accommodation-search-widget .button-bar.mobile-availability {
        display: none; } }
    .accommodation-search-widget .button-bar.mobile-availability .button-link {
      display: inline-block;
      transition: background-color linear 0.2s; }
      .accommodation-search-widget .button-bar.mobile-availability .button-link svg {
        margin-left: 5px;
        transition: transform linear 0.2s; }
  .accommodation-search-widget.sticky {
    position: fixed;
    top: 0;
    width: 100%;
    left: 0;
    z-index: 100;
    padding-top: 20px; }

.login-dialog {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 20; }
  @media only screen and (max-width: 820px) {
    .login-dialog {
      height: 100%;
      background-color: #fefefe;
      padding: 0;
      margin: 0;
      font-size: 1em; } }
  .login-dialog .curtain {
    width: 100%;
    height: 100%;
    background-color: rgba(100, 100, 100, 0.6); }
    @supports (-webkit-backdrop-filter: blur(10px)) or (backdrop-filter: blur(10px)) {
      .login-dialog .curtain {
        -webkit-backdrop-filter: blur(10px);
        backdrop-filter: blur(10px);
        background-color: transparent; } }
    @media only screen and (max-width: 820px) {
      .login-dialog .curtain {
        height: unset;
        width: unset;
        background-blur: unset;
        background-color: #fefefe; } }
  .login-dialog hr {
    border: none;
    border-top: solid 3px #eee; }
  .login-dialog .foreground {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    z-index: 100;
    border-radius: 5px;
    transition: all linear 0.1s;
    transition-property: width, height;
    background-color: #fefefe; }
    @media only screen and (max-width: 820px) {
      .login-dialog .foreground {
        padding-bottom: 100px; } }
    @media only screen and (min-width: 821px) {
      .login-dialog .foreground {
        box-shadow: rgba(40, 40, 40, 0.4) 2px 2px 10px; } }
    @media only screen and (max-width: 820px) {
      .login-dialog .foreground {
        position: unset;
        top: unset;
        left: unset;
        transform: none;
        z-index: 100;
        border-radius: 0;
        transition: none;
        transition-property: none;
        background-color: #fefefe;
        overflow: auto;
        height: 100%; } }
    .login-dialog .foreground .tabs {
      box-sizing: border-box;
      height: 50px;
      position: relative; }
      @media only screen and (max-width: 820px) {
        .login-dialog .foreground .tabs {
          height: 55px;
          font-size: 1.05em; } }
      .login-dialog .foreground .tabs > div {
        position: absolute;
        width: 50%;
        top: 0;
        text-align: center;
        height: 100%;
        padding-top: 5px;
        text-transform: uppercase;
        font-family: "roboto-regular";
        cursor: pointer; }
        .login-dialog .foreground .tabs > div:hover {
          text-decoration: underline; }
          @media only screen and (max-width: 820px) {
            .login-dialog .foreground .tabs > div:hover {
              text-decoration: none; } }
      .login-dialog .foreground .tabs .tab-sign-in {
        left: 0;
        border-top-left-radius: 5px; }
      .login-dialog .foreground .tabs .tab-register {
        right: 0;
        border-top-right-radius: 5px; }
      .login-dialog .foreground .tabs .tab-sign-in, .login-dialog .foreground .tabs .tab-register {
        background-color: #5c6d7f;
        color: #fefefe; }
      .login-dialog .foreground .tabs .sub-header {
        display: block;
        font-size: 0.65em;
        text-transform: initial;
        margin-top: -3px; }
      @media only screen and (max-width: 820px) {
        .login-dialog .foreground .tabs .tab-sign-in {
          left: 0;
          border-top-left-radius: 0;
          text-transform: capitalize; }
        .login-dialog .foreground .tabs .tab-register {
          right: 0;
          border-top-right-radius: 0;
          text-transform: capitalize; }
        .login-dialog .foreground .tabs .sub-header {
          display: block;
          font-size: 0.7em;
          text-transform: initial;
          margin-top: 0; } }
    .login-dialog .foreground .login-content, .login-dialog .foreground .register-content {
      border-radius: 0 0 5px 5px;
      padding: 20px;
      box-sizing: border-box;
      position: relative; }
      @media only screen and (max-width: 820px) {
        .login-dialog .foreground .login-content, .login-dialog .foreground .register-content {
          padding-bottom: 100px;
          height: auto; } }
      @media only screen and (max-width: 820px) {
        .login-dialog .foreground .login-content .description, .login-dialog .foreground .register-content .description {
          font-size: 0.8em;
          line-height: 0.8em;
          padding: 0;
          margin: 0; } }
      .login-dialog .foreground .login-content .field, .login-dialog .foreground .register-content .field {
        margin: 20px 0;
        box-sizing: border-box; }
        .login-dialog .foreground .login-content .field input, .login-dialog .foreground .register-content .field input {
          max-width: unset;
          width: 100%;
          border: 1px solid #ddd;
          border-radius: 5px;
          background-color: #fefefe;
          padding: 10px;
          box-sizing: border-box;
          outline: none; }
          @media only screen and (max-width: 820px) {
            .login-dialog .foreground .login-content .field input, .login-dialog .foreground .register-content .field input {
              padding: 15px 10px !important;
              font-size: 16px; }
              .login-dialog .foreground .login-content .field input::placeholder, .login-dialog .foreground .register-content .field input::placeholder {
                /* Chrome, Firefox, Opera, Safari 10.1+ */
                color: #ccc;
                opacity: 1;
                /* Firefox */ }
              .login-dialog .foreground .login-content .field input:-ms-input-placeholder, .login-dialog .foreground .register-content .field input:-ms-input-placeholder {
                /* Internet Explorer 10-11 */
                color: #ccc; }
              .login-dialog .foreground .login-content .field input::-ms-input-placeholder, .login-dialog .foreground .register-content .field input::-ms-input-placeholder {
                /* Microsoft Edge */
                color: #ccc; } }
        .login-dialog .foreground .login-content .field.password .password-wrapper, .login-dialog .foreground .register-content .field.password .password-wrapper {
          position: relative; }
          .login-dialog .foreground .login-content .field.password .password-wrapper a.show-password, .login-dialog .foreground .register-content .field.password .password-wrapper a.show-password {
            position: absolute;
            top: 6px;
            right: 10px;
            font-size: 1em; }
            .login-dialog .foreground .login-content .field.password .password-wrapper a.show-password.active, .login-dialog .foreground .register-content .field.password .password-wrapper a.show-password.active {
              color: #a00; }
          @media only screen and (max-width: 820px) {
            .login-dialog .foreground .login-content .field.password .password-wrapper a.show-password, .login-dialog .foreground .register-content .field.password .password-wrapper a.show-password {
              top: 12px;
              right: 14px;
              font-size: 1.2em; }
              @supports (-webkit-overflow-scrolling: touch) {
                .login-dialog .foreground .login-content .field.password .password-wrapper a.show-password, .login-dialog .foreground .register-content .field.password .password-wrapper a.show-password {
                  top: 14px; } } }
        .login-dialog .foreground .login-content .field.password-reset-link, .login-dialog .foreground .register-content .field.password-reset-link {
          font-size: 0.9em;
          text-align: center; }
          @media only screen and (max-width: 820px) {
            .login-dialog .foreground .login-content .field.password-reset-link, .login-dialog .foreground .register-content .field.password-reset-link {
              font-size: 0.8em; }
              .login-dialog .foreground .login-content .field.password-reset-link svg, .login-dialog .foreground .register-content .field.password-reset-link svg {
                display: none; } }
      .login-dialog .foreground .login-content .terms-tickbox, .login-dialog .foreground .register-content .terms-tickbox {
        margin-top: 30px; }
        .login-dialog .foreground .login-content .terms-tickbox .checkbox, .login-dialog .foreground .register-content .terms-tickbox .checkbox {
          padding-left: 25px;
          text-indent: -25px; }
          .login-dialog .foreground .login-content .terms-tickbox .checkbox span, .login-dialog .foreground .register-content .terms-tickbox .checkbox span {
            font-size: 0.8em;
            line-height: 0.2em;
            position: relative;
            top: -2px;
            padding-left: 5px; }
      .login-dialog .foreground .login-content .button-container, .login-dialog .foreground .register-content .button-container {
        text-align: center; }
        .login-dialog .foreground .login-content .button-container input[type="button"],
        .login-dialog .foreground .login-content .button-container input[type="submit"], .login-dialog .foreground .register-content .button-container input[type="button"],
        .login-dialog .foreground .register-content .button-container input[type="submit"] {
          -webkit-appearance: none; }
        .login-dialog .foreground .login-content .button-container .button-link, .login-dialog .foreground .register-content .button-container .button-link {
          display: inline-block;
          padding: 10px 20px; }
        @media only screen and (max-width: 820px) {
          .login-dialog .foreground .login-content .button-container .button-sub-link, .login-dialog .foreground .register-content .button-container .button-sub-link {
            display: none; } }
      .login-dialog .foreground .login-content .error, .login-dialog .foreground .register-content .error {
        color: #a00; }
    .login-dialog .foreground .login-content {
      width: 400px; }
      .login-dialog .foreground .login-content .sign-in-with-apple {
        text-align: center; }
        .login-dialog .foreground .login-content .sign-in-with-apple #appleid-signin {
          height: 38px;
          margin: 20px 0;
          display: inline-block; }
      @media only screen and (max-width: 820px) {
        .login-dialog .foreground .login-content {
          width: 100%; } }
    .login-dialog .foreground .register-content {
      width: 600px; }
      .login-dialog .foreground .register-content .label {
        margin: 20px 0 5px 0;
        text-transform: capitalize; }
      .login-dialog .foreground .register-content .field {
        margin: 0; }
      .login-dialog .foreground .register-content .button-container {
        margin-top: 15px; }
        .login-dialog .foreground .register-content .button-container .button-link {
          margin-top: 25px !important; }
      @media only screen and (max-width: 820px) {
        .login-dialog .foreground .register-content {
          width: 100%; } }
    .login-dialog .foreground.login {
      width: 400px; }
      .login-dialog .foreground.login .tabs .tab-sign-in {
        background-color: #fefefe;
        color: #5c6d7f; }
        @media only screen and (max-width: 820px) {
          .login-dialog .foreground.login .tabs .tab-sign-in {
            color: #555;
            text-transform: capitalize; } }
      .login-dialog .foreground.login .register-content {
        display: none; }
      @media only screen and (max-width: 820px) {
        .login-dialog .foreground.login {
          width: 100%; } }
    .login-dialog .foreground.register {
      width: 600px; }
      .login-dialog .foreground.register .tabs .tab-register {
        background-color: #fefefe;
        color: #5c6d7f; }
        @media only screen and (max-width: 820px) {
          .login-dialog .foreground.register .tabs .tab-register {
            color: #555;
            text-transform: capitalize; } }
      .login-dialog .foreground.register .login-content {
        display: none; }
      @media only screen and (max-width: 820px) {
        .login-dialog .foreground.register {
          width: 100%;
          height: 100%; } }

body.seq-0 .login-dialog hr {
  border-color: #e07272; }
  @media (nothing) {
    body.seq-0 .login-dialog hr {
      border-color: #4e2829; } }

body.seq-1 .login-dialog hr {
  border-color: #33a5dc; }
  @media (nothing) {
    body.seq-1 .login-dialog hr {
      border-color: #0f3142; } }

body.seq-2 .login-dialog hr {
  border-color: #f3af35; }
  @media (nothing) {
    body.seq-2 .login-dialog hr {
      border-color: #33250b; } }

body.seq-3 .login-dialog hr {
  border-color: #8fbe21; }
  @media (nothing) {
    body.seq-3 .login-dialog hr {
      border-color: #212C08; } }

body.seq-4 .login-dialog hr {
  border-color: #f6b592; }
  @media (nothing) {
    body.seq-4 .login-dialog hr {
      border-color: #6d2c08; } }

body.seq-5 .login-dialog hr {
  border-color: #343c52; }
  @media (nothing) {
    body.seq-5 .login-dialog hr {
      border-color: #343c52; } }

body.seq-6 .login-dialog hr {
  border-color: #4271a8; }
  @media (nothing) {
    body.seq-6 .login-dialog hr {
      border-color: #0f3d75; } }

.activity-split-banner-view {
  width: 100%;
  position: relative;
  display: block;
  text-align: center;
  background-color: #fafafa; }
  .activity-split-banner-view .inner-container {
    width: 100%;
    box-sizing: border-box;
    display: inline-block;
    text-align: left;
    padding: 0; }
    @media only screen and (max-width: 1024px) and (min-width: 821px) {
      .activity-split-banner-view .inner-container {
        padding: 0; } }
    .activity-split-banner-view .inner-container > div {
      height: 100%; }
    .activity-split-banner-view .inner-container .left-media {
      width: calc(100% - 475px);
      position: relative;
      vertical-align: top;
      height: 450px; }
      @media only screen and (min-width: 1025px) {
        .activity-split-banner-view .inner-container .left-media {
          display: inline-block;
          border: 10px solid #fefefe;
          border-top: 0;
          border-bottom: 0; } }
      @media only screen and (max-width: 1024px) and (min-width: 821px) {
        .activity-split-banner-view .inner-container .left-media {
          display: block;
          width: 100%; } }
      .activity-split-banner-view .inner-container .left-media .video-container {
        position: absolute;
        width: 100%;
        height: 100%;
        overflow: hidden; }
        .activity-split-banner-view .inner-container .left-media .video-container video {
          min-width: 100%;
          min-height: 100%;
          position: absolute;
          object-fit: cover;
          top: 0;
          left: 0;
          right: 0;
          bottom: 0;
          width: 50%;
          height: 50%; }
    .activity-split-banner-view .inner-container .right-content {
      width: 443px;
      background-color: #eee;
      color: #555;
      vertical-align: top;
      position: absolute;
      height: 450px; }
      @media only screen and (min-width: 1025px) {
        .activity-split-banner-view .inner-container .right-content {
          display: inline-block;
          margin-left: -3px;
          border-right: 10px solid #fefefe; } }
      @media only screen and (max-width: 1024px) and (min-width: 821px) {
        .activity-split-banner-view .inner-container .right-content {
          display: block;
          width: 100%;
          height: auto; } }
      .activity-split-banner-view .inner-container .right-content .favourite-view {
        position: absolute;
        top: 10px;
        right: 10px;
        font-size: 2em; }
      .activity-split-banner-view .inner-container .right-content .inner-content {
        width: 100%;
        text-align: center; }
        @media only screen and (min-width: 1025px) {
          .activity-split-banner-view .inner-container .right-content .inner-content {
            position: absolute;
            transform: translateY(-50%);
            top: 50%;
            display: inline-block; } }
        @media only screen and (max-width: 1024px) and (min-width: 821px) {
          .activity-split-banner-view .inner-container .right-content .inner-content {
            padding: 20px 0; } }
        .activity-split-banner-view .inner-container .right-content .inner-content .activity-title {
          font-family: "roboto-bold";
          font-size: 1.5em; }
        .activity-split-banner-view .inner-container .right-content .inner-content .reviews svg {
          color: #f1cb1b;
          font-size: 0.8em; }
        .activity-split-banner-view .inner-container .right-content .inner-content .reviews a {
          font-size: 0.8em;
          margin-left: 5px; }
        .activity-split-banner-view .inner-container .right-content .inner-content .activity-summary {
          margin-top: 5px;
          padding: 10px 20px;
          text-align: left;
          font-size: 0.9em; }
        .activity-split-banner-view .inner-container .right-content .inner-content .button-container {
          display: block;
          margin-top: 30px;
          text-align: center; }
          .activity-split-banner-view .inner-container .right-content .inner-content .button-container .button-link {
            padding: 10px 30px; }
        .activity-split-banner-view .inner-container .right-content .inner-content .activities-booking-notice {
          display: inline-block;
          font-size: 0.8em;
          margin-top: 30px;
          padding-top: 10px;
          border-top: 1px solid #555; }
        .activity-split-banner-view .inner-container .right-content .inner-content .activity-availability {
          margin-top: 20px;
          box-sizing: border-box;
          position: relative; }
          .activity-split-banner-view .inner-container .right-content .inner-content .activity-availability svg {
            margin-right: 5px; }
          .activity-split-banner-view .inner-container .right-content .inner-content .activity-availability .activity-availability-times {
            padding: 10px 20px;
            text-align: left;
            width: 100%;
            box-sizing: border-box; }
            .activity-split-banner-view .inner-container .right-content .inner-content .activity-availability .activity-availability-times .activity-date {
              display: inline-block;
              min-width: 47%;
              margin: 10px 5px; }
              @media only screen and (max-width: 1024px) and (min-width: 821px) {
                .activity-split-banner-view .inner-container .right-content .inner-content .activity-availability .activity-availability-times .activity-date {
                  min-width: 30%; } }
              @media only screen and (max-width: 820px) {
                .activity-split-banner-view .inner-container .right-content .inner-content .activity-availability .activity-availability-times .activity-date {
                  min-width: 40%; } }
              .activity-split-banner-view .inner-container .right-content .inner-content .activity-availability .activity-availability-times .activity-date .date-title {
                font-weight: bold; }
              .activity-split-banner-view .inner-container .right-content .inner-content .activity-availability .activity-availability-times .activity-date .times .time {
                margin-right: 10px; }
                .activity-split-banner-view .inner-container .right-content .inner-content .activity-availability .activity-availability-times .activity-date .times .time.sold-out {
                  color: #888;
                  text-decoration: line-through; }

.button-link {
  background-color: #54636e;
  padding: 5px 20px;
  color: #fefefe;
  font-size: 0.9em;
  cursor: pointer;
  border-radius: 5px;
  border: 0;
  font-family: "roboto-regular"; }
  @media (nothing) {
    .button-link {
      background-color: #290260;
      color: #999; } }
  .button-link:hover {
    color: #fefefe;
    background-color: #444554; }
    @media (nothing) {
      .button-link:hover {
        color: #999;
        background-color: #5c2593; } }
  .button-link.big {
    padding: 10px 20px;
    font-size: 1.2em;
    text-transform: none; }
  .button-link.disabled {
    background-color: #ccc !important;
    cursor: not-allowed; }
    .button-link.disabled:hover {
      background-color: #ccc !important; }
  .button-link.blue {
    background-color: #54636e;
    text-align: right; }
    .button-link.blue:hover {
      background-color: #444554; }
    @media (nothing) {
      .button-link.blue {
        background-color: #084060;
        color: #999; }
        .button-link.blue:hover {
          background-color: #5c6d7f;
          color: #084060; } }
  .button-link.red {
    background-color: #d26c69;
    text-align: right; }
    .button-link.red:hover {
      background-color: #a85654; }
    @media (nothing) {
      .button-link.red {
        background-color: #084060;
        color: #999; }
        .button-link.red:hover {
          background-color: #5c6d7f;
          color: #084060; } }
  .button-link.green {
    background-color: #1fb3b7; }
    .button-link.green:hover {
      background-color: #238083; }
    @media (nothing) {
      .button-link.green {
        color: #9c9;
        background-color: #065220; }
        .button-link.green:hover {
          background-color: #9c9;
          color: #474; } }
  .button-link.transparent {
    background-color: transparent;
    color: #555; }
  .button-link.light {
    background-color: #fefefe;
    color: #0f7fb5; }
  .button-link.light, .button-link.transparent {
    text-transform: none; }
    .button-link.light:hover, .button-link.transparent:hover {
      color: #a00;
      text-decoration: underline; }

.button-sub-link {
  padding: 5px 20px;
  color: #999;
  cursor: pointer;
  font-weight: bold; }
  .button-sub-link:hover {
    text-decoration: underline;
    color: #555; }
  @media only screen and (max-width: 820px) {
    .button-sub-link {
      text-decoration: underline;
      font-family: "roboto-regular";
      padding: 10px 20px; } }
  .button-sub-link.red {
    color: #a00; }
    .button-sub-link.red:hover {
      color: #a00; }

.button-bar {
  display: block;
  margin: 20px 0;
  text-align: center; }
  .button-bar .button-link {
    display: inline-block;
    margin: 0 10px; }

.favourite-view {
  color: #777; }

.back-link {
  display: block;
  padding: 0 15px; }

.rendered-image {
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  width: 100%;
  height: 100%; }
  @media only screen and (min-width: 1025px) {
    .rendered-image.mobile {
      display: none; } }
  @media only screen and (max-width: 1024px) and (min-width: 821px) {
    .rendered-image.mobile {
      display: none; } }
  @media only screen and (min-width: 1025px) {
    .rendered-image.tablet {
      display: none; } }
  @media only screen and (max-width: 820px) {
    .rendered-image.tablet {
      display: none; } }
  @media only screen and (max-width: 1024px) and (min-width: 821px) {
    .rendered-image.desktop {
      display: none; } }
  @media only screen and (max-width: 820px) {
    .rendered-image.desktop {
      display: none; } }

.activity-review-list h2 {
  margin-bottom: 5px; }

.activity-review-list .review-total {
  margin-bottom: 10px; }
  .activity-review-list .review-total .total {
    font-family: "roboto-bold";
    margin-right: 10px; }
  .activity-review-list .review-total .total-stars {
    color: #f1cb1b; }

.activity-review-list .review {
  padding: 20px 0;
  border-bottom: 1px solid #eee; }
  .activity-review-list .review:last-child {
    border-bottom: none; }
  .activity-review-list .review .name {
    font-family: "roboto-bold";
    margin-right: 10px; }
  .activity-review-list .review .rating {
    display: block;
    margin: 5px 0; }
    .activity-review-list .review .rating svg {
      color: #f1cb1b;
      font-size: 0.8em; }
  .activity-review-list .review .text {
    display: block; }

.article-carousel {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  position: relative; }
  .article-carousel:not(.panning) .articles-container .articles-container-slider {
    transition: left linear 0.2s; }
  .article-carousel .articles-container {
    overflow-x: auto; }
    .article-carousel .articles-container .articles-container-slider {
      width: -moz-max-content;
      width: -webkit-max-content;
      width: -o-max-content;
      white-space: nowrap;
      position: relative;
      padding: 10px 0; }
      .article-carousel .articles-container .articles-container-slider .article {
        display: inline-block;
        cursor: pointer;
        margin: 0 10px;
        width: 250px;
        position: relative;
        box-sizing: border-box;
        transition: transform ease-in-out 0.2s;
        color: #fefefe; }
        @media (nothing) {
          .article-carousel .articles-container .articles-container-slider .article {
            color: #999; } }
        .article-carousel .articles-container .articles-container-slider .article .image {
          width: 100%;
          box-sizing: border-box; }
        .article-carousel .articles-container .articles-container-slider .article .video-container {
          width: 100%;
          height: 100%; }
        .article-carousel .articles-container .articles-container-slider .article .cover {
          position: absolute;
          top: 0;
          left: 0;
          right: 0;
          bottom: 0;
          height: 100%;
          width: 100%;
          z-index: 2; }
        .article-carousel .articles-container .articles-container-slider .article .detail {
          padding: 10px;
          min-height: 100px;
          width: 100%;
          box-sizing: border-box;
          position: absolute;
          bottom: 0;
          left: 0; }
          .article-carousel .articles-container .articles-container-slider .article .detail .name {
            font-family: "roboto-regular";
            font-size: 0.7em;
            text-transform: uppercase; }
          .article-carousel .articles-container .articles-container-slider .article .detail .sub-title {
            font-size: 1em;
            white-space: normal; }
        .article-carousel .articles-container .articles-container-slider .article:hover {
          transform: scale(1.02); }
  .article-carousel .back-nav, .article-carousel .next-nav {
    font-size: 2em;
    padding: 20px;
    position: absolute;
    background-color: rgba(100, 100, 100, 0.6);
    top: 10px;
    color: #fefefe;
    opacity: 0;
    transition: opacity linear 0.2s;
    cursor: pointer;
    z-index: 2; }
    @supports (-webkit-backdrop-filter: blur(10px)) or (backdrop-filter: blur(10px)) {
      .article-carousel .back-nav, .article-carousel .next-nav {
        -webkit-backdrop-filter: blur(10px);
        backdrop-filter: blur(10px);
        background-color: transparent; } }
    .article-carousel .back-nav.back-nav, .article-carousel .next-nav.back-nav {
      left: 10px; }
    .article-carousel .back-nav.next-nav, .article-carousel .next-nav.next-nav {
      right: 10px; }
    .article-carousel .back-nav svg, .article-carousel .next-nav svg {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translateY(-50%) translateX(-50%); }
  .article-carousel.touch-device .back-nav, .article-carousel.touch-device .next-nav {
    display: none; }
  .article-carousel:hover:not(.panning) .back-nav, .article-carousel:hover:not(.panning) .next-nav {
    opacity: 1; }

.booking-items .period {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  margin-top: 40px; }
  .booking-items .period:first-child {
    margin-top: 20px; }
  .booking-items .period > div {
    display: inline-block;
    width: 100%;
    max-width: 200px;
    vertical-align: top;
    flex-direction: row;
    color: #fefefe;
    margin: 10px 10px;
    transition: transform ease-in-out 0.2s;
    flex: 0 0 200px;
    position: relative;
    cursor: pointer;
    min-height: 210px;
    box-sizing: border-box; }
    @media only screen and (max-width: 820px) {
      .booking-items .period > div {
        flex-grow: 1;
        flex-shrink: 1;
        max-width: unset; } }
    .booking-items .period > div.double {
      flex: 0 0 400px;
      max-width: 400px; }
      @media only screen and (max-width: 820px) {
        .booking-items .period > div.double {
          flex-grow: 1;
          flex-shrink: 1;
          max-width: unset; } }
    .booking-items .period > div:hover {
      transform: scale(1.02);
      color: #fefefe; }
      .booking-items .period > div:hover .view-more {
        color: #a00;
        text-decoration: underline; }
    .booking-items .period > div .image {
      background-size: cover; }
  .booking-items .period .reservation .date {
    position: absolute;
    top: -25px;
    left: 0;
    font-size: 0.8em; }
  .booking-items .period .reservation .payment-plan {
    background-color: #69a364;
    padding: 5px 10px;
    box-sizing: border-box;
    color: #fefefe;
    border-bottom: 1px solid #474;
    border-top: 1px solid #9c9; }
    .booking-items .period .reservation .payment-plan > span {
      display: block;
      line-height: 1.3em; }
      .booking-items .period .reservation .payment-plan > span:first-child {
        font-size: 1.1em;
        font-family: "roboto-bold";
        margin-bottom: 3px; }
        .booking-items .period .reservation .payment-plan > span:first-child svg {
          margin-right: 3px; }
      .booking-items .period .reservation .payment-plan > span span {
        white-space: nowrap; }
  .booking-items .period .reservation .details {
    padding: 5px 10px;
    box-sizing: border-box; }
    .booking-items .period .reservation .details .title {
      font-family: "roboto-regular";
      font-size: 0.7em;
      text-transform: uppercase;
      display: flex;
      flex-wrap: wrap;
      position: relative; }
      .booking-items .period .reservation .details .title > * {
        flex: 1 1 50%;
        width: auto;
        display: inline-block;
        flex-direction: row;
        vertical-align: top; }
      .booking-items .period .reservation .details .title .party {
        text-align: right; }
        .booking-items .period .reservation .details .title .party svg {
          margin-left: 10px; }
  .booking-items .period .pre-reg canvas {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    width: 100%;
    height: 80%; }
    .booking-items .period .pre-reg canvas stroke {
      width: 5px;
      color: blue; }
  .booking-items .period .pre-reg .amount {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    text-align: center;
    color: #fefefe;
    border-radius: 50%;
    overflow: hidden; }
    .booking-items .period .pre-reg .amount > span {
      position: absolute;
      left: 0;
      top: 50%;
      transform: translateY(-50%);
      width: 100%;
      text-align: center;
      display: block;
      color: #fefefe; }
      .booking-items .period .pre-reg .amount > span > span:first-child {
        font-size: 2em;
        display: block;
        font-family: "roboto-bold"; }
      .booking-items .period .pre-reg .amount > span > span:last-child {
        font-size: 0.9em;
        display: block;
        text-align: center;
        padding-left: 25px; }
  .booking-items .period .pre-reg > span {
    position: absolute;
    bottom: 5px;
    left: 10px;
    text-shadow: 2px 2px 13px rgba(40, 40, 40, 0.5), 2px 2px 13px rgba(40, 40, 40, 0.5), 3px 3px 13px rgba(40, 40, 40, 0.3);
    font-size: 0.8em;
    font-family: "roboto-regular";
    text-transform: uppercase; }
  .booking-items .period .planner .text {
    position: absolute;
    z-index: 1;
    bottom: 20px;
    padding: 5px 5px 5px 10px;
    font-size: 1.2em;
    font-family: "roboto-regular"; }
  .booking-items .period .activities .text {
    position: absolute;
    z-index: 1;
    top: 20px;
    right: 0;
    padding: 5px 10px 5px 5px;
    font-size: 1.2em;
    font-family: "roboto-regular"; }
  .booking-items .period .payments {
    text-align: center;
    padding: 10px 20px 20px 20px; }
    .booking-items .period .payments .date {
      position: relative;
      display: inline-block; }
      .booking-items .period .payments .date > * {
        top: 0;
        left: 0;
        text-align: center;
        width: 100%;
        box-sizing: border-box; }
      .booking-items .period .payments .date > span {
        font-size: 6em; }
      .booking-items .period .payments .date > div {
        bottom: 0;
        position: absolute;
        margin-top: 43px; }
        .booking-items .period .payments .date > div span {
          display: block;
          position: relative;
          line-height: 1em; }
          .booking-items .period .payments .date > div span:first-child {
            font-size: 0.8em;
            font-family: "roboto-regular"; }
          .booking-items .period .payments .date > div span:nth-child(2) {
            font-size: 1.4em;
            font-family: "roboto-regular";
            line-height: 1.1em; }
          .booking-items .period .payments .date > div span:last-child {
            font-size: 0.7em; }
    .booking-items .period .payments .text {
      margin-top: 10px;
      line-height: 1.2em; }
    .booking-items .period .payments .make-payment {
      text-align: right;
      font-size: 0.8em;
      text-transform: uppercase;
      font-family: "roboto-regular";
      position: absolute;
      bottom: 5px;
      right: 10px; }
      .booking-items .period .payments .make-payment svg {
        margin-left: 5px; }
  .booking-items .period .payment-plan.new .amount {
    border-radius: 50%;
    text-align: center;
    position: absolute;
    top: 5px;
    right: 5px;
    width: 90px;
    height: 90px;
    transform: rotate(20deg); }
    .booking-items .period .payment-plan.new .amount div {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      line-height: 1em; }
      .booking-items .period .payment-plan.new .amount div span:first-child {
        font-family: "roboto-bold";
        font-size: 1.2em; }
      .booking-items .period .payment-plan.new .amount div span:last-child {
        font-family: "roboto-regular";
        font-size: 0.8em; }
  .booking-items .period .payment-plan.new .text {
    font-size: 0.8em;
    font-family: "roboto-regular";
    text-align: right;
    text-shadow: 2px 2px 13px rgba(40, 40, 40, 0.5), 2px 2px 13px rgba(40, 40, 40, 0.5), 3px 3px 13px rgba(40, 40, 40, 0.3);
    text-transform: uppercase;
    position: absolute;
    bottom: 5px;
    right: 10px; }
    .booking-items .period .payment-plan.new .text svg {
      margin-left: 5px; }
  .booking-items .period .payment-plan.active {
    text-align: center;
    padding: 10px 20px;
    background-color: #91bd21; }
    .booking-items .period .payment-plan.active div:first-child {
      font-family: "roboto-regular"; }
    .booking-items .period .payment-plan.active .icon {
      position: relative;
      display: inline-block;
      margin-top: 10px; }
      .booking-items .period .payment-plan.active .icon > * {
        top: 0;
        left: 0;
        text-align: center;
        width: 100%;
        box-sizing: border-box; }
      .booking-items .period .payment-plan.active .icon > span {
        font-size: 3em; }
    .booking-items .period .payment-plan.active .status {
      font-size: 0.8em;
      font-family: "roboto-bold";
      text-transform: uppercase;
      margin-top: 5px; }
    .booking-items .period .payment-plan.active div:last-child {
      text-align: left;
      font-size: 0.9em;
      position: absolute;
      bottom: 0;
      left: 0;
      box-sizing: border-box;
      padding: 10px; }
  .booking-items .period .bluestone-foundation {
    background-color: #5c6d7f;
    position: relative;
    overflow: hidden; }
    .booking-items .period .bluestone-foundation div .rendered-image {
      position: absolute;
      width: 220px;
      height: 220px;
      transform: translateX(-20%) translateY(-20%);
      background-size: contain; }
    .booking-items .period .bluestone-foundation div .text {
      display: block;
      position: absolute;
      bottom: 5px;
      width: 100%;
      text-align: center;
      font-size: 0.8em;
      text-transform: uppercase;
      font-family: "roboto-regular"; }
    .booking-items .period .bluestone-foundation div .amount {
      font-family: "roboto-bold";
      font-size: 2.8em;
      position: absolute;
      right: 10px;
      bottom: 50px; }
  .booking-items .period .vehicle-rental .drivers {
    position: absolute;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    box-sizing: border-box;
    flex-flow: row-reverse;
    bottom: 0;
    left: 0;
    right: 0; }
    .booking-items .period .vehicle-rental .drivers .driver {
      margin: 5px;
      position: relative;
      display: block;
      padding: 2px;
      border-radius: 50%; }
      .booking-items .period .vehicle-rental .drivers .driver .pro-pic {
        padding: 2px;
        border-radius: 50%;
        position: relative; }
        .booking-items .period .vehicle-rental .drivers .driver .pro-pic .profile-picture-mini {
          padding: 0;
          cursor: pointer; }
          .booking-items .period .vehicle-rental .drivers .driver .pro-pic .profile-picture-mini div {
            padding: 0;
            margin: 0; }
        .booking-items .period .vehicle-rental .drivers .driver .pro-pic svg {
          position: absolute;
          bottom: -1px;
          right: -1px;
          background: #fefefe;
          padding: 1px;
          border-radius: 50%;
          font-size: 0.8em;
          color: #a00; }
      .booking-items .period .vehicle-rental .drivers .driver.pending .pro-pic svg {
        color: #d3724a; }
      .booking-items .period .vehicle-rental .drivers .driver.completed .pro-pic svg {
        color: #69a364; }
  .booking-items .period .vehicle-rental .image {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0; }
  .booking-items .period .vehicle-rental > div.title {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding: 5px;
    box-sizing: border-box;
    font-size: 0.8em;
    font-family: "roboto-regular";
    text-transform: uppercase; }
  .booking-items .period .vehicle-rental .none {
    position: absolute;
    left: 0;
    bottom: 0;
    right: 0;
    padding: 10px;
    background-color: #758e8e;
    display: flex;
    align-items: center; }
    .booking-items .period .vehicle-rental .none svg {
      flex: 0 0 40px; }
  .booking-items .period .image {
    position: relative; }

.booking-checklist {
  margin: 20px 0;
  padding: 0; }
  .booking-checklist li {
    padding: 10px 20px;
    border: 2px solid #a00;
    color: #a00;
    display: inline-block;
    border-radius: 25px;
    text-align: left;
    margin-right: 20px;
    position: relative; }
    .booking-checklist li.complete {
      border-color: #474;
      color: #474; }
      .booking-checklist li.complete span {
        font-size: 2em;
        position: absolute;
        top: -10px;
        right: -10px; }
        .booking-checklist li.complete span svg path {
          stroke: #fefefe;
          stroke-width: 50px;
          stroke-linejoin: round; }
  .booking-checklist a:hover li {
    background-color: #a00;
    color: #fefefe; }
    .booking-checklist a:hover li.complete {
      background-color: #474;
      color: #fefefe; }
  @media only screen and (max-width: 820px) {
    .booking-checklist {
      margin-bottom: 0; }
      .booking-checklist li {
        margin-bottom: 10px; } }

.article-carousel.collage .articles-container .articles-container-slider .article {
  position: relative;
  vertical-align: top; }
  .article-carousel.collage .articles-container .articles-container-slider .article .image {
    position: absolute;
    top: 0;
    left: 0;
    vertical-align: top;
    width: 100%;
    height: 100%;
    color: #fefefe; }
    .article-carousel.collage .articles-container .articles-container-slider .article .image .inner-container {
      position: absolute;
      left: 20px;
      top: 20px; }
      .article-carousel.collage .articles-container .articles-container-slider .article .image .inner-container .name {
        font-family: "roboto-regular";
        font-size: 1.8em;
        margin: 0 0 5px 0;
        text-shadow: 2px 2px 13px rgba(40, 40, 40, 0.5), 2px 2px 13px rgba(40, 40, 40, 0.5), 3px 3px 13px rgba(40, 40, 40, 0.3); }
      .article-carousel.collage .articles-container .articles-container-slider .article .image .inner-container .sub-title {
        margin: 0;
        text-shadow: 2px 2px 13px rgba(40, 40, 40, 0.5), 2px 2px 13px rgba(40, 40, 40, 0.5), 3px 3px 13px rgba(40, 40, 40, 0.3); }
    .article-carousel.collage .articles-container .articles-container-slider .article .image:hover {
      color: #fefefe;
      transform: scale(1.02); }
  .article-carousel.collage .articles-container .articles-container-slider .article.first .image .inner-container {
    right: 20px;
    bottom: 20px;
    top: auto;
    left: auto;
    text-align: right; }

.article-carousel.collage .articles-container .articles-container-slider .vertical-combo {
  display: inline-block;
  vertical-align: top;
  margin-left: 10px; }
  .article-carousel.collage .articles-container .articles-container-slider .vertical-combo .article {
    display: block;
    margin: 0;
    padding: 0; }
    .article-carousel.collage .articles-container .articles-container-slider .vertical-combo .article:last-child {
      margin-top: 20px; }

.article-carousel.collage .articles-container .articles-container-slider .triple-combo {
  position: relative;
  display: inline-block;
  vertical-align: top;
  margin-left: 20px;
  margin-right: 10px; }
  .article-carousel.collage .articles-container .articles-container-slider .triple-combo > .article:not(.bottom), .article-carousel.collage .articles-container .articles-container-slider .triple-combo > .horizontal-combo:not(.bottom) {
    display: block; }
  .article-carousel.collage .articles-container .articles-container-slider .triple-combo .article {
    margin: 0;
    padding: 0; }
  .article-carousel.collage .articles-container .articles-container-slider .triple-combo .horizontal-combo {
    display: inline-block;
    vertical-align: top; }
    .article-carousel.collage .articles-container .articles-container-slider .triple-combo .horizontal-combo .article:last-child {
      margin-left: 17px; }
  .article-carousel.collage .articles-container .articles-container-slider .triple-combo .bottom {
    margin-top: 20px; }

@media only screen and (max-width: 820px) {
  .article-carousel.collage {
    min-height: 350px;
    max-height: 350px; }
    .article-carousel.collage .articles-container {
      overflow-y: hidden; }
      .article-carousel.collage .articles-container .articles-container-slider {
        min-height: 350px;
        max-height: 350px; }
        .article-carousel.collage .articles-container .articles-container-slider .article.first {
          min-width: 525px;
          min-height: 350px;
          max-width: 525px;
          max-height: 350px; }
          .article-carousel.collage .articles-container .articles-container-slider .article.first .image {
            background-size: cover; }
        .article-carousel.collage .articles-container .articles-container-slider .vertical-combo .article {
          min-width: 258px;
          min-height: 165px;
          max-width: 258px;
          max-height: 165px; }
          .article-carousel.collage .articles-container .articles-container-slider .vertical-combo .article .image {
            background-size: cover; }
            .article-carousel.collage .articles-container .articles-container-slider .vertical-combo .article .image .inner-container {
              width: calc(100% - 40px); }
              .article-carousel.collage .articles-container .articles-container-slider .vertical-combo .article .image .inner-container .name {
                font-size: 1.6em; }
        .article-carousel.collage .articles-container .articles-container-slider .triple-combo .article {
          min-width: 537px;
          min-height: 165px;
          max-width: 537px;
          max-height: 165px; }
          .article-carousel.collage .articles-container .articles-container-slider .triple-combo .article .image {
            background-size: cover; }
        .article-carousel.collage .articles-container .articles-container-slider .triple-combo .horizontal-combo .article {
          min-width: 258px;
          min-height: 165px;
          max-width: 258px;
          max-height: 165px; }
          .article-carousel.collage .articles-container .articles-container-slider .triple-combo .horizontal-combo .article .image {
            background-size: cover; }
            .article-carousel.collage .articles-container .articles-container-slider .triple-combo .horizontal-combo .article .image .inner-container {
              width: calc(100% - 40px); }
              .article-carousel.collage .articles-container .articles-container-slider .triple-combo .horizontal-combo .article .image .inner-container .name {
                font-size: 1.6em; }
    .article-carousel.collage .back-nav, .article-carousel.collage .next-nav {
      min-height: 310px;
      max-height: 310px; } }

.vertical-article-collage {
  position: relative; }
  .vertical-article-collage .article {
    height: 250px;
    display: inline-block;
    position: relative;
    cursor: pointer;
    transition: transform ease-in-out 0.2s;
    overflow: hidden;
    border-radius: 5px; }
    @media only screen and (max-width: 820px) {
      .vertical-article-collage .article {
        border-radius: 0;
        margin: 15px 0 0 0; } }
    .vertical-article-collage .article .image {
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%; }
    .vertical-article-collage .article .curtain {
      width: 100%;
      height: 100%;
      position: absolute;
      top: 0;
      left: 0;
      z-index: 2; }
      .vertical-article-collage .article .curtain .inner-container {
        position: absolute;
        left: 0;
        top: 50%;
        transform: translateY(-50%);
        color: #fefefe;
        width: 100%;
        text-align: center; }
        .vertical-article-collage .article .curtain .inner-container .name {
          font-family: "roboto-regular";
          font-size: 1.6em;
          text-shadow: 2px 2px 13px rgba(40, 40, 40, 0.5), 2px 2px 13px rgba(40, 40, 40, 0.5), 3px 3px 13px rgba(40, 40, 40, 0.3); }
        .vertical-article-collage .article .curtain .inner-container .sub-title {
          margin-top: 15px;
          font-size: 1.2em;
          text-shadow: 2px 2px 13px rgba(40, 40, 40, 0.5), 2px 2px 13px rgba(40, 40, 40, 0.5), 3px 3px 13px rgba(40, 40, 40, 0.3); }
    @media only screen and (min-width: 1025px) {
      .vertical-article-collage .article:hover {
        transform: scale(1.02); }
        .vertical-article-collage .article:hover .image {
          transform: scale(1.4);
          transition: transform ease-out 30s; }
        .vertical-article-collage .article:hover .curtain {
          background-color: rgba(87, 126, 151, 0.8); } }
  .vertical-article-collage .stack {
    display: inline-block;
    width: 33%; }
    @media only screen and (max-width: 820px) {
      .vertical-article-collage .stack {
        width: 100%;
        display: block; } }
    .vertical-article-collage .stack .article {
      width: 100%;
      display: block; }
      .vertical-article-collage .stack .article:first-child {
        margin-bottom: 10px; }
      .vertical-article-collage .stack .article:last-child {
        margin-top: 10px; }
      @media only screen and (max-width: 820px) {
        .vertical-article-collage .stack .article:first-child, .vertical-article-collage .stack .article:last-child {
          margin: 15px 0 0 0; } }
  .vertical-article-collage .block-1 > .article:first-child {
    width: calc(66% - 10px);
    height: 510px;
    margin-right: 10px; }
  .vertical-article-collage .block-2 > .article:last-child {
    width: calc(66% - 10px);
    height: 510px;
    margin-left: 10px; }
  .vertical-article-collage .block-1, .vertical-article-collage .block-2 {
    margin: 5px 0; }
    @media only screen and (max-width: 820px) {
      .vertical-article-collage .block-1, .vertical-article-collage .block-2 {
        margin: 0; }
        .vertical-article-collage .block-1 > .article, .vertical-article-collage .block-1 > .article:first-child, .vertical-article-collage .block-1 > .article:last-child, .vertical-article-collage .block-1 .article, .vertical-article-collage .block-2 > .article, .vertical-article-collage .block-2 > .article:first-child, .vertical-article-collage .block-2 > .article:last-child, .vertical-article-collage .block-2 .article {
          width: 100%;
          height: 250px;
          display: block;
          margin: 15px 0 0 0;
          padding: 0; } }

.article-showcase {
  height: 500px;
  text-align: center;
  position: relative;
  margin-top: 90px;
  margin-bottom: 90px;
  padding: 0; }
  @media only screen and (max-width: 820px) {
    .article-showcase {
      position: unset;
      overflow: unset;
      height: unset;
      padding-bottom: 40px; } }
  @media only screen and (max-width: 820px) {
    .article-showcase.animate .inner-container .right-container {
      opacity: 0; }
      .article-showcase.animate .inner-container .right-container .inner-content {
        transform: translateY(-50%);
        opacity: 0; } }
  .article-showcase .inner-container {
    display: inline-block;
    width: 100%;
    height: 500px;
    /*max-width: $max-width + px;*/
    position: relative;
    top: 0; }
    .article-showcase .inner-container .image {
      position: absolute;
      left: 0;
      top: 0;
      height: 500px;
      width: 50%;
      max-width: 100%; }
    .article-showcase .inner-container .right-container {
      height: 100%;
      width: 50%;
      top: 0;
      left: 50%;
      position: absolute;
      max-width: 100%;
      transition: opacity ease-out 0.2s; }
      @media only screen and (min-width: 821px) {
        .article-showcase .inner-container .right-container {
          /*left: $image-width + px;*/ } }
      .article-showcase .inner-container .right-container .inner-content {
        text-align: left;
        position: absolute;
        width: 85%;
        top: 40%;
        left: 0;
        transform: translateY(-50%);
        color: #fefefe;
        padding-left: 40px;
        padding-top: 30px;
        box-sizing: border-box;
        transition: transform ease-out 1s;
        transition-property: transform, opacity; }
        .article-showcase .inner-container .right-container .inner-content .name {
          font-family: "roboto-regular";
          font-size: 2em;
          line-height: 1em; }
        .article-showcase .inner-container .right-container .inner-content .description {
          margin-top: 15px;
          font-size: 1em;
          line-height: 1.5em; }
        .article-showcase .inner-container .right-container .inner-content .button-container {
          margin-top: 60px;
          position: relative; }
          .article-showcase .inner-container .right-container .inner-content .button-container .find-out-more-button {
            background-color: #fefefe;
            padding: 10px 30px;
            border-radius: 25px;
            color: #577e97;
            font-size: 0.9em; }
            .article-showcase .inner-container .right-container .inner-content .button-container .find-out-more-button:hover {
              text-decoration: underline; }
        .article-showcase .inner-container .right-container .inner-content .tags {
          margin-top: 60px; }
          .article-showcase .inner-container .right-container .inner-content .tags .tag {
            display: inline-block;
            padding: 0 20px;
            border-right: 1px solid;
            font-family: "roboto-regular"; }
            .article-showcase .inner-container .right-container .inner-content .tags .tag:first-child {
              padding-left: 0; }
            .article-showcase .inner-container .right-container .inner-content .tags .tag:last-child {
              padding-right: 0;
              border-right: none; }
    @media only screen and (max-width: 820px) {
      .article-showcase .inner-container {
        position: unset; }
        .article-showcase .inner-container .image {
          position: unset;
          width: 100%;
          clear: both; }
        .article-showcase .inner-container .right-container {
          position: unset;
          width: 100%;
          display: block;
          left: 0; }
          .article-showcase .inner-container .right-container .inner-content {
            position: unset;
            width: calc(100% - 15px);
            padding-left: 15px;
            margin-top: -10px;
            transform: initial;
            transition: transform ease-out 300ms; }
            .article-showcase .inner-container .right-container .inner-content .tags {
              display: none; } }

.umbraco-forms-page fieldset legend {
  color: #5c6d7f;
  font-size: 1.6em;
  padding: 0; }

.umbraco-forms-page .umbraco-forms-field {
  margin-bottom: 30px; }
  .umbraco-forms-page .umbraco-forms-field .radiobuttonlist {
    margin-left: 20px; }
    .umbraco-forms-page .umbraco-forms-field .radiobuttonlist label {
      line-height: 3em; }
  .umbraco-forms-page .umbraco-forms-field .checkboxlist {
    margin-left: 20px;
    padding-left: 0; }
    .umbraco-forms-page .umbraco-forms-field .checkboxlist label {
      clear: none !important;
      float: none !important;
      line-height: 3em; }
  .umbraco-forms-page .umbraco-forms-field textarea {
    max-width: none !important; }

.showcase {
  height: 500px;
  margin: 40px 0; }
  .showcase .placeholder {
    position: relative;
    height: 500px;
    width: 100%;
    z-index: -1; }
  .showcase .inner-container {
    height: 500px;
    position: absolute;
    left: 0;
    width: 100vw; }
    .showcase .inner-container .overlay {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%; }
      .showcase .inner-container .overlay .inner-content {
        width: 100%;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        color: #fefefe;
        text-align: center;
        padding: 0 15px;
        box-sizing: border-box; }
        .showcase .inner-container .overlay .inner-content .name {
          font-family: "roboto-bold";
          font-size: 2em;
          text-shadow: 2px 2px 13px rgba(40, 40, 40, 0.5), 2px 2px 13px rgba(40, 40, 40, 0.5), 3px 3px 13px rgba(40, 40, 40, 0.3);
          line-height: 1em; }
        .showcase .inner-container .overlay .inner-content .description {
          display: none; }
        .showcase .inner-container .overlay .inner-content .button-container {
          margin-top: 60px; }
          .showcase .inner-container .overlay .inner-content .button-container a {
            padding: 10px 15px;
            border: 2px solid white;
            color: #fefefe;
            font-size: 1.0em;
            text-shadow: 2px 2px 13px rgba(40, 40, 40, 0.5), 2px 2px 13px rgba(40, 40, 40, 0.5), 3px 3px 13px rgba(40, 40, 40, 0.3);
            font-family: "roboto-regular";
            border-radius: 25px;
            box-shadow: rgba(0, 0, 0, 0.5) 1px 1px 1px;
            background-color: none; }
            .showcase .inner-container .overlay .inner-content .button-container a:hover {
              background-color: #fefefe;
              color: #5c6d7f;
              text-shadow: none; }

.single-column-format .showcase-section {
  box-sizing: initial; }

.single-column-format .showcase {
  max-width: initial;
  margin-left: -15px;
  width: 100vw; }

.breadcrumb-view {
  padding: 0;
  margin-bottom: 30px;
  font-size: 0.8em; }
  .breadcrumb-view li {
    display: inline-block;
    margin: 0 10px; }
    .breadcrumb-view li:first-child {
      margin-left: 0; }
    .breadcrumb-view li:last-child {
      margin-right: 0; }
    .breadcrumb-view li a {
      color: #a00; }
      .breadcrumb-view li a:hover {
        text-decoration: underline; }
      @media (nothing) {
        .breadcrumb-view li a {
          color: #c66; } }

.social-share-view {
  margin: 20px 0;
  text-align: center; }
  .social-share-view .share-title {
    font-family: "roboto-regular";
    font-size: 0.9em;
    text-transform: uppercase; }
  .social-share-view .icons {
    font-size: 1.8em;
    margin: 10px 0; }
    .social-share-view .icons svg {
      margin-right: 10px;
      cursor: pointer;
      transition: border-bottom-color ease-out 0.2s;
      padding-bottom: 5px;
      border-bottom: 5px solid transparent; }
    .social-share-view .icons .facebook {
      color: #3b5998; }
      .social-share-view .icons .facebook:hover {
        border-bottom-color: #3b5998; }
    .social-share-view .icons .twitter {
      color: #38a1f3; }
      .social-share-view .icons .twitter:hover {
        border-bottom-color: #38a1f3; }
    .social-share-view .icons .pinterest {
      color: #bd081c; }
      .social-share-view .icons .pinterest:hover {
        border-bottom-color: #bd081c; }
    .social-share-view .icons .email {
      color: #0a0; }
      .social-share-view .icons .email:hover {
        border-bottom-color: #0a0; }

.float-module-view {
  box-sizing: border-box;
  min-height: 400px;
  position: relative;
  margin-top: 30px; }
  @media only screen and (max-width: 820px) {
    .float-module-view {
      position: unset; } }
  .float-module-view.right .rendered-image, .float-module-view.right .video-container {
    left: auto;
    right: 0; }
  .float-module-view.right .content {
    right: auto;
    left: 0; }
  @supports (animation-fill-mode: forwards) and (not (-ms-ime-align: auto)) {
    .float-module-view.animate .content {
      transform: translateX(25px);
      opacity: 0; }
      .float-module-view.animate .content.right {
        transform: translateX(-25px); } }
  .float-module-view .rendered-image, .float-module-view .video-container {
    position: absolute;
    top: 0;
    left: 0;
    width: 50%;
    height: 100%; }
    @media only screen and (max-width: 820px) {
      .float-module-view .rendered-image, .float-module-view .video-container {
        position: relative;
        height: 400px;
        width: 100%;
        border-radius: 10px; } }
  .float-module-view .content {
    width: 50%;
    height: 100%;
    right: 0;
    position: absolute;
    transition: transform ease 0.8s;
    transition-property: transform, opacity; }
    @media only screen and (max-width: 820px) {
      .float-module-view .content {
        position: unset;
        display: block;
        width: 100%; } }
    .float-module-view .content .content-container {
      padding: 20px 60px;
      box-sizing: border-box;
      position: absolute;
      top: 50%;
      transform: translateY(-50%); }
      @media only screen and (max-width: 1024px) and (min-width: 821px) {
        .float-module-view .content .content-container {
          padding: 20px 40px; } }
      @media only screen and (max-width: 820px) {
        .float-module-view .content .content-container {
          position: unset;
          padding: 20px 0;
          display: block;
          color: #666;
          transform: initial; } }
      .float-module-view .content .content-container .title {
        display: block;
        font-family: "roboto-regular";
        font-size: 1.4em;
        margin-bottom: 10px; }
      .float-module-view .content .content-container .description {
        font-size: 1em;
        line-height: 1.5em;
        display: block; }
      .float-module-view .content .content-container .button-bar {
        margin: 30px 0 0 0;
        display: block;
        padding: 0;
        text-align: left; }
        @media only screen and (max-width: 820px) {
          .float-module-view .content .content-container .button-bar .button-link-macro {
            margin: 20px 0 0 0; } }
        .float-module-view .content .content-container .button-bar .button-link-macro:first-child .button-link:first-child {
          margin-left: 0; }

.gallery-view {
  margin-top: 30px; }
  @media only screen and (max-width: 820px) {
    .gallery-view {
      max-width: 100vw;
      width: 100vw;
      border-bottom: 3px solid #555; } }
  .gallery-view .image {
    width: calc(49% - 15px);
    display: inline-block;
    margin-bottom: 30px; }
    .gallery-view .image:nth-child(odd) {
      margin-right: 30px; }
    .gallery-view .image .rendered-image {
      border-radius: 10px; }
    @media only screen and (max-width: 820px) {
      .gallery-view .image {
        width: 100%;
        display: block;
        margin: 0; }
        .gallery-view .image .rendered-image {
          border-radius: 0;
          margin-left: -15px;
          border-top: 3px solid #555; } }

.menu-section {
  background-color: #fefefe;
  position: absolute;
  width: 100%;
  padding: 0 0 0 30px;
  left: 0;
  margin: 0;
  visibility: hidden;
  box-sizing: border-box;
  transition: all ease-out 0.2s;
  align-content: center;
  text-align: left;
  box-shadow: rgba(40, 40, 40, 0.5) 5px 3px 5px;
  z-index: 4; }
  @media (nothing) {
    .menu-section {
      background-color: #334;
      color: #999; } }
  @media only screen and (max-width: 820px) {
    .menu-section {
      background-color: #758e8e;
      position: absolute;
      top: 0;
      left: 0;
      width: 100vw;
      height: auto;
      z-index: 20;
      padding-left: 0; } }
  .menu-section.show {
    visibility: visible; }
    .menu-section.show .menu-items {
      opacity: 1;
      transform: translateX(0); }
    .menu-section.show .sub-menu-items {
      opacity: 1;
      transform: translateY(0); }
  .menu-section .menu-items {
    width: 63%;
    display: inline-block;
    box-sizing: border-box;
    opacity: 0;
    text-align: right; }
    @media only screen and (max-width: 820px) {
      .menu-section .menu-items {
        width: 100%;
        display: block; } }
    @media only screen and (min-width: 821px) {
      .menu-section .menu-items {
        transform: translateX(50px);
        transition: all ease-out 0.2s; } }
    .menu-section .menu-items .inner {
      text-align: left; }
      .menu-section .menu-items .inner .menu-item {
        cursor: pointer;
        position: relative; }
        @media only screen and (min-width: 821px) {
          .menu-section .menu-items .inner .menu-item {
            display: inline-block;
            margin: 30px 0 30px 30px; } }
        @media only screen and (max-width: 820px) {
          .menu-section .menu-items .inner .menu-item {
            position: relative;
            min-height: 70px;
            border-bottom: 3px solid #3a4747; }
            .menu-section .menu-items .inner .menu-item > * {
              vertical-align: middle; } }
        @media only screen and (min-width: 821px) {
          .menu-section .menu-items .inner .menu-item .image {
            width: 160px;
            height: 100px;
            border-radius: 10px;
            transition: transform ease-in-out 0.2s; } }
        @media only screen and (max-width: 820px) {
          .menu-section .menu-items .inner .menu-item .image {
            width: 100px;
            height: 100%;
            min-height: 70px;
            display: inline-block;
            margin-right: 10px; } }
        @media only screen and (min-width: 821px) {
          .menu-section .menu-items .inner .menu-item .title {
            text-align: center;
            color: #666;
            padding: 5px;
            font-size: 0.9em; } }
        @media (nothing) {
          .menu-section .menu-items .inner .menu-item .title {
            color: #999; } }
        @media only screen and (max-width: 820px) {
          .menu-section .menu-items .inner .menu-item .title {
            color: #fefefe;
            display: inline-block; } }
        @media only screen and (min-width: 821px) {
          .menu-section .menu-items .inner .menu-item:hover .image {
            transform: scale(1.03); }
          .menu-section .menu-items .inner .menu-item:hover .title {
            color: #a00; } }
  @media only screen and (min-width: 821px) and (nothing) {
    .menu-section .menu-items .inner .menu-item:hover .title {
      color: #c66; } }
        @media only screen and (max-width: 820px) {
          .menu-section .menu-items .inner .menu-item:hover {
            background-color: #3a4747; } }
  .menu-section .sub-menu-items {
    width: 30%;
    position: relative;
    color: #666;
    vertical-align: top;
    padding-left: 20px;
    box-sizing: border-box;
    border-left: 1px solid #eee;
    opacity: 0;
    line-height: 1em;
    margin: 20px;
    display: inline-block; }
    @media (nothing) {
      .menu-section .sub-menu-items {
        color: #999; } }
    @media only screen and (max-width: 820px) {
      .menu-section .sub-menu-items {
        background-color: #f3edd6;
        width: 100%;
        margin: 0;
        padding-top: 20px; } }
    @media only screen and (min-width: 821px) {
      .menu-section .sub-menu-items {
        transition: all ease 0.2s;
        transition-delay: 0.2s;
        transform: translateY(50px); } }
    .menu-section .sub-menu-items div:first-child {
      font-size: 1em;
      font-family: "roboto-regular"; }
      @media (nothing) {
        .menu-section .sub-menu-items div:first-child {
          color: #999; } }
    .menu-section .sub-menu-items ul {
      padding: 0;
      margin: 0;
      list-style: none; }
      @media only screen and (max-width: 820px) {
        .menu-section .sub-menu-items ul {
          padding-left: 10px; } }
      .menu-section .sub-menu-items ul li {
        font-size: 0.9em;
        margin: 10px 0;
        color: #0f7fb5;
        cursor: pointer;
        display: block; }
        .menu-section .sub-menu-items ul li svg {
          display: none; }
        @media only screen and (max-width: 820px) {
          .menu-section .sub-menu-items ul li {
            margin: 30px 0;
            position: relative; }
            .menu-section .sub-menu-items ul li > * {
              vertical-align: middle; }
            .menu-section .sub-menu-items ul li svg {
              font-size: 0.8em;
              margin-right: 3px;
              display: inline-block;
              color: #3a4747; }
            .menu-section .sub-menu-items ul li span {
              font-family: "roboto-regular"; } }
        @media (nothing) {
          .menu-section .sub-menu-items ul li {
            color: #5c6d7f; }
            .menu-section .sub-menu-items ul li:hover {
              color: #c66; } }
        .menu-section .sub-menu-items ul li:hover {
          color: #a00; }
    .menu-section .sub-menu-items .landing-page-button {
      margin: 30px 0; }
      @media only screen and (max-width: 820px) {
        .menu-section .sub-menu-items .landing-page-button {
          margin: 40px 0; } }
      .menu-section .sub-menu-items .landing-page-button a {
        color: #fefefe;
        background-color: #a00;
        padding: 10px;
        border-radius: 5px;
        cursor: pointer;
        text-align: center;
        width: 40%; }
        .menu-section .sub-menu-items .landing-page-button a:hover {
          background-color: #c22; }
        @media (nothing) {
          .menu-section .sub-menu-items .landing-page-button a {
            background-color: #290260; }
            .menu-section .sub-menu-items .landing-page-button a:hover {
              background-color: #7e47b5; } }

.mobile-header {
  display: none;
  height: 70px;
  z-index: 12; }
  @media only screen and (max-width: 820px) {
    .mobile-header {
      display: block; } }
  @media only screen and (max-width: 820px) {
    .mobile-header div {
      color: #fefefe;
      background-color: #5c6d7f;
      padding: 0;
      width: 100%;
      box-sizing: border-box;
      height: 70px; }
      .mobile-header div a {
        display: block;
        position: absolute;
        top: 23px;
        color: #fefefe;
        font-size: 1.4em; }
        .mobile-header div a.left {
          left: 20px; }
        .mobile-header div a.right {
          right: 20px; }
        .mobile-header div a:hover {
          color: #eee; }
      .mobile-header div .text {
        display: block;
        font-size: 1em;
        text-align: center;
        height: 70px;
        line-height: 70px;
        width: 100%; }
      .mobile-header div.small {
        height: 61px; }
        .mobile-header div.small a {
          top: 17px; }
        .mobile-header div.small .text {
          font-family: 'roboto-medium';
          font-size: 0.9em;
          height: 61px;
          line-height: 61px; }
      .mobile-header div.light {
        color: #5c6d7f;
        background-color: #fefefe;
        border-bottom: 2px solid #efefef; }
        .mobile-header div.light a {
          color: #5c6d7f; }
          .mobile-header div.light a:hover {
            color: #799fb9; } }

body.seq-0 .mobile-header div {
  background-color: #e07272; }
  @media (nothing) {
    body.seq-0 .mobile-header div {
      background-color: #4e2829; } }

body.seq-1 .mobile-header div {
  background-color: #33a5dc; }
  @media (nothing) {
    body.seq-1 .mobile-header div {
      background-color: #0f3142; } }

body.seq-2 .mobile-header div {
  background-color: #f3af35; }
  @media (nothing) {
    body.seq-2 .mobile-header div {
      background-color: #33250b; } }

body.seq-3 .mobile-header div {
  background-color: #8fbe21; }
  @media (nothing) {
    body.seq-3 .mobile-header div {
      background-color: #212C08; } }

body.seq-4 .mobile-header div {
  background-color: #f6b592; }
  @media (nothing) {
    body.seq-4 .mobile-header div {
      background-color: #6d2c08; } }

body.seq-5 .mobile-header div {
  background-color: #343c52; }
  @media (nothing) {
    body.seq-5 .mobile-header div {
      background-color: #343c52; } }

body.seq-6 .mobile-header div {
  background-color: #4271a8; }
  @media (nothing) {
    body.seq-6 .mobile-header div {
      background-color: #0f3d75; } }

@media only screen and (min-width: 821px) {
  .bs-date-range-picker {
    overflow: hidden; } }

@media only screen and (max-width: 820px) {
  .bs-date-range-picker {
    background-color: #fefefe;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 100;
    overflow-y: auto; } }

.bs-date-range-picker .dp-button-container {
  width: 100%;
  position: absolute;
  font-size: 1.4em;
  padding: 0 10px;
  left: 0;
  top: 0;
  z-index: 2;
  text-align: left;
  box-sizing: border-box; }
  .bs-date-range-picker .dp-button-container .btn-next {
    float: right; }
  .bs-date-range-picker .dp-button-container .btn-previous, .bs-date-range-picker .dp-button-container .btn-next {
    color: #999;
    cursor: pointer;
    padding: 5px;
    border-radius: 5px;
    display: inline-block; }
    .bs-date-range-picker .dp-button-container .btn-previous:hover, .bs-date-range-picker .dp-button-container .btn-next:hover {
      color: #a00; }
  @media only screen and (max-width: 820px) {
    .bs-date-range-picker .dp-button-container {
      display: none; } }

.bs-date-range-picker.no-anim .dp-slider {
  transition: none; }

.bs-date-range-picker .dp-slider {
  position: relative;
  transition: margin-left ease-in-out 0.2s; }
  .bs-date-range-picker .dp-slider .dp-month-container {
    padding: 5px 0; }
  @media only screen and (min-width: 821px) {
    .bs-date-range-picker .dp-slider .dp-loading-placeholder {
      display: none; } }
  @media only screen and (min-width: 821px) {
    .bs-date-range-picker .dp-slider {
      vertical-align: top;
      white-space: nowrap; } }
  .bs-date-range-picker .dp-slider .dp-month {
    position: relative;
    margin-top: 20px; }
    @media only screen and (min-width: 821px) {
      .bs-date-range-picker .dp-slider .dp-month {
        width: 300px;
        display: inline-block;
        vertical-align: top;
        margin: 0 50px 0 0; } }
    .bs-date-range-picker .dp-slider .dp-month .dp-month-header {
      display: block;
      text-align: center;
      border-bottom: 1px solid #999;
      padding-bottom: 3px; }
      .bs-date-range-picker .dp-slider .dp-month .dp-month-header .dp-month-text {
        font-size: 1.6em;
        color: #999;
        margin-right: 5px; }
      .bs-date-range-picker .dp-slider .dp-month .dp-month-header .dp-year-text {
        font-size: 1.1em; }
    .bs-date-range-picker .dp-slider .dp-month .dp-week-header {
      display: block;
      position: relative;
      text-align: center; }
      .bs-date-range-picker .dp-slider .dp-month .dp-week-header .dp-day {
        display: inline-block;
        text-align: center;
        font-weight: bold;
        line-height: 41px;
        min-height: 45px;
        color: #999;
        width: 43px;
        height: 45px; }
        @media only screen and (max-width: 820px) {
          .bs-date-range-picker .dp-slider .dp-month .dp-week-header .dp-day {
            width: 14%;
            height: 50px; } }
    .bs-date-range-picker .dp-slider .dp-month .dp-week {
      display: block;
      position: relative;
      box-sizing: border-box;
      text-align: center; }
      .bs-date-range-picker .dp-slider .dp-month .dp-week .dp-day {
        display: inline-block;
        text-align: center;
        cursor: pointer;
        color: #bbb;
        padding: 2px;
        width: 43px;
        height: 45px;
        line-height: 41px;
        box-sizing: border-box; }
        @media only screen and (max-width: 820px) {
          .bs-date-range-picker .dp-slider .dp-month .dp-week .dp-day {
            width: 14%;
            height: 50px; } }
        @media only screen and (min-width: 821px) {
          .bs-date-range-picker .dp-slider .dp-month .dp-week .dp-day .dp-day-handle {
            border-radius: 50%; } }
        .bs-date-range-picker .dp-slider .dp-month .dp-week .dp-day.today {
          color: #8aafca;
          font-weight: bold; }
        .bs-date-range-picker .dp-slider .dp-month .dp-week .dp-day.can-select {
          color: #000;
          font-weight: bold; }
          .bs-date-range-picker .dp-slider .dp-month .dp-week .dp-day.can-select.today {
            color: #5c6d7f; }
          .bs-date-range-picker .dp-slider .dp-month .dp-week .dp-day.can-select:hover .dp-day-handle {
            background-color: #5c6d7f;
            color: #fefefe; }
        .bs-date-range-picker .dp-slider .dp-month .dp-week .dp-day.highlight-start, .bs-date-range-picker .dp-slider .dp-month .dp-week .dp-day.highlight-select.highlight-start, .bs-date-range-picker .dp-slider .dp-month .dp-week .dp-day.highlight-start:hover {
          background-color: #5c6d7f !important;
          border-radius: 0; }
          @media only screen and (min-width: 821px) {
            .bs-date-range-picker .dp-slider .dp-month .dp-week .dp-day.highlight-start, .bs-date-range-picker .dp-slider .dp-month .dp-week .dp-day.highlight-select.highlight-start, .bs-date-range-picker .dp-slider .dp-month .dp-week .dp-day.highlight-start:hover {
              border-top-left-radius: 100%;
              border-bottom-left-radius: 100%; } }
          .bs-date-range-picker .dp-slider .dp-month .dp-week .dp-day.highlight-start .dp-day-handle, .bs-date-range-picker .dp-slider .dp-month .dp-week .dp-day.highlight-select.highlight-start .dp-day-handle, .bs-date-range-picker .dp-slider .dp-month .dp-week .dp-day.highlight-start:hover .dp-day-handle {
            background-color: transparent;
            color: #fefefe;
            font-weight: bold; }
        .bs-date-range-picker .dp-slider .dp-month .dp-week .dp-day.highlight-select {
          background-color: #5c6d7f !important;
          color: #fefefe; }
        .bs-date-range-picker .dp-slider .dp-month .dp-week .dp-day.highlight-end, .bs-date-range-picker .dp-slider .dp-month .dp-week .dp-day.highlight-select.highlight-end, .bs-date-range-picker .dp-slider .dp-month .dp-week .dp-day.highlight-end:hover {
          background-color: #5c6d7f !important;
          border-radius: 0; }
          @media only screen and (min-width: 821px) {
            .bs-date-range-picker .dp-slider .dp-month .dp-week .dp-day.highlight-end, .bs-date-range-picker .dp-slider .dp-month .dp-week .dp-day.highlight-select.highlight-end, .bs-date-range-picker .dp-slider .dp-month .dp-week .dp-day.highlight-end:hover {
              border-top-right-radius: 100%;
              border-bottom-right-radius: 100%; } }
          .bs-date-range-picker .dp-slider .dp-month .dp-week .dp-day.highlight-end .dp-day-handle, .bs-date-range-picker .dp-slider .dp-month .dp-week .dp-day.highlight-select.highlight-end .dp-day-handle, .bs-date-range-picker .dp-slider .dp-month .dp-week .dp-day.highlight-end:hover .dp-day-handle {
            background-color: transparent;
            color: #fefefe;
            font-weight: bold; }
        .bs-date-range-picker .dp-slider .dp-month .dp-week .dp-day.highlight-select.highlight-end:hover, .bs-date-range-picker .dp-slider .dp-month .dp-week .dp-day.highlight-select.highlight-start:hover {
          background-color: #688fa8 !important; }

.inline-image-view {
  margin: 30px 0; }
  .inline-image-view figcaption {
    text-align: right;
    font-size: 1.2em;
    margin-top: 5px;
    font-family: "roboto-regular"; }

.booking-grid {
  width: 100%;
  padding: 0 20px;
  box-sizing: border-box;
  -moz-user-select: -moz-none;
  -khtml-user-select: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
  cursor: default; }
  @media only screen and (max-width: 1024px) {
    .booking-grid {
      padding: 0; } }
  @media only screen and (max-width: 820px) {
    .booking-grid {
      background-color: #eee; } }
  .booking-grid .row {
    display: block;
    white-space: nowrap;
    position: relative;
    width: 99%;
    margin: 20px 0;
    box-sizing: border-box; }
    @media only screen and (max-width: 820px) {
      .booking-grid .row {
        width: 100%;
        border-top: solid 1px #ccc;
        border-bottom: solid 1px #999;
        margin: 0 0 20px 0;
        background-color: #fefefe;
        box-shadow: rgba(80, 80, 80, 0.3) 3px 3px 5px; } }
    .booking-grid .row > * {
      white-space: normal; }
    .booking-grid .row.date-headers {
      height: 50px;
      font-size: 0.9em;
      display: none; }
      @media only screen and (min-width: 1025px) {
        .booking-grid .row.date-headers {
          display: block; } }
      .booking-grid .row.date-headers .lodge {
        border: none;
        height: 0 !important;
        margin-right: 2px; }
      .booking-grid .row.date-headers .rate-header {
        width: 150px;
        vertical-align: bottom;
        display: inline-block;
        position: relative;
        box-sizing: border-box;
        text-align: center;
        margin: 0 5px;
        white-space: normal;
        height: 100%; }
        @media only screen and (max-width: 820px) {
          .booking-grid .row.date-headers .rate-header.col--2, .booking-grid .row.date-headers .rate-header.col-2 {
            display: none; } }
        @media only screen and (min-width: 1025px) and (max-width: 1300px) {
          .booking-grid .row.date-headers .rate-header.col--2, .booking-grid .row.date-headers .rate-header.col-2 {
            display: none; }
          .booking-grid .row.date-headers .rate-header.col-1 {
            margin-right: 0; } }
        .booking-grid .row.date-headers .rate-header:last-child {
          margin-right: 0; }
        @media only screen and (max-width: 1024px) and (min-width: 821px) {
          .booking-grid .row.date-headers .rate-header {
            display: none; } }
        .booking-grid .row.date-headers .rate-header .date-header, .booking-grid .row.date-headers .rate-header .duration-type {
          display: block;
          line-height: 1.2em; }
        .booking-grid .row.date-headers .rate-header .date-header {
          font-size: 0.9em; }
        .booking-grid .row.date-headers .rate-header .duration-type {
          font-size: 0.8em; }
        .booking-grid .row.date-headers .rate-header.chosen-date {
          color: #fefefe;
          height: 60px;
          background-color: #5c6d7f; }
          @media (nothing) {
            .booking-grid .row.date-headers .rate-header.chosen-date {
              background-color: #084060;
              color: #799fb9; } }
          .booking-grid .row.date-headers .rate-header.chosen-date.un-available, .booking-grid .row.date-headers .rate-header.chosen-date.disabled {
            color: #fefefe;
            background-color: #eee; }
            @media (nothing) {
              .booking-grid .row.date-headers .rate-header.chosen-date.un-available, .booking-grid .row.date-headers .rate-header.chosen-date.disabled {
                color: #999;
                background-color: #555; } }
        .booking-grid .row.date-headers .rate-header.disabled {
          color: #eee;
          border-color: #eee; }
          @media (nothing) {
            .booking-grid .row.date-headers .rate-header.disabled {
              color: #999;
              background-color: #555; } }
        .booking-grid .row.date-headers .rate-header span {
          margin: 2px; }
    @media only screen and (max-width: 1024px) and (min-width: 821px) {
      .booking-grid .row.rates {
        border: 1px solid #999;
        margin: 5px;
        padding: 10px; } }
    @media only screen and (max-width: 820px) {
      .booking-grid .row.rates {
        padding: 0 0 20px 0; } }
    .booking-grid .row.rates .rates-container {
      display: inline;
      position: relative; }
      @media only screen and (max-width: 1024px) {
        .booking-grid .row.rates .rates-container {
          display: flex;
          flex-direction: row;
          justify-content: space-between;
          text-align: center; } }
      .booking-grid .row.rates .rates-container .rate-container {
        display: inline-block;
        box-sizing: border-box;
        text-align: center;
        height: 100%;
        margin: 0 5px;
        position: relative;
        vertical-align: top;
        white-space: normal;
        width: 150px;
        position: relative;
        flex: 1; }
        .booking-grid .row.rates .rates-container .rate-container:last-child {
          margin-right: 0; }
        @media only screen and (max-width: 1024px) and (min-width: 821px) {
          .booking-grid .row.rates .rates-container .rate-container {
            width: 18%; } }
        @media only screen and (max-width: 820px) {
          .booking-grid .row.rates .rates-container .rate-container.col--2, .booking-grid .row.rates .rates-container .rate-container.col-2 {
            display: none; } }
        @media only screen and (min-width: 1025px) and (max-width: 1300px) {
          .booking-grid .row.rates .rates-container .rate-container.col--2, .booking-grid .row.rates .rates-container .rate-container.col-2 {
            display: none; }
          .booking-grid .row.rates .rates-container .rate-container.col-1 {
            margin-right: 0; } }
        @media only screen and (max-width: 500px) {
          .booking-grid .row.rates .rates-container .rate-container {
            width: 90px; } }
        .booking-grid .row.rates .rates-container .rate-container .rate-header {
          font-size: 0.8em;
          white-space: nowrap; }
          @media only screen and (min-width: 1025px) {
            .booking-grid .row.rates .rates-container .rate-container .rate-header {
              display: none; } }
        .booking-grid .row.rates .rates-container .rate-container.chosen-date .rate-header {
          color: #2A6180;
          font-family: "roboto-bold";
          font-size: 0.9em; }
        .booking-grid .row.rates .rates-container .rate-container.chosen-date .rate-pointer-container > div {
          visibility: visible; }
        .booking-grid .row.rates .rates-container .rate-container.chosen-date .rate {
          background-color: #2A6180; }
          .booking-grid .row.rates .rates-container .rate-container.chosen-date .rate .price {
            color: #fefefe; }
          @media (nothing) {
            .booking-grid .row.rates .rates-container .rate-container.chosen-date .rate {
              background-color: #084060; }
              .booking-grid .row.rates .rates-container .rate-container.chosen-date .rate .price {
                color: #999; } }
          .booking-grid .row.rates .rates-container .rate-container.chosen-date .rate.un-available, .booking-grid .row.rates .rates-container .rate-container.chosen-date .rate.disabled {
            background-color: #eee; }
            @media (nothing) {
              .booking-grid .row.rates .rates-container .rate-container.chosen-date .rate.un-available, .booking-grid .row.rates .rates-container .rate-container.chosen-date .rate.disabled {
                background-color: #555; }
                .booking-grid .row.rates .rates-container .rate-container.chosen-date .rate.un-available .price, .booking-grid .row.rates .rates-container .rate-container.chosen-date .rate.disabled .price {
                  color: #999; } }
            .booking-grid .row.rates .rates-container .rate-container.chosen-date .rate.un-available .price, .booking-grid .row.rates .rates-container .rate-container.chosen-date .rate.disabled .price {
              color: #fefefe; }
        .booking-grid .row.rates .rates-container .rate-container.un-available .fa-stack {
          margin: 20px 0 0 0;
          color: #ccc; }
          @media only screen and (max-width: 820px) {
            .booking-grid .row.rates .rates-container .rate-container.un-available .fa-stack {
              display: none; } }
        .booking-grid .row.rates .rates-container .rate-container.un-available .message {
          font-size: 0.8em;
          line-height: 1.2em; }
          @media only screen and (max-width: 820px) {
            .booking-grid .row.rates .rates-container .rate-container.un-available .message {
              margin-top: 20px; } }
        @media only screen and (min-width: 1025px) {
          .booking-grid .row.rates .rates-container .rate-container.is-alternative .rate .price {
            color: #999; } }
        .booking-grid .row.rates .rates-container .rate-container.is-alternative .rate .alternative-rate {
          font-size: 0.7em;
          position: absolute;
          left: 10px;
          bottom: 3px;
          text-align: left; }
        .booking-grid .row.rates .rates-container .rate-container .rate-pointer-container {
          text-align: center;
          line-height: 0;
          margin-bottom: -2px;
          position: relative;
          z-index: 2; }
          @media only screen and (min-width: 1025px) {
            .booking-grid .row.rates .rates-container .rate-container .rate-pointer-container {
              display: none; } }
          .booking-grid .row.rates .rates-container .rate-container .rate-pointer-container > div {
            width: 0;
            height: 0;
            border-left: 15px solid transparent;
            border-right: 15px solid transparent;
            border-bottom: 15px solid #2A6180;
            display: inline-block;
            visibility: hidden; }
        .booking-grid .row.rates .rates-container .rate-container .rate {
          width: 100%;
          height: 150px;
          border: 1px solid #eee;
          position: relative; }
          @media (nothing) {
            .booking-grid .row.rates .rates-container .rate-container .rate {
              border-color: #555;
              background-color: #223; } }
          @media only screen and (max-width: 820px) {
            .booking-grid .row.rates .rates-container .rate-container .rate {
              height: 85px; } }
          .booking-grid .row.rates .rates-container .rate-container .rate .qty-available {
            display: none; }
          .booking-grid .row.rates .rates-container .rate-container .rate .price {
            text-align: center;
            color: #5c6d7f;
            font-family: "roboto-regular"; }
            @media only screen and (max-width: 1024px) {
              .booking-grid .row.rates .rates-container .rate-container .rate .price {
                color: #fefefe; }
                .booking-grid .row.rates .rates-container .rate-container .rate .price span {
                  background-color: #69a364;
                  padding: 5px 10px;
                  display: inline-block;
                  border-radius: 5px;
                  min-width: 100px; } }
            @media only screen and (max-width: 500px) {
              .booking-grid .row.rates .rates-container .rate-container .rate .price span {
                min-width: unset;
                font-size: 0.8em; } }
          .booking-grid .row.rates .rates-container .rate-container .rate.post-click {
            opacity: 0.5; }
        .booking-grid .row.rates .rates-container .rate-container.un-available .rate {
          background-color: #eee;
          cursor: not-allowed; }
          @media only screen and (max-width: 1024px) {
            .booking-grid .row.rates .rates-container .rate-container.un-available .rate .price span {
              background-color: transparent; } }
        .booking-grid .row.rates .rates-container .rate-container.un-available.is-alternative .rate .alternative-rate {
          display: none; }
        .booking-grid .row.rates .rates-container .rate-container:hover:not(.un-available):not(.disabled) .rate {
          background-color: #799fb9;
          cursor: pointer; }
          .booking-grid .row.rates .rates-container .rate-container:hover:not(.un-available):not(.disabled) .rate .price {
            color: #fefefe; }
          .booking-grid .row.rates .rates-container .rate-container:hover:not(.un-available):not(.disabled) .rate .alternative-rate {
            color: #fefefe; }
          @media (nothing) {
            .booking-grid .row.rates .rates-container .rate-container:hover:not(.un-available):not(.disabled) .rate {
              background-color: #290260; }
              .booking-grid .row.rates .rates-container .rate-container:hover:not(.un-available):not(.disabled) .rate .price, .booking-grid .row.rates .rates-container .rate-container:hover:not(.un-available):not(.disabled) .rate .alternative-rate {
                color: #999; } }
        .booking-grid .row.rates .rates-container .rate-container.disabled .rate {
          border-color: #eee;
          cursor: not-allowed; }
          .booking-grid .row.rates .rates-container .rate-container.disabled .rate .price {
            color: #eee; }
          @media (nothing) {
            .booking-grid .row.rates .rates-container .rate-container.disabled .rate {
              background-color: #555; }
              .booking-grid .row.rates .rates-container .rate-container.disabled .rate .price {
                color: #999; } }
    .booking-grid .row .lodge {
      box-sizing: border-box;
      width: calc(100% - 820px);
      text-align: left;
      max-width: 1000px;
      height: 150px;
      display: inline-block; }
      @media only screen and (max-width: 1024px) {
        .booking-grid .row .lodge {
          display: block;
          width: 100%;
          margin-bottom: 20px;
          border: none; } }
      @media only screen and (min-width: 1025px) and (max-width: 1300px) {
        .booking-grid .row .lodge {
          width: calc(100% - 490px); } }
      @media only screen and (max-width: 820px) {
        .booking-grid .row .lodge {
          height: auto; } }
      .booking-grid .row .lodge > * {
        display: inline-block;
        vertical-align: top; }
      .booking-grid .row .lodge .image-carousel {
        width: 44%;
        height: 150px; }
        .booking-grid .row .lodge .image-carousel .controls-container {
          display: none; }
        .booking-grid .row .lodge .image-carousel .button-container {
          z-index: 3; }
        @media only screen and (min-width: 821px) {
          .booking-grid .row .lodge .image-carousel {
            max-width: 300px; } }
        @media only screen and (max-width: 820px) {
          .booking-grid .row .lodge .image-carousel {
            display: block;
            width: 100%;
            height: 200px; }
            .booking-grid .row .lodge .image-carousel .button-container {
              z-index: 0; } }
      .booking-grid .row .lodge .content {
        margin: 5px 5px 5px 3%;
        width: 49%;
        font-size: 0.9em; }
        .booking-grid .row .lodge .content h3 {
          margin: 0;
          padding: 0; }
          @media only screen and (max-width: 820px) {
            .booking-grid .row .lodge .content h3 {
              font-family: "roboto-bold";
              font-size: 1.4em; } }
        .booking-grid .row .lodge .content p {
          margin: 5px 0; }
          .booking-grid .row .lodge .content p.sleeps {
            font-size: 0.9em;
            font-family: "roboto-regular";
            margin-top: 0; }
            @media only screen and (max-width: 820px) {
              .booking-grid .row .lodge .content p.sleeps {
                font-size: 0.8em;
                font-family: "roboto-bold"; } }
          .booking-grid .row .lodge .content p.sub-title {
            font-size: 0.8em; }
            @media only screen and (max-width: 820px) {
              .booking-grid .row .lodge .content p.sub-title {
                font-size: 0.9em; } }
        .booking-grid .row .lodge .content .more-info {
          margin-top: 10px;
          display: inline-block; }
          @media only screen and (max-width: 820px) {
            .booking-grid .row .lodge .content .more-info {
              position: absolute;
              top: 150px;
              right: 10px; } }
          @media only screen and (min-width: 821px) {
            .booking-grid .row .lodge .content .more-info {
              font-size: 0.8em; } }
        @media only screen and (max-width: 820px) {
          .booking-grid .row .lodge .content {
            display: block;
            width: calc(100% - 40px);
            padding: 20px 5px; } }

.booking-grid .row.date-headers .rate-header {
  /*&.example-theme {
                    .date-header {
                    }

                    .duration-type {
                    }

                    &.chosen-date {
                        &.un-available, &.disabled {
                        }
                    }

                    &.disabled {
                    }

                    span {
                    }
                }*/ }
  .booking-grid .row.date-headers .rate-header.christmas {
    color: #900; }
    .booking-grid .row.date-headers .rate-header.christmas.chosen-date {
      font-family: "roboto-regular";
      background-color: #900;
      color: #fefefe; }

.booking-grid .row.rates .rates-container .rate-container {
  /*&.example-theme {
                        .rate-header {
                            &.chosen-date {
                            }
                        }

                        .rate-pointer-container {
                            > div {
                            }

                            &.chosen-date {
                                > div {
                                }
                            }
                        }

                        .rate {
                            .qty-available {
                            }

                            .price {
                                span {
                                }
                            }
                        }

                        &.chosen-date {
                            .price {
                            }

                            &.un-available, &.disabled {
                                .price {
                                }
                            }
                        }

                        &:hover:not(.un-available):not(.disabled) {
                            .price {
                            }
                        }
                    }*/ }
  .booking-grid .row.rates .rates-container .rate-container.christmas .rate {
    background-color: #fee; }
  .booking-grid .row.rates .rates-container .rate-container.christmas .rate-pointer-container > div {
    border-bottom-color: #900; }
  .booking-grid .row.rates .rates-container .rate-container.christmas.chosen-date .rate {
    background-color: #900; }
  .booking-grid .row.rates .rates-container .rate-container.christmas:hover:not(.un-available):not(.disabled) .rate {
    background-color: #b00; }
  .booking-grid .row.rates .rates-container .rate-container.romance .rate {
    background-image: url("/assets/images/heart.png");
    background-position: 95% 95%;
    background-repeat: no-repeat;
    background-size: 40px;
    border-color: #fee; }
    @media only screen and (min-width: 1025px) {
      .booking-grid .row.rates .rates-container .rate-container.romance .rate .price {
        color: #c66; } }
  .booking-grid .row.rates .rates-container .rate-container.romance .rate-pointer-container > div {
    border-bottom-color: #900; }
  .booking-grid .row.rates .rates-container .rate-container.romance.chosen-date .rate {
    background-color: #900; }
    .booking-grid .row.rates .rates-container .rate-container.romance.chosen-date .rate .price {
      color: #fefefe; }
  .booking-grid .row.rates .rates-container .rate-container.romance:hover:not(.un-available):not(.disabled) .rate {
    background-color: #b00; }

.image-carousel {
  width: 100%;
  height: 100%;
  display: inline-block;
  position: relative;
  overflow: hidden; }
  .image-carousel .slide-container {
    display: block;
    height: 100%;
    width: auto;
    position: absolute;
    left: 0;
    transition: left linear 0.2s; }
    .image-carousel .slide-container .slide {
      display: inline-block;
      position: relative;
      width: 100%;
      height: 100%;
      overflow: hidden; }
      .image-carousel .slide-container .slide .carousel-image {
        width: 100%;
        height: 100%;
        background-position: center center;
        background-repeat: no-repeat;
        background-size: cover; }
      .image-carousel .slide-container .slide .video-container {
        height: 100%;
        overflow: hidden; }
        .image-carousel .slide-container .slide .video-container .carousel-video {
          position: absolute;
          top: 50%;
          transform: translateY(-50%);
          width: 100%; }
      .image-carousel .slide-container .slide.fullscreen {
        position: fixed;
        width: 100% !important;
        min-width: 100%;
        min-height: 100%;
        background-color: #000;
        height: 100%;
        top: 0;
        left: 0;
        z-index: 200; }
      .image-carousel .slide-container .slide .video-controls {
        position: absolute;
        left: 10px;
        top: 10px;
        background-color: rgba(50, 50, 50, 0.8);
        padding: 7px 10px;
        border-radius: 5px; }
        .image-carousel .slide-container .slide .video-controls i {
          color: #fefefe; }
        .image-carousel .slide-container .slide .video-controls .pause-button, .image-carousel .slide-container .slide .video-controls .close-button {
          display: none; }
      @media only screen and (min-width: 821px) {
        .image-carousel .slide-container .slide.playing.overlay {
          position: fixed;
          width: 100% !important;
          min-width: 100%;
          min-height: 100%;
          background-color: rgba(0, 0, 0, 0.8);
          height: 100%;
          top: 0;
          left: 0;
          z-index: 200;
          text-align: center; }
          .image-carousel .slide-container .slide.playing.overlay .video-container {
            display: inline-block;
            width: 90%;
            height: 90%;
            max-width: 1400px;
            max-height: 1000px;
            position: relative;
            top: 50%;
            transform: translateY(-50%); }
            .image-carousel .slide-container .slide.playing.overlay .video-container video {
              left: 0; }
            .image-carousel .slide-container .slide.playing.overlay .video-container .video-controls .pause-button {
              display: none !important; }
            .image-carousel .slide-container .slide.playing.overlay .video-container .video-controls .close-button {
              display: inherit;
              color: #fefefe; }
              .image-carousel .slide-container .slide.playing.overlay .video-container .video-controls .close-button span {
                font-size: 1.2em;
                margin-left: 5px; } }
      .image-carousel .slide-container .slide.playing .video-container .video-controls .pause-button {
        display: inherit; }
      .image-carousel .slide-container .slide.playing .video-container .video-controls .play-button {
        display: none; }
  .image-carousel.hidevideocontrols .slide-container .slide .video-controls {
    display: none; }
  .image-carousel .button-container {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 20;
    color: #fefefe;
    width: 100%;
    height: 100%;
    -moz-user-select: -moz-none;
    -khtml-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
    cursor: default; }
    .image-carousel .button-container .prev-button, .image-carousel .button-container .next-button {
      font-size: 1.2em;
      background-color: rgba(50, 50, 50, 0.8);
      position: absolute;
      opacity: 0;
      transition: all linear 0.2s;
      top: 0;
      cursor: pointer;
      height: 100%;
      width: 30px; }
      .image-carousel .button-container .prev-button:hover, .image-carousel .button-container .next-button:hover {
        background-color: #666; }
      .image-carousel .button-container .prev-button svg, .image-carousel .button-container .next-button svg {
        position: absolute;
        top: 50%;
        transform: translateY(-50%); }
    .image-carousel .button-container .prev-button {
      left: 0; }
      .image-carousel .button-container .prev-button svg {
        right: 10px; }
    .image-carousel .button-container .next-button {
      right: 0; }
      .image-carousel .button-container .next-button svg {
        left: 10px; }
    @media (hover: none) {
      .image-carousel .button-container {
        display: none; } }
  .image-carousel:hover .button-container .prev-button, .image-carousel:hover .button-container .next-button {
    transform: translateX(0);
    opacity: 1; }
  .image-carousel .controls-container {
    position: absolute;
    bottom: 20px;
    width: 100%;
    text-align: center;
    display: none; }
    .image-carousel .controls-container .slide-button {
      display: inline-block;
      border-radius: 50%;
      width: 20px;
      height: 20px;
      background-color: rgba(50, 50, 50, 0.6);
      margin: 0 10px;
      border: 1px solid rgba(235, 235, 235, 0.6); }
      .image-carousel .controls-container .slide-button.selected {
        border-color: #b7d0e0;
        border-width: 2px;
        background-color: rgba(87, 126, 151, 0.8); }
      .image-carousel .controls-container .slide-button:hover {
        background-color: #5c6d7f;
        border-color: #fefefe;
        cursor: pointer; }
    @media only screen and (min-width: 821px) {
      .image-carousel .controls-container.show {
        display: inherit; } }
  @media (hover: none) {
    .image-carousel.carousel-twitch .slide-container {
      animation: twitch-anim 0.8s ease-in-out;
      animation-iteration-count: 1; }
    @keyframes twitch-anim {
      50% {
        transform: translateX(-50px); }
      100% {
        transform: translateX(0); } } }

body.video-mode {
  background-color: #000; }

.accommodation-booking-header {
  height: auto;
  min-height: 70px;
  background-color: #5c6d7f;
  position: relative;
  padding-top: 6px;
  box-sizing: border-box; }
  @media (nothing) {
    .accommodation-booking-header {
      background-color: #001; } }
  .accommodation-booking-header a.back-button {
    display: none; }
  .accommodation-booking-header .text {
    display: none; }
  @media only screen and (max-width: 1024px) {
    .accommodation-booking-header {
      background-color: #2A6180;
      position: relative; }
      .accommodation-booking-header .text {
        display: block;
        font-size: 1em;
        text-align: center;
        height: 70px;
        line-height: 70px;
        width: 100%;
        z-index: -1; } }
  @media only screen and (max-width: 1024px) and (min-width: 821px) {
    .accommodation-booking-header .text {
      position: absolute;
      top: 0; } }
  @media only screen and (max-width: 820px) {
    .accommodation-booking-header .text {
      line-height: 65px; }
    .accommodation-booking-header a.back-button {
      display: block;
      position: absolute;
      top: 23px;
      left: 20px;
      color: #fefefe;
      font-size: 1.4em; } }
  .accommodation-booking-header a.header-logo-link {
    margin-top: 0; }
    .accommodation-booking-header a.header-logo-link div {
      width: 160px;
      height: 58px; }
    @media only screen and (max-width: 820px) {
      .accommodation-booking-header a.header-logo-link {
        display: none; } }
  .accommodation-booking-header nav.main-nav {
    margin: 0 150px 0 10px;
    width: auto;
    text-align: center; }
    @media only screen and (max-width: 1024px) {
      .accommodation-booking-header nav.main-nav {
        width: 100%;
        margin: 0;
        background-color: #5c6d7f;
        padding: 10px 0; } }
  .accommodation-booking-header .filters {
    width: auto;
    display: inline-block;
    vertical-align: top;
    margin: 10px 0;
    font-size: 0.9em; }
    @media only screen and (max-width: 1024px) {
      .accommodation-booking-header .filters {
        margin: 0;
        padding: 0 10px;
        width: calc(100% - 20px);
        font-size: 1em; } }
    @media only screen and (max-width: 1024px) {
      .accommodation-booking-header .filters .inner-container .criteria {
        display: flex;
        flex-direction: row;
        justify-content: space-between; } }
    @media only screen and (max-width: 820px) {
      .accommodation-booking-header .filters .inner-container .criteria {
        display: unset;
        flex-direction: unset;
        justify-content: unset; } }
    .accommodation-booking-header .filters .inner-container .criteria .guests-lodges {
      padding: 0; }
    .accommodation-booking-header .filters .inner-container .criteria > * {
      display: inline-block;
      position: relative;
      margin: 0 5px; }
      @media (nothing) {
        .accommodation-booking-header .filters .inner-container .criteria > * {
          background-color: #084060;
          color: #799fb9; } }
      @media only screen and (max-width: 820px) {
        .accommodation-booking-header .filters .inner-container .criteria > * {
          margin: 10px 5px; } }
      .accommodation-booking-header .filters .inner-container .criteria > * .guests, .accommodation-booking-header .filters .inner-container .criteria > * .lodges, .accommodation-booking-header .filters .inner-container .criteria > *.search-when > div:not(.dropdown) {
        padding: 5px 10px;
        box-sizing: border-box;
        display: inline-block; }
        @media only screen and (max-width: 820px) {
          .accommodation-booking-header .filters .inner-container .criteria > * .guests, .accommodation-booking-header .filters .inner-container .criteria > * .lodges, .accommodation-booking-header .filters .inner-container .criteria > *.search-when > div:not(.dropdown) {
            padding: 5px 5px; } }
        .accommodation-booking-header .filters .inner-container .criteria > * .guests svg, .accommodation-booking-header .filters .inner-container .criteria > * .lodges svg, .accommodation-booking-header .filters .inner-container .criteria > *.search-when > div:not(.dropdown) svg {
          margin-right: 5px; }
        .accommodation-booking-header .filters .inner-container .criteria > * .guests span svg, .accommodation-booking-header .filters .inner-container .criteria > * .lodges span svg, .accommodation-booking-header .filters .inner-container .criteria > *.search-when > div:not(.dropdown) span svg {
          margin: 0 5px; }
      .accommodation-booking-header .filters .inner-container .criteria > * > span {
        line-height: 1em;
        font-size: 0.9em; }
    @media only screen and (max-width: 1024px) {
      .accommodation-booking-header .filters .inner-container .search-who, .accommodation-booking-header .filters .inner-container .search-when, .accommodation-booking-header .filters .inner-container .search-break-type {
        font-size: 0.8em; } }
    .accommodation-booking-header .filters .inner-container .search-who span, .accommodation-booking-header .filters .inner-container .search-when span {
      line-height: 1em; }
    .accommodation-booking-header .filters .inner-container .search-who::after, .accommodation-booking-header .filters .inner-container .search-when::after {
      content: "";
      width: 0;
      height: 0;
      border-left: 16px solid transparent;
      border-right: 16px solid transparent;
      border-bottom: 16px solid rgba(245, 245, 245, 0.98);
      position: absolute;
      bottom: -16px;
      left: 40%;
      display: none; }
      @media (nothing) {
        .accommodation-booking-header .filters .inner-container .search-who::after, .accommodation-booking-header .filters .inner-container .search-when::after {
          border-bottom-color: #799fb9; } }
    @media only screen and (min-width: 1025px) {
      .accommodation-booking-header .filters .inner-container .search-who:last-of-type .dropdown, .accommodation-booking-header .filters .inner-container .search-when:last-of-type .dropdown {
        left: -80%; } }
    @media only screen and (max-width: 1024px) and (min-width: 821px) {
      .accommodation-booking-header .filters .inner-container .search-who:last-of-type .dropdown, .accommodation-booking-header .filters .inner-container .search-when:last-of-type .dropdown {
        right: 0;
        transform: unset; } }
    .accommodation-booking-header .filters .inner-container .search-who.show, .accommodation-booking-header .filters .inner-container .search-when.show {
      background-color: #a85654; }
      @media (nothing) {
        .accommodation-booking-header .filters .inner-container .search-who.show, .accommodation-booking-header .filters .inner-container .search-when.show {
          background-color: #a85654; } }
      .accommodation-booking-header .filters .inner-container .search-who.show .dropdown, .accommodation-booking-header .filters .inner-container .search-when.show .dropdown {
        display: block; }
      @media only screen and (min-width: 821px) {
        .accommodation-booking-header .filters .inner-container .search-who.show::after, .accommodation-booking-header .filters .inner-container .search-when.show::after {
          display: block; } }
    @media only screen and (max-width: 360px) {
      .accommodation-booking-header .filters .inner-container .search-who .guests .desc, .accommodation-booking-header .filters .inner-container .search-who .lodges .desc {
        display: none; } }
    @media only screen and (max-width: 820px) {
      .accommodation-booking-header .filters .inner-container .search-who .dropdown {
        padding: 0; } }
    @media only screen and (max-width: 820px) {
      .accommodation-booking-header .filters .inner-container .search-when {
        margin-top: 0; } }
    .accommodation-booking-header .filters .inner-container .search-when .depart-text, .accommodation-booking-header .filters .inner-container .search-when svg:not(:first-child) {
      display: none; }
    .accommodation-booking-header .filters .inner-container .search-when .day {
      font-weight: bold; }
      @media only screen and (max-width: 360px) {
        .accommodation-booking-header .filters .inner-container .search-when .day {
          display: none; } }
    .accommodation-booking-header .filters .inner-container .search-when .ord {
      vertical-align: top;
      font-size: 0.7em; }
    .accommodation-booking-header .filters .inner-container .search-when .dropdown {
      padding: 20px 20px 10px 20px; }
      @media only screen and (min-width: 821px) {
        .accommodation-booking-header .filters .inner-container .search-when .dropdown {
          width: 650px;
          left: -60%; } }
      @media only screen and (max-width: 1024px) and (min-width: 821px) {
        .accommodation-booking-header .filters .inner-container .search-when .dropdown {
          left: auto;
          transform: translateX(-50%); } }
      @media only screen and (max-width: 820px) {
        .accommodation-booking-header .filters .inner-container .search-when .dropdown {
          padding: 0; } }
      .accommodation-booking-header .filters .inner-container .search-when .dropdown .calendar-message {
        display: block;
        text-align: center;
        color: #5c6d7f;
        padding-top: 10px; }
        .accommodation-booking-header .filters .inner-container .search-when .dropdown .calendar-message p {
          margin: 5px; }
        @media only screen and (max-width: 820px) {
          .accommodation-booking-header .filters .inner-container .search-when .dropdown .calendar-message {
            display: none; } }
      .accommodation-booking-header .filters .inner-container .search-when .dropdown .calendar-message-mobile {
        display: none; }
        @media only screen and (max-width: 820px) {
          .accommodation-booking-header .filters .inner-container .search-when .dropdown .calendar-message-mobile {
            display: block;
            text-align: center;
            padding: 5px 20px 10px 20px;
            margin: 0;
            line-height: 1em;
            border-bottom: 2px solid #efefef; }
            .accommodation-booking-header .filters .inner-container .search-when .dropdown .calendar-message-mobile p {
              display: inline;
              margin: 0 1px 0 0;
              font-size: 0.8em; }
            .accommodation-booking-header .filters .inner-container .search-when .dropdown .calendar-message-mobile .arrive-depart-holder {
              padding-top: 10px; }
              .accommodation-booking-header .filters .inner-container .search-when .dropdown .calendar-message-mobile .arrive-depart-holder span {
                font-size: 0.9em;
                color: #5c6d7f;
                font-weight: bold; }
              .accommodation-booking-header .filters .inner-container .search-when .dropdown .calendar-message-mobile .arrive-depart-holder span.arrive-text {
                padding: 0 5px 0 0; }
              .accommodation-booking-header .filters .inner-container .search-when .dropdown .calendar-message-mobile .arrive-depart-holder span.depart-text {
                display: inline-block;
                padding: 0 0 0 5px; } }
        @media only screen and (max-width: 360px) {
          .accommodation-booking-header .filters .inner-container .search-when .dropdown .calendar-message-mobile .arrive-depart-holder span.day {
            display: inline; } }
      .accommodation-booking-header .filters .inner-container .search-when .dropdown .bs-date-range-picker {
        position: relative;
        border-radius: 5px;
        background-color: #fefefe; }
        @media (nothing) {
          .accommodation-booking-header .filters .inner-container .search-when .dropdown .bs-date-range-picker {
            background-color: #224; } }
        .accommodation-booking-header .filters .inner-container .search-when .dropdown .bs-date-range-picker .dp-day.dow-1, .accommodation-booking-header .filters .inner-container .search-when .dropdown .bs-date-range-picker .dp-day.dow-5 {
          background-color: #eff9ef; }
          @media (nothing) {
            .accommodation-booking-header .filters .inner-container .search-when .dropdown .bs-date-range-picker .dp-day.dow-1, .accommodation-booking-header .filters .inner-container .search-when .dropdown .bs-date-range-picker .dp-day.dow-5 {
              background-color: #5c2593; } }
        @media only screen and (max-width: 820px) {
          .accommodation-booking-header .filters .inner-container .search-when .dropdown .bs-date-range-picker {
            height: calc(100% - 70px);
            border-radius: 0;
            z-index: unset; } }
      .accommodation-booking-header .filters .inner-container .search-when .dropdown .button-container.done-button {
        padding-top: 10px; }
    @media only screen and (max-width: 820px) {
      .accommodation-booking-header .filters .inner-container .search-break-type {
        margin-top: 0; } }
    .accommodation-booking-header .filters .inner-container .dropdown {
      font-size: 18px;
      position: absolute;
      z-index: 3;
      padding: 10px;
      box-shadow: rgba(40, 40, 40, 0.2) 5px 5px 5px;
      top: calc(100% + 15px);
      background-color: rgba(245, 245, 245, 0.98);
      left: 0;
      cursor: default;
      text-align: left;
      display: none;
      border: 1px solid #eee;
      color: #5c6d7f; }
      @media (nothing) {
        .accommodation-booking-header .filters .inner-container .dropdown {
          background-color: #084060;
          color: #999;
          border-color: #799fb9; } }
      @media only screen and (min-width: 821px) {
        .accommodation-booking-header .filters .inner-container .dropdown {
          border-radius: 5px;
          white-space: nowrap; } }
      @media only screen and (max-width: 820px) {
        .accommodation-booking-header .filters .inner-container .dropdown {
          position: fixed;
          top: 0;
          width: 100%;
          white-space: normal;
          height: 100vh;
          color: #555;
          background-color: #fefefe;
          box-sizing: border-box;
          border: none; } }
      .accommodation-booking-header .filters .inner-container .dropdown .dropdown-header {
        display: none; }
        @media only screen and (max-width: 820px) {
          .accommodation-booking-header .filters .inner-container .dropdown .dropdown-header {
            display: block;
            color: #fefefe;
            background-color: #5c6d7f;
            padding: 0;
            width: 100%;
            height: 70px; }
            .accommodation-booking-header .filters .inner-container .dropdown .dropdown-header a {
              display: block;
              position: absolute;
              top: 23px;
              right: 20px;
              color: #fefefe;
              font-size: 1.4em; }
            .accommodation-booking-header .filters .inner-container .dropdown .dropdown-header .text {
              display: block;
              font-size: 1em;
              text-align: center;
              height: 70px;
              line-height: 70px;
              width: 100%; } }
      .accommodation-booking-header .filters .inner-container .dropdown h3 {
        font-size: 1.2em;
        margin-top: 0;
        color: #799fb9; }
      .accommodation-booking-header .filters .inner-container .dropdown .button-container.done-button {
        text-align: center;
        margin: 30px 0; }
        @media only screen and (min-width: 821px) {
          .accommodation-booking-header .filters .inner-container .dropdown .button-container.done-button {
            display: none; } }
        @media only screen and (max-width: 820px) {
          .accommodation-booking-header .filters .inner-container .dropdown .button-container.done-button {
            position: absolute;
            bottom: 25px;
            margin: 0;
            padding: 0 20px;
            width: calc(100% - 40px); } }
      @media only screen and (max-width: 820px) {
        .accommodation-booking-header .filters .inner-container .dropdown .lodges-container {
          height: calc(100% - 225px);
          padding: 10px 0 170px 0;
          overflow-y: auto; } }
      .accommodation-booking-header .filters .inner-container .dropdown .lodges-container .lodge-row {
        border-top: solid 2px #999;
        padding-top: 10px;
        margin-top: 10px;
        position: relative; }
        @media only screen and (max-width: 820px) {
          .accommodation-booking-header .filters .inner-container .dropdown .lodges-container .lodge-row {
            margin-top: 20px;
            padding: 10px 20px 0 20px;
            border-top: solid 2px #ccc; } }
        .accommodation-booking-header .filters .inner-container .dropdown .lodges-container .lodge-row:first-child {
          border-top: none;
          margin-top: 0; }
          .accommodation-booking-header .filters .inner-container .dropdown .lodges-container .lodge-row:first-child .remove-button {
            display: none; }
        .accommodation-booking-header .filters .inner-container .dropdown .lodges-container .lodge-row .selector {
          text-align: center;
          display: inline-block;
          border-right: 1px solid #999; }
          @media only screen and (min-width: 821px) {
            .accommodation-booking-header .filters .inner-container .dropdown .lodges-container .lodge-row .selector {
              padding: 20px; }
              .accommodation-booking-header .filters .inner-container .dropdown .lodges-container .lodge-row .selector:last-child {
                border-right: none; } }
          @media only screen and (max-width: 820px) {
            .accommodation-booking-header .filters .inner-container .dropdown .lodges-container .lodge-row .selector {
              width: 100%;
              margin-top: 10px;
              text-align: left;
              border: none; }
              .accommodation-booking-header .filters .inner-container .dropdown .lodges-container .lodge-row .selector:nth-child(even) {
                border-right: none; } }
          .accommodation-booking-header .filters .inner-container .dropdown .lodges-container .lodge-row .selector .title {
            display: block;
            margin-bottom: 10px; }
            @media only screen and (max-width: 820px) {
              .accommodation-booking-header .filters .inner-container .dropdown .lodges-container .lodge-row .selector .title {
                display: inline-block;
                margin-bottom: 0;
                padding-top: 20px; } }
          .accommodation-booking-header .filters .inner-container .dropdown .lodges-container .lodge-row .selector .age-range {
            font-size: 0.7em; }
            @media only screen and (max-width: 820px) {
              .accommodation-booking-header .filters .inner-container .dropdown .lodges-container .lodge-row .selector .age-range {
                margin-left: 5px; }
                .accommodation-booking-header .filters .inner-container .dropdown .lodges-container .lodge-row .selector .age-range:before {
                  content: "("; }
                .accommodation-booking-header .filters .inner-container .dropdown .lodges-container .lodge-row .selector .age-range:after {
                  content: ")"; } }
          @media only screen and (max-width: 820px) {
            .accommodation-booking-header .filters .inner-container .dropdown .lodges-container .lodge-row .selector .buttons-container {
              display: inline-block;
              float: right;
              margin-right: -10px; } }
          .accommodation-booking-header .filters .inner-container .dropdown .lodges-container .lodge-row .selector svg {
            font-size: 2em;
            padding: 5px;
            cursor: pointer; }
            @media only screen and (max-width: 820px) {
              .accommodation-booking-header .filters .inner-container .dropdown .lodges-container .lodge-row .selector svg {
                padding: 10px; } }
            .accommodation-booking-header .filters .inner-container .dropdown .lodges-container .lodge-row .selector svg:hover {
              color: #a00; }
              @media (nothing) {
                .accommodation-booking-header .filters .inner-container .dropdown .lodges-container .lodge-row .selector svg:hover {
                  color: #c66; } }
          .accommodation-booking-header .filters .inner-container .dropdown .lodges-container .lodge-row .selector .count {
            display: inline-block;
            vertical-align: top;
            margin: 10px 5px 0 5px;
            font-size: 1.2em; }
            @media only screen and (max-width: 820px) {
              .accommodation-booking-header .filters .inner-container .dropdown .lodges-container .lodge-row .selector .count {
                margin-top: 15px;
                min-width: 20px;
                text-align: center; } }
        .accommodation-booking-header .filters .inner-container .dropdown .lodges-container .lodge-row .remove-button {
          color: #0f7fb5;
          cursor: pointer;
          position: absolute;
          right: 5px;
          top: 12px;
          font-size: 0.9em; }
          @media only screen and (max-width: 820px) {
            .accommodation-booking-header .filters .inner-container .dropdown .lodges-container .lodge-row .remove-button {
              right: 20px;
              top: 15px; } }
          .accommodation-booking-header .filters .inner-container .dropdown .lodges-container .lodge-row .remove-button svg {
            margin-right: 5px; }
          .accommodation-booking-header .filters .inner-container .dropdown .lodges-container .lodge-row .remove-button:hover {
            color: #a00;
            text-decoration: underline; }
      @media only screen and (max-width: 820px) {
        .accommodation-booking-header .filters .inner-container .dropdown .add-lodge-wrapper {
          position: absolute;
          bottom: 95px;
          width: 100%; } }
      .accommodation-booking-header .filters .inner-container .dropdown .add-lodge {
        font-size: 0.9em;
        color: #0f7fb5;
        cursor: pointer;
        margin-left: 10px; }
        @media (nothing) {
          .accommodation-booking-header .filters .inner-container .dropdown .add-lodge {
            color: #5c6d7f; } }
        @media only screen and (max-width: 820px) {
          .accommodation-booking-header .filters .inner-container .dropdown .add-lodge {
            width: 200px;
            margin: 0 20px 0 0;
            padding: 5px 0;
            text-align: center;
            float: right;
            background-color: rgba(100, 100, 100, 0.6);
            border: 2px solid #5c6d7f;
            border-radius: 30px;
            -webkit-box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.12), 0 1px 5px 0 rgba(0, 0, 0, 0.2);
            -moz-box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.12), 0 1px 5px 0 rgba(0, 0, 0, 0.2);
            box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.12), 0 1px 5px 0 rgba(0, 0, 0, 0.2);
            background-color: #fefefe; }
            @supports (-webkit-backdrop-filter: blur(10px)) or (backdrop-filter: blur(10px)) {
              .accommodation-booking-header .filters .inner-container .dropdown .add-lodge {
                -webkit-backdrop-filter: blur(10px);
                backdrop-filter: blur(10px);
                background-color: transparent; } } }
        .accommodation-booking-header .filters .inner-container .dropdown .add-lodge:hover {
          color: #a00;
          text-decoration: underline; }
          @media (nothing) {
            .accommodation-booking-header .filters .inner-container .dropdown .add-lodge:hover {
              color: #c66; } }
          @media only screen and (max-width: 820px) {
            .accommodation-booking-header .filters .inner-container .dropdown .add-lodge:hover {
              border-color: #a00;
              text-decoration: none; } }
  .accommodation-booking-header .accommodation-basket {
    position: absolute;
    top: 23px;
    right: 20px;
    -moz-user-select: -moz-none;
    -khtml-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
    cursor: default;
    cursor: pointer; }
    .accommodation-booking-header .accommodation-basket span {
      margin: 0 10px; }
    .accommodation-booking-header .accommodation-basket span.badge {
      display: inline-block;
      color: #fefefe;
      background-color: #a00;
      font-size: 0.65em;
      font-weight: bold;
      line-height: 1.75em;
      text-align: center;
      height: 20px;
      width: 20px;
      border-radius: 50%;
      margin: 0;
      position: absolute;
      left: 9px;
      top: -12px; }
    .accommodation-booking-header .accommodation-basket:hover {
      border-bottom: 3px solid #fefefe; }
      @media only screen and (max-width: 820px) {
        .accommodation-booking-header .accommodation-basket:hover {
          border-bottom: none; } }
      @media (nothing) {
        .accommodation-booking-header .accommodation-basket:hover {
          border-bottom-color: #799fb9; } }
    @media only screen and (max-width: 820px) {
      .accommodation-booking-header .accommodation-basket span {
        display: none;
        margin: 0; }
      .accommodation-booking-header .accommodation-basket span.badge {
        left: 21px;
        top: -13px; }
      .accommodation-booking-header .accommodation-basket svg.fa-chevron-right {
        display: none; }
      .accommodation-booking-header .accommodation-basket svg.fa-shopping-basket {
        font-size: 1.4em; } }
    .accommodation-booking-header .accommodation-basket .outer-container {
      position: fixed;
      top: 0;
      right: 0;
      height: 100vh;
      overflow-x: hidden;
      width: 0; }
      .accommodation-booking-header .accommodation-basket .outer-container.show {
        width: auto; }
        @media only screen and (min-width: 821px) {
          .accommodation-booking-header .accommodation-basket .outer-container.show {
            padding-left: 15px; } }
        .accommodation-booking-header .accommodation-basket .outer-container.show .content-container {
          transform: translateX(0); }
      .accommodation-booking-header .accommodation-basket .outer-container .content-container {
        background-color: #fefefe;
        transform: translateX(110%);
        transition: transform ease-out 0.2s;
        min-width: 300px;
        height: 100%; }
        @media (nothing) {
          .accommodation-booking-header .accommodation-basket .outer-container .content-container {
            background-color: #334; } }
        .accommodation-booking-header .accommodation-basket .outer-container .content-container .shadow {
          position: absolute;
          left: 0;
          top: -10vh;
          -webkit-box-shadow: -33px 3px 9px -31px rgba(0, 0, 0, 0.75);
          -moz-box-shadow: -33px 3px 9px -31px rgba(0, 0, 0, 0.75);
          box-shadow: -33px 3px 9px -31px rgba(0, 0, 0, 0.75);
          height: 120vh;
          width: 100px; }
          @media only screen and (max-width: 820px) {
            .accommodation-booking-header .accommodation-basket .outer-container .content-container .shadow {
              display: none; } }
        .accommodation-booking-header .accommodation-basket .outer-container .content-container .accommodation-basket-content {
          overflow-y: auto;
          overflow-x: hidden;
          height: calc(100% - 80px);
          padding: 0 20px; }
          .accommodation-booking-header .accommodation-basket .outer-container .content-container .accommodation-basket-content .checkout-button-container {
            display: none; }
          @media only screen and (max-width: 820px) {
            .accommodation-booking-header .accommodation-basket .outer-container .content-container .accommodation-basket-content {
              padding: 0; }
              .accommodation-booking-header .accommodation-basket .outer-container .content-container .accommodation-basket-content .checkout-button-container {
                padding: 20px;
                display: block; } }
        .accommodation-booking-header .accommodation-basket .outer-container .content-container .button-container {
          text-align: center;
          padding: 20px 0; }
          .accommodation-booking-header .accommodation-basket .outer-container .content-container .button-container .button-link {
            display: inline-block; }
        @media only screen and (max-width: 820px) {
          .accommodation-booking-header .accommodation-basket .outer-container .content-container {
            right: unset;
            left: 0;
            transform: translateX(-110%);
            width: 100%; }
            .accommodation-booking-header .accommodation-basket .outer-container .content-container .button-container {
              display: none; } }

.accommodation-lodge-indicator {
  display: block;
  text-align: left;
  max-width: none;
  margin: 20px 0; }
  @media only screen and (max-width: 1024px) {
    .accommodation-lodge-indicator {
      text-align: center;
      font-size: 0.9em; } }
  .accommodation-lodge-indicator .lodge {
    padding: 5px;
    border-radius: 5px;
    display: inline-block;
    width: auto;
    color: #ccc; }
    .accommodation-lodge-indicator .lodge > * {
      display: inline-block; }
    .accommodation-lodge-indicator .lodge svg {
      margin-right: 5px; }
    .accommodation-lodge-indicator .lodge.selected {
      color: #666; }
  .accommodation-lodge-indicator .is-more {
    margin: 0 10px;
    color: #ccc; }

.accommodation-payment-form {
  background-color: #eee; }
  @media (nothing) {
    .accommodation-payment-form {
      background-color: inherit; } }
  @media only screen and (max-width: 820px) {
    .accommodation-payment-form .single-column-format {
      padding: 0; } }
  .accommodation-payment-form .payment-header {
    padding: 20px 5px 0 5px;
    text-align: center; }
  .accommodation-payment-form .content-container {
    width: 100%;
    text-align: left;
    display: inline-block;
    box-sizing: border-box;
    margin-top: 30px; }
    .accommodation-payment-form .content-container > * {
      display: inline-block;
      vertical-align: top; }
      .accommodation-payment-form .content-container > * div.container {
        border-style: none;
        padding: 20px;
        margin-top: 30px;
        background-color: #fefefe; }
        @media (nothing) {
          .accommodation-payment-form .content-container > * div.container {
            background-color: #223; } }
        @media only screen and (min-width: 821px) {
          .accommodation-payment-form .content-container > * div.container {
            border-radius: 10px; } }
        .accommodation-payment-form .content-container > * div.container:first-child {
          margin-top: 0; }
        .accommodation-payment-form .content-container > * div.container div.legend {
          color: #5c6d7f;
          margin: 0;
          font-family: "roboto-regular"; }
          .accommodation-payment-form .content-container > * div.container div.legend svg {
            margin-right: 10px; }
        .accommodation-payment-form .content-container > * div.container #Country {
          padding: 5px; }
          @media only screen and (max-width: 820px) {
            .accommodation-payment-form .content-container > * div.container #Country {
              width: 100%;
              border: 1px solid #ddd;
              border-radius: 5px;
              background-color: #f9f9f9;
              padding: 10px 5px !important;
              font-size: 16px;
              box-sizing: border-box;
              outline: none; } }
    .accommodation-payment-form .content-container form {
      width: calc(100% - 390px);
      margin-right: 30px; }
      @media only screen and (max-width: 820px) {
        .accommodation-payment-form .content-container form {
          width: 100%;
          margin-right: 0; } }
      .accommodation-payment-form .content-container form .description {
        font-size: 0.8em;
        line-height: 1.4em;
        margin-bottom: 10px; }
      .accommodation-payment-form .content-container form div.container > div:not(.legend) {
        margin: 0 0 20px 0; }
        .accommodation-payment-form .content-container form div.container > div:not(.legend) .field-validation-error ~ svg {
          display: none; }
          .accommodation-payment-form .content-container form div.container > div:not(.legend) .field-validation-error ~ svg.error {
            display: inline-block; }
        .accommodation-payment-form .content-container form div.container > div:not(.legend) .valid ~ svg {
          display: none; }
          .accommodation-payment-form .content-container form div.container > div:not(.legend) .valid ~ svg.ok {
            display: inline-block; }
        .accommodation-payment-form .content-container form div.container > div:not(.legend) .label {
          color: #5c6d7f;
          font-size: 0.9em;
          font-family: "roboto-regular"; }
        .accommodation-payment-form .content-container form div.container > div:not(.legend) input[type=text], .accommodation-payment-form .content-container form div.container > div:not(.legend) input[type=password] {
          width: 100%;
          max-width: 300px;
          padding: 5px; }
          @media only screen and (max-width: 820px) {
            .accommodation-payment-form .content-container form div.container > div:not(.legend) input[type=text], .accommodation-payment-form .content-container form div.container > div:not(.legend) input[type=password] {
              max-width: unset;
              width: 100%;
              border: 1px solid #ddd;
              border-radius: 5px;
              background-color: #fefefe;
              padding: 15px 10px !important;
              font-size: 16px;
              box-sizing: border-box;
              outline: none; } }
        @media (nothing) {
          .accommodation-payment-form .content-container form div.container > div:not(.legend) input[type=text], .accommodation-payment-form .content-container form div.container > div:not(.legend) input[type=password], .accommodation-payment-form .content-container form div.container > div:not(.legend) select {
            background-color: #222;
            border: 1px solid #555;
            color: #c1be2f; } }
        .accommodation-payment-form .content-container form div.container > div:not(.legend) svg.ok, .accommodation-payment-form .content-container form div.container > div:not(.legend) svg.error {
          margin-left: 5px;
          vertical-align: middle;
          display: none; }
        .accommodation-payment-form .content-container form div.container > div:not(.legend) svg.ok {
          color: #69a364; }
        .accommodation-payment-form .content-container form div.container > div:not(.legend) svg.error {
          color: #a00; }
        .accommodation-payment-form .content-container form div.container > div:not(.legend).ok svg.ok {
          display: inline-block; }
        .accommodation-payment-form .content-container form div.container > div:not(.legend).error svg.error {
          display: inline-block; }
        .accommodation-payment-form .content-container form div.container > div:not(.legend) .info {
          font-size: 0.7em;
          line-height: 1.4em; }
      .accommodation-payment-form .content-container form div.container .existing-account {
        border-left: solid 5px #69a364;
        padding: 10px 10px 10px 5px;
        position: relative; }
        .accommodation-payment-form .content-container form div.container .existing-account a {
          color: #69a364;
          font-family: "roboto-regular"; }
          .accommodation-payment-form .content-container form div.container .existing-account a:hover {
            text-decoration: underline; }
        .accommodation-payment-form .content-container form div.container .existing-account svg {
          color: #69a364;
          font-size: 1.2em;
          vertical-align: top;
          margin-right: 15px; }
      .accommodation-payment-form .content-container form div.container .checkbox-group > div {
        display: inline-block;
        margin-right: 20px; }
        .accommodation-payment-form .content-container form div.container .checkbox-group > div label {
          font-size: 0.8em; }
      .accommodation-payment-form .content-container form div.container .address-lookup > div > div {
        padding: 5px 0; }
      .accommodation-payment-form .content-container form div.container .radio-button-list {
        position: relative; }
        .accommodation-payment-form .content-container form div.container .radio-button-list > label {
          display: block;
          font-size: 0.8em;
          margin-left: 10px;
          margin-bottom: 10px;
          box-sizing: border-box;
          white-space: nowrap; }
          .accommodation-payment-form .content-container form div.container .radio-button-list > label input {
            margin-right: 5px; }
          .accommodation-payment-form .content-container form div.container .radio-button-list > label.apple-pay svg {
            font-size: 2.5em;
            margin-bottom: -9px; }
      .accommodation-payment-form .content-container form div.container .bluestone-foundation {
        background-color: #f9f9f9;
        padding: 10px;
        border-radius: 10px; }
        @media (nothing) {
          .accommodation-payment-form .content-container form div.container .bluestone-foundation {
            background-color: #222;
            border: 1px solid #555; } }
        .accommodation-payment-form .content-container form div.container .bluestone-foundation > * {
          display: inline-block;
          vertical-align: middle; }
        .accommodation-payment-form .content-container form div.container .bluestone-foundation img {
          width: 80px; }
        .accommodation-payment-form .content-container form div.container .bluestone-foundation .bf-addons {
          position: relative;
          margin-top: 10px; }
          .accommodation-payment-form .content-container form div.container .bluestone-foundation .bf-addons label {
            padding: 20px; }
            @media only screen and (max-width: 820px) {
              .accommodation-payment-form .content-container form div.container .bluestone-foundation .bf-addons label {
                display: block;
                margin-bottom: 10px;
                border-bottom: solid 1px #999; } }
            .accommodation-payment-form .content-container form div.container .bluestone-foundation .bf-addons label span {
              font-size: 0.9em; }
      .accommodation-payment-form .content-container form div.container.payment-method {
        margin-bottom: 30px; }
        .accommodation-payment-form .content-container form div.container.payment-method .agreements {
          display: block;
          font-size: 0.8em; }
          @media only screen and (min-width: 821px) {
            .accommodation-payment-form .content-container form div.container.payment-method .agreements {
              padding: 0 0 0 20px; } }
          .accommodation-payment-form .content-container form div.container.payment-method .agreements input {
            font-size: 1em; }
          .accommodation-payment-form .content-container form div.container.payment-method .agreements > div > div {
            border: solid 2px #eee;
            border-radius: 5px;
            padding: 10px 10px;
            margin: 5px 0;
            transition: border-color linear 0.2s; }
            .accommodation-payment-form .content-container form div.container.payment-method .agreements > div > div.selected {
              border-color: #69a364; }
            @media (nothing) {
              .accommodation-payment-form .content-container form div.container.payment-method .agreements > div > div {
                border-color: #555;
                background-color: #222; }
                .accommodation-payment-form .content-container form div.container.payment-method .agreements > div > div.selected {
                  border-color: #474;
                  background-color: #131; } }
          .accommodation-payment-form .content-container form div.container.payment-method .agreements .terms {
            margin-bottom: 20px; }
        .accommodation-payment-form .content-container form div.container.payment-method .pay-amount {
          font-family: "roboto-regular";
          margin-top: 10px;
          font-size: 1.1em; }
        .accommodation-payment-form .content-container form div.container.payment-method .button-container.book-now {
          text-align: center;
          margin-top: 30px; }
          .accommodation-payment-form .content-container form div.container.payment-method .button-container.book-now .button-link {
            display: inline-block;
            padding: 15px 80px;
            font-family: "roboto-regular"; }
          .accommodation-payment-form .content-container form div.container.payment-method .button-container.book-now input {
            -webkit-appearance: none; }
        .accommodation-payment-form .content-container form div.container.payment-method .lowest-price-guarantee {
          text-align: center;
          margin: 20px 0;
          color: #4a9664;
          font-size: 0.9em; }
          .accommodation-payment-form .content-container form div.container.payment-method .lowest-price-guarantee svg {
            margin-right: 5px; }
      .accommodation-payment-form .content-container form div.container.contact-details {
        margin-top: 0; }
      .accommodation-payment-form .content-container form div.container .personalisation {
        padding-bottom: 20px; }
        .accommodation-payment-form .content-container form div.container .personalisation label {
          font-size: 0.9em;
          color: #999; }
        .accommodation-payment-form .content-container form div.container .personalisation input {
          margin-left: 10px; }
          .accommodation-payment-form .content-container form div.container .personalisation input:checked ~ span {
            color: #474; }
    .accommodation-payment-form .content-container .basket-container {
      float: right;
      width: 350px; }
      .accommodation-payment-form .content-container .basket-container .checkout-button-container {
        display: none; }
      .accommodation-payment-form .content-container .basket-container .lodge-image {
        padding-top: 10px; }
      @media only screen and (max-width: 820px) {
        .accommodation-payment-form .content-container .basket-container {
          float: left;
          width: 100%;
          margin-bottom: 20px; }
          .accommodation-payment-form .content-container .basket-container .accommodation-basket-content .item {
            border-bottom: none;
            border-top: 1px solid #ccc; }
            .accommodation-payment-form .content-container .basket-container .accommodation-basket-content .item fieldset {
              padding: 0; }
              .accommodation-payment-form .content-container .basket-container .accommodation-basket-content .item fieldset legend {
                padding-bottom: 0;
                border: none; } }

.accommodation-basket-content {
  text-align: center;
  color: #666; }
  @media (nothing) {
    .accommodation-basket-content {
      color: #999; } }
  .accommodation-basket-content .item {
    display: block;
    margin: 15px 0; }
    @media only screen and (max-width: 820px) {
      .accommodation-basket-content .item {
        border-bottom: 1px solid #ccc;
        margin: 10px 0;
        padding: 5px 0; } }
    .accommodation-basket-content .item .lodge-header {
      text-align: left; }
      .accommodation-basket-content .item .lodge-header span {
        margin: 0; }
      .accommodation-basket-content .item .lodge-header .remove-button, .accommodation-basket-content .item .lodge-header .change-button {
        float: right;
        font-size: 0.8em;
        color: #5c6d7f;
        cursor: pointer; }
        .accommodation-basket-content .item .lodge-header .remove-button:hover, .accommodation-basket-content .item .lodge-header .change-button:hover {
          color: #a00;
          text-decoration: underline; }
    .accommodation-basket-content .item .lodge-image {
      height: 120px;
      width: 300px; }
    .accommodation-basket-content .item fieldset {
      border-left: none !important;
      border-right: none !important;
      border-bottom: none !important;
      border-radius: 0 !important;
      margin: 5px 0 0 0; }
      @media (nothing) {
        .accommodation-basket-content .item fieldset {
          border-color: #2A6180; } }
      .accommodation-basket-content .item fieldset legend {
        font-size: 0.9em;
        text-transform: uppercase;
        color: #5c6d7f;
        padding: 0 10px; }
        .accommodation-basket-content .item fieldset legend span.index {
          display: none; }
        .accommodation-basket-content .item fieldset legend a.remove-button {
          display: none; }
        .accommodation-basket-content .item fieldset legend a.change-button {
          display: none; }
      .accommodation-basket-content .item fieldset div > * {
        display: inline-block;
        font-size: 0.8em;
        text-align: left; }
      .accommodation-basket-content .item fieldset div .label {
        width: 80px;
        color: #5c6d7f; }
      .accommodation-basket-content .item fieldset div .field {
        width: 160px; }
    @media only screen and (max-width: 820px) {
      .accommodation-basket-content .item .lodge-header {
        display: none; }
      .accommodation-basket-content .item .lodge-image {
        display: none; }
      .accommodation-basket-content .item fieldset {
        text-align: left;
        border: none !important;
        padding: 0 15px;
        margin: 0; }
        .accommodation-basket-content .item fieldset legend {
          position: relative;
          text-align: center;
          font-family: 'roboto-regular';
          text-transform: capitalize;
          padding: 0;
          padding-bottom: 10px;
          margin: 0;
          color: #666;
          width: 100%;
          border-bottom: 1px solid #ddd; }
          .accommodation-basket-content .item fieldset legend span.index {
            display: inline-block;
            position: absolute;
            left: 0; }
          .accommodation-basket-content .item fieldset legend span.title {
            display: inline-block; }
          .accommodation-basket-content .item fieldset legend a.remove-button {
            display: inline-block;
            color: #a00;
            position: absolute;
            right: 0; }
            .accommodation-basket-content .item fieldset legend a.remove-button svg {
              margin-right: 3px; }
          .accommodation-basket-content .item fieldset legend a.change-button {
            display: inline-block;
            position: absolute;
            right: 0; }
        .accommodation-basket-content .item fieldset div > * {
          font-size: 0.8em;
          padding: 0;
          margin: 0;
          line-height: 8px; } }
  .accommodation-basket-content .empty-basket {
    position: absolute;
    width: 100%;
    left: 0;
    top: 45%;
    text-align: center;
    font-size: 0.9em; }

.address-lookup {
  position: relative; }
  .address-lookup .address-picklist-container {
    position: absolute;
    z-index: 5;
    border: 1px solid #eee;
    box-shadow: rgba(0, 0, 0, 0.4);
    background-color: #fefefe;
    max-height: 300px;
    overflow-y: auto;
    width: 100%; }
    .address-lookup .address-picklist-container > * {
      cursor: pointer;
      font-size: 0.8em; }
      .address-lookup .address-picklist-container > * div, .address-lookup .address-picklist-container > * em {
        padding: 3px 5px; }
        .address-lookup .address-picklist-container > * div b, .address-lookup .address-picklist-container > * em b {
          color: #5c6d7f;
          font-family: "roboto-bold";
          font-weight: normal; }
        .address-lookup .address-picklist-container > * div:hover, .address-lookup .address-picklist-container > * em:hover {
          background-color: #758e8e;
          color: #fefefe; }
          .address-lookup .address-picklist-container > * div:hover b, .address-lookup .address-picklist-container > * em:hover b {
            color: #fefefe; }
        .address-lookup .address-picklist-container > * div:first-child, .address-lookup .address-picklist-container > * em:first-child {
          background-color: #c6dfdf; }
    .address-lookup .address-picklist-container .use-address-entered em {
      display: block;
      background-color: #54636e;
      color: #fefefe; }
    .address-lookup .address-picklist-container > *:hover div:first-child, .address-lookup .address-picklist-container > *:hover em:first-child {
      background-color: inherit; }
      .address-lookup .address-picklist-container > *:hover div:first-child:hover, .address-lookup .address-picklist-container > *:hover em:first-child:hover {
        background-color: #758e8e;
        color: #fefefe; }
        .address-lookup .address-picklist-container > *:hover div:first-child:hover b, .address-lookup .address-picklist-container > *:hover em:first-child:hover b {
          color: #fefefe; }

.pre-registration-form .reservation {
  border-left: solid 5px #5c6d7f;
  padding-left: 10px;
  box-sizing: border-box;
  margin-bottom: 60px; }
  .pre-registration-form .reservation .lodge-type {
    color: #5c6d7f;
    padding: 10px 10px 10px 0; }
  .pre-registration-form .reservation .party .party-member {
    text-align: center;
    max-width: 250px;
    width: 100%;
    display: inline-block;
    padding: 10px;
    border-radius: 25px;
    color: #5c6d7f;
    line-height: 2em;
    vertical-align: top;
    min-height: 170px;
    cursor: pointer;
    margin-top: 5px;
    background-color: #fee;
    margin: 20px 20px 0 0; }
    .pre-registration-form .reservation .party .party-member .lead-booker {
      font-size: 0.8em; }
    .pre-registration-form .reservation .party .party-member .guest-initials {
      border-radius: 50%;
      background-color: #a00;
      color: #fefefe;
      font-size: 1.3em;
      font-family: "roboto-bold";
      display: inline-block;
      padding: 10px;
      min-width: 37px;
      min-height: 37px; }
    .pre-registration-form .reservation .party .party-member > .person-icon {
      font-size: 2em;
      color: #fefefe; }
      .pre-registration-form .reservation .party .party-member > .person-icon svg {
        min-width: 37px;
        min-height: 37px;
        margin-top: 15px; }
    .pre-registration-form .reservation .party .party-member .details svg {
      margin-right: 5px; }
    .pre-registration-form .reservation .party .party-member .name {
      font-size: 0.9em; }
    .pre-registration-form .reservation .party .party-member.new .details, .pre-registration-form .reservation .party .party-member.existing .details {
      color: #a00; }
    .pre-registration-form .reservation .party .party-member.new:hover .details, .pre-registration-form .reservation .party .party-member.existing:hover .details {
      color: #fee; }
    .pre-registration-form .reservation .party .party-member.spare {
      color: #ccc;
      background-color: #fefefe; }
      .pre-registration-form .reservation .party .party-member.spare .details {
        visibility: hidden; }
      .pre-registration-form .reservation .party .party-member.spare:not(:hover) .person-icon {
        color: #ccc; }
    .pre-registration-form .reservation .party .party-member.complete {
      background-color: #eee; }
      .pre-registration-form .reservation .party .party-member.complete .guest-initials {
        background-color: #474; }
      .pre-registration-form .reservation .party .party-member.complete .lead-booker, .pre-registration-form .reservation .party .party-member.complete .details {
        color: #474; }
      .pre-registration-form .reservation .party .party-member.complete:hover .lead-booker, .pre-registration-form .reservation .party .party-member.complete:hover .details {
        color: #9c9; }
    .pre-registration-form .reservation .party .party-member:hover {
      background-color: #5c6d7f;
      border-color: #5c6d7f;
      color: #fefefe; }
  .pre-registration-form .reservation .car-registration ul {
    list-style: none; }
    .pre-registration-form .reservation .car-registration ul li {
      padding: 10px; }
      .pre-registration-form .reservation .car-registration ul li span {
        margin-left: 20px;
        color: #0f7fb5;
        cursor: pointer; }
        .pre-registration-form .reservation .car-registration ul li span:hover {
          color: #a00;
          text-decoration: underline; }
  .pre-registration-form .reservation .car-registration .new-registration span {
    margin-left: 20px;
    color: #0f7fb5;
    cursor: pointer; }
    .pre-registration-form .reservation .car-registration .new-registration span:hover {
      color: #a00;
      text-decoration: underline; }

.pre-registration-form .button-bar {
  text-align: center;
  margin-top: 50px; }
  .pre-registration-form .button-bar > div {
    display: inline-block;
    margin: 0 20px; }

.activity-search .search-criteria {
  text-align: center;
  margin: 20px 30px 30px; }
  .activity-search .search-criteria > div {
    display: inline-block;
    position: relative;
    margin: 10px 10px 0; }
    @media only screen and (max-width: 820px) {
      .activity-search .search-criteria > div {
        margin: 10px 5px 0; } }
    .activity-search .search-criteria > div .button {
      padding: 5px 15px;
      border: solid 2px #5c6d7f;
      cursor: pointer;
      color: #5c6d7f;
      border-radius: 50px; }
      .activity-search .search-criteria > div .button svg {
        margin-left: 10px; }
      .activity-search .search-criteria > div .button:hover, .activity-search .search-criteria > div .button.selected {
        background-color: #5c6d7f;
        color: #fefefe; }
    .activity-search .search-criteria > div .dropdown {
      position: absolute;
      border: solid 1px #eee;
      padding: 10px 0;
      box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
      border-radius: 10px;
      top: 50px;
      left: 0;
      z-index: 3;
      background-color: #fefefe;
      text-align: left;
      display: none; }
      .activity-search .search-criteria > div .dropdown h3 {
        margin: 0 0 10px 0;
        padding: 0 10px;
        color: #5c6d7f; }
    .activity-search .search-criteria > div.search-date .dropdown .category, .activity-search .search-criteria > div.search-date .dropdown .option, .activity-search .search-criteria > div.type .dropdown .category, .activity-search .search-criteria > div.type .dropdown .option, .activity-search .search-criteria > div.accompaniment .dropdown .category, .activity-search .search-criteria > div.accompaniment .dropdown .option {
      white-space: nowrap;
      padding: 5px 15px;
      cursor: pointer; }
      .activity-search .search-criteria > div.search-date .dropdown .category svg, .activity-search .search-criteria > div.search-date .dropdown .option svg, .activity-search .search-criteria > div.type .dropdown .category svg, .activity-search .search-criteria > div.type .dropdown .option svg, .activity-search .search-criteria > div.accompaniment .dropdown .category svg, .activity-search .search-criteria > div.accompaniment .dropdown .option svg {
        margin-right: 10px; }
      .activity-search .search-criteria > div.search-date .dropdown .category:hover, .activity-search .search-criteria > div.search-date .dropdown .option:hover, .activity-search .search-criteria > div.type .dropdown .category:hover, .activity-search .search-criteria > div.type .dropdown .option:hover, .activity-search .search-criteria > div.accompaniment .dropdown .category:hover, .activity-search .search-criteria > div.accompaniment .dropdown .option:hover {
        background-color: #5c6d7f;
        color: #fefefe; }
    .activity-search .search-criteria > div.type a {
      color: #666; }
    .activity-search .search-criteria > div.search-date .dropdown, .activity-search .search-criteria > div.age .dropdown {
      padding: 20px;
      width: 300px; }
      .activity-search .search-criteria > div.search-date .dropdown .date-range-slider, .activity-search .search-criteria > div.age .dropdown .date-range-slider {
        left: 10px;
        width: calc(100% - 40px);
        display: block; }
    .activity-search .search-criteria > div.search-date a, .activity-search .search-criteria > div.age a {
      margin: 20px 10px 10px 10px;
      color: #0f7fb5;
      display: block; }
      .activity-search .search-criteria > div.search-date a:hover, .activity-search .search-criteria > div.age a:hover {
        color: #a00;
        text-decoration: underline; }
    .activity-search .search-criteria > div.age .dropdown .date-range-slider .label {
      transform: initial;
      left: 3px; }

.activity-search .activities > div {
  display: inline-flex;
  flex-wrap: wrap; }
  @media (nothing) {
    .activity-search .activities > div {
      background-color: #112; } }
  .activity-search .activities > div .activity {
    display: inline-block;
    position: relative;
    color: #fefefe;
    margin: 10px;
    flex: 1 0 300px;
    transition: transform ease-in-out 0.2s;
    width: 300px; }
    .activity-search .activities > div .activity:hover {
      transform: scale(1.005);
      box-shadow: rgba(40, 40, 40, 0.4) 2px 2px 10px; }
    .activity-search .activities > div .activity .image {
      background-size: cover; }
    .activity-search .activities > div .activity .detail {
      padding: 10px;
      min-height: 100px;
      width: 100%;
      box-sizing: border-box;
      position: absolute;
      bottom: 0;
      left: 0; }
      .activity-search .activities > div .activity .detail .category {
        font-family: "roboto-regular";
        font-size: 0.7em;
        text-transform: uppercase; }
      .activity-search .activities > div .activity .detail .title {
        font-size: 1em;
        font-family: "roboto-bold"; }
      .activity-search .activities > div .activity .detail .rating {
        position: absolute;
        top: -30px; }
        .activity-search .activities > div .activity .detail .rating svg {
          -webkit-filter: drop-shadow(1px 1px 1px black);
          filter: drop-shadow(1px 1px 1px black); }
      .activity-search .activities > div .activity .detail .meta-d {
        display: flex;
        position: relative;
        flex-wrap: wrap; }
        .activity-search .activities > div .activity .detail .meta-d div {
          font-size: 0.8em;
          display: inline-block;
          flex: 1 1 auto;
          box-sizing: border-box;
          margin-right: 10px;
          white-space: nowrap; }

.date-range-slider {
  position: relative;
  height: 20px;
  margin-top: 30px; }
  .date-range-slider > *:focus {
    outline: none; }
  .date-range-slider .ui-slider-range {
    border: solid 2px #5c6d7f;
    position: absolute;
    top: 8px;
    margin-left: 10px;
    z-index: 2; }
  .date-range-slider .track-bar {
    border: solid 1px #999;
    position: absolute;
    top: 10px;
    margin-left: 10px;
    z-index: 0;
    width: 100%; }
    .date-range-slider .track-bar .terminator {
      background-color: #999;
      border-radius: 50%;
      width: 16px;
      height: 16px;
      display: block;
      position: absolute;
      z-index: 1;
      top: -8px; }
      .date-range-slider .track-bar .terminator:first-child {
        left: -8px; }
      .date-range-slider .track-bar .terminator:last-child {
        right: -8px; }
  .date-range-slider > span {
    background-color: #5c6d7f;
    border-radius: 50%;
    width: 20px;
    height: 20px;
    display: block;
    position: absolute;
    z-index: 3; }
    .date-range-slider > span .label {
      top: -25px;
      position: absolute;
      transform: translateX(-3px);
      font-size: 0.8em; }

.payment-by-card-view {
  min-height: 600px;
  width: 100%;
  position: relative; }
  .payment-by-card-view iframe {
    width: 100%;
    height: 100%;
    min-height: 600px;
    overflow: auto;
    border: 0; }

.break-type-selection .top-content {
  margin: 20px 0; }
  .break-type-selection .top-content h1.mobile {
    display: none; }
  @media only screen and (max-width: 1024px) {
    .break-type-selection .top-content h1 {
      font-size: 1em;
      text-align: center; }
    .break-type-selection .top-content .dates {
      display: none; } }
  @media only screen and (max-width: 820px) {
    .break-type-selection .top-content h1 {
      display: none; }
    .break-type-selection .top-content h1.mobile {
      display: block;
      font-family: "roboto-regular";
      font-size: 0.9em;
      margin: 0; }
    .break-type-selection .top-content .accommodation-lodge-indicator {
      font-family: "roboto-regular";
      font-size: 1em;
      margin: 0; }
    .break-type-selection .top-content svg {
      display: none; } }

.break-type-selection .rates {
  width: 100%;
  text-align: center; }
  .break-type-selection .rates .rate {
    display: inline-block;
    text-align: left;
    width: 100%;
    max-width: 300px;
    padding: 0;
    margin: 20px;
    vertical-align: top;
    border-radius: 10px;
    box-sizing: border-box;
    font-size: 0.9em;
    box-shadow: rgba(40, 40, 40, 0.4) 2px 2px 10px;
    transition: all linear 0.1s;
    background-color: #fefefe;
    cursor: pointer; }
    @media (nothing) {
      .break-type-selection .rates .rate {
        background-color: #223;
        box-shadow: rgba(80, 80, 80, 0.4) 2px 2px 10px; } }
    .break-type-selection .rates .rate.selected {
      background-color: #474;
      color: #fefefe; }
      @media (nothing) {
        .break-type-selection .rates .rate.selected {
          background-color: #131;
          color: #999; } }
    .break-type-selection .rates .rate:hover {
      box-shadow: rgba(40, 40, 40, 0.6) 3px 3px 15px;
      transform: translateX(-1px) translateY(-1px); }
      @media (nothing) {
        .break-type-selection .rates .rate:hover {
          box-shadow: rgba(100, 100, 120, 0.6) 3px 3px 15px; } }
    .break-type-selection .rates .rate .rate-button {
      display: none; }
    .break-type-selection .rates .rate h3 {
      margin-top: 0; }
      @media only screen and (max-width: 820px) {
        .break-type-selection .rates .rate h3 {
          display: none; } }
    .break-type-selection .rates .rate h3.mobile {
      display: none; }
    .break-type-selection .rates .rate .image {
      width: 100%;
      border-top-left-radius: 5px;
      border-top-right-radius: 5px; }
    .break-type-selection .rates .rate .content {
      padding: 20px; }
      .break-type-selection .rates .rate .content ul li {
        margin: 10px 0; }
    .break-type-selection .rates .rate .button-bar {
      margin: 0; }
      @media only screen and (min-width: 821px) {
        .break-type-selection .rates .rate .button-bar > *.mobile-close-button {
          display: none; } }
      @media only screen and (max-width: 820px) {
        .break-type-selection .rates .rate .button-bar {
          background-color: #fefefe; }
          .break-type-selection .rates .rate .button-bar > * {
            display: inline-block;
            margin: 10px; } }
      @media only screen and (min-width: 821px) {
        .break-type-selection .rates .rate .button-bar {
          padding: 0; }
          .break-type-selection .rates .rate .button-bar > * {
            display: block;
            margin: 0;
            border-radius: 0;
            text-align: center; }
            .break-type-selection .rates .rate .button-bar > *:hover {
              background-color: #d26c69; } }
    @media only screen and (max-width: 820px) {
      .break-type-selection .rates .rate {
        position: relative;
        display: block;
        max-width: unset;
        border: solid 1px #eee;
        margin: 20px 15px 0;
        width: calc(100% - 30px);
        border-radius: 0; }
        .break-type-selection .rates .rate .rate-button {
          position: absolute;
          display: block;
          width: 100%;
          height: 100%;
          cursor: pointer; }
        .break-type-selection .rates .rate .image {
          background-size: cover;
          height: 200px !important;
          border-radius: 0; }
        .break-type-selection .rates .rate h3.mobile {
          display: block;
          margin: 0;
          padding: 15px 0 15px 10px;
          border-radius: 0;
          box-sizing: border-box; }
          .break-type-selection .rates .rate h3.mobile span {
            display: block;
            font-size: 0.85em;
            font-weight: normal; }
        .break-type-selection .rates .rate .content {
          display: none; }
        .break-type-selection .rates .rate .button-bar {
          display: none; }
        .break-type-selection .rates .rate.detail-view {
          position: fixed;
          top: 0;
          margin: 0;
          left: 0;
          z-index: 100;
          width: 100%;
          height: 100vh;
          overflow: auto;
          cursor: pointer; }
          .break-type-selection .rates .rate.detail-view:hover {
            transform: unset; }
          .break-type-selection .rates .rate.detail-view .content {
            display: block; }
          .break-type-selection .rates .rate.detail-view .button-bar {
            display: block; }
          .break-type-selection .rates .rate.detail-view h3.mobile {
            background-color: #5c6d7f;
            color: #fefefe; } }

.break-type-selection .no-rates-found {
  text-align: center;
  margin: 50px 20px 80px 20px; }
  .break-type-selection .no-rates-found > div {
    display: inline-block;
    text-align: left; }
    .break-type-selection .no-rates-found > div > div:first-child {
      display: flex;
      padding: 0 20px;
      box-sizing: border-box; }
      .break-type-selection .no-rates-found > div > div:first-child svg {
        flex: 0 0 20px;
        font-size: 1.6em;
        transform: rotate(-20deg);
        margin-right: 10px;
        padding-top: 10px; }
      .break-type-selection .no-rates-found > div > div:first-child div {
        flex: 1 1 auto;
        font-family: 'roboto-light-italic'; }
    .break-type-selection .no-rates-found > div > div:last-child {
      color: #614b46;
      font-family: "roboto-regular"; }
    .break-type-selection .no-rates-found > div > div > * {
      margin: 30px 0; }

.break-type-selection .other-dates {
  font-size: 0.8em;
  text-align: center;
  width: 100%;
  visibility: hidden;
  min-height: 250px;
  margin-top: 40px;
  max-width: 90%; }
  .break-type-selection .other-dates.show {
    visibility: visible; }
  .break-type-selection .other-dates > div:first-child {
    display: inline;
    text-align: left;
    font-size: 1.4em;
    font-family: "roboto-regular";
    color: #5c6d7f;
    margin-top: 40px;
    box-sizing: border-box; }
    @media only screen and (min-width: 821px) {
      .break-type-selection .other-dates > div:first-child {
        margin: 40px 20px 20px 20px; } }
  .break-type-selection .other-dates .container {
    display: inline-block; }
    .break-type-selection .other-dates .container .accommodation-alternative-dates {
      display: inline-flex;
      flex-wrap: wrap;
      justify-content: space-evenly; }
      @supports (animation-fill-mode: forwards) and (not (-ms-ime-align: auto)) {
        .break-type-selection .other-dates .container .accommodation-alternative-dates {
          -webkit-animation: fade-slide-in-up 0.3s linear;
          -moz-animation: fade-slide-in-up 0.3s linear;
          -ms-animation: fade-slide-in-up 0.3s linear;
          -o-animation: fade-slide-in-up 0.3s linear;
          animation: fade-slide-in-up 0.3s linear; } }
      .break-type-selection .other-dates .container .accommodation-alternative-dates > div {
        color: #5c6d7f;
        flex: 0 1 auto;
        display: inline-block;
        margin: 20px;
        text-align: center;
        box-shadow: rgba(40, 40, 40, 0.4) 2px 2px 10px;
        box-sizing: border-box;
        border-radius: 10px;
        background-color: #f3edd6;
        padding: 20px;
        cursor: pointer;
        transition: all linear 0.1s; }
        @media (nothing) {
          .break-type-selection .other-dates .container .accommodation-alternative-dates > div {
            background-color: #223;
            box-shadow: rgba(80, 80, 80, 0.4) 2px 2px 10px; } }
        .break-type-selection .other-dates .container .accommodation-alternative-dates > div:hover {
          box-shadow: rgba(40, 40, 40, 0.6) 3px 3px 15px;
          transform: translateX(-1px) translateY(-1px); }
          @media (nothing) {
            .break-type-selection .other-dates .container .accommodation-alternative-dates > div:hover {
              box-shadow: rgba(100, 100, 120, 0.6) 3px 3px 15px; } }
        .break-type-selection .other-dates .container .accommodation-alternative-dates > div > div:first-child {
          font-family: "roboto-bold"; }
        .break-type-selection .other-dates .container .accommodation-alternative-dates > div > div:nth-child(2) > span:first-child {
          font-family: "roboto-regular";
          vertical-align: top;
          margin-top: 0;
          padding-top: 0; }
        .break-type-selection .other-dates .container .accommodation-alternative-dates > div > div:nth-child(2) > span:last-child {
          font-size: 1.8em;
          font-family: "roboto-bold";
          margin: 5px;
          color: #91bd21; }
        .break-type-selection .other-dates .container .accommodation-alternative-dates > div > div:nth-child(3) {
          font-size: 0.9em;
          display: inline;
          font-family: "roboto-regular"; }
          .break-type-selection .other-dates .container .accommodation-alternative-dates > div > div:nth-child(3) > span {
            font-family: "roboto-bold";
            font-size: 1.2em; }
        .break-type-selection .other-dates .container .accommodation-alternative-dates > div > div:last-child {
          display: inline;
          font-family: "roboto-regular"; }

.basket-content-container {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  min-width: 300px;
  z-index: 100;
  overflow-x: hidden;
  padding: 0;
  margin: 0;
  display: none; }
  .basket-content-container.show {
    display: block; }
    .basket-content-container.show > .inner {
      transform: unset; }
      @supports (animation-fill-mode: forwards) and (not (-ms-ime-align: auto)) {
        .basket-content-container.show > .inner {
          -webkit-animation: slide-in-reverse 0.2s ease forwards;
          -moz-animation: slide-in-reverse 0.2s ease forwards;
          -ms-animation: slide-in-reverse 0.2s ease forwards;
          -o-animation: slide-in-reverse 0.2s ease forwards;
          animation: slide-in-reverse 0.2s ease forwards;
          transform: translateX(100%); } }
  @media only screen and (max-width: 820px) {
    .basket-content-container {
      width: 100vw; } }
  .basket-content-container > .inner {
    background-color: #fefefe;
    height: 100%;
    margin: 0 0 0 5px;
    box-shadow: rgba(40, 40, 40, 0.9) 3px 3px 5px; }
    .basket-content-container > .inner .header {
      color: #5c6d7f;
      font-size: 1.6em;
      padding: 20px; }
    .basket-content-container > .inner .activity-basket-content {
      overflow-y: auto;
      overflow-x: hidden;
      height: calc(100% - 160px);
      padding: 0 20px;
      text-align: center;
      color: #666; }
      .basket-content-container > .inner .activity-basket-content .day {
        margin-bottom: 20px; }
        .basket-content-container > .inner .activity-basket-content .day .day-header {
          text-align: left;
          padding: 10px 0;
          border-bottom: 1px solid #999; }
          .basket-content-container > .inner .activity-basket-content .day .day-header span {
            margin: 0; }
            .basket-content-container > .inner .activity-basket-content .day .day-header span.day-name {
              font-size: 1.2em;
              margin-right: 15px; }
            .basket-content-container > .inner .activity-basket-content .day .day-header span.date-element {
              float: right; }
              .basket-content-container > .inner .activity-basket-content .day .day-header span.date-element .day-year {
                color: #999;
                font-size: 0.9em; }
        .basket-content-container > .inner .activity-basket-content .day .item {
          display: block;
          margin: 15px 0;
          text-align: left;
          overflow-x: hidden; }
          .basket-content-container > .inner .activity-basket-content .day .item h3 {
            padding: 0;
            margin: 0;
            font-size: 1em;
            color: #5c6d7f; }
          .basket-content-container > .inner .activity-basket-content .day .item h4 {
            padding: 0;
            margin: 0;
            font-size: 0.9em; }
          .basket-content-container > .inner .activity-basket-content .day .item .person {
            transition: transform ease-out 0.2s;
            position: relative; }
            .basket-content-container > .inner .activity-basket-content .day .item .person .inner .session {
              border-left: 2px solid #474;
              padding-left: 2px; }
              .basket-content-container > .inner .activity-basket-content .day .item .person .inner .session .session-time {
                color: #474;
                font-size: 0.9em; }
                .basket-content-container > .inner .activity-basket-content .day .item .person .inner .session .session-time svg:last-child {
                  margin-left: 20px; }
              .basket-content-container > .inner .activity-basket-content .day .item .person .inner .session ul {
                margin: 0;
                font-size: 0.8em; }
                .basket-content-container > .inner .activity-basket-content .day .item .person .inner .session ul li {
                  list-style: none; }
              .basket-content-container > .inner .activity-basket-content .day .item .person .inner .session .price {
                text-align: right; }
            .basket-content-container > .inner .activity-basket-content .day .item .person .bin {
              position: absolute;
              height: 100%;
              top: 0;
              right: 0;
              transform: translateX(100%);
              min-width: 80px;
              background-color: #a00;
              color: #fefefe;
              padding: 0 20px;
              font-size: 1.4em;
              border-left: 10px solid #fefefe;
              display: none; }
              .basket-content-container > .inner .activity-basket-content .day .item .person .bin:hover {
                background-color: #c00; }
              .basket-content-container > .inner .activity-basket-content .day .item .person .bin svg {
                position: relative;
                top: 50%;
                transform: translateY(-50%); }
            .basket-content-container > .inner .activity-basket-content .day .item .person .curtain {
              position: absolute;
              top: 0;
              left: 0;
              width: 100%;
              height: 100%;
              background-color: rgba(255, 255, 255, 0.8);
              display: none; }
            .basket-content-container > .inner .activity-basket-content .day .item .person.removing .curtain {
              display: block; }
            .basket-content-container > .inner .activity-basket-content .day .item .person.removing:hover {
              transform: translateX(0); }
      .basket-content-container > .inner .activity-basket-content .total-price {
        text-align: left;
        border-top: solid 3px #5c6d7f;
        margin-top: 20px;
        padding-top: 10px; }
        .basket-content-container > .inner .activity-basket-content .total-price h2 {
          display: inline;
          padding: 0;
          margin: 0; }
        .basket-content-container > .inner .activity-basket-content .total-price span {
          float: right;
          margin: 0;
          font-family: "roboto-bold";
          vertical-align: bottom;
          font-size: 1.1em;
          border-bottom: 3px double #999; }
      .basket-content-container > .inner .activity-basket-content .empty-basket {
        position: absolute;
        width: 100%;
        left: 0;
        top: 45%;
        text-align: center;
        font-size: 0.9em; }
      .basket-content-container > .inner .activity-basket-content.attached .day .item .person:hover {
        transform: translateX(-70px); }
      .basket-content-container > .inner .activity-basket-content.attached .day .item .person .bin {
        display: block; }
    .basket-content-container > .inner .button-container {
      text-align: center;
      padding: 20px 0; }
      .basket-content-container > .inner .button-container .button-link {
        display: inline-block; }
    @media only screen and (max-width: 820px) {
      .basket-content-container > .inner {
        width: 100%;
        left: 0; }
        .basket-content-container > .inner .mobile-header svg {
          font-size: unset; }
        .basket-content-container > .inner .header {
          display: none; }
        .basket-content-container > .inner .shadow {
          display: none; }
        .basket-content-container > .inner .button-container {
          text-align: center;
          padding: 20px; }
          .basket-content-container > .inner .button-container .button-link {
            margin: 0 10px; }
        .basket-content-container > .inner .activity-basket-content {
          height: calc(100% - 280px); } }

.activity-checkout-content form > div {
  vertical-align: top;
  box-sizing: border-box; }

.activity-checkout-content form .terms-and-conditions {
  border: 3px solid #5c6d7f;
  padding: 10px; }
  .activity-checkout-content form .terms-and-conditions h3, .activity-checkout-content form .terms-and-conditions h4 {
    color: #5c6d7f;
    margin: 0; }
  .activity-checkout-content form .terms-and-conditions h3 {
    margin-bottom: 10px; }
  .activity-checkout-content form .terms-and-conditions h4 {
    text-decoration: underline; }

.activity-checkout-content form .payment-method {
  display: inline-block;
  padding-right: 30px; }
  .activity-checkout-content form .payment-method .button-bar {
    margin-top: 50px; }

.activity-checkout-content form .basket-container {
  width: 100%;
  max-width: 300px;
  display: inline-block; }

.cards-on-file {
  -moz-user-select: -moz-none;
  -khtml-user-select: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
  cursor: default; }
  .cards-on-file .cards .card {
    display: inline-block;
    margin: 20px 20px 0 0;
    border: 1px solid #999;
    padding: 10px;
    border-radius: 10px;
    position: relative;
    cursor: pointer;
    min-width: 140px;
    min-height: 50px; }
    .cards-on-file .cards .card svg {
      font-size: 2em;
      display: inline-block;
      margin: 8px 20px 0 0;
      vertical-align: top;
      color: #5c6d7f;
      min-width: 40px; }
    .cards-on-file .cards .card div {
      display: inline-block;
      font-family: interstate-light; }
      .cards-on-file .cards .card div span {
        display: block;
        text-align: right; }
        .cards-on-file .cards .card div span:last-child {
          font-size: 0.8em; }
    .cards-on-file .cards .card.expired {
      background-color: #eee; }
      .cards-on-file .cards .card.expired svg {
        color: #ccc; }
      .cards-on-file .cards .card.expired .expired {
        position: absolute;
        display: block;
        font-size: 0.8em;
        color: #fefefe;
        background-color: #a00;
        bottom: 2px;
        left: 5px;
        padding: 0 5px; }
    .cards-on-file .cards .card.valid:hover, .cards-on-file .cards .card.new:hover {
      background-color: #2A6180;
      color: #fefefe;
      border-color: #2A6180; }
      .cards-on-file .cards .card.valid:hover svg, .cards-on-file .cards .card.new:hover svg {
        color: #fefefe; }
    .cards-on-file .cards .card.new span:last-child {
      color: #ccc; }
    .cards-on-file .cards .card.selected {
      background-color: #2A6180;
      color: #fefefe; }
      .cards-on-file .cards .card.selected svg {
        color: #fefefe; }
  .cards-on-file .existing-card, .cards-on-file .new-card {
    margin-top: 30px;
    display: none;
    font-size: 0.8em; }
    .cards-on-file .existing-card.show, .cards-on-file .new-card.show {
      display: block; }
    .cards-on-file .existing-card.amex .amex, .cards-on-file .new-card.amex .amex {
      display: block; }
    .cards-on-file .existing-card.amex .other, .cards-on-file .new-card.amex .other {
      display: none; }
    .cards-on-file .existing-card .amex, .cards-on-file .new-card .amex {
      display: none; }
    .cards-on-file .existing-card label, .cards-on-file .new-card label {
      display: inline-block; }
    .cards-on-file .existing-card span, .cards-on-file .new-card span {
      font-size: 0.8em; }
    .cards-on-file .existing-card input[type=text], .cards-on-file .new-card input[type=text] {
      max-width: 80px !important; }
    .cards-on-file .existing-card .transfer, .cards-on-file .new-card .transfer {
      color: #2A6180;
      font-family: "roboto-regular"; }
      .cards-on-file .existing-card .transfer svg, .cards-on-file .new-card .transfer svg {
        margin-right: 5px; }
  .cards-on-file .new-card {
    font-size: 0.8em; }
    .cards-on-file .new-card label {
      margin-bottom: 10px; }
  .cards-on-file.editor .cards .card {
    cursor: default;
    position: relative; }
    .cards-on-file.editor .cards .card.valid:hover {
      background-color: initial;
      color: inherit;
      border-color: #999; }
      .cards-on-file.editor .cards .card.valid:hover svg {
        color: #5c6d7f; }
    .cards-on-file.editor .cards .card.valid .remove {
      position: absolute;
      bottom: -30px;
      left: 0;
      width: 100%;
      font-size: 0.9em;
      text-align: center;
      color: #0f7fb5;
      cursor: pointer; }
      .cards-on-file.editor .cards .card.valid .remove svg {
        font-size: 1em;
        margin: 0 3px 0 0;
        padding: 0;
        min-width: 0px;
        vertical-align: middle; }
      .cards-on-file.editor .cards .card.valid .remove span {
        display: initial;
        position: initial;
        vertical-align: middle; }
      .cards-on-file.editor .cards .card.valid .remove:hover {
        color: #a00; }
        .cards-on-file.editor .cards .card.valid .remove:hover svg {
          color: #a00; }
        .cards-on-file.editor .cards .card.valid .remove:hover span {
          text-decoration: underline; }
    .cards-on-file.editor .cards .card.new {
      cursor: pointer; }

.guest-editor-curtain {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  display: none;
  max-width: none;
  background-color: rgba(100, 100, 100, 0.6); }
  @supports (-webkit-backdrop-filter: blur(10px)) or (backdrop-filter: blur(10px)) {
    .guest-editor-curtain {
      -webkit-backdrop-filter: blur(10px);
      backdrop-filter: blur(10px);
      background-color: rgba(255, 255, 255, 0.8); } }

.guest-editor {
  position: fixed;
  right: 0;
  top: 0;
  width: 100%;
  max-width: 500px;
  z-index: 50;
  background-color: #fefefe;
  height: 100%;
  transform: translateX(110%);
  transition: transform ease-out 0.2s;
  overflow-y: auto;
  box-shadow: rgba(40, 40, 40, 0.9) 5px 3px 15px; }
  .guest-editor.show {
    transform: translateX(0); }
  .guest-editor .loader {
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #fefefe;
    text-align: center;
    display: none; }
    .guest-editor .loader .wait-animation {
      position: absolute;
      top: 50%;
      transform: translateY(-50%); }
    .guest-editor .loader.show {
      display: block; }
  .guest-editor .editor-content .pre-registration-editor {
    padding: 20px;
    box-sizing: border-box; }
    .guest-editor .editor-content .pre-registration-editor > div {
      display: block;
      text-align: center; }
    .guest-editor .editor-content .pre-registration-editor .profile-pic {
      display: inline-block;
      border-radius: 50%;
      background-color: #5c6d7f;
      padding: 25px;
      font-size: 2em;
      color: #fefefe;
      margin: 10px; }
    .guest-editor .editor-content .pre-registration-editor .name-header {
      color: #5c6d7f; }
    .guest-editor .editor-content .pre-registration-editor .form {
      width: 100%;
      text-align: left; }
      .guest-editor .editor-content .pre-registration-editor .form > div {
        margin: 20px 0; }
      .guest-editor .editor-content .pre-registration-editor .form .label {
        font-size: 0.9em; }
      .guest-editor .editor-content .pre-registration-editor .form .field {
        font-size: 1em; }
        .guest-editor .editor-content .pre-registration-editor .form .field input[type=text] {
          width: 100%;
          max-width: 350px; }
        .guest-editor .editor-content .pre-registration-editor .form .field .select2 {
          font-size: 0.8em; }
          .guest-editor .editor-content .pre-registration-editor .form .field .select2 .select2-selection {
            border-color: #999; }
          .guest-editor .editor-content .pre-registration-editor .form .field .select2 li.select2-selection__choice {
            background-color: #5c6d7f;
            color: #fefefe;
            border-color: transparent; }
          .guest-editor .editor-content .pre-registration-editor .form .field .select2 li span {
            margin-right: 5px;
            color: #fefefe;
            font-family: Arial, Verdana; }
      .guest-editor .editor-content .pre-registration-editor .form .accessibility, .guest-editor .editor-content .pre-registration-editor .form .diet {
        margin-top: 30px; }
        .guest-editor .editor-content .pre-registration-editor .form .accessibility .field select, .guest-editor .editor-content .pre-registration-editor .form .diet .field select {
          width: 100%; }
      .guest-editor .editor-content .pre-registration-editor .form .dob .field input {
        width: 60px; }
      .guest-editor .editor-content .pre-registration-editor .form .profile-traits {
        margin-top: 30px; }
        .guest-editor .editor-content .pre-registration-editor .form .profile-traits .field div {
          padding: 5px 20px;
          background-color: #999;
          color: #fefefe;
          border-radius: 20px;
          cursor: pointer;
          width: auto;
          display: inline-block;
          margin: 10px 10px 0 0;
          font-size: 0.9em; }
          .guest-editor .editor-content .pre-registration-editor .form .profile-traits .field div.selected {
            background-color: #5c6d7f; }
          .guest-editor .editor-content .pre-registration-editor .form .profile-traits .field div:hover {
            background-color: #799fb9; }
      .guest-editor .editor-content .pre-registration-editor .form .button-bar {
        margin-top: 40px;
        text-align: center; }
        .guest-editor .editor-content .pre-registration-editor .form .button-bar .button-link {
          display: inline-block;
          padding: 15px 30px; }
        .guest-editor .editor-content .pre-registration-editor .form .button-bar .button {
          cursor: pointer;
          margin-left: 20px;
          display: inline-block; }
          .guest-editor .editor-content .pre-registration-editor .form .button-bar .button:hover {
            text-decoration: underline; }

.image-collage {
  text-align: center;
  flex-flow: wrap;
  position: relative;
  justify-content: space-between; }
  @media only screen and (min-width: 821px) {
    .image-collage {
      display: flex; } }
  .image-collage > div {
    position: relative;
    margin: 0;
    border: 5px solid transparent; }
    @media only screen and (min-width: 821px) {
      .image-collage > div {
        flex: 1 1 30%;
        margin: 10px;
        box-sizing: border-box;
        overflow: hidden; } }
    @media only screen and (max-width: 820px) {
      .image-collage > div {
        margin-bottom: 10px; } }
    .image-collage > div > div {
      position: relative;
      display: block;
      box-sizing: border-box;
      width: 100%; }
      @media only screen and (min-width: 821px) {
        .image-collage > div > div {
          padding-top: 56.25%; } }
      @media only screen and (max-width: 820px) {
        .image-collage > div > div {
          height: 300px; } }
    .image-collage > div > span {
      position: absolute;
      bottom: 10px;
      right: 5px;
      color: #fefefe;
      text-shadow: 2px 2px 13px rgba(40, 40, 40, 0.5), 2px 2px 13px rgba(40, 40, 40, 0.5), 3px 3px 13px rgba(40, 40, 40, 0.3);
      font-size: 0.9em; }

body.seq-0 .image-collage > div {
  border-color: #e07272; }
  @media (nothing) {
    body.seq-0 .image-collage > div {
      border-color: #4e2829; } }

body.seq-1 .image-collage > div {
  border-color: #33a5dc; }
  @media (nothing) {
    body.seq-1 .image-collage > div {
      border-color: #0f3142; } }

body.seq-2 .image-collage > div {
  border-color: #f3af35; }
  @media (nothing) {
    body.seq-2 .image-collage > div {
      border-color: #33250b; } }

body.seq-3 .image-collage > div {
  border-color: #8fbe21; }
  @media (nothing) {
    body.seq-3 .image-collage > div {
      border-color: #212C08; } }

body.seq-4 .image-collage > div {
  border-color: #f6b592; }
  @media (nothing) {
    body.seq-4 .image-collage > div {
      border-color: #6d2c08; } }

body.seq-5 .image-collage > div {
  border-color: #343c52; }
  @media (nothing) {
    body.seq-5 .image-collage > div {
      border-color: #343c52; } }

body.seq-6 .image-collage > div {
  border-color: #4271a8; }
  @media (nothing) {
    body.seq-6 .image-collage > div {
      border-color: #0f3d75; } }

.web-preferences, .marketing-preferences {
  font-size: 0.9em; }
  .web-preferences h3, .marketing-preferences h3 {
    margin-bottom: 0; }
  .web-preferences .options, .marketing-preferences .options {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none; }
    .web-preferences .options input[type=checkbox] ~ svg, .marketing-preferences .options input[type=checkbox] ~ svg {
      margin-right: 5px; }
      .web-preferences .options input[type=checkbox] ~ svg.checked, .marketing-preferences .options input[type=checkbox] ~ svg.checked {
        display: none; }
      .web-preferences .options input[type=checkbox] ~ svg.unchecked, .marketing-preferences .options input[type=checkbox] ~ svg.unchecked {
        display: inline-block; }
    .web-preferences .options input[type=checkbox]:checked ~ svg, .marketing-preferences .options input[type=checkbox]:checked ~ svg {
      margin-right: 5px; }
      .web-preferences .options input[type=checkbox]:checked ~ svg.checked, .marketing-preferences .options input[type=checkbox]:checked ~ svg.checked {
        display: inline-block; }
      .web-preferences .options input[type=checkbox]:checked ~ svg.unchecked, .marketing-preferences .options input[type=checkbox]:checked ~ svg.unchecked {
        display: none; }
    .web-preferences .options input[type=checkbox], .marketing-preferences .options input[type=checkbox] {
      display: none; }
    .web-preferences .options .disabled, .marketing-preferences .options .disabled {
      color: #999; }
    .web-preferences .options div, .marketing-preferences .options div {
      display: inline-block;
      margin: 10px 20px; }
  .web-preferences .info, .marketing-preferences .info {
    padding-top: 20px;
    font-size: 0.9em !important;
    margin-top: 0 !important; }
    .web-preferences .info:not(:first-of-type), .marketing-preferences .info:not(:first-of-type) {
      border-top: 1px solid #ccc; }

.profile-picture {
  position: relative; }
  .profile-picture .image {
    border: 8px solid #9c9;
    width: 80px;
    height: 80px;
    border-radius: 50%;
    background-color: #fefefe;
    margin-bottom: 20px;
    cursor: pointer;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    transition: border-color linear 0.2s; }
    .profile-picture .image .edit-icon {
      border-radius: 50%;
      box-shadow: rgba(40, 40, 40, 0.2) 5px 5px 5px;
      background-color: #fefefe;
      border: none;
      position: absolute;
      bottom: -5px;
      right: -5px;
      padding: 10px;
      width: 18px;
      height: 18px;
      transition: opacity linear 0.2s, background-color linear 0.2s; }
      .profile-picture .image .edit-icon svg {
        width: 100%;
        height: 100%;
        padding-bottom: 2px; }
    .profile-picture .image:hover {
      border-color: #474; }
      .profile-picture .image:hover .edit-icon {
        background-color: #9c9; }
  .profile-picture.loading .edit-icon {
    opacity: 0; }
  .profile-picture.loading .image {
    animation: profile-picture-loading 2s linear infinite alternate-reverse; }
  .profile-picture .profile-pic-upload {
    display: none; }

@supports (animation-fill-mode: forwards) and (not (-ms-ime-align: auto)) {
  @keyframes profile-picture-loading {
    from {
      border-color: #ccc; }
    to {
      border-color: #474; } }
  @-moz-keyframes profile-picture-loading {
    from {
      border-color: #ccc; }
    to {
      border-color: #474; } }
  @-webkit-keyframes profile-picture-loading {
    from {
      border-color: #ccc; }
    to {
      border-color: #474; } }
  @-ms-keyframes profile-picture-loading {
    from {
      border-color: #ccc; }
    to {
      border-color: #474; } }
  @-o-keyframes profile-picture-loading {
    from {
      border-color: #ccc; }
    to {
      border-color: #474; } } }

.profile-picture-mini {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  position: relative;
  padding: 3px;
  -moz-user-select: -moz-none;
  -khtml-user-select: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
  cursor: default; }
  .profile-picture-mini:hover {
    background-color: #fefefe; }
  .profile-picture-mini > * {
    border: solid 2px #fefefe;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    border-radius: 50%;
    display: block; }
  .profile-picture-mini div {
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat; }
  .profile-picture-mini span {
    vertical-align: bottom;
    font-size: 22px;
    background-color: #d77;
    color: #fefefe;
    text-align: center;
    padding-top: 7px; }

.faq-macro .faq {
  background-color: #eee; }
  .faq-macro .faq .question-and-answer {
    padding: 25px 0;
    position: relative;
    border-bottom: 10px solid white; }
    .faq-macro .faq .question-and-answer svg {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      font-size: 1.4em;
      width: 50px; }
    .faq-macro .faq .question-and-answer .q-text {
      width: calc(100% - 50px);
      margin-left: 50px; }
      .faq-macro .faq .question-and-answer .q-text .question {
        font-family: "roboto-regular"; }

.bounce-container {
  padding: 20px;
  text-align: center; }
  .bounce-container .wait {
    display: inline-block; }
    .bounce-container .wait .wait-animation, .bounce-container .wait svg {
      color: #5c6d7f;
      display: inline;
      font-size: 3em;
      width: auto; }
  .bounce-container h1 {
    margin-bottom: 40px;
    text-align: center; }
  .bounce-container .redirect {
    text-align: left; }

.contact-us-form form {
  width: 60%; }
  @media only screen and (max-width: 1024px) and (min-width: 821px) {
    .contact-us-form form {
      width: 100%; } }
  @media only screen and (max-width: 820px) {
    .contact-us-form form {
      width: 100%; } }
  .contact-us-form form .umbraco-forms-page {
    padding-right: 20px; }
    .contact-us-form form .umbraco-forms-page h4 {
      font-size: 25px; }
    .contact-us-form form .umbraco-forms-page fieldset {
      border: none;
      padding-bottom: 0;
      margin-bottom: 0; }
    .contact-us-form form .umbraco-forms-page .umbraco-forms-container .umbraco-forms-field {
      padding-left: 20px; }
      .contact-us-form form .umbraco-forms-page .umbraco-forms-container .umbraco-forms-field .umbraco-forms-indicator {
        color: red; }
      .contact-us-form form .umbraco-forms-page .umbraco-forms-container .umbraco-forms-field .umbraco-forms-label {
        font-weight: bold; }
      .contact-us-form form .umbraco-forms-page .umbraco-forms-container .umbraco-forms-field .umbraco-forms-field-wrapper {
        padding-bottom: 5px;
        margin-right: 10px;
        /*input[type="checkbox"] {
                        width: auto;
                        padding: 10px;
                    }*/ }
        .contact-us-form form .umbraco-forms-page .umbraco-forms-container .umbraco-forms-field .umbraco-forms-field-wrapper input {
          width: 97%;
          max-width: none !important;
          padding: 10px; }
        .contact-us-form form .umbraco-forms-page .umbraco-forms-container .umbraco-forms-field .umbraco-forms-field-wrapper select {
          width: 100%;
          padding: 10px; }
        .contact-us-form form .umbraco-forms-page .umbraco-forms-container .umbraco-forms-field .umbraco-forms-field-wrapper textarea {
          width: 97%;
          height: 70px;
          padding: 10px; }
    .contact-us-form form .umbraco-forms-page .umbraco-forms-navigation {
      padding-left: 20px; }
      .contact-us-form form .umbraco-forms-page .umbraco-forms-navigation input {
        background-color: #a00;
        color: #fefefe;
        padding: 10px 20px;
        border-radius: 5px;
        cursor: pointer;
        font-size: 15px;
        font-weight: bold;
        border-style: none; }

.vertical-article-list {
  position: relative;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }
  .vertical-article-list .article {
    display: inline-block;
    width: 49%;
    position: relative;
    margin-top: 20px;
    cursor: pointer; }
    @media only screen and (min-width: 821px) {
      @supports (animation-fill-mode: forwards) and (not (-ms-ime-align: auto)) {
        .vertical-article-list .article {
          -webkit-animation: float-in 0.5s ease-in-out forwards;
          -moz-animation: float-in 0.5s ease-in-out forwards;
          -ms-animation: float-in 0.5s ease-in-out forwards;
          -o-animation: float-in 0.5s ease-in-out forwards;
          animation: float-in 0.5s ease-in-out forwards;
          opacity: 0;
          transform: translateY(40px);
          transition: none; } }
      .vertical-article-list .article:hover {
        transform: scale(1.005);
        box-shadow: rgba(40, 40, 40, 0.4) 2px 2px 10px; }
      .vertical-article-list .article:nth-child(2n) {
        float: right;
        animation-delay: 0.25s; }
        .vertical-article-list .article:nth-child(2n) .image .name {
          transition-delay: 0.25s; } }
    @media only screen and (max-width: 820px) {
      .vertical-article-list .article {
        width: 100vw;
        display: block;
        margin-left: -15px; } }
    .vertical-article-list .article .video-container {
      position: absolute; }
    .vertical-article-list .article .image {
      position: relative;
      width: 100%;
      background-size: cover; }
      .vertical-article-list .article .image .name {
        position: absolute;
        bottom: 20px;
        padding: 5px 10px;
        color: #fefefe;
        font-size: 2em;
        line-height: 1em;
        width: auto;
        transition: transform ease-in-out 1s;
        transition-property: opacity, transform; }
        @media only screen and (min-width: 821px) {
          .vertical-article-list .article .image .name {
            left: 20px; } }
        @media only screen and (max-width: 820px) {
          .vertical-article-list .article .image .name {
            right: 0;
            margin-left: 20px; } }
        @media (nothing) {
          .vertical-article-list .article .image .name {
            color: #999; } }
    .vertical-article-list .article .detail {
      background-color: #eee;
      padding: 10px;
      position: absolute;
      bottom: 0;
      width: 100%;
      left: 0;
      min-height: 100px;
      box-sizing: border-box;
      color: #2A6180; }
      @media (nothing) {
        .vertical-article-list .article .detail {
          background-color: #222;
          color: #799fb9; } }
      .vertical-article-list .article .detail .category {
        font-family: "roboto-regular";
        font-size: 0.7em;
        text-transform: uppercase; }
      .vertical-article-list .article .detail .sub-title {
        font-size: 1em; }
    .vertical-article-list .article.animate {
      animation: none; }
      @supports (animation-fill-mode: forwards) and (not (-ms-ime-align: auto)) {
        @media only screen and (min-width: 821px) {
          .vertical-article-list .article.animate {
            opacity: 0;
            transform: translateY(40px);
            transition: none; } }
        .vertical-article-list .article.animate .name {
          transform: translateX(-30px);
          opacity: 0; } }

@supports (animation-fill-mode: forwards) and (not (-ms-ime-align: auto)) {
  @keyframes float-in {
    from {
      opacity: 0;
      transform: translateY(40px);
      transition: none; }
    to {
      opacity: 1;
      transform: initial;
      transition: transform ease-in-out 0.2s;
      transition-property: opacity, transform; } }
  @-moz-keyframes float-in {
    from {
      opacity: 0;
      transform: translateY(40px);
      transition: none; }
    to {
      opacity: 1;
      transform: initial;
      transition: transform ease-in-out 0.2s;
      transition-property: opacity, transform; } }
  @-webkit-keyframes float-in {
    from {
      opacity: 0;
      transform: translateY(40px);
      transition: none; }
    to {
      opacity: 1;
      transform: initial;
      transition: transform ease-in-out 0.2s;
      transition-property: opacity, transform; } }
  @-ms-keyframes float-in {
    from {
      opacity: 0;
      transform: translateY(40px);
      transition: none; }
    to {
      opacity: 1;
      transform: initial;
      transition: transform ease-in-out 0.2s;
      transition-property: opacity, transform; } }
  @-o-keyframes float-in {
    from {
      opacity: 0;
      transform: translateY(40px);
      transition: none; }
    to {
      opacity: 1;
      transform: initial;
      transition: transform ease-in-out 0.2s;
      transition-property: opacity, transform; } } }

.toaster {
  margin-bottom: 20px; }
  .toaster .toast {
    color: #fefefe;
    width: 100%;
    padding: 10px; }
    .toaster .toast h4 {
      margin: 0;
      padding: 0; }
    .toaster .toast div > * {
      display: inline-block;
      vertical-align: middle; }
    .toaster .toast div .left {
      width: 40px;
      padding: 10px;
      font-size: 2em;
      position: relative; }
      .toaster .toast div .left svg {
        vertical-align: middle; }
    .toaster .toast div .right {
      width: calc(100% - 70px); }
      .toaster .toast div .right div {
        display: block; }
    .toaster .toast .button-bar {
      display: block;
      text-align: right; }
      .toaster .toast .button-bar .button-link {
        display: inline-block; }

.toast-popup-message {
  position: fixed;
  z-index: 1000;
  top: 10px;
  right: 10px;
  background-color: #d3724a;
  border-left: 7px solid #812007;
  color: #fefefe;
  width: 100%;
  max-width: 350px;
  padding: 10px;
  box-shadow: rgba(40, 40, 40, 0.4) 2px 2px 10px;
  animation: toast-appear 8s ease forwards; }
  .toast-popup-message > * {
    display: inline-block;
    vertical-align: middle;
    box-sizing: border-box; }
  .toast-popup-message .ico-container {
    width: 40px;
    font-size: 2em;
    text-align: center; }
  .toast-popup-message .right {
    width: calc(100% - 60px);
    margin-left: 10px; }
    .toast-popup-message .right .title {
      font-family: "roboto-regular";
      font-size: 1.2em; }

@supports (animation-fill-mode: forwards) and (not (-ms-ime-align: auto)) {
  @keyframes toast-appear {
    0% {
      transform: translateX(100%); }
    5% {
      transform: unset; }
    90% {
      opacity: 1; }
    100% {
      opacity: 0; } }
  @-moz-keyframes toast-appear {
    0% {
      transform: translateX(100%); }
    5% {
      transform: unset; }
    90% {
      opacity: 1; }
    100% {
      opacity: 0; } }
  @-webkit-keyframes toast-appear {
    0% {
      transform: translateX(100%); }
    5% {
      transform: unset; }
    90% {
      opacity: 1; }
    100% {
      opacity: 0; } }
  @-ms-keyframes toast-appear {
    0% {
      transform: translateX(100%); }
    5% {
      transform: unset; }
    90% {
      opacity: 1; }
    100% {
      opacity: 0; } }
  @-o-keyframes toast-appear {
    0% {
      transform: translateX(100%); }
    5% {
      transform: unset; }
    90% {
      opacity: 1; }
    100% {
      opacity: 0; } } }

.cookie-consent {
  z-index: 1000;
  position: fixed;
  bottom: 0;
  width: 100%;
  min-height: 200px;
  box-shadow: rgba(40, 40, 40, 0.6) 0px -2px 4px;
  box-sizing: border-box;
  color: #fefefe;
  background-color: #758e8e;
  overflow-y: auto;
  max-height: 100vh; }
  .cookie-consent > div {
    padding: 10px 20px; }
  .cookie-consent svg {
    margin-right: 5px; }
  .cookie-consent a {
    color: #fefefe;
    font-family: "roboto-regular"; }
    .cookie-consent a:hover {
      text-decoration: underline;
      color: #fefefe; }
  .cookie-consent .button-bar {
    text-align: right; }
    .cookie-consent .button-bar > * {
      vertical-align: middle;
      margin: 20px 10px; }
    .cookie-consent .button-bar .button-sub-link {
      color: #ededed;
      font-size: 0.8em; }
  .cookie-consent .configure {
    background-color: #614b46;
    font-size: 0.9em; }
    .cookie-consent .configure ul {
      list-style: none;
      padding: 0 20px; }
      .cookie-consent .configure ul li {
        margin: 25px 0; }
        .cookie-consent .configure ul li label {
          position: relative;
          cursor: pointer; }
          .cookie-consent .configure ul li label:hover > span.title {
            text-decoration: underline; }
          .cookie-consent .configure ul li label > * {
            vertical-align: middle; }
          .cookie-consent .configure ul li label > span.title {
            font-family: "roboto-regular"; }
          .cookie-consent .configure ul li label > span:last-child {
            display: block;
            font-size: 0.8em; }

.button-link-macro {
  display: block;
  width: 100%;
  text-align: center;
  /* & ~ .button-link-macro {
        margin-left: 10px;
        margin-right: 10px;
    }*/ }
  .button-link-macro .button-link, .button-link-macro a, .button-link-macro a:hover {
    display: inline-block;
    color: #fefefe; }
    .button-link-macro .button-link svg, .button-link-macro a svg, .button-link-macro a:hover svg {
      margin-right: 5px; }

.hour-selector {
  position: relative; }
  .hour-selector:not(:hover) .hour.not-selected .button-link {
    opacity: 0.4; }
  .hour-selector .hour {
    padding: 5px;
    border-top: 3px solid transparent;
    margin: 40px -2px 0 -2px;
    position: relative; }
    .hour-selector .hour .button-link {
      transition: opacity linear 0.2s; }
    .hour-selector .hour.day {
      border-top-color: #bbf; }
    .hour-selector .hour.night {
      border-top-color: #224; }
    .hour-selector .hour.selected .button-link {
      background-color: #e94b3a; }
    .hour-selector .hour > svg {
      color: #d3724a;
      position: absolute;
      top: -30px;
      font-size: 1.6em; }
    .hour-selector .hour > .date {
      position: absolute;
      top: -30px;
      white-space: nowrap;
      vertical-align: middle;
      color: #5c6d7f;
      border-left: 2px solid #5c6d7f;
      padding-left: 5px; }
      .hour-selector .hour > .date svg {
        font-size: 1.6em;
        vertical-align: middle; }
    .hour-selector .hour:first-child.day svg {
      color: #c1be2f; }
    .hour-selector .hour:first-child.night svg {
      color: #224; }

.loading-dialog {
  position: fixed;
  display: none;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: 100;
  text-align: center; }
  .loading-dialog.show {
    display: block; }
  .loading-dialog .curtain {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-color: rgba(250, 250, 250, 0.6); }
  .loading-dialog .foreground {
    background-color: rgba(100, 100, 100, 0.6);
    display: inline-block;
    position: relative;
    height: 100%;
    width: 100%;
    overflow: hidden; }
    @supports (-webkit-backdrop-filter: blur(10px)) or (backdrop-filter: blur(10px)) {
      .loading-dialog .foreground {
        -webkit-backdrop-filter: blur(10px);
        backdrop-filter: blur(10px);
        background-color: rgba(40, 40, 40, 0.4); } }
    @media only screen and (min-width: 821px) {
      .loading-dialog .foreground {
        max-height: 400px;
        max-width: 600px;
        border-radius: 10px;
        box-shadow: rgba(40, 40, 40, 0.3) 5px 5px 5px;
        transform: translateY(-50%);
        top: 50%; } }
    .loading-dialog .foreground .content {
      position: absolute;
      height: 100%;
      width: 100%;
      top: 0;
      right: 0;
      background-color: #fefefe; }
      @media only screen and (max-width: 820px) {
        .loading-dialog .foreground .content {
          background-size: cover; } }
      .loading-dialog .foreground .content img {
        position: absolute;
        top: 10px;
        right: 10px; }
      @media only screen and (min-width: 821px) {
        .loading-dialog .foreground .content {
          width: calc(100% - 100px); } }
    .loading-dialog .foreground .loading {
      font-size: 2em;
      bottom: 30px;
      left: 30px;
      position: absolute; }
      .loading-dialog .foreground .loading svg {
        color: #fefefe;
        position: absolute;
        left: 0; }
        @media only screen and (min-width: 821px) {
          .loading-dialog .foreground .loading svg {
            top: -5px; } }
      .loading-dialog .foreground .loading div {
        color: #fefefe;
        margin-left: 80px;
        text-shadow: 2px 2px 13px rgba(40, 40, 40, 0.5), 2px 2px 13px rgba(40, 40, 40, 0.5), 3px 3px 13px rgba(40, 40, 40, 0.3);
        text-align: left;
        line-height: 1.1em; }

.vehicle-rental-registration.no-guests > div:first-child {
  text-align: center;
  background-color: #a00;
  color: #fefefe; }
  .vehicle-rental-registration.no-guests > div:first-child div:first-child svg {
    display: inline-block;
    width: 30px; }
  .vehicle-rental-registration.no-guests > div:first-child div:first-child > div {
    display: inline-block; }

.vehicle-rental-registration .guests-container {
  text-align: left; }
  .vehicle-rental-registration .guests-container .guests {
    display: inline-flex;
    width: auto; }
    .vehicle-rental-registration .guests-container .guests .guest {
      display: inline-block;
      flex: 1 0 50px;
      margin: 10px 20px;
      text-align: center;
      position: relative;
      min-height: 75px;
      cursor: pointer;
      border-bottom-style: solid;
      border-bottom-width: 5px;
      background-color: transparent;
      padding: 5px;
      transition: border-color linear 0.2s; }
      .vehicle-rental-registration .guests-container .guests .guest:not(.selected) {
        border-bottom-color: transparent; }
      .vehicle-rental-registration .guests-container .guests .guest .highlight {
        padding: 2px;
        border-radius: 50%;
        display: inline-block;
        transition: background-color linear 0.2s; }
        .vehicle-rental-registration .guests-container .guests .guest .highlight:not(:hover) {
          background-color: transparent; }
        .vehicle-rental-registration .guests-container .guests .guest .highlight .pro-pic {
          padding: 2px;
          border-radius: 50%;
          position: relative; }
          .vehicle-rental-registration .guests-container .guests .guest .highlight .pro-pic .profile-picture-mini {
            padding: 0;
            cursor: pointer; }
            .vehicle-rental-registration .guests-container .guests .guest .highlight .pro-pic .profile-picture-mini div {
              padding: 0;
              margin: 0; }
          .vehicle-rental-registration .guests-container .guests .guest .highlight .pro-pic svg {
            position: absolute;
            bottom: -1px;
            right: -1px;
            background: #fefefe;
            padding: 1px;
            border-radius: 50%;
            font-size: 0.8em;
            color: #a00; }
      .vehicle-rental-registration .guests-container .guests .guest.pending .highlight .pro-pic svg, .vehicle-rental-registration .guests-container .guests .guest.referred .highlight .pro-pic svg {
        color: #d3724a; }
      .vehicle-rental-registration .guests-container .guests .guest.completed .highlight .pro-pic svg {
        color: #69a364; }
      .vehicle-rental-registration .guests-container .guests .guest > span {
        display: block;
        text-align: center;
        position: absolute;
        width: 100%;
        bottom: 0;
        left: 0; }

.vehicle-rental-registration .status-container {
  margin: 20px 0; }
  .vehicle-rental-registration .status-container .status {
    display: none;
    position: relative;
    align-items: center; }
    .vehicle-rental-registration .status-container .status > * {
      display: inline-block;
      vertical-align: middle; }
    .vehicle-rental-registration .status-container .status svg {
      margin-right: 10px;
      --fa-primary-color: #ccc;
      --fa-secondary-opacity: 1;
      font-size: 2.5em;
      flex: 0 0 35px; }
    .vehicle-rental-registration .status-container .status p {
      flex: 1 1 auto; }
    .vehicle-rental-registration .status-container .status.show {
      display: flex; }
    .vehicle-rental-registration .status-container .status span {
      font-family: "roboto-regular"; }
    .vehicle-rental-registration .status-container .status:first-child {
      color: #a00; }
      .vehicle-rental-registration .status-container .status:first-child svg {
        --fa-secondary-color: #a00; }
    .vehicle-rental-registration .status-container .status:nth-child(2) {
      color: #d3724a; }
      .vehicle-rental-registration .status-container .status:nth-child(2) svg {
        --fa-secondary-color: #d3724a; }
    .vehicle-rental-registration .status-container .status:last-child {
      color: #69a364; }
      .vehicle-rental-registration .status-container .status:last-child svg {
        --fa-secondary-color: #69a364; }

.vehicle-rental-registration .process-container {
  margin-top: 20px; }
  @media only screen and (min-width: 821px) {
    .vehicle-rental-registration .process-container {
      display: flex; } }
  .vehicle-rental-registration .process-container .steps {
    display: flex; }
    @media only screen and (min-width: 821px) {
      .vehicle-rental-registration .process-container .steps {
        flex-direction: column;
        flex: 1 1 200px;
        width: 200px; } }
    @media only screen and (max-width: 820px) {
      .vehicle-rental-registration .process-container .steps {
        width: 100%; } }
    .vehicle-rental-registration .process-container .steps .step {
      position: relative;
      padding: 20px;
      border-width: 2px;
      border-style: solid;
      text-align: center;
      margin-bottom: 20px;
      cursor: pointer; }
      @media only screen and (min-width: 821px) {
        .vehicle-rental-registration .process-container .steps .step {
          flex: 0 0 120px; } }
      @media only screen and (max-width: 820px) {
        .vehicle-rental-registration .process-container .steps .step {
          flex: 1 1 auto;
          height: 25px;
          max-height: 25px;
          border-left-style: none;
          border-right-style: none; }
          .vehicle-rental-registration .process-container .steps .step:first-child {
            border-left-style: solid; }
          .vehicle-rental-registration .process-container .steps .step:last-child {
            border-right-style: solid; }
            .vehicle-rental-registration .process-container .steps .step:last-child .arrow {
              display: none; } }
      .vehicle-rental-registration .process-container .steps .step svg {
        display: none;
        font-size: 1.6em;
        position: absolute;
        right: 10px;
        bottom: 10px; }
      .vehicle-rental-registration .process-container .steps .step.complete svg {
        display: block; }
      .vehicle-rental-registration .process-container .steps .step:not(.selected):not(:hover) {
        background-color: #fefefe; }
        @media only screen and (min-width: 821px) {
          .vehicle-rental-registration .process-container .steps .step:not(.selected):not(:hover) .arrow {
            display: none; } }
      .vehicle-rental-registration .process-container .steps .step.selected span, .vehicle-rental-registration .process-container .steps .step:hover span {
        color: #fefefe; }
      .vehicle-rental-registration .process-container .steps .step.selected svg, .vehicle-rental-registration .process-container .steps .step:hover svg {
        color: #fefefe; }
      .vehicle-rental-registration .process-container .steps .step.selected .arrow:before, .vehicle-rental-registration .process-container .steps .step:hover .arrow:before {
        display: none; }
      .vehicle-rental-registration .process-container .steps .step > span {
        display: block; }
        @media only screen and (min-width: 821px) {
          .vehicle-rental-registration .process-container .steps .step > span {
            margin: 20px 0; } }
        @media only screen and (max-width: 820px) {
          .vehicle-rental-registration .process-container .steps .step > span {
            font-family: "roboto-bold";
            font-size: 1.2em; } }
        @media only screen and (max-width: 820px) {
          .vehicle-rental-registration .process-container .steps .step > span:nth-child(2) {
            display: none; } }
      .vehicle-rental-registration .process-container .steps .step .arrow {
        width: 0;
        height: 0;
        border-top: 15px solid transparent !important;
        border-bottom: 15px solid transparent !important;
        border-left-width: 15px;
        border-left-style: solid;
        position: absolute;
        right: -15px;
        top: 50%;
        transform: translateY(-50%);
        background-color: transparent;
        z-index: 20; }
        @media only screen and (max-width: 820px) {
          .vehicle-rental-registration .process-container .steps .step .arrow {
            border-top-width: 35px !important;
            border-bottom-width: 35px !important; }
            .vehicle-rental-registration .process-container .steps .step .arrow:before {
              content: "";
              width: 0;
              height: 0;
              border-top: 34px solid transparent;
              border-bottom: 34px solid transparent;
              border-left: 14px solid #fefefe;
              position: absolute;
              background-color: transparent;
              z-index: 21;
              top: -34px;
              left: -16px; } }
  @media only screen and (min-width: 821px) {
    .vehicle-rental-registration .process-container .content {
      display: inline-block;
      width: calc(100% - 240px);
      margin-left: 20px;
      flex: 1 1 auto; } }
  .vehicle-rental-registration .process-container .content .page {
    display: none;
    position: relative; }
    .vehicle-rental-registration .process-container .content .page.selected {
      display: block; }
    .vehicle-rental-registration .process-container .content .page:first-child .video-container {
      width: 100%;
      padding-top: 56.25%;
      display: block;
      position: relative;
      box-sizing: border-box; }
      @media only screen and (min-width: 821px) {
        .vehicle-rental-registration .process-container .content .page:first-child .video-container {
          margin: 20px; } }
      .vehicle-rental-registration .process-container .content .page:first-child .video-container iframe {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        height: 100%; }
        @media only screen and (min-width: 821px) {
          .vehicle-rental-registration .process-container .content .page:first-child .video-container iframe {
            width: calc(100% - 40px); } }
        @media only screen and (max-width: 820px) {
          .vehicle-rental-registration .process-container .content .page:first-child .video-container iframe {
            width: 100%; } }
    .vehicle-rental-registration .process-container .content .page:first-child label {
      font-family: "roboto-regular"; }
    .vehicle-rental-registration .process-container .content .page:nth-child(2) div:first-child {
      font-family: "roboto-regular";
      margin-left: 20px; }
    .vehicle-rental-registration .process-container .content .page:nth-child(2) .disclaimer {
      padding: 10px;
      background-color: #f9f9f9; }
      @media only screen and (min-width: 821px) {
        .vehicle-rental-registration .process-container .content .page:nth-child(2) .disclaimer {
          margin: 20px;
          overflow-y: auto;
          max-height: 600px;
          border: 1px solid #999; } }
      @media only screen and (max-width: 820px) {
        .vehicle-rental-registration .process-container .content .page:nth-child(2) .disclaimer {
          margin: 20px 0; } }
    .vehicle-rental-registration .process-container .content .page:nth-child(2) label {
      font-family: "roboto-regular"; }
    @media only screen and (min-width: 821px) {
      .vehicle-rental-registration .process-container .content .page:last-child > * {
        margin-left: 20px; } }
    .vehicle-rental-registration .process-container .content .page:last-child div:first-child {
      font-family: "roboto-regular"; }
    @media only screen and (min-width: 821px) {
      .vehicle-rental-registration .process-container .content .page:last-child .qa {
        margin: 20px; } }
    @media only screen and (max-width: 820px) {
      .vehicle-rental-registration .process-container .content .page:last-child .qa {
        margin: 20px 0; } }
    .vehicle-rental-registration .process-container .content .page:last-child .qa p {
      margin: 0; }
    .vehicle-rental-registration .process-container .content .page:last-child .licence {
      position: relative; }
      .vehicle-rental-registration .process-container .content .page:last-child .licence > * {
        vertical-align: top;
        width: auto; }
        @media only screen and (min-width: 821px) {
          .vehicle-rental-registration .process-container .content .page:last-child .licence > * {
            margin: 20px; } }
        @media only screen and (max-width: 820px) {
          .vehicle-rental-registration .process-container .content .page:last-child .licence > * {
            margin: 20px 0; } }
        .vehicle-rental-registration .process-container .content .page:last-child .licence > *.info > span {
          color: #e94b3a; }
        .vehicle-rental-registration .process-container .content .page:last-child .licence > * > span:first-child {
          font-family: "roboto-regular";
          display: block; }
        .vehicle-rental-registration .process-container .content .page:last-child .licence > * > span:nth-child(2) {
          font-size: 0.9em;
          color: #614b46; }
      .vehicle-rental-registration .process-container .content .page:last-child .licence input:not([type=checkbox]) {
        font-size: 1.1em;
        width: 100%;
        max-width: 300px;
        margin-right: 10px;
        border: 1px solid #999;
        outline: none;
        padding: 5px; }
        .vehicle-rental-registration .process-container .content .page:last-child .licence input:not([type=checkbox]):disabled {
          border-color: transparent; }
    @media only screen and (min-width: 821px) {
      .vehicle-rental-registration .process-container .content .page input[type=checkbox] {
        margin-left: 20px; } }
  .vehicle-rental-registration .process-container .content label {
    -moz-user-select: -moz-none;
    -khtml-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
    cursor: default; }
    @media only screen and (max-width: 820px) {
      .vehicle-rental-registration .process-container .content label {
        margin: 20px 0;
        display: block; } }
  .vehicle-rental-registration .process-container > * {
    display: inline-block;
    vertical-align: top; }

.guest-vouchers {
  margin: 20px 0; }
  .guest-vouchers .vouchers .voucher-type {
    padding: 3px; }
    .guest-vouchers .vouchers .voucher-type h4 {
      margin: 0;
      color: #fefefe; }
    .guest-vouchers .vouchers .voucher-type .voucher {
      background-color: #fefefe;
      padding: 10px 5px;
      display: flex;
      cursor: pointer; }
      .guest-vouchers .vouchers .voucher-type .voucher input {
        flex: 0 1 25px;
        margin-top: 5px; }
      .guest-vouchers .vouchers .voucher-type .voucher label {
        flex: 1 1 auto;
        color: #999; }
        .guest-vouchers .vouchers .voucher-type .voucher label .expiry {
          font-size: 0.8em;
          color: #91bd21;
          margin: 0 10px;
          font-style: italic; }
        .guest-vouchers .vouchers .voucher-type .voucher label .description {
          display: block;
          font-size: 0.9em; }
      .guest-vouchers .vouchers .voucher-type .voucher input:checked + label {
        color: #666; }

.maintenance-message {
  display: flex;
  align-items: center;
  width: 100%;
  box-sizing: border-box;
  background-color: #a00;
  color: #fefefe;
  padding: 0 10px; }
  .maintenance-message svg {
    flex: 0 1 30px;
    margin-right: 20px;
    font-size: 2em; }
  .maintenance-message span {
    flex: auto; }

body {
  margin: 0;
  font-family: "roboto-light";
  line-height: 1.4em;
  font-size: 18px;
  color: #666; }
  @media (nothing) {
    body {
      color: #999;
      background-color: #112; } }
  body a {
    text-decoration: none;
    color: #0f7fb5;
    cursor: pointer;
    font-family: "roboto-regular"; }
    @media (nothing) {
      body a {
        color: #5c6d7f; }
        body a:hover {
          color: #c66; } }
    body a:hover {
      color: #a00;
      text-decoration: underline; }
  body h4 {
    font-family: "roboto-regular"; }
  body .alert {
    text-align: left;
    padding: 10px;
    border-left-width: 3px;
    border-left-style: solid;
    display: block;
    font-family: "roboto-light"; }
    body .alert a {
      font-family: "roboto-regular";
      text-decoration: none; }
      body .alert a:hover {
        color: #a00;
        text-decoration: underline; }
  body h3 {
    font-family: "roboto-regular";
    font-weight: normal;
    text-align: left;
    font-weight: lighter; }
    @media (nothing) {
      body h3 {
        color: #5c6d7f; } }
  body .page:not(.v2) h2, body .module-heading {
    font-family: "roboto-regular";
    font-size: 1.6em;
    margin: 10px 0;
    padding: 0 0 25px 0;
    display: block;
    text-align: center;
    position: relative; }
    body .page:not(.v2) h2::after, body .module-heading::after {
      content: "";
      background: #a00;
      width: 100px;
      height: 5px;
      position: absolute;
      left: 50%;
      bottom: 0;
      transform: translateX(-50%); }
      @media (nothing) {
        body .page:not(.v2) h2::after, body .module-heading::after {
          background-color: #290260; } }
  body .intro {
    font-size: 1.1em;
    font-family: "roboto-regular"; }
  body .snippet {
    padding: 0 200px;
    display: block;
    font-size: 1.4em;
    line-height: 1.4em;
    font-family: "roboto-light"; }
    @media only screen and (max-width: 1024px) and (min-width: 821px) {
      body .snippet {
        padding: 0 100px; } }
    @media only screen and (max-width: 820px) {
      body .snippet {
        padding: 0 15px;
        font-size: 1.2em; } }
  body .notice {
    margin: 10px 0;
    background-color: #eef;
    border-left: 5px solid #2A6180;
    padding: 10px;
    color: #2A6180;
    box-sizing: border-box; }
    @media (nothing) {
      body .notice {
        background-color: #290260;
        border-left-color: #5c6d7f;
        color: #999; } }
    body .notice svg {
      margin-right: 5px; }
    body .notice .button-link {
      float: right;
      margin: 20px 10px 10px 10px; }
    body .notice .description {
      display: block;
      font-size: 0.8em;
      color: #555; }
    body .notice.green {
      background-color: #eafaea;
      border-left-color: #474; }
  body.seq-0 h2::after, body.seq-0 .module-heading::after {
    background: #e07272; }
    @media (nothing) {
      body.seq-0 h2::after, body.seq-0 .module-heading::after {
        background-color: #4e2829; } }
  body.seq-1 h2::after, body.seq-1 .module-heading::after {
    background: #33a5dc; }
    @media (nothing) {
      body.seq-1 h2::after, body.seq-1 .module-heading::after {
        background-color: #0f3142; } }
  body.seq-2 h2::after, body.seq-2 .module-heading::after {
    background: #f3af35; }
    @media (nothing) {
      body.seq-2 h2::after, body.seq-2 .module-heading::after {
        background-color: #33250b; } }
  body.seq-3 h2::after, body.seq-3 .module-heading::after {
    background: #8fbe21; }
    @media (nothing) {
      body.seq-3 h2::after, body.seq-3 .module-heading::after {
        background-color: #212C08; } }
  body.seq-4 h2::after, body.seq-4 .module-heading::after {
    background: #f6b592; }
    @media (nothing) {
      body.seq-4 h2::after, body.seq-4 .module-heading::after {
        background-color: #6d2c08; } }
  body.seq-5 h2::after, body.seq-5 .module-heading::after {
    background: #343c52; }
    @media (nothing) {
      body.seq-5 h2::after, body.seq-5 .module-heading::after {
        background-color: #343c52; } }
  body.seq-6 h2::after, body.seq-6 .module-heading::after {
    background: #4271a8; }
    @media (nothing) {
      body.seq-6 h2::after, body.seq-6 .module-heading::after {
        background-color: #0f3d75; } }
  body.seq-7 h2::after, body.seq-7 .module-heading::after {
    background: #10b4c1; }
    @media (nothing) {
      body.seq-7 h2::after, body.seq-7 .module-heading::after {
        background-color: #01606c; } }

body.seq-0 .alert {
  border-left-color: #e07272;
  color: #e07272; }
  @media (nothing) {
    body.seq-0 .alert {
      border-left-color: #4e2829;
      color: #4e2829; } }

body.seq-1 .alert {
  border-left-color: #33a5dc;
  color: #33a5dc; }
  @media (nothing) {
    body.seq-1 .alert {
      border-left-color: #0f3142;
      color: #0f3142; } }

body.seq-2 .alert {
  border-left-color: #f3af35;
  color: #f3af35; }
  @media (nothing) {
    body.seq-2 .alert {
      border-left-color: #33250b;
      color: #33250b; } }

body.seq-3 .alert {
  border-left-color: #8fbe21;
  color: #8fbe21; }
  @media (nothing) {
    body.seq-3 .alert {
      border-left-color: #212C08;
      color: #212C08; } }

body.seq-4 .alert {
  border-left-color: #f6b592;
  color: #f6b592; }
  @media (nothing) {
    body.seq-4 .alert {
      border-left-color: #6d2c08;
      color: #6d2c08; } }

body.seq-5 .alert {
  border-left-color: #343c52;
  color: #343c52; }
  @media (nothing) {
    body.seq-5 .alert {
      border-left-color: #343c52;
      color: #343c52; } }

body.seq-6 .alert {
  border-left-color: #4271a8;
  color: #4271a8; }
  @media (nothing) {
    body.seq-6 .alert {
      border-left-color: #0f3d75;
      color: #0f3d75; } }

body.seq-0 .alert a {
  color: #e07272; }
  @media (nothing) {
    body.seq-0 .alert a {
      color: #4e2829; } }

body.seq-1 .alert a {
  color: #33a5dc; }
  @media (nothing) {
    body.seq-1 .alert a {
      color: #0f3142; } }

body.seq-2 .alert a {
  color: #f3af35; }
  @media (nothing) {
    body.seq-2 .alert a {
      color: #33250b; } }

body.seq-3 .alert a {
  color: #8fbe21; }
  @media (nothing) {
    body.seq-3 .alert a {
      color: #212C08; } }

body.seq-4 .alert a {
  color: #f6b592; }
  @media (nothing) {
    body.seq-4 .alert a {
      color: #6d2c08; } }

body.seq-5 .alert a {
  color: #343c52; }
  @media (nothing) {
    body.seq-5 .alert a {
      color: #343c52; } }

body.seq-6 .alert a {
  color: #4271a8; }
  @media (nothing) {
    body.seq-6 .alert a {
      color: #0f3d75; } }

.page.page-home .not-booked .banner {
  width: 100vw;
  height: calc(100vh - 55px);
  max-width: 100%; }
  .page.page-home .not-booked .banner .rendered-image {
    width: 100%;
    height: 100%;
    max-width: 100%;
    position: relative; }
    @media (nothing) {
      .page.page-home .not-booked .banner .rendered-image::after {
        content: '';
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        background-color: rgba(20, 20, 40, 0.4); } }

.page.page-home .not-booked .banner + .section {
  margin-top: 0; }

.page.page-home .not-booked .maintenance-message {
  position: absolute;
  top: 70px;
  z-index: 1; }
  @media only screen and (max-width: 1024px) {
    .page.page-home .not-booked .maintenance-message {
      top: 132px; } }
  @media only screen and (min-width: 1025px) {
    .page.page-home .not-booked .maintenance-message {
      background-color: rgba(100, 100, 100, 0.6); }
      @supports (-webkit-backdrop-filter: blur(10px)) or (backdrop-filter: blur(10px)) {
        .page.page-home .not-booked .maintenance-message {
          -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
          background-color: rgba(170, 0, 0, 0.8); } } }

.page.page-home .booked .banner .banner-content h1, .page.page-home .booked .banner .banner-content h2, .page.page-home .booked .banner .banner-content h3 {
  text-align: left; }
  .page.page-home .booked .banner .banner-content h1 .months, .page.page-home .booked .banner .banner-content h1 .weeks, .page.page-home .booked .banner .banner-content h1 .days, .page.page-home .booked .banner .banner-content h2 .months, .page.page-home .booked .banner .banner-content h2 .weeks, .page.page-home .booked .banner .banner-content h2 .days, .page.page-home .booked .banner .banner-content h3 .months, .page.page-home .booked .banner .banner-content h3 .weeks, .page.page-home .booked .banner .banner-content h3 .days {
    font-size: 1.4em;
    font-family: "roboto-regular"; }
  .page.page-home .booked .banner .banner-content h1 .tomorrow, .page.page-home .booked .banner .banner-content h1 .today, .page.page-home .booked .banner .banner-content h2 .tomorrow, .page.page-home .booked .banner .banner-content h2 .today, .page.page-home .booked .banner .banner-content h3 .tomorrow, .page.page-home .booked .banner .banner-content h3 .today {
    font-size: 1.2em;
    font-family: "roboto-regular"; }
  .page.page-home .booked .banner .banner-content h1 .weeks-days, .page.page-home .booked .banner .banner-content h2 .weeks-days, .page.page-home .booked .banner .banner-content h3 .weeks-days {
    font-size: 0.8em; }

.page.page-home .booked .banner .banner-content h3 {
  font-family: "roboto-light"; }

@media only screen and (max-width: 820px) {
  .page.page-home .booked .banner .banner-content {
    margin-left: 10px; } }

.page.page-home .banner .hero {
  width: 100vw;
  height: 100vh;
  position: relative; }
  .page.page-home .banner .hero .video-container {
    width: 100%;
    height: 100%;
    overflow: hidden; }
    .page.page-home .banner .hero .video-container iframe {
      position: absolute;
      left: 0;
      top: 0;
      right: 0;
      bottom: 0; }

.page.page-home .banner-content {
  position: absolute;
  bottom: 30px;
  right: 30px;
  color: #fefefe;
  text-align: left; }
  @media (nothing) {
    .page.page-home .banner-content h1, .page.page-home .banner-content h3 {
      color: #799fb9; } }
  @media only screen and (max-width: 820px) {
    .page.page-home .banner-content {
      padding-left: 10px; } }
  .page.page-home .banner-content h1 {
    font-size: 2em;
    text-shadow: 2px 2px 13px rgba(40, 40, 40, 0.5), 2px 2px 13px rgba(40, 40, 40, 0.5), 3px 3px 13px rgba(40, 40, 40, 0.3);
    margin-bottom: 0;
    line-height: 1em;
    display: block;
    font-family: "roboto-regular";
    text-align: left; }
    @media only screen and (max-width: 820px) {
      .page.page-home .banner-content h1 {
        font-size: 1.6em; } }
    @media only screen and (max-width: 360px) {
      .page.page-home .banner-content h1 {
        font-size: 1.35em;
        margin-bottom: 2px; } }
  .page.page-home .banner-content h3 {
    font-family: "roboto-light";
    font-size: 1.6em;
    text-shadow: 2px 2px 13px rgba(40, 40, 40, 0.5), 2px 2px 13px rgba(40, 40, 40, 0.5), 3px 3px 13px rgba(40, 40, 40, 0.3);
    margin: 10px 0 20px 0;
    line-height: 1em;
    display: block; }
    @media only screen and (max-width: 820px) {
      .page.page-home .banner-content h3 {
        font-size: 1.4em; } }
  .page.page-home .banner-content .intro.single-column-format div {
    max-width: 900px; }
    @media only screen and (max-width: 820px) {
      .page.page-home .banner-content .intro.single-column-format div {
        text-align: center; } }
  .page.page-home .banner-content .accommodation-search-widget {
    margin-top: 40px;
    z-index: 1; }
    .page.page-home .banner-content .accommodation-search-widget .inner-container {
      padding: 20px 30px;
      border-radius: 10px;
      background-color: rgba(0, 0, 0, 0.4); }
      @supports (-webkit-backdrop-filter: blur(10px)) or (backdrop-filter: blur(10px)) {
        .page.page-home .banner-content .accommodation-search-widget .inner-container {
          -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
          background-color: transparent; } }

.page.page-home .down-arrow {
  position: absolute;
  display: block;
  text-align: center;
  position: absolute;
  width: 100%;
  font-size: 3em;
  cursor: pointer;
  color: #fefefe;
  animation-delay: 1.75s; }
  @media only screen and (min-width: 821px) {
    .page.page-home .down-arrow {
      top: 60%; }
      @supports (animation-fill-mode: forwards) and (not (-ms-ime-align: auto)) {
        .page.page-home .down-arrow {
          -webkit-animation: header-arrow-down-mobile 1.6s linear 2 forwards;
          -moz-animation: header-arrow-down-mobile 1.6s linear 2 forwards;
          -ms-animation: header-arrow-down-mobile 1.6s linear 2 forwards;
          -o-animation: header-arrow-down-mobile 1.6s linear 2 forwards;
          animation: header-arrow-down-mobile 1.6s linear 2 forwards; } } }
  @media only screen and (max-width: 820px) {
    .page.page-home .down-arrow {
      opacity: 0;
      top: 35%; }
      @supports (animation-fill-mode: forwards) and (not (-ms-ime-align: auto)) {
        .page.page-home .down-arrow {
          -webkit-animation: header-arrow-down-mobile 2s linear 2 forwards;
          -moz-animation: header-arrow-down-mobile 2s linear 2 forwards;
          -ms-animation: header-arrow-down-mobile 2s linear 2 forwards;
          -o-animation: header-arrow-down-mobile 2s linear 2 forwards;
          animation: header-arrow-down-mobile 2s linear 2 forwards; } } }

.accommodation-search-widget-placeholder + .section {
  margin-top: 30px; }

@supports (animation-fill-mode: forwards) and (not (-ms-ime-align: auto)) {
  @keyframes header-arrow-down {
    from {
      transform: translateY(-100px); }
    to {
      transform: unset; } }
  @-moz-keyframes header-arrow-down {
    from {
      transform: translateY(-100px); }
    to {
      transform: unset; } }
  @-webkit-keyframes header-arrow-down {
    from {
      transform: translateY(-100px); }
    to {
      transform: unset; } }
  @-ms-keyframes header-arrow-down {
    from {
      transform: translateY(-100px); }
    to {
      transform: unset; } }
  @-o-keyframes header-arrow-down {
    from {
      transform: translateY(-100px); }
    to {
      transform: unset; } } }

@supports (animation-fill-mode: forwards) and (not (-ms-ime-align: auto)) {
  @keyframes header-arrow-down-mobile {
    0% {
      transform: translateY(-100px);
      opacity: 0; }
    20% {
      transform: translateY(-80px);
      opacity: 1; }
    80% {
      transform: translateY(-20px);
      opacity: 1; }
    100% {
      transform: unset;
      opacity: 0; } }
  @-moz-keyframes header-arrow-down-mobile {
    0% {
      transform: translateY(-100px);
      opacity: 0; }
    20% {
      transform: translateY(-80px);
      opacity: 1; }
    80% {
      transform: translateY(-20px);
      opacity: 1; }
    100% {
      transform: unset;
      opacity: 0; } }
  @-webkit-keyframes header-arrow-down-mobile {
    0% {
      transform: translateY(-100px);
      opacity: 0; }
    20% {
      transform: translateY(-80px);
      opacity: 1; }
    80% {
      transform: translateY(-20px);
      opacity: 1; }
    100% {
      transform: unset;
      opacity: 0; } }
  @-ms-keyframes header-arrow-down-mobile {
    0% {
      transform: translateY(-100px);
      opacity: 0; }
    20% {
      transform: translateY(-80px);
      opacity: 1; }
    80% {
      transform: translateY(-20px);
      opacity: 1; }
    100% {
      transform: unset;
      opacity: 0; } }
  @-o-keyframes header-arrow-down-mobile {
    0% {
      transform: translateY(-100px);
      opacity: 0; }
    20% {
      transform: translateY(-80px);
      opacity: 1; }
    80% {
      transform: translateY(-20px);
      opacity: 1; }
    100% {
      transform: unset;
      opacity: 0; } } }

@media only screen and (min-width: 821px) {
  .page.page-activity-detail.res .menu-background {
    margin-bottom: 10px; }
  .page.page-activity-detail.res .left-content {
    width: calc(100% - 350px); } }

@media only screen and (max-width: 820px) {
  .page.page-activity-detail .accommodation-search-widget-placeholder {
    display: none; } }

.page.page-activity-detail .voucher-only {
  padding: 10px 0;
  color: #fefefe; }
  .page.page-activity-detail .voucher-only svg {
    margin-right: 5px; }
  .page.page-activity-detail .voucher-only .no-vouchers {
    display: none; }
    .page.page-activity-detail .voucher-only .no-vouchers.show {
      display: inline-block; }

.page.page-activity-detail .book-now-placeholder {
  position: relative;
  display: none; }
  @media only screen and (max-width: 820px) {
    .page.page-activity-detail .book-now-placeholder {
      display: block; } }
  .page.page-activity-detail .book-now-placeholder .book-now {
    text-align: center;
    padding: 10px;
    box-sizing: border-box;
    color: #fefefe; }
    .page.page-activity-detail .book-now-placeholder .book-now .button-link {
      display: inline-block; }
    .page.page-activity-detail .book-now-placeholder .book-now.sticky {
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      z-index: 10; }

.page.page-activity-detail .main-content {
  display: flex; }
  .page.page-activity-detail .main-content .left-content {
    vertical-align: top;
    display: inline-block;
    width: 100%; }
    .page.page-activity-detail .main-content .left-content .not-logged-in, .page.page-activity-detail .main-content .left-content .not-available {
      display: none; }
    @media only screen and (max-width: 1024px) and (min-width: 821px) {
      .page.page-activity-detail .main-content .left-content {
        margin-top: 65px; } }
    @media only screen and (max-width: 820px) {
      .page.page-activity-detail .main-content .left-content {
        display: block;
        width: 100%;
        margin-top: 10px; }
        .page.page-activity-detail .main-content .left-content .not-logged-in, .page.page-activity-detail .main-content .left-content .not-available {
          display: block;
          width: calc(100% - 40px);
          padding: 20px;
          background-color: #f9f9f9; }
          .page.page-activity-detail .main-content .left-content .not-logged-in .activities-booking-notice, .page.page-activity-detail .main-content .left-content .not-available .activities-booking-notice {
            display: block;
            text-align: center;
            font-family: 'roboto-regular'; }
          .page.page-activity-detail .main-content .left-content .not-logged-in .button-container, .page.page-activity-detail .main-content .left-content .not-available .button-container {
            text-align: center;
            display: block;
            margin: 15px 0 0; }
            .page.page-activity-detail .main-content .left-content .not-logged-in .button-container input[type="button"],
            .page.page-activity-detail .main-content .left-content .not-logged-in .button-container input[type="submit"], .page.page-activity-detail .main-content .left-content .not-available .button-container input[type="button"],
            .page.page-activity-detail .main-content .left-content .not-available .button-container input[type="submit"] {
              -webkit-appearance: none; }
            .page.page-activity-detail .main-content .left-content .not-logged-in .button-container .button-link, .page.page-activity-detail .main-content .left-content .not-available .button-container .button-link {
              display: inline-block;
              width: 100%;
              border-radius: 30px;
              padding: 12.5px 20px; } }
    .page.page-activity-detail .main-content .left-content .single-column-format > * {
      max-width: 1050px; }
    .page.page-activity-detail .main-content .left-content .single-column-format .activity-title {
      font-family: "roboto-regular"; }
    .page.page-activity-detail .main-content .left-content .activity-meta-bar {
      margin-top: 10px;
      margin-bottom: 30px; }
      .page.page-activity-detail .main-content .left-content .activity-meta-bar div {
        font-family: "roboto-regular";
        display: inline-block;
        margin: 0 30px 0 0; }
        @media only screen and (max-width: 820px) {
          .page.page-activity-detail .main-content .left-content .activity-meta-bar div {
            display: block;
            margin: 5px 0; }
            .page.page-activity-detail .main-content .left-content .activity-meta-bar div svg {
              margin: 0 5px;
              min-width: 20px; } }
    @media only screen and (max-width: 1024px) and (min-width: 821px) {
      .page.page-activity-detail .main-content .left-content .back-link {
        margin: 10px 0; } }
    .page.page-activity-detail .main-content .left-content .activity-faq-section .activity-faq {
      background-color: #eee; }
      .page.page-activity-detail .main-content .left-content .activity-faq-section .activity-faq .question-and-answer {
        padding: 25px 0;
        position: relative;
        border-bottom: 10px solid white; }
        .page.page-activity-detail .main-content .left-content .activity-faq-section .activity-faq .question-and-answer svg {
          position: absolute;
          top: 50%;
          transform: translateY(-50%);
          font-size: 1.4em;
          width: 50px; }
        .page.page-activity-detail .main-content .left-content .activity-faq-section .activity-faq .question-and-answer .q-text {
          width: calc(100% - 60px);
          margin-left: 50px; }
          .page.page-activity-detail .main-content .left-content .activity-faq-section .activity-faq .question-and-answer .q-text .question {
            font-family: "roboto-regular"; }
    .page.page-activity-detail .main-content .left-content .accessibility-section .accessibility {
      background-color: #f8f2ff; }
      .page.page-activity-detail .main-content .left-content .accessibility-section .accessibility .accessibility-item {
        padding: 25px 0;
        position: relative;
        border-bottom: 10px solid white; }
        .page.page-activity-detail .main-content .left-content .accessibility-section .accessibility .accessibility-item svg {
          position: absolute;
          top: 50%;
          transform: translateY(-50%);
          font-size: 1.4em;
          width: 50px; }
        .page.page-activity-detail .main-content .left-content .accessibility-section .accessibility .accessibility-item .a-text {
          width: calc(100% - 60px);
          margin-left: 50px; }
          .page.page-activity-detail .main-content .left-content .accessibility-section .accessibility .accessibility-item .a-text .category {
            font-family: "roboto-regular"; }
    .page.page-activity-detail .main-content .left-content .activity-review-list {
      margin-top: 20px; }
  @media only screen and (max-width: 820px) {
    .page.page-activity-detail .main-content .right-container {
      position: fixed;
      margin: 0;
      width: 100vw;
      height: 100vh;
      z-index: 11;
      display: none;
      top: 0;
      background-color: #fefefe;
      overflow-y: scroll; }
      .page.page-activity-detail .main-content .right-container.show {
        display: block; } }
  @media only screen and (max-width: 820px) {
    .page.page-activity-detail .main-content .right-container .inner-content {
      top: 0 !important;
      width: 100%; } }
  .page.page-activity-detail .main-content .right-container .inner-content .right-content {
    min-height: 400px;
    width: 340px;
    display: inline-block;
    margin-left: -5px;
    color: #666;
    border-left: 1px solid #eee; }
    @media only screen and (max-width: 1024px) and (min-width: 821px) {
      .page.page-activity-detail .main-content .right-container .inner-content .right-content {
        margin-top: 65px;
        margin-left: 5px; } }
    @media only screen and (max-width: 820px) {
      .page.page-activity-detail .main-content .right-container .inner-content .right-content {
        width: 100%;
        margin-left: 0;
        margin-top: 0; } }
    @media only screen and (min-width: 821px) {
      .page.page-activity-detail .main-content .right-container .inner-content .right-content {
        padding-top: 50px; } }
    .page.page-activity-detail .main-content .right-container .inner-content .right-content .inner-content {
      padding: 10px;
      background-color: #fefefe; }
    .page.page-activity-detail .main-content .right-container .inner-content .right-content .warning {
      color: #a00;
      font-size: 0.9em; }
      .page.page-activity-detail .main-content .right-container .inner-content .right-content .warning > div {
        display: flex; }
        .page.page-activity-detail .main-content .right-container .inner-content .right-content .warning > div svg {
          flex: 1 0 auto;
          padding: 10px; }
        .page.page-activity-detail .main-content .right-container .inner-content .right-content .warning > div span {
          flex: 1 1 auto; }
    .page.page-activity-detail .main-content .right-container .inner-content .right-content .not-logged-in,
    .page.page-activity-detail .main-content .right-container .inner-content .right-content .not-available {
      padding: 10px;
      margin-top: 115px; }
      .page.page-activity-detail .main-content .right-container .inner-content .right-content .not-logged-in .activities-booking-notice,
      .page.page-activity-detail .main-content .right-container .inner-content .right-content .not-available .activities-booking-notice {
        display: block;
        text-align: center;
        font-family: 'roboto-regular'; }
    .page.page-activity-detail .main-content .right-container .inner-content .right-content .loader {
      text-align: center; }
      .page.page-activity-detail .main-content .right-container .inner-content .right-content .loader .wait-animation {
        display: inline;
        margin: 40px 0 20px 0;
        font-size: 3em; }
    .page.page-activity-detail .main-content .right-container .inner-content .right-content .button-container {
      text-align: center;
      display: block;
      margin: 15px 0 0; }
      .page.page-activity-detail .main-content .right-container .inner-content .right-content .button-container input[type="button"],
      .page.page-activity-detail .main-content .right-container .inner-content .right-content .button-container input[type="submit"] {
        -webkit-appearance: none; }
      .page.page-activity-detail .main-content .right-container .inner-content .right-content .button-container .button-link {
        border-radius: 30px;
        padding: 12.5px 20px; }
    .page.page-activity-detail .main-content .right-container .inner-content .right-content .activity-section {
      margin: 0 0 20px 0; }
      .page.page-activity-detail .main-content .right-container .inner-content .right-content .activity-section > div {
        padding: 10px 20px; }
      .page.page-activity-detail .main-content .right-container .inner-content .right-content .activity-section .title {
        font-family: "roboto-bold";
        padding: 5px 0;
        color: #666; }
        @media only screen and (max-width: 820px) {
          .page.page-activity-detail .main-content .right-container .inner-content .right-content .activity-section .title {
            padding: 10px 0; } }
      .page.page-activity-detail .main-content .right-container .inner-content .right-content .activity-section.reservation .reservations {
        text-align: center; }
        .page.page-activity-detail .main-content .right-container .inner-content .right-content .activity-section.reservation .reservations select {
          display: inline; }
          @media only screen and (max-width: 820px) {
            .page.page-activity-detail .main-content .right-container .inner-content .right-content .activity-section.reservation .reservations select {
              border: 1px solid #ddd;
              border-radius: 5px;
              background-color: #f9f9f9;
              padding: 10px 5px !important;
              font-size: 16px;
              box-sizing: border-box;
              outline: none; } }
      .page.page-activity-detail .main-content .right-container .inner-content .right-content .activity-section.notes .description {
        font-size: 0.8em; }
      .page.page-activity-detail .main-content .right-container .inner-content .right-content .activity-section.notes textarea {
        width: calc(100% - 40px);
        margin: 0 20px; }
      .page.page-activity-detail .main-content .right-container .inner-content .right-content .activity-section.who .guests .lodge h4 {
        padding: 5px 0;
        margin: 5px 0;
        font-size: 0.8em;
        font: "roboto-light";
        font-weight: normal;
        border-bottom: 1px solid #999; }
      .page.page-activity-detail .main-content .right-container .inner-content .right-content .activity-section.who .guests .lodge .guest {
        padding: 10px 0;
        color: #5c6d7f; }
        .page.page-activity-detail .main-content .right-container .inner-content .right-content .activity-section.who .guests .lodge .guest svg {
          margin-right: 5px; }
        .page.page-activity-detail .main-content .right-container .inner-content .right-content .activity-section.who .guests .lodge .guest.too-old, .page.page-activity-detail .main-content .right-container .inner-content .right-content .activity-section.who .guests .lodge .guest.too-young, .page.page-activity-detail .main-content .right-container .inner-content .right-content .activity-section.who .guests .lodge .guest.unknown, .page.page-activity-detail .main-content .right-container .inner-content .right-content .activity-section.who .guests .lodge .guest.unavailable {
          color: #ccc;
          cursor: not-allowed; }
        .page.page-activity-detail .main-content .right-container .inner-content .right-content .activity-section.who .guests .lodge .guest.available {
          cursor: pointer; }
          .page.page-activity-detail .main-content .right-container .inner-content .right-content .activity-section.who .guests .lodge .guest.available:hover {
            color: #69a364; }
        .page.page-activity-detail .main-content .right-container .inner-content .right-content .activity-section.who .guests .lodge .guest.selected {
          color: #69a364; }
        .page.page-activity-detail .main-content .right-container .inner-content .right-content .activity-section.who .guests .lodge .guest .tag {
          font-size: 0.7em;
          padding: 1px 5px;
          display: flex;
          line-height: 1.3em;
          margin-top: 5px; }
          .page.page-activity-detail .main-content .right-container .inner-content .right-content .activity-section.who .guests .lodge .guest .tag.basket {
            color: #91bd21; }
          .page.page-activity-detail .main-content .right-container .inner-content .right-content .activity-section.who .guests .lodge .guest .tag.booked {
            color: #07b4c2; }
          .page.page-activity-detail .main-content .right-container .inner-content .right-content .activity-section.who .guests .lodge .guest .tag.booked-another {
            color: #d3724a; }
          .page.page-activity-detail .main-content .right-container .inner-content .right-content .activity-section.who .guests .lodge .guest .tag > svg {
            flex: 0 0 auto; }
          .page.page-activity-detail .main-content .right-container .inner-content .right-content .activity-section.who .guests .lodge .guest .tag > span {
            flex: 1 1 auto;
            flex-wrap: wrap; }
      @media only screen and (max-width: 820px) {
        .page.page-activity-detail .main-content .right-container .inner-content .right-content .activity-section.when .button-bar {
          margin-bottom: 40px; } }
      .page.page-activity-detail .main-content .right-container .inner-content .right-content .activity-section.when .activity-date {
        margin-bottom: 20px; }
        .page.page-activity-detail .main-content .right-container .inner-content .right-content .activity-section.when .activity-date .date-title {
          color: #666; }
        .page.page-activity-detail .main-content .right-container .inner-content .right-content .activity-section.when .activity-date .times {
          padding: 10px 0; }
          .page.page-activity-detail .main-content .right-container .inner-content .right-content .activity-section.when .activity-date .times .time {
            display: inline-block;
            margin: 0 1px 5px 1px;
            /*&.clash {
                                            opacity: 0.3;

                                            &:hover {
                                                opacity: 1;
                                            }
                                        }*/ }
            .page.page-activity-detail .main-content .right-container .inner-content .right-content .activity-section.when .activity-date .times .time.available {
              cursor: pointer; }
              .page.page-activity-detail .main-content .right-container .inner-content .right-content .activity-section.when .activity-date .times .time.available:hover .price {
                color: #fefefe; }
            .page.page-activity-detail .main-content .right-container .inner-content .right-content .activity-section.when .activity-date .times .time.limited {
              color: #a00;
              border-color: #a00; }
            .page.page-activity-detail .main-content .right-container .inner-content .right-content .activity-section.when .activity-date .times .time.sold-out {
              color: #ccc;
              border-color: #ccc;
              cursor: not-allowed; }
            .page.page-activity-detail .main-content .right-container .inner-content .right-content .activity-section.when .activity-date .times .time .price {
              font-size: 0.8em;
              color: #fefefe;
              display: block;
              font-family: "roboto-regular"; }
      .page.page-activity-detail .main-content .right-container .inner-content .right-content .activity-section.when .limited-availability-notice, .page.page-activity-detail .main-content .right-container .inner-content .right-content .activity-section.when .sold-out-notice {
        font-size: 0.8em;
        padding: 0; }
        .page.page-activity-detail .main-content .right-container .inner-content .right-content .activity-section.when .limited-availability-notice svg, .page.page-activity-detail .main-content .right-container .inner-content .right-content .activity-section.when .sold-out-notice svg {
          margin-right: 5px; }
      .page.page-activity-detail .main-content .right-container .inner-content .right-content .activity-section.when .limited-availability-notice svg {
        color: #a00; }
      .page.page-activity-detail .main-content .right-container .inner-content .right-content .activity-section.when .sold-out-notice {
        display: none; }
        .page.page-activity-detail .main-content .right-container .inner-content .right-content .activity-section.when .sold-out-notice svg {
          color: #ccc; }
        .page.page-activity-detail .main-content .right-container .inner-content .right-content .activity-section.when .sold-out-notice.show {
          display: block; }
  .page.page-activity-detail .main-content .add-to-basket-wrapper .button-container.done-button {
    display: none; }
    @media only screen and (max-width: 820px) {
      .page.page-activity-detail .main-content .add-to-basket-wrapper .button-container.done-button {
        display: block;
        position: fixed;
        bottom: 25px;
        margin: 0;
        padding: 0 20px;
        width: calc(100% - 40px);
        font-size: 1.125em;
        text-align: center;
        z-index: 3; }
        .page.page-activity-detail .main-content .add-to-basket-wrapper .button-container.done-button .button-link span {
          margin: 0 10px 0 15px; } }
  @media only screen and (min-width: 821px) {
    .page.page-activity-detail .main-content .close-button {
      display: none; } }

body.seq-0 .page.page-activity-detail .voucher-only {
  background-color: #e07272; }
  @media (nothing) {
    body.seq-0 .page.page-activity-detail .voucher-only {
      background-color: #4e2829; } }

body.seq-1 .page.page-activity-detail .voucher-only {
  background-color: #33a5dc; }
  @media (nothing) {
    body.seq-1 .page.page-activity-detail .voucher-only {
      background-color: #0f3142; } }

body.seq-2 .page.page-activity-detail .voucher-only {
  background-color: #f3af35; }
  @media (nothing) {
    body.seq-2 .page.page-activity-detail .voucher-only {
      background-color: #33250b; } }

body.seq-3 .page.page-activity-detail .voucher-only {
  background-color: #8fbe21; }
  @media (nothing) {
    body.seq-3 .page.page-activity-detail .voucher-only {
      background-color: #212C08; } }

body.seq-4 .page.page-activity-detail .voucher-only {
  background-color: #f6b592; }
  @media (nothing) {
    body.seq-4 .page.page-activity-detail .voucher-only {
      background-color: #6d2c08; } }

body.seq-5 .page.page-activity-detail .voucher-only {
  background-color: #343c52; }
  @media (nothing) {
    body.seq-5 .page.page-activity-detail .voucher-only {
      background-color: #343c52; } }

body.seq-6 .page.page-activity-detail .voucher-only {
  background-color: #4271a8; }
  @media (nothing) {
    body.seq-6 .page.page-activity-detail .voucher-only {
      background-color: #0f3d75; } }

.page.page-guest-form {
  padding-top: 10px; }

.page.page-accommodation-detail .banner .availability-badge {
  position: absolute;
  padding: 20px;
  right: 10%;
  bottom: 10%;
  border-radius: 50%;
  color: #fefefe;
  min-height: 150px;
  min-width: 150px;
  overflow: hidden;
  line-height: 1em;
  transform: rotate(10deg);
  animation: fade-in 1s ease forwards;
  border: 7px solid #fefefe;
  cursor: pointer; }
  .page.page-accommodation-detail .banner .availability-badge > div {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 100%; }
    .page.page-accommodation-detail .banner .availability-badge > div > * {
      box-sizing: border-box; }
    .page.page-accommodation-detail .banner .availability-badge > div .date {
      font-size: 1em;
      text-align: center;
      font-family: "roboto-regular"; }
    .page.page-accommodation-detail .banner .availability-badge > div span {
      font-size: 0.9em;
      padding-left: 20%;
      line-height: 2.5em;
      display: block; }
    .page.page-accommodation-detail .banner .availability-badge > div .amount {
      font-size: 2.5em;
      font-family: "roboto-bold";
      text-align: center; }
    .page.page-accommodation-detail .banner .availability-badge > div .duration {
      font-size: 0.9em;
      text-align: right;
      padding-right: 10%;
      font-family: "roboto-regular";
      line-height: 2.5em; }
  .page.page-accommodation-detail .banner .availability-badge:hover {
    border-color: #a00; }

.page.page-accommodation-detail .breadcrumb {
  margin-top: 5px; }

.page.page-accommodation-detail .accommodation-title {
  font-family: "roboto-regular";
  font-size: 1.5em; }

.page.page-accommodation-detail .accommodation-meta-bar {
  margin-top: 10px; }
  .page.page-accommodation-detail .accommodation-meta-bar div {
    font-family: "roboto-regular";
    display: inline-block;
    margin: 0 30px 0 0; }

.page.page-accommodation-detail .accommodation-description .collapsed .collapse-text {
  position: relative;
  max-height: 150px;
  overflow: hidden; }
  .page.page-accommodation-detail .accommodation-description .collapsed .collapse-text .fade {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background: white;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.154499) 83%, white 98%); }

.page.page-accommodation-detail .accommodation-description .collapsed .collapse-button {
  padding-top: 5px;
  font-weight: bold; }
  .page.page-accommodation-detail .accommodation-description .collapsed .collapse-button .read-more {
    display: block; }
  .page.page-accommodation-detail .accommodation-description .collapsed .collapse-button .read-less {
    display: none; }

.page.page-accommodation-detail .accommodation-description .collapse-button {
  padding-top: 5px;
  font-weight: bold; }
  .page.page-accommodation-detail .accommodation-description .collapse-button .read-more {
    display: none; }
  .page.page-accommodation-detail .accommodation-description .collapse-button .read-less {
    display: block; }

@media only screen and (max-width: 1024px) and (min-width: 821px) {
  .page.page-accommodation-detail .back-link {
    margin: 10px 0; } }

.page.page-accommodation-detail .key-features-section {
  background-color: #eee;
  padding: 20px 15px; }
  .page.page-accommodation-detail .key-features-section h2 {
    margin-bottom: 10px; }
  .page.page-accommodation-detail .key-features-section.collapsed .features-outer-container .features-container .features {
    max-height: 140px; }
  .page.page-accommodation-detail .key-features-section.collapsed .features-outer-container .features-container .features-expander-container .features-expander .fewer-features {
    display: none; }
  .page.page-accommodation-detail .key-features-section.collapsed .features-outer-container .features-container .features-expander-container .features-expander .all-features {
    display: inherit; }
  .page.page-accommodation-detail .key-features-section .features-outer-container {
    text-align: center; }
    .page.page-accommodation-detail .key-features-section .features-outer-container .features-container {
      display: inline-block;
      max-width: 815px;
      padding: 10px 0;
      position: relative; }
      .page.page-accommodation-detail .key-features-section .features-outer-container .features-container .features {
        text-align: left;
        transition: max-height ease-in-out 0.2s;
        max-height: 2000px;
        overflow-y: hidden; }
        .page.page-accommodation-detail .key-features-section .features-outer-container .features-container .features div {
          margin: 20px;
          padding: 10px 10px 10px 10px;
          display: inline-block;
          width: 90px;
          min-height: 60px;
          vertical-align: top;
          text-align: center; }
          .page.page-accommodation-detail .key-features-section .features-outer-container .features-container .features div svg {
            display: inline-block;
            font-size: 1.7em; }
          .page.page-accommodation-detail .key-features-section .features-outer-container .features-container .features div span {
            display: block;
            text-align: center;
            margin-top: 5px;
            font-size: 0.7em;
            line-height: 1.5em; }
      .page.page-accommodation-detail .key-features-section .features-outer-container .features-container .features-expander-container {
        display: block; }
        .page.page-accommodation-detail .key-features-section .features-outer-container .features-container .features-expander-container .features-expander {
          float: right;
          color: #0f7fb5;
          cursor: pointer; }
          .page.page-accommodation-detail .key-features-section .features-outer-container .features-container .features-expander-container .features-expander .all-features {
            display: none; }
          .page.page-accommodation-detail .key-features-section .features-outer-container .features-container .features-expander-container .features-expander:hover {
            color: #a00; }

.page.page-accommodation-detail .lodge-locations h2 {
  padding-bottom: 15px; }

.page.page-accommodation-detail .lodge-locations #mapContainer {
  height: 600px; }

.page.page-accommodation-detail .lodge-locations .lodge-annotation {
  width: 250px;
  padding: 0;
  background: rgba(247, 247, 247, 0.9);
  border-radius: 5px;
  box-shadow: 10px 10px 50px rgba(0, 0, 0, 0.29);
  transform: translateX(10px) translateY(-15px); }
  .page.page-accommodation-detail .lodge-locations .lodge-annotation h2 {
    margin-top: 0;
    padding: 5px 10px;
    background: #5c6d7f;
    color: #fefefe;
    font-size: 16px;
    font-weight: 300;
    border-radius: 0 5px 0 0;
    font-family: "roboto-regular"; }
  .page.page-accommodation-detail .lodge-locations .lodge-annotation p {
    margin: 5px 10px;
    color: #555;
    font-family: "roboto-regular"; }
  .page.page-accommodation-detail .lodge-locations .lodge-annotation:after {
    content: "";
    position: absolute;
    top: 0;
    left: -13px;
    width: 0;
    height: 0;
    margin-bottom: -13px;
    border-right: 13px solid #5c6d7f;
    border-top: 13px solid transparent;
    border-bottom: 15px solid transparent; }

.page.page-accommodation-detail .related-articles h2 {
  padding-bottom: 15px; }

.page.page-accommodation-detail .related-articles .related-articles-container {
  width: calc(100% + 10px);
  margin-left: -5px;
  padding: 0 5px; }
  .page.page-accommodation-detail .related-articles .related-articles-container .article {
    display: inline-block;
    width: calc(33% - 30px);
    padding: 0;
    margin: 0 20px;
    white-space: nowrap;
    vertical-align: top;
    box-shadow: rgba(255, 255, 255, 0) 5px 5px 20px;
    cursor: pointer; }
    .page.page-accommodation-detail .related-articles .related-articles-container .article:hover .rendered-image {
      box-shadow: rgba(110, 40, 40, 0.4) 5px 5px 20px; }
    @media only screen and (max-width: 1024px) and (min-width: 821px) {
      .page.page-accommodation-detail .related-articles .related-articles-container .article {
        width: calc(50% - 26px); }
        .page.page-accommodation-detail .related-articles .related-articles-container .article:last-child {
          display: none; }
        .page.page-accommodation-detail .related-articles .related-articles-container .article:nth-child(2) {
          margin-right: 0; } }
    @media only screen and (max-width: 820px) {
      .page.page-accommodation-detail .related-articles .related-articles-container .article {
        width: 100%;
        margin: 10px 0; }
        .page.page-accommodation-detail .related-articles .related-articles-container .article:last-child {
          display: none; } }
    .page.page-accommodation-detail .related-articles .related-articles-container .article:first-child {
      margin-left: 0; }
    .page.page-accommodation-detail .related-articles .related-articles-container .article:last-child {
      margin-right: 0; }
    .page.page-accommodation-detail .related-articles .related-articles-container .article span {
      white-space: normal;
      line-height: 1em; }
    .page.page-accommodation-detail .related-articles .related-articles-container .article .name {
      font-family: "roboto-regular";
      font-size: 1.1em;
      display: block;
      margin-top: 10px; }
    .page.page-accommodation-detail .related-articles .related-articles-container .article .sub-title {
      font-size: 0.8em; }
    .page.page-accommodation-detail .related-articles .related-articles-container .article .rendered-image {
      transition: box-shadow linear 0.2s;
      height: 200px;
      width: 100%; }

.page.page-accommodation-detail .activity-faq-section .activity-faq {
  background-color: #eee; }
  .page.page-accommodation-detail .activity-faq-section .activity-faq .question-and-answer {
    padding: 25px 0;
    position: relative;
    border-bottom: 10px solid white; }
    .page.page-accommodation-detail .activity-faq-section .activity-faq .question-and-answer svg {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      font-size: 1.4em;
      width: 50px; }
    .page.page-accommodation-detail .activity-faq-section .activity-faq .question-and-answer .q-text {
      width: calc(100% - 50px);
      margin-left: 50px; }
      .page.page-accommodation-detail .activity-faq-section .activity-faq .question-and-answer .q-text .question {
        font-family: "roboto-regular"; }

body.seq-0 .page.page-accommodation-detail .banner .availability-badge {
  background-color: #e07272; }
  @media (nothing) {
    body.seq-0 .page.page-accommodation-detail .banner .availability-badge {
      background-color: #4e2829; } }

body.seq-1 .page.page-accommodation-detail .banner .availability-badge {
  background-color: #33a5dc; }
  @media (nothing) {
    body.seq-1 .page.page-accommodation-detail .banner .availability-badge {
      background-color: #0f3142; } }

body.seq-2 .page.page-accommodation-detail .banner .availability-badge {
  background-color: #f3af35; }
  @media (nothing) {
    body.seq-2 .page.page-accommodation-detail .banner .availability-badge {
      background-color: #33250b; } }

body.seq-3 .page.page-accommodation-detail .banner .availability-badge {
  background-color: #8fbe21; }
  @media (nothing) {
    body.seq-3 .page.page-accommodation-detail .banner .availability-badge {
      background-color: #212C08; } }

body.seq-4 .page.page-accommodation-detail .banner .availability-badge {
  background-color: #f6b592; }
  @media (nothing) {
    body.seq-4 .page.page-accommodation-detail .banner .availability-badge {
      background-color: #6d2c08; } }

body.seq-5 .page.page-accommodation-detail .banner .availability-badge {
  background-color: #343c52; }
  @media (nothing) {
    body.seq-5 .page.page-accommodation-detail .banner .availability-badge {
      background-color: #343c52; } }

body.seq-6 .page.page-accommodation-detail .banner .availability-badge {
  background-color: #4271a8; }
  @media (nothing) {
    body.seq-6 .page.page-accommodation-detail .banner .availability-badge {
      background-color: #0f3d75; } }

@supports (animation-fill-mode: forwards) and (not (-ms-ime-align: auto)) {
  @keyframes scale-and-fadein {
    0% {
      transform: scale(0.2);
      opacity: 0; }
    100% {
      transform: scale(1);
      opacity: 1; } }
  @-moz-keyframes scale-and-fadein {
    0% {
      transform: scale(0.2);
      opacity: 0; }
    100% {
      transform: scale(1);
      opacity: 1; } }
  @-webkit-keyframes scale-and-fadein {
    0% {
      transform: scale(0.2);
      opacity: 0; }
    100% {
      transform: scale(1);
      opacity: 1; } }
  @-ms-keyframes scale-and-fadein {
    0% {
      transform: scale(0.2);
      opacity: 0; }
    100% {
      transform: scale(1);
      opacity: 1; } }
  @-o-keyframes scale-and-fadein {
    0% {
      transform: scale(0.2);
      opacity: 0; }
    100% {
      transform: scale(1);
      opacity: 1; } } }

.page.page-standard-article h1 {
  text-align: center; }

.page.page-standard-article p {
  font-size: 1em;
  line-height: 1.4em;
  margin: 10px 0; }

.page.page-standard-article h3 {
  font-size: 1.4em;
  margin-top: 30px; }

.page.page-standard-article .activity-faq-section .activity-faq {
  background-color: #eee; }
  .page.page-standard-article .activity-faq-section .activity-faq .question-and-answer {
    padding: 25px 0;
    position: relative;
    border-bottom: 10px solid white; }
    .page.page-standard-article .activity-faq-section .activity-faq .question-and-answer svg {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      font-size: 1.4em;
      width: 50px; }
    .page.page-standard-article .activity-faq-section .activity-faq .question-and-answer .q-text {
      width: calc(100% - 50px);
      margin-left: 50px; }
      .page.page-standard-article .activity-faq-section .activity-faq .question-and-answer .q-text .question {
        font-family: "roboto-regular"; }

.page.page-well-spa h1 {
  text-align: center; }

.page.page-well-spa .section-links .vertical-article-collage .sub-title {
  display: none; }

.page.page-well-spa .showcase-section {
  margin-top: 60px;
  position: initial;
  box-sizing: initial; }

.page.page-password-reset .activity-content-section .label {
  font-size: 0.9em;
  font-family: "roboto-regular"; }

.page.page-password-reset .activity-content-section .field input {
  border: 1px solid #ddd;
  border-radius: 5px;
  background-color: #fefefe;
  padding: 10px;
  outline: none; }

.page.page-password-reset .activity-content-section .field-validation-error {
  max-width: 300px; }

.page.page-password-reset .activity-content-section .button-container .button-link {
  padding: 10px 20px; }

@media only screen and (max-width: 1024px) and (min-width: 821px) {
  .page.page-password-reset .activity-content-section {
    margin-top: 95px; }
    .page.page-password-reset .activity-content-section input {
      -webkit-appearance: none; } }

@media only screen and (max-width: 820px) {
  .page.page-password-reset .activity-content-section {
    margin-top: 95px; }
    .page.page-password-reset .activity-content-section .field input {
      padding: 15px 10px !important;
      font-size: 16px; }
    .page.page-password-reset .activity-content-section .field-validation-error {
      max-width: unset; }
    .page.page-password-reset .activity-content-section .button-container {
      margin-top: 10px; }
      .page.page-password-reset .activity-content-section .button-container input {
        -webkit-appearance: none; }
      .page.page-password-reset .activity-content-section .button-container .button-sub-link {
        margin-top: 10px; } }

.page.page-payment .menu-background {
  margin-bottom: 0; }
  @media only screen and (max-width: 820px) {
    .page.page-payment .menu-background {
      height: inherit; } }
  .page.page-payment .menu-background .user {
    position: absolute;
    top: 10px;
    right: 20px; }
    .page.page-payment .menu-background .user .profile-picture-mini:hover {
      background-color: transparent; }
    @media only screen and (max-width: 820px) {
      .page.page-payment .menu-background .user {
        display: none; } }

.page.page-account .menu-background {
  margin-bottom: 0; }

.page.page-account .biographical-section {
  background-color: #eee; }
  @media only screen and (max-width: 1024px) and (min-width: 821px) {
    .page.page-account .biographical-section {
      margin-top: 64px; } }
  @media only screen and (max-width: 820px) {
    .page.page-account .biographical-section {
      margin-top: 64px; } }
  .page.page-account .biographical-section .biographical-container {
    padding-top: 20px; }
    .page.page-account .biographical-section .biographical-container .image-container {
      display: inline-block;
      margin-right: 20px; }
    .page.page-account .biographical-section .biographical-container .text-container {
      display: inline-block;
      vertical-align: top; }

.page.page-account .interests-section .interests-container {
  padding: 20px;
  border: solid 1px #eee;
  border-radius: 5px; }
  @media only screen and (max-width: 1024px) and (min-width: 821px) {
    .page.page-account .interests-section .interests-container {
      width: calc(100% - 40px); } }
  @media only screen and (max-width: 820px) {
    .page.page-account .interests-section .interests-container {
      width: calc(100% - 40px); } }
  .page.page-account .interests-section .interests-container .inner > div {
    display: inline-block;
    margin: 20px;
    width: 150px; }
    .page.page-account .interests-section .interests-container .inner > div .image {
      height: 100px;
      border-radius: 5px;
      position: relative;
      transition: transform ease-out 0.2s;
      cursor: pointer; }
      .page.page-account .interests-section .interests-container .inner > div .image.like svg.like {
        opacity: 1; }
      .page.page-account .interests-section .interests-container .inner > div .image.neutral svg.neutral {
        opacity: 1;
        color: #999; }
      .page.page-account .interests-section .interests-container .inner > div .image.dislike svg.dislike {
        opacity: 1;
        color: #2A6180; }
      .page.page-account .interests-section .interests-container .inner > div .image.loading svg.loading {
        opacity: 1;
        color: #2A6180; }
      .page.page-account .interests-section .interests-container .inner > div .image.loading svg.like, .page.page-account .interests-section .interests-container .inner > div .image.loading svg.neutral, .page.page-account .interests-section .interests-container .inner > div .image.loading svg.dislike {
        opacity: 0; }
      .page.page-account .interests-section .interests-container .inner > div .image:hover {
        transform: scale(1.05); }
        .page.page-account .interests-section .interests-container .inner > div .image:hover.neutral svg {
          color: #a00; }
        .page.page-account .interests-section .interests-container .inner > div .image:hover svg {
          transform: scale(1.3); }
      .page.page-account .interests-section .interests-container .inner > div .image > div {
        position: absolute;
        bottom: 0;
        right: 0;
        height: 30px;
        width: 30px;
        background-color: rgba(255, 255, 255, 0.8);
        border-top-left-radius: 5px; }
        .page.page-account .interests-section .interests-container .inner > div .image > div svg {
          position: absolute;
          opacity: 0;
          right: 5px;
          bottom: 5px;
          color: #a00;
          transition: transform ease-out 0.2s;
          transition-property: transform, opacity;
          transform-origin: center center; }
    .page.page-account .interests-section .interests-container .inner > div div {
      width: 100%;
      text-align: center; }

.page.page-account .account-settings-section .settings-container {
  background-color: #eee;
  border-radius: 5px;
  padding: 20px; }
  .page.page-account .account-settings-section .settings-container .button-container {
    text-align: right;
    float: right;
    vertical-align: bottom; }
    .page.page-account .account-settings-section .settings-container .button-container .button-link {
      display: inline-block;
      width: auto; }
  .page.page-account .account-settings-section .settings-container hr {
    border-bottom: 0;
    border-top: 1px solid #999; }
  @media only screen and (max-width: 1024px) and (min-width: 821px) {
    .page.page-account .account-settings-section .settings-container {
      width: calc(100% - 40px); } }
  @media only screen and (max-width: 820px) {
    .page.page-account .account-settings-section .settings-container {
      width: calc(100% - 40px); }
      .page.page-account .account-settings-section .settings-container .split-container.third > div {
        width: 100%; }
      .page.page-account .account-settings-section .settings-container .button-container {
        text-align: center;
        float: unset;
        vertical-align: unset;
        margin: 40px 0 20px 0; }
        .page.page-account .account-settings-section .settings-container .button-container .button-link {
          display: block; } }

.page.page-pre-registration .menu-background {
  margin-bottom: 0; }

.page.page-activities .categories-container > div {
  display: inline-flex;
  flex-wrap: wrap; }
  @media (nothing) {
    .page.page-activities .categories-container > div {
      background-color: #112; } }
  .page.page-activities .categories-container > div .activity-category {
    display: inline-block;
    position: relative;
    color: #fefefe;
    margin: 10px;
    flex: 1 0 300px;
    transition: transform ease-in-out 0.2s;
    width: 300px; }
    .page.page-activities .categories-container > div .activity-category:hover {
      transform: scale(1.005);
      box-shadow: rgba(40, 40, 40, 0.4) 2px 2px 10px; }
    .page.page-activities .categories-container > div .activity-category .image {
      background-size: cover;
      position: relative; }
      .page.page-activities .categories-container > div .activity-category .image .name {
        position: absolute;
        bottom: 20px;
        padding: 5px 10px;
        color: #fefefe;
        font-size: 2em;
        line-height: 1em;
        width: auto;
        transition: transform ease-in-out 1s;
        transition-property: opacity, transform; }
        @media only screen and (min-width: 821px) {
          .page.page-activities .categories-container > div .activity-category .image .name {
            left: 20px; } }
        @media only screen and (max-width: 820px) {
          .page.page-activities .categories-container > div .activity-category .image .name {
            right: 0;
            margin-left: 20px; } }
        @media (nothing) {
          .page.page-activities .categories-container > div .activity-category .image .name {
            color: #999; } }
    .page.page-activities .categories-container > div .activity-category .detail {
      background-color: #eee;
      padding: 10px;
      min-height: 60px;
      width: 100%;
      box-sizing: border-box;
      position: absolute;
      bottom: 0;
      left: 0;
      color: #2A6180; }
      .page.page-activities .categories-container > div .activity-category .detail .title {
        font-size: 0.7em;
        text-transform: uppercase;
        font-family: "roboto-bold"; }
      .page.page-activities .categories-container > div .activity-category .detail .date-range {
        font-size: 1em; }
        .page.page-activities .categories-container > div .activity-category .detail .date-range svg {
          margin-right: 5px; }

.page.page-frequent-questions h1 {
  text-align: center; }

.page.page-frequent-questions .faq {
  background-color: #eee; }
  .page.page-frequent-questions .faq .question-and-answer {
    padding: 25px 0;
    position: relative;
    border-bottom: 10px solid white; }
    .page.page-frequent-questions .faq .question-and-answer svg {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      font-size: 1.4em;
      width: 50px; }
    .page.page-frequent-questions .faq .question-and-answer .q-text {
      width: calc(100% - 50px);
      margin-left: 50px; }
      .page.page-frequent-questions .faq .question-and-answer .q-text .question {
        font-family: "roboto-regular"; }

.help-page .section .contact-grid {
  border-radius: 10px;
  text-align: center; }
  .help-page .section .contact-grid .contact-type {
    width: 45%;
    display: inline-block;
    text-align: center;
    background-color: #f2f2f2;
    border-radius: 5px;
    margin-bottom: 5px;
    padding: 20px; }
    @media only screen and (max-width: 1024px) {
      .help-page .section .contact-grid .contact-type {
        width: 90%; } }
    .help-page .section .contact-grid .contact-type .contact-title {
      color: #666; }
    .help-page .section .contact-grid .contact-type .contact-icon {
      font-size: 6em;
      padding: 15px; }
    .help-page .section .contact-grid .contact-type .contact-description {
      color: #666; }

.help-page .section .page-description {
  padding-top: 30px; }

.page.page-payment-result h1 {
  color: #5c6d7f; }

.page.page-payment-result .message-container {
  width: 100%;
  padding: 20px;
  box-sizing: border-box;
  text-align: center; }
  .page.page-payment-result .message-container .message-area {
    width: 100%;
    max-width: 600px;
    display: inline-block;
    text-align: left; }
    .page.page-payment-result .message-container .message-area .wait-animation {
      display: block;
      text-align: center;
      margin-top: 50px;
      color: #5c6d7f;
      font-size: 3em; }
    .page.page-payment-result .message-container .message-area .redirect {
      margin: 50px 0; }

.page.page-payment-result .button-bar {
  margin: 20px 0; }
  .page.page-payment-result .button-bar .button-link {
    margin: 20px 30px; }

.page.page-reservations .reservation-containers .guest-reservations {
  text-align: center; }
  .page.page-reservations .reservation-containers .guest-reservations .reservation-period {
    display: inline-block;
    border: 1px solid #999;
    border-radius: 10px;
    width: 40%;
    max-width: 500px;
    margin: 40px;
    text-align: left; }
    .page.page-reservations .reservation-containers .guest-reservations .reservation-period .dates {
      background-color: #eee;
      position: relative;
      box-sizing: border-box;
      border-top-left-radius: 10px;
      border-top-right-radius: 10px; }
      .page.page-reservations .reservation-containers .guest-reservations .reservation-period .dates > div {
        padding: 5px 10px;
        width: 50%;
        display: inline-block;
        box-sizing: border-box; }
        .page.page-reservations .reservation-containers .guest-reservations .reservation-period .dates > div:first-child {
          text-align: right;
          border-right: 1px solid #999; }
        .page.page-reservations .reservation-containers .guest-reservations .reservation-period .dates > div:last-child {
          position: absolute;
          top: 0;
          right: 0; }
    .page.page-reservations .reservation-containers .guest-reservations .reservation-period .reservations .reservation .rendered-image {
      height: 200px; }
    .page.page-reservations .reservation-containers .guest-reservations .reservation-period .reservations .reservation .details > div {
      padding: 10px; }
      .page.page-reservations .reservation-containers .guest-reservations .reservation-period .reservations .reservation .details > div span.value {
        font-family: "roboto-bold"; }
      .page.page-reservations .reservation-containers .guest-reservations .reservation-period .reservations .reservation .details > div.col-2 div {
        width: 100%;
        max-width: 200px;
        display: inline-block; }
        .page.page-reservations .reservation-containers .guest-reservations .reservation-period .reservations .reservation .details > div.col-2 div span {
          display: block; }

.page.page-reservation-accommodation .title-banner p .date {
  font-family: "roboto-bold"; }

.page.page-reservation-accommodation .notice.green {
  color: #474; }

.page.page-reservation-accommodation .my-reservations {
  font-size: 0.8em; }
  .page.page-reservation-accommodation .my-reservations .reservation {
    border-bottom: 1px solid #ccc;
    padding: 30px 0; }
    .page.page-reservation-accommodation .my-reservations .reservation:last-child {
      border-bottom: none; }
    .page.page-reservation-accommodation .my-reservations .reservation.split-container > div:first-child {
      width: 100%;
      max-width: 350px;
      margin-right: 30px; }
      .page.page-reservation-accommodation .my-reservations .reservation.split-container > div:first-child .rendered-image {
        height: 200px; }
    .page.page-reservation-accommodation .my-reservations .reservation.split-container > div:last-child {
      width: calc(100% - 390px); }
    .page.page-reservation-accommodation .my-reservations .reservation .lodge-description {
      text-align: center;
      margin: 30px 0; }
      .page.page-reservation-accommodation .my-reservations .reservation .lodge-description .lodge-title {
        font-family: "roboto-regular";
        font-size: 1.1em; }
      .page.page-reservation-accommodation .my-reservations .reservation .lodge-description .lodge-sleeps {
        font-size: 0.8em; }
      .page.page-reservation-accommodation .my-reservations .reservation .lodge-description .lodge-location {
        color: #0f7fb5;
        margin-top: 15px;
        cursor: pointer;
        text-align: left; }
        .page.page-reservation-accommodation .my-reservations .reservation .lodge-description .lodge-location svg {
          margin-right: 5px; }
        .page.page-reservation-accommodation .my-reservations .reservation .lodge-description .lodge-location:hover {
          color: #a00; }
    .page.page-reservation-accommodation .my-reservations .reservation .reservation-detail div > div {
      display: inline-block; }
      .page.page-reservation-accommodation .my-reservations .reservation .reservation-detail div > div.label {
        margin-right: 5px; }
      .page.page-reservation-accommodation .my-reservations .reservation .reservation-detail div > div.field {
        font-family: "roboto-bold"; }
    .page.page-reservation-accommodation .my-reservations .reservation .guests {
      margin-top: 30px; }
      .page.page-reservation-accommodation .my-reservations .reservation .guests .party-member {
        display: inline-block;
        vertical-align: top;
        margin-right: 20px;
        cursor: pointer;
        border-bottom: 3px solid transparent; }
        .page.page-reservation-accommodation .my-reservations .reservation .guests .party-member div {
          display: block;
          text-align: center; }
          .page.page-reservation-accommodation .my-reservations .reservation .guests .party-member div .profile-picture-mini {
            cursor: inherit; }
            .page.page-reservation-accommodation .my-reservations .reservation .guests .party-member div .profile-picture-mini span {
              cursor: inherit;
              background-color: transparent; }
        .page.page-reservation-accommodation .my-reservations .reservation .guests .party-member > div:first-child {
          position: relative; }
          .page.page-reservation-accommodation .my-reservations .reservation .guests .party-member > div:first-child svg.completed, .page.page-reservation-accommodation .my-reservations .reservation .guests .party-member > div:first-child svg.incomplete {
            position: absolute;
            top: -8px;
            right: 50%;
            transform: translateX(35px);
            margin: 0;
            background-color: #fefefe;
            padding: 3px;
            border-radius: 50%;
            border: 0 solid transparent; }
            .page.page-reservation-accommodation .my-reservations .reservation .guests .party-member > div:first-child svg.completed.completed, .page.page-reservation-accommodation .my-reservations .reservation .guests .party-member > div:first-child svg.incomplete.completed {
              color: #69a364;
              display: none; }
            .page.page-reservation-accommodation .my-reservations .reservation .guests .party-member > div:first-child svg.completed.incomplete, .page.page-reservation-accommodation .my-reservations .reservation .guests .party-member > div:first-child svg.incomplete.incomplete {
              color: #a00;
              display: block; }
          .page.page-reservation-accommodation .my-reservations .reservation .guests .party-member > div:first-child > div {
            width: 50px;
            height: 50px;
            background-color: #c66;
            color: #fefefe;
            border-radius: 50%;
            font-size: 26px;
            display: inline-block;
            margin-bottom: 5px; }
            .page.page-reservation-accommodation .my-reservations .reservation .guests .party-member > div:first-child > div svg {
              margin-top: 12px;
              display: inline-block; }
        .page.page-reservation-accommodation .my-reservations .reservation .guests .party-member.complete > div:first-child svg.completed {
          display: block; }
        .page.page-reservation-accommodation .my-reservations .reservation .guests .party-member.complete > div:first-child svg.incomplete {
          display: none; }
        .page.page-reservation-accommodation .my-reservations .reservation .guests .party-member.complete > div:first-child div {
          background-color: #9c9; }
        .page.page-reservation-accommodation .my-reservations .reservation .guests .party-member.spare > div:first-child div {
          background-color: #eee; }
          .page.page-reservation-accommodation .my-reservations .reservation .guests .party-member.spare > div:first-child div .completed, .page.page-reservation-accommodation .my-reservations .reservation .guests .party-member.spare > div:first-child div .incomplete {
            display: none; }
        .page.page-reservation-accommodation .my-reservations .reservation .guests .party-member > div:last-child {
          font-size: 0.9em;
          font-family: "roboto-bold";
          line-height: 1em; }
        .page.page-reservation-accommodation .my-reservations .reservation .guests .party-member:hover {
          border-bottom: 3px solid #2A6180; }
          .page.page-reservation-accommodation .my-reservations .reservation .guests .party-member:hover > div:first-child div {
            background-color: #a00; }
            .page.page-reservation-accommodation .my-reservations .reservation .guests .party-member:hover > div:first-child div .completed {
              border: 3px solid #474;
              padding: 2px;
              top: -10px;
              transform: translateX(37px); }
            .page.page-reservation-accommodation .my-reservations .reservation .guests .party-member:hover > div:first-child div .incomplete {
              border: 3px solid #a00;
              padding: 2px;
              top: -10px;
              transform: translateX(37px); }
          .page.page-reservation-accommodation .my-reservations .reservation .guests .party-member:hover.complete > div:first-child div {
            background-color: #474; }
          .page.page-reservation-accommodation .my-reservations .reservation .guests .party-member:hover.spare > div:first-child div {
            background-color: #999; }
    .page.page-reservation-accommodation .my-reservations .reservation .cars {
      margin-top: 30px; }
      .page.page-reservation-accommodation .my-reservations .reservation .cars .cars-container {
        display: inline; }
      .page.page-reservation-accommodation .my-reservations .reservation .cars .car {
        display: inline-block;
        text-align: center;
        margin: 20px;
        vertical-align: top; }
        .page.page-reservation-accommodation .my-reservations .reservation .cars .car.new {
          opacity: 0.6; }
          .page.page-reservation-accommodation .my-reservations .reservation .cars .car.new:hover, .page.page-reservation-accommodation .my-reservations .reservation .cars .car.new.focus {
            opacity: 1; }
            .page.page-reservation-accommodation .my-reservations .reservation .cars .car.new:hover svg, .page.page-reservation-accommodation .my-reservations .reservation .cars .car.new.focus svg {
              color: #2A6180; }
          .page.page-reservation-accommodation .my-reservations .reservation .cars .car.new svg {
            color: #999;
            cursor: pointer; }
        .page.page-reservation-accommodation .my-reservations .reservation .cars .car svg {
          vertical-align: top; }
          .page.page-reservation-accommodation .my-reservations .reservation .cars .car svg:first-child {
            font-size: 3em; }
        .page.page-reservation-accommodation .my-reservations .reservation .cars .car div {
          background-color: #ffef52;
          border-radius: 7px;
          width: 120px;
          padding: 3px 5px;
          position: relative;
          box-shadow: rgba(40, 40, 40, 0.4) 1px 1px 1px;
          display: block; }
          .page.page-reservation-accommodation .my-reservations .reservation .cars .car div > * {
            background-color: transparent;
            border: 2px solid #000;
            border-radius: 5px;
            box-sizing: border-box;
            text-align: center;
            color: #000;
            font-family: "roboto-regular";
            text-transform: uppercase;
            outline: none;
            font-size: 1.2em;
            width: 100%; }
    .page.page-reservation-accommodation .my-reservations .reservation .guests h3, .page.page-reservation-accommodation .my-reservations .reservation .cars h3, .page.page-reservation-accommodation .my-reservations .reservation .arrival-time h3 {
      margin-bottom: 0;
      padding-bottom: 0;
      color: #5c6d7f; }
    .page.page-reservation-accommodation .my-reservations .reservation .guests .detail, .page.page-reservation-accommodation .my-reservations .reservation .cars .detail, .page.page-reservation-accommodation .my-reservations .reservation .arrival-time .detail {
      font-size: 0.9em;
      margin-top: 0;
      display: block;
      margin-bottom: 20px; }

@media only screen and (max-width: 1024px) and (min-width: 821px) {
  .page.page-reservation-accommodation .title-banner {
    margin-top: 65px; } }

@media only screen and (max-width: 820px) {
  .page.page-reservation-accommodation .title-banner {
    margin-top: 64px; }
  .page.page-reservation-accommodation .my-reservations .reservation.split-container > div:first-child {
    max-width: initial;
    margin-right: 0; }
    .page.page-reservation-accommodation .my-reservations .reservation.split-container > div:first-child .rendered-image {
      height: 200px; }
  .page.page-reservation-accommodation .my-reservations .reservation.split-container > div:last-child {
    width: 100%; }
  .page.page-reservation-accommodation .my-reservations .reservation .lodge-description {
    margin: 20px 0; }
    .page.page-reservation-accommodation .my-reservations .reservation .lodge-description .lodge-location {
      text-align: center; }
  .page.page-reservation-accommodation .my-reservations .reservation .reservation-detail {
    display: block; }
    .page.page-reservation-accommodation .my-reservations .reservation .reservation-detail div > ul {
      list-style: none;
      font-family: "roboto-bold"; }
  .page.page-reservation-accommodation .notice .button-link {
    float: unset;
    display: block;
    text-align: center; } }

.page.page-reservation-accommodation .done-link {
  display: block;
  width: 100%;
  text-align: center;
  font-size: 1.4em;
  margin: 40px 0; }

.page.page-profile-editor {
  background-color: #eee; }
  .page.page-profile-editor .profile-editor-form .menu-background {
    margin-bottom: 0; }
  .page.page-profile-editor .profile-editor-form .field-validation-error.general {
    margin-bottom: 20px; }
  .page.page-profile-editor .profile-editor-form .section {
    background-color: #fefefe;
    padding: 20px;
    border-radius: 20px;
    border-left: solid 40px #5c6d7f; }
    .page.page-profile-editor .profile-editor-form .section h2 {
      margin: 0 0 15px -55px;
      color: #5c6d7f; }
      .page.page-profile-editor .profile-editor-form .section h2 svg {
        margin-right: 10px;
        width: 30px;
        color: #fefefe; }
    .page.page-profile-editor .profile-editor-form .section > div {
      margin: 10px; }
      .page.page-profile-editor .profile-editor-form .section > div .label {
        font-size: 0.9em; }
      .page.page-profile-editor .profile-editor-form .section > div .info {
        font-size: 0.7em;
        margin-top: 10px; }
      .page.page-profile-editor .profile-editor-form .section > div.email-address {
        margin-top: 30px; }
  .page.page-profile-editor .profile-editor-form .button-bar input {
    -webkit-appearance: none; }

.page.page-payment-card {
  background-color: #eee;
  position: relative; }
  @media only screen and (max-width: 820px) {
    .page.page-payment-card .single-column-format {
      padding: 0; } }
  .page.page-payment-card div.container {
    padding: 0;
    border-style: none;
    position: relative;
    width: 100%;
    margin: 20px 0;
    box-sizing: border-box; }
    @media only screen and (min-width: 821px) {
      .page.page-payment-card div.container {
        background-color: #fefefe;
        padding: 20px;
        border-radius: 10px; } }
    .page.page-payment-card div.container .payment-form-container {
      vertical-align: top;
      width: 100%;
      box-sizing: border-box;
      display: inline-block;
      min-height: 600px;
      max-width: 500px;
      border: 1px solid #999; }
      @media only screen and (max-width: 820px) {
        .page.page-payment-card div.container .payment-form-container {
          border: 0;
          background-color: #fefefe;
          max-width: unset; } }
    .page.page-payment-card div.container .description {
      vertical-align: top;
      display: inline-block;
      width: calc(100% - 520px);
      padding: 20px;
      box-sizing: border-box;
      font-size: 0.8em; }
      .page.page-payment-card div.container .description h3 {
        margin: 0; }
      .page.page-payment-card div.container .description h3 + p {
        margin-top: 0; }
      @media only screen and (max-width: 820px) {
        .page.page-payment-card div.container .description {
          display: block;
          width: 100%; } }

@media only screen and (max-width: 1024px) {
  .page.page-booking-grid .top-content {
    padding: 15px; } }

@media only screen and (min-width: 1025px) {
  .page.page-booking-grid .top-content {
    margin-top: 15px; } }

.page.page-accommodation-part-payment .accommodation-part-payment-detail input[type=radio] {
  margin: 20px 10px; }
  .page.page-accommodation-part-payment .accommodation-part-payment-detail input[type=radio]:checked + label {
    font-family: "roboto-bold";
    color: #2A6180; }

.page.page-accommodation-part-payment .accommodation-part-payment-detail .plan ul.payment-plan li {
  list-style: none;
  margin: 10px 0; }
  .page.page-accommodation-part-payment .accommodation-part-payment-detail .plan ul.payment-plan li span:last-child {
    margin-left: 20px;
    font-family: "roboto-regular";
    color: #69a364; }

.page.page-accommodation-part-payment .accommodation-part-payment-detail .plan .consent {
  font-size: 0.8em;
  padding: 20px;
  display: flex; }
  .page.page-accommodation-part-payment .accommodation-part-payment-detail .plan .consent > span {
    flex: 1 1 auto;
    display: inline-block; }
    .page.page-accommodation-part-payment .accommodation-part-payment-detail .plan .consent > span:first-child {
      padding-right: 10px; }

.page.page-accommodation-part-payment .accommodation-part-payment-detail .payment-options {
  margin-top: 30px; }
  .page.page-accommodation-part-payment .accommodation-part-payment-detail .payment-options h4 {
    margin-bottom: 0; }
  .page.page-accommodation-part-payment .accommodation-part-payment-detail .payment-options > div {
    position: relative;
    padding: 0;
    box-sizing: border-box; }
    .page.page-accommodation-part-payment .accommodation-part-payment-detail .payment-options > div > div {
      vertical-align: top;
      width: 100%;
      max-width: 670px;
      display: inline-block;
      box-sizing: border-box;
      border: solid 3px transparent;
      padding-left: 10px;
      margin-bottom: 20px; }
      .page.page-accommodation-part-payment .accommodation-part-payment-detail .payment-options > div > div:first-child {
        border-left: solid 5px #5c6d7f; }
        .page.page-accommodation-part-payment .accommodation-part-payment-detail .payment-options > div > div:first-child h3, .page.page-accommodation-part-payment .accommodation-part-payment-detail .payment-options > div > div:first-child h4 {
          color: #5c6d7f; }
      .page.page-accommodation-part-payment .accommodation-part-payment-detail .payment-options > div > div:last-child {
        border-left: solid 5px #69a364; }
        .page.page-accommodation-part-payment .accommodation-part-payment-detail .payment-options > div > div:last-child h3 {
          color: #69a364; }
      .page.page-accommodation-part-payment .accommodation-part-payment-detail .payment-options > div > div form {
        display: inline; }

.page.page-accommodation-part-payment .accommodation-part-payment-detail .payment-method > div {
  padding-left: 10px; }

.page.page-accommodation-part-payment .accommodation-payment-plan-detail h3 {
  color: #474; }

.page.page-accommodation-part-payment .accommodation-payment-plan-detail .instalments {
  padding: 0 20px; }
  .page.page-accommodation-part-payment .accommodation-payment-plan-detail .instalments > * {
    margin: 20px 0; }
    .page.page-accommodation-part-payment .accommodation-payment-plan-detail .instalments > *.paid {
      color: #474; }
    .page.page-accommodation-part-payment .accommodation-payment-plan-detail .instalments > *.fail {
      color: #a00; }
    .page.page-accommodation-part-payment .accommodation-payment-plan-detail .instalments > *.cancelled {
      color: #999; }
      .page.page-accommodation-part-payment .accommodation-payment-plan-detail .instalments > *.cancelled span:not(:last-child) {
        text-decoration: line-through; }
    .page.page-accommodation-part-payment .accommodation-payment-plan-detail .instalments > * span:not(:last-child) {
      margin-right: 20px; }
    .page.page-accommodation-part-payment .accommodation-payment-plan-detail .instalments > * span:last-child {
      font-family: "roboto-regular"; }
    .page.page-accommodation-part-payment .accommodation-payment-plan-detail .instalments > * svg {
      margin-right: 10px;
      font-size: 0.9em; }

.page.page-accommodation-part-payment .accommodation-payment-plan-detail .buttons {
  padding: 20px 0; }
  .page.page-accommodation-part-payment .accommodation-payment-plan-detail .buttons .button-link {
    display: inline-block;
    margin: 0 30px; }

.page-holiday-planner .banner .banner-content {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  color: #fefefe;
  z-index: 0; }
  .page-holiday-planner .banner .banner-content .banner-content-inner {
    position: absolute;
    width: 100%;
    z-index: 3; }
    @media only screen and (min-width: 821px) {
      .page-holiday-planner .banner .banner-content .banner-content-inner {
        top: 50%;
        transform: translateY(-50%); } }
    @media only screen and (max-width: 820px) {
      .page-holiday-planner .banner .banner-content .banner-content-inner {
        bottom: 30px; } }
    .page-holiday-planner .banner .banner-content .banner-content-inner h1 {
      font-size: 3.5em;
      text-shadow: 2px 2px 13px rgba(40, 40, 40, 0.5), 2px 2px 13px rgba(40, 40, 40, 0.5), 3px 3px 13px rgba(40, 40, 40, 0.3);
      margin-bottom: 0;
      line-height: 1em;
      text-align: center; }
      @media only screen and (max-width: 820px) {
        .page-holiday-planner .banner .banner-content .banner-content-inner h1 {
          font-size: 1.6em; } }
      @media only screen and (max-width: 360px) {
        .page-holiday-planner .banner .banner-content .banner-content-inner h1 {
          font-size: 1.35em;
          margin-bottom: 2px; } }
    .page-holiday-planner .banner .banner-content .banner-content-inner h2 {
      font-family: "roboto-light";
      font-size: 2em;
      text-shadow: 2px 2px 13px rgba(40, 40, 40, 0.5), 2px 2px 13px rgba(40, 40, 40, 0.5), 3px 3px 13px rgba(40, 40, 40, 0.3);
      margin: 10px 0 20px 0;
      line-height: 1em;
      text-align: center; }
      @media only screen and (max-width: 820px) {
        .page-holiday-planner .banner .banner-content .banner-content-inner h2 {
          display: none; } }

.page-holiday-planner .main {
  position: relative; }
  .page-holiday-planner .main h3 {
    text-align: center; }
  .page-holiday-planner .main .date-controller-placeholder {
    position: absolute;
    left: 70px;
    display: block;
    width: auto; }
    @media only screen and (max-width: 820px) {
      .page-holiday-planner .main .date-controller-placeholder {
        display: none; } }
    @media only screen and (max-width: 1024px) and (min-width: 821px) {
      .page-holiday-planner .main .date-controller-placeholder {
        left: 20px; } }
    .page-holiday-planner .main .date-controller-placeholder .date-controller {
      text-align: center;
      width: auto; }
      .page-holiday-planner .main .date-controller-placeholder .date-controller.sticky {
        position: fixed;
        top: 45px; }
      .page-holiday-planner .main .date-controller-placeholder .date-controller > * {
        margin-bottom: 10px; }
      .page-holiday-planner .main .date-controller-placeholder .date-controller .month {
        color: #999;
        margin-top: 10px; }
      .page-holiday-planner .main .date-controller-placeholder .date-controller .day {
        font-family: "roboto-bold";
        color: #2A6180;
        padding: 5px;
        border-radius: 50%;
        min-width: 25px;
        min-height: 25px;
        cursor: pointer; }
        .page-holiday-planner .main .date-controller-placeholder .date-controller .day.selected {
          background-color: #2A6180;
          color: #fefefe; }
        .page-holiday-planner .main .date-controller-placeholder .date-controller .day:hover {
          background-color: #5c6d7f;
          color: #fefefe; }
  .page-holiday-planner .main .planner-item-container {
    padding: 0 200px;
    box-sizing: border-box;
    position: relative; }
    @media only screen and (max-width: 820px) {
      .page-holiday-planner .main .planner-item-container {
        padding: 0; } }
    @media only screen and (max-width: 1024px) and (min-width: 821px) {
      .page-holiday-planner .main .planner-item-container {
        padding: 0 0 0 100px; } }
    .page-holiday-planner .main .planner-item-container .timeline {
      width: 2px;
      height: calc(100% - 100px);
      position: absolute;
      z-index: -1;
      background-color: #eee;
      left: 274px;
      margin: 20px 0;
      box-sizing: border-box; }
      @media only screen and (max-width: 820px) {
        .page-holiday-planner .main .planner-item-container .timeline {
          left: 0;
          background-color: #5c6d7f;
          height: 100%;
          margin: 0; } }
      @media only screen and (max-width: 1024px) and (min-width: 821px) {
        .page-holiday-planner .main .planner-item-container .timeline {
          left: 170px; } }
    .page-holiday-planner .main .planner-item-container .date-container {
      margin: 50px 0 30px 0; }
      @media only screen and (max-width: 820px) {
        .page-holiday-planner .main .planner-item-container .date-container {
          margin: 50px 0 10px 10px; }
          .page-holiday-planner .main .planner-item-container .date-container.first + .item {
            margin-top: 0; } }
      .page-holiday-planner .main .planner-item-container .date-container.first {
        margin-top: 0; }
      .page-holiday-planner .main .planner-item-container .date-container .date {
        width: auto;
        font-family: "roboto-bold";
        color: #2A6180; }
        @media only screen and (min-width: 821px) {
          .page-holiday-planner .main .planner-item-container .date-container .date {
            background-color: #5c6d7f;
            color: #fefefe;
            padding: 15px 10px;
            border-radius: 50px;
            text-align: center;
            min-width: 130px;
            display: inline-block; } }
    .page-holiday-planner .main .planner-item-container .nothing {
      padding-left: 100px;
      color: #999; }
      @media only screen and (max-width: 820px) {
        .page-holiday-planner .main .planner-item-container .nothing {
          padding-left: 100px;
          margin-left: 10px; } }
    .page-holiday-planner .main .planner-item-container .item {
      padding: 10px 20px 20px 20px;
      border: solid 3px #eee;
      background-color: #fefefe;
      margin-top: 30px; }
      @media only screen and (max-width: 820px) {
        .page-holiday-planner .main .planner-item-container .item {
          margin-left: 10px;
          border: none; } }
      .page-holiday-planner .main .planner-item-container .item > * {
        vertical-align: top; }
      .page-holiday-planner .main .planner-item-container .item.recommended {
        border-color: #9c9; }
        .page-holiday-planner .main .planner-item-container .item.recommended .who {
          color: #69a364; }
          .page-holiday-planner .main .planner-item-container .item.recommended .who svg {
            margin-right: 5px; }
      .page-holiday-planner .main .planner-item-container .item.activity {
        border-color: #799fb9; }
      .page-holiday-planner .main .planner-item-container .item .time-container {
        font-family: "roboto-regular";
        font-size: 0.9em;
        margin-bottom: 10px;
        position: relative; }
        .page-holiday-planner .main .planner-item-container .item .time-container > * {
          display: inline-block;
          vertical-align: bottom; }
          @media only screen and (min-width: 821px) {
            .page-holiday-planner .main .planner-item-container .item .time-container > * {
              vertical-align: top; } }
        .page-holiday-planner .main .planner-item-container .item .time-container .time {
          width: 200px; }
          @media only screen and (min-width: 821px) {
            .page-holiday-planner .main .planner-item-container .item .time-container .time {
              padding-top: 10px; } }
        .page-holiday-planner .main .planner-item-container .item .time-container .who {
          text-align: right;
          width: calc(100% - 210px); }
          .page-holiday-planner .main .planner-item-container .item .time-container .who .profile-picture-mini {
            display: inline-block;
            padding: 0;
            width: 40px;
            height: 40px;
            margin: 0;
            vertical-align: top; }
            .page-holiday-planner .main .planner-item-container .item .time-container .who .profile-picture-mini span {
              font-size: 20px;
              padding-top: 5px; }
          @media only screen and (min-width: 821px) {
            .page-holiday-planner .main .planner-item-container .item .time-container .who {
              height: 40px; } }
      .page-holiday-planner .main .planner-item-container .item .left {
        width: 180px;
        display: inline-block; }
        .page-holiday-planner .main .planner-item-container .item .left .rendered-image {
          width: 100%;
          height: 100px; }
          @media only screen and (max-width: 820px) {
            .page-holiday-planner .main .planner-item-container .item .left .rendered-image {
              height: 150px; } }
        @media only screen and (max-width: 820px) {
          .page-holiday-planner .main .planner-item-container .item .left {
            width: 100%;
            display: block; } }
      .page-holiday-planner .main .planner-item-container .item .right {
        width: calc(100% - 230px);
        display: inline-block;
        margin-left: 20px; }
        .page-holiday-planner .main .planner-item-container .item .right span {
          display: block; }
          .page-holiday-planner .main .planner-item-container .item .right span.title {
            font-family: "roboto-bold"; }
          .page-holiday-planner .main .planner-item-container .item .right span.description {
            font-size: 0.8em; }
        @media only screen and (max-width: 820px) {
          .page-holiday-planner .main .planner-item-container .item .right {
            width: 100%;
            display: block;
            margin: 10px 0 0 0; } }

.page.page-accommodation h1 {
  text-align: center; }

.page.page-accommodation .lodge-collection h2 {
  margin: 60px 0 20px 0; }

.page.page-accommodation .lodge-collection .lodge-group {
  display: flex;
  flex-wrap: wrap; }
  .page.page-accommodation .lodge-collection .lodge-group .lodge {
    display: inline-block;
    position: relative;
    color: #fefefe;
    margin: 10px;
    flex: 1 0 250px; }
    .page.page-accommodation .lodge-collection .lodge-group .lodge .image {
      background-size: cover; }
    .page.page-accommodation .lodge-collection .lodge-group .lodge .detail {
      padding: 10px;
      min-height: 100px;
      width: 100%;
      box-sizing: border-box;
      position: absolute;
      bottom: 0;
      left: 0; }
      .page.page-accommodation .lodge-collection .lodge-group .lodge .detail .name {
        font-family: "roboto-regular";
        font-size: 0.7em;
        text-transform: uppercase; }
      .page.page-accommodation .lodge-collection .lodge-group .lodge .detail .sub-title {
        font-size: 1em; }

.page-article-collection h1 {
  text-align: center; }

.page-article-collection .section-links .vertical-article-collage .sub-title {
  display: none; }

.page-article-collection .showcase-section {
  margin-top: 60px; }

.page.page-404 {
  width: 100vw;
  height: 100vh;
  background-repeat: no-repeat;
  background-size: cover;
  color: #fefefe;
  position: relative; }
  .page.page-404 .menu-background {
    background-color: rgba(92, 109, 127, 0.6); }
  .page.page-404 .content {
    position: absolute;
    z-index: 2; }
    @media only screen and (max-width: 1024px) {
      .page.page-404 .content {
        bottom: 0; } }
    @media only screen and (min-width: 1025px) {
      .page.page-404 .content {
        top: 50%;
        width: 100%;
        text-align: center;
        transform: translateY(-50%); } }
    .page.page-404 .content .inner {
      display: inline-block;
      text-align: left;
      position: relative;
      width: 100%;
      max-width: 800px; }
      .page.page-404 .content .inner > * {
        padding: 20px;
        box-sizing: border-box; }
      .page.page-404 .content .inner h1 {
        text-align: left !important;
        margin: 0;
        background-color: rgba(100, 100, 100, 0.6);
        width: 100%;
        display: block;
        font-size: 3em; }
        @supports (-webkit-backdrop-filter: blur(10px)) or (backdrop-filter: blur(10px)) {
          .page.page-404 .content .inner h1 {
            -webkit-backdrop-filter: blur(10px);
            backdrop-filter: blur(10px);
            background-color: rgba(97, 75, 70, 0.6); } }
        @media only screen and (min-width: 1025px) {
          .page.page-404 .content .inner h1 {
            border-top-left-radius: 25px;
            border-top-right-radius: 25px; } }
      .page.page-404 .content .inner > div {
        background-color: #614b46; }
        @media only screen and (min-width: 1025px) {
          .page.page-404 .content .inner > div {
            border-bottom-left-radius: 25px;
            border-bottom-right-radius: 25px; } }

.page.page-digital-welcome-pack h2 {
  text-align: left;
  margin: 40px 0 10px 0;
  padding: 0; }
  .page.page-digital-welcome-pack h2:after {
    content: none;
    border: none; }

.page.page-digital-welcome-pack .banner {
  position: relative; }
  .page.page-digital-welcome-pack .banner .banner-content {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%); }
    @media only screen and (max-width: 820px) {
      .page.page-digital-welcome-pack .banner .banner-content {
        top: unset;
        bottom: 40px;
        left: 20px;
        transform: unset; } }
    .page.page-digital-welcome-pack .banner .banner-content h1, .page.page-digital-welcome-pack .banner .banner-content div {
      color: #fefefe;
      text-shadow: 2px 2px 13px rgba(40, 40, 40, 0.5), 2px 2px 13px rgba(40, 40, 40, 0.5), 3px 3px 13px rgba(40, 40, 40, 0.3); }
    .page.page-digital-welcome-pack .banner .banner-content h1 {
      font-family: "roboto-bold";
      text-align: left; }
    .page.page-digital-welcome-pack .banner .banner-content .your-accommodation {
      font-family: "roboto-regular"; }
    .page.page-digital-welcome-pack .banner .banner-content .accommodation {
      font-size: 1.5em;
      font-family: "roboto-regular"; }
    .page.page-digital-welcome-pack .banner .banner-content .button-link {
      margin-top: 20px;
      display: inline-block; }

.page.page-digital-welcome-pack .shortcut .shortcut-buttons {
  display: inline-flex;
  align-content: space-between;
  flex-wrap: wrap; }
  .page.page-digital-welcome-pack .shortcut .shortcut-buttons .button {
    flex-grow: 1;
    min-width: 100px;
    flex-basis: 0;
    display: inline-block;
    text-align: center;
    display: inline-block;
    border-right: 1px solid #ccc;
    cursor: pointer;
    transition: background-color linear 0.1s; }
    @media only screen and (max-width: 820px) {
      .page.page-digital-welcome-pack .shortcut .shortcut-buttons .button {
        border: none;
        margin: 5px;
        box-shadow: rgba(40, 40, 40, 0.2) 2px 2px 5px; } }
    .page.page-digital-welcome-pack .shortcut .shortcut-buttons .button:not(:hover) {
      background-color: #fefefe; }
    .page.page-digital-welcome-pack .shortcut .shortcut-buttons .button:hover svg, .page.page-digital-welcome-pack .shortcut .shortcut-buttons .button:hover span {
      color: #fefefe; }
    .page.page-digital-welcome-pack .shortcut .shortcut-buttons .button:last-child {
      border-right: none; }
    .page.page-digital-welcome-pack .shortcut .shortcut-buttons .button > * {
      margin: 5px;
      text-align: center; }
    .page.page-digital-welcome-pack .shortcut .shortcut-buttons .button svg {
      font-size: 2em; }
    .page.page-digital-welcome-pack .shortcut .shortcut-buttons .button span {
      display: block; }

.page.page-digital-welcome-pack .map {
  width: 100%;
  height: 100vh;
  position: relative; }
  .page.page-digital-welcome-pack .map > div {
    width: 100%;
    height: 100%; }
  .page.page-digital-welcome-pack .map .lodge-location-popup .leaflet-popup-content div:first-child {
    font-family: "roboto-regular";
    color: #5c6d7f;
    font-size: 1.1em; }
  .page.page-digital-welcome-pack .map .lodge-location-popup .leaflet-popup-content div:last-child {
    font-family: "roboto-regular";
    color: #666;
    font-size: 1.3em;
    white-space: nowrap; }

.page.page-digital-welcome-pack .float-module-view br {
  display: none; }

html {
  padding: 0; }
  html body h1:not(.v2) {
    text-align: center !important; }
  html body h1.v2 {
    text-align: left !important; }
  html body footer {
    min-height: 150px;
    background-image: url("/assets/images/footer.jpg");
    background-repeat: repeat-x;
    background-position: top center; }
    @media (nothing) {
      html body footer {
        background-image: url("/assets/images/dark-footer.jpg"); } }
  @media only screen and (max-width: 820px) {
    html body.prevent-mobile-scroll {
      overflow: hidden; } }
  @media only screen and (max-width: 1024px) and (min-width: 821px) {
    html body.prevent-mobile-scroll.prevent-tablet-scroll {
      overflow: hidden; } }
  html body.prevent-mobile-scroll.prevent-all-scroll {
    overflow: hidden; }
