/*
	NATIVE CSS VARIABLES

	:root {
		--variable-name: value;
	}

	element {
		property: fallback;
		property: var(--variable-name);
	}
*/
/* =breakpoints ------------------------------------------------------------------------------------------------------------
  NOTE: one place to set all layout media queries
  ----------------------------------------------------------------------------------------------------------------------- */
body:after {
  display: none;
  content: "breakpoint_0";
}
@media (min-width: 360px) {
  body:after {
    content: "breakpoint_1";
  }
}
@media (min-width: 410px) {
  body:after {
    content: "breakpoint_2";
  }
}
@media (min-width: 680px) {
  body:after {
    content: "breakpoint_3";
  }
}
@media (min-width: 1024px) {
  body:after {
    content: "breakpoint_4";
  }
}
@media (min-width: 1500px) {
  body:after {
    content: "breakpoint_5";
  }
}
@media (min-width: 2000px) {
  body:after {
    content: "breakpoint_6";
  }
}

/* not strictly mixins, but seems the best place to add these as the breakpoints are now defined */
html.dev-mode body:after {
  display: block;
  position: fixed;
  bottom: 0;
  left: 0;
  font-size: 1rem;
  padding: 0.5em;
  line-height: 1;
  background-color: white;
  border-style: solid;
  border-width: 1px 1px 0 0;
  border-color: black;
  border-radius: 0 9px 0 0;
  opacity: 0.5;
}

/* =tools ---------------------------------------------------------------------------------------------------------------
  NOTE: Snippets that are useful elsewhere
  ----------------------------------------------------------------------------------------------------------------------- */
/* =headings ------------------------------------------------------------------------------------------------------------
  NOTE: As mixins because you can @include them inside media queries
  NOTE: only use optimizeLegibility on headings, the performance hit is high if used everywhere
  ----------------------------------------------------------------------------------------------------------------------- */
/* =global_reset --------------------------------------------------------------------------------------------------------
	NOTE:       Based on Eric Meyers CSS Reset 2.0 - with a couple of edits to make it less draconian
	REFERENCE:  http://meyerweb.com/eric/tools/css/reset/
	----------------------------------------------------------------------------------------------------------------------- */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, main {
  display: block;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* form resets */
input,
textarea {
  border: 0;
}

/* lets use a sensible box model
   REFERENCE: http://paulirish.com/2012/box-sizing-border-box-ftw */
*, *:before, *:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}

/* inherit my styles, not the UA ones */
button, input, select, textarea {
  color: inherit;
  font-family: inherit;
  font-style: inherit;
  font-weight: inherit;
}

/* =display-classes -----------------------------------------------------------------------------------------------------
  NOTE: Use only for simple things, try to avoid over-use.
  ----------------------------------------------------------------------------------------------------------------------- */
/* left or right */
.dc_left {
  float: left;
  margin-right: 1em;
}

.dc_right {
  float: right;
  margin-left: 1em;
}

/* big and small */
.dc_small {
  width: 20%;
}

.dc_medium {
  width: 40%;
}

.dc_large {
  width: 60%;
}

/* hiding things */
.dc_hide-text {
  text-indent: -999em;
  overflow: hidden;
}

.dc_hide-element {
  position: absolute;
  left: -200vw;
  top: 0;
  display: block;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

/* clearing things */
.dc_clearfix:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}
* html .dc_clearfix {
  height: 1px;
}

/* make lists horizontal */
.dc_horizontal-list {
  list-style-type: none;
}
.dc_horizontal-list li {
  display: inline-block;
}

/* viewport width breakpout (only works on centered columns) */
.dc_full-width {
  position: relative;
  left: 50%;
  right: 50%;
  width: 100vw;
  margin-left: -50vw;
  margin-right: -50vw;
}

.dc_button {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  display: inline-block;
  padding: 10px 15px;
  border-radius: 0;
  border: 0px solid #002d56;
  color: #fff !important;
  background-color: #002d56 !important;
  overflow: hidden;
  z-index: 1;
  transition: all 0.3s;
  font-size: 16px;
  font-weight: bold;
  text-transform: uppercase;
  letter-spacing: 1px;
}
.dc_button:hover, .dc_button:focus {
  color: white;
  background-color: black !important;
  cursor: pointer;
}
.dc_button[disabled=disabled] {
  opacity: 0.5;
  pointer-events: none;
  filter: grayscale(1);
}
.dc_button.unfavourite {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  display: inline-block;
  padding: 10px 15px;
  border-radius: 0;
  border: 0px solid #b46342;
  color: #fff !important;
  background-color: #b46342 !important;
  overflow: hidden;
  z-index: 1;
  transition: all 0.3s;
  font-size: 16px;
  font-weight: bold;
  text-transform: uppercase;
  letter-spacing: 1px;
}
.dc_button.unfavourite:hover, .dc_button.unfavourite:focus {
  color: white;
  background-color: #693a27 !important;
  cursor: pointer;
}
.dc_button.unfavourite[disabled=disabled] {
  opacity: 0.5;
  pointer-events: none;
  filter: grayscale(1);
}
.dc_button.disabled {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  display: inline-block;
  padding: 10px 15px;
  border-radius: 0;
  border: 0px solid #002d56;
  color: #fff !important;
  background-color: #002d56 !important;
  overflow: hidden;
  z-index: 1;
  transition: all 0.3s;
  font-size: 16px;
  font-weight: bold;
  text-transform: uppercase;
  letter-spacing: 1px;
  filter: grayscale(1);
  opacity: 0.25;
  pointer-events: none;
}
.dc_button.disabled:hover, .dc_button.disabled:focus {
  color: white;
  background-color: black !important;
  cursor: pointer;
}
.dc_button.disabled[disabled=disabled] {
  opacity: 0.5;
  pointer-events: none;
  filter: grayscale(1);
}

.dc_more span {
  position: absolute;
  left: -200vw;
  top: 0;
  display: block;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

.dc_sideBySide {
  display: flex;
  flex-wrap: wrap;
}
.dc_sideBySide > *:not(:first-child) {
  margin-left: 20px;
}

.dc_min-aspect {
  display: flex;
  justify-content: flex-start;
  align-items: flex-end;
}
.dc_min-aspect:before {
  content: "";
  float: left;
  padding-bottom: 50%;
}
.dc_min-aspect:after {
  content: "";
  display: table;
  clear: both;
}

.dc_numbers {
  font-feature-settings: "tnum";
  font-variant-numeric: tabular-nums;
}

.dc_constrain-left {
  max-width: 1400px;
  padding-left: 0.5em;
  padding-right: 0.5em;
  margin-left: 0;
}
@media (min-width: 680px) {
  .dc_constrain-left {
    padding-left: 2em;
    padding-right: 2em;
  }
}
@media (min-width: 1500px) {
  .dc_constrain-left {
    padding-left: 3em;
    padding-right: 3em;
  }
}
@media (min-width: 2000px) {
  .dc_constrain-left {
    padding-left: 100px;
    padding-right: 100px;
  }
}

.dc_constrain-centre {
  max-width: 1400px;
  padding-left: 0.5em;
  padding-right: 0.5em;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 680px) {
  .dc_constrain-centre {
    padding-left: 2em;
    padding-right: 2em;
  }
}
@media (min-width: 1500px) {
  .dc_constrain-centre {
    padding-left: 3em;
    padding-right: 3em;
  }
}
@media (min-width: 2000px) {
  .dc_constrain-centre {
    padding-left: 100px;
    padding-right: 100px;
  }
}

.dc_layout-padding-top {
  padding-top: 0.5rem;
}
@media (min-width: 680px) {
  .dc_layout-padding-top {
    padding-top: 2em;
  }
}
@media (min-width: 1024px) {
  .dc_layout-padding-top {
    padding-top: 4em;
  }
}

.dc_layout-padding-bottom {
  padding-bottom: 0.5rem;
}
@media (min-width: 680px) {
  .dc_layout-padding-bottom {
    padding-bottom: 2em;
  }
}
@media (min-width: 1024px) {
  .dc_layout-padding-bottom {
    padding-bottom: 4em;
  }
}

.dc_layout-padding-both {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
@media (min-width: 680px) {
  .dc_layout-padding-both {
    padding-top: 2em;
  }
}
@media (min-width: 1024px) {
  .dc_layout-padding-both {
    padding-top: 4em;
  }
}
@media (min-width: 680px) {
  .dc_layout-padding-both {
    padding-bottom: 2em;
  }
}
@media (min-width: 1024px) {
  .dc_layout-padding-both {
    padding-bottom: 4em;
  }
}

.dc_true-centre {
  display: grid;
  place-content: center;
}

@media (min-width: 680px) {
  .dc_grid-1-1 {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    grid-gap: 20px;
  }
}

@media (max-width: 679px) {
  .dc_grid-1-1-1 {
    display: grid;
    grid-gap: 10px;
  }
}
@media (min-width: 680px) {
  .dc_grid-1-1-1 {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    grid-gap: 20px;
  }
}
@media (min-width: 1024px) {
  .dc_grid-1-1-1 {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr);
  }
}

@media (max-width: 679px) {
  .dc_grid-1-1-1-1 {
    display: grid;
    grid-gap: 10px;
  }
}
@media (min-width: 680px) {
  .dc_grid-1-1-1-1 {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    grid-gap: 20px;
  }
}
@media (min-width: 1024px) {
  .dc_grid-1-1-1-1 {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr);
  }
}

@media (min-width: 680px) {
  .dc_grid-1-2 {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
    grid-gap: 20px;
  }
}

@media (min-width: 680px) {
  .dc_grid-2-1 {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
    grid-gap: 20px;
  }
}

@media (min-width: 680px) {
  .dc_grid-1-3 {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
    grid-gap: 20px;
  }
}
@media (min-width: 1024px) {
  .dc_grid-1-3 {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 3fr);
    grid-gap: 20px;
  }
}

@media (min-width: 680px) {
  .dc_grid-3-1 {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
    grid-gap: 20px;
  }
}
@media (min-width: 1024px) {
  .dc_grid-3-1 {
    display: grid;
    grid-template-columns: minmax(0, 3fr) minmax(0, 1fr);
    grid-gap: 20px;
  }
}

@media (min-width: 680px) {
  .largeGap {
    grid-gap: 40px;
  }
}
@media (min-width: 1024px) {
  .largeGap {
    grid-gap: 60px;
  }
}

.col-order-reverse > *:first-child {
  order: 2;
}
.col-order-reverse > *:last-child {
  order: 1;
}

.dc_dynamicShow {
  display: block;
}

.dc_dynamicHide {
  display: none !important;
}

/* =animations ----------------------------------------------------------------------------------------------------------
	NOTE:  CSS animations
	----------------------------------------------------------------------------------------------------------------------- */
@keyframes fadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes donut-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
/* =typography ----------------------------------------------------------------------------------------------------------
	NOTE:       I've found that margin-top applied to everything is a pain - it often messes up layout and requires jumping
	            through hoops to fix, so I've stopped doing this as a default and now add top margin manually when required.
	REFERENCE:  Based on http://alistapart.com/articles/settingtypeontheweb/
	                     http://24ways.org/2006/compose-to-a-vertical-rhythm/
	----------------------------------------------------------------------------------------------------------------------- */
/* load custom fonts
   NOTE: CSS got good at this again in 2018... https://www.filamentgroup.com/lab/js-web-fonts.html
	 ALSO: https://developers.google.com/web/fundamentals/performance/optimizing-content-efficiency/webfont-optimization */
/* font-stacks */
/* 'heading' styles */
.h1 {
  margin: 0;
  font-size: 3.6em;
  line-height: 1.2;
  text-rendering: optimizeLegibility;
  font-weight: bold;
}
@media (max-width: 1499px) {
  .h1 {
    font-size: 2.4em;
  }
}
@media (max-width: 1023px) {
  .h1 {
    font-size: 1.8em;
  }
}
@media (max-width: 679px) {
  .h1 {
    font-size: 1.4em;
  }
}

.h2 {
  margin: 0;
  font-size: 2em;
  text-rendering: optimizeLegibility;
  font-weight: 700;
}
@media (min-width: 680px) {
  .h2 {
    font-size: 2em;
  }
}
@media (min-width: 1024px) {
  .h2 {
    font-size: 3em;
  }
}
@media (min-width: 1500px) {
  .h2 {
    font-size: 3.2em;
  }
}
@media (max-width: 679px) {
  .h2 {
    font-size: 1.5em;
    line-height: 1.3em;
  }
}

.h3 {
  margin: 0;
  font-size: 1.4em;
  text-rendering: optimizeLegibility;
}
@media (max-width: 679px) {
  .h3 {
    font-size: 1.1em;
  }
}

.h4 {
  margin: 0;
  font-size: 1.2em;
  text-rendering: optimizeLegibility;
}
@media (max-width: 679px) {
  .h4 {
    font-size: 1em;
    font-weight: bold;
  }
}

.h5 {
  margin: 0;
  font-size: 1.1em;
  text-rendering: optimizeLegibility;
}
@media (max-width: 679px) {
  .h5 {
    font-size: 1em;
    font-weight: bold;
  }
}

.h6 {
  margin: 0;
  font-size: 1em;
  font-weight: bold;
  text-rendering: optimizeLegibility;
}

/* fancy ampersands ( http://vimeo.com/69531448 ) */
/* fancy ligatures on headings
	Get fancy font features working: http://blogs.msdn.com/b/ie/archive/2012/01/09/css-corner-using-the-whole-font.aspx */
/* general typography */
html, input, select, textarea { /* font-size: 16px, line-height: 22px */
  font: 100%/1.375 "sofia-pro", sans-serif;
  font-display: swap;
  /* hyphenations now work! http://www.quirksmode.org/blog/archives/2012/11/hyphenation_wor.html */
  -webkit-hyphens: none;
  -moz-hyphens: none;
  -ms-hyphens: none;
  -o-hyphens: none;
  hyphens: none;
}

p, ul, ol, blockquote {
  /* em fallback */
  margin-bottom: 1.375em;
  margin-bottom: 1.375rem;
}

/*
We declare all variables here as default so that they are easy to override...
*/
/* Border, shadows, ... */
/*
Variables that begin with $var- should NEVER be used directly in CSS rules.
they should only be included via the "@include var(property, var-name)"
mechanism.
*/
/* Border styles */
/* Cookie notice positioning */
/* Text colors */
/* Font Families */
/* White */
/* Differently shaded colors */
/*
Use @include var(property, varname) to include a variable, e.g.

    @include var(background-color, white1);

to create a white background.
*/
/* Spacing */
/* Breakpoints */
.klaro {
  font-family: inherit;
  font-family: var(--font-family, inherit);
  font-size: 14px;
  font-size: var(--font-size, 14px);
}

.klaro button {
  font-family: inherit;
  font-family: var(--font-family, inherit);
  font-size: 14px;
  font-size: var(--font-size, 14px);
}

.klaro.cm-as-context-notice {
  height: 100%;
  padding-bottom: 12px;
  padding-top: 12px;
}

.klaro .cookie-modal,
.klaro .context-notice,
.klaro .cookie-notice {
  /* The switch - the box around the slider */
}

.klaro .cookie-modal .cm-switch-container,
.klaro .context-notice .cm-switch-container,
.klaro .cookie-notice .cm-switch-container {
  border-bottom-style: solid;
  border-bottom-style: var(--border-style, solid);
  border-bottom-width: 1px;
  border-bottom-width: var(--border-width, 1px);
  border-bottom-color: #c8c8c8;
  border-bottom-color: var(--light2, #c8c8c8);
  display: block;
  position: relative;
  padding: 10px;
  padding-left: 66px;
  line-height: 20px;
  vertical-align: middle;
  min-height: 40px;
}

.klaro .cookie-modal .cm-switch-container:last-child,
.klaro .context-notice .cm-switch-container:last-child,
.klaro .cookie-notice .cm-switch-container:last-child {
  border-bottom: 0;
}

.klaro .cookie-modal .cm-switch-container:first-child,
.klaro .context-notice .cm-switch-container:first-child,
.klaro .cookie-notice .cm-switch-container:first-child {
  margin-top: 0;
}

.klaro .cookie-modal .cm-switch-container p,
.klaro .context-notice .cm-switch-container p,
.klaro .cookie-notice .cm-switch-container p {
  margin-top: 0;
}

.klaro .cookie-modal .cm-switch,
.klaro .context-notice .cm-switch,
.klaro .cookie-notice .cm-switch {
  position: relative;
  display: inline-block;
  width: 50px;
  height: 30px;
}

.klaro .cookie-modal .cm-list-input:checked + .cm-list-label .slider,
.klaro .context-notice .cm-list-input:checked + .cm-list-label .slider,
.klaro .cookie-notice .cm-list-input:checked + .cm-list-label .slider {
  background-color: #1a936f;
  background-color: var(--green1, #1a936f);
}

.klaro .cookie-modal .cm-list-input.half-checked:checked + .cm-list-label .slider,
.klaro .context-notice .cm-list-input.half-checked:checked + .cm-list-label .slider,
.klaro .cookie-notice .cm-list-input.half-checked:checked + .cm-list-label .slider {
  background-color: #1a936f;
  background-color: var(--green1, #1a936f);
  opacity: 0.6;
}

.klaro .cookie-modal .cm-list-input.half-checked:checked + .cm-list-label .slider::before,
.klaro .context-notice .cm-list-input.half-checked:checked + .cm-list-label .slider::before,
.klaro .cookie-notice .cm-list-input.half-checked:checked + .cm-list-label .slider::before {
  -ms-transform: translateX(10px);
  transform: translateX(10px);
}

.klaro .cookie-modal .cm-list-input.only-required + .cm-list-label .slider,
.klaro .context-notice .cm-list-input.only-required + .cm-list-label .slider,
.klaro .cookie-notice .cm-list-input.only-required + .cm-list-label .slider {
  background-color: #24cc9a;
  background-color: var(--green2, #24cc9a);
  opacity: 0.8;
}

.klaro .cookie-modal .cm-list-input.only-required + .cm-list-label .slider::before,
.klaro .context-notice .cm-list-input.only-required + .cm-list-label .slider::before,
.klaro .cookie-notice .cm-list-input.only-required + .cm-list-label .slider::before {
  -ms-transform: translateX(10px);
  transform: translateX(10px);
}

.klaro .cookie-modal .cm-list-input.required:checked + .cm-list-label .slider,
.klaro .context-notice .cm-list-input.required:checked + .cm-list-label .slider,
.klaro .cookie-notice .cm-list-input.required:checked + .cm-list-label .slider {
  background-color: #24cc9a;
  background-color: var(--green2, #24cc9a);
  opacity: 0.8;
  cursor: not-allowed;
}

.klaro .cookie-modal .slider,
.klaro .context-notice .slider,
.klaro .cookie-notice .slider {
  box-shadow: 0 4px 6px 0 rgba(0, 0, 0, 0.2), 5px 5px 10px 0 rgba(0, 0, 0, 0.19);
}

.klaro .cookie-modal .cm-list-input,
.klaro .context-notice .cm-list-input,
.klaro .cookie-notice .cm-list-input {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  width: 50px;
  height: 30px;
}

.klaro .cookie-modal .cm-list-title,
.klaro .context-notice .cm-list-title,
.klaro .cookie-notice .cm-list-title {
  font-size: 0.9em;
  font-weight: 600;
}

.klaro .cookie-modal .cm-list-description,
.klaro .context-notice .cm-list-description,
.klaro .cookie-notice .cm-list-description {
  color: #7c7c7c;
  color: var(--dark3, #7c7c7c);
  font-size: 0.9em;
  padding-top: 4px;
}

.klaro .cookie-modal .cm-list-label,
.klaro .context-notice .cm-list-label,
.klaro .cookie-notice .cm-list-label {
  /* The slider */
  /* Rounded sliders */
}

.klaro .cookie-modal .cm-list-label .cm-switch,
.klaro .context-notice .cm-list-label .cm-switch,
.klaro .cookie-notice .cm-list-label .cm-switch {
  position: absolute;
  left: 0;
}

.klaro .cookie-modal .cm-list-label .slider,
.klaro .context-notice .cm-list-label .slider,
.klaro .cookie-notice .cm-list-label .slider {
  background-color: #f2f2f2;
  background-color: var(--white2, #f2f2f2);
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  transition: 0.4s;
  width: 50px;
  display: inline-block;
}

.klaro .cookie-modal .cm-list-label .slider::before,
.klaro .context-notice .cm-list-label .slider::before,
.klaro .cookie-notice .cm-list-label .slider::before {
  background-color: #e6e6e6;
  background-color: var(--white3, #e6e6e6);
  position: absolute;
  content: "";
  height: 20px;
  width: 20px;
  left: 5px;
  bottom: 5px;
  transition: 0.4s;
}

.klaro .cookie-modal .cm-list-label .slider.round,
.klaro .context-notice .cm-list-label .slider.round,
.klaro .cookie-notice .cm-list-label .slider.round {
  border-radius: 30px;
}

.klaro .cookie-modal .cm-list-label .slider.round::before,
.klaro .context-notice .cm-list-label .slider.round::before,
.klaro .cookie-notice .cm-list-label .slider.round::before {
  border-radius: 50%;
}

.klaro .cookie-modal .cm-list-label input:focus + .slider,
.klaro .context-notice .cm-list-label input:focus + .slider,
.klaro .cookie-notice .cm-list-label input:focus + .slider {
  box-shadow-color: #48dfb2;
  box-shadow-color: var(--green3, #48dfb2);
  box-shadow: 0 0 1px var(color, green3);
}

.klaro .cookie-modal .cm-list-label input:checked + .slider::before,
.klaro .context-notice .cm-list-label input:checked + .slider::before,
.klaro .cookie-notice .cm-list-label input:checked + .slider::before {
  -ms-transform: translateX(20px);
  transform: translateX(20px);
}

.klaro .cookie-modal .cm-list-input:focus + .cm-list-label .slider,
.klaro .context-notice .cm-list-input:focus + .cm-list-label .slider,
.klaro .cookie-notice .cm-list-input:focus + .cm-list-label .slider {
  box-shadow: 0 4px 6px 0 rgba(125, 125, 125, 0.2), 5px 5px 10px 0 rgba(125, 125, 125, 0.19);
}

.klaro .cookie-modal .cm-list-input:checked + .cm-list-label .slider::before,
.klaro .context-notice .cm-list-input:checked + .cm-list-label .slider::before,
.klaro .cookie-notice .cm-list-input:checked + .cm-list-label .slider::before {
  -ms-transform: translateX(20px);
  transform: translateX(20px);
}

.klaro .cookie-modal .slider,
.klaro .context-notice .slider,
.klaro .cookie-notice .slider {
  box-shadow: 0 4px 6px 0 rgba(0, 0, 0, 0.2), 5px 5px 10px 0 rgba(0, 0, 0, 0.19);
}

.klaro .cookie-modal a,
.klaro .context-notice a,
.klaro .cookie-notice a {
  color: #1a936f;
  color: var(--green1, #1a936f);
  text-decoration: none;
}

.klaro .cookie-modal p,
.klaro .cookie-modal strong,
.klaro .cookie-modal h1,
.klaro .cookie-modal h2,
.klaro .cookie-modal ul,
.klaro .cookie-modal li,
.klaro .context-notice p,
.klaro .context-notice strong,
.klaro .context-notice h1,
.klaro .context-notice h2,
.klaro .context-notice ul,
.klaro .context-notice li,
.klaro .cookie-notice p,
.klaro .cookie-notice strong,
.klaro .cookie-notice h1,
.klaro .cookie-notice h2,
.klaro .cookie-notice ul,
.klaro .cookie-notice li {
  color: #fafafa;
  color: var(--light1, #fafafa);
}

.klaro .cookie-modal p,
.klaro .cookie-modal h1,
.klaro .cookie-modal h2,
.klaro .cookie-modal ul,
.klaro .cookie-modal li,
.klaro .context-notice p,
.klaro .context-notice h1,
.klaro .context-notice h2,
.klaro .context-notice ul,
.klaro .context-notice li,
.klaro .cookie-notice p,
.klaro .cookie-notice h1,
.klaro .cookie-notice h2,
.klaro .cookie-notice ul,
.klaro .cookie-notice li {
  display: block;
  text-align: left;
  margin: 0;
  padding: 0;
  margin-top: 0.7em;
}

.klaro .cookie-modal h1,
.klaro .cookie-modal h2,
.klaro .cookie-modal h3,
.klaro .cookie-modal h4,
.klaro .cookie-modal h5,
.klaro .cookie-modal h6,
.klaro .context-notice h1,
.klaro .context-notice h2,
.klaro .context-notice h3,
.klaro .context-notice h4,
.klaro .context-notice h5,
.klaro .context-notice h6,
.klaro .cookie-notice h1,
.klaro .cookie-notice h2,
.klaro .cookie-notice h3,
.klaro .cookie-notice h4,
.klaro .cookie-notice h5,
.klaro .cookie-notice h6 {
  font-family: inherit;
  font-family: var(--title-font-family, inherit);
}

.klaro .cookie-modal .cm-link,
.klaro .context-notice .cm-link,
.klaro .cookie-notice .cm-link {
  margin-right: 0.5em;
  vertical-align: middle;
}

.klaro .cookie-modal .cm-btn,
.klaro .context-notice .cm-btn,
.klaro .cookie-notice .cm-btn {
  color: #fff;
  color: var(--button-text-color, #fff);
  background-color: #5c5c5c;
  background-color: var(--dark2, #5c5c5c);
  border-radius: 4px;
  border-radius: var(--border-radius, 4px);
  padding: 6px 10px;
  margin-right: 0.5em;
  border-style: none;
  padding: 0.4em;
  font-size: 1em;
  cursor: pointer;
}

.klaro .cookie-modal .cm-btn:disabled,
.klaro .context-notice .cm-btn:disabled,
.klaro .cookie-notice .cm-btn:disabled {
  opacity: 0.5;
}

.klaro .cookie-modal .cm-btn.cm-btn-close,
.klaro .context-notice .cm-btn.cm-btn-close,
.klaro .cookie-notice .cm-btn.cm-btn-close {
  background-color: #c8c8c8;
  background-color: var(--light2, #c8c8c8);
}

.klaro .cookie-modal .cm-btn.cm-btn-success,
.klaro .context-notice .cm-btn.cm-btn-success,
.klaro .cookie-notice .cm-btn.cm-btn-success {
  background-color: #1a936f;
  background-color: var(--green1, #1a936f);
}

.klaro .cookie-modal .cm-btn.cm-btn-success-var,
.klaro .context-notice .cm-btn.cm-btn-success-var,
.klaro .cookie-notice .cm-btn.cm-btn-success-var {
  background-color: #24cc9a;
  background-color: var(--green2, #24cc9a);
}

.klaro .cookie-modal .cm-btn.cm-btn-info,
.klaro .context-notice .cm-btn.cm-btn-info,
.klaro .cookie-notice .cm-btn.cm-btn-info {
  background-color: #2581c4;
  background-color: var(--blue1, #2581c4);
}

.klaro .context-notice {
  border-radius: 4px;
  border-radius: var(--border-radius, 4px);
  border-style: solid;
  border-style: var(--border-style, solid);
  border-width: 1px;
  border-width: var(--border-width, 1px);
  border-color: #c8c8c8;
  border-color: var(--light2, #c8c8c8);
  background-color: #fafafa;
  background-color: var(--light1, #fafafa);
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  padding: 12px;
  height: 100%;
}

.klaro .context-notice.cm-dark {
  background-color: #333;
  background-color: var(--dark1, #333);
  border-color: #5c5c5c;
  border-color: var(--dark2, #5c5c5c);
}

.klaro .context-notice.cm-dark p {
  color: #fafafa;
  color: var(--light1, #fafafa);
}

.klaro .context-notice.cm-dark p a {
  color: #459cdc;
  color: var(--blue2, #459cdc);
}

.klaro .context-notice p {
  color: #333;
  color: var(--dark1, #333);
  flex-grow: 0;
  text-align: center;
  padding-top: 0;
  margin-top: 0;
}

.klaro .context-notice p a {
  color: #24cc9a;
  color: var(--green2, #24cc9a);
}

.klaro .context-notice p.cm-buttons {
  margin-top: 12px;
}

.klaro .cookie-modal {
  width: 100%;
  height: 100%;
  position: fixed;
  overflow: hidden;
  left: 0;
  top: 0;
  z-index: 1000;
}

.klaro .cookie-modal.cm-embedded {
  position: relative;
  height: inherit;
  width: inherit;
  left: inherit;
  right: inherit;
  z-index: 0;
}

.klaro .cookie-modal.cm-embedded .cm-modal.cm-klaro {
  position: relative;
  -ms-transform: none;
  transform: none;
}

.klaro .cookie-modal .cm-bg {
  background: rgba(0, 0, 0, 0.5);
  height: 100%;
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
}

.klaro .cookie-modal .cm-modal.cm-klaro {
  background-color: #333;
  background-color: var(--dark1, #333);
  color: #fafafa;
  color: var(--light1, #fafafa);
  z-index: 1001;
  box-shadow: 0 4px 6px 0 rgba(0, 0, 0, 0.2), 5px 5px 10px 0 rgba(0, 0, 0, 0.19);
  width: 100%;
  max-height: 98%;
  top: 50%;
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  position: fixed;
  overflow: auto;
}

@media (min-width: 660px) {
  .klaro .cookie-modal .cm-modal.cm-klaro {
    border-radius: 4px;
    border-radius: var(--border-radius, 4px);
    position: relative;
    margin: 0 auto;
    max-width: 640px;
    height: auto;
    width: auto;
  }
}
.klaro .cookie-modal .cm-modal .hide {
  border-style: none;
  background: none;
  cursor: pointer;
  position: absolute;
  top: 20px;
  right: 20px;
  z-index: 1;
}

.klaro .cookie-modal .cm-modal .hide svg {
  stroke: #fafafa;
  stroke: var(--light1, #fafafa);
}

.klaro .cookie-modal .cm-modal .cm-footer {
  border-top-color: #5c5c5c;
  border-top-color: var(--dark2, #5c5c5c);
  border-top-width: 1px;
  border-top-width: var(--border-width, 1px);
  border-top-style: solid;
  border-top-style: var(--border-style, solid);
  padding: 1em;
}

.klaro .cookie-modal .cm-modal .cm-footer-buttons {
  display: flex;
  flex-flow: row;
  justify-content: space-between;
}

.klaro .cookie-modal .cm-modal .cm-footer .cm-powered-by {
  font-size: 0.8em;
  padding-top: 4px;
  text-align: right;
  padding-right: 8px;
}

.klaro .cookie-modal .cm-modal .cm-footer .cm-powered-by a {
  color: #5c5c5c;
  color: var(--dark2, #5c5c5c);
}

.klaro .cookie-modal .cm-modal .cm-header {
  border-bottom-width: 1px;
  border-bottom-width: var(--border-width, 1px);
  border-bottom-style: solid;
  border-bottom-style: var(--border-style, solid);
  border-bottom-color: #5c5c5c;
  border-bottom-color: var(--dark2, #5c5c5c);
  padding: 1em;
  padding-right: 24px;
}

.klaro .cookie-modal .cm-modal .cm-header h1 {
  margin: 0;
  font-size: 2em;
  display: block;
}

.klaro .cookie-modal .cm-modal .cm-header h1.title {
  padding-right: 20px;
}

.klaro .cookie-modal .cm-modal .cm-body {
  padding: 1em;
}

.klaro .cookie-modal .cm-modal .cm-body ul {
  display: block;
}

.klaro .cookie-modal .cm-modal .cm-body span {
  display: inline-block;
  width: auto;
}

.klaro .cookie-modal .cm-modal .cm-body ul.cm-services,
.klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes {
  padding: 0;
  margin: 0;
}

.klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-purpose .cm-services .cm-caret,
.klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-purpose .cm-services .cm-caret {
  color: #a0a0a0;
  color: var(--light3, #a0a0a0);
}

.klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-purpose .cm-services .cm-content,
.klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-purpose .cm-services .cm-content {
  margin-left: -40px;
  display: none;
}

.klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-purpose .cm-services .cm-content.expanded,
.klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-purpose .cm-services .cm-content.expanded {
  margin-top: 10px;
  display: block;
}

.klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-service,
.klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-purpose,
.klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-service,
.klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-purpose {
  position: relative;
  line-height: 20px;
  vertical-align: middle;
  padding-left: 60px;
  min-height: 40px;
}

.klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-service:first-child,
.klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-purpose:first-child,
.klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-service:first-child,
.klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-purpose:first-child {
  margin-top: 0;
}

.klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-service p,
.klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-purpose p,
.klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-service p,
.klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-purpose p {
  margin-top: 0;
}

.klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-service p.purposes,
.klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-purpose p.purposes,
.klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-service p.purposes,
.klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-purpose p.purposes {
  color: #a0a0a0;
  color: var(--light3, #a0a0a0);
  font-size: 0.8em;
}

.klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-service.cm-toggle-all,
.klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-purpose.cm-toggle-all,
.klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-service.cm-toggle-all,
.klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-purpose.cm-toggle-all {
  border-top-width: 1px;
  border-top-width: var(--border-width, 1px);
  border-top-style: solid;
  border-top-style: var(--border-style, solid);
  border-top-color: #5c5c5c;
  border-top-color: var(--dark2, #5c5c5c);
  padding-top: 1em;
}

.klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-service span.cm-list-title,
.klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-purpose span.cm-list-title,
.klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-service span.cm-list-title,
.klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-purpose span.cm-list-title {
  font-weight: 600;
}

.klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-service span.cm-opt-out,
.klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-service span.cm-required,
.klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-purpose span.cm-opt-out,
.klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-purpose span.cm-required,
.klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-service span.cm-opt-out,
.klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-service span.cm-required,
.klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-purpose span.cm-opt-out,
.klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-purpose span.cm-required {
  color: #5c5c5c;
  color: var(--dark2, #5c5c5c);
  padding-left: 0.2em;
  font-size: 0.8em;
}

.klaro .cookie-notice:not(.cookie-modal-notice) {
  background-color: #333;
  background-color: var(--dark1, #333);
  z-index: 999;
  position: fixed;
  width: 100%;
  bottom: 0;
  right: 0;
}

@media (min-width: 1024px) {
  .klaro .cookie-notice:not(.cookie-modal-notice) {
    border-radius: 4px;
    border-radius: var(--border-radius, 4px);
    position: fixed;
    position: var(--notice-position, fixed);
    right: auto;
    right: var(--notice-right, auto);
    left: 20px;
    left: var(--notice-left, 20px);
    bottom: 20px;
    bottom: var(--notice-bottom, 20px);
    top: auto;
    top: var(--notice-top, auto);
    max-width: 400px;
    max-width: var(--notice-max-width, 400px);
    box-shadow: 0 4px 6px 0 rgba(0, 0, 0, 0.2), 5px 5px 10px 0 rgba(0, 0, 0, 0.19);
  }
}
@media (max-width: 1023px) {
  .klaro .cookie-notice:not(.cookie-modal-notice) {
    border-style: none;
    border-radius: 0;
  }
}
.klaro .cookie-notice:not(.cookie-modal-notice).cn-embedded {
  position: relative;
  height: inherit;
  width: inherit;
  left: inherit;
  right: inherit;
  bottom: inherit;
  z-index: 0;
}

.klaro .cookie-notice:not(.cookie-modal-notice).cn-embedded .cn-body {
  padding-top: 0.5em;
}

.klaro .cookie-notice:not(.cookie-modal-notice) .cn-body {
  margin-bottom: 0;
  margin-right: 0;
  bottom: 0;
  padding: 1em;
  padding-top: 0;
}

.klaro .cookie-notice:not(.cookie-modal-notice) .cn-body p {
  margin-bottom: 0.5em;
}

.klaro .cookie-notice:not(.cookie-modal-notice) .cn-body p.cn-changes {
  text-decoration: underline;
}

.klaro .cookie-notice:not(.cookie-modal-notice) .cn-body .cn-learn-more {
  display: inline-block;
  flex-grow: 1;
}

.klaro .cookie-notice:not(.cookie-modal-notice) .cn-body .cn-buttons {
  display: inline-block;
  margin-top: -0.5em;
}

@media (max-width: 384px) {
  .klaro .cookie-notice:not(.cookie-modal-notice) .cn-body .cn-buttons {
    width: 100%;
  }
}
.klaro .cookie-notice:not(.cookie-modal-notice) .cn-body .cn-buttons button.cm-btn {
  margin-top: 0.5em;
}

@media (max-width: 384px) {
  .klaro .cookie-notice:not(.cookie-modal-notice) .cn-body .cn-buttons button.cm-btn {
    width: calc(50% - 0.5em);
  }
}
.klaro .cookie-notice:not(.cookie-modal-notice) .cn-body .cn-ok {
  margin-top: -0.5em;
  display: flex;
  flex-flow: row;
  flex-wrap: wrap;
  justify-content: right;
  align-items: baseline;
}

.klaro .cookie-notice:not(.cookie-modal-notice) .cn-body .cn-ok a,
.klaro .cookie-notice:not(.cookie-modal-notice) .cn-body .cn-ok div {
  margin-top: 0.5em;
}

.klaro .cookie-modal-notice {
  background-color: #333;
  background-color: var(--dark1, #333);
  color: #fafafa;
  color: var(--light1, #fafafa);
  z-index: 1001;
  box-shadow: 0 4px 6px 0 rgba(0, 0, 0, 0.2), 5px 5px 10px 0 rgba(0, 0, 0, 0.19);
  width: 100%;
  max-height: 98%;
  top: 50%;
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  position: fixed;
  overflow: auto;
  padding: 1em;
  padding-top: 0.2em;
}

@media (min-width: 400px) {
  .klaro .cookie-modal-notice {
    border-radius: 4px;
    border-radius: var(--border-radius, 4px);
    position: relative;
    margin: 0 auto;
    max-width: 400px;
    height: auto;
    width: auto;
  }
}
.klaro .cookie-modal-notice .cn-ok {
  display: flex;
  flex-flow: row;
  justify-content: space-between;
  align-items: center;
  margin-top: 1em;
}

.klaro .cookie-notice-hidden {
  display: none !important;
}

h1 {
  font-size: 2em;
}

h2 {
  font-size: 1.5em;
}

h3 {
  font-size: 1.5em;
}

h4 {
  font-size: 1.5em;
}

.site_title {
  margin: 0;
  width: 220px;
  margin: 0 auto;
}
.site_title span.text {
  position: absolute;
  left: -200vw;
  top: 0;
  display: block;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
.site_title span.logo {
  padding: 20px;
  display: block;
}
.site_title span.logo svg path {
  fill: white;
}
.site_title span.mobileLogo {
  padding: 20px;
  display: block;
}
.site_title span.mobileLogo svg path {
  fill: white;
}

html:not(.mobile-nav) .site_title span.mobileLogo {
  position: absolute;
  left: -200vw;
  top: 0;
  display: block;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

html.mobile-nav .site_title span.logo {
  position: absolute;
  left: -200vw;
  top: 0;
  display: block;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

html {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
}

html:not(.mobile-nav) {
  /*
  @include breakpoint(only4) {
      header {
          .container {
              padding-right: 20px;
              nav {
                  padding-right: 0px;
              }
          }
      }
      ul.extraButtons {
          position: fixed;
          bottom: 0px;
          left: 0px;
          display: flex;
          list-style: none;
          letter-spacing: 1px;
          margin-bottom: 0px;
          width: 100%;
          li {
              flex-grow: 1;
              margin-right: 0px !important;
          }
          a {
              text-align: center;
              color: white;
              padding: 12px 15px;
              display: block;
              font-weight: 600;
              &.callBack {
                  background: $brightBlue;
              }
              &.requestABrochure {
                  background: $lightBlue;
              }
              &.arrangeAViewing {
                  background: $greenBlue;
              }
          }
      }
  }
  */
}
html:not(.mobile-nav) #main-nav-back {
  height: 93px;
  background-color: #002d56;
  position: fixed;
  top: 0;
  width: 100%;
}
html:not(.mobile-nav) #main-nav-padding {
  height: 94px;
}
html:not(.mobile-nav) header {
  transition: all ease 0.5s;
  background: transparent;
  color: white;
  position: fixed;
  width: 100%;
  top: 0px;
  z-index: 20;
}
html:not(.mobile-nav) header h2 {
  position: absolute;
  left: -200vw;
  top: 0;
  display: block;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
html:not(.mobile-nav) header nav {
  display: block;
  flex-grow: 1;
  width: 100%;
}
html:not(.mobile-nav) header nav ul.mainMenu {
  list-style: none;
  display: flex;
  margin-bottom: 0px;
  text-align: right;
  flex-grow: 1;
  font-weight: 600;
}
html:not(.mobile-nav) header nav ul.mainMenu li:not(:last-of-type) {
  margin-right: 20px;
}
html:not(.mobile-nav) header nav ul.mainMenu li a {
  color: white;
}
html:not(.mobile-nav) header nav ul.mainMenu li a:after {
  display: block;
  content: "";
  width: 0;
  height: 3px;
  margin-top: 3px;
  background: rgba(255, 255, 255, 0);
  transition: all ease 0.3s;
}
html:not(.mobile-nav) header nav ul.mainMenu li a:hover, html:not(.mobile-nav) header nav ul.mainMenu li a:focus {
  color: white;
}
html:not(.mobile-nav) header nav ul.mainMenu li a:hover:after, html:not(.mobile-nav) header nav ul.mainMenu li a:focus:after {
  width: 100%;
  background: white;
}
html:not(.mobile-nav) header .container {
  display: flex;
  align-items: center;
}
html:not(.mobile-nav) header .container .site_title {
  width: 360px;
}
html:not(.mobile-nav) header .container .nav_main {
  flex-grow: 1;
}
html:not(.mobile-nav) header .container .nav_main nav {
  display: flex;
  justify-content: flex-end;
}
html:not(.mobile-nav) header .container .nav_main ul.mainMenu {
  text-align: right;
  justify-content: flex-end;
}
html:not(.mobile-nav).moreThan20 header {
  background: #002d56;
}
html:not(.mobile-nav).lodgeListing header {
  background: #002d56;
}
html:not(.mobile-nav).lodgeListing .listingContainer {
  padding-top: 104px;
}
@media (min-width: 680px) {
  html:not(.mobile-nav) header .container {
    display: flex;
    justify-content: space-between;
    padding-right: 20px;
  }
  html:not(.mobile-nav) header .container nav {
    justify-content: flex-end;
    padding-right: 0px;
  }
  html:not(.mobile-nav) ul.mainMenu {
    flex-grow: 1;
    /*li {
        white-space: nowrap;
    }*/
    margin-right: 20px;
  }
  html:not(.mobile-nav) ul.extraButtons {
    display: flex;
    list-style: none;
    letter-spacing: 0px;
    margin-bottom: 0px;
  }
  html:not(.mobile-nav) ul.extraButtons li:not(:last-of-type) {
    margin-right: 5px;
  }
}

a.bigButton {
  text-align: center;
  color: white;
  padding: 10px 14px;
  display: block;
  font-weight: 600;
}
a.bigButton.callBack {
  background: #323FC6;
}
a.bigButton.requestABrochure {
  background: #2A99CF;
}
a.bigButton.arrangeAViewing {
  background: #3EB59E;
}

html.mobile-nav .nav-menu-trigger {
  display: block;
  height: 60px;
  line-height: 42px;
  text-align: center;
  text-transform: uppercase;
  background: url(../images/main-logo.svg) 10px 10px no-repeat #002d56;
  background-size: auto 40px;
  color: white;
  font-weight: 700;
  letter-spacing: 2px;
  position: sticky;
  top: 0px;
  left: 0px;
  width: 100%;
  z-index: 10;
  text-indent: -999em;
  overflow: hidden;
}
html.mobile-nav .nav-menu-trigger span.burger {
  position: absolute;
  top: 0px;
  right: 0px;
  width: 60px;
  height: 60px;
  background: white;
  transition: all ease 0.3s;
}
html.mobile-nav .nav-menu-trigger span.burger span.line {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  background: #002d56;
  height: 5px;
  width: 30px;
  border-radius: 3px;
  transition: all ease 0.3s;
}
html.mobile-nav .nav-menu-trigger span.burger span.line:before {
  position: absolute;
  top: -10px;
  height: 5px;
  width: 30px;
  content: "";
  display: block;
  background: #002d56;
  border-radius: 3px;
  transition: all ease 0.3s;
}
html.mobile-nav .nav-menu-trigger span.burger span.line:after {
  position: absolute;
  top: 10px;
  height: 5px;
  width: 30px;
  content: "";
  display: block;
  background: #002d56;
  border-radius: 3px;
  transition: all ease 0.3s;
}
html.mobile-nav .nav-menu-trigger:hover, html.mobile-nav .nav-menu-trigger:focus {
  cursor: pointer;
}
html.mobile-nav .site_context h2 {
  position: absolute;
  left: -200vw;
  top: 0;
  display: block;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
html.mobile-nav .site_context ul {
  list-style: none;
  margin-bottom: 0px;
  text-align: center;
  letter-spacing: 1px;
}
html.mobile-nav .site_context ul.mainMenu {
  color: white;
  margin-bottom: 20px;
}
html.mobile-nav .site_context ul.mainMenu a {
  color: white;
  display: block;
  padding: 7px 15px;
}
html.mobile-nav .site_context ul.extraButtons {
  letter-spacing: 1px;
}
html.mobile-nav .site_context ul.extraButtons a {
  color: white;
  padding: 12px 15px;
  display: block;
  font-weight: 600;
}
html.mobile-nav .site_context ul.extraButtons a.callBack {
  background: #323FC6;
}
html.mobile-nav .site_context ul.extraButtons a.requestABrochure {
  background: #2A99CF;
}
html.mobile-nav .site_context ul.extraButtons a.arrangeAViewing {
  background: #3EB59E;
}
html.mobile-nav .site_context > .container {
  position: fixed;
  left: 0;
  top: 60px;
  bottom: 0;
  z-index: 4;
  width: 80%;
  max-width: 400px;
  background-color: #002d56;
  color: white;
  transition: all 0.4s;
  transform: translateX(-100%);
  opacity: 0;
  pointer-events: none;
}
html.mobile-nav span.burger.active span.line {
  background: white;
}
html.mobile-nav span.burger.active span.line:before {
  top: 0px;
  transform: rotate(45deg);
}
html.mobile-nav span.burger.active span.line:after {
  top: 0px;
  transform: rotate(-45deg);
}
html.mobile-nav.nav-active .site_context > .container {
  transform: translateX(0);
  opacity: 1;
  pointer-events: auto;
}

html {
  background-color: #F0F0F4;
}

#__next {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

header a {
  text-decoration: none;
}

footer {
  background: #002d56;
  color: white;
}
footer h2 {
  position: absolute;
  left: -200vw;
  top: 0;
  display: block;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
footer h3 {
  position: absolute;
  left: -200vw;
  top: 0;
  display: block;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
footer a {
  text-decoration: none;
}
footer .footerNav h3 {
  position: absolute;
  left: -200vw;
  top: 0;
  display: block;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
footer .footerNav ul {
  list-style: none;
}
footer .footerNav ul a {
  color: white;
}
footer .logo .footerLogo {
  display: block;
}
footer .logo .footerLogo svg path {
  fill: white !important;
}
footer .bgLogo svg path {
  fill: white !important;
}
footer .sm.outline svg path {
  fill: white !important;
}

.site_footer-2 {
  background: #002d56;
  color: #AAAFD0;
  font-size: 14px;
}
.site_footer-2 h3 {
  position: absolute;
  left: -200vw;
  top: 0;
  display: block;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
.site_footer-2 ul {
  list-style: none;
  margin-bottom: 0px;
}

.sm ul {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  list-style: none;
  margin-bottom: 0;
}
.sm li a {
  display: block;
  transition: all 0.3s;
  transform-origin: 50% 50%;
}
.sm svg {
  display: block;
}
.sm.brand-compliant li:not(:first-child) {
  margin-left: 0;
}
.sm.brand-compliant li a {
  width: 42px;
}
.sm.brand-compliant li a:hover, .sm.brand-compliant li a:focus {
  transform: scale(1.1);
}
.sm.brand-compliant svg {
  width: 42px;
  height: 42px;
}
.sm.outline a {
  padding: 10px;
}
.sm.outline svg {
  width: 22px;
  height: 22px;
}
.sm.outline svg path {
  fill: #ccc;
}

@media (min-width: 410px) and (max-width: 679px) {
  footer .footerLogo {
    margin-bottom: 20px;
  }
  footer .footerLogo svg {
    max-width: 360px;
  }
  footer .bgLogo {
    display: none;
  }
}
@media (min-width: 680px) and (max-width: 1023px) {
  footer .dc_grid-1-1-1-1 {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
  }
  footer .bgLogo {
    display: none;
  }
  footer .logo {
    grid-column: span 2;
  }
  footer .logo .footerLogo {
    max-width: 360px;
  }
  footer .footerNav ul {
    margin-bottom: 0;
  }
}
@media (min-width: 1024px) and (max-width: 1499px) {
  footer .footerContact {
    grid-gap: 0;
    grid-row-gap: 20px;
    grid-column: span 2;
  }
}
@media (min-width: 1500px) {
  footer .footerContact {
    grid-column: span 2;
  }
  footer .bgLogo {
    display: flex;
    justify-content: flex-end;
  }
  footer .bgLogo svg {
    max-width: 300px;
  }
  footer .logo svg {
    max-width: 360px;
    display: block;
  }
}
.phoneAndMail a {
  color: white;
}

/*# sourceMappingURL=bookings.css.map */
