@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(255, 255, 255);
  font-family: "Open 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(0, 0, 0);
  font-family: "Open 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: 1.8rem;
  }
}

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: 149.4rem;
  padding: 6rem 1.15rem 0 2.3rem;
  width: 100%;
  z-index: 1;
}
@media only screen and (min-width: 576px) {
  .header {
    padding: 10rem 4.6rem 0 4.6rem;
  }
}
.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: 149.4rem;
  padding: 0 2.3rem 5rem 2.3rem;
  text-align: center;
  width: 100%;
}
@media only screen and (min-width: 576px) {
  .footer {
    padding: 0 4.6rem 10rem 4.6rem;
  }
}

.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: 149.4rem;
  position: relative;
  width: 100%;
  padding: 0 1.15rem;
}
@media only screen and (min-width: 576px) {
  .row {
    padding: 0 2.3rem;
  }
}
@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 2.3rem 0 2.3rem;
  }
}
@media only screen and (min-width: 576px) {
  .row .footer {
    padding: 0 2.3rem 10rem 2.3rem;
  }
}

.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.15rem;
}
@media only screen and (min-width: 576px) {
  .column {
    padding: 6rem 2.3rem;
  }
}
@media only screen and (min-width: 960px) {
  .column {
    padding: 10rem 2.3rem;
  }
}
@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.4em;
}

.maf-header {
  padding: 6rem 1.15rem;
  padding-top: 0;
  width: 100%;
}
@media only screen and (min-width: 576px) {
  .maf-header {
    padding: 6rem 2.3rem;
    padding-top: 0;
  }
}
@media only screen and (min-width: 960px) {
  .maf-header {
    padding: 10rem 2.3rem;
    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(255, 255, 255);
}

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 {
  border-left: 0.3rem solid rgb(219, 20, 21);
  caption-side: bottom;
  display: table-caption;
  font-size: 1.4rem;
  font-style: normal;
  font-weight: 400;
  min-width: 100%;
  padding: 0.5rem 1rem;
  text-align: left;
}

a, a:visited {
  color: rgb(219, 20, 21);
  font-weight: 600;
  line-height: inherit;
  text-decoration: none;
  transition: all 300ms ease-out;
}

a:hover, a:focus, a:active {
  color: inherit;
  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 {
  letter-spacing: -0.02em;
  margin: 0.1em 0 1.4em 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: "Open Sans", sans-serif;
  font-weight: 700;
  line-height: 1.05;
  margin-bottom: 0.6em;
  position: relative;
  width: 100%;
}

h1, .h1-style {
  font-size: 5.6rem;
}

h2, .h2-style {
  font-size: 4.2rem;
}

h3, .h3-style {
  font-size: 3.6rem;
}

h4, .h4-style {
  font-size: 2.8rem;
}

h5, .h5-style {
  font-size: 2.2rem;
}

h6, .h6-style {
  font-size: 2.2rem;
}

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.6rem solid currentColor;
  color: rgb(219, 20, 21);
  display: inline-block;
  height: 0;
  margin: 0.1em 0 1.4em 0;
  max-width: 6.8rem;
  width: 100%;
}
hr.heavy {
  margin: 1.4em 0 2.8em 0;
  border-top: 0.5rem solid currentColor;
}

.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.5em 0;
  padding-left: 1.4em;
}
.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;
  content: "";
  color: rgb(219, 20, 21);
  display: inline-block;
  font-weight: 600;
  height: 0.5em;
  left: 0;
  margin-right: 1rem;
  position: absolute;
  top: 0.4em;
  transform: rotate(6deg);
  vertical-align: 0.2em;
  width: 0.5em;
}
.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;
  position: relative;
}
.maf-content ol li::before {
  content: counter(maf-ol-counter) ".";
  color: rgb(219, 20, 21);
  display: inline-block;
  font-family: "Open Sans", sans-serif;
  font-size: 0.9em;
  font-weight: 600;
  height: 3rem;
  left: 0;
  line-height: 1;
  margin-right: 0.8rem;
  opacity: 1;
  position: absolute;
  top: 0.2em;
  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 2.3rem;
  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 4.6rem;
  }
}
.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 2.3rem;
  width: 100%;
}
@media only screen and (min-width: 576px) {
  .is-faq dl dd {
    padding: 2rem 7rem 2rem 4.6rem;
  }
}
.is-faq dl dd > * {
  line-height: 1.4;
  max-width: 73rem;
}
.is-faq dl dd > *:last-child {
  margin-bottom: 0;
}

blockquote {
  border-top: 0.1rem solid currentColor;
  border-bottom: 0.1rem solid currentColor;
  display: inline-block;
  font-family: "Open Sans", sans-serif;
  font-style: normal;
  font-weight: 600;
  margin: 0.7em 0 1.68em 0;
  padding: 2rem 0;
  position: relative;
  text-align: left;
  /*&::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%;
  }8?
  //quotes: '\201c' '\201d';
  /*&::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;
  }*/
}
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:not(:first-child) {
  color: inherit;
}
blockquote p:last-child {
  margin-bottom: 0;
}
blockquote.heavy {
  font-family: "Open Sans", 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.1rem solid rgb(0, 0, 0);
  color: rgb(0, 0, 0);
  display: inline-block;
  font-family: "Open 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: 0.7rem 1rem;
  transition: all 300ms ease-out;
  width: 100%;
}
input::-moz-placeholder, textarea::-moz-placeholder {
  opacity: 1;
}
input::placeholder, textarea::placeholder {
  opacity: 1;
}
input:focus, textarea:focus {
  box-shadow: 0 0 1rem rgba(0, 0, 0, 0.5);
  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(219, 20, 21);
}

input[type=submit],
input[type=reset],
button.maf-button {
  align-items: center;
  background-color: rgb(219, 20, 21);
  background-size: 100% 100%;
  border: 0.1rem solid rgb(219, 20, 21);
  color: rgb(255, 255, 255);
  cursor: pointer;
  display: inline-flex;
  font-family: "Open 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(219, 20, 21);
  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(0, 0, 0);
  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(255, 255, 255);
  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(0, 0, 0);
}
.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(0, 0, 0);
}
.checkbox .pretty-check input[type=checkbox]:checked + label:after {
  opacity: 1;
}
.checkbox .pretty-check input[type=checkbox]:checked + label:focus {
  background: rgb(0, 0, 0);
}
.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.4em;
  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(219, 20, 21);
  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(219, 20, 21);
  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(203, 206, 209);
}
.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(203, 206, 209);
}
.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(203, 206, 209);
}

.select {
  background-color: white;
  border: 0.1rem solid rgb(0, 0, 0);
  cursor: pointer;
  height: 4.1rem;
  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(0, 0, 0);
  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 {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  background: transparent;
  border: 0;
  border-radius: 0;
  color: rgb(0, 0, 0);
  cursor: pointer;
  font-family: "Open Sans", sans-serif;
  font-size: 1.8rem;
  font-weight: 400;
  height: 100%;
  margin: 0;
  outline: transparent;
  padding: 0.6rem 1rem;
  transition: all 300ms ease-out;
  width: calc(100% + 2.5rem);
  z-index: 1;
}
.select select option {
  font-family: "Open Sans", sans-serif;
}
.select:hover, .select:focus-within {
  border-color: rgb(100, 99, 99);
}
.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(0, 0, 0);
  border: 0.2rem solid rgb(0, 0, 0);
  color: rgb(255, 255, 255);
  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(255, 255, 255);
  color: rgb(0, 0, 0);
}
.file-button:focus-within span, .file-button:focus span {
  background-color: rgb(255, 255, 255);
  color: rgb(0, 0, 0);
}

.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(219, 20, 21);
  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 {
  appearance: none;
  -webkit-appearance: none;
  margin: 0;
}
.spinner input[type=number] {
  -webkit-appearance: textfield;
          appearance: textfield;
  -moz-appearance: textfield;
}
.spinner input {
  border: 0.1rem solid currentColor;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  border-right: 0;
  color: rgb(0, 0, 0);
  display: inline-block;
  flex: 0 0 auto;
  font-family: "Open 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(219, 20, 21);
  color: rgb(0, 0, 0);
  cursor: pointer;
  display: flex;
  font-size: 2rem;
  font-family: "Open 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(219, 20, 21);
  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(219, 20, 21);
  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(219, 20, 21);
}
.spinner .quantity-button:hover::before, .spinner .quantity-button:hover::after, .spinner .quantity-button:focus::before, .spinner .quantity-button:focus::after {
  background-color: rgb(255, 255, 255);
}

.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 {
  appearance: none;
  -webkit-appearance: none;
  margin: 0;
}
.spinner-2 input[type=number] {
  -webkit-appearance: textfield;
          appearance: textfield;
  -moz-appearance: textfield;
}
.spinner-2 input {
  align-items: center;
  border: 0.1rem solid rgb(0, 0, 0);
  border-radius: 0.8rem;
  color: rgb(0, 0, 0);
  display: inline-flex;
  flex: 0 0 auto;
  font-family: "Open 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: "Open 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(219, 20, 21);
}
.spinner-2.plus-minus .quantity-button {
  background-color: rgb(219, 20, 21);
  border: 0.2rem solid rgb(219, 20, 21);
  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(219, 20, 21);
}
.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(0, 0, 0);
  border-right: 0.3rem solid rgb(0, 0, 0);
  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(0, 0, 0);
  border-left: 0.3rem solid rgb(0, 0, 0);
  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(219, 20, 21);
}

.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: 1.5rem;
  padding: 0 1rem;
  position: relative;
  text-align: left;
}
.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(255, 255, 255);
  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(0, 0, 0);
  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(219, 20, 21);
}
.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 + 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-arrow {
  0% {
    right: 1rem;
  }
  50% {
    right: 0;
  }
  100% {
    right: 1rem;
  }
}
.button, .button:visited {
  background: none;
  background-color: rgb(219, 20, 21);
  border: 0.2rem solid rgb(219, 20, 21);
  border-radius: 1.2rem;
  color: rgb(255, 255, 255);
  cursor: pointer;
  display: inline-block;
  font-family: "Open Sans", sans-serif;
  font-size: 1.8rem;
  font-style: normal;
  font-weight: 600;
  letter-spacing: inherit;
  line-height: 1;
  opacity: 1;
  outline: transparent;
  overflow: hidden;
  padding: 1.4rem 4rem;
  position: relative;
  text-align: center;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  transition: all 300ms ease-out;
  width: auto;
  z-index: 1;
}
.button::before, .button:visited::before {
  background-color: rgb(255, 255, 255);
  content: "";
  height: 0;
  left: 100%;
  position: absolute;
  top: 100%;
  transform: translate(-50%, -50%) rotate(-12deg);
  transition: all 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 {
  color: rgb(219, 20, 21);
  opacity: 1;
  text-decoration: none;
}
.button:hover::before, .button:focus::before, .button:active::before, .button.active::before, .button:visited:hover::before, .button:visited:focus::before, .button:visited:active::before, .button:visited.active::before {
  height: 200%;
  left: 50%;
  top: 50%;
  width: 200%;
}
.button.less, .button:visited.less {
  opacity: 0.5;
}
.button.least, .button:visited.least {
  background-color: rgb(255, 255, 255);
  color: rgb(0, 0, 0);
}
.button.least::before, .button:visited.least::before {
  background-color: rgb(0, 0, 0);
  left: auto;
  right: 0;
}
.button.least:hover, .button.least:focus, .button:visited.least:hover, .button:visited.least:focus {
  color: rgb(255, 255, 255);
}
.button.light, .button:visited.light {
  border-color: rgb(255, 255, 255);
}
.button.white, .button:visited.white {
  background-color: rgb(255, 255, 255);
  border-color: rgb(255, 255, 255);
  color: rgb(0, 0, 0);
}
.button.white::before, .button:visited.white::before {
  background-color: rgb(219, 20, 21);
}
.button.white:hover, .button.white:focus, .button.white:active, .button.white.active, .button:visited.white:hover, .button:visited.white:focus, .button:visited.white:active, .button:visited.white.active {
  color: rgb(255, 255, 255);
}

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

div.close, button.close, .button.close {
  background-color: transparent;
  border: 0;
  color: rgb(255, 255, 255);
  cursor: pointer;
  display: inline-block;
  font-family: "Open 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(0, 0, 0);
  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(0, 0, 0);
  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(219, 20, 21);
}
.is-toggle-group .toggle-click.active i, .is-toggle-group .toggle-click:hover i {
  color: rgb(219, 20, 21);
}
.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, .meet-your-maker:focus {
  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 img {
  max-width: 50rem;
  margin-bottom: 3rem;
}
#http-error.e404 h1 {
  color: rgb(0, 0, 0);
  margin: 0 0 3rem 0;
}
#http-error.e404 p {
  color: rgb(0, 0, 0);
  font-size: 2.5rem;
  margin: 0 auto 3rem auto;
  width: 60%;
}
#http-error.e404 #error {
  margin: 0 auto;
  padding: 0 2.3rem;
  text-align: center;
  width: 80%;
}
@media only screen and (min-width: 960px) {
  #http-error.e404 #error {
    padding: 0 4.6rem;
  }
}
#http-error.e404 .error-icon {
  display: block;
  margin: 0 auto;
  width: 25%;
}
#http-error.e404 .error-icon .a {
  fill: rgb(0, 0, 0);
}
#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(100, 99, 99);
  border: 0.3rem solid rgb(0, 0, 0);
  border-radius: 0.8rem;
  color: rgb(0, 0, 0);
  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(255, 255, 255);
  --icon-size: 5.4rem;
  --text-colour: rgb(0, 0, 0);
  --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, .social-icons.name-view > a:focus {
  color: white;
}
.social-icons.name-view > a:hover i, .social-icons.name-view > a:focus i {
  color: rgb(100, 99, 99);
}
.social-icons.name-view > a:hover span, .social-icons.name-view > a:focus 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;
}

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: 1.8rem;
  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(203, 206, 209);
  border: 0.1rem solid rgb(203, 206, 209);
  color: rgb(255, 255, 255);
  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(203, 206, 209);
  display: flex;
  left: 100%;
  position: absolute;
  transition: all 300ms ease-out;
  top: 0;
}
div.maf-share-this .maf-share-acts a {
  color: rgb(203, 206, 209);
  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(203, 206, 209);
  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(255, 255, 255);
  border: 0.1rem solid rgb(219, 20, 21);
  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(219, 20, 21);
  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 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: "Open Sans", 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(255, 255, 255);
  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(219, 20, 21);
  bottom: 0;
  color: rgb(0, 0, 0);
  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 h2 {
  color: rgb(48, 70, 107);
  font-family: "Open 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(0, 0, 0);
}
#conco-f .details {
  display: none;
  flex: 0 0 40%;
}
#conco-f .details a {
  color: rgb(0, 0, 0);
  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(255, 255, 255);
  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(0, 0, 0);
  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: 0;
  display: block;
  left: 0;
  margin: 0;
  padding: 0;
  width: auto;
}
.flickity-slideshow .flickity-page-dots .dot, .flickity-slideshow-edit .flickity-page-dots .dot {
  background: transparent;
  border: 0.1rem solid currentColor;
  border-radius: 50%;
  height: 1.4rem;
  margin: 0 0.1rem;
  opacity: 1;
  padding: 0;
  position: relative;
  width: 1.4rem;
}
.flickity-slideshow .flickity-page-dots .dot::before, .flickity-slideshow-edit .flickity-page-dots .dot::before {
  background-color: currentColor;
  border-radius: 50%;
  border: 0;
  color: inherit;
  content: "";
  display: inline-block;
  height: 0;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  transition: all 300ms ease-out;
  width: 0;
}
.flickity-slideshow .flickity-page-dots .dot.is-selected::before, .flickity-slideshow-edit .flickity-page-dots .dot.is-selected::before {
  height: 100%;
  width: 100%;
}
.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: 3.2rem;
  margin: 0;
  opacity: 1;
  padding: 0;
  top: 50%;
  transform-origin: center;
  transform: translate(0, -50%);
  transition: all 300ms ease-out;
  width: 1.7rem;
  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(219, 20, 21);
}
.flickity-slideshow .flickity-button.flickity-prev-next-button::after, .flickity-slideshow-edit .flickity-button.flickity-prev-next-button::after {
  background-color: currentColor;
  -webkit-clip-path: polygon(0 50%, calc(100% - 0.5rem) 0, 100% 0, 0.5rem 50%, 100% 100%, calc(100% - 0.5rem) 100%);
          clip-path: polygon(0 50%, calc(100% - 0.5rem) 0, 100% 0, 0.5rem 50%, 100% 100%, calc(100% - 0.5rem) 100%);
  content: "";
  height: 100%;
  left: 50%;
  position: absolute;
  top: 50%;
  transition: all 300ms ease-out;
  width: 100%;
}
.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 {
  transform: translate(-50%, -50%);
}
.flickity-slideshow .flickity-button.flickity-prev-next-button.next, .flickity-slideshow-edit .flickity-button.flickity-prev-next-button.next {
  right: 0;
}
.flickity-slideshow .flickity-button.flickity-prev-next-button.next::after, .flickity-slideshow-edit .flickity-button.flickity-prev-next-button.next::after {
  transform: translate(-50%, -50%) rotate(180deg);
}
.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(203, 206, 209);
  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(203, 206, 209);
  border-radius: 0;
  box-shadow: none;
  color: rgb(0, 0, 0);
  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(203, 206, 209);
  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(0, 0, 0);
  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(203, 206, 209);
  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(255, 255, 255);
  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(0, 0, 0);
  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(219, 20, 21);
  color: rgb(255, 255, 255);
}
.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: 2.3rem;
}
aside.pg-nav .button.next {
  margin-right: 2.3rem;
  margin-left: auto;
}

.pagination {
  align-self: center;
  border: 0.1rem solid rgb(0, 0, 0);
  border-right: 0;
  border-left: 0;
  color: rgb(0, 0, 0);
  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(0, 0, 0);
  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(219, 20, 21);
  box-shadow: -0.3rem 0.3rem 0.5rem rgba(0, 0, 0, 0.1);
  color: rgb(255, 255, 255);
}
.pagination a.previous {
  margin-right: 0.2rem;
}
.pagination a.next {
  margin-left: 0.2rem;
}
.pagination span.active {
  background-color: rgb(219, 20, 21);
  box-shadow: -0.3rem 0.3rem 0.5rem rgba(0, 0, 0, 0.1);
  color: rgb(255, 255, 255);
}

.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: center;
}
.is-simple-gallery figure {
  display: inline-block;
  flex: 0 0 50%;
  margin: 0;
  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%;
  }
}
.is-simple-gallery figure > a {
  aspect-ratio: 1/0.618;
  display: block;
  height: 100%;
  opacity: 1;
  overflow: hidden;
  position: relative;
  transition: all 600ms ease-out;
  width: 100%;
}
.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(255, 255, 255);
  display: none;
  font-family: "Open 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(255, 90, 0);
  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: 1.15rem 2.3rem;
}
@media only screen and (min-width: 576px) {
  .full-gallery.masobox .card {
    padding: 2.3rem;
  }
}
.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 -2.3rem;
  width: calc(100% + 4.6rem);
}
.full-gallery.flexbox .card {
  flex: 0 0 auto;
  padding: 1.15rem 2.3rem;
  width: 100%;
}
@media only screen and (min-width: 576px) {
  .full-gallery.flexbox .card {
    padding: 2.3rem;
  }
}
@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(0, 0, 0);
  color: rgb(255, 255, 255);
  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 {
  aspect-ratio: 1/0.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.4em -1rem 2.8em -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 4.6rem;
  margin: 2.3rem 0;
  width: 100%;
}

div.image-box {
  align-items: flex-start;
  color: rgb(0, 0, 0);
  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 > 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.4em;
}
@media only screen and (min-width: 768px) {
  div.image-box .image {
    margin-bottom: 0;
    padding-right: 2.3rem;
    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: 2.3rem;
    width: 50%;
  }
}
div.image-box.center {
  margin-right: auto;
  margin-left: auto;
}

div.con-caller {
  align-items: center;
  background-color: rgb(219, 20, 21);
  border-radius: 0 3rem 0 0;
  color: rgb(255, 255, 255);
  display: flex;
  flex-wrap: wrap;
  font-size: 2.2rem;
  margin-bottom: 2.1em;
  padding: 1.3rem;
  width: 100%;
}
div.con-caller div {
  padding: 1.3rem;
}
div.con-caller div > *:last-child {
  margin-bottom: 0;
}
div.con-caller div p {
  max-width: 60rem;
}
div.con-caller div .button {
  padding: 1.4rem 2rem;
}
div.con-caller div.txt {
  flex: 1 1 auto;
}
div.con-caller div.lnk {
  flex: 0 0 auto;
}

div.con-caller-p {
  align-items: center;
  background-color: rgb(219, 20, 21);
  border-radius: 0 3rem 0 0;
  color: rgb(255, 255, 255);
  display: flex;
  flex-wrap: wrap;
  font-size: 2.2rem;
  margin-bottom: 2.1em;
  padding: 2.6rem;
  width: 100%;
}
div.con-caller-p > *:last-child {
  margin: 0;
}

@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.4em;
  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 {
  aspect-ratio: 1/0.5625;
  position: relative;
  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: 100%;
  left: 50%;
  -o-object-fit: cover;
     object-fit: cover;
  opacity: 0;
  position: absolute;
  top: 50%;
  transform: translateX(-50%) translateY(-50%);
  transition: opacity 600ms ease-out;
  width: 100%;
  z-index: 0;
}
video.tvw-player.ready {
  opacity: 1;
}

.vid-pop {
  aspect-ratio: 1/0.56;
  background-color: black;
  display: inline-block;
  overflow: hidden;
  opacity: 1;
  position: relative;
  width: 100%;
  z-index: 1;
}
.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 {
  aspect-ratio: 1/1;
  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:hover, .vid-pop:focus {
  opacity: 1;
}
.vid-pop:hover::after, .vid-pop:focus::after {
  box-shadow: 0 0 3rem rgba(0, 0, 0, 0.7) inset;
}
@media only screen and (min-width: 960px) {
  .vid-pop:hover::after, .vid-pop:focus::after {
    box-shadow: 0 0 6rem rgba(0, 0, 0, 0.7) inset;
  }
}
@media only screen and (min-width: 1280px) {
  .vid-pop:hover::after, .vid-pop:focus::after {
    box-shadow: 0 0 9rem rgba(0, 0, 0, 0.7) inset;
  }
}
.vid-pop:hover > img, .vid-pop:focus > img {
  transform: scale(1);
}
.vid-pop:hover button, .vid-pop:focus button {
  box-shadow: 0 0 0.8rem rgba(255, 255, 255, 0.3);
}

div.cardbox {
  --grid-spacing: 2.3rem;
  --grid-column-count: 4;
  --grid-item--max-width: calc(100%/var(--grid-column-count));
  --max-width: 49.7502rem;
  /*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) * 0.5 * -1);
  width: calc(100% + var(--grid-spacing));
}
@media only screen and (min-width: 576px) {
  div.cardbox {
    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(0, 0, 0);
  --card-accent: rgb(219, 20, 21);
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: calc(var(--grid-spacing) * 0.5);
  z-index: 1;
  width: 100%;
}
@media only screen and (min-width: 576px) {
  div.cardbox article.card {
    padding: var(--grid-spacing);
  }
}
@media only screen and (min-width: 768px) {
  div.cardbox article.card {
    width: 50%;
  }
}
div.cardbox article.card .portal-item {
  background-color: rgb(255, 255, 255);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  color: rgb(0, 0, 0);
  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(219, 20, 21);
  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: rgb(0, 0, 0);
  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%;
  -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);
}
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;
  padding: 5%;
  transition: all 300ms ease-out;
  width: 100%;
}
div.cardbox article.card .portal-item .portal-content .categories {
  background-color: rgb(219, 20, 21);
  color: rgb(255, 255, 255);
  font-weight: 700;
  line-height: 1.1;
  padding: 0.7rem 1rem;
  text-transform: uppercase;
}
div.cardbox article.card .portal-item .portal-content .title {
  display: inline-block;
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.2;
  margin: 0;
  padding: 0.8rem 0 0.2em 0;
  position: relative;
  text-transform: none;
  transition: all 300ms ease-out;
  width: 100%;
}
div.cardbox article.card .portal-item .portal-content .subtitle {
  margin-bottom: 3rem;
}
div.cardbox article.card .portal-item .portal-content .desc {
  display: inline-block;
  line-height: 1.4;
  margin: 0 0 auto 0;
  padding: 0 0 1.2rem 0;
  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;
  flex-direction: column;
  justify-content: flex-start;
  position: relative;
  padding: 0 0 0.9em 0;
  width: 100%;
}
div.cardbox article.card .portal-item .portal-content .attr > span, div.cardbox article.card .portal-item .portal-content .attr > div {
  display: inline-block;
  width: 100%;
}
div.cardbox article.card .portal-item .portal-content .attr > span strong, div.cardbox article.card .portal-item .portal-content .attr > div strong {
  padding-right: 0.3em;
}
div.cardbox article.card .portal-item .portal-content .date {
  display: inline-block;
  font-size: 1.8rem;
  font-weight: 600;
  margin: 0;
  padding: 0.5rem 0 1.4rem 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 .card-button {
  background-color: transparent;
  margin-top: auto;
  overflow: hidden;
  min-width: 0;
  width: 100%;
}
div.cardbox article.card .portal-item .portal-content .card-button::before {
  display: none;
}
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 .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 {
  height: calc(100% - 0.8rem);
  width: calc(100% - 0.8rem);
}
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(219, 20, 21);
}
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 {
  aspect-ratio: 1/0.5;
}
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.15rem;
  width: calc(100% + 2.3rem);
}
@media only screen and (min-width: 576px) {
  div.catbox {
    margin: 0 -2.3rem;
    width: calc(100% + 4.6rem);
  }
}
div.catbox article.card {
  display: inline-block;
  flex: 0 0 auto;
  padding: 1.15rem;
  text-align: center;
  width: 50%;
}
@media only screen and (min-width: 576px) {
  div.catbox article.card {
    padding: 2.3rem;
  }
}
@media only screen and (min-width: 960px) {
  div.catbox article.card {
    width: 25%;
  }
}
div.catbox article.card .portal-item {
  background-color: transparent;
  color: rgb(255, 255, 255);
  display: inline-block;
  height: 100%;
  line-height: 0;
  opacity: 1;
  outline: none;
  overflow: hidden;
  text-align: left;
  text-decoration: none;
  width: 100%;
}
div.catbox article.card .portal-item .portal-content {
  aspect-ratio: 1/1;
  height: 100%;
  position: relative;
}
div.catbox article.card .portal-item .portal-content .tn {
  display: inline-block;
  height: 100%;
  left: 0;
  overflow: hidden;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 1;
}
div.catbox article.card .portal-item .portal-content .tn::after {
  background-image: linear-gradient(177deg, rgba(0, 0, 0, 0.53), transparent 44%);
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 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 .info {
  align-items: flex-start;
  display: inline-flex;
  flex-direction: column;
  height: 100%;
  justify-content: flex-start;
  overflow: hidden;
  padding: 6%;
  position: relative;
  transition: all 300ms ease-out;
  width: 100%;
  z-index: 2;
}
div.catbox article.card .portal-item .portal-content .title {
  display: inline-block;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.3;
  margin: 0;
  padding: 0 0 1.5rem 0;
  position: relative;
  width: 100%;
}
@media only screen and (min-width: 576px) {
  div.catbox article.card .portal-item .portal-content .title {
    font-size: 2.2rem;
  }
}
div.catbox article.card .portal-item .portal-content .title::after {
  background-color: rgb(219, 20, 21);
  bottom: 0;
  content: "";
  height: 0.6rem;
  left: 0;
  position: absolute;
  transition: all 300ms ease-out;
  width: 6.8rem;
}
div.catbox article.card .portal-item .portal-content .date {
  margin: auto 0 0 0;
}
div.catbox article.card .portal-item .portal-content .card-button {
  border: 0;
  color: rgb(255, 255, 255);
  font-weight: 700;
  height: 2.4rem;
  margin-top: auto;
  margin-left: auto;
  overflow: visible;
  padding: 0;
  text-align: right;
  width: 2.4rem;
}
div.catbox article.card .portal-item .portal-content .card-button span {
  opacity: 0;
  transition: all 300ms ease-out;
  transition-delay: 0;
}
div.catbox article.card .portal-item .portal-content .card-button::before {
  background-color: rgb(219, 20, 21);
  display: inline-block;
  height: 30rem;
  left: -2rem;
  opacity: 1;
  top: -1.5rem;
  transform: rotate(-9deg);
  transform-origin: top left;
  width: 30rem;
}
div.catbox article.card .portal-item .portal-content .card-button::after {
  background-color: rgb(255, 255, 255);
  -webkit-clip-path: polygon(0 0, 0.6rem 0, 100% 50%, 0.6rem 100%, 0 100%, calc(100% - 0.6rem) 50%);
          clip-path: polygon(0 0, 0.6rem 0, 100% 50%, 0.6rem 100%, 0 100%, calc(100% - 0.6rem) 50%);
  content: "";
  display: inline-block;
  height: 2.4rem;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 1.5rem;
}
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, div.catbox article.card .portal-item:focus .portal-content .info {
  background-color: rgba(219, 20, 21, 0.9);
}
div.catbox article.card .portal-item:hover .portal-content .info .title::after, div.catbox article.card .portal-item:focus .portal-content .info .title::after {
  background-color: rgb(255, 255, 255);
}
div.catbox article.card .portal-item:hover .portal-content .info .card-button::before, div.catbox article.card .portal-item:focus .portal-content .info .card-button::before {
  background-color: rgb(0, 0, 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 -2.3rem;
  width: calc(100% + 4.6rem);
}
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: 2.3rem;
  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(255, 255, 255);
}
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: 2.3rem;
  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(255, 255, 255);
  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(255, 255, 255);
  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, div.masobox article.card .portal-item:focus .portal-content .info {
  opacity: 1;
}
div.masobox article.card .portal-item:hover .portal-content .info > *, div.masobox article.card .portal-item:focus .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: "Open Sans", 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(255, 255, 255);
  border: 0.1rem solid currentColor;
  color: rgb(0, 0, 0);
  display: inline-block;
  font-size: 1.6rem;
  height: 3.6rem;
  margin-left: 1.5rem;
  padding: 0;
  position: relative;
  transition: all 300ms ease-out;
  vertical-align: top;
  width: 3.6rem;
}
@media only screen and (min-width: 1152px) {
  .search-box {
    font-size: 1.8rem;
  }
}
.search-box form {
  display: inline-block;
  height: 100%;
}
.search-box input {
  background-color: rgb(255, 255, 255);
  border: 0;
  border-radius: 0;
  box-shadow: none !important;
  color: rgb(0, 0, 0);
  font-size: inherit;
  font-weight: 500;
  height: 100%;
  left: 0;
  margin: 0 0 0 2.6rem;
  opacity: 1;
  outline: transparent;
  padding: 0;
  position: absolute;
  top: 0;
  width: 0;
}
.search-box input::-moz-placeholder {
  color: rgb(0, 0, 0);
  font-weight: 700;
  opacity: 0.4;
  -moz-transition: all 300ms ease-out;
  transition: all 300ms ease-out;
}
.search-box input::placeholder {
  color: rgb(0, 0, 0);
  font-weight: 700;
  opacity: 0.4;
  transition: all 300ms ease-out;
}
.search-box i {
  color: inherit;
  cursor: pointer;
  display: inline-block;
  font-size: 2rem;
  height: 100%;
  left: 0.7rem;
  margin: 0;
  padding: 1rem;
  position: absolute;
  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:focus-within {
  box-shadow: 0 0 1rem rgba(0, 0, 0, 0.3);
}
.search-box.on {
  width: 12rem;
}
@media only screen and (min-width: 1366px) {
  .search-box.on {
    width: 14rem;
  }
}
@media only screen and (min-width: 1440px) {
  .search-box.on {
    width: 19rem;
  }
}
.search-box.on input {
  padding: 0.8rem 0.5rem 0.8rem 1rem;
  width: calc(100% - 3rem);
}

#basket-link.icon {
  align-items: center;
  color: inherit;
  display: flex;
  font-family: "Open 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(255, 255, 255);
  border: 0.1rem solid rgb(255, 255, 255);
  border-radius: 50%;
  color: rgb(0, 0, 0);
  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(255, 90, 0);
}
#basket-link.default {
  color: inherit;
  display: flex;
  font-family: "Open Sans", 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 {
  display: flex;
  justify-content: center;
  max-width: 149.4rem;
  padding: 0;
  position: relative;
  transition: opacity 300ms ease-out;
  transition-delay: 300ms;
  width: 100%;
  z-index: 2;
}
@media only screen and (min-width: 576px) {
  .maf-bc {
    padding: 0 2.3rem;
  }
}
.maf-bc .maf-bc-i {
  font-size: 1.6rem;
  max-width: 149.4rem;
  padding: 3.5rem 2.3rem 1rem 2.3rem;
  width: 100%;
}
.maf-bc .maf-bc-i a {
  color: inherit;
  font-weight: 400;
  position: relative;
  text-decoration: none;
}
.maf-bc .maf-bc-i a::before {
  background-color: currentColor;
  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: currentColor;
}
.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(203, 206, 209);
  color: rgb(255, 255, 255);
}
@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(255, 255, 255);
  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(255, 255, 255);
  color: rgb(203, 206, 209);
}

.modal {
  align-items: center;
  background-color: rgba(0, 0, 0, 0.8);
  -webkit-backdrop-filter: blur(5px);
          backdrop-filter: blur(5px);
  color: rgb(0, 0, 0);
  display: flex;
  font-family: "Open Sans", sans-serif;
  font-size: 1.8rem;
  font-weight: 400;
  height: 100vh;
  justify-content: center;
  left: 0;
  opacity: 0;
  padding: 5.8rem 2.3rem 2.3rem 2.3rem;
  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: 5.8rem 2.3rem 2.3rem 2.3rem;
  }
}
.modal > div {
  background-color: rgb(255, 255, 255);
  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: flex;
  flex-wrap: wrap;
  height: auto;
  max-height: 50rem;
  max-width: 92rem;
  opacity: 0;
  padding: 3rem 0 3rem 1.6rem;
  position: relative;
  transform: scale(0);
  transition: all 200ms ease-out;
  width: 0;
}
.modal > div .mod-content {
  align-items: flex-start;
  display: flex;
  flex: 1 1 0;
  flex-direction: column;
  height: 100%;
  justify-content: flex-start;
  overflow-y: auto;
  padding: 1rem 1.6rem 0 0;
  text-align: left;
}
.modal > div .mod-content > *:last-child {
  margin-bottom: 0;
}
.modal > div .close {
  color: rgb(0, 0, 0);
  height: 3rem;
  position: absolute;
  right: 1rem;
  top: 0.5rem;
  width: 3rem;
}
.modal.show {
  display: flex;
  opacity: 1;
  visibility: visible;
}
.modal.show > div {
  max-height: 90%;
  opacity: 1;
  transform: scale(1);
  width: 90%;
}
.modal.cp-modal > div .mod-content {
  min-width: 27rem;
}
.modal.cp-modal > div .mod-content.img {
  max-width: 35rem;
}
.modal.cp-modal > div .mod-content .name {
  font-size: 2.2rem;
  font-weight: 700;
  margin-bottom: 0;
}
@media only screen and (min-width: 576px) {
  .modal.cp-modal > div .mod-content .name {
    font-size: 2.8rem;
  }
}
.modal.cp-modal > div .mod-content .job {
  color: rgb(219, 20, 21);
  font-size: 1.8rem;
  font-weight: 600;
  margin-bottom: 0.6em;
}
@media only screen and (min-width: 576px) {
  .modal.cp-modal > div .mod-content .job {
    font-size: 2.2rem;
  }
}

#mp-pop-log p.small-text {
  font-size: 1.6rem;
}
#mp-pop-log > div {
  background-color: rgb(255, 255, 255);
  border: 1rem solid rgb(0, 0, 0);
  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(219, 20, 21);
}

#mp-age-consent {
  color: rgb(0, 0, 0);
}
#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(0, 0, 0);
  color: rgb(0, 0, 0);
  font-size: 2rem;
  margin: auto 2rem;
  width: auto;
}
#mp-age-consent button:hover {
  background-color: rgb(219, 20, 21);
  border-color: rgb(219, 20, 21);
  color: rgb(255, 255, 255);
}
#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(203, 206, 209);
  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(255, 90, 0);
}
#mp-nagger > div .mod-content .title {
  display: inline-block;
}
#mp-nagger > div .mod-content .sign-up {
  background-color: rgb(255, 90, 0);
  border-color: rgb(255, 90, 0);
  color: rgb(255, 255, 255);
  min-width: 20rem;
}
#mp-nagger > div .mod-content .sign-up:hover {
  background-color: transparent;
  color: rgb(255, 90, 0);
}
#mp-nagger > div .mod-content .social-icons {
  --icon-colour: rgb(255, 90, 0);
  --text-colour: rgb(255, 255, 255);
}
#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 2.3rem;
}
@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: 2.3rem;
}

@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 {
  aspect-ratio: 1/1;
  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 .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(255, 255, 255);
  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(255, 255, 255);
  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, #maf-btn-dwn:focus {
  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 {
  overflow: hidden;
}

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-size: 2rem;
}
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, 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, 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, footer p.massive-text, footer span.massive-text, .bo-row p.massive-text, .bo-row span.massive-text {
    font-size: 7.5rem;
  }
}
@media only screen and (min-width: 768px) {
  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: 9rem;
  }
}
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: "Open Sans", sans-serif;
  font-size: 0.5em !important;
}
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, 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, 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, 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, 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, footer p.has-img, .bo-row p.has-img {
  align-items: center;
  align-content: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  text-align: center;
}
@media only screen and (min-width: 576px) {
  section p.has-img, footer p.has-img, .bo-row p.has-img {
    flex-wrap: nowrap;
  }
}
section p.has-img > img, footer p.has-img > img, .bo-row p.has-img > img {
  display: inline-block;
  flex: 0 1 0;
}
section p.has-img figure, footer p.has-img figure, .bo-row p.has-img figure {
  margin: 0;
}
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, 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, footer p.p-links a, .bo-row p.p-links a {
  margin: 0 1.5rem 1rem 1.5rem;
}
section p.p-links a img, footer p.p-links a img, .bo-row p.p-links a img {
  display: inline-block;
}
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-size: 2rem;
}
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, 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, 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, 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, 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: 7.5rem;
  }
}
@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, 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: 9rem;
  }
}
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: "Open 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, 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(255, 90, 0);
  color: rgb(255, 255, 255);
  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, 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.7em;
}
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: 2.1em;
}
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, 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, 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, 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;
  }
}
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, 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, 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), 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), 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), 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), 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), 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), 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), 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), 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), 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), 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), 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), 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), 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), 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), 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), 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), 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), 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), 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), 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), 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), 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), 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, 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, 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, footer.animate.anim-3 .footer, .bo-row.animate.anim-3 .footer {
  filter: grayscale(0%);
  opacity: 1;
  transform: translateY(0);
}

@keyframes bgcolourfade {
  0% {
    background: rgb(0, 0, 0);
  }
  20% {
    background: rgb(203, 206, 209);
  }
  40% {
    background: rgb(180, 180, 180);
  }
  60% {
    background: rgb(100, 99, 99);
  }
  80% {
    background: rgb(255, 90, 0);
  }
  100% {
    background: rgb(0, 0, 0);
  }
}
@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(219, 20, 21) !important;
  color: rgb(255, 255, 255);
}
.bg-1 .maf-content > *:not(.button) {
  color: rgb(255, 255, 255);
}
.bg-1 .maf-content a:not(.button) {
  color: inherit;
}
.bg-1 .maf-content a:not(.button):hover, .bg-1 .maf-content a:not(.button).focus {
  opacity: 0.8;
}
.bg-1 .maf-content hr {
  border-color: rgb(255, 255, 255);
}

.bg-2 {
  background-color: rgb(203, 206, 209) !important;
}

.bg-3 {
  background-color: rgb(100, 99, 99) !important;
  color: rgb(255, 255, 255);
}
.bg-3 .maf-content > *:not(.button) {
  color: rgb(255, 255, 255);
}
.bg-3 .maf-content a:not(.button) {
  color: inherit;
}
.bg-3 .maf-content a:not(.button):hover, .bg-3 .maf-content a:not(.button).focus {
  opacity: 0.8;
}
.bg-3 .maf-content hr {
  border-color: rgb(255, 255, 255);
}

.bg-4 {
  background-color: rgb(100, 99, 99) !important;
  color: rgb(255, 255, 255);
}
.bg-4 .maf-content > *:not(.button) {
  color: rgb(255, 255, 255);
}
.bg-4 .maf-content a:not(.button) {
  color: inherit;
}
.bg-4 .maf-content a:not(.button):hover, .bg-4 .maf-content a:not(.button).focus {
  opacity: 0.8;
}
.bg-4 .maf-content hr {
  border-color: rgb(255, 255, 255);
}

.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(255, 255, 255);
}

.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%);
}

.spr {
  position: absolute;
}

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

#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(255, 255, 255);
  display: flex;
  height: 40%;
  left: 2.3rem;
  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: "Open Sans", 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: 2.3rem;
  top: 50%;
  transform: translate(0, -50%);
  transition: height 300ms ease-out;
}
#sub-nav-dock #sub-nav #ticket-link a.button {
  background-color: rgb(255, 255, 255);
  border-color: rgb(255, 255, 255);
  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(219, 20, 21);
  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: 2.3rem;
  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(255, 255, 255);
  box-shadow: 0 0.7rem 2.4rem rgba(0, 0, 0, 0.14);
  color: rgb(0, 0, 0);
  display: flex;
  height: 5.8rem;
  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: 5.8rem;
  }
}
.is-main-header.is-fixed, .is-main-header.stuck {
  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: 149.4rem;
  position: relative;
  text-align: center;
  width: 100vw;
}
.is-main-header > div.h-con .ui-con {
  align-items: center;
  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.5rem 2.3rem;
  position: relative;
  text-align: center;
  transition: all 300ms ease-out;
  width: auto;
  z-index: 100;
}
@media only screen and (min-width: 1152px) {
  .is-main-header > div.h-con .ui-con {
    padding: 0.5rem 4.6rem;
    padding-right: 0;
  }
}
.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: "Open Sans", sans-serif;
  font-variation-settings: "wght" 400;
  font-size: clamp(1.8rem, 3.4vw, 2.5rem);
  height: 100%;
  line-height: 1;
  max-height: 8.9rem;
  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: 0 0 auto;
  height: auto;
  max-height: 100%;
  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(0, 0, 0);
  display: inline-block;
  font-family: "Open Sans", sans-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;
  height: 100%;
  flex: 1 1 auto;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: flex-end;
  max-width: 100%;
  padding: 0 2.3rem;
  transition: opacity 300ms ease-out 500ms;
  width: auto;
  z-index: 101;
}
@media only screen and (min-width: 1152px) {
  .is-main-header > div.h-con .n-con {
    padding: 0 4.6rem;
    padding-left: 2rem;
  }
}
@media only screen and (min-width: 1024px) {
  .is-main-header > div.h-con .n-con {
    flex-direction: row-reverse;
    justify-content: flex-start;
  }
}
.is-main-header > div.h-con #header-ui {
  align-items: flex-start;
  color: inherit;
  display: flex;
  font-family: "Open Sans", sans-serif;
  font-size: 1.8rem;
  justify-content: flex-end;
  line-height: 0;
  margin: auto 0;
  max-width: 149.4rem;
  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(255, 255, 255);
  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(100, 99, 99);
  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-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: 4.6rem;
  }
}
.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 #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(255, 255, 255);
  border: 0.2rem solid rgb(0, 0, 0);
  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(0, 0, 0);
  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(0, 0, 0);
  color: rgb(255, 255, 255);
}
@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: 5.8rem;
}
body.is-home .is-main-header {
  height: 5.8rem;
}
@media only screen and (min-width: 768px) {
  body.is-home .is-main-header {
    height: 10.2rem;
  }
}
body.is-home .is-main-header.squish {
  height: 5.8rem;
}

section.is-hero {
  background-color: rgb(0, 0, 0);
  color: rgb(255, 255, 255);
  font-size: 2.2rem;
  min-height: 47rem;
  position: relative;
  transition: min-height 300ms ease-out, opacity 300ms ease-out 300ms;
}
section.is-hero > .maf-background {
  transition: all 300ms ease-out;
}
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.below-nav.home-style, body.is-home section.is-hero.below-nav {
  margin-bottom: 5.1rem;
  min-height: calc(100vh - (5.8rem + 5.1rem));
}
@media only screen and (min-width: 768px) {
  section.is-hero.below-nav.home-style, body.is-home section.is-hero.below-nav {
    min-height: calc(100vh - 15.3rem);
  }
}
section.is-hero.below-nav.home-style.squish, body.is-home section.is-hero.below-nav.squish {
  min-height: calc(100vh - (5.8rem + 5.1rem));
}
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 {
  justify-content: center;
}
section.is-hero.slideshow > .row {
  display: none;
}
section.is-hero.slideshow .flickity-slideshow, section.is-hero.slideshow .flickity-slideshow-edit {
  width: 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;
  justify-content: center;
  overflow: hidden;
  padding: 4.6rem 0;
  width: 100%;
}
section.is-hero.slideshow .flickity-slideshow .ss-slide .row, section.is-hero.slideshow .flickity-slideshow-edit .ss-slide .row {
  align-items: center;
  display: grid;
  gap: 2.3rem;
  grid-template-columns: 1fr;
  justify-content: start;
  padding: 0 2.3rem;
  width: 100%;
}
@media only screen and (min-width: 576px) {
  section.is-hero.slideshow .flickity-slideshow .ss-slide .row, section.is-hero.slideshow .flickity-slideshow-edit .ss-slide .row {
    gap: 4.6rem;
    padding: 0 4.6rem;
  }
}
@media only screen and (min-width: 1024px) {
  section.is-hero.slideshow .flickity-slideshow .ss-slide .row, section.is-hero.slideshow .flickity-slideshow-edit .ss-slide .row {
    grid-template-columns: 1fr 1fr;
  }
}
section.is-hero.slideshow .flickity-slideshow .ss-slide .maf-content, section.is-hero.slideshow .flickity-slideshow-edit .ss-slide .maf-content {
  align-items: flex-start;
  max-width: 149.4rem;
  position: relative;
  text-align: left;
}
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.slideshow .flickity-slideshow-edit .ss-slide .maf-content > * {
  opacity: 1;
  transform: translateX(0);
  transition: none;
}
section.is-hero.home-style, body.is-home section.is-hero {
  overflow: visible;
  z-index: 2;
}
section.is-hero.home-style .spr, body.is-home section.is-hero .spr {
  bottom: 0;
  left: 2.3rem;
  transform: translate(0, 50%);
}
@media only screen and (min-width: 576px) {
  section.is-hero.home-style .spr, body.is-home section.is-hero .spr {
    left: 4.6rem;
  }
}
section.is-hero.sm-txt {
  font-size: 1.8rem;
}
@media only screen and (min-width: 1024px) {
  section.is-hero.has-bc .row .column {
    padding-top: 5rem;
  }
}
section.is-hero.is-brand .row {
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  padding-top: 6rem;
}
section.is-hero.is-brand .row .column {
  flex: 1 1 0;
  min-width: 30rem;
  padding-top: 0;
  text-align: left;
}
@media only screen and (min-width: 576px) {
  section.is-hero.is-brand .row .column {
    min-width: 42rem;
  }
}
section.is-hero.is-brand .row .column.maf-col-1 {
  max-width: 36.2rem;
}
section.is-hero.is-brand .row .column.maf-col-2 .maf-content {
  max-width: 72.5rem;
}
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.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.15rem;
  padding-top: 0;
  justify-content: flex-start;
}
@media only screen and (min-width: 576px) {
  section.two-column .row .column {
    padding: 6rem 2.3rem;
    padding-top: 0;
  }
}
@media only screen and (min-width: 960px) {
  section.two-column .row .column {
    padding: 10rem 2.3rem;
    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-centre .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.15rem;
}
@media only screen and (min-width: 576px) {
  section.two-column.maf-col-bg-full .row .column {
    padding: 6rem 2.3rem;
  }
}
@media only screen and (min-width: 960px) {
  section.two-column.maf-col-bg-full .row .column {
    padding: 10rem 2.3rem;
  }
}
section.two-column.maf-col-bg-full .row .column.has-bg {
  min-height: 51rem;
}
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 2.3rem;
  }
}
@media only screen and (min-width: 1024px) {
  section.two-column.maf-col-bg-full .row .column .maf-col-i {
    max-width: 69.7rem;
  }
}
@media only screen and (min-width: 1024px) {
  section.two-column.maf-col-bg-full .row .column .maf-col-i .maf-content {
    max-width: 60rem;
  }
}
@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-1 .maf-col-i {
    align-items: flex-start;
  }
}
@media only screen and (min-width: 1024px) {
  section.two-column.maf-col-bg-full .row .column.maf-col-2 {
    align-items: flex-start;
  }
}
@media only screen and (min-width: 1024px) {
  section.two-column.maf-col-bg-full .row .column.maf-col-2 .maf-col-i {
    align-items: flex-end;
  }
}
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.img-right > .maf-background {
  background-position: bottom center;
  background-size: contain;
}
section.two-column.img-right .row .column {
  justify-content: center;
  padding-bottom: 6rem !important;
}
section.two-column.img-right .row .column.maf-col-1 .maf-content {
  max-width: 56rem;
}
section.two-column.img-left > .maf-background {
  background-position: bottom center;
  background-size: contain;
}
section.two-column.img-left .row {
  flex-direction: column-reverse;
}
@media only screen and (min-width: 1024px) {
  section.two-column.img-left .row {
    flex-direction: row;
  }
}
section.two-column.img-left .row .column {
  justify-content: center;
}
section.two-column.img-left .row .column.maf-col-2 .maf-content {
  max-width: 56rem;
}
section.two-column.maf-rep-pad .row {
  padding: 0 1.15rem;
  padding-top: 6rem;
}
@media only screen and (min-width: 576px) {
  section.two-column.maf-rep-pad .row {
    padding: 0 2.3rem;
    padding-top: 6rem;
  }
}
@media only screen and (min-width: 960px) {
  section.two-column.maf-rep-pad .row {
    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.15rem;
  padding-top: 0;
}
@media only screen and (min-width: 576px) {
  section.two-column.maf-rep-pad .row .column {
    padding: 6rem 2.3rem;
    padding-top: 0;
  }
}
@media only screen and (min-width: 960px) {
  section.two-column.maf-rep-pad .row .column {
    padding: 10rem 2.3rem;
    padding-top: 0;
  }
}
section.two-column.col-bgs:not(.maf-col-bg-full) .row {
  padding: 0 1.15rem;
}
@media only screen and (min-width: 576px) {
  section.two-column.col-bgs:not(.maf-col-bg-full) .row {
    padding: 0 2.3rem;
  }
}
section.two-column.col-bgs:not(.maf-col-bg-full) .row .column {
  padding: 6rem 1.15rem;
}
@media only screen and (min-width: 576px) {
  section.two-column.col-bgs:not(.maf-col-bg-full) .row .column {
    padding: 6rem 2.3rem;
  }
}
@media only screen and (min-width: 960px) {
  section.two-column.col-bgs:not(.maf-col-bg-full) .row .column {
    padding: 10rem 2.3rem;
  }
}
section.two-column.vidpop .row {
  padding: 0 1.15rem;
  max-width: 149.4rem;
}
@media only screen and (min-width: 576px) {
  section.two-column.vidpop .row {
    padding: 0 2.3rem;
  }
}
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.15rem;
  padding-top: 0;
  justify-content: flex-start;
}
@media only screen and (min-width: 576px) {
  section.two-column.vidpop .row .column {
    padding: 6rem 2.3rem;
    padding-top: 0;
  }
}
@media only screen and (min-width: 960px) {
  section.two-column.vidpop .row .column {
    padding: 10rem 2.3rem;
    padding-top: 0;
  }
}
section.two-column.vidpop .row .column .maf-content {
  padding: 0;
}
section.two-column.vidpop .row .column .maf-content.video {
  aspect-ratio: 1/0.5625;
  height: 100%;
}
section.two-column.vidpop .row .column .maf-content.video .vid-pop {
  height: 100%;
}
section.two-column.vidpop .row .column .maf-content.video > img {
  height: 100%;
  left: 0;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  width: 100%;
}
section.two-column.intro .row .column {
  justify-content: center;
  padding-bottom: 1.5rem;
}
@media only screen and (min-width: 1024px) {
  section.two-column.intro .row .column.maf-col-1 {
    max-width: 33.333%;
  }
}
section.two-column.partner-intro .row {
  padding-top: 3rem;
}
@media only screen and (min-width: 1024px) {
  section.two-column.partner-intro .row {
    padding-top: 5rem;
  }
}
section.two-column.partner-intro .row .column {
  padding-top: 2.5rem;
}
@media only screen and (min-width: 1024px) {
  section.two-column.partner-intro .row .column {
    padding-bottom: 6.7rem;
  }
}
section.two-column.partner-intro .row .column.maf-col-2 .maf-content {
  border: 0.1rem solid currentColor;
  border-radius: 0 2.5rem 0 0;
  padding: 4%;
}
section.two-column.partner-intro .row .column.maf-col-2 .maf-content strong {
  font-weight: 700;
}
section.two-column.con-deets p.h2-style {
  margin-bottom: 0.4em;
}
section.two-column.con-deets:not(.cdright) .row .column.maf-col-1 {
  background-color: rgb(219, 20, 21);
  color: rgb(255, 255, 255);
}
section.two-column.con-deets:not(.cdright) .row .column.maf-col-1 .maf-content > *:not(.button) {
  color: rgb(255, 255, 255);
}
section.two-column.con-deets:not(.cdright) .row .column.maf-col-1 .maf-content a:not(.button) {
  color: inherit;
}
section.two-column.con-deets:not(.cdright) .row .column.maf-col-1 .maf-content a:not(.button):hover, section.two-column.con-deets:not(.cdright) .row .column.maf-col-1 .maf-content a:not(.button).focus {
  opacity: 0.8;
}
section.two-column.con-deets:not(.cdright) .row .column.maf-col-1 .maf-content hr {
  border-color: rgb(255, 255, 255);
}
section.two-column.con-deets.cdright .row .column.maf-col-2 {
  background-color: rgb(219, 20, 21);
  color: rgb(255, 255, 255);
}
section.two-column.con-deets.cdright .row .column.maf-col-2 .maf-content > *:not(.button) {
  color: rgb(255, 255, 255);
}
section.two-column.con-deets.cdright .row .column.maf-col-2 .maf-content a:not(.button) {
  color: inherit;
}
section.two-column.con-deets.cdright .row .column.maf-col-2 .maf-content a:not(.button):hover, section.two-column.con-deets.cdright .row .column.maf-col-2 .maf-content a:not(.button).focus {
  opacity: 0.8;
}
section.two-column.con-deets.cdright .row .column.maf-col-2 .maf-content hr {
  border-color: rgb(255, 255, 255);
}
section.three-column .row {
  padding: 0 1.15rem;
  padding-top: 6rem;
}
@media only screen and (min-width: 576px) {
  section.three-column .row {
    padding: 0 2.3rem;
    padding-top: 6rem;
  }
}
@media only screen and (min-width: 960px) {
  section.three-column .row {
    padding-top: 10rem;
  }
}
section.three-column .row .header .maf-content {
  padding-top: 0;
  padding-bottom: 6rem;
}
section.three-column .row .column {
  padding: 6rem 1.15rem;
  padding-top: 0;
}
@media only screen and (min-width: 576px) {
  section.three-column .row .column {
    padding: 6rem 2.3rem;
    padding-top: 0;
  }
}
@media only screen and (min-width: 960px) {
  section.three-column .row .column {
    padding: 10rem 2.3rem;
    padding-top: 0;
  }
}
section.three-column .row .column.has-bg {
  min-height: 51rem;
}
section.three-column.con-caller .row {
  display: grid;
  grid-auto-rows: minmax(10rem, auto);
  grid-template-columns: 1fr;
  max-width: none;
  padding: 0;
}
@media only screen and (min-width: 1024px) {
  section.three-column.con-caller .row {
    grid-auto-rows: 1fr;
    grid-template-columns: repeat(2, 1fr);
  }
}
section.three-column.con-caller .row .column {
  padding: 6rem 1.15rem;
  width: auto;
}
@media only screen and (min-width: 576px) {
  section.three-column.con-caller .row .column {
    padding: 6rem 2.3rem;
  }
}
@media only screen and (min-width: 960px) {
  section.three-column.con-caller .row .column {
    padding: 10rem 2.3rem;
  }
}
@media only screen and (min-width: 960px) {
  section.three-column.con-caller .row .column {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
}
section.three-column.con-caller .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.three-column.con-caller .row .column .maf-col-i {
    padding: 0 2.3rem;
  }
}
@media only screen and (min-width: 1024px) {
  section.three-column.con-caller .row .column .maf-col-i {
    max-width: 72.4rem;
  }
}
@media only screen and (min-width: 1024px) {
  section.three-column.con-caller .row .column .maf-col-i .maf-content {
    max-width: 60rem;
  }
}
section.three-column.con-caller .row .column.maf-col-1 {
  grid-column: 1;
  grid-row: 2;
}
@media only screen and (min-width: 1024px) {
  section.three-column.con-caller .row .column.maf-col-1 {
    grid-row: 1/3;
  }
}
section.three-column.con-caller .row .column.maf-col-2 {
  align-items: flex-start;
  grid-column: 1;
  grid-row: 1;
}
@media only screen and (min-width: 1024px) {
  section.three-column.con-caller .row .column.maf-col-2 {
    grid-column: 2;
    grid-row: 1;
  }
}
section.three-column.con-caller .row .column.maf-col-3 {
  background-color: rgb(219, 20, 21);
  color: rgb(255, 255, 255);
  align-items: flex-start;
  grid-column: 1;
  grid-row: 3;
}
section.three-column.con-caller .row .column.maf-col-3 .maf-content > *:not(.button) {
  color: rgb(255, 255, 255);
}
section.three-column.con-caller .row .column.maf-col-3 .maf-content a:not(.button) {
  color: inherit;
}
section.three-column.con-caller .row .column.maf-col-3 .maf-content a:not(.button):hover, section.three-column.con-caller .row .column.maf-col-3 .maf-content a:not(.button).focus {
  opacity: 0.8;
}
section.three-column.con-caller .row .column.maf-col-3 .maf-content hr {
  border-color: rgb(255, 255, 255);
}
@media only screen and (min-width: 1024px) {
  section.three-column.con-caller .row .column.maf-col-3 {
    grid-column: 2;
    grid-row: 2;
  }
}
section.three-column.timeline {
  min-height: 50vh;
  overflow: visible;
  position: relative;
}
section.three-column.timeline::before {
  background-color: rgb(219, 20, 21);
  content: "";
  height: 100%;
  left: 50%;
  position: absolute;
  transform: translate(-50%, 0);
  top: 0;
  width: 0.1rem;
}
section.three-column.timeline .row {
  align-content: center;
  align-items: center;
  flex-direction: row;
  flex-wrap: wrap;
}
section.three-column.timeline .row .column.maf-col-1, section.three-column.timeline .row .column.maf-col-2 {
  font-size: 8rem;
  font-weight: 700;
  padding-bottom: 2rem;
  width: 50%;
}
section.three-column.timeline .row .column.maf-col-1 p, section.three-column.timeline .row .column.maf-col-2 p {
  line-height: 1;
}
section.three-column.timeline .row .column.maf-col-1 {
  align-items: flex-end;
  padding-right: 0.2rem;
  text-align: right;
}
section.three-column.timeline .row .column.maf-col-2 {
  padding-left: 0.2rem;
}
section.three-column.timeline .row .column.maf-col-3 {
  align-items: center;
  text-align: center;
  width: 100%;
}
section.three-column.timeline .row .column.maf-col-3 .maf-content {
  background-color: rgb(255, 255, 255);
  border: 0.1rem solid rgb(219, 20, 21);
  border-radius: 0 3rem 0 0;
  max-width: 90rem;
  padding: 3rem;
}
section.three-column.timeline.first::after, section.three-column.timeline.last::after {
  background-color: rgb(219, 20, 21);
  border-radius: 50%;
  content: "";
  height: 2rem;
  left: 50%;
  position: absolute;
  transform: translate(-50%, 0);
  top: 0;
  width: 2rem;
}
section.three-column.timeline.last::after {
  bottom: 0;
  top: auto;
}
section.four-column .row {
  padding: 0 1.15rem;
  padding-top: 6rem;
  flex-direction: row;
  flex-wrap: wrap;
}
@media only screen and (min-width: 576px) {
  section.four-column .row {
    padding: 0 2.3rem;
    padding-top: 6rem;
  }
}
@media only screen and (min-width: 960px) {
  section.four-column .row {
    padding-top: 10rem;
  }
}
section.four-column .row .header .maf-content {
  padding-top: 0;
  padding-bottom: 6rem;
}
section.four-column .row .column {
  padding: 6rem 1.15rem;
  padding-top: 0;
}
@media only screen and (min-width: 576px) {
  section.four-column .row .column {
    padding: 6rem 2.3rem;
    padding-top: 0;
  }
}
@media only screen and (min-width: 960px) {
  section.four-column .row .column {
    padding: 10rem 2.3rem;
    padding-top: 0;
  }
}
section.four-column.bordered p.page-lead {
  font-weight: 700;
  margin-bottom: 0.5em;
}
section.four-column.bordered .row {
  padding-top: 4.6rem;
  padding-bottom: 12.6rem;
}
section.four-column.bordered .row .column {
  color: rgb(100, 99, 99);
  padding-top: 4.8rem;
  padding-bottom: 4.1rem;
  text-align: center;
}
@media only screen and (min-width: 768px) {
  section.four-column.bordered .row .column.maf-col-1, section.four-column.bordered .row .column.maf-col-3 {
    border-right: 0.1rem solid rgb(100, 99, 99);
  }
}
@media only screen and (min-width: 1024px) {
  section.four-column.bordered .row .column.maf-col-2 {
    border-right: 0.1rem solid rgb(100, 99, 99);
  }
}
section.divider .row {
  max-width: 149.4rem;
}
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;
  text-align: left;
}
section.page-content-section .row {
  padding: 0 1.15rem;
  padding-top: 6rem;
}
@media only screen and (min-width: 576px) {
  section.page-content-section .row {
    padding: 0 2.3rem;
    padding-top: 6rem;
  }
}
@media only screen and (min-width: 960px) {
  section.page-content-section .row {
    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.15rem;
  padding-top: 0;
  text-align: left;
}
@media only screen and (min-width: 576px) {
  section.page-content-section .row .column {
    padding: 6rem 2.3rem;
    padding-top: 0;
  }
}
@media only screen and (min-width: 960px) {
  section.page-content-section .row .column {
    padding: 10rem 2.3rem;
    padding-top: 0;
  }
}
section.page-content-section .row .column .maf-content {
  max-width: 92rem;
}
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.4em;
}
section.portal-section:not(.icon-style) div.cardbox article.card .portal-item {
  color: rgb(255, 255, 255);
  font-size: 2.2rem;
}
section.portal-section:not(.icon-style) div.cardbox article.card .portal-item .portal-content .tn {
  aspect-ratio: none;
  height: 100%;
  left: 0;
  margin: 0;
  opacity: 1;
  position: absolute;
  z-index: 1;
}
section.portal-section:not(.icon-style) div.cardbox article.card .portal-item .portal-content .tn::after {
  background-image: linear-gradient(177deg, rgba(0, 0, 0, 0.53), transparent 44%);
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
section.portal-section:not(.icon-style) div.cardbox article.card .portal-item .portal-content .info {
  aspect-ratio: 1/0.656;
  z-index: 2;
}
section.portal-section:not(.icon-style) div.cardbox article.card .portal-item .portal-content .title {
  font-size: 3.6rem;
  padding: 0 0 3rem 0;
  position: relative;
}
section.portal-section:not(.icon-style) div.cardbox article.card .portal-item .portal-content .title::after {
  background-color: rgb(219, 20, 21);
  bottom: 0;
  content: "";
  height: 0.6rem;
  left: 0;
  position: absolute;
  transition: all 300ms ease-out;
  width: 6.8rem;
}
section.portal-section:not(.icon-style) div.cardbox article.card .portal-item .portal-content .desc {
  opacity: 0;
  padding-top: 2rem;
  transition: all 300ms ease-out;
}
section.portal-section:not(.icon-style) div.cardbox article.card .portal-item .portal-content .card-button {
  border: 0;
  color: rgb(255, 255, 255);
  font-weight: 700;
  margin-left: auto;
  overflow: visible;
  padding: 1rem 2.8rem 1rem 2rem;
  text-align: right;
  width: 14.6rem;
}
section.portal-section:not(.icon-style) div.cardbox article.card .portal-item .portal-content .card-button span {
  opacity: 0;
  transition: all 300ms ease-out;
  transition-delay: 0;
}
section.portal-section:not(.icon-style) div.cardbox article.card .portal-item .portal-content .card-button::before {
  background-color: rgb(219, 20, 21);
  display: inline-block;
  height: 30rem;
  left: 9rem;
  opacity: 1;
  top: -1rem;
  transform: rotate(-9deg);
  transform-origin: top left;
  transition-delay: 300ms;
  width: 30rem;
}
section.portal-section:not(.icon-style) div.cardbox article.card .portal-item .portal-content .card-button::after {
  background-color: rgb(255, 255, 255);
  -webkit-clip-path: polygon(0 0, 0.9rem 0, 100% 50%, 0.9rem 100%, 0 100%, calc(100% - 0.9rem) 50%);
          clip-path: polygon(0 0, 0.9rem 0, 100% 50%, 0.9rem 100%, 0 100%, calc(100% - 0.9rem) 50%);
  content: "";
  display: inline-block;
  height: 3.2rem;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 2rem;
}
section.portal-section:not(.icon-style) div.cardbox article.card .portal-item:not(.no-link):hover .portal-content .info, section.portal-section:not(.icon-style) div.cardbox article.card .portal-item:not(.no-link):focus .portal-content .info {
  background-color: rgba(219, 20, 21, 0.9);
}
section.portal-section:not(.icon-style) div.cardbox article.card .portal-item:not(.no-link):hover .portal-content .title:after, section.portal-section:not(.icon-style) div.cardbox article.card .portal-item:not(.no-link):focus .portal-content .title:after {
  background-color: rgb(255, 255, 255);
}
section.portal-section:not(.icon-style) div.cardbox article.card .portal-item:not(.no-link):hover .portal-content .desc, section.portal-section:not(.icon-style) div.cardbox article.card .portal-item:not(.no-link):focus .portal-content .desc {
  opacity: 1;
}
section.portal-section:not(.icon-style) div.cardbox article.card .portal-item:not(.no-link):hover .portal-content .card-button span, section.portal-section:not(.icon-style) div.cardbox article.card .portal-item:not(.no-link):focus .portal-content .card-button span {
  opacity: 1;
  transition-delay: 300ms;
}
section.portal-section:not(.icon-style) div.cardbox article.card .portal-item:not(.no-link):hover .portal-content .card-button::before, section.portal-section:not(.icon-style) div.cardbox article.card .portal-item:not(.no-link):focus .portal-content .card-button::before {
  background-color: rgb(0, 0, 0);
  height: 30rem;
  left: -1rem;
  top: -1rem;
  transition-delay: 0s;
  width: 30rem;
}
section.portal-section.maf-h-h .row .column {
  padding-top: 2.3rem;
}
section.portal-section.brands-portal {
  background-color: rgb(203, 206, 209);
}
@media only screen and (min-width: 960px) {
  section.portal-section.brands-portal div.cardbox article.card {
    width: 33.333%;
  }
}
section.portal-section.brands-portal div.cardbox article.card .portal-item .portal-content .tn::after {
  display: none;
}
section.portal-section.brands-portal div.cardbox article.card .portal-item .portal-content .info {
  aspect-ratio: 1/0.75;
  padding: 5% 4% 3% 5%;
}
section.portal-section.brands-portal div.cardbox article.card .portal-item .portal-content .title {
  font-size: 2.8rem;
  opacity: 0;
  padding-bottom: 2rem;
}
section.portal-section.brands-portal div.cardbox article.card .portal-item .portal-content .title::after {
  background-color: rgb(255, 255, 255);
}
section.portal-section.brands-portal div.cardbox article.card .portal-item .portal-content .button {
  font-size: 1.6rem;
}
section.portal-section.brands-portal div.cardbox article.card .portal-item .portal-content .button::before {
  left: 10rem;
}
section.portal-section.brands-portal div.cardbox article.card .portal-item .portal-content .button::after {
  background-color: rgb(255, 255, 255);
  -webkit-clip-path: polygon(0 0, 0.7rem 0, 100% 50%, 0.7rem 100%, 0 100%, calc(100% - 0.7rem) 50%);
          clip-path: polygon(0 0, 0.7rem 0, 100% 50%, 0.7rem 100%, 0 100%, calc(100% - 0.7rem) 50%);
  content: "";
  display: inline-block;
  height: 2.3rem;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 1.5rem;
}
section.portal-section.brands-portal div.cardbox article.card .portal-item:hover .portal-content .title, section.portal-section.brands-portal div.cardbox article.card .portal-item:focus .portal-content .title {
  opacity: 1;
}
section.portal-section.brands-portal.slider {
  background-color: transparent;
  overflow: visible;
}
section.portal-section.brands-portal.slider .flickity-slideshow {
  padding: 0 3rem;
}
section.portal-section.brands-portal.slider .flickity-slideshow .ss-slide {
  aspect-ratio: 1/0.75;
  border: 0.1rem solid transparent;
  width: 100%;
}
section.portal-section.brands-portal.slider .flickity-slideshow .ss-slide p.img {
  margin: 0;
}
section.portal-section.brands-portal.slider .flickity-slideshow .ss-slide p.img img {
  width: 100%;
}
section.portal-section.brands-portal.slider .flickity-slideshow .flickity-page-dots {
  bottom: 4%;
  position: absolute;
  width: 100%;
}
section.portal-section.brands-portal.slider .row {
  position: relative;
}
section.portal-section.brands-portal.slider .row::before {
  border: 0.1rem solid currentColor;
  content: "";
  height: 100%;
  left: 50%;
  position: absolute;
  top: 0;
  transform: translateX(-50%);
  width: calc(100% - 4.6rem);
}
@media only screen and (min-width: 1024px) {
  section.portal-section.brands-portal.slider .row::before {
    width: calc(100% - 9.2rem);
  }
}
section.portal-section.brands-portal.slider .row .column {
  padding-top: 0;
  padding-bottom: 0;
  justify-content: center;
}
section.portal-section.brands-portal.slider .row .column > .maf-content {
  padding: 5%;
}
section.portal-section.icon-style div.cardbox article.card {
  padding-bottom: 0;
  width: 50%;
}
@media only screen and (min-width: 768px) {
  section.portal-section.icon-style div.cardbox article.card {
    width: 25%;
  }
}
section.portal-section.icon-style div.cardbox article.card .portal-item {
  background-color: transparent;
  overflow: visible;
  text-align: center;
}
section.portal-section.icon-style div.cardbox article.card .portal-item .portal-content {
  align-items: center;
}
section.portal-section.icon-style div.cardbox article.card .portal-item .portal-content .tn {
  aspect-ratio: 1/1;
  background-color: transparent;
  max-width: 10rem;
  overflow: visible;
}
section.portal-section.icon-style div.cardbox article.card .portal-item .portal-content .tn .tn-img {
  -o-object-fit: scale-down;
     object-fit: scale-down;
  -o-object-position: bottom center;
     object-position: bottom center;
}
section.portal-section.icon-style div.cardbox article.card .portal-item .portal-content .info {
  padding: 4%;
}
section.portal-section.icon-style div.cardbox article.card .portal-item .portal-content .title {
  font-size: 1.8rem;
  font-weight: 600;
}
section.portal-section.icon-style div.cardbox article.card .portal-item .portal-content .button {
  display: none;
}
section.portal-section.icon-style div.cardbox article.card .portal-item:not(.no-link):hover .portal-content .tn .tn-img, section.portal-section.icon-style div.cardbox article.card .portal-item:not(.no-link):focus .portal-content .tn .tn-img {
  transform: translateY(-1rem);
}
section.portal-section.icon-style .row {
  max-width: 101rem;
}
section.portal-section.sm-bottom .row .column {
  padding-bottom: 2.3rem;
}
section.blog-section div.cardbox article.card .portal-item {
  font-size: 1.6rem;
}
section.blog-section div.cardbox article.card .portal-item .portal-content {
  align-items: stretch;
  flex-direction: row;
}
section.blog-section div.cardbox article.card .portal-item .portal-content .tn {
  aspect-ratio: auto;
  flex: 0 0 auto;
  width: 35.588%;
}
section.blog-section div.cardbox article.card .portal-item .portal-content .info {
  align-items: flex-start;
  flex: 0 0 auto;
  width: 64.411%;
}
section.blog-section div.cardbox article.card .portal-item .portal-content .title {
  padding-top: 1rem;
}
section.blog-section div.cardbox article.card .portal-item .portal-content .button {
  border: 0;
  color: rgb(219, 20, 21);
  font-weight: 700;
  overflow: visible;
  padding: 0 1.6rem 0.2rem 0;
  text-align: left;
  width: auto;
}
section.blog-section div.cardbox article.card .portal-item .portal-content .button::before {
  display: none;
}
section.blog-section div.cardbox article.card .portal-item .portal-content .button::after {
  background-color: rgb(219, 20, 21);
  -webkit-clip-path: polygon(0 0, 0.5rem 0, 100% 50%, 0.5rem 100%, 0 100%, calc(100% - 0.5rem) 50%);
          clip-path: polygon(0 0, 0.5rem 0, 100% 50%, 0.5rem 100%, 0 100%, calc(100% - 0.5rem) 50%);
  content: "";
  display: inline-block;
  height: 1.6rem;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  transition: right 300ms ease-out;
  width: 1.1rem;
}
section.blog-section div.cardbox article.card .portal-item:hover .portal-content .button::after, section.blog-section div.cardbox article.card .portal-item:focus .portal-content .button::after {
  right: -1rem;
}
section.blog-section.blog-top-level div.cardbox article.card .portal-item .portal-content .info {
  background-color: rgb(203, 206, 209);
}
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 p {
  color: rgb(0, 0, 0);
  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.filters {
  border-top: 0.1rem solid rgb(100, 99, 99);
  border-bottom: 0.1rem solid rgb(100, 99, 99);
  padding-top: 2rem;
  padding-bottom: 2rem;
}
section.blog-section.blog-top-level .header .maf-content .cats .fbutton {
  color: rgb(100, 99, 99);
  display: inline-block;
  font-size: 2.2rem;
  font-weight: 700;
  padding: 1rem 2rem;
}
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(219, 20, 21);
}
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.maf-h-h .row .column {
  padding-top: 2.3rem;
}
section.blog-section.blog-highlight.maf-h-f .row .column {
  padding-bottom: 2.3rem;
}
section.blog-section.blog-detail .up-link {
  color: rgb(219, 20, 21);
  font-weight: 700;
  margin-bottom: 0.1em;
}
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(219, 20, 21);
}
section.blog-section.blog-detail .blog-bar > div p a:hover, section.blog-section.blog-detail .blog-bar > div p a:focus {
  color: rgb(219, 20, 21);
}
section.blog-section.blog-detail .blog-bar > div.date {
  font-family: "Open 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(100, 99, 99);
  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.4em;
}
section.blog-section.blog-detail .is-faq {
  width: 100%;
}
section.blog-section.blog-detail .header .maf-content {
  align-items: flex-start;
  max-width: 92rem;
  text-align: left;
}
section.blog-section.blog-detail .row {
  padding: 0 1.15rem;
  padding-top: 6rem;
}
@media only screen and (min-width: 576px) {
  section.blog-section.blog-detail .row {
    padding: 0 2.3rem;
    padding-top: 6rem;
  }
}
@media only screen and (min-width: 960px) {
  section.blog-section.blog-detail .row {
    padding-top: 10rem;
  }
}
section.blog-section.blog-detail .row .header .maf-content {
  padding-top: 0;
  padding-bottom: 6rem;
}
section.blog-section.blog-detail .row .column {
  align-items: center;
  padding: 6rem 1.15rem;
  padding-top: 0;
  text-align: left;
}
@media only screen and (min-width: 576px) {
  section.blog-section.blog-detail .row .column {
    padding: 6rem 2.3rem;
    padding-top: 0;
  }
}
@media only screen and (min-width: 960px) {
  section.blog-section.blog-detail .row .column {
    padding: 10rem 2.3rem;
    padding-top: 0;
  }
}
section.blog-section.blog-detail .row .column .maf-content {
  max-width: 92rem;
}
section.blog-section.blog-detail.maf-h-h .row {
  padding-top: 3rem;
}
section.blog-section.assoc {
  background-color: rgb(255, 90, 0);
  color: rgb(255, 255, 255);
  overflow: visible;
}
section.job-section div.cardbox article.card {
  width: 100%;
}
@media only screen and (min-width: 576px) {
  section.job-section div.cardbox article.card {
    width: 50%;
  }
}
@media only screen and (min-width: 768px) {
  section.job-section div.cardbox article.card {
    width: 33.333%;
  }
}
section.job-section div.cardbox article.card .portal-item .portal-content .info {
  align-items: flex-start;
  padding: 2% 5% 7% 5%;
}
section.job-section div.cardbox article.card .portal-item .portal-content .title {
  margin-bottom: 0.3em;
}
section.job-section div.cardbox article.card .portal-item .portal-content .card-button {
  border: 0;
  color: rgb(219, 20, 21);
  font-weight: 700;
  overflow: visible;
  padding: 0 1.6rem 0.2rem 0;
  text-align: left;
  width: auto;
}
section.job-section div.cardbox article.card .portal-item .portal-content .card-button::before {
  display: none;
}
section.job-section div.cardbox article.card .portal-item .portal-content .card-button::after {
  background-color: rgb(219, 20, 21);
  -webkit-clip-path: polygon(0 0, 0.5rem 0, 100% 50%, 0.5rem 100%, 0 100%, calc(100% - 0.5rem) 50%);
          clip-path: polygon(0 0, 0.5rem 0, 100% 50%, 0.5rem 100%, 0 100%, calc(100% - 0.5rem) 50%);
  content: "";
  display: inline-block;
  height: 1.6rem;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  transition: right 300ms ease-out;
  width: 1.1rem;
}
section.job-section div.cardbox article.card .portal-item:hover .portal-content .button::after, section.job-section div.cardbox article.card .portal-item:focus .portal-content .button::after {
  right: -1rem;
}
section.job-section.job-top-level {
  background-color: rgb(203, 206, 209);
}
section.job-section.job-detail .title {
  margin-bottom: 0.1rem;
}
section.job-section.job-detail .row .column.maf-col-2 p strong {
  display: inline-block;
  width: 100%;
}
section.faq-section .row {
  padding-bottom: 6rem;
  max-width: 144.8rem;
}
@media only screen and (min-width: 960px) {
  section.faq-section .row {
    padding-bottom: 10rem;
  }
}
section.faq-section .row .column .maf-content.header {
  padding: 6rem 2.3rem !important;
}
@media only screen and (min-width: 576px) {
  section.faq-section .row .column .maf-content.header {
    padding: 6rem 4.6rem !important;
  }
}
section.faq-section .row .column .maf-content.col-footer {
  padding: 6rem 2.3rem 10rem 2.3rem !important;
}
@media only screen and (min-width: 576px) {
  section.faq-section .row .column .maf-content.col-footer {
    padding: 6rem 4.6rem 10rem 4.6rem !important;
  }
}
section.faq-section .row .column.maf-col-1 {
  background-color: rgb(203, 206, 209);
  color: rgb(0, 0, 0);
  padding: 0;
}
section.faq-section .row .column.maf-col-1 dl {
  border-bottom: 0.2rem solid rgb(255, 255, 255);
}
section.faq-section .row .column.maf-col-1 dl dt {
  border-top: 0.2rem solid rgb(255, 255, 255);
}
section.faq-section .row .column.maf-col-1 dl dd {
  background-color: rgb(255, 255, 255);
}
section.faq-section .row .column.maf-col-2 {
  background-color: black;
  color: rgb(255, 255, 255);
}
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(219, 20, 21);
}
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(255, 90, 0);
  text-align: right;
  width: 100%;
}
section.concertina-section .row .column .concertina .conc-action button {
  background: none;
  border: 0;
  border-radius: 0;
  color: rgb(100, 99, 99);
  cursor: pointer;
  font-family: "Open 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(100, 99, 99);
  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(219, 20, 21);
}
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(219, 20, 21);
  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.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.con-link {
  border-color: rgb(100, 99, 99);
  background-color: rgb(100, 99, 99);
  color: rgb(255, 255, 255);
}
section.shop-section div.cardbox article.card .portal-item .portal-content .button.con-link:hover, section.shop-section div.cardbox article.card .portal-item .portal-content .button.con-link:focus {
  background-color: transparent;
  color: rgb(100, 99, 99);
}
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 > div.list-view {
  border-top: 1px solid rgb(255, 90, 0);
  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(255, 90, 0);
  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(255, 90, 0);
    border-bottom: 1px solid rgb(255, 90, 0);
  }
}
section.shop-section div.cardbox > div.list-view .list-row > div:first-child {
  border-left: 1px solid rgb(255, 90, 0);
}
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(219, 20, 21);
  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(219, 20, 21);
  color: rgb(255, 255, 255);
  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 > .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(255, 255, 255);
  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.category-list-highlight.maf-h-h .row .column {
  padding-top: 2.3rem;
}
body.is-home section.shop-section.category-list-highlight .row .column {
  padding-bottom: 2.7rem;
}
section.shop-section.product-list {
  background-color: rgb(203, 206, 209);
}
section.shop-section.product-list div.cardbox {
  justify-content: flex-start;
}
section.shop-section.product-list div.cardbox article.card {
  font-size: 1.6rem;
  width: 50%;
}
@media only screen and (min-width: 576px) {
  section.shop-section.product-list div.cardbox article.card {
    font-size: 1.8rem;
  }
}
@media only screen and (min-width: 960px) {
  section.shop-section.product-list div.cardbox article.card {
    width: 33.333%;
  }
}
@media only screen and (min-width: 1024px) {
  section.shop-section.product-list div.cardbox article.card {
    width: 25%;
  }
}
section.shop-section.product-list div.cardbox article.card .portal-item {
  text-align: center;
}
section.shop-section.product-list div.cardbox article.card .portal-item .portal-content .tn {
  aspect-ratio: 1/0.75;
}
section.shop-section.product-list div.cardbox article.card .portal-item .portal-content .tn .tn-img {
  opacity: 1;
}
section.shop-section.product-list div.cardbox article.card .portal-item .portal-content .info {
  align-items: center;
  padding: 2% 5% 7% 5%;
}
section.shop-section.product-list div.cardbox article.card .portal-item .portal-content .title {
  font-size: 1.8rem;
}
@media only screen and (min-width: 576px) {
  section.shop-section.product-list div.cardbox article.card .portal-item .portal-content .title {
    font-size: 2.2rem;
  }
}
section.shop-section.product-list div.cardbox article.card .portal-item .portal-content .card-button {
  border: 0;
  color: rgb(219, 20, 21);
  font-weight: 700;
  overflow: visible;
  padding: 0 1.6rem 0.2rem 0;
  text-align: left;
  width: auto;
}
section.shop-section.product-list div.cardbox article.card .portal-item .portal-content .card-button::before {
  display: none;
}
section.shop-section.product-list div.cardbox article.card .portal-item .portal-content .card-button::after {
  background-color: rgb(219, 20, 21);
  -webkit-clip-path: polygon(0 0, 0.5rem 0, 100% 50%, 0.5rem 100%, 0 100%, calc(100% - 0.5rem) 50%);
          clip-path: polygon(0 0, 0.5rem 0, 100% 50%, 0.5rem 100%, 0 100%, calc(100% - 0.5rem) 50%);
  content: "";
  display: inline-block;
  height: 1.6rem;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  transition: right 300ms ease-out;
  width: 1.1rem;
}
section.shop-section.product-list div.cardbox article.card .portal-item:hover .portal-content .button::after, section.shop-section.product-list div.cardbox article.card .portal-item:focus .portal-content .button::after {
  right: -1rem;
}
section.shop-section.product-list .row .column {
  padding-top: 2.3rem;
}
section.shop-section.product-list.by-brand div.cardbox {
  justify-content: center;
}
section.shop-section.product-detail .prod-img img {
  border: 0.1rem solid rgb(0, 0, 0);
}
section.shop-section.product-detail .image-browser {
  display: flex;
  flex-direction: column;
  width: 100%;
}
section.shop-section.product-detail .image-browser.ic-1 .flickity-page-dots {
  display: none;
}
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(255, 255, 255);
  font-family: "Open Sans", 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 {
  position: relative;
  width: 100%;
}
section.shop-section.product-detail .image-browser #image-nav .image-slide {
  margin-right: 10px;
  width: 100%;
}
section.shop-section.product-detail .image-browser #image-nav .image-slide img {
  width: 100%;
}
section.shop-section.product-detail .image-browser #image-nav .flickity-page-dots .dot {
  border: 0.1rem solid rgb(0, 0, 0);
  background-color: transparent;
  height: 1.4rem;
  margin: 0 0.2rem;
  opacity: 1;
  transition: background-color 300ms ease-out;
  width: 1.4rem;
}
section.shop-section.product-detail .image-browser #image-nav .flickity-page-dots .dot.is-selected {
  background-color: rgb(0, 0, 0);
}
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(0, 0, 0);
}
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(0, 0, 0);
  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(255, 255, 255);
  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 .product-name {
  margin-bottom: 1em;
}
section.shop-section.product-detail .short-description, section.shop-section.product-detail .description {
  margin-bottom: 1.4em;
}
section.shop-section.product-detail .price {
  display: inline-block;
  margin: 1rem 0 0.7em 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: 3.6rem;
  font-family: "Open Sans", sans-serif;
  line-height: 1;
}
section.shop-section.product-detail .price > span .vat {
  font-family: "Open 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-bottom: 1.4em;
  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(219, 20, 21);
  font-family: "Open Sans", sans-serif;
}
section.shop-section.product-detail .price-options form.option-form .ftable .trow > div.prices {
  text-align: center;
  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 .ppk {
  font-weight: 600;
}
section.shop-section.product-detail .con-quote-title {
  align-items: center;
  background-color: rgb(219, 20, 21);
  border: 0.2rem solid rgb(219, 20, 21);
  border-radius: 1rem 1rem 0 0;
  color: rgb(255, 255, 255);
  cursor: pointer;
  display: flex;
  font-size: 2.2rem;
  font-weight: 600;
  max-width: 56.7rem;
  padding: 1rem 2rem;
  width: 100%;
}
section.shop-section.product-detail .con-quote-title span.txt {
  margin-right: 0.5em;
}
section.shop-section.product-detail .con-quote-title span.wdgt {
  background-color: rgb(255, 255, 255);
  -webkit-clip-path: polygon(50% 0, 100% 100%, 0 100%);
          clip-path: polygon(50% 0, 100% 100%, 0 100%);
  display: inline-block;
  height: 0.8rem;
  transition: transform 300ms ease-out;
  width: 1.4rem;
}
section.shop-section.product-detail .con-quote-title.up span.wdgt {
  transform: rotate(180deg);
}
section.shop-section.product-detail .con-quote {
  border: 0.2rem solid rgb(219, 20, 21);
  max-width: 56.7rem;
  padding: 2rem;
}
section.shop-section.product-detail .lbl {
  font-size: 2rem;
  font-weight: 700;
  margin-bottom: 0.3em;
}
@media only screen and (min-width: 576px) {
  section.shop-section.product-detail .lbl {
    font-size: 2.2rem;
  }
}
section.shop-section.product-detail .lbl.bordered {
  border-top: 0.1rem solid currentColor;
  margin-top: 4.5rem;
  padding-top: 4rem;
}
section.shop-section.product-detail .dinfo {
  border: 0.1rem solid currentColor;
  border-radius: 0 3rem 0 0;
  margin-top: 2rem;
  padding: 3%;
  width: 100%;
}
section.shop-section.product-detail .row {
  padding-top: 3rem;
}
section.shop-section.product-detail .row .column {
  padding: 6rem 1.15rem;
  padding-top: 0;
}
@media only screen and (min-width: 576px) {
  section.shop-section.product-detail .row .column {
    padding: 6rem 2.3rem;
    padding-top: 0;
  }
}
@media only screen and (min-width: 960px) {
  section.shop-section.product-detail .row .column {
    padding: 10rem 2.3rem;
    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-col-1 .maf-content.product-gallery {
  justify-content: flex-start;
}
section.slideshow-section .row {
  padding: 0 1.15rem;
  padding-top: 6rem;
}
@media only screen and (min-width: 576px) {
  section.slideshow-section .row {
    padding: 0 2.3rem;
    padding-top: 6rem;
  }
}
@media only screen and (min-width: 960px) {
  section.slideshow-section .row {
    padding-top: 10rem;
  }
}
section.slideshow-section .row .header .maf-content {
  padding-top: 0;
  padding-bottom: 6rem;
}
section.slideshow-section .row .column {
  padding: 6rem 1.15rem;
  padding-top: 0;
  justify-content: center;
}
@media only screen and (min-width: 576px) {
  section.slideshow-section .row .column {
    padding: 6rem 2.3rem;
    padding-top: 0;
  }
}
@media only screen and (min-width: 960px) {
  section.slideshow-section .row .column {
    padding: 10rem 2.3rem;
    padding-top: 0;
  }
}
section.slideshow-section .flickity-slideshow, section.slideshow-section .flickity-slideshow-edit {
  padding-top: 5rem;
  padding-bottom: 7rem;
  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 {
  padding-right: 2.3rem;
  position: relative;
  text-align: left;
}
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-weight: 700;
}
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, section.slideshow-section.has-aspect .flickity-slideshow-edit .ss-slide {
  aspect-ratio: 1/0.5625;
}
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.slideshow-section.alt-1 .row .column .maf-content.title {
  padding-bottom: 4.5rem;
}
section.slideshow-section.alt-1 .flickity-slideshow, section.slideshow-section.alt-1 .flickity-slideshow-edit {
  position: relative;
}
section.slideshow-section.alt-1 .flickity-slideshow::before, section.slideshow-section.alt-1 .flickity-slideshow-edit::before {
  background-image: url("/images/Layout/quote.webp");
  background-size: 100% 100%;
  content: "";
  height: 3rem;
  left: 0;
  position: absolute;
  top: 0;
  width: 4.5rem;
}
section.slideshow-section.alt-2 .header {
  padding-top: 7rem;
}
section.slideshow-section.alt-2 .row {
  padding-top: 3.5rem;
}
section.slideshow-section.alt-2 .row .column {
  padding-bottom: 5.5rem;
}
section.slideshow-section.alt-2 .flickity-slideshow, section.slideshow-section.alt-2 .flickity-slideshow-edit {
  padding-top: 0;
  padding-bottom: 0;
}
section.slideshow-section.alt-2 .flickity-slideshow .ss-slide, section.slideshow-section.alt-2 .flickity-slideshow-edit .ss-slide {
  height: 14.8rem;
  padding: 1.5rem;
  width: 31.7rem;
}
section.slideshow-section.alt-2 .flickity-slideshow .ss-slide > div, section.slideshow-section.alt-2 .flickity-slideshow-edit .ss-slide > div {
  align-items: center;
  background-color: rgb(255, 255, 255);
  color: rgb(0, 0, 0);
  height: 100%;
  justify-content: center;
  padding: 5%;
  text-align: center;
}
section.slideshow-section.alt-2 .flickity-slideshow .ss-slide > div p, section.slideshow-section.alt-2 .flickity-slideshow-edit .ss-slide > div p {
  margin: 0;
}
section.simple-gallery figcaption {
  display: none;
}
section.simple-gallery .row .column.maf-col-1 {
  padding-top: 4rem;
  padding-bottom: 4rem;
}
section.simple-gallery.highlight .is-simple-gallery figure:nth-child(n+9) {
  display: none;
}
section.simple-gallery.maf-h-h .row .column.maf-col-1 {
  padding-top: 4rem;
}
section.simple-gallery.maf-h-f .row .column.maf-col-1 {
  padding-bottom: 4rem;
}
section.simple-gallery.cycler .row .column {
  justify-content: center;
}
section.simple-gallery.cycler .cycle-grid {
  align-items: center;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  justify-content: center;
  width: 100%;
}
@media only screen and (min-width: 576px) {
  section.simple-gallery.cycler .cycle-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media only screen and (min-width: 768px) {
  section.simple-gallery.cycler .cycle-grid {
    grid-template-columns: repeat(6, 1fr);
  }
}
section.simple-gallery.cycler .cycle-grid > div {
  align-items: center;
  aspect-ratio: 1/0.6;
  display: flex;
  flex: 0 0 50%;
  justify-content: flex-start;
  opacity: 1;
  padding: 2%;
  transition: all 300ms ease-out;
}
section.simple-gallery.cycler .cycle-grid > div.hide img {
  opacity: 0;
}
section.simple-gallery.cycler .cycle-grid > div img {
  height: auto;
  max-height: 90%;
  max-width: 70%;
  opacity: 1;
  transition: all 300ms ease-out;
  width: auto;
}
section.simple-gallery.cycler.shw-6 .cycle-grid > div:nth-of-type(n+7) {
  display: none;
}
section.simple-gallery.cycler.shw-12 .cycle-grid > div:nth-of-type(n+13) {
  display: none;
}
section.simple-gallery.cycler.shw-18 .cycle-grid > div:nth-of-type(n+19) {
  display: none;
}
section.social-section {
  background-color: rgb(100, 99, 99);
}
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(219, 20, 21);
}
section.social-section .row {
  padding-top: 3rem;
  padding-bottom: 3rem;
}
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: 4.2rem;
  border-bottom: 1px solid white;
  color: rgb(255, 255, 255);
  margin-bottom: 100px;
  width: auto;
}
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-size: 2rem;
}
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-size: 2.2rem;
  margin-bottom: 0.1em;
}
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: 600;
  text-decoration: none;
}
section.contact-section p.cpoint {
  font-size: 2.2rem;
  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(219, 20, 21);
  line-height: 1;
  text-decoration: none;
}
section.contact-section p.img-ico {
  align-items: center;
  display: flex;
  font-family: "Open 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(0, 0, 0);
}
section.contact-section .social-icons {
  --icon-colour: transparent;
  --text-colour: rgb(219, 20, 21);
  font-size: 3.5rem;
  margin-top: 10px;
}
section.contact-section .social-icons a:hover, section.contact-section .social-icons a:focus {
  color: rgb(0, 0, 0);
}
section.contact-section #logo-contact {
  max-width: 350px;
}
section.contact-section address {
  display: inline-block;
  margin-bottom: 1.4em;
  width: 100%;
}
section.contact-section .is-map {
  min-height: 310px;
}
section.contact-section iframe {
  aspect-ratio: 1/0.5625;
  height: auto;
  max-width: 100%;
  width: 100%;
}
section.contact-section .row {
  padding: 0 1.15rem;
  padding-top: 6rem;
}
@media only screen and (min-width: 576px) {
  section.contact-section .row {
    padding: 0 2.3rem;
    padding-top: 6rem;
  }
}
@media only screen and (min-width: 960px) {
  section.contact-section .row {
    padding-top: 10rem;
  }
}
section.contact-section .row .header .maf-content {
  padding-top: 0;
  padding-bottom: 6rem;
}
section.contact-section .row .column {
  padding: 6rem 1.15rem;
  padding-top: 0;
}
@media only screen and (min-width: 576px) {
  section.contact-section .row .column {
    padding: 6rem 2.3rem;
    padding-top: 0;
  }
}
@media only screen and (min-width: 960px) {
  section.contact-section .row .column {
    padding: 10rem 2.3rem;
    padding-top: 0;
  }
}
section.contact-section .row .column .maf-content.em-map {
  border: 0.1rem solid rgb(0, 0, 0);
  margin-top: 2rem;
  padding: 0;
}
section.contact-point-section.list div.cardbox {
  margin-top: 2.3rem;
  margin-bottom: 4rem;
}
section.contact-point-section.list div.cardbox article.card {
  width: 100%;
}
@media only screen and (min-width: 576px) {
  section.contact-point-section.list div.cardbox article.card {
    width: 50%;
  }
}
@media only screen and (min-width: 960px) {
  section.contact-point-section.list div.cardbox article.card {
    width: 25%;
  }
}
section.contact-point-section.list div.cardbox article.card .portal-item {
  border: 0.1rem solid rgb(0, 0, 0);
  text-align: center;
}
section.contact-point-section.list div.cardbox article.card .portal-item .portal-content .info {
  align-items: center;
  padding: 2% 5% 5% 5%;
}
section.contact-point-section.list div.cardbox article.card .portal-item .portal-content .title {
  padding-bottom: 0;
}
section.contact-point-section.list div.cardbox article.card .portal-item .portal-content .name {
  font-weight: 600;
}
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(0, 0, 0);
  padding-bottom: 1rem;
  text-align: center;
  width: auto;
}
section.privacy-policy h2 {
  font-size: 3rem;
  margin: 1.4em 0;
  text-transform: none;
}
section.privacy-policy p.page-lead {
  text-align: center;
  margin-bottom: 5rem;
}
section.privacy-policy ol li {
  margin-bottom: 2rem;
}
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.map.interactive-map .is-map {
  aspect-ratio: 0.75/1;
  border: 2rem solid rgb(203, 206, 209);
  display: none;
  height: auto;
}
@media only screen and (min-width: 576px) {
  section.map.interactive-map .is-map {
    aspect-ratio: 1/1;
  }
}
@media only screen and (min-width: 768px) {
  section.map.interactive-map .is-map {
    aspect-ratio: 1/0.75;
  }
}
@media only screen and (min-width: 1024px) {
  section.map.interactive-map .is-map {
    aspect-ratio: 1/0.5625;
  }
}
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(219, 20, 21);
  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: "Open Sans", 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(203, 206, 209);
}
section.map.interactive-map .is-map #google-map-interactive .map-info-content a.button {
  background-color: rgb(203, 206, 209);
  border-color: rgb(203, 206, 209);
  border-radius: 20px;
  color: rgb(255, 255, 255);
  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, section.map.interactive-map .is-map #google-map-interactive .map-info-content a.button:focus {
  background-color: transparent;
  color: rgb(203, 206, 209);
}
section.map.interactive-map .is-map.show {
  display: block;
}
section.map.interactive-map #map-filters {
  padding-top: 2rem;
}
section.map.interactive-map #map-filters .button {
  border: 1px solid rgb(0, 0, 0);
  border-radius: 0;
  color: rgb(0, 0, 0);
  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(100, 99, 99);
  border-color: rgb(100, 99, 99);
  color: rgb(255, 255, 255);
}
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(219, 20, 21);
  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(219, 20, 21);
  border: 1px solid rgb(219, 20, 21);
  color: rgb(255, 255, 255);
  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(219, 20, 21);
}
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: 4rem;
}
section.counter-section .row {
  padding: 0 2.3rem;
}
@media only screen and (min-width: 576px) {
  section.counter-section .row {
    padding: 0 4.6rem;
  }
}
section.counter-section .row .column .maf-content {
  align-items: center;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  position: relative;
  margin: 0 -4.6rem;
  min-height: 48rem;
}
section.counter-section .row .column .maf-content .stat-counter {
  background-image: url("/images/Layout/sprite/counter-1.webp");
  background-size: 100% 100%;
  align-items: center;
  display: flex;
  flex-direction: column;
  font-size: 1.5rem;
  font-weight: 700;
  height: 23.2rem;
  justify-content: center;
  margin: 2.3rem;
  padding: 2rem;
  width: 15.3rem;
}
section.counter-section .row .column .maf-content .stat-counter .counter {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  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 .txt {
  line-height: 1;
  width: 100%;
}
section.counter-section .row .column .maf-content .stat-counter .stat, section.counter-section .row .column .maf-content .stat-counter .unit {
  font-size: 6rem;
  line-height: 1;
}
section.counter-section .row .column .maf-content .stat-counter .stat {
  color: rgb(219, 20, 21);
  line-height: 0.8;
  letter-spacing: -0.02em;
}
section.counter-section .row .column .maf-content .stat-counter .unit {
  color: rgb(219, 20, 21);
  font-size: 6rem;
}
section.counter-section .row .column .maf-content .stat-counter p {
  line-height: 1.2;
  margin-bottom: 0;
}
section.counter-section .row .column .maf-content .stat-counter input[type=number] {
  border-color: rgb(0, 0, 0);
  color: rgb(219, 20, 21) !important;
  font-size: 3rem !important;
  font-weight: 700;
  text-align: center;
}
section.counter-section .row .column .maf-content .stat-counter .mceEditor {
  display: inline-flex;
  flex-direction: column;
  width: 100%;
}
section.counter-section .row .column .maf-content .stat-counter:nth-child(1) {
  justify-content: flex-end;
}
section.counter-section .row .column .maf-content .stat-counter:nth-child(2) {
  background-image: url("/images/Layout/sprite/counter-2.webp");
}
section.counter-section .row .column .maf-content .stat-counter:nth-child(2) .stat {
  font-size: 7rem;
}
section.counter-section .row .column .maf-content .stat-counter:nth-child(3) {
  background-image: url("/images/Layout/sprite/counter-3.webp");
}
section.counter-section .row .column .maf-content .stat-counter:nth-child(3) .stat, section.counter-section .row .column .maf-content .stat-counter:nth-child(3) .unit {
  font-size: 5rem;
}
section.counter-section .row .column .maf-content .stat-counter:nth-child(3) .txt {
  color: rgb(219, 20, 21);
  font-size: 5rem;
  line-height: 0.8;
  margin-top: 4rem;
}
section.counter-section .row .column .maf-content .stat-counter:nth-child(4) {
  background-image: url("/images/Layout/sprite/counter-4.webp");
}
section.counter-section .row .column .maf-content .stat-counter:nth-child(4) .stat {
  font-size: 7rem;
  margin-top: 5rem;
}
section.counter-section .row .column .maf-content .stat-counter:nth-child(4) .unit {
  font-size: 3rem;
}
section.counter-section.maf-h-h .row .column {
  padding-top: 4rem;
}
section.counter-section.maf-h-f .row .column {
  padding-bottom: 4rem;
}
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[type=submit]:focus, section.basket .maf-checkout-con input input[type=reset]:hover, section.basket .maf-checkout-con input input[type=reset]:focus {
  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(0, 0, 0);
  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(0, 0, 0);
  color: rgb(0, 0, 0);
}
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.4em;
  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(0, 0, 0);
  border-radius: 4.6rem;
  margin-top: 1.4em;
  max-width: 50rem;
  padding: 4.6rem;
}
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 .header {
  padding-top: 0;
}
section.no-spacing-top .header .maf-content {
  padding-top: 0;
}
section.no-spacing-top .row {
  padding-top: 0 !important;
}
section.no-spacing-top .row .column {
  padding-top: 0 !important;
}
section.no-spacing-top.maf-rep-pad .row {
  padding-bottom: 0 !important;
}
section.no-spacing-top.maf-rep-pad .row .column {
  padding-bottom: 6rem !important;
}
@media only screen and (min-width: 960px) {
  section.no-spacing-top.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(255, 255, 255);
  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% - 4.6rem);
}
@media only screen and (min-width: 576px) {
  section.contentline-bottom .row::after {
    width: calc(100% - 9.2rem);
  }
}
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% - 4.6rem);
}
@media only screen and (min-width: 576px) {
  section.contentline-top .row::before {
    width: calc(100% - 9.2rem);
  }
}
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(0, 0, 0);
  overflow: hidden;
  position: relative;
}
.is-footer a:not(.button) {
  color: inherit;
  font-style: normal;
  text-decoration: none;
}
.is-footer a:not(.button):hover, .is-footer a:not(.button):focus {
  color: rgb(219, 20, 21);
}
.is-footer p.sm {
  font-size: 1.4rem;
}
.is-footer p.lg {
  font-size: 2.8rem;
}
.is-footer p.page-lead {
  color: inherit;
  font-weight: 400;
}
.is-footer address {
  font-family: "Open Sans", sans-serif;
  font-size: inherit;
  margin-bottom: 1.4em;
  max-width: 19rem;
}
.is-footer .company-name {
  font-weight: 600;
  margin-bottom: 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: 1.8rem;
  margin-bottom: 0;
}
@media only screen and (min-width: 576px) {
  .is-footer .phone-block {
    font-size: 2.2rem;
  }
}
.is-footer .phone-block strong, .is-footer .phone-block span {
  display: inline-block;
  padding-right: 0.3rem;
}
.is-footer .phone-block a {
  font-weight: 700;
}
.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(255, 255, 255);
  border-color: rgb(255, 255, 255);
}
.is-footer .maf-form input:focus {
  border-color: rgb(100, 99, 99);
}
.is-footer .row {
  flex-direction: row;
  flex-wrap: wrap;
}
.is-footer .row .column {
  flex: 1 1 100%;
  width: auto;
}
@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.4em;
}
.is-footer section {
  color: rgb(255, 255, 255);
}
.is-footer section.footer-section {
  font-size: 1.6rem;
}
.is-footer section.footer-section .row {
  padding-top: 6rem;
}
@media only screen and (min-width: 576px) {
  .is-footer section.footer-section .row {
    padding-top: 10rem;
  }
}
.is-footer section.footer-section .row .column {
  align-items: center;
  padding-top: 0;
  padding-bottom: 5rem;
}
.is-footer section.footer-section .row .column .maf-content {
  align-items: inherit;
}
@media only screen and (min-width: 576px) {
  .is-footer section.footer-section .row .column.maf-col-1 {
    min-width: 46rem;
  }
}
.is-footer section.footer-section .row .column.maf-col-2 {
  align-items: flex-start;
}
@media only screen and (min-width: 960px) {
  .is-footer section.footer-section .row .column.maf-col-1, .is-footer section.footer-section .row .column.maf-col-2, .is-footer section.footer-section .row .column.maf-col-4, .is-footer section.footer-section .row .column.maf-col-5 {
    align-items: flex-start;
  }
}
@media only screen and (min-width: 960px) {
  .is-footer section.footer-section .row .column.maf-col-3, .is-footer section.footer-section .row .column.maf-col-6 {
    align-items: flex-end;
    text-align: right;
  }
}
.is-footer section.footer-section .row .column.maf-col-4, .is-footer section.footer-section .row .column.maf-col-5 {
  flex: 1 1 50%;
  max-width: 24.2rem;
}
.is-footer section.footer-section .row .column.maf-col-4 p, .is-footer section.footer-section .row .column.maf-col-5 p {
  margin-bottom: 0.6em;
}
.is-footer section.footer-section .row .column.maf-col-6 .maf-content {
  align-items: center;
  align-content: flex-start;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  margin: 0 -1.5rem;
  width: calc(100% + 3rem);
}
@media only screen and (min-width: 960px) {
  .is-footer section.footer-section .row .column.maf-col-6 .maf-content {
    justify-content: flex-end;
  }
}
.is-footer section.footer-section .row .column.maf-col-6 .maf-content p {
  flex: 0 0 auto;
  margin: 0;
  padding: 0 1.5rem 3rem 1.5rem;
  width: auto;
}
.is-footer section.footer-section.row2 .row {
  padding-top: 5rem;
}
.is-footer section.legals {
  color: rgb(255, 255, 255);
  font-size: 1.4rem;
  overflow: hidden;
  position: relative;
  z-index: 1;
}
.is-footer section.legals .row {
  padding-top: 2rem;
  padding-bottom: 2rem;
}
.is-footer section.legals .row p {
  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 p.site-links {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem 1.6rem;
}
.is-footer section.legals .row p.site-links a {
  display: inline-block;
  flex: 0 0 auto;
}
.is-footer section.legals .row a:not(.maf-si) {
  color: rgb(255, 255, 255);
}
.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-items: flex-start;
    flex-direction: row;
    justify-content: space-between;
  }
}/*# sourceMappingURL=tvw-main.css.map */