@charset "UTF-8";
@import url("https://fonts.googleapis.com/css?family=Lato:300,400,500,600,700|Montserrat:400,600&display=swap");
.modal-bg {
  position: fixed;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  top: 0;
  left: 0;
  z-index: 5;
  opacity: 1;
  perspective: 5000px;
  transition: opacity .4s ease-in-out; }
  .modal-bg.closed {
    opacity: 0;
    pointer-events: none; }

.modal-panel {
  margin-top: 0;
  max-width: 580px;
  width: 100%;
  background-color: #FFFFFF;
  overflow-y: hidden;
  padding: 40px;
  transform: rotateX(0) scale(1);
  transform-origin: 50% 10%;
  transition: margin-top .6s ease-in-out, transform .4s ease .4s; }
  .closed .modal-panel {
    transform: rotateX(30deg) scale(1.2);
    margin-top: -120%; }
  .modal-panel.modal-panel-wide {
    max-width: 90%; }
    .modal-panel.modal-panel-wide .modal-content {
      max-width: 800px;
      margin-left: auto;
      margin-right: auto; }

.modal-header {
  display: flex;
  padding-bottom: 30px; }

.modal-title {
  flex: 2;
  margin: 0; }

.modal-close i {
  color: #59B381;
  font-size: 36px;
  margin-top: -6px;
  margin-right: -6px;
  cursor: pointer; }

.modal-content {
  padding-bottom: 30px;
  overflow-x: hidden;
  overflow-y: auto;
  max-height: 70vh; }
  .modal-content form,
  .modal-content .form {
    width: 100%; }
  .modal-content.no-padding {
    padding-bottom: 0; }

.modal-actions {
  display: flex;
  align-items: center; }

.modal-actions * {
  margin-left: 30px;
  margin-right: 30px; }

.modal-footer {
  text-align: center;
  padding-top: 30px;
  border-top: 2px solid #DEF0E6; }
  .modal-footer.no-divider {
    padding-bottom: 0;
    padding-top: 0;
    border-top: none; }
  .modal-footer.no-padding {
    padding-top: 0; }

.modal-link .link {
  margin-left: 10px; }

:root {
  --grey-h: 214deg;
  --grey-s: 9%;
  --grey-l: 85%;
  --grey-lightest: hsl(var(--grey-h), var(--grey-s), calc(var(--grey-l) * 1.5));
  --grey-lighter: hsl(var(--grey-h), var(--grey-s), calc(var(--grey-l) * 1.14));
  --grey-light: hsl(var(--grey-h), var(--grey-s), calc(var(--grey-l) * 1.08));
  --grey-medium: hsl(var(--grey-h), var(--grey-s), calc(var(--grey-l)));
  --grey-dark: hsl(var(--grey-h), var(--grey-s), calc(var(--grey-l) * .92));
  --grey-darker: hsl(var(--grey-h), var(--grey-s), calc(var(--grey-l) * .5));
  --grey-darkest: hsl(var(--grey-h), calc(var(--grey-s) + 18%), calc(var(--grey-l) - 60%));
  --main-color-h: 147deg;
  --main-color-s: 34%;
  --main-color-l: 47%;
  --main-color-lightest: #DEF0E6;
  --main-color-lighter: #CAE3D5;
  --main-color-lighten: #8EC7A8;
  --main-color-light: #59B381;
  --main-color-dark: #356B4D;
  --main-color-new: hsl(var(--main-color-h), var(--main-color-s), var(--main-color-l));
  --main-color-lightest: hsl(var(--main-color-h), var(--main-color-s), calc(var(--main-color-l) * 2));
  --main-color-lighter: hsl(var(--main-color-h), var(--main-color-s), calc(var(--main-color-l) * 1.8));
  --main-color-lighten: hsl(var(--main-color-h), var(--main-color-s), calc(var(--main-color-l) * 1.5));
  --main-color-light: hsl(var(--main-color-h), var(--main-color-s), calc(var(--main-color-l) * 1.15));
  --main-color-dark: hsl(var(--main-color-h), var(--main-color-s), calc(var(--main-color-l) * .68));
  --warning-color: #ECC798;
  --warning-color-dark: #D08526;
  --error-color: #EB5757;
  --error-color-dark: #9A3232;
  --white-color: #ffffff;
  --black-color: #40404E;
  --grey-color: #6D7785;
  --green-color: #4FA073;
  --green-color-light: #59b381;
  --green-color-lightest: #DCECE3;
  --red-color: #BD5A5A;
  --red-color-lightest: #F2DEDE;
  --amber-color: #D87B38;
  --amber-color-dark: hsl(25deg, 67%, calc(53% * .68));
  --amber-color-lightest: #F7E5D7;
  --featured-color: #ED9C00;
  --main-font-size: 16px;
  --main-line-height: 1.5em;
  --main-text-color: #2F3C51;
  --main-new-font-family: 'Lato', sans-serif;
  --header-new-font-family: 'Montserrat';
  --header-text-transform: none;
  --footer-color: var(--white-color);
  --app-nav-color: var(--black-color); }

.future {
  /* Mobile variants for fonts */
  /*input:invalid {
    border-color: var(--error-color-dark);
  }*/
  /* Vendor Overrides */ }
  .future .sr-only {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    clip-path: inset(50%) !important;
    white-space: nowrap !important;
    border: 0 !important; }
  .future .mob-only {
    display: none; }
  @media screen and (max-width: 767px) {
    .future .mob-hide {
      display: none; }
    .future .mob-only {
      display: block; } }
  .future .app,
  .future .modal-bg {
    font-family: var(--main-new-font-family);
    font-weight: 400;
    font-size: var(--main-font-size);
    line-height: var(--main-line-height);
    color: var(--main-text-color); }
  .future .new-modal-bg {
    font-size: 1em; }
    .future .new-modal-bg .modal-header .modal-title.h3 {
      font-weight: 600; }
  .future .modal-close i {
    color: var(--main-color-new); }
  .future .modal-footer {
    border-top-color: var(--main-color-lighter); }
  .future.full-page .container {
    position: absolute;
    top: 52px;
    width: 100%;
    z-index: 3; }
  .future.full-page.old-nav .container {
    top: 0; }
  .future.gridlist .container {
    /* Required for Safari. Heaven knows why */
    display: grid;
    grid-template-columns: 100%; }
  .future.gridlist div.main_nav + div.container,
  .future.gridlist div.main_nav.no-app-nav + div.container {
    justify-content: inherit; }
  .future div.main_nav + div.container {
    min-height: calc(100vh - 151px);
    justify-content: space-between; }
  .future div.main_nav.no-app-nav + div.container {
    min-height: calc(100vh - 99px);
    justify-content: space-between; }
  .future .container {
    background-color: var(--white-color);
    padding: 0;
    margin-top: 0;
    max-width: none; }
    .future .container.full-width {
      max-width: 100%;
      padding: 0; }
    .future .container > div {
      max-width: 1200px;
      width: 100%;
      margin: 0 auto;
      padding: 2em; }
      @media screen and (max-width: 767px) {
        .future .container > div {
          padding: 1em; } }
      .future .container > div.SignUpTerms {
        padding: 0; }
      .future .container > div.full-width {
        max-width: none;
        padding: 0; }
    .future .container .image-list {
      display: grid;
      grid-auto-flow: row;
      grid-column-gap: 10px;
      grid-row-gap: 10px;
      grid-template-columns: 1fr 1fr;
      width: 100%; }
      .future .container .image-list .image {
        position: relative;
        width: 100%;
        height: 240px; }
        .future .container .image-list .image img {
          width: 100%;
          height: 100%;
          object-fit: cover;
          border-radius: 4px; }
  .future .header-highlight {
    height: auto; }
  .future .footer {
    border-top: 2px solid var(--main-color-lighter);
    padding: 2em 0 0; }
    @media screen and (max-width: 767px) {
      .future .footer {
        padding: 1em 0 0; }
        .future .footer .grid-right {
          text-align: right; } }
    .future .footer.link {
      border-top: none; }
  .future p {
    font-family: var(--main-new-font-family);
    font-weight: 400;
    line-height: 1.5em; }
  .future li {
    font-weight: 400; }
  .future h1, .future h2, .future h3, .future h4, .future h5, .future h6, .future .h1, .future .h2, .future .h3, .future .h4, .future .h5, .future .h6 {
    font-family: var(--header-new-font-family);
    font-weight: 600;
    margin: 0 0 0.5em;
    text-transform: none;
    line-height: 1.5em; }
    .future h1.bold, .future h2.bold, .future h3.bold, .future h4.bold, .future h5.bold, .future h6.bold, .future .h1.bold, .future .h2.bold, .future .h3.bold, .future .h4.bold, .future .h5.bold, .future .h6.bold {
      font-weight: 600 !important; }
    .future h1.regular, .future h2.regular, .future h3.regular, .future h4.regular, .future h5.regular, .future h6.regular, .future .h1.regular, .future .h2.regular, .future .h3.regular, .future .h4.regular, .future .h5.regular, .future .h6.regular {
      font-weight: 400; }
    .future h1.no-mb, .future h2.no-mb, .future h3.no-mb, .future h4.no-mb, .future h5.no-mb, .future h6.no-mb, .future .h1.no-mb, .future .h2.no-mb, .future .h3.no-mb, .future .h4.no-mb, .future .h5.no-mb, .future .h6.no-mb {
      margin-bottom: 0; }
    .future h1.uppercase, .future h2.uppercase, .future h3.uppercase, .future h4.uppercase, .future h5.uppercase, .future h6.uppercase, .future .h1.uppercase, .future .h2.uppercase, .future .h3.uppercase, .future .h4.uppercase, .future .h5.uppercase, .future .h6.uppercase {
      text-transform: uppercase; }
  .future h1, .future .h1 {
    font-size: 2em;
    text-transform: var(--header-text-transform); }
  .future h2, .future .h2 {
    font-size: 1.5em;
    color: var(--black-color);
    text-transform: var(--header-text-transform); }
  .future h3, .future .h3 {
    font-size: 1.25em;
    font-family: var(--header-new-font-family);
    text-transform: var(--header-text-transform);
    color: var(--black-color); }
  .future .detail-content h3 {
    font-weight: 400; }
  .future h4, .future .h4, .future th {
    font-size: .75em;
    text-transform: uppercase;
    color: var(--black-color); }
    .future h4.noUpper, .future .h4.noUpper, .future th.noUpper {
      text-transform: none; }
  .future .featured-title {
    margin-right: 4px;
    color: var(--amber-color); }
  .future h5, .future .h5 {
    font-size: 12px; }
  .future span.slash {
    color: rgba(64, 64, 78, 0.2); }
  .future span.bold {
    font-weight: 700;
    color: var(--black-color); }
  .future a, .future .link {
    color: var(--main-color-new);
    font-weight: 700;
    cursor: pointer;
    text-decoration: none; }
    .future a i:hover, .future a i:active, .future a i:focus, .future .link i:hover, .future .link i:active, .future .link i:focus {
      text-decoration: none; }
    .future a.no-line:hover, .future a.no-line:active, .future a.no-line:focus, .future .link.no-line:hover, .future .link.no-line:active, .future .link.no-line:focus {
      text-decoration: none; }
    .future a:hover, .future a:active, .future a:focus, .future .link:hover, .future .link:active, .future .link:focus {
      color: var(--main-color-dark);
      text-decoration: underline; }
      .future a:hover i, .future a:active i, .future a:focus i, .future .link:hover i, .future .link:active i, .future .link:focus i {
        text-decoration: none; }
    .future a.danger, .future .link.danger {
      color: var(--error-color-dark); }
    .future a.warning, .future .link.warning {
      color: var(--warning-color-dark); }
    .future a.green-text, .future .link.green-text {
      color: var(--green-color); }
    .future a.grey-text, .future .link.grey-text {
      color: var(--grey-darker); }
    .future a.disabled, .future .link.disabled {
      color: var(--grey-light);
      cursor: not-allowed; }
      .future a.disabled:hover, .future .link.disabled:hover {
        text-decoration: none;
        color: var(--grey-light); }
    .future a.saving, .future .link.saving {
      cursor: wait;
      opacity: 0.7; }
      .future a.saving:hover, .future a.saving:active, .future a.saving:focus, .future .link.saving:hover, .future .link.saving:active, .future .link.saving:focus {
        text-decoration: none; }
    .future a.unselected, .future .link.unselected {
      color: var(--main-text-color);
      font-weight: 700; }
      .future a.unselected:hover, .future .link.unselected:hover {
        color: var(--main-color-dark); }
    .future a.bold, .future .link.bold {
      color: var(--black-color);
      font-weight: 700; }
      .future a.bold:hover, .future .link.bold:hover {
        color: var(--main-color-dark);
        text-decoration: none; }
    .future a.discard, .future .link.discard {
      color: var(--grey-color);
      font-size: 0.8em;
      font-weight: 700;
      opacity: 0.9; }
  .future label, .future .label {
    display: block;
    font-weight: 600;
    font-size: inherit;
    text-transform: var(--header-text-transform);
    margin: 0 0 0.5em; }
    .future label:after, .future .label:after {
      display: none; }
    .future label .optional, .future .label .optional {
      font-size: 12px;
      font-style: italic;
      color: var(--main-color-new);
      padding-left: 5px;
      text-transform: none; }
    .future label.noUpper, .future .label.noUpper {
      text-transform: none; }
    .future label.titleCase, .future .label.titleCase {
      text-transform: capitalize; }
  .future p.optional-intro {
    font-size: 14px;
    font-weight: 600;
    font-style: italic;
    color: var(--main-color-new);
    text-transform: none; }
  .future em {
    font-style: italic;
    font-weight: 400; }
  .future small, .future .small {
    font-size: 75%; }
  .future .small-line {
    line-height: 1.1em; }
  .future .large,
  .future .title,
  .future .intro {
    font-size: 125%;
    line-height: 1.5em; }
  @media screen and (max-width: 767px) {
    .future p {
      font-size: calc(var(--main-font-size) * .75) px; }
    .future h1, .future .h1 {
      font-size: 2em; }
    .future h2, .future .h2 {
      font-size: 1.5em; }
    .future h3, .future .h3 {
      font-size: 1.25em; }
    .future h4, .future .h4, .future th {
      font-size: .8em; }
    .future label, .future .label {
      font-size: 1em; }
    .future .large {
      line-height: 1.2em; } }
  @media screen and (max-width: 767px) {
    .future .hidden-mob {
      display: none !important; } }
  .future .uppercase {
    text-transform: uppercase; }
  .future .lowercase {
    text-transform: lowercase; }
  .future .link {
    color: var(--main-color-new);
    font-weight: 700;
    cursor: pointer; }
    .future .link:hover {
      text-decoration: underline; }
    .future .link.warning {
      color: var(--warning-color-dark); }
    .future .link.grey-text {
      color: var(--grey-darker); }
  .future .field-row {
    display: flex;
    flex-wrap: wrap;
    column-gap: 20px; }
    .future .field-row .field {
      flex-basis: 240px;
      flex-shrink: 0;
      flex-grow: 1;
      min-width: 40%; }
    .future .field-row .field-short {
      flex-basis: 230px; }
    .future .field-row .field-row-short {
      flex: 1; }
    .future .field-row .field-row-half {
      flex-grow: 0; }
    .future .field-row .field-row-long {
      flex: 3; }
  .future .field {
    margin-bottom: 2em; }
  .future .contact-image {
    position: relative; }
    .future .contact-image.xsmall {
      width: 26px;
      height: 26px; }
    .future .contact-image.small {
      width: 50px;
      height: 50px; }
    .future .contact-image.xlarge {
      width: 180px;
      height: 180px; }
    .future .contact-image.xxlarge {
      width: 280px;
      height: 280px; }
    .future .contact-image .image-overbox {
      cursor: default;
      position: absolute;
      width: 42px;
      height: 42px;
      right: 0;
      bottom: 0;
      background-color: #fff;
      color: var(--main-color-new);
      border-radius: 50%;
      box-shadow: 0 4px 2px rgba(0, 0, 0, 0.15); }
      .future .contact-image .image-overbox i {
        padding-left: 4px;
        padding-top: 4px;
        font-size: 36px; }
    .future .contact-image .featured-badge {
      display: flex;
      justify-content: center;
      align-items: center;
      border: 2px solid var(--featured-color);
      color: var(--featured-color); }
      .future .contact-image .featured-badge i {
        padding: 0; }
  .future .photo-field {
    display: flex;
    column-gap: 14px; }
    .future .photo-field .file-input {
      display: none; }
  .future .field-has-error {
    color: var(--error-color-dark); }
    .future .field-has-error input {
      border: 1px solid var(--error-color-dark); }
  .future .field-error {
    margin: 0.5em 0 0;
    font-size: 14px;
    font-weight: bold;
    color: var(--error-color-dark); }
  .future input, .future select, .future textarea {
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    width: 100%;
    display: block;
    outline: 0;
    border: none;
    border-bottom-style: solid;
    border-bottom-width: 1px;
    border-bottom-color: rgba(0, 0, 0, 0);
    border-radius: 4px;
    font-weight: 400;
    padding: 0.75em 1.2em;
    font-size: inherit;
    font-family: inherit;
    resize: none;
    background-color: var(--grey-lighter);
    transition: border-color .3s ease; }
    .future input.resizeable, .future select.resizeable, .future textarea.resizeable {
      resize: both; }
    .future input:disabled, .future select:disabled, .future textarea:disabled {
      cursor: not-allowed;
      background-color: var(--grey-light); }
  .future select.form-control {
    padding-top: .6em;
    padding-bottom: .6em; }
  .future .modal-bg .FieldInput select.form-control {
    height: 35px; }
  .future .form-control:focus {
    background-color: var(--grey-lighter);
    border: inherit; }
  .future .form-control:focus,
  .future input:focus,
  .future select:focus,
  .future textarea:focus {
    border-color: var(--main-color-new);
    border-bottom-style: solid;
    border-bottom-width: 1px;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0; }
  .future .field-icon {
    position: relative; }
  .future .field-icon input,
  .future .field-icon select {
    background-color: transparent;
    position: relative;
    z-index: 1;
    padding-right: 60px; }
  .future .field-icon-card {
    height: 26px;
    width: auto;
    position: absolute;
    bottom: 10px;
    right: 10px;
    z-index: 0; }
  .future .field-icon-material {
    margin: 0;
    height: 24px;
    width: 24px;
    position: absolute;
    bottom: 12px;
    right: 10px;
    z-index: 1; }
  .future .field-select {
    position: relative; }
  .future .field-select:after {
    content: "expand_more";
    font-family: 'Material Icons';
    font-size: 24px;
    position: absolute;
    bottom: 0;
    right: 0;
    height: 33px;
    width: 33px;
    z-index: 0; }
  .future .field-select select {
    background-color: transparent;
    position: relative;
    z-index: 1; }
  .future .field-currency {
    position: relative; }
    .future .field-currency input {
      padding-left: 2.5em; }
    .future .field-currency.gbp:after {
      content: "£"; }
    .future .field-currency.usd:after {
      content: "$"; }
  .future .field-currency:after {
    font-size: 20px;
    font-weight: bold;
    position: absolute;
    bottom: 5px;
    left: 15px;
    height: 33px;
    width: 1px;
    z-index: 0; }
  .future .field-code {
    text-align: center; }
    .future .field-code .field-code-container {
      display: flex;
      justify-content: center; }
    .future .field-code .field-code-row {
      display: inline-block;
      position: relative;
      display: flex; }
    .future .field-code input {
      position: absolute;
      border: none;
      font-size: 32px;
      text-align: center;
      background-color: transparent;
      outline: none;
      width: 32px;
      top: 0px;
      bottom: 0px;
      padding: 0; }
    .future .field-code .code-output {
      border: 1px solid var(--main-color-new);
      border-radius: 4px;
      margin: 4px;
      width: 60px;
      height: 60px;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 32px;
      position: relative; }
    .future .field-code .code-focus {
      position: absolute;
      left: 0;
      top: 0;
      bottom: 0;
      right: 0;
      border-radius: 4px;
      box-shadow: 0 0 0 2px var(--main-color-new); }
  .future .field-checkbox {
    position: relative;
    overflow: hidden; }
  .future .checkbox {
    padding-left: 36px;
    margin: 0; }
    .future .checkbox input {
      opacity: 0;
      position: absolute;
      left: -99999px; }
      .future .checkbox input:focus + label,
      .future .checkbox input:hover + label {
        color: var(--main-color-new); }
        .future .checkbox input:focus + label span,
        .future .checkbox input:hover + label span {
          border-color: var(--main-color-new);
          outline: 0; }
    .future .checkbox label {
      display: inline-block;
      font-weight: 400;
      text-transform: none;
      padding: 0; }
    .future .checkbox.disabled label {
      color: var(--grey-light); }
    .future .checkbox.checkbox-invalid input {
      border-color: var(--error-color-dark); }
    .future .checkbox.checkbox-invalid label {
      color: var(--error-color-dark); }
      .future .checkbox.checkbox-invalid label span {
        border-color: var(--error-color-dark); }
  .future .checkbox-input input:checked + .fake-checkbox + span {
    color: var(--main-text-color); }
  .future .checkbox span.spanbox,
  .future .checkbox-input .fake-checkbox {
    display: block;
    position: absolute;
    left: 0;
    width: 22px;
    height: 22px;
    border: 1px solid var(--main-color-new);
    background-color: var(--white-color);
    border-radius: 4px;
    margin-right: 0.5em;
    -webkit-box-shadow: inset 0px 0px 0px 3px var(--white-color);
    -moz-box-shadow: inset 0px 0px 0px 3px var(--white-color);
    box-shadow: inset 0px 0px 0px 3px var(--white-color);
    outline: 0; }
  .future .checkbox-input input:focus + .fake-checkbox,
  .future .checkbox-input input:hover + .fake-checkbox {
    border-color: var(--main-color-new);
    outline: 0; }
    .future .checkbox-input input:focus + .fake-checkbox + span.spanbox,
    .future .checkbox-input input:hover + .fake-checkbox + span.spanbox {
      color: var(--main-color-new); }
  .future .checkbox input:checked + label span.spanbox,
  .future .checkbox input:active + label span.spanbox,
  .future .checkbox-input input:active + .fake-checkbox,
  .future .checkbox-input input:checked + .fake-checkbox {
    background-color: var(--main-color-new); }
  .future th {
    padding: 0.5em 0; }
  .future strong, .future .strong {
    font-weight: 600; }
  .future .semibold {
    font-weight: 500; }
  .future button, .future .button, .future input[type="submit"] {
    outline: 0;
    border: 2px solid var(--main-color-new);
    display: inline-block;
    width: auto;
    border-radius: 4px;
    background-color: var(--main-color-new);
    line-height: inherit;
    font-family: var(--main-new-font-family);
    font-weight: 600;
    color: var(--white-color);
    text-decoration: none;
    text-transform: uppercase;
    transition: background-color .5s;
    padding: 0.75em 1.25em; }
    .future button:hover, .future button:active, .future button:focus, .future .button:hover, .future .button:active, .future .button:focus, .future input[type="submit"]:hover, .future input[type="submit"]:active, .future input[type="submit"]:focus {
      background-color: var(--main-color-dark);
      color: var(--white-color);
      border-color: var(--main-color-dark);
      cursor: pointer; }
    .future button.disabled, .future button[disabled], .future .button.disabled, .future .button[disabled], .future input[type="submit"].disabled, .future input[type="submit"][disabled] {
      background-color: var(--main-color-lightest);
      color: var(--main-color-lighter);
      border-color: var(--main-color-lighter);
      cursor: not-allowed; }
    .future button.danger, .future .button.danger, .future input[type="submit"].danger {
      background-color: var(--error-color);
      border-color: var(--error-color-dark); }
      .future button.danger:hover, .future button.danger:active, .future button.danger:focus, .future .button.danger:hover, .future .button.danger:active, .future .button.danger:focus, .future input[type="submit"].danger:hover, .future input[type="submit"].danger:active, .future input[type="submit"].danger:focus {
        background-color: var(--error-color-dark); }
    .future button.warning, .future .button.warning, .future input[type="submit"].warning {
      background-color: var(--amber-color);
      border-color: transparent; }
      .future button.warning:hover, .future button.warning:active, .future button.warning:focus, .future .button.warning:hover, .future .button.warning:active, .future .button.warning:focus, .future input[type="submit"].warning:hover, .future input[type="submit"].warning:active, .future input[type="submit"].warning:focus {
        background-color: var(--amber-color-dark); }
    .future button.btn-secondary, .future .button.btn-secondary, .future input[type="submit"].btn-secondary {
      background-color: transparent;
      color: var(--main-color-new);
      border-color: var(--main-color-lighter); }
      .future button.btn-secondary:hover, .future button.btn-secondary:active, .future button.btn-secondary:focus, .future .button.btn-secondary:hover, .future .button.btn-secondary:active, .future .button.btn-secondary:focus, .future input[type="submit"].btn-secondary:hover, .future input[type="submit"].btn-secondary:active, .future input[type="submit"].btn-secondary:focus {
        color: var(--main-color-dark);
        border-color: var(--main-color-dark); }
      .future button.btn-secondary.no-border, .future .button.btn-secondary.no-border, .future input[type="submit"].btn-secondary.no-border {
        border: none; }
        .future button.btn-secondary.no-border:hover, .future button.btn-secondary.no-border:active, .future button.btn-secondary.no-border:focus, .future .button.btn-secondary.no-border:hover, .future .button.btn-secondary.no-border:active, .future .button.btn-secondary.no-border:focus, .future input[type="submit"].btn-secondary.no-border:hover, .future input[type="submit"].btn-secondary.no-border:active, .future input[type="submit"].btn-secondary.no-border:focus {
          border: none; }
      .future button.btn-secondary.no-padding, .future .button.btn-secondary.no-padding, .future input[type="submit"].btn-secondary.no-padding {
        padding: 0; }
      .future button.btn-secondary.no-content, .future .button.btn-secondary.no-content, .future input[type="submit"].btn-secondary.no-content {
        height: 3em; }
      .future button.btn-secondary.with-badge .btn-container, .future .button.btn-secondary.with-badge .btn-container, .future input[type="submit"].btn-secondary.with-badge .btn-container {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 0.3em; }
      .future button.btn-secondary.with-badge .number, .future .button.btn-secondary.with-badge .number, .future input[type="submit"].btn-secondary.with-badge .number {
        color: var(--white-color); }
      .future button.btn-secondary.with-badge:hover .number, .future button.btn-secondary.with-badge:active .number, .future .button.btn-secondary.with-badge:hover .number, .future .button.btn-secondary.with-badge:active .number, .future input[type="submit"].btn-secondary.with-badge:hover .number, .future input[type="submit"].btn-secondary.with-badge:active .number {
        color: var(--main-color-new); }
      .future button.btn-secondary.danger-secondary, .future .button.btn-secondary.danger-secondary, .future input[type="submit"].btn-secondary.danger-secondary {
        color: var(--error-color);
        border-color: var(--error-color); }
        .future button.btn-secondary.danger-secondary:hover, .future button.btn-secondary.danger-secondary:active, .future button.btn-secondary.danger-secondary:focus, .future .button.btn-secondary.danger-secondary:hover, .future .button.btn-secondary.danger-secondary:active, .future .button.btn-secondary.danger-secondary:focus, .future input[type="submit"].btn-secondary.danger-secondary:hover, .future input[type="submit"].btn-secondary.danger-secondary:active, .future input[type="submit"].btn-secondary.danger-secondary:focus {
          color: var(--error-color-dark);
          border-color: var(--error-color-dark); }
    .future button.btn-outline, .future .button.btn-outline, .future input[type="submit"].btn-outline {
      background-color: var(--white-color);
      color: var(--main-color-new); }
    .future button.btn[disabled], .future button.btn-disabled, .future .button.btn[disabled], .future .button.btn-disabled, .future input[type="submit"].btn[disabled], .future input[type="submit"].btn-disabled {
      background-color: transparent;
      cursor: not-allowed; }
    .future button.no-upper, .future .button.no-upper, .future input[type="submit"].no-upper {
      text-transform: none; }
    .future button.stretch, .future .button.stretch, .future input[type="submit"].stretch {
      flex: 1; }
    .future button.toggle-button, .future .button.toggle-button, .future input[type="submit"].toggle-button {
      display: flex;
      margin-bottom: 1em;
      padding: .5em; }
    @media screen and (max-width: 767px) {
      .future button, .future .button, .future input[type="submit"] {
        font-size: 12px;
        padding: 0.3em 1.5em; } }
  .future .loading-holder {
    display: flex;
    flex-direction: column;
    align-items: center; }
  .future .loading {
    background-position: center;
    background-repeat: no-repeat;
    -webkit-mask: url("/images/sheep-loader-new.svg") no-repeat 50% 50%;
    -webkit-mask-size: contain;
    cursor: wait !important; }
    .future .loading:before {
      display: none; }
  .future .loading-full {
    position: fixed;
    z-index: 9;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    background-size: 120px;
    background-color: rgba(255, 255, 255, 0.5) !important; }
  .future .loading-large {
    height: 200px;
    /* Full-height */
    width: 200px;
    /* Full-width */
    background-size: 120px;
    background-color: var(--main-color-new) !important;
    color: transparent !important; }
  .future .loading-small {
    background-size: 40px;
    background-color: var(--main-color-new) !important;
    color: transparent !important; }
  .future .calendar {
    flex-basis: 55%;
    max-width: 580px;
    flex-grow: 1;
    /*@media screen and (max-width: $mobile-breakpoint) {
      flex-basis: 100%;
    }*/ }
    .future .calendar .calendar-body.grid {
      display: grid;
      grid-row-gap: 0;
      grid-column-gap: 0;
      grid-template-columns: repeat(7, 14.28%);
      grid-template-rows: 30px;
      grid-auto-rows: 5em; }
      @media screen and (max-width: 767px) {
        .future .calendar .calendar-body.grid {
          grid-auto-rows: 3em; } }
      .future .calendar .calendar-body.grid .header {
        font-weight: 600;
        font-size: 12px;
        text-align: center;
        text-transform: uppercase;
        color: var(--main-color-new); }
      .future .calendar .calendar-body.grid div {
        border: 2px solid var(--white-color);
        cursor: pointer; }
        .future .calendar .calendar-body.grid div.open, .future .calendar .calendar-body.grid div.closed, .future .calendar .calendar-body.grid div.selected {
          display: flex;
          align-items: center;
          justify-content: center;
          transition: background-color .5s, transform .2s; }
          .future .calendar .calendar-body.grid div.open span, .future .calendar .calendar-body.grid div.closed span, .future .calendar .calendar-body.grid div.selected span {
            font-size: 22px;
            font-weight: 400; }
            @media screen and (max-width: 767px) {
              .future .calendar .calendar-body.grid div.open span, .future .calendar .calendar-body.grid div.closed span, .future .calendar .calendar-body.grid div.selected span {
                font-size: 16px; } }
          .future .calendar .calendar-body.grid div.open:active, .future .calendar .calendar-body.grid div.closed:active, .future .calendar .calendar-body.grid div.selected:active {
            transform: scale(1.1); }
        .future .calendar .calendar-body.grid div.open {
          background-color: var(--main-color-lighter); }
        .future .calendar .calendar-body.grid div.empty, .future .calendar .calendar-body.grid div.header {
          cursor: default; }
        .future .calendar .calendar-body.grid div.closed {
          background-color: var(--main-color-lightest);
          color: var(--main-color-new);
          cursor: not-allowed;
          padding-bottom: 15px;
          padding-top: 15px; }
          .future .calendar .calendar-body.grid div.closed:active {
            transform: none; }
          .future .calendar .calendar-body.grid div.closed span {
            padding-bottom: 8px;
            position: absolute; }
          .future .calendar .calendar-body.grid div.closed::after {
            content: '';
            display: block;
            height: 1px;
            width: 60%;
            background-color: var(--main-color-new);
            transform: rotate(135deg);
            top: 50%;
            left: 20%; }
        .future .calendar .calendar-body.grid div.selected, .future .calendar .calendar-body.grid div.open:hover {
          background-color: var(--main-color-new);
          color: var(--white-color); }
    .future .calendar .calendar-header {
      display: flex;
      width: 100%;
      padding-bottom: 2em; }
    .future .calendar .calendar-prev,
    .future .calendar .calendar-next {
      flex-grow: 1; }
    .future .calendar .calendar-prev.disabled,
    .future .calendar .calendar-next.disabled {
      color: var(--main-color-lightest);
      cursor: not-allowed; }
    .future .calendar .calendar-prev.enabled i:hover,
    .future .calendar .calendar-next.enabled i:hover {
      color: var(--main-color-new);
      cursor: pointer; }
    .future .calendar .calendar-prev {
      text-align: left; }
    .future .calendar .calendar-next {
      text-align: right; }
    .future .calendar .calendar-title {
      flex-grow: 2;
      text-align: center; }
    .future .calendar .calendar-title span {
      margin: 0;
      font-weight: 400; }
    .future .calendar table {
      width: 100%;
      table-layout: fixed; }
    .future .calendar th, .future .calendar td {
      text-align: center; }
    .future .calendar td {
      position: relative; }
    .future .calendar td div {
      padding-bottom: 100%;
      cursor: pointer; }
    .future .calendar td.open div {
      background-color: var(--main-color-lighter); }
    .future .calendar td.closed div {
      background-color: var(--main-color-lightest);
      color: var(--main-color-new);
      cursor: not-allowed; }
    .future .calendar td.closed div:after {
      content: '';
      display: block;
      position: absolute;
      height: 1px;
      width: 60%;
      background-color: var(--main-color-new);
      transform: rotate(135deg);
      top: 50%;
      left: 20%; }
    .future .calendar td.selected div,
    .future .calendar td.open div:hover {
      background-color: var(--main-color-new);
      color: var(--white-color); }
    .future .calendar td div span {
      font-size: 22px;
      font-weight: 400;
      position: absolute;
      width: 100%;
      top: 50%;
      transform: translateY(-50%);
      left: 0; }
  .future .datePicker {
    position: absolute;
    background: white;
    border-radius: 4px;
    padding: .3em;
    margin-top: 2px;
    right: 0;
    z-index: 1; }
    .future .datePicker .calendar .calendar-header {
      padding-bottom: 0; }
    .future .datePicker .calendar .calendar-body.grid {
      grid-auto-rows: auto; }
    .future .datePicker.top {
      margin-top: 20px;
      top: 100%; }
    .future .datePicker.top:after {
      bottom: 100%;
      left: 50%;
      border: solid transparent;
      content: " ";
      height: 0;
      width: 0;
      position: absolute;
      pointer-events: none;
      border-color: rgba(0, 0, 0, 0);
      border-bottom-color: white;
      border-width: 20px;
      margin-left: -20px; }
    .future .datePicker.datePicker-small {
      padding: 1em;
      width: 260px; }
      .future .datePicker.datePicker-small .calendar-title span {
        font-size: 1em; }
      .future .datePicker.datePicker-small .calendar-body.grid {
        grid-auto-rows: 1fr;
        grid-template-rows: repeat(7, 35px); }
        .future .datePicker.datePicker-small .calendar-body.grid .header {
          font-size: 10px; }
        .future .datePicker.datePicker-small .calendar-body.grid div.open span, .future .datePicker.datePicker-small .calendar-body.grid div.closed span, .future .datePicker.datePicker-small .calendar-body.grid div.selected span {
          font-size: 16px; }
        .future .datePicker.datePicker-small .calendar-body.grid div.closed {
          padding: 0; }
          .future .datePicker.datePicker-small .calendar-body.grid div.closed span {
            padding-bottom: 0; }
  .future .timeslot-list {
    align-items: stretch;
    display: flex;
    flex-basis: 40%;
    flex-shrink: 0;
    flex-direction: column;
    justify-content: flex-start;
    max-width: 480px;
    padding-left: 10px;
    padding-top: 1.5em; }
    @media screen and (max-width: 767px) {
      .future .timeslot-list {
        flex-basis: 100%;
        padding-left: 0; } }
    .future .timeslot-list .top-row {
      margin-top: 10px;
      display: flex;
      align-items: center; }
      .future .timeslot-list .top-row .calendar-link {
        text-decoration: none;
        display: flex;
        font-size: 12px; }
        .future .timeslot-list .top-row .calendar-link i {
          margin-right: 6px; }
    .future .timeslot-list .dayString {
      display: inline-block; }
  .future .timeslot {
    align-items: center;
    border: 2px solid var(--main-color-lighter);
    border-radius: 4px;
    display: flex;
    max-width: 480px;
    margin-top: 10px;
    padding: 1.5em; }
    .future .timeslot p {
      margin: 0; }
    .future .timeslot p.h3 {
      margin-bottom: 5px; }
    .future .timeslot.unavailable {
      background-color: var(--main-color-lighter); }
      .future .timeslot.unavailable .disabled {
        background-color: transparent;
        color: var(--main-color-new); }
    .future .timeslot.empty {
      flex-direction: column; }
      .future .timeslot.empty img {
        width: 70%;
        height: auto;
        padding: 5%; }
  .future .timeslot-price,
  .future .timeslot-button {
    flex-grow: 1;
    text-align: right; }
    .future .timeslot-price .button,
    .future .timeslot-price button,
    .future .timeslot-button .button,
    .future .timeslot-button button {
      width: 120px;
      padding-left: 0;
      padding-right: 0;
      text-align: center; }
  .future .timeslot-button .timeslot-small {
    display: none; }
  @media screen and (min-width: 767px) and (max-width: 1023px) {
    .future .timeslot-price, .future .timeslot-button .timeslot-large {
      display: none; }
    .future .timeslot-button .timeslot-small {
      display: inline-block; } }
  .future .timeslot-period {
    flex-grow: 2; }
  .future .chooser {
    flex: 1;
    position: relative;
    margin-right: 30px;
    min-width: 200px;
    cursor: pointer; }
    .future .chooser.default {
      margin-right: 0;
      min-width: auto; }
    .future .chooser .category-chooser .choices,
    .future .chooser .category-chooser .title {
      background-color: var(--white-color);
      border: 1px solid var(--main-color-new);
      border-radius: 4px;
      font-weight: 600;
      padding: 1em;
      font-size: 14px;
      position: relative; }
    .future .chooser .category-chooser .choices {
      z-index: 2;
      position: absolute;
      top: 4em;
      width: 100%;
      display: none; }
      .future .chooser .category-chooser .choices.fixed250 {
        width: 250px; }
      .future .chooser .category-chooser .choices.right {
        right: .5em; }
        @media screen and (max-width: 767px) {
          .future .chooser .category-chooser .choices.right {
            right: -.5em;
            top: 3em; } }
      .future .chooser .category-chooser .choices .choices-label {
        color: var(--main-color-lighter);
        position: relative;
        z-index: 1; }
      .future .chooser .category-chooser .choices .choice {
        text-transform: none; }
        .future .chooser .category-chooser .choices .choice:not(:first-child) {
          margin-top: 10px; }
        .future .chooser .category-chooser .choices .choice.selected, .future .chooser .category-chooser .choices .choice:hover {
          color: var(--main-color-new); }
        .future .chooser .category-chooser .choices .choice .direction-indicator {
          float: right; }
    .future .chooser .category-chooser .title::after {
      content: "expand_more";
      font-family: 'Material Icons';
      font-size: 18px;
      font-weight: 400;
      position: absolute;
      top: 16px;
      right: 9px;
      height: 24px;
      width: 24px;
      z-index: 0; }
    .future .chooser .category-chooser.open .choices {
      display: block; }
    .future .chooser.borderless .title {
      border: none; }
      .future .chooser.borderless .title::after {
        right: 18px; }
    .future .chooser.grid-table-chooser {
      max-width: 250px;
      margin-bottom: 1em;
      padding: 0; }
  .future .flex-column {
    flex-direction: column; }
  .future .align-start {
    align-items: flex-start; }
  .future .file-drop-area {
    border: 1px dashed var(--main-color-new); }
    .future .file-drop-area.is-active {
      background-color: var(--main-color-lighter); }
  .future .panel-holder-collapsed {
    display: flex;
    column-gap: 1em;
    flex-wrap: wrap; }
  .future .panel {
    border: 2px solid var(--main-color-lighter);
    border-radius: 4px;
    padding: 1.5em;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin-bottom: 1em; }
    .future .panel.panel-info {
      margin-top: 1.5em;
      background-color: var(--main-color-lightest); }
    .future .panel.panel-info label, .future .panel.panel-info .label, .future .panel.panel-wide label, .future .panel.panel-wide .label {
      flex-direction: column; }
      .future .panel.panel-info label small, .future .panel.panel-info .label small, .future .panel.panel-wide label small, .future .panel.panel-wide .label small {
        padding-top: .3em;
        padding-left: 0; }
    .future .panel.panel-tiny label small {
      padding-left: 0; }
    .future .panel.panel-grey {
      margin-top: 1.5em;
      background-color: var(--grey-lighter); }
    .future .panel .panel-inputs.with-checkbox {
      padding-left: 36px; }
    .future .panel.panel-link {
      cursor: pointer; }
    .future .panel.flex-column {
      flex-direction: column; }
    .future .panel.align-start {
      align-items: flex-start; }
    .future .panel.disabled {
      background-color: var(--grey-lightest); }
      .future .panel.disabled img {
        filter: opacity(0.4); }
    .future .panel.no-border {
      border: 0; }
    .future .panel.progress-panel {
      border: 0;
      border-radius: 0;
      padding: 0;
      margin: 0 0 0 auto;
      max-width: 400px;
      background-color: var(--main-color-lighter);
      flex-grow: 1; }
      @media screen and (max-width: 767px) {
        .future .panel.progress-panel {
          width: 100%;
          max-width: none; } }
      .future .panel.progress-panel img {
        width: 100%;
        max-height: 100%; }
        @media screen and (max-width: 767px) {
          .future .panel.progress-panel img {
            display: none; } }
      .future .panel.progress-panel .bottom {
        margin-top: auto; }
      .future .panel.progress-panel .item-details {
        display: flex;
        justify-content: flex-start;
        align-self: stretch;
        padding: 2em; }
        @media screen and (max-width: 767px) {
          .future .panel.progress-panel .item-details {
            padding: 1em;
            border-bottom: 5px solid var(--white-color); }
            .future .panel.progress-panel .item-details .item-details-total {
              width: 160px;
              text-align: right; } }
        .future .panel.progress-panel .item-details .section-title {
          flex-basis: 40%; }
          .future .panel.progress-panel .item-details .section-title a {
            display: block; }
          @media screen and (max-width: 767px) {
            .future .panel.progress-panel .item-details .section-title {
              display: flex;
              flex-basis: 100%;
              justify-content: space-between; } }
        .future .panel.progress-panel .item-details .show-as-rows {
          display: flex;
          flex-direction: column; }
          @media screen and (max-width: 767px) {
            .future .panel.progress-panel .item-details .show-as-rows {
              display: none; } }
        .future .panel.progress-panel .item-details .mobile-progress-bar {
          display: none; }
          @media screen and (max-width: 767px) {
            .future .panel.progress-panel .item-details .mobile-progress-bar {
              display: block;
              color: var(--main-color-new);
              font-weight: bold; } }
        .future .panel.progress-panel .item-details.additional {
          margin-top: 20px; }
        .future .panel.progress-panel .item-details .booking-detail-text {
          cursor: pointer;
          padding: 0.5em 1em;
          margin-top: -0.5em;
          margin-bottom: 0.5em; }
          .future .panel.progress-panel .item-details .booking-detail-text small {
            display: block;
            font-size: 10px;
            text-transform: uppercase;
            margin-top: -5px; }
          .future .panel.progress-panel .item-details .booking-detail-text.text-complete {
            color: var(--main-color-new); }
          .future .panel.progress-panel .item-details .booking-detail-text.text-inprogress small {
            color: var(--grey-dark); }
          .future .panel.progress-panel .item-details .booking-detail-text.text-unstarted small {
            color: var(--grey-lighter); }
          .future .panel.progress-panel .item-details .booking-detail-text.no-entry {
            cursor: not-allowed; }
          .future .panel.progress-panel .item-details .booking-detail-text .booking-detail-text-container {
            display: flex;
            align-items: center; }
          .future .panel.progress-panel .item-details .booking-detail-text.text-active-step {
            border-radius: 4px;
            background-color: var(--main-color-new);
            color: var(--white-color); }
            .future .panel.progress-panel .item-details .booking-detail-text.text-active-step i {
              color: var(--white-color); }
        .future .panel.progress-panel .item-details .booking-detail-icon {
          display: flex;
          margin-bottom: 1em;
          align-items: center;
          font-weight: bold; }
          .future .panel.progress-panel .item-details .booking-detail-icon i {
            font-size: 20px;
            margin-right: 5px; }
    .future .panel.purchasedTicket {
      justify-content: space-between; }
    .future .panel .panel-actions {
      display: flex;
      flex-direction: column; }
    .future .panel .ticket-detail-block {
      align-self: flex-start;
      width: 50%; }
      @media screen and (max-width: 979px) {
        .future .panel .ticket-detail-block {
          width: 100%; } }
      .future .panel .ticket-detail-block .panel-row {
        font-size: .7em;
        display: flex;
        gap: .5em; }
      .future .panel .ticket-detail-block .panel-label {
        font-weight: bold; }
    .future .panel .ticket-attendee-block {
      width: 48%;
      align-self: flex-start; }
      @media screen and (max-width: 979px) {
        .future .panel .ticket-attendee-block {
          margin-top: 1em;
          width: 70%;
          border: 1px solid var(--main-color-lighter);
          border-radius: 4px; } }
      @media screen and (max-width: 490px) {
        .future .panel .ticket-attendee-block {
          width: 100%; } }
      .future .panel .ticket-attendee-block-title {
        font-weight: 500;
        font-size: 1em;
        background-color: var(--main-color-lighter);
        border-radius: 4px;
        width: 100%;
        text-align: center;
        padding: .3em;
        margin-bottom: .5em; }
        @media screen and (max-width: 767px) {
          .future .panel .ticket-attendee-block-title {
            border-bottom-left-radius: 0;
            border-bottom-right-radius: 0; } }
      .future .panel .ticket-attendee-block .attendee-row {
        font-size: .95em; }
    .future .panel.reminder-panel {
      border: 0;
      border-radius: 0;
      padding: 2em;
      margin: 0;
      background-color: var(--main-color-lighter);
      flex-grow: 1; }
      .future .panel.reminder-panel .form-group {
        margin: 0; }
    .future .panel.summary-panel {
      flex-wrap: wrap; }
      .future .panel.summary-panel .summary-date {
        margin-right: 20px;
        height: auto;
        align-self: end;
        justify-self: start;
        background-color: var(--main-color-new);
        border-radius: 4px;
        padding: 1em 1.5em;
        display: flex;
        flex-direction: column;
        align-items: center; }
        .future .panel.summary-panel .summary-date span {
          color: var(--white-color);
          margin: 0; }
        @media screen and (max-width: 767px) {
          .future .panel.summary-panel .summary-date {
            margin: 0 0 0 10px;
            padding: 1em; } }
      .future .panel.summary-panel .summary-details p {
        margin: 0; }
      .future .panel.summary-panel .summary-details p.h3 {
        margin-bottom: 5px; }
      .future .panel.summary-panel .summary-exports {
        margin-top: 1.5em;
        flex-basis: 100%; }
      .future .panel.summary-panel .export-link {
        text-decoration: none;
        display: flex;
        font-size: 12px; }
        .future .panel.summary-panel .export-link i {
          margin-right: 6px; }
        .future .panel.summary-panel .export-link span {
          margin-left: 10px; }
    .future .panel.reservation-panel {
      padding: 0;
      font-size: 14px;
      display: block; }
      .future .panel.reservation-panel .reservation-details {
        align-self: stretch;
        display: flex;
        padding: 2em; }
        @media screen and (max-width: 767px) {
          .future .panel.reservation-panel .reservation-details {
            flex-direction: column; } }
        .future .panel.reservation-panel .reservation-details .section-title {
          flex-basis: 36%;
          flex-shrink: 0; }
        .future .panel.reservation-panel .reservation-details .show-as-rows {
          display: flex;
          flex-direction: column;
          min-width: 10px; }
          .future .panel.reservation-panel .reservation-details .show-as-rows span {
            text-overflow: ellipsis;
            white-space: nowrap;
            overflow: hidden; }
        .future .panel.reservation-panel .reservation-details.additional {
          margin-top: 20px; }
      .future .panel.reservation-panel .reservation-exports {
        flex-basis: 100%;
        padding: 0 2em 2em; }
      .future .panel.reservation-panel .export-link {
        text-decoration: none;
        display: flex;
        font-size: 12px; }
        .future .panel.reservation-panel .export-link i {
          margin-right: 6px; }
    .future .panel.text-complete {
      background-color: var(--main-color-lighter); }
      .future .panel.text-complete .panel-text {
        color: var(--main-color-new); }
    .future .panel.text-inprogress .panel-text {
      color: var(--grey-dark); }
    .future .panel.text-unstarted .panel-text {
      color: var(--grey-light); }
  .future .panel-checkbox {
    flex-grow: 1; }
    .future .panel-checkbox .field {
      margin: 0; }
  .future .panel-checkbox label,
  .future .panel-checkbox .label {
    display: flex;
    margin: 0;
    font-weight: bold;
    padding-top: 5px;
    padding-bottom: 5px; }
    .future .panel-checkbox label small, .future .panel-checkbox label .small,
    .future .panel-checkbox .label small,
    .future .panel-checkbox .label .small {
      font-size: 100%;
      font-weight: normal;
      padding-left: 2em; }
      .future .panel-checkbox label small.pl-0, .future .panel-checkbox label .small.pl-0,
      .future .panel-checkbox .label small.pl-0,
      .future .panel-checkbox .label .small.pl-0 {
        padding-left: 0; }
    .future .panel-checkbox label strong, .future .panel-checkbox label .strong,
    .future .panel-checkbox .label strong,
    .future .panel-checkbox .label .strong {
      min-width: 140px;
      display: block; }
    .future .panel-checkbox label b,
    .future .panel-checkbox .label b {
      font-weight: normal;
      display: block; }
  .future .panel-icon {
    flex-grow: 2;
    display: flex;
    flex: inherit; }
    .future .panel-icon.icon-active {
      color: var(--main-color-new); }
  .future .panel-icon-card {
    height: 34px;
    width: auto;
    padding-left: 0.5em; }
  .future .panel-text {
    font-weight: bold;
    font-size: 12px;
    letter-spacing: 1px;
    text-transform: uppercase; }
  .future .container .top-progress-nav {
    max-width: none;
    padding: 0;
    border-bottom: 1px solid var(--main-color-new); }
    @media (max-height: 490px) {
      .future .container .top-progress-nav {
        height: 70px; } }
  .future .container .existing-applications {
    max-width: none;
    margin-top: -1em;
    margin-bottom: 1em;
    background-color: var(--main-color-lightest);
    padding: 0; }
    .future .container .existing-applications > div {
      padding: 2em;
      max-width: 1200px;
      margin: 0 auto; }
      .future .container .existing-applications > div .panel {
        background-color: var(--white-color); }
      @media screen and (max-width: 767px) {
        .future .container .existing-applications > div {
          padding: 1em; } }
  .future .top-progress-header {
    display: none; }
    @media screen and (max-width: 767px) {
      .future .top-progress-header {
        display: flex;
        padding: 1em;
        height: 99px;
        align-items: center;
        justify-content: space-between; }
        .future .top-progress-header h2 {
          margin: 0; } }
    @media (max-height: 490px) {
      .future .top-progress-header {
        height: 70px; } }
  .future .top-progress-bar {
    margin: 0 auto;
    padding: 2em;
    max-width: 1200px;
    display: flex;
    font-family: var(--header-new-font-family);
    text-transform: uppercase;
    font-size: 12px;
    justify-content: flex-end;
    align-items: center; }
    @media screen and (max-width: 767px) {
      .future .top-progress-bar {
        display: none; } }
    .future .top-progress-bar.application-process {
      max-width: none;
      display: block;
      position: relative;
      padding: 0; }
      .future .top-progress-bar.application-process .progress {
        height: 30px;
        background-color: var(--grey-light); }
      .future .top-progress-bar.application-process .progress-bar {
        background-color: var(--main-color-new); }
      .future .top-progress-bar.application-process .percentage {
        position: absolute;
        top: 4px;
        width: 100%;
        font-size: 16px;
        font-weight: bold;
        color: var(--white-color);
        text-align: center; }
    .future .top-progress-bar .brand-logo {
      cursor: pointer;
      height: 50px;
      justify-self: flex-start;
      flex-grow: 1; }
      .future .top-progress-bar .brand-logo img {
        height: 100%;
        width: auto; }
    .future .top-progress-bar .brand-title {
      height: 48px;
      justify-self: flex-start;
      flex-grow: 1; }
      .future .top-progress-bar .brand-title * {
        margin: 0;
        width: auto; }
    .future .top-progress-bar .progress-step {
      cursor: pointer;
      display: flex;
      padding-left: 30px;
      padding-right: 10px;
      align-items: center; }
      .future .top-progress-bar .progress-step i {
        margin-right: 10px;
        font-size: 30px; }
      .future .top-progress-bar .progress-step.active, .future .top-progress-bar .progress-step.complete {
        color: var(--main-color-new);
        font-weight: 600; }
    .future .top-progress-bar .progress {
      width: 100%;
      background-color: var(--main-color-new); }
  .future .existing-applications .timeslot-period .h3 {
    margin-bottom: 0.25em; }
  .future .existing-applications .timeslot-period .h5 {
    margin-bottom: 0; }
  .future .tooltip-container {
    position: relative; }
    .future .tooltip-container.abs {
      position: absolute;
      min-width: 240px; }
    .future .tooltip-container .tooltip {
      opacity: 0;
      transition: opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1);
      pointer-events: none;
      z-index: 2; }
    .future .tooltip-container:hover .tooltip, .future .tooltip-container:focus .tooltip, .future .tooltip-container:focus-within .tooltip, .future .tooltip-container.force-open .tooltip, .future .tooltip-container.clicked .tooltip {
      opacity: 1;
      pointer-events: auto; }
  .future .tooltip {
    max-width: 240px;
    display: block;
    border: 0;
    padding: 0;
    position: absolute; }
  .future .tooltip div {
    position: relative;
    border-radius: 4px;
    background-color: var(--main-color-new);
    color: var(--white-color);
    padding: 0.8em 1em 1em; }
  .future .tooltip p {
    font-weight: 700;
    margin: 0; }
  .future .tooltip.top {
    padding-top: 20px;
    top: 100%; }
  .future .tooltip.top div:after {
    bottom: 100%;
    left: 50%;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
    border-color: rgba(0, 0, 0, 0);
    border-bottom-color: var(--main-color-new);
    border-width: 20px;
    margin-left: -20px; }
  .future .tooltip.down {
    padding-bottom: 20px;
    bottom: 100%; }
  .future .tooltip.down div:after {
    top: 100%;
    left: 50%;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
    border-color: rgba(0, 0, 0, 0);
    border-top-color: var(--main-color-new);
    border-width: 20px;
    margin-left: -20px; }
  .future .fixed-bar {
    background-color: var(--white-color);
    padding: 1em;
    width: 100%;
    position: fixed;
    left: 0;
    display: flex;
    align-items: center;
    z-index: 2; }
    .future .fixed-bar.fullwidth {
      margin: 0;
      max-width: 100%; }
    .future .fixed-bar.info {
      background-color: var(--main-color-new);
      color: var(--white-color); }
      .future .fixed-bar.info button {
        background-color: var(--white-color);
        color: var(--main-color-new); }
      .future .fixed-bar.info h3, .future .fixed-bar.info h4, .future .fixed-bar.info .h3, .future .fixed-bar.info .h4 {
        color: var(--white-color);
        font-weight: 600; }
    .future .fixed-bar.donate {
      background-color: var(--main-color-lightest);
      color: var(--black-color); }
      .future .fixed-bar.donate h3, .future .fixed-bar.donate h4, .future .fixed-bar.donate .h3, .future .fixed-bar.donate .h4 {
        color: var(--black-color);
        font-weight: 600; }
      .future .fixed-bar.donate .fixed-bar-button {
        align-self: center; }
      .future .fixed-bar.donate .fixed-bar-left-content {
        flex: 0 0 12em; }
      .future .fixed-bar.donate .fixed-bar-close {
        display: none; }
      @media screen and (max-width: 979px) {
        .future .fixed-bar.donate {
          position: fixed; }
        .future .fixed-bar.donate .fixed-bar-with-margin {
          flex-direction: column; }
          .future .fixed-bar.donate .fixed-bar-with-margin.details-hidden {
            flex-direction: row; }
        .future .fixed-bar.donate .fixed-bar-left-content {
          flex: initial;
          justify-content: start; }
        .future .fixed-bar.donate .fixed-bar-button {
          align-self: baseline; }
        .future .fixed-bar.donate .fixed-bar-close {
          display: block;
          position: absolute;
          right: 2em;
          top: 1em; }
          .future .fixed-bar.donate .fixed-bar-close:hover {
            cursor: pointer; } }
  .future .fixed-bar p {
    margin: 0; }
  .future .fixed-bar.bottom {
    bottom: 0;
    border-top: 2px solid var(--main-color-lighter); }
    .future .fixed-bar.bottom.donate {
      border-top: initial; }
  .future .fixed-bar.top {
    top: 0;
    border-bottom: 2px solid var(--main-color-lighter); }
  .future .fixed-bar-with-margin {
    flex-grow: 1;
    display: flex;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 2em;
    gap: 1em; }
    @media screen and (max-width: 979px) {
      .future .fixed-bar-with-margin {
        padding: 0; } }
  .future .fixed-bar-details {
    flex-grow: 4;
    display: flex;
    align-items: center; }
  .future .fixed-bar-price,
  .future .fixed-bar-link,
  .future .fixed-bar-button {
    flex-grow: 1;
    text-align: right;
    white-space: nowrap; }
  .future .fixed-bar-image {
    border-radius: 4px;
    overflow: hidden;
    margin-right: 1em;
    background-color: var(--main-color-lighter); }
    .future .fixed-bar-image img {
      height: 60px;
      width: 60px;
      object-fit: cover; }
  .future .appeal-progress {
    padding: 2em 0; }
    .future .appeal-progress .progress {
      height: 15px;
      background-color: var(--main-color-lighter);
      border-radius: 12px;
      overflow: hidden; }
    .future .appeal-progress .progress-bar {
      box-shadow: none;
      background-color: var(--main-color-new); }
    .future .appeal-progress .totals {
      margin-top: 1.5em;
      display: flex; }
      .future .appeal-progress .totals > div:first-child {
        margin-right: 4em; }
      .future .appeal-progress .totals h3 {
        margin-bottom: 0.25em; }
      .future .appeal-progress .totals h4 {
        color: var(--grey); }
  @media screen and (max-width: 767px) {
    .future .fixed-bar-price,
    .future .fixed-bar-image {
      display: none; } }
  .future div.simple-page {
    max-width: 564px; }
  .future div.map-section {
    max-width: 100%; }
    .future div.map-section.fullwidth-map-section {
      padding: 0; }
    .future div.map-section .map-loading {
      display: block;
      position: absolute;
      width: 100%;
      background-color: rgba(255, 255, 255, 0.7);
      height: 100%;
      top: 0;
      padding-top: 14vh; }
  .future div.detail-page {
    display: grid;
    grid-row-gap: 20px;
    grid-column-gap: 20px;
    grid-template-columns: 1fr minmax(500px, 640px) 500px 1fr;
    grid-template-rows: 30px;
    grid-template-areas: ". header header ." ". hero extras ." ". detail-content detail-side ." "full full full full" "terms terms terms terms";
    height: auto;
    width: 100%;
    max-width: 100%;
    padding-left: 0;
    padding-right: 0; }
    .future div.detail-page.no-image {
      grid-template-areas: ". header header ." ". detail-content detail-side ." "full full full full" "terms terms terms terms";
      grid-template-rows: 60px; }
      .future div.detail-page.no-image.no-header {
        grid-template-areas: ". detail-content detail-side ." "full full full full" "terms terms terms terms";
        grid-template-rows: auto; }
    .future div.detail-page.no-secondary-image {
      grid-template-areas: ". header header ." ". hero detail-side ." ". detail-content detail-side ." "full full full full" "terms terms terms terms"; }
      .future div.detail-page.no-secondary-image .secondary-images {
        display: none; }
    .future div.detail-page.detail-above-secondary-image {
      grid-template-areas: ". header header ." ". hero detail-side ." ". detail-content detail-side . " ". detail-content extras ." ". detail-content . ." "full full full full" "terms terms terms terms"; }
      .future div.detail-page.detail-above-secondary-image.no-map {
        grid-template-areas: ". header header ." ". hero detail-side ." ". detail-content extras ." "full full full full" "terms terms terms terms"; }
    .future div.detail-page.course-page {
      grid-row-gap: 0;
      grid-template-areas: ". header header ." ". hero extras ." ". post-enroll detail-side ." ". detail-content detail-side ." ". important-info detail-side ." ". video-preview detail-side ." ". additional detail-side ." ". requirements detail-side ." ". deliverer detail-side .";
      grid-template-columns: 1fr minmax(400px, 764px) 350px 1fr; }
      @media screen and (max-width: 767px) {
        .future div.detail-page.course-page {
          grid-template-areas: ". header ." ". hero ." ". post-enroll ." ". detail-side ." ". detail-content ." ". important-info ." ". additional ." ". requirements ." "full full full" ". extras ." ". deliverer ."; }
          .future div.detail-page.course-page.with-video .primary-image {
            display: none; } }
      .future div.detail-page.course-page.no-image {
        grid-template-rows: 30px;
        grid-template-areas: ". header header ." ". post-enroll detail-side ." ". video-preview detail-side ." ". detail-content detail-side ." ". important-info detail-side ." ". additional detail-side ." ". requirements detail-side ." ". deliverer detail-side ."; }
        .future div.detail-page.course-page.no-image .detail-side {
          margin-top: 0; }
      .future div.detail-page.course-page.no-secondary-image {
        grid-template-areas: ". header header ." ". hero detail-side ." ". post-enroll detail-side ." ". detail-content detail-side ." ". important-info detail-side ." ". video-preview detail-side ." ". additional detail-side ." ". requirements detail-side ." ". deliverer detail-side ."; }
        .future div.detail-page.course-page.no-secondary-image .secondary-images {
          display: none; }
        .future div.detail-page.course-page.no-secondary-image .detail-side {
          margin-top: 0; }
        @media screen and (max-width: 767px) {
          .future div.detail-page.course-page.no-secondary-image {
            grid-template-areas: ". header ." ". hero ." ". post-enroll ." ". detail-side ." ". detail-content ." ". important-info ." ". additional ." ". requirements ." "full full full" ". deliverer ."; } }
      .future div.detail-page.course-page .detail-side {
        margin-top: 20px; }
      .future div.detail-page.course-page .post-enrolment {
        grid-area: post-enroll;
        display: block; }
        .future div.detail-page.course-page .post-enrolment .NoticeSection {
          padding: 1.5em; }
      .future div.detail-page.course-page .video-preview {
        grid-area: video-preview;
        display: block; }
        @media screen and (max-width: 767px) {
          .future div.detail-page.course-page .video-preview {
            grid-area: hero; } }
      .future div.detail-page.course-page .important-information {
        grid-area: important-info;
        display: block; }
        .future div.detail-page.course-page .important-information .NoticeSection {
          padding: 1.5em; }
      .future div.detail-page.course-page .additional-info {
        grid-area: additional;
        display: block; }
      .future div.detail-page.course-page .requirements {
        grid-area: requirements;
        display: block; }
      .future div.detail-page.course-page .deliverer {
        grid-area: deliverer;
        display: block; }
        .future div.detail-page.course-page .deliverer img {
          max-width: 180px;
          height: 100%; }
    .future div.detail-page.member-vehicle-detail-page, .future div.detail-page.panel-left-page {
      grid-template-columns: 300px minmax(0, 2fr);
      grid-template-rows: 90px min-content;
      grid-template-areas: "header header" "detail-side detail-header" "detail-side detail-content";
      padding-left: 2em;
      padding-right: 2em; }
      .future div.detail-page.member-vehicle-detail-page.no-image, .future div.detail-page.panel-left-page.no-image {
        grid-template-areas: "header header" "detail-side detail-content"; }
      .future div.detail-page.member-vehicle-detail-page.no-header, .future div.detail-page.panel-left-page.no-header {
        grid-template-areas: "detail-side detail-content"; }
      .future div.detail-page.member-vehicle-detail-page.no-header, .future div.detail-page.panel-left-page.no-header {
        grid-template-rows: min-content;
        grid-template-areas: "detail-side detail-content"; }
        .future div.detail-page.member-vehicle-detail-page.no-header.full-width, .future div.detail-page.panel-left-page.no-header.full-width {
          grid-template-areas: "detail-side detail-side"; }
      .future div.detail-page.member-vehicle-detail-page.no-padding, .future div.detail-page.panel-left-page.no-padding {
        padding-left: 0;
        padding-right: 0; }
      .future div.detail-page.member-vehicle-detail-page.with-divider, .future div.detail-page.panel-left-page.with-divider {
        grid-row-gap: 100px; }
        .future div.detail-page.member-vehicle-detail-page.with-divider .header, .future div.detail-page.panel-left-page.with-divider .header {
          position: relative; }
          .future div.detail-page.member-vehicle-detail-page.with-divider .header::after, .future div.detail-page.panel-left-page.with-divider .header::after {
            content: '';
            position: absolute;
            bottom: -50px;
            left: 0;
            width: 100%;
            height: 1px;
            background-color: var(--main-color-lighter); }
      .future div.detail-page.member-vehicle-detail-page .detail-header, .future div.detail-page.panel-left-page .detail-header {
        grid-area: detail-header; }
      .future div.detail-page.member-vehicle-detail-page .detail-content h3, .future div.detail-page.panel-left-page .detail-content h3 {
        line-height: 30px;
        font-weight: 400; }
      .future div.detail-page.member-vehicle-detail-page .detail-content img, .future div.detail-page.panel-left-page .detail-content img {
        max-width: 100%; }
      .future div.detail-page.member-vehicle-detail-page .detail-content .panel-content p, .future div.detail-page.panel-left-page .detail-content .panel-content p {
        margin-top: 1.5em;
        margin-bottom: 1.5em; }
      .future div.detail-page.member-vehicle-detail-page .detail-content .membership-card__status-message, .future div.detail-page.panel-left-page .detail-content .membership-card__status-message {
        margin: 0; }
      .future div.detail-page.member-vehicle-detail-page .detail-content .react-markdown.my-0 p, .future div.detail-page.panel-left-page .detail-content .react-markdown.my-0 p {
        margin-top: 0;
        margin-bottom: 0; }
      .future div.detail-page.member-vehicle-detail-page .detail-content .detail-content-gallery .secondary-images, .future div.detail-page.panel-left-page .detail-content .detail-content-gallery .secondary-images {
        overflow: auto;
        grid-template-rows: initial; }
        .future div.detail-page.member-vehicle-detail-page .detail-content .detail-content-gallery .secondary-images .secondary-image, .future div.detail-page.panel-left-page .detail-content .detail-content-gallery .secondary-images .secondary-image {
          width: 100%;
          height: auto;
          align-self: center; }
      .future div.detail-page.member-vehicle-detail-page .detail-content .NoticeSection p, .future div.detail-page.panel-left-page .detail-content .NoticeSection p {
        margin-top: 0;
        margin-bottom: 0; }
      .future div.detail-page.member-vehicle-detail-page .detail-side ul, .future div.detail-page.panel-left-page .detail-side ul {
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: column;
        gap: 1em; }
        .future div.detail-page.member-vehicle-detail-page .detail-side ul.meta-info, .future div.detail-page.panel-left-page .detail-side ul.meta-info {
          gap: 0.25em; }
          .future div.detail-page.member-vehicle-detail-page .detail-side ul.meta-info .btn, .future div.detail-page.panel-left-page .detail-side ul.meta-info .btn {
            margin-top: 0.75em; }
          .future div.detail-page.member-vehicle-detail-page .detail-side ul.meta-info.wide-gap, .future div.detail-page.panel-left-page .detail-side ul.meta-info.wide-gap {
            gap: 0.90em; }
          .future div.detail-page.member-vehicle-detail-page .detail-side ul.meta-info .purchase-document-cta, .future div.detail-page.panel-left-page .detail-side ul.meta-info .purchase-document-cta {
            padding: 1em 1em;
            width: max-content;
            border-radius: 0.25em; }
      .future div.detail-page.member-vehicle-detail-page .detail-side li, .future div.detail-page.panel-left-page .detail-side li {
        list-style: none; }
        .future div.detail-page.member-vehicle-detail-page .detail-side li span, .future div.detail-page.panel-left-page .detail-side li span {
          display: flex;
          gap: 0.5em; }
      .future div.detail-page.member-vehicle-detail-page.document-page, .future div.detail-page.panel-left-page.document-page {
        max-width: 1200px;
        grid-template-areas: "header header" "detail-side detail-content" "detail-side detail-content"; }
    .future div.detail-page.member-vehicle-detail-page {
      grid-template-rows: 50px;
      max-width: 1200px; }
      .future div.detail-page.member-vehicle-detail-page .detail-header img {
        width: 100%;
        object-fit: cover;
        border-radius: 4px;
        aspect-ratio: 16 / 9; }
      .future div.detail-page.member-vehicle-detail-page .detail-content-header {
        margin-bottom: 1.5em; }
        .future div.detail-page.member-vehicle-detail-page .detail-content-header.owner {
          margin-top: 1.5em;
          margin-bottom: 0; }
      .future div.detail-page.member-vehicle-detail-page .detail-content-body {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(max(22%, 130px), 1fr));
        grid-gap: 2em;
        word-break: break-all; }
        .future div.detail-page.member-vehicle-detail-page .detail-content-body.owner {
          grid-template-columns: repeat(auto-fit, minmax(max(44%, 260px), 1fr)); }
        .future div.detail-page.member-vehicle-detail-page .detail-content-body h4 {
          color: var(--header-text-color); }
    .future div.detail-page.messages-page {
      grid-template-columns: minmax(0, 2fr);
      grid-template-rows: 90px min-content;
      grid-template-areas: "header" "detail-header" "detail-content"; }
      .future div.detail-page.messages-page .detail-header {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        align-items: center;
        column-gap: 4em;
        row-gap: 0.5em;
        margin-bottom: 1em; }
        .future div.detail-page.messages-page .detail-header .form-group {
          flex: 0 0 255px;
          margin-bottom: 0; }
      .future div.detail-page.messages-page .detail-content h2 {
        margin-bottom: 1.5em; }
    .future div.detail-page.image-right-content {
      grid-template-columns: 1fr minmax(500px, 640px) 300px 1fr;
      grid-template-rows: min-content min-content;
      padding-left: 2em;
      padding-right: 2em;
      grid-template-areas: ". header header ." ". detail-content hero ." ". detail-content extras ."; }
      .future div.detail-page.image-right-content.no-padding {
        grid-template-areas: "header header header header" "detail-content detail-content hero hero" "detail-content detail-content extras extras";
        padding-left: 0;
        padding-right: 0; }
      .future div.detail-page.image-right-content.in-flow {
        max-width: calc(1200px - 4em); }
      .future div.detail-page.image-right-content.wide-image {
        grid-template-columns: 1fr minmax(500px, 640px) minmax(300px, 450px) 1fr; }
    .future div.detail-page.wide-content {
      grid-template-columns: minmax(0, 1fr);
      grid-template-rows: min-content;
      padding-left: 2em;
      padding-right: 2em;
      grid-template-areas: "detail-content"; }
      .future div.detail-page.wide-content.no-padding {
        padding-left: 0;
        padding-right: 0; }
      .future div.detail-page.wide-content.in-flow {
        max-width: calc(1200px - 4em); }
      .future div.detail-page.wide-content.with-image {
        grid-template-areas: ". header header ." ". detail-content hero ." ". detail-content extras ."; }
    @media screen and (max-width: 1023px) {
      .future div.detail-page {
        grid-template-columns: 0 2fr 1fr 0; }
        .future div.detail-page.image-right-content.no-padding {
          grid-template-columns: 0 2fr 1fr 0; } }
    @media screen and (max-width: 979px) {
      .future div.detail-page.panel-left-page.collapse-early {
        grid-template-columns: 1fr;
        grid-template-rows: min-content;
        grid-template-areas: "header" "detail-header" "detail-side" "detail-content"; }
        .future div.detail-page.panel-left-page.collapse-early.no-header {
          grid-template-rows: min-content;
          grid-template-areas: "detail-side" "detail-content"; } }
    @media screen and (max-width: 767px) {
      .future div.detail-page {
        grid-template-areas: ". header ." ". hero ." ". detail-content ." ". detail-side ." ". rightbox ." "full full full" ". extras ." ". terms .";
        grid-template-columns: 0 minmax(0, 1fr) 0;
        grid-row-gap: 10px;
        grid-column-gap: 10px;
        grid-template-rows: 30px; }
        .future div.detail-page.no-image {
          grid-template-columns: 0 1fr 0;
          grid-template-areas: ". header ." ". detail-content ." ". detail-side ." ". rightbox ." "full full full" ". terms ."; }
        .future div.detail-page.no-secondary-image {
          grid-template-columns: 0 minmax(0, 1fr) 0;
          grid-template-areas: ". header ." ". hero ." ". detail-content ." ". detail-side ." "full full full" ". terms ."; }
        .future div.detail-page.image-right-content, .future div.detail-page.image-right-content.no-padding, .future div.detail-page.detail-above-secondary-image {
          grid-template-columns: 0 minmax(0, 1fr) 0;
          grid-template-areas: ". header ." ". hero ." ". detail-content ." ". detail-side ." "full full full" ". extras ." ". terms ."; }
        .future div.detail-page.member-vehicle-detail-page, .future div.detail-page.panel-left-page {
          grid-template-columns: 0 1fr 0;
          grid-template-rows: min-content;
          grid-template-areas: ". header ." ". detail-header ." ". detail-side ." ". detail-content ."; }
          .future div.detail-page.member-vehicle-detail-page.no-image, .future div.detail-page.panel-left-page.no-image {
            grid-template-areas: ". header ." ". detail-side ." ". detail-content ."; }
          .future div.detail-page.member-vehicle-detail-page.no-header, .future div.detail-page.panel-left-page.no-header {
            grid-template-areas: ". detail-side ." ". detail-content ."; }
          .future div.detail-page.member-vehicle-detail-page.no-image.with-divider, .future div.detail-page.panel-left-page.no-image.with-divider {
            grid-row-gap: 40px;
            grid-template-areas: ". header ." ". detail-side ." ". detail-content ."; }
            .future div.detail-page.member-vehicle-detail-page.no-image.with-divider .header::after, .future div.detail-page.panel-left-page.no-image.with-divider .header::after {
              bottom: -20px; }
          .future div.detail-page.member-vehicle-detail-page .detail-content h3, .future div.detail-page.panel-left-page .detail-content h3 {
            margin-top: 0.5em;
            line-height: 30px; }
          .future div.detail-page.member-vehicle-detail-page .detail-content p, .future div.detail-page.panel-left-page .detail-content p {
            font-size: 14px; }
          .future div.detail-page.member-vehicle-detail-page .detail-content .member-row h3, .future div.detail-page.panel-left-page .detail-content .member-row h3 {
            margin-top: 0; }
          .future div.detail-page.member-vehicle-detail-page .detail-side .side-nav, .future div.detail-page.panel-left-page .detail-side .side-nav {
            grid-template-areas: "back-link toggle" "menu menu";
            gap: 20px;
            border-bottom: 1px solid var(--main-color-lighter); }
            .future div.detail-page.member-vehicle-detail-page .detail-side .side-nav__toggle, .future div.detail-page.panel-left-page .detail-side .side-nav__toggle {
              justify-self: end;
              display: flex;
              align-items: center;
              gap: 0.5em;
              padding: .5em;
              border: 1px solid var(--main-color-new);
              border-radius: 4px; }
            .future div.detail-page.member-vehicle-detail-page .detail-side .side-nav__menu, .future div.detail-page.panel-left-page .detail-side .side-nav__menu {
              visibility: hidden;
              opacity: 0;
              height: 0; }
              .future div.detail-page.member-vehicle-detail-page .detail-side .side-nav__menu.show-menu, .future div.detail-page.panel-left-page .detail-side .side-nav__menu.show-menu {
                visibility: visible;
                opacity: 1;
                height: auto;
                margin-bottom: 20px;
                padding-top: 20px;
                border-top: 1px solid var(--main-color-lighter); }
            .future div.detail-page.member-vehicle-detail-page .detail-side .side-nav__back-link, .future div.detail-page.panel-left-page .detail-side .side-nav__back-link {
              margin: 0; }
          .future div.detail-page.member-vehicle-detail-page .member-details-page__header, .future div.detail-page.panel-left-page .member-details-page__header {
            grid-template-columns: min-content 1fr;
            grid-template-areas: "photo name" ". action"; }
          .future div.detail-page.member-vehicle-detail-page .member-details-page__remove-member, .future div.detail-page.panel-left-page .member-details-page__remove-member {
            justify-self: flex-start; }
          .future div.detail-page.member-vehicle-detail-page.document-page, .future div.detail-page.panel-left-page.document-page {
            grid-row-gap: 1.5em;
            grid-template-areas: ". header ." ". detail-header ." ". detail-side ." ". detail-content ."; }
        .future div.detail-page.messages-page {
          grid-template-rows: min-content; }
        .future div.detail-page.member-vehicle-detail-page .detail-header {
          max-height: 250px;
          overflow: hidden; }
        .future div.detail-page.member-vehicle-detail-page.no-image {
          grid-template-areas: ". header ." ". detail-side ." ". detail-content ."; } }
    .future div.detail-page .detail-content {
      grid-area: detail-content;
      overflow-wrap: break-word;
      max-width: 100%; }
      .future div.detail-page .detail-content img {
        max-width: 100%; }
      .future div.detail-page .detail-content .file-preview-container {
        height: 800px; }
        .future div.detail-page .detail-content .file-preview-container .file-preview {
          object-fit: contain;
          object-position: top; }
        .future div.detail-page .detail-content .file-preview-container.thumbnail-only {
          display: grid;
          grid-template-areas: "preview";
          overflow: hidden;
          height: 100%; }
        .future div.detail-page .detail-content .file-preview-container .preview-image {
          grid-area: preview; }
          .future div.detail-page .detail-content .file-preview-container .preview-image img {
            border: solid 1px var(--grey-light);
            max-width: 100%;
            width: 100%;
            object-fit: cover; }
          .future div.detail-page .detail-content .file-preview-container .preview-image.banner {
            grid-area: preview;
            width: 210px;
            margin: 40px -50px 0 0;
            height: auto;
            align-self: start;
            justify-self: end;
            background-color: var(--main-color-new);
            padding: 0.5em 1.5em;
            display: flex;
            flex-direction: column;
            align-items: center;
            transform: rotateZ(45deg);
            overflow: initial; }
            .future div.detail-page .detail-content .file-preview-container .preview-image.banner span {
              color: var(--white-color);
              margin: 0; }
            .future div.detail-page .detail-content .file-preview-container .preview-image.banner.grey {
              background-color: var(--main-color-new); }
            @media screen and (max-width: 767px) {
              .future div.detail-page .detail-content .file-preview-container .preview-image.banner {
                padding: 0.5em 4em; } }
        .future div.detail-page .detail-content .file-preview-container .primary-image {
          height: 80%; }
          .future div.detail-page .detail-content .file-preview-container .primary-image img {
            object-fit: contain; }
      .future div.detail-page .detail-content .overview-selection {
        border-bottom: 1px solid var(--main-color-lighter); }
        .future div.detail-page .detail-content .overview-selection .active {
          color: var(--main-color-new);
          font-weight: 700; }
        .future div.detail-page .detail-content .overview-selection :hover {
          color: var(--main-color-dark);
          font-weight: 700;
          cursor: pointer; }
      .future div.detail-page .detail-content .tab-header {
        display: flex;
        gap: 1em;
        border-bottom: 1px solid var(--main-color-lighter); }
        .future div.detail-page .detail-content .tab-header .item {
          color: var(--black-color);
          border-bottom: 2px solid transparent; }
          .future div.detail-page .detail-content .tab-header .item:hover {
            text-decoration: none;
            color: var(--main-color-new); }
          .future div.detail-page .detail-content .tab-header .item.selected {
            color: var(--main-color-new);
            border-bottom-color: var(--main-color-new); }
    .future div.detail-page .detail-side {
      grid-area: detail-side; }
      .future div.detail-page .detail-side .panel {
        position: sticky;
        top: 70px; }
      .future div.detail-page .detail-side ul i {
        color: var(--main-color-new); }
      .future div.detail-page .detail-side .detail-inherit-color i {
        color: inherit; }
      @media screen and (max-width: 767px) {
        .future div.detail-page .detail-side .btn.basis-60 {
          flex-basis: auto; } }
    .future div.detail-page .header {
      grid-area: header; }
    .future div.detail-page .primary-image {
      grid-area: hero;
      background-color: var(--main-color-lighter); }
      .future div.detail-page .primary-image.insert {
        align-self: end;
        justify-self: start;
        background-color: var(--main-color-new);
        padding: 1em 1.5em;
        border-radius: 4px 4px 0px 0px;
        display: flex;
        flex-direction: column;
        align-items: center;
        color: var(--white-color);
        font-size: 12px;
        text-transform: uppercase; }
        .future div.detail-page .primary-image.insert span {
          color: var(--white-color);
          margin: 0; }
        @media screen and (max-width: 767px) {
          .future div.detail-page .primary-image.insert {
            padding: 1em; } }
      .future div.detail-page .primary-image.banner {
        height: auto;
        align-self: start;
        justify-self: end;
        background-color: transparent;
        padding: 4.5em 2.5em;
        overflow: hidden; }
        .future div.detail-page .primary-image.banner .banner-inner {
          margin: -28px -113px 0 0;
          background-color: var(--main-color-new);
          padding: 0.5em 5em;
          transform: rotateZ(45deg);
          font: 700 1em var(--main-new-font-family), sans-serif;
          text-shadow: 0 1px 1px rgba(0, 0, 0, 0.2);
          text-transform: uppercase;
          text-align: center; }
          @media screen and (max-width: 767px) {
            .future div.detail-page .primary-image.banner .banner-inner {
              padding: 0.5em 4em; } }
        .future div.detail-page .primary-image.banner span {
          color: var(--white-color);
          margin: 0; }
    .future div.detail-page .secondary-images {
      grid-area: extras;
      display: grid;
      grid-auto-flow: column;
      grid-column-gap: 10px;
      grid-row-gap: 10px;
      grid-template-columns: 1fr 1fr;
      grid-template-rows: 150px 150px;
      width: 100%; }
      .future div.detail-page .secondary-images.grid-row {
        grid-auto-flow: row; }
      .future div.detail-page .secondary-images .secondary-image {
        position: relative; }
        .future div.detail-page .secondary-images .secondary-image i {
          background-color: rgba(0, 0, 0, 0.6);
          top: -10%;
          right: 0;
          color: #fff;
          opacity: 0;
          position: absolute;
          transition: all .12s; }
        .future div.detail-page .secondary-images .secondary-image .secondary-image-info {
          background-color: rgba(0, 0, 0, 0.6);
          bottom: -10%;
          color: #fff;
          left: 0;
          padding: 6px 10px;
          position: absolute;
          opacity: 0;
          transition: all .12s;
          width: 100%;
          z-index: 9; }
        .future div.detail-page .secondary-images .secondary-image:hover i {
          opacity: 1;
          top: 0;
          cursor: pointer; }
        .future div.detail-page .secondary-images .secondary-image:hover .secondary-image-info {
          opacity: 1;
          bottom: 0; }
    .future div.detail-page .detail-map {
      grid-area: detail-side; }
      .future div.detail-page .detail-map .detail-map-panel {
        border: 2px solid var(--main-color-lighter);
        border-radius: 4px; }
      .future div.detail-page .detail-map .map-container {
        height: 310px; }
        @media screen and (max-width: 767px) {
          .future div.detail-page .detail-map .map-container {
            height: 210px; } }
      .future div.detail-page .detail-map .panel {
        border: 0; }
      .future div.detail-page .detail-map p {
        margin: 0; }
        .future div.detail-page .detail-map p span {
          color: var(--black-color); }
      .future div.detail-page .detail-map button {
        margin-top: 2em;
        margin-bottom: 1em; }
      @media screen and (max-width: 767px) {
        .future div.detail-page .detail-map {
          display: flex;
          flex-direction: column;
          align-items: inherit;
          justify-self: inherit; }
          .future div.detail-page .detail-map .map-container {
            width: 100%; } }
    .future div.detail-page .detail-panel {
      grid-column: 2 / 4; }
      @media screen and (max-width: 767px) {
        .future div.detail-page .detail-panel {
          grid-column: auto;
          grid-row: auto; } }
    .future div.detail-page .additional-details-panel {
      grid-area: full;
      display: grid;
      grid-template-columns: 1fr minmax(1000px, 1160px) 1fr;
      grid-column-gap: 20px;
      padding-left: 0;
      padding-right: 0;
      --fade-color-start: hsla(var(--main-color-h), var(--main-color-s), calc(var(--main-color-l) * 2), 0);
      --fade-color-end: hsla(var(--main-color-h), var(--main-color-s), calc(var(--main-color-l) * 2), 1); }
      @media screen and (max-width: 1023px) {
        .future div.detail-page .additional-details-panel {
          grid-template-columns: 0 1fr 0; }
          .future div.detail-page .additional-details-panel div.grid-container {
            max-width: calc(100vw - 50px); } }
      .future div.detail-page .additional-details-panel div.grid-container {
        grid-column: 2; }
      .future div.detail-page .additional-details-panel .additional-details-row {
        display: grid;
        grid-template-columns: repeat(auto-fit, 260px);
        justify-content: space-between; }
      .future div.detail-page .additional-details-panel .additional-details-item {
        font-weight: bold;
        text-decoration: none;
        display: flex;
        font-size: 14px;
        min-width: 260px;
        margin: 12px 18px 6px 0; }
        .future div.detail-page .additional-details-panel .additional-details-item i {
          margin-right: 6px; }
    .future div.detail-page .important-information {
      grid-area: terms;
      display: grid;
      grid-template-columns: 1fr minmax(1000px, 1160px) 1fr;
      grid-column-gap: 20px;
      --fade-color-start: rgba(255, 255, 255, 0);
      --fade-color-end: rgba(255, 255, 255, 1); }
      @media screen and (max-width: 1023px) {
        .future div.detail-page .important-information {
          grid-template-columns: 0 1fr 0; } }
      .future div.detail-page .important-information div.grid-container {
        grid-column: 2; }
    .future div.detail-page .important-information-box {
      max-width: 320px; }
    .future div.detail-page .title.horizontal {
      display: flex;
      justify-content: space-between; }
    @media screen and (max-width: 1023px) {
      .future div.detail-page .horizontal-block-nav {
        margin-right: 1em; } }
    .future div.detail-page .horizontal-block-nav span:hover {
      color: var(--main-color-dark); }
    .future div.detail-page .link-button {
      background: none;
      border: none;
      text-transform: capitalize;
      padding: 0; }
    .future div.detail-page .link-button:hover {
      text-decoration: underline; }
  .future div.member-page {
    display: grid;
    grid-gap: 1em;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); }
    .future div.member-page .grid-panel {
      height: max-content; }
    .future div.member-page .featured-icon {
      color: #ED9C00; }
  .future .checkout-page {
    display: grid;
    grid-row-gap: 20px;
    grid-column-gap: 20px;
    grid-template-columns: minmax(0, 2fr) 500px;
    height: auto;
    width: 100%;
    grid-template-areas: "details rightbox" "full full" "terms terms";
    grid-template-rows: auto; }
    .future .checkout-page.wide-column-gap {
      column-gap: 7.5em; }
      @media screen and (max-width: 1023px) {
        .future .checkout-page.wide-column-gap {
          column-gap: 1em; } }
    @media screen and (max-width: 1023px) {
      .future .checkout-page {
        grid-template-columns: 2fr 1fr; } }
    @media screen and (max-width: 767px) {
      .future .checkout-page {
        grid-template-columns: 1fr;
        grid-row-gap: 10px;
        grid-column-gap: 10px;
        grid-template-areas: "rightbox" "details" "full" "terms"; } }
    .future .checkout-page .detail-left {
      grid-area: details; }
    .future .checkout-page .detail-right {
      grid-area: rightbox; }
    .future .checkout-page .details-completed {
      margin-right: 5em; }
  .future .tags-container {
    height: 100%; }
    .future .tags-container.horizontal {
      position: relative;
      width: 100%;
      overflow-x: hidden;
      height: 36px; }
      .future .tags-container.horizontal .tags-list {
        position: absolute;
        display: inline-block;
        white-space: nowrap; }
        .future .tags-container.horizontal .tags-list span:not(:first-child) {
          margin-left: 0.25em; }
    .future .tags-container .tags-list > .tag-item {
      display: grid;
      grid-gap: 1em;
      grid-template-columns: 78px minmax(0, 2fr); }
      .future .tags-container .tags-list > .tag-item:not(:first-child) {
        margin-top: 1em; }
    .future .tags-container .tags-list.text-sm {
      font-size: 0.8em; }
    .future .tags-container .tags-list span {
      padding: 0.25em 0.75em;
      border-radius: 1.3em; }
      .future .tags-container .tags-list span.grey {
        background-color: var(--grey-light); }
      .future .tags-container .tags-list span.lighter {
        background-color: var(--main-color-lighter); }
      .future .tags-container .tags-list span.lighten {
        background-color: var(--main-color-lighten); }
      .future .tags-container .tags-list span.lightest {
        background-color: var(--main-color-lightest); }
  .future .ticket-page {
    min-height: calc(100vh - 244px); }
    .future .ticket-page .fixed-bar-price {
      display: block !important;
      margin-right: 3px; }
  .future .tickets-section {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .8em; }
    @media screen and (max-width: 490px) {
      .future .tickets-section {
        grid-template-columns: auto; } }
  .future .ticket-block {
    align-items: center;
    border: 2px solid var(--main-color-lighter);
    border-radius: 4px;
    display: flex;
    flex-direction: column;
    max-width: 480px;
    margin-top: 10px;
    padding: 1.5em;
    position: relative;
    /*.banner::before,
    .banner::after {
      position: absolute;
      z-index: -1;
      content: '';
      display: block;
      border: 5px solid var(--main-color-dark);
    }*/
    /*.banner::before,
    .banner::after {
      border-top-color: transparent;
      border-right-color: transparent;
    }
    .banner::before {
      top: 0;
      left: 0;
    }
    .banner::after {
      bottom: 0;
      right: 0;
    }*/ }
    .future .ticket-block .ticket-block-top {
      display: flex;
      flex-direction: row;
      width: 100%;
      justify-content: space-between;
      gap: 1.5em; }
    .future .ticket-block .ticket-block-bottom {
      align-self: flex-start; }
    .future .ticket-block .ticket-block-header {
      overflow-wrap: anywhere; }
    .future .ticket-block .ticket-block-quantity {
      min-width: 80px; }
    .future .ticket-block .banner {
      width: 150px;
      height: 150px;
      overflow: hidden;
      position: absolute;
      top: 0px;
      right: 0px; }
      .future .ticket-block .banner span {
        position: absolute;
        display: block;
        width: 225px;
        padding: 0.5em 0;
        background-color: var(--main-color-new);
        box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
        color: #fff;
        font: 700 0.7em var(--main-new-font-family), sans-serif;
        text-shadow: 0 1px 1px rgba(0, 0, 0, 0.2);
        text-transform: uppercase;
        text-align: center;
        left: -10px;
        top: 30px;
        transform: rotate(45deg); }
  .future .detail-panel {
    display: flex;
    justify-content: space-between; }
    .future .detail-panel .details {
      margin-right: 20px; }
  .future .additional-details-panel {
    background-color: var(--main-color-lightest);
    border: 0;
    width: 100%;
    padding: 30px;
    align-items: unset; }
    .future .additional-details-panel .form-group-container button {
      padding: 0.75em 2.25em; }
    .future .additional-details-panel.wide {
      min-width: 500px; }
    @media screen and (max-width: 767px) {
      .future .additional-details-panel.wide {
        min-width: auto; } }
  .future .top-image-holder {
    display: grid;
    grid-column-gap: 5px;
    grid-row-gap: 5px;
    grid-template-columns: 3fr 1fr 1fr;
    grid-template-rows: 250px 250px;
    grid-template-areas: "hero small1 small2" "hero small3 small4";
    height: auto;
    width: 100%; }
    .future .top-image-holder .primary-image {
      grid-area: hero; }
  .future .primary-image img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    border-radius: 4px;
    aspect-ratio: 16 / 9; }
    .future .primary-image img.contain {
      object-fit: contain; }
  .future .secondary-image {
    height: 100%;
    width: 100%;
    overflow: hidden; }
    .future .secondary-image img {
      height: 100%;
      width: 100%;
      object-fit: cover;
      border-radius: 4px; }
  .future .number-in-icon {
    width: 30px;
    height: 30px;
    margin-right: 10px; }
    .future .number-in-icon .material-icons {
      position: absolute; }
    .future .number-in-icon .number {
      font-weight: 600;
      position: absolute;
      width: 30px;
      text-align: center;
      margin-top: 3px; }
  .future .number-in-icon-badge {
    display: grid;
    justify-items: center;
    align-items: center; }
    .future .number-in-icon-badge .material-icons {
      grid-column: 1 / -1;
      grid-row: 1 / -1; }
    .future .number-in-icon-badge .number {
      grid-column: 1 / -1;
      grid-row: 1 / -1; }
  .future .container .card-grid-filter {
    margin-bottom: 1em;
    max-width: none;
    padding: 0;
    background-color: var(--main-color-lighter); }
    .future .container .card-grid-filter > div {
      margin: 0 auto;
      max-width: 1200px;
      padding: 2em;
      width: 100%;
      display: flex;
      justify-content: space-between; }
      .future .container .card-grid-filter > div.flex-start {
        justify-content: flex-start; }
      @media screen and (max-width: 767px) {
        .future .container .card-grid-filter > div {
          display: block;
          padding: 1em; } }
      .future .container .card-grid-filter > div input {
        background-color: var(--white-color);
        border: 2px solid var(--white-color); }
        .future .container .card-grid-filter > div input:focus {
          border-color: var(--main-color-new); }
    .future .container .card-grid-filter .left_block {
      flex: 2; }
    .future .container .card-grid-filter .right_block {
      flex: 1;
      position: relative;
      text-align: right; }
      @media screen and (max-width: 767px) {
        .future .container .card-grid-filter .right_block {
          text-align: left;
          margin-top: 2em; }
          .future .container .card-grid-filter .right_block button {
            width: 100%; } }
    .future .container .card-grid-filter .filter-group {
      flex-wrap: wrap;
      row-gap: 1em;
      column-gap: 1em;
      justify-content: flex-start;
      align-items: flex-end; }
      .future .container .card-grid-filter .filter-group .filter-field {
        flex: 0 1 calc(25% - 1em); }
        .future .container .card-grid-filter .filter-group .filter-field.wide {
          flex-basis: 49%; }
  .future .container .card-breadcrumb-filter .filter-group {
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
    display: grid;
    gap: 1em; }
    .future .container .card-breadcrumb-filter .filter-group.wide {
      grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); }
  .future .container .card-breadcrumb-filter .filter-field.wide {
    grid-column: span 2; }
  .future .search {
    margin-bottom: 0.5em; }
  .future .card-grid-container {
    position: relative; }
    .future .card-grid-container:before {
      position: absolute;
      content: '';
      height: 100%;
      width: 22px;
      left: -2px;
      bottom: 0;
      background: rgba(255, 255, 255, 0.5);
      background: linear-gradient(90deg, var(--fade-color-end) 0%, var(--fade-color-start) 100%);
      z-index: 1; }
    .future .card-grid-container:after {
      position: absolute;
      content: '';
      height: 100%;
      width: 32px;
      right: -2px;
      bottom: 0;
      background: rgba(255, 255, 255, 0.5);
      background: linear-gradient(90deg, var(--fade-color-start) 0%, var(--fade-color-end) 100%);
      z-index: 1; }
  .future .card-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(301px, 1fr));
    grid-row-gap: 1em;
    grid-column-gap: 1em; }
    .future .card-grid.card-grid-horizontal {
      grid-gap: 1em;
      grid-template-columns: 10px;
      grid-template-rows: minmax(150px, 1fr);
      grid-auto-flow: column;
      grid-auto-columns: minmax(300px, 1fr);
      overflow-x: scroll;
      scroll-snap-type: x proximity;
      scrollbar-width: none;
      margin-bottom: 0;
      padding-bottom: 0; }
      .future .card-grid.card-grid-horizontal::-webkit-scrollbar {
        display: none; }
      .future .card-grid.card-grid-horizontal:before {
        content: '';
        width: 10px; }
      .future .card-grid.card-grid-horizontal .panel {
        scroll-snap-align: center;
        min-width: 300px;
        max-width: 400px; }
      @media screen and (max-width: 767px) {
        .future .card-grid.card-grid-horizontal {
          grid-auto-columns: calc(50vw - (20px * 2)); } }
      @media screen and (max-width: 490px) {
        .future .card-grid.card-grid-horizontal {
          grid-auto-columns: calc(75vw - (25px * 2)); }
          .future .card-grid.card-grid-horizontal .panel {
            min-width: 220px;
            max-width: 90%; } }
    .future .card-grid.auto-fill {
      grid-template-columns: repeat(auto-fill, minmax(301px, 1fr)); }
    .future .card-grid .full-grid {
      grid-column: 1 / -1; }
      .future .card-grid .full-grid > div {
        margin: auto; }
        .future .card-grid .full-grid > div.panel-content {
          width: 100%; }
        .future .card-grid .full-grid > div.panel-footer {
          width: 100%; }
    .future .card-grid .panel {
      margin: 0;
      position: relative; }
      .future .card-grid .panel.enquiry .date-box {
        background: repeating-linear-gradient(45deg, var(--main-color-new), var(--main-color-new) 5px, var(--main-color-lighter) 5px, var(--main-color-lighter) 10px); }
      .future .card-grid .panel.cancelled .timeslot-period * {
        color: var(--error-color-dark) !important; }
      .future .card-grid .panel.cancelled .date-box {
        background: var(--error-color-dark) !important; }
      .future .card-grid .panel .date-box {
        background-color: var(--main-color-new); }
      .future .card-grid .panel .banner {
        width: 150px;
        height: 150px;
        overflow: hidden;
        position: absolute; }
      .future .card-grid .panel .banner::before,
      .future .card-grid .panel .banner::after {
        position: absolute;
        z-index: -1;
        content: '';
        display: block;
        border: 5px solid var(--main-color-dark); }
      .future .card-grid .panel .banner span {
        position: absolute;
        display: block;
        width: 225px;
        padding: 0.5em 0;
        background-color: var(--main-color-new);
        box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
        color: #fff;
        font: 700 1em var(--main-new-font-family), sans-serif;
        text-shadow: 0 1px 1px rgba(0, 0, 0, 0.2);
        text-transform: uppercase;
        text-align: center; }
      .future .card-grid .panel .banner {
        top: 0px;
        right: 0px; }
      .future .card-grid .panel .banner::before,
      .future .card-grid .panel .banner::after {
        border-top-color: transparent;
        border-right-color: transparent; }
      .future .card-grid .panel .banner::before {
        top: 0;
        left: 0; }
      .future .card-grid .panel .banner::after {
        bottom: 0;
        right: 0; }
      .future .card-grid .panel .banner span {
        left: -11px;
        top: -11px; }
      .future .card-grid .panel .oldbanner {
        width: 200px;
        margin: 45px -40px 0 0;
        height: auto;
        align-self: start;
        justify-self: end;
        padding: 0.5em 1.5em;
        display: flex;
        flex-direction: column;
        align-items: center;
        transform: rotateZ(45deg); }
        .future .card-grid .panel .oldbanner span {
          color: var(--white-color);
          margin: 0; }
        .future .card-grid .panel .oldbanner.grey {
          background-color: var(--main-color-new); }
        @media screen and (max-width: 767px) {
          .future .card-grid .panel .oldbanner {
            padding: 0.5em 4em; } }
    .future .card-grid .panel-year {
      align-self: center;
      justify-self: center; }
  .future .half-panel {
    background: var(--main-color-lightest);
    color: var(--main-color-new);
    width: 150px;
    height: 150px;
    align-self: center;
    border: none; }
    .future .half-panel.half-panel-white {
      background: var(--white-color);
      color: var(--white-color); }
  .future .info-panel-wide {
    border-width: 1px;
    background-color: var(--white-color);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
    justify-content: space-between;
    transition: transform 250ms, box-shadow 250ms;
    gap: 2.5em; }
    .future .info-panel-wide:hover {
      cursor: pointer;
      transform: translateY(-5px);
      box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23); }
    .future .info-panel-wide.info-panel-green {
      border-left: 5px solid var(--green-color); }
      .future .info-panel-wide.info-panel-green span.info-status {
        color: var(--green-color); }
    .future .info-panel-wide.info-panel-amber {
      border-left: 5px solid var(--amber-color); }
      .future .info-panel-wide.info-panel-amber span.info-status {
        color: var(--amber-color); }
    .future .info-panel-wide.info-panel-red {
      border-left: 5px solid var(--red-color); }
      .future .info-panel-wide.info-panel-red span.info-status {
        color: var(--red-color); }
    .future .info-panel-wide.unclickable:hover {
      cursor: unset;
      transform: none;
      box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24); }
  .future .grid-panel {
    border-width: 1px;
    background-color: var(--white-color);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
    display: grid;
    grid-template-areas: "image" "content" "footer";
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: [image] max-content [content] auto [footer] auto;
    margin: 0;
    max-width: 500px;
    overflow: hidden;
    padding: 0;
    align-items: start;
    transition: transform 250ms, box-shadow 250ms; }
    .future .grid-panel:hover {
      cursor: pointer;
      transform: translateY(-5px);
      box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23); }
    .future .grid-panel.wide {
      max-width: none; }
    .future .grid-panel.full-grid {
      grid-template-areas: "content image" "footer image";
      grid-template-columns: 1fr 2fr;
      grid-template-rows: auto minmax(40px, 80px);
      max-width: 100%; }
      .future .grid-panel.full-grid.featured {
        grid-template-columns: 320px 2fr; }
        @media screen and (max-width: 490px) {
          .future .grid-panel.full-grid.featured {
            grid-template-columns: 1fr;
            grid-template-rows: 200px;
            grid-template-areas: "image" "content" "footer"; } }
      .future .grid-panel.full-grid.no-footer {
        grid-template-areas: "content image";
        grid-template-rows: 250px; }
      .future .grid-panel.full-grid .panel-image {
        margin: 0;
        border-radius: 0 4px 4px 0; }
      @media screen and (max-width: 490px) {
        .future .grid-panel.full-grid {
          grid-template-columns: 1fr;
          grid-template-rows: [image] max-content [content] auto [footer] auto;
          grid-template-areas: "image" "content" "footer"; } }
    .future .grid-panel.no-image {
      grid-template-areas: "content" "footer"; }
      .future .grid-panel.no-image.featured {
        border-color: #ED9C00; }
    .future .grid-panel .panel-image {
      grid-area: image;
      background-color: #F6F7F9;
      height: 100%;
      margin: -1px -1px 0;
      border-top-left-radius: 4px;
      border-top-right-radius: 4px;
      overflow: hidden; }
      .future .grid-panel .panel-image.unavailable img {
        filter: grayscale(100%); }
      .future .grid-panel .panel-image img {
        /* Because obviously Safari when I say "the image height should be 100%" what I actually meant was
           "resize the parent grid container to the size of the image, losing anything below it" - who codes this piece of junk??
        //height: 100%;
        */
        height: auto;
        width: 100%;
        object-fit: cover;
        aspect-ratio: 16 / 9; }
        .future .grid-panel .panel-image img.contain {
          object-fit: contain; }
          .future .grid-panel .panel-image img.contain.draggable {
            user-select: none;
            pointer-events: none; }
        .future .grid-panel .panel-image img.none {
          object-fit: none; }
          .future .grid-panel .panel-image img.none.draggable {
            user-select: none;
            pointer-events: none; }
      .future .grid-panel .panel-image.resize {
        align-self: start;
        height: auto; }
        .future .grid-panel .panel-image.resize img {
          aspect-ratio: 2 /1; }
      .future .grid-panel .panel-image.insert {
        margin: 0 0 0 20px;
        height: auto;
        align-self: end;
        justify-self: start;
        background-color: var(--main-color-new);
        border-radius: 4px 4px 0px 0px;
        padding: 1em 1.5em;
        display: flex;
        flex-direction: column;
        align-items: center; }
        .future .grid-panel .panel-image.insert span {
          color: var(--white-color);
          margin: 0; }
        @media screen and (max-width: 767px) {
          .future .grid-panel .panel-image.insert {
            margin: 0 0 0 10px;
            padding: 1em; } }
      .future .grid-panel .panel-image.banner {
        width: 200px;
        margin: 45px -40px 0 0;
        height: auto;
        align-self: start;
        justify-self: end;
        background-color: var(--main-color-new);
        padding: 0.5em 1.5em;
        display: flex;
        flex-direction: column;
        align-items: center;
        transform: rotateZ(45deg);
        overflow: initial; }
        .future .grid-panel .panel-image.banner.danger {
          background-color: var(--error-color-dark); }
        .future .grid-panel .panel-image.banner.featured {
          background-color: #ED9C00; }
        .future .grid-panel .panel-image.banner span {
          color: var(--white-color);
          margin: 0; }
        .future .grid-panel .panel-image.banner.grey {
          background-color: var(--main-color-new); }
        @media screen and (max-width: 767px) {
          .future .grid-panel .panel-image.banner {
            padding: 0.5em 4em; } }
    .future .grid-panel .panel-content {
      grid-area: content;
      padding: 1em; }
      .future .grid-panel .panel-content h3 {
        overflow-wrap: break-word; }
      .future .grid-panel .panel-content p {
        margin: 0; }
    .future .grid-panel .panel-footer {
      grid-area: footer;
      min-height: 1.5em;
      padding: 1.6rem;
      align-self: end;
      align-items: end; }
      .future .grid-panel .panel-footer .ticket-note {
        font-size: .85em;
        display: flex;
        gap: .25em;
        font-weight: 700;
        align-items: center; }
    .future .grid-panel .member-panel-content {
      grid-template-rows: [header] auto [body] minmax(100px, auto) [footer] 40px;
      grid-area: content;
      gap: 1em; }
      .future .grid-panel .member-panel-content p {
        margin: 0; }
      .future .grid-panel .member-panel-content .tags-list {
        font-size: small; }
      .future .grid-panel .member-panel-content .new-card__content-footer {
        background-color: #F6F7F9; }
      .future .grid-panel .member-panel-content.panel-image.banner {
        margin: 24px -54px 0 0;
        z-index: 1; }
    .future .grid-panel.unclickable {
      box-shadow: none; }
      .future .grid-panel.unclickable:hover {
        cursor: unset;
        transform: none;
        box-shadow: none; }
  .future .dashboard-page-component {
    display: flex;
    flex-direction: column;
    max-width: 750px;
    margin-top: 3em;
    margin-bottom: 3em;
    margin-left: auto;
    margin-right: auto; }
  .future .dashboard-page,
  .future .dashboard-page-component {
    display: flex;
    flex-direction: column; }
    .future .dashboard-page > .dashboard-section.dashboard-section-blowout-right .detail-content .card-grid-container,
    .future .dashboard-page-component > .dashboard-section.dashboard-section-blowout-right .detail-content .card-grid-container {
      width: calc(900px + ((100vw - 1200px) / 2) - 40px);
      left: -18px;
      --fade-color-start: hsla(var(--main-color-h), var(--main-color-s), calc(var(--main-color-l) * 2), 0);
      --fade-color-end: white; }
      .future .dashboard-page > .dashboard-section.dashboard-section-blowout-right .detail-content .card-grid-container:before,
      .future .dashboard-page-component > .dashboard-section.dashboard-section-blowout-right .detail-content .card-grid-container:before {
        content: '';
        width: 20px; }
      .future .dashboard-page > .dashboard-section.dashboard-section-blowout-right .detail-content .card-grid-container:after,
      .future .dashboard-page-component > .dashboard-section.dashboard-section-blowout-right .detail-content .card-grid-container:after {
        content: '';
        width: 100px;
        right: 0px;
        background-color: linear-gradient(90deg, var(--fade-color-start) 0%, var(--fade-color-end) 70%); }
      @media screen and (max-width: 1199px) {
        .future .dashboard-page > .dashboard-section.dashboard-section-blowout-right .detail-content .card-grid-container,
        .future .dashboard-page-component > .dashboard-section.dashboard-section-blowout-right .detail-content .card-grid-container {
          width: calc((100vw - 300px) - 40px); } }
      @media screen and (max-width: 767px) {
        .future .dashboard-page > .dashboard-section.dashboard-section-blowout-right .detail-content .card-grid-container,
        .future .dashboard-page-component > .dashboard-section.dashboard-section-blowout-right .detail-content .card-grid-container {
          width: calc(100vw - 26px); } }
    .future .dashboard-page > .dashboard-section.dashboard-section-blowout-right .detail-content.horizontal-block-nav,
    .future .dashboard-page-component > .dashboard-section.dashboard-section-blowout-right .detail-content.horizontal-block-nav {
      align-self: flex-end; }
    .future .dashboard-page > .dashboard-section.no-scroll-grid .card-grid-container:before, .future .dashboard-page > .dashboard-section.no-scroll-grid .card-grid-container:after,
    .future .dashboard-page-component > .dashboard-section.no-scroll-grid .card-grid-container:before,
    .future .dashboard-page-component > .dashboard-section.no-scroll-grid .card-grid-container:after {
      content: none; }
    @media screen and (max-width: 767px) {
      .future .dashboard-page > .dashboard-section.no-scroll-grid .card-grid-container,
      .future .dashboard-page-component > .dashboard-section.no-scroll-grid .card-grid-container {
        width: calc(100vw - 26px); } }
    .future .dashboard-page > .dashboard-section.no-scroll-grid .card-grid-container .card-grid-horizontal,
    .future .dashboard-page-component > .dashboard-section.no-scroll-grid .card-grid-container .card-grid-horizontal {
      grid-template-columns: unset; }
      .future .dashboard-page > .dashboard-section.no-scroll-grid .card-grid-container .card-grid-horizontal:before,
      .future .dashboard-page-component > .dashboard-section.no-scroll-grid .card-grid-container .card-grid-horizontal:before {
        content: none; }
    .future .dashboard-page > .dashboard-section h1,
    .future .dashboard-page-component > .dashboard-section h1 {
      font-size: 32px;
      font-weight: 600;
      margin-bottom: 0; }
    .future .dashboard-page > .dashboard-section h2,
    .future .dashboard-page-component > .dashboard-section h2 {
      font-size: 24px;
      font-weight: 600;
      color: var(--black-color); }
    .future .dashboard-page > .dashboard-section .dashboard-section-header,
    .future .dashboard-page-component > .dashboard-section .dashboard-section-header {
      display: flex;
      align-items: flex-start;
      gap: 1em; }
      .future .dashboard-page > .dashboard-section .dashboard-section-header i,
      .future .dashboard-page-component > .dashboard-section .dashboard-section-header i {
        color: var(--main-color-new); }
      .future .dashboard-page > .dashboard-section .dashboard-section-header-avatar,
      .future .dashboard-page-component > .dashboard-section .dashboard-section-header-avatar {
        flex-shrink: 0;
        align-self: flex-start;
        margin-top: 0.5em; }
    .future .dashboard-page > .dashboard-section .dashboard-section-action,
    .future .dashboard-page-component > .dashboard-section .dashboard-section-action {
      gap: 0.5em; }
      .future .dashboard-page > .dashboard-section .dashboard-section-action:hover,
      .future .dashboard-page-component > .dashboard-section .dashboard-section-action:hover {
        text-decoration: none; }
        .future .dashboard-page > .dashboard-section .dashboard-section-action:hover .dashboard-section-action-text,
        .future .dashboard-page-component > .dashboard-section .dashboard-section-action:hover .dashboard-section-action-text {
          text-decoration: underline; }
    .future .dashboard-page > .dashboard-section:not(:last-of-type),
    .future .dashboard-page-component > .dashboard-section:not(:last-of-type) {
      padding-bottom: 3em;
      border-bottom: 1px solid var(--main-color-lighter);
      margin-bottom: 3em; }
    @media screen and (min-width: 767px) {
      .future .dashboard-page > .dashboard-section.with-border,
      .future .dashboard-page-component > .dashboard-section.with-border {
        padding-bottom: 3em;
        border-bottom: 1px solid var(--main-color-lighter);
        margin-bottom: 3em; } }
    .future .dashboard-page .dashboard-notices,
    .future .dashboard-page-component .dashboard-notices {
      position: relative; }
      .future .dashboard-page .dashboard-notices .dashboard-notice-holder,
      .future .dashboard-page-component .dashboard-notices .dashboard-notice-holder {
        display: flex;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        scroll-behavior: smooth; }
        .future .dashboard-page .dashboard-notices .dashboard-notice-holder::-webkit-scrollbar,
        .future .dashboard-page-component .dashboard-notices .dashboard-notice-holder::-webkit-scrollbar {
          display: none; }
        @media screen and (max-width: 1023px) {
          .future .dashboard-page .dashboard-notices .dashboard-notice-holder,
          .future .dashboard-page-component .dashboard-notices .dashboard-notice-holder {
            max-width: calc(100vw - 50px); } }
        .future .dashboard-page .dashboard-notices .dashboard-notice-holder.hbounce .dashboard-action:first-child,
        .future .dashboard-page-component .dashboard-notices .dashboard-notice-holder.hbounce .dashboard-action:first-child {
          animation: hbounce 3s ease 3; }
      .future .dashboard-page .dashboard-notices .dashboard-action,
      .future .dashboard-page-component .dashboard-notices .dashboard-action {
        background-color: var(--main-color-new);
        color: var(--white-color);
        flex-shrink: 0;
        min-height: 175px;
        margin-right: 50px;
        border-radius: 5px;
        position: relative;
        padding: 1em;
        scroll-snap-align: start;
        width: 100%; }
        .future .dashboard-page .dashboard-notices .dashboard-action :first-child,
        .future .dashboard-page-component .dashboard-notices .dashboard-action :first-child {
          margin-top: 0; }
        @media screen and (max-width: 1023px) {
          .future .dashboard-page .dashboard-notices .dashboard-action,
          .future .dashboard-page-component .dashboard-notices .dashboard-action {
            margin-right: 0; } }
        .future .dashboard-page .dashboard-notices .dashboard-action p, .future .dashboard-page .dashboard-notices .dashboard-action h1, .future .dashboard-page .dashboard-notices .dashboard-action h2, .future .dashboard-page .dashboard-notices .dashboard-action h3, .future .dashboard-page .dashboard-notices .dashboard-action h4, .future .dashboard-page .dashboard-notices .dashboard-action h5, .future .dashboard-page .dashboard-notices .dashboard-action h6,
        .future .dashboard-page-component .dashboard-notices .dashboard-action p,
        .future .dashboard-page-component .dashboard-notices .dashboard-action h1,
        .future .dashboard-page-component .dashboard-notices .dashboard-action h2,
        .future .dashboard-page-component .dashboard-notices .dashboard-action h3,
        .future .dashboard-page-component .dashboard-notices .dashboard-action h4,
        .future .dashboard-page-component .dashboard-notices .dashboard-action h5,
        .future .dashboard-page-component .dashboard-notices .dashboard-action h6 {
          color: var(--white-color); }
        .future .dashboard-page .dashboard-notices .dashboard-action .dashboard-action-button,
        .future .dashboard-page-component .dashboard-notices .dashboard-action .dashboard-action-button {
          bottom: 22px; }
          .future .dashboard-page .dashboard-notices .dashboard-action .dashboard-action-button button,
          .future .dashboard-page-component .dashboard-notices .dashboard-action .dashboard-action-button button {
            background-color: var(--white-color);
            color: var(--main-color-new);
            border-color: var(--white-color); }
            .future .dashboard-page .dashboard-notices .dashboard-action .dashboard-action-button button:hover, .future .dashboard-page .dashboard-notices .dashboard-action .dashboard-action-button button:active,
            .future .dashboard-page-component .dashboard-notices .dashboard-action .dashboard-action-button button:hover,
            .future .dashboard-page-component .dashboard-notices .dashboard-action .dashboard-action-button button:active {
              background-color: var(--main-color-lighter); }
      .future .dashboard-page .dashboard-notices .dashboard-slider,
      .future .dashboard-page-component .dashboard-notices .dashboard-slider {
        position: absolute;
        bottom: .5em;
        right: .5em;
        z-index: 2; }
        .future .dashboard-page .dashboard-notices .dashboard-slider a,
        .future .dashboard-page-component .dashboard-notices .dashboard-slider a {
          display: inline-block;
          width: 12px;
          height: 12px;
          border: solid 3px var(--white-color);
          background-color: var(--white-color);
          border-radius: 50%;
          content: ' ';
          margin-left: 3px; }
          .future .dashboard-page .dashboard-notices .dashboard-slider a.current-slide,
          .future .dashboard-page-component .dashboard-notices .dashboard-slider a.current-slide {
            background-color: var(--main-color-new); }
          .future .dashboard-page .dashboard-notices .dashboard-slider a span,
          .future .dashboard-page-component .dashboard-notices .dashboard-slider a span {
            font-size: 0; }
        @media screen and (max-width: 1023px) {
          .future .dashboard-page .dashboard-notices .dashboard-slider,
          .future .dashboard-page-component .dashboard-notices .dashboard-slider {
            margin-right: 1em; } }
      .future .dashboard-page .dashboard-notices.member-benefits .dashboard-action,
      .future .dashboard-page-component .dashboard-notices.member-benefits .dashboard-action {
        background-color: var(--white-color);
        color: var(--black-color);
        border: solid 1px var(--black-color);
        display: grid;
        grid-template-columns: 100px 1fr;
        grid-gap: 1em;
        max-height: 100%;
        height: auto; }
        .future .dashboard-page .dashboard-notices.member-benefits .dashboard-action p, .future .dashboard-page .dashboard-notices.member-benefits .dashboard-action h1, .future .dashboard-page .dashboard-notices.member-benefits .dashboard-action h2, .future .dashboard-page .dashboard-notices.member-benefits .dashboard-action h3, .future .dashboard-page .dashboard-notices.member-benefits .dashboard-action h4, .future .dashboard-page .dashboard-notices.member-benefits .dashboard-action h5, .future .dashboard-page .dashboard-notices.member-benefits .dashboard-action h6,
        .future .dashboard-page-component .dashboard-notices.member-benefits .dashboard-action p,
        .future .dashboard-page-component .dashboard-notices.member-benefits .dashboard-action h1,
        .future .dashboard-page-component .dashboard-notices.member-benefits .dashboard-action h2,
        .future .dashboard-page-component .dashboard-notices.member-benefits .dashboard-action h3,
        .future .dashboard-page-component .dashboard-notices.member-benefits .dashboard-action h4,
        .future .dashboard-page-component .dashboard-notices.member-benefits .dashboard-action h5,
        .future .dashboard-page-component .dashboard-notices.member-benefits .dashboard-action h6 {
          color: var(--black-color); }
        .future .dashboard-page .dashboard-notices.member-benefits .dashboard-action .dashboard-action-button,
        .future .dashboard-page-component .dashboard-notices.member-benefits .dashboard-action .dashboard-action-button {
          left: 22px; }
      .future .dashboard-page .dashboard-notices.member-benefits .dashboard-slider a,
      .future .dashboard-page-component .dashboard-notices.member-benefits .dashboard-slider a {
        background-color: var(--main-color-new);
        border-color: var(--main-color-new); }
        .future .dashboard-page .dashboard-notices.member-benefits .dashboard-slider a.current-slide,
        .future .dashboard-page-component .dashboard-notices.member-benefits .dashboard-slider a.current-slide {
          background-color: var(--white-color); }
  .future .donations-tax-year-select {
    width: 130px; }
    .future .donations-tax-year-select.chooser {
      flex-grow: 0;
      min-width: 130px; }
      .future .donations-tax-year-select.chooser .choices {
        width: auto; }
  .future .trunc {
    position: relative; }
    .future .trunc .trunc-toggle {
      position: absolute;
      bottom: 0;
      right: 0;
      height: 24px; }
    .future .trunc.preview {
      height: 120px;
      overflow: hidden; }
  .future .notification {
    margin: 0;
    width: 100%;
    top: 52px;
    z-index: 9; }
    .future .notification .notification-row {
      max-width: 1200px;
      margin: 0 auto;
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: 1em 2em; }
      .future .notification .notification-row h3, .future .notification .notification-row button {
        margin: 0; }
      .future .notification .notification-row-right-area {
        display: flex;
        gap: 1em;
        align-items: center; }
        .future .notification .notification-row-right-area .close-icon {
          cursor: pointer;
          display: flex; }
    .future .notification.info {
      background-color: var(--white-color); }
      .future .notification.info button:hover {
        color: var(--error-color-dark); }
    .future .notification.success {
      background-color: var(--main-color-dark); }
      .future .notification.success h3 {
        color: white; }
      .future .notification.success button {
        background-color: transparent;
        border-color: var(--white-color);
        color: var(--white-color); }
        .future .notification.success button:hover {
          color: var(--main-color-dark);
          background-color: var(--white-color);
          border-color: var(--white-color); }
      .future .notification.success .close-icon {
        color: var(--white-color); }
    .future .notification.warning {
      background-color: var(--warning-color-dark); }
      .future .notification.warning h3 {
        color: white; }
      .future .notification.warning button {
        background-color: transparent;
        border-color: var(--white-color);
        color: var(--white-color); }
        .future .notification.warning button:hover {
          color: var(--warning-color-dark);
          background-color: var(--white-color);
          border-color: var(--white-color); }
      .future .notification.warning .close-icon {
        color: var(--white-color); }
    .future .notification.danger {
      background-color: var(--error-color-dark); }
      .future .notification.danger h3 {
        color: white; }
      .future .notification.danger button {
        background-color: transparent;
        border-color: var(--white-color);
        color: var(--white-color); }
        .future .notification.danger button:hover {
          color: var(--error-color-dark);
          background-color: var(--white-color);
          border-color: var(--white-color); }
      .future .notification.danger .close-icon {
        color: var(--white-color); }
  .future .header-highlight {
    display: none; }
  .future .app_nav {
    display: flex;
    position: fixed;
    width: 100%;
    top: 0;
    height: 52px;
    justify-content: space-between;
    align-items: center;
    background-color: var(--main-color-lighter);
    z-index: 4; }
    .future .app_nav .right_block {
      display: inline-flex;
      flex-wrap: wrap-reverse;
      justify-content: flex-end;
      position: relative;
      gap: 2em;
      align-items: center; }
      @media screen and (max-width: 767px) {
        .future .app_nav .right_block {
          gap: 1em; } }
      .future .app_nav .right_block .DropdownMenu.badge-dropdown.badge-only {
        right: -39px;
        display: block; }
    .future .app_nav a {
      color: var(--app-nav-color);
      text-transform: uppercase;
      transition: color .2s; }
      .future .app_nav a.with-badge .btn-container {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 0.3em; }
      .future .app_nav a.with-badge .message-badge {
        height: 29px;
        pointer-events: all; }
      .future .app_nav a.with-badge .number-in-icon-badge {
        color: var(--main-color-light); }
      .future .app_nav a.with-badge .number {
        color: var(--white-color);
        transition: color .2s; }
      .future .app_nav a.with-badge:hover .number, .future .app_nav a.with-badge:active .number {
        color: var(--main-color-lighter); }
      .future .app_nav a:focus, .future .app_nav a:active {
        text-decoration: none; }
      .future .app_nav a:hover {
        color: var(--main-color-dark);
        text-decoration: none; }
  .future .main_nav {
    display: flex;
    left: 0;
    justify-content: space-between;
    margin-top: 52px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 0 !important;
    max-width: none;
    position: relative;
    background-color: var(--white-color);
    border-bottom: 1px solid var(--main-color-new);
    padding: 20px;
    align-items: center; }
    @media (max-height: 490px) {
      .future .main_nav {
        height: 70px !important;
        padding: 8px 20px; } }
    .future .main_nav.no-app-nav {
      margin-top: 0; }
    .future .main_nav .right_block {
      display: inline-flex;
      flex-wrap: wrap-reverse;
      justify-content: flex-end;
      position: relative;
      gap: 2em; }
      .future .main_nav .right_block a {
        align-self: center;
        margin-top: .3em;
        text-transform: uppercase;
        font-weight: 600;
        white-space: nowrap;
        cursor: pointer; }
    .future .main_nav a {
      color: var(--black-color);
      text-transform: uppercase; }
    .future .main_nav .nav-logo {
      display: block; }
      .future .main_nav .nav-logo img {
        max-height: 80px;
        width: auto;
        max-width: 240px; }
        @media (max-width: 490px) {
          .future .main_nav .nav-logo img {
            max-width: 200px; } }
        @media (max-height: 490px) {
          .future .main_nav .nav-logo img {
            max-height: 50px; } }
    .future .main_nav .nav-link {
      display: none; }
    .future .main_nav .mobile-menu-button {
      color: var(--black);
      text-transform: uppercase;
      font-weight: 600;
      text-align: right;
      align-self: center;
      margin-top: 5px; }
      .future .main_nav .mobile-menu-button.with-number {
        margin-right: 1em; }
        .future .main_nav .mobile-menu-button.with-number i {
          margin-right: 0; }
      .future .main_nav .mobile-menu-button .number {
        color: var(--white-color); }
    .future .main_nav .mobile-menu-container {
      overflow: hidden;
      position: relative;
      max-height: 1.2em;
      flex: 1;
      align-self: center;
      text-align: right; }
      .future .main_nav .mobile-menu-container.menu-open {
        overflow: visible;
        z-index: 3; }
      .future .main_nav .mobile-menu-container li {
        display: inline-block;
        padding: 0 1em;
        text-transform: uppercase;
        font-weight: 600;
        white-space: nowrap;
        cursor: pointer; }
        .future .main_nav .mobile-menu-container li.drop {
          display: block;
          position: absolute;
          right: -80px;
          background-color: white;
          min-width: 150px;
          padding-bottom: 1em;
          border-right: solid var(--main-color-new) 1px;
          border-left: solid var(--main-color-new) 1px;
          border-bottom: solid var(--main-color-new) 1px;
          padding-top: 1em; }
          .future .main_nav .mobile-menu-container li.drop:hover {
            background-color: var(--main-color-lighter); }
          .future .main_nav .mobile-menu-container li.drop.first {
            border-top: solid var(--main-color-new) 1px;
            border-top-left-radius: 4px;
            border-top-right-radius: 4px; }
            .future .main_nav .mobile-menu-container li.drop.first:after, .future .main_nav .mobile-menu-container li.drop.first:before {
              left: 80%;
              border: solid transparent;
              content: " ";
              height: 0;
              width: 0;
              position: absolute;
              pointer-events: none; }
            .future .main_nav .mobile-menu-container li.drop.first:after {
              top: -30px;
              border-color: transparent;
              border-bottom-color: var(--white-color);
              border-width: 15px;
              margin-left: -15px; }
            .future .main_nav .mobile-menu-container li.drop.first:before {
              top: -32px;
              border-color: transparent;
              border-bottom-color: var(--main-color-new);
              border-width: 16px;
              margin-left: -16px; }
          .future .main_nav .mobile-menu-container li.drop:last-child {
            border-bottom-left-radius: 4px;
            border-bottom-right-radius: 4px;
            --custom-drop-height: 0; }
            .future .main_nav .mobile-menu-container li.drop:last-child:after {
              content: "";
              position: absolute;
              top: var(--custom-drop-height);
              bottom: 0;
              left: 0;
              right: 0;
              z-index: -1;
              box-shadow: 4px 4px 4px rgba(0, 0, 0, 0.12); }
      @media (max-width: 767px) {
        .future .main_nav .mobile-menu-container {
          border-color: var(--main-color-new); }
          .future .main_nav .mobile-menu-container:before {
            border-bottom-color: var(--main-color-new); }
          .future .main_nav .mobile-menu-container .btn {
            text-transform: none;
            margin: 5px 0; } }
  .future .detail-full {
    max-width: 980px; }
    .future .detail-full h1 {
      margin-top: 2em; }
    .future .detail-full h2 {
      margin-top: 1em; }
  .future .detail-section {
    max-width: none;
    background-color: var(--main-color-lighter); }
    .future .detail-section h2 {
      margin: 0; }
  .future .detail-data-grid {
    display: flex; }
    .future .detail-data-grid > div {
      width: 100%; }
  .future .data-panel {
    border: 2px solid var(--main-color-lighter);
    border-radius: 4px;
    padding: 1.5em;
    margin-top: 2em;
    margin-right: 2em; }
  .future .main_nav, .future .top-progress-nav {
    height: 99px; }
    .future .main_nav.teams-nav, .future .top-progress-nav.teams-nav {
      height: 30px; }
    .future .main_nav .right_block, .future .top-progress-nav .right_block {
      display: flex;
      flex-wrap: wrap-reverse;
      justify-content: flex-end;
      position: relative;
      flex-grow: 1; }
  .future .error-holder {
    background-color: var(--main-color-lighter);
    border-radius: 50%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: var(--main-color-new);
    text-align: center;
    transition: opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    padding: 40px;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0; }
  .future .stripeInput form {
    text-align: left; }
    .future .stripeInput form label {
      margin: 0; }
    .future .stripeInput form .StripeElement {
      background: var(--grey-lighter);
      border: none;
      border-bottom: 1px solid rgba(0, 0, 0, 0);
      border-radius: 4px;
      font-family: inherit;
      font-size: inherit;
      font-weight: 400;
      margin: 0.5em 0 2em;
      max-width: none;
      padding: 1.15em 1.3em 1.1em;
      transition: border-color .3s ease; }
    .future .stripeInput form .StripeElement--focus {
      border-bottom: 1px solid var(--main-color-new);
      border-bottom-left-radius: 0;
      border-bottom-right-radius: 0; }
    .future .stripeInput form .stripeInput--number,
    .future .stripeInput form .stripeInput--exp,
    .future .stripeInput form .stripeInput--cvc {
      text-transform: none; }
    .future .stripeInput form .stripeInput--exp,
    .future .stripeInput form .stripeInput--cvc {
      float: left;
      width: 100%; }
    .future .stripeInput form .stripeInput--exp {
      max-width: 160px;
      margin-right: 2em; }
    .future .stripeInput form .stripeInput--cvc {
      max-width: 90px; }
    .future .stripeInput form .stripeInput--pay {
      display: flex;
      flex-wrap: nowrap;
      justify-content: space-between;
      margin-top: 30%; }
    .future .stripeInput form .stripContainer--pay {
      float: left; }
    .future .stripeInput form button {
      margin: 0; }
  .future .feedback-message {
    margin: 2em 0;
    color: var(--main-color-new);
    font-weight: 700; }
    .future .feedback-message i {
      padding: 0 0.25em; }
  .future .feedback-box {
    margin: 2em 0;
    padding: 2em;
    border-radius: 4px;
    background-color: var(--main-color-lighter); }
    .future .feedback-box h4 {
      margin-top: 0;
      display: flex;
      align-items: center; }
    .future .feedback-box i {
      padding-left: 0.25em; }
    .future .feedback-box p {
      margin-bottom: 0; }
  .future .feedback-icon {
    padding-left: 0.25em;
    color: var(--main-color-new); }
  .future .form-group.with-helper .file-drop-area {
    margin-bottom: 0; }
  .future .form-group.with-helper .text-input:first-child, .future .form-group.with-helper select {
    border-radius: 0 0 4px 4px; }
  .future .form-limit-text {
    display: flex;
    justify-content: space-between; }
    .future .form-limit-text p:first-child {
      flex: 1; }
    .future .form-limit-text p {
      margin-top: 0.5em; }
  .future .form-helper-text {
    padding: 1em;
    font-size: 80%;
    background-color: var(--main-color-lighter);
    border-radius: 4px 4px 0 0; }
    .future .form-helper-text * {
      margin: 0; }
    .future .form-helper-text.no-stick {
      border-radius: 4px;
      margin-top: -4em;
      margin-bottom: 3em; }
    .future .form-helper-text.detached {
      border-radius: 4px; }
  .future .detail-page.with-fixed-bar ~ .footer-new {
    padding-bottom: 9em;
    /*&.with-logo {
      padding-bottom: 7em;
    }*/ }
  div .future .footer-new {
    max-width: none;
    display: flex;
    justify-content: center;
    padding: 2em 0;
    border-top: 0;
    background-color: var(--main-color); }
  .future .footer-new-content {
    display: grid;
    grid-row-gap: 20px;
    grid-column-gap: 40px;
    grid-template-columns: repeat(2, minmax(min-content, 20%)) 1fr 200px;
    grid-template-rows: minmax(100px, 1fr) min-content;
    grid-template-areas: "email phone . logo" "copyright copyright copyright logo" "sheep sheep . logo";
    color: var(--footer-color);
    width: 1200px;
    padding: 0 2em; }
    .future .footer-new-content-email {
      grid-area: email;
      align-self: end; }
      .future .footer-new-content-email p {
        font-size: 20px;
        font-weight: 500;
        white-space: nowrap; }
    .future .footer-new-content-phone {
      grid-area: phone;
      align-self: end; }
      .future .footer-new-content-phone p {
        font-size: 20px;
        font-weight: 500;
        white-space: nowrap; }
    .future .footer-new-content-copyright {
      grid-area: copyright; }
      .future .footer-new-content-copyright p {
        margin-block: 0;
        font-size: 14px; }
    .future .footer-new-content-logo {
      grid-area: logo;
      align-self: center;
      justify-self: end; }
      .future .footer-new-content-logo img {
        max-width: 100%;
        object-fit: cover; }
    .future .footer-new-content-sheep {
      grid-area: sheep; }
      .future .footer-new-content-sheep a {
        color: var(--footer-color); }
    @media screen and (max-width: 767px) {
      .future .footer-new-content {
        grid-row-gap: 10px;
        grid-column-gap: 20px;
        grid-template-columns: 1fr;
        grid-template-rows: 150px repeat(2, min-content) 1fr;
        grid-template-areas: "logo" "email" "phone" "copyright" "sheep";
        justify-items: center;
        justify-content: center; }
        .future .footer-new-content-logo {
          align-self: normal;
          justify-self: center; }
          .future .footer-new-content-logo img {
            height: 100%;
            width: auto;
            object-fit: contain; }
        .future .footer-new-content-email p, .future .footer-new-content-phone p {
          font-size: 18px; }
        .future .footer-new-content-copyright p {
          font-size: 12px;
          text-align: center; } }
  .future .directory-header,
  .future .directory-footer {
    display: flex;
    justify-content: center;
    width: 100%; }
  .future .directory-pager {
    justify-self: flex-end;
    display: flex;
    justify-content: space-between; }
    .future .directory-pager a {
      text-decoration: none; }
  .future .breadcrumb {
    display: flex;
    align-items: center;
    gap: .5em;
    flex-wrap: wrap; }
    .future .breadcrumb a {
      color: var(--main-text-color); }
      .future .breadcrumb a.back {
        color: var(--main-color-new); }
      .future .breadcrumb a:hover {
        color: var(--main-color-dark); }
    .future .breadcrumb .chevron > .material-icons {
      font-size: 18px; }
  .future .breadcrumb-dropdown {
    display: inline-flex;
    flex-direction: column; }
    .future .breadcrumb-dropdown .chooser {
      min-width: 100%; }
      .future .breadcrumb-dropdown .chooser .choices {
        left: -1em;
        width: auto; }
      .future .breadcrumb-dropdown .chooser .title {
        padding-left: 0;
        font-size: 1em;
        color: var(--main-color-new); }
  .future .breadcrumb-children {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 1em; }
    .future .breadcrumb-children.flex-nowrap {
      flex-wrap: nowrap; }
  .future .breadcrumb-button {
    background-color: var(--main-color-lighter);
    border-color: var(--main-color-lighter);
    display: inline-flex;
    padding: 10px 14px;
    flex-direction: row;
    justify-content: flex-start;
    gap: 10px;
    align-items: center;
    color: var(--black-color);
    text-transform: none; }
    .future .breadcrumb-button.active {
      background-color: var(--main-color-new);
      color: var(--white-color);
      border-color: var(--main-color-new); }
  .future .account-nav-dropdown .chooser {
    min-width: 100%;
    margin-right: 0; }
    .future .account-nav-dropdown .chooser .choices {
      top: 2.5em;
      right: 0;
      width: auto; }
    .future .account-nav-dropdown .chooser .title {
      padding-left: 0;
      font-size: 1em;
      color: var(--main-color-new); }
    .future .account-nav-dropdown .chooser .selector .is-selected {
      color: var(--main-color-new); }
  .future .grid-table .grid-table-header-row,
  .future .grid-table .grid-table-row {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(70px, 1fr)); }
    .future .grid-table .grid-table-header-row-with-action,
    .future .grid-table .grid-table-row-with-action {
      grid-template-columns: repeat(auto-fit, minmax(70px, 1fr)) [last-col] 40px; }
  .future .grid-table .grid-table-header-row {
    font-size: .875em;
    font-weight: 600; }
    .future .grid-table .grid-table-header-row .grid-table-header-item .header-item-text {
      text-overflow: initial;
      white-space: normal;
      overflow-wrap: break-word; }
    @media screen and (max-width: 1023px) {
      .future .grid-table .grid-table-header-row .grid-table-header-item .tablet-hide {
        display: none; } }
  .future .grid-table .grid-table-row {
    font-size: .875em;
    cursor: pointer; }
    .future .grid-table .grid-table-row:hover {
      background-color: var(--grey-lighter); }
    .future .grid-table .grid-table-row.no-hover {
      cursor: default; }
      .future .grid-table .grid-table-row.no-hover:hover {
        background-color: inherit; }
  .future .grid-table .grid-table-header-item,
  .future .grid-table .grid-table-row-item {
    border-bottom: 1px solid var(--grey-medium);
    padding: 0.5em;
    overflow: hidden;
    display: flex;
    align-items: center; }
    @media screen and (max-width: 767px) {
      .future .grid-table .grid-table-header-item-mob-hide,
      .future .grid-table .grid-table-row-item-mob-hide {
        display: none; } }
    @media screen and (max-width: 979px) {
      .future .grid-table .grid-table-header-item,
      .future .grid-table .grid-table-row-item {
        font-size: .875em; } }
    .future .grid-table .grid-table-header-item-align-right .row-item-content,
    .future .grid-table .grid-table-row-item-align-right .row-item-content {
      justify-content: flex-end;
      flex-grow: 1; }
    .future .grid-table .grid-table-header-item-align-left .row-item-content,
    .future .grid-table .grid-table-row-item-align-left .row-item-content {
      justify-content: flex-start;
      flex-shrink: 1; }
      .future .grid-table .grid-table-header-item-align-left .row-item-content .row-item-text,
      .future .grid-table .grid-table-row-item-align-left .row-item-content .row-item-text {
        column-gap: .5em; }
    .future .grid-table .grid-table-header-item .header-item-content,
    .future .grid-table .grid-table-header-item .row-item-content,
    .future .grid-table .grid-table-row-item .header-item-content,
    .future .grid-table .grid-table-row-item .row-item-content {
      display: flex;
      align-items: center;
      gap: 0.5em;
      overflow: hidden; }
    .future .grid-table .grid-table-header-item .header-item-text,
    .future .grid-table .grid-table-header-item .row-item-text,
    .future .grid-table .grid-table-row-item .header-item-text,
    .future .grid-table .grid-table-row-item .row-item-text {
      display: flex;
      align-items: center;
      justify-content: space-between;
      overflow: hidden; }
      .future .grid-table .grid-table-header-item .header-item-text.fixed-height,
      .future .grid-table .grid-table-header-item .row-item-text.fixed-height,
      .future .grid-table .grid-table-row-item .header-item-text.fixed-height,
      .future .grid-table .grid-table-row-item .row-item-text.fixed-height {
        height: 0;
        margin-top: 16px; }
        .future .grid-table .grid-table-header-item .header-item-text.fixed-height .tip,
        .future .grid-table .grid-table-header-item .row-item-text.fixed-height .tip,
        .future .grid-table .grid-table-row-item .header-item-text.fixed-height .tip,
        .future .grid-table .grid-table-row-item .row-item-text.fixed-height .tip {
          margin-left: -107px; }
    .future .grid-table .grid-table-header-item .row-item-file,
    .future .grid-table .grid-table-row-item .row-item-file {
      pointer-events: all; }
  .future .grid-table .grid-table-row-item {
    align-items: flex-start; }
  .future .grid-table .grid-table-row-item-bold-upper {
    font-weight: 600;
    text-transform: uppercase; }
  .future .grid-table .grid-table-row-item-bold {
    font-weight: 600; }
  .future .grid-table .grid-table-header-item-last,
  .future .grid-table .grid-table-row-item-last {
    justify-content: end;
    grid-column: last-col / span 1; }
  .future .grid-table .grid-table-header-group,
  .future .grid-table .grid-table-row-group {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(var(--column-width-min), 1fr)); }
  .future .grid-table .grid-table-group-2 {
    --column-width-min: 2rem; }
  .future .grid-table .grid-table-group-4 {
    --column-width-min: 4rem; }
  .future .grid-table .grid-table-group-6 {
    --column-width-min: 6rem; }
  .future .grid-table .grid-table-group-8 {
    --column-width-min: 8rem; }
  .future .grid-table .grid-table-group-10 {
    --column-width-min: 10rem; }
  .future .grid-table .grid-table-group-12 {
    --column-width-min: 12rem; }
  .future .grid-table .grid-table-group-16 {
    --column-width-min: 16rem; }
  @media screen and (max-width: 979px) {
    .future .grid-table .grid-table-group-2 {
      --column-width-min: calc(0.8 * 2rem); }
    .future .grid-table .grid-table-group-4 {
      --column-width-min: calc(0.8 * 4rem); }
    .future .grid-table .grid-table-group-6 {
      --column-width-min: calc(0.8 * 6rem); }
    .future .grid-table .grid-table-group-8 {
      --column-width-min: calc(0.8 * 8rem); }
    .future .grid-table .grid-table-group-10 {
      --column-width-min: calc(0.8 * 10rem); }
    .future .grid-table .grid-table-group-12 {
      --column-width-min: calc(0.8 * 12rem); }
    .future .grid-table .grid-table-group-16 {
      --column-width-min: calc(0.8 * 16rem); } }
  .future .grid-cards {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    row-gap: 1em;
    column-gap: 1em; }
    .future .grid-cards .grid-panel {
      overflow: initial; }
    .future .grid-cards .grid-document-panel {
      grid-template-rows: 390px;
      max-width: 310px; }
      .future .grid-cards .grid-document-panel .panel-image img {
        height: 100%; }
  .future .text-introduction.text-left {
    text-align: left;
    margin: 0 auto 0 0; }
  .future .big-box {
    cursor: pointer; }
    .future .big-box .text-square {
      top: 50%; }
      @media screen and (max-width: 979px) {
        .future .big-box .text-square {
          top: auto;
          height: 100%;
          padding: 2em; } }
      .future .big-box .text-square p {
        font-size: 14px;
        line-height: 1.3em; }
        @media screen and (max-width: 767px) {
          .future .big-box .text-square p {
            display: none; } }
      @media screen and (max-width: 767px) {
        .future .big-box .text-square h3 {
          font-size: 22px; } }
  .future .member-details {
    display: flex;
    flex-direction: column;
    align-items: center; }
  .future .header-container.full-width.with-background {
    background-color: var(--main-color-lightest); }
  .future .header-container.full-width .header {
    max-width: 1200px;
    margin: 0 auto;
    padding: 2em; }
    .future .header-container.full-width .header .subheader {
      display: grid;
      grid-template-columns: 300px minmax(0, 2fr);
      grid-template-areas: 'avatar detail';
      grid-row-gap: 20px;
      grid-column-gap: 20px;
      width: 100%;
      max-width: 100%; }
      @media screen and (max-width: 767px) {
        .future .header-container.full-width .header .subheader {
          grid-template-areas: '. avatar .' '. detail .';
          grid-template-columns: unset;
          justify-items: center; } }
      .future .header-container.full-width .header .subheader .subheader-avatar {
        grid-area: avatar; }
      .future .header-container.full-width .header .subheader .subheader-detail {
        grid-area: detail; }
        @media screen and (max-width: 767px) {
          .future .header-container.full-width .header .subheader .subheader-detail {
            justify-content: center;
            align-items: center; } }
  .future .requested-ticket {
    margin-left: 1em;
    margin-right: 1em;
    margin-bottom: 2em; }
    .future .requested-ticket-title {
      display: flex;
      justify-content: space-between;
      align-items: center; }
    .future .requested-ticket-status {
      color: var(--main-color-new); }
  .future .attendee-row {
    display: grid;
    gap: 2em;
    margin-bottom: 1em;
    grid-template-columns: minmax(0, 3fr) minmax(0, 5fr) minmax(0, 1fr); }
    @media screen and (max-width: 767px) {
      .future .attendee-row {
        gap: .5em;
        margin-left: .5em; } }
    .future .attendee-row.no-email {
      grid-template-columns: 3fr 1fr; }
    .future .attendee-row .attendee-row-name {
      font-weight: 400; }
      .future .attendee-row .attendee-row-name-empty {
        color: var(--warning-color-dark); }
    .future .attendee-row .attendee-row-email {
      font-weight: 400;
      text-overflow: ellipsis;
      overflow-x: hidden; }
      .future .attendee-row .attendee-row-email-empty {
        color: var(--warning-color-dark);
        font-style: italic; }
  .future .info-block {
    display: flex;
    flex-direction: column;
    margin-bottom: 1em; }
    .future .info-block.no-mb {
      margin-bottom: 0; }
    .future .info-block.info-block-inline {
      flex-direction: row;
      justify-content: space-between; }
      .future .info-block.info-block-inline.flex-start {
        justify-content: flex-start;
        gap: 1em; }
      @media screen and (max-width: 767px) {
        .future .info-block.info-block-inline {
          flex-wrap: wrap; } }
    .future .info-block .info-block-stack {
      display: flex;
      flex-direction: column; }
      @media screen and (max-width: 767px) {
        .future .info-block .info-block-stack {
          flex-direction: row;
          gap: 1rem; } }
    .future .info-block .info-title {
      font-weight: 600; }
    .future .info-block .info-value {
      margin-right: 1em;
      gap: 0.5em; }
      .future .info-block .info-value.info-value-primary {
        font-weight: 600;
        color: var(--main-color-new); }
      .future .info-block .info-value.info-value-green {
        color: var(--green-color); }
      .future .info-block .info-value.info-value-amber {
        color: var(--amber-color); }
  .future .member-details-page__header {
    display: grid;
    grid-template-columns: min-content 40% 1fr 20%;
    grid-template-areas: "photo name . action";
    column-gap: 1em;
    align-items: center; }
  .future .member-details-page__avatar {
    grid-area: photo; }
  .future .member-details-page__title {
    grid-area: name;
    margin-right: auto;
    width: 100%; }
  .future .member-details-page__remove-member {
    grid-area: action;
    justify-self: flex-end; }
  .future .side-nav {
    display: grid;
    grid-template-areas: "toggle" "menu" "back-link"; }
    .future .side-nav__toggle {
      grid-area: toggle;
      display: none;
      cursor: pointer; }
    .future .side-nav__menu {
      grid-area: menu; }
    .future .side-nav__item {
      padding: 0.5em 1em;
      color: var(--black-color);
      border-left: 2px solid transparent; }
      .future .side-nav__item:hover, .future .side-nav__item:active, .future .side-nav__item:focus {
        color: var(--main-color-new);
        text-decoration: none; }
      .future .side-nav__item--selected {
        color: var(--main-color-new);
        border-left-color: var(--main-color-new); }
      .future .side-nav__item.disabled {
        color: var(--main-color-lighter); }
        .future .side-nav__item.disabled:hover, .future .side-nav__item.disabled:active, .future .side-nav__item.disabled:focus {
          color: var(--main-color-lighter); }
        .future .side-nav__item.disabled.side-nav__item--selected {
          border-left-color: transparent; }
    .future .side-nav__link-with-icon {
      gap: 0.5em; }
      .future .side-nav__link-with-icon:hover {
        text-decoration: none; }
        .future .side-nav__link-with-icon:hover .side-nav__link-text {
          text-decoration: underline; }
    .future .side-nav__back-link {
      grid-area: back-link;
      margin-top: 4em; }
  .future .next-btn,
  .future .prev-btn {
    color: var(--main-color-new);
    cursor: pointer;
    user-select: none; }
    .future .next-btn:hover,
    .future .prev-btn:hover {
      color: var(--main-color-dark); }
    .future .next-btn.disabled,
    .future .prev-btn.disabled {
      color: var(--main-color-lightest);
      cursor: not-allowed; }
      .future .next-btn.disabled:hover,
      .future .prev-btn.disabled:hover {
        color: var(--main-color-lightest); }
  .future .member-row {
    padding: 1.5em;
    background-color: var(--white-color);
    border: 1px solid var(--main-color-lighter);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
    border-radius: 4px; }
    .future .member-row__image {
      width: 80px;
      height: 80px; }
      .future .member-row__image img {
        border-radius: 4px;
        width: 100%; }
    .future .member-row:not(:last-of-type) {
      margin-bottom: 2em; }
    .future .member-row__details {
      width: calc(100% - 80px - 1em); }
      .future .member-row__details-header {
        width: 100%;
        justify-content: flex-start;
        column-gap: 1.5em;
        row-gap: 0; }
      .future .member-row__details-body {
        width: 100%;
        column-gap: 1em;
        row-gap: 0.5em; }
    .future .member-row__details-item {
      flex: 1;
      flex-basis: 47%;
      overflow-wrap: anywhere; }
  .future .membership-card {
    align-items: flex-start;
    margin-bottom: 2em; }
    .future .membership-card:last-of-type {
      margin-bottom: 0; }
    .future .membership-card .panel-details,
    .future .membership-card .panel-actions {
      flex: 1;
      flex-basis: 45%; }
    .future .membership-card .panel-actions {
      gap: 3rem; }
    .future .membership-card__other-info-area-header {
      font-size: 14px;
      border-radius: 4px;
      padding: 0.5em 1em;
      background-color: var(--main-color-lighter);
      display: flex;
      justify-content: space-between; }
    .future .membership-card__other-info-row {
      padding: 0.75em 1em;
      border-bottom: 1px solid var(--main-color-lighter);
      display: flex; }
    .future .membership-card__other-info-label {
      margin-right: 1em;
      flex: 1; }
    .future .membership-card__status-message {
      line-height: 1.5em; }
    .future .membership-card__button-area {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      gap: 1em; }
      .future .membership-card__button-area .btn {
        flex: 1; }
  .future .mapboxgl-ctrl-top-left, .future .mapboxgl-ctrl-top-right, .future .mapboxgl-ctrl-bottom-left, .future .mapboxgl-ctrl-bottom-right {
    z-index: 0; }
    .future .mapboxgl-ctrl-top-left button.mapboxgl-ctrl-attrib-button, .future .mapboxgl-ctrl-top-right button.mapboxgl-ctrl-attrib-button, .future .mapboxgl-ctrl-bottom-left button.mapboxgl-ctrl-attrib-button, .future .mapboxgl-ctrl-bottom-right button.mapboxgl-ctrl-attrib-button {
      display: none; }
  .future .markdown p:first-of-type {
    margin-top: 0; }
  .future .markdown p:last-of-type {
    margin-bottom: 0; }
  .future .description-list {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 1.75em; }
  .future .description-item {
    width: 100%;
    display: flex;
    gap: 1em;
    flex-wrap: wrap; }
    @media screen and (max-width: 1023px) {
      .future .description-item {
        font-size: .8em; } }
  .future .description-label {
    overflow-wrap: anywhere;
    flex: 1;
    flex-basis: 30%; }
  .future .description-value {
    overflow-wrap: anywhere;
    flex: 1;
    flex-basis: 55%; }
    .future .description-value .meta-info {
      font-weight: 600; }
  .future .description-label, .future .description-value {
    display: flex;
    flex-direction: column; }
  .future .description-compact {
    flex: unset;
    flex-basis: 0%; }
    .future .description-compact i {
      width: 24px; }
  .future .BetterSelect ul {
    list-style-type: none;
    margin: 0;
    padding: 1em; }
  .future .BetterSelect .FieldComponent-dropdown__control {
    background-color: var(--grey-lighter);
    border: none;
    border-radius: 2px;
    min-height: 44.8px; }
    .future .BetterSelect .FieldComponent-dropdown__control--is-focused {
      border-bottom-style: solid;
      border-bottom-width: 1px;
      border-bottom-color: var(--main-color-new);
      border-bottom-left-radius: 0;
      border-bottom-right-radius: 0;
      box-shadow: none; }
    .future .BetterSelect .FieldComponent-dropdown__control--menu-is-open {
      border-top: none; }
  .future .BetterSelect .FieldComponent-dropdown__value-container {
    padding: 6px 16px; }
    .future .BetterSelect .FieldComponent-dropdown__value-container .FieldComponent-dropdown__multi-value {
      background-color: var(--white-color); }
      .future .BetterSelect .FieldComponent-dropdown__value-container .FieldComponent-dropdown__multi-value .option-item {
        padding: 0.25em;
        border: 0; }
    .future .BetterSelect .FieldComponent-dropdown__value-container .FieldComponent-dropdown__single-value {
      width: calc(100% - 2em); }
  .future .BetterSelect .FieldComponent-dropdown__control,
  .future .BetterSelect .FieldComponent-dropdown__menu {
    color: var(--grey-darkest);
    border: 0;
    box-shadow: none; }
  .future .BetterSelect .FieldComponent-dropdown__value-container {
    padding: 3px 1em 2px; }
  .future .BetterSelect .FieldComponent-dropdown__menu {
    box-shadow: none;
    margin-top: 4px;
    border: 1px solid var(--grey-light);
    z-index: 3; }
    .future .BetterSelect .FieldComponent-dropdown__menu .FieldComponent-dropdown__menu-list.loqate {
      overflow-y: auto;
      max-height: 300px;
      position: inherit !important; }
  .future .BetterSelect .FieldComponent-dropdown__option {
    cursor: pointer; }
    .future .BetterSelect .FieldComponent-dropdown__option.loqate {
      padding: 0 1em; }
    .future .BetterSelect .FieldComponent-dropdown__option:first-child .option-item {
      border-top: 0; }
  .future .BetterSelect .FieldComponent-dropdown__option--is-focused,
  .future .BetterSelect .FieldComponent-dropdown__option:hover,
  .future .BetterSelect .option-item.loqate:hover {
    color: var(--main-color-new);
    background-color: transparent; }
  .future .BetterSelect .FieldComponent-dropdown__option--is-selected {
    color: var(--grey-darkest);
    background-color: var(--main-color-lightest); }
    .future .BetterSelect .FieldComponent-dropdown__option--is-selected.FieldComponent-dropdown__option--is-focused {
      color: var(--main-color-new); }
  .future .no-results {
    height: 50vh;
    min-height: 500px; }
  .future .maptip {
    position: absolute;
    padding: 1em;
    max-width: 300px;
    font-size: 12px;
    line-height: 16px;
    z-index: 1; }
    .future .maptip .county-header {
      flex-wrap: nowrap; }
      .future .maptip .county-header .county-thumbnail {
        width: 60px;
        height: 60px;
        object-fit: cover; }
      .future .maptip .county-header .county-name {
        flex: 0 0 60%;
        margin: 0;
        min-width: 100px;
        padding-right: 1.5em; }
    .future .maptip .county-description {
      max-height: 8em;
      overflow-y: scroll;
      padding-right: 1em; }
    .future .maptip .attach-right {
      color: var(--black-color);
      position: absolute;
      right: 1em; }
      .future .maptip .attach-right:hover {
        cursor: pointer; }
    .future .maptip a {
      text-decoration: none; }
      .future .maptip a:hover {
        cursor: pointer; }
    .future .maptip .material-small > .material-icons {
      font-size: 1.5em; }
  .future .empty-container {
    background-color: #F6F7F9;
    border-radius: 0.3em; }
  .future .banner-ad {
    max-width: calc(1200px - 4em) !important;
    padding: 2em;
    background-color: #F6F7F9;
    border-radius: 0.3em;
    display: grid;
    grid-template-areas: 'banner-content hero';
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 2em; }
    .future .banner-ad .banner-content {
      grid-area: banner-content;
      align-self: center; }
    .future .banner-ad .primary-image {
      grid-area: hero;
      align-self: center; }
      .future .banner-ad .primary-image img {
        width: 100%;
        height: auto; }
  .future .highlighted {
    color: var(--main-color-new); }
  @media screen and (max-width: 1023px) {
    .future .p-m-1 {
      padding: 1em !important; } }
  .future .video-player {
    position: relative;
    padding-top: 56.25%;
    /* Player ratio: 100 / (1280 / 720) */ }
    .future .video-player .rtl-controls-container {
      position: absolute;
      width: 100%;
      height: 100%;
      top: 0px; }
      .future .video-player .rtl-controls-container:hover .rtl-controls-bottom-bar {
        background: linear-gradient(to top, rgba(0, 0, 0, 0.9) 20%, #00000000 100%); }
        .future .video-player .rtl-controls-container:hover .rtl-controls-bottom-bar input[type="range"] {
          --thumb-height: 1.125em; }
      .future .video-player .rtl-controls-container:hover .rtl-controls-top-bar {
        background: linear-gradient(to bottom, rgba(0, 0, 0, 0.9) 20%, #00000000 100%); }
    .future .video-player .rtl-controls-top-bar {
      background: none;
      display: flex;
      flex-direction: column;
      color: var(--white-color);
      position: absolute;
      top: 0;
      left: 0;
      right: 0; }
    .future .video-player .rtl-controls-top-bar-title {
      width: 100%; }
    .future .video-player .rtl-controls-top-bar-subtitle {
      width: 100%; }
    .future .video-player .rtl-controls-bottom-bar {
      display: flex;
      flex-direction: column;
      transition: background 5s;
      background: none; }
      .future .video-player .rtl-controls-bottom-bar input[type="range"] {
        padding: 10px 0;
        margin-bottom: -16px;
        background: rgba(0, 0, 0, 0);
        --thumb-height: 0.3em; }
      .future .video-player .rtl-controls-bottom-bar:hover input[type="range"] {
        --thumb-height: 1.125em; }
    .future .video-player .rtl-controls-bottom-bar-buttons {
      display: flex;
      flex-direction: row; }
    .future .video-player .rtl-controls-bottom-bar-button:hover {
      filter: drop-shadow(0px 0px 6px var(--highlight-color));
      cursor: pointer; }
  .future .react-player {
    position: absolute;
    top: 0;
    left: 0; }

.dashboard-page-component {
  display: flex;
  flex-direction: column;
  max-width: 750px;
  margin-top: 3em;
  margin-bottom: 3em;
  margin-left: auto;
  margin-right: auto; }
  .dashboard-page-component button, .dashboard-page-component .button, .dashboard-page-component input[type="submit"] {
    outline: 0;
    border: 2px solid var(--main-color-new);
    display: inline-block;
    width: auto;
    border-radius: 4px;
    background-color: var(--main-color-new);
    font-size: 14px;
    line-height: inherit;
    font-family: var(--main-new-font-family);
    font-weight: 600;
    color: var(--white-color);
    text-decoration: none;
    text-transform: uppercase;
    transition: background-color .5s;
    padding: 0.6em 2.25em; }
    .dashboard-page-component button:hover, .dashboard-page-component button:active, .dashboard-page-component button:focus, .dashboard-page-component .button:hover, .dashboard-page-component .button:active, .dashboard-page-component .button:focus, .dashboard-page-component input[type="submit"]:hover, .dashboard-page-component input[type="submit"]:active, .dashboard-page-component input[type="submit"]:focus {
      background-color: var(--main-color-dark);
      color: var(--white-color);
      border-color: var(--main-color-dark);
      cursor: pointer; }

.dashboard-page,
.dashboard-page-component {
  display: flex;
  flex-direction: column; }

.dashboard-notices {
  position: relative; }
  .dashboard-notices .dashboard-notice-holder {
    display: flex;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth; }
    .dashboard-notices .dashboard-notice-holder::-webkit-scrollbar {
      display: none; }
    @media screen and (max-width: 1023px) {
      .dashboard-notices .dashboard-notice-holder {
        max-width: calc(100vw - 50px); } }
  .dashboard-notices .dashboard-action {
    background-color: var(--main-color);
    color: var(--white-color);
    cursor: pointer;
    flex-shrink: 0;
    min-height: 175px;
    margin-right: 50px;
    border-radius: 5px;
    position: relative;
    padding: 1em;
    scroll-snap-align: start;
    width: 100%; }
    .dashboard-notices .dashboard-action :first-child {
      margin-top: 0; }
    .dashboard-notices .dashboard-action p, .dashboard-notices .dashboard-action h1, .dashboard-notices .dashboard-action h2, .dashboard-notices .dashboard-action h3, .dashboard-notices .dashboard-action h4, .dashboard-notices .dashboard-action h5, .dashboard-notices .dashboard-action h6 {
      color: var(--white-color); }
    .dashboard-notices .dashboard-action .dashboard-action-button {
      bottom: 22px; }
      .dashboard-notices .dashboard-action .dashboard-action-button button {
        background-color: var(--white-color);
        color: var(--main-color);
        border-color: var(--white-color); }
        .dashboard-notices .dashboard-action .dashboard-action-button button:hover, .dashboard-notices .dashboard-action .dashboard-action-button button:active {
          background-color: var(--main-color-lighter); }
  .dashboard-notices .dashboard-slider {
    position: absolute;
    bottom: .5em;
    right: .5em;
    z-index: 2; }
    .dashboard-notices .dashboard-slider a {
      display: inline-block;
      width: 12px;
      height: 12px;
      border: solid 3px var(--white-color);
      background-color: var(--white-color);
      border-radius: 50%;
      content: ' ';
      margin-left: 3px; }
      .dashboard-notices .dashboard-slider a.current-slide {
        background-color: var(--main-color-new); }
      .dashboard-notices .dashboard-slider a span {
        font-size: 0; }
