﻿@charset "UTF-8";
/*
    This site is setup so the main style sheet can have multiple themes 
    Each theme has a main scss file that is used to generate the .css file, and a variable file. 
       - Use the variable file to overrides the main style variables. This can be used to modify theme settings such as colors.  
       - use the main scss file to generate the final .css file, and you can add any specific css override style at the end of the file.  
*/
/*Load base variable values */
/* BASE THEME COLORS */
/*Additional colors used for background color theme options only (usually wont override)*/
/* LAYOUT */
/* TYPOGRAPHY */
/*GLOBAL THEME VARABLES*/
/*Any variable overrides for this theme should be set in the theme specific variable file */
/* THEME COLORS */
/* COLOR OVERRIDES */
/* COLOR STYLE GUIDE */
/*THEME VARIABLES*/
/*COMPONENT VARIABLE OVERRIDES: */
/* TYPOGRAPHY */
/*Pull in the Style Collection for the base theme */
/* GLOBAL STYLES */
html {
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  overscroll-behavior: contain;
}

html, body, div, article, section, main, dialog, aside, footer, header, form, fieldset, legend,
pre, code, p, a, h1, h2, h3, h4, h5, h6, ul, ol, li, dl, dt, dd, textarea,
input[type=email], input[type=number], input[type=password],
input[type=tel], input[type=text], input[type=url], .border-box {
  box-sizing: border-box;
}

body, h1, h2, h3, h4, h5, h6, p, blockquote, ol, ul, fieldset {
  margin: 0;
  padding: 0;
}

button, input, optgroup, select, textarea {
  font-size: 100%;
  margin: 0;
}

input, select, textarea {
  vertical-align: baseline;
  *vertical-align: middle;
}

article, footer, header, nav, section {
  display: block;
}

li {
  list-style: none;
}

img {
  border-style: none;
  vertical-align: middle;
}

button, input {
  line-height: normal;
  overflow: visible;
}

button, [type=button], [type=reset], [type=submit] {
  cursor: pointer;
  -webkit-appearance: button;
}

[type=checkbox], [type=radio] {
  box-sizing: border-box;
}

[type=search] {
  -webkit-appearance: textfield;
  box-sizing: content-box;
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

dialog, button::-moz-focus-inner, input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

textarea {
  overflow: auto;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

td {
  vertical-align: top;
}

div, article, section, header, footer, nav, li {
  position: relative;
}

dialog {
  border: 0;
  padding: 0;
}

/* BASE THEME COLORS */
/*Additional colors used for background color theme options only (usually wont override)*/
/* LAYOUT */
/* TYPOGRAPHY */
/*GLOBAL THEME VARABLES*/
/******** Main Resort Fonts ********/
/* archivo-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Archivo";
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/Archivo/archivo-v19-latin-700.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* archivo-700italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Archivo";
  font-style: italic;
  font-weight: 700;
  src: url("../fonts/Archivo/archivo-v19-latin-700italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* archivo-800 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Archivo";
  font-style: normal;
  font-weight: 800;
  src: url("../fonts/Archivo/archivo-v19-latin-800.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* archivo-800italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Archivo";
  font-style: italic;
  font-weight: 800;
  src: url("../fonts/Archivo/archivo-v19-latin-800italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* archivo-900 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Archivo";
  font-style: normal;
  font-weight: 900;
  src: url("../fonts/Archivo/archivo-v19-latin-900.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* archivo-900italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Archivo";
  font-style: italic;
  font-weight: 900;
  src: url("../fonts/Archivo/archivo-v19-latin-900italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* bitter-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Bitter";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/Bitter/bitter-v33-latin-regular.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* bitter-italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Bitter";
  font-style: italic;
  font-weight: 400;
  src: url("../fonts/Bitter/bitter-v33-latin-italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* bitter-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Bitter";
  font-style: normal;
  font-weight: 500;
  src: url("../fonts/Bitter/bitter-v33-latin-500.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* bitter-500italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Bitter";
  font-style: italic;
  font-weight: 500;
  src: url("../fonts/Bitter/bitter-v33-latin-500italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* bitter-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Bitter";
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/Bitter/bitter-v33-latin-700.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* bitter-700italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Bitter";
  font-style: italic;
  font-weight: 700;
  src: url("../fonts/Bitter/bitter-v33-latin-700italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* bitter-800 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Bitter";
  font-style: normal;
  font-weight: 800;
  src: url("../fonts/Bitter/bitter-v33-latin-800.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* bitter-800italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Bitter";
  font-style: italic;
  font-weight: 800;
  src: url("../fonts/Bitter/bitter-v33-latin-800italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/******** Double Cut Fonts ********/
/* orbitron-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Orbitron";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/Orbitron/orbitron-v31-latin-regular.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* orbitron-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Orbitron";
  font-style: normal;
  font-weight: 500;
  src: url("../fonts/Orbitron/orbitron-v31-latin-500.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* orbitron-600 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Orbitron";
  font-style: normal;
  font-weight: 600;
  src: url("../fonts/Orbitron/orbitron-v31-latin-600.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* orbitron-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Orbitron";
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/Orbitron/orbitron-v31-latin-700.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* orbitron-800 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Orbitron";
  font-style: normal;
  font-weight: 800;
  src: url("../fonts/Orbitron/orbitron-v31-latin-800.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* orbitron-900 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Orbitron";
  font-style: normal;
  font-weight: 900;
  src: url("../fonts/Orbitron/orbitron-v31-latin-900.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* lato-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Lato";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/Lato/lato-v24-latin-regular.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* lato-italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Lato";
  font-style: italic;
  font-weight: 400;
  src: url("../fonts/Lato/lato-v24-latin-italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* lato-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Lato";
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/Lato/lato-v24-latin-700.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* lato-700italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Lato";
  font-style: italic;
  font-weight: 700;
  src: url("../fonts/Lato/lato-v24-latin-700italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* lato-900 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Lato";
  font-style: normal;
  font-weight: 900;
  src: url("../fonts/Lato/lato-v24-latin-900.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* lato-900italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Lato";
  font-style: italic;
  font-weight: 900;
  src: url("../fonts/Lato/lato-v24-latin-900italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* public-sans-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Public Sans";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/PublicSans/public-sans-v15-latin-regular.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* public-sans-italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Public Sans";
  font-style: italic;
  font-weight: 400;
  src: url("../fonts/PublicSans/public-sans-v15-latin-italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* public-sans-600 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Public Sans";
  font-style: normal;
  font-weight: 600;
  src: url("../fonts/PublicSans/public-sans-v15-latin-600.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* public-sans-600italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Public Sans";
  font-style: italic;
  font-weight: 600;
  src: url("../fonts/PublicSans/public-sans-v15-latin-600italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* public-sans-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Public Sans";
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/PublicSans/public-sans-v15-latin-700.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* public-sans-700italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Public Sans";
  font-style: italic;
  font-weight: 700;
  src: url("../fonts/PublicSans/public-sans-v15-latin-700italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/******** Tom Foolerys Fonts ********/
/* acme-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Acme";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/Acme/acme-v25-latin-regular.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* ubuntu-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Ubuntu";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/Ubuntu/ubuntu-v20-latin-regular.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* ubuntu-italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Ubuntu";
  font-style: italic;
  font-weight: 400;
  src: url("../fonts/Ubuntu/ubuntu-v20-latin-italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* ubuntu-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Ubuntu";
  font-style: normal;
  font-weight: 500;
  src: url("../fonts/Ubuntu/ubuntu-v20-latin-500.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* ubuntu-500italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Ubuntu";
  font-style: italic;
  font-weight: 500;
  src: url("../fonts/Ubuntu/ubuntu-v20-latin-500italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* ubuntu-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Ubuntu";
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/Ubuntu/ubuntu-v20-latin-700.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* ubuntu-700italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Ubuntu";
  font-style: italic;
  font-weight: 700;
  src: url("../fonts/Ubuntu/ubuntu-v20-latin-700italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
.font-stack {
  font-family: "Public Sans", Helvetica, Arial, sans-serif;
}

.font-alternate {
  font-family: "Lato", Helvetica, Arial, sans-serif;
}

.font-header {
  font-family: "acme", Helvetica, Arial, sans-serif;
}

.font-header-alternate {
  font-family: "brandon-grotesque", sans-serif;
}

body {
  font-family: "Public Sans", Helvetica, Arial, sans-serif;
  font-size: 15px;
  color: #1e1e1e;
}

.large-body {
  font-family: "brandon-grotesque", sans-serif;
  font-size: 16px;
}

.small-body {
  font-size: 14px;
}

.legal-body {
  font-size: 11px;
  line-height: 1.5;
}

h1, h2, h3, h4 {
  color: #aa1e2e;
  font-weight: 700;
  line-height: 1.2;
  margin-bottom: 0.67em;
}

h1, h2 {
  font-family: "acme", Helvetica, Arial, sans-serif;
}

h3, h4 {
  font-family: "brandon-grotesque", sans-serif;
}

h1, .h1 {
  font-size: 27px;
}

h2, .h2 {
  font-size: 27px;
}

h3, .h3 {
  font-size: 22px;
}

h4, .h4 {
  font-size: 22px;
}

p, li {
  line-height: 1.6;
}

p + p, p + ol, p + ul, p + h1, p + h2, p + h3, p + h4, p + .link-arrow {
  margin-top: 1em;
}

p + .btn {
  margin-top: 1.3em;
}

li {
  margin-bottom: 0.3em;
}

ul, ol {
  margin-bottom: 1em;
}

@media (min-width: 768px) {
  .large-body {
    font-size: 17px;
  }
  .small-body {
    font-size: 15px;
  }
  .legal-body {
    font-size: 14px;
  }
  h1, .h1 {
    font-size: 36px;
  }
  h2, .h2 {
    font-size: 30px;
  }
  h3, .h3 {
    font-size: 26px;
  }
  h4, .h4 {
    font-size: 22px;
  }
}
@media (min-width: 1280px) {
  body {
    font-size: 17px;
  }
  .large-body {
    font-size: 21px;
  }
  .small-body {
    font-size: 16px;
  }
  .legal-body {
    font-size: 15px;
  }
  h1, .h1 {
    font-size: 45px;
  }
  h2, .h2 {
    font-size: 37px;
  }
  h3, .h3 {
    font-size: 32px;
  }
  h4, .h4 {
    font-size: 26px;
  }
}
@media (min-width: 1400px) {
  h2, .h2 {
    font-size: 45px;
  }
}
.page-content ul, .page-content ol {
  margin-left: 40px;
}

.text-left {
  text-align: left;
}

.text-right {
  text-align: right;
}

.text-center {
  text-align: center;
}

.text-black {
  color: #1e1e1e;
}

.text-greyDark {
  color: #2d2d2d;
}

.text-tan {
  color: #968b83;
}

.text-tanMed {
  color: #cbc3bb;
}

.text-tanLight {
  color: #edeae7;
}

.text-blue {
  color: #2567b3;
}

.text-blueAlt {
  color: #1a5698;
}

.text-blueDark {
  color: #222d65;
}

.text-blueLight {
  color: #99bed5;
}

.text-blueWhite {
  color: #dce6e2;
}

.text-yellow {
  color: #eaaa21;
}

.text-orange {
  color: #ef8b22;
}

.text-red {
  color: #aa1e2e;
}

.text-success {
  color: #3c763d;
}

.text-warning {
  color: #007d80;
}

.text-error {
  color: #b60000;
}

.sr-only {
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  width: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
}

a {
  color: #2567b3;
}

.btn,
button {
  border: 0;
  border-radius: 24px;
  display: inline-block;
  font-family: "brandon-grotesque", sans-serif;
  font-size: 0.88em;
  font-weight: bold;
  letter-spacing: 0.03em;
  line-height: 1.2em;
  padding: 12px 25px;
  text-transform: uppercase;
  transition: all ease-in-out 0.15s;
}
.btn a,
button a {
  color: #fff;
  text-decoration: none;
}
.btn.disabled,
button.disabled {
  opacity: 0.2;
  cursor: default;
}
.btn.disabled:hover,
button.disabled:hover {
  box-shadow: none;
}
.btn:focus:not(:focus-visible),
button:focus:not(:focus-visible) {
  outline: none;
}
.btn:focus-visible,
button:focus-visible {
  outline: 4px dashed black;
}

.btn {
  padding-right: 33px;
}
.btn:after {
  content: "›";
  content: "›"/"";
  display: inline-block;
  font-family: "brandon-grotesque", sans-serif;
  font-size: 19px;
  font-weight: 700;
  padding-left: 4px;
  line-height: 8px;
  position: absolute;
  margin-top: 4px;
  vertical-align: middle;
}
.btn:hover:not(.disabled) {
  box-shadow: 0px 5px 7px rgba(0, 0, 0, 0.25);
}

a.btn {
  display: inline-block;
  text-decoration: none;
}

.btn-primary {
  color: #ffffff;
  background-color: #aa1e2e;
  border: 2px solid #aa1e2e;
  border-radius: 26px;
}
.btn-primary:hover:not(.disabled) {
  background-color: rgb(104.975, 18.525, 28.405);
  color: #ffffff;
  border-color: rgb(104.975, 18.525, 28.405);
}

.btn-secondary {
  color: #ffffff;
  background-color: #6f2877;
  border: 2px solid #6f2877;
  border-radius: 26px;
}
.btn-secondary:hover:not(.disabled) {
  background-color: #6f2877;
  color: #ffffff;
  border-color: #6f2877;
}

.btn-blue {
  background-color: #2567b3;
  color: #fff;
}
.btn-blue:hover:not(.disabled) {
  background-color: #1a5698;
  color: #fff;
}

.btn-white-green {
  background-color: #fff;
  border: 2px solid #6abeb8;
  border-radius: 26px;
  color: #222d65;
}
.btn-white-green:hover, .btn-white-green:hover:not(.disabled) {
  background-color: #fff;
  color: #222d65;
}
.btn-white-green a {
  color: #222d65;
}

.btn-yellow {
  background-color: #eaaa21;
  color: #222d65;
}
.btn-yellow:hover, .btn-yellow:hover:not(.disabled) {
  background-color: #eaaa21;
  color: #222d65;
}
.btn-yellow a {
  color: #222d65;
}

.btn-white {
  background-color: #fff;
  color: #aa1e2e !important;
}
.btn-white:hover, .btn-white:hover:not(.disabled) {
  background-color: #fff;
  color: #aa1e2e !important;
}
.btn-white a {
  color: #222d65;
}

.btn-red {
  background-color: #aa1e2e;
  color: #fff;
}
.btn-red:hover, .btn-red:hover:not(.disabled) {
  background-color: rgb(126.65, 22.35, 34.27);
}

.btn-green {
  background-color: #00818A;
  color: #fff;
}
.btn-green:hover, .btn-green:hover:not(.disabled) {
  background-color: rgb(0, 81.3260869565, 87);
}

.btn-black {
  background-color: #1e1e1e;
  color: #fff;
}
.btn-black:hover, .btn-black:focus, .btn-black:hover:not(.disabled) {
  background-color: rgb(93.75, 93.75, 93.75);
}

.btn-square {
  border-radius: 0;
}

.btn-no-arrow {
  padding-right: 25px;
}
.btn-no-arrow:after {
  display: none;
}

.btn-drop-shadow {
  box-shadow: 0 5px 7px rgba(0, 0, 0, 0.25);
}

.btn-card-see-all {
  margin-top: 20px;
  margin-bottom: 10px;
}

.link-line {
  display: inline-block;
  color: #2567b3;
  font-weight: bold;
  line-height: 1.2;
  margin-bottom: 3px;
  position: relative;
  text-decoration: none;
}
.link-line.no-arrow:before {
  width: 100%;
  right: 0;
}
.link-line:before {
  background: #2567b3;
  content: "";
  display: block;
  height: 2px;
  position: absolute;
  bottom: -3px;
  right: 14px;
  transition: 250ms cubic-bezier(0.5, 1, 0.89, 1);
  width: calc(100% - 14px);
}
@media (prefers-reduced-motion) {
  .link-line:before {
    transition: none !important;
  }
}
.link-line:hover:before {
  width: 0;
}
.link-line a {
  text-decoration: none;
  color: #aa1e2e;
}

.link-line-in {
  display: inline-block;
  color: #2567b3;
  font-weight: bold;
  margin-bottom: 3px;
  position: relative;
  text-decoration: none;
}
.link-line-in:before {
  background: #2567b3;
  content: "";
  display: block;
  height: 2px;
  position: absolute;
  bottom: -3px;
  left: 0;
  transition: 250ms cubic-bezier(0.5, 1, 0.89, 1);
  width: 0;
}
@media (prefers-reduced-motion) {
  .link-line-in:before {
    transition: none !important;
  }
}
.link-line-in:hover:before {
  width: calc(100% - 14px);
}
.link-line-in a {
  text-decoration: none;
  color: #aa1e2e;
}

.link-arrow {
  display: inline-block;
}
.link-arrow:after {
  content: "›";
  content: "›"/"";
  display: inline-block;
  font-family: "brandon-grotesque", sans-serif;
  font-size: 22px;
  font-weight: 700;
  margin-top: -2px;
  padding-left: 5px;
  line-height: 8px;
  vertical-align: middle;
}

.link-arrow-down:after {
  content: "›";
  content: "›"/"";
  display: inline-block;
  font-family: "brandon-grotesque", sans-serif;
  font-size: 22px;
  font-weight: 700;
  margin-top: 0px;
  margin-left: 7px;
  line-height: 8px;
  transform: rotate(90deg);
  vertical-align: middle;
}

.link-external {
  display: inline-block;
}
.link-external:after {
  padding-left: 5px;
  content: "\f35d";
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  font-family: "Font Awesome 5 Free";
}

@media (min-width: 1280px) {
  button,
  .btn {
    padding: 16px 30px;
  }
  .btn {
    padding-right: 38px;
  }
  .btn:after {
    font-size: 22px;
    margin-top: 5px;
  }
  .btn-no-arrow {
    padding-right: 30px;
  }
  .link-arrow-down:after {
    margin-top: 2px;
  }
}
.btn-sm {
  padding: 0.25rem 0.5rem;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 18px;
}

/* TABLES */
/*table {margin-bottom: 20px;
	th, td {border-bottom: 1px solid #eee; padding: 5px 20px 5px 0;}
	th {border-color: #ccc; text-align: left;}

	@media (min-width: 1024px) {
		th, td {padding: 5px 35px 5px 0;}
	}
}*/
@media (max-width: 800px) {
  .responsive-table table,
  .responsive-table thead,
  .responsive-table tbody,
  .responsive-table th,
  .responsive-table td,
  .responsive-table tr {
    display: block;
  }
  .responsive-table thead tr {
    position: absolute;
    top: -9999px;
    left: -9999px;
  }
  .responsive-table tr {
    border-bottom: 1px solid #ccc;
  }
  .responsive-table tr:last-of-type {
    border-bottom: 0;
  }
  .responsive-table tr:last-of-type td {
    border-bottom: 1px solid #eee;
  }
  .responsive-table td {
    position: relative;
    margin-left: 140px;
    text-align: left;
  }
  .responsive-table td:before {
    content: attr(data-label);
    font-weight: normal;
    margin-left: -140px;
    position: absolute;
    white-space: nowrap;
    width: 130px;
  }
  .responsive-table td:last-of-type {
    text-align: left;
  }
}

/* FORMS */
.umbraco-forms-field.titleanddescription {
  font-family: "acme", Helvetica, Arial, sans-serif;
  font-size: 16px;
  margin-bottom: 20px;
}

fieldset {
  border: 0;
}

label {
  display: block;
  font-family: "Lato", Helvetica, Arial, sans-serif;
  font-size: 15px;
  font-weight: 700;
  margin-bottom: 8px;
}

.umbraco-forms-label {
  color: #aa1e2e;
  display: inline-block;
  font-family: "brandon-grotesque", sans-serif;
  font-size: 16px;
  font-weight: 800;
}

.umbraco-forms-navigation input[type=submit] {
  background-color: #aa1e2e;
}
.umbraco-forms-navigation .btn-wrapper {
  float: unset;
}

.radio {
  display: block;
  margin-bottom: 8px;
  position: relative;
}

.radio label {
  min-height: 20px;
  padding: 0 20px;
  margin-bottom: 0;
  font-weight: normal;
  cursor: pointer;
}

.checkbox {
  display: block;
  margin-bottom: 35px; /* Since checkbox itself needs position: absolute, this gives space for anything below */
  position: relative;
}

.dataconsent .accept-copy {
  /* 
  Since checkbox itself needs position: absolute, 
  this provides space for inline label to appear to right of checkbox 
  */
  margin-left: 30px;
}

input[type=text],
input[type=email],
input[type=password],
input[type=date],
input[type=tel],
input[type=number],
input[type=search],
textarea,
select {
  background-color: #fff;
  border: 1px solid #2d2d2d;
  border-radius: 0;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-sizing: border-box;
  font-family: "Public Sans", Helvetica, Arial, sans-serif;
  font-weight: normal;
  margin-bottom: 20px;
  padding: 15px 15px;
  width: 100%;
}

input[type=file] {
  margin-bottom: 20px;
}

input[type=text]:focus,
input[type=email]:focus,
input[type=password]:focus,
input[type=date]:focus,
input[type=tel]:focus,
input[type=number]:focus,
input[type=search]:focus,
textarea:focus,
select:focus {
  border-color: #005fcc;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(0, 95, 204, 0.6);
  outline: 0;
}

input[type=text][disabled],
input[type=email][disabled],
input[type=password][disabled],
input[type=date][disabled],
input[type=tel][disabled],
input[type=number][disabled],
input[type=search][disabled],
textarea[disabled],
select[disabled] {
  cursor: not-allowed;
  background-color: #eee;
}

.radio input[type=radio] {
  position: absolute;
  margin: 1px 0 0;
  margin-left: -20px;
}

textarea {
  height: 130px;
}

select {
  background-image: url("../images/caret-down.svg");
  background-repeat: no-repeat;
  background-position: center right 10px;
  background-size: 10px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

input[type=checkbox] {
  -webkit-appearance: none;
  background: #fff;
  border: 1px solid #2d2d2d;
  margin-top: 2px;
  position: absolute;
  height: 16px;
  width: 16px;
}
input[type=checkbox]:after {
  color: #000;
  content: "";
  display: inline-block;
  font-size: 27px;
  font-weight: 300;
  height: 14px;
  position: absolute;
  left: 2px;
  top: -2px;
}
input[type=checkbox]:checked:after {
  background: url("../images/checkmark.svg") no-repeat;
  background-size: auto 14px;
  content: "";
  width: 15px;
}
input[type=checkbox]:focus {
  border-color: #2567b3;
  outline: none;
  border-width: medium;
}
input[type=checkbox] + label {
  display: inline-block;
  font-weight: normal;
  margin-bottom: 15px;
  padding-left: 30px;
  position: relative;
  vertical-align: top;
}

input[type=radio] {
  transform: scale(1.5);
  display: inline-block;
  vertical-align: top;
  margin-right: -25px;
  margin-top: 5px;
}
input[type=radio] + label {
  display: inline-block;
  font-weight: normal;
  margin-left: 30px;
  margin-right: -25px;
  margin-bottom: 15px;
  line-height: 1.6em;
}

.custom-number input[type=number] {
  -webkit-appearance: textfield;
  appearance: textfield;
}
.custom-number input[type=number]::-webkit-inner-spin-button, .custom-number input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
}
.custom-number button {
  background: none;
  border-radius: 0;
  padding: 0 4px;
  position: absolute;
  right: 10px;
}
.custom-number button:hover {
  background: none;
  box-shadow: none;
}
.custom-number button.increase-number {
  margin-top: 7px;
}
.custom-number button.decrease-number {
  bottom: 7px;
  top: auto;
}

.form-help {
  color: #888;
  font-size: 80%;
  margin: 5px 0 10px;
}

.help-block {
  color: #2d2d2d;
  display: inline-block;
  margin-bottom: 6px;
}

.form-error {
  background: url("../images/icon-form-error.svg") no-repeat 20px 20px;
  background-size: 27px 27px;
  border: 1px solid #aa1e2e;
  border-left: 14px solid #aa1e2e;
  font-weight: bold;
  margin-bottom: 50px;
  padding: 20px 20px 20px 60px;
}

input + .field-validation-error,
select + .field-validation-error,
textarea + .field-validation-error {
  margin-top: -10px;
}

input[type].input-validation-error,
.input-validation-error {
  border-color: #aa1e2e;
}

.field-validation-error {
  color: #aa1e2e;
  display: block;
  margin-bottom: 25px;
}

label.error {
  color: #aa1e2e;
}

input.error {
  color: #aa1e2e;
  border-color: #aa1e2e;
}

.form-info {
  background-size: 27px 27px;
  border: 1px solid #2567b3;
  border-left: 14px solid #2567b3;
  font-weight: bold;
  margin-bottom: 50px;
  padding: 20px 20px 20px 60px;
  padding-left: 60px;
}

.recaptcha {
  margin-top: 30px;
  margin-bottom: 20px;
}

button[type=submit] {
  margin-top: 10px;
}

@media (min-width: 1280px) {
  input[type=submit] {
    background-position: top 14px right 23px;
  }
}
.column-form {
  padding-top: 20px;
}

.umbraco-forms-hidden {
  display: none;
}

/*@mixin clearfix() {
  &:before,
  &:after {
    content: " "; // 1
    display: table; // 2
  }
  &:after {
    clear: both;
  }
}

*/
.container {
  padding-left: 15px;
  padding-right: 15px;
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 768px) {
  .container {
    padding-left: 30px;
    padding-right: 30px;
  }
}
@media (min-width: 1024px) {
  .container {
    padding-left: 52px;
    padding-right: 52px;
  }
}
@media (min-width: 1280px) {
  .container {
    padding-left: 65px;
    padding-right: 65px;
  }
}
@media (min-width: 1700px) {
  .container {
    padding-left: 71px;
    padding-right: 71px;
  }
}
@media (min-width: 1280px) {
  .container {
    max-width: 1400px;
  }
}

.container-fluid {
  padding-left: 15px;
  padding-right: 15px;
}
@media (min-width: 768px) {
  .container-fluid {
    padding-left: 30px;
    padding-right: 30px;
  }
}
@media (min-width: 1024px) {
  .container-fluid {
    padding-left: 52px;
    padding-right: 52px;
  }
}
@media (min-width: 1280px) {
  .container-fluid {
    padding-left: 65px;
    padding-right: 65px;
  }
}
@media (min-width: 1700px) {
  .container-fluid {
    padding-left: 71px;
    padding-right: 71px;
  }
}

#page-main .container, #page-main .container-fluid {
  overflow: hidden;
}
#page-main .container.container-noclip, #page-main .container-fluid.container-noclip {
  overflow: inherit;
}

.col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-xs-1, .col-xs-10, .col-xs-11, .col-xs-12, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9 {
  min-height: 1px;
  padding: 18px 15px;
  position: relative;
}
@media (min-width: 1024px) {
  .col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-xs-1, .col-xs-10, .col-xs-11, .col-xs-12, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9 {
    padding: 20px 17px;
  }
}
@media (min-width: 1280px) {
  .col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-xs-1, .col-xs-10, .col-xs-11, .col-xs-12, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9 {
    padding: 20px 21px;
  }
}
@media (min-width: 1700px) {
  .col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-xs-1, .col-xs-10, .col-xs-11, .col-xs-12, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9 {
    padding: 20px 22px;
  }
}

.col-section {
  display: flex;
  flex-flow: row wrap;
}

.col-no-margin {
  margin: -18px -15px;
}
@media (min-width: 1024px) {
  .col-no-margin {
    margin: -20px -17px;
  }
}
@media (min-width: 1280px) {
  .col-no-margin {
    margin: -20px -21px;
  }
}
@media (min-width: 1700px) {
  .col-no-margin {
    margin: -20px -22px;
  }
}

.col-xs-1, .col-xs-10, .col-xs-11, .col-xs-12, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9 {
  float: left;
}

.col-xs-12 {
  width: 100%;
}

.col-xs-11 {
  width: 91.66666667%;
}

.col-xs-10 {
  width: 83.33333333%;
}

.col-xs-9 {
  width: 75%;
}

.col-xs-8 {
  width: 66.66666667%;
}

.col-xs-7 {
  width: 58.33333333%;
}

.col-xs-6 {
  width: 50%;
}

.col-xs-5 {
  width: 41.66666667%;
}

.col-xs-4 {
  width: 33.33333333%;
}

.col-xs-3 {
  width: 25%;
}

.col-xs-2 {
  width: 16.66666667%;
}

.col-xs-1 {
  width: 8.33333333%;
}

@media (min-width: 768px) {
  .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9 {
    float: left;
  }
  .col-sm-12 {
    width: 100%;
  }
  .col-sm-11 {
    width: 91.66666667%;
  }
  .col-sm-10 {
    width: 83.33333333%;
  }
  .col-sm-9 {
    width: 75%;
  }
  .col-sm-8 {
    width: 66.66666667%;
  }
  .col-sm-7 {
    width: 58.33333333%;
  }
  .col-sm-6 {
    width: 50%;
  }
  .col-sm-5 {
    width: 41.66666667%;
  }
  .col-sm-4 {
    width: 33.33333333%;
  }
  .col-sm-3 {
    width: 25%;
  }
  .col-sm-2 {
    width: 16.66666667%;
  }
  .col-sm-1 {
    width: 8.33333333%;
  }
}
@media (min-width: 1024px) {
  .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9 {
    float: left;
  }
  .col-md-12 {
    width: 100%;
  }
  .col-md-11 {
    width: 91.66666667%;
  }
  .col-md-10 {
    width: 83.33333333%;
  }
  .col-md-9 {
    width: 75%;
  }
  .col-md-8 {
    width: 66.66666667%;
  }
  .col-md-7 {
    width: 58.33333333%;
  }
  .col-md-6 {
    width: 50%;
  }
  .col-md-5 {
    width: 41.66666667%;
  }
  .col-md-4 {
    width: 33.33333333%;
  }
  .col-md-3 {
    width: 25%;
  }
  .col-md-2 {
    width: 16.66666667%;
  }
  .col-md-1 {
    width: 8.33333333%;
  }
}
@media (min-width: 1280px) {
  .col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9 {
    float: left;
  }
  .col-lg-12 {
    width: 100%;
  }
  .col-lg-11 {
    width: 91.66666667%;
  }
  .col-lg-10 {
    width: 83.33333333%;
  }
  .col-lg-9 {
    width: 75%;
  }
  .col-lg-8 {
    width: 66.66666667%;
  }
  .col-lg-7 {
    width: 58.33333333%;
  }
  .col-lg-6 {
    width: 50%;
  }
  .col-lg-5 {
    width: 41.66666667%;
  }
  .col-lg-4 {
    width: 33.33333333%;
  }
  .col-lg-3 {
    width: 25%;
  }
  .col-lg-2 {
    width: 16.66666667%;
  }
  .col-lg-1 {
    width: 8.33333333%;
  }
}
/* LAYOUT */
.side-padding {
  padding-left: 20px;
  padding-right: 20px;
}
@media (min-width: 768px) {
  .side-padding {
    padding-left: 35px;
    padding-right: 35px;
  }
}
@media (min-width: 1024px) {
  .side-padding {
    padding-left: 50px;
    padding-right: 50px;
  }
}
@media (min-width: 1280px) {
  .side-padding {
    padding-left: 60px;
    padding-right: 60px;
  }
}

.top-bottom-padding {
  padding-top: 40px;
  padding-bottom: 40px;
}
@media (min-width: 768px) {
  .top-bottom-padding {
    padding-top: 65px;
    padding-bottom: 65px;
  }
}
@media (min-width: 1024px) {
  .top-bottom-padding {
    padding-top: 75px;
    padding-bottom: 75px;
  }
}
@media (min-width: 1280px) {
  .top-bottom-padding {
    padding-top: 95px;
    padding-bottom: 95px;
  }
}
.top-bottom-padding + .top-bottom-padding {
  padding-top: 0;
}
.top-bottom-padding + .top-bottom-padding-md {
  padding-top: 0;
}
.top-bottom-padding + .top-bottom-padding-sm {
  padding-top: 0;
}

.top-bottom-padding-md {
  padding-top: 30px;
  padding-bottom: 30px;
}
@media (min-width: 768px) {
  .top-bottom-padding-md {
    padding-top: 50px;
    padding-bottom: 50px;
  }
}
@media (min-width: 1024px) {
  .top-bottom-padding-md {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}
@media (min-width: 1280px) {
  .top-bottom-padding-md {
    padding-top: 75px;
    padding-bottom: 75px;
  }
}
.top-bottom-padding-md + .top-bottom-padding-sm {
  padding-top: 0;
}
.top-bottom-padding-md + .top-bottom-padding-md {
  padding-top: 0;
}
.top-bottom-padding-md + .top-bottom-padding {
  padding-top: 10px;
}

.top-bottom-padding-sm {
  padding-top: 20px;
  padding-bottom: 20px;
}
@media (min-width: 768px) {
  .top-bottom-padding-sm {
    padding-top: 35px;
    padding-bottom: 35px;
  }
}
@media (min-width: 1024px) {
  .top-bottom-padding-sm {
    padding-top: 50px;
    padding-bottom: 50px;
  }
}
@media (min-width: 1280px) {
  .top-bottom-padding-sm {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}
.top-bottom-padding-sm + .top-bottom-padding-sm {
  padding-top: 0;
}
.top-bottom-padding-sm + .top-bottom-padding-md {
  padding-top: 10px;
}
.top-bottom-padding-sm + .top-bottom-padding {
  padding-top: 20px;
}

.padding-top-lg {
  padding-top: 40px;
}
@media (min-width: 768px) {
  .padding-top-lg {
    padding-top: 65px;
  }
}
@media (min-width: 1024px) {
  .padding-top-lg {
    padding-top: 75px;
  }
}
@media (min-width: 1280px) {
  .padding-top-lg {
    padding-top: 95px;
  }
}

.padding-bottom-lg {
  padding-bottom: 40px;
}
@media (min-width: 768px) {
  .padding-bottom-lg {
    padding-bottom: 65px;
  }
}
@media (min-width: 1024px) {
  .padding-bottom-lg {
    padding-bottom: 75px;
  }
}
@media (min-width: 1280px) {
  .padding-bottom-lg {
    padding-bottom: 95px;
  }
}

.padding-top-md {
  padding-top: 30px;
}
@media (min-width: 768px) {
  .padding-top-md {
    padding-top: 50px;
  }
}
@media (min-width: 1024px) {
  .padding-top-md {
    padding-top: 60px;
  }
}
@media (min-width: 1280px) {
  .padding-top-md {
    padding-top: 75px;
  }
}

.padding-bottom-md {
  padding-bottom: 30px;
}
@media (min-width: 768px) {
  .padding-bottom-md {
    padding-bottom: 50px;
  }
}
@media (min-width: 1024px) {
  .padding-bottom-md {
    padding-bottom: 60px;
  }
}
@media (min-width: 1280px) {
  .padding-bottom-md {
    padding-bottom: 75px;
  }
}

.padding-top-sm {
  padding-top: 20px;
}
@media (min-width: 768px) {
  .padding-top-sm {
    padding-top: 35px;
  }
}
@media (min-width: 1024px) {
  .padding-top-sm {
    padding-top: 50px;
  }
}
@media (min-width: 1280px) {
  .padding-top-sm {
    padding-top: 60px;
  }
}

.padding-bottom-sm {
  padding-bottom: 20px;
}
@media (min-width: 768px) {
  .padding-bottom-sm {
    padding-bottom: 35px;
  }
}
@media (min-width: 1024px) {
  .padding-bottom-sm {
    padding-bottom: 50px;
  }
}
@media (min-width: 1280px) {
  .padding-bottom-sm {
    padding-bottom: 60px;
  }
}

.sticky-component {
  position: sticky;
  position: webkit sticky;
  overflow: unset;
  top: 0;
  z-index: 5;
}

.top-margin {
  margin-top: 40px;
}

.no-margin-bottom {
  margin-bottom: 0;
}

#page-main {
  position: relative;
}

.page-content ul li {
  list-style-type: disc;
  margin-bottom: 1em;
}
.page-content ol li {
  list-style-type: decimal;
  margin-bottom: 1em;
}

ol.no-margin, ul.no-margin {
  margin-bottom: 0;
}
ol.no-margin li, ul.no-margin li {
  margin-bottom: 0;
}

img {
  height: auto;
  max-width: 100%;
}

.hidden {
  display: none;
}

.align-bottom {
  align-items: flex-end;
}

.bg-black {
  background-color: #1e1e1e;
}

.bg-greyDark {
  background-color: #2d2d2d;
}

.bg-tan {
  background-color: #968b83;
}

.bg-tanMed {
  background-color: #cbc3bb;
}

.bg-tanLight {
  background-color: #edeae7;
}

.bg-blue {
  background-color: #2567b3;
}

.bg-blueAlt {
  background-color: #1a5698;
}

.bg-blueDark {
  background-color: #222d65;
}

.bg-blueLight {
  background-color: #99bed5;
}

.bg-blueWhite {
  background-color: #dce6e2;
}

.bg-yellow {
  background-color: #eaaa21;
}

.bg-orange {
  background-color: #ef8b22;
}

.bg-red {
  background-color: #aa1e2e;
}

.bg-green {
  background-color: #00818A;
}

.bg-greenMed {
  background-color: #6abeb8;
}

.bg-greenLight {
  background-color: #9dd6dd;
}

.pattern-bubbles {
  background-image: url("../images/pattern-bubbles.svg");
}

.pattern-bullseyes {
  background-image: url("../images/pattern-bullseyes.svg");
}

.pattern-chevrons {
  background-image: url("../images/pattern-chevrons.svg");
}

.pattern-diamonds {
  background-image: url("../images/pattern-diamonds.svg");
}

.pattern-flowers {
  background-image: url("../images/pattern-flowers.svg");
}

.pattern-leaves {
  background-image: url("../images/pattern-leaves.svg");
}

.pattern-squares {
  background-image: url("../images/pattern-squares.svg");
}

.pattern-stripes {
  background-image: url("../images/pattern-stripes.svg");
}

.pattern-waves {
  background-image: url("../images/pattern-waves.svg");
}

.gradient-bar {
  height: 18px;
}

.gradient-red-yellow {
  background: linear-gradient(90deg, rgb(220, 57, 41) 30%, rgb(255, 194, 14) 80%);
}

.gradient-blue-green {
  background: linear-gradient(90deg, rgb(37, 103, 179) 33%, rgb(106, 190, 184) 84%);
}

.card-line-greenMed img {
  border-bottom: 7px solid #6abeb8;
}

.card-line-orange img {
  border-bottom: 7px solid #ef8b22;
}

.card-line-red img {
  border-bottom: 7px solid #aa1e2e;
}

.card-line-blue img {
  border-bottom: 7px solid #2567b3;
}

.border-top-tanMed,
.border-top-primary,
.border-top {
  border-top: 2px solid #222d65;
  padding-top: 22px;
}

.border-bottom-tanMed,
.border-bottom-primary,
.border-bottom {
  border-bottom: 2px solid #222d65;
  padding-bottom: 20px;
}

.border-top-row {
  border-top: 1px solid #222d65;
  padding-top: 40px;
}

.border-bottom-row {
  border-bottom: 1px solid #222d65;
  padding-bottom: 40px;
}

.border-top-greenLight {
  border-top: 2px solid #9dd6dd;
  padding-top: 22px;
}

.border-bottom-greenLight {
  border-bottom: 2px solid #9dd6dd;
  padding-bottom: 25px;
}

@media (max-width: 767px) {
  .mobile-hidden {
    display: none;
  }
}
@media (min-width: 768px) {
  .mobile-only {
    display: none;
  }
}
@media (min-width: 1024px) {
  .mobile-tablet-only {
    display: none;
  }
}
.video-responsive {
  position: relative;
  display: block;
  overflow: hidden;
}

.video-responsive::before {
  display: block;
  content: "";
  padding-top: 56.25%;
}

.video-responsive-item {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

@media (max-width: 1024px) {
  .tns-controls {
    outline: none;
  }
}
@media (hover: none) {
  .tns-controls {
    outline: none;
  }
}
.tns-outer {
  padding: 0 !important;
}
.tns-outer [hidden] {
  display: none !important;
}
.tns-outer [aria-controls],
.tns-outer [data-action] {
  cursor: pointer;
}

.tns-slider {
  -webkit-transition: all 0s;
  -moz-transition: all 0s;
  transition: all 0s;
}
@media (prefers-reduced-motion) {
  .tns-slider {
    transition: none !important;
  }
}
.tns-slider > .tns-item {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.tns-horizontal.tns-subpixel {
  white-space: nowrap;
}
.tns-horizontal.tns-subpixel > .tns-item {
  display: inline-block;
  vertical-align: top;
  white-space: normal;
}
.tns-horizontal.tns-no-subpixel:after {
  content: "";
  display: table;
  clear: both;
}
.tns-horizontal.tns-no-subpixel > .tns-item {
  float: left;
}
.tns-horizontal.tns-carousel.tns-no-subpixel > .tns-item {
  margin-right: -100%;
}

.tns-no-calc {
  position: relative;
  left: 0;
}

.tns-gallery {
  position: relative;
  left: 0;
  min-height: 1px;
}
.tns-gallery > .tns-item {
  position: absolute;
  left: -100%;
  -webkit-transition: transform 0s, opacity 0s;
  -moz-transition: transform 0s, opacity 0s;
  transition: transform 0s, opacity 0s;
}
@media (prefers-reduced-motion) {
  .tns-gallery > .tns-item {
    transition: none !important;
  }
}
.tns-gallery > .tns-slide-active {
  position: relative;
  left: auto !important;
}
.tns-gallery > .tns-moving {
  -webkit-transition: all 0.25s;
  -moz-transition: all 0.25s;
  transition: all 0.25s;
}
@media (prefers-reduced-motion) {
  .tns-gallery > .tns-moving {
    transition: none !important;
  }
}

.tns-autowidth {
  display: inline-block;
}

.tns-lazy-img {
  -webkit-transition: opacity 0.6s;
  -moz-transition: opacity 0.6s;
  transition: opacity 0.6s;
  opacity: 0.6;
}
@media (prefers-reduced-motion) {
  .tns-lazy-img {
    transition: none !important;
  }
}
.tns-lazy-img.tns-complete {
  opacity: 1;
}

.tns-ah {
  -webkit-transition: height 0s;
  -moz-transition: height 0s;
  transition: height 0s;
}
@media (prefers-reduced-motion) {
  .tns-ah {
    transition: none !important;
  }
}

.tns-ovh {
  overflow: hidden;
}

.tns-visually-hidden {
  position: absolute;
  left: -10000em;
}

.tns-transparent {
  opacity: 0;
  visibility: hidden;
}

.tns-fadeIn {
  opacity: 1;
  filter: alpha(opacity=100);
  z-index: 0;
}

.tns-normal,
.tns-fadeOut {
  opacity: 0;
  filter: alpha(opacity=0);
  z-index: -1;
}

.tns-vpfix {
  white-space: nowrap;
}
.tns-vpfix > div,
.tns-vpfix > li {
  display: inline-block;
}

.tns-t-subp2 {
  margin: 0 auto;
  width: 310px;
  position: relative;
  height: 10px;
  overflow: hidden;
}
.tns-t-ct {
  width: 2333.3333333333%;
  width: -webkit-calc(100% * calc(70 / 3));
  width: -moz-calc(100% * calc(70 / 3));
  position: absolute;
  right: 0;
}
.tns-t-ct:after {
  content: "";
  display: table;
  clear: both;
}
.tns-t-ct > div {
  width: 1.4285714286%;
  width: -webkit-calc(100% / 70);
  width: -moz-calc(100% / 70);
  width: calc(100% / 70);
  height: 10px;
  float: left;
}

:root {
  --duet-color-primary: #005fcc;
  --duet-color-text: #333;
  --duet-color-text-active: #fff;
  --duet-color-placeholder: #666;
  --duet-color-button: #fff;
  --duet-color-surface: #fff;
  --duet-color-overlay: rgba(0, 0, 0, 0.8);
  --duet-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  --duet-font-normal: 400;
  --duet-font-bold: 600;
  --duet-radius: 0px;
  --duet-z-index: 600;
}

.duet-date {
  margin-bottom: 20px;
}
.duet-date .duet-date__input {
  border: 1px solid #2d2d2d;
}
.duet-date .duet-date__input:focus {
  border-color: #005fcc;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(0, 95, 204, 0.6);
  outline: 0;
}
.duet-date .duet-date__toggle {
  box-shadow: inset 1px 0 0 rgba(45, 45, 45, 0.3);
}
.duet-date .duet-date__toggle:focus-visible {
  outline: 4px dashed black;
}

/*COMMON*/
.c-full-width-carousel .tns-controls {
  padding: 0;
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -30px;
  pointer-events: none;
  width: 100%;
  z-index: 1;
}
.c-full-width-carousel .tns-controls button {
  pointer-events: auto;
  height: 40px;
  width: unset;
  padding-left: 15px;
  padding-right: 15px;
  background: url("../images/carousel-arrow-l.svg") no-repeat rgba(255, 255, 255, 0.85) center;
  background-size: auto 25px;
  text-indent: -9000px;
  border-radius: 7px;
  box-shadow: 3.8px 3.8px 3.8px rgba(0, 0, 0, 0.45);
}
.c-full-width-carousel .tns-controls button:hover {
  box-shadow: none;
}
.c-full-width-carousel .tns-controls button span {
  display: block;
  text-indent: -9999px;
}
.c-full-width-carousel .tns-controls button:nth-of-type(2) {
  background-image: url("../images/carousel-arrow-r.svg");
  float: right;
}
@media (max-width: 767px) {
  .c-full-width-carousel .tns-controls button {
    margin: auto 4px;
  }
}
.c-full-width-carousel.round-nav .tns-controls {
  padding: 0 5px;
  margin-top: -20px;
  width: calc(100% + 24px);
  margin-left: -12px;
}
.c-full-width-carousel.round-nav .tns-controls button {
  background: rgba(255, 255, 255, 0.85);
  border-radius: 30px;
  box-shadow: -3.8px 3.8px 3.8px rgba(0, 0, 0, 0.45);
  pointer-events: auto;
  height: 41px;
  width: 41px;
  background: url("../images/carousel-arrow-l.svg") no-repeat rgba(255, 255, 255, 0.85) center;
  background-size: auto 17px;
}
.c-full-width-carousel.round-nav .tns-controls button:nth-of-type(2) {
  background-image: url("../images/carousel-arrow-r.svg");
  box-shadow: 3.8px 3.8px 3.8px rgba(0, 0, 0, 0.45);
  float: right;
}
.c-full-width-carousel.round-nav .tns-controls button.disabled {
  display: none;
}
.c-full-width-carousel.square-nav .tns-controls {
  padding: 0;
  margin-top: -20px;
  width: 100%;
  margin-left: 0;
}
.c-full-width-carousel.square-nav .tns-controls button {
  border-radius: 0;
  box-shadow: none;
  padding: 0;
  pointer-events: auto;
  height: 41px;
  width: 38px;
  background: url("../images/carousel-arrow-l-white.svg") no-repeat rgba(0, 0, 0, 0.5) center;
  background-size: auto 20px;
}
.c-full-width-carousel.square-nav .tns-controls button:nth-of-type(2) {
  background-image: url("../images/carousel-arrow-r-white.svg");
  float: right;
}
.c-full-width-carousel.square-nav .tns-controls button.disabled {
  display: none;
}
@media (min-width: 768px) {
  .c-full-width-carousel .content {
    padding-left: 26px;
    padding-right: 26px;
  }
  .c-full-width-carousel .tns-controls {
    margin-top: -40px;
    padding: 0 12px;
  }
  .c-full-width-carousel .tns-controls button {
    background-size: auto 60px;
    height: 60px;
    padding-left: 20px;
    padding-right: 20px;
    background-image: url("../images/carousel-chevron-l-blue.svg");
    background-position-x: unset;
  }
  .c-full-width-carousel .tns-controls button:nth-of-type(2) {
    background-image: url("../images/carousel-chevron-r-blue.svg");
    background-position-x: right;
  }
  .c-full-width-carousel.round-nav .tns-controls {
    margin-top: -24px;
    width: calc(100% + 40px);
    margin-left: -20px;
  }
  .c-full-width-carousel.round-nav .tns-controls button {
    height: 48px;
    width: 48px;
    background-size: auto 20px;
  }
  .c-full-width-carousel.square-nav .tns-controls {
    margin-top: -24px;
  }
  .c-full-width-carousel.square-nav .tns-controls button {
    height: 48px;
    width: 40px;
    background-size: auto 22px;
  }
}
@media (min-width: 1024px) {
  .c-full-width-carousel .content {
    padding-left: 50px;
    padding-right: 50px;
  }
  .c-full-width-carousel .tns-controls {
    padding: 0 20px;
  }
}
@media (min-width: 1280px) {
  .c-full-width-carousel .tns-controls {
    margin-top: -48px;
  }
  .c-full-width-carousel .tns-controls button {
    background-size: auto 80px;
    height: 80px;
    padding-left: 24px;
    padding-right: 24px;
  }
  .c-full-width-carousel.round-nav .tns-controls {
    margin-top: -30px;
  }
  .c-full-width-carousel.round-nav .tns-controls button {
    height: 60px;
    width: 60px;
    background-size: auto 24px;
  }
  .c-full-width-carousel.square-nav .tns-controls {
    margin-top: -27px;
  }
  .c-full-width-carousel.square-nav .tns-controls button {
    height: 54px;
    width: 46px;
    background-size: auto 26px;
  }
}

/* GLOBAL COMPONENTS */
#c-skip-nav {
  background: #fff;
  border-radius: 0 0 5px 5px;
  color: #aa1e2e;
  left: 50%;
  padding: 12px;
  position: absolute;
  transform: translateY(-100%);
  z-index: 100;
}
#c-skip-nav:focus {
  transform: translateY(0%);
}

.c-skip-nav-target {
  -webkit-clip-path: polygon(0 0, 0 0, 0 0, 0 0);
  clip-path: polygon(0 0, 0 0, 0 0, 0 0);
  color: #aa1e2e;
  text-align: center;
  z-index: 100;
  position: absolute;
  left: 46%;
  border-radius: 0 0 5px 5px;
  padding: 12px;
  background: #fff;
  text-decoration: none;
}
.c-skip-nav-target:focus {
  clip-path: none;
  -webkit-clip-path: none;
}

.c-announcement-bar {
  background: #aa1e2e;
  color: #fff;
  font-family: "Lato", Helvetica, Arial, sans-serif;
  font-size: 12px;
  padding-top: 6px;
  padding-bottom: 6px;
  text-align: center;
}
.c-announcement-bar p {
  margin-bottom: 0;
  padding-right: 30px;
}
.c-announcement-bar a {
  color: #fff;
  text-decoration: none;
}
.c-announcement-bar a:hover {
  text-decoration: underline;
}
.c-announcement-bar a:after {
  content: "›";
  display: inline-block;
  font-family: "brandon-grotesque", sans-serif;
  font-size: 16px;
  font-weight: 700;
  padding-left: 4px;
  line-height: 8px;
  vertical-align: middle;
}
.c-announcement-bar .btn-close {
  padding: 0;
  position: absolute;
  top: 8px;
  right: 15px;
  background: none;
}
.c-announcement-bar .btn-close:hover {
  box-shadow: none;
}
@media (min-width: 768px) {
  .c-announcement-bar .btn-close img {
    width: 10px;
    height: 10px;
  }
}
@media (min-width: 1280px) {
  .c-announcement-bar {
    font-size: 15px;
  }
}

/* HEADER */
.c-header {
  box-shadow: 0 7px 5px rgba(0, 0, 0, 0.3);
  z-index: 10;
  background-color: #00818A;
}
.c-header .desktop-only {
  display: none;
}
.c-header .main-nav-link {
  color: #ffffff;
}
@media (max-width: 1023px) {
  .c-header > .container {
    padding-right: 0;
  }
}
@media (min-width: 1024px) {
  .c-header .container {
    flex-flow: nowrap;
  }
}
.c-header .header-skip-container {
  background: #eee;
  text-align: center;
  width: 100%;
}
.c-header .header-skip-container .header-skip {
  color: #333;
  display: inline-block;
  margin-top: -140px;
  padding: 10px;
  position: absolute;
}
.c-header .header-skip-container .header-skip:focus {
  text-decoration: underline;
  margin-top: 0;
  position: static;
}
.c-header__logo {
  flex-grow: 1;
  padding: 15px 15px 15px 0;
}
.c-header__logo img {
  height: 35px;
}
@media (min-width: 768px) {
  .c-header__logo img {
    width: 149px;
    height: auto;
  }
}
@media (min-width: 1024px) {
  .c-header__logo {
    flex-grow: 0;
    padding: 24px 24px 24px 0;
  }
}
@media (min-width: 1280px) {
  .c-header__logo {
    padding: 30px 24px 30px 0;
  }
  .c-header__logo img {
    width: 186px;
  }
}
.c-header__location-selections {
  display: none;
  margin-left: 173px;
  position: absolute;
}
.c-header__location-selections button {
  background-image: url("../images/down-arrow-black.svg");
  background-position: center right 15px;
  background-repeat: no-repeat;
  background-size: 8px auto;
  border-radius: 0;
  display: block;
  font-size: 12px;
  min-width: 214px;
  padding: 13px 35px 13px 15px;
  text-align: left;
  text-transform: none;
  width: 100%;
}
.c-header__location-selections button:hover {
  box-shadow: none;
}
.c-header__location-selections button:after {
  display: none;
}
.c-header__location-selections #location-btn {
  background-color: #6f2877;
  color: #ffffff;
}
.c-header__location-selections #location-btn:hover, .c-header__location-selections #location-btn:hover:not(.disabled) {
  background-color: #6f2877;
  color: #ffffff;
}
.c-header__location-selections #location-select {
  background: #edeae7;
  box-shadow: 5px 5px 7px rgba(0, 0, 0, 0.25);
  display: none;
  font-family: "Lato", Helvetica, Arial, sans-serif;
  font-size: 12px;
  width: 100%;
}
.c-header__location-selections #location-select ul {
  margin: 0;
  padding: 8px 0;
}
.c-header__location-selections #location-select ul li {
  margin: 0;
  padding: 0 15px;
}
.c-header__location-selections #location-select ul li a {
  border-top: 1px solid #222d65;
  color: #1e1e1e;
  display: block;
  padding: 8px 30px 8px 0;
  text-decoration: none;
  white-space: nowrap;
}
.c-header__location-selections #location-select ul li a.active {
  background: url("../images/icon-blue-check.svg") no-repeat center right;
  background-size: auto 10px;
}
.c-header__location-selections #location-select ul li:first-child a {
  border-top: 0;
}
@media (min-width: 1024px) {
  .c-header__location-selections {
    display: block;
  }
}
@media (min-width: 1280px) {
  .c-header__location-selections {
    margin-left: 222px;
  }
  .c-header__location-selections button,
  .c-header__location-selections #location-select {
    font-size: 14px;
  }
}
.c-header__search-toggle {
  background: none;
  border-radius: 0;
  box-shadow: none;
  padding: 12px 16px;
}
.c-header__search-toggle:hover:not(.disabled) {
  background: transparent;
  box-shadow: none;
}
.c-header__search-toggle.is-active {
  background: #edeae7;
}
.c-header__search-toggle.is-active:hover:not(.disabled) {
  background: #edeae7;
}
@media (min-width: 768px) {
  .c-header__search-toggle img {
    width: 38px;
    height: auto;
  }
}
@media (min-width: 1024px) {
  .c-header__search-toggle {
    align-self: flex-end;
    border-radius: 15px 15px 0 0;
    padding: 14px 13px 23px 14px;
    width: auto;
  }
  .c-header__search-toggle img {
    width: 21px;
  }
}
@media (min-width: 1280px) {
  .c-header__search-toggle {
    align-self: flex-end;
    padding: 14px 13px 28px 14px;
    width: auto;
  }
  .c-header__search-toggle img {
    width: 27px;
  }
}
.c-header__account-toggle {
  background: none;
  border-radius: 0;
  box-shadow: none;
  padding: 12px 16px;
}
.c-header__account-toggle:hover:not(.disabled) {
  background: transparent;
  box-shadow: none;
}
.c-header__account-toggle.is-active {
  background: #edeae7;
}
.c-header__account-toggle.is-active:hover:not(.disabled) {
  background: #edeae7;
}
@media (min-width: 768px) {
  .c-header__account-toggle img {
    width: 38px;
    height: auto;
  }
}
@media (min-width: 1024px) {
  .c-header__account-toggle {
    align-self: flex-end;
    border-radius: 15px 15px 0 0;
    padding: 14px 13px 23px 14px;
    width: auto;
  }
  .c-header__account-toggle img {
    width: 21px;
  }
}
@media (min-width: 1280px) {
  .c-header__account-toggle {
    align-self: flex-end;
    padding: 14px 13px 28px 14px;
    width: auto;
  }
  .c-header__account-toggle img {
    width: 27px;
  }
}
.c-header__search-dialog {
  background: #edeae7;
  display: none;
  padding-top: 15px;
  padding-bottom: 15px;
  position: absolute;
  top: 64px;
  left: 0;
  width: 100%;
}
.c-header__search-dialog .col-section {
  align-items: center;
  flex-flow: nowrap;
  gap: 16px;
}
.c-header__search-dialog .col-section div:first-child {
  flex-grow: 1;
}
.c-header__search-dialog input {
  margin-bottom: 0;
  padding: 12px;
}
.c-header__search-dialog button {
  background: #aa1e2e;
  border: 1px solid #fff;
  margin-top: 0;
}
.c-header__search-dialog button:after {
  content: "›";
  content: "›"/"";
  display: inline-block;
  font-family: "brandon-grotesque", sans-serif;
  font-size: 19px;
  font-weight: 700;
  margin-top: 4px;
  padding-left: 4px;
  line-height: 8px;
  vertical-align: middle;
}
@media (min-width: 768px) {
  .c-header__search-dialog {
    top: 79px;
  }
}
@media (min-width: 1024px) {
  .c-header__search-dialog {
    background: transparent;
    padding: 0;
    top: 97px;
  }
  .c-header__search-dialog form {
    background: #edeae7;
    float: right;
    padding: 10px;
    width: 325px;
  }
  .c-header__search-dialog input {
    font-size: 12px;
    padding: 10px 12px;
  }
  .c-header__search-dialog button {
    font-size: 9.6px;
    padding: 10px 20px;
  }
  .c-header__search-dialog button:after {
    font-size: 16px;
    margin-top: 3px;
  }
}
@media (min-width: 1280px) {
  .c-header__search-dialog {
    top: 122px;
  }
  .c-header__search-dialog form {
    width: 410px;
  }
  .c-header__search-dialog button {
    font-size: 12px;
    padding: 12px 25px;
  }
  .c-header__search-dialog input {
    font-size: 14px;
    padding: 12px;
  }
}
.c-header #sign-in-icon {
  align-self: center;
  padding: 12px 16px;
}
@media (min-width: 768px) {
  .c-header #sign-in-icon img {
    width: 38px;
    height: auto;
  }
}
@media (min-width: 1024px) {
  .c-header #sign-in-icon {
    display: none;
  }
}
.c-header__account-dialog {
  background: #edeae7;
  display: none;
  padding-top: 15px;
  padding-bottom: 15px;
  position: absolute;
  top: 64px;
  left: 0;
  width: 100%;
}
.c-header__account-dialog .col-section {
  align-items: center;
  flex-flow: nowrap;
  gap: 16px;
}
.c-header__account-dialog .col-section div:first-child {
  flex-grow: 1;
}
@media (min-width: 768px) {
  .c-header__account-dialog {
    top: 79px;
  }
}
@media (min-width: 1024px) {
  .c-header__account-dialog {
    background: transparent;
    padding: 0;
    top: 97px;
  }
}
@media (min-width: 1280px) {
  .c-header__account-dialog {
    top: 122px;
  }
}
.c-header #hamburger {
  background-color: #eaaa21;
  border: 0;
  border-radius: 0;
  margin: 0;
  padding: 10px 23px;
  width: 72px;
}
.c-header #hamburger span {
  background: #1e1e1e;
  border-radius: 6px;
  display: block;
  height: 2px;
  margin: 6px 0;
  width: 100%;
  transition: 0.1s ease-in-out;
}
@media (prefers-reduced-motion) {
  .c-header #hamburger span {
    transition: none !important;
  }
}
.c-header #hamburger #ham-3 {
  margin-top: -8px;
}
.c-header #hamburger.is-active #ham-1,
.c-header #hamburger.is-active #ham-4 {
  top: 22px;
  width: 0;
  left: 50%;
}
.c-header #hamburger.is-active #ham-2 {
  transform: rotate(45deg);
}
.c-header #hamburger.is-active #ham-3 {
  transform: rotate(-45deg);
}
@media (min-width: 768px) {
  .c-header #hamburger {
    padding: 10px 34px;
    width: 105px;
  }
  .c-header #hamburger span {
    height: 3px;
    margin: 10px 0;
  }
  .c-header #hamburger #ham-3 {
    margin-top: -13px;
  }
}
@media (min-width: 1024px) {
  .c-header #hamburger {
    display: none;
  }
}
.c-header #secondary-nav {
  display: none;
}
@media (min-width: 1024px) {
  .c-header #secondary-nav {
    display: block;
    font-family: "Lato", Helvetica, Arial, sans-serif;
    font-size: 12px;
    font-weight: bold;
    position: absolute;
    right: 62px;
    top: 0px;
    text-transform: uppercase;
  }
  .c-header #secondary-nav ul li {
    display: inline-block;
  }
  .c-header #secondary-nav ul li a {
    color: #ffffff;
    display: inline-block;
    padding: 10px 15px;
    text-decoration: none;
  }
  .c-header #secondary-nav ul li a:hover {
    text-decoration: underline;
  }
  .c-header #secondary-nav ul li a.sign-in {
    background: #6f2877;
    color: #ffffff;
    margin-left: 10px;
    padding-left: 20px;
    padding-right: 20px;
  }
  .c-header #secondary-nav ul li .drop-down-button {
    background: url(../images/down-arrow-grey.svg) no-repeat top 17px right;
    color: #2d2d2d;
    background-size: 8px auto;
    font-size: 1em;
    margin-right: 15px;
    padding: 10px 12px 10px 15px;
  }
  .c-header #secondary-nav ul li .drop-down-button .my-account-name {
    margin-left: 2px;
  }
  .c-header #secondary-nav ul li .drop-down-button:hover {
    box-shadow: none;
  }
  .c-header #secondary-nav ul li .drop-down-container ul {
    background: #edeae7;
    box-shadow: 5px 5px 7px rgba(0, 0, 0, 0.25);
    display: none;
    padding: 8px 0;
    position: absolute;
    text-transform: none;
    width: 100%;
    z-index: 1;
  }
  .c-header #secondary-nav ul li .drop-down-container ul li {
    display: block;
    margin-bottom: 0;
    padding: 0 15px;
  }
  .c-header #secondary-nav ul li .drop-down-container ul li a {
    border-top: 1px solid #222d65;
    padding: 8px 30px 8px 0;
    width: 100%;
  }
  .c-header #secondary-nav ul li .drop-down-container ul li a.active {
    background: url(../images/icon-blue-check.svg) no-repeat center right;
    background-size: auto 10px;
  }
  .c-header #secondary-nav ul li .drop-down-container ul li:first-child a {
    border-top: 0;
  }
  .c-header #secondary-nav ul li .cart {
    padding: 10px 25px 10px 2px;
  }
  .c-header #secondary-nav ul li .cart .cart-count {
    background: #aa1e2e;
    border-radius: 20px;
    color: #fff;
    font-size: 9px;
    line-height: 20px;
    margin-top: -3px;
    margin-left: -6px;
    position: absolute;
    text-align: center;
    width: 18px;
    height: 18px;
  }
}
@media (min-width: 1280px) {
  .c-header #secondary-nav {
    font-size: 15px;
    right: 72px;
  }
}
.c-header #main-nav {
  display: none;
  font-family: "acme", Helvetica, Arial, sans-serif;
  font-weight: 900;
  margin: 0 auto;
  /* MOBILE NAV VIEW */
  /* DESKTOP NAV VIEW */
}
.c-header #main-nav ul {
  margin: 0;
  padding: 0;
}
.c-header #main-nav li {
  list-style-type: none;
  margin: 0;
}
.c-header #main-nav li a {
  text-decoration: none;
}
@media (max-width: 1023px) {
  .c-header #main-nav {
    background: #6f2877;
    color: #ffffff;
    position: absolute;
    top: 64px;
    left: 0;
    width: 100%;
    z-index: 100;
  }
  .c-header #main-nav a {
    color: #ffffff;
    display: block;
    padding: 15px 20px;
  }
  .c-header #main-nav .nav-expand {
    background-color: transparent;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 12px auto;
    border-radius: 0;
    position: absolute;
    right: 0;
    top: 0;
    height: 54px;
    width: 74px;
  }
  .c-header #main-nav .nav-expand:hover {
    box-shadow: none;
  }
  .c-header #main-nav > ul > li {
    border-top: 2px solid #1e1e1e;
  }
  .c-header #main-nav > ul > li:first-child {
    border-top: 0;
  }
  .c-header #main-nav > ul > li > a {
    letter-spacing: 0.05em;
    text-transform: uppercase;
  }
  .c-header #main-nav > ul > li .nav-expand {
    background-image: url("/images/down-arrow-white.svg");
  }
  .c-header #main-nav > ul > li .nav-expand.is-active {
    transform: rotate(180deg);
  }
  .c-header #main-nav > ul > li.mobile-only {
    display: list-item;
  }
  .c-header #main-nav .sub-nav {
    background: #00818A;
    display: none;
  }
  .c-header #main-nav .sub-nav .nav-feature {
    display: none;
  }
  .c-header #main-nav .sub-nav .sub-nav__flyout-content__column .sub-nav__flyout-content__column__section > a {
    border-top: 1px solid #2d2d2d;
    color: #6f2877;
  }
  .c-header #main-nav .sub-nav .sub-nav__flyout-content__column .sub-nav__flyout-content__column__section .nav-expand {
    background-image: url("../images/down-arrow-black.svg");
    height: 50px;
  }
  .c-header #main-nav .sub-nav .sub-nav__flyout-content__column:first-of-type .sub-nav__flyout-content__column__section:first-of-type a {
    border: 0;
  }
  .c-header #main-nav .sub-nav a {
    color: #ffffff;
    letter-spacing: 0.01em;
    padding: 10px 0;
    margin: 0 20px;
  }
  .c-header #main-nav .sub-nav ul {
    margin-bottom: 0px;
  }
  .c-header #main-nav .sub-nav ul li {
    font-weight: normal;
    text-transform: none;
  }
  .c-header #main-nav .sub-nav button + ul {
    display: none;
  }
  .c-header #main-nav .main-nav-location {
    background: #00818A;
    text-transform: none;
  }
  .c-header #main-nav .main-nav-location a {
    color: #ffffff;
    text-transform: none;
  }
  .c-header #main-nav .main-nav-location .nav-expand {
    background-image: url("../images/down-arrow-black.svg");
  }
  .c-header #main-nav .main-nav-location .sub-nav {
    background-color: #edeae7;
  }
  .c-header #main-nav .main-nav-location .sub-nav ul {
    padding: 10px 0;
  }
  .c-header #main-nav .main-nav-location .sub-nav ul li a {
    border-top: 1px solid #2d2d2d;
    color: #1e1e1e;
  }
  .c-header #main-nav .main-nav-location .sub-nav ul li a.active {
    background: url("../images/icon-blue-check.svg") no-repeat center right 10px;
    background-size: auto 13px;
  }
  .c-header #main-nav .main-nav-location .sub-nav ul li:first-of-type a {
    border: 0;
  }
}
@media (min-width: 768px) {
  .c-header #main-nav {
    top: 79px;
  }
}
@media (min-width: 1024px) {
  .c-header #main-nav {
    align-self: flex-end;
    display: inline-block !important;
    flex-grow: 1;
    margin-top: 34px;
    margin-right: 5px;
    position: unset;
  }
  .c-header #main-nav button {
    display: none;
  }
  .c-header #main-nav li {
    display: inline;
    margin-bottom: 0;
    position: unset;
  }
  .c-header #main-nav .main-nav-location,
  .c-header #main-nav .mobile-only {
    display: none;
  }
  .c-header #main-nav .desktop-only {
    display: unset;
  }
  .c-header #main-nav .nav-button-wrapper {
    margin-top: -9px;
  }
  .c-header #main-nav .nav-button-wrapper .nav-cta-button {
    color: #ffffff;
    background-color: #aa1e2e;
    border: 1px solid #aa1e2e;
    border-radius: 26px;
    line-height: unset;
    padding-right: 29px;
    padding-left: 21px;
  }
  .c-header #main-nav .nav-button-wrapper .nav-cta-button:hover:not(.disabled) {
    color: #ffffff;
    background-color: rgb(104.975, 18.525, 28.405);
    border-color: rgb(104.975, 18.525, 28.405);
  }
}
@media (min-width: 1024px) and (min-width: 1280px) {
  .c-header #main-nav .nav-button-wrapper .nav-cta-button {
    padding-right: 31px;
    padding-left: 23px;
  }
}
@media (min-width: 1024px) {
  .c-header #main-nav > ul {
    display: flex;
    justify-content: space-between;
    letter-spacing: 0.03em;
  }
  .c-header #main-nav > ul > li {
    margin-left: 11px;
    padding-right: 11px;
  }
  .c-header #main-nav > ul > li > a {
    border-bottom: 5px solid #00818A;
    display: inline-block;
    font-size: 13px;
    padding-bottom: 16px;
    text-transform: uppercase;
  }
  .c-header #main-nav > ul > li:hover > a, .c-header #main-nav > ul > li:focus-within > a {
    border-color: #6f2877;
  }
  .c-header #main-nav > ul > li:hover > .sub-nav, .c-header #main-nav > ul > li:focus-within > .sub-nav {
    display: flex !important;
  }
  .c-header #main-nav > ul > li:hover > .sub-nav .sub-nav__flyout-content, .c-header #main-nav > ul > li:focus-within > .sub-nav .sub-nav__flyout-content {
    display: flex !important;
  }
  .c-header #main-nav .sub-nav {
    background: #00818A;
    border-top: 1px solid #222d65;
    box-shadow: 9.5px 9.5px 7px rgba(0, 0, 0, 0.25);
    display: none;
    letter-spacing: 0.01em;
    gap: 34px;
    padding-right: 34px;
    position: absolute;
    text-transform: none;
  }
  .c-header #main-nav .sub-nav.nav-full-width {
    left: 0;
    padding-right: 52px;
    width: 100%;
  }
  .c-header #main-nav .sub-nav.nav-small {
    margin-left: -340px;
  }
  .c-header #main-nav .sub-nav.callout-right {
    padding-right: 0 !important;
    padding-left: 34px;
  }
  .c-header #main-nav .sub-nav.callout-right .nav-feature {
    order: 1;
  }
  .c-header #main-nav .sub-nav.callout-none {
    border: unset;
    margin-left: 0;
    padding: 0 34px;
  }
  .c-header #main-nav .sub-nav.callout-none .sub-nav__flyout-content__column {
    flex-grow: 1;
  }
  .c-header #main-nav .sub-nav.callout-first {
    left: 0;
    margin-left: unset;
  }
  .c-header #main-nav .sub-nav .sub-nav__flyout-content__column__section,
  .c-header #main-nav .sub-nav aside {
    padding-top: 20px;
    padding-bottom: 30px;
  }
  .c-header #main-nav .sub-nav .sub-nav__flyout-content__column__section + .sub-nav__flyout-content__column__section,
  .c-header #main-nav .sub-nav aside + .sub-nav__flyout-content__column__section {
    padding-top: 0;
  }
  .c-header #main-nav .sub-nav a {
    padding-bottom: 5px;
    text-underline-offset: 4px;
    color: #2567b3;
  }
  .c-header #main-nav .sub-nav a:hover {
    text-decoration: underline;
  }
  .c-header #main-nav .sub-nav .nav-feature {
    background: #ffffff;
    flex-shrink: 0;
    font-family: "Public Sans", Helvetica, Arial, sans-serif;
    padding-left: 21px;
    padding-right: 21px;
    width: 300px;
  }
  .c-header #main-nav .sub-nav .nav-feature__headline {
    color: rgb(126.65, 22.35, 34.27);
    font-family: "brandon-grotesque", sans-serif;
    font-size: 15px;
    font-weight: 800;
    letter-spacing: 0;
    margin-bottom: 0.3em;
  }
  .c-header #main-nav .sub-nav .nav-feature__text {
    font-weight: normal;
    margin-top: 0;
  }
  .c-header #main-nav .sub-nav .nav-feature img {
    border-radius: 13px;
    margin-bottom: 20px;
  }
  .c-header #main-nav .sub-nav .nav-feature__link {
    color: #1e1e1e;
    font-weight: bold;
    text-decoration: underline;
  }
  .c-header #main-nav .sub-nav .nav-feature__link:after {
    content: "›";
    content: "›"/"";
    display: inline-block;
    font-family: "brandon-grotesque", sans-serif;
    font-size: 19px;
    font-weight: 700;
    margin-top: -1px;
    padding-left: 4px;
    line-height: 8px;
    vertical-align: middle;
  }
  .c-header #main-nav .sub-nav .sub-nav__flyout-content__column {
    flex-grow: 1;
    width: 25%;
  }
  .c-header #main-nav .sub-nav ul {
    display: block !important;
  }
  .c-header #main-nav .sub-nav ul a {
    display: inline-block;
    padding: 5px 0;
  }
  .c-header #main-nav .sub-nav ul li {
    display: block;
    font-weight: normal;
    margin-left: 0;
  }
  .c-header #main-nav .sub-nav ul li a {
    color: #ffffff;
  }
}
@media (min-width: 1280px) {
  .c-header #main-nav {
    margin-right: 25px;
  }
  .c-header #main-nav > ul > li {
    background-position: top 12px right;
    margin-left: 20px;
  }
  .c-header #main-nav > ul > li a {
    font-size: 15px;
  }
  .c-header #main-nav > ul > li > a {
    font-size: 15px;
    padding-bottom: 24px;
  }
  .c-header #main-nav .sub-nav {
    gap: 42px;
    padding-right: 42px;
  }
  .c-header #main-nav .sub-nav.nav-full-width {
    padding-right: 65px;
  }
  .c-header #main-nav .sub-nav.nav-small {
    margin-left: -416px;
  }
  .c-header #main-nav .sub-nav.callout-right {
    padding-left: 42px;
  }
  .c-header #main-nav .sub-nav.callout-none {
    margin-left: 0;
    padding: 0 42px;
  }
  .c-header #main-nav .sub-nav.callout-first {
    margin-left: unset;
  }
  .c-header #main-nav .sub-nav .sub-nav__flyout-content__column__section,
  .c-header #main-nav .sub-nav aside {
    padding-top: 30px;
  }
  .c-header #main-nav .sub-nav .nav-feature {
    padding-left: 28px;
    padding-right: 28px;
    width: 375px;
  }
  .c-header #main-nav .sub-nav .nav-feature__headline {
    font-size: 17px;
  }
  .c-header #main-nav .sub-nav .nav-feature__text {
    font-size: 16px;
  }
  .c-header #main-nav .sub-nav .nav-feature__link {
    font-size: 16px;
  }
  .c-header #main-nav .sub-nav .nav-feature__link:after {
    font-size: 21px;
  }
  .c-header #main-nav .nav-button-wrapper {
    margin-top: -13px;
  }
}
@media (min-width: 1400px) {
  .c-header #main-nav .sub-nav {
    gap: 46px;
    padding-right: 46px;
  }
  .c-header #main-nav .sub-nav.nav-full-width {
    padding-right: 71px;
  }
  .c-header #main-nav .sub-nav.nav-small {
    margin-left: -455px;
  }
  .c-header #main-nav .sub-nav.callout-right {
    padding-left: 46px;
  }
  .c-header #main-nav .sub-nav.callout-none {
    margin-left: 0;
    padding: 0 46px;
  }
  .c-header #main-nav .sub-nav.callout-first {
    margin-left: unset;
  }
  .c-header #main-nav .sub-nav .nav-feature {
    padding-left: 31px;
    padding-right: 31px;
    width: 410px;
  }
}

.read-user-info button {
  margin-top: 20px;
}

.c-header__account-dialog ul {
  font-family: "Lato", Helvetica, Arial, sans-serif;
  font-weight: 900;
  margin: 0 auto;
  text-align: right;
}

.c-header__account-dialog ul li a {
  letter-spacing: 0.05em;
  text-transform: uppercase;
  display: block;
  padding: 15px 50px 15px 20px;
  text-decoration: none;
}

.read-user-info .data-group__flex {
  display: flex;
  gap: 18px 10px;
}
.read-user-info .data-group__flex.flex-column {
  flex-direction: column;
}
.read-user-info .data-group__flex.flex-row {
  flex-direction: row;
}
.read-user-info .data-group__flex.flex-row > div:first-of-type {
  font-weight: 700;
  flex: 1;
}
.read-user-info .data-group__flex.flex-row > div {
  flex: 3;
}
.read-user-info button {
  max-width: 100px;
}
.read-user-info p.no-margin-top {
  margin-top: 0;
}

.c-reservation-blade {
  background-color: #6f2877;
  color: white;
  box-shadow: 6px 6px 6px rgba(0, 0, 0, 0.25);
  padding: 30px 30px;
  height: 100%;
}
.c-reservation-blade h2, .c-reservation-blade h3, .c-reservation-blade h4, .c-reservation-blade a, .c-reservation-blade a span {
  color: white;
}
.c-reservation-blade .reservation-wrapper {
  padding-top: 1em;
  padding-bottom: 1em;
  display: flex;
  flex-flow: column wrap;
  gap: 2em;
}
.c-reservation-blade .reservation-wrapper .reservation-resort-image-wrapper {
  align-self: center;
}
@media (min-width: 768px) {
  .c-reservation-blade .reservation-wrapper {
    flex-flow: row nowrap;
    padding-bottom: unset;
  }
  .c-reservation-blade .reservation-wrapper .reservation-resort-image-wrapper {
    max-width: 220px;
    align-self: unset;
  }
  .c-reservation-blade .reservation-wrapper .reservation-resort-info {
    align-self: center;
  }
}
.c-reservation-blade .reservation-resort-warning {
  margin-bottom: 1em;
}

.c-profile-tile {
  box-shadow: 6px 6px 6px rgba(0, 0, 0, 0.25);
  padding: 30px 30px;
  border: 1px solid #002a54;
  height: 100%;
}

.c-profile-locals {
  box-shadow: 6px 6px 6px rgba(0, 0, 0, 0.25);
  padding: 30px 30px;
  background-color: #2567b3;
  height: 100%;
}
.c-profile-locals h2, .c-profile-locals h3, .c-profile-locals h4, .c-profile-locals p {
  color: white;
}

.t-account-dashboard__hero .t-account-dashboard__hero__right {
  border-left: 1px solid white;
  padding-top: 0;
  padding-bottom: 0;
  font-size: 15px;
}
.t-account-dashboard__hero .t-account-dashboard__hero__right ul {
  margin: 0;
}
.t-account-dashboard__hero .t-account-dashboard__hero__right ul li {
  list-style: none;
  margin: 0;
}
.t-account-dashboard__hero .t-account-dashboard__hero__right a {
  color: white;
  padding-bottom: 4px;
}
.t-account-dashboard__hero .content-container {
  display: flex;
  align-items: center;
}

.t-account-dashboard__profile-details .form-group__flex, .t-account-dashboard__locals-address-update .form-group__flex {
  display: flex;
}
.t-account-dashboard__profile-details .form-group__flex.flex-column, .t-account-dashboard__locals-address-update .form-group__flex.flex-column {
  flex-direction: column;
}
.t-account-dashboard__profile-details .form-group__flex.flex-row, .t-account-dashboard__locals-address-update .form-group__flex.flex-row {
  gap: 15px;
  flex-direction: row;
}
.t-account-dashboard__profile-details .form-group__flex.flex-row > div, .t-account-dashboard__locals-address-update .form-group__flex.flex-row > div {
  flex: 1;
}
.t-account-dashboard__profile-details .form-group__flex.flex-row .flex-large, .t-account-dashboard__locals-address-update .form-group__flex.flex-row .flex-large {
  flex: 2;
}
.t-account-dashboard__profile-details .form-group__flex .btn-wrapper, .t-account-dashboard__locals-address-update .form-group__flex .btn-wrapper {
  align-self: center;
  margin-left: 10px;
}
.t-account-dashboard__profile-details .form-group .label-heading, .t-account-dashboard__locals-address-update .form-group .label-heading {
  font-weight: 700;
  margin-bottom: 10px;
  margin-top: 10px;
}
.t-account-dashboard__profile-details .form-group .phone-input__type, .t-account-dashboard__locals-address-update .form-group .phone-input__type {
  max-width: 10em;
}
.t-account-dashboard__profile-details .form-group .phone-input__country, .t-account-dashboard__locals-address-update .form-group .phone-input__country {
  max-width: 13em;
}
.t-account-dashboard__profile-details .form-group .phone-input__number, .t-account-dashboard__locals-address-update .form-group .phone-input__number {
  flex: 2;
}
.t-account-dashboard__profile-details .form-group .address-zip, .t-account-dashboard__locals-address-update .form-group .address-zip {
  max-width: 10em;
}
.t-account-dashboard__profile-details .form-group button.btn:first-of-type, .t-account-dashboard__locals-address-update .form-group button.btn:first-of-type {
  margin-right: 15px;
}
.t-account-dashboard__profile-details .form-group .readonly-text, .t-account-dashboard__locals-address-update .form-group .readonly-text {
  padding-bottom: 1em;
  font-family: "Public Sans", Helvetica, Arial, sans-serif;
}
.t-account-dashboard__profile-details .form-group .readonly-text p + p, .t-account-dashboard__locals-address-update .form-group .readonly-text p + p {
  margin-top: unset;
  margin-left: 0.8em;
}
.t-account-dashboard__profile-details .form-group .readonly-text .label, .t-account-dashboard__locals-address-update .form-group .readonly-text .label {
  font-weight: 700;
  font-family: "Lato", Helvetica, Arial, sans-serif;
  font-size: 15px;
}

.t-account-dashboard__preferences-details .sub-heading {
  padding-bottom: 13px;
  font-weight: 700;
}
.t-account-dashboard__preferences-details .legal-body {
  font-style: italic;
  margin-left: 1.7em;
  margin-top: 5px;
}
.t-account-dashboard__preferences-details .form-group__flex {
  display: flex;
}
.t-account-dashboard__preferences-details .form-group__flex.flex-column {
  flex-direction: column;
}
.t-account-dashboard__preferences-details .form-group__flex.flex-row {
  gap: 15px;
  flex-direction: row;
}
.t-account-dashboard__preferences-details .form-group__flex.flex-row > div {
  flex: 1;
}
.t-account-dashboard__preferences-details .form-group__flex.flex-row .flex-large {
  flex: 2;
}
.t-account-dashboard__preferences-details .form-group__flex .btn-wrapper {
  align-self: center;
  margin-left: 10px;
}
.t-account-dashboard__preferences-details .form-group .label-heading {
  font-weight: 700;
  margin-bottom: 10px;
  margin-top: 10px;
}
.t-account-dashboard__preferences-details .form-group button.btn:first-of-type {
  margin-right: 15px;
}
.t-account-dashboard__preferences-details .form-group .readonly-text {
  padding-bottom: 1em;
  font-family: "Public Sans", Helvetica, Arial, sans-serif;
}
.t-account-dashboard__preferences-details .form-group .readonly-text p + p {
  margin-top: unset;
  margin-left: 0.8em;
}
.t-account-dashboard__preferences-details .form-group .readonly-text .label {
  font-weight: 700;
  font-family: "Lato", Helvetica, Arial, sans-serif;
  font-size: 15px;
}
.t-account-dashboard__preferences-details .form-group .resort-preference-wrapper {
  display: flex;
  flex-direction: column;
}
@media (min-width: 1024px) {
  .t-account-dashboard__preferences-details .form-group .resort-preference-wrapper {
    flex-flow: row wrap;
  }
  .t-account-dashboard__preferences-details .form-group .resort-preference-wrapper .resort-preference-group {
    flex: 1 1 50%;
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    padding: 1rem;
  }
  .t-account-dashboard__preferences-details .form-group .resort-preference-wrapper .resort-preference-group > div {
    min-width: 0;
  }
  .t-account-dashboard__preferences-details .form-group .resort-preference-wrapper .icon {
    display: block;
    background: #edeae7;
    border-radius: 50%;
    display: flex;
    flex-shrink: 0;
    justify-content: center;
    align-items: center;
    width: 123px;
    height: 123px;
    margin-right: 2rem;
  }
  .t-account-dashboard__preferences-details .form-group .resort-preference-wrapper .icon img {
    height: auto;
    width: calc(100% - 30px);
  }
  .t-account-dashboard__preferences-details .form-group .resort-preference-wrapper .checkbox-row {
    width: auto;
  }
}
.t-account-dashboard__preferences-details .form-group .checkbox-row label {
  font-weight: 400;
  font-size: 15px;
}
.t-account-dashboard__preferences-details .btn-inline {
  margin-bottom: 14px;
  margin-left: 30px;
}
.t-account-dashboard__preferences-details .sms-phone-field {
  margin-bottom: 0px;
  padding: 5px;
  width: 150px;
}
.t-account-dashboard__preferences-details .inline-label {
  display: inline-block;
  margin-top: 5px;
}
.t-account-dashboard__preferences-details .preferences-phone {
  display: inline;
}

.t-account-dashboard__locals-details .request-button-wrapper {
  text-align: center;
  margin-top: 1em;
  margin-bottom: 1em;
}
@media (min-width: 1024px) {
  .t-account-dashboard__locals-details .t-account-dashboard__locals-address-update {
    max-width: 800px;
    margin-left: 8.3333333333%;
  }
}

#kalahariUpdateAddressForm label.error {
  color: #aa1e2e;
  margin-top: -1em;
  margin-bottom: 1em;
}

.c-dialog-cookie {
  background: #6f2877;
  box-shadow: 6px 6px 5px rgba(0, 0, 0, 0.35);
  color: #fff;
  display: block;
  font-family: "Lato", Helvetica, Arial, sans-serif;
  font-size: 12px;
  margin: 0 15px;
  padding: 20px 60px;
  position: fixed;
  bottom: 15px;
  text-align: center;
  width: calc(100% - 30px);
  z-index: 200;
}
.c-dialog-cookie p {
  margin-bottom: 1.2em;
}
.c-dialog-cookie a {
  color: #fff;
}
.c-dialog-cookie .btn-square {
  font-size: 14px;
  margin: 0 5px;
  min-width: 90px;
  padding: 8px 10px;
  text-transform: none;
}
.c-dialog-cookie button + button {
  margin: 0 10px 10px 10px;
}
@media (min-width: 768px) {
  .c-dialog-cookie {
    padding: 20px 44px;
    right: auto;
    left: 0;
    width: 300px;
  }
}
@media (min-width: 1280px) {
  .c-dialog-cookie {
    font-size: 15px;
    width: 320px;
  }
}

.c-dialog-booking {
  background: #6f2877;
  color: #fff;
  display: none;
  padding: 20px 15px;
  position: fixed;
  top: 0;
  height: 100%;
  width: 100%;
  z-index: 1000;
  overflow-y: scroll;
}
.c-dialog-booking.c-dialog-booking-takeover {
  background-color: #6f2877;
}
.c-dialog-booking.c-dialog-booking-takeover legend {
  color: #ffffff;
}
.c-dialog-booking.c-dialog-booking-takeover .btn.btn-primary {
  background-color: #aa1e2e;
}
.c-dialog-booking.c-dialog-booking-takeover .btn.btn-primary:hover {
  border-color: #fff;
  background-color: rgb(126.65, 22.35, 34.27);
}
.c-dialog-booking.c-dialog-booking-takeover .duet-date__input:focus, .c-dialog-booking.c-dialog-booking-takeover input[type=number]:focus {
  border-color: #aa1e2e;
}
.c-dialog-booking .btn-close {
  background: none;
  position: absolute;
  right: 0;
  top: 10px;
}
.c-dialog-booking .btn-close:hover {
  box-shadow: none;
}
.c-dialog-booking legend {
  color: #eaaa21;
  font-family: "acme", Helvetica, Arial, sans-serif;
  font-weight: 700;
  line-height: 1.2;
  font-size: 27px;
}
.c-dialog-booking .duet-date {
  background: #fff;
}
.c-dialog-booking .duet-date .duet-date__input {
  color: #000;
  font-weight: bold;
  margin-bottom: 0;
}
.c-dialog-booking .duet-date .duet-date__toggle {
  box-shadow: none;
  color: #aa1e2e;
  background: transparent;
}
.c-dialog-booking .duet-date .duet-date__toggle:hover {
  box-shadow: none;
}
.c-dialog-booking .duet-date .duet-date__toggle:focus-visible {
  border: 4px dashed black;
  outline: none;
}
.c-dialog-booking .duet-date table th, .c-dialog-booking .duet-date table td {
  padding: 0;
}
.c-dialog-booking .duet-date__input:focus, .c-dialog-booking input[type=number]:focus {
  border-color: #eaaa21;
  box-shadow: inset 0 1px 1px #eaaa21, 0 0 8px #eaaa21;
}
.c-dialog-booking .description-text {
  color: #ffffff;
  display: block;
  font-family: "Lato", Helvetica, Arial, sans-serif;
  font-size: 16px;
  font-weight: 500;
}
.c-dialog-booking .children-information {
  margin-top: -1em;
  margin-bottom: 1em;
}
.c-dialog-booking #check-in-date-label {
  margin-top: 1.4em;
}
.c-dialog-booking .datepicker {
  background: url("../images/icon-calendar.svg") no-repeat center right 10px #fff;
  background-size: auto 23px;
}
.c-dialog-booking .guests {
  background: url("../images/icon-add-guests.svg") no-repeat center right 10px #fff;
  background-size: auto 23px;
}
.c-dialog-booking input {
  border-color: #fff;
  font-family: "Lato", Helvetica, Arial, sans-serif;
  font-size: 16px;
  min-height: 53px;
  margin-bottom: 20px;
  padding: 16px;
}
.c-dialog-booking input::-webkit-outer-spin-button, .c-dialog-booking input::-webkit-inner-spin-button {
  -webkit-appearance: none;
}
.c-dialog-booking input[type=number] {
  -moz-appearance: textfield;
}
.c-dialog-booking input[type=date] {
  padding: 11px 4px 11px 16px;
  position: relative;
  text-transform: uppercase;
  -webkit-appearance: none; /*-webkit-min-logical-width: 100%;*/
}
.c-dialog-booking input[type=date]:after {
  background: url(../images/icon-calendar.svg) no-repeat center right #fff;
  background-size: auto 23px;
  content: "";
  cursor: pointer;
  display: block;
  width: 25px;
  height: 23px;
  position: absolute;
  right: 10px;
  pointer-events: none;
}
.c-dialog-booking input[type=date]::-webkit-calendar-picker-indicator {
  opacity: 0;
  font-size: 1.2rem;
}
.c-dialog-booking input.promo, .c-dialog-booking input.promo::placeholder {
  border: 1px solid #fff;
  font-weight: bold;
}
.c-dialog-booking .validation-message {
  margin-top: 1em;
}
.c-dialog-booking .validation-message .message:not(.hidden) {
  display: block;
}
.c-dialog-booking .btn {
  border: 1px solid #fff;
  font-size: 12px;
  font-weight: 900;
  white-space: nowrap;
}
.c-dialog-booking .btn:after {
  content: "›";
  content: "›"/"";
  display: inline-block;
  font-family: "brandon-grotesque", sans-serif;
  font-size: 19px;
  font-weight: 700;
  margin-top: 2px;
  padding-left: 4px;
  line-height: 8px;
  vertical-align: middle;
}
.c-dialog-booking .btn:hover {
  border: 1px solid #eaaa21;
}
.c-dialog-booking .btn:focus-visible {
  outline-color: #eaaa21;
}
@media (min-width: 768px) {
  .c-dialog-booking {
    padding-left: 20px;
    padding-right: 20px;
  }
}
@media (min-width: 768px) and (min-width: 768px) {
  .c-dialog-booking {
    padding-left: 35px;
    padding-right: 35px;
  }
}
@media (min-width: 768px) and (min-width: 1024px) {
  .c-dialog-booking {
    padding-left: 50px;
    padding-right: 50px;
  }
}
@media (min-width: 768px) and (min-width: 1280px) {
  .c-dialog-booking {
    padding-left: 60px;
    padding-right: 60px;
  }
}
@media (min-width: 768px) {
  .c-dialog-booking form {
    margin: 0 auto;
    max-width: 800px;
  }
}

.c-dialog-promotion {
  background: rgba(0, 0, 0, 0.44);
  display: block;
  position: fixed;
  top: 0;
  bottom: 0;
  height: 100%;
  width: 100%;
  z-index: 50;
}
.c-dialog-promotion .promotion-container {
  background-position: top center;
  background-size: cover;
  border-radius: 14px;
  box-shadow: 7px 7px 5px rgba(0, 0, 0, 0.3);
  margin: 0 auto;
  margin-top: 60px;
  max-width: 500px;
  padding: 60px 50px 50px 50px;
  text-align: center;
}
.c-dialog-promotion .promotion-container.bg-yellow, .c-dialog-promotion .promotion-container.bg-greenLight, .c-dialog-promotion .promotion-container.bg-greenMed, .c-dialog-promotion .promotion-container.bg-orange {
  color: #1e1e1e;
}
.c-dialog-promotion .promotion-container.bg-yellow h2, .c-dialog-promotion .promotion-container.bg-greenLight h2, .c-dialog-promotion .promotion-container.bg-greenMed h2, .c-dialog-promotion .promotion-container.bg-orange h2 {
  color: #222d65;
}
.c-dialog-promotion .promotion-container.bg-blue, .c-dialog-promotion .promotion-container.bg-red {
  color: #fff;
}
.c-dialog-promotion .promotion-container.bg-blue h2, .c-dialog-promotion .promotion-container.bg-red h2 {
  color: #fff;
}
.c-dialog-promotion .promotion-container .btn-close {
  background: none;
  padding: 15px 15px;
  position: absolute;
  right: 0;
  top: 0;
}
.c-dialog-promotion .promotion-container .btn-close:hover {
  box-shadow: none;
}
.c-dialog-promotion .promotion-container p {
  margin-bottom: 1.5em;
}
@media (min-width: 768px) {
  .c-dialog-promotion .promotion-container {
    margin-top: 130px;
    padding: 40px 90px 30px 90px;
  }
}
@media (min-width: 1280px) {
  .c-dialog-promotion .promotion-container {
    margin-top: 180px;
    max-width: 623px;
    padding: 40px 115px 30px 115px;
  }
}
@media (min-width: 1400px) {
  .c-dialog-promotion .promotion-container {
    margin-top: 180px;
    max-width: 623px;
    padding: 40px 80px 30px 80px;
  }
}

.btn-callout-widget-modal-container {
  position: absolute;
  left: 53px;
  top: 340px;
  z-index: 3;
  width: 160px;
  text-align: center;
  transform-origin: bottom left;
  transform: rotate(-90deg);
  -moz-transform: rotate(-90deg);
  -ms-transform: rotate(-90deg);
  -o-transform: rotate(-90deg);
  -webkit-transform: rotate(-90deg);
}
.btn-callout-widget-modal-container.fixed {
  position: fixed;
}
.btn-callout-widget-modal-container .btn-callout-widget-modal {
  border-radius: 0 0 7px 7px;
  height: 50px;
  padding-left: 33px;
}
.btn-callout-widget-modal-container .btn-callout-widget-modal img {
  transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -o-transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  position: relative;
  top: -21px;
}
.btn-callout-widget-modal-container .btn-callout-widget-modal::after {
  content: "";
}
.btn-callout-widget-modal-container .button-tab-background {
  background: #aa1e2e;
  width: 100%;
  height: 10px;
  position: absolute;
  top: -3px;
  z-index: -1;
  border-radius: 0 0 10px 10px;
}
@media (min-width: 768px) {
  .btn-callout-widget-modal-container {
    display: none;
  }
}

.c-callout-widget-modal {
  height: 100%;
  width: 100%;
  padding: 60px 40px 40px 40px;
  text-align: center;
  background-size: cover;
}
.c-callout-widget-modal .content-wrapper {
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
}
.c-callout-widget-modal .copy-container {
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
}
.c-callout-widget-modal.bg-yellow, .c-callout-widget-modal.bg-greenLight, .c-callout-widget-modal.bg-greenMed, .c-callout-widget-modal.bg-orange {
  color: #1e1e1e;
}
.c-callout-widget-modal.bg-yellow h2, .c-callout-widget-modal.bg-greenLight h2, .c-callout-widget-modal.bg-greenMed h2, .c-callout-widget-modal.bg-orange h2 {
  color: #222d65;
}
.c-callout-widget-modal.bg-blue, .c-callout-widget-modal.bg-red {
  color: #fff;
}
.c-callout-widget-modal.bg-blue h2, .c-callout-widget-modal.bg-red h2 {
  color: #fff;
}
.c-callout-widget-modal .btn-close {
  background: none;
  margin: 15px 15px;
  padding: 3px;
  position: absolute;
  right: 0;
  top: 0;
}
.c-callout-widget-modal .btn-close:hover {
  box-shadow: none;
}
.c-callout-widget-modal.bg-black::backdrop {
  background-color: #1e1e1e;
}
.c-callout-widget-modal.bg-greyDark::backdrop {
  background-color: #2d2d2d;
}
.c-callout-widget-modal.bg-tan::backdrop {
  background-color: #968b83;
}
.c-callout-widget-modal.bg-tanMed::backdrop {
  background-color: #cbc3bb;
}
.c-callout-widget-modal.bg-tanLight::backdrop {
  background-color: #edeae7;
}
.c-callout-widget-modal.bg-blue::backdrop {
  background-color: #2567b3;
}
.c-callout-widget-modal.bg-blueAlt::backdrop {
  background-color: #1a5698;
}
.c-callout-widget-modal.bg-blueDark::backdrop {
  background-color: #222d65;
}
.c-callout-widget-modal.bg-blueLight::backdrop {
  background-color: #99bed5;
}
.c-callout-widget-modal.bg-blueWhite::backdrop {
  background-color: #dce6e2;
}
.c-callout-widget-modal.bg-yellow::backdrop {
  background-color: #eaaa21;
}
.c-callout-widget-modal.bg-orange::backdrop {
  background-color: #ef8b22;
}
.c-callout-widget-modal.bg-red::backdrop {
  background-color: #aa1e2e;
}
.c-callout-widget-modal.bg-green::backdrop {
  background-color: #00818A;
}
.c-callout-widget-modal.bg-greenMed::backdrop {
  background-color: #6abeb8;
}
.c-callout-widget-modal.bg-greenLight::backdrop {
  background-color: #9dd6dd;
}
.c-callout-widget-modal p {
  margin-bottom: 1.5em;
}
@media (min-width: 768px) {
  .c-callout-widget-modal {
    display: none;
  }
}

.c-callout-widget-dialog {
  display: none;
  position: fixed;
  bottom: 0;
  z-index: 50;
  width: 100%;
}
.c-callout-widget-dialog .btn-callout-widget-dialog {
  display: block;
  margin: auto;
  border-radius: 7px 7px 0 0;
}
.c-callout-widget-dialog .btn-callout-widget-dialog::after {
  margin-left: 8px;
  padding-left: unset;
  transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -o-transform: rotate(90deg);
}
.c-callout-widget-dialog .btn-callout-widget-dialog.closed::after {
  transform: rotate(-90deg);
  -webkit-transform: rotate(-90deg);
  -moz-transform: rotate(-90deg);
  -ms-transform: rotate(-90deg);
  -o-transform: rotate(-90deg);
}
.c-callout-widget-dialog .callout-container {
  background-position: top center;
  background-size: cover;
  border-radius: 14px 14px 0 0;
  box-shadow: 7px 7px 5px rgba(0, 0, 0, 0.3);
  margin: 0 auto;
  text-align: center;
  max-width: 500px;
  overflow: hidden;
  height: auto;
  transition: all 0.65s ease-in-out;
  display: none;
}
.c-callout-widget-dialog .callout-container .copy-container {
  margin-top: 1rem;
  margin-bottom: 1rem;
}
.c-callout-widget-dialog .callout-container.closed {
  padding-top: 0;
  padding-bottom: 0;
}
.c-callout-widget-dialog .callout-container.bg-yellow, .c-callout-widget-dialog .callout-container.bg-greenLight, .c-callout-widget-dialog .callout-container.bg-greenMed, .c-callout-widget-dialog .callout-container.bg-orange {
  color: #1e1e1e;
}
.c-callout-widget-dialog .callout-container.bg-yellow h2, .c-callout-widget-dialog .callout-container.bg-greenLight h2, .c-callout-widget-dialog .callout-container.bg-greenMed h2, .c-callout-widget-dialog .callout-container.bg-orange h2 {
  color: #222d65;
}
.c-callout-widget-dialog .callout-container.bg-blue, .c-callout-widget-dialog .callout-container.bg-red {
  color: #fff;
}
.c-callout-widget-dialog .callout-container.bg-blue h2, .c-callout-widget-dialog .callout-container.bg-red h2 {
  color: #fff;
}
.c-callout-widget-dialog .callout-container .btn-close {
  background: none;
  padding: 15px 15px;
  position: absolute;
  right: 0;
  top: 0;
}
.c-callout-widget-dialog .callout-container .btn-close:hover {
  box-shadow: none;
}
.c-callout-widget-dialog .callout-container p {
  margin-bottom: 1.5em;
}
@media (min-width: 768px) {
  .c-callout-widget-dialog {
    display: block;
  }
  .c-callout-widget-dialog .callout-container {
    padding: 30px 40px 30px 40px;
  }
}
@media (min-width: 1280px) {
  .c-callout-widget-dialog .callout-container {
    padding: 40px 55px 30px 55px;
  }
}

.c-booking-bar {
  background: linear-gradient(90deg, rgb(37, 103, 179) 33%, rgb(106, 190, 184) 84%);
  color: #fff;
  font-family: "Lato", Helvetica, Arial, sans-serif;
  padding-top: 15px;
  padding-bottom: 15px;
  position: sticky;
  top: 0;
  z-index: 5;
}
.c-booking-bar.takeover {
  background: #6f2877;
  color: #ffffff;
}
.c-booking-bar.takeover .btn,
.c-booking-bar.takeover .booking-desktop button[type=submit].btn.btn-primary {
  background-color: #aa1e2e;
}
.c-booking-bar.takeover .btn:hover,
.c-booking-bar.takeover .booking-desktop button[type=submit].btn.btn-primary:hover {
  border-color: #fff;
  background-color: rgb(126.65, 22.35, 34.27);
}
.c-booking-bar .submit-button,
.c-booking-bar .btn-book {
  border: 1px solid #fff;
  font-weight: 900;
  margin-bottom: 0;
}
.c-booking-bar .submit-button:after,
.c-booking-bar .btn-book:after {
  content: "›";
  content: "›"/"";
  display: inline-block;
  font-family: "brandon-grotesque", sans-serif;
  font-size: 22px;
  font-weight: 700;
  margin-top: 3px;
  padding-left: 5px;
  line-height: 8px;
  vertical-align: middle;
}
.c-booking-bar .booking-desktop {
  display: none;
}
.c-booking-bar .datepicker {
  background: url("../images/icon-calendar.svg") no-repeat center right 10px #fff;
  background-size: auto 18px;
}
.c-booking-bar .guests {
  background: url("../images/icon-add-guests.svg") no-repeat center right 10px #fff;
  background-size: auto 18px;
  border: 1px solid #fff;
  border-radius: 0;
  color: #666;
  font-weight: normal;
  padding: 12px 40px 12px 12px;
  text-transform: none;
}
.c-booking-bar .duet-date {
  background: #fff;
  margin-bottom: 0;
}
.c-booking-bar .duet-date .duet-date__input {
  color: #666;
  font-weight: bold;
}
.c-booking-bar .duet-date .duet-date__toggle {
  box-shadow: none;
  color: #aa1e2e;
}
.c-booking-bar .duet-date .duet-date__toggle:hover {
  background: #fff;
  box-shadow: none;
}
.c-booking-bar .duet-date table th,
.c-booking-bar .duet-date table td {
  padding: 0;
}
.c-booking-bar .validation-message {
  padding: 10px;
  background-color: #aa1e2e;
  border-radius: 5px;
  margin-left: 10px;
  border: 1px solid #ffffff;
}
.c-booking-bar .validation-message .message:not(.hidden) {
  display: block;
  margin-top: 5px;
}
.c-booking-bar .validation-message .message:not(.hidden):first-child,
.c-booking-bar .validation-message .message.hidden + .message:not(.hidden) {
  margin-top: unset;
}
@media (max-width: 767px) {
  .c-booking-bar {
    text-align: center;
    text-transform: uppercase;
  }
}
@media (min-width: 768px) {
  .c-booking-bar .btn-book {
    display: none;
  }
  .c-booking-bar .booking-desktop {
    align-items: center;
    display: flex;
    gap: 9px;
    justify-content: center;
    flex-flow: column nowrap;
  }
  .c-booking-bar .booking-desktop .input-wrapper {
    display: flex;
    gap: 9px;
    justify-content: center;
    flex-flow: row nowrap;
    align-items: center;
  }
  .c-booking-bar .booking-desktop h2,
  .c-booking-bar .booking-desktop .h2 {
    color: #fff;
    font-family: "brandon-grotesque", sans-serif;
    font-size: 15px;
    margin-bottom: 0;
    padding-right: 10px;
    text-align: center;
  }
}
@media (min-width: 768px) and (max-width: 900px) {
  .c-booking-bar .booking-desktop h2,
  .c-booking-bar .booking-desktop .h2 {
    display: none;
  }
}
@media (min-width: 768px) {
  .c-booking-bar .booking-desktop label {
    position: absolute;
    visibility: hidden;
  }
  .c-booking-bar .booking-desktop input {
    border-color: #fff;
    font-family: "Lato", Helvetica, Arial, sans-serif;
    font-size: 12px;
    margin-bottom: 0;
    padding: 12px;
  }
  .c-booking-bar .booking-desktop input::-webkit-outer-spin-button, .c-booking-bar .booking-desktop input::-webkit-inner-spin-button {
    -webkit-appearance: none;
  }
  .c-booking-bar .booking-desktop input[type=number] {
    -moz-appearance: textfield;
  }
  .c-booking-bar .booking-desktop input.promo, .c-booking-bar .booking-desktop input.promo::placeholder {
    border: 1px solid #fff;
    font-weight: bold;
    color: #666;
    max-width: 130px;
  }
  .c-booking-bar .booking-desktop .date-placeholder {
    display: inline-block;
    min-width: 160px;
    min-height: 41px;
  }
  .c-booking-bar .booking-desktop .date-placeholder:before {
    content: attr(data-placeholder);
    color: #666;
    font-size: 12px;
    font-weight: bold;
    min-width: 100px;
    pointer-events: none;
    position: absolute;
    top: 12px;
    left: 12px;
    background: #fff;
    z-index: 1;
  }
  .c-booking-bar .booking-desktop .date-placeholder:focus-within:before, .c-booking-bar .booking-desktop .date-placeholder.not_empty:before {
    content: "";
  }
  .c-booking-bar .booking-desktop .date-placeholder::-webkit-calendar-picker-indicator {
    opacity: 0;
    font-size: 1.2rem;
  }
  .c-booking-bar .booking-desktop #guests-btn {
    font-family: "Lato", Helvetica, Arial, sans-serif;
    font-size: 12px;
    font-weight: bold;
    min-height: 41px;
    width: 153px;
    text-align: left;
    white-space: nowrap;
  }
  .c-booking-bar .booking-desktop #guests-btn.small-text {
    font-size: 0.7em;
  }
  .c-booking-bar .booking-desktop #guests-btn:hover:not(.disabled) {
    background-color: #fff;
    box-shadow: none;
    color: #666;
  }
  .c-booking-bar .booking-desktop #guests-dialog {
    background: #edeae7;
    border: 1px solid #222d65;
    box-shadow: 4px 4px 2.4px rgba(0, 0, 0, 0.25);
    display: none;
    position: absolute;
    left: auto;
    right: 0;
    margin-top: 15px;
    padding: 12px;
    width: 234px;
  }
  .c-booking-bar .booking-desktop #guests-dialog .guests-grid {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 10px 16px;
    align-items: center;
  }
  .c-booking-bar .booking-desktop #guests-dialog label {
    display: block;
    color: #1e1e1e;
    font-family: "brandon-grotesque", sans-serif;
    font-size: 13px;
    margin-bottom: 0;
    padding-left: 10px;
    position: static;
    visibility: visible;
  }
  .c-booking-bar .booking-desktop #guests-dialog input {
    border-color: #222d65;
    padding: 6px 4px;
    text-align: center;
    height: 28px;
    width: 34px;
    vertical-align: top;
  }
  .c-booking-bar .booking-desktop #guests-dialog button {
    border-radius: 0;
    padding: 6px 10px;
  }
  .c-booking-bar .booking-desktop #guests-dialog button:hover {
    box-shadow: none;
  }
  .c-booking-bar .booking-desktop #guests-dialog p {
    color: rgb(55.5, 55.5, 55.5);
    font-size: 12px;
    margin: 10px 0 0 0;
    text-align: center;
  }
  .c-booking-bar .booking-desktop #guests-dialog:before {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border-left: 12px solid transparent;
    border-right: 12px solid transparent;
    border-bottom: 12px solid #edeae7;
    position: absolute;
    right: 25%;
    margin-top: -24px;
  }
  .c-booking-bar .booking-desktop .btn {
    border: 1px solid #fff;
    font-size: 12px;
    font-weight: 900;
    white-space: nowrap;
  }
  .c-booking-bar .booking-desktop .btn:after {
    content: "›";
    content: "›"/"";
    display: inline-block;
    font-family: "brandon-grotesque", sans-serif;
    font-size: 19px;
    font-weight: 700;
    margin-top: 3px;
    padding-left: 4px;
    line-height: 8px;
    vertical-align: middle;
  }
  .c-booking-bar .booking-desktop button[type=submit] {
    background-color: #aa1e2e;
    margin-top: 0;
  }
  .c-booking-bar .booking-desktop button[type=submit]:hover {
    background-color: #035089;
  }
}
@media (min-width: 1280px) {
  .c-booking-bar .booking-desktop h2,
  .c-booking-bar .booking-desktop .h2 {
    font-size: 18px;
  }
  .c-booking-bar .booking-desktop input {
    font-size: 14px;
    padding: 17px;
  }
  .c-booking-bar .booking-desktop input[type=date] {
    padding: 12px 4px 12px 18px;
  }
  .c-booking-bar .booking-desktop .datepicker,
  .c-booking-bar .booking-desktop .guests {
    background-size: auto 24px;
  }
  .c-booking-bar .booking-desktop .date-placeholder {
    min-height: 53px;
    min-width: 183px;
  }
  .c-booking-bar .booking-desktop .date-placeholder:before {
    font-size: 14px;
    top: 18px;
    left: 18px;
  }
  .c-booking-bar .booking-desktop #guests-btn {
    font-size: 14px;
    min-height: 53px;
    width: 186px;
    padding: 17px 52px 17px 17px;
  }
  .c-booking-bar .booking-desktop #guests-dialog {
    padding: 15px 12px;
    margin-top: 15px;
    width: 285px;
  }
  .c-booking-bar .booking-desktop #guests-dialog label {
    font-size: 16px;
  }
  .c-booking-bar .booking-desktop #guests-dialog input {
    font-size: 17px;
    height: 35px;
    width: 40px;
  }
  .c-booking-bar .booking-desktop #guests-dialog button {
    font-size: 17px;
    padding: 7px 14px;
  }
  .c-booking-bar .booking-desktop #guests-dialog p {
    font-size: 14px;
  }
  .c-booking-bar .booking-desktop .btn {
    font-size: 15px;
    margin-left: 5px;
    padding: 15px 30px;
    padding-right: 38px;
  }
  .c-booking-bar .booking-desktop .btn:after {
    font-size: 24px;
    margin-top: 5px;
  }
}

#page-main .c-booking-bar {
  overflow: unset;
}

#ui-datepicker-div {
  z-index: 5 !important;
}

.booking-bar-takeover-image {
  position: absolute;
  width: 80px;
  z-index: 4;
  right: 10px;
  top: 132px;
}
@media (min-width: 768px) {
  .booking-bar-takeover-image {
    width: 100px;
    left: 240px;
    top: 145px;
    right: unset;
  }
}
@media (min-width: 1028px) {
  .booking-bar-takeover-image {
    width: 130px;
    left: 300px;
    top: 161px;
  }
}
@media (min-width: 1280px) {
  .booking-bar-takeover-image {
    width: 150px;
    left: 400px;
    top: 196px;
  }
}

.c-call-to-action-bar {
  background-color: #eaaa21;
  color: #ffffff;
  font-family: "Lato", Helvetica, Arial, sans-serif;
  padding-top: 24px;
  padding-bottom: 24px;
  position: sticky;
  top: 0;
  z-index: 5;
}
.c-call-to-action-bar :focus-visible {
  outline: 4px dashed #1e1e1e;
  outline-offset: 2px;
}
@media (min-width: 768px) {
  .c-call-to-action-bar .bar-text {
    align-items: center;
    display: flex;
    gap: 9px;
    justify-content: center;
  }
  .c-call-to-action-bar .bar-text h2, .c-call-to-action-bar .bar-text .h2 {
    color: #1e1e1e;
    font-family: "Lato", Helvetica, Arial, sans-serif;
    font-size: 15px;
    margin-bottom: 0;
    padding-right: 10px;
    white-space: nowrap;
  }
}
@media (min-width: 1024px) {
  .c-call-to-action-bar.hide-desktop {
    display: none;
  }
}
@media (min-width: 1280px) {
  .c-call-to-action-bar .bar-text h2, .c-call-to-action-bar .bar-text .h2 {
    font-size: 18px;
  }
  .c-call-to-action-bar .bar-text .btn {
    font-size: 15px;
    margin-left: 5px;
    padding: 15px 30px;
    padding-right: 38px;
  }
  .c-call-to-action-bar .bar-text .btn:after {
    font-size: 24px;
    margin-top: 5px;
  }
}

#footer {
  background: #6f2877;
  color: #ffffff;
  overflow: hidden;
  text-align: center;
}
#footer .col-section {
  justify-content: center;
}
#footer .footer-logo {
  margin-bottom: 30px;
}
#footer a {
  color: #ffffff;
  text-decoration: none;
}
#footer ul.copyright {
  padding-right: 64px;
  font-size: 11px;
  margin-bottom: 0;
  text-align: left;
}
#footer ul.copyright li {
  display: inline;
  line-height: 2.6;
}
#footer ul.copyright li.left-divider {
  border-left: 1px solid #ffffff;
  margin-left: 5px;
  padding-left: 5px;
}
#footer ul.copyright li.hidden {
  display: none;
}
#footer ul.copyright a.link-line {
  font-weight: unset;
}
#footer ul.copyright a.link-line::before {
  background: #ffffff;
  height: 1px;
  bottom: -2px;
}
#footer .social-icons li {
  display: inline-block;
  padding: 4px;
}
#footer .social-icons li .tiktok {
  background: url("/images/icon-social-circle.svg") no-repeat center;
  display: inline-block;
}
#footer nav {
  border-top: 2px solid #222d65;
  margin-bottom: 30px;
  padding-top: 15px;
  text-align: left;
}
#footer nav li {
  margin-bottom: 0.7em;
}
#footer nav.footer-nav-primary, #footer nav.footer-nav-secondary {
  column-count: 2;
  gap: 20px;
}
#footer nav.footer-nav-primary {
  font-weight: bold;
}
#footer .btn-cookie-setting {
  border-radius: 0;
  padding: 8px 15px;
  margin-left: 10px;
}
#footer .btn-cookie-setting:focus-visible {
  outline: 4px dashed #ffffff;
  outline-offset: 2px;
}
@media (min-width: 768px) {
  #footer {
    padding-bottom: 50px;
  }
  #footer nav.footer-nav-primary {
    column-count: 1;
  }
}
@media (min-width: 1024px) {
  #footer .footer-logo {
    height: 147px;
    width: auto;
  }
  #footer nav {
    margin-top: 20px;
  }
}
@media (min-width: 1280px) {
  #footer {
    padding-bottom: 65px;
  }
  #footer .footer-logo {
    height: 184px;
  }
  #footer ul.copyright {
    font-size: 13px;
  }
}

/* BLOCK COMPONENTS */
.c-cookie-preferences {
  padding: 20px 21px;
}
.c-cookie-preferences .btn-cookie-setting {
  margin-top: 20px;
}
@media (min-width: 768px) {
  .c-cookie-preferences .btn-cookie-setting {
    margin-left: 20px;
    margin-top: 0;
  }
}

/* HEADER */
.c-header-home {
  text-align: center;
}
.c-header-home .logo {
  background: #6f2877;
  display: inline-block;
  margin: 0 auto;
  padding: 25px 35px;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
}
.c-header-home .home-link {
  color: #fff;
  font-family: "Lato", Helvetica, Arial, sans-serif;
  font-size: 13px;
  font-weight: 700;
  position: absolute;
  right: 15px;
  top: 15px;
  text-decoration: none;
  text-transform: uppercase;
  width: 58px;
  z-index: 1;
}
@media (min-width: 768px) {
  .c-header-home .home-link {
    width: auto;
  }
}
@media (min-width: 1024px) {
  .c-header-home .logo img {
    width: 128px;
    height: auto;
  }
}
@media (min-width: 1280px) {
  .c-header-home .logo {
    padding: 35px 50px;
  }
  .c-header-home .logo img {
    width: 160px;
  }
  .c-header-home .home-link {
    font-size: 16px;
  }
}

.c-home-content {
  display: none;
}
@media (min-width: 768px) {
  .c-home-content {
    display: block;
  }
  .c-home-content p {
    font-family: "acme", Helvetica, Arial, sans-serif;
    font-size: 17px;
    font-weight: 400;
  }
}
@media (min-width: 1024px) {
  .c-home-content p {
    padding-left: 60px;
    padding-right: 60px;
  }
}
@media (min-width: 1280px) {
  .c-home-content p {
    font-size: 21px;
    padding-left: 75px;
    padding-right: 75px;
  }
}

.c-home-locations .home-location {
  border-bottom: 1px solid #edeae7;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  gap: 30px;
  padding: 30px 0;
}
.c-home-locations .home-location:first-of-type {
  border-top: 1px solid #edeae7;
}
.c-home-locations .home-location .image-wrapper {
  background: #edeae7;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  width: 110px;
  height: 110px;
}
.c-home-locations .home-location .image-wrapper img {
  width: calc(100% - 30px);
}
.c-home-locations .home-location .content-container {
  flex-grow: 1;
}
.c-home-locations .home-location .content-container h2 {
  font-family: "brandon-grotesque", sans-serif;
  margin-top: 15px;
  margin-bottom: 0.3em;
}
.c-home-locations .home-location .content-container p {
  margin-bottom: 0;
}
.c-home-locations .home-location .btn-container {
  min-width: 240px;
}
.c-home-locations .home-location .btn-container .btn {
  text-align: center;
  white-space: nowrap;
  width: 100%;
}
@media (min-width: 1280px) {
  .c-home-locations .home-location {
    gap: 45px;
    padding: 40px 50px;
  }
  .c-home-locations .home-location .image-wrapper {
    width: 140px;
    height: 140px;
  }
  .c-home-locations .home-location .btn-container {
    min-width: 270px;
  }
}

.c-site-home-page-banner {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  color: #fff;
  font-weight: 900;
  min-height: 395px;
  text-align: center;
}
.c-site-home-page-banner .text-wrapper {
  background-image: linear-gradient(0deg, rgba(0, 0, 0, 0.38) 70%, transparent);
  position: absolute;
  bottom: 0;
  width: 100%;
}
.c-site-home-page-banner h1 {
  color: #fff;
  font-weight: 800;
  margin: 0 auto;
  padding-top: 20px;
  padding-bottom: 12px;
  text-shadow: 4px 4px 4px rgba(0, 0, 0, 0.25);
  width: 250px;
}
.c-site-home-page-banner p {
  font-family: "acme", Helvetica, Arial, sans-serif;
  font-weight: 500;
  font-size: 16px;
  margin-bottom: 10px;
}
.c-site-home-page-banner a {
  display: none;
}
@media (min-width: 768px) {
  .c-site-home-page-banner {
    min-height: 465px;
  }
  .c-site-home-page-banner h1 {
    width: auto;
  }
  .c-site-home-page-banner p {
    display: none;
  }
  .c-site-home-page-banner a {
    display: inline-block;
    margin-bottom: 30px;
  }
}
@media (min-width: 1024px) {
  .c-site-home-page-banner {
    min-height: 620px;
  }
}
@media (min-width: 1280px) {
  .c-site-home-page-banner {
    min-height: 775px;
  }
  .c-site-home-page-banner h1 {
    padding-top: 45px;
    padding-bottom: 5px;
  }
  .c-site-home-page-banner a {
    margin-bottom: 40px;
  }
}
@media (min-width: 1700px) {
  .c-site-home-page-banner {
    min-height: 1030px;
  }
}

.c-video-hero {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  color: #fff;
  height: 295px;
  overflow: hidden;
  text-align: center;
}
.c-video-hero .text-wrapper {
  background-image: linear-gradient(rgba(0, 0, 0, 0.35) 80%, transparent);
  position: absolute;
  width: 100%;
  padding-top: 20px;
  padding-bottom: 20px;
}
.c-video-hero .text-wrapper a {
  margin-top: 10px;
}
.c-video-hero h1 {
  color: #fff;
  font-weight: 800;
  margin-bottom: 0;
  text-shadow: 4px 4px 4px rgba(0, 0, 0, 0.25);
}
.c-video-hero video,
.c-video-hero .video-controls {
  display: none;
}
@media (min-width: 768px) {
  .c-video-hero {
    height: 372px;
  }
  .c-video-hero :focus-visible {
    outline: 4px solid #eaaa21;
    outline-offset: 2px;
  }
  .c-video-hero .text-wrapper {
    background-image: linear-gradient(0deg, rgba(0, 0, 0, 0.38) 70%, transparent);
    padding-top: 30px;
    padding-bottom: 30px;
    bottom: 0;
    z-index: 2;
  }
  .c-video-hero .text-wrapper .desktop-text-alignment-left {
    text-align: left;
  }
  .c-video-hero .text-wrapper .desktop-text-alignment-center {
    text-align: center;
  }
  .c-video-hero .text-wrapper .desktop-text-alignment-right {
    text-align: right;
  }
  .c-video-hero video,
  .c-video-hero .video-controls {
    display: block;
  }
  .c-video-hero .video-controls {
    position: absolute;
    right: 20px;
    top: 20px;
  }
  .c-video-hero .video-controls button {
    background: url("../images/pause-button.svg") no-repeat;
    background-size: 31px 31px;
    border-radius: 50px;
    padding: 0;
    text-indent: -9999px;
    width: 31px;
    height: 31px;
  }
  .c-video-hero .video-controls button:focus-visible {
    border: 1px solid #1e1e1e;
    outline-offset: 0;
    background-size: cover;
    background-position: center;
  }
  .c-video-hero .video-controls button.video-play {
    background-image: url("../images/play-button.svg");
  }
}
@media (min-width: 1024px) {
  .c-video-hero {
    height: 446px;
  }
  .c-video-hero h1 {
    font-size: 40px;
  }
}
@media (min-width: 1150px) {
  .c-video-hero {
    height: 520px;
  }
  .c-video-hero .text-wrapper {
    padding-top: 45px;
    padding-bottom: 45px;
  }
  .c-video-hero .text-wrapper a {
    margin-top: 15px;
  }
  .c-video-hero h1 {
    font-size: 50px;
  }
}
@media (min-width: 1450px) {
  .c-video-hero {
    height: 620px;
  }
  .c-video-hero h1 {
    font-size: 50px;
  }
  .c-video-hero .text-wrapper a {
    margin-top: 20px;
  }
}
@media (min-width: 1600px) {
  .c-video-hero {
    height: 820px;
  }
  .c-video-hero h1 {
    font-size: 56px;
  }
}

.c-hero-image-carousel__image {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  color: #fff;
  font-weight: 900;
  height: 275px;
  overflow: hidden;
  text-align: center;
}
@media (min-width: 768px) {
  .c-hero-image-carousel__image {
    height: 312px;
  }
}
@media (min-width: 1024px) {
  .c-hero-image-carousel__image {
    height: 416px;
  }
}
@media (min-width: 1280px) {
  .c-hero-image-carousel__image {
    height: 520px;
  }
}
@media (min-width: 1700px) {
  .c-hero-image-carousel__image {
    height: 690px;
  }
}
@media (min-width: 768px) {
  .c-hero-image-carousel .medium-height .c-hero-image-carousel__image {
    height: 207px;
  }
}
@media (min-width: 1024px) {
  .c-hero-image-carousel .medium-height .c-hero-image-carousel__image {
    height: 277px;
  }
}
@media (min-width: 1280px) {
  .c-hero-image-carousel .medium-height .c-hero-image-carousel__image {
    height: 346px;
  }
}
@media (min-width: 1700px) {
  .c-hero-image-carousel .medium-height .c-hero-image-carousel__image {
    height: 460px;
  }
}

.c-download-image img {
  border-radius: 8px;
}
.c-download-image .content {
  padding-top: 10px;
}

.download-image--dark-background .c-download-image img {
  background-color: #888;
}

.c-image-storytelling-blade {
  padding-top: 40px;
  padding-bottom: 40px;
  text-align: center;
}
@media (min-width: 768px) {
  .c-image-storytelling-blade {
    padding-top: 65px;
    padding-bottom: 65px;
  }
}
@media (min-width: 1024px) {
  .c-image-storytelling-blade {
    padding-top: 75px;
    padding-bottom: 75px;
  }
}
@media (min-width: 1280px) {
  .c-image-storytelling-blade {
    padding-top: 95px;
    padding-bottom: 95px;
  }
}
.c-image-storytelling-blade .col-section {
  align-items: center;
}
.c-image-storytelling-blade img {
  border-radius: 8px;
}
.c-image-storytelling-blade h2 {
  color: #aa1e2e;
}
.c-image-storytelling-blade p,
.c-image-storytelling-blade li {
  font-family: "acme", Helvetica, Arial, sans-serif;
}
.c-image-storytelling-blade .btn {
  margin-top: 1.3em;
}
@media (min-width: 768px) {
  .c-image-storytelling-blade .position-image-right .col-sm-6:nth-of-type(1) {
    order: 2;
  }
  .c-image-storytelling-blade .position-image-right .col-sm-6:nth-of-type(2) {
    order: 1;
  }
}
@media (min-width: 1400px) {
  .c-image-storytelling-blade .large-body {
    font-size: 25px;
  }
}

.c-icon-header .image-wrapper {
  display: none;
}
@media (min-width: 768px) {
  .c-icon-header {
    align-items: center;
    display: flex;
    gap: 10px;
    margin-bottom: 1em;
  }
  .c-icon-header .image-wrapper {
    background: #edeae7;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-right: 10px;
    width: 98px;
    height: 98px;
  }
  .c-icon-header .image-wrapper img {
    width: calc(100% - 30px);
  }
  .c-icon-header h1,
  .c-icon-header h2 {
    margin-bottom: 0;
  }
}

.c-icon-list-blade {
  padding-top: 30px;
  padding-bottom: 30px;
  background: #edeae7;
  color: #aa1e2e;
  text-align: center;
}
@media (min-width: 768px) {
  .c-icon-list-blade {
    padding-top: 50px;
    padding-bottom: 50px;
  }
}
@media (min-width: 1024px) {
  .c-icon-list-blade {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}
@media (min-width: 1280px) {
  .c-icon-list-blade {
    padding-top: 75px;
    padding-bottom: 75px;
  }
}
.c-icon-list-blade .icon-list-wrapper {
  padding: 40px;
}
.c-icon-list-blade h2 {
  margin-bottom: 1em;
}
.c-icon-list-blade .col-section {
  justify-content: center;
}
.c-icon-list-blade .image-wrapper {
  background: #fff;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  margin-bottom: 1.5em;
  width: 110px;
  height: 110px;
}
.c-icon-list-blade .image-wrapper img {
  width: calc(100% - 30px);
}
.c-icon-list-blade h3 {
  font-family: "brandon-grotesque", sans-serif;
  font-size: 15px;
  font-weight: 900;
  line-height: 1.2;
}
.c-icon-list-blade p {
  display: none;
}
.c-icon-list-blade a {
  text-decoration: none;
  color: #aa1e2e;
}
.c-icon-list-blade a:hover {
  text-decoration: underline;
}
@media (max-width: 1023px) {
  .c-icon-list-blade {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}
@media (min-width: 768px) {
  .c-icon-list-blade .image-wrapper {
    width: 123px;
    height: 123px;
  }
  .c-icon-list-blade p {
    display: block;
  }
}
@media (min-width: 1280px) {
  .c-icon-list-blade .image-wrapper {
    width: 154px;
    height: 154px;
  }
  .c-icon-list-blade h3 {
    font-size: 17px;
  }
  .c-icon-list-blade p {
    font-size: 16px;
  }
}

.c-experience-items-carousel {
  padding-top: 40px;
  padding-bottom: 40px;
}
@media (min-width: 768px) {
  .c-experience-items-carousel {
    padding-top: 65px;
    padding-bottom: 65px;
  }
}
@media (min-width: 1024px) {
  .c-experience-items-carousel {
    padding-top: 75px;
    padding-bottom: 75px;
  }
}
@media (min-width: 1280px) {
  .c-experience-items-carousel {
    padding-top: 95px;
    padding-bottom: 95px;
  }
}
.c-experience-items-carousel h2 {
  color: #aa1e2e;
  margin-bottom: 1.3em;
  text-align: center;
}
.c-experience-items-carousel .experience-carousel-container {
  display: flex;
  margin-bottom: 20px;
  padding-left: 0 !important;
}
.c-experience-items-carousel .experience-carousel-container .card {
  border-radius: 15px;
  box-shadow: 5px 5px 6px rgba(0, 0, 0, 0.25);
  height: 100%;
  padding-bottom: 100px;
  text-align: center;
}
.c-experience-items-carousel .experience-carousel-container .card img {
  border-radius: 15px 15px 0 0;
  margin-bottom: 35px;
  width: 100%;
}
.c-experience-items-carousel .experience-carousel-container .card h3, .c-experience-items-carousel .experience-carousel-container .card p {
  margin-left: 30px;
  margin-right: 30px;
  text-align: left;
}
.c-experience-items-carousel .experience-carousel-container .card h3 {
  font-weight: 800;
}
.c-experience-items-carousel .experience-carousel-container .card .btn {
  color: #aa1e2e;
  margin: 5px 0 30px 0;
  position: absolute;
  left: 50%;
  bottom: 0;
  white-space: nowrap;
  transform: translateX(-50%);
}
.c-experience-items-carousel .experience-carousel-container .card-red {
  background-color: #aa1e2e;
  color: #fff;
}
.c-experience-items-carousel .experience-carousel-container .card-red h3 {
  color: #fff;
}
.c-experience-items-carousel .experience-carousel-container .card-green {
  background-color: #00818A;
  color: #fff;
}
.c-experience-items-carousel .experience-carousel-container .card-green h3 {
  color: #fff;
}
.c-experience-items-carousel .experience-carousel-container .card-green-medium {
  background-color: #6abeb8;
  color: #1e1e1e;
}
.c-experience-items-carousel .experience-carousel-container .card-green-medium h3 {
  color: #222d65;
}
.c-experience-items-carousel .experience-carousel-container .card-blue {
  background-color: #2567b3;
  color: #fff;
}
.c-experience-items-carousel .experience-carousel-container .card-blue h3 {
  color: #fff;
}
.c-experience-items-carousel .experience-carousel-container .card-blue-light {
  background-color: #99bed5;
  color: #1e1e1e;
}
.c-experience-items-carousel .experience-carousel-container .card-blue-light h3 {
  color: #222d65;
}
.c-experience-items-carousel .experience-carousel-container .card-yellow {
  background-color: #eaaa21;
  color: #1e1e1e;
}
.c-experience-items-carousel .experience-carousel-container .card-yellow h3 {
  color: #222d65;
}
.c-experience-items-carousel .experience-carousel-container .card-orange {
  background-color: #ef8b22;
  color: #1e1e1e;
}
.c-experience-items-carousel .experience-carousel-container .card-orange h3 {
  color: #222d65;
}
.c-experience-items-carousel .tns-controls {
  padding: 0 5px;
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -82px;
  pointer-events: none;
  width: 100%;
  z-index: 1;
}
.c-experience-items-carousel .tns-controls button {
  border-radius: 0;
  pointer-events: auto;
  height: 60px;
  width: 21px;
  background: url("../images/carousel-chevron-l.svg") no-repeat transparent center;
  background-size: auto 60px;
  text-indent: -9000px;
}
.c-experience-items-carousel .tns-controls button span {
  display: block;
  text-indent: -9999px;
}
.c-experience-items-carousel .tns-controls button:nth-of-type(2) {
  background-image: url("../images/carousel-chevron-r.svg");
  float: right;
}
.c-experience-items-carousel .tns-controls button.disabled {
  display: none;
}
.c-experience-items-carousel .tns-controls button:hover {
  box-shadow: none;
}
@media (min-width: 768px) {
  .c-experience-items-carousel .experience-carousel-container {
    padding-left: 30px;
  }
  .c-experience-items-carousel .tns-controls {
    margin-top: -100px;
  }
  .c-experience-items-carousel .tns-controls button {
    background-size: auto 80px;
    height: 80px;
    width: 25px;
  }
}
@media (min-width: 1024px) {
  .c-experience-items-carousel .experience-carousel-container {
    padding-left: 52px;
  }
  .c-experience-items-carousel .tns-controls {
    margin-top: -80px;
    padding: 0 15px;
  }
}
@media (min-width: 1280px) {
  .c-experience-items-carousel .experience-carousel-container {
    padding-left: 65px;
  }
  .c-experience-items-carousel .tns-controls {
    margin-top: -50px;
    padding: 0 20px;
  }
  .c-experience-items-carousel .tns-controls button {
    background-size: auto 96px;
    height: 96px;
    width: 30px;
  }
}
@media (min-width: 1468px) {
  .c-experience-items-carousel .experience-carousel-wrapper {
    max-width: 1376px;
    margin: 0 auto;
  }
  .c-experience-items-carousel .tns-controls {
    margin-left: -20px;
    padding: 0;
    width: calc(100% + 40px);
  }
  .c-experience-items-carousel .experience-carousel-container {
    padding-left: 75px;
  }
}
@media (min-width: 1700px) {
  .c-experience-items-carousel .experience-carousel-container {
    padding-left: 85px;
  }
}

.c-background-storytelling-blade {
  overflow: hidden;
}
.c-background-storytelling-blade .image {
  background-repeat: no-repeat;
  background-size: cover;
  min-height: 312px;
}
.c-background-storytelling-blade .content-wrapper {
  background-repeat: repeat;
  background-size: cover;
  display: flex;
  justify-content: center;
}
.c-background-storytelling-blade .content {
  align-self: center;
  font-family: "acme", Helvetica, Arial, sans-serif;
  font-weight: 500;
  max-width: 900px;
  padding: 40px 15px;
  text-align: center;
}
.c-background-storytelling-blade .bg-yellow,
.c-background-storytelling-blade .bg-greenLight,
.c-background-storytelling-blade .bg-greenMed,
.c-background-storytelling-blade .bg-orange {
  color: #1e1e1e;
}
.c-background-storytelling-blade .bg-yellow h2,
.c-background-storytelling-blade .bg-greenLight h2,
.c-background-storytelling-blade .bg-greenMed h2,
.c-background-storytelling-blade .bg-orange h2 {
  color: #222d65;
}
.c-background-storytelling-blade .bg-blue,
.c-background-storytelling-blade .bg-red {
  color: #fff;
}
.c-background-storytelling-blade .bg-blue h2,
.c-background-storytelling-blade .bg-red h2 {
  color: #fff;
}
.c-background-storytelling-blade .large-body .btn {
  font-size: 14px;
}
.c-background-storytelling-blade .btn {
  margin-top: 1.3em;
}
@media (min-width: 768px) {
  .c-background-storytelling-blade .image {
    min-height: 384px;
  }
  .c-background-storytelling-blade.image-right .image {
    order: 2;
  }
  .c-background-storytelling-blade .large-body .btn {
    font-size: 14px;
  }
}
@media (min-width: 1024px) {
  .c-background-storytelling-blade .image {
    min-height: 424px;
  }
  .c-background-storytelling-blade .content {
    padding: 40px 40px;
  }
}
@media (min-width: 1280px) {
  .c-background-storytelling-blade .image {
    min-height: 531px;
  }
  .c-background-storytelling-blade .content {
    padding: 40px 50px;
  }
  .c-background-storytelling-blade .large-body .btn {
    font-size: 14px;
  }
}
@media (min-width: 1400px) {
  .c-background-storytelling-blade .large-body {
    font-size: 25px;
  }
}
@media (min-width: 1700px) {
  .c-background-storytelling-blade .image {
    min-height: 709px;
  }
  .c-background-storytelling-blade .content {
    padding: 40px 105px;
  }
}

.c-body-tile-blade h2 {
  padding: 30px 0 20px 0;
}

.c-body-tile {
  text-align: center;
}
.c-body-tile img {
  border-radius: 8px;
  margin-bottom: 30px;
  width: 100%;
  height: auto;
}
.c-body-tile h2,
.c-body-tile h3 {
  color: #aa1e2e;
  font-family: "brandon-grotesque", sans-serif;
  font-weight: 800;
  margin-bottom: 0.5em;
}
.c-body-tile a {
  font-weight: bold;
}
.c-body-tile a:hover {
  text-decoration: none;
}
.c-body-tile .full-tile-link {
  font-weight: normal;
  text-decoration: none;
}
.c-body-tile .full-tile-link:hover {
  text-decoration: underline;
}
@media (min-width: 768px) {
  .c-body-tile {
    padding: 0 10px;
  }
}
@media (min-width: 1024px) {
  .c-body-tile {
    padding: 0 12px;
  }
}
@media (min-width: 1280px) {
  .c-body-tile {
    padding: 0 16px;
  }
}

.c-hub-tile {
  text-align: center;
}
.c-hub-tile img {
  border-radius: 8px;
  margin-bottom: 30px;
  height: auto;
  width: 100%;
}
.c-hub-tile h2 {
  color: #aa1e2e;
  font-family: "brandon-grotesque", sans-serif;
  font-weight: 800;
  margin-bottom: 0.5em;
}
.c-hub-tile a {
  font-weight: bold;
  margin-bottom: 10px;
}
.c-hub-tile a:hover {
  text-decoration: none;
}
.c-hub-tile .full-tile-link {
  font-weight: normal;
  text-decoration: none;
}
.c-hub-tile .full-tile-link:hover {
  text-decoration: underline;
}
@media (min-width: 768px) {
  .c-hub-tile {
    padding: 0 10px;
  }
}
@media (min-width: 1024px) {
  .c-hub-tile {
    padding: 0 12px;
  }
}
@media (min-width: 1280px) {
  .c-hub-tile {
    padding: 0 16px;
  }
}

.c-resort-site-link {
  padding: 8px 15px 2px;
  text-align: center;
}
.c-resort-site-link img {
  border-radius: 8px;
  margin-bottom: 30px;
  height: auto;
  width: 100%;
  display: none;
}
.c-resort-site-link h2 {
  color: #aa1e2e;
  font-family: "brandon-grotesque", sans-serif;
  font-weight: 800;
  margin-bottom: 0.5em;
}
.c-resort-site-link a, .c-resort-site-link button, .c-resort-site-link .btn {
  width: 100%;
  max-width: 400px;
  font-weight: bold;
}
.c-resort-site-link a:hover, .c-resort-site-link button:hover, .c-resort-site-link .btn:hover {
  text-decoration: none;
}
.c-resort-site-link .full-tile-link {
  font-weight: normal;
  text-decoration: none;
}
.c-resort-site-link .full-tile-link:hover {
  text-decoration: underline;
}
@media (min-width: 768px) {
  .c-resort-site-link {
    padding: 8px 25px 15px;
  }
  .c-resort-site-link img {
    display: block;
  }
}
@media (min-width: 1024px) {
  .c-resort-site-link {
    padding: 8px 27px;
  }
}
@media (min-width: 1280px) {
  .c-resort-site-link {
    padding: 8px 31px;
  }
}

.c-root-homepage-hero {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  color: #fff;
  font-weight: 900;
  height: 295px;
  overflow: hidden;
  text-align: center;
}
.c-root-homepage-hero .top-link-background {
  padding-left: 32px;
  background-image: linear-gradient(270deg, rgba(0, 0, 0, 0.38) 70%, transparent);
  right: 0;
  position: absolute;
  height: 100%;
  padding-right: 20px;
  width: 135px;
}
.c-root-homepage-hero .text-wrapper {
  background-image: linear-gradient(0deg, rgba(0, 0, 0, 0.38) 70%, transparent);
  bottom: 0;
  position: absolute;
  width: 100%;
  padding-top: 20px;
  padding-bottom: 20px;
}
.c-root-homepage-hero .text-wrapper a {
  margin-top: 10px;
}
.c-root-homepage-hero .text-wrapper .desktop-text {
  display: none;
}
.c-root-homepage-hero .text-wrapper h1, .c-root-homepage-hero .text-wrapper h2, .c-root-homepage-hero .text-wrapper h3, .c-root-homepage-hero .text-wrapper h4 {
  color: #fff;
}
.c-root-homepage-hero .text-wrapper h2, .c-root-homepage-hero .text-wrapper h3, .c-root-homepage-hero .text-wrapper h4 {
  margin-bottom: 0;
  font-weight: 500;
}
.c-root-homepage-hero .text-wrapper h1 {
  font-weight: 800;
  text-shadow: 4px 4px 4px rgba(0, 0, 0, 0.25);
}
.c-root-homepage-hero .text-wrapper h2 {
  font-size: 22px;
}
.c-root-homepage-hero .text-wrapper h3 {
  font-size: 20px;
}
.c-root-homepage-hero .logo-wrapper {
  display: inline-block;
  margin: 0 auto;
  padding: 25px 35px;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
}
.c-root-homepage-hero .logo-wrapper img {
  background-repeat: no-repeat;
  height: auto;
  width: 106px;
}
.c-root-homepage-hero .top-link-wrapper {
  position: absolute;
  right: 15px;
  top: 15px;
  z-index: 1;
  width: 100px;
  display: flex;
  flex-flow: column wrap;
  gap: 15px;
}
.c-root-homepage-hero .top-link-wrapper .top-link {
  color: #fff;
  font-family: "Lato", Helvetica, Arial, sans-serif;
  font-size: 13px;
  font-weight: 700;
  text-decoration: none;
  text-transform: uppercase;
  text-align: right;
}
.c-root-homepage-hero video,
.c-root-homepage-hero .video-controls {
  display: none;
}
@media (min-width: 768px) {
  .c-root-homepage-hero {
    height: 372px;
  }
  .c-root-homepage-hero :focus-visible {
    outline: 4px solid #eaaa21;
    outline-offset: 2px;
  }
  .c-root-homepage-hero .text-wrapper {
    padding-top: 30px;
    padding-bottom: 30px;
  }
  .c-root-homepage-hero .text-wrapper .desktop-text {
    display: block;
  }
  .c-root-homepage-hero .text-wrapper .mobile-text {
    display: none;
  }
  .c-root-homepage-hero .text-wrapper .btn::after {
    margin-top: 3px;
  }
  .c-root-homepage-hero .top-link-background {
    padding-bottom: 27px;
    background-image: linear-gradient(180deg, rgba(0, 0, 0, 0.38) 70%, transparent);
    top: 0;
    position: absolute;
    width: 100%;
    padding-top: 20px;
    height: unset;
  }
  .c-root-homepage-hero .top-link-wrapper {
    width: auto;
    flex-flow: row nowrap;
  }
  .c-root-homepage-hero video,
  .c-root-homepage-hero .video-controls {
    display: block;
  }
  .c-root-homepage-hero .video-controls {
    position: absolute;
    left: 20px;
    top: 20px;
  }
  .c-root-homepage-hero .video-controls button {
    background: url("../images/pause-button.svg") no-repeat;
    background-size: 31px 31px;
    border-radius: 50px;
    padding: 0;
    text-indent: -9999px;
    width: 31px;
    height: 31px;
  }
  .c-root-homepage-hero .video-controls button:focus-visible {
    border: 1px solid #1e1e1e;
    outline-offset: 0;
    background-size: cover;
    background-position: center;
  }
  .c-root-homepage-hero .video-controls button.video-play {
    background-image: url("../images/play-button.svg");
  }
}
@media (min-width: 1024px) {
  .c-root-homepage-hero {
    height: 446px;
  }
  .c-root-homepage-hero h1 {
    font-size: 40px;
  }
  .c-root-homepage-hero .top-link-wrapper {
    gap: 20px;
  }
  .c-root-homepage-hero .logo-wrapper img {
    width: 128px;
  }
}
@media (min-width: 1280px) {
  .c-root-homepage-hero {
    height: 520px;
  }
  .c-root-homepage-hero h1 {
    font-size: 50px;
  }
  .c-root-homepage-hero .top-link-wrapper {
    gap: 25px;
  }
  .c-root-homepage-hero .top-link-wrapper .top-link {
    font-size: 16px;
  }
  .c-root-homepage-hero .logo-wrapper {
    padding: 35px 50px;
  }
  .c-root-homepage-hero .logo-wrapper img {
    width: 160px;
  }
  .c-root-homepage-hero .text-wrapper .btn::after {
    margin-top: 4px;
  }
}
@media (min-width: 1450px) {
  .c-root-homepage-hero {
    height: 620px;
  }
}
@media (min-width: 1600px) {
  .c-root-homepage-hero {
    height: 820px;
  }
  .c-root-homepage-hero h1 {
    font-size: 56px;
  }
}

.c-callout-blade .callout-container {
  box-shadow: 6px 6px 6px rgba(0, 0, 0, 0.25);
  margin-bottom: 1.5rem;
  margin-top: 1.5rem;
}
.c-callout-blade .callout-container .content-container {
  align-items: center;
  padding: 0 25px 25px 25px;
}
.c-callout-blade .callout-container .content-container p {
  margin-bottom: 0.8em;
}
.c-callout-blade .callout-container .content-container h2 {
  font-family: "brandon-grotesque", sans-serif;
  font-weight: 800;
  margin: 0.5em 0 0.3em;
}
.c-callout-blade .callout-container .content-container .link-arrow {
  font-weight: bold;
  margin-top: 0;
}
.c-callout-blade .callout-container .content-container.bg-blueDark h2,
.c-callout-blade .callout-container .content-container.bg-blueDark p {
  color: #fff;
}
.c-callout-blade .callout-container.bg-black .content-container h2,
.c-callout-blade .callout-container.bg-black .content-container p,
.c-callout-blade .callout-container.bg-black .content-container ul,
.c-callout-blade .callout-container.bg-black .content-container ol,
.c-callout-blade .callout-container.bg-black .content-container a, .c-callout-blade .callout-container.bg-greyDark .content-container h2,
.c-callout-blade .callout-container.bg-greyDark .content-container p,
.c-callout-blade .callout-container.bg-greyDark .content-container ul,
.c-callout-blade .callout-container.bg-greyDark .content-container ol,
.c-callout-blade .callout-container.bg-greyDark .content-container a, .c-callout-blade .callout-container.bg-blue .content-container h2,
.c-callout-blade .callout-container.bg-blue .content-container p,
.c-callout-blade .callout-container.bg-blue .content-container ul,
.c-callout-blade .callout-container.bg-blue .content-container ol,
.c-callout-blade .callout-container.bg-blue .content-container a, .c-callout-blade .callout-container.bg-blueAlt .content-container h2,
.c-callout-blade .callout-container.bg-blueAlt .content-container p,
.c-callout-blade .callout-container.bg-blueAlt .content-container ul,
.c-callout-blade .callout-container.bg-blueAlt .content-container ol,
.c-callout-blade .callout-container.bg-blueAlt .content-container a, .c-callout-blade .callout-container.bg-blueDark .content-container h2,
.c-callout-blade .callout-container.bg-blueDark .content-container p,
.c-callout-blade .callout-container.bg-blueDark .content-container ul,
.c-callout-blade .callout-container.bg-blueDark .content-container ol,
.c-callout-blade .callout-container.bg-blueDark .content-container a, .c-callout-blade .callout-container.bg-red .content-container h2,
.c-callout-blade .callout-container.bg-red .content-container p,
.c-callout-blade .callout-container.bg-red .content-container ul,
.c-callout-blade .callout-container.bg-red .content-container ol,
.c-callout-blade .callout-container.bg-red .content-container a, .c-callout-blade .callout-container.bg-green .content-container h2,
.c-callout-blade .callout-container.bg-green .content-container p,
.c-callout-blade .callout-container.bg-green .content-container ul,
.c-callout-blade .callout-container.bg-green .content-container ol,
.c-callout-blade .callout-container.bg-green .content-container a {
  color: #fff;
}
.c-callout-blade .callout-container.bg-black .content-container .link-line-in:before, .c-callout-blade .callout-container.bg-greyDark .content-container .link-line-in:before, .c-callout-blade .callout-container.bg-blue .content-container .link-line-in:before, .c-callout-blade .callout-container.bg-blueAlt .content-container .link-line-in:before, .c-callout-blade .callout-container.bg-blueDark .content-container .link-line-in:before, .c-callout-blade .callout-container.bg-red .content-container .link-line-in:before, .c-callout-blade .callout-container.bg-green .content-container .link-line-in:before {
  background-color: #fff;
}
.c-callout-blade .callout-container.bg-greenMed .content-container h2, .c-callout-blade .callout-container.bg-greenLight .content-container h2, .c-callout-blade .callout-container.bg-yellow .content-container h2, .c-callout-blade .callout-container.bg-orange .content-container h2, .c-callout-blade .callout-container.bg-blueLight .content-container h2, .c-callout-blade .callout-container.bg-blueWhite .content-container h2 {
  color: #222d65;
}
.c-callout-blade .callout-container.bg-greenMed .content-container p, .c-callout-blade .callout-container.bg-greenLight .content-container p, .c-callout-blade .callout-container.bg-yellow .content-container p, .c-callout-blade .callout-container.bg-orange .content-container p, .c-callout-blade .callout-container.bg-blueLight .content-container p, .c-callout-blade .callout-container.bg-blueWhite .content-container p {
  color: #1e1e1e;
}
.c-callout-blade .callout-container.bg-tanLight .content-container h2 {
  color: #aa1e2e;
}
.c-callout-blade .callout-container.bg-tanLight .content-container p {
  color: #1e1e1e;
}
.c-callout-blade .callout-container + .callout-container {
  margin-top: 30px;
}
.c-callout-blade .image-container {
  padding: 25px 25px 15px 25px;
}
.c-callout-blade .image-container .lazy-animated {
  display: none;
}
.c-callout-blade .image-container .lazy-animated.preload {
  display: inline-block;
  position: absolute;
  left: 0;
  z-index: -1;
}
.c-callout-blade .image-container:hover .primary-image {
  display: none;
}
.c-callout-blade .image-container:hover .lazy-animated {
  display: inline-block;
}
.c-callout-blade .image-container img {
  width: 100%;
}
.c-callout-blade.image-size--icon .image-container .image-wrapper {
  background: #fff;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  width: 138px;
  height: 138px;
}
.c-callout-blade.image-size--icon .image-container .image-wrapper img {
  border-radius: 0;
  height: auto;
  width: calc(100% - 30px);
}
.c-callout-blade.image-size--icon .callout-container .content-container {
  flex-grow: 1;
  flex-wrap: nowrap;
}
.c-callout-blade.image-size--icon .callout-container .content-container div:first-child {
  flex-grow: 1;
}
@media (max-width: 767px) {
  .c-callout-blade.image-size--icon .callout-container .content-container {
    text-align: center;
  }
  .c-callout-blade.image-size--no-image .content-container {
    padding-top: 25px;
  }
}
@media (max-width: 1023px) {
  .c-callout-blade .callout-container.callout-icon .content-container h2 {
    font-size: 24px;
  }
}
@media (min-width: 768px) {
  .c-callout-blade .callout-container .content-container {
    padding-left: 35px;
    padding-top: 30px;
    padding-bottom: 30px;
  }
  .c-callout-blade .callout-container .content-container p {
    margin-bottom: 1.2em;
  }
  .c-callout-blade .image-container {
    padding: 27px 0 27px 27px;
  }
  .c-callout-blade.image-size--icon .image-container {
    width: auto;
  }
  .c-callout-blade.image-size--icon .image-container img {
    border-radius: 0;
    padding: 20px 0;
  }
  .c-callout-blade.image-size--icon .callout-container .content-container {
    flex-grow: 1;
    flex-wrap: nowrap;
  }
  .c-callout-blade.image-size--icon .callout-container .content-container div:first-child {
    flex-grow: 1;
  }
  .c-callout-blade.image-size--icon .callout-container .content-container .btn-container {
    padding-left: 30px;
  }
  .c-callout-blade.image-size--no-image .content-container {
    padding-left: 31px;
    padding-right: 31px;
  }
}
@media (min-width: 1024px) {
  .c-callout-blade .callout-container {
    margin-bottom: 2.5rem;
    margin-top: 2.5rem;
  }
  .c-callout-blade .callout-container .content-container {
    flex-wrap: nowrap;
    padding-left: 40px;
  }
  .c-callout-blade .callout-container .content-container div:first-child {
    flex-grow: 1;
  }
  .c-callout-blade .callout-container .content-container .btn-container {
    padding-left: 40px;
    padding-right: 30px;
  }
  .c-callout-blade .image-container {
    padding: 31px 0 31px 31px;
  }
}
@media (min-width: 1280px) {
  .c-callout-blade.image-size--icon .image-container .image-wrapper {
    width: 173px;
    height: 173px;
  }
}

.c-cta-blade {
  background: #aa1e2e;
  color: #fff;
  text-align: center;
  padding-top: 40px;
  padding-bottom: 40px;
}
@media (min-width: 768px) {
  .c-cta-blade {
    padding-top: 65px;
    padding-bottom: 65px;
  }
}
@media (min-width: 1024px) {
  .c-cta-blade {
    padding-top: 75px;
    padding-bottom: 75px;
  }
}
@media (min-width: 1280px) {
  .c-cta-blade {
    padding-top: 95px;
    padding-bottom: 95px;
  }
}
.c-cta-blade .cta-section-link {
  align-self: center;
}
.c-cta-blade h2, .c-cta-blade .h2 {
  color: #fff;
  margin-bottom: 0;
  font-family: bitter, Helvetica, Arial, sans-serif;
  font-weight: 700;
  line-height: 1.2;
}
.c-cta-blade .cta-section {
  gap: 25px;
  justify-content: center;
  display: flex;
  flex-flow: column wrap;
}
.c-cta-blade.solid-primary-color {
  background-color: #aa1e2e;
  color: #ffffff;
}
.c-cta-blade.gradient-red-yellow {
  background: linear-gradient(180deg, #dc3929 40%, #ffc20e 80%);
}
.c-cta-blade.gradient-red-yellow .btn {
  border: 1px solid #222d65;
}
.c-cta-blade.gradient-blue-green {
  background: linear-gradient(180deg, #2567b3 43%, #6abeb8 84%);
}
.c-cta-blade.gradient-blue-green .btn {
  border: 1px solid #1e1e1e;
}
.c-cta-blade.gradient-blue-orange {
  background: linear-gradient(180deg, #222d65 40%, #eaaa21 84%);
}
.c-cta-blade.gradient-blue-orange .btn {
  border: 1px solid #1e1e1e;
}
@media (min-width: 768px) {
  .c-cta-blade.gradient-red-yellow {
    background: linear-gradient(90deg, #dc3929 65%, #ffc20e 80%);
  }
  .c-cta-blade.gradient-blue-green {
    background: linear-gradient(90deg, #2567b3 65%, #6abeb8 84%);
  }
  .c-cta-blade.gradient-blue-orange {
    background: linear-gradient(90deg, #222d65 65%, #eaaa21 84%);
  }
  .c-cta-blade .cta-section {
    flex-flow: row wrap;
  }
  .c-cta-blade .cta-section .cta-section-heading {
    max-width: 62%;
  }
}
@media (min-width: 1280px) {
  .c-cta-blade .col-section {
    gap: 40px;
  }
}

.c-location-buttons {
  margin-bottom: 30px;
  padding-top: 15px;
}
.c-location-buttons .btn {
  font-weight: 800;
  margin-bottom: 14px;
  text-align: center;
  width: 100%;
}
@media (min-width: 768px) {
  .c-location-buttons {
    display: none;
  }
}

.c-accommodation-page-tile {
  border: 1px solid #222d65;
  border-radius: 8px;
  box-shadow: 7px 7px 5px rgba(0, 0, 0, 0.25);
  height: 100%;
}
.c-accommodation-page-tile .image-container img {
  border-radius: 7px 7px 0 0;
  width: 100%;
  height: auto;
}
.c-accommodation-page-tile .image-container .lazy-animated {
  display: none;
}
.c-accommodation-page-tile .image-container .lazy-animated.preload {
  display: inline-block;
  position: absolute;
  left: 0;
  z-index: -1;
}
.c-accommodation-page-tile .image-container:hover .primary-image {
  display: none;
}
.c-accommodation-page-tile .image-container:hover .lazy-animated {
  display: inline-block;
}
.c-accommodation-page-tile .content {
  margin-bottom: 80px;
  padding: 24px;
}
.c-accommodation-page-tile .content h2 {
  color: #aa1e2e;
  font-family: "brandon-grotesque", sans-serif;
  font-weight: 800;
}
.c-accommodation-page-tile .content .subtitle {
  margin-top: -1em;
}
.c-accommodation-page-tile .content .link-arrow {
  font-weight: bold;
  text-decoration: none;
}
.c-accommodation-page-tile .btn {
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  text-align: center;
  width: calc(100% - 40px);
}
.c-accommodation-page-tile .btn:hover {
  background-color: #1a5698;
  box-shadow: none;
}
.c-accommodation-page-tile .card-details {
  border-top: 1px solid #222d65;
  font-size: 0.9em;
  position: absolute;
  bottom: 20px;
  margin: 0 24px;
  padding-top: 10px;
  width: calc(100% - 48px);
}
.c-accommodation-page-tile .card-details strong {
  color: #aa1e2e;
}
@media (min-width: 1024px) {
  .c-accommodation-page-tile .content {
    padding: 28px;
  }
  .c-accommodation-page-tile .card-details {
    bottom: 20px;
    margin: 0 28px;
    width: calc(100% - 56px);
  }
}
@media (min-width: 1280px) {
  .c-accommodation-page-tile .content {
    padding: 32px;
  }
  .c-accommodation-page-tile .card-details {
    bottom: 20px;
    margin: 0 32px;
    width: calc(100% - 64px);
  }
}

.c-resort-item-page-tile {
  border: 1px solid #222d65;
  border-radius: 8px;
  box-shadow: 7px 7px 5px rgba(0, 0, 0, 0.25);
  height: 100%;
  display: flex;
  flex-flow: column nowrap;
}
.c-resort-item-page-tile .image-container img {
  border-radius: 7px 7px 0 0;
  width: 100%;
  height: auto;
}
.c-resort-item-page-tile .image-container .lazy-animated {
  display: none;
}
.c-resort-item-page-tile .image-container .lazy-animated.preload {
  display: inline-block;
  position: absolute;
  left: 0;
  z-index: -1;
}
.c-resort-item-page-tile .image-container:hover .primary-image {
  display: none;
}
.c-resort-item-page-tile .image-container:hover .lazy-animated {
  display: inline-block;
}
.c-resort-item-page-tile .card-new {
  background: #eaaa21;
  border-radius: 13px 0 0 13px;
  display: inline-block;
  font-family: "brandon-grotesque", sans-serif;
  margin-top: -3px;
  padding: 10px 20px;
  position: absolute;
  top: 0;
  right: 0;
  transform: translateY(-50%);
}
.c-resort-item-page-tile .content {
  margin-bottom: 50px;
  padding: 24px;
}
.c-resort-item-page-tile .content h2 {
  color: #aa1e2e;
  font-family: "brandon-grotesque", sans-serif;
  font-weight: 800;
}
.c-resort-item-page-tile .content h2 a {
  text-decoration: none;
}
.c-resort-item-page-tile .content h2 a:hover {
  text-decoration: underline;
}
.c-resort-item-page-tile .content ul,
.c-resort-item-page-tile .content ol {
  margin-left: 20px;
}
.c-resort-item-page-tile .content ul li,
.c-resort-item-page-tile .content ol li {
  margin-bottom: 0.5em;
}
.c-resort-item-page-tile .content .subtitle {
  color: #2d2d2d;
  margin-top: -1em;
}
.c-resort-item-page-tile .content .link-arrow {
  font-weight: bold;
  text-decoration: none;
}
.c-resort-item-page-tile .btn {
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  text-align: center;
  width: calc(100% - 40px);
}
.c-resort-item-page-tile .btn:hover {
  background-color: #1a5698;
  box-shadow: none;
}
.c-resort-item-page-tile .card-details {
  border-top: 1px solid #222d65;
  font-size: 0.9em;
  bottom: 20px;
  margin-top: auto;
  margin-left: 24px;
  margin-right: 24px;
  padding-top: 10px;
  width: calc(100% - 48px);
}
.c-resort-item-page-tile .card-details strong {
  color: #aa1e2e;
}
.c-resort-item-page-tile .card-details .hours-wrapper {
  display: flex;
  column-gap: 10px;
}
.c-resort-item-page-tile .card-details .hours-wrapper .hours-list {
  margin-top: 0;
}
@media (min-width: 1024px) {
  .c-resort-item-page-tile .content {
    padding: 28px;
  }
  .c-resort-item-page-tile .card-details {
    bottom: 20px;
    margin-left: 28px;
    margin-right: 28px;
    width: calc(100% - 56px);
  }
}
@media (min-width: 1280px) {
  .c-resort-item-page-tile .card-new {
    font-size: 16px;
  }
  .c-resort-item-page-tile .content {
    padding: 32px;
  }
  .c-resort-item-page-tile .card-details {
    bottom: 20px;
    margin-left: 32px;
    margin-right: 32px;
    width: calc(100% - 64px);
  }
}

.c-product-page-tile a {
  color: #1e1e1e;
  font-weight: 600;
  text-decoration: none;
}
.c-product-page-tile a:hover {
  text-decoration: underline;
}
.c-product-page-tile img {
  border-radius: 13px;
  margin-bottom: 15px;
}
.c-product-page-tile .store-item-callout {
  background: #aa1e2e;
  box-shadow: 7px 7px 5px rgba(0, 0, 0, 0.25);
  color: #fff;
  border-radius: 100px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  font-weight: bold;
  max-width: 130px;
  min-width: 60px;
  min-height: 60px;
  padding: 10px;
  position: absolute;
  top: 0;
  right: 30px;
  text-align: center;
  z-index: 1;
}
.c-product-page-tile .store-item-callout.store-item-red {
  background: #aa1e2e;
  color: #fff;
}
.c-product-page-tile .store-item-callout.store-item-blue {
  background: #2567b3;
  color: #fff;
}
.c-product-page-tile .store-item-callout.store-item-blueLight {
  background: #99bed5;
  color: #222d65;
}
.c-product-page-tile .store-item-callout.store-item-green {
  background: #00818A;
  color: #fff;
}
.c-product-page-tile .product-title {
  font-size: 14px;
  font-weight: 600;
  margin-bottom: 0;
}
.c-product-page-tile .product-price {
  font-size: 13px;
  font-weight: 600;
  line-height: 1.3;
  margin-top: 0;
}
.c-product-page-tile .product-price .new-price {
  color: #aa1e2e;
}
.c-product-page-tile .product-price .old-price {
  text-decoration: line-through;
}
@media (min-width: 768px) {
  .c-product-page-tile img {
    margin-bottom: 18px;
  }
  .c-product-page-tile .product-title {
    font-size: 15px;
  }
  .c-product-page-tile .product-price {
    font-size: 14px;
  }
}
@media (min-width: 1280px) {
  .c-product-page-tile .product-title {
    font-size: 16px;
  }
  .c-product-page-tile .product-price {
    font-size: 14px;
  }
}

.c-product-category-page-tile {
  text-align: center;
}
.c-product-category-page-tile img {
  border-radius: 8px;
  margin-bottom: 30px;
  width: 100%;
  height: auto;
}
.c-product-category-page-tile h2,
.c-product-category-page-tile h3 {
  color: #aa1e2e;
  font-family: "brandon-grotesque", sans-serif;
  font-weight: 800;
  margin-bottom: 0.5em;
}
.c-product-category-page-tile a {
  font-weight: bold;
  color: #aa1e2e;
}
.c-product-category-page-tile a:hover {
  text-decoration: none;
}
.c-product-category-page-tile a + .btn {
  margin-top: 1.3em;
}
.c-product-category-page-tile .full-tile-link {
  font-weight: normal;
  text-decoration: none;
}
.c-product-category-page-tile .full-tile-link:hover {
  text-decoration: underline;
}
@media (min-width: 768px) {
  .c-product-category-page-tile {
    padding: 0 10px;
  }
}
@media (min-width: 1024px) {
  .c-product-category-page-tile {
    padding: 0 12px;
  }
}
@media (min-width: 1280px) {
  .c-product-category-page-tile {
    padding: 0 16px;
  }
}

/* ---------------------------------------------------------------------
 Open Table
 Override styles for the open code snippet integration markup.
------------------------------------------------------------------------ */
.c-open-table-reservation {
  /* Any open table id containing "OT_*/
}
.c-open-table-reservation [id*=OT_] {
  height: auto !important;
  position: static !important;
  width: auto !important;
  text-align: left !important;
  margin: auto !important;
  font-family: "Public Sans", Helvetica, Arial, sans-serif !important;
}
.c-open-table-reservation #OT_searchWrapper {
  height: auto !important;
  position: static !important;
  width: auto !important;
  text-align: left !important;
  margin: auto !important;
  font-family: "Public Sans", Helvetica, Arial, sans-serif !important;
}
.c-open-table-reservation #OT_searchWrapper h1 {
  line-height: 1.2;
  font-weight: 800;
  font-size: 18px;
  margin-bottom: 1.5em;
  text-align: left;
  text-transform: none;
  font-family: "brandon-grotesque", sans-serif;
  color: #aa1e2e;
}
.c-open-table-reservation #OT_searchWrapper .ot-dtp-picker {
  font-family: "Public Sans", Helvetica, Arial, sans-serif;
  width: 100% !important;
  padding: 0px !important;
}
.c-open-table-reservation #OT_searchWrapper .ot-dtp-picker .ot-dtp-picker-form {
  border-color: #222d65;
  border-radius: 0;
}
.c-open-table-reservation #OT_searchWrapper .ot-dtp-picker .ot-dtp-picker-selector .ot-dtp-picker-selector-link:after {
  background: url("../images/down-arrow-blueDark.svg") no-repeat center;
  background-size: 14px auto;
  content: " ";
  width: 28px;
  height: 24px;
}
.c-open-table-reservation #OT_searchWrapper .ot-dtp-picker .ot-dtp-picker-button {
  box-shadow: none;
}
.c-open-table-reservation #OT_searchWrapper .ot-dtp-picker .ot-dtp-picker-button:hover {
  box-shadow: none;
}
.c-open-table-reservation #OT_searchWrapper .ot-button {
  color: #ffffff;
  background-color: #aa1e2e;
  border: 1px solid #aa1e2e;
  font-family: "Public Sans", Helvetica, Arial, sans-serif;
  font-weight: bold;
}
.c-open-table-reservation #OT_searchWrapper .ot-button:hover:not(.disabled) {
  background-color: rgb(104.975, 18.525, 28.405);
  box-shadow: 0px 5px 7px rgba(0, 0, 0, 0.25);
  color: #ffffff;
  border-color: rgb(104.975, 18.525, 28.405);
}
.c-open-table-reservation #OT_searchWrapper .picker__day {
  box-sizing: initial;
  border: 2px solid #f1f2f4;
}
.c-open-table-reservation #OT_searchWrapper .picker__day--selected,
.c-open-table-reservation #OT_searchWrapper .picker__day--highlighted,
.c-open-table-reservation #OT_searchWrapper .picker__day--selected:hover,
.c-open-table-reservation #OT_searchWrapper .picker__day--infocus:hover,
.c-open-table-reservation #OT_searchWrapper .picker__day--outfocus:hover {
  border: 2px solid #da3743;
}
.c-open-table-reservation #OT_searchWrapper .picker__day--today {
  border: 2px solid #d8d9db;
}
.c-open-table-reservation #OT_searchWrapper dd:not(last-child) {
  margin-bottom: 20px !important;
}
.c-open-table-reservation #OT_searchWrapper .OT_feedTitle.OT_feedTitle {
  height: auto !important;
  position: static !important;
  width: auto !important;
  text-align: left !important;
  margin: auto !important;
  padding: auto !important;
  font-family: "Public Sans", Helvetica, Arial, sans-serif !important;
  line-height: 1.2;
  font-weight: 900;
  color: #aa1e2e;
  font-size: var(--FONT_SIZE_XL_PLUS4);
}
@media (--large) {
  .c-open-table-reservation #OT_searchWrapper .OT_feedTitle.OT_feedTitle {
    font-size: var(--FONT_SIZE_XXL_PLUS8);
  }
}
.c-open-table-reservation #OT_searchWrapper [id=OT_dateLbl], .c-open-table-reservation #OT_searchWrapper [id=OT_partySizeLbl], .c-open-table-reservation #OT_searchWrapper [id=OT_dateLbl], .c-open-table-reservation #OT_searchWrapper [id=OT_timeLbl], .c-open-table-reservation #OT_searchWrapper [id=OT_restaurantLbl] {
  height: auto !important;
  position: static !important;
  width: auto !important;
  text-align: left !important;
  margin: auto !important;
  padding: auto !important;
  font-family: "Public Sans", Helvetica, Arial, sans-serif !important;
  display: block;
  margin-bottom: 7px;
  font-size: var(--FONT_SIZE_SM_PLUS2);
  line-height: 1.3;
  font-weight: 600;
}
.c-open-table-reservation #OT_searchWrapper .OT_feedFormfieldCalendar.OT_feedFormfieldCalendar {
  display: block;
  width: calc(100% - 30px) !important;
  height: 18px;
  padding: 10px 14px;
  font-size: 18px;
  line-height: 28px;
  font-weight: 300;
  font-family: "Public Sans", Helvetica, Arial, sans-serif;
  border: 1px solid #222d65;
}
.c-open-table-reservation #OT_searchWrapper .feedFormField.feedFormField {
  display: block;
  min-width: 100%;
  height: 34px;
  padding: 8px 35px 8px 16px;
  border-radius: 0;
  border: none;
  color: #ffffff;
  background-color: #aa1e2e;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTJweCIgaGVpZ2h0PSI4cHgiIHZpZXdCb3g9IjAgMCAxMiA4IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPgogICAgPCEtLSBHZW5lcmF0b3I6IFNrZXRjaCA0NC4xICg0MTQ1NSkgLSBodHRwOi8vd3d3LmJvaGVtaWFuY29kaW5nLmNvbS9za2V0Y2ggLS0+CiAgICA8ZGVzYz5DcmVhdGVkIHdpdGggU2tldGNoLjwvZGVzYz4KICAgIDxkZWZzPjwvZGVmcz4KICAgIDxnIGlkPSJTeW1ib2xzIiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj4KICAgICAgICA8ZyBpZD0ibW9kdWxlL1NvcnRHcm91cC9kZWZhdWx0IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMTc2LjAwMDAwMCwgLTM5LjAwMDAwMCkiIGZpbGw9IiNGRkZGRkYiPgogICAgICAgICAgICA8ZyBpZD0iRmlsdGVyLUdyb3VwIj4KICAgICAgICAgICAgICAgIDxnIGlkPSJpY29uL2NhcmV0L2RlZmF1bHQiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDE3Ni4wMDAwMDAsIDM3LjAwMDAwMCkiPgogICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik01Ljk5OTcwOTk0LDcuMzc5MDI3MDUgTDEwLjQ4MzY3NjYsMi44OTUwNjA0MyBDMTAuODMwNDIzOCwyLjU0ODMxMzE4IDExLjM5MjYxMjIsMi41NDgzMTMxOCAxMS43MzkzNTk0LDIuODk1MDYwNDMgQzEyLjA4NjEwNjcsMy4yNDE4MDc2OCAxMi4wODYxMDY3LDMuODAzOTk2MDYgMTEuNzM5MzU5NCw0LjE1MDc0MzMxIEw2LjcxNjYyNzkxLDkuMTczNDc0ODQgQzYuNTIwNTY5MjMsOS4zNjk1MzM1MiA2LjI1NTYzMzQ4LDkuNDU0NzM2MjIgNS45OTk3MDk5NCw5LjQyOTA4Mjk1IEM1Ljc0Mzc4NjQsOS40NTQ3MzYyMiA1LjQ3ODg1MDY1LDkuMzY5NTMzNTIgNS4yODI3OTE5Nyw5LjE3MzQ3NDg0IEwwLjI2MDA2MDQ0LDQuMTUwNzQzMzEgQy0wLjA4NjY4NjgxMzMsMy44MDM5OTYwNiAtMC4wODY2ODY4MTMzLDMuMjQxODA3NjggMC4yNjAwNjA0NCwyLjg5NTA2MDQzIEMwLjYwNjgwNzY5MywyLjU0ODMxMzE4IDEuMTY4OTk2MDcsMi41NDgzMTMxOCAxLjUxNTc0MzMyLDIuODk1MDYwNDMgTDUuOTk5NzA5OTQsNy4zNzkwMjcwNSBaIiBpZD0iQ29tYmluZWQtU2hhcGUiPjwvcGF0aD4KICAgICAgICAgICAgICAgIDwvZz4KICAgICAgICAgICAgPC9nPgogICAgICAgIDwvZz4KICAgIDwvZz4KPC9zdmc+");
  background-repeat: no-repeat;
  background-position: right 11px top 13px;
  font-size: 14px;
  line-height: 18px;
  font-weight: 800;
  -webkit-appearance: none;
  -moz-appearance: none;
}
.c-open-table-reservation #OT_searchWrapper p#dateDisplay {
  float: none;
  text-align: left;
}
.c-open-table-reservation #OT_searchWrapper [id=OT_submitWrap] {
  display: inline-block !important;
  left: auto;
  top: auto;
  position: relative !important;
}
.c-open-table-reservation #OT_searchWrapper [id=OT_submitWrap] .OT_TableButton {
  width: 0;
  box-sizing: border-box;
  padding-left: 158px;
  height: 40px;
  background-color: #ffffff;
  background-image: none !important;
  line-height: 1.2;
  position: relative;
  text-align: center;
  border-radius: 2px;
  border: 1px solid #2567b3;
  transition: all 250ms ease;
  -webkit-appearance: none;
}
@media (prefers-reduced-motion) {
  .c-open-table-reservation #OT_searchWrapper [id=OT_submitWrap] .OT_TableButton {
    transition: none !important;
  }
}
.c-open-table-reservation #OT_searchWrapper [id=OT_submitWrap] .OT_TableButton:focus, .c-open-table-reservation #OT_searchWrapper [id=OT_submitWrap] .OT_TableButton:hover {
  border-color: rgb(95.8888888889, 154.5555555556, 222.1111111111);
}
.c-open-table-reservation #OT_searchWrapper [id=OT_submitWrap]:after {
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 1px;
  cursor: pointer;
  width: 160px;
  content: "Find a Table";
  font-size: inherit;
  font-family: inherit;
  font-size: var(--FONT_SIZE_SM_PLUS2);
  position: absolute;
  z-index: 1;
  text-align: center;
  top: calc(50% - 10px);
  left: 0;
  color: #2567b3;
  pointer-events: none;
}

.c-secondary-navigation {
  font-family: "brandon-grotesque", sans-serif;
  font-weight: bold;
}
.c-secondary-navigation .secondary-nav-button {
  border-radius: 0;
  background-image: url(../images/down-arrow-black.svg);
  background-position: center right 15px;
  background-repeat: no-repeat;
  background-size: 13px auto;
  background-color: #eaaa21;
  color: #1e1e1e;
  font-size: inherit;
  padding: 15px 20px;
  text-align: left;
  text-transform: none;
  width: 100%;
}
.c-secondary-navigation .secondary-nav-button:hover {
  box-shadow: none;
}
.c-secondary-navigation ul {
  margin: 0;
  text-align: left;
}
.c-secondary-navigation ul li {
  list-style-type: none;
  margin: 0 20px;
}
.c-secondary-navigation ul li a {
  color: #1e1e1e;
  display: block;
  padding: 20px 0;
  text-align: left;
  text-decoration: none;
  width: 100%;
}
.c-secondary-navigation ul li a:hover {
  text-decoration: underline;
}
@media (max-width: 1023px) {
  .c-secondary-navigation ul {
    background: #edeae7;
    box-shadow: 5px 5px 7px rgba(0, 0, 0, 0.25);
    display: none;
    position: absolute;
    width: 100%;
    z-index: 1;
  }
  .c-secondary-navigation ul li a {
    border-top: 1px solid #222d65;
  }
  .c-secondary-navigation ul li a.active {
    background: url("../images/icon-blue-check.svg") no-repeat center right 20px;
    background-size: auto 10px;
  }
  .c-secondary-navigation ul li:first-child a {
    border-top: 0;
  }
}
@media (min-width: 1024px) {
  .c-secondary-navigation .secondary-nav-button {
    display: none;
  }
  .c-secondary-navigation ul {
    border-bottom: 1px solid #222d65;
    display: flex !important;
    justify-content: center;
    margin: 0;
    text-align: center;
  }
  .c-secondary-navigation ul li {
    margin: 0;
  }
  .c-secondary-navigation ul li a {
    padding: 20px;
  }
  .c-secondary-navigation ul li a.active {
    background: #eaaa21;
  }
  .c-secondary-navigation ul li a:hover {
    background: #eaaa21;
    text-decoration: none;
  }
}
@media (min-width: 1280px) {
  .c-secondary-navigation ul li a {
    padding: 20px 30px;
  }
}
@media (min-width: 1400px) {
  .c-secondary-navigation ul li a {
    padding: 20px 40px;
  }
}

#page-main .c-secondary-navigation {
  overflow: unset;
}

.c-feature-items-blade {
  padding: 0 30px;
}
.c-feature-items-blade .col-section .col-section {
  flex-wrap: nowrap;
}
.c-feature-items-blade .icon {
  background: #edeae7;
  border-radius: 50%;
  display: flex;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 79px;
  height: 79px;
}
.c-feature-items-blade .icon img {
  height: auto;
  width: calc(100% - 30px);
}
.c-feature-items-blade .content {
  flex-grow: 1;
  padding-top: 15px;
  padding-left: 20px;
}
.c-feature-items-blade .content h2 {
  font-family: "brandon-grotesque", sans-serif;
  font-size: 16px;
  margin-bottom: 0;
}
.c-feature-items-blade .content p {
  font-weight: 600;
  margin-bottom: 0;
}
.c-feature-items-blade .content a {
  color: #1e1e1e;
}
@media (min-width: 768px) {
  .c-feature-items-blade .icon {
    width: 98px;
    height: 98px;
  }
  .c-feature-items-blade .content {
    padding-top: 30px;
    padding-left: 15px;
  }
  .c-feature-items-blade .content h2 {
    font-size: 17px;
  }
}
@media (min-width: 1024px) {
  .c-feature-items-blade .col-section {
    justify-content: center;
  }
  .c-feature-items-blade .col-section .col-section {
    max-width: 50%;
    width: auto;
  }
  .c-feature-items-blade .content {
    padding-left: 20px;
  }
}
@media (min-width: 1280px) {
  .c-feature-items-blade .icon {
    width: 123px;
    height: 123px;
  }
  .c-feature-items-blade .content {
    padding-top: 40px;
  }
  .c-feature-items-blade .content h2 {
    font-size: 21px;
  }
}

.c-resort-item-card-list__headline {
  padding-top: 2.5rem;
  text-align: center;
}
.c-resort-item-card-list .c-resort-item-card-list__filters {
  border-top: 1px solid #222d65;
  border-bottom: 1px solid #222d65;
  gap: 25px;
  padding: 20px 0;
}
.c-resort-item-card-list .c-resort-item-card-list__filters .filter-title {
  color: #aa1e2e;
  font-size: 13px;
  font-weight: bold;
  font-family: "Public Sans", Helvetica, Arial, sans-serif;
}
.c-resort-item-card-list .c-resort-item-card-list__filters .col-section {
  gap: 25px;
}
.c-resort-item-card-list .c-resort-item-card-list__filters .filter-group {
  margin-right: 20px;
  max-width: 100%;
  width: 193px;
}
.c-resort-item-card-list .c-resort-item-card-list__filters .filter-group > label {
  font-family: "Public Sans", Helvetica, Arial, sans-serif;
  font-size: 13px;
}
.c-resort-item-card-list .c-resort-item-card-list__filters .filter-group .drop-down-button {
  background: url("../images/down-arrow-blueDark-light.svg") no-repeat top 17px right 15px;
  box-shadow: 5px 5px 7px rgba(0, 0, 0, 0.25);
  color: #1e1e1e;
  background-size: 13px auto;
  border: 1px solid #222d65;
  border-radius: 0;
  font-family: "Public Sans", Helvetica, Arial, sans-serif;
  font-weight: normal;
  margin-right: 15px;
  padding: 12px 12px 12px 15px;
  text-align: left;
  text-transform: none;
  width: 100%;
}
.c-resort-item-card-list .c-resort-item-card-list__filters .filter-group .drop-down-button span {
  background-color: #aa1e2e;
  color: white;
  border-radius: 12px;
  padding: 8px 16px;
}
.c-resort-item-card-list .c-resort-item-card-list__filters .filter-group .drop-down-container {
  border: 0;
}
.c-resort-item-card-list .c-resort-item-card-list__filters .filter-group .drop-down-container legend {
  display: none;
}
.c-resort-item-card-list .c-resort-item-card-list__filters .filter-group .drop-down-container ul {
  background: #edeae7;
  border: 1px solid #222d65;
  border-top: 0;
  box-shadow: 5px 5px 7px rgba(0, 0, 0, 0.25);
  display: none;
  margin: 0;
  padding: 14px 0 0;
  position: absolute;
  text-transform: none;
  width: 100%;
  z-index: 1;
}
.c-resort-item-card-list .c-resort-item-card-list__filters .filter-group .drop-down-container ul li {
  display: block;
  margin-bottom: 0;
  padding: 0 15px;
}
.c-resort-item-card-list .c-resort-item-card-list__filters .filter-group .drop-down-container ul li label {
  font-family: "Public Sans", Helvetica, Arial, sans-serif;
  font-size: inherit;
}
.c-resort-item-card-list .c-resort-item-card-list__filters .filter-group .drop-down-container ul li.close {
  position: unset;
}
.c-resort-item-card-list .c-resort-item-card-list__filters .filter-group .drop-down-container button {
  background: none;
  border-radius: 0;
  padding: 5px;
  position: absolute;
  top: 5px;
  right: 12px;
}
.c-resort-item-card-list .c-resort-item-card-list__filters .filter-group .drop-down-container button:hover {
  box-shadow: none;
}
@media (min-width: 768px) {
  .c-resort-item-card-list .c-resort-item-card-list__filters {
    padding: 30px 0;
  }
  .c-resort-item-card-list .c-resort-item-card-list__filters .filter-title {
    font-size: 14px;
  }
  .c-resort-item-card-list .c-resort-item-card-list__filters .filter-group > label {
    font-size: 13px;
  }
}
@media (min-width: 1280px) {
  .c-resort-item-card-list .c-resort-item-card-list__filters {
    gap: 38px;
  }
  .c-resort-item-card-list .c-resort-item-card-list__filters .col-section {
    gap: 34px;
  }
  .c-resort-item-card-list .c-resort-item-card-list__filters .filter-title {
    font-size: 15px;
  }
  .c-resort-item-card-list .c-resort-item-card-list__filters .filter-group {
    width: 215px;
  }
  .c-resort-item-card-list .c-resort-item-card-list__filters .filter-group > label {
    font-size: 16px;
  }
  .c-resort-item-card-list .c-resort-item-card-list__filters .filter-group .drop-down-button {
    background-position: top 21px right 15px;
    padding: 15px 12px 15px 15px;
  }
  .c-resort-item-card-list .c-resort-item-card-list__filters .filter-group .drop-down-container ul li label {
    font-size: 16px;
  }
}

.c-breadcrumbs {
  font-size: 12px;
  padding-top: 15px;
}
.c-breadcrumbs a {
  text-decoration: none;
}
.c-breadcrumbs a:hover {
  text-decoration: underline;
}
.c-breadcrumbs strong {
  color: #aa1e2e;
}
@media (max-width: 767px) {
  .c-breadcrumbs a {
    display: none;
  }
  .c-breadcrumbs a:last-of-type {
    display: inline-block;
    font-weight: bold;
  }
  .c-breadcrumbs span, .c-breadcrumbs strong {
    display: none;
  }
  .c-breadcrumbs .mobile-only {
    display: inline-block;
  }
}
@media (min-width: 767px) {
  .c-breadcrumbs {
    padding-top: 25px;
  }
  .c-breadcrumbs span {
    padding: 0 5px;
  }
  .c-breadcrumbs a {
    color: #2d2d2d;
  }
}
@media (min-width: 1024px) {
  .c-breadcrumbs {
    font-size: 13px;
  }
}

.c-page-title-blade {
  font-family: "acme", Helvetica, Arial, sans-serif;
  text-align: center;
}
.c-page-title-blade h1 {
  color: #aa1e2e;
}
.c-page-title-blade p {
  margin-bottom: 0;
}
.c-page-title-blade p + p {
  margin-top: 1em;
}
@media (min-width: 1024px) {
  .c-page-title-blade h1, .c-page-title-blade p {
    padding-left: 60px;
    padding-right: 60px;
  }
}
@media (min-width: 1280px) {
  .c-page-title-blade h1, .c-page-title-blade p {
    padding-left: 75px;
    padding-right: 75px;
  }
  .c-page-title-blade h1 {
    font-size: 45px;
  }
  .c-page-title-blade p {
    font-size: 21px;
  }
}

/*NOTE: This is used on both the Resort Item Details page and Accommodation Item Details page. */
.c-resort-item-details .tns-ovh,
.c-resort-item-details .c-resort-item-carousel__image {
  border-radius: 8px;
}
.c-resort-item-details .item-description {
  margin-top: 15px;
  margin-bottom: 15px;
}
.c-resort-item-details .item-description p {
  margin-bottom: 0;
}
.c-resort-item-details .item-description p + p {
  margin-top: 1em;
}
.c-resort-item-details .item-cta {
  margin-bottom: 20px;
  width: 100%;
}
.c-resort-item-details .item-attributes {
  background: #eaaa21;
  padding: 20px;
}
.c-resort-item-details .item-attributes h2 {
  font-family: "brandon-grotesque", sans-serif;
  font-size: 16px;
  font-weight: 800;
}
.c-resort-item-details .item-attributes p {
  margin-bottom: 0;
}
.c-resort-item-details .item-attributes li {
  margin-bottom: 0;
}
.c-resort-item-details .item-group-desktop {
  display: none;
}
.c-resort-item-details .page-sidebar h2,
.c-resort-item-details .page-sidebar h3 {
  color: #aa1e2e;
  font-family: "brandon-grotesque", sans-serif;
  font-size: 16px;
  font-weight: 800;
}
.c-resort-item-details .page-sidebar .border-top-tanMed .c-rich-text-item {
  margin-top: 0;
}
.c-resort-item-details .page-sidebar .border-top-tanMed + .border-top-tanMed {
  margin-top: 40px;
}
.c-resort-item-details .page-sidebar ul,
.c-resort-item-details .page-sidebar ol {
  margin-left: 20px;
  margin-bottom: 40px;
}
.c-resort-item-details .page-sidebar .btn {
  margin-bottom: 20px;
}
.c-resort-item-details .page-sidebar .item-attributes h2 {
  color: #1e1e1e;
}
@media (min-width: 768px) {
  .c-resort-item-details .c-full-width-carousel.square-nav .tns-controls button:nth-of-type(2) {
    background-position-x: center;
  }
}
@media (min-width: 1024px) {
  .c-resort-item-details .item-description {
    margin-top: 25px;
    margin-bottom: 25px;
  }
  .c-resort-item-details .item-group-mobile {
    display: none;
  }
  .c-resort-item-details .item-group-desktop {
    display: block;
    margin-bottom: 40px;
  }
  .c-resort-item-details .page-sidebar {
    padding-left: 50px;
  }
  .c-resort-item-details .page-sidebar ul {
    margin-bottom: 1em;
  }
  .c-resort-item-details .page-sidebar .btn {
    text-align: center;
    width: 100%;
  }
  .c-resort-item-details .page-sidebar span.btn {
    width: calc(100% - 68px);
  }
}
@media (min-width: 1280px) {
  .c-resort-item-details .btn-book {
    margin-bottom: 30px;
  }
  .c-resort-item-details .item-attributes {
    padding: 30px;
  }
  .c-resort-item-details .page-sidebar {
    font-size: 16px;
    padding-left: 60px;
  }
  .c-resort-item-details .page-sidebar h2,
  .c-resort-item-details .page-sidebar h3 {
    font-size: 18px;
  }
}
@media (min-width: 1400px) {
  .c-resort-item-details .page-sidebar {
    padding-left: 70px;
  }
}

/*ADD IN ANY OVERRIDES FOR THE ACCOMIDATIONS PAGE*/
.c-details-callout-text {
  background: #dce6e2;
  padding: 30px 25px 10px 25px;
}
.c-details-callout-text h2 {
  color: #aa1e2e;
  font-family: "brandon-grotesque", sans-serif;
  font-size: 16px;
  font-weight: 800;
}
.c-details-callout-text p {
  margin-bottom: 0.6em;
}
.c-details-callout-text img {
  border-radius: 8px;
}
.c-details-callout-text ul {
  margin-left: 20px;
}
.c-details-callout-text .product-image-text {
  align-items: center;
}
.c-details-callout-text .product-image-text img,
.c-details-callout-text .product-image-text p {
  margin-bottom: 0.6em;
}
.c-details-callout-text .product-image-text div:nth-child(2) {
  padding-left: 12px;
}
.c-details-callout-text .product-image-text:last-of-type {
  margin-bottom: 0px;
}
@media (min-width: 768px) {
  .c-details-callout-text {
    padding: 35px 32px 15px 32px;
  }
}
@media (min-width: 1024px) {
  .c-details-callout-text h2 {
    font-size: 17px;
  }
}
@media (min-width: 1280px) {
  .c-details-callout-text {
    padding: 40px 40px 20px 40px;
  }
  .c-details-callout-text h2 {
    font-size: 21px;
  }
}

@media (min-width: 1024px) {
  .room-sidebar .c-details-callout-text .image,
  .room-sidebar .c-details-callout-text .content {
    width: 100%;
  }
}
.c-expandable-text-item {
  margin-bottom: 15px;
}
.c-expandable-text-item button {
  color: #ffffff;
  background-color: #aa1e2e;
  border: 1px solid #222d65;
  border-radius: 0;
  font-family: "brandon-grotesque", sans-serif;
  font-size: 1em;
  text-align: left;
  text-transform: none;
  width: 100%;
}
.c-expandable-text-item button:before {
  content: "+";
  content: "+"/"";
  display: inline-block;
  padding-right: 5px;
  min-width: 12px;
}
.c-expandable-text-item button:hover {
  box-shadow: none;
}
.c-expandable-text-item button.is-active:before {
  content: "–";
  content: "–"/"";
}
.c-expandable-text-item .expand-container {
  border: 1px solid #222d65;
  border-top: 0;
  display: none;
  padding: 24px;
}
.c-expandable-text-item .accessible-header {
  font: unset;
  margin-bottom: 0;
}
@media (min-width: 1280px) {
  .c-expandable-text-item button {
    padding: 16px 24px;
  }
  .c-expandable-text-item .expand-container {
    font-size: 16px;
  }
}

.c-row-with-sidebar .sidebar h2, .c-row-with-sidebar .sidebar h3 {
  font-family: "brandon-grotesque", sans-serif;
  font-size: 16px;
}
.c-row-with-sidebar .sidebar ul {
  margin-left: 20px;
}
.c-row-with-sidebar .sidebar .border-top-greenLight, .c-row-with-sidebar .sidebar .border-top-tanMed {
  margin-top: 40px;
}
.c-row-with-sidebar .sidebar .border-top-greenLight .c-rich-text-item, .c-row-with-sidebar .sidebar .border-top-tanMed .c-rich-text-item {
  margin-top: 0;
}
@media (min-width: 1024px) {
  .c-row-with-sidebar .sidebar {
    padding-left: 50px;
  }
  .c-row-with-sidebar .sidebar .btn {
    text-align: center;
    width: 100%;
  }
  .c-row-with-sidebar .sidebar span.btn {
    width: calc(100% - 68px);
  }
}
@media (min-width: 1280px) {
  .c-row-with-sidebar .sidebar {
    font-size: 16px;
    padding-left: 60px;
  }
  .c-row-with-sidebar .sidebar h2, .c-row-with-sidebar .sidebar h3 {
    font-size: 18px;
  }
}
@media (min-width: 1400px) {
  .c-row-with-sidebar .sidebar {
    padding-left: 70px;
  }
}

.c-headline-blade .image-wrapper {
  display: none;
}
@media (min-width: 768px) {
  .c-headline-blade {
    align-items: center;
    display: flex;
    gap: 10px;
    margin-bottom: 1em;
  }
  .c-headline-blade .image-wrapper {
    background: #edeae7;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-right: 10px;
    width: 98px;
    height: 98px;
  }
  .c-headline-blade .image-wrapper img {
    width: calc(100% - 30px);
  }
  .c-headline-blade h1,
  .c-headline-blade h2 {
    margin-bottom: 0;
  }
}

.c-faq-group button {
  background: none;
  border-radius: 0;
  box-shadow: none;
  color: #aa1e2e;
  font-size: 1em;
  line-height: 1.5em;
  text-align: left;
  padding: 33px 0 35px;
  text-transform: none;
  width: 100%;
}
.c-faq-group button:hover {
  background-color: white;
  box-shadow: none;
  color: #aa1e2e;
}
.c-faq-group .question-category {
  background: url("../images/expand-down-square.svg") no-repeat center right 1px;
  background-size: 31px 31px;
  border-top: 1px solid #dddad7;
  color: #aa1e2e;
  font-family: "brandon-grotesque", sans-serif;
  font-size: 16px;
  font-weight: 800;
  padding-right: 45px;
}
.c-faq-group .question-category:hover {
  text-decoration: underline;
}
.c-faq-group .question-category + dl {
  display: none;
}
.c-faq-group .question-category.is-active {
  background-image: url("../images/expand-up-square.svg");
  color: rgb(61.625, 10.875, 16.675);
}
.c-faq-group dl {
  margin: 0;
}
.c-faq-group dl dt {
  padding: 0 0 26px 0;
}
.c-faq-group dl dt button {
  font-family: "brandon-grotesque", sans-serif;
  font-weight: 800;
  padding: 7px 0 7px 20px;
}
.c-faq-group dl dt button:before {
  content: "+";
  content: "+"/"";
  display: inline-block;
  float: left;
  margin-left: -20px;
  padding-right: 5px;
  min-width: 12px;
}
.c-faq-group dl dt button.is-active {
  color: rgb(61.625, 10.875, 16.675);
}
.c-faq-group dl dt button.is-active:before {
  content: "–";
  content: "–"/"";
}
.c-faq-group dl dd {
  display: none;
  margin: 0;
  padding: 0 0 40px 20px;
}
@media (min-width: 768px) {
  .c-faq-group .question-category {
    font-size: 17px;
  }
}
@media (min-width: 1280px) {
  .c-faq-group .question-category {
    font-size: 21px;
  }
}

.umb-block-list > div:first-child .question-category {
  border-top: 0;
}

.c-two-column-accordion {
  margin-bottom: 35px;
  padding-bottom: 20px;
}
.c-two-column-accordion .column1, .c-two-column-accordion .column2 {
  padding-top: 0;
  padding-bottom: 0;
}
.c-two-column-accordion button {
  background: none;
  border-radius: 0;
  box-shadow: none;
  color: #1e1e1e;
  font-size: 1em;
  line-height: 1.5em;
  text-align: left;
  text-transform: none;
  width: 100%;
}
.c-two-column-accordion button:hover {
  background-color: white;
  box-shadow: none;
  color: #1e1e1e;
}
.c-two-column-accordion dl {
  border-bottom: 1px solid #dddad7;
  margin: 0 auto;
  padding-bottom: 5px;
  max-width: 700px;
}
.c-two-column-accordion dl dt {
  padding: 0;
}
.c-two-column-accordion dl dt button {
  background: url("../images/expand-down-square.svg") no-repeat center right 1px;
  background-size: 31px 31px;
  color: #aa1e2e;
  font-family: "brandon-grotesque", sans-serif;
  font-size: 16px;
  font-weight: 800;
  padding: 33px 45px 30px 0;
}
.c-two-column-accordion dl dt button:hover {
  background-color: white;
  box-shadow: none;
  color: #aa1e2e;
  text-decoration: underline;
}
.c-two-column-accordion dl dt button.is-active {
  background-image: url("../images/expand-up-square.svg");
  color: rgb(61.625, 10.875, 16.675);
}
.c-two-column-accordion dl dt:hover {
  text-decoration: underline;
}
.c-two-column-accordion dl dd {
  display: none;
  margin: 0;
  padding: 0 45px 40px 0;
}
@media (min-width: 1280px) {
  .c-two-column-accordion dl dt button {
    font-size: 18px;
    padding: 35px 45px 36px 0;
  }
  .c-two-column-accordion dl dd {
    font-size: 17px;
  }
}

.c-rich-text-item {
  margin-bottom: 15px;
  margin-top: 15px;
}

.c-rich-text-row {
  padding: 45px 0;
}
.c-rich-text-row .narrow-container {
  width: 80%;
  margin: auto;
}
.c-rich-text-row.no-padding {
  padding: 0;
}

.c-hours {
  margin: 40px 0;
}
.c-hours h2 {
  background: #dce6e2;
  font-family: "brandon-grotesque", sans-serif;
  font-weight: 800;
  margin-left: -15px;
  margin-right: -15px;
  padding: 15px 15px;
}
.c-hours .hours-columns {
  margin-bottom: 40px;
}
.c-hours .hours-columns .hours-item {
  border-bottom: 1px solid #dddad7;
  padding: 20px 0;
}
.c-hours .hours-columns .hours-item h3 {
  font-size: 16px;
  margin-bottom: 0.5em;
}
.c-hours .hours-columns .hours-item ul,
.c-hours .hours-columns .hours-item ol {
  margin-left: 20px;
}
.c-hours .hours-columns .hours-item ul li,
.c-hours .hours-columns .hours-item ol li {
  margin-bottom: 0.3em;
}
.c-hours .hours-columns .hours-item .hours-list + .additional-details {
  margin-top: 1.5em;
}
@media (min-width: 768px) {
  .c-hours .hours-columns {
    column-count: 2;
    column-gap: 30px;
  }
  .c-hours .hours-columns .hours-item {
    break-inside: avoid-column;
    padding: 25px 0;
  }
  .c-hours .hours-columns .hours-item h3 {
    font-size: 17px;
  }
}
@media (min-width: 1024px) {
  .c-hours h2 {
    margin-left: -20px;
    margin-right: 0;
    padding: 15px 20px;
  }
  .c-hours .hours-columns {
    column-gap: 36px;
  }
}
@media (min-width: 1280px) {
  .c-hours .hours-columns {
    column-gap: 42px;
  }
  .c-hours .hours-columns .hours-item h3 {
    font-size: 21px;
  }
}
@media (min-width: 1024px) {
  .c-hours .hours-columns {
    column-gap: 44px;
  }
}

.c-event-item-list {
  padding-bottom: 30px;
  margin-bottom: 50px;
}
.c-event-item-list .events-select {
  z-index: 1;
}
.c-event-item-list .events-select label {
  color: #1e1e1e;
  font-family: "Public Sans", Helvetica, Arial, sans-serif;
  margin-bottom: 10px;
}
.c-event-item-list .events-select .drop-down-button {
  background: url("../images/down-arrow-blueDark-light.svg") no-repeat top 19px right 15px;
  box-shadow: 5px 5px 7px rgba(0, 0, 0, 0.25);
  color: #1e1e1e;
  background-size: 15px auto;
  border: 1px solid #222d65;
  border-radius: 0;
  font-family: "Public Sans", Helvetica, Arial, sans-serif;
  font-weight: normal;
  padding: 14px 35px 14px 15px;
  text-align: left;
  text-transform: none;
  max-width: 320px;
  width: 100%;
}
.c-event-item-list .events-select .drop-down-container {
  border: 0;
}
.c-event-item-list .events-select .drop-down-container legend {
  display: none;
}
.c-event-item-list .events-select .drop-down-container ul {
  background: #edeae7;
  border: 1px solid #222d65;
  border-top: 0;
  box-shadow: 5px 5px 7px rgba(0, 0, 0, 0.25);
  display: none;
  margin: 0;
  padding: 8px 0;
  position: absolute;
  text-transform: none;
  width: 100%;
  z-index: 1;
}
.c-event-item-list .events-select .drop-down-container ul li {
  display: block;
  margin-bottom: 0;
  padding: 0 15px;
}
.c-event-item-list .events-select .drop-down-container ul li a {
  border-top: 1px solid #222d65;
  color: #1e1e1e;
  display: block;
  padding: 8px 30px 8px 0;
  text-decoration: none;
  white-space: nowrap;
}
.c-event-item-list .events-select .drop-down-container ul li a.active {
  background: url("../images/icon-blue-check.svg") no-repeat center right;
  background-size: auto 10px;
}
.c-event-item-list .events-select .drop-down-container ul li:first-child a {
  border-top: 0;
}
.c-event-item-list .events-select .drop-down-container button {
  background: none;
  border-radius: 0;
  padding: 5px;
  position: absolute;
  top: 5px;
  right: 12px;
}
.c-event-item-list .events-select .drop-down-container button:hover {
  box-shadow: none;
}
.c-event-item-list .events-date {
  display: flex;
  gap: 30px;
  border-top: 2px solid #222d65;
  margin-top: 20px;
  padding-top: 30px;
  margin-bottom: 20px;
}
.c-event-item-list .events-date .filter-title {
  color: #aa1e2e;
  font-weight: 800;
  font-size: unset;
  font-family: unset;
}
.c-event-item-list .events-date .filter-selections {
  flex-grow: 1;
}
.c-event-item-list .events-date .filter-selections > div {
  max-width: 320px;
}
.c-event-item-list .events-date label {
  color: #1e1e1e;
  font-family: "Public Sans", Helvetica, Arial, sans-serif;
  margin-bottom: 10px;
}
.c-event-item-list .events-date .duet-date input {
  border-color: #222d65;
  box-shadow: 6px 6px 6px rgba(0, 0, 0, 0.25);
  font-weight: normal;
  min-height: 50px;
  padding: 6px 4px 6px 12px;
  position: relative;
  -webkit-appearance: none;
}
.c-event-item-list .events-date .duet-date input::-webkit-calendar-picker-indicator {
  opacity: 0;
  font-size: 1.2rem;
}
.c-event-item-list .events-date .duet-date input::-webkit-date-and-time-value {
  color: #1e1e1e;
  text-align: left;
}
.c-event-item-list .events-date-headline {
  border-top: 2px solid #222d65;
  margin: 20px 0 20px;
  padding-top: 18px;
  width: 100%;
}
.c-event-item-list .events-date-headline .events-date-callout {
  align-items: center;
  display: flex;
  gap: 15px;
  min-width: 66px;
}
.c-event-item-list .events-date-headline .events-date-callout .events-date-callout-block {
  background: #00818A;
  border-radius: 8px;
  color: #fff;
  line-height: 18px;
  padding: 5px 15px 8px;
  text-align: center;
  text-transform: uppercase;
  min-width: 50px;
}
.c-event-item-list .events-date-headline .events-date-callout .events-date-callout-block.callout-date-blue {
  background-color: #2567b3;
}
.c-event-item-list .events-date-headline .events-date-callout .events-date-callout-block .month {
  font-size: 9px;
  font-weight: bold;
}
.c-event-item-list .events-date-headline .events-date-callout .events-date-callout-block .date {
  display: block;
  font-size: 23px;
  font-weight: bold;
  margin-bottom: 4px;
}
.c-event-item-list .events-date-headline h2 {
  margin-bottom: 0;
}
.c-event-item-list .events-date-headline + p {
  margin-bottom: 40px;
}
.c-event-item-list .events-none {
  margin-bottom: 40px;
}
.c-event-item-list .events-card {
  border: 1px solid #222d65;
  border-radius: 8px;
  box-shadow: 6px 6px 6px rgba(0, 0, 0, 0.25);
  margin: 0 0 40px;
  width: 100%;
}
.c-event-item-list .events-card .events-date-callout {
  background-color: #00818A;
  font-weight: 600;
  color: white;
}
.c-event-item-list .events-card .events-date-callout .month {
  text-transform: uppercase;
}
.c-event-item-list .events-card .content-container {
  padding: 30px 30px 30px 30px;
  align-items: center;
}
.c-event-item-list .events-card .content-container h3 {
  font-weight: 800;
  margin-bottom: 0;
}
.c-event-item-list .events-card .content-container ul,
.c-event-item-list .events-card .content-container ol {
  margin-left: 20px;
}
.c-event-item-list .events-card .content-container ul li,
.c-event-item-list .events-card .content-container ol li {
  margin-bottom: 0.3em;
}
.c-event-item-list .events-card .content-container .image-container {
  padding-left: 30px;
}
.c-event-item-list .events-card .content-container .image-container img {
  border-radius: 8px;
}
.c-event-item-list .events-card .content-container .events-headline {
  display: flex;
  align-items: center;
  gap: 20px;
  margin-bottom: 0.5em;
}
.c-event-item-list .events-card .content-container .events-headline .event-item-callout {
  background-color: #aa1e2e;
  color: white;
  padding: 4px 15px;
  text-transform: uppercase;
  font-weight: 600;
  border-radius: 10px;
}
.c-event-item-list .events-card .content-container .events-details {
  flex-grow: 1;
  border-top: 1px solid #222d65;
  border-bottom: 1px solid #222d65;
  margin: 20px 0;
  padding: 10px 0;
}
.c-event-item-list .events-card .content-container .events-details img {
  float: left;
  margin: 0 10px 10px 0;
}
.c-event-item-list .events-card .content-container .events-details strong {
  color: #aa1e2e;
  font-weight: 600;
}
.c-event-item-list .events-card .content-container .events-details div + div {
  margin-top: 10px;
}
.c-event-item-list .events-card .content-container .events-details .events-time + .events-location {
  margin-top: 20px;
}
.c-event-item-list .events-card .content-container .events-details a {
  color: #1e1e1e;
}
.c-event-item-list .events-card .content-container .events-description--btn-read-more {
  display: none;
  color: #002a54;
  font-weight: bold;
}
.c-event-item-list .events-card--alert {
  background-color: #edeae7;
}
.c-event-item-list .events-card--alert h3 {
  color: #aa1e2e;
}
.c-event-item-list .events-card--alert p {
  color: #1e1e1e;
}
.c-event-item-list .events-card--alert p a {
  color: #1e1e1e;
}
.c-event-item-list .events-navigation button {
  background: none;
  color: #aa1e2e;
  font-size: 1em;
  padding: 0;
}
.c-event-item-list .events-navigation button span {
  display: inline-block;
  font-family: "brandon-grotesque", sans-serif;
  font-size: 1.6em;
  margin-top: -3px;
  padding-right: 3px;
  vertical-align: middle;
}
.c-event-item-list .events-navigation button.events-next {
  float: right;
}
.c-event-item-list .events-navigation button.events-next span {
  padding-right: 0;
  padding-left: 3px;
}
.c-event-item-list .events-navigation button:hover {
  box-shadow: none;
}
@media (max-width: 767px) {
  .c-event-item-list .events-card .image-container {
    flex-basis: 50%;
    order: 2;
  }
  .c-event-item-list .events-card .events-headline {
    order: 1;
    flex-basis: 50%;
  }
  .c-event-item-list .events-card .events-description {
    max-height: 224px;
    order: 4;
    overflow: hidden;
    width: 100%;
    min-width: -moz-available;
    min-width: -webkit-fill-available;
    min-width: stretch;
  }
  .c-event-item-list .events-card .events-description .events-description--btn-read-more {
    background: linear-gradient(0deg, rgb(255, 255, 255) 0%, rgb(255, 255, 255) 36%, rgba(255, 255, 255, 0) 100%);
    padding-top: 50px;
    position: absolute;
    bottom: 0;
    width: 100%;
    cursor: pointer;
  }
  .c-event-item-list .events-card .events-details {
    order: 3;
  }
  .c-event-item-list .events-card .events-details .events-times--times-wrapper {
    display: inline-block;
  }
}
@media (min-width: 768px) {
  .c-event-item-list .events-date {
    margin-bottom: 0;
  }
  .c-event-item-list .events-date .filter-selections {
    display: flex;
    gap: 30px;
  }
  .c-event-item-list .events-date .filter-selections > div {
    max-width: 320px;
    width: 50%;
  }
  .c-event-item-list .events-date input {
    min-width: 250px;
  }
  .c-event-item-list .events-card {
    min-height: 330px;
    padding-left: 280px;
  }
  .c-event-item-list .events-card:after {
    content: " ";
    position: absolute;
    background: #dce6e2;
    border-radius: 8px 0 0 8px;
    top: 0;
    bottom: 0;
    left: 0;
    width: 230px;
  }
  .c-event-item-list .events-card--alert {
    padding-left: 100px;
  }
  .c-event-item-list .events-card--alert .events-headline {
    margin-bottom: 1em;
  }
  .c-event-item-list .events-card--alert:after {
    display: none;
  }
  .c-event-item-list .events-card .content-container {
    padding: 25px 25px 25px 10px;
    position: unset;
  }
  .c-event-item-list .events-card .content-container .image-container {
    border-radius: 8px;
    max-height: 280px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    left: 25px;
    top: 25px;
    width: 230px;
    z-index: 1;
  }
  .c-event-item-list .events-card .content-container .events-headline {
    width: 100%;
  }
  .c-event-item-list .events-card .content-container .events-description {
    margin-bottom: 20px;
  }
  .c-event-item-list .events-card .content-container .events-details {
    border-bottom: 0;
    margin-top: 0;
  }
  .c-event-item-list .events-card .content-container .events-details div {
    display: inline-block;
  }
  .c-event-item-list .events-card .content-container .events-details div + div {
    margin: 0 0 0 30px;
  }
  .c-event-item-list .events-card .content-container .events-details .events-time {
    min-width: 165px;
    vertical-align: top;
  }
  .c-event-item-list .events-card .content-container .events-details .events-time + .events-location {
    margin-top: 0;
    margin-left: 0;
  }
  .c-event-item-list .events-card .content-container .events-description--btn-read-more {
    display: none;
  }
}
@media (min-width: 1024px) {
  .c-event-item-list {
    margin-top: 30px;
  }
  .c-event-item-list.events-filter-wrapper {
    order: 2;
  }
  .c-event-item-list .events-date {
    display: block;
    padding-top: 15px;
    position: sticky;
    top: 100px;
  }
  .c-event-item-list .events-date .filter-title {
    margin-bottom: 25px;
  }
  .c-event-item-list .events-date .filter-selections {
    display: block;
  }
  .c-event-item-list .events-date .filter-selections > div {
    max-width: inherit;
    width: 100%;
  }
  .c-event-item-list .events-date input {
    max-width: inherit;
  }
  .c-event-item-list .events-select .drop-down-button {
    max-width: inherit;
  }
  .c-event-item-list .events-card .content-container .events-details .events-time {
    margin-bottom: 5px;
  }
}
@media (min-width: 1024px) and (max-width: 1279px) {
  .c-event-item-list .events-card {
    padding-left: 234px;
  }
  .c-event-item-list .events-card:after {
    width: 184px;
  }
  .c-event-item-list .events-card--alert {
    padding-left: 100px;
  }
  .c-event-item-list .events-card .content-container .image-container {
    width: 184px;
  }
}
@media (min-width: 1280px) {
  .c-event-item-list {
    padding-bottom: 60px;
  }
  .c-event-item-list.events-filter-wrapper {
    padding-left: 50px;
  }
  .c-event-item-list .events-date-headline h2 {
    font-size: 28px;
  }
  .c-event-item-list .events-card h3 {
    font-size: 26px;
  }
  .c-event-item-list .events-card .content-container {
    padding: 35px 25px 25px 10px;
  }
  .c-event-item-list .events-card .content-container .image-container {
    top: 35px;
  }
  .c-event-item-list .events-card .content-container .events-details {
    font-size: 15px;
  }
  .c-event-item-list .events-navigation {
    margin-top: 60px;
  }
  .c-event-item-list .events-navigation button {
    font-size: 16px;
  }
}

.c-events {
  border-top: 1px solid #222d65;
  padding-top: 30px;
  padding-bottom: 30px;
  margin-bottom: 50px;
}
.c-events .events-select {
  margin-top: 30px;
  max-width: 250px;
  z-index: 1;
}
.c-events .events-select label {
  color: #1e1e1e;
  font-family: "Public Sans", Helvetica, Arial, sans-serif;
  margin-bottom: 10px;
}
.c-events .events-select .drop-down-button {
  background: url("../images/down-arrow-blueDark-light.svg") no-repeat top 19px right 15px;
  box-shadow: 5px 5px 7px rgba(0, 0, 0, 0.25);
  color: #1e1e1e;
  background-size: 15px auto;
  border: 1px solid #222d65;
  border-radius: 0;
  font-family: "Public Sans", Helvetica, Arial, sans-serif;
  font-size: 17px;
  font-weight: normal;
  padding: 14px 12px 14px 15px;
  text-align: left;
  text-transform: none;
  width: 100%;
}
.c-events .events-select .drop-down-container ul {
  background: #edeae7;
  border: 1px solid #222d65;
  border-top: 0;
  box-shadow: 5px 5px 7px rgba(0, 0, 0, 0.25);
  display: none;
  margin: 0;
  padding: 8px 0;
  position: absolute;
  text-transform: none;
  width: 100%;
  z-index: 1;
}
.c-events .events-select .drop-down-container ul li {
  display: block;
  margin-bottom: 0;
  padding: 0 15px;
}
.c-events .events-select .drop-down-container ul li a {
  border-top: 1px solid #222d65;
  color: #1e1e1e;
  display: block;
  padding: 8px 30px 8px 0;
  text-decoration: none;
  white-space: nowrap;
}
.c-events .events-select .drop-down-container ul li a.active {
  background: url("../images/icon-blue-check.svg") no-repeat center right;
  background-size: auto 10px;
}
.c-events .events-select .drop-down-container ul li:first-child a {
  border-top: 0;
}
.c-events .events-select .drop-down-container button {
  background: none;
  border-radius: 0;
  padding: 5px;
  position: absolute;
  top: 5px;
  right: 12px;
}
.c-events .events-select .drop-down-container button:hover {
  box-shadow: none;
}
.c-events .events-date {
  margin-bottom: 30px;
}
.c-events .events-date label {
  color: #1e1e1e;
  font-family: "Public Sans", Helvetica, Arial, sans-serif;
  font-weight: 600;
  margin-bottom: 10px;
}
.c-events .events-date input {
  border-color: #222d65;
  box-shadow: 6px 6px 6px rgba(0, 0, 0, 0.25);
  font-weight: normal;
  max-width: 250px;
  min-height: 50px;
  padding: 6px 4px 6px 12px;
  position: relative;
  -webkit-appearance: none;
}
.c-events .events-date input:after {
  background: url(../images/icon-calendar.svg) no-repeat center right #fff;
  background-size: auto 24px;
  content: "";
  cursor: pointer;
  display: block;
  width: 26px;
  height: 24px;
  position: absolute;
  right: 10px;
  pointer-events: none;
}
.c-events .events-date input::-webkit-calendar-picker-indicator {
  opacity: 0;
  font-size: 1.2rem;
}
.c-events .events-date input::-webkit-date-and-time-value {
  color: #1e1e1e;
  text-align: left;
}
.c-events .events-card {
  border: 1px solid #222d65;
  border-radius: 8px;
  box-shadow: 6px 6px 6px rgba(0, 0, 0, 0.25);
  margin: 40px 0;
}
.c-events .events-card--alert {
  background-color: #edeae7;
}
.c-events .events-card--alert h3 {
  color: #aa1e2e;
}
.c-events .events-card--alert p {
  color: #1e1e1e;
}
.c-events .events-card--alert p a {
  color: #1e1e1e;
}
.c-events .events-card .events-date-callout {
  background-color: #00818A;
  border-radius: 8px;
  color: white;
  font-weight: 600;
  padding: 8px 15px;
  position: absolute;
  top: -15px;
  margin-left: 15px;
  text-align: center;
  min-width: 66px;
}
.c-events .events-card .events-date-callout.callout-date-primary {
  background-color: #2567b3;
}
.c-events .events-card .events-date-callout .month {
  font-size: 11px;
  text-transform: uppercase;
}
.c-events .events-card .events-date-callout .date {
  font-size: 29px;
}
.c-events .events-card .content-container {
  padding: 30px;
  align-items: center;
}
.c-events .events-card .content-container h3 {
  font-weight: 800;
  margin-bottom: 0;
}
.c-events .events-card .content-container ul,
.c-events .events-card .content-container ol {
  margin-left: 20px;
}
.c-events .events-card .content-container ul li,
.c-events .events-card .content-container ol li {
  margin-bottom: 0.3em;
}
.c-events .events-card .content-container .image-container {
  align-self: start;
  padding-left: 30px;
}
.c-events .events-card .content-container .image-container img {
  border-radius: 8px;
}
.c-events .events-card .content-container .events-headline {
  margin-top: 60px;
}
.c-events .events-card .content-container .events-headline h3 + div {
  margin-top: 10px;
}
.c-events .events-card .content-container .events-headline .event-item-callout {
  background-color: #aa1e2e;
  border-radius: 8px;
  color: white;
  padding: 4px 15px;
  text-transform: uppercase;
  font-size: 12px;
  font-weight: 700;
}
.c-events .events-card .content-container .events-details {
  color: #aa1e2e;
  flex-grow: 1;
  border-top: 1px solid #222d65;
  font-weight: 700;
  margin: 24px 0;
  padding-top: 10px;
  width: 100%;
}
.c-events .events-card .content-container .events-details img {
  float: left;
  margin-right: 10px;
}
.c-events .events-card .content-container .events-details strong {
  font-weight: 600;
}
.c-events .events-card .content-container .events-details div + div {
  margin-top: 10px;
}
.c-events .events-card .content-container .events-description--btn-read-more {
  display: none;
  color: #002a54;
  font-weight: bold;
}
.c-events .events-card.events-none .events-description {
  margin-top: 30px;
}
.c-events .events-navigation button {
  background: none;
  color: #aa1e2e;
  font-size: 1em;
  padding: 0;
}
.c-events .events-navigation button span {
  display: inline-block;
  font-family: "brandon-grotesque", sans-serif;
  font-size: 1.6em;
  margin-top: -3px;
  padding-right: 3px;
  vertical-align: middle;
}
.c-events .events-navigation button.events-next {
  float: right;
}
.c-events .events-navigation button.events-next span {
  padding-right: 0;
  padding-left: 3px;
}
.c-events .events-navigation button:hover {
  box-shadow: none;
}
@media (max-width: 767px) {
  .c-events .events-card .image-container {
    width: 140px;
    order: 2;
  }
  .c-events .events-card .events-headline {
    order: 1;
    flex-basis: 50%;
    flex-grow: 1;
  }
  .c-events .events-card .events-description {
    max-height: 224px;
    order: 4;
    overflow: hidden;
  }
  .c-events .events-card .events-description .events-description--btn-read-more {
    background: linear-gradient(0deg, rgb(255, 255, 255) 0%, rgb(255, 255, 255) 36%, rgba(255, 255, 255, 0) 100%);
    padding-top: 50px;
    position: absolute;
    bottom: 0;
    width: 100%;
    cursor: pointer;
  }
  .c-events .events-card .events-details {
    order: 3;
  }
  .c-events .events-card .events-details .events-times--times-wrapper {
    display: inline-block;
  }
  .c-events .events-card--no-image .events-headline {
    flex-basis: 100%;
  }
}
@media (min-width: 768px) {
  .c-events {
    display: flex;
    flex-flow: row wrap;
  }
  .c-events .events-list-headline {
    order: 0;
    padding-top: 28px;
    width: 66.666666%;
  }
  .c-events .events-date {
    order: 1;
    margin-bottom: 0;
    padding-left: 40px;
    width: 33.333333%;
  }
  .c-events .events-wrapper {
    order: 1;
  }
  .c-events h2 {
    margin-top: 20px;
  }
  .c-events .events-card {
    min-height: 330px;
    padding-left: 280px;
  }
  .c-events .events-card:after {
    content: " ";
    position: absolute;
    background: #dce6e2;
    border-radius: 8px 0 0 8px;
    top: 0;
    bottom: 0;
    left: 0;
    width: 230px;
  }
  .c-events .events-card--no-image {
    padding-left: 100px;
    min-height: auto;
  }
  .c-events .events-card--no-image .events-headline {
    margin-bottom: 1em;
  }
  .c-events .events-card--no-image:after {
    display: none;
  }
  .c-events .events-card .events-date-callout {
    left: 15px;
    margin-left: 0;
    z-index: 2;
  }
  .c-events .events-card .content-container {
    padding: 25px 25px 25px 10px;
    position: unset;
  }
  .c-events .events-card .content-container .image-container {
    border-radius: 8px;
    max-height: 280px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    left: 25px;
    top: 25px;
    width: 230px;
    z-index: 1;
  }
  .c-events .events-card .content-container .events-details {
    margin-top: 0;
    width: 100%;
  }
  .c-events .events-card .content-container .events-details div {
    display: inline-block;
    vertical-align: top;
  }
  .c-events .events-card .content-container .events-details div + div {
    margin: 0 0 0 30px;
  }
  .c-events .events-card .content-container .events-headline {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-top: 20px;
    margin-bottom: 0.5em;
    width: 100%;
  }
  .c-events .events-card .content-container .events-headline h3 + div {
    margin-top: 0;
  }
  .c-events .events-card .content-container .events-description {
    margin-bottom: 20px;
  }
  .c-events .events-card .content-container .events-description--btn-read-more {
    display: none;
  }
}
@media (min-width: 1024px) {
  .c-events {
    display: flex;
    flex-flow: row wrap;
  }
  .c-events .events-list-headline {
    padding-top: 0;
    width: 100%;
  }
  .c-events .events-wrapper {
    width: 66.666666%;
  }
  .c-events .events-date {
    float: right;
    margin: 25px 0 0 0;
    order: 2;
    padding-left: 40px;
    width: 33.33333333%;
  }
  .c-events .events-date input {
    min-width: 250px;
    max-width: inherit;
  }
  .c-events .events-date div {
    position: sticky;
    top: 100px;
  }
}
@media (min-width: 1024px) and (max-width: 1279px) {
  .c-events .events-card {
    padding-left: 234px;
  }
  .c-events .events-card:after {
    width: 184px;
  }
  .c-events .events-card--no-image {
    padding-left: 100px;
  }
  .c-events .events-card--no-image:after {
    display: none;
  }
  .c-events .events-card .content-container .image-container {
    width: 184px;
  }
}
@media (min-width: 1280px) {
  .c-events {
    padding-bottom: 60px;
  }
  .c-events .events-date {
    margin-top: 10px;
  }
  .c-events .events-card .events-date-callout {
    min-width: 76px;
  }
  .c-events .events-card .events-date-callout .month {
    font-size: 14px;
  }
  .c-events .events-card .events-date-callout .date {
    font-size: 36px;
  }
  .c-events .events-card .content-container {
    padding: 38px 30px 30px 10px;
  }
  .c-events .events-card .content-container .image-container {
    top: 38px;
  }
  .c-events .events-card .content-container h3 {
    font-size: 26px;
  }
  .c-events .events-card .content-container .events-headline .event-item-callout {
    font-size: 15px;
  }
  .c-events .events-card .content-container .events-details {
    font-size: 15px;
  }
  .c-events .events-card .content-container .events-details .events-times {
    white-space: nowrap;
  }
  .c-events .events-card--no-image .content-container {
    margin-left: 40px;
  }
  .c-events .events-card--no-image .events-description {
    margin-top: 0;
  }
  .c-events .events-navigation {
    margin-top: 60px;
  }
  .c-events .events-navigation button {
    font-size: 16px;
  }
}

.c-resort-gallery h2 {
  margin-top: 30px;
}
.c-resort-gallery h3 {
  font-weight: 800;
}
.c-resort-gallery .gallery-select {
  margin-top: 30px;
  max-width: 250px;
  z-index: 1;
}
.c-resort-gallery .gallery-select label {
  color: #1e1e1e;
  font-family: "Public Sans", Helvetica, Arial, sans-serif;
  margin-bottom: 10px;
}
.c-resort-gallery .gallery-select .drop-down-button {
  background: url("../images/down-arrow-blueDark-light.svg") no-repeat top 19px right 15px;
  box-shadow: 5px 5px 7px rgba(0, 0, 0, 0.25);
  color: #1e1e1e;
  background-size: 15px auto;
  border: 1px solid #222d65;
  border-radius: 0;
  font-family: "Public Sans", Helvetica, Arial, sans-serif;
  font-size: 17px;
  font-weight: normal;
  padding: 14px 12px 14px 15px;
  text-align: left;
  text-transform: none;
  width: 100%;
}
.c-resort-gallery .gallery-select .drop-down-container ul {
  background: #edeae7;
  border: 1px solid #222d65;
  border-top: 0;
  box-shadow: 5px 5px 7px rgba(0, 0, 0, 0.25);
  display: none;
  margin: 0;
  padding: 8px 0;
  position: absolute;
  text-transform: none;
  width: 100%;
  z-index: 1;
}
.c-resort-gallery .gallery-select .drop-down-container ul li {
  display: block;
  margin-bottom: 0;
  padding: 0 15px;
}
.c-resort-gallery .gallery-select .drop-down-container ul li a {
  border-top: 1px solid #222d65;
  color: #1e1e1e;
  display: block;
  padding: 8px 30px 8px 0;
  text-decoration: none;
  white-space: nowrap;
}
.c-resort-gallery .gallery-select .drop-down-container ul li a.active {
  background: url("../images/icon-blue-check.svg") no-repeat center right;
  background-size: auto 10px;
}
.c-resort-gallery .gallery-select .drop-down-container ul li:first-child a {
  border-top: 0;
}
.c-resort-gallery .gallery-select .drop-down-container button {
  background: none;
  border-radius: 0;
  padding: 5px;
  position: absolute;
  top: 5px;
  right: 12px;
}
.c-resort-gallery .gallery-select .drop-down-container button:hover {
  box-shadow: none;
}
.c-resort-gallery .c-full-width-carousel {
  margin: 40px 0;
  z-index: 0;
}
.c-resort-gallery .c-full-width-carousel img {
  height: auto;
  margin-bottom: 60px;
}
.c-resort-gallery .c-full-width-carousel .tns-controls {
  top: 0;
  margin-top: 23%;
}
.c-resort-gallery .c-full-width-carousel .tns-nav {
  counter-reset: slides-num;
  font-size: 16px;
  position: absolute;
  top: 0;
  margin-top: 58%;
  text-align: center;
  width: 100%;
}
.c-resort-gallery .c-full-width-carousel .tns-nav:after {
  content: counter(slides-num);
  display: inline-block;
  padding-left: 5px;
}
.c-resort-gallery .c-full-width-carousel .tns-nav button {
  background: none;
  display: inline-block;
  color: #1e1e1e;
  counter-increment: slides-num;
  font-family: "Public Sans", Helvetica, Arial, sans-serif;
  font-size: 1em;
  font-weight: normal;
  padding: 0;
  text-transform: none;
}
.c-resort-gallery .c-full-width-carousel .tns-nav button span {
  display: none;
}
.c-resort-gallery .c-full-width-carousel .tns-nav button.tns-nav-active:before {
  content: counter(slides-num) " of";
  display: inline-block;
}
.c-resort-gallery .c-full-width-carousel .tns-nav button:hover {
  box-shadow: none;
}
.c-resort-gallery .c-full-width-carousel .tns-nav button:focus {
  outline: none;
}
@media (min-width: 768px) {
  .c-resort-gallery h2 {
    margin-top: 50px;
    max-width: calc(100% - 275px);
  }
  .c-resort-gallery .gallery-select {
    float: right;
    margin-top: -100px;
    min-width: 245px;
  }
  .c-resort-gallery .c-full-width-carousel img {
    margin-bottom: 40px;
  }
  .c-resort-gallery .c-full-width-carousel h3,
  .c-resort-gallery .c-full-width-carousel p {
    width: 75%;
  }
  .c-resort-gallery .c-full-width-carousel .tns-nav {
    text-align: right;
  }
}

.c-constant-contact-form .ctct-form-defaults {
  padding: 0 !important;
}
.c-constant-contact-form .ctct-form-required:before {
  content: "" !important;
}
.c-constant-contact-form .ctct-form-required:after {
  content: "∗";
  position: relative;
  top: -4px;
  left: 4px;
  color: #aa1e2e;
}
.c-constant-contact-form .ctct-form-field {
  margin-bottom: 0 !important;
}
.c-constant-contact-form .ctct-form-listname {
  padding-left: 26px !important;
}

.c-social-share-links .c-social-share-links__links a {
  margin-right: 10px;
}

.c-store-link-bar {
  background: #dce6e2;
  color: #aa1e2e;
  margin: 40px 0 15px;
  padding: 30px 0 25px;
}
.c-store-link-bar ul {
  margin: 0;
  text-align: center;
}
.c-store-link-bar ul li {
  display: inline-block;
  list-style-type: none;
  margin-bottom: 5px;
  padding: 0 8px;
}
.c-store-link-bar ul li a {
  text-decoration: none;
  color: #aa1e2e;
}
.c-store-link-bar ul li a:hover {
  text-decoration: underline;
}

.c-store-items-carousel {
  margin-bottom: 20px;
}
.c-store-items-carousel h2 {
  text-align: center;
  padding-bottom: 15px;
}
.c-store-items-carousel .tns-inner {
  margin-left: 15px !important;
}
.c-store-items-carousel .tns-inner .tns-item {
  padding-top: 8px;
}
.c-store-items-carousel .tns-controls {
  padding: 0 10px;
  position: absolute;
  top: 0;
  margin-top: 12%;
  left: 0;
  pointer-events: none;
  width: 100%;
  z-index: 1;
}
.c-store-items-carousel .tns-controls button {
  background: rgba(255, 255, 255, 0.85);
  border-radius: 8px;
  box-shadow: 3.8px 3.8px 3.8px rgba(0, 0, 0, 0.45);
  padding: 10px;
  pointer-events: auto;
  height: 41px;
  width: 41px;
  background: url("../images/carousel-arrow-l.svg") no-repeat rgba(255, 255, 255, 0.85) center;
  background-size: auto 17px;
  text-indent: -9000px;
}
.c-store-items-carousel .tns-controls button span {
  display: block;
  text-indent: -9999px;
}
.c-store-items-carousel .tns-controls button:nth-of-type(2) {
  background-image: url("../images/carousel-arrow-r.svg");
  float: right;
}
.c-store-items-carousel .tns-controls button.disabled {
  display: none;
}
@media (min-width: 768px) {
  .c-store-items-carousel .tns-inner {
    margin-left: 35px !important;
  }
  .c-store-items-carousel .tns-controls {
    padding: 0 15px;
    margin-top: 8%;
  }
}
@media (min-width: 1024px) {
  .c-store-items-carousel {
    margin-bottom: 0;
  }
  .c-store-items-carousel .tns-outer {
    margin-left: 52px;
    margin-right: 52px;
  }
  .c-store-items-carousel .tns-inner {
    margin-left: 0 !important;
  }
  .c-store-items-carousel .tns-controls {
    padding: 0;
    margin-top: 9%;
    margin-left: -20px;
    width: calc(100% + 40px);
  }
}
@media (min-width: 1280px) {
  .c-store-items-carousel .tns-outer {
    margin-left: 65px;
    margin-right: 65px;
    max-width: 1258px;
  }
}
@media (min-width: 1390px) {
  .c-store-items-carousel .tns-outer {
    margin: 0 auto;
  }
}

.c-store-hero-carousel {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  color: #fff;
  font-weight: 900;
  height: 182px;
  overflow: hidden;
  text-align: center;
}
@media (min-width: 768px) {
  .c-store-hero-carousel {
    height: 207px;
  }
}
@media (min-width: 1024px) {
  .c-store-hero-carousel {
    height: 277px;
  }
}
@media (min-width: 1280px) {
  .c-store-hero-carousel {
    height: 346px;
  }
}
@media (min-width: 1700px) {
  .c-store-hero-carousel {
    height: 460px;
  }
}

.c-banner-shop {
  background-size: cover;
  height: 42px;
  margin-bottom: 30px;
}
.c-banner-shop img {
  width: 140px;
  height: auto;
}
.c-banner-shop a {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%);
}
@media (min-width: 768px) {
  .c-banner-shop {
    height: 63px;
  }
  .c-banner-shop img {
    width: 164px;
  }
}
@media (min-width: 1280px) {
  .c-banner-shop {
    height: 78px;
  }
  .c-banner-shop img {
    width: 205px;
  }
}

.c-product-list {
  margin-bottom: 40px;
}
.c-product-list h1 {
  border-bottom: 4px solid #2567b3;
  padding-bottom: 5px;
}
.c-product-list .product-list-sidebar {
  padding-left: 0;
}
.c-product-list .product-list-filters {
  border-bottom: 1px solid #222d65;
  padding: 10px 0 30px;
}
.c-product-list .product-list-filters .filter-group .filter-wrapper {
  width: 193px;
}
.c-product-list .product-list-filters .filter-group > label {
  font-family: "Public Sans", Helvetica, Arial, sans-serif;
  font-size: 13px;
  font-weight: 900;
}
.c-product-list .product-list-filters .filter-group .drop-down-button {
  background: url("../images/down-arrow-blueDark-light.svg") no-repeat top 17px right 15px;
  box-shadow: 5px 5px 7px rgba(0, 0, 0, 0.25);
  color: #1e1e1e;
  background-size: 13px auto;
  border: 1px solid #222d65;
  border-radius: 0;
  font-family: "Public Sans", Helvetica, Arial, sans-serif;
  font-weight: normal;
  padding: 12px 12px 12px 15px;
  text-align: left;
  text-transform: none;
  width: 100%;
}
.c-product-list .product-list-filters .filter-group .drop-down-container ul {
  background: #edeae7;
  border: 1px solid #222d65;
  border-top: 0;
  box-shadow: 5px 5px 7px rgba(0, 0, 0, 0.25);
  display: none;
  margin: 0;
  padding: 14px 0 0;
  position: absolute;
  text-transform: none;
  width: 100%;
  z-index: 1;
}
.c-product-list .product-list-filters .filter-group .drop-down-container ul li {
  display: block;
  margin-bottom: 0;
  padding: 0 15px;
}
.c-product-list .product-list-filters .filter-group .drop-down-container ul li label {
  font-family: "Public Sans", Helvetica, Arial, sans-serif;
  font-size: inherit;
}
.c-product-list .product-list-filters .filter-group .drop-down-container ul li.close {
  position: unset;
}
.c-product-list .product-list-filters .filter-group .drop-down-container button {
  background: none;
  border-radius: 0;
  padding: 5px;
  position: absolute;
  top: 5px;
  right: 12px;
}
.c-product-list .product-list-filters .filter-group .drop-down-container button:hover {
  box-shadow: none;
}
.c-product-list .product-list-filters .filter-sidebar {
  display: none;
}
@media (min-width: 768px) {
  .c-product-list .product-list-filters .filter-group > label {
    font-size: 14px;
    display: inline-block;
    margin-right: 20px;
  }
  .c-product-list .product-list-filters .filter-group .filter-wrapper {
    display: inline-block;
  }
}
@media (min-width: 1024px) {
  .c-product-list h1 {
    margin-bottom: 48px;
  }
  .c-product-list .product-list-filters {
    border-bottom: 0;
    padding: 0;
  }
  .c-product-list .product-list-filters .filter-group {
    display: none;
  }
  .c-product-list .product-list-filters .filter-sidebar {
    display: block;
    background: #edeae7;
    border: 1px solid #222d65;
    margin-right: 18px;
    padding: 30px 25px 15px 25px;
  }
  .c-product-list .product-list-filters .filter-sidebar h2 {
    border-bottom: 1px solid #222d65;
    font-family: "Public Sans", Helvetica, Arial, sans-serif;
    font-size: 14px;
    font-weight: 900;
    margin-bottom: 20px;
    padding-bottom: 10px;
  }
  .c-product-list .product-list-filters .filter-sidebar ul {
    margin: 0;
  }
  .c-product-list .product-list-filters .filter-sidebar ul li {
    display: block;
    margin-bottom: 0;
    padding: 0;
  }
  .c-product-list .product-list-filters .filter-sidebar ul li label {
    font-family: "Public Sans", Helvetica, Arial, sans-serif;
    font-size: inherit;
  }
}
@media (min-width: 1280px) {
  .c-product-list h1 {
    margin-bottom: 60px;
  }
  .c-product-list .product-list-filters .filter-sidebar {
    margin-right: 24px;
  }
  .c-product-list .product-list-filters .filter-sidebar h2 {
    font-size: 15px;
  }
}

.t-product-category h1 {
  border-bottom: 4px solid #2567b3;
  margin-top: 40px;
  margin-bottom: 0;
  padding-bottom: 5px;
}

.c-product-details .product-gallery {
  margin-bottom: 14px;
}
.c-product-details .product-gallery .product-gallery-main {
  border-radius: 13px;
  margin-bottom: 10px;
  width: 100%;
}
.c-product-details .product-gallery .gallery-button-wrapper {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0px;
  width: 100%;
  z-index: 1;
}
.c-product-details .product-gallery .gallery-button-wrapper .image-button {
  float: right;
  padding: 10px;
  background: url("../images/carousel-arrow-r.svg") no-repeat rgba(255, 255, 255, 0.85) center;
  background-size: auto 25px;
  border-radius: 7px;
  height: 40px;
  width: 30px;
  margin: auto 10px;
}
.c-product-details .product-gallery .gallery-button-wrapper .image-button.previous-image {
  float: left;
  background-image: url("../images/carousel-arrow-l.svg");
}
.c-product-details .product-gallery .gallery-button-wrapper .image-button img {
  width: 20px;
}
.c-product-details .product-gallery .product-gallery-thumbnails input {
  border: #222d65 1px solid;
  width: 100%;
}
.c-product-details .product-gallery .product-gallery-thumbnails .tns-controls {
  position: absolute;
  top: 0;
  margin-top: 18px;
  left: -8px;
  pointer-events: none;
  width: calc(100% + 16px);
  z-index: 1;
}
.c-product-details .product-gallery .product-gallery-thumbnails .tns-controls button {
  background: rgba(255, 255, 255, 0.85);
  border-radius: 8px;
  box-shadow: 3.8px 3.8px 3.8px rgba(0, 0, 0, 0.45);
  padding: 6px;
  pointer-events: auto;
  height: 30px;
  width: 30px;
  background: url("../images/carousel-arrow-l.svg") no-repeat rgba(255, 255, 255, 0.85) center;
  background-size: auto 17px;
  text-indent: -9000px;
}
.c-product-details .product-gallery .product-gallery-thumbnails .tns-controls button span {
  display: block;
  text-indent: -9999px;
}
.c-product-details .product-gallery .product-gallery-thumbnails .tns-controls button:nth-of-type(2) {
  background-image: url("../images/carousel-arrow-r.svg");
  float: right;
}
.c-product-details .product-gallery .product-gallery-thumbnails .tns-controls button.disabled {
  display: none;
}
.c-product-details .product-description h2 {
  color: #1e1e1e;
  font-family: "Public Sans", Helvetica, Arial, sans-serif;
  font-size: 15px;
  margin-top: 40px;
  margin-bottom: 1em;
  padding-top: 26px;
  text-transform: uppercase;
}
.c-product-details ul, .c-product-details ol {
  margin-left: 20px;
}
.c-product-details .c-callout-text {
  margin-top: 40px;
}
@media (min-width: 768px) {
  .c-product-details h1 {
    font-size: 34px;
  }
}
@media (min-width: 1024px) {
  .c-product-details .product-gallery {
    padding-right: 10px;
  }
  .c-product-details h1 {
    font-size: 34px;
  }
}
@media (min-width: 1280px) {
  .c-product-details .product-gallery {
    padding-right: 16px;
  }
  .c-product-details .product-gallery .product-gallery-main {
    margin-bottom: 15px;
  }
  .c-product-details h1 {
    font-size: 37px;
  }
  .c-product-details h2.border-top {
    font-size: 17px;
  }
  .c-product-details form .custom-select > label, .c-product-details form .custom-number > label {
    font-size: 16px;
  }
}

.c-product-addtocart .product-price {
  color: #aa1e2e;
  font-size: 21px;
  margin-bottom: 1rem;
}
.c-product-addtocart .product-quantity-input {
  margin-top: 24px;
}
.c-product-addtocart .text-warning {
  margin-top: 1em;
}
.c-product-addtocart form {
  margin-bottom: 30px;
}
.c-product-addtocart form .custom-select > label,
.c-product-addtocart form .custom-number > label {
  font-family: "Public Sans", Helvetica, Arial, sans-serif;
  font-size: 13px;
  font-weight: 900;
}
.c-product-addtocart form .custom-select .filter-wrapper {
  width: 193px;
}
.c-product-addtocart form .custom-select .drop-down-button {
  background: url("../images/down-arrow-blueDark-light.svg") no-repeat top 17px right 15px;
  box-shadow: 5px 5px 7px rgba(0, 0, 0, 0.25);
  color: #1e1e1e;
  background-size: 13px auto;
  border: 1px solid #222d65;
  border-radius: 0;
  font-family: "Public Sans", Helvetica, Arial, sans-serif;
  font-weight: normal;
  padding: 12px 12px 12px 15px;
  text-align: left;
  text-transform: none;
  width: 100%;
}
.c-product-addtocart form .custom-select .drop-down-button.error {
  border-color: #aa1e2e;
}
.c-product-addtocart form .custom-select .drop-down-container ul {
  background: #edeae7;
  border: 1px solid #222d65;
  border-top: 0;
  box-shadow: 5px 5px 7px rgba(0, 0, 0, 0.25);
  display: none;
  margin: 0;
  padding: 0;
  position: absolute;
  text-transform: none;
  width: 100%;
  z-index: 1;
}
.c-product-addtocart form .custom-select .drop-down-container ul li {
  background: #edeae7;
  display: block;
  margin-bottom: 0;
  padding: 0 15px;
}
.c-product-addtocart form .custom-select .drop-down-container ul li:hover {
  background: #e1dcd5;
}
.c-product-addtocart form .custom-select .drop-down-container ul li button {
  background: none;
  border-bottom: 1px solid #222d65;
  border-radius: 0;
  color: #1e1e1e;
  font-family: "Public Sans", Helvetica, Arial, sans-serif;
  font-weight: normal;
  padding: 15px 0;
  text-align: left;
  text-transform: none;
  width: 100%;
}
.c-product-addtocart form .custom-select .drop-down-container ul li button:hover {
  box-shadow: none;
}
.c-product-addtocart form .custom-select .drop-down-container ul li:last-of-type button {
  border: 0;
}
.c-product-addtocart form .custom-select select {
  box-shadow: 5px 5px 7px rgba(0, 0, 0, 0.25);
}
.c-product-addtocart form .custom-number input {
  box-shadow: 5px 5px 7px rgba(0, 0, 0, 0.25);
  font-size: 0.88em;
  font-weight: normal;
  margin-bottom: 0;
  padding: 12px 12px 12px 15px;
}
.c-product-addtocart form .btn-cart {
  background-color: #aa1e2e;
  min-width: 190px;
}
@media (min-width: 1280px) {
  .c-product-addtocart form .custom-select > label,
  .c-product-addtocart form .custom-number > label {
    font-size: 16px;
  }
}

.c-product-blade h2 {
  font-size: 37px;
}
.c-product-blade h2 a {
  text-decoration: none;
  color: #aa1e2e;
}

.c-dialog-cart {
  background: rgba(0, 0, 0, 0.44);
  display: block;
  position: fixed;
  top: 0;
  bottom: 0;
  height: 100%;
  width: 100%;
  z-index: 50;
}
.c-dialog-cart .dialog-container {
  background: #fff;
  border-radius: 8px;
  box-shadow: 7px 7px 5px rgba(0, 0, 0, 0.3);
  margin: 0 auto;
  margin-top: 60px;
  max-width: 490px;
  padding: 40px 30px 30px 30px;
}
.c-dialog-cart .dialog-container .btn-close {
  background: none;
  border: 0;
  padding: 10px 10px;
  position: absolute;
  right: 0;
  top: 0;
}
.c-dialog-cart .dialog-container .btn-close:hover {
  box-shadow: none;
}
.c-dialog-cart .dialog-container h2 {
  color: #aa1e2e;
}
.c-dialog-cart .dialog-container .col-section {
  flex-wrap: nowrap;
}
.c-dialog-cart .dialog-container .product-image {
  border: 1px solid #222d65;
  border-radius: 8px;
  margin-right: 15px;
}
.c-dialog-cart .dialog-container p {
  margin-bottom: 1.5em;
}
.c-dialog-cart .dialog-container .btn {
  margin-top: 10px;
}
.c-dialog-cart .dialog-container .btn:first-of-type {
  margin-top: 30px;
  margin-right: 15px;
}
.c-dialog-cart .dialog-container .btn-primary {
  border-width: 1px;
}
@media (min-width: 768px) {
  .c-dialog-cart .dialog-container {
    margin-top: 130px;
  }
}
@media (min-width: 1280px) {
  .c-dialog-cart .dialog-container {
    margin-top: 180px;
    max-width: 555px;
  }
  .c-dialog-cart .dialog-container .product-image {
    width: 110px;
    height: auto;
  }
}

.c-dialog-verification {
  background: rgba(0, 0, 0, 0.44);
  display: none;
  position: fixed;
  top: 0;
  bottom: 0;
  height: 100%;
  width: 100%;
  z-index: 50;
}
.c-dialog-verification .dialog-container {
  background: #fff;
  border-radius: 8px;
  box-shadow: 7px 7px 5px rgba(0, 0, 0, 0.3);
  margin: 0 auto;
  margin-top: 60px;
  max-width: 490px;
  padding: 40px 30px 30px 30px;
}
.c-dialog-verification .dialog-container h2 {
  color: #aa1e2e;
}
.c-dialog-verification .dialog-container p {
  margin-bottom: 1.5em;
}
.c-dialog-verification .dialog-container .col-section {
  flex-wrap: nowrap;
}
.c-dialog-verification .dialog-container .input-wrapper {
  display: flex;
}
.c-dialog-verification .dialog-container .input-wrapper input[type=radio] {
  margin-right: unset;
  margin-left: 10px;
  margin-top: 2px;
}
.c-dialog-verification .dialog-container .input-wrapper .label-text {
  margin-left: 10px;
}
.c-dialog-verification .dialog-container .product-image {
  border: 1px solid #222d65;
  border-radius: 8px;
  margin-right: 15px;
}
.c-dialog-verification .dialog-container .btn {
  margin-top: 10px;
}
.c-dialog-verification .dialog-container .btn:first-of-type {
  margin-top: 30px;
  margin-right: 15px;
}
.c-dialog-verification .dialog-container .btn-cart-enabled {
  opacity: 1;
}
.c-dialog-verification .dialog-container .btn-cart-disabled {
  opacity: 0.2;
}
.c-dialog-verification .dialog-container .btn-close {
  background: none;
  border: 0;
  padding: 10px 10px;
  position: absolute;
  right: 0;
  top: 0;
}
.c-dialog-verification .dialog-container .btn-close:hover {
  box-shadow: none;
}
@media (min-width: 768px) {
  .c-dialog-verification .dialog-container {
    margin-top: 130px;
  }
}
@media (min-width: 1280px) {
  .c-dialog-verification .dialog-container {
    margin-top: 180px;
    max-width: 555px;
  }
  .c-dialog-verification .dialog-container .product-image {
    width: 110px;
    height: auto;
  }
}
.c-dialog-verification .validation-message {
  color: #aa1e2e;
}

.shopping-cart table {
  width: 100%;
}
.shopping-cart img {
  border-radius: 8px;
  max-width: unset;
}
.shopping-cart th, .shopping-cart td {
  border-bottom: 1px solid #222d65;
}
.shopping-cart th:nth-child(2), .shopping-cart th:nth-child(4), .shopping-cart td:nth-child(2), .shopping-cart td:nth-child(4) {
  text-align: right;
}
.shopping-cart th:nth-child(3), .shopping-cart td:nth-child(3) {
  text-align: center;
}
.shopping-cart th {
  color: #2d2d2d;
  font-size: 13px;
  font-weight: 600;
  padding: 20px 32px 10px 0;
}
.shopping-cart th:nth-child(1) {
  text-align: left;
}
.shopping-cart th:last-of-type {
  padding-right: 0;
}
.shopping-cart td {
  padding: 32px 32px 32px 0;
  vertical-align: middle;
}
.shopping-cart td:last-of-type {
  padding-right: 0;
}
.shopping-cart tr:last-of-type td {
  border-bottom: 0;
}
.shopping-cart input[type=number] {
  font-family: "Public Sans", Helvetica, Arial, sans-serif;
  font-weight: normal;
  margin-bottom: 0;
  width: 70px;
  padding: 10px;
  text-align: center;
}
.shopping-cart .cart-table-item {
  flex-wrap: nowrap;
  gap: 25px;
}
.shopping-cart .cart-table-item .cart-details {
  font-size: 14px;
}
.shopping-cart .cart-table-item p {
  line-height: 1.5em;
}
.shopping-cart .cart-table-item .product-name {
  font-weight: bold;
}
.shopping-cart .cart-table-item .product-name a {
  text-decoration: none;
  color: #aa1e2e;
}
.shopping-cart .bonus-gift-card-selection {
  padding: 10px 10px;
  margin-top: 20px;
  font-size: 85%;
}
@media (min-width: 768px) {
  .shopping-cart .bonus-gift-card-selection {
    padding: 10px 15px;
    font-size: unset;
  }
}
.shopping-cart .cart-checkout {
  float: right;
}
.shopping-cart .mobile-only {
  white-space: nowrap;
}
.shopping-cart .total-with-discounts {
  color: #aa1e2e;
}
.shopping-cart .orderline-total-with-discount {
  color: #aa1e2e;
}
.shopping-cart .orderline-total-without-discount {
  text-decoration: line-through;
}
.shopping-cart .promo-code {
  display: flex;
  flex-flow: column wrap;
  margin-bottom: 20px;
}
.shopping-cart .promo-code ul {
  display: flex;
  flex-flow: row nowrap;
  justify-content: flex-end;
}
.shopping-cart .promo-code li {
  list-style-type: none;
  margin-right: 0.5rem;
}
.shopping-cart .promo-code li a {
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  border-radius: 0.25rem;
  border: 2px solid #aa1e2e;
  text-decoration: none;
  color: #ffffff;
  background-color: #aa1e2e;
}
.shopping-cart .promo-code li a:hover {
  color: #aa1e2e;
  background-color: #ffffff;
}
.shopping-cart .promo-code .promo-code-input-wrapper {
  display: flex;
  flex-flow: column nowrap;
  align-items: flex-end;
  margin-bottom: 20px;
}
.shopping-cart .promo-code .promo-code-input-wrapper label {
  white-space: nowrap;
}
.shopping-cart .promo-code .promo-code-input-wrapper .promo-code-input {
  width: 100%;
}
.shopping-cart .promo-code .promo-code-input-wrapper .promo-code-button {
  margin-left: 20px;
}
.shopping-cart .form-error {
  display: inline-block;
}
@media (max-width: 767px) {
  .shopping-cart img {
    width: 70px;
    height: 58px;
  }
  .shopping-cart th:nth-child(2), .shopping-cart th:nth-child(3), .shopping-cart td:nth-child(2), .shopping-cart td:nth-child(3) {
    display: none;
  }
  .shopping-cart th {
    padding: 10px 24px 10px 0;
  }
  .shopping-cart th:last-of-type {
    padding-right: 0;
  }
  .shopping-cart td {
    padding: 24px 24px 24px 0;
    vertical-align: top;
  }
  .shopping-cart td:last-of-type {
    padding-right: 0;
  }
  .shopping-cart .cart-table-item {
    gap: 20px;
  }
  .shopping-cart .cart-table-item .cart-details {
    font-size: 13px;
  }
  .shopping-cart .cart-table-item p {
    line-height: 1.3em;
  }
  .shopping-cart label {
    color: #2d2d2d;
    display: inline-block;
    font-family: "Public Sans", Helvetica, Arial, sans-serif;
    font-weight: normal;
    margin-right: 10px;
  }
  .shopping-cart input[type=number] {
    margin-top: 15px;
    width: 60px;
  }
}
@media (min-width: 768px) {
  .shopping-cart .promo-code .promo-code-input-wrapper {
    flex-flow: row nowrap;
    align-items: baseline;
    justify-content: flex-end;
    margin-bottom: 0;
  }
  .shopping-cart .promo-code .promo-code-input-wrapper .promo-code-input {
    max-width: 250px;
    margin-left: 20px;
  }
}
@media (min-width: 1280px) {
  .shopping-cart th {
    font-size: 15px;
  }
  .shopping-cart .cart-table-item .cart-details {
    font-size: 15px;
  }
}

.t-search-results h1 {
  padding-top: 1rem;
}
.t-search-results__items-container {
  padding-top: 3rem;
}
.t-search-results__item {
  border-bottom: 1px solid gray;
  margin-bottom: 2rem;
  padding-bottom: 1rem;
}

.c-umbraco-form-row {
  float: unset;
}
.c-umbraco-form-row .padding-none {
  padding: 0;
}

.c-umbraco-form__form {
  margin-top: 24px;
}

.c-table-component {
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
}
.c-table-component .footnotes {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
}
.c-table-component .responsive-table-row-description {
  border-collapse: collapse;
  width: 100%;
}
.c-table-component .responsive-table-row-description th, .c-table-component .responsive-table-row-description td {
  padding: 10px;
  vertical-align: top;
  box-sizing: border-box;
}
.c-table-component .responsive-table-row-description thead th {
  font-family: "archivo", Helvetica, Arial, sans-serif;
  font-size: 18px;
}
.c-table-component .responsive-table-row-description thead th:first-child {
  text-align: left;
}
.c-table-component .responsive-table-row-description thead th.th-color {
  border: 1px solid #fff;
}
.c-table-component .responsive-table-row-description thead th.bg-black, .c-table-component .responsive-table-row-description thead th.bg-greyDark, .c-table-component .responsive-table-row-description thead th.bg-blue, .c-table-component .responsive-table-row-description thead th.bg-blueAlt, .c-table-component .responsive-table-row-description thead th.bg-blueDark, .c-table-component .responsive-table-row-description thead th.bg-red, .c-table-component .responsive-table-row-description thead th.bg-green {
  color: #fff;
}
.c-table-component .responsive-table-row-description thead th.bg-greenMed, .c-table-component .responsive-table-row-description thead th.bg-greenLight, .c-table-component .responsive-table-row-description thead th.bg-yellow, .c-table-component .responsive-table-row-description thead th.bg-orange, .c-table-component .responsive-table-row-description thead th.bg-blueLight, .c-table-component .responsive-table-row-description thead th.bg-blueWhite {
  color: #222d65;
}
.c-table-component .responsive-table-row-description thead th.bg-tanLight {
  color: #aa1e2e;
}
.c-table-component .responsive-table-row-description tbody th {
  background: #f6f6f6;
  border: 1px solid #ddd;
  text-align: left;
}
.c-table-component .responsive-table-row-description tbody td {
  border: 1px solid #ddd;
  font-size: 16px;
  text-align: center;
}
.c-table-component .responsive-table-row-description tbody td img {
  margin: 0 auto;
}
@media (max-width: 800px) {
  .c-table-component .responsive-table-row-description table, .c-table-component .responsive-table-row-description thead, .c-table-component .responsive-table-row-description tbody, .c-table-component .responsive-table-row-description th, .c-table-component .responsive-table-row-description td, .c-table-component .responsive-table-row-description tr {
    display: block;
  }
  .c-table-component .responsive-table-row-description tr {
    display: flex;
    flex-wrap: wrap;
  }
  .c-table-component .responsive-table-row-description thead th:first-of-type {
    display: none;
  }
  .c-table-component .responsive-table-row-description thead th:nth-child(2):nth-last-child(1) {
    width: 100%;
  }
  .c-table-component .responsive-table-row-description thead th:nth-child(2):nth-last-child(2), .c-table-component .responsive-table-row-description thead th:first-child:nth-last-child(2) ~ th {
    width: 50%;
  }
  .c-table-component .responsive-table-row-description thead th:nth-child(2):nth-last-child(3), .c-table-component .responsive-table-row-description thead th:nth-child(2):nth-last-child(3) ~ th {
    width: 33.3333%;
  }
  .c-table-component .responsive-table-row-description thead th:nth-child(2):nth-last-child(4), .c-table-component .responsive-table-row-description thead th:nth-child(2):nth-last-child(4) ~ th {
    width: 25%;
  }
  .c-table-component .responsive-table-row-description tbody tr th {
    text-align: center;
    width: 100%;
  }
  .c-table-component .responsive-table-row-description tbody tr td {
    text-align: center;
  }
  .c-table-component .responsive-table-row-description tbody tr td:nth-child(2):nth-last-child(1) {
    width: 100%;
  }
  .c-table-component .responsive-table-row-description tbody tr td:nth-child(2):nth-last-child(2), .c-table-component .responsive-table-row-description tbody tr td:first-child:nth-last-child(2) ~ td {
    width: 50%;
  }
  .c-table-component .responsive-table-row-description tbody tr td:nth-child(2):nth-last-child(3), .c-table-component .responsive-table-row-description tbody tr td:nth-child(2):nth-last-child(3) ~ td {
    width: 33.3333%;
  }
  .c-table-component .responsive-table-row-description tbody tr td:nth-child(2):nth-last-child(4), .c-table-component .responsive-table-row-description tbody tr td:nth-child(2):nth-last-child(4) ~ td {
    width: 25%;
  }
}
@media (min-width: 1024px) {
  .c-table-component {
    margin-top: 2.5rem;
    margin-bottom: 2.5rem;
  }
}

.calendar-tabs {
  margin-top: 1em;
  font-family: "brandon-grotesque", sans-serif;
  font-weight: bold;
}
.calendar-tabs .today-button-wrapper {
  width: 100%;
  padding: 10px;
  box-sizing: border-box;
  text-align: center;
}
@media (min-width: 768px) {
  .calendar-tabs .today-button-wrapper {
    display: none;
  }
}
.calendar-tabs .today-button-wrapper .scroll-today-button::after {
  transform: rotate(90deg);
  margin-left: 3px;
  margin-top: 3px;
}
.calendar-tabs .secondary-nav-button {
  border-radius: 0;
  background-image: url(../images/down-arrow-black.svg);
  background-position: center right 15px;
  background-repeat: no-repeat;
  background-size: 13px auto;
  background-color: #eaaa21;
  color: #1e1e1e;
  font-size: inherit;
  padding: 15px 20px;
  text-align: left;
  text-transform: none;
  width: 100%;
}
.calendar-tabs .secondary-nav-button:hover {
  box-shadow: none;
}
.calendar-tabs ul {
  margin: 0;
  text-align: left;
}
.calendar-tabs ul li {
  list-style-type: none;
  margin: 0 20px;
}
.calendar-tabs ul li button {
  color: #1e1e1e;
  display: block;
  padding: 20px 0;
  text-align: left;
  text-decoration: none;
  width: 100%;
  background-color: unset;
  border-radius: 0;
}
.calendar-tabs ul li button:hover {
  text-decoration: underline;
}
@media (max-width: 1023px) {
  .calendar-tabs ul {
    background: #edeae7;
    box-shadow: 5px 5px 7px rgba(0, 0, 0, 0.25);
    display: none;
    position: absolute;
    width: 100%;
    z-index: 1;
  }
  .calendar-tabs ul li button {
    border-top: 1px solid #222d65;
  }
  .calendar-tabs ul li button.active {
    background: url("../images/icon-blue-check.svg") no-repeat center right 20px;
    background-size: auto 10px;
  }
  .calendar-tabs ul li:first-child a, .calendar-tabs ul li:first-child button {
    border-top: 0;
  }
}
@media (min-width: 1024px) {
  .calendar-tabs .secondary-nav-button {
    display: none;
  }
  .calendar-tabs ul {
    display: flex !important;
    justify-content: left;
    margin: 0;
    text-align: center;
  }
  .calendar-tabs ul li {
    margin: 0;
    border-top: 1px #333 solid;
    border-right: 1px #333 solid;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    overflow: hidden;
  }
  .calendar-tabs ul li:first-child {
    border-left: 1px #333 solid;
  }
  .calendar-tabs ul li button {
    padding: 20px;
  }
  .calendar-tabs ul li button.active {
    background: #eaaa21;
  }
  .calendar-tabs ul li button:hover {
    background: #eaaa21;
    text-decoration: none;
  }
}
@media (min-width: 1280px) {
  .calendar-tabs ul li button {
    padding: 20px 30px;
  }
}
@media (min-width: 1400px) {
  .calendar-tabs ul li button {
    padding: 20px 40px;
  }
}

.hours-calendar .calendar {
  display: flex;
  flex-wrap: wrap;
}
.hours-calendar .calendar-header {
  display: none;
}
@media (min-width: 768px) {
  .hours-calendar .calendar-header {
    display: flex;
    flex-wrap: wrap;
  }
}
.hours-calendar .month-header {
  border: 1px solid #ddd;
  width: 100%;
  padding: 20px 10px;
  box-sizing: border-box;
  text-align: center;
  font-weight: bold;
  color: #222d65;
  font-size: 23px;
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-around;
  align-items: center;
}
.hours-calendar .month-header .month-button {
  flex: 1;
}
.hours-calendar .month-header .month-button a {
  text-decoration: none;
}
.hours-calendar .month-header .month-button img {
  width: 20px;
}
.hours-calendar .month-header .month-button.previous-month {
  transform: rotate(180deg);
}
.hours-calendar .month-header .month-title {
  flex: 2;
}
@media (min-width: 1280px) {
  .hours-calendar .month-header {
    font-size: 30px;
  }
}
.hours-calendar .calendar-object {
  border: 1px solid #ddd;
  width: 100%;
  padding: 10px;
  box-sizing: border-box;
}
.hours-calendar .calendar-object.day {
  text-align: left;
  vertical-align: top;
  height: 130px;
}
.hours-calendar .calendar-object.header {
  text-align: center;
  font-weight: bold;
  color: #222d65;
}
.hours-calendar .calendar-object .hours {
  padding: 3px 7px;
  border-radius: 8px;
  background-color: #2567b3;
  color: #ffffff;
  font-size: 14px;
  cursor: pointer;
}
.hours-calendar .calendar-object .hours.closed {
  background-color: #aa1e2e;
}
.hours-calendar .calendar-object .override-info {
  margin-top: 1em;
  margin-bottom: 1em;
  padding: 0px 7px;
  color: #aa1e2e;
  font-size: 14px;
  text-align: center;
  cursor: pointer;
}
.hours-calendar .today-date {
  background-color: #99bed5;
}
.hours-calendar .placeholder-date, .hours-calendar .past-date {
  display: none;
}
.hours-calendar .desktop-date {
  display: none;
}
@media (min-width: 768px) {
  .hours-calendar .calendar-object {
    width: 14.2857142857%;
  }
  .hours-calendar .placeholder-date, .hours-calendar .past-date {
    display: block;
  }
  .hours-calendar .mobile-date {
    display: none;
  }
  .hours-calendar .desktop-date {
    display: inline-block;
  }
  .hours-calendar .scroll-to-date {
    display: none;
  }
}
.hours-calendar .event {
  background-color: #2567b3;
  color: #ffffff;
  padding: 5px;
}

.c-hours-day-dialog {
  background: rgba(0, 0, 0, 0.44);
  position: fixed;
  top: 0;
  bottom: 0;
  height: 100%;
  width: 100%;
  z-index: 50;
}
.c-hours-day-dialog .dialog-container {
  background: #fff;
  border-radius: 8px;
  box-shadow: 7px 7px 5px rgba(0, 0, 0, 0.3);
  margin: 0 auto;
  margin-top: 60px;
  max-width: 490px;
  padding: 40px 45px 30px;
}
.c-hours-day-dialog .dialog-container .day-date {
  font-size: 1.5em;
  font-weight: bold;
  margin-bottom: 0.5em;
}
.c-hours-day-dialog .dialog-container .btn-close {
  background: none;
  border: 0;
  padding: 10px 10px;
  position: absolute;
  right: 0;
  top: 0;
}
.c-hours-day-dialog .dialog-container .btn-close:hover {
  box-shadow: none;
}
.c-hours-day-dialog .dialog-container .col-section {
  flex-wrap: nowrap;
}
.c-hours-day-dialog .dialog-container p {
  margin-bottom: 1.5em;
}
.c-hours-day-dialog .dialog-container .btn {
  margin-top: 10px;
}
.c-hours-day-dialog .attraction-hours-wrapper {
  margin-bottom: 1.6em;
  text-decoration: none;
}
.c-hours-day-dialog .attraction-hours-wrapper .attraction-name {
  color: #aa1e2e;
  font-weight: bold;
  margin-bottom: 0.4em;
  font-family: "Lato", Helvetica, Arial, sans-serif;
  font-size: 1.1em;
  text-transform: uppercase;
}
.c-hours-day-dialog .attraction-hours-wrapper .hours {
  padding: 4px 10px;
  border-radius: 8px;
  background-color: #2567b3;
  color: #ffffff;
  font-size: 14px;
  display: inline;
}
.c-hours-day-dialog .attraction-hours-wrapper .hours.closed {
  background-color: #aa1e2e;
}
.c-hours-day-dialog .attraction-hours-wrapper .override-info {
  margin-top: 0.6em;
  padding: 0px 7px;
  color: #aa1e2e;
  font-size: 14px;
  text-align: center;
}
.c-hours-day-dialog .attraction-hours-wrapper .override-info .override-link:focus-visible {
  outline-color: #222d65;
  padding: 3px;
  font-size: 16px;
}
.c-hours-day-dialog .date-button-wrapper {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: -45px;
  width: calc(100% + 90px);
}
.c-hours-day-dialog .date-button-wrapper .day-button {
  background: unset;
  float: right;
  padding: 10px;
}
.c-hours-day-dialog .date-button-wrapper .day-button.previous-day {
  float: left;
  transform: rotate(180deg);
}
.c-hours-day-dialog .date-button-wrapper .day-button img {
  width: 20px;
}
@media (min-width: 768px) {
  .c-hours-day-dialog .dialog-container {
    margin-top: 130px;
  }
}
@media (min-width: 1280px) {
  .c-hours-day-dialog .dialog-container {
    margin-top: 180px;
    max-width: 555px;
  }
}

.c-component-search .wrapper {
  display: flex;
  flex-flow: column wrap;
  justify-content: space-between;
  align-items: center;
  margin: 0 auto 20px;
  border-radius: 40px;
  background-color: #edeae7;
  padding: 20px 30px;
}
.c-component-search.row-component .wrapper {
  justify-content: space-evenly;
}
.c-component-search label {
  color: #aa1e2e;
}
.c-component-search input {
  width: 100%;
  max-width: 340px;
}
.c-component-search button:nth-of-type(2) {
  margin-left: 15px;
}
@media (min-width: 1100px) {
  .c-component-search .wrapper {
    flex-flow: row wrap;
  }
  .c-component-search label {
    margin-bottom: 0;
  }
  .c-component-search input {
    margin-bottom: 0;
    width: auto;
  }
}

/* TEMPLATES */
/*
    *************************************************************
    Any additional CSS overrides for this theme can be added here

    *************************************************************
*/
@media (min-width: 1024px) {
  .c-root-homepage-hero .logo-wrapper img {
    width: 128px;
  }
}
@media (min-width: 1280px) {
  .c-root-homepage-hero .logo-wrapper {
    padding: 35px 50px;
  }
  .c-root-homepage-hero .logo-wrapper img {
    width: 160px;
  }
}

.c-header__logo {
  padding: 0;
}
.c-header__logo img {
  padding: 8px;
  height: 49px;
}
@media (min-width: 768px) {
  .c-header__logo img {
    height: 80px;
  }
}
@media (min-width: 1024px) {
  .c-header__logo {
    padding: 20px 12px 15px 0;
  }
  .c-header__logo img {
    max-height: 110px;
  }
}
.c-header__location-selections button {
  background-image: url("../images/down-arrow-white.svg");
}
.c-header .nav-feature {
  font-family: "acme", Helvetica, Arial, sans-serif;
}
.c-header .nav-feature__headline {
  color: #00818A !important;
  font-family: "acme", Helvetica, Arial, sans-serif !important;
  font-weight: 400 !important;
  font-size: 18px !important;
}
@media (min-width: 1280px) {
  .c-header .nav-feature__headline {
    font-size: 26px !important;
  }
}
.c-header .nav-feature__link {
  color: #222d65 !important;
}
@media (min-width: 768px) {
  .c-header #main-nav {
    top: 96px;
  }
}
.c-header #main-nav .main-nav-link {
  text-transform: none;
  font-size: 120%;
}
@media (min-width: 1024px) {
  .c-header #main-nav .main-nav-link {
    padding-bottom: 4px;
  }
}
.c-header .sub-nav__sublink {
  font-size: 120% !important;
}
.c-header__search-toggle {
  padding-bottom: 14px;
}
@media (min-width: 1280px) {
  .c-header__search-toggle {
    padding-bottom: 16px;
  }
}
@media (min-width: 1024px) {
  .c-header__search-dialog {
    top: 131px;
  }
}

.btn:after {
  font-size: 24px !important;
  margin-top: 1px !important;
}
@media (min-width: 1280px) {
  .btn:after {
    font-size: 30px !important;
    margin-top: 0px !important;
  }
}

.large-body {
  font-size: 24px;
}
@media (min-width: 1280px) {
  .large-body {
    font-size: 28px;
  }
}

.c-call-to-action-bar .bar-text .h2 {
  font-size: 24px;
  font-weight: 800;
}
@media (min-width: 1280px) {
  .c-call-to-action-bar .bar-text .h2 {
    font-size: 28px;
  }
}

.c-resort-item-details .page-sidebar h2 {
  font-size: 24px;
}
