@keyframes appear {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes disappear {
  0% {
    opacity: 1;
    overflow: hidden;
    transform: scaleY(1);
  }
  99% {
    min-height: 0;
    opacity: 0;
    overflow: hidden;
    transform: scaleY(0);
  }
  100% {
    display: none !important;
    height: 0;
    margin: 0;
    opacity: 0;
    padding: 0;
    width: 0;
  }
}
@keyframes point-r {
  0% {
    transform: translate(0, -50%);
  }
  50% {
    transform: translate(1rem, -50%);
  }
  100% {
    transform: translate(0, -50%);
  }
}
@keyframes point-d {
  0% {
    transform: translate(0, 0);
  }
  50% {
    transform: translate(0, 25%);
  }
}
@keyframes slide_right {
  0% {
    transform: translateX(-100vw);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes slide_left {
  0% {
    transform: translateX(100vw);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes centre-scale {
  0% {
    transform: translate(-50%, -50%) scale(1);
  }
  50% {
    transform: translate(-50%, -50%) scale(1.3);
  }
  100% {
    transform: translate(-50%, -50%) scale(1);
  }
}
:root {
  --app-height: 100%;
}

* {
  box-sizing: border-box;
}

html {
  font-size: 62.5%;
  -moz-text-size-adjust: none;
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
}
html.no-scroll {
  overflow: hidden;
}
html.no-scroll body, html.no-scroll #page-con {
  overflow: hidden;
}

html, body, #page-con {
  margin: 0;
  position: relative;
}

body {
  background-color: rgb(250, 250, 250);
  font-family: "DM Sans", sans-serif;
  font-size: 1.5em;
  font-weight: 400;
}
@media not all and (-webkit-min-device-pixel-ratio: 0), not all and (min-resolution: 0.001dpcm) {
  @supports (-webkit-appearance: none) {
    body.mob-menu-open #page-con {
      position: fixed;
      overflow: hidden;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
    }
  }
}

#page-con {
  align-items: center;
  background-size: 100% auto;
  background-repeat: repeat-y;
  display: flex;
  flex-direction: column;
  margin: 0 auto;
  max-width: 100%;
  overflow: hidden;
  position: relative;
  transition: all 300ms ease-out;
}
header, section, footer {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  color: rgb(30, 30, 30);
  font-family: "DM Sans", sans-serif;
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 1.4;
  position: relative;
}
@media only screen and (min-width: 576px) {
  header, section, footer {
    font-size: 2rem;
  }
}

aside, section, footer {
  align-content: stretch;
  align-items: center;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  width: 100%;
}
aside.reverse .row, aside.col-rev .row, section.reverse .row, section.col-rev .row, footer.reverse .row, footer.col-rev .row {
  flex-direction: column-reverse;
}
@media only screen and (min-width: 1024px) {
  aside .row, section .row, footer .row {
    flex-direction: row;
  }
  aside.reverse .row, section.reverse .row, footer.reverse .row {
    flex-direction: row-reverse;
  }
  aside.col-rev .row, section.col-rev .row, footer.col-rev .row {
    flex-direction: row;
  }
}

section {
  opacity: 1;
  transition: opacity 300ms ease-out;
}
section:nth-child(2n) {
  transition-delay: 200ms;
}
section:nth-child(3n) {
  transition-delay: 300ms;
}
section:nth-child(4n) {
  transition-delay: 400ms;
}
section:nth-child(5n) {
  transition-delay: 500ms;
}
section:nth-child(6n) {
  transition-delay: 600ms;
}
section:nth-child(7n) {
  transition-delay: 700ms;
}
section:nth-child(8n) {
  transition-delay: 800ms;
}
section.maf-h-c .header {
  padding: 0 !important;
}
section.maf-h-c .header .maf-content {
  border: 0;
  padding: 0 !important;
}
section.maf-f-c .footer {
  padding: 0 !important;
}
section.maf-f-c .footer .maf-content {
  display: none;
  padding: 0 !important;
}

.header {
  align-items: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin: 0 auto;
  max-width: 160rem;
  padding: 6rem 1.5rem 0 1.5rem;
  width: 100%;
  z-index: 1;
}
@media only screen and (min-width: 576px) {
  .header {
    padding: 10rem 4rem 0 4rem;
  }
}
.header .maf-content {
  align-items: center;
  text-align: center;
}

.footer {
  align-items: center;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  margin: 0 auto;
  max-width: 160rem;
  padding: 0 1.5rem 5rem 1.5rem;
  text-align: center;
  width: 100%;
}
@media only screen and (min-width: 576px) {
  .footer {
    padding: 0 4rem 10rem 4rem;
  }
}

.row {
  align-content: stretch;
  align-items: stretch;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  flex-wrap: nowrap;
  justify-content: center;
  max-width: 160rem;
  position: relative;
  width: 100%;
  padding: 0;
}
@media only screen and (min-width: 576px) {
  .row {
    padding: 0 2.5rem;
  }
}
@media only screen and (min-width: 1024px) {
  .row {
    flex-direction: row;
    flex-wrap: wrap;
  }
}
.row.nested {
  padding: 0;
}
@media only screen and (min-width: 576px) {
  .row .header {
    padding: 10rem 1.5rem 0 1.5rem;
  }
}
@media only screen and (min-width: 576px) {
  .row .footer {
    padding: 0 1.5rem 10rem 1.5rem;
  }
}

.column {
  align-content: center;
  align-items: center;
  background-color: transparent;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  justify-content: flex-start;
  min-height: 0;
  position: relative;
  padding: 6rem 1.5rem;
}
@media only screen and (min-width: 960px) {
  .column {
    padding: 10rem 1.5rem;
  }
}
@media only screen and (min-width: 1024px) {
  .column {
    min-height: 0;
  }
}
.column.hide-mobile {
  display: none;
}
@media only screen and (min-width: 768px) {
  .column.hide-mobile {
    display: flex;
  }
}
.column.nested {
  margin: 0;
  padding: 0;
}

.maf-content, .col-i {
  align-items: flex-start;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  display: flex;
  flex-direction: column;
  position: relative;
  width: 100%;
  z-index: 1;
  padding: 0;
}
.maf-content span[style*="background-color:"], .col-i span[style*="background-color:"] {
  padding: 0.2em 0.3em;
}
.maf-content > *:first-child, .col-i > *:first-child {
  margin-top: 0;
}
.maf-content > *:last-child, .col-i > *:last-child {
  margin-bottom: 0;
}
.maf-content > *:last-child > *:last-child, .col-i > *:last-child > *:last-child {
  margin-bottom: 0;
}
.maf-content.push-last, .col-i.push-last {
  height: 100%;
}
.maf-content.push-last > *:last-child, .col-i.push-last > *:last-child {
  margin-top: auto;
}
.maf-content + .maf-content, .col-i + .maf-content {
  padding-top: 1.2em;
}

.maf-header {
  padding: 6rem 1.5rem;
  padding-top: 0;
  width: 100%;
}
@media only screen and (min-width: 960px) {
  .maf-header {
    padding: 10rem 1.5rem;
    padding-top: 0;
  }
}
.maf-header > *:last-child {
  margin-bottom: 0;
}
.maf-header > *:last-child > *:last-child {
  margin-bottom: 0;
}

.fifth {
  width: 100%;
}
@media only screen and (min-width: 960px) {
  .fifth {
    width: 20%;
  }
}

.quarter {
  width: 100%;
}
@media only screen and (min-width: 768px) {
  .quarter {
    width: 50%;
  }
}
@media only screen and (min-width: 1024px) {
  .quarter {
    width: 25%;
  }
}

.third {
  width: 100%;
}
@media only screen and (min-width: 1024px) {
  .third {
    width: 33.333%;
  }
}

.half {
  width: 100%;
}
@media only screen and (min-width: 1024px) {
  .half {
    width: 50%;
  }
}

.two-thirds {
  width: 100%;
}
@media only screen and (min-width: 1024px) {
  .two-thirds {
    width: 66.666%;
  }
}

.three-quarters {
  width: 100%;
}
@media only screen and (min-width: 1024px) {
  .three-quarters {
    width: 75%;
  }
}

.whole {
  align-items: center;
  text-align: center;
  width: 100%;
}

.col-7 {
  width: 100%;
}
@media only screen and (min-width: 1024px) {
  .col-7 {
    width: 58.333%;
  }
}

.col-5 {
  width: 100%;
}
@media only screen and (min-width: 1024px) {
  .col-5 {
    width: 41.666%;
  }
}

.maf-bg-overlay, .maf-background, .maf-background-image, .image-overlay, .maf-sprite-layer {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  height: calc(100% + 1px);
  left: 50%;
  overflow: hidden;
  position: absolute;
  text-align: center;
  transform: translate(-50%, -50%);
  top: 50%;
  width: calc(100% + 2px);
  z-index: 0;
}
.maf-bg-overlay .texture, .maf-background .texture, .maf-background-image .texture, .image-overlay .texture, .maf-sprite-layer .texture {
  height: 100%;
  width: 100%;
}
.maf-bg-overlay.is-texture, .maf-background.is-texture, .maf-background-image.is-texture, .image-overlay.is-texture, .maf-sprite-layer.is-texture {
  mix-blend-mode: overlay;
  opacity: 0.2;
}
.maf-bg-overlay.is-texture.screen, .maf-background.is-texture.screen, .maf-background-image.is-texture.screen, .image-overlay.is-texture.screen, .maf-sprite-layer.is-texture.screen {
  mix-blend-mode: screen;
  opacity: 0.8;
}

.maf-sprite-layer {
  height: 100%;
  left: 0;
  transform: none;
  top: 0;
  width: 100%;
}

.maf-background-image {
  -o-object-fit: cover;
     object-fit: cover;
  opacity: 1;
  transform: scale(1);
  transform-origin: bottom center;
}

.maf-c-f::after,
.maf-c-f::before {
  content: " ";
  display: table;
}

.maf-c-f::after {
  clear: both;
}

.bg-colour-page {
  background-color: rgb(250, 250, 250);
}

img {
  height: auto;
  line-height: 0;
  max-width: 100%;
  vertical-align: middle;
}
img:not([src]):not([srcset]) {
  visibility: hidden;
}

img.maxh {
  max-height: 100%;
  max-width: none;
  width: auto;
}

img.fluid {
  height: auto;
  max-width: none;
  width: 100%;
}

img.al-centre {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

img.al-right {
  display: block;
  margin-left: auto;
  margin-right: 0;
}

img.al-left {
  display: block;
  margin-left: 0;
  margin-right: auto;
}

figure {
  display: table;
  margin: 0 auto;
  position: relative;
  width: auto;
}
figure img {
  width: auto;
}
figure figcaption {
  background-color: rgb(71, 79, 71);
  caption-side: bottom;
  color: rgb(250, 250, 250);
  display: none;
  font-size: inherit;
  font-style: normal;
  font-weight: 400;
  min-width: 100%;
  padding: 1rem 1.5rem;
  text-align: left;
  position: relative;
}
@media only screen and (min-width: 576px) {
  figure figcaption {
    padding: 1rem 3rem;
  }
}

a, a:visited {
  color: rgb(115, 141, 114);
  line-height: inherit;
  text-decoration: none;
  transition: all 300ms ease-out;
}

a:hover, a:focus, a:active {
  color: rgb(71, 79, 71);
  text-decoration: none;
}

h1, .h1-style, h2, .h2-style, h3, .h3-style, h4, .h4-style, h5, .h5-style, h6, .h6-style, p, .p-style, address, blockquote {
  margin: 0.1em 0 1.2em 0;
  width: 100%;
}
h1.bold, .h1-style.bold, h2.bold, .h2-style.bold, h3.bold, .h3-style.bold, h4.bold, .h4-style.bold, h5.bold, .h5-style.bold, h6.bold, .h6-style.bold, p.bold, .p-style.bold, address.bold, blockquote.bold {
  font-weight: 700;
}
h1.normal, .h1-style.normal, h2.normal, .h2-style.normal, h3.normal, .h3-style.normal, h4.normal, .h4-style.normal, h5.normal, .h5-style.normal, h6.normal, .h6-style.normal, p.normal, .p-style.normal, address.normal, blockquote.normal {
  font-weight: 400;
}

address {
  font-style: normal;
  font-weight: inherit;
  line-height: 1.4;
}
address > span.pcode {
  white-space: nowrap;
}

time {
  font-feature-settings: "lnum" 1;
}

h1, .h1-style, h2, .h2-style, h3, .h3-style, h4, .h4-style, h5, .h5-style, h6, .h6-style {
  font-feature-settings: "lnum" 1;
  font-family: "Quicksand", sans-serif;
  font-weight: 300;
  line-height: 1.05;
  margin-bottom: 0.6em;
  position: relative;
  width: 100%;
}

h1, .h1-style {
  font-size: 4.4rem;
  text-transform: uppercase;
}
@media only screen and (min-width: 576px) {
  h1, .h1-style {
    font-size: 6rem;
  }
}
@media only screen and (min-width: 1152px) {
  h1, .h1-style {
    font-size: 7.2rem;
  }
}
h2, .h2-style {
  font-size: 4rem;
  text-transform: uppercase;
}
@media only screen and (min-width: 576px) {
  h2, .h2-style {
    font-size: 5.4rem;
  }
}

h3, .h3-style {
  font-size: 2.8rem;
}
@media only screen and (min-width: 576px) {
  h3, .h3-style {
    font-size: 3.6rem;
  }
}

h4, .h4-style {
  font-size: 2.6rem;
}
@media only screen and (min-width: 576px) {
  h4, .h4-style {
    font-size: 2.8rem;
  }
}

h5, .h5-style {
  font-size: 2.6rem;
}
@media only screen and (min-width: 576px) {
  h5, .h5-style {
    font-size: 2.8rem;
  }
}

h6, .h6-style {
  font-size: 2.6rem;
  color: rgb(30, 30, 30);
}
@media only screen and (min-width: 576px) {
  h6, .h6-style {
    font-size: 2.8rem;
  }
}

p, .p-style, li, blockquote, address, .body-text {
  font-feature-settings: "lnum" 1;
  line-height: 1.4;
}
p img.al-left, .p-style img.al-left, li img.al-left, blockquote img.al-left, address img.al-left, .body-text img.al-left {
  float: left;
  margin: 0 5px 5px 0;
}
p img.al-right, .p-style img.al-right, li img.al-right, blockquote img.al-right, address img.al-right, .body-text img.al-right {
  float: right;
  margin: 0 0 0.5rem 0.5rem;
}

.al-left {
  margin-right: auto;
  text-align: left !important;
}

.al-right {
  margin-left: auto;
  text-align: right !important;
}

.al-centre, .al-center {
  margin-right: auto;
  margin-left: auto;
  text-align: center !important;
}

strong {
  font-weight: 600;
}

sup {
  font-size: 0.6em;
}

sub {
  font-size: 0.5em;
  vertical-align: baseline;
}

hr {
  background-color: transparent;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  border-top: 0.1rem solid currentColor;
  color: inherit;
  display: inline-block;
  height: 0;
  margin: 0.6em auto 1.8em auto;
  width: 100%;
}
hr.heavy {
  margin: 1.2em 0 2.4em 0;
  border-top: 0.5rem solid rgb(30, 30, 30);
}
hr.divider {
  background-color: transparent;
  background-image: url("/images/Layout/divider.png");
  background-size: contain;
  height: 2.2rem;
  max-width: 140rem;
}

.drop-caps > *:first-child::first-letter {
  float: left;
  font-size: 6em;
  font-weight: 700;
  line-height: 1;
  margin-right: 0.1em;
}

.maf-content ul, .maf-content ol {
  list-style-position: outside;
  margin: 0.2em 0 2em 0;
  max-width: 100rem;
  padding: 0;
  width: 100%;
}
.maf-content ul li, .maf-content ol li {
  margin: 0 0 0.1em 0;
  padding-left: 1.5em;
}
.maf-content ul li > p, .maf-content ol li > p {
  margin: 0;
}
.maf-content ul {
  list-style-type: none;
}
.maf-content ul li {
  position: relative;
}
.maf-content ul li::before {
  background-color: currentColor;
  border-radius: 50%;
  content: "";
  color: inherit;
  display: inline-block;
  font-weight: 600;
  height: 0.3em;
  left: 0;
  position: absolute;
  top: 0.5em;
  vertical-align: 0.2em;
  width: 0.3em;
}
.maf-content ul li ul {
  margin-top: 1.2rem;
}
.maf-content ol {
  counter-reset: maf-ol-counter;
  list-style: none;
  position: relative;
}
.maf-content ol li {
  counter-increment: maf-ol-counter;
  padding-left: 2em;
  position: relative;
}
.maf-content ol li::before {
  content: counter(maf-ol-counter) ".";
  color: rgb(30, 30, 30);
  display: inline-block;
  font-family: "DM Sans", sans-serif;
  font-size: 1em;
  font-weight: 600;
  height: 1em;
  left: 0;
  line-height: 1;
  margin-right: 0.8rem;
  opacity: 1;
  position: absolute;
  top: 0.1em;
  transform: translateY(0.1em);
  vertical-align: top;
  width: 1.2em;
}

.is-faq dl {
  border-bottom: 0.1rem solid currentColor;
  color: inherit;
  font-size: 1.8rem;
  font-weight: 400;
  text-align: left;
  width: 100%;
}
.is-faq dl dt {
  background-color: transparent;
  border-top: 1px solid currentColor;
  color: inherit;
  cursor: pointer;
  font-size: inherit;
  font-weight: 700;
  line-height: 1.2;
  padding: 2rem 5rem 2rem 1.5rem;
  position: relative;
  transition: background-color 300ms ease-out;
  width: 100%;
}
@media only screen and (min-width: 576px) {
  .is-faq dl dt {
    padding: 2rem 7rem 2rem 3rem;
  }
}
.is-faq dl dt span {
  display: inline-block;
  max-width: 73rem;
}
.is-faq dl dt::before {
  border-right: 0.2rem solid currentColor;
  border-bottom: 0.2rem solid currentColor;
  color: inherit;
  content: "";
  display: inline-block;
  height: 0.8rem;
  position: absolute;
  right: 2.5rem;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  transform-origin: center;
  transition: all 300ms ease-out;
  width: 0.8rem;
}
@media only screen and (min-width: 576px) {
  .is-faq dl dt::before {
    right: 5rem;
  }
}
.is-faq dl dt:hover::before, .is-faq dl dt:focus::before {
  top: 55%;
}
.is-faq dl dt:first-child {
  border-top: 0;
}
.is-faq dl dt.open::before {
  transform: translateY(-50%) rotate(45deg) scaleX(-1) scaleY(-1);
}
.is-faq dl dt.open:hover::before, .is-faq dl dt.open:focus::before {
  top: 45%;
}
.is-faq dl dd {
  display: none;
  margin-left: 0;
  padding: 2rem 5rem 2rem 1.5rem;
  width: 100%;
}
@media only screen and (min-width: 576px) {
  .is-faq dl dd {
    padding: 2rem 7rem 2rem 3rem;
  }
}
.is-faq dl dd > * {
  line-height: 1.4;
  max-width: 73rem;
}
.is-faq dl dd > *:last-child {
  margin-bottom: 0;
}

blockquote {
  color: rgb(30, 30, 30);
  display: inline-block;
  font-family: "Quicksand", sans-serif;
  font-size: 3rem;
  font-style: italic;
  font-weight: 400;
  margin: 0.6em auto 1.44em auto;
  max-width: 83.333%;
  padding: 5rem 0 5rem 10%;
  position: relative;
  text-align: left;
  /*&::before {
    //background-color: $colour-1;
    background-image: url('/images/Layout/quote.png');
    background-repeat: no-repeat;
    background-size: 100%;
    //color: inherit;
    content: '';//open-quote;//
    display: inline-block;
    height: 7.8rem;
    left: 0;
    //line-height: 1;
    position: absolute;
    top: 0;
    //transform: translateY(-50%);
    width: 9.5rem;
  }
  &::after {
    bottom: -0.25em;
    color: inherit;
    display: none;
    content: close-quote;
    font-size: 2em;
    font-weight: 700;
    line-height: 1;
    position: absolute;
    right: 0;
  }*/
}
@media only screen and (min-width: 576px) {
  blockquote {
    font-size: 3.8rem;
  }
}
blockquote::after {
  aspect-ratio: 97/74;
  background-image: url("/images/Layout/quote.png");
  background-size: 100% 100%;
  content: "";
  left: 1%;
  position: absolute;
  top: 1.4rem;
  width: 9%;
}
blockquote p {
  color: inherit;
  font-size: inherit;
  font-weight: inherit;
}
blockquote p.small-text {
  font-size: 1.8rem !important;
  font-weight: 400 !important;
}
blockquote p:last-child {
  margin-bottom: 0;
}
blockquote.heavy {
  font-family: "Quicksand", sans-serif;
  font-size: 4rem;
  margin: auto 0 !important;
}
@media only screen and (min-width: 576px) {
  blockquote.heavy {
    font-size: 6rem;
  }
}
blockquote.heavy p {
  font-style: normal;
  line-height: 0.9;
  text-transform: uppercase;
}
blockquote.heavy p:last-child {
  color: rgb(48, 70, 107);
  font-size: 2.4rem;
}
blockquote + blockquote {
  margin-top: 0;
}

table {
  border-collapse: collapse;
  margin: 0;
  padding: 0;
  width: 100%;
}
table tr {
  margin: 0;
}
table tr td {
  padding: 0.5rem;
  vertical-align: top;
}

form {
  transition: all 300ms ease-out;
  width: 100%;
}
form.hide {
  filter: blur(0.5rem) !important;
  height: 0 !important;
  margin: 0 !important;
  opacity: 0 !important;
  transform: scale(0) !important;
  width: 0 !important;
}

input, textarea {
  background-color: transparent;
  border: 0.2rem solid rgb(30, 30, 30);
  border-radius: 0.5rem;
  color: rgb(30, 30, 30);
  display: inline-block;
  font-family: "DM Sans", sans-serif;
  font-feature-settings: "lnum" 1;
  font-size: 1.8rem;
  font-style: normal;
  font-weight: 400;
  margin: 0;
  outline: none;
  outline-color: transparent;
  padding: 1.2rem 2rem;
  transition: all 300ms ease-out;
  width: 100%;
}
input::-moz-placeholder, textarea::-moz-placeholder {
  font-family: "DM Sans", sans-serif;
  opacity: 1;
}
input::placeholder, textarea::placeholder {
  font-family: "DM Sans", sans-serif;
  opacity: 1;
}
input:focus, textarea:focus {
  border-color: rgb(71, 79, 71);
}
input:focus::-moz-placeholder, textarea:focus::-moz-placeholder {
  opacity: 0.4;
}
input:focus::placeholder, textarea:focus::placeholder {
  opacity: 0.4;
}

textarea {
  resize: none;
}
textarea.deep {
  min-height: 36rem;
}

label {
  display: inline-block;
  padding: 0;
}

select {
  margin-bottom: 1.2em;
  outline-color: rgb(30, 30, 30);
}

input[type=submit],
input[type=reset],
button.maf-button {
  align-items: center;
  background-color: rgb(30, 30, 30);
  background-size: 100% 100%;
  border: 0.1rem solid rgb(30, 30, 30);
  color: rgb(250, 250, 250);
  cursor: pointer;
  display: inline-flex;
  font-family: "DM Sans", sans-serif;
  font-size: 1.8rem;
  font-style: normal;
  font-weight: 400;
  justify-content: center;
  min-width: 20rem;
  opacity: 1;
  outline: transparent;
  padding: 1.2rem 2rem;
  position: relative;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  transition: all 300ms ease-out;
  width: auto;
}
input[type=submit]:hover, input[type=submit]:focus,
input[type=reset]:hover,
input[type=reset]:focus,
button.maf-button:hover,
button.maf-button:focus {
  background-color: transparent;
  color: rgb(30, 30, 30);
  opacity: 1;
  text-decoration: none;
}

input[type=radio], input[type=checkbox] {
  display: inline;
  margin: 0 0.5rem 0 0;
  vertical-align: middle;
  width: auto;
}

.control-group {
  margin-bottom: 3rem;
}

.checkbox {
  align-items: center;
  display: flex;
}
.checkbox .pretty-check {
  display: inline-block;
  flex: 0 0 auto;
  height: 3rem;
  position: relative;
  margin: 0.2rem;
  width: 3rem;
}
.checkbox .pretty-check label {
  border-radius: 0;
  border: 0.2rem solid rgb(30, 30, 30);
  cursor: pointer;
  height: 100%;
  left: 0;
  margin: 0;
  min-height: 0;
  outline: none;
  position: absolute;
  width: 100%;
  top: 0;
}
.checkbox .pretty-check label::after {
  background: transparent;
  border: 0.3rem solid rgb(250, 250, 250);
  border-top: none;
  border-right: none;
  content: "";
  height: 20%;
  left: 25%;
  opacity: 0;
  position: absolute;
  top: 30%;
  transition: all 300ms ease-out;
  transform: rotate(-50deg);
  width: 40%;
}
.checkbox .pretty-check label:focus {
  background: rgb(30, 30, 30);
}
.checkbox .pretty-check label:focus::after {
  opacity: 0.9;
}
.checkbox .pretty-check input[type=checkbox] {
  left: -100vw;
  position: absolute;
  visibility: hidden;
  z-index: 0;
}
.checkbox .pretty-check input[type=checkbox]:checked + label {
  background: rgb(30, 30, 30);
}
.checkbox .pretty-check input[type=checkbox]:checked + label:after {
  opacity: 1;
}
.checkbox .pretty-check input[type=checkbox]:checked + label:focus {
  background: rgb(30, 30, 30);
}
.checkbox .pretty-check input[type=checkbox]:checked + label:focus::after {
  opacity: 0.9;
}
.checkbox span {
  cursor: pointer;
  font-size: 1.6rem;
  line-height: 0.7;
  padding-left: 0.5rem;
  text-align: left;
}

.radio {
  align-items: center;
  cursor: pointer;
  display: flex;
  margin-bottom: 1.2em;
  width: 100%;
}
.radio .pretty-radio {
  display: inline-block;
  position: relative;
  margin: 0;
  width: 4rem;
}
.radio .pretty-radio label {
  border-radius: 50%;
  border: 1rem solid rgb(30, 30, 30);
  cursor: pointer;
  height: 4rem;
  left: 0;
  margin: 0;
  outline: none;
  position: absolute;
  transition: background-color 300ms ease-out;
  width: 4rem;
  top: 0.1rem;
}
.radio .pretty-radio label:after {
  background: transparent;
  border: 0.2rem solid rgb(30, 30, 30);
  border-top: none;
  border-right: none;
  content: "";
  display: none;
  height: 0.4rem;
  left: 0.4rem;
  opacity: 0;
  position: absolute;
  top: 0.5rem;
  transition: all 300ms ease-out;
  transform: rotate(-50deg);
  width: 0.8rem;
}
.radio .pretty-radio label:hover, .radio .pretty-radio label:focus {
  background: rgb(60, 60, 60);
}
.radio .pretty-radio label:hover::after {
  opacity: 0.7;
}
.radio .pretty-radio input[type=radio] {
  left: -100vw;
  position: absolute;
  visibility: hidden;
  z-index: 0;
}
.radio .pretty-radio input[type=radio]:checked + label {
  background: rgb(60, 60, 60);
}
.radio .pretty-radio input[type=radio]:checked + label:after {
  opacity: 1;
}
.radio span {
  margin-bottom: 0.8rem;
  padding-left: 1rem;
  text-align: left;
  width: calc(100% - 4rem);
}
.radio:hover .pretty-radio label {
  background: rgb(60, 60, 60);
}

.select {
  background-color: white;
  border: 0.1rem solid rgb(30, 30, 30);
  cursor: pointer;
  height: 4.6rem;
  margin: 0;
  overflow: hidden;
  padding-right: 1rem;
  position: relative;
  transition: border-color 300ms ease-out;
  width: 100%;
  z-index: 0;
  /*&::before {
  	//background: linear-gradient(to left, white 0%, white 75%, rgba(255,255,255,0));
  	//border-left: 1px solid rgb(224,223,224);
  	content: '';
     display: none;
  	height: 100%;
     pointer-events: none;
  	position: absolute;
  	right: 0;
  	transition: all $timing $ease;
  	top: 0;
  	width: 5rem;
  	z-index: 1;
  }*/
}
.select.short {
  max-width: 15rem;
}
.select::after {
  background-color: transparent;
  border: 0.1rem solid rgb(30, 30, 30);
  border-left: 0;
  border-top: 0;
  content: "";
  height: 0.7rem;
  pointer-events: none;
  position: absolute;
  right: 1rem;
  transform: translate(-50%, -60%) rotate(45deg);
  transform-origin: center;
  transition: all 300ms ease-out;
  top: 45%;
  width: 0.7rem;
  z-index: 1;
}
.select select {
  background: transparent;
  border: 0;
  border-radius: 0;
  color: rgb(30, 30, 30);
  cursor: pointer;
  font-family: "DM Sans", sans-serif;
  font-size: 2rem;
  font-weight: 400;
  height: 100%;
  outline: transparent;
  padding: 1rem 2rem;
  transition: all 300ms ease-out;
  width: calc(100% + 2.5rem);
  z-index: 1;
}
.select select option {
  font-family: "DM Sans", sans-serif;
}
.select:hover, .select:focus-within {
  border-color: rgb(71, 79, 71);
}
.select:hover::after, .select:focus-within::after {
  top: 50%;
}

.file-button {
  cursor: pointer;
  display: inline-block;
  height: 3.6rem;
  margin: 0 !important;
  outline: none;
  position: relative;
  width: 26rem;
}
.file-button input {
  margin: 0;
  min-width: 26rem;
  opacity: 0;
}
.file-button span {
  align-items: center;
  background-color: rgb(30, 30, 30);
  border: 0.2rem solid rgb(30, 30, 30);
  color: rgb(250, 250, 250);
  display: flex;
  font-size: 1.6rem;
  font-weight: 400;
  height: 100%;
  justify-content: center;
  left: 0;
  line-height: 1.2;
  padding: 0.5em 0.9em;
  position: absolute;
  text-align: center;
  top: 0;
  transition: all 300ms ease-out;
  width: 100%;
}
.file-button span:hover {
  background-color: rgb(250, 250, 250);
  color: rgb(30, 30, 30);
}
.file-button:focus-within span, .file-button:focus span {
  background-color: rgb(250, 250, 250);
  color: rgb(30, 30, 30);
}

.maf-upldr .img-op span {
  font-size: 1.4rem;
}

.spinner {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  width: 10.2rem;
}
.spinner label {
  color: rgb(30, 30, 30);
  display: inline-block;
  flex: 0 0 auto;
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 1.4;
  text-align: left;
  width: 100%;
}
.spinner input[type=number]::-webkit-inner-spin-button,
.spinner input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.spinner input[type=number] {
  -moz-appearance: textfield;
  -webkit-appearance: textfield;
          appearance: textfield;
}
.spinner input {
  border: 0.1rem solid rgb(30, 30, 30);
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  border-right: 0;
  color: rgb(30, 30, 30);
  display: inline-block;
  flex: 0 0 auto;
  font-family: "DM Sans", sans-serif;
  font-size: 2.4rem;
  font-style: normal;
  height: 5.4rem;
  line-height: 1.65;
  margin: 0;
  padding: 2rem;
  text-align: center;
  width: 7.4rem;
}
.spinner input:focus {
  outline: 0;
}
.spinner .quantity-nav {
  display: inline-block;
  flex: 0 0 auto;
  position: relative;
  height: 5.4rem;
  width: 2.7rem;
}
.spinner .quantity-button {
  align-items: center;
  border: 0.1rem solid rgb(30, 30, 30);
  color: rgb(30, 30, 30);
  cursor: pointer;
  display: flex;
  font-size: 2rem;
  font-family: "DM Sans", sans-serif;
  height: 2.7rem;
  justify-content: center;
  outline: none;
  position: relative;
  text-align: center;
  transition: all 300ms ease-out;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  width: 2.7rem;
}
.spinner .quantity-button.quantity-up {
  height: 2.6rem;
  border-bottom: 0;
}
.spinner .quantity-button.quantity-up:before, .spinner .quantity-button.quantity-up:after {
  background-color: rgb(30, 30, 30);
  content: "";
  display: inline-block;
  height: 0.2rem;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  transition: all 300ms ease-out;
  width: 60%;
}
.spinner .quantity-button.quantity-up:after {
  transform: translate(-50%, -50%) rotate(90deg);
}
.spinner .quantity-button.quantity-down {
  height: 2.8rem;
}
.spinner .quantity-button.quantity-down:before {
  background-color: rgb(30, 30, 30);
  content: "";
  display: inline-block;
  height: 0.2rem;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 60%;
}
.spinner .quantity-button:hover, .spinner .quantity-button:focus {
  background-color: rgb(30, 30, 30);
}
.spinner .quantity-button:hover::before, .spinner .quantity-button:hover::after, .spinner .quantity-button:focus::before, .spinner .quantity-button:focus::after {
  background-color: rgb(250, 250, 250);
}

.spinner-2 {
  align-items: center;
  display: inline-flex;
  flex-direction: row;
  width: auto;
}
.spinner-2 label {
  display: inline-block;
  flex: 0 0 auto;
  width: 100%;
}
.spinner-2 input[type=number]::-webkit-inner-spin-button,
.spinner-2 input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.spinner-2 input[type=number] {
  -moz-appearance: textfield;
  -webkit-appearance: textfield;
          appearance: textfield;
}
.spinner-2 input {
  align-items: center;
  border: 0.1rem solid rgb(30, 30, 30);
  border-radius: 0.8rem;
  color: rgb(30, 30, 30);
  display: inline-flex;
  flex: 0 0 auto;
  font-family: "DM Sans", sans-serif;
  font-size: 1.6rem;
  font-weight: 700;
  font-style: normal;
  height: 2.7rem;
  justify-content: center;
  line-height: 1;
  margin: 0 1rem;
  padding: 0.4rem;
  text-align: center;
  width: 2.7rem;
}
.spinner-2 input:focus {
  outline: 0;
}
.spinner-2 .quantity-button {
  cursor: pointer;
  display: inline-block;
  font-family: "DM Sans", sans-serif;
  height: 2rem;
  justify-content: center;
  outline: none;
  position: relative;
  text-align: center;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  width: 2rem;
}
.spinner-2 .quantity-button > div {
  transition: all 300ms ease-out;
}
.spinner-2 .quantity-button > div:hover {
  background-color: rgb(30, 30, 30);
}
.spinner-2.plus-minus .quantity-button {
  background-color: rgb(30, 30, 30);
  border: 0.2rem solid rgb(30, 30, 30);
  border-radius: 50%;
}
.spinner-2.plus-minus .quantity-button.quantity-up:before, .spinner-2.plus-minus .quantity-button.quantity-up:after {
  background-color: white;
  content: "";
  display: inline-block;
  height: 0.2rem;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  transition: all 300ms ease-out;
  width: 55%;
}
.spinner-2.plus-minus .quantity-button.quantity-up:after {
  transform: translate(-50%, -50%) rotate(90deg);
}
.spinner-2.plus-minus .quantity-button.quantity-down:before {
  background-color: white;
  content: "";
  display: inline-block;
  height: 0.2rem;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  transition: all 300ms ease-out;
  width: 55%;
}
.spinner-2.plus-minus .quantity-button:hover, .spinner-2.plus-minus .quantity-button:focus {
  background-color: transparent;
}
.spinner-2.plus-minus .quantity-button:hover:before, .spinner-2.plus-minus .quantity-button:hover:after, .spinner-2.plus-minus .quantity-button:focus:before, .spinner-2.plus-minus .quantity-button:focus:after {
  background-color: rgb(30, 30, 30);
}
.spinner-2.carets input {
  height: 2.7rem;
  margin: 0 0.3rem;
  width: 4rem;
}
.spinner-2.carets .quantity-button.quantity-up::before {
  border-top: 0.3rem solid rgb(30, 30, 30);
  border-right: 0.3rem solid rgb(30, 30, 30);
  content: "";
  display: inline-block;
  height: 50%;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-60%, -50%) rotate(45deg);
  transform-origin: center;
  transition: border-color 300ms ease-out;
  width: 50%;
}
.spinner-2.carets .quantity-button.quantity-down::before {
  border-top: 0.3rem solid rgb(30, 30, 30);
  border-left: 0.3rem solid rgb(30, 30, 30);
  content: "";
  display: inline-block;
  height: 50%;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-40%, -50%) rotate(-45deg);
  transform-origin: center;
  transition: border-color 300ms ease-out;
  width: 50%;
}
.spinner-2.carets .quantity-button:hover::before, .spinner-2.carets .quantity-button:focus::before {
  border-color: rgb(30, 30, 30);
}

.maf-form {
  align-items: center;
  display: flex;
  justify-content: center;
  position: relative;
  width: 100%;
}
.maf-form form, .maf-form .form {
  align-items: flex-start;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  margin: 0 -1rem;
  width: calc(100% + 2rem);
}
.maf-form form > p, .maf-form .form > p {
  padding: 0 1rem;
}
.maf-form form.has-cols, .maf-form .form.has-cols {
  justify-content: center;
}
.maf-form form .column, .maf-form .form .column {
  padding: 0 0 5rem 0;
}
.maf-form form .column.half, .maf-form .form .column.half {
  align-items: flex-start;
  text-align: left;
}
.maf-form form .maf-input, .maf-form .form .maf-input {
  display: flex;
  flex: 0 0 100%;
  flex-direction: column;
  justify-content: flex-start;
  margin-bottom: 1rem;
  padding: 0 1rem;
  position: relative;
  text-align: left;
}
.maf-form form .maf-input input, .maf-form form .maf-input textarea, .maf-form .form .maf-input input, .maf-form .form .maf-input textarea {
  margin-bottom: 0.3em;
}
.maf-form form .maf-input input.short, .maf-form form .maf-input textarea.short, .maf-form .form .maf-input input.short, .maf-form .form .maf-input textarea.short {
  max-width: 35rem;
}
.maf-form form .maf-input textarea, .maf-form .form .maf-input textarea {
  min-height: 18rem;
}
.maf-form form .maf-input i, .maf-form .form .maf-input i {
  color: rgb(250, 250, 250);
  display: none;
  position: absolute;
  right: 0.8rem;
  top: 0.8rem;
}
@media only screen and (min-width: 768px) {
  .maf-form form .maf-input.half, .maf-form .form .maf-input.half {
    flex-basis: 50%;
  }
}
.maf-form form .maf-input.centre, .maf-form form .maf-input.center, .maf-form .form .maf-input.centre, .maf-form .form .maf-input.center {
  align-items: center;
  text-align: center;
}
.maf-form form .maf-input.multiple input, .maf-form .form .maf-input.multiple input {
  margin-bottom: 1.5rem;
}
.maf-form form .maf-input.multiple input:last-child, .maf-form .form .maf-input.multiple input:last-child {
  margin-bottom: 0;
}
.maf-form form .maf-input.tinybox .mcSimple, .maf-form .form .maf-input.tinybox .mcSimple {
  border: 0.2rem solid rgb(30, 30, 30);
  min-height: 30rem;
  padding: 0.6rem 1rem;
  transition: border-color 300ms ease-out;
}
.maf-form form .maf-input.tinybox .mcSimple:focus-within, .maf-form .form .maf-input.tinybox .mcSimple:focus-within {
  border-color: rgb(30, 30, 30);
}
.maf-form form .maf-input.actions, .maf-form .form .maf-input.actions {
  align-items: center;
  display: flex;
  flex-direction: row;
  text-align: center;
}
.maf-form form .maf-input.actions.center, .maf-form .form .maf-input.actions.center {
  justify-content: center;
}
.maf-form form .maf-input.actions input, .maf-form form .maf-input.actions button, .maf-form .form .maf-input.actions input, .maf-form .form .maf-input.actions button {
  flex: 1 1 auto;
}
.maf-form form .maf-input.actions input.least, .maf-form form .maf-input.actions button.least, .maf-form .form .maf-input.actions input.least, .maf-form .form .maf-input.actions button.least {
  flex: 2 2 auto;
}
.maf-form form .maf-input.actions input + input, .maf-form .form .maf-input.actions input + input {
  margin-left: 2rem;
}
.maf-form form .maf-input > label, .maf-form .form .maf-input > label {
  font-size: 1.6rem;
  font-weight: 400;
  margin: 1rem 0 0 0;
  padding: 0;
  width: 100%;
}
.maf-form form > .maf-msg, .maf-form .form > .maf-msg {
  margin: 0 1rem 2rem 1rem;
}
.maf-form form .cap-con, .maf-form .form .cap-con {
  flex-wrap: wrap;
}
.maf-form form .cap-con p, .maf-form .form .cap-con p {
  font-size: 1.5rem;
}
.maf-form form .cap-con p a, .maf-form .form .cap-con p a {
  text-decoration: none;
  opacity: 0.7;
}
.maf-form form .cap-con p a:hover, .maf-form form .cap-con p a:focus, .maf-form .form .cap-con p a:hover, .maf-form .form .cap-con p a:focus {
  opacity: 1;
}
.maf-form .a-f-resp {
  opacity: 0;
  position: absolute;
  transition: opacity 600ms ease-out 600ms;
  width: 100%;
}
.maf-form .a-f-resp.show {
  opacity: 1;
  position: static;
}

canvas.bg {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

@keyframes button-anim {
  0% {
    height: 0;
    opacity: 0;
    width: 0;
  }
  20% {
    opacity: 1;
  }
  70% {
    opacity: 1;
  }
  99% {
    height: 60rem;
    opacity: 0;
    width: 60rem;
  }
  100% {
    height: 0;
    opacity: 0;
    width: 0;
  }
}
@keyframes button-arrow {
  0% {
    right: 1rem;
  }
  50% {
    right: 0;
  }
  100% {
    right: 1rem;
  }
}
.button, .button:visited {
  background: none;
  background-color: rgb(115, 141, 114);
  border: 0.2rem solid rgb(115, 141, 114);
  border-radius: 0;
  color: rgb(250, 250, 250);
  cursor: pointer;
  display: inline-block;
  font-family: "DM Sans", sans-serif;
  font-size: 1.8rem;
  font-style: normal;
  font-weight: 700;
  letter-spacing: inherit;
  line-height: 1;
  min-width: 24rem;
  opacity: 1;
  outline: transparent;
  overflow: hidden;
  padding: 1.5rem 2.5rem;
  position: relative;
  text-align: center;
  text-decoration: none;
  text-transform: none;
  transition: all 300ms ease-out;
  width: auto;
  z-index: 1;
}
.button::before, .button:visited::before {
  background-color: rgb(71, 79, 71);
  height: 100%;
  position: absolute;
  right: 0;
  top: 0;
  transition: right 300ms ease-out, width 300ms ease-out 300ms;
  width: 5.5rem;
  z-index: -1;
}
.button::after, .button:visited::after {
  border-top: 0.8rem solid transparent;
  border-bottom: 0.8rem solid transparent;
  border-left: 1rem solid currentColor;
  height: 0;
  position: absolute;
  right: 2rem;
  top: 50%;
  transform: translateY(-50%) scale(1);
  transition: transform 300ms ease-out;
  width: 0;
  z-index: -1;
}
.button i, .button:visited i {
  margin-right: 0.5em;
}
.button:hover, .button:focus, .button:active, .button.active, .button:visited:hover, .button:visited:focus, .button:visited:active, .button:visited.active {
  background-color: transparent;
  color: rgb(115, 141, 114);
  opacity: 1;
  text-decoration: none;
}
.button.less, .button:visited.less {
  opacity: 0.5;
}
.button.least, .button:visited.least {
  background-color: rgb(250, 250, 250);
  color: rgb(30, 30, 30);
}
.button.least::before, .button:visited.least::before {
  background-color: rgb(30, 30, 30);
  left: auto;
  right: 0;
}
.button.least:hover, .button.least:focus, .button:visited.least:hover, .button:visited.least:focus {
  color: rgb(250, 250, 250);
}
.button.light, .button:visited.light {
  background-color: rgb(250, 250, 250);
  color: rgba(48, 49, 46, 0.7);
}
.button.light:hover, .button.light:focus, .button.light.active, .button:visited.light:hover, .button:visited.light:focus, .button:visited.light.active {
  background-color: rgba(48, 49, 46, 0.9);
}
.button.white, .button:visited.white {
  background-color: transparent;
  border: 0.2rem solid white;
  color: white;
}
.button.white:hover, .button.white:focus, .button.white.active, .button:visited.white:hover, .button:visited.white:focus, .button:visited.white.active {
  background-color: white;
  color: rgb(115, 141, 114);
}

.button + .button {
  margin-left: 1.6rem;
}

.footer-button {
  background-color: rgb(30, 30, 30);
  border-radius: 1.5rem;
  color: rgb(250, 250, 250);
  display: inline-block;
  font-size: 2rem;
  font-weight: 900;
  padding: 1.8rem 2rem;
  text-transform: uppercase;
}
.footer-button:hover, .footer-button:focus {
  background-color: rgb(60, 60, 60);
  text-decoration: none;
}

div.close, button.close, .button.close {
  background-color: transparent;
  border: 0;
  color: rgb(250, 250, 250);
  cursor: pointer;
  display: inline-block;
  font-family: "DM Sans", sans-serif;
  font-size: 1.4rem;
  font-weight: 400;
  height: 4rem;
  position: relative;
  text-transform: uppercase;
  width: 4rem;
}
div.close::before, div.close::after, button.close::before, button.close::after, .button.close::before, .button.close::after {
  background-color: currentColor;
  color: inherit;
  content: "";
  display: inline-block;
  height: 0.4rem;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
  transform-origin: center;
  transition: transform 350ms ease;
  width: 75%;
}
div.close::after, button.close::after, .button.close::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}
div.close:hover::before, div.close:hover::after, div.close:focus::before, div.close:focus::after, button.close:hover::before, button.close:hover::after, button.close:focus::before, button.close:focus::after, .button.close:hover::before, .button.close:hover::after, .button.close:focus::before, .button.close:focus::after {
  transform: translate(-50%, -50%) rotate(0deg);
}

.al-centre {
  text-align: center;
}
.al-centre img {
  display: inline-block;
}

.al-left {
  text-align: left;
}
.al-left img {
  display: inline-block;
}

.al-right {
  text-align: right;
}
.al-right img {
  display: inline-block;
}

div.al-right, img.al-right {
  margin-left: auto;
  margin-right: 0;
}
div.al-left, img.al-left {
  margin-left: 0;
  margin-right: auto;
}
div.al-centre, img.al-centre {
  margin-left: auto;
  margin-right: auto;
}

.screen-reader-only {
  border: 0;
  clip: rect(0 0 0 0);
  height: 0.1rem;
  margin: -0.1rem;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 0.1rem;
}

.no-pad {
  padding: 0 !important;
}

.is-link, .is-home-link, .nav-filter-link {
  cursor: pointer;
}

.is-toggle-group .toggle-click {
  background: none;
  color: rgb(30, 30, 30);
  cursor: pointer;
  display: inline-block;
  font-size: 2.2rem;
  font-weight: 700;
  outline: none;
  padding: 0.5rem 1rem 0.5rem 0;
  position: relative;
  transition: all 300ms ease-out;
  text-align: left;
  width: 100%;
}
.is-toggle-group .toggle-click i {
  color: rgb(30, 30, 30);
  display: inline-block;
  height: 3rem;
  font-size: 3.6rem;
  opacity: 1;
  position: relative;
  transition: color 300ms ease-out;
  vertical-align: middle;
  width: 3rem;
}
.is-toggle-group .toggle-click i::before {
  display: inline-block;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -60%) rotate(0deg);
  transform-origin: center;
  transition: transform 400ms ease-out;
}
.is-toggle-group .toggle-click.active, .is-toggle-group .toggle-click:hover {
  color: rgb(30, 30, 30);
}
.is-toggle-group .toggle-click.active i, .is-toggle-group .toggle-click:hover i {
  color: rgb(30, 30, 30);
}
.is-toggle-group .toggle-click.active i::before {
  transition: transform 300ms ease-out;
  transform: translate(-50%, -50%) rotate(180deg);
}
.is-toggle-group .toggle-group {
  display: none;
}
.is-toggle-group .toggle-group.is-on a:first-child {
  margin-top: 0.5rem;
}

.meet-your-maker {
  font-weight: 700;
  text-decoration: none !important;
  transition: all 1000ms ease-out !important;
  transform: translateZ(0);
}
.meet-your-maker:hover {
  filter: blur(0.5rem);
  text-decoration: none !important;
}

.hover-underline {
  position: relative;
  text-decoration: none !important;
}
.hover-underline::after {
  background-color: currentColor;
  bottom: -0.2rem;
  color: inherit;
  content: "";
  height: 0.1rem;
  left: 0;
  position: absolute;
  transition: width 300ms ease-out;
  width: 0;
}
.hover-underline:hover::after, .hover-underline:focus::after {
  width: 100%;
}
.hover-underline.hu-center::after {
  left: 50%;
  transform: translate(-50%);
}

.maf-msg {
  align-items: center;
  display: inline-flex;
  font-size: 2.2rem;
  font-weight: 600;
  justify-content: center;
  margin-bottom: 1rem;
  padding: 1rem 2rem;
  text-align: center;
  width: 100%;
}
.maf-msg i, .maf-msg span {
  vertical-align: middle;
}
.maf-msg i {
  margin: 0.5rem 0.5rem 0 0;
}
.maf-msg.error-msg {
  background-color: hsl(0, 45%, 75%);
  border: 0.1rem solid hsl(0, 45%, 51%);
  color: hsl(0, 45%, 51%);
}
.maf-msg.success-msg {
  background-color: hsl(120, 42%, 75%);
  border: 0.1rem solid hsl(120, 42%, 49%);
  color: hsl(120, 42%, 49%);
}
.maf-msg.input-msg {
  background-color: transparent;
  border: 0;
  font-size: 1.4rem;
  justify-content: flex-end;
  text-align: right;
  margin: 0;
  padding: 0;
}

#http-error {
  background-color: transparent;
  min-height: 100vh;
}
#http-error.e404 {
  padding-top: 10rem;
}
#http-error.e404 h1 {
  color: rgb(30, 30, 30);
  margin: 0 0 3rem 0;
}
#http-error.e404 p {
  color: rgb(30, 30, 30);
  font-size: 2.5rem;
  margin: 0 auto 3rem auto;
  width: 60%;
}
#http-error.e404 #error {
  margin: 0 auto;
  text-align: center;
  width: 80%;
}
#http-error.e404 .error-icon {
  display: block;
  margin: 0 auto;
  width: 25%;
}
#http-error.e404 .error-icon .a {
  fill: rgb(30, 30, 30);
}
#http-error.e404 .button {
  font-size: 2.4rem;
  margin: 0 auto;
  width: auto;
}

pre {
  background-color: rgb(250, 250, 220);
  border: 1px solid rgb(22, 22, 20);
  border-radius: 0.5rem;
  color: rgb(22, 22, 22);
  font-size: 1.6rem;
  margin: 1em;
  overflow: scroll;
  padding: 1em;
  text-align: left;
  width: calc(100% - 3em);
  z-index: 9999999;
}
pre.dispell {
  bottom: 0;
  left: 0.5em;
  max-height: 50vh;
  position: fixed;
}

#next-month-clear {
  background-color: rgb(71, 79, 71);
  border: 0.3rem solid rgb(30, 30, 30);
  border-radius: 0.8rem;
  color: rgb(30, 30, 30);
  bottom: 0.5em;
  display: flex;
  flex-direction: column;
  font-size: 1.6rem;
  left: 0.5em;
  padding: 0.5rem;
  position: fixed;
  text-align: center;
  z-index: 99999;
}
#next-month-clear span {
  display: inline-block;
  flex: 0 0 auto;
  margin-bottom: 0.3rem;
}

#cookie-settings {
  background: none;
  background-color: transparent;
  border: 0;
  border-radius: 0.5rem 0 0 0;
  bottom: 0;
  cursor: pointer;
  opacity: 0.5;
  padding: 0.3rem;
  position: fixed;
  right: 0;
  transition: all 300ms ease-out;
  z-index: 999;
}
#cookie-settings:hover, #cookie-settings:focus {
  background-color: rgba(255, 255, 255, 0.8);
  opacity: 1;
}

.grecaptcha-badge {
  visibility: hidden;
}

.is-map {
  display: inline-block;
  height: 100%;
  position: relative;
  width: 100%;
}
.is-map .maf-map-pos {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
.is-map .maf-map-pos .maf-obj-map {
  height: 100%;
  width: 100%;
}
.is-map .maf-map-pos .maf-obj-map button {
  min-height: 0;
  transform: none;
}
.is-map .maf-map-pos .maf-obj-map button::before, .is-map .maf-map-pos .maf-obj-map button::after {
  display: none;
}
.is-map .maf-map-pos .maf-obj-map a[title="Click to see this area on Google Maps"] {
  display: none !important;
}
.is-map .maf-map-pos .maf-obj-map .gmnoprint a, .is-map .maf-map-pos .maf-obj-map .gmnoprint span, .is-map .maf-map-pos .maf-obj-map .gm-style-cc {
  display: none;
}
.is-map .maf-map-pos .maf-obj-map .gm-style button.gm-fullscreen-control {
  background: rgba(14, 118, 188, 0.2) !important;
}
.is-map .maf-map-pos .maf-obj-map .gmnoprint div {
  background: none !important;
}
.is-map .maf-map-pos .maf-obj-map .gmnoprint div.gm-svpc {
  display: none;
}
.is-map .maf-map-pos .maf-obj-map .gmnoprint div button[title="Zoom in"], .is-map .maf-map-pos .maf-obj-map .gmnoprint div button[title="Zoom out"] {
  background: rgba(14, 118, 188, 0.2) !important;
  border: 0.1rem solid rgb(66, 66, 66);
  border-radius: 0.5rem;
}
.is-map .maf-map-pos .maf-obj-map .gmnoprint div button[title="Zoom in"] div, .is-map .maf-map-pos .maf-obj-map .gmnoprint div button[title="Zoom out"] div {
  left: 0.6rem !important;
  top: 0.5rem !important;
}

.social-icons {
  --icon-colour: rgb(250, 250, 250);
  --icon-size: 5.4rem;
  --text-colour: rgb(30, 30, 30);
  --text-size: 3rem;
  align-items: center;
  color: var(--text-colour);
  display: inline-flex;
  font-size: var(--text-size);
  justify-content: center;
  line-height: 0;
  margin: 0;
  width: auto;
}
.social-icons a {
  color: var(--text-colour);
  display: inline-block;
  line-height: 0;
  margin-right: 0.5em;
  opacity: 1;
  outline: none;
  padding: 0;
}
.social-icons a:last-child {
  margin-right: 0;
}
.social-icons a i {
  aspect-ratio: 1/1;
  background-color: var(--icon-colour);
  border: 0.2rem solid var(--icon-colour);
  border-radius: var(--icon-size);
  color: inherit;
  cursor: pointer;
  display: inline-block;
  line-height: 0;
  position: relative;
  transition: all 300ms ease-out;
  width: var(--icon-size);
}
.social-icons a i::before {
  color: inherit;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
}
.social-icons a:hover i, .social-icons a:focus i {
  background-color: transparent;
  color: var(--icon-colour);
}
.social-icons.corporate-colours a i.tvw-facebook {
  background-color: #3b5999;
  border-color: #3b5999;
}
.social-icons.corporate-colours a i.tvw-twitter {
  background-color: #55acee;
  border-color: #55acee;
}
.social-icons.corporate-colours a i.tvw-flickr {
  background-color: #0063dc;
  border-color: #0063dc;
}
.social-icons.corporate-colours a i.tvw-linkedin {
  background-color: #0077b5;
  border-color: #0077b5;
}
.social-icons.corporate-colours a i.tvw-instagram {
  background-color: #d6249f;
  background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285AEB 90%);
  border-color: #d6249f;
}
.social-icons.corporate-colours a i.tvw-vimeo {
  background-color: #1ab7ea;
  border-color: #1ab7ea;
}
.social-icons.corporate-colours a i.tvw-youtube {
  background-color: #cd201f;
  border-color: #cd201f;
}
.social-icons.corporate-colours a i.tvw-gplus {
  background-color: #dd4b39;
  border-color: #dd4b39;
}
.social-icons.name-view {
  align-content: flex-start;
  align-items: flex-start;
  flex-direction: column;
  width: 100%;
}
.social-icons.name-view > a {
  align-content: center;
  align-items: center;
  display: flex;
  line-height: 1;
  width: auto;
}
.social-icons.name-view > a i {
  background-color: transparent;
  border: 0;
  border-radius: 0;
  flex: 0 0 auto;
  height: 2.5rem;
  width: 2.5rem;
}
.social-icons.name-view > a span {
  display: inline-block;
  flex: 1 1 auto;
  font-size: 1.6rem;
  padding-left: 0.5rem;
  transition: transform 300ms ease-out;
}
.social-icons.name-view > a:hover {
  color: white;
}
.social-icons.name-view > a:hover i {
  color: rgb(71, 79, 71);
}
.social-icons.name-view > a:hover span {
  transform: translateX(0.5rem);
}
.social-icons.open-style a i {
  background-color: transparent;
  border: 0;
  color: var(--text-colour);
  height: auto;
  line-height: 1;
  width: auto;
}
.social-icons.open-style a i::before {
  left: auto;
  position: static;
  top: auto;
  transform: none;
}
.social-icons.open-style a:hover, .social-icons.open-style a:focus {
  opacity: 0.7;
}

.insta-feed {
  width: 100%;
}
.insta-feed .eapps-instagram-feed-posts-grid-load-more-container {
  display: none !important;
  text-align: center;
}
.insta-feed .eapps-instagram-feed-posts-grid-load-more-container .eapps-instagram-feed-posts-grid-load-more {
  background: none !important;
  border: 0.2rem solid white;
  border-radius: 3rem !important;
  display: inline-block;
  height: auto !important;
  margin-top: 15rem;
  padding: 1.5rem 3rem;
  transition: all 300ms ease-out;
  width: auto !important;
}
.insta-feed .eapps-instagram-feed-posts-grid-load-more-container .eapps-instagram-feed-posts-grid-load-more .eapps-instagram-feed-posts-grid-load-more-text {
  font-family: "Montserrat", sans-serif !important;
  font-size: 1.4rem !important;
  font-weight: 700;
  line-height: 1 !important;
  text-transform: uppercase;
  transition: all 300ms ease-out;
}
.insta-feed .eapps-instagram-feed-posts-grid-load-more-container .eapps-instagram-feed-posts-grid-load-more:hover {
  background-color: white !important;
}
.insta-feed .eapps-instagram-feed-posts-grid-load-more-container .eapps-instagram-feed-posts-grid-load-more:hover .eapps-instagram-feed-posts-grid-load-more-text {
  color: rgb(38, 38, 38) !important;
}

div#floater-menu {
  height: 100vh;
  margin: 0;
  position: absolute;
  right: 0;
  top: 0;
  transform: translate(30rem, 0);
  transition: transform 300ms ease-out;
}
div#floater-menu.out {
  transform: translate(0, 0);
}

div.maf-share-this {
  cursor: pointer;
  display: inline-block;
  font-size: 2rem;
  position: fixed;
  right: 0;
  top: 60%;
  transition: right 300ms ease-out;
  width: auto;
  z-index: 420;
}
div.maf-share-this i {
  font-size: 2rem;
}
div.maf-share-this .maf-share-btn {
  align-items: center;
  background-color: rgb(60, 60, 60);
  border: 0.1rem solid rgb(60, 60, 60);
  color: rgb(250, 250, 250);
  display: flex;
  flex-direction: column;
  height: 5.2rem;
  justify-content: center;
  padding: 0.5rem;
  position: relative;
  transition: background-color 300ms ease-out;
  width: 5.2rem;
}
div.maf-share-this .maf-share-btn i {
  margin: auto 0;
}
div.maf-share-this .maf-share-btn span {
  font-size: 0.8rem;
  font-weight: 500;
  text-transform: uppercase;
}
div.maf-share-this .maf-share-acts {
  background-color: rgb(255, 255, 255);
  border: 0.1rem solid rgb(60, 60, 60);
  display: flex;
  left: 100%;
  position: absolute;
  transition: all 300ms ease-out;
  top: 0;
}
div.maf-share-this .maf-share-acts a {
  color: rgb(60, 60, 60);
  display: inline-block;
  height: 5rem;
  outline: none;
  padding: 0.5rem;
  position: relative;
  width: 5rem;
}
div.maf-share-this .maf-share-acts a i {
  font-size: 2rem;
  left: 50%;
  position: absolute;
  transform: translate(-50%, -50%);
  top: 50%;
}
div.maf-share-this .maf-share-acts a:hover, div.maf-share-this .maf-share-acts a:focus {
  background-color: rgb(60, 60, 60);
  opacity: 1;
}
div.maf-share-this .maf-share-acts a:hover i, div.maf-share-this .maf-share-acts a:focus i {
  color: white;
}
div.maf-share-this:hover, div.maf-share-this:focus-within {
  right: 20rem;
}
div.maf-share-this.floater {
  height: 4rem;
  position: absolute;
  right: 0;
  top: calc(50vh - 2rem);
  width: 4rem;
}
div.maf-share-this.floater i {
  font-size: 2rem;
}
@media only screen and (min-width: 576px) {
  div.maf-share-this.floater {
    height: 7rem;
    top: calc(50vh - 3.5rem);
    width: 7rem;
  }
  div.maf-share-this.floater i {
    font-size: 3rem;
  }
}
div.maf-share-this.floater .maf-share-btn {
  height: 100%;
  width: 100%;
}
div.maf-share-this.floater .maf-share-acts {
  bottom: 100%;
  left: auto;
  right: 0;
  top: auto;
}

div#email-floater {
  background-color: rgb(250, 250, 250);
  border: 0.1rem solid rgb(30, 30, 30);
  border-radius: 1.2rem 0 0 1.2rem;
  font-size: 1.4rem;
  height: auto;
  line-height: 0;
  overflow: hidden;
  padding: 0;
  position: absolute;
  right: 0;
  text-align: left;
  top: 40vh;
  width: 4rem;
}
@media only screen and (min-width: 160rem) {
  div#email-floater {
    height: auto;
    padding: 2rem 1.5rem;
    width: 14.2rem;
  }
}
div#email-floater img {
  display: none;
  margin-bottom: 1.2rem;
  width: 5rem;
}
@media only screen and (min-width: 160rem) {
  div#email-floater img {
    display: inline-block;
  }
}
div#email-floater button, div#email-floater a {
  background-color: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  color: rgb(30, 30, 30);
  display: inline-block;
  font-size: 2.4rem;
  font-weight: 700;
  height: 4rem;
  justify-content: flex-start;
  line-height: 1;
  margin: 0;
  padding: 0;
  position: relative;
  text-align: left;
  text-decoration: none;
  width: 4rem;
}
div#email-floater button span, div#email-floater a span {
  transition: all 300ms ease-out;
}
div#email-floater button:hover, div#email-floater a:hover {
  color: rgb(60, 60, 60);
}
div#email-floater button i, div#email-floater a i {
  font-size: 2rem;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
}
div#email-floater button span, div#email-floater a span {
  display: none;
}
@media only screen and (min-width: 160rem) {
  div#email-floater button, div#email-floater a {
    height: auto;
    margin: 0 0 1.2rem 0;
    width: auto;
  }
  div#email-floater button i, div#email-floater a i {
    display: none;
  }
  div#email-floater button span, div#email-floater a span {
    display: inline;
  }
}
div#email-floater button {
  cursor: pointer;
  font-family: "Quicksand", sans-serif;
  font-size: 2.6rem;
  font-weight: 400;
  outline-color: transparent;
  text-transform: uppercase;
}
div#email-floater a {
  margin-bottom: 0;
}
div#email-floater hr {
  border-color: rgb(250, 250, 250);
  border-width: 0.1rem;
  display: inline-block;
  margin: 0;
}
@media only screen and (min-width: 160rem) {
  div#email-floater hr {
    display: none;
  }
}
div#email-floater.no-show {
  display: none;
}

#conco-f {
  align-items: center;
  background-color: rgba(255, 255, 255, 0.9);
  border-radius: 0;
  border-left: 0.1rem solid rgb(30, 30, 30);
  bottom: 0;
  color: rgb(30, 30, 30);
  display: flex;
  height: 100vh;
  flex-direction: row;
  float: none;
  margin: 0;
  max-width: 93rem;
  overflow-y: auto;
  padding: 4rem 1.5rem 2.5rem 2.5rem;
  position: fixed;
  right: -110%;
  transform: rotateZ(0);
  transition: all 500ms ease;
  width: 100%;
  z-index: 999;
}
#conco-f #close {
  background-color: transparent;
  border: 0.1rem solid rgb(30, 30, 30);
  border-radius: 50%;
  box-shadow: none;
  cursor: pointer;
  height: 4rem;
  left: 2.5rem;
  outline: transparent;
  position: absolute;
  top: 2rem;
  transition: transform 300ms ease-out;
  width: 4rem;
}
#conco-f #close::before, #conco-f #close::after {
  background-color: rgb(30, 30, 30);
  content: "";
  display: inline-block;
  height: 0.2rem;
  left: 50%;
  position: absolute;
  top: 50%;
  transform-origin: center;
  transform: translate(-50%, -50%) rotate(45deg);
  width: 70%;
}
#conco-f #close::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}
#conco-f #close:hover {
  transform: rotate(90deg);
}
#conco-f h2 {
  color: rgb(48, 70, 107);
  font-family: "DM Sans", sans-serif;
  font-size: 3.6rem;
  font-weight: 700;
  margin-bottom: 0.3rem;
  text-transform: none;
}
#conco-f p {
  font-size: 3rem;
  font-weight: 700;
  margin-bottom: 2rem;
}
#conco-f p a {
  color: rgb(30, 30, 30);
}
#conco-f .details {
  display: none;
  flex: 0 0 40%;
}
#conco-f .details a {
  color: rgb(30, 30, 30);
  text-decoration: none;
}
#conco-f .details .company-name {
  font-weight: 500;
}
@media only screen and (min-width: 576px) {
  #conco-f .details {
    order: 1;
    padding-right: 1rem;
  }
}
#conco-f .form {
  flex: 0 0 100%;
  height: 100%;
  margin: 0;
  padding: 3rem 0;
}
#conco-f .form .maf-form {
  max-width: 55rem;
  margin: 0 auto 0 0;
  padding: 0 0 3rem 0;
  width: 100%;
}
#conco-f .form .maf-form input, #conco-f .form .maf-form textarea {
  background-color: rgb(250, 250, 250);
  border-color: rgb(160, 160, 160);
  color: rgb(160, 160, 160);
}
#conco-f .form .maf-form input::-moz-placeholder, #conco-f .form .maf-form textarea::-moz-placeholder {
  color: rgb(160, 160, 160);
}
#conco-f .form .maf-form input::placeholder, #conco-f .form .maf-form textarea::placeholder {
  color: rgb(160, 160, 160);
}
#conco-f .form .maf-form textarea {
  height: 15rem;
}
#conco-f .form .maf-form .g-recaptcha {
  float: left;
  margin-right: 1rem;
}
#conco-f .form .maf-form .button {
  width: 100%;
}
#conco-f .form .maf-form i {
  font-size: 2rem;
}
#conco-f.open {
  right: 0;
}

#fader {
  background-color: rgb(30, 30, 30);
  height: 0;
  left: 0;
  opacity: 0;
  position: fixed;
  top: 0;
  transition: opacity 300ms linear;
  width: 100vw;
  z-index: 0;
}
#fader.open {
  height: 100vh;
  opacity: 0.1;
  z-index: 997;
}

.flickity-slideshow, .flickity-slideshow-edit {
  width: 100%;
}
.flickity-slideshow .ss-slide, .flickity-slideshow-edit .ss-slide {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
.flickity-slideshow .ss-slide > div, .flickity-slideshow-edit .ss-slide > div {
  width: 100%;
}
.flickity-slideshow .flickity-page-dots, .flickity-slideshow-edit .flickity-page-dots {
  bottom: 1rem;
  display: block;
  margin: 0;
  padding: 0;
}
.flickity-slideshow .flickity-page-dots .dot, .flickity-slideshow-edit .flickity-page-dots .dot {
  background: transparent;
  border: 0.3rem solid rgb(115, 141, 114);
  border-radius: 50%;
  height: 2rem;
  margin: 0 0.8rem 0 0;
  opacity: 1;
  padding: 0;
  position: relative;
  width: 2rem;
}
.flickity-slideshow .flickity-page-dots .dot::before, .flickity-slideshow-edit .flickity-page-dots .dot::before {
  background-color: rgb(115, 141, 114);
  border-radius: 50%;
  border: 0;
  content: "";
  display: inline-block;
  height: 100%;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  transition: all 300ms ease-out;
  width: 100%;
}
.flickity-slideshow .flickity-page-dots .dot.is-selected::before, .flickity-slideshow-edit .flickity-page-dots .dot.is-selected::before {
  height: 0;
  width: 0;
}
.flickity-slideshow .flickity-button, .flickity-slideshow-edit .flickity-button {
  background-color: transparent;
  display: inline-block;
}
.flickity-slideshow .flickity-button.flickity-prev-next-button, .flickity-slideshow-edit .flickity-button.flickity-prev-next-button {
  background-color: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  height: 5rem;
  margin: 0;
  opacity: 1;
  padding: 0;
  top: -5rem;
  transform-origin: center;
  transform: none;
  transition: all 300ms ease-out;
  width: 5rem;
  z-index: 2;
}
.flickity-slideshow .flickity-button.flickity-prev-next-button .flickity-button-icon, .flickity-slideshow-edit .flickity-button.flickity-prev-next-button .flickity-button-icon {
  display: none;
}
.flickity-slideshow .flickity-button.flickity-prev-next-button .flickity-button-icon path, .flickity-slideshow-edit .flickity-button.flickity-prev-next-button .flickity-button-icon path {
  fill: rgb(30, 30, 30);
}
.flickity-slideshow .flickity-button.flickity-prev-next-button::after, .flickity-slideshow-edit .flickity-button.flickity-prev-next-button::after {
  content: "";
  height: 0;
  left: 50%;
  position: absolute;
  top: 50%;
  transition: border-color 300ms ease-out;
  width: 0;
}
.flickity-slideshow .flickity-button.flickity-prev-next-button:hover, .flickity-slideshow .flickity-button.flickity-prev-next-button:focus, .flickity-slideshow-edit .flickity-button.flickity-prev-next-button:hover, .flickity-slideshow-edit .flickity-button.flickity-prev-next-button:focus {
  opacity: 0.5;
}
.flickity-slideshow .flickity-button.flickity-prev-next-button.previous, .flickity-slideshow-edit .flickity-button.flickity-prev-next-button.previous {
  left: 0;
}
.flickity-slideshow .flickity-button.flickity-prev-next-button.previous::after, .flickity-slideshow-edit .flickity-button.flickity-prev-next-button.previous::after {
  border-top: 2.2rem solid transparent;
  border-right: 4rem solid rgb(30, 30, 30);
  border-bottom: 2.2rem solid transparent;
  transform: translate(-50%, -50%);
}
.flickity-slideshow .flickity-button.flickity-prev-next-button.next, .flickity-slideshow-edit .flickity-button.flickity-prev-next-button.next {
  left: 5rem;
}
.flickity-slideshow .flickity-button.flickity-prev-next-button.next::after, .flickity-slideshow-edit .flickity-button.flickity-prev-next-button.next::after {
  border-top: 2.2rem solid transparent;
  border-bottom: 2.2rem solid transparent;
  border-left: 4rem solid rgb(30, 30, 30);
  transform: translate(-50%, -50%);
}
.flickity-slideshow .flickity-button.flickity-prev-next-button:disabled, .flickity-slideshow-edit .flickity-button.flickity-prev-next-button:disabled {
  opacity: 0.2;
}

.flickity-slideshow-edit {
  display: inline-block;
}
.flickity-slideshow-edit .ss-slide {
  height: 100%;
  min-height: 20rem;
}

.blog-nav {
  width: 100%;
}
.blog-nav > hr {
  margin-top: 0;
}
.blog-nav .blog-aside-content {
  display: inline-block;
  margin-bottom: 1rem;
  width: 100%;
}
.blog-nav .blog-aside-content a {
  color: rgb(60, 60, 60);
  display: inline-block;
  line-height: 1.2;
  text-decoration: none;
  width: 100%;
}
.blog-nav .blog-aside-content a .blog-current-item {
  background: none;
  border-bottom: 0.1rem solid rgb(60, 60, 60);
  border-radius: 0;
  box-shadow: none;
  color: rgb(30, 30, 30);
  font-size: 1.8rem;
  font-weight: 400;
  justify-content: flex-start;
  line-height: 1.3;
  margin: 0 0 0 0;
  outline: transparent;
  overflow: hidden;
  margin-top: 1rem;
  padding: 0 0 1.5rem 0;
  position: relative;
  text-align: left;
  text-transform: capitalize;
  transition: all 300ms ease-out;
  width: 100%;
  z-index: 1;
}
.blog-nav .blog-aside-content a .blog-current-item::before, .blog-nav .blog-aside-content a .blog-current-item::after {
  content: "";
  background-color: rgb(60, 60, 60);
  display: none;
  height: 100%;
  position: absolute;
  right: 100%;
  top: 0;
  transform: skewX(-18deg);
  transform-origin: top right;
  transition: all 300ms ease-out;
  width: 120%;
  z-index: -1;
}
.blog-nav .blog-aside-content a .blog-current-item:hover, .blog-nav .blog-aside-content a .blog-current-item.active {
  border-bottom: 0.1rem solid black;
}
.blog-nav .blog-aside-content a .blog-current-item:hover::before, .blog-nav .blog-aside-content a .blog-current-item:hover::after, .blog-nav .blog-aside-content a .blog-current-item.active::before, .blog-nav .blog-aside-content a .blog-current-item.active::after {
  right: 0;
}
.blog-nav .blog-aside-content a .blog-current-item p {
  line-height: 1.2;
  margin: 0;
}
.blog-nav .blog-aside-content a .blog-current-item time {
  display: inline-block;
  font-size: 1.6rem;
  margin-top: 0.5rem;
  opacity: 0.8;
}
.blog-nav .blog-aside-content.nav-filter button {
  background: none;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  color: rgb(30, 30, 30);
  font-size: 1.8rem;
  font-weight: 400;
  justify-content: flex-start;
  line-height: 1.2;
  margin: 0 0 1rem 0;
  outline: transparent;
  overflow: hidden;
  padding: 0.5rem 0.3rem;
  text-align: left;
  text-transform: capitalize;
  transition: all 300ms ease-out;
  width: 100%;
  z-index: 1;
}
.blog-nav .blog-aside-content.nav-filter button::before {
  content: "";
  background-color: rgb(60, 60, 60);
  display: inline-block;
  height: 100%;
  position: absolute;
  right: 100%;
  top: 0;
  transform: skewX(-18deg);
  transform-origin: top right;
  transition: all 300ms ease-out;
  width: 120%;
  z-index: -1;
}
.blog-nav .blog-aside-content.nav-filter button:hover, .blog-nav .blog-aside-content.nav-filter button.active {
  color: rgb(250, 250, 250);
  padding-left: 0.8rem;
}
.blog-nav .blog-aside-content.nav-filter button:hover::before, .blog-nav .blog-aside-content.nav-filter button.active::before {
  right: 0;
}
.blog-nav .blog-aside-content.is-toggle-group .toggle-group.is-on {
  border-top: none;
}
.blog-nav .blog-aside-content.is-toggle-group .toggle-group a {
  color: rgb(30, 30, 30);
  font-size: 1.6rem;
  font-weight: 400;
  padding: 0.5rem 1rem;
}
.blog-nav .blog-aside-content.is-toggle-group .toggle-group a:hover {
  background-color: rgb(30, 30, 30);
  color: rgb(250, 250, 250);
}
.blog-nav .blog-aside-content:first-child .nav-title {
  margin-top: 0;
}
.blog-nav .blog-aside-content .cardbox {
  justify-content: center;
}
@media only screen and (min-width: 1024px) {
  .blog-nav .blog-aside-content .cardbox {
    justify-content: flex-end;
  }
}
.blog-nav .blog-aside-content .cardbox article.card {
  width: 100%;
}
@media only screen and (min-width: 576px) {
  .blog-nav .blog-aside-content .cardbox article.card {
    width: 50%;
  }
}
@media only screen and (min-width: 1024px) {
  .blog-nav .blog-aside-content .cardbox article.card {
    width: 100%;
  }
}
.blog-nav .blog-aside-content .cardbox article.card .portal-item .portal-content .desc {
  min-height: 0;
}
.blog-nav .blog-aside-content .cardbox article.card .portal-item .portal-content .button {
  margin-top: 0;
}

aside.pg-nav {
  flex-direction: row;
  padding-bottom: 1rem;
  width: 100%;
}
aside.pg-nav .button {
  margin: 0;
  min-height: 0;
  min-width: 8rem;
}
aside.pg-nav .button.prev {
  margin-right: auto;
  margin-left: 1.5rem;
}
aside.pg-nav .button.next {
  margin-right: 1.5rem;
  margin-left: auto;
}

.pagination {
  align-self: center;
  border: 0.1rem solid rgb(30, 30, 30);
  border-right: 0;
  border-left: 0;
  color: rgb(30, 30, 30);
  font-size: 1.8rem;
  font-weight: 600;
  margin: 5rem 0 2rem 0;
  padding: 2rem 0;
  text-align: center;
  width: 100%;
}
.pagination a, .pagination span {
  align-items: center;
  color: rgb(30, 30, 30);
  display: inline-flex;
  justify-content: center;
  line-height: 1;
  margin: 0.3rem;
  min-height: 3.4rem;
  min-width: 3.4rem;
  padding: 0.5rem;
}
.pagination a {
  opacity: 1;
  text-decoration: none;
}
.pagination a:hover, .pagination a:focus {
  background-color: rgb(30, 30, 30);
  box-shadow: -0.3rem 0.3rem 0.5rem rgba(0, 0, 0, 0.1);
  color: rgb(250, 250, 250);
}
.pagination a.previous {
  margin-right: 0.2rem;
}
.pagination a.next {
  margin-left: 0.2rem;
}
.pagination span.active {
  background-color: rgb(30, 30, 30);
  box-shadow: -0.3rem 0.3rem 0.5rem rgba(0, 0, 0, 0.1);
  color: rgb(250, 250, 250);
}

.is-simple-gallery {
  margin: 0 -1.5rem;
  max-width: none;
  width: calc( 100% + 3rem );
  align-items: stretch;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
}
.is-simple-gallery figure {
  display: inline-block;
  flex: 0 0 50%;
  margin: 0;
  max-width: 33rem;
  padding: 1.5rem;
  position: relative;
}
@media only screen and (min-width: 576px) {
  .is-simple-gallery figure {
    flex: 0 0 33.333%;
  }
}
@media only screen and (min-width: 768px) {
  .is-simple-gallery figure {
    flex: 0 0 25%;
  }
}
@media only screen and (min-width: 960px) {
  .is-simple-gallery figure {
    flex: 0 0 16.666%;
  }
}
.is-simple-gallery figure > a {
  display: block;
  height: 100%;
  opacity: 1;
  overflow: hidden;
  position: relative;
  transition: all 600ms ease-out;
  width: 100%;
}
.is-simple-gallery figure > a::after {
  content: "";
  display: table;
  padding-bottom: 66.666%;
}
.is-simple-gallery figure > a > div, .is-simple-gallery figure > a > img {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  display: inline-block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  transform: scale(1);
  transform-origin: center;
  transition: all 600ms ease-out;
  width: 100%;
}
.is-simple-gallery figure > a > img {
  -o-object-fit: cover;
     object-fit: cover;
}
.is-simple-gallery figure > a figcaption {
  background-color: rgba(0, 0, 0, 0.5);
  border-radius: 0 1.5rem 0 0;
  bottom: 0;
  color: rgb(250, 250, 250);
  display: none;
  font-family: "DM Sans", sans-serif;
  font-size: 1.2rem;
  left: 0;
  padding: 0.5rem 0.8rem;
  position: absolute;
}
.is-simple-gallery figure > a:hover > div, .is-simple-gallery figure > a:hover > img {
  transform: scale(1.05);
}

.tn-gallery {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}
.tn-gallery figure {
  margin: 0;
  padding: 0.5rem;
  position: relative;
  width: 25%;
}
.tn-gallery figure a {
  cursor: pointer;
  display: inline-block;
}
.tn-gallery figure img {
  aspect-ratio: 1/1;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.tn-gallery figure figcaption {
  display: none;
}
.tn-gallery figure.leader {
  padding: 0 0 0.5rem 0;
  width: 100%;
}
.tn-gallery figure.leader img {
  width: 100%;
}
.tn-gallery figure.leader .gal-ui {
  align-items: center;
  background-color: rgba(0, 0, 0, 0.7);
  color: white;
  display: flex;
  font-size: 3rem;
  font-weight: 600;
  bottom: 0.5rem;
  padding: 0.2rem 0.9rem;
  position: absolute;
  right: 0;
}
.tn-gallery figure.leader .gal-ui i {
  font-size: 0.9em;
  font-weight: 400;
  margin: 0 0.3em;
}
.tn-gallery.image-browser figure.leader a {
  cursor: default;
}
.tn-gallery.tn-slider .flickity-tn {
  padding: 0 7.5%;
  width: 100%;
}
.tn-gallery.tn-slider .flickity-tn .flickity-prev-next-button {
  background-color: rgb(115, 141, 114);
  border-radius: 0;
  height: calc(100% - 1rem);
  transition: all 300ms ease-out;
  width: calc(7.5% - 0.5rem);
}
.tn-gallery.tn-slider .flickity-tn .flickity-prev-next-button::after {
  aspect-ratio: 1/1.071;
  background-image: url("/images/Layout/tn-arrow.png");
  background-size: 100% 100%;
  content: "";
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  transition: all 300ms ease-out;
  width: 62%;
}
.tn-gallery.tn-slider .flickity-tn .flickity-prev-next-button svg {
  display: none;
}
.tn-gallery.tn-slider .flickity-tn .flickity-prev-next-button.previous {
  left: 0;
}
.tn-gallery.tn-slider .flickity-tn .flickity-prev-next-button.previous:hover::after, .tn-gallery.tn-slider .flickity-tn .flickity-prev-next-button.previous:focus::after {
  left: 45%;
}
.tn-gallery.tn-slider .flickity-tn .flickity-prev-next-button.next {
  right: 0;
}
.tn-gallery.tn-slider .flickity-tn .flickity-prev-next-button.next::after {
  transform: translate(-50%, -50%) rotate(180deg);
}
.tn-gallery.tn-slider .flickity-tn .flickity-prev-next-button.next:hover::after, .tn-gallery.tn-slider .flickity-tn .flickity-prev-next-button.next:focus::after {
  left: 55%;
}

.full-gallery.masobox .card, .full-gallery.masobox .maso-sizer {
  width: 100%;
}
@media only screen and (min-width: 768px) {
  .full-gallery.masobox .card, .full-gallery.masobox .maso-sizer {
    width: 50%;
  }
}
@media only screen and (min-width: 1152px) {
  .full-gallery.masobox .card, .full-gallery.masobox .maso-sizer {
    width: 33.333%;
  }
}
.full-gallery.masobox .card {
  padding: 0.75rem 1.5rem;
}
@media only screen and (min-width: 576px) {
  .full-gallery.masobox .card {
    padding: 1.5rem;
  }
}
.full-gallery.masobox .card > a {
  display: inline-block;
  width: 100%;
}
.full-gallery.masobox .card > a img {
  width: 100%;
}
.full-gallery.flexbox {
  align-items: flex-start;
  display: flex;
  flex-wrap: wrap;
  margin: 0 -1.5rem;
  width: calc(100% + 3rem);
}
.full-gallery.flexbox .card {
  flex: 0 0 auto;
  padding: 0.75rem 1.5rem;
  width: 100%;
}
@media only screen and (min-width: 576px) {
  .full-gallery.flexbox .card {
    padding: 1.5rem;
  }
}
@media only screen and (min-width: 768px) {
  .full-gallery.flexbox .card {
    width: 50%;
  }
}
@media only screen and (min-width: 1152px) {
  .full-gallery.flexbox .card {
    width: 33.333%;
  }
}
.full-gallery.flexbox .card > a {
  background-color: rgb(30, 30, 30);
  color: rgb(250, 250, 250);
  display: inline-block;
  position: relative;
  width: 100%;
}
.full-gallery.flexbox .card > a::after {
  content: "";
  display: table;
  padding-bottom: 56.25%;
}
.full-gallery.flexbox .card > a > img {
  height: 100%;
  left: 0;
  margin: 0 auto;
  -o-object-fit: cover;
     object-fit: cover;
  opacity: 1;
  position: absolute;
  top: 0;
  transform: scale(1);
  transform-origin: center;
  transition: all 600ms ease-out;
  width: 100%;
}
.full-gallery.flexbox .card > a .htext {
  align-items: center;
  display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: center;
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  transition: all 600ms ease-out;
  width: 100%;
}
.full-gallery.flexbox .card > a .htext .title {
  font-size: 2.4rem;
  margin-bottom: 1em;
}
.full-gallery.flexbox .card > a .htext .button {
  color: inherit;
  font-weight: 700;
}
.full-gallery.flexbox .card > a:hover > img, .full-gallery.flexbox .card > a:focus > img {
  opacity: 0.35;
}
.full-gallery.flexbox .card > a:hover .htext, .full-gallery.flexbox .card > a:focus .htext {
  opacity: 1;
}
.full-gallery.flexbox .card > a:hover .htext .button::after, .full-gallery.flexbox .card > a:focus .htext .button::after {
  bottom: 0;
}

.fb-gallery {
  align-items: flex-start;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  margin: 0 -0.5rem;
  width: calc(100% + 1rem);
}
.fb-gallery > a {
  display: inline-block;
  flex: 0 0 auto;
  opacity: 1;
  padding: 0.5rem;
  width: 100%;
}
.fb-gallery > a:nth-child(n+6) {
  display: none;
}
.fb-gallery > a > div {
  overflow: hidden;
  position: relative;
  width: 100%;
}
.fb-gallery > a > div img.maf-tn {
  width: 100%;
  transition: all 300ms ease-out;
}
.fb-gallery > a > div:hover img.maf-tn {
  transform: scale(1.05);
}
.fb-gallery > a > div .deets {
  align-items: center;
  background-color: rgba(51, 56, 76, 0.5);
  bottom: 0;
  color: white;
  display: flex;
  left: 0;
  padding: 0.5rem 1.5rem;
  position: absolute;
  width: 100%;
}
.fb-gallery > a > div .deets > span {
  display: inline-block;
  padding: 0.5rem;
}
.fb-gallery > a > div .deets > span i {
  font-size: 2.4rem;
  margin-left: 1rem;
  vertical-align: middle;
}
.fb-gallery > a > div .deets > span:last-child {
  margin-left: auto;
}
.fb-gallery > a:not(:first-child) {
  width: 25%;
}
.fb-gallery > a:not(:first-child) > div::after {
  content: "";
  display: table;
  padding-bottom: 75%;
}
.fb-gallery > a:not(:first-child) > div img.maf-tn {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
.fb-gallery > a.video-item > div .maf-vp {
  display: inline-block;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 25%;
}
.fb-gallery > a.video-item > div .maf-vp img {
  filter: drop-shadow(0 0 7px black);
  transition: all 300ms ease-out;
}
.fb-gallery > a.video-item:hover > div .maf-vp img {
  transform: scale(1.3);
}
.fb-gallery > a:first-child {
  padding-top: 0;
}

.maf-gallery-embed.loaded {
  align-items: flex-start;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 1.2em -1rem 2.4em -1rem;
  width: calc(100% + 2rem);
}
.maf-gallery-embed.loaded > div {
  display: inline-block;
  flex: 0 0 auto;
  line-height: 0;
  padding: 1rem;
  width: 50%;
}
@media only screen and (min-width: 576px) {
  .maf-gallery-embed.loaded > div {
    width: 33.333%;
  }
}
.maf-gallery-embed.loaded > div a {
  display: inline-block;
  line-height: 0;
  opacity: 1;
  overflow: hidden;
  text-decoration: none;
  width: 100%;
}
.maf-gallery-embed.loaded > div a img {
  display: inline-block;
  transform: scale(1);
  transform-origin: center;
  transition: transform 300ms ease-out;
  width: 100%;
}
.maf-gallery-embed.loaded > div a:hover img {
  transform: scale(1.05);
}

div.text-box {
  border: 0.1rem solid rgb(242, 242, 242);
  padding: 6rem 3rem;
  margin: 2.3rem 0;
  width: 100%;
}

div.image-box {
  align-items: flex-start;
  color: rgb(30, 30, 30);
  display: inline-flex;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  flex-direction: column;
  margin: 0 auto 3.5rem auto;
  padding: 0;
  position: relative;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  div.image-box {
    flex-direction: row;
  }
}
div.image-box h1, div.image-box .h1-style, div.image-box h2, div.image-box .h2-style, div.image-box h3, div.image-box .h3-style, div.image-box h4, div.image-box .h4-style, div.image-box h5, div.image-box .h5-style, div.image-box h6.h6-style {
  padding-bottom: 0.3em;
}
div.image-box h1::after, div.image-box .h1-style::after, div.image-box h2::after, div.image-box .h2-style::after, div.image-box h3::after, div.image-box .h3-style::after, div.image-box h4::after, div.image-box .h4-style::after, div.image-box h5::after, div.image-box .h5-style::after, div.image-box h6.h6-style::after {
  display: none;
}
div.image-box p, div.image-box li {
  max-width: none !important;
}
div.image-box li::before {
  color: rgb(30, 30, 30);
}
div.image-box > div {
  display: inline-block;
  flex: 0 0 auto;
  width: 100%;
}
div.image-box > div > *:last-child {
  margin-bottom: 0;
}
div.image-box .image {
  margin-bottom: 1.2em;
}
@media only screen and (min-width: 768px) {
  div.image-box .image {
    margin-bottom: 0;
    padding-right: 1.5rem;
    width: 50%;
  }
}
div.image-box .image img, div.image-box .image svg {
  display: block;
  margin: 0;
  max-width: 100%;
  width: 100%;
}
div.image-box .image figure {
  margin: 0;
}
div.image-box .image figure figcaption {
  display: none;
}
div.image-box .image p.has-img {
  margin-right: 0;
  margin-left: 0;
  width: 100%;
}
div.image-box .image p.has-img img {
  margin: 0 !important;
}
div.image-box .text {
  display: flex;
  flex-direction: column;
  text-align: left;
}
@media only screen and (min-width: 768px) {
  div.image-box .text {
    padding-left: 1.5rem;
    width: 50%;
  }
}
div.image-box.center {
  margin-right: auto;
  margin-left: auto;
}

div.content-callout {
  color: rgb(250, 250, 250);
  display: inline-flex;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  flex-direction: column;
  padding: 3rem;
}
@media only screen and (min-width: 576px) {
  div.content-callout {
    flex-direction: row;
  }
}
div.content-callout > div {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  padding-top: 1rem;
}
div.content-callout .button {
  margin: 0 0 1rem 0;
  min-height: 6rem;
  min-width: 0;
  width: 100%;
}
div.content-callout p {
  font-family: "Quicksand", sans-serif;
  font-size: 3.6rem;
  line-height: 1.1;
}

@keyframes loader {
  0% {
    width: 0;
    left: 0;
  }
  50% {
    width: 100%;
    left: 0;
  }
  100% {
    width: 100%;
    left: 100%;
  }
}
.maf-embed {
  display: inline-block;
  margin-bottom: 1.2em;
  transform: all 300ms ease-out;
}
.maf-embed.loading {
  background-color: rgba(0, 0, 0, 0.1);
  border: 0.1rem solid rgba(0, 0, 0, 0.3);
  border-radius: 0.5rem;
  color: rgba(0, 0, 0, 0.7);
  overflow: hidden;
  padding: 1rem 2rem;
  position: relative;
}
.maf-embed.loading::after {
  animation: loader 2s ease-in-out 1s infinite;
  background-color: rgba(0, 0, 0, 0.1);
  content: "";
  display: inline-block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 0;
}

.is-video {
  position: relative;
  padding-bottom: 56.25%;
  width: 100%;
  height: 100%;
}
.is-video iframe {
  border: 0;
  position: absolute;
  top: 0;
  left: 0;
  max-width: 100vw;
  width: 100%;
  height: 100%;
}

video.tvw-player {
  background-color: transparent;
  background-size: cover;
  height: auto;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  opacity: 0;
  position: absolute;
  top: 50%;
  transform: translateX(-50%) translateY(-50%);
  transition: opacity 600ms ease-out;
  width: auto;
  z-index: 0;
}
video.tvw-player.ready {
  opacity: 1;
}

.vid-pop {
  background-color: black;
  display: inline-block;
  overflow: hidden;
  opacity: 1;
  position: relative;
  width: 100%;
  z-index: 1;
}
.vid-pop::before {
  content: "";
  display: table;
  padding-bottom: 56%;
}
.vid-pop::after {
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  transform: rotateZ(0);
  transition: all 300ms ease-out;
  width: 100%;
  z-index: 1;
}
.vid-pop > img {
  height: 100%;
  left: 0;
  -o-object-fit: cover;
     object-fit: cover;
  opacity: 1;
  position: absolute;
  top: 0;
  transition: all 300ms ease-out;
  transform-origin: center;
  transform: scale(1.02);
  width: 100%;
  z-index: 0;
}
.vid-pop div.vidbut {
  background-image: url("/images/Layout/ui/vid-play.png");
  background-color: transparent;
  background-size: cover;
  border: 0;
  border-radius: 50%;
  cursor: pointer;
  display: inline-block;
  height: auto;
  left: 50%;
  padding: 0;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  transition: all 300ms ease-out;
  width: 20%;
}
.vid-pop div.vidbut::after {
  content: "";
  display: table;
  padding-bottom: 100%;
}
.vid-pop:hover {
  opacity: 1;
}
.vid-pop:hover::after {
  box-shadow: 0 0 3rem rgba(0, 0, 0, 0.7) inset;
}
@media only screen and (min-width: 960px) {
  .vid-pop:hover::after {
    box-shadow: 0 0 6rem rgba(0, 0, 0, 0.7) inset;
  }
}
@media only screen and (min-width: 1280px) {
  .vid-pop:hover::after {
    box-shadow: 0 0 9rem rgba(0, 0, 0, 0.7) inset;
  }
}
.vid-pop:hover > img {
  transform: scale(1);
}
.vid-pop:hover button {
  box-shadow: 0 0 0.8rem rgba(255, 255, 255, 0.3);
}

div.cardbox {
  --grid-spacing: 1.5rem;
  --grid-column-count: 4;
  --grid-item--max-width: calc(100%/var(--grid-column-count));
  --max-width: 53.3333333333rem;
  /*display: grid;
   grid-template-columns: repeat(auto-fit, minmax(Max(30rem,var(--grid-item--max-width)), 1fr));*/
  align-items: stretch;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  margin: 0 calc(var(--grid-spacing) * -1);
  width: calc(100% + var(--grid-spacing) * 2);
}
div.cardbox .maf-content {
  padding: 0;
}
div.cardbox article.card {
  --card-colour: rgb(30, 30, 30);
  --card-accent: rgb(30, 30, 30);
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: var(--grid-spacing);
  z-index: 1;
  width: 100%;
}
@media only screen and (min-width: 576px) {
  div.cardbox article.card {
    width: 50%;
  }
}
@media only screen and (min-width: 768px) {
  div.cardbox article.card {
    width: 33.333%;
  }
}
@media only screen and (min-width: 960px) {
  div.cardbox article.card {
    width: 25%;
  }
}
div.cardbox article.card .portal-item {
  background-color: rgb(250, 250, 250);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  border-radius: 0.5rem;
  box-shadow: -0.4rem 0.6rem 1.6rem 0 rgba(0, 0, 0, 0.26);
  color: rgb(30, 30, 30);
  cursor: pointer;
  display: inline-block;
  font-size: 1.8rem;
  font-style: normal;
  font-weight: 400;
  height: 100%;
  opacity: 1;
  outline: none;
  overflow: hidden;
  position: relative;
  text-align: left;
  text-decoration: none;
  transform-origin: center;
  transition: all 300ms ease-out;
  width: 100%;
}
div.cardbox article.card .portal-item .portal-content {
  align-content: center;
  align-items: center;
  display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: center;
  position: relative;
  transition: all 300ms ease-out;
  width: 100%;
}
div.cardbox article.card .portal-item .portal-content .card-cats {
  border-radius: 0 0 0.5rem 0;
  background-color: rgb(30, 30, 30);
  display: inline-block;
  left: 0;
  line-height: 0.9;
  padding: 0.8rem 0.9rem 0.6rem 0.9rem;
  position: absolute;
  top: 0;
  text-transform: uppercase;
  width: auto;
  z-index: 1;
}
div.cardbox article.card .portal-item .portal-content .tn {
  background-color: var(--card-accent);
  display: inline-block;
  flex: 0 0 auto;
  overflow: hidden;
  position: relative;
  transition: all 300ms ease-out;
  width: 100%;
}
div.cardbox article.card .portal-item .portal-content .tn .tn-img {
  height: 100%;
  margin: 0 auto;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  transform-origin: center;
  transition: all 300ms ease-out;
  width: 100%;
  z-index: 0;
}
div.cardbox article.card .portal-item .portal-content .tn .tn-img.lazy {
  opacity: 0;
}
div.cardbox article.card .portal-item .portal-content .tn .tn-img.lazy.loaded {
  opacity: 1;
}
div.cardbox article.card .portal-item .portal-content .tn .hover-text {
  align-items: center;
  color: white;
  display: flex;
  flex-direction: column;
  font-size: 1.9rem;
  height: 100%;
  justify-content: center;
  left: 0;
  opacity: 0;
  overflow: hidden;
  padding: 10%;
  position: absolute;
  transition: all 300ms ease-out;
  transform: scale(1.2);
  top: 0;
  width: 100%;
}
div.cardbox article.card .portal-item .portal-content .tn .hover-text hr {
  margin: 5% 0;
  max-width: 10rem;
}
div.cardbox article.card .portal-item .portal-content .tn.square, div.cardbox article.card .portal-item .portal-content .tn.fourthree, div.cardbox article.card .portal-item .portal-content .tn.custom, div.cardbox article.card .portal-item .portal-content .tn.show-all {
  aspect-ratio: 1/1;
}
div.cardbox article.card .portal-item .portal-content .tn.square .tn-img, div.cardbox article.card .portal-item .portal-content .tn.fourthree .tn-img, div.cardbox article.card .portal-item .portal-content .tn.custom .tn-img, div.cardbox article.card .portal-item .portal-content .tn.show-all .tn-img {
  left: 0;
  position: absolute;
  top: 0;
  transform: scale(1);
  min-width: 100%;
}
div.cardbox article.card .portal-item .portal-content .tn.fourthree {
  aspect-ratio: 1/0.75;
}
div.cardbox article.card .portal-item .portal-content .tn.static {
  background-color: transparent;
  overflow: visible;
  position: static;
}
div.cardbox article.card .portal-item .portal-content .tn.static .tn-img {
  height: auto;
  max-width: 100%;
  -o-object-fit: scale-down;
     object-fit: scale-down;
  transform-origin: center bottom;
  width: auto;
}
div.cardbox article.card .portal-item .portal-content .tn.static.no-img {
  min-height: 10rem;
}
div.cardbox article.card .portal-item .portal-content .tn.show-all {
  aspect-ratio: 1/0.5;
}
div.cardbox article.card .portal-item .portal-content .tn.show-all .tn-img {
  -o-object-fit: contain;
     object-fit: contain;
}
div.cardbox article.card .portal-item .portal-content .tn.custom {
  aspect-ratio: 1/0.666;
}
div.cardbox article.card .portal-item .portal-content .info {
  align-items: center;
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  justify-content: flex-start;
  transition: all 300ms ease-out;
  width: 100%;
  /*&::before {
    background-image: url('/images/Layout/card-bg.png');
    background-size: 100% 100%;
    content: '';
    height: 100%;
    left: 0;
    min-width: 39rem;
    position: absolute;
    top: 0;
    width: 80%;
  }*/
}
div.cardbox article.card .portal-item .portal-content .categories {
  background-color: rgb(30, 30, 30);
  font-weight: bold;
  padding-top: 0.5rem;
}
div.cardbox article.card .portal-item .portal-content .title {
  display: inline-block;
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 1.1;
  margin: 0;
  padding: 2rem 5% 0.3em 5%;
  position: relative;
  text-transform: none;
  width: 100%;
}
div.cardbox article.card .portal-item .portal-content .title .price {
  color: rgb(30, 30, 30);
  margin-left: auto;
}
div.cardbox article.card .portal-item .portal-content .title::after {
  display: none;
}
div.cardbox article.card .portal-item .portal-content .desc {
  display: inline-block;
  line-height: 1.4;
  margin: 0 0 auto 0;
  padding: 0 5% 2rem 5%;
  width: 100%;
}
div.cardbox article.card .portal-item .portal-content .desc p {
  margin-bottom: 0;
}
div.cardbox article.card .portal-item .portal-content .attr {
  display: flex;
  justify-content: flex-start;
  position: relative;
  padding: 0 2.8rem 0.9em 2.8rem;
  width: 100%;
}
div.cardbox article.card .portal-item .portal-content .attr > span {
  display: inline-block;
  line-height: 1;
  width: auto;
}
div.cardbox article.card .portal-item .portal-content .date {
  display: inline-block;
  font-size: 1.6rem;
  font-weight: 700;
  margin: 0;
  padding: 0.5rem 0;
  width: 100%;
}
div.cardbox article.card .portal-item .portal-content .date time {
  display: inline-block;
  position: relative;
}
div.cardbox article.card .portal-item .portal-content .date time .dl {
  font-weight: 400;
}
div.cardbox article.card .portal-item .portal-content .price {
  font-size: 1.5em;
  padding: 0 5% 2rem 5%;
  width: 100%;
}
div.cardbox article.card .portal-item .portal-content .card-button {
  background-color: var(--card-colour);
  border-radius: 0;
  margin-top: auto;
  min-width: 0;
  width: 100%;
}
div.cardbox article.card .portal-item .itin-actions {
  align-items: center;
  display: flex;
  justify-content: center;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
div.cardbox article.card .portal-item .itin-actions form button {
  background-color: transparent;
  border: 0;
  color: inherit;
  cursor: pointer;
  font-family: "Quicksand", sans-serif;
  font-size: 1.6rem;
  outline: transparent;
  padding: 0.5rem 1rem;
  transition: all 300ms ease-out;
}
div.cardbox article.card .portal-item .itin-actions form button i {
  font-size: 1.8rem;
  margin-right: 0.5rem;
}
div.cardbox article.card .portal-item .itin-actions form button:hover {
  text-shadow: 0.2rem 0.2rem 0 rgb(30, 30, 30);
}
div.cardbox article.card .portal-item .itin-actions > div, div.cardbox article.card .portal-item .itin-actions > form {
  display: inline-block;
  flex: 0 0 auto;
  width: auto;
}
div.cardbox article.card .portal-item .itin-actions .fav-add {
  border: 0.3rem solid rgb(250, 250, 250);
  border-radius: 50%;
  height: 3rem;
  margin: 0.5rem;
  margin-right: auto;
  opacity: 0;
  padding: 0.5rem;
  position: relative;
  transition: opacity 300ms ease-out;
  width: 3rem;
}
div.cardbox article.card .portal-item .itin-actions .fav-add i {
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
}
div.cardbox article.card .portal-item.no-link {
  cursor: default;
}
div.cardbox article.card .portal-item.no-link .portal-content .info .card-button {
  display: none;
}
div.cardbox article.card .portal-item.edit .portal-content .info {
  position: static;
  transform: none;
}
div.cardbox article.card .portal-item:not(.no-link):hover, div.cardbox article.card .portal-item:not(.no-link):focus {
  box-shadow: 0 0 0.5rem black, 0 0 1.5rem rgb(115, 141, 114), 0 0 2.5rem rgb(115, 141, 114);
}
div.cardbox article.card .portal-item:not(.no-link):hover .portal-content .tn .tn-img, div.cardbox article.card .portal-item:not(.no-link):focus .portal-content .tn .tn-img {
  opacity: 0.9;
  transform: scale(1.1);
}
div.cardbox article.card .portal-item:not(.no-link):hover .portal-content .tn .tn-button, div.cardbox article.card .portal-item:not(.no-link):focus .portal-content .tn .tn-button {
  right: 0;
}
div.cardbox article.card .portal-item:not(.no-link):hover .portal-content .tn .hover-text, div.cardbox article.card .portal-item:not(.no-link):focus .portal-content .tn .hover-text {
  opacity: 1;
  transform: scale(1);
}
div.cardbox article.card .portal-item:not(.no-link):hover .portal-content .card-button::before, div.cardbox article.card .portal-item:not(.no-link):focus .portal-content .card-button::before {
  right: 5.5rem;
  transition: width 300ms ease-out, right 300ms ease-out 300ms;
  width: calc(100% - 5.5rem);
}
div.cardbox article.card .portal-item:not(.no-link):hover .portal-content .card-button::after, div.cardbox article.card .portal-item:not(.no-link):focus .portal-content .card-button::after {
  transform: translateY(-50%) scale(1.2);
}
div.cardbox article.card:hover, div.cardbox article.card:focus-within {
  z-index: 100;
}
div.cardbox article.card.added .portal-item .itin-actions .fav-add {
  opacity: 1;
}
div.cardbox article.card.maf-clr-1 .portal-item .portal-content .info .title {
  background-color: rgb(30, 30, 30);
}
div.cardbox article.card.sz-2 {
  width: 100%;
}
@media only screen and (min-width: 1024px) {
  div.cardbox article.card.sz-2 {
    width: 50%;
  }
}
div.cardbox article.card.sz-2 .portal-item .portal-content .tn.custom::after {
  padding-bottom: 52.9%;
}
div.cardbox .no-articles {
  font-size: 1.2em;
  padding: 0 var(--grid-spacing);
  width: 100%;
}
div.cardbox aside.ad-block {
  cursor: pointer;
  display: inline-block;
  flex: 0 0 auto;
  padding: 0 var(--grid-spacing);
  width: 100%;
}
div.cardbox .maf-msg {
  margin: 0 var(--grid-spacing) 3rem var(--grid-spacing);
  z-index: 1;
}

div.catbox {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  line-height: 0;
  margin: 0 -1.5rem;
  width: calc(100% + 3rem);
}
div.catbox article.card {
  display: inline-block;
  flex: 0 0 auto;
  padding: 3rem;
  text-align: center;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  div.catbox article.card {
    width: 50%;
  }
}
@media only screen and (min-width: 960px) {
  div.catbox article.card {
    padding: 1.5rem;
  }
}
@media only screen and (min-width: 1024px) {
  div.catbox article.card {
    width: 33.333%;
  }
}
div.catbox article.card .portal-item {
  background-color: transparent;
  color: rgb(30, 30, 30);
  display: inline-block;
  height: 100%;
  line-height: 0;
  max-width: 40rem;
  opacity: 1;
  outline: none;
  overflow: hidden;
  text-align: center;
  text-decoration: none;
  width: 100%;
}
div.catbox article.card .portal-item .portal-content {
  height: 100%;
  position: relative;
}
div.catbox article.card .portal-item .portal-content .tn {
  display: inline-block;
  overflow: hidden;
  position: relative;
  width: 100%;
}
div.catbox article.card .portal-item .portal-content .tn::after {
  content: "";
  display: table;
  padding-bottom: 100%;
}
div.catbox article.card .portal-item .portal-content .tn .tn-img {
  height: 100%;
  left: 0;
  margin: 0 auto;
  -o-object-fit: cover;
     object-fit: cover;
  opacity: 1;
  position: absolute;
  top: 0;
  transform: scale(1);
  transform-origin: center;
  transition: all 600ms ease-out;
  width: 100%;
}
div.catbox article.card .portal-item .portal-content .tn.no-img .tn-img {
  align-items: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
div.catbox article.card .portal-item .portal-content .info {
  align-items: flex-start;
  display: inline-flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden;
  padding: 1.5rem;
  transition: all 300ms ease-out;
  width: 100%;
}
div.catbox article.card .portal-item .portal-content .info .ico {
  display: flex;
  min-height: 7rem;
}
div.catbox article.card .portal-item .portal-content .info .ico .ico-img {
  display: inline-block;
  flex: 0 0 auto;
  margin: auto;
  transition: transform 300ms ease-out;
}
div.catbox article.card .portal-item .portal-content .info .title {
  display: inline-block;
  font-size: 3rem;
  font-weight: 400;
  line-height: 1.3;
  margin: 0;
  padding: 0 0 1rem 0;
  width: 100%;
}
div.catbox article.card .portal-item .portal-content .info .date {
  margin: auto 0 0 0;
}
div.catbox article.card .portal-item .portal-content .info .desc {
  align-items: center;
  color: rgb(250, 250, 250);
  display: none;
  justify-content: center;
  padding: 0.8rem 1rem;
  position: absolute;
  transition: top 300ms ease-out;
  width: 100%;
}
div.catbox article.card .portal-item .portal-content .info .desc > * {
  color: rgb(250, 250, 250);
  font-size: 1.4rem;
  max-width: 32.5rem;
  width: 100%;
}
div.catbox article.card .portal-item .portal-content .info .desc > *:last-child {
  margin-bottom: 0;
}
div.catbox article.card .portal-item .portal-content .info .card-button {
  color: rgb(250, 250, 250);
  margin: auto 0 0 0;
}
div.catbox article.card .portal-item:hover .portal-content .tn .tn-img, div.catbox article.card .portal-item:focus .portal-content .tn .tn-img {
  transform: scale(1.05);
}
div.catbox article.card .portal-item:hover .portal-content .info .card-button::after, div.catbox article.card .portal-item:focus .portal-content .info .card-button::after {
  bottom: 0;
}
div.catbox.cols-2 article.card {
  width: 100%;
}
@media only screen and (min-width: 1024px) {
  div.catbox.cols-2 article.card {
    width: 50%;
  }
  div.catbox.cols-2 article.card.maf-cs-2, div.catbox.cols-2 article.card.maf-cs-3, div.catbox.cols-2 article.card.maf-cs-4 {
    width: 100%;
  }
}
div.catbox.cols-3 {
  justify-content: center;
}
@media only screen and (min-width: 768px) {
  div.catbox.cols-3 {
    justify-content: space-between;
  }
}
div.catbox.cols-3 article.card {
  width: 100%;
}
@media only screen and (min-width: 768px) {
  div.catbox.cols-3 article.card {
    width: 50%;
  }
}
@media only screen and (min-width: 1152px) {
  div.catbox.cols-3 article.card {
    width: 33.333%;
  }
  div.catbox.cols-3 article.card.maf-cs-2 {
    width: 66.666%;
  }
  div.catbox.cols-3 article.card.maf-cs-3 {
    width: 100%;
  }
}
div.catbox.cols-4 article.card {
  width: 100%;
}
@media only screen and (min-width: 576px) {
  div.catbox.cols-4 article.card {
    width: 50%;
  }
}
@media only screen and (min-width: 1152px) {
  div.catbox.cols-4 article.card {
    width: 25%;
  }
  div.catbox.cols-4 article.card.maf-cs-2 {
    width: 50%;
  }
  div.catbox.cols-4 article.card.maf-cs-3 {
    width: 75%;
  }
  div.catbox.cols-4 article.card.maf-cs-4 {
    width: 100%;
  }
}

div.masobox {
  margin: 0 -1.5rem;
  width: calc(100% + 3rem);
}
div.masobox .card, div.masobox .maso-sizer {
  width: 100%;
}
@media only screen and (min-width: 576px) {
  div.masobox .card, div.masobox .maso-sizer {
    width: 50%;
  }
}
@media only screen and (min-width: 1024px) {
  div.masobox .card, div.masobox .maso-sizer {
    width: 33.333%;
  }
}
div.masobox article.card {
  float: left;
  line-height: 1;
  padding: 1.5rem;
  transition: none;
}
div.masobox article.card .portal-item {
  display: inline-block;
  opacity: 1;
  overflow: hidden;
  width: 100%;
}
div.masobox article.card .portal-item .portal-content {
  display: inline-block;
  position: relative;
  width: 100%;
}
div.masobox article.card .portal-item .portal-content .card-cats {
  color: rgb(250, 250, 250);
}
div.masobox article.card .portal-item .portal-content .tn {
  display: inline-block;
  width: 100%;
}
div.masobox article.card .portal-item .portal-content .tn .tn-img {
  height: auto;
  line-height: 1;
  width: 100%;
}
div.masobox article.card .portal-item .portal-content .info {
  align-items: center;
  background-color: rgba(0, 87, 147, 0.8);
  display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: center;
  left: 0;
  opacity: 0;
  padding: 1.5rem;
  position: absolute;
  transition: all 300ms ease-out;
  top: 0;
  width: 100%;
}
div.masobox article.card .portal-item .portal-content .info > * {
  transition: all 300ms ease-out;
  opacity: 0;
}
div.masobox article.card .portal-item .portal-content .info > *:nth-child(1n) {
  transition-delay: 100ms;
}
div.masobox article.card .portal-item .portal-content .info > *:nth-child(2n) {
  transition-delay: 200ms;
}
div.masobox article.card .portal-item .portal-content .info > *:nth-child(3n) {
  transition-delay: 300ms;
}
div.masobox article.card .portal-item .portal-content .info > *:nth-child(4n) {
  transition-delay: 400ms;
}
div.masobox article.card .portal-item .portal-content .info > *:nth-child(5n) {
  transition-delay: 500ms;
}
div.masobox article.card .portal-item .portal-content .info > *:nth-child(6n) {
  transition-delay: 600ms;
}
div.masobox article.card .portal-item .portal-content .info > *:nth-child(7n) {
  transition-delay: 700ms;
}
div.masobox article.card .portal-item .portal-content .info > *:nth-child(8n) {
  transition-delay: 800ms;
}
div.masobox article.card .portal-item .portal-content .info > *:nth-child(9n) {
  transition-delay: 900ms;
}
div.masobox article.card .portal-item .portal-content .info > *:nth-child(10n) {
  transition-delay: 1000ms;
}
div.masobox article.card .portal-item .portal-content .info .title {
  color: rgb(250, 250, 250);
  font-size: 2.4rem;
  margin: 0 0 2rem 0;
}
div.masobox article.card .portal-item .portal-content .info hr {
  background-color: transparent;
  border-top: 0.3rem dashed rgb(250, 250, 250);
  margin: 0 0 2rem 0;
  max-width: 10rem;
}
div.masobox article.card .portal-item .portal-content .info .attr {
  display: none;
}
div.masobox article.card .portal-item:hover .portal-content .info {
  opacity: 1;
}
div.masobox article.card .portal-item:hover .portal-content .info > * {
  opacity: 1;
}
div.masobox article.card.filter-item {
  transition: none;
}

#filters {
  margin-top: 5rem;
  width: 100%;
}
#filters .filter-content {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  width: 100%;
}
#filters .filter-content .filter-set {
  display: flex;
  flex: 0 0 auto;
  flex-wrap: wrap;
  justify-content: center;
  width: 100%;
}
#filters .filter-content .filter-set .label {
  display: none;
  margin: 0 3rem 0.8rem 0;
  width: auto;
}
#filters .filter-content .filter-set button {
  margin: 0.5rem;
}

.filtered .filter-target {
  min-height: 20rem;
}
.filtered .filter-target .filter-item {
  transform: scale(1);
  transform-origin: center;
  transition: all 200ms ease-out;
  transition-property: transform, left, top, opacity;
}
.filtered .filter-target .filter-item.hide {
  height: 0;
  margin: 0;
  opacity: 0;
  padding: 0;
  transform: scale(0);
  transform-origin: center;
  transition: all 200ms ease-out;
  transition-property: transform, left, top, opacity;
  width: 0 !important;
}
.filtered .filter-target #no-results {
  left: 50%;
  padding: 50px 0;
  position: absolute;
  top: 0;
  transform: translateX(-50%) scale(0);
  transition: transform 300ms ease-out;
  visibility: hidden;
}
.filtered .filter-target #no-results.show {
  transform: translateX(-50%) scale(1);
  visibility: visible;
}

.itin-controls {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  width: 100%;
}
.itin-controls .button {
  border-color: rgb(180, 180, 180);
  background-color: rgb(180, 180, 180);
  cursor: pointer;
  font-family: "Quicksand", sans-serif;
  font-size: 1.4rem;
  line-height: 1.1;
  margin-left: 1rem;
}
.itin-controls .button i {
  font-size: 1.6rem;
  margin-right: 0.4rem;
  vertical-align: middle;
}
.itin-controls .button:hover, .itin-controls .button.active {
  background-color: transparent;
  color: rgb(180, 180, 180);
}
.itin-controls form {
  display: inline-block;
  line-height: 1.1;
  width: auto;
}
.itin-controls form .button {
  margin: 0;
}
.itin-controls.hide {
  display: none;
}

.search-box {
  background-color: rgb(30, 30, 30);
  border: 0.2rem solid rgb(30, 30, 30);
  border-radius: 5rem;
  color: rgb(30, 30, 30);
  display: inline-block;
  font-size: 2rem;
  height: 3.6rem;
  padding: 0;
  position: relative;
  transition: all 300ms ease-out;
  vertical-align: top;
  width: 3.6rem;
}
.search-box form {
  display: inline-block;
  height: 100%;
}
.search-box input {
  background-color: rgb(250, 250, 250);
  border: 0;
  border-radius: 1.5rem 0 0 1.5rem;
  color: rgb(30, 30, 30);
  font-size: 1.6rem;
  font-weight: 500;
  height: 100%;
  left: 0;
  margin: 0 3rem 0 0;
  outline: transparent;
  padding: 0;
  position: absolute;
  top: 0;
  width: 0;
}
.search-box input::-moz-placeholder {
  color: rgb(30, 30, 30);
  opacity: 1;
  -moz-transition: all 300ms ease-out;
  transition: all 300ms ease-out;
}
.search-box input::placeholder {
  color: rgb(30, 30, 30);
  opacity: 1;
  transition: all 300ms ease-out;
}
.search-box input:focus {
  background-color: rgb(250, 250, 250);
  color: rgb(30, 30, 30);
}
.search-box input:focus::-moz-placeholder {
  opacity: 0.5;
}
.search-box input:focus::placeholder {
  opacity: 0.5;
}
.search-box i {
  border-radius: 50%;
  color: inherit;
  cursor: pointer;
  display: inline-block;
  font-size: 2rem;
  height: 3.2rem;
  margin: 0;
  padding: 1rem;
  position: absolute;
  right: 0.8rem;
  top: 0;
  transition: all 300ms ease-out;
  width: 2.4rem;
}
.search-box i::before {
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-55%, -55%);
}
.search-box:hover {
  background-color: rgb(30, 30, 30);
}
.search-box:hover i {
  color: rgb(250, 250, 250);
}
.search-box.on {
  width: 18rem;
}
@media only screen and (min-width: 960px) {
  .search-box.on {
    width: 20rem;
  }
}
.search-box.on i {
  color: rgb(250, 250, 250);
}
.search-box.on input {
  padding: 0.8rem 0.5rem 0.8rem 1rem;
  width: calc(100% - 4rem);
}
.search-box.hero {
  background-color: rgba(0, 0, 0, 0.3);
  border: 0.3rem solid rgb(250, 250, 250);
  height: 4.6rem;
  margin-top: 1rem;
}
.search-box.hero input {
  background-color: transparent;
  border-radius: 2rem 0 0 2rem;
  color: rgb(250, 250, 250);
  font-size: 1.8rem;
  height: 4rem;
  margin: 0 5rem 0 0;
  text-align: right;
}
.search-box.hero input::-moz-placeholder {
  color: rgb(250, 250, 250);
}
.search-box.hero input::placeholder {
  color: rgb(250, 250, 250);
}
.search-box.hero input:focus {
  background-color: rgba(0, 0, 0, 0.5);
}
.search-box.hero i {
  background-color: transparent;
  border-radius: 0 2.3rem 2.3rem 0;
  color: rgb(250, 250, 250);
  font-size: 2.4rem;
  height: 4.6rem;
  padding: 0.5rem;
  right: -0.3rem;
  top: -0.3rem;
  width: 5rem;
}
.search-box.hero i::before {
  color: inherit;
}
.search-box.hero:hover {
  background-color: rgba(0, 0, 0, 0.5);
  box-shadow: 0 0 1.6rem 0.3rem rgba(0, 0, 0, 0.7);
}
.search-box.hero.on {
  max-width: 47.5rem;
  padding-left: 2rem;
  width: 100%;
}
.search-box.hero.on input {
  width: calc(100% - 5rem);
}
.search-box.hero.search-page {
  background-color: rgb(250, 250, 250);
  border-color: rgb(30, 30, 30);
}
.search-box.hero.search-page input {
  background-color: transparent;
  color: rgb(30, 30, 30);
  text-align: left;
}
.search-box.hero.search-page input::-moz-placeholder {
  color: rgb(30, 30, 30);
}
.search-box.hero.search-page input::placeholder {
  color: rgb(30, 30, 30);
}
.search-box.hero.search-page i {
  color: rgb(30, 30, 30);
}
.search-box.hero.search-page:hover {
  box-shadow: 0 0 0.8rem 0.1rem rgba(0, 0, 0, 0.3);
}
.search-box.dtop {
  display: none;
}
@media only screen and (min-width: 1024px) {
  .search-box.dtop {
    display: inline-block;
  }
}
.search-box.mob {
  background-color: rgb(250, 250, 250);
  border-color: rgba(0, 0, 0, 0.6);
  box-shadow: 0.2rem 0.2rem 0.3rem 0 rgba(0, 0, 0, 0.2) inset;
  width: 100%;
}
.search-box.mob i {
  color: rgb(30, 30, 30);
}
.search-box.mob input {
  background-color: transparent;
  padding: 1rem 0.5rem 0.8remrem 1rem;
  width: calc(100% - 3.4rem);
}
.search-box.mob input::-moz-placeholder {
  opacity: 0.4;
}
.search-box.mob input::placeholder {
  opacity: 0.4;
}

#basket-link.icon {
  align-items: center;
  color: inherit;
  display: flex;
  font-family: "DM Sans", sans-serif;
  font-size: 1.1rem;
  font-style: normal;
  font-weight: 700;
  opacity: 1;
  position: relative;
  text-align: right;
  text-decoration: none;
  text-transform: uppercase;
}
#basket-link.icon span {
  display: none;
  flex: 0 0 auto;
  line-height: 1.2;
}
@media only screen and (min-width: 576px) {
  #basket-link.icon span {
    display: inline-block;
  }
}
#basket-link.icon span:first-child {
  padding: 0 0.5rem 0 0;
}
#basket-link.icon i {
  border: 0.1rem solid currentColor;
  border-radius: 50%;
  color: inherit;
  cursor: pointer;
  display: inline-block;
  font-size: 2rem;
  height: 4rem;
  padding: 1rem;
  position: relative;
  transition: all 300ms ease-out;
  width: 4rem;
}
#basket-link.icon i::before {
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
}
#basket-link.icon .items {
  align-items: center;
  background-color: rgb(250, 250, 250);
  border: 0.1rem solid rgb(250, 250, 250);
  border-radius: 50%;
  color: rgb(30, 30, 30);
  display: flex;
  font-size: 1rem;
  font-weight: 600;
  height: 1.8rem;
  justify-content: center;
  line-height: 1;
  position: absolute;
  right: -0.6rem;
  top: -0.4rem;
  width: 1.8rem;
  z-index: 1;
}
#basket-link.icon:hover i, #basket-link.icon:focus i {
  background-color: rgb(250, 250, 250);
  color: rgb(30, 30, 30);
}
#basket-link.default {
  color: rgb(30, 30, 30);
  display: flex;
  font-family: "Quicksand", sans-serif;
  font-size: 2rem;
  font-weight: 600;
  margin-top: 1rem;
}
#basket-link.default i {
  font-size: 2rem;
  margin-top: 0.5rem;
  margin-right: 1rem;
}
#basket-link.default .items .lbl {
  font-weight: 400;
}
#basket-link.default .price {
  margin-left: 1rem;
}

.maf-bc {
  padding: 0;
  display: flex;
  justify-content: center;
  margin: 0 auto;
  max-width: 160rem;
  transition: opacity 300ms ease-out;
  transition-delay: 300ms;
  width: 100%;
}
@media only screen and (min-width: 576px) {
  .maf-bc {
    padding: 0 2.5rem;
  }
}
.maf-bc.clr-1 {
  background-color: rgb(71, 79, 71);
}
.maf-bc .maf-bc-i {
  padding: 6rem 1.5rem;
  color: rgb(30, 30, 30);
  font-size: 1.5rem;
  max-width: 160rem;
  opacity: 0.5;
  padding-top: 3rem !important;
  padding-bottom: 1rem !important;
  width: 100%;
}
@media only screen and (min-width: 960px) {
  .maf-bc .maf-bc-i {
    padding: 10rem 1.5rem;
  }
}
.maf-bc .maf-bc-i a {
  color: inherit;
  position: relative;
  text-decoration: none;
}
.maf-bc .maf-bc-i a::before {
  background-color: rgb(30, 30, 30);
  bottom: 0;
  content: "";
  display: inline-block;
  height: 0.1rem;
  left: 50%;
  position: absolute;
  transform: translate(-50%, 0);
  transition: width 600ms ease-out;
  width: 0;
  z-index: -1;
}
.maf-bc .maf-bc-i a:hover {
  color: rgb(30, 30, 30);
}
.maf-bc .maf-bc-i a:hover::before {
  width: 100%;
}
.maf-bc .maf-bc-i span.tpage {
  font-weight: 600;
}
.maf-bc .maf-bc-i span.dl {
  display: inline-block;
  margin: 0 0.5rem;
}

#sub-menu-toc {
  background-color: rgb(60, 60, 60);
  color: rgb(250, 250, 250);
  font-size: 1.6rem;
  font-weight: 400;
}
@media only screen and (min-width: 576px) {
  #sub-menu-toc {
    font-weight: 600;
  }
}
@media only screen and (min-width: 768px) {
  #sub-menu-toc {
    font-size: 1.8rem;
  }
}
@media only screen and (min-width: 960px) {
  #sub-menu-toc {
    font-size: 2.2rem;
  }
}
#sub-menu-toc .row .column {
  padding-top: 3rem;
  padding-bottom: 3rem;
}
#sub-menu-toc nav {
  -moz-columns: 2 auto;
       columns: 2 auto;
  display: inline-block;
  max-width: 98rem;
  padding-bottom: 3rem;
  width: 100%;
}
#sub-menu-toc nav div a {
  color: rgb(250, 250, 250);
  display: inline-block;
  line-height: 1;
  outline: none;
  opacity: 1.2;
  padding: 0.5rem 1rem;
  width: auto;
}
#sub-menu-toc nav div a:hover, #sub-menu-toc nav div a:focus {
  background-color: rgb(250, 250, 250);
  color: rgb(60, 60, 60);
}

.modal {
  align-items: center;
  background-color: rgba(0, 0, 0, 0.8);
  -webkit-backdrop-filter: blur(5px);
          backdrop-filter: blur(5px);
  color: rgb(30, 30, 30);
  display: flex;
  font-family: "DM Sans", sans-serif;
  font-size: 1.8rem;
  font-weight: 400;
  height: 100vh;
  justify-content: center;
  left: 0;
  opacity: 0;
  padding: 10rem 1.5rem 1.5rem 1.5rem;
  position: fixed;
  top: 0;
  transition: opacity 200ms ease-out;
  visibility: hidden;
  width: 100vw;
  z-index: 99999;
}
@media only screen and (min-width: 768px) {
  .modal {
    padding: 20rem 1.5rem 1.5rem 1.5rem;
  }
}
.modal > div {
  background-color: rgb(250, 250, 250);
  background-position: top right;
  background-repeat: no-repeat;
  background-size: contain;
  border-radius: 0.8rem;
  box-shadow: 0 0 1.5rem 0.2rem rgba(0, 0, 0, 0.2);
  display: inline-block;
  height: 0;
  max-height: 48.5rem;
  max-width: 49.5rem;
  opacity: 0;
  padding: 5rem 0 3rem 1.5rem;
  position: relative;
  transform: scale(0);
  transition: all 200ms ease-out;
  width: 0;
}
.modal > div .mod-content {
  align-items: center;
  display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: flex-start;
  overflow-y: auto;
  padding-right: 1.5rem;
  text-align: center;
}
.modal > div .close {
  color: rgb(30, 30, 30);
  height: 4rem;
  position: absolute;
  right: 1rem;
  top: 1rem;
  width: 4rem;
}
.modal.show {
  display: flex;
  opacity: 1;
  visibility: visible;
}
.modal.show > div {
  height: 90%;
  opacity: 1;
  transform: scale(1);
  width: 90%;
}

#mp-pop-log p.small-text {
  font-size: 1.6rem;
}
#mp-pop-log > div {
  background-color: rgb(250, 250, 250);
  border: 1rem solid rgb(30, 30, 30);
  border-radius: 0.5rem;
  box-shadow: 0 0 3.6rem rgba(255, 255, 255, 0.1);
  max-height: 36rem;
  max-width: 42rem;
}
#mp-pop-log > div .mod-content {
  text-align: left;
}
#mp-pop-log > div .mod-content #p-wrd {
  position: relative;
}
#mp-pop-log > div .mod-content #p-wrd input {
  padding-right: 7rem;
}
#mp-pop-log > div .mod-content #p-wrd #forgot {
  display: inline-block;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1;
  position: absolute;
  right: 2.5rem;
  text-decoration: none;
  top: 50%;
  transform: translateY(-50%);
}
#mp-pop-log > div .mod-content #p-wrd #forgot:hover {
  color: rgb(30, 30, 30);
}

#mp-age-consent {
  color: rgb(30, 30, 30);
}
#mp-age-consent .logo {
  margin: 0 0 3rem 0;
  padding: 2rem;
  width: 100%;
}
#mp-age-consent .logo img, #mp-age-consent .logo svg {
  display: block;
  margin: 0 auto;
  max-width: 35rem;
  width: 100%;
}
#mp-age-consent p {
  font-size: 2rem;
  width: 100%;
}
#mp-age-consent p strong {
  text-transform: uppercase;
}
#mp-age-consent p.small {
  font-size: 1.4rem;
}
#mp-age-consent button {
  background-color: transparent;
  border-color: rgb(30, 30, 30);
  color: rgb(30, 30, 30);
  font-size: 2rem;
  margin: auto 2rem;
  width: auto;
}
#mp-age-consent button:hover {
  background-color: rgb(30, 30, 30);
  border-color: rgb(30, 30, 30);
  color: rgb(250, 250, 250);
}
#mp-age-consent > div {
  max-height: 50rem;
  max-width: 50rem;
  padding: 2rem;
  z-index: 1;
}
#mp-age-consent > div::before {
  content: "";
  display: none;
  border: 0.2rem solid rgb(60, 60, 60);
  border-radius: 2.5rem;
  height: calc(100% - 1.4rem);
  left: 0.5rem;
  position: absolute;
  top: 0.5rem;
  width: calc(100% - 1.4rem);
  z-index: 0;
}
#mp-age-consent > div .mod-content {
  align-items: center;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  padding: 0;
  position: relative;
  text-align: center;
  z-index: 2;
}
#mp-age-consent.has-img > div {
  display: flex;
  max-width: 50rem;
  padding: 0;
}
@media only screen and (min-width: 1024px) {
  #mp-age-consent.has-img > div {
    max-width: 100rem;
  }
}
#mp-age-consent.has-img .mod-content {
  flex: 1 1 0;
  max-width: 50rem;
  padding: 2rem;
}
#mp-age-consent.has-img .mod-content.img {
  background-color: black;
  background-position: center;
  background-size: cover;
  display: none;
}
@media only screen and (min-width: 1024px) {
  #mp-age-consent.has-img .mod-content.img {
    display: flex;
  }
}

#mp-nagger > div {
  border: 0.5rem solid rgb(115, 141, 114);
}
#mp-nagger > div .mod-content .title {
  display: inline-block;
}
#mp-nagger > div .mod-content .sign-up {
  background-color: rgb(115, 141, 114);
  border-color: rgb(115, 141, 114);
  color: rgb(250, 250, 250);
  min-width: 20rem;
}
#mp-nagger > div .mod-content .sign-up:hover {
  background-color: transparent;
  color: rgb(115, 141, 114);
}
#mp-nagger > div .mod-content .social-icons {
  --icon-colour: rgb(115, 141, 114);
  --text-colour: rgb(250, 250, 250);
}
#mp-nagger > div.two-cols {
  max-width: 76.8rem;
  overflow: hidden;
  padding: 0;
}
#mp-nagger > div.two-cols .mod-content {
  align-items: stretch;
  flex-direction: row;
  overflow: hidden;
  padding: 0;
}
#mp-nagger > div.two-cols .mod-content > div {
  align-items: center;
  display: flex;
  flex: 0 0 auto;
  flex-direction: column;
  justify-content: center;
  width: 100%;
}
#mp-nagger > div.two-cols .mod-content > div.col1 {
  display: none;
  position: relative;
}
@media only screen and (min-width: 768px) {
  #mp-nagger > div.two-cols .mod-content > div.col1 {
    display: flex;
    width: 50%;
  }
}
#mp-nagger > div.two-cols .mod-content > div.col1 > img {
  height: 100%;
  left: 0;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  width: 100%;
}
#mp-nagger > div.two-cols .mod-content > div.col2 {
  padding: 5rem 0 3rem 1.5rem;
}
@media only screen and (min-width: 768px) {
  #mp-nagger > div.two-cols .mod-content > div.col2 {
    width: 50%;
  }
}
#mp-nagger > div.two-cols .mod-content > div.col2 > div {
  align-items: center;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  overflow-y: auto;
  padding-right: 1.5rem;
}

@keyframes point-a-d {
  0% {
    transform: translate(0, 0);
  }
  5% {
    transform: translate(0, -1rem);
  }
  10% {
    transform: translate(0, 0);
  }
  15% {
    transform: translate(0, 1rem);
  }
  20% {
    transform: translate(0, 0);
  }
  25% {
    transform: translate(0, -1rem);
  }
  30% {
    transform: translate(0, 0);
  }
  35% {
    transform: translate(0, 1rem);
  }
  40% {
    transform: translate(0, 0);
  }
}
#maf-btn-dwn {
  background-color: rgba(239, 231, 228, 0.2);
  border: 0;
  border-radius: 0;
  bottom: 0;
  left: 0;
  margin: 0;
  opacity: 0.3;
  padding: 0;
  position: absolute;
  transition: opacity 300ms ease-out;
  width: 10%;
}
#maf-btn-dwn::after {
  content: "";
  display: block;
  padding-bottom: 100%;
}
#maf-btn-dwn .spr {
  animation: point-a-d 4000ms infinite linear;
  display: inline-block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
#maf-btn-dwn .spr .a {
  bottom: 30%;
  display: inline-block;
  left: 50%;
  position: absolute;
  transform: translate(-50%, 0);
  width: 35%;
}
#maf-btn-dwn .spr .a::before, #maf-btn-dwn .spr .a::after {
  background-color: rgb(250, 250, 250);
  border-radius: 0.2rem;
  bottom: 0;
  content: "";
  display: inline-block;
  height: 0.2rem;
  position: absolute;
  right: 50%;
  transform: rotate(45deg);
  transform-origin: right bottom;
  width: 60%;
}
@media only screen and (min-width: 960px) {
  #maf-btn-dwn .spr .a::before, #maf-btn-dwn .spr .a::after {
    height: 0.6rem;
  }
}
#maf-btn-dwn .spr .a::after {
  left: 50%;
  transform: rotate(-45deg);
  transform-origin: left bottom;
  right: auto;
}
#maf-btn-dwn .spr .b {
  background-color: rgb(250, 250, 250);
  border-radius: 0.2rem;
  bottom: calc(30% + 0.2rem);
  display: inline-block;
  height: 30%;
  left: 50%;
  position: absolute;
  transform: translate(-50%, 0);
  width: 0.2rem;
}
@media only screen and (min-width: 960px) {
  #maf-btn-dwn .spr .b {
    width: 0.6rem;
  }
}
#maf-btn-dwn:hover {
  opacity: 0.7;
}

.opening-times {
  margin: 0;
}
.opening-times span.line {
  display: block;
}

main {
  background-size: cover;
  min-height: 100vh;
  width: 100%;
}
body.manageable-bo main {
  padding-top: 0;
  min-height: 0;
}

section, .section {
  overflow: hidden;
}

section p.page-lead, section span.page-lead, .section p.page-lead, .section span.page-lead, footer p.page-lead, footer span.page-lead, .bo-row p.page-lead, .bo-row span.page-lead {
  font-family: "Quicksand", sans-serif;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.2;
}
section p.small-text, section span.small-text, .section p.small-text, .section span.small-text, footer p.small-text, footer span.small-text, .bo-row p.small-text, .bo-row span.small-text {
  font-size: 0.92em;
}
section p.big-text, section span.big-text, .section p.big-text, .section span.big-text, footer p.big-text, footer span.big-text, .bo-row p.big-text, .bo-row span.big-text {
  font-size: 1.2em;
}
section p.massive-text, section span.massive-text, .section p.massive-text, .section span.massive-text, footer p.massive-text, footer span.massive-text, .bo-row p.massive-text, .bo-row span.massive-text {
  font-size: 6rem;
  font-weight: bold;
  line-height: 1;
}
@media only screen and (min-width: 576px) {
  section p.massive-text, section span.massive-text, .section p.massive-text, .section span.massive-text, footer p.massive-text, footer span.massive-text, .bo-row p.massive-text, .bo-row span.massive-text {
    font-size: 12rem;
  }
}
@media only screen and (min-width: 768px) {
  section p.massive-text, section span.massive-text, .section p.massive-text, .section span.massive-text, footer p.massive-text, footer span.massive-text, .bo-row p.massive-text, .bo-row span.massive-text {
    font-size: 14rem;
  }
}
@media only screen and (min-width: 1152px) {
  section p.massive-text, section span.massive-text, .section p.massive-text, .section span.massive-text, footer p.massive-text, footer span.massive-text, .bo-row p.massive-text, .bo-row span.massive-text {
    font-size: 16.5rem;
  }
}
section p.tiny-text, section span.tiny-text, .section p.tiny-text, .section span.tiny-text, footer p.tiny-text, footer span.tiny-text, .bo-row p.tiny-text, .bo-row span.tiny-text {
  font-family: "DM Sans", sans-serif;
  font-size: 0.5em !important;
}
section p.script-text, section span.script-text, .section p.script-text, .section span.script-text, footer p.script-text, footer span.script-text, .bo-row p.script-text, .bo-row span.script-text {
  font-family: cursive;
}
section p.p-yes, section p.p-no, section span.p-yes, section span.p-no, .section p.p-yes, .section p.p-no, .section span.p-yes, .section span.p-no, footer p.p-yes, footer p.p-no, footer span.p-yes, footer span.p-no, .bo-row p.p-yes, .bo-row p.p-no, .bo-row span.p-yes, .bo-row span.p-no {
  font-size: 2.2rem;
  font-weight: 400;
  line-height: 1.1;
  padding-left: 11%;
  position: relative;
}
section p.p-yes::before, section p.p-no::before, section span.p-yes::before, section span.p-no::before, .section p.p-yes::before, .section p.p-no::before, .section span.p-yes::before, .section span.p-no::before, footer p.p-yes::before, footer p.p-no::before, footer span.p-yes::before, footer span.p-no::before, .bo-row p.p-yes::before, .bo-row p.p-no::before, .bo-row span.p-yes::before, .bo-row span.p-no::before {
  background-image: url("/images/Layout/ui/tick-circ.svg");
  background-position: left top;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 9%;
}
section p.p-yes::before, section span.p-yes::before, .section p.p-yes::before, .section span.p-yes::before, footer p.p-yes::before, footer span.p-yes::before, .bo-row p.p-yes::before, .bo-row span.p-yes::before {
  background-image: url("/images/Layout/ui/tick-circ.svg");
}
section p.p-no::before, section span.p-no::before, .section p.p-no::before, .section span.p-no::before, footer p.p-no::before, footer span.p-no::before, .bo-row p.p-no::before, .bo-row span.p-no::before {
  background-image: url("/images/Layout/ui/cross-circ.svg");
}
section p.has-img, .section p.has-img, footer p.has-img, .bo-row p.has-img {
  /*align-items: center;
  align-content: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-right: -25px;
  margin-left: -25px;
  width: calc(100% + 50px);*/
  margin: 0 0 1.2em 0;
  text-align: center;
}
section p.has-img img, .section p.has-img img, footer p.has-img img, .bo-row p.has-img img {
  margin: 0 0 1rem 0 !important;
}
section p.has-img img + img, .section p.has-img img + img, footer p.has-img img + img, .bo-row p.has-img img + img {
  margin-left: 1rem;
}
section p.has-img figure img, .section p.has-img figure img, footer p.has-img figure img, .bo-row p.has-img figure img {
  margin: 0 !important;
}
section p.p-links, .section p.p-links, footer p.p-links, .bo-row p.p-links {
  margin: 1rem -1.5rem 3rem -1.5rem;
  position: relative;
  width: calc(100% + 3rem);
}
section p.p-links a, .section p.p-links a, footer p.p-links a, .bo-row p.p-links a {
  margin: 0 1.5rem 1rem 1.5rem;
}
section p.p-links a img, .section p.p-links a img, footer p.p-links a img, .bo-row p.p-links a img {
  display: inline-block;
}
section p.has-figs, .section p.has-figs, footer p.has-figs, .bo-row p.has-figs {
  align-items: flex-end;
  align-content: flex-end;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 1em -2rem 1.2em -2rem;
  width: calc(100% + 40px);
}
section p.has-figs figure, .section p.has-figs figure, footer p.has-figs figure, .bo-row p.has-figs figure {
  flex: 0 1 auto;
  margin: 0 2rem 1.2em 2rem;
}
section h1.page-lead, section .h1-style.page-lead, section h2.page-lead, section .h2-style.page-lead, section h3.page-lead, section .h3-style.page-lead, section h4.page-lead, section .h4-style.page-lead, section h5.page-lead, section .h5-style.page-lead, section h6.page-lead, section .h6-style.page-lead, section p.page-lead, section .p-style.page-lead, .section h1.page-lead, .section .h1-style.page-lead, .section h2.page-lead, .section .h2-style.page-lead, .section h3.page-lead, .section .h3-style.page-lead, .section h4.page-lead, .section .h4-style.page-lead, .section h5.page-lead, .section .h5-style.page-lead, .section h6.page-lead, .section .h6-style.page-lead, .section p.page-lead, .section .p-style.page-lead, footer h1.page-lead, footer .h1-style.page-lead, footer h2.page-lead, footer .h2-style.page-lead, footer h3.page-lead, footer .h3-style.page-lead, footer h4.page-lead, footer .h4-style.page-lead, footer h5.page-lead, footer .h5-style.page-lead, footer h6.page-lead, footer .h6-style.page-lead, footer p.page-lead, footer .p-style.page-lead, .bo-row h1.page-lead, .bo-row .h1-style.page-lead, .bo-row h2.page-lead, .bo-row .h2-style.page-lead, .bo-row h3.page-lead, .bo-row .h3-style.page-lead, .bo-row h4.page-lead, .bo-row .h4-style.page-lead, .bo-row h5.page-lead, .bo-row .h5-style.page-lead, .bo-row h6.page-lead, .bo-row .h6-style.page-lead, .bo-row p.page-lead, .bo-row .p-style.page-lead {
  font-family: "Quicksand", sans-serif;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.2;
}
section h1.no-margin, section .h1-style.no-margin, section h2.no-margin, section .h2-style.no-margin, section h3.no-margin, section .h3-style.no-margin, section h4.no-margin, section .h4-style.no-margin, section h5.no-margin, section .h5-style.no-margin, section h6.no-margin, section .h6-style.no-margin, section p.no-margin, section .p-style.no-margin, .section h1.no-margin, .section .h1-style.no-margin, .section h2.no-margin, .section .h2-style.no-margin, .section h3.no-margin, .section .h3-style.no-margin, .section h4.no-margin, .section .h4-style.no-margin, .section h5.no-margin, .section .h5-style.no-margin, .section h6.no-margin, .section .h6-style.no-margin, .section p.no-margin, .section .p-style.no-margin, footer h1.no-margin, footer .h1-style.no-margin, footer h2.no-margin, footer .h2-style.no-margin, footer h3.no-margin, footer .h3-style.no-margin, footer h4.no-margin, footer .h4-style.no-margin, footer h5.no-margin, footer .h5-style.no-margin, footer h6.no-margin, footer .h6-style.no-margin, footer p.no-margin, footer .p-style.no-margin, .bo-row h1.no-margin, .bo-row .h1-style.no-margin, .bo-row h2.no-margin, .bo-row .h2-style.no-margin, .bo-row h3.no-margin, .bo-row .h3-style.no-margin, .bo-row h4.no-margin, .bo-row .h4-style.no-margin, .bo-row h5.no-margin, .bo-row .h5-style.no-margin, .bo-row h6.no-margin, .bo-row .h6-style.no-margin, .bo-row p.no-margin, .bo-row .p-style.no-margin {
  margin: 0 !important;
}
section h1.small-margin, section .h1-style.small-margin, section h2.small-margin, section .h2-style.small-margin, section h3.small-margin, section .h3-style.small-margin, section h4.small-margin, section .h4-style.small-margin, section h5.small-margin, section .h5-style.small-margin, section h6.small-margin, section .h6-style.small-margin, section p.small-margin, section .p-style.small-margin, .section h1.small-margin, .section .h1-style.small-margin, .section h2.small-margin, .section .h2-style.small-margin, .section h3.small-margin, .section .h3-style.small-margin, .section h4.small-margin, .section .h4-style.small-margin, .section h5.small-margin, .section .h5-style.small-margin, .section h6.small-margin, .section .h6-style.small-margin, .section p.small-margin, .section .p-style.small-margin, footer h1.small-margin, footer .h1-style.small-margin, footer h2.small-margin, footer .h2-style.small-margin, footer h3.small-margin, footer .h3-style.small-margin, footer h4.small-margin, footer .h4-style.small-margin, footer h5.small-margin, footer .h5-style.small-margin, footer h6.small-margin, footer .h6-style.small-margin, footer p.small-margin, footer .p-style.small-margin, .bo-row h1.small-margin, .bo-row .h1-style.small-margin, .bo-row h2.small-margin, .bo-row .h2-style.small-margin, .bo-row h3.small-margin, .bo-row .h3-style.small-margin, .bo-row h4.small-margin, .bo-row .h4-style.small-margin, .bo-row h5.small-margin, .bo-row .h5-style.small-margin, .bo-row h6.small-margin, .bo-row .h6-style.small-margin, .bo-row p.small-margin, .bo-row .p-style.small-margin {
  margin-bottom: 0.2em !important;
}
section h1.big-text, section .h1-style.big-text, section h2.big-text, section .h2-style.big-text, section h3.big-text, section .h3-style.big-text, section h4.big-text, section .h4-style.big-text, section h5.big-text, section .h5-style.big-text, section h6.big-text, section .h6-style.big-text, section p.big-text, section .p-style.big-text, .section h1.big-text, .section .h1-style.big-text, .section h2.big-text, .section .h2-style.big-text, .section h3.big-text, .section .h3-style.big-text, .section h4.big-text, .section .h4-style.big-text, .section h5.big-text, .section .h5-style.big-text, .section h6.big-text, .section .h6-style.big-text, .section p.big-text, .section .p-style.big-text, footer h1.big-text, footer .h1-style.big-text, footer h2.big-text, footer .h2-style.big-text, footer h3.big-text, footer .h3-style.big-text, footer h4.big-text, footer .h4-style.big-text, footer h5.big-text, footer .h5-style.big-text, footer h6.big-text, footer .h6-style.big-text, footer p.big-text, footer .p-style.big-text, .bo-row h1.big-text, .bo-row .h1-style.big-text, .bo-row h2.big-text, .bo-row .h2-style.big-text, .bo-row h3.big-text, .bo-row .h3-style.big-text, .bo-row h4.big-text, .bo-row .h4-style.big-text, .bo-row h5.big-text, .bo-row .h5-style.big-text, .bo-row h6.big-text, .bo-row .h6-style.big-text, .bo-row p.big-text, .bo-row .p-style.big-text {
  font-size: 1.2em;
}
section h1.massive-text, section .h1-style.massive-text, section h2.massive-text, section .h2-style.massive-text, section h3.massive-text, section .h3-style.massive-text, section h4.massive-text, section .h4-style.massive-text, section h5.massive-text, section .h5-style.massive-text, section h6.massive-text, section .h6-style.massive-text, section p.massive-text, section .p-style.massive-text, .section h1.massive-text, .section .h1-style.massive-text, .section h2.massive-text, .section .h2-style.massive-text, .section h3.massive-text, .section .h3-style.massive-text, .section h4.massive-text, .section .h4-style.massive-text, .section h5.massive-text, .section .h5-style.massive-text, .section h6.massive-text, .section .h6-style.massive-text, .section p.massive-text, .section .p-style.massive-text, footer h1.massive-text, footer .h1-style.massive-text, footer h2.massive-text, footer .h2-style.massive-text, footer h3.massive-text, footer .h3-style.massive-text, footer h4.massive-text, footer .h4-style.massive-text, footer h5.massive-text, footer .h5-style.massive-text, footer h6.massive-text, footer .h6-style.massive-text, footer p.massive-text, footer .p-style.massive-text, .bo-row h1.massive-text, .bo-row .h1-style.massive-text, .bo-row h2.massive-text, .bo-row .h2-style.massive-text, .bo-row h3.massive-text, .bo-row .h3-style.massive-text, .bo-row h4.massive-text, .bo-row .h4-style.massive-text, .bo-row h5.massive-text, .bo-row .h5-style.massive-text, .bo-row h6.massive-text, .bo-row .h6-style.massive-text, .bo-row p.massive-text, .bo-row .p-style.massive-text {
  font-size: 6rem;
  font-weight: bold;
  line-height: 1;
}
@media only screen and (min-width: 576px) {
  section h1.massive-text, section .h1-style.massive-text, section h2.massive-text, section .h2-style.massive-text, section h3.massive-text, section .h3-style.massive-text, section h4.massive-text, section .h4-style.massive-text, section h5.massive-text, section .h5-style.massive-text, section h6.massive-text, section .h6-style.massive-text, section p.massive-text, section .p-style.massive-text, .section h1.massive-text, .section .h1-style.massive-text, .section h2.massive-text, .section .h2-style.massive-text, .section h3.massive-text, .section .h3-style.massive-text, .section h4.massive-text, .section .h4-style.massive-text, .section h5.massive-text, .section .h5-style.massive-text, .section h6.massive-text, .section .h6-style.massive-text, .section p.massive-text, .section .p-style.massive-text, footer h1.massive-text, footer .h1-style.massive-text, footer h2.massive-text, footer .h2-style.massive-text, footer h3.massive-text, footer .h3-style.massive-text, footer h4.massive-text, footer .h4-style.massive-text, footer h5.massive-text, footer .h5-style.massive-text, footer h6.massive-text, footer .h6-style.massive-text, footer p.massive-text, footer .p-style.massive-text, .bo-row h1.massive-text, .bo-row .h1-style.massive-text, .bo-row h2.massive-text, .bo-row .h2-style.massive-text, .bo-row h3.massive-text, .bo-row .h3-style.massive-text, .bo-row h4.massive-text, .bo-row .h4-style.massive-text, .bo-row h5.massive-text, .bo-row .h5-style.massive-text, .bo-row h6.massive-text, .bo-row .h6-style.massive-text, .bo-row p.massive-text, .bo-row .p-style.massive-text {
    font-size: 12rem;
  }
}
@media only screen and (min-width: 768px) {
  section h1.massive-text, section .h1-style.massive-text, section h2.massive-text, section .h2-style.massive-text, section h3.massive-text, section .h3-style.massive-text, section h4.massive-text, section .h4-style.massive-text, section h5.massive-text, section .h5-style.massive-text, section h6.massive-text, section .h6-style.massive-text, section p.massive-text, section .p-style.massive-text, .section h1.massive-text, .section .h1-style.massive-text, .section h2.massive-text, .section .h2-style.massive-text, .section h3.massive-text, .section .h3-style.massive-text, .section h4.massive-text, .section .h4-style.massive-text, .section h5.massive-text, .section .h5-style.massive-text, .section h6.massive-text, .section .h6-style.massive-text, .section p.massive-text, .section .p-style.massive-text, footer h1.massive-text, footer .h1-style.massive-text, footer h2.massive-text, footer .h2-style.massive-text, footer h3.massive-text, footer .h3-style.massive-text, footer h4.massive-text, footer .h4-style.massive-text, footer h5.massive-text, footer .h5-style.massive-text, footer h6.massive-text, footer .h6-style.massive-text, footer p.massive-text, footer .p-style.massive-text, .bo-row h1.massive-text, .bo-row .h1-style.massive-text, .bo-row h2.massive-text, .bo-row .h2-style.massive-text, .bo-row h3.massive-text, .bo-row .h3-style.massive-text, .bo-row h4.massive-text, .bo-row .h4-style.massive-text, .bo-row h5.massive-text, .bo-row .h5-style.massive-text, .bo-row h6.massive-text, .bo-row .h6-style.massive-text, .bo-row p.massive-text, .bo-row .p-style.massive-text {
    font-size: 14rem;
  }
}
@media only screen and (min-width: 1152px) {
  section h1.massive-text, section .h1-style.massive-text, section h2.massive-text, section .h2-style.massive-text, section h3.massive-text, section .h3-style.massive-text, section h4.massive-text, section .h4-style.massive-text, section h5.massive-text, section .h5-style.massive-text, section h6.massive-text, section .h6-style.massive-text, section p.massive-text, section .p-style.massive-text, .section h1.massive-text, .section .h1-style.massive-text, .section h2.massive-text, .section .h2-style.massive-text, .section h3.massive-text, .section .h3-style.massive-text, .section h4.massive-text, .section .h4-style.massive-text, .section h5.massive-text, .section .h5-style.massive-text, .section h6.massive-text, .section .h6-style.massive-text, .section p.massive-text, .section .p-style.massive-text, footer h1.massive-text, footer .h1-style.massive-text, footer h2.massive-text, footer .h2-style.massive-text, footer h3.massive-text, footer .h3-style.massive-text, footer h4.massive-text, footer .h4-style.massive-text, footer h5.massive-text, footer .h5-style.massive-text, footer h6.massive-text, footer .h6-style.massive-text, footer p.massive-text, footer .p-style.massive-text, .bo-row h1.massive-text, .bo-row .h1-style.massive-text, .bo-row h2.massive-text, .bo-row .h2-style.massive-text, .bo-row h3.massive-text, .bo-row .h3-style.massive-text, .bo-row h4.massive-text, .bo-row .h4-style.massive-text, .bo-row h5.massive-text, .bo-row .h5-style.massive-text, .bo-row h6.massive-text, .bo-row .h6-style.massive-text, .bo-row p.massive-text, .bo-row .p-style.massive-text {
    font-size: 16.5rem;
  }
}
section h1.tiny-text, section .h1-style.tiny-text, section h2.tiny-text, section .h2-style.tiny-text, section h3.tiny-text, section .h3-style.tiny-text, section h4.tiny-text, section .h4-style.tiny-text, section h5.tiny-text, section .h5-style.tiny-text, section h6.tiny-text, section .h6-style.tiny-text, section p.tiny-text, section .p-style.tiny-text, .section h1.tiny-text, .section .h1-style.tiny-text, .section h2.tiny-text, .section .h2-style.tiny-text, .section h3.tiny-text, .section .h3-style.tiny-text, .section h4.tiny-text, .section .h4-style.tiny-text, .section h5.tiny-text, .section .h5-style.tiny-text, .section h6.tiny-text, .section .h6-style.tiny-text, .section p.tiny-text, .section .p-style.tiny-text, footer h1.tiny-text, footer .h1-style.tiny-text, footer h2.tiny-text, footer .h2-style.tiny-text, footer h3.tiny-text, footer .h3-style.tiny-text, footer h4.tiny-text, footer .h4-style.tiny-text, footer h5.tiny-text, footer .h5-style.tiny-text, footer h6.tiny-text, footer .h6-style.tiny-text, footer p.tiny-text, footer .p-style.tiny-text, .bo-row h1.tiny-text, .bo-row .h1-style.tiny-text, .bo-row h2.tiny-text, .bo-row .h2-style.tiny-text, .bo-row h3.tiny-text, .bo-row .h3-style.tiny-text, .bo-row h4.tiny-text, .bo-row .h4-style.tiny-text, .bo-row h5.tiny-text, .bo-row .h5-style.tiny-text, .bo-row h6.tiny-text, .bo-row .h6-style.tiny-text, .bo-row p.tiny-text, .bo-row .p-style.tiny-text {
  font-family: "DM Sans", sans-serif;
  font-size: 0.5em !important;
}
section h1.highlight-text, section .h1-style.highlight-text, section h2.highlight-text, section .h2-style.highlight-text, section h3.highlight-text, section .h3-style.highlight-text, section h4.highlight-text, section .h4-style.highlight-text, section h5.highlight-text, section .h5-style.highlight-text, section h6.highlight-text, section .h6-style.highlight-text, section p.highlight-text, section .p-style.highlight-text, .section h1.highlight-text, .section .h1-style.highlight-text, .section h2.highlight-text, .section .h2-style.highlight-text, .section h3.highlight-text, .section .h3-style.highlight-text, .section h4.highlight-text, .section .h4-style.highlight-text, .section h5.highlight-text, .section .h5-style.highlight-text, .section h6.highlight-text, .section .h6-style.highlight-text, .section p.highlight-text, .section .p-style.highlight-text, footer h1.highlight-text, footer .h1-style.highlight-text, footer h2.highlight-text, footer .h2-style.highlight-text, footer h3.highlight-text, footer .h3-style.highlight-text, footer h4.highlight-text, footer .h4-style.highlight-text, footer h5.highlight-text, footer .h5-style.highlight-text, footer h6.highlight-text, footer .h6-style.highlight-text, footer p.highlight-text, footer .p-style.highlight-text, .bo-row h1.highlight-text, .bo-row .h1-style.highlight-text, .bo-row h2.highlight-text, .bo-row .h2-style.highlight-text, .bo-row h3.highlight-text, .bo-row .h3-style.highlight-text, .bo-row h4.highlight-text, .bo-row .h4-style.highlight-text, .bo-row h5.highlight-text, .bo-row .h5-style.highlight-text, .bo-row h6.highlight-text, .bo-row .h6-style.highlight-text, .bo-row p.highlight-text, .bo-row .p-style.highlight-text {
  background-color: rgb(115, 141, 114);
  color: rgb(250, 250, 250);
  line-height: 1;
  padding: 0.5rem 1rem;
  text-transform: uppercase;
  width: auto;
}
section h1.small-margin, section .h1-style.small-margin, section h2.small-margin, section .h2-style.small-margin, section h3.small-margin, section .h3-style.small-margin, section h4.small-margin, section .h4-style.small-margin, section h5.small-margin, section .h5-style.small-margin, section h6.small-margin, section .h6-style.small-margin, section p.small-margin, section .p-style.small-margin, .section h1.small-margin, .section .h1-style.small-margin, .section h2.small-margin, .section .h2-style.small-margin, .section h3.small-margin, .section .h3-style.small-margin, .section h4.small-margin, .section .h4-style.small-margin, .section h5.small-margin, .section .h5-style.small-margin, .section h6.small-margin, .section .h6-style.small-margin, .section p.small-margin, .section .p-style.small-margin, footer h1.small-margin, footer .h1-style.small-margin, footer h2.small-margin, footer .h2-style.small-margin, footer h3.small-margin, footer .h3-style.small-margin, footer h4.small-margin, footer .h4-style.small-margin, footer h5.small-margin, footer .h5-style.small-margin, footer h6.small-margin, footer .h6-style.small-margin, footer p.small-margin, footer .p-style.small-margin, .bo-row h1.small-margin, .bo-row .h1-style.small-margin, .bo-row h2.small-margin, .bo-row .h2-style.small-margin, .bo-row h3.small-margin, .bo-row .h3-style.small-margin, .bo-row h4.small-margin, .bo-row .h4-style.small-margin, .bo-row h5.small-margin, .bo-row .h5-style.small-margin, .bo-row h6.small-margin, .bo-row .h6-style.small-margin, .bo-row p.small-margin, .bo-row .p-style.small-margin {
  margin-bottom: 0.6em;
}
section h1.big-margin, section .h1-style.big-margin, section h2.big-margin, section .h2-style.big-margin, section h3.big-margin, section .h3-style.big-margin, section h4.big-margin, section .h4-style.big-margin, section h5.big-margin, section .h5-style.big-margin, section h6.big-margin, section .h6-style.big-margin, section p.big-margin, section .p-style.big-margin, .section h1.big-margin, .section .h1-style.big-margin, .section h2.big-margin, .section .h2-style.big-margin, .section h3.big-margin, .section .h3-style.big-margin, .section h4.big-margin, .section .h4-style.big-margin, .section h5.big-margin, .section .h5-style.big-margin, .section h6.big-margin, .section .h6-style.big-margin, .section p.big-margin, .section .p-style.big-margin, footer h1.big-margin, footer .h1-style.big-margin, footer h2.big-margin, footer .h2-style.big-margin, footer h3.big-margin, footer .h3-style.big-margin, footer h4.big-margin, footer .h4-style.big-margin, footer h5.big-margin, footer .h5-style.big-margin, footer h6.big-margin, footer .h6-style.big-margin, footer p.big-margin, footer .p-style.big-margin, .bo-row h1.big-margin, .bo-row .h1-style.big-margin, .bo-row h2.big-margin, .bo-row .h2-style.big-margin, .bo-row h3.big-margin, .bo-row .h3-style.big-margin, .bo-row h4.big-margin, .bo-row .h4-style.big-margin, .bo-row h5.big-margin, .bo-row .h5-style.big-margin, .bo-row h6.big-margin, .bo-row .h6-style.big-margin, .bo-row p.big-margin, .bo-row .p-style.big-margin {
  margin-bottom: 1.8em;
}
section h1.dark-glow, section .h1-style.dark-glow, section h2.dark-glow, section .h2-style.dark-glow, section h3.dark-glow, section .h3-style.dark-glow, section h4.dark-glow, section .h4-style.dark-glow, section h5.dark-glow, section .h5-style.dark-glow, section h6.dark-glow, section .h6-style.dark-glow, section p.dark-glow, section .p-style.dark-glow, .section h1.dark-glow, .section .h1-style.dark-glow, .section h2.dark-glow, .section .h2-style.dark-glow, .section h3.dark-glow, .section .h3-style.dark-glow, .section h4.dark-glow, .section .h4-style.dark-glow, .section h5.dark-glow, .section .h5-style.dark-glow, .section h6.dark-glow, .section .h6-style.dark-glow, .section p.dark-glow, .section .p-style.dark-glow, footer h1.dark-glow, footer .h1-style.dark-glow, footer h2.dark-glow, footer .h2-style.dark-glow, footer h3.dark-glow, footer .h3-style.dark-glow, footer h4.dark-glow, footer .h4-style.dark-glow, footer h5.dark-glow, footer .h5-style.dark-glow, footer h6.dark-glow, footer .h6-style.dark-glow, footer p.dark-glow, footer .p-style.dark-glow, .bo-row h1.dark-glow, .bo-row .h1-style.dark-glow, .bo-row h2.dark-glow, .bo-row .h2-style.dark-glow, .bo-row h3.dark-glow, .bo-row .h3-style.dark-glow, .bo-row h4.dark-glow, .bo-row .h4-style.dark-glow, .bo-row h5.dark-glow, .bo-row .h5-style.dark-glow, .bo-row h6.dark-glow, .bo-row .h6-style.dark-glow, .bo-row p.dark-glow, .bo-row .p-style.dark-glow {
  text-shadow: 0 0 1em rgba(0, 0, 0, 0.4);
}
section h1.light-glow, section .h1-style.light-glow, section h2.light-glow, section .h2-style.light-glow, section h3.light-glow, section .h3-style.light-glow, section h4.light-glow, section .h4-style.light-glow, section h5.light-glow, section .h5-style.light-glow, section h6.light-glow, section .h6-style.light-glow, section p.light-glow, section .p-style.light-glow, .section h1.light-glow, .section .h1-style.light-glow, .section h2.light-glow, .section .h2-style.light-glow, .section h3.light-glow, .section .h3-style.light-glow, .section h4.light-glow, .section .h4-style.light-glow, .section h5.light-glow, .section .h5-style.light-glow, .section h6.light-glow, .section .h6-style.light-glow, .section p.light-glow, .section .p-style.light-glow, footer h1.light-glow, footer .h1-style.light-glow, footer h2.light-glow, footer .h2-style.light-glow, footer h3.light-glow, footer .h3-style.light-glow, footer h4.light-glow, footer .h4-style.light-glow, footer h5.light-glow, footer .h5-style.light-glow, footer h6.light-glow, footer .h6-style.light-glow, footer p.light-glow, footer .p-style.light-glow, .bo-row h1.light-glow, .bo-row .h1-style.light-glow, .bo-row h2.light-glow, .bo-row .h2-style.light-glow, .bo-row h3.light-glow, .bo-row .h3-style.light-glow, .bo-row h4.light-glow, .bo-row .h4-style.light-glow, .bo-row h5.light-glow, .bo-row .h5-style.light-glow, .bo-row h6.light-glow, .bo-row .h6-style.light-glow, .bo-row p.light-glow, .bo-row .p-style.light-glow {
  text-shadow: 0 0 1em rgba(255, 255, 255, 0.7);
}
section h1.p-style, section .h1-style.p-style, section h2.p-style, section .h2-style.p-style, section h3.p-style, section .h3-style.p-style, section h4.p-style, section .h4-style.p-style, section h5.p-style, section .h5-style.p-style, section h6.p-style, section .h6-style.p-style, section p.p-style, section .p-style.p-style, .section h1.p-style, .section .h1-style.p-style, .section h2.p-style, .section .h2-style.p-style, .section h3.p-style, .section .h3-style.p-style, .section h4.p-style, .section .h4-style.p-style, .section h5.p-style, .section .h5-style.p-style, .section h6.p-style, .section .h6-style.p-style, .section p.p-style, .section .p-style.p-style, footer h1.p-style, footer .h1-style.p-style, footer h2.p-style, footer .h2-style.p-style, footer h3.p-style, footer .h3-style.p-style, footer h4.p-style, footer .h4-style.p-style, footer h5.p-style, footer .h5-style.p-style, footer h6.p-style, footer .h6-style.p-style, footer p.p-style, footer .p-style.p-style, .bo-row h1.p-style, .bo-row .h1-style.p-style, .bo-row h2.p-style, .bo-row .h2-style.p-style, .bo-row h3.p-style, .bo-row .h3-style.p-style, .bo-row h4.p-style, .bo-row .h4-style.p-style, .bo-row h5.p-style, .bo-row .h5-style.p-style, .bo-row h6.p-style, .bo-row .h6-style.p-style, .bo-row p.p-style, .bo-row .p-style.p-style {
  font-size: 1.8rem;
  font-weight: 400;
}
@media only screen and (min-width: 768px) {
  section h1.p-style, section .h1-style.p-style, section h2.p-style, section .h2-style.p-style, section h3.p-style, section .h3-style.p-style, section h4.p-style, section .h4-style.p-style, section h5.p-style, section .h5-style.p-style, section h6.p-style, section .h6-style.p-style, section p.p-style, section .p-style.p-style, .section h1.p-style, .section .h1-style.p-style, .section h2.p-style, .section .h2-style.p-style, .section h3.p-style, .section .h3-style.p-style, .section h4.p-style, .section .h4-style.p-style, .section h5.p-style, .section .h5-style.p-style, .section h6.p-style, .section .h6-style.p-style, .section p.p-style, .section .p-style.p-style, footer h1.p-style, footer .h1-style.p-style, footer h2.p-style, footer .h2-style.p-style, footer h3.p-style, footer .h3-style.p-style, footer h4.p-style, footer .h4-style.p-style, footer h5.p-style, footer .h5-style.p-style, footer h6.p-style, footer .h6-style.p-style, footer p.p-style, footer .p-style.p-style, .bo-row h1.p-style, .bo-row .h1-style.p-style, .bo-row h2.p-style, .bo-row .h2-style.p-style, .bo-row h3.p-style, .bo-row .h3-style.p-style, .bo-row h4.p-style, .bo-row .h4-style.p-style, .bo-row h5.p-style, .bo-row .h5-style.p-style, .bo-row h6.p-style, .bo-row .h6-style.p-style, .bo-row p.p-style, .bo-row .p-style.p-style {
    font-size: 2rem;
  }
}
section h1.push-down, section .h1-style.push-down, section h2.push-down, section .h2-style.push-down, section h3.push-down, section .h3-style.push-down, section h4.push-down, section .h4-style.push-down, section h5.push-down, section .h5-style.push-down, section h6.push-down, section .h6-style.push-down, section p.push-down, section .p-style.push-down, .section h1.push-down, .section .h1-style.push-down, .section h2.push-down, .section .h2-style.push-down, .section h3.push-down, .section .h3-style.push-down, .section h4.push-down, .section .h4-style.push-down, .section h5.push-down, .section .h5-style.push-down, .section h6.push-down, .section .h6-style.push-down, .section p.push-down, .section .p-style.push-down, footer h1.push-down, footer .h1-style.push-down, footer h2.push-down, footer .h2-style.push-down, footer h3.push-down, footer .h3-style.push-down, footer h4.push-down, footer .h4-style.push-down, footer h5.push-down, footer .h5-style.push-down, footer h6.push-down, footer .h6-style.push-down, footer p.push-down, footer .p-style.push-down, .bo-row h1.push-down, .bo-row .h1-style.push-down, .bo-row h2.push-down, .bo-row .h2-style.push-down, .bo-row h3.push-down, .bo-row .h3-style.push-down, .bo-row h4.push-down, .bo-row .h4-style.push-down, .bo-row h5.push-down, .bo-row .h5-style.push-down, .bo-row h6.push-down, .bo-row .h6-style.push-down, .bo-row p.push-down, .bo-row .p-style.push-down {
  margin-top: auto;
}
section.animate .maf-content, section.animate .insta-feed, section.animate .cardbox .card, section.animate .column, section.animate .row::after, .section.animate .maf-content, .section.animate .insta-feed, .section.animate .cardbox .card, .section.animate .column, .section.animate .row::after, footer.animate .maf-content, footer.animate .insta-feed, footer.animate .cardbox .card, footer.animate .column, footer.animate .row::after, .bo-row.animate .maf-content, .bo-row.animate .insta-feed, .bo-row.animate .cardbox .card, .bo-row.animate .column, .bo-row.animate .row::after {
  filter: grayscale(100%);
  opacity: 0;
  transform: translateY(6rem);
  transition: all 1200ms ease-out;
}
section.animate .footer, .section.animate .footer, footer.animate .footer, .bo-row.animate .footer {
  filter: grayscale(100%);
  opacity: 0;
  transform: translateY(6rem);
  transition: all 1200ms ease-out;
}
section.animate .cardbox .card:nth-child(1), .section.animate .cardbox .card:nth-child(1), footer.animate .cardbox .card:nth-child(1), .bo-row.animate .cardbox .card:nth-child(1) {
  transition-delay: 350ms;
}
section.animate .cardbox .card:nth-child(2), .section.animate .cardbox .card:nth-child(2), footer.animate .cardbox .card:nth-child(2), .bo-row.animate .cardbox .card:nth-child(2) {
  transition-delay: 700ms;
}
section.animate .cardbox .card:nth-child(3), .section.animate .cardbox .card:nth-child(3), footer.animate .cardbox .card:nth-child(3), .bo-row.animate .cardbox .card:nth-child(3) {
  transition-delay: 1050ms;
}
section.animate .cardbox .card:nth-child(4), .section.animate .cardbox .card:nth-child(4), footer.animate .cardbox .card:nth-child(4), .bo-row.animate .cardbox .card:nth-child(4) {
  transition-delay: 1400ms;
}
section.animate .cardbox .card:nth-child(5), .section.animate .cardbox .card:nth-child(5), footer.animate .cardbox .card:nth-child(5), .bo-row.animate .cardbox .card:nth-child(5) {
  transition-delay: 1750ms;
}
section.animate .cardbox .card:nth-child(6), .section.animate .cardbox .card:nth-child(6), footer.animate .cardbox .card:nth-child(6), .bo-row.animate .cardbox .card:nth-child(6) {
  transition-delay: 2100ms;
}
section.animate .cardbox .card:nth-child(7), .section.animate .cardbox .card:nth-child(7), footer.animate .cardbox .card:nth-child(7), .bo-row.animate .cardbox .card:nth-child(7) {
  transition-delay: 2450ms;
}
section.animate .cardbox .card:nth-child(8), .section.animate .cardbox .card:nth-child(8), footer.animate .cardbox .card:nth-child(8), .bo-row.animate .cardbox .card:nth-child(8) {
  transition-delay: 2800ms;
}
section.animate .cardbox .card:nth-child(9), .section.animate .cardbox .card:nth-child(9), footer.animate .cardbox .card:nth-child(9), .bo-row.animate .cardbox .card:nth-child(9) {
  transition-delay: 3150ms;
}
section.animate .cardbox .card:nth-child(10), .section.animate .cardbox .card:nth-child(10), footer.animate .cardbox .card:nth-child(10), .bo-row.animate .cardbox .card:nth-child(10) {
  transition-delay: 3500ms;
}
section.animate .cardbox .card:nth-child(11), .section.animate .cardbox .card:nth-child(11), footer.animate .cardbox .card:nth-child(11), .bo-row.animate .cardbox .card:nth-child(11) {
  transition-delay: 3850ms;
}
section.animate .cardbox .card:nth-child(12), .section.animate .cardbox .card:nth-child(12), footer.animate .cardbox .card:nth-child(12), .bo-row.animate .cardbox .card:nth-child(12) {
  transition-delay: 4200ms;
}
section.animate .cardbox .card:nth-child(13), .section.animate .cardbox .card:nth-child(13), footer.animate .cardbox .card:nth-child(13), .bo-row.animate .cardbox .card:nth-child(13) {
  transition-delay: 4550ms;
}
section.animate .cardbox .card:nth-child(14), .section.animate .cardbox .card:nth-child(14), footer.animate .cardbox .card:nth-child(14), .bo-row.animate .cardbox .card:nth-child(14) {
  transition-delay: 4900ms;
}
section.animate .cardbox .card:nth-child(15), .section.animate .cardbox .card:nth-child(15), footer.animate .cardbox .card:nth-child(15), .bo-row.animate .cardbox .card:nth-child(15) {
  transition-delay: 5250ms;
}
section.animate .cardbox .card:nth-child(16), .section.animate .cardbox .card:nth-child(16), footer.animate .cardbox .card:nth-child(16), .bo-row.animate .cardbox .card:nth-child(16) {
  transition-delay: 5600ms;
}
section.animate .cardbox .card:nth-child(17), .section.animate .cardbox .card:nth-child(17), footer.animate .cardbox .card:nth-child(17), .bo-row.animate .cardbox .card:nth-child(17) {
  transition-delay: 5950ms;
}
section.animate .cardbox .card:nth-child(18), .section.animate .cardbox .card:nth-child(18), footer.animate .cardbox .card:nth-child(18), .bo-row.animate .cardbox .card:nth-child(18) {
  transition-delay: 6300ms;
}
section.animate .cardbox .card:nth-child(19), .section.animate .cardbox .card:nth-child(19), footer.animate .cardbox .card:nth-child(19), .bo-row.animate .cardbox .card:nth-child(19) {
  transition-delay: 6650ms;
}
section.animate .cardbox .card:nth-child(20), .section.animate .cardbox .card:nth-child(20), footer.animate .cardbox .card:nth-child(20), .bo-row.animate .cardbox .card:nth-child(20) {
  transition-delay: 7000ms;
}
section.animate .cardbox .card:nth-child(21), .section.animate .cardbox .card:nth-child(21), footer.animate .cardbox .card:nth-child(21), .bo-row.animate .cardbox .card:nth-child(21) {
  transition-delay: 7350ms;
}
section.animate .cardbox .card:nth-child(22), .section.animate .cardbox .card:nth-child(22), footer.animate .cardbox .card:nth-child(22), .bo-row.animate .cardbox .card:nth-child(22) {
  transition-delay: 7700ms;
}
section.animate .cardbox .card:nth-child(23), .section.animate .cardbox .card:nth-child(23), footer.animate .cardbox .card:nth-child(23), .bo-row.animate .cardbox .card:nth-child(23) {
  transition-delay: 8050ms;
}
section.animate.anim-1 .maf-content, section.animate.anim-1 .column, section.animate.anim-1 .row::after, .section.animate.anim-1 .maf-content, .section.animate.anim-1 .column, .section.animate.anim-1 .row::after, footer.animate.anim-1 .maf-content, footer.animate.anim-1 .column, footer.animate.anim-1 .row::after, .bo-row.animate.anim-1 .maf-content, .bo-row.animate.anim-1 .column, .bo-row.animate.anim-1 .row::after {
  filter: grayscale(0%);
  opacity: 1;
  transform: translateY(0);
}
section.animate.anim-2 .insta-feed, section.animate.anim-2 .cardbox .card, .section.animate.anim-2 .insta-feed, .section.animate.anim-2 .cardbox .card, footer.animate.anim-2 .insta-feed, footer.animate.anim-2 .cardbox .card, .bo-row.animate.anim-2 .insta-feed, .bo-row.animate.anim-2 .cardbox .card {
  filter: grayscale(0%);
  opacity: 1;
  transform: translateY(0);
}
section.animate.anim-3 .footer, .section.animate.anim-3 .footer, footer.animate.anim-3 .footer, .bo-row.animate.anim-3 .footer {
  filter: grayscale(0%);
  opacity: 1;
  transform: translateY(0);
}

@keyframes bgcolourfade {
  0% {
    background: rgb(30, 30, 30);
  }
  20% {
    background: rgb(60, 60, 60);
  }
  40% {
    background: rgb(180, 180, 180);
  }
  60% {
    background: rgb(71, 79, 71);
  }
  80% {
    background: rgb(115, 141, 114);
  }
  100% {
    background: rgb(30, 30, 30);
  }
}
@keyframes head-in {
  0% {
    filter: blur(9px);
    font-variation-settings: "wght" 300;
    opacity: 0;
  }
  25% {
    filter: blur(5px);
    font-variation-settings: "wght" 300;
    opacity: 0.125;
  }
  100% {
    filter: blur(0px);
    font-variation-settings: "wght" 800;
    opacity: 0.6;
  }
}
@keyframes blur-in {
  0% {
    filter: blur(9px);
    opacity: 0;
  }
  100% {
    filter: blur(0px);
    opacity: 1;
  }
}
.bg-1 {
  background-color: rgb(115, 141, 114) !important;
  color: rgb(250, 250, 250);
}
.bg-1 .maf-content > *:not(.button) {
  color: rgb(250, 250, 250);
}
.bg-1 .maf-content a:not(.button) {
  color: rgb(115, 141, 114);
}
.bg-1 .maf-content a:not(.button):hover, .bg-1 .maf-content a:not(.button).focus {
  color: rgb(250, 250, 250);
}
.bg-1 .maf-content hr {
  border-color: rgb(250, 250, 250);
}

.bg-2 {
  background-color: rgb(71, 79, 71) !important;
  color: rgb(250, 250, 250);
}
.bg-2 .maf-content > *:not(.button) {
  color: rgb(250, 250, 250);
}
.bg-2 .maf-content a:not(.button) {
  color: rgb(115, 141, 114);
}
.bg-2 .maf-content a:not(.button):hover, .bg-2 .maf-content a:not(.button).focus {
  color: rgb(250, 250, 250);
}
.bg-2 .maf-content hr {
  border-color: rgb(250, 250, 250);
}

.bg-3 {
  background-color: rgb(60, 60, 60) !important;
  color: rgb(250, 250, 250);
}
.bg-3 .maf-content > *:not(.button) {
  color: rgb(250, 250, 250);
}
.bg-3 .maf-content a:not(.button) {
  color: rgb(115, 141, 114);
}
.bg-3 .maf-content a:not(.button):hover, .bg-3 .maf-content a:not(.button).focus {
  color: rgb(250, 250, 250);
}
.bg-3 .maf-content hr {
  border-color: rgb(250, 250, 250);
}

.bg-4 {
  background-color: rgb(71, 79, 71) !important;
  color: rgb(250, 250, 250);
}
.bg-4 .maf-content > *:not(.button) {
  color: rgb(250, 250, 250);
}
.bg-4 .maf-content a:not(.button) {
  color: rgb(115, 141, 114);
}
.bg-4 .maf-content a:not(.button):hover, .bg-4 .maf-content a:not(.button).focus {
  color: rgb(250, 250, 250);
}
.bg-4 .maf-content hr {
  border-color: rgb(250, 250, 250);
}

.bg-5 {
  background-color: rgb(180, 180, 180);
}

.bg-6 {
  animation: bgcolourfade 90s infinite;
  color: rgb(48, 70, 107);
}
.bg-6 .maf-content * {
  color: rgb(48, 70, 107);
}
.bg-6 .maf-content hr {
  border-color: rgb(48, 70, 107);
}
.bg-6 .maf-content a.button {
  background-color: transparent;
  border-color: rgb(48, 70, 107);
  color: rgb(48, 70, 107);
}
.bg-6 .maf-content a.button:hover {
  background-color: rgb(48, 70, 107);
  color: rgb(250, 250, 250);
}

.maf-background.white {
  background-color: white;
}
.maf-background.glass {
  background-color: rgba(255, 255, 255, 0.95);
}
@supports ((-webkit-backdrop-filter: blur(5px)) or (backdrop-filter: blur(5px))) {
  .maf-background.glass {
    background-color: rgba(255, 255, 255, 0.6);
    -webkit-backdrop-filter: blur(9px);
            backdrop-filter: blur(9px);
  }
}
.maf-background.slant {
  -webkit-clip-path: polygon(0 50%, 100% 23%, 100% 100%, 0 100%);
          clip-path: polygon(0 50%, 100% 23%, 100% 100%, 0 100%);
}

.is-nav-dock {
  height: 10rem;
  transition: height 300ms ease-out;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  .is-nav-dock {
    height: 20rem;
  }
}
.is-nav-dock.hero-under-nav {
  left: 0;
  position: absolute;
  top: 0;
}

#sub-nav-dock {
  height: 8.7rem;
  width: 100%;
}
#sub-nav-dock #sub-nav {
  background-color: rgb(180, 180, 180);
  height: 8.7rem;
  position: relative;
  transition: all 300ms ease-out;
}
#sub-nav-dock #sub-nav #sub-logo {
  align-items: center;
  color: rgb(250, 250, 250);
  display: flex;
  height: 40%;
  left: 1.5rem;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
#sub-nav-dock #sub-nav #sub-logo a {
  display: inline-block;
  height: 100%;
  padding-right: 1rem;
}
#sub-nav-dock #sub-nav #sub-logo a img {
  height: 100%;
  transition: height 300ms ease-out;
  width: auto;
}
#sub-nav-dock #sub-nav #sub-logo span {
  display: inline-block;
  font-family: "Quicksand", sans-serif;
  font-size: 1.8rem;
  line-height: 1;
  text-transform: uppercase;
}
@media only screen and (min-width: 1152px) {
  #sub-nav-dock #sub-nav #sub-logo span {
    font-size: 2.4rem;
    margin-top: 0.6rem;
  }
}
@media only screen and (min-width: 1152px) {
  #sub-nav-dock #sub-nav #sub-logo {
    height: 60%;
  }
}
#sub-nav-dock #sub-nav #ticket-link {
  height: 3rem;
  position: absolute;
  right: 1.5rem;
  top: 50%;
  transform: translate(0, -50%);
  transition: height 300ms ease-out;
}
#sub-nav-dock #sub-nav #ticket-link a.button {
  background-color: rgb(250, 250, 250);
  border-color: rgb(250, 250, 250);
  color: rgb(180, 180, 180);
  font-size: 1.8rem;
  height: 100%;
  transition: all 300ms ease-out;
}
#sub-nav-dock #sub-nav #ticket-link a.button:hover {
  color: rgb(30, 30, 30);
  box-shadow: 0.6rem 0.6rem 0.4rem 0 rgba(0, 0, 0, 0.15);
}
@media only screen and (min-width: 1024px) {
  #sub-nav-dock #sub-nav #ticket-link {
    left: 50%;
    right: auto;
    transform: translate(-50%, -50%);
  }
}
@media only screen and (min-width: 1152px) {
  #sub-nav-dock #sub-nav #ticket-link {
    height: 5.7rem;
  }
  #sub-nav-dock #sub-nav #ticket-link a.button {
    font-size: 2.2rem;
  }
}
#sub-nav-dock #sub-nav #sub {
  right: 1.5rem;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
#sub-nav-dock #sub-nav #sub .is-burger {
  height: 4rem;
  right: -0.5rem;
  top: 50%;
  transform: translateY(-50%);
  width: 4rem;
}
#sub-nav-dock #sub-nav #sub.is-mobile {
  height: 100%;
}
#sub-nav-dock #sub-nav #sub.is-mobile .is-burger {
  display: none;
  visibility: hidden;
}
#sub-nav-dock #sub-nav #sub.is-mobile.maf-3 .links {
  display: none;
}
#sub-nav-dock #sub-nav #sub.is-mobile.maf-3 .links.active {
  display: none;
}
#sub-nav-dock #sub-nav #sub.is-web .is-burger {
  display: none;
}
#sub-nav-dock #sub-nav #sub.is-web > div .links > ul > li > a {
  text-transform: none;
}
@media only screen and (min-width: 1152px) {
  #sub-nav-dock #sub-nav #sub.is-web > div .links > ul > li > a {
    text-transform: uppercase;
  }
}
#sub-nav-dock #sub-nav.stuck {
  box-shadow: 0 0.6rem 0.6rem 0 rgba(0, 0, 0, 0.2);
  height: 5rem;
  left: 0;
  position: fixed;
  top: 5rem;
  z-index: 100;
}
#sub-nav-dock #sub-nav.stuck #sub-logo span {
  font-size: 1.8rem;
  margin: 0;
}
#sub-nav-dock #sub-nav.stuck #ticket-link {
  height: 3.5rem;
}

.is-main-header {
  align-items: center;
  align-content: center;
  background-color: rgb(115, 141, 114);
  color: rgb(250, 250, 250);
  display: flex;
  height: 10rem;
  justify-content: center;
  transform: translateZ(0);
  transition: all 300ms ease-out;
  width: 100%;
  z-index: 666;
}
@media only screen and (min-width: 768px) {
  .is-main-header {
    height: 20rem;
  }
}
.is-main-header.is-fixed {
  left: 0;
  position: fixed;
  top: 0;
  transform: translateZ(0);
}
.is-main-header > div.h-con {
  align-items: center;
  align-content: center;
  display: flex;
  flex-direction: row;
  height: 100%;
  justify-content: space-between;
  margin-left: auto;
  margin-right: auto;
  max-width: 160rem;
  position: relative;
  text-align: center;
  width: 100vw;
}
.is-main-header > div.h-con .ui-con {
  display: flex;
  flex: 0 1 auto;
  height: 100%;
  justify-content: space-between;
  line-height: 0;
  margin: 0;
  max-height: 100%;
  min-height: 3rem;
  padding: 0 1.5rem;
  position: relative;
  text-align: center;
  transition: all 300ms ease-out;
  width: auto;
  z-index: 100;
}
@media only screen and (min-width: 576px) {
  .is-main-header > div.h-con .ui-con {
    padding: 1rem 4rem;
  }
}
.is-main-header > div.h-con .ui-con .company-brand {
  align-items: center;
  align-content: center;
  cursor: pointer;
  display: inline-flex;
  flex: 1 1 auto;
  font-family: "DM Sans", sans-serif;
  font-variation-settings: "wght" 400;
  font-size: clamp(1.8rem, 3.4vw, 2.5rem);
  height: 100%;
  line-height: 1;
  max-width: 100%;
  opacity: 1;
  position: relative;
  text-align: left;
  text-decoration: none;
  transition: all 300ms linear;
  white-space: nowrap;
  width: auto;
  z-index: 102;
}
.is-main-header > div.h-con .ui-con .company-brand:hover, .is-main-header > div.h-con .ui-con .company-brand:focus {
  font-variation-settings: "wght" 700;
}
.is-main-header > div.h-con .ui-con .company-brand #logo, .is-main-header > div.h-con .ui-con .company-brand svg {
  display: block;
  flex: 1 1 auto;
  height: 100%;
  max-height: 12rem;
  max-width: 100%;
  opacity: 1;
  transform: scale(1);
  transition: opacity 600ms ease-out 600ms, height 300ms linear;
  width: auto;
}
.is-main-header > div.h-con .ui-con .company-brand #maf-strap {
  color: rgb(30, 30, 30);
  display: inline-block;
  font-family: "Roboto Slab", serif;
  font-size: 2rem;
  font-weight: 600;
  line-height: 1;
  text-transform: uppercase;
  white-space: nowrap;
}
@media only screen and (min-width: 576px) {
  .is-main-header > div.h-con .ui-con .company-brand #maf-strap {
    font-size: 3rem;
  }
}
.is-main-header > div.h-con .n-con {
  align-content: center;
  align-items: center;
  background-color: transparent;
  display: flex;
  flex: 1 1 auto;
  flex-direction: row-reverse;
  flex-wrap: wrap;
  justify-content: flex-start;
  padding: 1rem 1.5rem;
  transition: opacity 300ms ease-out 500ms;
  width: auto;
  z-index: 101;
}
@media only screen and (min-width: 576px) {
  .is-main-header > div.h-con .n-con {
    padding: 1rem 3rem;
  }
}
.is-main-header > div.h-con #header-ui {
  align-items: flex-start;
  color: inherit;
  display: flex;
  font-family: "Quicksand", sans-serif;
  font-size: 1.8rem;
  justify-content: flex-end;
  line-height: 0;
  margin: auto 0 auto 1rem;
  max-width: 160rem;
  opacity: 1;
  padding: 0;
  position: relative;
  transition: top 300ms ease-out, opacity 1200ms ease-out;
  width: auto;
  z-index: 777;
}
.is-main-header > div.h-con #header-ui a {
  text-decoration: none;
}
.is-main-header > div.h-con #header-ui .phone {
  color: rgb(250, 250, 250);
  font-size: 2.2rem;
  line-height: 1;
  padding: 1rem 1.5rem 0 1.5rem;
  position: relative;
  white-space: nowrap;
  z-index: 200;
}
.is-main-header > div.h-con #header-ui .phone span {
  color: rgb(71, 79, 71);
  display: none;
}
@media only screen and (min-width: 576px) {
  .is-main-header > div.h-con #header-ui .phone span {
    display: inline;
  }
}
.is-main-header > div.h-con #header-ui .icons {
  text-align: right;
}
.is-main-header > div.h-con #header-ui .icons hr.show-mobile {
  border: 0;
  height: 0;
  margin: 0;
  max-width: none;
}
@media only screen and (min-width: 768px) {
  .is-main-header > div.h-con #header-ui .icons hr.show-mobile {
    display: none;
  }
}
.is-main-header > div.h-con #header-ui-alt {
  opacity: 1;
  text-align: left;
  transition: all 300ms ease-out;
}
@media only screen and (min-width: 576px) {
  .is-main-header > div.h-con #header-ui-alt {
    left: 3rem;
  }
}
.is-main-header > div.h-con #site-nav {
  flex: 1 0 auto;
  flex-direction: row;
  margin: 0;
  padding: 0;
  width: auto;
}
.is-main-header > div.h-con #mobile-burger {
  margin-right: 1.5rem;
}
.is-main-header > div.h-con #dash-links {
  display: inline-block;
  flex: 0 0 auto;
  position: relative;
  width: 16rem;
}
.is-main-header > div.h-con #dash-links .button {
  border-bottom: 0;
  max-width: none;
  position: relative;
  z-index: 2;
}
.is-main-header > div.h-con #dash-links #dash-links-drop {
  background-color: rgb(250, 250, 250);
  border: 0.2rem solid rgb(30, 30, 30);
  box-shadow: 0 1.3rem 2.7rem rgba(0, 0, 0, 0.2);
  display: none;
  font-size: 1.6rem;
  left: 0;
  line-height: 1;
  position: absolute;
  text-align: right;
  top: 3.4rem;
  width: 100%;
  z-index: 1;
}
.is-main-header > div.h-con #dash-links #dash-links-drop a {
  color: rgb(30, 30, 30);
  display: inline-block;
  font-weight: 400;
  outline: none;
  padding: 0.7rem 1rem;
  text-decoration: none;
  width: 100%;
}
.is-main-header > div.h-con #dash-links #dash-links-drop a:hover, .is-main-header > div.h-con #dash-links #dash-links-drop a:focus {
  background-color: rgb(30, 30, 30);
  color: rgb(250, 250, 250);
}
@media only screen and (min-width: 1024px) {
  .is-main-header.menu-split > div.h-con .ui-con .company-brand {
    display: none;
  }
}
.is-main-header.menu-split > div.h-con .n-con {
  justify-content: center;
}
.is-main-header.menu-split > div.h-con .n-con .maf-acc-menu #menu-con ul.nav > li.home-link {
  display: none;
  line-height: 1;
}
@media only screen and (min-width: 1024px) {
  .is-main-header.menu-split > div.h-con .n-con .maf-acc-menu #menu-con ul.nav > li.home-link {
    display: inline-block;
  }
}
.is-main-header.menu-split > div.h-con .n-con .maf-acc-menu #menu-con ul.nav > li.home-link a svg {
  display: inline-block;
}
.is-main-header.menu-split > div.h-con .n-con .maf-acc-menu #menu-con ul.nav > li.home-link a svg path {
  fill: #fff;
  transition: fill 300ms ease-out;
}
@media only screen and (min-width: 1024px) {
  .is-main-header.menu-split > div.h-con .n-con .maf-acc-menu #menu-con ul.nav > li.home-link-mob {
    display: none;
  }
}
@media only screen and (min-width: 1280px) {
  .is-main-header.menu-split > div.h-con .n-con .maf-acc-menu.dtop-view .nav > li {
    min-width: 14rem;
  }
}
.is-main-header.menu-split > div.h-con .n-con .maf-acc-menu.dtop-view .nav > li:nth-child(2) {
  margin-left: auto;
}
.is-main-header.menu-split > div.h-con .n-con .maf-acc-menu.dtop-view .nav > li.home-link {
  margin: 0 auto;
}
.is-main-header.menu-split > div.h-con .n-con .maf-acc-menu.dtop-view .nav > li:last-child {
  margin-right: auto;
}
.is-main-header.squish {
  height: 10rem;
}

section .header .maf-content {
  align-items: flex-start;
  text-align: left;
}
section.is-hero {
  background-color: rgb(30, 30, 30);
  background-image: linear-gradient(-15deg, rgb(15, 15, 15), rgb(30, 30, 30), rgb(60, 60, 60));
  color: rgb(250, 250, 250);
  font-size: 2.4rem;
  min-height: 60rem;
  position: relative;
  transition: min-height 300ms ease-out, opacity 300ms ease-out 300ms;
}
section.is-hero h1, section.is-hero .h1-style {
  margin-bottom: 0.25em;
}
section.is-hero #hero-logo {
  display: none;
  margin: auto;
  transition: all 300ms ease-out;
}
section.is-hero #hero-logo p {
  display: inline-block;
}
section.is-hero > .maf-background {
  transition: all 300ms ease-out;
}
section.is-hero > .maf-bg-overlay {
  pointer-events: none;
}
section.is-hero .row {
  flex-direction: column;
  transition: opacity 300ms ease-out;
}
@media only screen and (min-width: 1080px) {
  section.is-hero .row {
    flex-direction: row;
    flex-wrap: wrap;
  }
}
section.is-hero .row a, section.is-hero .row .button {
  pointer-events: auto;
}
section.is-hero .row .column {
  align-items: flex-start;
  justify-content: center;
  text-align: left;
  width: 100%;
}
@media only screen and (min-width: 1080px) {
  section.is-hero .row .column {
    width: 50%;
  }
}
section.is-hero .row .column .maf-content {
  perspective: 60px;
}
section.is-hero .row .column.maf-col-1 p {
  max-width: 55rem;
}
section.is-hero .row .column.maf-col-1 .maf-content {
  background-color: rgba(0, 0, 0, 0.5);
  margin-bottom: 10vh;
  max-width: 100vw;
  padding: 20px;
}
@media only screen and (min-width: 1080px) {
  section.is-hero .row .column.maf-col-1 .maf-content {
    max-width: 50vw;
  }
}
body.is-home section.is-hero .row .column {
  justify-content: flex-end;
}
body.is-home section.is-hero.animate .row .column.maf-col-1 {
  filter: grayscale(0%);
  opacity: 1;
  transform: translateY(0);
}
body.is-home section.is-hero.below-nav {
  min-height: calc( 100vh - 10rem);
}
@media only screen and (min-width: 768px) {
  body.is-home section.is-hero.below-nav {
    min-height: calc( 100vh - 20rem);
  }
}
body.is-home section.is-hero.below-nav.squish {
  min-height: calc( 100vh - 10rem );
}
body.manageable-bo section.is-hero > .maf-background {
  margin: 0;
}
body.manageable-bo section.is-hero .row {
  padding-top: 0;
  pointer-events: auto;
}
section.is-hero.slideshow > .maf-background {
  background-image: none;
}
section.is-hero.slideshow .flickity-slideshow, section.is-hero.slideshow .flickity-slideshow-edit {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 10;
}
section.is-hero.slideshow .flickity-slideshow .ss-slide, section.is-hero.slideshow .flickity-slideshow-edit .ss-slide {
  align-items: center;
  display: flex;
  height: 100%;
  justify-content: center;
  overflow: hidden;
  width: 100%;
}
section.is-hero.slideshow .flickity-slideshow .ss-slide .maf-background, section.is-hero.slideshow .flickity-slideshow-edit .ss-slide .maf-background {
  opacity: 0.5;
}
section.is-hero.slideshow .flickity-slideshow .ss-slide .maf-content, section.is-hero.slideshow .flickity-slideshow-edit .ss-slide .maf-content {
  align-content: center;
  align-items: center;
  max-width: 160rem;
  padding: 3rem 1.5rem;
  position: relative;
  text-align: center;
}
@media only screen and (min-width: 576px) {
  section.is-hero.slideshow .flickity-slideshow .ss-slide .maf-content, section.is-hero.slideshow .flickity-slideshow-edit .ss-slide .maf-content {
    padding: 3rem;
  }
}
section.is-hero.slideshow .flickity-slideshow .ss-slide .maf-content > *, section.is-hero.slideshow .flickity-slideshow-edit .ss-slide .maf-content > * {
  opacity: 0;
  transform: translateX(5rem);
  transition: all 600ms ease-out;
}
section.is-hero.slideshow .flickity-slideshow .ss-slide .maf-content > *:nth-child(1), section.is-hero.slideshow .flickity-slideshow-edit .ss-slide .maf-content > *:nth-child(1) {
  transition-delay: 250ms;
}
section.is-hero.slideshow .flickity-slideshow .ss-slide .maf-content > *:nth-child(2), section.is-hero.slideshow .flickity-slideshow-edit .ss-slide .maf-content > *:nth-child(2) {
  transition-delay: 500ms;
}
section.is-hero.slideshow .flickity-slideshow .ss-slide .maf-content > *:nth-child(3), section.is-hero.slideshow .flickity-slideshow-edit .ss-slide .maf-content > *:nth-child(3) {
  transition-delay: 750ms;
}
section.is-hero.slideshow .flickity-slideshow .ss-slide .maf-content > *:nth-child(4), section.is-hero.slideshow .flickity-slideshow-edit .ss-slide .maf-content > *:nth-child(4) {
  transition-delay: 1000ms;
}
section.is-hero.slideshow .flickity-slideshow .ss-slide .maf-content > *:nth-child(5), section.is-hero.slideshow .flickity-slideshow-edit .ss-slide .maf-content > *:nth-child(5) {
  transition-delay: 1250ms;
}
section.is-hero.slideshow .flickity-slideshow .ss-slide .maf-content > *:nth-child(6), section.is-hero.slideshow .flickity-slideshow-edit .ss-slide .maf-content > *:nth-child(6) {
  transition-delay: 1500ms;
}
section.is-hero.slideshow .flickity-slideshow .ss-slide .maf-content > *:nth-child(7), section.is-hero.slideshow .flickity-slideshow-edit .ss-slide .maf-content > *:nth-child(7) {
  transition-delay: 1750ms;
}
section.is-hero.slideshow .flickity-slideshow .ss-slide .maf-content > *:nth-child(8), section.is-hero.slideshow .flickity-slideshow-edit .ss-slide .maf-content > *:nth-child(8) {
  transition-delay: 2000ms;
}
section.is-hero.slideshow .flickity-slideshow .ss-slide .maf-content > *:nth-child(9), section.is-hero.slideshow .flickity-slideshow-edit .ss-slide .maf-content > *:nth-child(9) {
  transition-delay: 2250ms;
}
section.is-hero.slideshow .flickity-slideshow .ss-slide.is-selected .maf-content > *, section.is-hero.slideshow .flickity-slideshow-edit .ss-slide.is-selected .maf-content > * {
  opacity: 1;
  transform: translateX(0);
}
section.is-hero.slideshow .flickity-slideshow .flickity-page-dots, section.is-hero.slideshow .flickity-slideshow-edit .flickity-page-dots {
  bottom: 5px;
}
@media only screen and (min-width: 576px) {
  section.is-hero.slideshow .flickity-slideshow .flickity-page-dots, section.is-hero.slideshow .flickity-slideshow-edit .flickity-page-dots {
    bottom: 10%;
  }
}
section.is-hero.slideshow .flickity-slideshow .flickity-page-dots .dot, section.is-hero.slideshow .flickity-slideshow-edit .flickity-page-dots .dot {
  background: rgba(255, 255, 255, 0.4);
}
section.is-hero.slideshow .flickity-slideshow .flickity-page-dots .dot::before, section.is-hero.slideshow .flickity-slideshow-edit .flickity-page-dots .dot::before {
  background-color: white;
}
section.is-hero.blog-feature .row .column.maf-col-2 .maf-content.feature {
  background-color: rgba(30, 30, 30, 0.5);
  border: 1px solid currentColor;
  font-size: 2.2rem;
  padding: 2rem 3rem;
}
section.is-hero.blog-feature .row .column.maf-col-2 .maf-content.feature p.label {
  color: rgb(71, 79, 71);
  margin-bottom: 0.2em;
}
section.is-hero.blog-feature .row .column.maf-col-2 .maf-content.feature p.date {
  font-size: 1.2rem;
  margin-bottom: 0.6em;
}
section.is-hero.blog-feature .row .column.maf-col-2 .maf-content.feature p.title {
  font-size: 3.4rem;
  line-height: 1.2;
  margin-bottom: 0.5em;
}
section.is-hero.blog-feature .row .column.maf-col-2 .maf-content.feature p .button {
  margin-bottom: 1rem;
}
section.one-column p {
  max-width: 85rem;
}
section.one-column p.h1-style, section.one-column p.h2-style, section.one-column p.h3-style, section.one-column p.h4-style, section.one-column p.h5-style, section.one-column p.h6-style {
  max-width: none;
}
section.one-column .row .column {
  justify-content: center;
  text-align: center;
}
section.one-column .row .column .maf-content {
  align-items: center;
}
section.one-column.brands {
  min-height: 20rem;
}
section.one-column.brands .row .column {
  padding-top: 3.5rem;
  padding-bottom: 3.5rem;
}
section.one-column.brands .row .column .maf-content {
  align-items: center;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  text-align: left;
  margin: 0 -1.5rem;
  width: calc(100% + 3rem);
}
section.one-column.brands .row .column .maf-content h1, section.one-column.brands .row .column .maf-content .h1-style, section.one-column.brands .row .column .maf-content h2, section.one-column.brands .row .column .maf-content .h2-style, section.one-column.brands .row .column .maf-content h3, section.one-column.brands .row .column .maf-content .h3-style, section.one-column.brands .row .column .maf-content h4, section.one-column.brands .row .column .maf-content .h4-style, section.one-column.brands .row .column .maf-content h5, section.one-column.brands .row .column .maf-content .h5-style, section.one-column.brands .row .column .maf-content h6.h6-style {
  padding: 0.5rem 1.5rem;
}
section.one-column.brands .row .column .maf-content p {
  flex: 0 1 auto;
  margin: 0;
  max-width: none;
  padding: 0.5rem 1.5rem;
  width: auto;
}
section.one-column.bg-right .maf-background {
  background-position: right;
}
section.one-column.bg-right .row .column {
  align-items: center;
  justify-content: flex-start;
  text-align: left;
}
section.one-column.bg-right .row .column .maf-content {
  align-items: flex-start;
  max-width: 60rem;
}
section.one-column.bg-left .maf-background {
  background-position: right;
}
section.one-column.bg-left .row .column {
  justify-content: center;
  text-align: left;
}
@media only screen and (min-width: 1024px) {
  section.one-column.bg-left .row .column {
    align-items: flex-end;
  }
}
section.one-column.bg-left .row .column .maf-content {
  align-items: flex-start;
  max-width: 60rem;
}
section.one-column.video .row {
  max-width: none;
  padding: 0;
}
section.one-column.video .row .column {
  padding: 0;
}
section.one-column.video .row .column .maf-content {
  max-width: none;
}
section.one-column.vidpop .row .column {
  padding-top: 0;
}
section.one-column.map-embed {
  background-color: lightgrey;
  position: relative;
}
section.one-column.map-embed .row {
  max-width: none;
  padding: 0;
  position: static;
}
section.one-column.map-embed .row .column {
  padding: 0;
  position: static;
}
section.one-column.map-embed .row .column .maf-content {
  aspect-ratio: 1/0.375;
  padding: 0;
  position: static;
}
section.one-column.map-embed .row .column .maf-content iframe, section.one-column.map-embed .row .column .maf-content .mce-preview-object {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
section.one-column.callout .maf-background {
  opacity: 0.5;
}
section.one-column.callout .row .column .maf-content {
  padding: 50px 0;
}
section.one-column.boxed-content .row .maf-content {
  background: rgba(250, 250, 250, 0.6);
  background-image: radial-gradient(-15deg, rgba(220, 220, 220, 0.5), rgba(250, 250, 250, 0.6), rgba(255, 255, 255, 0.7));
  -webkit-backdrop-filter: blur(5px);
          backdrop-filter: blur(5px);
  border-radius: 1.6rem;
  max-width: 90rem;
  padding: 5%;
}
section.two-column .row {
  padding-top: 6rem;
}
@media only screen and (min-width: 768px) {
  section.two-column .row {
    padding-top: 10rem;
  }
}
section.two-column .row .column {
  padding: 6rem 1.5rem;
  padding-top: 0;
  justify-content: flex-start;
}
@media only screen and (min-width: 960px) {
  section.two-column .row .column {
    padding: 10rem 1.5rem;
    padding-top: 0;
  }
}
@media only screen and (min-width: 1024px) {
  section.two-column .row .column {
    align-items: flex-start;
  }
}
section.two-column .row .column .maf-content {
  align-items: flex-start;
}
section.two-column.vertical-center .row .column {
  justify-content: center;
}
section.two-column.full-width .row {
  max-width: none;
  padding: 0;
}
section.two-column.maf-col-bg-full {
  padding: 0;
}
section.two-column.maf-col-bg-full > .maf-background {
  background-position: bottom center;
  background-size: contain;
  opacity: 0.7;
}
section.two-column.maf-col-bg-full .row {
  max-width: none;
  padding: 0;
}
section.two-column.maf-col-bg-full .row .column {
  padding: 6rem 1.5rem;
}
@media only screen and (min-width: 960px) {
  section.two-column.maf-col-bg-full .row .column {
    padding: 10rem 1.5rem;
  }
}
section.two-column.maf-col-bg-full .row .column.has-bg {
  min-height: 60rem;
}
section.two-column.maf-col-bg-full .row .column .maf-col-i {
  align-items: center;
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  justify-content: center;
  position: relative;
  width: 100%;
}
@media only screen and (min-width: 576px) {
  section.two-column.maf-col-bg-full .row .column .maf-col-i {
    padding: 0 1.5rem;
  }
}
@media only screen and (min-width: 1024px) {
  section.two-column.maf-col-bg-full .row .column .maf-col-i {
    max-width: 69rem;
  }
}
@media only screen and (min-width: 1024px) {
  section.two-column.maf-col-bg-full .row .column.maf-col-1 {
    align-items: flex-end;
  }
}
@media only screen and (min-width: 1024px) {
  section.two-column.maf-col-bg-full .row .column.maf-col-2 {
    align-items: flex-start;
  }
}
section.two-column.maf-col-bg-full.has-bg .row {
  padding-bottom: 6rem;
}
@media only screen and (min-width: 1024px) {
  section.two-column.maf-col-bg-full.has-bg .row {
    padding-bottom: 10rem;
  }
}
section.two-column.maf-rep-pad .row {
  padding: 0;
  padding-top: 6rem;
}
@media only screen and (min-width: 576px) {
  section.two-column.maf-rep-pad .row {
    padding: 0 2.5rem;
    padding-top: 10rem;
  }
}
section.two-column.maf-rep-pad .row .header .maf-content {
  padding-top: 0;
  padding-bottom: 6rem;
}
section.two-column.maf-rep-pad .row .column {
  padding: 6rem 1.5rem;
  padding-top: 0;
}
@media only screen and (min-width: 960px) {
  section.two-column.maf-rep-pad .row .column {
    padding: 10rem 1.5rem;
    padding-top: 0;
  }
}
section.two-column.col-bgs:not(.maf-col-bg-full) .row {
  padding: 0;
}
@media only screen and (min-width: 576px) {
  section.two-column.col-bgs:not(.maf-col-bg-full) .row {
    padding: 0 2.5rem;
  }
}
section.two-column.col-bgs:not(.maf-col-bg-full) .row .column {
  padding: 6rem 1.5rem;
}
@media only screen and (min-width: 960px) {
  section.two-column.col-bgs:not(.maf-col-bg-full) .row .column {
    padding: 10rem 1.5rem;
  }
}
section.two-column.col-bgs:not(.maf-col-bg-full) .row .column .maf-content {
  padding: 0;
}
@media only screen and (min-width: 576px) {
  section.two-column.col-bgs:not(.maf-col-bg-full) .row .column .maf-content {
    padding: 0 2.5rem;
  }
}
section.two-column.vidpop .row {
  padding: 0;
  max-width: 160rem;
}
@media only screen and (min-width: 576px) {
  section.two-column.vidpop .row {
    padding: 0 2.5rem;
  }
}
section.two-column.vidpop .row .header {
  padding-top: 0;
}
section.two-column.vidpop .row .header .maf-content {
  align-items: flex-start;
  border-top: 0.1rem solid rgb(0, 0, 0);
  padding-top: 6rem;
  padding-bottom: 3rem;
  text-align: left;
}
@media only screen and (min-width: 960px) {
  section.two-column.vidpop .row .header .maf-content {
    padding-top: 10rem;
  }
}
section.two-column.vidpop .row .column {
  padding: 6rem 1.5rem;
  padding-top: 0;
  justify-content: flex-start;
}
@media only screen and (min-width: 960px) {
  section.two-column.vidpop .row .column {
    padding: 10rem 1.5rem;
    padding-top: 0;
  }
}
section.two-column.vidpop .row .column .maf-content {
  padding: 0;
}
section.two-column.vidpop .row .column .maf-content.video {
  height: 100%;
}
section.two-column.vidpop .row .column .maf-content.video .vid-pop {
  height: 100%;
}
section.divider .row {
  max-width: 160rem;
}
section.page-content-section .is-simple-gallery {
  margin-bottom: 20px;
}
section.page-content-section .is-simple-gallery figure figcaption {
  display: none;
}
section.page-content-section div.cardbox article.card {
  width: 100%;
}
@media only screen and (min-width: 576px) {
  section.page-content-section div.cardbox article.card {
    width: 50%;
  }
}
@media only screen and (min-width: 1024px) {
  section.page-content-section div.cardbox article.card {
    width: 100%;
  }
}
section.page-content-section .header .maf-content {
  align-items: flex-start;
  color: rgb(30, 30, 30);
  text-align: left;
}
section.page-content-section .row {
  padding: 0;
  padding-top: 6rem;
}
@media only screen and (min-width: 576px) {
  section.page-content-section .row {
    padding: 0 2.5rem;
    padding-top: 10rem;
  }
}
section.page-content-section .row .header .maf-content {
  padding-top: 0;
  padding-bottom: 6rem;
}
section.page-content-section .row .column {
  align-items: center;
  padding: 6rem 1.5rem;
  padding-top: 0;
  text-align: left;
}
@media only screen and (min-width: 960px) {
  section.page-content-section .row .column {
    padding: 10rem 1.5rem;
    padding-top: 0;
  }
}
section.page-content-section .row .column .maf-content ul.big-list {
  margin-top: 20px;
}
section.page-content-section .row .column .maf-content ul.big-list li {
  font-size: 2.4rem;
  margin-bottom: 30px;
}
section.page-content-section .row .column .maf-content ul.big-list li::before {
  top: 10px;
}
section.page-content-section.maf-h-h .row {
  padding-top: 1.2em;
}
section.portal-section.is-slider .flickity-slideshow {
  margin: 0 -1.5rem;
  width: calc(100% + 3rem);
}
section.portal-section.is-slider .flickity-slideshow .card {
  display: flex;
  flex: 0 0 auto;
  justify-content: center;
  margin-bottom: 0;
  min-height: 100%;
  padding: 0 1.5rem;
  width: 100%;
  z-index: 1;
}
@media only screen and (min-width: 768px) {
  section.portal-section.is-slider .flickity-slideshow .card {
    width: 50%;
  }
}
@media only screen and (min-width: 1280px) {
  section.portal-section.is-slider .flickity-slideshow .card {
    width: 33.333%;
  }
}
@media only screen and (min-width: 1440px) {
  section.portal-section.is-slider .flickity-slideshow .card {
    width: 25%;
  }
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item {
  background-color: rgb(250, 250, 250);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  border: 1px solid rgb(242, 242, 242);
  color: rgb(135, 82, 181);
  cursor: pointer;
  display: inline-block;
  font-size: 1.6rem;
  font-weight: 600;
  height: 100%;
  overflow: visible;
  opacity: 1;
  max-width: 320px;
  position: relative;
  text-align: center;
  text-decoration: none;
  transform: scale(1);
  transition: all 300ms ease-out;
  width: 100%;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: center;
  min-height: 544px;
  position: relative;
  transition: all 300ms ease-out;
  width: 100%;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .card-cats {
  color: rgb(30, 30, 30);
  display: inline-block;
  font-size: 1.4rem;
  font-weight: 700;
  padding-top: 15px;
  text-transform: uppercase;
  z-index: 1;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .tn {
  display: inline-block;
  flex: 0 0 auto;
  overflow: hidden;
  position: relative;
  transition: all 300ms ease-out;
  width: 100%;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .tn .tn-img {
  height: 100%;
  margin: 0 auto;
  -o-object-fit: cover;
     object-fit: cover;
  transform: scale(1);
  transform-origin: center;
  transition: all 600ms ease-out;
  width: 100%;
  z-index: 0;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .tn .maf-na {
  align-items: center;
  display: inline-flex;
  flex-direction: column;
  justify-content: center;
  left: 0;
  height: 100%;
  font-size: 2rem;
  padding: 20px;
  position: absolute;
  top: 0;
  width: 100%;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .tn .maf-na span, section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .tn .maf-na i {
  display: inline-block;
  flex: 0 0 auto;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .tn .maf-na span {
  text-align: center;
  width: 100%;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .tn .maf-na i {
  font-size: 2em;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .tn.no-img .maf-na {
  position: static;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .tn.square::after, section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .tn.fourthree::after, section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .tn.custom::after, section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .tn.show-all::after {
  content: "";
  display: table;
  padding-bottom: 100%;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .tn.square .tn-img, section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .tn.fourthree .tn-img, section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .tn.custom .tn-img, section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .tn.show-all .tn-img {
  left: 0;
  position: absolute;
  top: 0;
  transform: scale(1);
  min-width: 100%;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .tn.fourthree::after {
  padding-bottom: 75%;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .tn.static {
  overflow: visible;
  position: static;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .tn.static .tn-img {
  height: auto;
  max-width: 100%;
  -o-object-fit: scale-down;
     object-fit: scale-down;
  transform-origin: center bottom;
  width: auto;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .tn.static.no-img {
  min-height: 100px;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .tn.show-all::after {
  padding-bottom: 50%;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .tn.show-all .tn-img {
  -o-object-fit: contain;
     object-fit: contain;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .tn.custom::after {
  padding-bottom: 85%;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .info {
  align-items: center;
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  justify-content: flex-start;
  padding: 15px 20px;
  position: relative;
  transition: all 300ms ease-out;
  width: 100%;
  z-index: 1;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .title {
  align-items: flex-start;
  color: rgb(30, 30, 30);
  display: flex;
  font-family: "DM Sans", sans-serif;
  font-size: 2rem;
  font-weight: 700;
  justify-content: center;
  line-height: 1.1;
  margin: 0;
  padding: 10px 0 3px 0;
  position: relative;
  text-transform: none;
  width: 100%;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .date {
  color: rgb(242, 242, 242);
  display: inline-flex;
  justify-content: center;
  line-height: 1;
  margin: auto 0 0 0;
  overflow: hidden;
  padding: 25px 0 5px;
  width: 100%;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .date time {
  display: inline-block;
  position: relative;
  text-transform: uppercase;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .date i {
  display: none;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .desc {
  color: inherit;
  display: inline-block;
  margin: auto 0 0 0;
  min-height: 130px;
  padding: 15px 0;
  width: 100%;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .desc p {
  margin-bottom: 0;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .attr {
  display: flex;
  margin-top: auto;
  padding: 10px 0;
  width: 100%;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .attr span {
  display: inline-block;
  flex: 1 1 auto;
  line-height: 1.2;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .card-button {
  background-color: transparent;
  border: 2px solid rgb(30, 30, 30);
  border-radius: 30px;
  color: rgb(30, 30, 30);
  font-size: 1.4rem;
  font-weight: 900;
  margin: auto 0 20px 0;
  min-width: 0;
  padding: 10px 20px;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .card-button::after {
  display: none;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item.no-link {
  cursor: default;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item.no-link .portal-content .info .card-button {
  display: none;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item:hover {
  transform: scale(1.01);
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item:hover .portal-content {
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item:hover .portal-content .tn .tn-img {
  transform: scale(1.05);
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item:hover .portal-content .card-button {
  background-color: rgb(30, 30, 30);
  color: white;
}
section.portal-section.is-slider .row {
  padding: 0 1.5rem;
}
@media only screen and (min-width: 576px) {
  section.portal-section.is-slider .row {
    padding: 0 3rem;
  }
}
@media only screen and (min-width: 960px) {
  section.portal-section.is-slider .row {
    padding: 0 3rem;
  }
}
section.blog-section.is-hero .row .column .maf-content .pub-date {
  font-size: 1.4rem;
  font-style: italic;
  font-weight: 600;
  margin: 5px;
  opacity: 0.5;
}
section.blog-section.blog-top-level .header {
  padding-top: 0;
}
section.blog-section.blog-top-level .header .maf-content {
  align-items: center;
  flex-direction: row;
  justify-content: flex-start;
  text-align: left;
}
section.blog-section.blog-top-level .header .maf-content.filters {
  border-top: 0.1rem solid rgb(30, 30, 30);
  border-bottom: 0.1rem solid rgb(30, 30, 30);
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
}
section.blog-section.blog-top-level .header .maf-content p {
  color: rgb(30, 30, 30);
  flex: 0 0 auto;
  font-size: 2rem;
  font-weight: 700;
  padding: 1rem 1rem 1rem 0;
  margin: 0;
  width: auto;
}
section.blog-section.blog-top-level .header .maf-content .cats .fbutton {
  color: rgb(137, 137, 137);
  display: inline-block;
  font-size: 2rem;
  font-weight: 700;
  padding: 1rem 4rem;
}
section.blog-section.blog-top-level .header .maf-content .cats .fbutton:hover, section.blog-section.blog-top-level .header .maf-content .cats .fbutton:focus, section.blog-section.blog-top-level .header .maf-content .cats .fbutton.active {
  color: rgb(30, 30, 30);
}
section.blog-section.blog-top-level .row {
  padding-top: 10rem;
}
section.blog-section.blog-top-level .row .column {
  padding-top: 2rem;
}
section.blog-section.blog-highlight .row .column .maf-content.sub-title, section.blog-section.blog-highlight .row .column .maf-content.lead-article {
  padding: 45px 0;
}
section.blog-section.blog-highlight .row .column .maf-content.sub-title h1::after, section.blog-section.blog-highlight .row .column .maf-content.sub-title .h1-style::after, section.blog-section.blog-highlight .row .column .maf-content.sub-title h2::after, section.blog-section.blog-highlight .row .column .maf-content.sub-title .h2-style::after, section.blog-section.blog-highlight .row .column .maf-content.sub-title h3::after, section.blog-section.blog-highlight .row .column .maf-content.sub-title .h3-style::after, section.blog-section.blog-highlight .row .column .maf-content.sub-title h4::after, section.blog-section.blog-highlight .row .column .maf-content.sub-title .h4-style::after, section.blog-section.blog-highlight .row .column .maf-content.sub-title h5::after, section.blog-section.blog-highlight .row .column .maf-content.sub-title .h5-style::after, section.blog-section.blog-highlight .row .column .maf-content.sub-title h6.h6-style::after, section.blog-section.blog-highlight .row .column .maf-content.lead-article h1::after, section.blog-section.blog-highlight .row .column .maf-content.lead-article .h1-style::after, section.blog-section.blog-highlight .row .column .maf-content.lead-article h2::after, section.blog-section.blog-highlight .row .column .maf-content.lead-article .h2-style::after, section.blog-section.blog-highlight .row .column .maf-content.lead-article h3::after, section.blog-section.blog-highlight .row .column .maf-content.lead-article .h3-style::after, section.blog-section.blog-highlight .row .column .maf-content.lead-article h4::after, section.blog-section.blog-highlight .row .column .maf-content.lead-article .h4-style::after, section.blog-section.blog-highlight .row .column .maf-content.lead-article h5::after, section.blog-section.blog-highlight .row .column .maf-content.lead-article .h5-style::after, section.blog-section.blog-highlight .row .column .maf-content.lead-article h6.h6-style::after {
  background-color: rgb(250, 250, 250);
}
section.blog-section.blog-highlight .row .column .maf-content.sub-title p, section.blog-section.blog-highlight .row .column .maf-content.lead-article p {
  max-width: 510px;
}
section.blog-section.blog-highlight .row .column .maf-content.lead-article {
  align-items: stretch;
  align-content: stretch;
  flex-direction: row;
}
section.blog-section.blog-highlight .row .column .maf-content.lead-article .col {
  display: flex;
  flex: 0 0 auto;
  justify-content: center;
  width: 50%;
}
section.blog-section.blog-highlight .row .column .maf-content.lead-article .col > div {
  align-items: center;
  display: flex;
  flex-direction: column;
}
section.blog-section.blog-highlight .row .column .maf-content.lead-article .col.col1 {
  padding: 0 1.5rem;
}
section.blog-section.blog-highlight .row .column .maf-content.lead-article .col.col1 > div {
  align-items: flex-end;
  max-width: 450px;
  text-align: right;
}
section.blog-section.blog-highlight .row .column .maf-content.lead-article .col.col1 > div h2::after {
  width: 100%;
}
section.blog-section.blog-highlight .row .column .maf-content.lead-article .col.col2 img {
  border: clamp(10px, 0.8125vw, 30px) white solid;
}
section.blog-section.blog-detail {
  padding-top: 10rem;
}
section.blog-section.blog-detail .up-link {
  color: rgb(30, 30, 30);
  font-weight: 700;
  margin-bottom: 0.1em;
}
section.blog-section.blog-detail .blog-title {
  margin: 0;
}
section.blog-section.blog-detail .pub-date {
  color: rgb(180, 180, 180);
  font-weight: 700;
  margin-bottom: 3rem;
}
section.blog-section.blog-detail .blog-bar {
  border-top: 1px solid rgb(242, 242, 242);
  border-bottom: 1px solid rgb(242, 242, 242);
  display: flex;
  margin: 20px 0;
  padding: 20px 0;
  text-align: left;
  width: 100%;
}
section.blog-section.blog-detail .blog-bar > div {
  display: inline-block;
  flex: 1 1 auto;
}
section.blog-section.blog-detail .blog-bar > div p {
  margin: 0;
}
section.blog-section.blog-detail .blog-bar > div p span, section.blog-section.blog-detail .blog-bar > div p strong, section.blog-section.blog-detail .blog-bar > div p a {
  margin-right: 1%;
}
section.blog-section.blog-detail .blog-bar > div p strong {
  color: rgb(30, 30, 30);
}
section.blog-section.blog-detail .blog-bar > div p a:hover {
  color: rgb(30, 30, 30);
}
section.blog-section.blog-detail .blog-bar > div.date {
  font-family: "DM Sans", sans-serif;
  opacity: 0.8;
}
section.blog-section.blog-detail .blog-bar > div.share {
  text-align: right;
}
section.blog-section.blog-detail .blog-bar > div.share p > *:last-child {
  margin-right: 0;
}
section.blog-section.blog-detail .cat-bar {
  color: rgb(71, 79, 71);
  font-weight: bold;
  margin-bottom: 18px;
  text-align: left;
  width: 100%;
}
section.blog-section.blog-detail .cat-bar span {
  margin: 0 5px;
}
section.blog-section.blog-detail .cat-bar span:first-child {
  margin-left: 0;
}
section.blog-section.blog-detail .blog-body {
  align-items: center;
  display: flex;
  flex-direction: column;
  width: 100%;
  text-align: left;
}
section.blog-section.blog-detail .blog-body .instagram {
  margin: 30px 0 50px 0;
}
section.blog-section.blog-detail .main-img {
  margin-bottom: 1.2em;
}
section.blog-section.blog-detail .is-faq {
  width: 100%;
}
section.blog-section.blog-detail .callout {
  border-top: 0.1rem solid rgb(30, 30, 30);
  border-bottom: 0.1rem solid rgb(30, 30, 30);
  margin: 2rem 0;
  padding: 3rem 0;
  width: 100%;
}
section.blog-section.blog-detail .callout p {
  margin-bottom: 0.7em;
}
section.blog-section.blog-detail .callout p:last-child {
  margin-bottom: 0;
}
section.blog-section.blog-detail .sub-callout {
  background-color: rgb(0, 0, 0);
  background-image: url("/images/Layout/blog-caller-bg.jpg");
  background-position: bottom right;
  background-size: cover;
  color: rgb(250, 250, 250);
  font-weight: 700;
  padding: 3rem;
  width: 100%;
}
section.blog-section.blog-detail .sub-callout .title {
  font-size: 2.8rem;
  line-height: 1;
  margin-bottom: 0;
}
@media only screen and (min-width: 576px) {
  section.blog-section.blog-detail .sub-callout .title {
    font-size: 3rem;
  }
}
@media only screen and (min-width: 768px) {
  section.blog-section.blog-detail .sub-callout .title {
    font-size: 4.2rem;
  }
}
section.blog-section.blog-detail .sub-callout .button {
  max-width: 34.8rem;
  min-width: 0;
  width: 100%;
}
section.blog-section.blog-detail .header .maf-content hr {
  border-color: rgb(30, 30, 30);
}
section.blog-section.blog-detail .header .maf-content .head-img {
  margin-bottom: 5rem;
  width: 100%;
}
section.blog-section.blog-detail .header .maf-content .head-img img {
  width: 100%;
}
section.blog-section.blog-detail .header .maf-content p.attr time, section.blog-section.blog-detail .header .maf-content p.attr span {
  border-right: 1px solid rgb(30, 30, 30);
  line-height: 1;
  padding-right: 20px;
  margin-right: 20px;
}
section.blog-section.blog-detail .header .maf-content p.attr time:last-child, section.blog-section.blog-detail .header .maf-content p.attr span:last-child {
  border: 0;
  padding-right: 0;
  margin-right: 0;
}
section.blog-section.blog-detail .row .column {
  padding-top: 0;
  text-align: left;
}
section.blog-section.assoc {
  background-color: rgb(115, 141, 114);
  color: rgb(250, 250, 250);
  overflow: visible;
}
section.blog-section.assoc #spr1 {
  display: inline-block;
  left: -1px;
  max-width: 222px;
  position: absolute;
  top: 0;
  transform: translateY(-50%);
  width: 13.875vw;
}
section.blog-section.assoc .header h2::after {
  background-color: rgb(250, 250, 250);
  max-width: 300px;
}
section.event-section.is-hero .row .column {
  text-align: center;
}
section.event-section.is-hero .row .column .maf-content .pub-date {
  font-size: 1.4rem;
  font-style: italic;
  font-weight: 600;
  margin: 5px;
  opacity: 0.5;
}
section.event-section.event-highlight .card-box-slider {
  width: 100%;
}
section.event-section.event-highlight .card-box-slider article.card {
  line-height: 0;
  padding: 15px;
  width: 100%;
}
@media only screen and (min-width: 576px) {
  section.event-section.event-highlight .card-box-slider article.card {
    padding: 30px;
  }
}
section.event-section.event-highlight .card-box-slider article.card .portal-item {
  background-color: rgb(250, 250, 250);
  box-shadow: 8px 8px 27px 1px rgba(7, 7, 7, 0.31);
  color: rgb(30, 30, 30);
  cursor: pointer;
  display: inline-block;
  line-height: 0;
  opacity: 1;
  width: 100%;
}
section.event-section.event-highlight .card-box-slider article.card .portal-item * {
  color: rgb(30, 30, 30);
}
section.event-section.event-highlight .card-box-slider article.card .portal-item .portal-content {
  align-content: stretch;
  align-items: stretch;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
  transition: all 300ms ease-out;
}
@media only screen and (min-width: 768px) {
  section.event-section.event-highlight .card-box-slider article.card .portal-item .portal-content {
    flex-direction: row;
  }
}
section.event-section.event-highlight .card-box-slider article.card .portal-item .portal-content .card-cats {
  display: none;
  font-size: 1.4rem;
  font-weight: 400;
  min-height: 20px;
}
section.event-section.event-highlight .card-box-slider article.card .portal-item .portal-content .tn {
  flex: 0 0 auto;
  overflow: hidden;
  position: relative;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  section.event-section.event-highlight .card-box-slider article.card .portal-item .portal-content .tn {
    width: 50%;
  }
}
section.event-section.event-highlight .card-box-slider article.card .portal-item .portal-content .tn.no-img {
  display: none;
}
section.event-section.event-highlight .card-box-slider article.card .portal-item .portal-content .tn .tn-img {
  height: 100%;
  margin: 0 auto;
  -o-object-fit: cover;
     object-fit: cover;
  transform: scale(1);
  transform-origin: center;
  transition: all 600ms ease-out;
  width: 100%;
}
section.event-section.event-highlight .card-box-slider article.card .portal-item .portal-content .tn.square::after, section.event-section.event-highlight .card-box-slider article.card .portal-item .portal-content .tn.fourthree::after, section.event-section.event-highlight .card-box-slider article.card .portal-item .portal-content .tn.custom::after {
  content: "";
  display: table;
  padding-bottom: 100%;
}
section.event-section.event-highlight .card-box-slider article.card .portal-item .portal-content .tn.square .tn-img, section.event-section.event-highlight .card-box-slider article.card .portal-item .portal-content .tn.fourthree .tn-img, section.event-section.event-highlight .card-box-slider article.card .portal-item .portal-content .tn.custom .tn-img {
  left: 0;
  position: absolute;
  top: 0;
  transform: scale(1);
  min-width: 100%;
}
section.event-section.event-highlight .card-box-slider article.card .portal-item .portal-content .tn.fourthree::after {
  padding-bottom: 75%;
}
section.event-section.event-highlight .card-box-slider article.card .portal-item .portal-content .tn.custom::after {
  padding-bottom: 60%;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  section.event-section.event-highlight .card-box-slider article.card .portal-item .portal-content .tn.custom::after {
    padding-bottom: 82.4%;
  }
}
section.event-section.event-highlight .card-box-slider article.card .portal-item .portal-content .info {
  align-items: flex-start;
  color: rgb(30, 30, 30);
  display: flex;
  flex: 0 0 auto;
  flex-direction: column;
  justify-content: center;
  padding: 20px 5%;
  text-align: left;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  section.event-section.event-highlight .card-box-slider article.card .portal-item .portal-content .info {
    width: 50%;
  }
}
section.event-section.event-highlight .card-box-slider article.card .portal-item .portal-content .title {
  align-items: center;
  color: rgb(30, 30, 30);
  display: inline-flex;
  font-size: 3.8rem;
  font-weight: 700;
  justify-content: flex-start;
  line-height: 1.2;
  margin: 0 0 25px 0;
  width: 100%;
}
section.event-section.event-highlight .card-box-slider article.card .portal-item .portal-content .date {
  display: inline-block;
  font-size: 2.4rem;
  font-weight: 600;
  line-height: 1;
  margin: 0 0 25px 0;
  width: 100%;
}
section.event-section.event-highlight .card-box-slider article.card .portal-item .portal-content .date i {
  display: none;
}
section.event-section.event-highlight .card-box-slider article.card .portal-item .portal-content .date time {
  color: rgb(71, 79, 71);
}
section.event-section.event-highlight .card-box-slider article.card .portal-item .portal-content .desc {
  color: rgb(30, 30, 30);
  justify-content: center;
  line-height: 1.4;
  margin: 0 0 25px 0;
  width: 100%;
}
section.event-section.event-highlight .card-box-slider article.card .portal-item .portal-content .attr {
  display: none;
  width: 100%;
}
section.event-section.event-highlight .card-box-slider article.card .portal-item .portal-content .attr div, section.event-section.event-highlight .card-box-slider article.card .portal-item .portal-content .attr time {
  display: block;
  width: auto;
}
section.event-section.event-highlight .card-box-slider article.card .portal-item .portal-content .card-button {
  background-color: transparent;
  border-color: rgb(30, 30, 30);
  box-shadow: none;
  color: rgb(30, 30, 30);
  display: inline-block;
  font-family: "DM Sans", sans-serif;
  font-size: 2rem;
  margin: 0;
  min-width: 0;
  padding: 10px 20px;
  text-transform: none;
}
section.event-section.event-highlight .card-box-slider article.card .portal-item.no-link {
  cursor: default;
}
section.event-section.event-highlight .card-box-slider article.card .portal-item.no-link .portal-content .info .card-button {
  display: none;
}
section.event-section.event-highlight .card-box-slider article.card .portal-item:hover .portal-content .button {
  background-color: rgb(30, 30, 30);
  color: rgb(250, 250, 250);
}
section.event-section.event-highlight .card-box-slider .flickity-page-dots {
  bottom: -10px;
  display: block;
  margin: 0;
  padding: 0;
}
section.event-section.event-highlight .card-box-slider .flickity-page-dots .dot {
  background: rgba(255, 255, 255, 0.4);
  border: 0;
  border-radius: 0;
  height: 16px;
  margin: 0 5px;
  opacity: 1;
  position: relative;
  width: 17px;
}
section.event-section.event-highlight .card-box-slider .flickity-page-dots .dot::before {
  background-color: white;
  border-radius: 0;
  content: "";
  display: inline-block;
  height: 0;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  transition: all 300ms ease-out;
  width: 0;
}
section.event-section.event-highlight .card-box-slider .flickity-page-dots .dot.is-selected::before {
  height: 100%;
  width: 100%;
}
section.event-section.event-highlight div.cardbox article.card .portal-item .portal-content .date, section.event-section.event-highlight aside.cardbox article.card .portal-item .portal-content .date {
  color: rgb(30, 30, 30);
}
section.event-section.event-highlight div.cardbox article.card .portal-item .portal-content .button, section.event-section.event-highlight aside.cardbox article.card .portal-item .portal-content .button {
  background-color: rgb(30, 30, 30);
  border-color: rgb(30, 30, 30);
}
section.event-section.event-highlight div.cardbox article.card .portal-item:hover .portal-content .button, section.event-section.event-highlight div.cardbox article.card .portal-item:focus .portal-content .button, section.event-section.event-highlight aside.cardbox article.card .portal-item:hover .portal-content .button, section.event-section.event-highlight aside.cardbox article.card .portal-item:focus .portal-content .button {
  background-color: transparent;
  color: rgb(30, 30, 30);
}
section.event-section.event-highlight .row .header .maf-content {
  max-width: 850px;
}
section.event-section.event-highlight.maf-h-f .row .column {
  padding-bottom: 0;
}
section.event-section.event-portal .header .cats {
  margin-top: 24px;
  max-width: 1035px;
  text-align: center;
}
section.event-section.event-portal .header .cats a {
  background-color: transparent;
  border: 6px solid rgb(60, 60, 60);
  color: rgb(30, 30, 30);
  display: inline-block;
  font-size: 1.6rem;
  font-weight: 500;
  margin: 6px;
  min-width: 80px;
  opacity: 1;
  padding: 5px;
  text-align: center;
  text-decoration: none;
}
section.event-section.event-portal .header .cats a:hover, section.event-section.event-portal .header .cats a:focus {
  background-color: rgb(60, 60, 60);
  color: rgb(250, 250, 250);
}
section.event-section.event-portal .header .cats a.active {
  background-color: rgb(60, 60, 60);
  color: rgb(250, 250, 250);
}
section.event-section.event-portal .header .cats a.active:hover, section.event-section.event-portal .header .cats a.active:focus {
  background-color: transparent;
  color: rgb(30, 30, 30);
}
section.event-section.event-portal .row {
  max-width: 1300px;
}
section.event-section.event-portal .row .column {
  padding-top: 40px;
}
section.event-section.event-detail .event-thumb img {
  width: 100%;
}
section.event-section.event-detail h1::after, section.event-section.event-detail .h1-style::after, section.event-section.event-detail h2::after, section.event-section.event-detail .h2-style::after, section.event-section.event-detail h3::after, section.event-section.event-detail .h3-style::after, section.event-section.event-detail h4::after, section.event-section.event-detail .h4-style::after, section.event-section.event-detail h5::after, section.event-section.event-detail .h5-style::after, section.event-section.event-detail h6.h6-style::after {
  width: 100%;
}
section.event-section.event-detail .title {
  margin-bottom: 15px;
}
section.event-section.event-detail .main-img {
  margin-bottom: 1em;
}
section.event-section.event-detail p.date {
  font-family: "Quicksand", sans-serif;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.2;
}
section.event-section.event-detail p.date time span {
  font-weight: 500;
}
section.event-section.event-detail p.date + hr {
  margin: 0 0 40px 0;
}
section.event-section.event-detail p.venue-details > span {
  display: inline-block;
  width: 100%;
}
section.event-section.event-detail p.venue-details > span span {
  font-weight: 500;
  margin-right: 10px;
}
section.event-section.event-detail p.tour-full-date {
  font-weight: 600;
}
section.event-section.event-detail p.tour-full-date a {
  display: inline-block;
  padding-right: 20px;
  position: relative;
}
section.event-section.event-detail p.tour-full-date a::after {
  border: 2px solid rgb(71, 79, 71);
  border-top: 0;
  border-right: 0;
  content: "";
  display: inline-block;
  height: 8px;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translate(0, -75%) rotate(-45deg);
  transition: transform 300ms ease-out;
  width: 8px;
}
section.event-section.event-detail .desc-l {
  width: 100%;
}
section.event-section.event-detail .site-link {
  font-size: 1.5rem;
  font-weight: 600;
}
@media only screen and (min-width: 576px) {
  section.event-section.event-detail .site-link {
    font-size: 1.6rem;
  }
}
@media only screen and (min-width: 768px) {
  section.event-section.event-detail .site-link {
    font-size: 1.8rem;
  }
}
section.event-section.event-detail .price-details {
  margin-bottom: 20px;
}
section.event-section.event-detail .is-map {
  margin-bottom: 1.2em;
  min-height: 300px;
}
section.event-section.event-detail .tickets {
  background-color: white;
  padding: 0 10px 10px 10px;
  width: 100%;
}
section.event-section.event-detail .tickets .ticket {
  padding-top: 10px;
}
section.event-section.event-detail .tickets .ticket .ticket-name {
  background-color: rgb(71, 79, 71);
  color: rgb(250, 250, 250);
  cursor: pointer;
  font-size: 1.8rem;
  font-weight: 600;
  outline: none;
  padding: 5px 25px 5px 10px;
  position: relative;
}
section.event-section.event-detail .tickets .ticket .ticket-name::after {
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  border-left: 7px solid white;
  content: "";
  height: 0;
  right: 10px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  transition: transform 300ms ease-out;
  width: 0;
}
section.event-section.event-detail .tickets .ticket .ticket-name:hover, section.event-section.event-detail .tickets .ticket .ticket-name:focus {
  background-color: rgb(115, 141, 114);
}
section.event-section.event-detail .tickets .ticket .ticket-name.open::after {
  transform: translateY(-50%) rotate(90deg);
}
section.event-section.event-detail .tickets .ticket .ticket-options {
  display: none;
  padding: 5px 0 10px 0;
}
section.event-section.event-detail .tickets .ticket .ticket-options .option {
  align-items: flex-start;
  border-top: 1px solid rgb(180, 180, 180);
  display: flex;
  flex-wrap: wrap;
  margin: 0 10px;
  padding: 15px 0 25px 0;
}
section.event-section.event-detail .tickets .ticket .ticket-options .option:first-child {
  border-top: 0;
}
section.event-section.event-detail .tickets .ticket .ticket-options .option .description {
  flex: 0 0 auto;
  padding-top: 5px;
  width: calc(100% - 100px);
}
section.event-section.event-detail .tickets .ticket .ticket-options .option .description .name {
  font-size: 1.8rem;
}
section.event-section.event-detail .tickets .ticket .ticket-options .option .description .price {
  display: flex;
  font-size: 1.8rem;
  padding: 5px 0;
}
section.event-section.event-detail .tickets .ticket .ticket-options .option .description .price > div {
  padding-right: 15px;
}
section.event-section.event-detail .tickets .ticket .ticket-options .option .description .price > div.original {
  text-decoration: line-through;
}
section.event-section.event-detail .tickets .ticket .ticket-options .option .description .price > div.actual {
  color: rgb(30, 30, 30);
  font-weight: 700;
}
section.event-section.event-detail .tickets .ticket .ticket-options .option .control {
  flex: 0 0 auto;
  padding-top: 5px;
  width: 100px;
}
section.event-section.event-detail .tickets .ticket .ticket-options .option .more {
  display: inline-block;
  flex: 0 0 auto;
  padding-top: 5px;
  width: 100%;
}
section.event-section.event-detail .tickets .ticket .ticket-options .option .more p {
  margin-bottom: 10px;
}
section.event-section.event-detail .tickets .ticket .ticket-options .option .more .discount {
  background-color: rgb(115, 141, 114);
  color: rgb(250, 250, 250);
  display: inline-block;
  margin-top: 5px;
  padding: 5px 15px;
  text-transform: uppercase;
  width: auto;
}
section.event-section.event-detail .tickets .ticket .ticket-options .extras {
  background-color: rgb(180, 180, 180);
  padding: 10px 0 0 0;
}
section.event-section.event-detail .tickets .ticket .ticket-options .extras .etitle {
  border-bottom: 2px solid rgb(71, 79, 71);
  color: rgb(71, 79, 71);
  font-size: 1.8rem;
  font-weight: 700;
  margin: 0 10px;
  padding: 5px 0;
  text-transform: uppercase;
}
section.event-section.event-detail .tickets .ticket .ticket-options .extras .option {
  border-color: white;
}
section.event-section.event-detail .tickets .ticket .ticket-options .extras .option:nth-child(2) {
  border-top: 0;
}
section.event-section.event-detail .ticket-actions {
  background-color: white;
  display: flex;
  width: 100%;
}
section.event-section.event-detail .ticket-actions .button {
  border: 0;
  margin: 0;
  padding: 20px;
  text-transform: none;
  width: 50%;
}
section.event-section.event-detail .ticket-actions .button.clear {
  color: rgb(71, 79, 71);
  justify-content: flex-start;
}
section.event-section.event-detail .ticket-actions .button.clear span {
  padding-right: 22px;
  position: relative;
}
section.event-section.event-detail .ticket-actions .button.clear span::before, section.event-section.event-detail .ticket-actions .button.clear span::after {
  background-color: rgb(71, 79, 71);
  content: "";
  height: 3px;
  right: 0;
  position: absolute;
  top: 54%;
  transform: translateY(-50%) rotate(45deg);
  transition: background-color 300ms ease-out;
  width: 13px;
}
section.event-section.event-detail .ticket-actions .button.clear span::after {
  transform: translateY(-50%) rotate(-45deg);
}
section.event-section.event-detail .ticket-actions .button.clear:hover, section.event-section.event-detail .ticket-actions .button.clear:focus {
  background-color: rgb(71, 79, 71);
  color: rgb(250, 250, 250);
}
section.event-section.event-detail .ticket-actions .button.clear:hover span::before, section.event-section.event-detail .ticket-actions .button.clear:hover span::after, section.event-section.event-detail .ticket-actions .button.clear:focus span::before, section.event-section.event-detail .ticket-actions .button.clear:focus span::after {
  background-color: rgb(250, 250, 250);
}
section.event-section.event-detail .ticket-actions .button.buy {
  background-color: rgb(60, 60, 60);
  color: white;
}
section.event-section.event-detail .ticket-actions .button.buy span {
  padding-right: 25px;
  position: relative;
}
section.event-section.event-detail .ticket-actions .button.buy span::after {
  border-top: 6px solid transparent;
  border-bottom: 6px solid transparent;
  border-left: 9px solid white;
  content: "";
  height: 0;
  right: 0;
  position: absolute;
  top: 53%;
  transform: translateY(-50%);
  transition: right 300ms ease-out;
  width: 0;
}
section.event-section.event-detail .ticket-actions .button.buy:hover, section.event-section.event-detail .ticket-actions .button.buy:focus {
  background-color: rgb(71, 79, 71);
  color: rgb(250, 250, 250);
}
section.event-section.event-detail .ticket-actions .button.buy:hover span::after, section.event-section.event-detail .ticket-actions .button.buy:focus span::after {
  right: -3px;
}
section.event-section.event-detail .header .maf-content .info {
  border: 1px solid rgb(30, 30, 30);
  border-right: 0;
  border-left: 0;
  display: flex;
  flex-wrap: wrap;
  margin-top: 20px;
  padding: 9px 0;
  width: 100%;
}
section.event-section.event-detail .header .maf-content .info > span {
  border-left: 1px solid rgb(30, 30, 30);
  display: inline-block;
  flex: 0 0 auto;
  font-feature-settings: "lnum" 1;
  max-width: 100%;
  padding: 3px 15px;
  text-transform: uppercase;
}
section.event-section.event-detail .row {
  padding: 0;
  padding-top: 6rem;
  max-width: 1300px;
}
@media only screen and (min-width: 576px) {
  section.event-section.event-detail .row {
    padding: 0 2.5rem;
    padding-top: 10rem;
  }
}
section.event-section.event-detail .row .header .maf-content {
  padding-top: 0;
  padding-bottom: 6rem;
}
section.event-section.event-detail .row .column {
  padding: 6rem 1.5rem;
  padding-top: 0;
}
@media only screen and (min-width: 960px) {
  section.event-section.event-detail .row .column {
    padding: 10rem 1.5rem;
    padding-top: 0;
  }
}
section.event-section.event-detail .row .column .maf-content {
  align-items: flex-start;
  text-align: left;
}
section.event-section.event-detail .row .column.maf-col-2 .maf-content .event-s-link i {
  color: inherit;
  font-size: 2rem;
  vertical-align: middle;
}
section.event-section.event-detail .row .column.maf-col-2 .maf-content .event-s-link a {
  color: inherit;
}
section.event-section.event-detail .row .column.maf-col-2 .maf-content .event-s-link a:hover {
  color: rgb(30, 30, 30);
}
section.event-section.event-detail .row .column.maf-col-2 .maf-content .embed-map {
  display: inline-block;
  padding-bottom: 75%;
  position: relative;
  width: 100%;
}
section.event-section.event-detail .row .column.maf-col-2 .maf-content .embed-map iframe {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
section.event-section.event-detail .row .column.maf-dates {
  padding-top: 60px;
  text-align: left;
}
section.event-section.event-detail .row .column.maf-dates .maf-content {
  align-items: flex-start;
}
section.event-section.event-detail .row .column.maf-dates .maf-content p {
  max-width: 850px;
}
section.event-section.event-detail .row .column.maf-dates .maf-content .course-dates {
  border-bottom: 1px solid rgb(30, 30, 30);
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}
section.event-section.event-detail .row .column.maf-dates .maf-content .course-dates > div {
  align-items: center;
  align-content: center;
  border-top: 1px solid rgb(30, 30, 30);
  display: flex;
  flex: 0 0 auto;
  justify-content: flex-start;
  padding: 8px 0;
  width: 100%;
}
@media only screen and (min-width: 960px) {
  section.event-section.event-detail .row .column.maf-dates .maf-content .course-dates > div {
    width: 50%;
  }
}
section.event-section.event-detail .row .column.maf-dates .maf-content .course-dates > div > span {
  display: inline-block;
  flex: 0 0 auto;
  padding: 10px 15px;
}
section.event-section.event-detail .row .column.maf-dates .maf-content .course-dates > div > span:first-child {
  border-left: 1px solid rgb(30, 30, 30);
  font-feature-settings: "lnum" 1;
  font-size: 1.6rem;
  min-width: 160px;
  text-transform: uppercase;
}
@media only screen and (min-width: 576px) {
  section.event-section.event-detail .row .column.maf-dates .maf-content .course-dates > div > span:first-child {
    font-size: 1.8rem;
    min-width: 200px;
  }
}
section.event-section.event-detail .row .column.maf-dates .maf-content .course-dates > div > span:last-child .button {
  margin: 0;
}
section.event-section.event-detail .row .column.maf-dates .maf-content .show-tour-dates {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -25px;
  width: calc(100% + 50px);
}
section.event-section.event-detail .row .column.maf-dates .maf-content .show-tour-dates .tour-date {
  display: inline-block;
  flex: 0 0 auto;
  padding: 25px;
  text-align: left;
  width: 100%;
}
@media only screen and (min-width: 576px) {
  section.event-section.event-detail .row .column.maf-dates .maf-content .show-tour-dates .tour-date {
    width: 50%;
  }
}
@media only screen and (min-width: 1280px) {
  section.event-section.event-detail .row .column.maf-dates .maf-content .show-tour-dates .tour-date {
    width: 33.333%;
  }
}
section.event-section.event-detail .row .column.maf-dates .maf-content .show-tour-dates .tour-date .td-content {
  background-color: rgb(30, 30, 30);
  display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: center;
  padding: 18px 20px;
}
section.event-section.event-detail .row .column.maf-dates .maf-content .show-tour-dates .tour-date .td-content .date {
  font-size: 1.4rem;
}
section.event-section.event-detail .row .column.maf-dates .maf-content .show-tour-dates .tour-date .td-content .venue .venue-name {
  font-weight: 700;
  margin-right: 20px;
}
section.event-section.event-detail .row .column.maf-dates .maf-content .show-tour-dates .tour-date .td-content .link a {
  color: rgb(71, 79, 71);
  font-size: 1.4rem;
  font-weight: 700;
}
section.event-section.event-detail .row .column.maf-dates .maf-content .show-tour-dates .tour-date.ended {
  opacity: 0.7;
}
section.event-section.event-detail .row .column.maf-dates .maf-content .show-tour-dates .tour-date.hide {
  display: none;
}
section.event-section.event-detail.event-dates .row .column {
  padding-bottom: 0;
}
section.faq-section .row {
  padding-bottom: 6rem;
  max-width: 157rem;
}
@media only screen and (min-width: 960px) {
  section.faq-section .row {
    padding-bottom: 10rem;
  }
}
section.faq-section .row .column .maf-content.header {
  padding: 6rem 1.5rem !important;
}
@media only screen and (min-width: 576px) {
  section.faq-section .row .column .maf-content.header {
    padding: 6rem 3rem !important;
  }
}
section.faq-section .row .column .maf-content.col-footer {
  padding: 6rem 1.5rem 10rem 1.5rem !important;
}
@media only screen and (min-width: 576px) {
  section.faq-section .row .column .maf-content.col-footer {
    padding: 6rem 3rem 10rem 3rem !important;
  }
}
section.faq-section .row .column.maf-col-1 {
  background-color: rgb(60, 60, 60);
  color: rgb(30, 30, 30);
  padding: 0;
}
section.faq-section .row .column.maf-col-1 dl {
  border-bottom: 0.2rem solid rgb(250, 250, 250);
}
section.faq-section .row .column.maf-col-1 dl dt {
  border-top: 0.2rem solid rgb(250, 250, 250);
}
section.faq-section .row .column.maf-col-1 dl dd {
  background-color: rgb(250, 250, 250);
}
section.faq-section .row .column.maf-col-2 {
  background-color: black;
  color: rgb(250, 250, 250);
}
section.faq-section .row .column.maf-col-2 blockquote {
  font-size: 1.8rem;
}
section.faq-section .row .column.maf-col-2 > .maf-background {
  opacity: 0.4;
}
section.faq-section .row .column.maf-col-2 .maf-content {
  height: 100%;
  max-width: 35rem;
}
section.faq-section .row .column.maf-col-2 .maf-content > *:last-child:not(:first-child) {
  margin-top: auto;
}
section.concertina-section h1, section.concertina-section .h1-style, section.concertina-section h2, section.concertina-section .h2-style, section.concertina-section h3, section.concertina-section .h3-style, section.concertina-section h4, section.concertina-section .h4-style, section.concertina-section h5, section.concertina-section .h5-style, section.concertina-section h6.h6-style {
  color: rgb(30, 30, 30);
}
section.concertina-section .row {
  max-width: 1100px;
}
section.concertina-section .row .column {
  padding-top: 40px;
  padding-bottom: 40px;
}
section.concertina-section .row .column .concertina .conc-con {
  display: none;
  width: 100%;
}
section.concertina-section .row .column .concertina .conc-action {
  border-bottom: 1px solid rgb(115, 141, 114);
  text-align: right;
  width: 100%;
}
section.concertina-section .row .column .concertina .conc-action button {
  background: none;
  border: 0;
  border-radius: 0;
  color: rgb(71, 79, 71);
  cursor: pointer;
  font-family: "DM Sans", sans-serif;
  font-size: 1.6rem;
  font-style: italic;
  font-weight: 700;
  margin: 0 10px 10px 0;
  outline: none;
  padding: 5px 20px 5px 0;
  position: relative;
  text-transform: uppercase;
  transition: all 300ms ease-out;
}
section.concertina-section .row .column .concertina .conc-action button::after {
  border: 2px solid rgb(71, 79, 71);
  border-left: 0;
  border-bottom: 0;
  content: "";
  display: inline-block;
  height: 14px;
  position: absolute;
  right: 4px;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  transition: all 300ms ease-out;
  width: 14px;
}
section.concertina-section .row .column .concertina .conc-action button:hover, section.concertina-section .row .column .concertina .conc-action button:focus {
  color: rgb(30, 30, 30);
}
section.concertina-section .row .column .concertina .conc-action button:hover::after, section.concertina-section .row .column .concertina .conc-action button:focus::after {
  border-color: rgb(30, 30, 30);
  right: 0;
}
section.concertina-section .row .column .concertina .conc-action button.open {
  margin: 0 0 10px 10px;
  padding: 5px 0 5px 20px;
}
section.concertina-section .row .column .concertina .conc-action button.open::after {
  left: 4px;
  right: auto;
  transform: translateY(-50%) rotate(-135deg);
}
section.concertina-section .row .column .concertina .conc-action button.open:hover::after, section.concertina-section .row .column .concertina .conc-action button.open:focus::after {
  left: 0;
}
section.concertina-section.maf-h-h .row .column {
  padding-top: 6rem;
}
@media only screen and (min-width: 960px) {
  section.concertina-section.maf-h-h .row .column {
    padding-top: 10rem;
  }
}
section.concertina-section:last-child {
  margin-bottom: 40px;
}
@media only screen and (min-width: 960px) {
  section.concertina-section:last-child {
    margin-bottom: 130px;
  }
}
section.shop-section div.cardbox article.card .portal-item .portal-content .price .price-button {
  background-color: rgb(30, 30, 30);
  display: inline-block;
  flex: 0 0 auto;
  margin-left: 15px;
  position: relative;
  width: 48px;
}
section.shop-section div.cardbox article.card .portal-item .portal-content .price .price-button::before {
  content: "";
  display: table;
  padding-bottom: 100%;
}
section.shop-section div.cardbox article.card .portal-item .portal-content .price .price-button::after {
  border: 3px solid white;
  border-top: 0;
  border-left: 0;
  content: "";
  height: 25%;
  left: 50%;
  position: absolute;
  top: 50%;
  transform-origin: center;
  transform: translate(-65%, -50%) rotate(-45deg);
  transition: transform 300ms ease-out;
  width: 25%;
}
section.shop-section div.cardbox article.card .portal-item .portal-content .price .sold {
  font-size: 0.8em;
}
section.shop-section div.cardbox article.card .portal-item .portal-content .price.oos .price-string .currency, section.shop-section div.cardbox article.card .portal-item .portal-content .price.oos .price-string .value {
  text-decoration: line-through;
}
section.shop-section div.cardbox article.card .portal-item .portal-content .button {
  margin-top: 0;
}
section.shop-section div.cardbox article.card .portal-item .portal-content .button.con-link {
  border-color: rgb(71, 79, 71);
  background-color: rgb(71, 79, 71);
  color: rgb(250, 250, 250);
}
section.shop-section div.cardbox article.card .portal-item .portal-content .button.con-link:hover {
  background-color: transparent;
  color: rgb(71, 79, 71);
}
section.shop-section div.cardbox article.card .portal-item .portal-content .button:first-child {
  margin-left: 0;
}
section.shop-section div.cardbox article.card .portal-item .portal-content .button:last-child {
  margin-right: 0;
}
section.shop-section div.cardbox article.card .portal-item:hover .portal-content .price .price-button::after, section.shop-section div.cardbox article.card .portal-item:focus .portal-content .price .price-button::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}
section.shop-section div.cardbox > div.list-view {
  border-top: 1px solid rgb(115, 141, 114);
  display: table;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  section.shop-section div.cardbox > div.list-view {
    border-top: 0;
  }
}
section.shop-section div.cardbox > div.list-view .list-row {
  border: 1px solid rgb(115, 141, 114);
  display: flex;
  flex-wrap: wrap;
  font-size: 1.6rem;
  font-weight: 700;
  margin-bottom: 10px;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  section.shop-section div.cardbox > div.list-view .list-row {
    border: 0;
    display: table-row;
    margin-bottom: 0;
  }
}
section.shop-section div.cardbox > div.list-view .list-row > div {
  display: table-cell;
  padding: 15px 10px;
}
@media only screen and (min-width: 768px) {
  section.shop-section div.cardbox > div.list-view .list-row > div {
    border-right: 1px solid rgb(115, 141, 114);
    border-bottom: 1px solid rgb(115, 141, 114);
  }
}
section.shop-section div.cardbox > div.list-view .list-row > div:first-child {
  border-left: 1px solid rgb(115, 141, 114);
}
section.shop-section div.cardbox > div.list-view .list-row > div.lv-image {
  padding: 3px;
}
section.shop-section div.cardbox > div.list-view .list-row > div.lv-image img {
  max-height: 60px;
  min-width: 60px;
}
section.shop-section div.cardbox > div.list-view .list-row > div .label {
  color: rgb(30, 30, 30);
  padding-right: 5px;
}
@media only screen and (min-width: 768px) {
  section.shop-section div.cardbox > div.list-view .list-row > div .label {
    display: none;
  }
}
section.shop-section div.cardbox > div.list-view .list-row > div .button {
  font-size: 1.2rem;
  margin: 0;
  min-width: 110px;
  padding: 10px 15px;
}
section.shop-section div.cardbox > div.list-view .list-row:first-child {
  background-color: rgb(30, 30, 30);
  color: rgb(250, 250, 250);
  display: none;
  text-transform: uppercase;
}
@media only screen and (min-width: 768px) {
  section.shop-section div.cardbox > div.list-view .list-row:first-child {
    display: table-row;
  }
}
section.shop-section div.cardbox > div.list-view .list-row:first-child > div {
  border: 0;
}
section.shop-section .header {
  align-items: center;
}
section.shop-section .header .maf-content {
  align-items: inherit;
  max-width: 96rem;
  text-align: center;
}
section.shop-section > .filter {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 10px;
  max-width: 950px;
}
section.shop-section > .filter .filter-button {
  background-color: rgb(135, 82, 181);
  border: 4px solid rgb(135, 82, 181);
  color: rgb(250, 250, 250);
  display: inline-block;
  flex: 0 0 auto;
  font-size: 1.6rem;
  font-weight: 500;
  opacity: 1;
  margin: 6px;
  padding: 6px 11px;
  text-decoration: none;
}
section.shop-section > .filter .filter-button:hover, section.shop-section > .filter .filter-button:focus, section.shop-section > .filter .filter-button.active {
  background-color: transparent;
  color: rgb(135, 82, 181);
}
section.shop-section.product-list .filter-bar {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 0 auto;
  max-width: 1500px;
  padding: 30px 1.5rem;
  width: 100%;
}
@media only screen and (min-width: 576px) {
  section.shop-section.product-list .filter-bar {
    padding: 30px 3rem;
  }
}
section.shop-section.product-list .filter-bar > div {
  display: inline-block;
}
section.shop-section.product-list .filter-bar > div.label {
  min-width: 60px;
}
@media only screen and (min-width: 768px) {
  section.shop-section.product-list .filter-bar > div.label {
    min-width: 0;
  }
}
section.shop-section.product-list .filter-bar > div.filter {
  margin: 10px;
  min-width: 250px;
  text-align: center;
}
section.shop-section.product-list .filter-bar > div.filter .select {
  width: 250px;
}
section.shop-section.product-list .sort-bar {
  background-color: rgb(250, 250, 250);
  border-top: 1px solid #9e9e9e;
  border-bottom: 1px solid #9e9e9e;
  width: 100%;
}
section.shop-section.product-list .sort-bar > div {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  margin: 0 auto;
  max-width: 1500px;
  padding: 15px 1.5rem;
}
@media only screen and (min-width: 576px) {
  section.shop-section.product-list .sort-bar > div {
    padding: 15px 3rem;
  }
}
section.shop-section.product-list .sort-bar > div > div {
  align-items: center;
  display: flex;
  justify-content: flex-start;
  padding: 5px 20px;
}
section.shop-section.product-list .sort-bar > div > div > * {
  padding: 0 5px;
}
section.shop-section.product-list .sort-bar > div > div > *:first-child {
  padding-left: 0;
}
section.shop-section.product-list .sort-bar > div > div .label {
  font-size: 1.4rem;
  font-weight: 700;
  white-space: nowrap;
}
section.shop-section.product-list .sort-bar > div > div a {
  line-height: 1;
  margin-top: 2px;
  opacity: 1;
  outline: none;
  text-decoration: none;
}
section.shop-section.product-list .sort-bar > div > div a:hover, section.shop-section.product-list .sort-bar > div > div a:focus, section.shop-section.product-list .sort-bar > div > div a.active {
  color: rgb(71, 79, 71);
}
section.shop-section.product-list .sort-bar > div > div a i {
  font-size: 3rem;
}
section.shop-section.product-list .sort-bar > div > div .select {
  border: 1px solid #9e9e9e;
  border-radius: 0;
  height: 42px;
  margin: 0 5px;
  min-width: 60px;
  padding: 0 10px 0 0;
}
section.shop-section.product-list .sort-bar > div > div .select select {
  color: rgb(30, 30, 30);
  font-size: 1.4rem;
  font-weight: 700;
  padding: 10px 8px;
}
section.shop-section.product-list .sort-bar > div > div .select::before {
  width: 30px;
}
section.shop-section.product-list .sort-bar > div > div .select::after {
  height: 8px;
  right: 6px;
  top: 48%;
  width: 8px;
}
section.shop-section.product-list .sort-bar > div > div .select:hover, section.shop-section.product-list .sort-bar > div > div .select:focus-within {
  border-color: rgb(71, 79, 71);
}
section.shop-section.product-list .sort-bar > div > div .select:hover::after, section.shop-section.product-list .sort-bar > div > div .select:focus-within::after {
  border-color: rgb(71, 79, 71);
  top: 53%;
}
section.shop-section.product-list .featured {
  align-items: flex-start;
  border: 1px solid rgb(30, 30, 30);
  font-size: 2.2rem;
  margin-bottom: 10rem;
  text-align: left;
}
section.shop-section.product-list .featured h2 {
  background-color: rgb(71, 79, 71);
  border-bottom: 1px solid rgb(30, 30, 30);
  margin: 0;
}
section.shop-section.product-list .featured .name, section.shop-section.product-list .featured .price {
  font-size: 4rem;
  text-transform: uppercase;
  font-family: "Quicksand", sans-serif;
}
@media only screen and (min-width: 576px) {
  section.shop-section.product-list .featured .name, section.shop-section.product-list .featured .price {
    font-size: 5.4rem;
  }
}
section.shop-section.product-list .featured .price {
  color: rgb(60, 60, 60);
}
section.shop-section.product-list .featured .price .sold {
  color: rgb(30, 30, 30);
}
section.shop-section.product-list .featured .row {
  padding: 0.75rem;
}
@media only screen and (min-width: 576px) {
  section.shop-section.product-list .featured .row {
    padding: 1.5rem;
  }
}
section.shop-section.product-list .featured .row .column {
  padding: 0.75rem;
  text-align: left;
}
@media only screen and (min-width: 576px) {
  section.shop-section.product-list .featured .row .column {
    padding: 1.5rem;
  }
}
section.shop-section.product-list div.cardbox.list-view {
  width: 100%;
}
section.shop-section.product-list.maf-h-h .row .column {
  padding-top: 5rem;
}
section.shop-section.product-detail .image-browser {
  display: flex;
  flex-direction: column;
  width: 100%;
}
section.shop-section.product-detail .image-browser .image-viewer {
  flex: 1 1 auto;
  height: calc(100% - 130px);
  position: relative;
}
section.shop-section.product-detail .image-browser .image-viewer img {
  display: inline-block;
  height: auto;
  width: 100%;
}
section.shop-section.product-detail .image-browser .image-viewer .image-no {
  background-color: rgba(0, 0, 0, 0.7);
  border-radius: 30px 0 0 0;
  bottom: 0;
  color: rgb(250, 250, 250);
  font-family: "Quicksand", sans-serif;
  font-size: 1.8rem;
  padding: 10px 20px 10px 30px;
  position: absolute;
  right: 0;
}
section.shop-section.product-detail .image-browser .image-viewer .image-no i {
  font-size: 2rem;
  margin-right: 8px;
  vertical-align: -10%;
}
section.shop-section.product-detail .image-browser #image-nav {
  height: 120px;
  margin: 10px auto 0 auto;
  position: relative;
  width: calc(100% - 40px);
}
section.shop-section.product-detail .image-browser #image-nav .image-slide {
  border: 2px solid transparent;
  height: 120px;
  margin-right: 10px;
}
section.shop-section.product-detail .image-browser #image-nav .image-slide img {
  height: 100%;
  -o-object-position: center;
     object-position: center;
  transition: all 300ms ease-out;
  width: auto;
}
section.shop-section.product-detail .image-browser #image-nav .image-slide.is-selected {
  border: 2px solid rgb(71, 79, 71);
}
section.shop-section.product-detail .image-browser #image-nav .flickity-prev-next-button {
  background-color: transparent;
  border-radius: 0;
  box-shadow: none;
  height: 100%;
  width: 40px;
}
section.shop-section.product-detail .image-browser #image-nav .flickity-prev-next-button.previous {
  left: -30px;
}
section.shop-section.product-detail .image-browser #image-nav .flickity-prev-next-button.next {
  right: -30px;
}
section.shop-section.product-detail .image-browser #image-nav .flickity-prev-next-button .flickity-button-icon {
  fill: rgb(30, 30, 30);
}
section.shop-section.product-detail .product-gallery {
  align-items: flex-start;
  flex-direction: row;
  flex-wrap: wrap;
  margin: 0 -5px;
  max-width: none;
  width: calc(100% + 10px);
}
section.shop-section.product-detail .product-gallery > div {
  display: inline-block;
  flex: 0 0 auto;
  line-height: 0;
  padding: 5px;
  width: 100%;
  z-index: 1;
}
section.shop-section.product-detail .product-gallery > div > a {
  color: rgb(30, 30, 30);
  display: inline-block;
  font-size: 1.8rem;
  line-height: 0;
  opacity: 1;
  outline: none;
  text-decoration: none;
  width: 100%;
  /*.info {
    display: inline-block;
    text-align: center;
    width: 100%;
    > div {
      display: inline-block;
      width: 100%;
      &.title {
        font-weight: 500;
        padding: 20px 0 10px 0;
      }
      &.alt {
        font-size: 1.4rem;
      }
    }
  }*/
}
section.shop-section.product-detail .product-gallery > div > a .tn {
  background-color: rgb(250, 250, 250);
  display: inline-block;
  flex: 0 0 auto;
  overflow: hidden;
  position: relative;
  transition: all 300ms ease-out;
  width: 100%;
}
section.shop-section.product-detail .product-gallery > div > a .tn .tn-img {
  display: inline-block;
  height: auto;
  min-width: 0;
  transform: scale(1);
  transform-origin: center;
  transition: all 600ms ease-out;
  width: 100%;
  z-index: 0;
}
section.shop-section.product-detail .product-gallery > div > a:hover .tn .tn-img, section.shop-section.product-detail .product-gallery > div > a:focus .tn .tn-img {
  transform: scale(1.02);
}
section.shop-section.product-detail .product-gallery > div:first-child {
  padding-top: 0;
}
section.shop-section.product-detail .product-gallery > div:not(:first-child) {
  display: inline-block;
  width: 25%;
}
section.shop-section.product-detail .product-gallery > div:not(:first-child):nth-child(n+6) {
  display: none;
}
section.shop-section.product-detail .product-gallery > div:not(:first-child) > a .tn::after {
  content: "";
  display: table;
  padding-bottom: 75%;
}
section.shop-section.product-detail .product-gallery > div:not(:first-child) > a .tn .tn-img {
  display: inline-block;
  height: 100%;
  left: 0;
  -o-object-fit: contain;
     object-fit: contain;
  position: absolute;
  top: 0;
}
section.shop-section.product-detail .short-description {
  margin-bottom: 1.2em;
}
section.shop-section.product-detail .attrs {
  border: 1px solid rgb(115, 141, 114);
  border-top: 0;
  border-right: 0;
  display: table;
  margin: 0 0 2.2em 0;
}
section.shop-section.product-detail .attrs .attr {
  display: table-row;
}
section.shop-section.product-detail .attrs .attr > span {
  border: 1px solid rgb(115, 141, 114);
  border-bottom: 0;
  border-left: 0;
  display: table-cell;
  padding: 8px 12px;
}
section.shop-section.product-detail .attrs .attr > span:first-child {
  color: rgb(30, 30, 30);
}
section.shop-section.product-detail .dims {
  font-size: 0.9em;
}
section.shop-section.product-detail .dims strong {
  display: inline-block;
  min-width: 7.2rem;
}
section.shop-section.product-detail .price {
  display: inline-block;
  margin: 1rem 0 0.6em 0;
}
section.shop-section.product-detail .price > span {
  display: inline-block;
}
section.shop-section.product-detail .price > span.label {
  margin-right: 5px;
}
section.shop-section.product-detail .price > span.price-string {
  font-size: 2.8rem;
  font-family: "Quicksand", sans-serif;
  line-height: 1;
}
@media only screen and (min-width: 576px) {
  section.shop-section.product-detail .price > span.price-string {
    font-size: 3.6rem;
  }
}
section.shop-section.product-detail .price > span .vat {
  font-family: "DM Sans", sans-serif;
  font-size: 2.2rem;
}
section.shop-section.product-detail .price-options {
  border-top: 1px solid black;
  border-bottom: 1px solid black;
  margin-top: 1rem;
  margin-bottom: 1.2em;
  padding: 20px 0;
  width: 100%;
}
section.shop-section.product-detail .price-options > *:last-child {
  margin-bottom: 0;
}
section.shop-section.product-detail .price-options form.option-form {
  align-items: flex-end;
  display: flex;
  flex-direction: column;
}
section.shop-section.product-detail .price-options form.option-form .ftable {
  display: table;
  width: 100%;
}
section.shop-section.product-detail .price-options form.option-form .ftable .trow {
  display: table-row;
  font-size: 2.2rem;
  font-weight: 400;
}
section.shop-section.product-detail .price-options form.option-form .ftable .trow > div {
  display: table-cell;
  padding: 3px 3px 3px 0;
}
section.shop-section.product-detail .price-options form.option-form .ftable .trow > div:last-child {
  padding-right: 0;
}
section.shop-section.product-detail .price-options form.option-form .ftable .trow > div.qty {
  text-align: center;
}
section.shop-section.product-detail .price-options form.option-form .ftable .trow > div.qty .oos {
  color: rgb(149, 13, 13);
  display: inline-block;
  font-size: 0.9em;
  line-height: 0.9;
  max-width: 8rem;
  padding: 0 0.5rem;
}
section.shop-section.product-detail .price-options form.option-form .ftable .trow > div.prices {
  text-align: right;
  font-weight: 700;
  width: 5%;
}
section.shop-section.product-detail .price-options form.option-form .ftable .trow.head {
  font-size: 1.6rem;
  font-weight: 700;
}
section.shop-section.product-detail .price-options form.option-form .actions {
  margin-top: 20px;
}
section.shop-section.product-detail .stock {
  color: rgb(30, 30, 30);
  font-family: "Quicksand", sans-serif;
  font-size: 2.2rem;
}
section.shop-section.product-detail .spinner {
  margin-bottom: 1.2em;
}
section.shop-section.product-detail .form-enter {
  background-color: rgb(30, 30, 30);
  border-radius: 0;
  color: rgb(250, 250, 250);
  font-family: "DM Sans", sans-serif;
  min-height: 6rem;
  text-transform: uppercase;
}
section.shop-section.product-detail .row {
  padding: 0;
  padding-top: 6rem;
}
@media only screen and (min-width: 576px) {
  section.shop-section.product-detail .row {
    padding: 0 2.5rem;
    padding-top: 10rem;
  }
}
section.shop-section.product-detail .row .header .maf-content {
  padding-top: 0;
  padding-bottom: 6rem;
}
section.shop-section.product-detail .row .column {
  padding: 6rem 1.5rem;
  padding-top: 0;
}
@media only screen and (min-width: 960px) {
  section.shop-section.product-detail .row .column {
    padding: 10rem 1.5rem;
    padding-top: 0;
  }
}
section.shop-section.product-detail .row .column .maf-content {
  align-items: flex-start;
  text-align: left;
}
section.shop-section.product-detail .row .column .maf-content.swatch > a {
  opacity: 1;
}
section.shop-section.product-detail .row .column.maf-col-1 .maf-content.product-gallery {
  justify-content: flex-start;
}
section.shop-section.shop-highlight div.cardbox {
  justify-content: center;
}
section.shop-section.shop-highlight .row .column {
  padding-bottom: 3rem;
}
section.shop-section.shop-highlight .row .column .maf-content.divider {
  padding: 4rem 0;
}
section.shop-section.shop-highlight .footer .maf-content + .maf-content {
  margin-top: 1.2em;
}
section.shop-section.shop-highlight.maf-h-h .row .column {
  padding-top: 3rem;
}
section.shop-section.shop-highlight.maf-h-f .row .column {
  padding-bottom: 3rem;
}
section.slideshow-section {
  color: rgb(30, 30, 30);
}
section.slideshow-section .row {
  padding: 0;
  padding-top: 6rem;
}
@media only screen and (min-width: 576px) {
  section.slideshow-section .row {
    padding: 0 2.5rem;
    padding-top: 10rem;
  }
}
section.slideshow-section .row .header .maf-content {
  padding-top: 0;
  padding-bottom: 6rem;
}
section.slideshow-section .row .column {
  padding: 6rem 1.5rem;
  padding-top: 0;
}
@media only screen and (min-width: 960px) {
  section.slideshow-section .row .column {
    padding: 10rem 1.5rem;
    padding-top: 0;
  }
}
section.slideshow-section .flickity-slideshow, section.slideshow-section .flickity-slideshow-edit {
  width: 100%;
}
section.slideshow-section .flickity-slideshow .ss-slide, section.slideshow-section .flickity-slideshow-edit .ss-slide {
  background-color: transparent;
  position: relative;
  width: 100%;
}
section.slideshow-section .flickity-slideshow .ss-slide > div, section.slideshow-section .flickity-slideshow-edit .ss-slide > div {
  position: relative;
  text-align: left;
}
section.slideshow-section .flickity-slideshow .ss-slide > div p, section.slideshow-section .flickity-slideshow-edit .ss-slide > div p {
  color: rgb(30, 30, 30);
  font-size: 3rem;
  font-style: italic;
  line-height: 1.2;
  margin-bottom: 0.6em;
}
@media only screen and (min-width: 576px) {
  section.slideshow-section .flickity-slideshow .ss-slide > div p, section.slideshow-section .flickity-slideshow-edit .ss-slide > div p {
    font-size: 4.2rem;
  }
}
section.slideshow-section .flickity-slideshow .ss-slide > div p:not(:first-child):last-child, section.slideshow-section .flickity-slideshow-edit .ss-slide > div p:not(:first-child):last-child {
  font-size: 2.4rem;
  font-weight: 700;
}
@media only screen and (min-width: 576px) {
  section.slideshow-section .flickity-slideshow .ss-slide > div p:not(:first-child):last-child, section.slideshow-section .flickity-slideshow-edit .ss-slide > div p:not(:first-child):last-child {
    font-size: 3rem;
  }
}
section.slideshow-section .flickity-slideshow .ss-slide > div p:last-child, section.slideshow-section .flickity-slideshow-edit .ss-slide > div p:last-child {
  margin-bottom: 0;
}
section.slideshow-section.has-aspect .row {
  padding: 0;
}
section.slideshow-section.has-aspect .row .column {
  padding: 0;
}
section.slideshow-section.has-aspect .flickity-slideshow .ss-slide::before, section.slideshow-section.has-aspect .flickity-slideshow-edit .ss-slide::before {
  content: "";
  display: table;
  padding-bottom: 56.25%;
}
section.slideshow-section.has-aspect .flickity-slideshow .ss-slide .label, section.slideshow-section.has-aspect .flickity-slideshow-edit .ss-slide .label {
  bottom: 80px;
  font-size: 1.6rem;
  position: absolute;
  right: 3%;
}
section.slideshow-section .controls {
  padding-top: 10px;
}
section.slideshow-section .controls .maf-button {
  background-color: white;
  border: 2px solid white;
  border-radius: 50%;
  height: 50px;
  margin: 0 10px 10px 0;
  min-width: 0;
  padding: 0;
  position: relative;
  width: 50px;
}
section.slideshow-section .controls .maf-button::after {
  content: "";
  height: 0;
  left: 50%;
  position: absolute;
  top: 50%;
  transition: border-color 300ms ease-out;
  width: 0;
}
section.slideshow-section .controls .maf-button.fbut-prev {
  left: 0;
}
section.slideshow-section .controls .maf-button.fbut-prev::after {
  border-top: 10px solid transparent;
  border-right: 16px solid black;
  border-bottom: 10px solid transparent;
  transform: translate(-70%, -50%);
}
section.slideshow-section .controls .maf-button.fbut-prev:hover {
  background-color: transparent;
}
section.slideshow-section .controls .maf-button.fbut-prev:hover::after {
  border-right-color: white;
}
section.slideshow-section .controls .maf-button.fbut-next {
  right: 0;
}
section.slideshow-section .controls .maf-button.fbut-next::after {
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  border-left: 16px solid black;
  transform: translate(-30%, -50%);
}
section.slideshow-section .controls .maf-button.fbut-next:hover {
  background-color: transparent;
}
section.slideshow-section .controls .maf-button.fbut-next:hover::after {
  border-left-color: white;
}
section.simple-gallery figcaption {
  display: none;
}
section.simple-gallery .row .header {
  padding-top: 0;
}
section.simple-gallery .row .header .maf-content {
  align-items: flex-start;
  border-top: 0.1rem solid rgb(0, 0, 0);
  padding-top: 6rem;
  text-align: left;
}
@media only screen and (min-width: 960px) {
  section.simple-gallery .row .header .maf-content {
    padding-top: 10rem;
  }
}
section.simple-gallery .row .column.maf-col-1 {
  padding-top: 40px;
  padding-bottom: 40px;
}
section.full-gallery.gallery-head .row {
  flex-direction: column;
  flex-wrap: nowrap;
  padding-top: 6rem;
}
@media only screen and (min-width: 1152px) {
  section.full-gallery.gallery-head .row {
    flex-direction: row;
    flex-wrap: wrap;
  }
}
section.full-gallery.gallery-head .row .column {
  align-items: flex-start;
  padding-top: 0;
}
section.full-gallery.gallery-head .row .column.maf-col-1 {
  width: 100%;
}
@media only screen and (min-width: 1152px) {
  section.full-gallery.gallery-head .row .column.maf-col-1 {
    width: 50%;
  }
}
@media only screen and (min-width: 1440px) {
  section.full-gallery.gallery-head .row .column.maf-col-1 {
    width: 33.333%;
  }
}
section.full-gallery.gallery-head .row .column.maf-col-1 .maf-content {
  border-top: 2rem solid currentColor;
  padding-top: 6rem;
}
section.full-gallery.gallery-head .row .column.maf-col-2 {
  width: 100%;
}
@media only screen and (min-width: 1152px) {
  section.full-gallery.gallery-head .row .column.maf-col-2 {
    width: 50%;
  }
}
@media only screen and (min-width: 1440px) {
  section.full-gallery.gallery-head .row .column.maf-col-2 {
    width: 66.666%;
  }
}
section.full-gallery.gallery-head .row .column.maf-col-2 .maf-content {
  max-width: 62.5rem;
}
@media only screen and (min-width: 1152px) {
  section.full-gallery.gallery-head .row .column.maf-col-2 .maf-content {
    padding-top: 8rem;
  }
}
section.full-gallery.gallery-list div.gallery-list-feed article.card {
  width: 100%;
}
@media only screen and (min-width: 768px) {
  section.full-gallery.gallery-list div.gallery-list-feed article.card {
    width: 50%;
  }
}
@media only screen and (min-width: 1152px) {
  section.full-gallery.gallery-list div.gallery-list-feed article.card {
    width: 33.333%;
  }
}
section.full-gallery.gallery-list div.gallery-list-feed article.card .portal-item {
  background-color: rgb(30, 30, 30);
  max-width: 50rem;
  text-align: center;
}
section.full-gallery.gallery-list div.gallery-list-feed article.card .portal-item .portal-content .tn .tn-img {
  opacity: 0.6;
}
section.full-gallery.gallery-list div.gallery-list-feed article.card .portal-item .portal-content .info {
  justify-content: center;
  padding: 5%;
  perspective: 40rem;
}
section.full-gallery.gallery-list div.gallery-list-feed article.card .portal-item .portal-content .title {
  font-size: 3rem;
  font-weight: 900;
  min-height: 0;
  padding: 0;
  transform: rotateZ(0);
  transform-origin: 50% 100%;
  transition: all 600ms ease-out;
}
section.full-gallery.gallery-list div.gallery-list-feed article.card .portal-item:hover .portal-content .tn .tn-img, section.full-gallery.gallery-list div.gallery-list-feed article.card .portal-item:focus .portal-content .tn .tn-img {
  opacity: 0.4;
}
section.full-gallery.gallery-list div.gallery-list-feed article.card .portal-item:hover .portal-content .info, section.full-gallery.gallery-list div.gallery-list-feed article.card .portal-item:focus .portal-content .info {
  box-shadow: 0 0 3rem rgba(0, 0, 0, 0.7) inset;
}
section.full-gallery.gallery-list div.gallery-list-feed article.card .portal-item:hover .portal-content .title, section.full-gallery.gallery-list div.gallery-list-feed article.card .portal-item:focus .portal-content .title {
  text-shadow: 0 0 0.5rem black;
  transform: translateY(-5rem) rotateX(30deg);
}
section.full-gallery.gallery-list .row .column {
  padding-top: 0;
}
section.full-gallery.gallery-view .row .column {
  padding-top: 0;
}
section.full-gallery.highlight .row .column {
  padding-bottom: 5.25rem;
}
@media only screen and (min-width: 960px) {
  section.full-gallery.highlight .row .column {
    padding-bottom: 8.5rem;
  }
}
section.full-gallery.gallery-page {
  background-color: black;
  color: white;
  height: calc( var(--app-height) - 10rem);
}
@media only screen and (min-width: 768px) {
  section.full-gallery.gallery-page {
    height: calc( var(--app-height) - 20rem);
  }
}
section.full-gallery.gallery-page.is-video-page {
  background-color: white;
  color: rgb(30, 30, 30);
}
section.full-gallery.gallery-page .row {
  flex: 0 0 auto;
  height: 100%;
}
section.full-gallery.gallery-page .row .column {
  max-height: 100%;
  padding-top: 0;
  padding-bottom: 3rem;
}
@media only screen and (min-width: 576px) {
  section.full-gallery.gallery-page .row .column {
    padding-bottom: 6rem;
    padding-top: 1rem;
  }
}
section.full-gallery.gallery-page .row .column .maf-content {
  flex: 0 0 auto;
}
section.full-gallery.gallery-page .row .column .maf-content.ctrl {
  align-items: flex-end;
  flex: 0 0 auto;
  flex-direction: row;
  font-size: 1.8rem;
  justify-content: center;
  height: 3.6rem;
  max-width: 36rem;
  padding: 0.5rem 0;
}
section.full-gallery.gallery-page .row .column .maf-content.ctrl a {
  align-items: center;
  aspect-ratio: 1/1;
  display: inline-flex;
  height: 100%;
  line-height: 1;
  padding: 0.5rem;
  position: relative;
  justify-content: center;
  text-decoration: none;
}
section.full-gallery.gallery-page .row .column .maf-content.ctrl a::before, section.full-gallery.gallery-page .row .column .maf-content.ctrl a::after {
  background-color: currentColor;
  color: inherit;
  content: "";
  height: 50%;
  position: absolute;
  width: 0.2rem;
}
section.full-gallery.gallery-page .row .column .maf-content.ctrl a.prev {
  justify-content: flex-start;
}
section.full-gallery.gallery-page .row .column .maf-content.ctrl a.prev::before, section.full-gallery.gallery-page .row .column .maf-content.ctrl a.prev::after {
  left: 0;
}
section.full-gallery.gallery-page .row .column .maf-content.ctrl a.prev::before {
  bottom: 50%;
  transform: rotate(55deg);
  transform-origin: bottom;
}
section.full-gallery.gallery-page .row .column .maf-content.ctrl a.prev::after {
  top: 50%;
  transform: rotate(-55deg);
  transform-origin: top;
}
section.full-gallery.gallery-page .row .column .maf-content.ctrl a.back {
  flex-direction: column;
  justify-content: center;
  margin: 0 auto;
}
section.full-gallery.gallery-page .row .column .maf-content.ctrl a.back::before, section.full-gallery.gallery-page .row .column .maf-content.ctrl a.back::after {
  left: 50%;
}
section.full-gallery.gallery-page .row .column .maf-content.ctrl a.back::before {
  top: 0.5rem;
  transform: rotate(-35deg);
  transform-origin: top;
}
section.full-gallery.gallery-page .row .column .maf-content.ctrl a.back::after {
  top: 0.5rem;
  transform: rotate(35deg);
  transform-origin: top;
}
section.full-gallery.gallery-page .row .column .maf-content.ctrl a.next {
  justify-content: flex-end;
}
section.full-gallery.gallery-page .row .column .maf-content.ctrl a.next::before, section.full-gallery.gallery-page .row .column .maf-content.ctrl a.next::after {
  right: 0;
}
section.full-gallery.gallery-page .row .column .maf-content.ctrl a.next::before {
  bottom: 50%;
  transform: rotate(-55deg);
  transform-origin: bottom;
}
section.full-gallery.gallery-page .row .column .maf-content.ctrl a.next::after {
  top: 50%;
  transform: rotate(55deg);
  transform-origin: top;
}
section.full-gallery.gallery-page .row .column .maf-content.ctrl a.disable {
  opacity: 0;
  visibility: hidden;
}
section.full-gallery.gallery-page .row .column .maf-content.img {
  display: inline-block;
  flex: 1 1 auto;
}
section.full-gallery.gallery-page .row .column .maf-content.img img {
  height: 100%;
  left: 0;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
  position: absolute;
  top: 0;
  width: 100%;
}
section.full-gallery.gallery-page .row .column .maf-content.vid {
  display: inline-block;
  flex: 1 1 auto;
}
section.full-gallery.gallery-page .row .column .maf-content.vid .is-video {
  padding-bottom: 0;
}
section.full-gallery.gallery-page .row .column .maf-content.vid .is-video iframe {
  aspect-ratio: 16/9;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
}
section.full-gallery.gallery-page .row .column .maf-content.desc {
  font-size: 1.8rem;
  padding-top: 1rem;
}
@media only screen and (min-width: 576px) {
  section.full-gallery.gallery-page .row .column .maf-content.desc {
    padding-top: 2rem;
  }
}
section.full-gallery.gallery-page .row .column .maf-content.desc p {
  line-height: 1.2;
  margin-bottom: 0.3em;
}
section.full-gallery.gallery-page .row .column .maf-content.desc p:last-child {
  margin-bottom: 0;
}
section.social-section .blog-nav {
  width: 100%;
}
section.social-section .blog-nav .blog-aside-content > a {
  margin-bottom: 10px;
}
section.social-section .blog-nav .blog-aside-content > a .blog-current-item {
  font-size: 1.8rem;
}
section.social-section .blog-nav .blog-aside-content > a .blog-current-item p {
  line-height: 1.4;
}
section.social-section .blog-nav .blog-aside-content > a:hover .blog-current-item {
  color: rgb(30, 30, 30);
}
section.social-section .row {
  padding-top: 30px;
  padding-bottom: 30px;
}
section.social-section .row .column {
  justify-content: flex-start;
}
section.social-section .row .column .maf-content {
  text-align: center;
}
section.social-section .row .column .maf-content p.label {
  font-size: 4rem;
  text-transform: uppercase;
}
@media only screen and (min-width: 576px) {
  section.social-section .row .column .maf-content p.label {
    font-size: 5.4rem;
  }
}
section.social-section .row .column.maf-col-1 {
  align-items: flex-start;
}
section.social-section .row .column.maf-col-3 .maf-content .sc-links a {
  margin-right: 20px;
  margin-bottom: 20px;
}
section.social-section .row .column.maf-col-3 .maf-content .sc-links a:last-child {
  margin-right: 0;
}
section.social-section .row .column.maf-col-3 .maf-content .sc-links a img {
  height: 40px;
}
section.search-section .row .column.whole {
  padding-top: 3rem;
  text-align: left;
}
section.search-section .row .column.whole .maf-content {
  max-width: 90rem;
}
section.search-section .row .column.whole .maf-content h2 {
  font-size: 2.4rem;
}
section.search-section .row .column.whole .maf-content ul {
  list-style-type: none;
  max-width: none;
  padding: 0;
}
section.search-section .row .column.whole .maf-content ul li {
  padding: 0.7rem 1rem 0.3rem 1rem;
}
section.search-section .row .column.whole .maf-content ul li::before {
  display: none;
}
section.search-section .row .column.whole .maf-content ul li:nth-of-type(even) {
  background-color: rgba(0, 0, 0, 0.05);
}
section.search-section .row .column.whole .maf-content p.label {
  font-family: "Quicksand", sans-serif;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.2;
}
section.search-section .row .column.whole .maf-content.results {
  align-items: flex-start;
  margin-bottom: 2rem;
}
section.search-section .label {
  margin-bottom: 1rem;
}
section.contact-section p.phone, section.contact-section p.email {
  font-family: "Quicksand", sans-serif;
  font-size: 2.4rem;
  margin-bottom: 0.1em;
}
@media only screen and (min-width: 576px) {
  section.contact-section p.phone, section.contact-section p.email {
    font-size: 3rem;
  }
}
section.contact-section p.phone span, section.contact-section p.email span {
  display: inline-block;
}
section.contact-section p.phone a:not(.button), section.contact-section p.email a:not(.button) {
  font-style: normal;
  font-weight: 700;
  text-decoration: none;
}
section.contact-section p.cpoint {
  font-size: 2.6rem;
  line-height: 0;
  margin-bottom: 15px;
}
section.contact-section p.cpoint.first {
  margin-top: 30px;
}
section.contact-section p.cpoint span {
  display: inline-block;
  font-size: 2rem;
  font-weight: 600;
  line-height: 1;
  width: 100%;
}
section.contact-section p.cpoint a:not(.button) {
  color: rgb(30, 30, 30);
  line-height: 1;
  text-decoration: none;
}
section.contact-section p.img-ico {
  align-items: center;
  display: flex;
  font-family: "DM Sans", sans-serif;
  font-size: 1.6rem;
  justify-content: flex-start;
}
section.contact-section p.img-ico span {
  display: inline-block;
  flex: 0 0 auto;
  line-height: 1.1;
}
section.contact-section p.img-ico span:last-child {
  flex: 1 1 auto;
  padding-left: 10px;
}
section.contact-section p.img-ico span a {
  color: rgb(30, 30, 30);
}
section.contact-section .social-icons {
  --icon-colour: transparent;
  --text-colour: rgb(30, 30, 30);
  font-size: 3.5rem;
  margin-top: 10px;
}
section.contact-section .social-icons a:hover, section.contact-section .social-icons a:focus {
  color: rgb(30, 30, 30);
}
section.contact-section #logo-contact {
  max-width: 350px;
}
section.contact-section address {
  display: inline-block;
  margin-bottom: 1.2em;
  width: 100%;
}
section.contact-section .is-map {
  min-height: 310px;
}
section.contact-section iframe {
  max-width: 100%;
}
section.contact-section .row {
  padding: 0;
  padding-top: 6rem;
}
@media only screen and (min-width: 576px) {
  section.contact-section .row {
    padding: 0 2.5rem;
    padding-top: 10rem;
  }
}
section.contact-section .row .header .maf-content {
  padding-top: 0;
  padding-bottom: 6rem;
}
section.contact-section .row .column {
  padding: 6rem 1.5rem;
  padding-top: 0;
}
@media only screen and (min-width: 960px) {
  section.contact-section .row .column {
    padding: 10rem 1.5rem;
    padding-top: 0;
  }
}
section.contact-section .row .column .maf-content {
  max-width: 55rem;
}
section.contact-section .row .column .maf-content.map {
  height: 100%;
  min-height: 500px;
  position: relative;
}
section.contact-section .row .column .maf-content.map iframe {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
section.privacy-policy {
  font-size: 1.8rem;
}
section.privacy-policy h2, section.privacy-policy .h2-style, section.privacy-policy h3, section.privacy-policy .h3-style, section.privacy-policy h4, section.privacy-policy .h4-style, section.privacy-policy h5, section.privacy-policy .h5-style, section.privacy-policy h6.h6-style {
  width: 100%;
}
section.privacy-policy h1, section.privacy-policy .h1-style {
  align-self: center;
  border-bottom: 0.1rem solid rgb(30, 30, 30);
  padding-bottom: 1rem;
  text-align: center;
  width: auto;
}
section.privacy-policy h2 {
  font-size: 3rem;
  margin: 1.2em 0;
  text-transform: none;
}
section.privacy-policy p.page-lead {
  text-align: center;
  margin-bottom: 5rem;
}
section.privacy-policy ol li, section.privacy-policy ul li {
  margin-bottom: 0.6em;
}
section.privacy-policy .row .column {
  align-items: center;
  padding-top: 10rem;
  padding-bottom: 20rem;
  text-align: left;
}
section.privacy-policy .row .column .maf-content {
  align-items: flex-start;
  justify-content: flex-start;
  max-width: 80rem;
}
section.account {
  min-height: 100vh;
}
section.account:first-child {
  padding-top: 5rem;
}
section.account > .maf-background {
  background-image: url("/images/Layout/account-bg.jpg");
  background-position: bottom right;
  background-size: contain;
}
section.account p.maf-msg {
  margin-top: 3rem;
}
section.account .row {
  max-width: 128rem;
}
section.account .row .column {
  justify-content: flex-start;
}
section.account .row .column.whole {
  align-items: flex-start;
  text-align: left;
}
section.account .row .column.whole .maf-content {
  -webkit-backdrop-filter: brightness(2) blur(5px);
          backdrop-filter: brightness(2) blur(5px);
  background-color: rgba(255, 255, 255, 0.7);
  border-radius: 0.5rem;
  max-width: 52rem;
  padding: 1rem;
}
section.account div.cardbox {
  padding: 1rem;
}
section.account div.cardbox article.card .actions {
  display: flex;
  flex-direction: row;
  font-size: 1.6rem;
  text-align: left;
}
section.account div.cardbox article.card .actions a {
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
  border-radius: 0.5rem;
  color: inherit;
  display: inline-block;
  font-weight: 600;
  margin-bottom: 0.7rem;
  opacity: 0.9;
  padding: 0.3rem 2%;
  text-decoration: none;
  width: 100%;
}
section.account div.cardbox article.card .actions a:hover, section.account div.cardbox article.card .actions a:focus {
  opacity: 1;
}
section.account div.cardbox article.card .actions a i {
  margin-right: 0.5rem;
}
section.account div.cardbox article.card .actions a.portal-delete {
  border: 0.3rem solid hsl(0, 45%, 51%);
  background-color: hsl(0, 45%, 75%);
  flex: 2 2 auto;
  margin-right: 2%;
}
section.account div.cardbox article.card .actions a.portal-delete:hover, section.account div.cardbox article.card .actions a.portal-delete:focus {
  background-color: hsl(0, 45%, 51%);
  color: rgb(250, 250, 250);
}
section.account div.cardbox article.card .actions a.portal-verify {
  border: 0.3rem solid hsl(120, 42%, 49%);
  background-color: hsl(120, 42%, 75%);
  flex: 1 1 auto;
}
section.account div.cardbox article.card .actions a.portal-verify:hover, section.account div.cardbox article.card .actions a.portal-verify:focus {
  background-color: hsl(120, 42%, 49%);
  color: rgb(250, 250, 250);
}
section.account div.cardbox article.card .actions.completed a.portal-delete {
  margin-right: 0;
}
section.account div.cardbox article.card .portal-item .portal-content .title {
  min-height: 0;
}
section.account div.cardbox article.card .portal-item .portal-content .desc.state {
  background-color: rgb(60, 60, 60);
  font-size: 1.6rem;
  margin-top: auto;
  margin-bottom: 1rem;
  padding: 0.7rem 1rem;
  text-align: center;
}
section.account div.cardbox article.card .portal-item .portal-content .desc.state.pub {
  background-color: hsl(120, 42%, 75%);
}
section.account#login p.small-text, section.account#register p.small-text {
  font-size: 1.6rem;
}
section.account#login .row .column .maf-content.maf-form form, section.account#register .row .column .maf-content.maf-form form {
  max-width: 52rem;
}
section.account#login .row .column .maf-content.maf-form form .maf-input input, section.account#register .row .column .maf-content.maf-form form .maf-input input {
  max-width: 35rem;
}
section.account#login .row .column.maf-col-1 .maf-content, section.account#register .row .column.maf-col-1 .maf-content {
  align-items: flex-start;
}
section.account#login p.maf-msg {
  margin-top: 0;
}
section.account#login .row .column .maf-content.maf-form form {
  margin-top: 4rem;
}
section.account.welcome h1, section.account.welcome .h1-style, section.account.welcome h2, section.account.welcome .h2-style, section.account.welcome h3, section.account.welcome .h3-style, section.account.welcome h4, section.account.welcome .h4-style, section.account.welcome h5, section.account.welcome .h5-style, section.account.welcome h6.h6-style {
  font-family: "DM Sans", sans-serif;
  font-weight: 700;
  max-width: 75rem;
  position: relative;
}
section.account.welcome h1.login, section.account.welcome .h1-style.login, section.account.welcome h2.login, section.account.welcome .h2-style.login, section.account.welcome h3.login, section.account.welcome .h3-style.login, section.account.welcome h4.login, section.account.welcome .h4-style.login, section.account.welcome h5.login, section.account.welcome .h5-style.login, section.account.welcome h6.h6-style.login {
  max-width: 35rem;
}
section.account.welcome h1, section.account.welcome .h1-style, section.account.welcome h2, section.account.welcome .h2-style {
  font-size: 3.4rem;
}
section.account.welcome h3, section.account.welcome .h3-style {
  font-size: 2.8rem;
}
section.account.welcome h4, section.account.welcome .h4-style, section.account.welcome h5, section.account.welcome .h5-style {
  font-size: 2.6rem;
}
section.account.account-menu {
  background-color: rgb(115, 141, 114);
}
section.account.account-menu .row .column {
  padding-top: 1rem;
  padding-bottom: 1.5rem;
}
section.account.account-menu .row .column .actions {
  width: 100%;
}
section.account.account-menu .row .column .actions .button {
  background-color: white;
  margin: 0.5rem 0.2rem 0 0.2rem;
}
section.account.account-menu .row .column .actions .button:hover {
  background-color: rgb(30, 30, 30);
}
section.account.account-menu .row .column .actions .button.active {
  background-color: rgb(30, 30, 30);
  color: white;
}
section.account.account-update .avatar {
  margin-bottom: 4rem;
  max-width: 48rem;
  text-align: center;
  width: 100%;
}
section.account.account-update .row .column .maf-content.links {
  margin-top: 6rem;
}
section.account.account-update #op {
  height: 0;
  overflow: hidden;
  transition: all 300ms ease-out;
  width: 100%;
}
section.account.account-update #op #op-msg {
  bottom: 0;
  font-weight: 500;
  left: 0;
  padding: 1rem 2rem;
  position: fixed;
  text-align: center;
  transition: all 300ms ease-out;
  width: 100%;
  z-index: 777;
}
section.account.account-update #op.show {
  height: 5rem;
  transition: all 300ms ease-out;
}
section.account.account-update #op.show #op-msg {
  background-color: rgb(60, 60, 60);
  color: white;
  min-height: 5rem;
}
section.account.account-update #op.show #op-msg.error {
  background-color: red;
}
section.account.listings .cardbox {
  margin-top: 4rem;
}
section.account.listings .cardbox .card .portal-item {
  color: rgb(250, 250, 250);
}
section.account.listings .cardbox .card .portal-item .portal-content .title {
  text-transform: uppercase;
}
section.account.product-list .cardbox {
  margin-top: 6rem;
}
section.account.product-list .cardbox .card .portal-item {
  color: rgb(250, 250, 250);
}
section.account.product-list .cardbox .card .portal-item .portal-content .card-button {
  color: rgb(71, 79, 71);
}
section.account.product-list .cardbox .card .portal-item .portal-content .card-button::after {
  background-color: rgb(71, 79, 71);
}
section.account.product-list .footer-button:hover, section.account.product-list .footer-button:focus {
  background-color: rgb(71, 79, 71);
}
section.account .img-upld-block {
  width: 100%;
}
section.account .img-upld-list {
  margin-top: 3rem;
  margin-bottom: 4rem;
  width: 100%;
}
section.account .form-cards {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  margin: 0 -1rem;
  width: calc(100% + 2rem);
}
section.account .form-cards .fc {
  flex: 0 0 100%;
  padding: 1rem;
}
@media only screen and (min-width: 576px) {
  section.account .form-cards .fc {
    flex: 0 0 50%;
  }
}
@media only screen and (min-width: 960px) {
  section.account .form-cards .fc {
    flex: 0 0 25%;
  }
}
section.account .form-cards .fc .drag-bar {
  align-items: center;
  border-radius: 0.5rem 0.5rem 0 0;
  background-color: rgb(60, 60, 60);
  cursor: pointer;
  display: flex;
  font-size: 2rem;
  justify-content: space-between;
}
section.account .form-cards .fc .drag-bar i {
  margin: auto 0.5rem;
}
section.account .form-cards .fc .drag-bar a {
  align-items: center;
  aspect-ratio: 1/1;
  color: hsl(0, 45%, 51%);
  display: flex;
  justify-content: center;
  padding: 0.5rem;
  text-decoration: none;
}
section.account .form-cards .fc .drag-bar a:hover, section.account .form-cards .fc .drag-bar a:focus {
  background-color: hsl(0, 45%, 51%);
  color: rgb(250, 250, 250);
}
section.map.interactive-map .is-map {
  border: 2rem solid rgb(60, 60, 60);
  display: none;
  height: auto;
}
section.map.interactive-map .is-map::before {
  content: "";
  display: table;
  padding-bottom: 125%;
  width: 100%;
}
@media only screen and (min-width: 576px) {
  section.map.interactive-map .is-map::before {
    padding-bottom: 100%;
  }
}
@media only screen and (min-width: 768px) {
  section.map.interactive-map .is-map::before {
    padding-bottom: 75%;
  }
}
@media only screen and (min-width: 1024px) {
  section.map.interactive-map .is-map::before {
    padding-bottom: 56.25%;
  }
}
section.map.interactive-map .is-map #google-map-interactive .gm-style-iw.gm-style-iw-c {
  background-color: transparent !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  max-width: 212px !important;
  overflow: visible !important;
}
section.map.interactive-map .is-map #google-map-interactive .gm-style-iw.gm-style-iw-c .gm-style-iw-d {
  overflow: auto !important;
}
section.map.interactive-map .is-map #google-map-interactive .gm-style-iw.gm-style-iw-c > button {
  top: 5px !important;
  right: 8px !important;
  width: 20px !important;
  height: 20px !important;
}
section.map.interactive-map .is-map #google-map-interactive .gm-style-iw.gm-style-iw-c > button img {
  width: 20px !important;
  height: 20px !important;
  filter: grayscale(1) invert(1);
}
section.map.interactive-map .is-map #google-map-interactive .map-info-content {
  background-color: white;
  padding: 0;
}
section.map.interactive-map .is-map #google-map-interactive .map-info-content .logo {
  background-color: rgb(30, 30, 30);
  padding: 21px;
}
section.map.interactive-map .is-map #google-map-interactive .map-info-content .image {
  margin-bottom: 10px;
}
section.map.interactive-map .is-map #google-map-interactive .map-info-content .image img {
  max-width: 100%;
}
section.map.interactive-map .is-map #google-map-interactive .map-info-content p {
  font-size: 1.4rem;
  font-weight: 500;
  margin-bottom: 0;
  padding: 0 10px 10px 10px;
}
section.map.interactive-map .is-map #google-map-interactive .map-info-content p.name {
  background-color: rgb(180, 180, 180);
  color: white;
  font-family: "Quicksand", sans-serif;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1;
  margin: 0;
  padding: 20px 10px 15px 10px;
  text-transform: uppercase;
}
section.map.interactive-map .is-map #google-map-interactive .map-info-content a:not(.button) {
  color: rgb(180, 180, 180);
  font-weight: 500;
}
section.map.interactive-map .is-map #google-map-interactive .map-info-content a:not(.button):hover {
  color: rgb(60, 60, 60);
}
section.map.interactive-map .is-map #google-map-interactive .map-info-content a.button {
  background-color: rgb(60, 60, 60);
  border-color: rgb(60, 60, 60);
  border-radius: 20px;
  color: rgb(250, 250, 250);
  font-size: 1.2rem;
  font-weight: 700;
  margin: 10px 0;
  min-height: 0;
  min-width: 0;
  padding: 3px 25px;
}
section.map.interactive-map .is-map #google-map-interactive .map-info-content a.button:hover {
  background-color: transparent;
  color: rgb(60, 60, 60);
}
section.map.interactive-map .is-map.show {
  display: block;
}
section.map.interactive-map #map-filters {
  padding-top: 20px;
}
section.map.interactive-map #map-filters .button {
  border: 1px solid rgb(30, 30, 30);
  border-radius: 0;
  color: rgb(30, 30, 30);
  font-weight: 400;
  margin: 0 3px 6px 0;
  padding: 20px 23px;
}
section.map.interactive-map #map-filters .button:hover, section.map.interactive-map #map-filters .button.active {
  background-color: rgb(71, 79, 71);
  border-color: rgb(71, 79, 71);
  color: rgb(250, 250, 250);
}
section.map.interactive-map #map-list-view {
  align-content: stretch;
  align-items: stretch;
  display: none;
  flex-direction: row;
  flex-wrap: wrap;
  margin: 0 -10px;
  width: calc(100% + 20px);
}
section.map.interactive-map #map-list-view > div {
  display: inline-block;
  flex: 0 0 auto;
  padding: 10px;
  width: 25%;
}
section.map.interactive-map #map-list-view > div > div {
  display: flex;
  height: 100%;
  flex-direction: column;
  border: 1px solid rgb(135, 82, 181);
  padding: 15px 20px;
}
section.map.interactive-map #map-list-view > div > div > div {
  display: inline-block;
  padding: 5px 0;
  width: 100%;
}
section.map.interactive-map #map-list-view > div > div > div.name {
  color: rgb(30, 30, 30);
  font-size: 2rem;
  font-weight: 600;
}
section.map.interactive-map #map-list-view > div > div > div.address {
  display: flex;
  flex-direction: column;
}
section.map.interactive-map #map-list-view > div > div > div.address > span {
  display: inline-block;
  width: 100%;
}
section.map.interactive-map #map-list-view.show {
  display: flex;
}
section.map.interactive-map #sh-ctrlr {
  align-items: center;
  display: flex;
  flex-direction: column;
  padding-top: 12px;
  text-align: right;
  width: 100%;
}
@media only screen and (min-width: 576px) {
  section.map.interactive-map #sh-ctrlr {
    align-items: flex-start;
    flex-direction: row;
  }
}
section.map.interactive-map #sh-ctrlr > span, section.map.interactive-map #sh-ctrlr > a {
  background-color: rgb(30, 30, 30);
  border: 1px solid rgb(30, 30, 30);
  color: rgb(250, 250, 250);
  cursor: pointer;
  display: none;
  font-weight: 500;
  margin-bottom: 10px;
  padding: 8px 12px;
}
section.map.interactive-map #sh-ctrlr > span:last-child, section.map.interactive-map #sh-ctrlr > span:nth-last-child(2), section.map.interactive-map #sh-ctrlr > a:last-child, section.map.interactive-map #sh-ctrlr > a:nth-last-child(2) {
  margin-bottom: 0;
}
@media only screen and (min-width: 576px) {
  section.map.interactive-map #sh-ctrlr > span, section.map.interactive-map #sh-ctrlr > a {
    margin-bottom: 0;
    margin-left: 10px;
  }
  section.map.interactive-map #sh-ctrlr > span:first-child, section.map.interactive-map #sh-ctrlr > a:first-child {
    margin-left: 0;
  }
}
@media only screen and (min-width: 576px) {
  section.map.interactive-map #sh-ctrlr > span.spacer, section.map.interactive-map #sh-ctrlr > a.spacer {
    margin-right: auto;
  }
}
section.map.interactive-map #sh-ctrlr > span:hover, section.map.interactive-map #sh-ctrlr > a:hover {
  background-color: transparent;
  color: rgb(30, 30, 30);
}
section.map.interactive-map #sh-ctrlr > span.active, section.map.interactive-map #sh-ctrlr > a.active {
  display: inline-block;
  flex: 0 0 auto;
}
section.map.interactive-map .header {
  align-items: flex-start;
}
section.map.interactive-map .header h2, section.map.interactive-map .header .h2-style {
  background-color: rgb(180, 180, 180);
  color: white;
  font-size: 2.4rem;
  margin-bottom: 1.5em;
  padding: 10px 15px;
  text-transform: uppercase;
  width: auto;
}
section.map.interactive-map .header .maf-content {
  align-items: flex-start;
  max-width: 1100px;
  text-align: left;
}
section.map.interactive-map.maf-h-h .row .column {
  padding-top: 50px;
}
section.counter-section {
  background-color: rgb(115, 141, 114);
}
section.counter-section .row .column .maf-content {
  align-items: stretch;
  align-content: stretch;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  position: relative;
  margin: 0 -2rem;
  max-width: 119rem;
  width: calc(100% + 4rem);
}
section.counter-section .row .column .maf-content .stat-counter {
  align-items: center;
  display: flex;
  flex-direction: column;
  font-size: 1.8rem;
  font-weight: 400;
  margin: 2rem;
  padding: 0;
  width: calc(100% - 4rem);
}
@media only screen and (min-width: 576px) {
  section.counter-section .row .column .maf-content .stat-counter {
    width: calc(50% - 4rem);
  }
}
@media only screen and (min-width: 960px) {
  section.counter-section .row .column .maf-content .stat-counter {
    width: calc(25% - 4rem);
  }
}
section.counter-section .row .column .maf-content .stat-counter .counter {
  align-items: center;
  aspect-ratio: 1/1;
  background-color: rgb(30, 30, 30);
  border-radius: 50%;
  color: rgb(115, 141, 114);
  display: flex;
  justify-content: center;
  margin-bottom: 1rem;
  max-width: 25rem;
  width: 100%;
}
section.counter-section .row .column .maf-content .stat-counter .counter.col {
  flex-direction: column;
}
section.counter-section .row .column .maf-content .stat-counter .counter.rowr {
  flex-direction: row-reverse;
}
section.counter-section .row .column .maf-content .stat-counter .stat, section.counter-section .row .column .maf-content .stat-counter .unit {
  font-family: "Quicksand", sans-serif;
  font-size: 8.4rem;
  line-height: 0.9;
}
section.counter-section .row .column .maf-content .stat-counter .stat.small {
  font-size: 6.8rem;
}
section.counter-section .row .column .maf-content .stat-counter .unit {
  font-size: 3.9rem;
}
section.counter-section .row .column .maf-content .stat-counter .unit.sup {
  margin-bottom: 1em;
}
section.counter-section .row .column .maf-content .stat-counter .unit.lrg {
  font-size: 6.8rem;
}
section.counter-section .row .column .maf-content .stat-counter p {
  color: rgb(30, 30, 30);
  line-height: 1.2;
  margin-bottom: 5px;
}
section.counter-section .row .column .maf-content .stat-counter p:last-child {
  margin-top: auto;
  margin-bottom: 0;
}
section.counter-section .row .column .maf-content .stat-counter p strong {
  color: rgb(30, 30, 30);
}
section.counter-section .row .column .maf-content .stat-counter input[type=number] {
  border-color: rgb(30, 30, 30);
  color: rgb(115, 141, 114);
  font-family: "Quicksand", sans-serif;
  font-size: 4.5rem;
  font-weight: 700;
  text-align: center;
}
section.counter-section .row .column .maf-content .stat-counter .mceEditor {
  display: inline-flex;
  flex: 1 1 auto;
  flex-direction: column;
  width: 100%;
}
section.counter-section.maf-h-h .row .column {
  padding-top: 40px;
}
section.counter-section.maf-h-f .row .column {
  padding-bottom: 40px;
}
section.basket {
  font-size: 1.8rem;
  overflow: visible;
  padding: 0 1.5rem;
}
section.basket .basketerror {
  color: rgb(195, 0, 40);
}
section.basket .maf-checkout-con {
  width: 100%;
  padding: 0;
  margin: 0 auto 5rem auto;
}
section.basket .maf-checkout-con .no-items {
  min-height: 40vh;
  padding: 0 2.5rem;
}
section.basket .maf-checkout-con input[type=submit], section.basket .maf-checkout-con input input[type=reset] {
  min-height: 5rem;
}
section.basket .maf-checkout-con input[type=submit]:hover, section.basket .maf-checkout-con input input[type=reset]:hover {
  opacity: 0.9;
}
section.basket .maf-checkout-con input[type=submit].update-button, section.basket .maf-checkout-con input input[type=reset].update-button {
  border-radius: 0;
  font-size: 1.4rem;
  font-weight: 700;
  min-height: 0;
  min-width: 0;
  padding: 5px 8px;
  text-transform: capitalize;
}
section.basket .maf-checkout-con .basket-row-head,
section.basket .maf-checkout-con .basket-row, section.basket .maf-checkout-con .basket-row-disco {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  section.basket .maf-checkout-con .basket-row-head,
  section.basket .maf-checkout-con .basket-row, section.basket .maf-checkout-con .basket-row-disco {
    flex-wrap: nowrap;
  }
}
section.basket .maf-checkout-con .basket-row-head.price,
section.basket .maf-checkout-con .basket-row.price, section.basket .maf-checkout-con .basket-row-disco.price {
  font-size: 1.5rem;
}
@media only screen and (min-width: 768px) {
  section.basket .maf-checkout-con .basket-row-head.price,
  section.basket .maf-checkout-con .basket-row.price, section.basket .maf-checkout-con .basket-row-disco.price {
    justify-content: flex-end;
  }
}
section.basket .maf-checkout-con .basket-row-head.totals,
section.basket .maf-checkout-con .basket-row.totals, section.basket .maf-checkout-con .basket-row-disco.totals {
  border-top: 1px solid rgb(30, 30, 30);
  margin-top: 5px;
}
section.basket .maf-checkout-con .basket-row-head > div,
section.basket .maf-checkout-con .basket-row > div, section.basket .maf-checkout-con .basket-row-disco > div {
  display: inline-block;
  flex: 1 1 auto;
  font-size: 1.5rem;
  padding: 5px;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  section.basket .maf-checkout-con .basket-row-head > div,
  section.basket .maf-checkout-con .basket-row > div, section.basket .maf-checkout-con .basket-row-disco > div {
    font-size: 1.6rem;
  }
}
section.basket .maf-checkout-con .basket-row-head > div.to-pay,
section.basket .maf-checkout-con .basket-row > div.to-pay, section.basket .maf-checkout-con .basket-row-disco > div.to-pay {
  background-color: rgb(204, 231, 204);
}
section.basket .maf-checkout-con .basket-row-head .basket-name,
section.basket .maf-checkout-con .basket-row .basket-name, section.basket .maf-checkout-con .basket-row-disco .basket-name {
  padding: 8px 5px;
}
section.basket .maf-checkout-con .basket-row-head .basket-name.update,
section.basket .maf-checkout-con .basket-row .basket-name.update, section.basket .maf-checkout-con .basket-row-disco .basket-name.update {
  align-items: center;
  display: inline-flex;
  font-size: 0.8em;
  font-weight: 700;
}
@media only screen and (min-width: 768px) {
  section.basket .maf-checkout-con .basket-row-head .basket-name.update,
  section.basket .maf-checkout-con .basket-row .basket-name.update, section.basket .maf-checkout-con .basket-row-disco .basket-name.update {
    justify-content: flex-end;
  }
}
section.basket .maf-checkout-con .basket-row-head .basket-quantity,
section.basket .maf-checkout-con .basket-row .basket-quantity, section.basket .maf-checkout-con .basket-row-disco .basket-quantity {
  max-width: 75px;
}
@media only screen and (min-width: 768px) {
  section.basket .maf-checkout-con .basket-row-head .basket-quantity,
  section.basket .maf-checkout-con .basket-row .basket-quantity, section.basket .maf-checkout-con .basket-row-disco .basket-quantity {
    max-width: 100px;
    text-align: center;
  }
}
section.basket .maf-checkout-con .basket-row-head .basket-quantity input[type=number],
section.basket .maf-checkout-con .basket-row .basket-quantity input[type=number], section.basket .maf-checkout-con .basket-row-disco .basket-quantity input[type=number] {
  font-size: 1.6rem;
  max-width: 50px;
  padding: 3px;
}
section.basket .maf-checkout-con .basket-row-head .basket-quantity.update input,
section.basket .maf-checkout-con .basket-row .basket-quantity.update input, section.basket .maf-checkout-con .basket-row-disco .basket-quantity.update input {
  margin: 0;
}
section.basket .maf-checkout-con .basket-row-head .basket-price,
section.basket .maf-checkout-con .basket-row .basket-price, section.basket .maf-checkout-con .basket-row-disco .basket-price {
  max-width: 150px;
}
section.basket .maf-checkout-con .basket-row-head .basket-price.to-pay,
section.basket .maf-checkout-con .basket-row .basket-price.to-pay, section.basket .maf-checkout-con .basket-row-disco .basket-price.to-pay {
  max-width: 150px;
}
section.basket .maf-checkout-con .basket-row-head .basket-total-row,
section.basket .maf-checkout-con .basket-row .basket-total-row, section.basket .maf-checkout-con .basket-row-disco .basket-total-row {
  max-width: 70px;
}
@media only screen and (min-width: 768px) {
  section.basket .maf-checkout-con .basket-row-head .basket-total-row,
  section.basket .maf-checkout-con .basket-row .basket-total-row, section.basket .maf-checkout-con .basket-row-disco .basket-total-row {
    max-width: 120px;
  }
}
section.basket .maf-checkout-con .basket-row-head .basket-delete,
section.basket .maf-checkout-con .basket-row .basket-delete, section.basket .maf-checkout-con .basket-row-disco .basket-delete {
  color: rgb(195, 0, 40);
  font-weight: 400;
  max-width: 70px;
  text-align: center;
  white-space: nowrap;
}
@media only screen and (min-width: 768px) {
  section.basket .maf-checkout-con .basket-row-head .basket-delete,
  section.basket .maf-checkout-con .basket-row .basket-delete, section.basket .maf-checkout-con .basket-row-disco .basket-delete {
    max-width: 80px;
  }
}
section.basket .maf-checkout-con .basket-row-head .basket-delete a,
section.basket .maf-checkout-con .basket-row .basket-delete a, section.basket .maf-checkout-con .basket-row-disco .basket-delete a {
  color: inherit;
}
section.basket .maf-checkout-con .basket-row-head {
  border-bottom: 1px solid rgb(30, 30, 30);
  color: rgb(30, 30, 30);
}
section.basket .maf-checkout-con .basket-row-head > div {
  font-weight: 700;
}
section.basket .maf-checkout-con .basket-row.item {
  margin: 5px 0;
}
@media only screen and (min-width: 768px) {
  section.basket .maf-checkout-con .basket-row.item {
    margin: 0;
  }
}
section.basket .maf-checkout-con .basket-row.item:nth-of-type(odd) {
  background-color: rgb(235, 235, 235);
}
section.basket .maf-checkout-con .basket-row.item input {
  background-color: white;
}
section.basket .maf-checkout-con .basket-row-disco {
  flex-wrap: wrap;
  font-size: 2rem;
  font-weight: 700;
}
section.basket .maf-checkout-con .basket-row-disco span {
  margin-bottom: 10px;
  padding-right: 10px;
  width: 100%;
}
section.basket .maf-checkout-con .basket-row-disco span.error {
  color: rgb(195, 0, 40);
}
section.basket .maf-checkout-con .basket-row-disco input {
  margin-bottom: 5px;
}
section.basket .maf-checkout-con .basket-row-disco .disco {
  flex: 1 1 auto;
  font-size: 1.5rem;
  margin-right: 10px;
  max-width: 350px;
}
@media only screen and (min-width: 576px) {
  section.basket .maf-checkout-con .basket-row-disco .disco {
    font-size: 1.6rem;
  }
}
section.basket .maf-checkout-con .basket-row-disco .redeem {
  font-weight: bold;
  min-width: 150px;
}
section.basket .maf-checkout-con .basket-row-disco.form {
  margin-bottom: 20px;
}
section.basket .basket-buttons {
  text-align: center;
  width: 100%;
}
section.basket .basket-buttons input {
  margin: 5px;
}
section.basket .billing-overview {
  align-self: flex-start;
  background-color: rgb(235, 235, 235);
  border-radius: 5px;
  display: flex;
  flex-direction: column;
  margin-bottom: 1.2em;
  padding: 10px;
  width: 100%;
}
@media only screen and (min-width: 1024px) {
  section.basket .billing-overview {
    flex-direction: row;
    padding: 20px;
  }
}
section.basket .billing-overview p {
  font-size: 1.8rem;
  margin: 0;
}
section.basket .billing-overview p.head {
  font-weight: 600;
  padding-top: 20px;
}
section.basket .billing-overview p.head:first-child {
  padding-top: 0;
}
section.basket .billing-overview > div {
  display: inline-block;
  flex: 1 1 50%;
  max-width: 380px;
  padding: 5px;
}
section.basket .billing-overview > div p span {
  display: inline-block;
  font-weight: 700;
  max-width: 140px;
  width: 100%;
}
section.basket .row {
  box-shadow: 0 0 1.5rem rgba(0, 0, 0, 0.1);
  margin: 2rem auto 8rem auto;
  max-width: 113rem;
}
section.basket .row .column {
  padding-top: 4.5rem;
  text-align: left;
}
section.basket .row .column .maf-content.maf-form form {
  justify-content: flex-start;
}
section.page-locked .row .column .maf-content form {
  border: 0.1rem solid rgb(30, 30, 30);
  border-radius: 3rem;
  margin-top: 1.2em;
  max-width: 50rem;
  padding: 3rem;
}
section.page-locked .row .column .maf-content form .error {
  color: hsl(0, 45%, 51%);
}
section.no-spacing .header {
  padding-top: 0;
}
section.no-spacing .header .maf-content {
  padding-top: 0;
}
section.no-spacing .row {
  padding-top: 0;
  padding-bottom: 0;
}
section.no-spacing .row .column {
  padding-top: 0;
  padding-bottom: 0;
}
section.no-spacing .footer {
  padding-bottom: 0;
}
section.no-spacing .footer .maf-content {
  padding-bottom: 0;
}
section.no-spacing-top.maf-h-h .header {
  padding-top: 0 !important;
}
section.no-spacing-top.maf-h-h .header .maf-content {
  padding-top: 0 !important;
}
section.no-spacing-top:not(.maf-h-h) .row {
  padding-top: 0 !important;
}
section.no-spacing-top:not(.maf-h-h) .row .column {
  padding-top: 0 !important;
}
section.no-spacing-top:not(.maf-h-h).maf-rep-pad .row {
  padding-bottom: 0 !important;
}
section.no-spacing-top:not(.maf-h-h).maf-rep-pad .row .column {
  padding-bottom: 6rem !important;
}
@media only screen and (min-width: 960px) {
  section.no-spacing-top:not(.maf-h-h).maf-rep-pad .row .column {
    padding-bottom: 10rem !important;
  }
}
section.no-spacing-bottom .row {
  padding-bottom: 0 !important;
}
section.no-spacing-bottom .row .column {
  padding-bottom: 0 !important;
}
section.no-spacing-bottom.maf-rep-pad .row {
  padding-bottom: 0 !important;
}
section.no-spacing-bottom .footer {
  padding-bottom: 0;
}
section.no-spacing-bottom .footer .maf-content {
  padding-bottom: 0;
}
section.video-bg {
  background-color: black;
  color: rgb(250, 250, 250);
  min-height: 56.25vw;
  overflow: hidden;
}
section.video-bg .row .column {
  align-items: center;
  justify-content: center;
}
section.contentline-bottom .row::after {
  background-color: currentColor;
  bottom: 0;
  color: inherit;
  content: "";
  display: inline-block;
  height: 1px;
  left: 50%;
  position: absolute;
  transform: translateX(-50%);
  width: calc(100% - 3rem);
}
@media only screen and (min-width: 576px) {
  section.contentline-bottom .row::after {
    width: calc(100% - 6rem);
  }
}
section.contentline-top .row::before {
  background-color: currentColor;
  color: inherit;
  content: "";
  display: inline-block;
  height: 1px;
  left: 50%;
  position: absolute;
  top: 0;
  transform: translateX(-50%);
  width: calc(100% - 3rem);
}
@media only screen and (min-width: 576px) {
  section.contentline-top .row::before {
    width: calc(100% - 6rem);
  }
}
section.rss-feed div.cardbox {
  justify-content: flex-start;
}
section.rss-feed div.cardbox article.card, section.rss-feed div.cardbox div.card {
  width: 100%;
}
section.rss-feed div.cardbox article.card .portal-item, section.rss-feed div.cardbox div.card .portal-item {
  color: rgb(30, 30, 30);
  cursor: default;
  font-weight: 400;
  text-align: left;
  transform: none;
}
section.rss-feed div.cardbox article.card .portal-item .portal-content, section.rss-feed div.cardbox div.card .portal-item .portal-content {
  align-content: stretch;
  align-items: stretch;
  flex-direction: row;
  flex-wrap: wrap;
  padding: 10px 5px;
}
section.rss-feed div.cardbox article.card .portal-item .portal-content .info, section.rss-feed div.cardbox div.card .portal-item .portal-content .info {
  flex: 0 0 auto;
  padding: 20px 20px 0 20px;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  section.rss-feed div.cardbox article.card .portal-item .portal-content .info, section.rss-feed div.cardbox div.card .portal-item .portal-content .info {
    padding: 20px;
    width: 66.666%;
  }
}
@media only screen and (min-width: 960px) {
  section.rss-feed div.cardbox article.card .portal-item .portal-content .info, section.rss-feed div.cardbox div.card .portal-item .portal-content .info {
    width: 75%;
  }
}
section.rss-feed div.cardbox article.card .portal-item .portal-content .info .title, section.rss-feed div.cardbox div.card .portal-item .portal-content .info .title {
  font-size: 2.6rem;
  justify-content: flex-start;
  padding: 0;
}
@media only screen and (min-width: 960px) {
  section.rss-feed div.cardbox article.card .portal-item .portal-content .info .title, section.rss-feed div.cardbox div.card .portal-item .portal-content .info .title {
    font-size: 3.6rem;
  }
}
section.rss-feed div.cardbox article.card .portal-item .portal-content .info .desc, section.rss-feed div.cardbox div.card .portal-item .portal-content .info .desc {
  min-height: 0;
}
section.rss-feed div.cardbox article.card .portal-item .portal-content .info .desc img, section.rss-feed div.cardbox div.card .portal-item .portal-content .info .desc img {
  display: none;
}
section.rss-feed div.cardbox article.card .portal-item .portal-content .info .desc p, section.rss-feed div.cardbox div.card .portal-item .portal-content .info .desc p {
  font-size: 1.8rem;
  margin-bottom: 20px;
}
section.rss-feed div.cardbox article.card .portal-item .portal-content .side-col, section.rss-feed div.cardbox div.card .portal-item .portal-content .side-col {
  display: inline-block;
  flex: 0 0 auto;
  padding: 20px;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  section.rss-feed div.cardbox article.card .portal-item .portal-content .side-col, section.rss-feed div.cardbox div.card .portal-item .portal-content .side-col {
    width: 33.333%;
  }
}
@media only screen and (min-width: 960px) {
  section.rss-feed div.cardbox article.card .portal-item .portal-content .side-col, section.rss-feed div.cardbox div.card .portal-item .portal-content .side-col {
    width: 25%;
  }
}
section.rss-feed div.cardbox article.card .portal-item .portal-content .side-col div, section.rss-feed div.cardbox div.card .portal-item .portal-content .side-col div {
  font-size: 1.8rem;
  margin-bottom: 20px;
}
section.rss-feed div.cardbox article.card .portal-item .portal-content .side-col .button, section.rss-feed div.cardbox div.card .portal-item .portal-content .side-col .button {
  background-color: transparent;
  border-color: rgb(30, 30, 30);
  color: rgb(30, 30, 30);
}
section.rss-feed div.cardbox article.card .portal-item .portal-content .side-col .button:hover, section.rss-feed div.cardbox div.card .portal-item .portal-content .side-col .button:hover {
  background-color: rgb(30, 30, 30);
  color: rgb(250, 250, 250);
}
section.rss-feed div.cardbox article.card .portal-item:hover, section.rss-feed div.cardbox div.card .portal-item:hover {
  transform: none;
}
section.mobile-hide {
  display: none;
}
@media only screen and (min-width: 576px) {
  section.mobile-hide {
    display: flex;
  }
}

.is-footer {
  background-color: rgb(0, 0, 0);
  color: rgb(30, 30, 30);
  overflow: hidden;
  position: relative;
}
.is-footer a:not(.button) {
  font-style: normal;
  text-decoration: none;
}
.is-footer h2, .is-footer .h2-style {
  font-size: 2.8rem;
  margin-bottom: 0.4em;
}
@media only screen and (min-width: 576px) {
  .is-footer h2, .is-footer .h2-style {
    font-size: 3.6rem;
  }
}
.is-footer p i, .is-footer address i, .is-footer .name i, .is-footer .label i {
  display: none;
  height: 2rem;
  font-size: 1.6rem;
  margin-right: 1rem;
  position: relative;
  vertical-align: -10%;
  width: 20px;
}
.is-footer p i::before, .is-footer address i::before, .is-footer .name i::before, .is-footer .label i::before {
  display: inline-block;
  left: 50%;
  position: absolute;
  top: 0;
  transform: translateX(-50%);
}
.is-footer p.sm, .is-footer p.compno {
  font-size: 1.4rem;
}
.is-footer p.name {
  font-weight: 700;
  margin-bottom: 0;
}
.is-footer p.lg {
  font-size: 2.8rem;
}
.is-footer p.page-lead {
  color: inherit;
  font-weight: 400;
}
.is-footer address {
  font-family: "Quicksand", sans-serif;
  font-size: inherit;
  margin-bottom: 1.2em;
  max-width: 33rem;
}
.is-footer .company-name {
  font-size: 2.4rem;
}
.is-footer .badges {
  align-items: center;
  display: flex;
  width: 100%;
}
.is-footer .badges a {
  display: inline-block;
  flex: 0 0 auto;
  margin: 0 auto;
  padding: 0 0.5rem;
  text-align: center;
}
.is-footer .badges a img {
  height: 7.5rem;
}
.is-footer .badges a:first-child {
  padding-left: 0;
}
.is-footer .maf-logo {
  margin-bottom: auto;
  width: 100%;
}
.is-footer .maf-logo svg #name {
  fill: white !important;
}
.is-footer .maf-logo svg #strap {
  display: none;
}
.is-footer .phone-block {
  font-size: 2.4rem;
}
.is-footer .phone-block strong, .is-footer .phone-block span {
  display: inline-block;
  font-weight: 700;
  padding-right: 0.3rem;
}
.is-footer .site-nav {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}
.is-footer .site-nav .bottom-nav {
  display: flex;
  flex: 0 0 auto;
  flex-direction: column;
  margin: 0;
  width: 100%;
}
.is-footer .site-nav .bottom-nav a {
  display: inline-block;
  font-weight: 400;
  padding: 0.6rem 0;
  text-decoration: none;
  width: auto;
}
.is-footer .site-nav .bottom-nav a:hover {
  text-decoration: underline;
}
.is-footer .site-nav .bottom-nav a.lvl-2 {
  padding-left: 2rem;
}
.is-footer .social-icons {
  --icon-colour: white;
  --text-colour: rgb(0, 0, 0);
  margin-top: 4rem;
}
.is-footer .maf-form input {
  background-color: rgb(250, 250, 250);
  border-color: rgb(250, 250, 250);
}
.is-footer .maf-form input:focus {
  border-color: rgb(71, 79, 71);
}
.is-footer .row {
  padding: 0;
  padding-top: 6rem;
  flex-direction: row;
  flex-wrap: wrap;
}
@media only screen and (min-width: 576px) {
  .is-footer .row {
    padding: 0 2.5rem;
    padding-top: 10rem;
  }
}
.is-footer .row .header .maf-content {
  padding-top: 0;
  padding-bottom: 6rem;
}
.is-footer .row .column {
  padding: 6rem 1.5rem;
  padding-top: 0;
  flex: 1 1 100%;
  width: auto;
}
@media only screen and (min-width: 960px) {
  .is-footer .row .column {
    padding: 10rem 1.5rem;
    padding-top: 0;
  }
}
@media only screen and (min-width: 960px) {
  .is-footer .row .column {
    flex: 1 1 0;
  }
}
.is-footer .row .column .maf-content.flow-margin {
  margin-bottom: 1.2em;
}
.is-footer section {
  color: rgb(250, 250, 250);
}
.is-footer section.footer-section .row .column {
  align-items: center;
  text-align: center;
}
.is-footer section.footer-section .row .column .maf-content {
  align-items: inherit;
  max-width: 35rem;
}
@media only screen and (min-width: 960px) {
  .is-footer section.footer-section .row .column.maf-col-1 {
    align-items: flex-start;
    text-align: left;
  }
}
@media only screen and (min-width: 960px) {
  .is-footer section.footer-section .row .column.maf-col-3 {
    align-items: flex-end;
    text-align: right;
  }
}
.is-footer section.legals {
  color: rgb(250, 250, 250);
  overflow: hidden;
  position: relative;
  z-index: 1;
}
.is-footer section.legals .row {
  padding-top: 5rem;
  padding-bottom: 5rem;
}
.is-footer section.legals .row p {
  font-size: 1.4rem;
  margin: 0;
  padding-right: 1rem;
  padding-bottom: 1rem;
  width: auto;
}
.is-footer section.legals .row p:last-child {
  padding-right: 0;
}
.is-footer section.legals .row a:not(.maf-si) {
  color: rgb(250, 250, 250);
}
.is-footer section.legals .row a:not(.maf-si):hover {
  text-decoration: underline;
}
.is-footer section.legals .row .column {
  padding-top: 0;
}
.is-footer section.legals .row .column .maf-content {
  flex-direction: column-reverse;
  max-width: none;
}
@media only screen and (min-width: 768px) {
  .is-footer section.legals .row .column .maf-content {
    align-content: flex-end;
    align-items: flex-end;
    flex-direction: row;
    justify-content: space-between;
  }
}/*# sourceMappingURL=tvw-main.css.map */