:root {
  --grid-width: 144rem;
  --app-height: 100dvh;
  --hdr-height: 8rem;
  --space: 4rem;
  --gutter: 1.6rem;
  --gutter-half: 0.8rem;
  --bllt-clr: currentColor;
  --h-clr: inherit;
  --v-gap: 2.4rem;
  --nv-gap: calc( var(--v-gap) * -1 );
  --acc-clr: rgb(40, 35, 30);
  --bg-clr: transparent;
}
@media only screen and (min-width: 576px) {
  :root {
    --gutter: 3.2rem;
    --gutter-half: 1.6rem;
  }
}
@media only screen and (min-width: 960px) {
  :root {
    --space: 8rem;
  }
}
@media only screen and (min-width: 768px) {
  :root {
    --hdr-height: 12rem;
  }
}

* {
  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, html:has(dialog[open]) {
  overflow: hidden;
}
html.no-scroll body, html.no-scroll #page-con, html:has(dialog[open]) body, html:has(dialog[open]) #page-con {
  overflow: hidden;
}

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

body {
  background-color: rgb(255, 255, 255);
  font-family: "Archivo", 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;
    }
  }
}
body.ax-test {
  filter: grayscale(1) !important;
}

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

aside, section, footer {
  align-content: center;
  align-items: center;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  display: flex;
  flex-direction: column;
  gap: var(--gutter);
  justify-content: center;
  width: 100%;
}

section {
  opacity: 1;
  padding: var(--space) var(--gutter);
  transition: opacity 10ms ease-out;
}
section.maf-h-c .header {
  display: none;
}
section.maf-f-c .footer {
  display: none;
}

.header, .footer {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  grid-column: 1/-1;
  justify-content: center;
  margin: 0 auto;
  max-width: var(--grid-width);
  width: 100%;
  z-index: 1;
}
.header .maf-content, .footer .maf-content {
  align-items: inherit;
}

.row {
  align-content: center;
  align-items: start;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  display: grid;
  gap: var(--v-gap) var(--gutter);
  grid-template-columns: 1fr;
  justify-content: center;
  max-width: var(--grid-width);
  position: relative;
  width: 100%;
}

.column {
  align-content: flex-start;
  align-items: flex-start;
  background-color: transparent;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  display: flex;
  flex-direction: column;
  gap: var(--v-gap) var(--gutter);
  justify-content: flex-start;
  min-width: 0;
  position: relative;
  width: 100%;
}
.column.hide-mobile {
  display: none;
}
@media only screen and (min-width: 768px) {
  .column.hide-mobile {
    display: flex;
  }
}
.column.has-img, .column[class*=bg-] {
  padding: var(--gutter);
}

.maf-content, .col-i {
  align-items: inherit;
  align-content: inherit;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  display: flex;
  flex-direction: column;
  gap: var(--v-gap) var(--gutter);
  justify-content: inherit;
  position: relative;
  width: 100%;
  z-index: 1;
}
.maf-content span[style*="background-color:"], .col-i span[style*="background-color:"] {
  padding: 0.2em 0.3em;
}
.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-header {
  width: 100%;
}
.maf-header > *:last-child {
  margin-bottom: 0;
}
.maf-header > *:last-child > *:last-child {
  margin-bottom: 0;
}

.maf-bg-overlay, .maf-background, .maf-background-image, .image-overlay, .maf-sprite-layer {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  bottom: 0;
  left: 0;
  overflow: hidden;
  position: absolute;
  right: 0;
  text-align: center;
  top: 0;
  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 {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  opacity: 1;
  transform: scale(1);
}

.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 {
  background-color: rgb(130, 125, 120);
  caption-side: bottom;
  color: rgb(255, 255, 255);
  display: table-caption;
  font-size: inherit;
  font-style: normal;
  font-weight: 400;
  min-width: 100%;
  padding: 1rem var(--gutter);
  text-align: left;
  position: relative;
}

a, a:visited {
  color: hsl(120, 42%, 49%);
  line-height: inherit;
  text-decoration: none;
  transition: all 300ms ease-out;
}

a:hover, a:focus, a:active {
  color: rgb(130, 125, 120);
  text-decoration: none;
}

h1, .h1-style, h2, .h2-style, h3, .h3-style, h4, .h4-style, h5, .h5-style, h6, .h6-style, p, .p-style, address, blockquote {
  margin: 0;
  max-width: 35em;
  width: 100%;
}

address {
  font-style: normal;
  font-weight: inherit;
  line-height: 1.4;
}
address span, address div {
  display: inline-block;
}
address .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 {
  color: var(--h-clr);
  font-feature-settings: "lnum" 1;
  font-family: "Archivo", sans-serif;
  font-weight: 700;
  line-height: 1.05;
  position: relative;
  width: 100%;
}

h1, .h1-style {
  font-size: 6rem;
}
@media only screen and (min-width: 576px) {
  h1, .h1-style {
    font-size: 7.2rem;
  }
}

h2, .h2-style {
  font-size: 4.4rem;
}
@media only screen and (min-width: 576px) {
  h2, .h2-style {
    font-size: 5.4rem;
  }
}

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

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

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

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

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

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

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

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

strong {
  font-weight: 700;
}

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: 0;
  border-top: 0.1rem solid currentColor;
  color: inherit;
  display: inline-block;
  height: 0;
  margin: 0;
  width: 100%;
}

.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;
  max-width: 100rem;
  padding: 0;
  width: 100%;
}
.maf-content ul li, .maf-content ol li {
  margin: 0 0 0.5em 0;
  padding-left: 1.7em;
}
.maf-content ul li > p, .maf-content ol li > p {
  margin: 0;
}
.maf-content ul li:last-child, .maf-content ol li:last-child {
  margin-bottom: 0;
}
.maf-content ul {
  list-style-type: none;
}
.maf-content ul li {
  position: relative;
}
.maf-content ul li::before {
  background-color: var(--bllt-clr);
  border-radius: 50%;
  content: "";
  color: inherit;
  display: inline-block;
  font-weight: 700;
  height: 0.3em;
  left: 0;
  margin-right: 1rem;
  position: absolute;
  top: 0.5em;
  vertical-align: 0.2em;
  width: 0.3em;
}
.maf-content ul li ul {
  margin-top: 1.2rem;
}
.maf-content ol {
  counter-reset: maf-ol-counter;
  list-style: none;
  position: relative;
}
.maf-content ol li {
  counter-increment: maf-ol-counter;
  position: relative;
}
.maf-content ol li::before {
  content: counter(maf-ol-counter) ".";
  color: var(--bllt-clr);
  display: inline-block;
  font-family: "Archivo", sans-serif;
  font-size: 0.9em;
  font-weight: 700;
  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 var(--gutter);
  position: relative;
  transition: background-color 300ms ease-out;
  width: 100%;
}
.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 var(--gutter);
  width: 100%;
}
.is-faq dl dd > * {
  line-height: 1.4;
  max-width: 73rem;
}
.is-faq dl dd > *:last-child {
  margin-bottom: 0;
}

blockquote {
  color: inherit;
  display: flex;
  flex-direction: column;
  font-family: "Archivo", sans-serif;
  font-style: normal;
  font-weight: 400;
  gap: 1.6rem;
  margin: 0.8rem 0;
  padding: 0;
  position: relative;
  text-align: left;
  width: 100%;
}
blockquote::before {
  content: url("/images/Layout/quote.webp");
  display: inline-block;
}
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;
}

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

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

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

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

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

input[type=submit],
input[type=reset],
button.maf-button {
  align-items: center;
  background-color: rgb(40, 35, 30);
  background-size: 100% 100%;
  border: 0.1rem solid rgb(40, 35, 30);
  color: rgb(255, 255, 255);
  cursor: pointer;
  display: inline-flex;
  font-family: "Archivo", 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(40, 35, 30);
  opacity: 1;
  text-decoration: none;
}

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

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

.checkbox {
  align-items: center;
  display: flex;
  gap: 0.2rem 0.4rem;
}
.checkbox .pretty-check {
  display: inline-block;
  flex: 0 0 auto;
  height: 3rem;
  position: relative;
  width: 3rem;
}
.checkbox .pretty-check label {
  border-radius: 0;
  border: 0.2rem solid rgb(40, 35, 30);
  cursor: pointer;
  height: 100%;
  left: 0;
  margin: 0;
  min-height: 0;
  outline: none;
  position: absolute;
  width: 100%;
  top: 0;
}
.checkbox .pretty-check label::after {
  background: transparent;
  border: 0.3rem solid rgb(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(40, 35, 30);
}
.checkbox .pretty-check label:focus::after {
  opacity: 0.9;
}
.checkbox .pretty-check input[type=checkbox] {
  left: -100vw;
  position: absolute;
  visibility: hidden;
  z-index: 0;
}
.checkbox .pretty-check input[type=checkbox]:checked + label {
  background: rgb(40, 35, 30);
}
.checkbox .pretty-check input[type=checkbox]:checked + label:after {
  opacity: 1;
}
.checkbox .pretty-check input[type=checkbox]:checked + label:focus {
  background: rgb(40, 35, 30);
}
.checkbox .pretty-check input[type=checkbox]:checked + label:focus::after {
  opacity: 0.9;
}
.checkbox span {
  cursor: pointer;
  font-size: 1.8rem;
  line-height: 1;
  text-align: left;
}
.checkbox.rvs {
  flex-direction: row-reverse;
}
.checkbox.rvs span {
  padding-right: 0.5rem;
}

.radio {
  align-content: flex-start;
  align-items: flex-start;
  cursor: pointer;
  display: flex;
  width: 100%;
}
.radio .pretty-radio {
  display: inline-block;
  position: relative;
  margin: 0;
  width: 2.5rem;
}
.radio .pretty-radio label {
  border-radius: 50%;
  border: 1px solid rgb(40, 35, 30);
  cursor: pointer;
  height: 2rem;
  margin: 0.2em 0 0 0;
  position: relative;
  transition: background-color 300ms ease-out;
  width: 2rem;
}
.radio .pretty-radio label:after {
  background: transparent;
  border: 0.1rem solid rgb(40, 35, 30);
  border-top: none;
  border-right: none;
  content: "";
  display: none;
  height: 0.8rem;
  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(40, 35, 30);
}
.radio .pretty-radio label:hover::after {
  opacity: 0.7;
}
.radio .pretty-radio input[type=radio] {
  height: 2rem;
  margin: 0;
  position: absolute;
  visibility: hidden;
  width: 2rem;
}
.radio .pretty-radio input[type=radio]:checked + label {
  background: rgb(40, 35, 30);
}
.radio .pretty-radio input[type=radio]:checked + label:after {
  opacity: 1;
}
.radio span {
  padding: 0.1em 0 0 0.3em;
  text-align: left;
  vertical-align: 40%;
  width: calc(100% - 3.6rem);
}
.radio:hover .pretty-radio label {
  background: rgb(40, 35, 30);
}

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

.file-button {
  cursor: pointer;
  display: inline-block;
  height: 3.6rem;
  margin: 0 !important;
  outline: none;
  position: relative;
  width: 26rem;
}
.file-button input {
  margin: 0;
  min-width: 26rem;
  opacity: 0;
}
.file-button span {
  align-items: center;
  background-color: rgb(30, 30, 30);
  border: 0.2rem solid rgb(30, 30, 30);
  color: rgb(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(30, 30, 30);
}
.file-button:focus-within span, .file-button:focus span {
  background-color: rgb(255, 255, 255);
  color: rgb(30, 30, 30);
}

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

.spinner {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  width: 10.2rem;
}
.spinner label {
  color: rgb(40, 35, 30);
  display: inline-block;
  flex: 0 0 auto;
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 1.4;
  text-align: left;
  width: 100%;
}
.spinner input[type=number]::-webkit-inner-spin-button,
.spinner input[type=number]::-webkit-outer-spin-button {
  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(30, 30, 30);
  display: inline-block;
  flex: 0 0 auto;
  font-family: "Archivo", 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(40, 35, 30);
  color: rgb(30, 30, 30);
  cursor: pointer;
  display: flex;
  font-size: 2rem;
  font-family: "Archivo", 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(40, 35, 30);
  content: "";
  display: inline-block;
  height: 0.2rem;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  transition: all 300ms ease-out;
  width: 60%;
}
.spinner .quantity-button.quantity-up:after {
  transform: translate(-50%, -50%) rotate(90deg);
}
.spinner .quantity-button.quantity-down {
  height: 2.8rem;
}
.spinner .quantity-button.quantity-down:before {
  background-color: rgb(40, 35, 30);
  content: "";
  display: inline-block;
  height: 0.2rem;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 60%;
}
.spinner .quantity-button:hover, .spinner .quantity-button:focus {
  background-color: rgb(40, 35, 30);
}
.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(30, 30, 30);
  border-radius: 0.8rem;
  color: rgb(30, 30, 30);
  display: inline-flex;
  flex: 0 0 auto;
  font-family: "Archivo", 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: "Archivo", 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(40, 35, 30);
}
.spinner-2.plus-minus .quantity-button {
  background-color: rgb(40, 35, 30);
  border: 0.2rem solid rgb(40, 35, 30);
  border-radius: 50%;
}
.spinner-2.plus-minus .quantity-button.quantity-up:before, .spinner-2.plus-minus .quantity-button.quantity-up:after {
  background-color: white;
  content: "";
  display: inline-block;
  height: 0.2rem;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  transition: all 300ms ease-out;
  width: 55%;
}
.spinner-2.plus-minus .quantity-button.quantity-up:after {
  transform: translate(-50%, -50%) rotate(90deg);
}
.spinner-2.plus-minus .quantity-button.quantity-down:before {
  background-color: white;
  content: "";
  display: inline-block;
  height: 0.2rem;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  transition: all 300ms ease-out;
  width: 55%;
}
.spinner-2.plus-minus .quantity-button:hover, .spinner-2.plus-minus .quantity-button:focus {
  background-color: transparent;
}
.spinner-2.plus-minus .quantity-button:hover:before, .spinner-2.plus-minus .quantity-button:hover:after, .spinner-2.plus-minus .quantity-button:focus:before, .spinner-2.plus-minus .quantity-button:focus:after {
  background-color: rgb(40, 35, 30);
}
.spinner-2.carets input {
  height: 2.7rem;
  margin: 0 0.3rem;
  width: 4rem;
}
.spinner-2.carets .quantity-button.quantity-up::before {
  border-top: 0.3rem solid rgb(30, 30, 30);
  border-right: 0.3rem solid rgb(30, 30, 30);
  content: "";
  display: inline-block;
  height: 50%;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-60%, -50%) rotate(45deg);
  transform-origin: center;
  transition: border-color 300ms ease-out;
  width: 50%;
}
.spinner-2.carets .quantity-button.quantity-down::before {
  border-top: 0.3rem solid rgb(30, 30, 30);
  border-left: 0.3rem solid rgb(30, 30, 30);
  content: "";
  display: inline-block;
  height: 50%;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-40%, -50%) rotate(-45deg);
  transform-origin: center;
  transition: border-color 300ms ease-out;
  width: 50%;
}
.spinner-2.carets .quantity-button:hover::before, .spinner-2.carets .quantity-button:focus::before {
  border-color: rgb(40, 35, 30);
}

form {
  width: 100%;
}

.maf-form {
  align-items: center;
  display: flex;
  justify-content: center;
  position: relative;
  width: 100%;
}
.maf-form form, .maf-form .form {
  align-items: start;
  display: grid;
  grid-template-columns: 1fr;
  gap: 2.4rem;
  justify-content: start;
  width: 100%;
}
.maf-form form p, .maf-form form h1, .maf-form form h2, .maf-form form h3, .maf-form form h4, .maf-form form h5, .maf-form form hr, .maf-form form .maf-msg, .maf-form .form p, .maf-form .form h1, .maf-form .form h2, .maf-form .form h3, .maf-form .form h4, .maf-form .form h5, .maf-form .form hr, .maf-form .form .maf-msg {
  grid-column: 1/-1;
}
.maf-form form .maf-input, .maf-form .form .maf-input {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  position: relative;
  text-align: left;
}
.maf-form form .maf-input input, .maf-form form .maf-input textarea, .maf-form .form .maf-input input, .maf-form .form .maf-input textarea {
  margin-bottom: 0.3em;
}
.maf-form form .maf-input input.short, .maf-form form .maf-input textarea.short, .maf-form .form .maf-input input.short, .maf-form .form .maf-input textarea.short {
  max-width: 35rem;
}
.maf-form form .maf-input textarea, .maf-form .form .maf-input textarea {
  min-height: 18rem;
}
.maf-form form .maf-input > i, .maf-form .form .maf-input > i {
  color: rgb(255, 255, 255);
  display: none;
  position: absolute;
  right: 0.8rem;
  top: 0.8rem;
}
.maf-form form .maf-input .error, .maf-form .form .maf-input .error {
  color: hsl(0, 45%, 51%);
}
.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.span, .maf-form .form .maf-input.span {
  grid-column: 1/-1;
}
.maf-form form .maf-input.ctrl-group-row, .maf-form .form .maf-input.ctrl-group-row {
  flex-direction: row;
  flex-wrap: wrap;
  gap: 0.4rem var(--gutter-half);
}
.maf-form form .maf-input.ctrl-group-row > *, .maf-form .form .maf-input.ctrl-group-row > * {
  width: auto;
}
.maf-form form .maf-input.ctrl-group-row > *.error, .maf-form .form .maf-input.ctrl-group-row > *.error {
  width: 100%;
}
.maf-form form .maf-input.multiple input, .maf-form .form .maf-input.multiple input {
  margin-bottom: 1.6rem;
}
.maf-form form .maf-input.multiple input:last-child, .maf-form .form .maf-input.multiple input:last-child {
  margin-bottom: 0;
}
.maf-form form .maf-input.tinybox .mcSimple, .maf-form .form .maf-input.tinybox .mcSimple {
  border: 0.2rem solid rgb(30, 30, 30);
  min-height: 30rem;
  padding: 0.4rem 0.8rem;
  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(40, 35, 30);
}
.maf-form form .maf-input.actions, .maf-form .form .maf-input.actions {
  align-items: center;
  display: flex;
  flex-direction: row;
  gap: 0.4rem var(--gutter);
  text-align: center;
}
.maf-form form .maf-input.actions.center, .maf-form .form .maf-input.actions.center {
  justify-content: center;
}
.maf-form form .maf-input.actions input, .maf-form form .maf-input.actions button, .maf-form .form .maf-input.actions input, .maf-form .form .maf-input.actions button {
  flex: 0 0 auto;
}
.maf-form form .maf-input.actions.multi input, .maf-form form .maf-input.actions.multi button, .maf-form .form .maf-input.actions.multi input, .maf-form .form .maf-input.actions.multi button {
  flex: 1 1 auto;
}
.maf-form form .maf-input.actions.multi input.least, .maf-form form .maf-input.actions.multi button.least, .maf-form .form .maf-input.actions.multi input.least, .maf-form .form .maf-input.actions.multi button.least {
  flex: 2 2 auto;
}
.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 .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 {
  color: inherit;
  opacity: 0.7;
  text-decoration: none;
}
.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%;
}

.button, .button:visited {
  background: none;
  background-color: rgb(40, 35, 30);
  border: 0;
  border-radius: 0.4rem;
  color: rgb(255, 255, 255);
  cursor: pointer;
  display: inline-block;
  font-family: "Archivo", sans-serif;
  font-size: 1.8rem;
  font-style: normal;
  font-weight: 700;
  letter-spacing: inherit;
  line-height: 1;
  min-width: 25rem;
  opacity: 1;
  outline: transparent;
  padding: 1.6rem 2.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: transparent;
  border: 0.2rem solid rgb(40, 35, 30);
  border-radius: 0.7rem;
  content: "";
  height: calc(100% - 0.3rem);
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  transition: all 300ms ease-out;
  width: calc(100% - 0.3rem);
  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(255, 255, 255);
  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: calc(100% + 0.5rem);
  width: calc(100% + 0.5rem);
}
.button.less, .button:visited.less {
  opacity: 0.5;
}
.button.least, .button:visited.least {
  background-color: rgb(255, 255, 255);
  color: rgb(30, 30, 30);
}
.button.least::before, .button:visited.least::before {
  background-color: rgb(30, 30, 30);
  left: auto;
  right: 0;
}
.button.least:hover, .button.least:focus, .button:visited.least:hover, .button:visited.least:focus {
  color: rgb(255, 255, 255);
}
.button.light, .button:visited.light {
  border: 0.1rem solid rgb(255, 255, 255);
  border-radius: 0.7rem;
}
.button.light::before, .button:visited.light::before {
  border: 0.2rem solid rgb(255, 255, 255);
}
.button.light:hover::before, .button.light:focus::before, .button.light.active::before, .button:visited.light:hover::before, .button:visited.light:focus::before, .button:visited.light.active::before {
  border-radius: 1.2rem;
  height: calc(100% + 0.7rem);
  width: calc(100% + 0.7rem);
}

.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: "Archivo", sans-serif;
  font-size: 1.4rem;
  font-weight: 400;
  height: 4rem;
  position: relative;
  text-transform: uppercase;
  width: 4rem;
}
div.close::before, div.close::after, button.close::before, button.close::after, .button.close::before, .button.close::after {
  background-color: currentColor;
  color: inherit;
  content: "";
  display: inline-block;
  height: 0.4rem;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
  transform-origin: center;
  transition: transform 350ms ease;
  width: 75%;
}
div.close::after, button.close::after, .button.close::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}
div.close:hover::before, div.close:hover::after, div.close:focus::before, div.close:focus::after, button.close:hover::before, button.close:hover::after, button.close:focus::before, button.close:focus::after, .button.close:hover::before, .button.close:hover::after, .button.close:focus::before, .button.close:focus::after {
  transform: translate(-50%, -50%) rotate(0deg);
}

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

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

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

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

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

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

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

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

.meet-your-maker {
  font-weight: 700;
  text-decoration: none !important;
  transition: all 1000ms ease-out !important;
  transform: translateZ(0);
}
.meet-your-maker:hover, .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: 700;
  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: rgb(229, 204, 204);
  border: 0.1rem solid hsl(0, 45%, 51%);
  border-left-width: 0.4rem;
  color: hsl(0, 45%, 51%);
}
.maf-msg.success-msg {
  background-color: rgb(212, 238, 212);
  border: 0.1rem solid hsl(120, 42%, 49%);
  border-left-width: 0.4rem;
  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: var(--app-height);
}
#http-error .content {
  width: 100%;
}
#http-error.e404 {
  padding-top: 8rem;
}
#http-error.e404 img {
  max-width: 50rem;
  margin-bottom: 3rem;
}
#http-error.e404 h1 {
  color: rgb(30, 30, 30);
  margin: 0 0 3rem 0;
}
#http-error.e404 p {
  color: rgb(30, 30, 30);
  font-size: 2.5rem;
  margin: 0 auto 3rem auto;
  width: 60%;
}
#http-error.e404 #error {
  margin: 0 auto;
  padding: 0 var(--gutter);
  text-align: center;
  width: 80%;
}
#http-error.e404 .error-icon {
  display: block;
  margin: 0 auto;
  width: 25%;
}
#http-error.e404 .error-icon .a {
  fill: rgb(30, 30, 30);
}
#http-error.e404 .button {
  font-size: 2.4rem;
  margin: 0 auto;
  width: auto;
}

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

#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 img {
  width: 3rem;
}
#cookie-settings:hover, #cookie-settings:focus {
  background-color: rgba(255, 255, 255, 0.8);
  opacity: 1;
}

.grecaptcha-badge {
  visibility: hidden;
}

@keyframes shine-shim {
  0% {
    background-position: -10rem;
  }
  40%, 100% {
    background-position: 75rem;
  }
}
.skeleton {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
  width: 100%;
  max-width: 75rem;
  opacity: 0.5;
}
.skeleton div {
  animation: shine-shim 1.2s infinite linear;
  background-color: #aaa;
  background-image: linear-gradient(45deg, #aaa 0, #e8e8e8 1%, #aaa 2%);
  background-size: 600rem;
  border-radius: 0.5rem;
  height: 1.2rem;
}
.skeleton .line {
  border-radius: 0.5rem;
  height: 1.2rem;
  width: 100%;
}
.skeleton .line.s {
  width: 60%;
}
.skeleton .line.m {
  width: 80%;
}

@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;
  }
}
.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(30, 30, 30);
  --text-size: 3rem;
  align-items: center;
  color: var(--text-colour);
  display: inline-flex;
  font-size: var(--text-size);
  gap: 0.1em 0.5em;
  justify-content: center;
  line-height: 0;
  margin: 0;
  width: auto;
}
.social-icons a {
  color: var(--text-colour);
  display: inline-block;
  line-height: 0;
  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(130, 125, 120);
}
.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(--icon-colour);
  display: inline;
  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: var(--app-height);
  margin: 0;
  position: absolute;
  right: 0;
  top: 0;
  transform: translate(30rem, 0);
  transition: transform 300ms ease-out;
}
div#floater-menu.out {
  transform: translate(0, 0);
}

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

div#email-floater {
  background-color: rgb(255, 255, 255);
  border: 0.1rem solid rgb(40, 35, 30);
  border-radius: 1.2rem 0 0 1.2rem;
  font-size: 1.4rem;
  height: auto;
  line-height: 0;
  overflow: hidden;
  padding: 0;
  position: absolute;
  right: 0;
  text-align: left;
  top: 40vh;
  width: 4rem;
}
@media only screen and (min-width: 160rem) {
  div#email-floater {
    height: auto;
    padding: 2rem 1.5rem;
    width: 14.2rem;
  }
}
div#email-floater img {
  display: none;
  margin-bottom: 1.2rem;
  width: 5rem;
}
@media only screen and (min-width: 160rem) {
  div#email-floater img {
    display: inline-block;
  }
}
div#email-floater button, div#email-floater a {
  background-color: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  color: rgb(40, 35, 30);
  display: inline-block;
  font-size: 2.4rem;
  font-weight: 700;
  height: 4rem;
  justify-content: flex-start;
  line-height: 1;
  margin: 0;
  padding: 0;
  position: relative;
  text-align: left;
  text-decoration: none;
  width: 4rem;
}
div#email-floater button span, div#email-floater a span {
  transition: all 300ms ease-out;
}
div#email-floater button 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: "Archivo", 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(40, 35, 30);
  bottom: 0;
  color: rgb(30, 30, 30);
  display: flex;
  height: var(--app-height);
  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: "Archivo", sans-serif;
  font-size: 3.6rem;
  font-weight: 700;
  margin-bottom: 0.3rem;
  text-transform: none;
}
#conco-f p {
  font-size: 3rem;
  font-weight: 700;
  margin-bottom: 2rem;
}
#conco-f p a {
  color: rgb(30, 30, 30);
}
#conco-f .details {
  display: none;
  flex: 0 0 40%;
}
#conco-f .details a {
  color: rgb(30, 30, 30);
  text-decoration: none;
}
#conco-f .details .company-name {
  font-weight: 700;
}
@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(30, 30, 30);
  height: 0;
  left: 0;
  opacity: 0;
  position: fixed;
  top: 0;
  transition: opacity 300ms linear;
  width: 100vw;
  z-index: 0;
}
#fader.open {
  height: var(--app-height);
  opacity: 0.1;
  z-index: 997;
}

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

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

.blog-nav {
  width: 100%;
}
.blog-nav > hr {
  margin-top: 0;
}
.blog-nav .blog-aside-content {
  display: inline-block;
  margin-bottom: 1rem;
  width: 100%;
}
.blog-nav .blog-aside-content a {
  color: rgb(70, 65, 60);
  display: inline-block;
  line-height: 1.2;
  text-decoration: none;
  width: 100%;
}
.blog-nav .blog-aside-content a .blog-current-item {
  background: none;
  border-bottom: 0.1rem solid rgb(70, 65, 60);
  border-radius: 0;
  box-shadow: none;
  color: rgb(30, 30, 30);
  font-size: 1.8rem;
  font-weight: 400;
  justify-content: flex-start;
  line-height: 1.3;
  margin: 0 0 0 0;
  outline: transparent;
  overflow: hidden;
  margin-top: 1rem;
  padding: 0 0 1.5rem 0;
  position: relative;
  text-align: left;
  text-transform: capitalize;
  transition: all 300ms ease-out;
  width: 100%;
  z-index: 1;
}
.blog-nav .blog-aside-content a .blog-current-item::before, .blog-nav .blog-aside-content a .blog-current-item::after {
  content: "";
  background-color: rgb(70, 65, 60);
  display: none;
  height: 100%;
  position: absolute;
  right: 100%;
  top: 0;
  transform: skewX(-18deg);
  transform-origin: top right;
  transition: all 300ms ease-out;
  width: 120%;
  z-index: -1;
}
.blog-nav .blog-aside-content a .blog-current-item:hover, .blog-nav .blog-aside-content a .blog-current-item.active {
  border-bottom: 0.1rem solid black;
}
.blog-nav .blog-aside-content a .blog-current-item:hover::before, .blog-nav .blog-aside-content a .blog-current-item:hover::after, .blog-nav .blog-aside-content a .blog-current-item.active::before, .blog-nav .blog-aside-content a .blog-current-item.active::after {
  right: 0;
}
.blog-nav .blog-aside-content a .blog-current-item p {
  line-height: 1.2;
  margin: 0;
}
.blog-nav .blog-aside-content a .blog-current-item time {
  display: inline-block;
  font-size: 1.6rem;
  margin-top: 0.5rem;
  opacity: 0.8;
}
.blog-nav .blog-aside-content.nav-filter button {
  background: none;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  color: rgb(30, 30, 30);
  font-size: 1.8rem;
  font-weight: 400;
  justify-content: flex-start;
  line-height: 1.2;
  margin: 0 0 1rem 0;
  outline: transparent;
  overflow: hidden;
  padding: 0.5rem 0.3rem;
  text-align: left;
  text-transform: capitalize;
  transition: all 300ms ease-out;
  width: 100%;
  z-index: 1;
}
.blog-nav .blog-aside-content.nav-filter button::before {
  content: "";
  background-color: rgb(70, 65, 60);
  display: inline-block;
  height: 100%;
  position: absolute;
  right: 100%;
  top: 0;
  transform: skewX(-18deg);
  transform-origin: top right;
  transition: all 300ms ease-out;
  width: 120%;
  z-index: -1;
}
.blog-nav .blog-aside-content.nav-filter button:hover, .blog-nav .blog-aside-content.nav-filter button.active {
  color: rgb(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(30, 30, 30);
  font-size: 1.6rem;
  font-weight: 400;
  padding: 0.5rem 1rem;
}
.blog-nav .blog-aside-content.is-toggle-group .toggle-group a:hover {
  background-color: rgb(40, 35, 30);
  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: var(--gutter);
}
aside.pg-nav .button.next {
  margin-right: var(--gutter);
  margin-left: auto;
}

.pagination {
  align-self: center;
  border: 0.1rem solid rgb(30, 30, 30);
  border-right: 0;
  border-left: 0;
  color: rgb(30, 30, 30);
  font-size: 1.8rem;
  font-weight: 700;
  margin: 4rem 0 2.4rem 0;
  padding: 2.4rem 0;
  text-align: center;
  width: 100%;
}
.pagination a, .pagination span {
  align-items: center;
  color: rgb(30, 30, 30);
  display: inline-flex;
  justify-content: center;
  line-height: 1;
  margin: 0.3rem;
  min-height: 3.4rem;
  min-width: 3.4rem;
  padding: 0.5rem;
}
.pagination a {
  opacity: 1;
  text-decoration: none;
}
.pagination a:hover, .pagination a:focus {
  background-color: rgb(40, 35, 30);
  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(40, 35, 30);
  box-shadow: -0.3rem 0.3rem 0.5rem rgba(0, 0, 0, 0.1);
  color: rgb(255, 255, 255);
}

.is-simple-gallery {
  margin: 0 calc(var(--gutter-half) * -1);
  max-width: none;
  width: calc(100% + var(--gutter-half) * 2);
  align-items: stretch;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 0;
  justify-content: center;
}
.is-simple-gallery figure {
  display: inline-block;
  flex: 0 0 50%;
  margin: 0;
  padding: var(--gutter-half);
  position: relative;
}
@media only screen and (min-width: 576px) {
  .is-simple-gallery figure {
    flex: 0 0 33.333%;
  }
}
@media only screen and (min-width: 960px) {
  .is-simple-gallery figure {
    flex: 0 0 25%;
  }
}
.is-simple-gallery figure > a {
  aspect-ratio: 1/0.666;
  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: "Archivo", 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: 700;
  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: var(--gutter-half);
}
.full-gallery.masobox .card > a {
  display: inline-block;
  width: 100%;
}
.full-gallery.masobox .card > a img {
  width: 100%;
}
.full-gallery.flexbox {
  align-items: flex-start;
  display: flex;
  flex-wrap: wrap;
  margin: 0 -1.6rem;
  width: calc(100% + 3.2rem);
}
.full-gallery.flexbox .card {
  flex: 0 0 auto;
  padding: 0.8rem var(--gutter-half);
  width: 100%;
}
@media only screen and (min-width: 576px) {
  .full-gallery.flexbox .card {
    padding: var(--gutter-half);
  }
}
@media only screen and (min-width: 768px) {
  .full-gallery.flexbox .card {
    width: 50%;
  }
}
@media only screen and (min-width: 1152px) {
  .full-gallery.flexbox .card {
    width: 33.333%;
  }
}
.full-gallery.flexbox .card > a {
  background-color: rgb(30, 30, 30);
  color: rgb(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;
  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.ttc {
  display: grid;
  gap: var(--v-gap) var(--gutter);
  grid-template-columns: 1fr;
}
@media only screen and (min-width: 576px) {
  div.ttc {
    grid-template-columns: 1fr 1fr;
  }
}
div.ttc.v-cent {
  align-items: center;
}
div.ttc.lg-sm {
  grid-template-columns: 1fr;
}
@media only screen and (min-width: 768px) {
  div.ttc.lg-sm {
    grid-template-columns: 2fr 1fr;
  }
}
div.ttc.sm-lg {
  grid-template-columns: 1fr;
}
@media only screen and (min-width: 768px) {
  div.ttc.sm-lg {
    grid-template-columns: 1fr 2fr;
  }
}
div.ttc.c3 {
  grid-template-columns: 1fr;
}
@media only screen and (min-width: 960px) {
  div.ttc.c3 {
    grid-template-columns: 1fr 1fr 1fr;
  }
}

@keyframes loader {
  0% {
    width: 0;
    left: 0;
  }
  50% {
    width: 100%;
    left: 0;
  }
  100% {
    width: 100%;
    left: 100%;
  }
}
.maf-embed {
  display: inline-block;
  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: translate(-50%, -50%);
  transition: opacity 600ms ease-out;
  width: 100%;
  z-index: 0;
}
video.tvw-player.ready {
  opacity: 1;
}

.vid-pop {
  aspect-ratio: 1/0.666;
  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: 0.9;
  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-color: rgb(255, 90, 0);
  background-size: cover;
  border: 0;
  border-radius: 50%;
  cursor: pointer;
  display: inline-block;
  height: auto;
  left: 50%;
  max-width: 14rem;
  padding: 0;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  transition: all 300ms ease-out;
  width: 20%;
}
.vid-pop div.vidbut::before, .vid-pop div.vidbut::after {
  aspect-ratio: 1/0.888;
  background-color: rgb(255, 255, 255);
  -webkit-clip-path: polygon(0 0, 100% 50%, 0 100%);
          clip-path: polygon(0 0, 100% 50%, 0 100%);
  content: "";
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-40%, -50%);
  transition: all 300ms ease-out;
  width: 36%;
}
.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 div.vidbut, .vid-pop:focus div.vidbut {
  box-shadow: 0 0 3rem rgba(0, 0, 0, 0.6);
}
.vid-pop:hover div.vidbut::before, .vid-pop:focus div.vidbut::before {
  transform: translate(-15%, -50%);
}
.vid-pop:hover div.vidbut::after, .vid-pop:focus div.vidbut::after {
  transform: translate(-55%, -50%);
}

.cardbox {
  align-items: stretch;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  margin: 0 calc(var(--gutter-half) * -1);
  width: calc(100% + var(--gutter-half) * 2);
}
.cardbox .maf-content {
  padding: 0;
}
.cardbox .card {
  --card-colour: rgb(30, 30, 30);
  --card-accent: rgb(40, 35, 30);
  --h-clr: rgb(30, 30, 30);
  align-items: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: var(--gutter-half);
  text-align: left;
  z-index: 1;
  width: 50%;
}
@media only screen and (min-width: 768px) {
  .cardbox .card {
    width: 33.333%;
  }
}
@media only screen and (min-width: 960px) {
  .cardbox .card {
    width: 25%;
  }
}
.cardbox .card .portal-item {
  align-items: inherit;
  background-color: rgb(255, 255, 255);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  border-radius: 0.5rem;
  color: rgb(30, 30, 30);
  cursor: pointer;
  display: flex;
  flex-direction: column;
  font-size: inherit;
  font-style: inherit;
  font-weight: 400;
  justify-content: center;
  height: 100%;
  opacity: 1;
  outline: none;
  overflow: hidden;
  position: relative;
  text-align: inherit;
  text-decoration: none;
  transform-origin: center;
  transition: all 300ms ease-out;
  width: 100%;
}
.cardbox .card .portal-item.no-link {
  cursor: default;
}
.cardbox .card .portal-item.no-link .portal-content .info .card-button {
  display: none;
}
.cardbox .card .portal-item.edit .portal-content .info {
  position: static;
  transform: none;
}
.cardbox .card .portal-item:not(.no-link):hover .portal-content .tn .tn-img, .cardbox .card .portal-item:not(.no-link):focus .portal-content .tn .tn-img {
  opacity: 0.9;
  transform: scale(1.1);
}
.cardbox .card .portal-item:not(.no-link):hover .portal-content .tn .hover-text, .cardbox .card .portal-item:not(.no-link):focus .portal-content .tn .hover-text {
  opacity: 1;
  transform: scale(1);
}
.cardbox .card .portal-item:not(.no-link):hover .portal-content .card-button::before, .cardbox .card .portal-item:not(.no-link):focus .portal-content .card-button::before {
  height: calc(100% - 0.8rem);
  width: calc(100% - 0.8rem);
}
.cardbox .card .portal-content {
  align-items: inherit;
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
  height: 100%;
  justify-content: inherit;
  position: relative;
  transition: all 300ms ease-out;
  width: 100%;
}
.cardbox .card .card-cats {
  border-radius: 0 0 0.5rem 0;
  background-color: rgb(40, 35, 30);
  display: inline-block;
  left: 0;
  line-height: 0.9;
  padding: 0.8rem 0.9rem 0.6rem 0.9rem;
  position: absolute;
  top: 0;
  text-transform: uppercase;
  width: auto;
  z-index: 1;
}
.cardbox .card .tn {
  background-color: var(--card-accent);
  display: inline-block;
  flex: 0 0 auto;
  overflow: hidden;
  position: relative;
  transition: all 300ms ease-out;
  width: 100%;
}
.cardbox .card .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;
}
.cardbox .card .tn .tn-img.lazy {
  opacity: 0;
}
.cardbox .card .tn .tn-img.lazy.loaded {
  opacity: 1;
}
.cardbox .card .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%;
}
.cardbox .card .tn .hover-text hr {
  margin: 5% 0;
  max-width: 10rem;
}
.cardbox .card .tn.square, .cardbox .card .tn.fourthree, .cardbox .card .tn.custom, .cardbox .card .tn.show-all {
  aspect-ratio: 1/1;
}
.cardbox .card .tn.square .tn-img, .cardbox .card .tn.fourthree .tn-img, .cardbox .card .tn.custom .tn-img, .cardbox .card .tn.show-all .tn-img {
  left: 0;
  position: absolute;
  top: 0;
  transform: scale(1);
}
.cardbox .card .tn.fourthree {
  aspect-ratio: 1/0.75;
}
.cardbox .card .tn.static {
  background-color: transparent;
  overflow: visible;
  position: static;
}
.cardbox .card .tn.static .tn-img {
  height: auto;
  max-width: 100%;
  -o-object-fit: scale-down;
     object-fit: scale-down;
  transform-origin: center bottom;
  width: auto;
}
.cardbox .card .tn.static.no-img {
  min-height: 10rem;
}
.cardbox .card .tn.show-all {
  aspect-ratio: 1/0.5;
}
.cardbox .card .tn.show-all .tn-img {
  -o-object-fit: contain;
     object-fit: contain;
}
.cardbox .card .tn.custom {
  aspect-ratio: 1/0.666;
}
.cardbox .card .info {
  align-items: inherit;
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  gap: 1.6rem;
  justify-content: flex-start;
  transition: all 300ms ease-out;
  width: 100%;
}
.cardbox .card .categories {
  background-color: rgb(40, 35, 30);
  font-weight: 700;
  padding-top: 0.5rem;
}
.cardbox .card .title {
  display: inline-block;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.1;
  margin: 0;
  padding: 0;
  position: relative;
  text-transform: none;
  width: 100%;
}
.cardbox .card .title .price {
  color: rgb(40, 35, 30);
  margin-left: auto;
}
.cardbox .card .title::after {
  display: none;
}
.cardbox .card .desc {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
  margin: 0 0 auto 0;
  width: 100%;
}
.cardbox .card .attr {
  display: flex;
  justify-content: flex-start;
  position: relative;
  padding: 0 2.8rem 0.9em 2.8rem;
  width: 100%;
}
.cardbox .card .attr > span {
  display: inline-block;
  line-height: 1;
  width: auto;
}
.cardbox .card .date {
  display: inline-block;
  font-size: 1.6rem;
  font-weight: 700;
  width: 100%;
}
.cardbox .card .date time {
  display: inline-block;
  position: relative;
}
.cardbox .card .date time .dl {
  font-weight: 400;
}
.cardbox .card .card-button {
  background-color: var(--card-colour);
  margin-top: auto;
  overflow: hidden;
  min-width: 0;
  width: 100%;
}
.cardbox .card .card-button::before {
  border: 0.1rem solid rgb(255, 255, 255);
  border-radius: 0 0 0.5rem 0.5rem;
  height: calc(100% + 0.5rem);
  width: calc(100% + 0.5rem);
}
.cardbox .card .itin-actions {
  align-items: center;
  display: flex;
  justify-content: center;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
.cardbox .card .itin-actions form button {
  background-color: transparent;
  border: 0;
  color: inherit;
  cursor: pointer;
  font-family: "Archivo", sans-serif;
  font-size: 1.6rem;
  outline: transparent;
  padding: 0.5rem 1rem;
  transition: all 300ms ease-out;
}
.cardbox .card .itin-actions form button i {
  font-size: 1.8rem;
  margin-right: 0.5rem;
}
.cardbox .card .itin-actions form button:hover {
  text-shadow: 0.2rem 0.2rem 0 rgb(40, 35, 30);
}
.cardbox .card .itin-actions > div, .cardbox .card .itin-actions > form {
  display: inline-block;
  flex: 0 0 auto;
  width: auto;
}
.cardbox .card .itin-actions .fav-add {
  border: 0.3rem solid rgb(255, 255, 255);
  border-radius: 50%;
  height: 3rem;
  margin: 0.5rem;
  margin-right: auto;
  opacity: 0;
  padding: 0.5rem;
  position: relative;
  transition: opacity 300ms ease-out;
  width: 3rem;
}
.cardbox .card .itin-actions .fav-add i {
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
}
.cardbox .card:hover, .cardbox .card:focus-within {
  z-index: 100;
}
.cardbox .card.added .portal-item .itin-actions .fav-add {
  opacity: 1;
}
.cardbox .no-articles {
  font-size: 1.2em;
  padding: 0 var(--gutter-half);
  width: 100%;
}
.cardbox aside.ad-block {
  cursor: pointer;
  display: inline-block;
  flex: 0 0 auto;
  padding: 0 var(--gutter-half);
  width: 100%;
}
.cardbox .maf-msg {
  margin: 0 var(--gutter-half) 3rem var(--gutter-half);
  z-index: 1;
}
.cardbox.maf-crd-scrllr {
  display: grid;
  gap: 3.2rem;
  grid-auto-columns: calc((var(--grid-width) - var(--gutter) * 3) * 0.25);
  grid-auto-flow: column;
  justify-content: start;
  justify-items: start;
  max-width: 100vw;
  overflow-x: scroll;
  overflow-y: hidden;
  padding-right: max(var(--gutter), 50vw - var(--grid-width) * 0.5);
  padding-left: max(var(--gutter), 50vw - var(--grid-width) * 0.5);
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
}
.cardbox.maf-crd-scrllr .card {
  flex: 0 0 auto;
  padding: 0;
  scroll-snap-align: start;
  scroll-margin-left: max(var(--gutter), 50vw - 720px);
  width: auto;
}

.catbox {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  line-height: 0;
  margin: 0 calc(var(--gutter-half) * -1);
  width: calc(100% + var(--gutter-half) * 2);
}
.catbox article.card {
  display: inline-block;
  flex: 0 0 auto;
  padding: var(--gutter-half);
  text-align: center;
  width: 50%;
}
@media only screen and (min-width: 768px) {
  .catbox article.card {
    width: 50%;
  }
}
@media only screen and (min-width: 1024px) {
  .catbox article.card {
    width: 33.333%;
  }
}
.catbox article.card .portal-item {
  background-color: transparent;
  color: rgb(30, 30, 30);
  display: inline-block;
  height: 100%;
  line-height: 0;
  max-width: 40rem;
  opacity: 1;
  outline: none;
  overflow: hidden;
  text-align: center;
  text-decoration: none;
  width: 100%;
}
.catbox article.card .portal-item .portal-content {
  height: 100%;
  position: relative;
}
.catbox article.card .portal-item .portal-content .tn {
  display: inline-block;
  overflow: hidden;
  position: relative;
  width: 100%;
}
.catbox article.card .portal-item .portal-content .tn::after {
  content: "";
  display: table;
  padding-bottom: 100%;
}
.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%;
}
.catbox article.card .portal-item .portal-content .info {
  align-items: flex-start;
  display: inline-flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden;
  padding: var(--gutter-half);
  transition: all 300ms ease-out;
  width: 100%;
}
.catbox article.card .portal-item .portal-content .info .title {
  display: inline-block;
  font-size: 3rem;
  font-weight: 400;
  line-height: 1.3;
  margin: 0;
  padding: 0 0 1rem 0;
  width: 100%;
}
.catbox article.card .portal-item .portal-content .info .date {
  margin: auto 0 0 0;
}
.catbox article.card .portal-item .portal-content .info .desc {
  align-items: center;
  color: rgb(255, 255, 255);
  display: none;
  justify-content: center;
  padding: 0.8rem 1rem;
  position: absolute;
  transition: top 300ms ease-out;
  width: 100%;
}
.catbox article.card .portal-item .portal-content .info .desc > * {
  color: rgb(255, 255, 255);
  font-size: 1.4rem;
  max-width: 32.5rem;
  width: 100%;
}
.catbox article.card .portal-item .portal-content .info .desc > *:last-child {
  margin-bottom: 0;
}
.catbox article.card .portal-item .portal-content .info .card-button {
  color: rgb(255, 255, 255);
  margin: auto 0 0 0;
}
.catbox article.card .portal-item:hover .portal-content .tn .tn-img, .catbox article.card .portal-item:focus .portal-content .tn .tn-img {
  transform: scale(1.05);
}
.catbox article.card .portal-item:hover .portal-content .info .card-button::after, .catbox article.card .portal-item:focus .portal-content .info .card-button::after {
  bottom: 0;
}
.catbox.cols-2 article.card {
  width: 100%;
}
@media only screen and (min-width: 1024px) {
  .catbox.cols-2 article.card {
    width: 50%;
  }
  .catbox.cols-2 article.card.maf-cs-2, .catbox.cols-2 article.card.maf-cs-3, .catbox.cols-2 article.card.maf-cs-4 {
    width: 100%;
  }
}

.masobox {
  margin: 0 calc(var(--gutter-half) * -1);
  width: calc(100% + var(--gutter-half) * 2);
}
.masobox .card, .masobox .maso-sizer {
  width: 100%;
}
@media only screen and (min-width: 576px) {
  .masobox .card, .masobox .maso-sizer {
    width: 50%;
  }
}
@media only screen and (min-width: 1024px) {
  .masobox .card, .masobox .maso-sizer {
    width: 33.333%;
  }
}
.masobox article.card {
  float: left;
  line-height: 1;
  padding: var(--gutter-half);
  transition: none;
}
.masobox article.card .portal-item {
  display: inline-block;
  opacity: 1;
  overflow: hidden;
  width: 100%;
}
.masobox article.card .portal-item .portal-content {
  display: inline-block;
  position: relative;
  width: 100%;
}
.masobox article.card .portal-item .portal-content .card-cats {
  color: rgb(255, 255, 255);
}
.masobox article.card .portal-item .portal-content .tn {
  display: inline-block;
  width: 100%;
}
.masobox article.card .portal-item .portal-content .tn .tn-img {
  height: auto;
  line-height: 1;
  width: 100%;
}
.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: var(--gutter-half);
  position: absolute;
  transition: all 300ms ease-out;
  top: 0;
  width: 100%;
}
.masobox article.card .portal-item .portal-content .info > * {
  transition: all 300ms ease-out;
  opacity: 0;
}
.masobox article.card .portal-item .portal-content .info > *:nth-child(1n) {
  transition-delay: 100ms;
}
.masobox article.card .portal-item .portal-content .info > *:nth-child(2n) {
  transition-delay: 200ms;
}
.masobox article.card .portal-item .portal-content .info > *:nth-child(3n) {
  transition-delay: 300ms;
}
.masobox article.card .portal-item .portal-content .info > *:nth-child(4n) {
  transition-delay: 400ms;
}
.masobox article.card .portal-item .portal-content .info > *:nth-child(5n) {
  transition-delay: 500ms;
}
.masobox article.card .portal-item .portal-content .info > *:nth-child(6n) {
  transition-delay: 600ms;
}
.masobox article.card .portal-item .portal-content .info > *:nth-child(7n) {
  transition-delay: 700ms;
}
.masobox article.card .portal-item .portal-content .info > *:nth-child(8n) {
  transition-delay: 800ms;
}
.masobox article.card .portal-item .portal-content .info > *:nth-child(9n) {
  transition-delay: 900ms;
}
.masobox article.card .portal-item .portal-content .info > *:nth-child(10n) {
  transition-delay: 1000ms;
}
.masobox article.card .portal-item .portal-content .info .title {
  color: rgb(255, 255, 255);
  font-size: 2.4rem;
  margin: 0 0 2rem 0;
}
.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;
}
.masobox article.card .portal-item .portal-content .info .attr {
  display: none;
}
.masobox article.card .portal-item:hover .portal-content .info, .masobox article.card .portal-item:focus .portal-content .info {
  opacity: 1;
}
.masobox article.card .portal-item:hover .portal-content .info > *, .masobox article.card .portal-item:focus .portal-content .info > * {
  opacity: 1;
}
.masobox article.card.filter-item {
  transition: none;
}

.maf-scrlr-ctrl {
  display: flex;
  max-width: min(var(--grid-width), 100vw - 3.2rem);
  padding-bottom: 1.6rem;
  width: 100%;
}
@media only screen and (min-width: 576px) {
  .maf-scrlr-ctrl {
    max-width: min(var(--grid-width), 100vw - 6.4rem);
  }
}
.maf-scrlr-ctrl button {
  aspect-ratio: 1/1;
  background-color: rgb(30, 30, 30);
  border: 0.1rem solid rgb(255, 255, 255);
  cursor: pointer;
  position: relative;
  width: 3.2rem;
}
.maf-scrlr-ctrl button::before {
  aspect-ratio: 1/1.3;
  background-color: rgb(255, 255, 255);
  content: "";
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 38.2%;
}
.maf-scrlr-ctrl button.maf-scrlr-next {
  border-radius: 0.4rem 0 0 0.4rem;
}
.maf-scrlr-ctrl button.maf-scrlr-next::before {
  -webkit-clip-path: polygon(0 50%, 100% 0, 100% 100%);
          clip-path: polygon(0 50%, 100% 0, 100% 100%);
}
.maf-scrlr-ctrl button.maf-scrlr-prev {
  border-radius: 0 0.4rem 0.4rem 0;
}
.maf-scrlr-ctrl button.maf-scrlr-prev::before {
  -webkit-clip-path: polygon(0 0, 100% 50%, 0 100%);
          clip-path: polygon(0 0, 100% 50%, 0 100%);
}

#filters {
  width: 100%;
}
#filters .filter-content {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  width: 100%;
}
#filters .filter-content .filter-set {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  width: 100%;
}
#filters .filter-content .filter-set button {
  background: none;
  background-color: transparent;
  border: 0.1rem solid rgb(40, 35, 30);
  border-radius: 0;
  color: rgb(40, 35, 30);
  cursor: pointer;
  font-family: inherit;
  font-size: 1.6rem;
  font-weight: 400;
  padding: 0.8rem 1.6rem;
  text-align: left;
  transition: all 300ms ease-out;
}
#filters .filter-content .filter-set button:hover, #filters .filter-content .filter-set button:focus, #filters .filter-content .filter-set button.active {
  background-color: rgb(130, 125, 120);
  border-right-width: 0.8rem;
}

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

.filters {
  flex-direction: row;
}
.filters > p {
  font-weight: bolder;
  width: auto;
}
.filters .cats {
  display: flex;
  flex: 1 1 auto;
  gap: var(--gutter);
}
.filters .cats a {
  background-color: rgb(230, 225, 220);
  border-radius: 0.8rem;
  font-size: 0.9em;
  line-height: 1;
  padding: 0.8rem 1.6rem;
}
.filters .cats a:hover, .filters .cats a:focus, .filters .cats a.active {
  background-color: rgb(130, 125, 120);
  color: rgb(255, 255, 255);
}

.itin-controls {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  width: 100%;
}
.itin-controls .button {
  border-color: rgb(230, 225, 220);
  background-color: rgb(230, 225, 220);
  cursor: pointer;
  font-family: "Archivo", 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(230, 225, 220);
}
.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(40, 35, 30);
  border: 0.2rem solid rgb(40, 35, 30);
  border-radius: 5rem;
  color: rgb(30, 30, 30);
  display: inline-block;
  font-size: 2rem;
  height: 3.6rem;
  padding: 0;
  position: relative;
  transition: all 300ms ease-out;
  vertical-align: top;
  width: 3.6rem;
}
.search-box form {
  display: inline-block;
  height: 100%;
}
.search-box input {
  background-color: rgb(255, 255, 255);
  border: 0;
  border-radius: 1.5rem 0 0 1.5rem;
  color: rgb(30, 30, 30);
  font-size: 1.6rem;
  font-weight: 400;
  height: 100%;
  left: 0;
  margin: 0 3rem 0 0;
  outline: transparent;
  padding: 0;
  position: absolute;
  top: 0;
  width: 0;
}
.search-box input::-moz-placeholder {
  color: rgb(30, 30, 30);
  opacity: 1;
  -moz-transition: all 300ms ease-out;
  transition: all 300ms ease-out;
}
.search-box input::placeholder {
  color: rgb(30, 30, 30);
  opacity: 1;
  transition: all 300ms ease-out;
}
.search-box input:focus {
  background-color: rgb(255, 255, 255);
  color: rgb(30, 30, 30);
}
.search-box input:focus::-moz-placeholder {
  opacity: 0.5;
}
.search-box input:focus::placeholder {
  opacity: 0.5;
}
.search-box i {
  border-radius: 50%;
  color: inherit;
  cursor: pointer;
  display: inline-block;
  font-size: 2rem;
  height: 3.2rem;
  margin: 0;
  padding: 1rem;
  position: absolute;
  right: 0.8rem;
  top: 0;
  transition: all 300ms ease-out;
  width: 2.4rem;
}
.search-box i::before {
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-55%, -55%);
}
.search-box:hover {
  background-color: rgb(40, 35, 30);
}
.search-box:hover i {
  color: rgb(255, 255, 255);
}
.search-box.on {
  width: 18rem;
}
@media only screen and (min-width: 960px) {
  .search-box.on {
    width: 20rem;
  }
}
.search-box.on i {
  color: rgb(255, 255, 255);
}
.search-box.on input {
  padding: 0.8rem 0.5rem 0.8rem 1rem;
  width: calc(100% - 4rem);
}
.search-box.hero {
  background-color: rgba(0, 0, 0, 0.3);
  border: 0.3rem solid rgb(255, 255, 255);
  height: 4.6rem;
  margin-top: 1rem;
}
.search-box.hero input {
  background-color: transparent;
  border-radius: 2rem 0 0 2rem;
  color: rgb(255, 255, 255);
  font-size: 1.8rem;
  height: 4rem;
  margin: 0 5rem 0 0;
  text-align: right;
}
.search-box.hero input::-moz-placeholder {
  color: rgb(255, 255, 255);
}
.search-box.hero input::placeholder {
  color: rgb(255, 255, 255);
}
.search-box.hero input:focus {
  background-color: rgba(0, 0, 0, 0.5);
}
.search-box.hero i {
  background-color: transparent;
  border-radius: 0 2.3rem 2.3rem 0;
  color: rgb(255, 255, 255);
  font-size: 2.4rem;
  height: 4.6rem;
  padding: 0.5rem;
  right: -0.3rem;
  top: -0.3rem;
  width: 5rem;
}
.search-box.hero i::before {
  color: inherit;
}
.search-box.hero:hover, .search-box.hero:focus-within {
  background-color: rgba(0, 0, 0, 0.5);
  box-shadow: 0 0 1.6rem 0.3rem rgba(0, 0, 0, 0.7);
}
.search-box.hero.on {
  max-width: 47.5rem;
  padding-left: 2rem;
  width: 100%;
}
.search-box.hero.on input {
  width: calc(100% - 5rem);
}
.search-box.hero.search-page {
  background-color: rgb(255, 255, 255);
  border-color: rgb(40, 35, 30);
}
.search-box.hero.search-page input {
  background-color: transparent;
  color: rgb(30, 30, 30);
  text-align: left;
}
.search-box.hero.search-page input::-moz-placeholder {
  color: rgb(30, 30, 30);
}
.search-box.hero.search-page input::placeholder {
  color: rgb(30, 30, 30);
}
.search-box.hero.search-page i {
  color: rgb(40, 35, 30);
}
.search-box.hero.search-page:hover, .search-box.hero.search-page:focus-within {
  box-shadow: 0 0 0.8rem 0.1rem rgba(0, 0, 0, 0.3);
}
.search-box.dtop {
  display: none;
}
@media only screen and (min-width: 1024px) {
  .search-box.dtop {
    display: inline-block;
  }
}
.search-box.mob {
  background-color: rgb(255, 255, 255);
  border-color: rgba(0, 0, 0, 0.6);
  box-shadow: 0.2rem 0.2rem 0.3rem 0 rgba(0, 0, 0, 0.2) inset;
  width: 100%;
}
.search-box.mob i {
  color: rgb(30, 30, 30);
}
.search-box.mob input {
  background-color: transparent;
  padding: 1rem 0.5rem 0.8remrem 1rem;
  width: calc(100% - 3.4rem);
}
.search-box.mob input::-moz-placeholder {
  opacity: 0.4;
}
.search-box.mob input::placeholder {
  opacity: 0.4;
}

#basket-link.icon {
  align-items: center;
  color: inherit;
  display: flex;
  font-family: "Archivo", 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(30, 30, 30);
  display: flex;
  font-size: 1rem;
  font-weight: 700;
  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: "Archivo", sans-serif;
  font-size: 2rem;
  font-weight: 700;
  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;
  padding: var(--gutter-half) var(--gutter);
  transition: opacity 10ms ease-out;
  transition-delay: 300ms;
  width: 100%;
}
.maf-bc .maf-bc-i {
  color: rgb(30, 30, 30);
  font-size: 1.6rem;
  max-width: var(--grid-width);
  padding: 0.8rem 0;
  width: 100%;
}
.maf-bc .maf-bc-i a {
  color: inherit;
  position: relative;
  text-decoration: none;
}
.maf-bc .maf-bc-i a::before {
  background-color: rgb(30, 30, 30);
  bottom: 0;
  content: "";
  display: inline-block;
  height: 0.1rem;
  left: 50%;
  position: absolute;
  transform: translate(-50%, 0);
  transition: width 600ms ease-out;
  width: 0;
  z-index: -1;
}
.maf-bc .maf-bc-i a:hover {
  color: rgb(30, 30, 30);
}
.maf-bc .maf-bc-i a:hover::before {
  width: 100%;
}
.maf-bc .maf-bc-i span.tpage {
  font-weight: 700;
}
.maf-bc .maf-bc-i span.dl {
  display: inline-block;
  margin: 0 0.5rem;
}

#sub-menu-toc {
  background-color: rgb(70, 65, 60);
  color: rgb(255, 255, 255);
}
@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(70, 65, 60);
}

.maf-cal-app {
  width: 100%;
}
.maf-cal-app .DiaryHeader {
  max-width: 55rem;
  margin: 0 auto;
}
.maf-cal-app .DiaryHeader p.label {
  font-weight: 700;
  margin-bottom: 2rem;
  text-align: center;
}
.maf-cal-app .DiaryHeader form {
  display: flex;
}
.maf-cal-app .DiaryHeader form > div {
  margin-right: 1rem;
}
.maf-cal-app .DiaryHeader form > div:last-child {
  margin-right: 0;
}
.maf-cal-app .DiaryHeader form input[type=submit] {
  background-color: transparent;
  border: 0.1rem solid rgb(30, 30, 30);
  border-radius: 0;
  color: rgb(30, 30, 30);
  min-height: 0;
  min-width: 0;
}
.maf-cal-app .DiaryHeader form .select {
  height: 4.8rem !important;
}
.maf-cal-app .DiaryHeader form .select.sview {
  display: none;
}
.maf-cal-app .DiaryHeader .DiaryHeaderButton input[type=submit] {
  line-height: 1;
  padding: 1rem;
  height: 4.8rem;
}
.maf-cal-app .DiaryHeader .DiaryHeaderButton input[type=submit]:hover {
  background-color: rgb(70, 65, 60);
  color: rgb(255, 255, 255);
}
.maf-cal-app .DiaryHeader .DiaryHeaderButton.today {
  display: none;
}
@media only screen and (min-width: 576px) {
  .maf-cal-app .DiaryHeader .DiaryHeaderButton.today {
    display: inline-block;
  }
}
.maf-cal-app .DiaryGrid {
  margin: 2rem auto;
  max-width: 100rem;
  text-align: center;
}
body.manageable .maf-cal-app .DiaryGrid {
  max-width: 75rem;
}
.maf-cal-app .DiaryGrid th {
  color: rgb(130, 125, 120);
}
.maf-cal-app .DiaryGrid td {
  padding: 0.2rem;
}
@media only screen and (min-width: 576px) {
  .maf-cal-app .DiaryGrid td {
    padding: 0.5rem;
  }
}
.maf-cal-app .DiaryGrid td.today .DayofMonth {
  opacity: 0.6;
}
.maf-cal-app .DiaryGrid .DayofMonth {
  background-color: rgb(70, 65, 60);
  color: white;
  padding: 0.5rem;
}
.maf-cal-app .DiaryGrid .DayofMonth .dayno {
  display: inline-block;
  width: 100%;
}
.maf-cal-app .DiaryGrid .DayofMonth form {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
}
.maf-cal-app .DiaryGrid .DayofMonth form input[type=submit] {
  margin-left: auto;
  margin-bottom: 0;
  min-width: 3.8rem;
  padding: 1rem;
}
.maf-cal-app .DiaryGrid .DayofMonth form input[type=submit].non-vis {
  visibility: hidden;
}
.maf-cal-app .DiaryGrid .DayofMonth.bkt-1 {
  background-color: rgb(40, 35, 30);
}
.maf-cal-app .DiaryGrid .DayofMonth.bkt-2 {
  background-color: rgb(48, 70, 107);
}
.maf-cal-app .DiaryGrid .DiaryEventAdmin {
  align-items: center;
  background-color: lightgray;
  display: flex;
  padding: 0 0.5rem;
}
.maf-cal-app .DiaryGrid .DiaryEventAdmin > a {
  display: inline-block;
  flex: 0 0 auto;
  line-height: 1;
  padding: 0.5rem;
}
.maf-cal-app .DiaryGrid .DiaryEventAdmin > a:first-child {
  margin-right: auto;
}
.maf-cal-app .ShowDiaryCompressed {
  display: none;
  visibility: hidden;
}
.maf-cal-app .ShowDiaryFull {
  display: block;
  font-size: 1.6rem;
}
@media only screen and (min-width: 576px) {
  .maf-cal-app .ShowDiaryFull {
    font-size: 1.8rem;
  }
}

.modal {
  align-items: center;
  background-color: rgba(0, 0, 0, 0.8);
  -webkit-backdrop-filter: blur(5px);
          backdrop-filter: blur(5px);
  color: rgb(30, 30, 30);
  display: flex;
  font-family: "Archivo", sans-serif;
  font-size: 1.8rem;
  font-weight: 400;
  height: var(--app-height);
  justify-content: center;
  left: 0;
  opacity: 0;
  padding: 8rem 1.6rem 1.6rem 1.6rem;
  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: 12rem 1.6rem 1.6rem 1.6rem;
  }
}
.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: inline-block;
  height: auto;
  max-height: 50rem;
  max-width: 50rem;
  opacity: 0;
  padding: 5rem 0 3rem 1.6rem;
  position: relative;
  transform: scale(0);
  transition: all 200ms ease-out;
  width: 0;
}
.modal > div .mod-content {
  align-items: center;
  display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: flex-start;
  overflow-y: auto;
  padding-right: 1.6rem;
  text-align: center;
}
.modal > div .close {
  color: rgb(30, 30, 30);
  height: 4rem;
  position: absolute;
  right: 1rem;
  top: 1rem;
  width: 4rem;
}
.modal.show {
  display: flex;
  opacity: 1;
  visibility: visible;
}
.modal.show > div {
  max-height: 90%;
  opacity: 1;
  transform: scale(1);
  width: 90%;
}

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

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

#mp-nagger > div {
  border: 0.5rem solid rgb(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 1.6rem;
}
@media only screen and (min-width: 768px) {
  #mp-nagger > div.two-cols .mod-content > div.col2 {
    width: 50%;
  }
}
#mp-nagger > div.two-cols .mod-content > div.col2 > div {
  align-items: center;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  overflow-y: auto;
  padding-right: 1.6rem;
}

dialog {
  border: 0.2rem solid rgb(230, 225, 220);
  box-shadow: 0 0 1.6rem 0.2rem rgba(0, 0, 0, 0.1);
  margin: auto 3.2rem 3.2rem auto;
  min-width: 35rem;
  padding: 0;
}
dialog .styler {
  background-color: #eee;
  display: flex;
  flex-direction: column;
  font-size: 1.8rem;
  gap: 0.8rem;
  padding: 0.8rem;
}
dialog .styler.head {
  background-color: rgb(230, 225, 220);
  flex-direction: row;
  font-size: 2rem;
}
dialog .close {
  background-color: #eee;
  border-radius: 50%;
  height: 2.4rem;
  margin-left: auto;
  width: 2.4rem;
}
dialog.needy::backdrop {
  background-color: rgba(0, 0, 0, 0.3);
  -webkit-backdrop-filter: blur(5px);
          backdrop-filter: blur(5px);
}

.maf-ldr {
  align-items: baseline;
  display: flex;
  justify-content: center;
}
@keyframes dot-pulse-before {
  0% {
    box-shadow: 9984px 0 0 -5px;
  }
  30% {
    box-shadow: 9984px 0 0 2px;
  }
  60%, 100% {
    box-shadow: 9984px 0 0 -5px;
  }
}
@keyframes dot-pulse {
  0% {
    box-shadow: 9999px 0 0 -5px;
  }
  30% {
    box-shadow: 9999px 0 0 2px;
  }
  60%, 100% {
    box-shadow: 9999px 0 0 -5px;
  }
}
@keyframes dot-pulse-after {
  0% {
    box-shadow: 10014px 0 0 -5px;
  }
  30% {
    box-shadow: 10014px 0 0 2px;
  }
  60%, 100% {
    box-shadow: 10014px 0 0 -5px;
  }
}
.maf-ldr .dt1, .maf-ldr .dt2, .maf-ldr .dt3 {
  position: relative;
  left: -9999px;
  width: 1rem;
  height: 1rem;
  border-radius: 0.5rem;
  background-color: rgb(40, 35, 30);
  color: rgb(40, 35, 30);
  box-shadow: 9999px 0 0 -0.5rem;
  animation: dot-pulse 1.5s infinite linear;
  animation-delay: 0.25s;
}
.maf-ldr .dt1 {
  box-shadow: 9984px 0 0 -0.5rem;
  animation: dot-pulse-before 1.5s infinite linear;
  animation-delay: 0s;
}
.maf-ldr .dt3 {
  box-shadow: 10014px 0 0 -0.5rem;
  animation: dot-pulse-after 1.5s infinite linear;
  animation-delay: 0.5s;
}

@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;
}

aside.alert {
  position: relative;
  width: 100%;
}

main {
  align-items: center;
  background-size: cover;
  display: flex;
  flex-direction: column;
  min-height: var(--app-height);
  width: 100%;
}
body.manageable-bo main {
  padding-top: 0;
  min-height: 0;
}

article {
  width: 100%;
}

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 span.page-lead, section .p-style.page-lead, section ul.page-lead, section ol.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 span.page-lead, footer .p-style.page-lead, footer ul.page-lead, footer ol.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 span.page-lead, .bo-row .p-style.page-lead, .bo-row ul.page-lead, .bo-row ol.page-lead {
  font-family: "Archivo", sans-serif;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.2;
}
section h1.no-margin, section .h1-style.no-margin, section h2.no-margin, section .h2-style.no-margin, section h3.no-margin, section .h3-style.no-margin, section h4.no-margin, section .h4-style.no-margin, section h5.no-margin, section .h5-style.no-margin, section h6.no-margin, section .h6-style.no-margin, section p.no-margin, section span.no-margin, section .p-style.no-margin, section ul.no-margin, section ol.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 span.no-margin, footer .p-style.no-margin, footer ul.no-margin, footer ol.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 span.no-margin, .bo-row .p-style.no-margin, .bo-row ul.no-margin, .bo-row ol.no-margin {
  margin-bottom: var(--nv-gap) !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 span.small-margin, section .p-style.small-margin, section ul.small-margin, section ol.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 span.small-margin, footer .p-style.small-margin, footer ul.small-margin, footer ol.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 span.small-margin, .bo-row .p-style.small-margin, .bo-row ul.small-margin, .bo-row ol.small-margin {
  margin-bottom: calc(var(--nv-gap) * 0.5) !important;
}
section h1.txt-xs, section .h1-style.txt-xs, section h2.txt-xs, section .h2-style.txt-xs, section h3.txt-xs, section .h3-style.txt-xs, section h4.txt-xs, section .h4-style.txt-xs, section h5.txt-xs, section .h5-style.txt-xs, section h6.txt-xs, section .h6-style.txt-xs, section p.txt-xs, section span.txt-xs, section .p-style.txt-xs, section ul.txt-xs, section ol.txt-xs, footer h1.txt-xs, footer .h1-style.txt-xs, footer h2.txt-xs, footer .h2-style.txt-xs, footer h3.txt-xs, footer .h3-style.txt-xs, footer h4.txt-xs, footer .h4-style.txt-xs, footer h5.txt-xs, footer .h5-style.txt-xs, footer h6.txt-xs, footer .h6-style.txt-xs, footer p.txt-xs, footer span.txt-xs, footer .p-style.txt-xs, footer ul.txt-xs, footer ol.txt-xs, .bo-row h1.txt-xs, .bo-row .h1-style.txt-xs, .bo-row h2.txt-xs, .bo-row .h2-style.txt-xs, .bo-row h3.txt-xs, .bo-row .h3-style.txt-xs, .bo-row h4.txt-xs, .bo-row .h4-style.txt-xs, .bo-row h5.txt-xs, .bo-row .h5-style.txt-xs, .bo-row h6.txt-xs, .bo-row .h6-style.txt-xs, .bo-row p.txt-xs, .bo-row span.txt-xs, .bo-row .p-style.txt-xs, .bo-row ul.txt-xs, .bo-row ol.txt-xs {
  font-size: 0.5em !important;
}
section h1.txt-sm, section .h1-style.txt-sm, section h2.txt-sm, section .h2-style.txt-sm, section h3.txt-sm, section .h3-style.txt-sm, section h4.txt-sm, section .h4-style.txt-sm, section h5.txt-sm, section .h5-style.txt-sm, section h6.txt-sm, section .h6-style.txt-sm, section p.txt-sm, section span.txt-sm, section .p-style.txt-sm, section ul.txt-sm, section ol.txt-sm, footer h1.txt-sm, footer .h1-style.txt-sm, footer h2.txt-sm, footer .h2-style.txt-sm, footer h3.txt-sm, footer .h3-style.txt-sm, footer h4.txt-sm, footer .h4-style.txt-sm, footer h5.txt-sm, footer .h5-style.txt-sm, footer h6.txt-sm, footer .h6-style.txt-sm, footer p.txt-sm, footer span.txt-sm, footer .p-style.txt-sm, footer ul.txt-sm, footer ol.txt-sm, .bo-row h1.txt-sm, .bo-row .h1-style.txt-sm, .bo-row h2.txt-sm, .bo-row .h2-style.txt-sm, .bo-row h3.txt-sm, .bo-row .h3-style.txt-sm, .bo-row h4.txt-sm, .bo-row .h4-style.txt-sm, .bo-row h5.txt-sm, .bo-row .h5-style.txt-sm, .bo-row h6.txt-sm, .bo-row .h6-style.txt-sm, .bo-row p.txt-sm, .bo-row span.txt-sm, .bo-row .p-style.txt-sm, .bo-row ul.txt-sm, .bo-row ol.txt-sm {
  font-size: 0.92em;
}
section h1.txt-lg, section .h1-style.txt-lg, section h2.txt-lg, section .h2-style.txt-lg, section h3.txt-lg, section .h3-style.txt-lg, section h4.txt-lg, section .h4-style.txt-lg, section h5.txt-lg, section .h5-style.txt-lg, section h6.txt-lg, section .h6-style.txt-lg, section p.txt-lg, section span.txt-lg, section .p-style.txt-lg, section ul.txt-lg, section ol.txt-lg, footer h1.txt-lg, footer .h1-style.txt-lg, footer h2.txt-lg, footer .h2-style.txt-lg, footer h3.txt-lg, footer .h3-style.txt-lg, footer h4.txt-lg, footer .h4-style.txt-lg, footer h5.txt-lg, footer .h5-style.txt-lg, footer h6.txt-lg, footer .h6-style.txt-lg, footer p.txt-lg, footer span.txt-lg, footer .p-style.txt-lg, footer ul.txt-lg, footer ol.txt-lg, .bo-row h1.txt-lg, .bo-row .h1-style.txt-lg, .bo-row h2.txt-lg, .bo-row .h2-style.txt-lg, .bo-row h3.txt-lg, .bo-row .h3-style.txt-lg, .bo-row h4.txt-lg, .bo-row .h4-style.txt-lg, .bo-row h5.txt-lg, .bo-row .h5-style.txt-lg, .bo-row h6.txt-lg, .bo-row .h6-style.txt-lg, .bo-row p.txt-lg, .bo-row span.txt-lg, .bo-row .p-style.txt-lg, .bo-row ul.txt-lg, .bo-row ol.txt-lg {
  font-size: 2rem;
}
@media only screen and (min-width: 576px) {
  section h1.txt-lg, section .h1-style.txt-lg, section h2.txt-lg, section .h2-style.txt-lg, section h3.txt-lg, section .h3-style.txt-lg, section h4.txt-lg, section .h4-style.txt-lg, section h5.txt-lg, section .h5-style.txt-lg, section h6.txt-lg, section .h6-style.txt-lg, section p.txt-lg, section span.txt-lg, section .p-style.txt-lg, section ul.txt-lg, section ol.txt-lg, footer h1.txt-lg, footer .h1-style.txt-lg, footer h2.txt-lg, footer .h2-style.txt-lg, footer h3.txt-lg, footer .h3-style.txt-lg, footer h4.txt-lg, footer .h4-style.txt-lg, footer h5.txt-lg, footer .h5-style.txt-lg, footer h6.txt-lg, footer .h6-style.txt-lg, footer p.txt-lg, footer span.txt-lg, footer .p-style.txt-lg, footer ul.txt-lg, footer ol.txt-lg, .bo-row h1.txt-lg, .bo-row .h1-style.txt-lg, .bo-row h2.txt-lg, .bo-row .h2-style.txt-lg, .bo-row h3.txt-lg, .bo-row .h3-style.txt-lg, .bo-row h4.txt-lg, .bo-row .h4-style.txt-lg, .bo-row h5.txt-lg, .bo-row .h5-style.txt-lg, .bo-row h6.txt-lg, .bo-row .h6-style.txt-lg, .bo-row p.txt-lg, .bo-row span.txt-lg, .bo-row .p-style.txt-lg, .bo-row ul.txt-lg, .bo-row ol.txt-lg {
    font-size: 2.4rem;
  }
}
section h1.txt-xl, section .h1-style.txt-xl, section h2.txt-xl, section .h2-style.txt-xl, section h3.txt-xl, section .h3-style.txt-xl, section h4.txt-xl, section .h4-style.txt-xl, section h5.txt-xl, section .h5-style.txt-xl, section h6.txt-xl, section .h6-style.txt-xl, section p.txt-xl, section span.txt-xl, section .p-style.txt-xl, section ul.txt-xl, section ol.txt-xl, footer h1.txt-xl, footer .h1-style.txt-xl, footer h2.txt-xl, footer .h2-style.txt-xl, footer h3.txt-xl, footer .h3-style.txt-xl, footer h4.txt-xl, footer .h4-style.txt-xl, footer h5.txt-xl, footer .h5-style.txt-xl, footer h6.txt-xl, footer .h6-style.txt-xl, footer p.txt-xl, footer span.txt-xl, footer .p-style.txt-xl, footer ul.txt-xl, footer ol.txt-xl, .bo-row h1.txt-xl, .bo-row .h1-style.txt-xl, .bo-row h2.txt-xl, .bo-row .h2-style.txt-xl, .bo-row h3.txt-xl, .bo-row .h3-style.txt-xl, .bo-row h4.txt-xl, .bo-row .h4-style.txt-xl, .bo-row h5.txt-xl, .bo-row .h5-style.txt-xl, .bo-row h6.txt-xl, .bo-row .h6-style.txt-xl, .bo-row p.txt-xl, .bo-row span.txt-xl, .bo-row .p-style.txt-xl, .bo-row ul.txt-xl, .bo-row ol.txt-xl {
  font-size: 2.4rem;
}
@media only screen and (min-width: 576px) {
  section h1.txt-xl, section .h1-style.txt-xl, section h2.txt-xl, section .h2-style.txt-xl, section h3.txt-xl, section .h3-style.txt-xl, section h4.txt-xl, section .h4-style.txt-xl, section h5.txt-xl, section .h5-style.txt-xl, section h6.txt-xl, section .h6-style.txt-xl, section p.txt-xl, section span.txt-xl, section .p-style.txt-xl, section ul.txt-xl, section ol.txt-xl, footer h1.txt-xl, footer .h1-style.txt-xl, footer h2.txt-xl, footer .h2-style.txt-xl, footer h3.txt-xl, footer .h3-style.txt-xl, footer h4.txt-xl, footer .h4-style.txt-xl, footer h5.txt-xl, footer .h5-style.txt-xl, footer h6.txt-xl, footer .h6-style.txt-xl, footer p.txt-xl, footer span.txt-xl, footer .p-style.txt-xl, footer ul.txt-xl, footer ol.txt-xl, .bo-row h1.txt-xl, .bo-row .h1-style.txt-xl, .bo-row h2.txt-xl, .bo-row .h2-style.txt-xl, .bo-row h3.txt-xl, .bo-row .h3-style.txt-xl, .bo-row h4.txt-xl, .bo-row .h4-style.txt-xl, .bo-row h5.txt-xl, .bo-row .h5-style.txt-xl, .bo-row h6.txt-xl, .bo-row .h6-style.txt-xl, .bo-row p.txt-xl, .bo-row span.txt-xl, .bo-row .p-style.txt-xl, .bo-row ul.txt-xl, .bo-row ol.txt-xl {
    font-size: 3.2rem;
  }
}
section h1.txt-xxl, section .h1-style.txt-xxl, section h2.txt-xxl, section .h2-style.txt-xxl, section h3.txt-xxl, section .h3-style.txt-xxl, section h4.txt-xxl, section .h4-style.txt-xxl, section h5.txt-xxl, section .h5-style.txt-xxl, section h6.txt-xxl, section .h6-style.txt-xxl, section p.txt-xxl, section span.txt-xxl, section .p-style.txt-xxl, section ul.txt-xxl, section ol.txt-xxl, footer h1.txt-xxl, footer .h1-style.txt-xxl, footer h2.txt-xxl, footer .h2-style.txt-xxl, footer h3.txt-xxl, footer .h3-style.txt-xxl, footer h4.txt-xxl, footer .h4-style.txt-xxl, footer h5.txt-xxl, footer .h5-style.txt-xxl, footer h6.txt-xxl, footer .h6-style.txt-xxl, footer p.txt-xxl, footer span.txt-xxl, footer .p-style.txt-xxl, footer ul.txt-xxl, footer ol.txt-xxl, .bo-row h1.txt-xxl, .bo-row .h1-style.txt-xxl, .bo-row h2.txt-xxl, .bo-row .h2-style.txt-xxl, .bo-row h3.txt-xxl, .bo-row .h3-style.txt-xxl, .bo-row h4.txt-xxl, .bo-row .h4-style.txt-xxl, .bo-row h5.txt-xxl, .bo-row .h5-style.txt-xxl, .bo-row h6.txt-xxl, .bo-row .h6-style.txt-xxl, .bo-row p.txt-xxl, .bo-row span.txt-xxl, .bo-row .p-style.txt-xxl, .bo-row ul.txt-xxl, .bo-row ol.txt-xxl {
  font-size: 2.8rem;
}
@media only screen and (min-width: 576px) {
  section h1.txt-xxl, section .h1-style.txt-xxl, section h2.txt-xxl, section .h2-style.txt-xxl, section h3.txt-xxl, section .h3-style.txt-xxl, section h4.txt-xxl, section .h4-style.txt-xxl, section h5.txt-xxl, section .h5-style.txt-xxl, section h6.txt-xxl, section .h6-style.txt-xxl, section p.txt-xxl, section span.txt-xxl, section .p-style.txt-xxl, section ul.txt-xxl, section ol.txt-xxl, footer h1.txt-xxl, footer .h1-style.txt-xxl, footer h2.txt-xxl, footer .h2-style.txt-xxl, footer h3.txt-xxl, footer .h3-style.txt-xxl, footer h4.txt-xxl, footer .h4-style.txt-xxl, footer h5.txt-xxl, footer .h5-style.txt-xxl, footer h6.txt-xxl, footer .h6-style.txt-xxl, footer p.txt-xxl, footer span.txt-xxl, footer .p-style.txt-xxl, footer ul.txt-xxl, footer ol.txt-xxl, .bo-row h1.txt-xxl, .bo-row .h1-style.txt-xxl, .bo-row h2.txt-xxl, .bo-row .h2-style.txt-xxl, .bo-row h3.txt-xxl, .bo-row .h3-style.txt-xxl, .bo-row h4.txt-xxl, .bo-row .h4-style.txt-xxl, .bo-row h5.txt-xxl, .bo-row .h5-style.txt-xxl, .bo-row h6.txt-xxl, .bo-row .h6-style.txt-xxl, .bo-row p.txt-xxl, .bo-row span.txt-xxl, .bo-row .p-style.txt-xxl, .bo-row ul.txt-xxl, .bo-row ol.txt-xxl {
    font-size: 4rem;
  }
}
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 span.highlight-text, section .p-style.highlight-text, section ul.highlight-text, section ol.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 span.highlight-text, footer .p-style.highlight-text, footer ul.highlight-text, footer ol.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 span.highlight-text, .bo-row .p-style.highlight-text, .bo-row ul.highlight-text, .bo-row ol.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.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 span.dark-glow, section .p-style.dark-glow, section ul.dark-glow, section ol.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 span.dark-glow, footer .p-style.dark-glow, footer ul.dark-glow, footer ol.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 span.dark-glow, .bo-row .p-style.dark-glow, .bo-row ul.dark-glow, .bo-row ol.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 span.light-glow, section .p-style.light-glow, section ul.light-glow, section ol.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 span.light-glow, footer .p-style.light-glow, footer ul.light-glow, footer ol.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 span.light-glow, .bo-row .p-style.light-glow, .bo-row ul.light-glow, .bo-row ol.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 span.p-style, section .p-style.p-style, section ul.p-style, section ol.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 span.p-style, footer .p-style.p-style, footer ul.p-style, footer ol.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 span.p-style, .bo-row .p-style.p-style, .bo-row ul.p-style, .bo-row ol.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 span.p-style, section .p-style.p-style, section ul.p-style, section ol.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 span.p-style, footer .p-style.p-style, footer ul.p-style, footer ol.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 span.p-style, .bo-row .p-style.p-style, .bo-row ul.p-style, .bo-row ol.p-style {
    font-size: 2rem;
  }
}
section h1.overline, section .h1-style.overline, section h2.overline, section .h2-style.overline, section h3.overline, section .h3-style.overline, section h4.overline, section .h4-style.overline, section h5.overline, section .h5-style.overline, section h6.overline, section .h6-style.overline, section p.overline, section span.overline, section .p-style.overline, section ul.overline, section ol.overline, footer h1.overline, footer .h1-style.overline, footer h2.overline, footer .h2-style.overline, footer h3.overline, footer .h3-style.overline, footer h4.overline, footer .h4-style.overline, footer h5.overline, footer .h5-style.overline, footer h6.overline, footer .h6-style.overline, footer p.overline, footer span.overline, footer .p-style.overline, footer ul.overline, footer ol.overline, .bo-row h1.overline, .bo-row .h1-style.overline, .bo-row h2.overline, .bo-row .h2-style.overline, .bo-row h3.overline, .bo-row .h3-style.overline, .bo-row h4.overline, .bo-row .h4-style.overline, .bo-row h5.overline, .bo-row .h5-style.overline, .bo-row h6.overline, .bo-row .h6-style.overline, .bo-row p.overline, .bo-row span.overline, .bo-row .p-style.overline, .bo-row ul.overline, .bo-row ol.overline {
  font-family: "Archivo", sans-serif;
  font-size: 1.7rem;
  text-transform: uppercase;
}
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 span.push-down, section .p-style.push-down, section ul.push-down, section ol.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 span.push-down, footer .p-style.push-down, footer ul.push-down, footer ol.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 span.push-down, .bo-row .p-style.push-down, .bo-row ul.push-down, .bo-row ol.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(30, 30, 30);
  }
  20% {
    background: rgb(70, 65, 60);
  }
  40% {
    background: rgb(230, 225, 220);
  }
  60% {
    background: rgb(130, 125, 120);
  }
  80% {
    background: rgb(255, 90, 0);
  }
  100% {
    background: rgb(30, 30, 30);
  }
}
@keyframes head-in {
  0% {
    filter: blur(9px);
    font-variation-settings: "wght" 300;
    opacity: 0;
  }
  25% {
    filter: blur(5px);
    font-variation-settings: "wght" 300;
    opacity: 0.125;
  }
  100% {
    filter: blur(0px);
    font-variation-settings: "wght" 800;
    opacity: 0.6;
  }
}
@keyframes blur-in {
  0% {
    filter: blur(9px);
    opacity: 0;
  }
  100% {
    filter: blur(0px);
    opacity: 1;
  }
}
.bg-1 {
  --acc-clr: rgb(40, 35, 30);
  --bg-clr: rgb(40, 35, 30);
  --h-clr: rgb(255, 255, 255);
  --bllt-clr: rgb(255, 255, 255);
  color: rgb(255, 255, 255);
}
.bg-1 .maf-content > *:not(.button) {
  color: inherit;
}
.bg-1 .maf-content a:not(.button) {
  color: hsl(120, 42%, 49%);
}
.bg-1 .maf-content a:not(.button):hover, .bg-1 .maf-content a:not(.button).focus {
  color: inherit;
}

.bg-2 {
  --acc-clr: rgb(70, 65, 60);
  --bg-clr: rgb(70, 65, 60);
  --h-clr: rgb(255, 255, 255);
  --bllt-clr: rgb(255, 255, 255);
  color: rgb(255, 255, 255);
}
.bg-2 .maf-content > *:not(.button) {
  color: inherit;
}
.bg-2 .maf-content a:not(.button) {
  color: hsl(120, 42%, 49%);
}
.bg-2 .maf-content a:not(.button):hover, .bg-2 .maf-content a:not(.button).focus {
  color: inherit;
}

.bg-3 {
  --acc-clr: rgb(130, 125, 120);
  --bg-clr: rgb(130, 125, 120);
  --h-clr: rgb(255, 255, 255);
  --bllt-clr: rgb(255, 255, 255);
  color: rgb(255, 255, 255);
}
.bg-3 .maf-content > *:not(.button) {
  color: inherit;
}
.bg-3 .maf-content a:not(.button) {
  color: hsl(120, 42%, 49%);
}
.bg-3 .maf-content a:not(.button):hover, .bg-3 .maf-content a:not(.button).focus {
  color: inherit;
}

.bg-4 {
  --acc-clr: rgb(255, 90, 0);
  --bg-clr: rgb(255, 90, 0);
  --h-clr: rgb(255, 255, 255);
  --bllt-clr: rgb(255, 255, 255);
  color: rgb(255, 255, 255);
}
.bg-4 .maf-content > *:not(.button) {
  color: inherit;
}
.bg-4 .maf-content a:not(.button) {
  color: hsl(120, 42%, 49%);
}
.bg-4 .maf-content a:not(.button):hover, .bg-4 .maf-content a:not(.button).focus {
  color: inherit;
}

.bg-5 {
  --acc-clr: rgb(230, 225, 220);
  --bg-clr: rgb(230, 225, 220);
  --h-clr: rgb(255, 255, 255);
  --bllt-clr: rgb(255, 255, 255);
  color: rgb(255, 255, 255);
}
.bg-5 .maf-content > *:not(.button) {
  color: inherit;
}
.bg-5 .maf-content a:not(.button) {
  color: hsl(120, 42%, 49%);
}
.bg-5 .maf-content a:not(.button):hover, .bg-5 .maf-content a:not(.button).focus {
  color: inherit;
}

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

.is-nav-dock {
  height: 8rem;
  transition: height 300ms ease-out;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  .is-nav-dock {
    height: 12rem;
  }
}
.is-nav-dock.menu-over-content {
  left: 0;
  position: absolute;
  top: 0;
}

#sub-nav-dock {
  height: 8.7rem;
  width: 100%;
}
#sub-nav-dock #sub-nav {
  background-color: rgb(230, 225, 220);
  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: 1.6rem;
  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: "Archivo", sans-serif;
  font-size: 1.8rem;
  line-height: 1;
  text-transform: uppercase;
}
@media only screen and (min-width: 1152px) {
  #sub-nav-dock #sub-nav #sub-logo span {
    font-size: 2.4rem;
    margin-top: 0.6rem;
  }
}
@media only screen and (min-width: 1152px) {
  #sub-nav-dock #sub-nav #sub-logo {
    height: 60%;
  }
}
#sub-nav-dock #sub-nav #ticket-link {
  height: 3rem;
  position: absolute;
  right: 1.6rem;
  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(230, 225, 220);
  font-size: 1.8rem;
  height: 100%;
  transition: all 300ms ease-out;
}
#sub-nav-dock #sub-nav #ticket-link a.button:hover {
  color: rgb(40, 35, 30);
  box-shadow: 0.6rem 0.6rem 0.4rem 0 rgba(0, 0, 0, 0.15);
}
@media only screen and (min-width: 1024px) {
  #sub-nav-dock #sub-nav #ticket-link {
    left: 50%;
    right: auto;
    transform: translate(-50%, -50%);
  }
}
@media only screen and (min-width: 1152px) {
  #sub-nav-dock #sub-nav #ticket-link {
    height: 5.7rem;
  }
  #sub-nav-dock #sub-nav #ticket-link a.button {
    font-size: 2.2rem;
  }
}
#sub-nav-dock #sub-nav #sub {
  right: 1.6rem;
  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(0, 0, 0);
  color: rgb(255, 255, 255);
  display: flex;
  height: 8rem;
  justify-content: center;
  padding: 0 var(--gutter);
  transform: translateZ(0);
  transition: all 300ms ease-out;
  width: 100%;
  z-index: 666;
}
@media only screen and (min-width: 768px) {
  .is-main-header {
    height: 12rem;
  }
}
.is-main-header.is-fixed, .is-main-header.stuck {
  left: 0;
  position: fixed;
  top: 0;
  transform: translateZ(0);
}
.is-main-header .h-con {
  align-items: stretch;
  align-content: stretch;
  display: grid;
  gap: 1rem var(--gutter);
  grid-template-columns: minmax(auto, 1fr) 2fr auto;
  grid-template-rows: 1fr;
  height: inherit;
  justify-content: space-between;
  margin-left: auto;
  margin-right: auto;
  max-width: var(--grid-width);
  padding: 1rem 0;
  position: relative;
  text-align: center;
  width: 100vw;
}
.is-main-header .brand {
  align-items: center;
  cursor: pointer;
  display: flex;
  line-height: 1;
  min-height: 0;
  min-width: 0;
  opacity: 1;
  position: relative;
  text-align: left;
  text-decoration: none;
  transition: all 300ms linear;
  width: auto;
  z-index: 102;
}
.is-main-header .brand #logo {
  display: block;
  flex: 1;
  height: 100%;
  max-height: 8rem;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: left center;
     object-position: left center;
  opacity: 1;
  transition: opacity 10ms ease-out, height 300ms ease-out;
}
.is-main-header .brand #maf-strap {
  color: rgb(30, 30, 30);
  display: inline-block;
  font-family: "Archivo", sans-serif;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
  white-space: nowrap;
}
@media only screen and (min-width: 576px) {
  .is-main-header .brand #maf-strap {
    font-size: 3rem;
  }
}
.is-main-header .n-con {
  align-content: center;
  align-items: center;
  background-color: transparent;
  display: flex;
  flex: 0 0 auto;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-end;
  transition: opacity 10ms ease-out 10ms;
  width: auto;
  z-index: 101;
}
.is-main-header #header-ui {
  align-items: flex-start;
  color: inherit;
  display: flex;
  font-family: "Archivo", sans-serif;
  font-size: 1.8rem;
  justify-content: flex-end;
  line-height: 0;
  margin: auto 0;
  max-width: var(--grid-width);
  opacity: 1;
  padding: 0;
  position: relative;
  transition: top 300ms ease-out, opacity 10ms ease-out;
  width: auto;
  z-index: 777;
}
.is-main-header #header-ui a {
  text-decoration: none;
}
.is-main-header #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 #header-ui .phone span {
  color: rgb(130, 125, 120);
  display: none;
}
@media only screen and (min-width: 576px) {
  .is-main-header #header-ui .phone span {
    display: inline;
  }
}
.is-main-header #header-ui-alt {
  opacity: 1;
  transition: all 10ms ease-out;
}
.is-main-header #dash-links {
  display: inline-block;
  flex: 0 0 auto;
  position: relative;
  width: 16rem;
}
.is-main-header #dash-links .button {
  border-bottom: 0;
  max-width: none;
  position: relative;
  z-index: 2;
}
.is-main-header #dash-links #dash-links-drop {
  background-color: rgb(255, 255, 255);
  border: 0.2rem solid rgb(30, 30, 30);
  box-shadow: 0 1.3rem 2.7rem rgba(0, 0, 0, 0.2);
  display: none;
  font-size: 1.6rem;
  left: 0;
  line-height: 1;
  position: absolute;
  text-align: right;
  top: 3.4rem;
  width: 100%;
  z-index: 1;
}
.is-main-header #dash-links #dash-links-drop a {
  color: rgb(30, 30, 30);
  display: inline-block;
  font-weight: 400;
  outline: none;
  padding: 0.7rem 1rem;
  text-decoration: none;
  width: 100%;
}
.is-main-header #dash-links #dash-links-drop a:hover, .is-main-header #dash-links #dash-links-drop a:focus {
  background-color: rgb(30, 30, 30);
  color: rgb(255, 255, 255);
}
.is-main-header.squish {
  height: 8rem;
}
.is-main-header.squish.sh-hide {
  transform: translateY(-105%);
}
.is-main-header.squish.sh-hide.menuopen {
  transform: translateY(0) !important;
}

section {
  overflow: hidden;
}
section .row {
  grid-template-columns: 1fr;
}
section.is-hero {
  background-color: rgb(40, 35, 30);
  color: rgb(255, 255, 255);
  font-size: 2.4rem;
  min-height: 60rem;
  position: relative;
  transition: min-height 300ms ease-out, opacity 10ms ease-out;
}
section.is-hero #hero-logo {
  display: none;
  margin: auto;
  transition: all 300ms ease-out;
}
section.is-hero #hero-logo p {
  display: inline-block;
}
section.is-hero > .maf-background {
  transition: all 10ms ease-out;
}
section.is-hero .row {
  transition: opacity 10ms ease-out;
}
section.is-hero .row .column {
  align-items: flex-start;
  justify-content: center;
  text-align: left;
}
section.is-hero .row .maf-content {
  margin-left: var(--gutter-half);
  max-width: 30em;
  padding: var(--gutter);
  position: relative;
}
section.is-hero .row .maf-content::before {
  -webkit-backdrop-filter: blur(1.6rem);
          backdrop-filter: blur(1.6rem);
  background-color: rgba(0, 0, 0, 0.1);
  border-radius: 0.8rem;
  content: "";
  height: 100%;
  left: 0;
  -webkit-mask: linear-gradient(90deg, white 38.2%, transparent);
          mask: linear-gradient(90deg, white 38.2%, transparent);
  position: absolute;
  top: 0;
  width: 100%;
  z-index: -1;
}
section.is-hero .row .maf-content::after {
  border-radius: 1.2rem;
  border: 0.4rem solid white;
  content: "";
  height: calc(100% + 1.6rem);
  left: -1.2rem;
  -webkit-mask: linear-gradient(90deg, white, transparent);
          mask: linear-gradient(90deg, white, transparent);
  opacity: 0.2;
  position: absolute;
  top: -1.2rem;
  width: calc(100% + 1.6rem);
  z-index: -1;
}
section.is-hero.is-home .row .column {
  justify-content: flex-end;
}
section.is-hero.is-home.animate .row .column.maf-col-1 {
  filter: grayscale(0%);
  opacity: 1;
  transform: translateY(0);
}
body.is-home section.is-hero.menu-in {
  min-height: calc(var(--app-height) - 8rem);
}
@media only screen and (min-width: 768px) {
  body.is-home section.is-hero.menu-in {
    min-height: calc(var(--app-height) - 12rem);
  }
}
body.is-home section.is-hero.menu-in.squish {
  min-height: calc(var(--app-height) - 8rem);
}
body.manageable-bo section.is-hero > .maf-background {
  margin: 0;
}
body.manageable-bo section.is-hero .row {
  padding-top: 0;
  pointer-events: auto;
}
section.is-hero.slideshow > .maf-background {
  background-image: none;
}
section.is-hero.slideshow .flickity-slideshow, section.is-hero.slideshow .flickity-slideshow-edit {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 10;
}
section.is-hero.slideshow .flickity-slideshow .ss-slide, section.is-hero.slideshow .flickity-slideshow-edit .ss-slide {
  align-items: center;
  display: flex;
  height: 100%;
  justify-content: center;
  overflow: hidden;
  width: 100%;
}
section.is-hero.slideshow .flickity-slideshow .ss-slide .maf-background, section.is-hero.slideshow .flickity-slideshow-edit .ss-slide .maf-background {
  opacity: 0.5;
}
section.is-hero.slideshow .flickity-slideshow .ss-slide .maf-content, section.is-hero.slideshow .flickity-slideshow-edit .ss-slide .maf-content {
  align-content: center;
  align-items: center;
  max-width: var(--grid-width);
  padding: 3.2rem var(--gutter);
  position: relative;
  text-align: center;
}
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.one-column .column {
  justify-content: center;
  text-align: center;
}
section.one-column .maf-content {
  align-items: center;
  max-width: calc(var(--grid-width) * 0.618);
}
section.one-column.brands {
  min-height: 20rem;
}
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 {
  padding-top: 0;
}
section.one-column.map-embed .maf-content {
  aspect-ratio: 1/0.375;
  max-width: none;
  padding: 0;
  position: static;
}
section.one-column.map-embed .maf-content iframe, section.one-column.map-embed .maf-content .mce-preview-object {
  border: 0;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
@media only screen and (min-width: 960px) {
  section.two-column .row {
    grid-template-columns: 1fr 1fr;
  }
}
section.two-column.img-left .row {
  align-items: stretch;
}
section.two-column.img-left .column.maf-col-1 {
  grid-row: 2;
}
@media only screen and (min-width: 960px) {
  section.two-column.img-left .column.maf-col-1 {
    grid-row: 1;
  }
}
section.two-column.img-left .column.maf-col-1 .has-img {
  height: 100%;
  width: 100%;
}
section.two-column.img-left .column.maf-col-1 .has-img img {
  min-height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}
section.two-column.img-left .column.maf-col-2 {
  grid-row: 1;
}
section.two-column.img-left .maf-content {
  height: 100%;
}
section.two-column.img-right .row {
  align-items: stretch;
}
section.two-column.img-right .column.maf-col-2 .has-img {
  height: 100%;
  width: 100%;
}
section.two-column.img-right .column.maf-col-2 .has-img img {
  min-height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}
section.two-column.img-right .maf-content {
  height: 100%;
}
section.two-column.vertical-centre .row {
  align-items: center;
}
section.two-column.full-width .row {
  max-width: none;
}
section.two-column.maf-col-bg-full {
  padding: 0;
}
section.two-column.maf-col-bg-full .row {
  max-width: none;
  gap: 0;
}
section.two-column.maf-col-bg-full .row .column.has-bg {
  min-height: 60rem;
}
section.two-column.maf-col-bg-full .row .column .maf-col-i {
  align-items: center;
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  justify-content: center;
  position: relative;
  width: 100%;
}
@media only screen and (min-width: 576px) {
  section.two-column.maf-col-bg-full .row .column .maf-col-i {
    padding: 0 1.6rem;
  }
}
@media only screen and (min-width: 1024px) {
  section.two-column.maf-col-bg-full .row .column .maf-col-i {
    max-width: 68.8rem;
  }
}
@media only screen and (min-width: 1024px) {
  section.two-column.maf-col-bg-full .row .column.maf-col-1 {
    align-items: flex-end;
  }
}
@media only screen and (min-width: 1024px) {
  section.two-column.maf-col-bg-full .row .column.maf-col-2 {
    align-items: flex-start;
  }
}
section.two-column.maf-col-bg-full.has-bg .row {
  padding-bottom: var(--sec-space);
}
section.two-column.vidpop .row {
  max-width: var(--grid-width);
}
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: var(--sec-space);
  padding-bottom: 3rem;
  text-align: left;
}
section.two-column.vidpop .row .column {
  justify-content: flex-start;
}
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%;
}
@media only screen and (min-width: 960px) {
  section.three-column .row {
    grid-template-columns: repeat(3, 1fr);
  }
}
section.three-column.full-imgs .row {
  align-items: stretch;
}
section.three-column.full-imgs .row .maf-content {
  height: 100%;
}
section.three-column.full-imgs .row .column .has-img {
  height: 100%;
  width: 100%;
}
section.three-column.full-imgs .row .column .has-img img {
  border-radius: 0.8rem;
  min-height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}
@media only screen and (min-width: 576px) {
  section.four-column .row {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media only screen and (min-width: 960px) {
  section.four-column .row {
    grid-template-columns: repeat(4, 1fr);
  }
}
section.divider {
  padding-top: 0;
}
section.page-content-section .is-simple-gallery {
  margin-bottom: 20px;
}
section.page-content-section .is-simple-gallery figure figcaption {
  display: none;
}
section.page-content-section div.cardbox article.card {
  width: 100%;
}
@media only screen and (min-width: 576px) {
  section.page-content-section div.cardbox article.card {
    width: 50%;
  }
}
@media only screen and (min-width: 1024px) {
  section.page-content-section div.cardbox article.card {
    width: 100%;
  }
}
section.page-content-section .header .maf-content {
  align-items: flex-start;
  color: rgb(40, 35, 30);
  text-align: left;
}
section.page-content-section .row {
  align-items: start;
}
@media only screen and (min-width: 960px) {
  section.page-content-section .row {
    grid-template-columns: 2fr 1fr;
  }
}
section.page-content-section .row .column {
  align-items: center;
  text-align: left;
}
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.portal-section.is-slider .flickity-slideshow {
  margin: 0 -1.6rem;
  width: calc(100% + 3.2rem);
}
section.portal-section.is-slider .flickity-slideshow .card {
  display: flex;
  flex: 0 0 auto;
  justify-content: center;
  margin-bottom: 0;
  min-height: 100%;
  padding: 0 1.6rem;
  width: 100%;
  z-index: 1;
}
@media only screen and (min-width: 768px) {
  section.portal-section.is-slider .flickity-slideshow .card {
    width: 50%;
  }
}
@media only screen and (min-width: 1280px) {
  section.portal-section.is-slider .flickity-slideshow .card {
    width: 33.333%;
  }
}
@media only screen and (min-width: 1440px) {
  section.portal-section.is-slider .flickity-slideshow .card {
    width: 25%;
  }
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item {
  background-color: rgb(255, 255, 255);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  border: 1px solid rgb(242, 242, 242);
  color: rgb(135, 82, 181);
  cursor: pointer;
  display: inline-block;
  font-size: 1.6rem;
  height: 100%;
  overflow: visible;
  opacity: 1;
  max-width: 320px;
  position: relative;
  text-align: center;
  text-decoration: none;
  transform: scale(1);
  transition: all 300ms ease-out;
  width: 100%;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: center;
  min-height: 544px;
  position: relative;
  transition: all 300ms ease-out;
  width: 100%;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .card-cats {
  color: rgb(40, 35, 30);
  display: inline-block;
  font-size: 1.4rem;
  font-weight: 700;
  padding-top: 15px;
  text-transform: uppercase;
  z-index: 1;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .tn {
  display: inline-block;
  flex: 0 0 auto;
  overflow: hidden;
  position: relative;
  transition: all 300ms ease-out;
  width: 100%;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .tn .tn-img {
  height: 100%;
  margin: 0 auto;
  -o-object-fit: cover;
     object-fit: cover;
  transform: scale(1);
  transform-origin: center;
  transition: all 600ms ease-out;
  width: 100%;
  z-index: 0;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .tn .maf-na {
  align-items: center;
  display: inline-flex;
  flex-direction: column;
  justify-content: center;
  left: 0;
  height: 100%;
  font-size: 2rem;
  padding: 20px;
  position: absolute;
  top: 0;
  width: 100%;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .tn .maf-na span, section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .tn .maf-na i {
  display: inline-block;
  flex: 0 0 auto;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .tn .maf-na span {
  text-align: center;
  width: 100%;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .tn .maf-na i {
  font-size: 2em;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .tn.no-img .maf-na {
  position: static;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .tn.square::after, section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .tn.fourthree::after, section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .tn.custom::after, section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .tn.show-all::after {
  content: "";
  display: table;
  padding-bottom: 100%;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .tn.square .tn-img, section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .tn.fourthree .tn-img, section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .tn.custom .tn-img, section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .tn.show-all .tn-img {
  left: 0;
  position: absolute;
  top: 0;
  transform: scale(1);
  min-width: 100%;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .tn.fourthree::after {
  padding-bottom: 75%;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .tn.static {
  overflow: visible;
  position: static;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .tn.static .tn-img {
  height: auto;
  max-width: 100%;
  -o-object-fit: scale-down;
     object-fit: scale-down;
  transform-origin: center bottom;
  width: auto;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .tn.static.no-img {
  min-height: 100px;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .tn.show-all::after {
  padding-bottom: 50%;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .tn.show-all .tn-img {
  -o-object-fit: contain;
     object-fit: contain;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .tn.custom::after {
  padding-bottom: 85%;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .info {
  align-items: center;
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  justify-content: flex-start;
  padding: 15px 20px;
  position: relative;
  transition: all 300ms ease-out;
  width: 100%;
  z-index: 1;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .title {
  align-items: flex-start;
  color: rgb(40, 35, 30);
  display: flex;
  font-family: "Archivo", sans-serif;
  font-size: 2rem;
  font-weight: 700;
  justify-content: center;
  line-height: 1.1;
  margin: 0;
  padding: 10px 0 3px 0;
  position: relative;
  text-transform: none;
  width: 100%;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .date {
  color: rgb(242, 242, 242);
  display: inline-flex;
  justify-content: center;
  line-height: 1;
  margin: auto 0 0 0;
  overflow: hidden;
  padding: 25px 0 5px;
  width: 100%;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .date time {
  display: inline-block;
  position: relative;
  text-transform: uppercase;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .date i {
  display: none;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .desc {
  color: inherit;
  display: inline-block;
  margin: auto 0 0 0;
  min-height: 130px;
  padding: 15px 0;
  width: 100%;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .desc p {
  margin-bottom: 0;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .attr {
  display: flex;
  margin-top: auto;
  padding: 10px 0;
  width: 100%;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .attr span {
  display: inline-block;
  flex: 1 1 auto;
  line-height: 1.2;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .card-button {
  background-color: transparent;
  border: 2px solid rgb(40, 35, 30);
  border-radius: 30px;
  color: rgb(40, 35, 30);
  font-size: 1.4rem;
  margin: auto 0 20px 0;
  min-width: 0;
  padding: 10px 20px;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item .portal-content .card-button::after {
  display: none;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item.no-link {
  cursor: default;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item.no-link .portal-content .info .card-button {
  display: none;
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item:hover, section.portal-section.is-slider .flickity-slideshow .card .portal-item:focus {
  transform: scale(1.01);
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item:hover .portal-content, section.portal-section.is-slider .flickity-slideshow .card .portal-item:focus .portal-content {
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item:hover .portal-content .tn .tn-img, section.portal-section.is-slider .flickity-slideshow .card .portal-item:focus .portal-content .tn .tn-img {
  transform: scale(1.05);
}
section.portal-section.is-slider .flickity-slideshow .card .portal-item:hover .portal-content .card-button, section.portal-section.is-slider .flickity-slideshow .card .portal-item:focus .portal-content .card-button {
  background-color: rgb(40, 35, 30);
  color: white;
}
section.blog-section.blog-detail .up-link {
  color: rgb(40, 35, 30);
  font-weight: 700;
  margin-top: 2em;
  text-decoration: none;
}
section.blog-section.blog-detail .pub-date {
  font-weight: 700;
}
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(40, 35, 30);
}
section.blog-section.blog-detail .blog-bar > div p a:hover, section.blog-section.blog-detail .blog-bar > div p a:focus {
  color: rgb(40, 35, 30);
}
section.blog-section.blog-detail .blog-bar > div.date {
  font-family: "Archivo", 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(130, 125, 120);
  font-weight: 700;
  margin-bottom: 1.8rem;
  text-align: left;
  width: 100%;
}
section.blog-section.blog-detail .cat-bar span {
  margin: 0 0.5rem;
}
section.blog-section.blog-detail .cat-bar span:first-child {
  margin-left: 0;
}
section.blog-section.blog-detail .is-faq {
  width: 100%;
}
section.blog-section.blog-detail .header .maf-content hr {
  border-color: rgb(40, 35, 30);
}
section.blog-section.blog-detail .header .maf-content .head-img {
  margin-bottom: 4rem;
  width: 100%;
}
section.blog-section.blog-detail .header .maf-content .head-img img {
  width: 100%;
}
section.blog-section.blog-detail .row .maf-content {
  max-width: 96rem;
}
section.portfolio-section div.portfolio-feed article.card {
  width: 100%;
}
@media only screen and (min-width: 768px) {
  section.portfolio-section div.portfolio-feed article.card {
    width: 50%;
  }
}
@media only screen and (min-width: 1152px) {
  section.portfolio-section div.portfolio-feed article.card {
    width: 33.333%;
  }
}
section.portfolio-section div.portfolio-feed article.card .portal-item {
  overflow: visible;
}
section.portfolio-section div.portfolio-feed article.card .portal-item .portal-content {
  overflow: visible;
}
section.portfolio-section div.portfolio-feed article.card .portal-item .portal-content .tn {
  background-color: transparent;
  overflow: visible;
}
section.portfolio-section div.portfolio-feed article.card .portal-item .portal-content .tn .hover-text div {
  max-width: 30rem;
}
section.portfolio-section div.portfolio-feed article.card .portal-item .portal-content .info {
  display: none;
}
section.portfolio-section div.portfolio-feed article.card .portal-item:hover .portal-content .tn .tn-img, section.portfolio-section div.portfolio-feed article.card .portal-item:focus .portal-content .tn .tn-img {
  filter: grayscale(1) brightness(0.5);
}
section.portfolio-section.portfolio-top-level.maf-h-h .row .column {
  padding-top: 4rem;
}
section.portfolio-section.portfolio-highlight div.portfolio-feed {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-template-rows: repeat(2, 1fr);
  max-width: 100rem;
}
section.portfolio-section.portfolio-highlight div.portfolio-feed article.card {
  padding: 0;
  width: 100%;
}
section.portfolio-section.portfolio-highlight div.portfolio-feed article.card .portal-item .portal-content .tn {
  background-color: black;
}
section.portfolio-section.portfolio-highlight div.portfolio-feed article.card .portal-item .portal-content .tn .tn-img {
  border: white solid 5px;
  filter: none;
  opacity: 1;
  transform: scale(1);
}
section.portfolio-section.portfolio-highlight div.portfolio-feed article.card:nth-child(1) {
  grid-column: 1/3;
  grid-row: 1/3;
}
section.portfolio-section.portfolio-highlight div.portfolio-feed article.card:nth-child(2) {
  grid-column: 3/5;
  grid-row: 1/2;
}
section.portfolio-section.portfolio-highlight div.portfolio-feed article.card:nth-child(2) .portal-item .portal-content .tn::after {
  padding-bottom: 50%;
}
section.portfolio-section.portfolio-highlight .row .column .flickity-slideshow {
  border: 1px solid rgb(40, 35, 30);
  margin-top: 72px;
  width: 100%;
}
section.portfolio-section.portfolio-highlight .row .column .flickity-slideshow .ss-slide {
  aspect-ratio: 1/0.8189;
  width: 100%;
}
section.portfolio-section.portfolio-highlight .row .column.maf-col-1 {
  padding-bottom: 70px;
}
section.portfolio-section.portfolio-highlight .footer .maf-content .button {
  margin: 0;
}
section.portfolio-section.portfolio-detail h1.portfolio-title {
  font-size: 4.4rem;
  color: rgb(40, 35, 30);
}
@media only screen and (min-width: 576px) {
  section.portfolio-section.portfolio-detail h1.portfolio-title {
    font-size: 5.4rem;
  }
}
section.portfolio-section.portfolio-detail p {
  max-width: 96rem;
}
section.portfolio-section.portfolio-detail p.intro {
  font-size: 2rem;
  margin-bottom: 0.5rem;
  text-transform: uppercase;
}
section.portfolio-section.portfolio-detail p.attr {
  color: rgb(40, 35, 30);
  font-size: 1.8rem;
  margin-bottom: 15px;
}
section.portfolio-section.portfolio-detail p.attr span {
  color: rgb(30, 30, 30);
  font-weight: 700;
}
section.portfolio-section.portfolio-detail p.label {
  font-size: 1.8rem;
  font-weight: 700;
  margin-bottom: 0;
}
section.portfolio-section.portfolio-detail p.label.desc {
  margin-top: 30px;
}
section.portfolio-section.portfolio-detail .navigation-bar {
  display: flex;
  justify-content: center;
  margin: 50px auto 0 auto;
  max-width: var(--grid-width);
  padding: 0 1.6rem;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  section.portfolio-section.portfolio-detail .navigation-bar {
    left: 50%;
    margin: 0 auto;
    position: absolute;
    top: 8rem;
    transform: translateX(-50%);
  }
}
section.portfolio-section.portfolio-detail .navigation-bar .item-nav {
  background-color: rgb(130, 125, 120);
  border-radius: 50%;
  display: inline-block;
  height: 50px;
  line-height: 1;
  opacity: 1;
  overflow: hidden;
  position: relative;
  width: 50px;
  z-index: 1;
}
section.portfolio-section.portfolio-detail .navigation-bar .item-nav::before {
  background-color: rgb(40, 35, 30);
  border-radius: 50%;
  content: "";
  height: 150%;
  left: 100%;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  transition: all 300ms ease-out;
  width: 150%;
}
section.portfolio-section.portfolio-detail .navigation-bar .item-nav::after {
  border-top: 8px solid transparent;
  border-bottom: 8px solid transparent;
  border-right: 12px solid rgb(255, 255, 255);
  content: "";
  display: inline-block;
  height: 0;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-62%, -50%);
  transform-origin: center;
  transition: transform 300ms ease-out;
  width: 0;
  z-index: 2;
}
section.portfolio-section.portfolio-detail .navigation-bar .item-nav.next {
  margin-left: auto;
  transform: rotate(180deg);
}
section.portfolio-section.portfolio-detail .navigation-bar .item-nav.previous {
  margin-right: auto;
}
section.portfolio-section.portfolio-detail .navigation-bar .item-nav:hover::before, section.portfolio-section.portfolio-detail .navigation-bar .item-nav:focus::before {
  left: 0;
}
section.portfolio-section.portfolio-detail .navigation-bar .item-nav:hover::after, section.portfolio-section.portfolio-detail .navigation-bar .item-nav:focus::after {
  transform: translate(-110%, -50%);
}
section.portfolio-section.portfolio-detail .images-feed {
  max-width: 110rem;
}
section.portfolio-section.portfolio-detail .images-feed .image {
  display: inline-block;
  line-height: 1;
  width: 100%;
}
section.portfolio-section.portfolio-detail .images-feed .image > a {
  display: inline-block;
  opacity: 1;
}
section.portfolio-section.portfolio-detail .images-feed .image figure {
  width: 100%;
}
section.portfolio-section.portfolio-detail .images-feed .image figure figcaption {
  display: none;
}
section.portfolio-section.portfolio-detail .images-feed .image.video {
  max-width: 80rem;
}
section.portfolio-section.portfolio-detail .images-feed .image.video.square {
  max-width: 60rem;
}
section.portfolio-section.portfolio-detail .images-feed .image.video div {
  background-color: rgb(30, 30, 30);
  position: relative;
}
section.portfolio-section.portfolio-detail .images-feed .image.video div img {
  display: inline-block;
  transition: opacity 300ms ease-out;
}
section.portfolio-section.portfolio-detail .images-feed .image.video div .maf-vp {
  left: 50%;
  max-width: 100px;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 33.333%;
}
section.portfolio-section.portfolio-detail .images-feed .image.video div .maf-vp::after {
  content: "";
  display: table;
  padding-bottom: 100%;
  width: 100%;
}
section.portfolio-section.portfolio-detail .images-feed .image.video div .maf-vp img {
  display: inline-block;
  flex: 0 1 auto;
  filter: drop-shadow(0 0 8px rgba(255, 255, 255, 0.3));
  height: 100%;
  left: 50%;
  position: absolute;
  top: 50%;
  transition: all 300ms ease-out;
  transform: translate(-50%, -50%);
  width: 100%;
}
section.portfolio-section.portfolio-detail .images-feed .image.video div:hover > img {
  opacity: 0.7;
}
section.portfolio-section.portfolio-detail .images-feed .image.video div:hover .maf-vp {
  filter: drop-shadow(0 0 16px rgba(255, 255, 255, 0.7));
}
section.portfolio-section.portfolio-detail .row.cols2 {
  flex-direction: column-reverse;
}
@media only screen and (min-width: 1024px) {
  section.portfolio-section.portfolio-detail .row.cols2 {
    flex-direction: row;
  }
}
section.portfolio-section.portfolio-detail .row.cols2 .column .maf-content {
  align-items: center;
  text-align: center;
}
@media only screen and (min-width: 1024px) {
  section.portfolio-section.portfolio-detail .row.cols2 .column .maf-content {
    align-items: flex-start;
    text-align: left;
  }
}
section.portfolio-section.portfolio-detail .footer .maf-content {
  align-items: center;
}
section.portfolio-section.cat-list .row {
  padding: 0;
}
section.portfolio-section.cat-list .row .column {
  padding: 30px 0;
}
section.portfolio-section.cat-list.pview .row .header .maf-content {
  padding-top: 50px;
}
section.portfolio-section.cat-list.pview .row .column {
  padding-bottom: 0;
}
section.portfolio-section.port-list .catbox article.card {
  width: 100%;
}
@media only screen and (min-width: 576px) {
  section.portfolio-section.port-list .catbox article.card {
    width: 50%;
  }
}
@media only screen and (min-width: 768px) {
  section.portfolio-section.port-list .catbox article.card {
    width: 33.333%;
  }
}
@media only screen and (min-width: 960px) {
  section.portfolio-section.port-list .catbox article.card {
    width: 25%;
  }
}
section.portfolio-section.port-list .catbox article.card .portal-item .portal-content .info {
  z-index: 1;
}
section.portfolio-section.port-list .catbox article.card .portal-item .portal-content .info::after {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0.3) 50%, rgba(0, 0, 0, 0));
  bottom: 0;
  content: "";
  display: inline-block;
  height: 33%;
  left: 0;
  position: absolute;
  transition: height 300ms ease-out;
  width: 100%;
  z-index: -1;
}
section.portfolio-section.port-list .catbox article.card .portal-item:hover .portal-content .info::after, section.portfolio-section.port-list .catbox article.card .portal-item:focus .portal-content .info::after {
  height: 50%;
}
section.portfolio-section.port-list .row {
  padding: 0;
}
section.portfolio-section.port-list .row .column {
  padding: 30px 0;
}
section.event-section.is-hero .row .column {
  text-align: center;
}
section.event-section.event-highlight .card-box-slider {
  width: 100%;
}
section.event-section.event-highlight .card-box-slider article.card {
  line-height: 0;
  padding: 1.5rem;
  width: 100%;
}
@media only screen and (min-width: 576px) {
  section.event-section.event-highlight .card-box-slider article.card {
    padding: 3rem;
  }
}
section.event-section.event-highlight .card-box-slider .flickity-page-dots {
  bottom: -10px;
  display: block;
  margin: 0;
  padding: 0;
}
section.event-section.event-highlight .card-box-slider .flickity-page-dots .dot {
  background: rgba(255, 255, 255, 0.4);
  border: 0;
  border-radius: 0;
  height: 16px;
  margin: 0 5px;
  opacity: 1;
  position: relative;
  width: 17px;
}
section.event-section.event-highlight .card-box-slider .flickity-page-dots .dot::before {
  background-color: white;
  border-radius: 0;
  content: "";
  display: inline-block;
  height: 0;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  transition: all 300ms ease-out;
  width: 0;
}
section.event-section.event-highlight .card-box-slider .flickity-page-dots .dot.is-selected::before {
  height: 100%;
  width: 100%;
}
section.event-section.event-highlight div.cardbox article.card .portal-item .portal-content .date, section.event-section.event-highlight aside.cardbox article.card .portal-item .portal-content .date {
  color: rgb(40, 35, 30);
}
section.event-section.event-highlight div.cardbox article.card .portal-item .portal-content .button, section.event-section.event-highlight aside.cardbox article.card .portal-item .portal-content .button {
  background-color: rgb(40, 35, 30);
  border-color: rgb(40, 35, 30);
}
section.event-section.event-highlight div.cardbox article.card .portal-item:hover .portal-content .button, section.event-section.event-highlight div.cardbox article.card .portal-item:focus .portal-content .button, section.event-section.event-highlight aside.cardbox article.card .portal-item:hover .portal-content .button, section.event-section.event-highlight aside.cardbox article.card .portal-item:focus .portal-content .button {
  background-color: transparent;
  color: rgb(40, 35, 30);
}
section.event-section.event-highlight .row .header .maf-content {
  max-width: 850px;
}
section.event-section.event-highlight.maf-h-f .row .column {
  padding-bottom: 0;
}
section.event-section.event-portal .header .maf-content p {
  max-width: 510px;
}
section.event-section.event-portal .header .cats {
  margin-top: 24px;
  max-width: 1035px;
  text-align: center;
}
section.event-section.event-portal .header .cats a {
  background-color: transparent;
  border: 6px solid rgb(70, 65, 60);
  color: rgb(40, 35, 30);
  display: inline-block;
  font-size: 1.6rem;
  font-weight: 400;
  margin: 6px;
  min-width: 80px;
  opacity: 1;
  padding: 5px;
  text-align: center;
  text-decoration: none;
}
section.event-section.event-portal .header .cats a:hover, section.event-section.event-portal .header .cats a:focus {
  background-color: rgb(70, 65, 60);
  color: rgb(255, 255, 255);
}
section.event-section.event-portal .header .cats a.active {
  background-color: rgb(70, 65, 60);
  color: rgb(255, 255, 255);
}
section.event-section.event-portal .header .cats a.active:hover, section.event-section.event-portal .header .cats a.active:focus {
  background-color: transparent;
  color: rgb(40, 35, 30);
}
section.event-section.event-detail .event-thumb img {
  width: 100%;
}
section.event-section.event-detail h1::after, section.event-section.event-detail .h1-style::after, section.event-section.event-detail h2::after, section.event-section.event-detail .h2-style::after, section.event-section.event-detail h3::after, section.event-section.event-detail .h3-style::after, section.event-section.event-detail h4::after, section.event-section.event-detail .h4-style::after, section.event-section.event-detail h5::after, section.event-section.event-detail .h5-style::after, section.event-section.event-detail h6.h6-style::after {
  width: 100%;
}
section.event-section.event-detail .title {
  margin-bottom: 15px;
}
section.event-section.event-detail .main-img {
  margin-bottom: 1em;
}
section.event-section.event-detail p.date {
  font-family: "Archivo", sans-serif;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.2;
}
section.event-section.event-detail p.date time span {
  font-weight: 400;
}
section.event-section.event-detail p.date + hr {
  margin: 0 0 40px 0;
}
section.event-section.event-detail p.venue-details > span {
  display: inline-block;
  width: 100%;
}
section.event-section.event-detail p.venue-details > span span {
  font-weight: 400;
  margin-right: 1rem;
}
section.event-section.event-detail p.tour-full-date {
  font-weight: 700;
}
section.event-section.event-detail p.tour-full-date a {
  display: inline-block;
  padding-right: 20px;
  position: relative;
}
section.event-section.event-detail p.tour-full-date a::after {
  border: 2px solid rgb(130, 125, 120);
  border-top: 0;
  border-right: 0;
  content: "";
  display: inline-block;
  height: 8px;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translate(0, -75%) rotate(-45deg);
  transition: transform 300ms ease-out;
  width: 8px;
}
section.event-section.event-detail .desc-l {
  width: 100%;
}
section.event-section.event-detail .site-link {
  font-size: 1.5rem;
  font-weight: 700;
}
@media only screen and (min-width: 576px) {
  section.event-section.event-detail .site-link {
    font-size: 1.6rem;
  }
}
@media only screen and (min-width: 768px) {
  section.event-section.event-detail .site-link {
    font-size: 1.8rem;
  }
}
section.event-section.event-detail .price-details {
  margin-bottom: 20px;
}
section.event-section.event-detail .is-map {
  min-height: 300px;
}
section.event-section.event-detail .tickets {
  background-color: white;
  padding: 0 10px 10px 10px;
  width: 100%;
}
section.event-section.event-detail .tickets .ticket {
  padding-top: 10px;
}
section.event-section.event-detail .tickets .ticket .ticket-name {
  background-color: rgb(130, 125, 120);
  color: rgb(255, 255, 255);
  cursor: pointer;
  font-size: 1.8rem;
  font-weight: 700;
  outline: none;
  padding: 5px 25px 5px 10px;
  position: relative;
}
section.event-section.event-detail .tickets .ticket .ticket-name::after {
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  border-left: 7px solid white;
  content: "";
  height: 0;
  right: 10px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  transition: transform 300ms ease-out;
  width: 0;
}
section.event-section.event-detail .tickets .ticket .ticket-name:hover, section.event-section.event-detail .tickets .ticket .ticket-name:focus {
  background-color: rgb(255, 90, 0);
}
section.event-section.event-detail .tickets .ticket .ticket-name.open::after {
  transform: translateY(-50%) rotate(90deg);
}
section.event-section.event-detail .tickets .ticket .ticket-options {
  display: none;
  padding: 5px 0 10px 0;
}
section.event-section.event-detail .tickets .ticket .ticket-options .option {
  align-items: flex-start;
  border-top: 1px solid rgb(230, 225, 220);
  display: flex;
  flex-wrap: wrap;
  margin: 0 10px;
  padding: 15px 0 25px 0;
}
section.event-section.event-detail .tickets .ticket .ticket-options .option:first-child {
  border-top: 0;
}
section.event-section.event-detail .tickets .ticket .ticket-options .option .description {
  flex: 0 0 auto;
  padding-top: 5px;
  width: calc(100% - 100px);
}
section.event-section.event-detail .tickets .ticket .ticket-options .option .description .name {
  font-size: 1.8rem;
}
section.event-section.event-detail .tickets .ticket .ticket-options .option .description .price {
  display: flex;
  font-size: 1.8rem;
  padding: 5px 0;
}
section.event-section.event-detail .tickets .ticket .ticket-options .option .description .price > div {
  padding-right: 15px;
}
section.event-section.event-detail .tickets .ticket .ticket-options .option .description .price > div.original {
  text-decoration: line-through;
}
section.event-section.event-detail .tickets .ticket .ticket-options .option .description .price > div.actual {
  color: rgb(40, 35, 30);
  font-weight: 700;
}
section.event-section.event-detail .tickets .ticket .ticket-options .option .control {
  flex: 0 0 auto;
  padding-top: 5px;
  width: 100px;
}
section.event-section.event-detail .tickets .ticket .ticket-options .option .more {
  display: inline-block;
  flex: 0 0 auto;
  padding-top: 5px;
  width: 100%;
}
section.event-section.event-detail .tickets .ticket .ticket-options .option .more p {
  margin-bottom: 10px;
}
section.event-section.event-detail .tickets .ticket .ticket-options .option .more .discount {
  background-color: rgb(255, 90, 0);
  color: rgb(255, 255, 255);
  display: inline-block;
  margin-top: 5px;
  padding: 5px 15px;
  text-transform: uppercase;
  width: auto;
}
section.event-section.event-detail .tickets .ticket .ticket-options .extras {
  background-color: rgb(230, 225, 220);
  padding: 10px 0 0 0;
}
section.event-section.event-detail .tickets .ticket .ticket-options .extras .etitle {
  border-bottom: 2px solid rgb(130, 125, 120);
  color: rgb(130, 125, 120);
  font-size: 1.8rem;
  font-weight: 700;
  margin: 0 10px;
  padding: 5px 0;
  text-transform: uppercase;
}
section.event-section.event-detail .tickets .ticket .ticket-options .extras .option {
  border-color: white;
}
section.event-section.event-detail .tickets .ticket .ticket-options .extras .option:nth-child(2) {
  border-top: 0;
}
section.event-section.event-detail .ticket-actions {
  background-color: white;
  display: flex;
  width: 100%;
}
section.event-section.event-detail .ticket-actions .button {
  border: 0;
  margin: 0;
  padding: 20px;
  text-transform: none;
  width: 50%;
}
section.event-section.event-detail .ticket-actions .button.clear {
  color: rgb(130, 125, 120);
  justify-content: flex-start;
}
section.event-section.event-detail .ticket-actions .button.clear span {
  padding-right: 22px;
  position: relative;
}
section.event-section.event-detail .ticket-actions .button.clear span::before, section.event-section.event-detail .ticket-actions .button.clear span::after {
  background-color: rgb(130, 125, 120);
  content: "";
  height: 3px;
  right: 0;
  position: absolute;
  top: 54%;
  transform: translateY(-50%) rotate(45deg);
  transition: background-color 300ms ease-out;
  width: 13px;
}
section.event-section.event-detail .ticket-actions .button.clear span::after {
  transform: translateY(-50%) rotate(-45deg);
}
section.event-section.event-detail .ticket-actions .button.clear:hover, section.event-section.event-detail .ticket-actions .button.clear:focus {
  background-color: rgb(130, 125, 120);
  color: rgb(255, 255, 255);
}
section.event-section.event-detail .ticket-actions .button.clear:hover span::before, section.event-section.event-detail .ticket-actions .button.clear:hover span::after, section.event-section.event-detail .ticket-actions .button.clear:focus span::before, section.event-section.event-detail .ticket-actions .button.clear:focus span::after {
  background-color: rgb(255, 255, 255);
}
section.event-section.event-detail .ticket-actions .button.buy {
  background-color: rgb(70, 65, 60);
  color: white;
}
section.event-section.event-detail .ticket-actions .button.buy span {
  padding-right: 25px;
  position: relative;
}
section.event-section.event-detail .ticket-actions .button.buy span::after {
  border-top: 6px solid transparent;
  border-bottom: 6px solid transparent;
  border-left: 9px solid white;
  content: "";
  height: 0;
  right: 0;
  position: absolute;
  top: 53%;
  transform: translateY(-50%);
  transition: right 300ms ease-out;
  width: 0;
}
section.event-section.event-detail .ticket-actions .button.buy:hover, section.event-section.event-detail .ticket-actions .button.buy:focus {
  background-color: rgb(130, 125, 120);
  color: rgb(255, 255, 255);
}
section.event-section.event-detail .ticket-actions .button.buy:hover span::after, section.event-section.event-detail .ticket-actions .button.buy:focus span::after {
  right: -3px;
}
section.event-section.event-detail .header .maf-content .info {
  border: 1px solid rgb(40, 35, 30);
  border-right: 0;
  border-left: 0;
  display: flex;
  flex-wrap: wrap;
  margin-top: 20px;
  padding: 9px 0;
  width: 100%;
}
section.event-section.event-detail .header .maf-content .info > span {
  border-left: 1px solid rgb(40, 35, 30);
  display: inline-block;
  flex: 0 0 auto;
  font-feature-settings: "lnum" 1;
  max-width: 100%;
  padding: 3px 15px;
  text-transform: uppercase;
}
section.event-section.event-detail .row .column .maf-content {
  align-items: flex-start;
  text-align: left;
}
section.event-section.event-detail .row .column.maf-col-2 .maf-content .event-s-link i {
  color: inherit;
  font-size: 2rem;
  vertical-align: middle;
}
section.event-section.event-detail .row .column.maf-col-2 .maf-content .event-s-link a {
  color: inherit;
}
section.event-section.event-detail .row .column.maf-col-2 .maf-content .event-s-link a:hover, section.event-section.event-detail .row .column.maf-col-2 .maf-content .event-s-link a:focus {
  color: rgb(40, 35, 30);
}
section.event-section.event-detail .row .column.maf-col-2 .maf-content .embed-map {
  display: inline-block;
  padding-bottom: 75%;
  position: relative;
  width: 100%;
}
section.event-section.event-detail .row .column.maf-col-2 .maf-content .embed-map iframe {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
section.event-section.event-detail .row .column.maf-dates {
  padding-top: 60px;
  text-align: left;
}
section.event-section.event-detail .row .column.maf-dates .maf-content {
  align-items: flex-start;
}
section.event-section.event-detail .row .column.maf-dates .maf-content p {
  max-width: 850px;
}
section.event-section.event-detail .row .column.maf-dates .maf-content .course-dates {
  border-bottom: 1px solid rgb(40, 35, 30);
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}
section.event-section.event-detail .row .column.maf-dates .maf-content .course-dates > div {
  align-items: center;
  align-content: center;
  border-top: 1px solid rgb(40, 35, 30);
  display: flex;
  flex: 0 0 auto;
  justify-content: flex-start;
  padding: 8px 0;
  width: 100%;
}
@media only screen and (min-width: 960px) {
  section.event-section.event-detail .row .column.maf-dates .maf-content .course-dates > div {
    width: 50%;
  }
}
section.event-section.event-detail .row .column.maf-dates .maf-content .course-dates > div > span {
  display: inline-block;
  flex: 0 0 auto;
  padding: 10px 15px;
}
section.event-section.event-detail .row .column.maf-dates .maf-content .course-dates > div > span:first-child {
  border-left: 1px solid rgb(40, 35, 30);
  font-feature-settings: "lnum" 1;
  font-size: 1.6rem;
  min-width: 160px;
  text-transform: uppercase;
}
@media only screen and (min-width: 576px) {
  section.event-section.event-detail .row .column.maf-dates .maf-content .course-dates > div > span:first-child {
    font-size: 1.8rem;
    min-width: 200px;
  }
}
section.event-section.event-detail .row .column.maf-dates .maf-content .course-dates > div > span:last-child .button {
  margin: 0;
}
section.event-section.event-detail .row .column.maf-dates .maf-content .show-tour-dates {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -25px;
  width: calc(100% + 50px);
}
section.event-section.event-detail .row .column.maf-dates .maf-content .show-tour-dates .tour-date {
  display: inline-block;
  flex: 0 0 auto;
  padding: 25px;
  text-align: left;
  width: 100%;
}
@media only screen and (min-width: 576px) {
  section.event-section.event-detail .row .column.maf-dates .maf-content .show-tour-dates .tour-date {
    width: 50%;
  }
}
@media only screen and (min-width: 1280px) {
  section.event-section.event-detail .row .column.maf-dates .maf-content .show-tour-dates .tour-date {
    width: 33.333%;
  }
}
section.event-section.event-detail .row .column.maf-dates .maf-content .show-tour-dates .tour-date .td-content {
  background-color: rgb(40, 35, 30);
  display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: center;
  padding: 18px 20px;
}
section.event-section.event-detail .row .column.maf-dates .maf-content .show-tour-dates .tour-date .td-content .date {
  font-size: 1.4rem;
}
section.event-section.event-detail .row .column.maf-dates .maf-content .show-tour-dates .tour-date .td-content .venue .venue-name {
  font-weight: 700;
  margin-right: 20px;
}
section.event-section.event-detail .row .column.maf-dates .maf-content .show-tour-dates .tour-date .td-content .link a {
  color: rgb(130, 125, 120);
  font-size: 1.4rem;
  font-weight: 700;
}
section.event-section.event-detail .row .column.maf-dates .maf-content .show-tour-dates .tour-date.ended {
  opacity: 0.7;
}
section.event-section.event-detail .row .column.maf-dates .maf-content .show-tour-dates .tour-date.hide {
  display: none;
}
section.event-section.event-detail.event-dates .row .column {
  padding-bottom: 0;
}
section.event-section.event-gallery {
  text-align: center;
}
section.event-section.event-gallery .row .column.maf-col-1 {
  padding-top: 1.6rem;
}
section.event-section.exhibitor-portal div.cardbox article.card .portal-item, section.event-section.exhibitor-portal aside.cardbox article.card .portal-item {
  border-radius: 1em;
}
section.event-section.exhibitor-portal div.cardbox article.card .portal-item .portal-content, section.event-section.exhibitor-portal aside.cardbox article.card .portal-item .portal-content {
  align-items: flex-start;
  padding: 0 7% 7% 7%;
}
section.event-section.exhibitor-portal div.cardbox article.card .portal-item .portal-content .info, section.event-section.exhibitor-portal aside.cardbox article.card .portal-item .portal-content .info {
  align-items: flex-start;
  font-size: 0.8em;
  padding: 0;
}
section.event-section.exhibitor-portal div.cardbox article.card .portal-item .portal-content .title, section.event-section.exhibitor-portal aside.cardbox article.card .portal-item .portal-content .title {
  color: var(--card-colour);
  font-size: 1.5em;
  font-weight: 400;
  margin-bottom: 0.9em;
}
section.event-section.exhibitor-portal div.cardbox article.card .portal-item .portal-content .social-icons, section.event-section.exhibitor-portal aside.cardbox article.card .portal-item .portal-content .social-icons {
  --icon-colour: var(--card-colour);
  --icon-size: 3.4rem;
  --text-colour: var(--card-bg);
  --text-size: 2rem;
  margin: 0.5em 0 2em 0;
}
section.event-section.exhibitor-portal div.cardbox article.card .portal-item .portal-content .social-icons a, section.event-section.exhibitor-portal aside.cardbox article.card .portal-item .portal-content .social-icons a {
  margin-right: 0.25em;
}
section.event-section.exhibitor-portal div.cardbox article.card .portal-item .portal-content .button, section.event-section.exhibitor-portal aside.cardbox article.card .portal-item .portal-content .button {
  background-color: transparent;
  border: 0.1rem solid currentColor;
  border-radius: 0;
  color: var(--card-colour);
  font-size: inherit;
  font-weight: 700;
  min-height: 0;
  min-width: 0;
  transition: all 300ms ease-out;
  text-transform: uppercase;
  width: 100%;
}
section.event-section.exhibitor-portal div.cardbox article.card .portal-item .portal-content .button:before, section.event-section.exhibitor-portal div.cardbox article.card .portal-item .portal-content .button:after, section.event-section.exhibitor-portal aside.cardbox article.card .portal-item .portal-content .button:before, section.event-section.exhibitor-portal aside.cardbox article.card .portal-item .portal-content .button:after {
  display: none;
}
section.event-section.exhibitor-portal div.cardbox article.card .portal-item .portal-content .button:hover, section.event-section.exhibitor-portal div.cardbox article.card .portal-item .portal-content .button:focus, section.event-section.exhibitor-portal aside.cardbox article.card .portal-item .portal-content .button:hover, section.event-section.exhibitor-portal aside.cardbox article.card .portal-item .portal-content .button:focus {
  background-color: var(--card-colour);
  color: var(--card-bg);
  transition: all 300ms ease-out;
}
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(40, 35, 30);
}
section.concertina-section .row {
  max-width: 1100px;
}
section.concertina-section .row .column {
  padding-top: 40px;
  padding-bottom: 40px;
}
section.concertina-section .row .column .concertina .conc-con {
  display: none;
  width: 100%;
}
section.concertina-section .row .column .concertina .conc-action {
  border-bottom: 1px solid rgb(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(130, 125, 120);
  cursor: pointer;
  font-family: "Archivo", 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(130, 125, 120);
  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(40, 35, 30);
}
section.concertina-section .row .column .concertina .conc-action button:hover::after, section.concertina-section .row .column .concertina .conc-action button:focus::after {
  border-color: rgb(40, 35, 30);
  right: 0;
}
section.concertina-section .row .column .concertina .conc-action button.open {
  margin: 0 0 10px 10px;
  padding: 5px 0 5px 20px;
}
section.concertina-section .row .column .concertina .conc-action button.open::after {
  left: 4px;
  right: auto;
  transform: translateY(-50%) rotate(-135deg);
}
section.concertina-section .row .column .concertina .conc-action button.open:hover::after, section.concertina-section .row .column .concertina .conc-action button.open:focus::after {
  left: 0;
}
section.concertina-section.maf-h-h .row .column {
  padding-top: var(--space);
}
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(130, 125, 120);
  background-color: rgb(130, 125, 120);
  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(130, 125, 120);
}
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(40, 35, 30);
  padding-right: 5px;
}
@media only screen and (min-width: 768px) {
  section.shop-section div.cardbox > div.list-view .list-row > div .label {
    display: none;
  }
}
section.shop-section div.cardbox > div.list-view .list-row > div .button {
  font-size: 1.2rem;
  margin: 0;
  min-width: 110px;
  padding: 10px 15px;
}
section.shop-section div.cardbox > div.list-view .list-row:first-child {
  background-color: rgb(40, 35, 30);
  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 .header {
  align-items: flex-start;
}
section.shop-section .header .maf-content {
  align-items: flex-start;
  text-align: left;
}
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: 400;
  opacity: 1;
  margin: 6px;
  padding: 6px 11px;
  text-decoration: none;
}
section.shop-section > .filter .filter-button:hover, section.shop-section > .filter .filter-button:focus, section.shop-section > .filter .filter-button.active {
  background-color: transparent;
  color: rgb(135, 82, 181);
}
section.shop-section.product-list .filter-bar {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 0 auto;
  max-width: 1500px;
  padding: 30px var(--gutter);
  width: 100%;
}
section.shop-section.product-list .filter-bar > div {
  display: inline-block;
}
section.shop-section.product-list .filter-bar > div.label {
  min-width: 60px;
}
@media only screen and (min-width: 768px) {
  section.shop-section.product-list .filter-bar > div.label {
    min-width: 0;
  }
}
section.shop-section.product-list .filter-bar > div.filter {
  margin: 10px;
  min-width: 250px;
  text-align: center;
}
section.shop-section.product-list .filter-bar > div.filter .select {
  width: 250px;
}
section.shop-section.product-list .sort-bar {
  background-color: rgb(255, 255, 255);
  border-top: 1px solid #9e9e9e;
  border-bottom: 1px solid #9e9e9e;
  width: 100%;
}
section.shop-section.product-list .sort-bar > div {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  margin: 0 auto;
  max-width: 1500px;
  padding: 15px var(--gutter);
}
section.shop-section.product-list .sort-bar > div > div {
  align-items: center;
  display: flex;
  justify-content: flex-start;
  padding: 5px 20px;
}
section.shop-section.product-list .sort-bar > div > div > * {
  padding: 0 5px;
}
section.shop-section.product-list .sort-bar > div > div > *:first-child {
  padding-left: 0;
}
section.shop-section.product-list .sort-bar > div > div .label {
  font-size: 1.4rem;
  font-weight: 700;
  white-space: nowrap;
}
section.shop-section.product-list .sort-bar > div > div a {
  line-height: 1;
  margin-top: 2px;
  opacity: 1;
  outline: none;
  text-decoration: none;
}
section.shop-section.product-list .sort-bar > div > div a:hover, section.shop-section.product-list .sort-bar > div > div a:focus, section.shop-section.product-list .sort-bar > div > div a.active {
  color: rgb(130, 125, 120);
}
section.shop-section.product-list .sort-bar > div > div a i {
  font-size: 3rem;
}
section.shop-section.product-list .sort-bar > div > div .select {
  border: 1px solid #9e9e9e;
  border-radius: 0;
  height: 42px;
  margin: 0 5px;
  min-width: 60px;
  padding: 0 10px 0 0;
}
section.shop-section.product-list .sort-bar > div > div .select select {
  color: rgb(40, 35, 30);
  font-size: 1.4rem;
  font-weight: 700;
  padding: 10px 8px;
}
section.shop-section.product-list .sort-bar > div > div .select::before {
  width: 30px;
}
section.shop-section.product-list .sort-bar > div > div .select::after {
  height: 8px;
  right: 6px;
  top: 48%;
  width: 8px;
}
section.shop-section.product-list .sort-bar > div > div .select:hover, section.shop-section.product-list .sort-bar > div > div .select:focus-within {
  border-color: rgb(130, 125, 120);
}
section.shop-section.product-list .sort-bar > div > div .select:hover::after, section.shop-section.product-list .sort-bar > div > div .select:focus-within::after {
  border-color: rgb(130, 125, 120);
  top: 53%;
}
section.shop-section.product-list .featured {
  align-items: flex-start;
  border: 1px solid rgb(30, 30, 30);
  font-size: 2.2rem;
  margin-bottom: 8rem;
  text-align: left;
}
section.shop-section.product-list .featured h2 {
  background-color: rgb(130, 125, 120);
  border-bottom: 1px solid rgb(30, 30, 30);
  margin: 0;
}
section.shop-section.product-list .featured .name, section.shop-section.product-list .featured .price {
  font-size: 4.4rem;
  font-family: "Archivo", sans-serif;
}
@media only screen and (min-width: 576px) {
  section.shop-section.product-list .featured .name, section.shop-section.product-list .featured .price {
    font-size: 5.4rem;
  }
}
section.shop-section.product-list .featured .price {
  color: rgb(70, 65, 60);
}
section.shop-section.product-list .featured .price .sold {
  color: rgb(30, 30, 30);
}
section.shop-section.product-list .featured .row {
  padding: 0.8rem;
}
@media only screen and (min-width: 576px) {
  section.shop-section.product-list .featured .row {
    padding: 1.6rem;
  }
}
section.shop-section.product-list .featured .row .column {
  padding: 0.8rem;
  text-align: left;
}
@media only screen and (min-width: 576px) {
  section.shop-section.product-list .featured .row .column {
    padding: 1.6rem;
  }
}
section.shop-section.product-list div.cardbox.list-view {
  width: 100%;
}
section.shop-section.product-list.associated {
  border: 0;
}
section.shop-section.product-list.associated .row .column {
  padding-top: 40px;
}
section.shop-section.product-list.maf-h-h .row .column {
  padding-top: 5rem;
}
section.shop-section.product-detail .prod-img img {
  border: 0.1rem solid rgb(30, 30, 30);
}
section.shop-section.product-detail .image-browser {
  display: flex;
  flex-direction: column;
  width: 100%;
}
section.shop-section.product-detail .image-browser .image-viewer {
  flex: 1 1 auto;
  height: calc(100% - 130px);
  position: relative;
}
section.shop-section.product-detail .image-browser .image-viewer img {
  display: inline-block;
  height: auto;
  width: 100%;
}
section.shop-section.product-detail .image-browser .image-viewer .image-no {
  background-color: rgba(0, 0, 0, 0.7);
  border-radius: 30px 0 0 0;
  bottom: 0;
  color: rgb(255, 255, 255);
  font-family: "Archivo", sans-serif;
  font-size: 1.8rem;
  padding: 10px 20px 10px 30px;
  position: absolute;
  right: 0;
}
section.shop-section.product-detail .image-browser .image-viewer .image-no i {
  font-size: 2rem;
  margin-right: 8px;
  vertical-align: -10%;
}
section.shop-section.product-detail .image-browser #image-nav {
  height: 120px;
  margin: 10px auto 0 auto;
  position: relative;
  width: calc(100% - 40px);
}
section.shop-section.product-detail .image-browser #image-nav .image-slide {
  border: 2px solid transparent;
  height: 120px;
  margin-right: 10px;
}
section.shop-section.product-detail .image-browser #image-nav .image-slide img {
  height: 100%;
  -o-object-position: center;
     object-position: center;
  transition: all 300ms ease-out;
  width: auto;
}
section.shop-section.product-detail .image-browser #image-nav .image-slide.is-selected {
  border: 2px solid rgb(130, 125, 120);
}
section.shop-section.product-detail .image-browser #image-nav .flickity-prev-next-button {
  background-color: transparent;
  border-radius: 0;
  box-shadow: none;
  height: 100%;
  width: 40px;
}
section.shop-section.product-detail .image-browser #image-nav .flickity-prev-next-button.previous {
  left: -30px;
}
section.shop-section.product-detail .image-browser #image-nav .flickity-prev-next-button.next {
  right: -30px;
}
section.shop-section.product-detail .image-browser #image-nav .flickity-prev-next-button .flickity-button-icon {
  fill: rgb(30, 30, 30);
}
section.shop-section.product-detail .product-gallery {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  max-width: none;
  width: 100%;
}
section.shop-section.product-detail .product-gallery > div {
  display: inline-block;
  line-height: 0;
  z-index: 1;
}
section.shop-section.product-detail .product-gallery > div > a {
  display: inline-block;
  line-height: 0;
  opacity: 1;
  outline: none;
  overflow: hidden;
  text-decoration: none;
  width: 100%;
}
section.shop-section.product-detail .product-gallery > div > a .tn-img {
  display: inline-block;
  height: auto;
  min-width: 0;
  transform: scale(1);
  transform-origin: center;
  transition: all 300ms ease-out;
  width: 100%;
  z-index: 0;
}
section.shop-section.product-detail .product-gallery > div > a:hover .tn-img, section.shop-section.product-detail .product-gallery > div > a:focus .tn-img {
  transform: scale(1.02);
}
section.shop-section.product-detail .product-gallery > div:first-child {
  grid-column: 1/-1;
}
section.shop-section.product-detail .product-gallery > div:not(:first-child):nth-child(n+5) {
  display: none;
}
section.shop-section.product-detail .product-gallery > div:not(:first-child) > a {
  aspect-ratio: 1/1;
  display: inline-block;
  position: relative;
  width: 100%;
}
section.shop-section.product-detail .product-gallery > div:not(:first-child) > a .tn-img {
  display: inline-block;
  height: 100%;
  left: 0;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  width: 100%;
}
section.shop-section.product-detail .attrs {
  border: 1px solid rgb(255, 90, 0);
  border-top: 0;
  border-right: 0;
  display: table;
}
section.shop-section.product-detail .attrs .attr {
  display: table-row;
}
section.shop-section.product-detail .attrs .attr > span {
  border: 1px solid rgb(255, 90, 0);
  border-bottom: 0;
  border-left: 0;
  display: table-cell;
  padding: 8px 12px;
}
section.shop-section.product-detail .attrs .attr > span:first-child {
  color: rgb(40, 35, 30);
}
section.shop-section.product-detail .price {
  display: inline-block;
  margin: 0.8rem 0;
}
section.shop-section.product-detail .price > span {
  display: inline-block;
}
section.shop-section.product-detail .price > span.label {
  margin-right: 5px;
}
section.shop-section.product-detail .price > span.price-string {
  font-size: 2.8rem;
  font-family: "Archivo", sans-serif;
  line-height: 1;
}
@media only screen and (min-width: 576px) {
  section.shop-section.product-detail .price > span.price-string {
    font-size: 3rem;
  }
}
section.shop-section.product-detail .price > span .vat {
  font-family: "Archivo", sans-serif;
  font-size: 2.2rem;
}
section.shop-section.product-detail .price-options {
  border-top: 0.1rem solid currentColor;
  border-bottom: 0.1rem solid currentColor;
  margin-bottom: 0.8rem;
  padding: 2.4rem 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 .gtab {
  display: grid;
  gap: 0.4rem var(--gutter);
  grid-template-columns: auto 1fr;
  text-align: left;
  width: 100%;
}
@media only screen and (min-width: 576px) {
  section.shop-section.product-detail .price-options form.option-form .gtab {
    grid-template-columns: 4fr 1fr 1fr;
  }
}
section.shop-section.product-detail .price-options form.option-form .gtab .name {
  grid-column: 1/-1;
  padding-top: 0.8rem;
}
@media only screen and (min-width: 576px) {
  section.shop-section.product-detail .price-options form.option-form .gtab .name {
    grid-column: 1;
    padding-top: 0;
    padding-bottom: 0.8rem;
  }
}
section.shop-section.product-detail .price-options form.option-form .gtab .qty .oos {
  color: tomato;
}
section.shop-section.product-detail .price-options form.option-form .gtab .prices {
  font-weight: 700;
}
section.shop-section.product-detail .price-options form.option-form .gtab .head {
  font-weight: 700;
}
section.shop-section.product-detail .price-options form.option-form .actions {
  margin-top: 2.4rem;
}
section.shop-section.product-detail .stock {
  color: rgb(40, 35, 30);
  font-family: "Archivo", sans-serif;
  font-size: 2.2rem;
}
section.shop-section.product-detail .spinner {
  margin-bottom: 0.8rem;
}
section.shop-section.product-detail #multi-price {
  border-top: 0.4rem solid rgb(40, 35, 30);
  border-bottom: 0.4rem solid rgb(40, 35, 30);
  padding: 2.4rem 0;
  width: 100%;
}
section.shop-section.product-detail #multi-price .price-options {
  border: 0;
  padding-bottom: 0;
}
section.shop-section.product-detail .g-select {
  display: grid;
  gap: var(--gutter-half) var(--gutter);
  grid-template-columns: 1fr;
  width: 100%;
}
@media only screen and (min-width: 576px) {
  section.shop-section.product-detail .g-select {
    grid-template-columns: 1fr 1fr;
  }
}
section.shop-section.product-detail .g-select .lbl {
  font-size: 2rem;
  font-weight: 700;
}
section.shop-section.product-detail .form-enter {
  background-color: rgb(40, 35, 30);
  border-radius: 0;
  color: rgb(255, 255, 255);
  font-family: "Archivo", sans-serif;
  min-height: 6rem;
  text-transform: uppercase;
}
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;
}
@media only screen and (min-width: 1024px) {
  section.shop-section.product-detail .row .column.maf-col-2 {
    max-width: 58rem;
  }
}
section.shop-section.shop-highlight div.cardbox {
  justify-content: center;
  padding: 1.5rem 0 2.5rem 0;
}
section.shop-section.shop-highlight > .maf-background {
  background-position: right center;
  background-size: contain;
  max-height: 146rem;
}
section.shop-section.shop-highlight .row .column {
  padding-bottom: 3rem;
}
section.shop-section.shop-highlight .row .column .maf-content.divider {
  padding: 4rem 0;
}
section.slideshow-section .row {
  grid-template-columns: 1fr;
}
section.slideshow-section .flickity-slideshow, section.slideshow-section .flickity-slideshow-edit {
  width: 100%;
}
section.slideshow-section .flickity-slideshow .ss-slide, section.slideshow-section .flickity-slideshow-edit .ss-slide {
  background-color: transparent;
  position: relative;
  width: 100%;
}
section.slideshow-section .flickity-slideshow .ss-slide > div, section.slideshow-section .flickity-slideshow-edit .ss-slide > div {
  position: relative;
  text-align: left;
}
section.slideshow-section .flickity-slideshow .ss-slide > div p, section.slideshow-section .flickity-slideshow-edit .ss-slide > div p {
  color: rgb(40, 35, 30);
  font-size: 3rem;
  font-style: italic;
  line-height: 1.2;
  margin-bottom: 0.6em;
}
@media only screen and (min-width: 576px) {
  section.slideshow-section .flickity-slideshow .ss-slide > div p, section.slideshow-section .flickity-slideshow-edit .ss-slide > div p {
    font-size: 4.2rem;
  }
}
section.slideshow-section .flickity-slideshow .ss-slide > div p:not(:first-child):last-child, section.slideshow-section .flickity-slideshow-edit .ss-slide > div p:not(:first-child):last-child {
  font-size: 2.4rem;
  font-weight: 700;
}
@media only screen and (min-width: 576px) {
  section.slideshow-section .flickity-slideshow .ss-slide > div p:not(:first-child):last-child, section.slideshow-section .flickity-slideshow-edit .ss-slide > div p:not(:first-child):last-child {
    font-size: 3rem;
  }
}
section.slideshow-section .flickity-slideshow .ss-slide > div p:last-child, section.slideshow-section .flickity-slideshow-edit .ss-slide > div p:last-child {
  margin-bottom: 0;
}
section.slideshow-section.has-aspect .row {
  padding: 0;
}
section.slideshow-section.has-aspect .row .column {
  padding: 0;
}
section.slideshow-section.has-aspect .flickity-slideshow .ss-slide, 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-4 .sqr {
  aspect-ratio: 1/1;
  background-color: rgb(40, 35, 30);
  left: 0;
  margin: 0 auto;
  position: absolute;
  width: 3rem;
  z-index: 1;
}
@media only screen and (min-width: 576px) {
  section.slideshow-section.alt-4 .sqr {
    left: 50%;
    transform: translateX(-50%);
  }
}
section.slideshow-section.alt-4 .sqr.start {
  top: 0;
}
section.slideshow-section.alt-4 .sqr.end {
  bottom: 0;
}
section.slideshow-section.alt-4 #line {
  background-color: rgb(30, 30, 30);
  height: 0%;
  left: 1.5rem;
  position: absolute;
  top: 0;
  width: 0.1rem;
  z-index: 0;
}
@media only screen and (min-width: 576px) {
  section.slideshow-section.alt-4 #line {
    left: 50%;
  }
}
section.slideshow-section.alt-4 .scroller-slideshow {
  display: flex;
  flex-direction: column;
  width: 100%;
}
section.slideshow-section.alt-4 .scroller-slideshow p.h1-style, section.slideshow-section.alt-4 .scroller-slideshow p.h2-style, section.slideshow-section.alt-4 .scroller-slideshow p.h3-style, section.slideshow-section.alt-4 .scroller-slideshow p.h4-style {
  color: rgb(40, 35, 30);
  margin-bottom: 0;
}
section.slideshow-section.alt-4 .scroller-slideshow .sc-slide {
  display: flex;
  position: relative;
  width: 100%;
}
@media only screen and (min-width: 576px) {
  section.slideshow-section.alt-4 .scroller-slideshow .sc-slide {
    width: 50%;
  }
}
@media only screen and (min-width: 576px) {
  section.slideshow-section.alt-4 .scroller-slideshow .sc-slide:not(:first-child) {
    margin-top: -10rem;
  }
}
section.slideshow-section.alt-4 .scroller-slideshow .sc-slide::before {
  background-color: rgb(30, 30, 30);
  content: "";
  height: 0.1rem;
  position: absolute;
  top: 0.7rem;
  transition: width 0.6s ease-out;
  width: 0;
}
@media only screen and (min-width: 576px) {
  section.slideshow-section.alt-4 .scroller-slideshow .sc-slide::before {
    top: 1.2rem;
  }
}
section.slideshow-section.alt-4 .scroller-slideshow .sc-slide .maf-content {
  padding: 0 0 5rem 0 !important;
  transition: transform 0.6s ease-out 0.4s;
  width: 80%;
}
section.slideshow-section.alt-4 .scroller-slideshow .sc-slide.anim-1::before {
  width: 17%;
}
section.slideshow-section.alt-4 .scroller-slideshow .sc-slide:nth-child(odd) {
  justify-content: flex-end;
  margin-left: auto;
  text-align: left;
}
section.slideshow-section.alt-4 .scroller-slideshow .sc-slide:nth-child(odd)::before {
  left: 0;
}
section.slideshow-section.alt-4 .scroller-slideshow .sc-slide:nth-child(odd) .maf-content {
  transform: translateX(100vw);
}
section.slideshow-section.alt-4 .scroller-slideshow .sc-slide:nth-child(odd).anim-1 .maf-content {
  transform: translateX(0);
  transition: transform 0.6s ease-out 0.4s;
}
section.slideshow-section.alt-4 .scroller-slideshow .sc-slide:nth-child(even) {
  justify-content: flex-end;
  margin-left: auto;
  text-align: left;
}
@media only screen and (min-width: 576px) {
  section.slideshow-section.alt-4 .scroller-slideshow .sc-slide:nth-child(even) {
    justify-content: flex-start;
    margin-right: auto;
    margin-left: 0;
    text-align: right;
  }
}
section.slideshow-section.alt-4 .scroller-slideshow .sc-slide:nth-child(even)::before {
  left: 0;
}
@media only screen and (min-width: 576px) {
  section.slideshow-section.alt-4 .scroller-slideshow .sc-slide:nth-child(even)::before {
    left: auto;
    right: 0;
  }
}
section.slideshow-section.alt-4 .scroller-slideshow .sc-slide:nth-child(even) .maf-content {
  transform: translateX(100vw);
}
@media only screen and (min-width: 576px) {
  section.slideshow-section.alt-4 .scroller-slideshow .sc-slide:nth-child(even) .maf-content {
    transform: translateX(-100vw);
  }
}
section.slideshow-section.alt-4 .scroller-slideshow .sc-slide:nth-child(even).anim-1 .maf-content {
  transform: translateX(0);
}
section.slideshow-section.alt-4 .header {
  padding-bottom: 5rem;
}
section.slideshow-section.alt-4 .header .maf-content {
  text-align: center;
}
section.slideshow-section.alt-4 .row {
  max-width: 118.8rem;
}
section.slideshow-section.alt-4 .row .column .maf-content {
  padding: 7.5rem 0 7.5rem 1.5rem;
}
@media only screen and (min-width: 576px) {
  section.slideshow-section.alt-4 .row .column .maf-content {
    padding: 7.5rem 0;
  }
}
section.slideshow-section.alt-4.edit #line {
  height: 100%;
}
section.slideshow-section.alt-4.edit .scroller-slideshow .sc-slide::before {
  width: 17%;
}
section.slideshow-section.alt-4.edit .scroller-slideshow .sc-slide .maf-content {
  transform: translateX(0);
}
section.simple-gallery figcaption {
  display: none;
}
section.simple-gallery .row {
  grid-template-columns: 1fr;
}
section.simple-gallery.highlight .is-simple-gallery figure:nth-child(n+9) {
  display: none;
}
section.full-gallery.gallery-head .row {
  flex-direction: column;
  flex-wrap: nowrap;
  padding-top: var(--space);
}
@media only screen and (min-width: 1152px) {
  section.full-gallery.gallery-head .row {
    flex-direction: row;
    flex-wrap: wrap;
  }
}
section.full-gallery.gallery-head .row .column {
  align-items: flex-start;
  padding-top: 0;
}
section.full-gallery.gallery-head .row .column.maf-col-1 {
  width: 100%;
}
@media only screen and (min-width: 1152px) {
  section.full-gallery.gallery-head .row .column.maf-col-1 {
    width: 50%;
  }
}
@media only screen and (min-width: 1440px) {
  section.full-gallery.gallery-head .row .column.maf-col-1 {
    width: 33.333%;
  }
}
section.full-gallery.gallery-head .row .column.maf-col-1 .maf-content {
  border-top: 2rem solid currentColor;
}
section.full-gallery.gallery-head .row .column.maf-col-2 {
  width: 100%;
}
@media only screen and (min-width: 1152px) {
  section.full-gallery.gallery-head .row .column.maf-col-2 {
    width: 50%;
  }
}
@media only screen and (min-width: 1440px) {
  section.full-gallery.gallery-head .row .column.maf-col-2 {
    width: 66.666%;
  }
}
section.full-gallery.gallery-head .row .column.maf-col-2 .maf-content {
  max-width: 62.5rem;
}
section.full-gallery.gallery-list div.gallery-list-feed article.card {
  width: 100%;
}
@media only screen and (min-width: 768px) {
  section.full-gallery.gallery-list div.gallery-list-feed article.card {
    width: 50%;
  }
}
@media only screen and (min-width: 1152px) {
  section.full-gallery.gallery-list div.gallery-list-feed article.card {
    width: 33.333%;
  }
}
section.full-gallery.gallery-list div.gallery-list-feed article.card .portal-item {
  background-color: rgb(30, 30, 30);
  max-width: 50rem;
  text-align: center;
}
section.full-gallery.gallery-list div.gallery-list-feed article.card .portal-item .portal-content .tn .tn-img {
  opacity: 0.6;
}
section.full-gallery.gallery-list div.gallery-list-feed article.card .portal-item .portal-content .info {
  justify-content: center;
  padding: 5%;
  perspective: 40rem;
}
section.full-gallery.gallery-list div.gallery-list-feed article.card .portal-item .portal-content .title {
  font-size: 3rem;
  font-weight: 700;
  min-height: 0;
  padding: 0;
  transform: rotateZ(0);
  transform-origin: 50% 100%;
  transition: all 600ms ease-out;
}
section.full-gallery.gallery-list div.gallery-list-feed article.card .portal-item:hover .portal-content .tn .tn-img, section.full-gallery.gallery-list div.gallery-list-feed article.card .portal-item:focus .portal-content .tn .tn-img {
  opacity: 0.4;
}
section.full-gallery.gallery-list div.gallery-list-feed article.card .portal-item:hover .portal-content .info, section.full-gallery.gallery-list div.gallery-list-feed article.card .portal-item:focus .portal-content .info {
  box-shadow: 0 0 3rem rgba(0, 0, 0, 0.7) inset;
}
section.full-gallery.gallery-list div.gallery-list-feed article.card .portal-item:hover .portal-content .title, section.full-gallery.gallery-list div.gallery-list-feed article.card .portal-item:focus .portal-content .title {
  text-shadow: 0 0 0.5rem black;
  transform: translateY(-5rem) rotateX(30deg);
}
section.full-gallery.gallery-list .row .column {
  padding-top: 0;
}
section.full-gallery.gallery-view .row .column {
  padding-top: 0;
}
section.full-gallery.gallery-page {
  background-color: black;
  color: white;
  height: calc(var(--app-height) - 8rem);
}
@media only screen and (min-width: 768px) {
  section.full-gallery.gallery-page {
    height: calc(var(--app-height) - 12rem);
  }
}
section.full-gallery.gallery-page.is-video-page {
  background-color: white;
  color: rgb(30, 30, 30);
}
section.full-gallery.gallery-page .row {
  flex: 0 0 auto;
  height: 100%;
}
section.full-gallery.gallery-page .row .column {
  max-height: 100%;
  padding-top: 0;
  padding-bottom: var(--space);
}
section.full-gallery.gallery-page .row .column .maf-content {
  flex: 0 0 auto;
}
section.full-gallery.gallery-page .row .column .maf-content.ctrl {
  align-items: flex-end;
  flex: 0 0 auto;
  flex-direction: row;
  font-size: 1.8rem;
  justify-content: center;
  height: 3.6rem;
  max-width: 36rem;
  padding: 0.5rem 0;
}
section.full-gallery.gallery-page .row .column .maf-content.ctrl a {
  align-items: center;
  aspect-ratio: 1/1;
  display: inline-flex;
  height: 100%;
  line-height: 1;
  padding: 0.5rem;
  position: relative;
  justify-content: center;
  text-decoration: none;
}
section.full-gallery.gallery-page .row .column .maf-content.ctrl a::before, section.full-gallery.gallery-page .row .column .maf-content.ctrl a::after {
  background-color: currentColor;
  color: inherit;
  content: "";
  height: 50%;
  position: absolute;
  width: 0.2rem;
}
section.full-gallery.gallery-page .row .column .maf-content.ctrl a.prev {
  justify-content: flex-start;
}
section.full-gallery.gallery-page .row .column .maf-content.ctrl a.prev::before, section.full-gallery.gallery-page .row .column .maf-content.ctrl a.prev::after {
  left: 0;
}
section.full-gallery.gallery-page .row .column .maf-content.ctrl a.prev::before {
  bottom: 50%;
  transform: rotate(55deg);
  transform-origin: bottom;
}
section.full-gallery.gallery-page .row .column .maf-content.ctrl a.prev::after {
  top: 50%;
  transform: rotate(-55deg);
  transform-origin: top;
}
section.full-gallery.gallery-page .row .column .maf-content.ctrl a.back {
  flex-direction: column;
  justify-content: center;
  margin: 0 auto;
}
section.full-gallery.gallery-page .row .column .maf-content.ctrl a.back::before, section.full-gallery.gallery-page .row .column .maf-content.ctrl a.back::after {
  left: 50%;
}
section.full-gallery.gallery-page .row .column .maf-content.ctrl a.back::before {
  top: 0.5rem;
  transform: rotate(-35deg);
  transform-origin: top;
}
section.full-gallery.gallery-page .row .column .maf-content.ctrl a.back::after {
  top: 0.5rem;
  transform: rotate(35deg);
  transform-origin: top;
}
section.full-gallery.gallery-page .row .column .maf-content.ctrl a.next {
  justify-content: flex-end;
}
section.full-gallery.gallery-page .row .column .maf-content.ctrl a.next::before, section.full-gallery.gallery-page .row .column .maf-content.ctrl a.next::after {
  right: 0;
}
section.full-gallery.gallery-page .row .column .maf-content.ctrl a.next::before {
  bottom: 50%;
  transform: rotate(-55deg);
  transform-origin: bottom;
}
section.full-gallery.gallery-page .row .column .maf-content.ctrl a.next::after {
  top: 50%;
  transform: rotate(55deg);
  transform-origin: top;
}
section.full-gallery.gallery-page .row .column .maf-content.ctrl a.disable {
  opacity: 0;
  visibility: hidden;
}
section.full-gallery.gallery-page .row .column .maf-content.img {
  display: inline-block;
  flex: 1 1 auto;
}
section.full-gallery.gallery-page .row .column .maf-content.img img {
  height: 100%;
  left: 0;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
  position: absolute;
  top: 0;
  width: 100%;
}
section.full-gallery.gallery-page .row .column .maf-content.vid {
  display: inline-block;
  flex: 1 1 auto;
}
section.full-gallery.gallery-page .row .column .maf-content.vid .is-video {
  padding-bottom: 0;
}
section.full-gallery.gallery-page .row .column .maf-content.vid .is-video iframe {
  aspect-ratio: 16/9;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
}
section.full-gallery.gallery-page .row .column .maf-content.desc {
  font-size: 1.8rem;
  padding-top: 1rem;
}
@media only screen and (min-width: 576px) {
  section.full-gallery.gallery-page .row .column .maf-content.desc {
    padding-top: 2rem;
  }
}
section.full-gallery.gallery-page .row .column .maf-content.desc p {
  line-height: 1.2;
  margin-bottom: 0.3em;
}
section.full-gallery.gallery-page .row .column .maf-content.desc p:last-child {
  margin-bottom: 0;
}
section.social-section {
  background-color: rgb(130, 125, 120);
}
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(40, 35, 30);
}
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.4rem;
  border-bottom: 1px solid white;
  color: rgb(255, 255, 255);
  margin-bottom: 100px;
  width: auto;
}
@media only screen and (min-width: 576px) {
  section.social-section .row .column .maf-content p.label {
    font-size: 5.4rem;
  }
}
section.social-section .row .column.maf-col-1 {
  align-items: flex-start;
}
section.social-section .row .column.maf-col-3 .maf-content .sc-links a {
  margin-right: 20px;
  margin-bottom: 20px;
}
section.social-section .row .column.maf-col-3 .maf-content .sc-links a:last-child {
  margin-right: 0;
}
section.social-section .row .column.maf-col-3 .maf-content .sc-links a img {
  height: 40px;
}
section.search-section .row .column.whole {
  padding-top: 3rem;
  text-align: left;
}
section.search-section .row .column.whole .maf-content {
  max-width: 90rem;
}
section.search-section .row .column.whole .maf-content h2 {
  font-size: 2.4rem;
}
section.search-section .row .column.whole .maf-content ul {
  list-style-type: none;
  max-width: none;
  padding: 0;
}
section.search-section .row .column.whole .maf-content ul li {
  padding: 0.7rem 1rem 0.3rem 1rem;
}
section.search-section .row .column.whole .maf-content ul li::before {
  display: none;
}
section.search-section .row .column.whole .maf-content ul li:nth-of-type(even) {
  background-color: rgba(0, 0, 0, 0.05);
}
section.search-section .row .column.whole .maf-content p.label {
  font-family: "Archivo", sans-serif;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.2;
}
section.search-section .row .column.whole .maf-content.results {
  align-items: flex-start;
  margin-bottom: 2rem;
}
section.search-section .label {
  margin-bottom: 1rem;
}
section.contact-section p.phone, section.contact-section p.email {
  font-family: "Archivo", sans-serif;
  font-size: 3.6rem;
  margin-bottom: 0.1em;
}
@media only screen and (min-width: 576px) {
  section.contact-section p.phone, section.contact-section p.email {
    font-size: 4.8rem;
  }
}
section.contact-section p.phone span, section.contact-section p.email span {
  display: inline-block;
}
section.contact-section p.phone a:not(.button), section.contact-section p.email a:not(.button) {
  font-style: normal;
  font-weight: 700;
  text-decoration: none;
}
section.contact-section p.cpoint {
  font-size: 2.6rem;
  line-height: 0;
  margin-bottom: 15px;
}
section.contact-section p.cpoint.first {
  margin-top: 30px;
}
section.contact-section p.cpoint span {
  display: inline-block;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1;
  width: 100%;
}
section.contact-section p.cpoint a:not(.button) {
  color: rgb(40, 35, 30);
  line-height: 1;
  text-decoration: none;
}
section.contact-section p.img-ico {
  align-items: center;
  display: flex;
  font-family: "Archivo", sans-serif;
  font-size: 1.6rem;
  justify-content: flex-start;
}
section.contact-section p.img-ico span {
  display: inline-block;
  flex: 0 0 auto;
  line-height: 1.1;
}
section.contact-section p.img-ico span:last-child {
  flex: 1 1 auto;
  padding-left: 10px;
}
section.contact-section p.img-ico span a {
  color: rgb(30, 30, 30);
}
section.contact-section .social-icons {
  --icon-colour: transparent;
  --text-colour: rgb(40, 35, 30);
  font-size: 3.5rem;
  margin-top: 10px;
}
section.contact-section .social-icons a:hover, section.contact-section .social-icons a:focus {
  color: rgb(30, 30, 30);
}
section.contact-section #logo-contact {
  max-width: 350px;
}
section.contact-section address {
  display: inline-block;
  width: 100%;
}
section.contact-section .is-map {
  min-height: 310px;
}
section.contact-section iframe {
  max-width: 100%;
}
@media only screen and (min-width: 960px) {
  section.contact-section .row {
    grid-template-columns: 1fr 1fr;
  }
}
section.contact-section .row .column .maf-content.map {
  height: 100%;
  min-height: 500px;
  position: relative;
}
section.contact-section .row .column .maf-content.map iframe {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
section.privacy-policy {
  font-size: 1.8rem;
}
section.privacy-policy h2, section.privacy-policy .h2-style, section.privacy-policy h3, section.privacy-policy .h3-style, section.privacy-policy h4, section.privacy-policy .h4-style, section.privacy-policy h5, section.privacy-policy .h5-style, section.privacy-policy h6.h6-style {
  width: 100%;
}
section.privacy-policy h1, section.privacy-policy .h1-style {
  align-self: center;
  border-bottom: 0.1rem solid rgb(30, 30, 30);
  padding-bottom: 1rem;
  text-align: center;
  width: auto;
}
section.privacy-policy h2 {
  font-size: 3rem;
  margin-top: 0.3em;
  text-transform: none;
}
section.privacy-policy p.page-lead {
  text-align: center;
  margin-bottom: 4rem;
}
section.privacy-policy ol li {
  margin-bottom: 2rem;
}
section.privacy-policy .row .column {
  align-items: center;
  padding-top: 8rem;
  padding-bottom: 16rem;
  text-align: left;
}
section.privacy-policy .row .column .maf-content {
  align-items: flex-start;
  justify-content: flex-start;
  max-width: 80rem;
}
section.account {
  min-height: var(--app-height);
}
section.account:first-child {
  padding-top: 5rem;
}
section.account > .maf-background {
  background-image: url("/images/Layout/account-bg.jpg");
  background-position: bottom right;
  background-size: contain;
}
section.account p.maf-msg {
  margin-top: 3rem;
}
section.account .row {
  max-width: 128rem;
}
section.account .row .column {
  justify-content: flex-start;
}
section.account .row .column.whole {
  align-items: flex-start;
  text-align: left;
}
section.account .row .column.whole .maf-content {
  -webkit-backdrop-filter: brightness(2) blur(5px);
          backdrop-filter: brightness(2) blur(5px);
  background-color: rgba(255, 255, 255, 0.7);
  border-radius: 0.5rem;
  max-width: 52rem;
  padding: 1rem;
}
section.account div.cardbox {
  padding: 1rem;
}
section.account div.cardbox article.card .actions {
  display: flex;
  flex-direction: row;
  font-size: 1.6rem;
  text-align: left;
}
section.account div.cardbox article.card .actions a {
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
  border-radius: 0.5rem;
  color: inherit;
  display: inline-block;
  font-weight: 700;
  margin-bottom: 0.8rem;
  opacity: 0.9;
  padding: 0.3rem 2%;
  text-decoration: none;
  width: 100%;
}
section.account div.cardbox article.card .actions a:hover, section.account div.cardbox article.card .actions a:focus {
  opacity: 1;
}
section.account div.cardbox article.card .actions a i {
  margin-right: 0.5rem;
}
section.account div.cardbox article.card .actions a.portal-delete {
  border: 0.3rem solid hsl(0, 45%, 51%);
  background-color: rgb(229, 204, 204);
  flex: 2 2 auto;
  margin-right: 2%;
}
section.account div.cardbox article.card .actions a.portal-delete:hover, section.account div.cardbox article.card .actions a.portal-delete:focus {
  background-color: hsl(0, 45%, 51%);
  color: rgb(255, 255, 255);
}
section.account div.cardbox article.card .actions a.portal-verify {
  border: 0.3rem solid hsl(120, 42%, 49%);
  background-color: rgb(212, 238, 212);
  flex: 1 1 auto;
}
section.account div.cardbox article.card .actions a.portal-verify:hover, section.account div.cardbox article.card .actions a.portal-verify:focus {
  background-color: hsl(120, 42%, 49%);
  color: rgb(255, 255, 255);
}
section.account div.cardbox article.card .actions.completed a.portal-delete {
  margin-right: 0;
}
section.account div.cardbox article.card .portal-item .portal-content .title {
  min-height: 0;
}
section.account div.cardbox article.card .portal-item .portal-content .desc.state {
  background-color: rgb(70, 65, 60);
  font-size: 1.6rem;
  margin-top: auto;
  margin-bottom: 1rem;
  padding: 0.7rem 1rem;
  text-align: center;
}
section.account div.cardbox article.card .portal-item .portal-content .desc.state.pub {
  background-color: rgb(212, 238, 212);
}
section.account#login p.small-text, section.account#register p.small-text {
  font-size: 1.6rem;
}
section.account#login .row .column .maf-content.maf-form form, section.account#register .row .column .maf-content.maf-form form {
  max-width: 52rem;
}
section.account#login .row .column .maf-content.maf-form form .maf-input input, section.account#register .row .column .maf-content.maf-form form .maf-input input {
  max-width: 35rem;
}
section.account#login .row .column.maf-col-1 .maf-content, section.account#register .row .column.maf-col-1 .maf-content {
  align-items: flex-start;
}
section.account#login p.maf-msg {
  margin-top: 0;
}
section.account#login .row .column .maf-content.maf-form form {
  margin-top: 4rem;
}
section.account.welcome h1, section.account.welcome .h1-style, section.account.welcome h2, section.account.welcome .h2-style, section.account.welcome h3, section.account.welcome .h3-style, section.account.welcome h4, section.account.welcome .h4-style, section.account.welcome h5, section.account.welcome .h5-style, section.account.welcome h6.h6-style {
  font-family: "Archivo", sans-serif;
  font-weight: 700;
  max-width: 75rem;
  position: relative;
}
section.account.welcome h1.login, section.account.welcome .h1-style.login, section.account.welcome h2.login, section.account.welcome .h2-style.login, section.account.welcome h3.login, section.account.welcome .h3-style.login, section.account.welcome h4.login, section.account.welcome .h4-style.login, section.account.welcome h5.login, section.account.welcome .h5-style.login, section.account.welcome h6.h6-style.login {
  max-width: 35rem;
}
section.account.welcome h1, section.account.welcome .h1-style, section.account.welcome h2, section.account.welcome .h2-style {
  font-size: 3.4rem;
}
section.account.welcome h3, section.account.welcome .h3-style {
  font-size: 2.8rem;
}
section.account.welcome h4, section.account.welcome .h4-style, section.account.welcome h5, section.account.welcome .h5-style {
  font-size: 2.6rem;
}
section.account.account-menu {
  background-color: rgb(255, 90, 0);
}
section.account.account-menu .row .column {
  padding-top: 1rem;
  padding-bottom: 1.5rem;
}
section.account.account-menu .row .column .actions {
  width: 100%;
}
section.account.account-menu .row .column .actions .button {
  background-color: white;
  margin: 0.5rem 0.2rem 0 0.2rem;
}
section.account.account-menu .row .column .actions .button:hover, section.account.account-menu .row .column .actions .button:focus {
  background-color: rgb(40, 35, 30);
}
section.account.account-menu .row .column .actions .button.active {
  background-color: rgb(40, 35, 30);
  color: white;
}
section.account.account-update .avatar {
  margin-bottom: 4rem;
  max-width: 48rem;
  text-align: center;
  width: 100%;
}
section.account.account-update .row .column .maf-content.links {
  margin-top: 6rem;
}
section.account.account-update #op {
  height: 0;
  overflow: hidden;
  transition: all 300ms ease-out;
  width: 100%;
}
section.account.account-update #op #op-msg {
  bottom: 0;
  left: 0;
  padding: 1.6rem 2.4rem;
  position: fixed;
  text-align: center;
  transition: all 300ms ease-out;
  width: 100%;
  z-index: 777;
}
section.account.account-update #op.show {
  height: 5rem;
  transition: all 300ms ease-out;
}
section.account.account-update #op.show #op-msg {
  background-color: rgb(70, 65, 60);
  color: white;
  min-height: 5rem;
}
section.account.account-update #op.show #op-msg.error {
  background-color: red;
}
section.account.listings .cardbox {
  margin-top: 4rem;
}
section.account.listings .cardbox .card .portal-item {
  color: rgb(255, 255, 255);
}
section.account.listings .cardbox .card .portal-item .portal-content .title {
  text-transform: uppercase;
}
section.account.product-list .cardbox {
  margin-top: 6rem;
}
section.account.product-list .cardbox .card .portal-item {
  color: rgb(255, 255, 255);
}
section.account.product-list .cardbox .card .portal-item .portal-content .card-button {
  color: rgb(130, 125, 120);
}
section.account.product-list .cardbox .card .portal-item .portal-content .card-button::after {
  background-color: rgb(130, 125, 120);
}
section.account.product-list .footer-button:hover, section.account.product-list .footer-button:focus {
  background-color: rgb(130, 125, 120);
}
section.account .img-upld-block {
  width: 100%;
}
section.account .img-upld-list {
  margin-top: 3rem;
  margin-bottom: 4rem;
  width: 100%;
}
section.account .form-cards {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  margin: 0 -1rem;
  width: calc(100% + 2rem);
}
section.account .form-cards .fc {
  flex: 0 0 100%;
  padding: 1rem;
}
@media only screen and (min-width: 576px) {
  section.account .form-cards .fc {
    flex: 0 0 50%;
  }
}
@media only screen and (min-width: 960px) {
  section.account .form-cards .fc {
    flex: 0 0 25%;
  }
}
section.account .form-cards .fc .drag-bar {
  align-items: center;
  border-radius: 0.5rem 0.5rem 0 0;
  background-color: rgb(70, 65, 60);
  cursor: pointer;
  display: flex;
  font-size: 2rem;
  justify-content: space-between;
}
section.account .form-cards .fc .drag-bar i {
  margin: auto 0.5rem;
}
section.account .form-cards .fc .drag-bar a {
  align-items: center;
  aspect-ratio: 1/1;
  color: hsl(0, 45%, 51%);
  display: flex;
  justify-content: center;
  padding: 0.5rem;
  text-decoration: none;
}
section.account .form-cards .fc .drag-bar a:hover, section.account .form-cards .fc .drag-bar a:focus {
  background-color: hsl(0, 45%, 51%);
  color: rgb(255, 255, 255);
}
section.account-listings-section.account-listings-top-level .row .column {
  padding-top: 4rem;
}
section.account-listings-section.account-listings-highlight .header .maf-content p {
  max-width: 51rem;
}
@media only screen and (min-width: 960px) {
  section.account-listings-section.account-listings-highlight .row .column {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
}
section.account-listings-section.account-listing-detail .account-listing-body {
  width: 100%;
}
section.account-listings-section.account-listing-detail .account-listing-body figure {
  display: inline-block;
  width: 100%;
}
section.account-listings-section.account-listing-detail .account-listing-body figure img {
  width: 100%;
}
section.account-listings-section.account-listing-detail .account-listing-body figure figcaption {
  border-bottom: 1px solid rgb(30, 30, 30);
  display: inline-block;
  font-size: 0.666em;
  padding: 15px 0;
  width: 100%;
}
section.account-listings-section.account-listing-detail .main-img {
  margin-bottom: 4rem;
  width: 100%;
}
section.account-listings-section.account-listing-detail .avatar {
  margin-bottom: 6rem;
  text-align: center;
}
section.account-listings-section.account-listing-detail .avatar img {
  border: 30px solid rgb(236, 236, 236);
  border-radius: 0.8rem;
  box-shadow: 0 0 0.9rem rgba(0, 0, 0, 0.2);
  transform: rotate(-4deg);
}
section.account-listings-section.account-listing-detail .is-map {
  aspect-ratio: 1/1;
  margin-top: 6rem;
}
section.account-listings-section.account-listing-detail .address {
  display: flex;
  flex-direction: column;
  margin-bottom: 4rem;
  max-width: 28rem;
}
section.account-listings-section.account-listing-detail .address i {
  color: rgb(30, 30, 30);
  display: none;
  font-size: 3rem;
  margin-right: 0.8rem;
}
section.account-listings-section.account-listing-detail .address address {
  display: inline-block;
  line-height: 1.4;
  margin: 0;
}
section.account-listings-section.account-listing-detail .image-box .image {
  max-width: 10rem;
  text-align: center;
  width: 100%;
}
section.account-listings-section.account-listing-detail .image-box .image img {
  display: inline-block;
  width: auto;
}
section.account-listings-section.account-listing-detail .image-box .text {
  padding-left: 1rem;
}
section.account-listings-section.account-listing-detail .web-link span {
  font-weight: 700;
}
section.account-listings-section.account-listing-detail .row .column .maf-content {
  align-items: flex-start;
  text-align: left;
}
section.account-listings-section.account-listing-detail .row .column.maf-col-1 {
  align-items: flex-start;
}
section.account-listings-section.account-listing-detail .row .column.maf-col-1 .maf-content {
  max-width: 75rem;
}
section.map.interactive-map .is-map {
  aspect-ratio: 0.75/1;
  border: 2rem solid rgb(70, 65, 60);
  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: 960px) {
  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(40, 35, 30);
  padding: 21px;
}
section.map.interactive-map .is-map #google-map-interactive .map-info-content .image {
  margin-bottom: 10px;
}
section.map.interactive-map .is-map #google-map-interactive .map-info-content .image img {
  max-width: 100%;
}
section.map.interactive-map .is-map #google-map-interactive .map-info-content p {
  font-size: 1.4rem;
  font-weight: 400;
  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(230, 225, 220);
  color: white;
  font-family: "Archivo", 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(230, 225, 220);
  font-weight: 400;
}
section.map.interactive-map .is-map #google-map-interactive .map-info-content a:not(.button):hover {
  color: rgb(70, 65, 60);
}
section.map.interactive-map .is-map #google-map-interactive .map-info-content a.button {
  background-color: rgb(70, 65, 60);
  border-color: rgb(70, 65, 60);
  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(70, 65, 60);
}
section.map.interactive-map .is-map .label-pin {
  background-color: var(--acc-clr);
  border-radius: 0.4rem;
  color: rgb(255, 255, 255);
  font-size: 2rem;
  font-weight: 700;
  padding: 0.8rem 1.6rem;
  position: relative;
}
section.map.interactive-map .is-map .label-pin::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 100%;
  transform: translate(-50%, 0);
  width: 0;
  height: 0;
  border-left: 0.8rem solid transparent;
  border-right: 0.8rem solid transparent;
  border-top: 0.8rem solid var(--acc-clr);
}
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(30, 30, 30);
  border-radius: 0;
  color: rgb(30, 30, 30);
  font-weight: 400;
  margin: 0 3px 6px 0;
  padding: 20px 23px;
}
section.map.interactive-map #map-filters .button:hover, section.map.interactive-map #map-filters .button.active {
  background-color: rgb(130, 125, 120);
  border-color: rgb(130, 125, 120);
  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(40, 35, 30);
  font-size: 2rem;
  font-weight: 700;
}
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(40, 35, 30);
  border: 1px solid rgb(40, 35, 30);
  color: rgb(255, 255, 255);
  cursor: pointer;
  display: none;
  font-weight: 400;
  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(40, 35, 30);
}
section.map.interactive-map #sh-ctrlr > span.active, section.map.interactive-map #sh-ctrlr > a.active {
  display: inline-block;
  flex: 0 0 auto;
}
section.counter-section .row .column .maf-content {
  align-items: stretch;
  align-content: stretch;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  position: relative;
  margin: 0 -2rem;
  max-width: 119rem;
  width: calc(100% + 4rem);
}
section.counter-section .row .column .maf-content .stat-counter {
  align-items: center;
  display: flex;
  flex-direction: column;
  font-size: 1.8rem;
  font-weight: 400;
  margin: 2rem;
  padding: 0;
  width: calc(100% - 4rem);
}
@media only screen and (min-width: 576px) {
  section.counter-section .row .column .maf-content .stat-counter {
    width: calc(50% - 4rem);
  }
}
@media only screen and (min-width: 960px) {
  section.counter-section .row .column .maf-content .stat-counter {
    width: calc(25% - 4rem);
  }
}
section.counter-section .row .column .maf-content .stat-counter .counter {
  align-items: center;
  aspect-ratio: 1/1;
  background-color: rgb(30, 30, 30);
  border-radius: 50%;
  color: rgb(255, 90, 0);
  display: flex;
  justify-content: center;
  margin-bottom: 1rem;
  max-width: 25rem;
  width: 100%;
}
section.counter-section .row .column .maf-content .stat-counter .counter.col {
  flex-direction: column;
}
section.counter-section .row .column .maf-content .stat-counter .counter.rowr {
  flex-direction: row-reverse;
}
section.counter-section .row .column .maf-content .stat-counter .stat, section.counter-section .row .column .maf-content .stat-counter .unit {
  font-family: "Archivo", sans-serif;
  font-size: 8.4rem;
  line-height: 0.9;
}
section.counter-section .row .column .maf-content .stat-counter .stat.small {
  font-size: 6.8rem;
}
section.counter-section .row .column .maf-content .stat-counter .unit {
  font-size: 3.9rem;
}
section.counter-section .row .column .maf-content .stat-counter .unit.sup {
  margin-bottom: 1em;
}
section.counter-section .row .column .maf-content .stat-counter .unit.lrg {
  font-size: 6.8rem;
}
section.counter-section .row .column .maf-content .stat-counter p {
  color: rgb(40, 35, 30);
  line-height: 1.2;
  margin-bottom: 5px;
}
section.counter-section .row .column .maf-content .stat-counter p:last-child {
  margin-top: auto;
  margin-bottom: 0;
}
section.counter-section .row .column .maf-content .stat-counter p strong {
  color: rgb(30, 30, 30);
}
section.counter-section .row .column .maf-content .stat-counter input[type=number] {
  border-color: rgb(30, 30, 30);
  color: rgb(255, 90, 0);
  font-family: "Archivo", sans-serif;
  font-size: 4.5rem;
  font-weight: 700;
  text-align: center;
}
section.counter-section .row .column .maf-content .stat-counter .mceEditor {
  display: inline-flex;
  flex: 1 1 auto;
  flex-direction: column;
  width: 100%;
}
section.counter-section.maf-h-h .row .column {
  padding-top: 4rem;
}
section.counter-section.maf-h-f .row .column {
  padding-bottom: 4rem;
}
section.basket {
  --bg: #f5f5f5;
  font-size: 1.6rem;
  overflow: visible;
  padding-bottom: 4rem;
}
section.basket .basketerror {
  color: rgb(195, 0, 40);
}
section.basket .basket-title {
  border-bottom: 0.1rem solid currentColor;
  color: rgb(30, 30, 30);
  font-family: "Archivo", sans-serif;
  font-size: 2.4rem;
  font-weight: 700;
  margin-bottom: 0.8rem;
  padding: 1.6rem 0;
}
section.basket.bkt-home .basket-title {
  max-width: calc(var(--grid-width) * 0.833);
}
section.basket .maf-checkout-con {
  width: 100%;
}
section.basket .maf-checkout-con .button {
  padding: 1rem 1.4rem;
}
section.basket .maf-checkout-con .no-items {
  align-items: center;
  display: flex;
  justify-content: center;
  min-height: 40vh;
  text-align: center;
}
section.basket .maf-checkout-con .basket-row {
  border-bottom: 0.1rem dotted currentColor;
  display: grid;
  gap: var(--gutter-half) var(--gutter);
  grid-template-columns: 1fr 1fr 1fr 1fr;
  max-width: calc(var(--grid-width) * 0.833);
  padding: 1em 0;
  width: 100%;
}
@media only screen and (min-width: 576px) {
  section.basket .maf-checkout-con .basket-row {
    grid-template-columns: 6fr 1fr 1fr 1fr 1fr;
  }
}
section.basket .maf-checkout-con .basket-row .basket-name {
  grid-column: 1/-1;
}
@media only screen and (min-width: 576px) {
  section.basket .maf-checkout-con .basket-row .basket-name {
    grid-column: 1;
  }
}
section.basket .maf-checkout-con .basket-row .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 .basket-delete {
    max-width: 80px;
  }
}
section.basket .maf-checkout-con .basket-row .basket-delete a {
  color: inherit;
}
section.basket .maf-checkout-con .basket-row.head {
  border-bottom: 0.1rem solid currentColor;
  font-weight: 700;
}
section.basket .maf-checkout-con .basket-row.item input {
  padding: 0.8rem 1.2rem;
}
section.basket .maf-checkout-con .basket-row.price {
  border: 0;
  font-size: 1.125em;
  grid-template-columns: 1fr;
  max-width: calc(var(--grid-width) * 0.75);
  padding: 1em;
  text-align: right;
}
section.basket .maf-checkout-con .basket-row.price.extra {
  padding: 0.5em 1em;
}
section.basket .maf-checkout-con .basket-row.price.total {
  background-color: var(--bg);
  font-weight: 700;
}
section.basket .maf-checkout-con.no-adjust .basket-row {
  grid-template-columns: 1fr 1fr 1fr;
}
@media only screen and (min-width: 576px) {
  section.basket .maf-checkout-con.no-adjust .basket-row {
    grid-template-columns: 7fr 1fr 1fr 1fr;
  }
}
section.basket .maf-checkout-con.no-adjust .basket-row.price {
  grid-template-columns: 1fr;
  max-width: none;
}
section.basket .maf-checkout-con .basket-row-disco {
  display: flex;
  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: 1rem;
  max-width: 35rem;
}
@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: 700;
  min-width: 15rem;
}
section.basket .maf-checkout-con .basket-row-disco.form {
  margin-bottom: 2rem;
}
section.basket .basket-buttons {
  display: flex;
  flex-direction: row;
  gap: var(--gutter);
  width: 100%;
}
section.basket .basket-buttons .button {
  margin: 0;
}
section.basket .row .column .maf-content.maf-form form {
  justify-content: flex-start;
}
@media only screen and (min-width: 768px) {
  section.basket .row .column .maf-content.maf-form form {
    grid-template-columns: 1fr 1fr;
  }
}
section.basket .row .column .maf-content.maf-form.step-1 {
  padding-top: 2.4rem;
}
section.basket .row .column .maf-content.maf-form.step-1 .maf-input {
  justify-content: flex-end;
  max-width: calc(var(--grid-width) * 0.75);
}
section.basket.billing .column {
  align-items: flex-start;
}
section.basket.billing .maf-content {
  max-width: calc(var(--grid-width) * 0.833);
}
section.basket.billing label {
  font-size: inherit;
  margin-top: 0;
}
section.basket.billing input {
  min-height: 0;
}
section.basket.billing input[type=text] {
  padding: 0.8rem;
}
section.basket.billing input::-moz-placeholder {
  opacity: 1;
}
section.basket.billing input::placeholder {
  opacity: 1;
}
section.basket.billing input:focus {
  opacity: 0.7;
}
section.basket.bkt-overview .column {
  align-items: flex-start;
}
section.basket.bkt-overview .maf-content {
  max-width: calc(var(--grid-width) * 0.833);
}
section.basket.bkt-overview .instruct {
  padding-top: 2.4rem;
  padding-bottom: 1.6rem;
}
section.basket .overviewer {
  display: grid;
  gap: var(--gutter-half) var(--gutter);
  grid-template-columns: 1fr;
  margin-bottom: var(--gutter-half);
  width: 100%;
}
@media only screen and (min-width: 384px) {
  section.basket .overviewer {
    grid-template-columns: repeat(auto-fit, minmax(36rem, 1fr));
  }
}
section.basket .overviewer .col {
  background-color: var(--bg);
  border-radius: 0.4rem;
  padding: var(--gutter-half);
}
section.basket .overviewer .col p:first-child {
  margin: 0;
}
section.basket .overviewer .col p.no-margin {
  margin: 0;
}
section.basket .overviewer .col .head {
  font-weight: 700;
}
section.basket .overviewer .title-col {
  align-items: center;
  display: grid;
  font-family: "Archivo", sans-serif;
  font-size: 2.4rem;
  font-weight: 700;
  gap: var(--gutter);
  grid-column: 1/-1;
  grid-template-columns: 1fr;
}
@media only screen and (min-width: 384px) {
  section.basket .overviewer .title-col {
    grid-template-columns: 1fr auto;
  }
}
section.basket .overviewer .title-col .button {
  margin: 0;
}
section.basket .overviewer .pay {
  display: flex;
  gap: var(--gutter-half) var(--gutter);
  justify-content: flex-start;
}
section.basket .overviewer.thanks {
  grid-template-columns: 1fr;
}
@media only screen and (min-width: 960px) {
  section.basket .overviewer.thanks {
    grid-template-columns: 1fr 1fr;
  }
}
section.page-locked .row .column .maf-content form {
  border: 0.1rem solid rgb(30, 30, 30);
  border-radius: var(--gutter);
  max-width: 50rem;
  padding: var(--gutter);
}
section.page-locked .row .column .maf-content form .error {
  color: hsl(0, 45%, 51%);
}
section.alert-message {
  background-color: rgb(40, 35, 30);
  padding: 0.8rem var(--gutter);
  text-align: center;
  z-index: 1;
}
section.alert-message .row {
  max-width: none;
}
body.manageable section.alert-message {
  left: 0;
  position: absolute;
  top: 0;
}
section.card-highlight-test .column {
  min-width: auto;
}
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.mobile-hide {
  display: none;
}
@media only screen and (min-width: 576px) {
  section.mobile-hide {
    display: flex;
  }
}

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