:root {
  --app-height: 100dvh;
  --hdr-height: 8rem;
  --sec-space: 4rem;
  --grid-gutter: 1rem;
  --grid-spacing: 0.5rem;
  --bllt-clr: currentColor;
  --h-clr: inherit;
  --v-gap: 2.4rem;
  --nv-gap: calc( var(--v-gap) * -1 );
  --acc-clr: rgb(91, 167, 227);
  --bg-color: rgb(255, 255, 255);
}
@media only screen and (min-width: 576px) {
  :root {
    --grid-gutter: 2rem;
    --grid-spacing: 1rem;
  }
}
@media only screen and (min-width: 960px) {
  :root {
    --sec-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(58, 58, 58);
  font-family: "Archivo", sans-serif;
  font-size: 2rem;
  font-weight: 400;
  line-height: 1.6;
  position: relative;
}
@media only screen and (min-width: 576px) {
  header, section, footer {
    font-size: 2.4rem;
  }
}

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(--grid-gutter);
  justify-content: center;
  width: 100%;
}

section {
  opacity: 1;
  padding: var(--sec-space) var(--grid-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: 127.6rem;
  width: 100%;
  z-index: 1;
}
.header .maf-content, .footer .maf-content {
  align-items: inherit;
}

.row {
  align-content: center;
  align-items: center;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  display: grid;
  gap: var(--grid-gutter);
  grid-template-columns: repeat(auto-fit, minmax(37rem, 1fr));
  justify-content: center;
  max-width: 127.6rem;
  position: relative;
  width: 100%;
}

.column {
  align-content: center;
  align-items: center;
  background-color: transparent;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  display: flex;
  flex-direction: column;
  gap: var(--v-gap) var(--grid-gutter);
  justify-content: flex-start;
  min-width: 0;
  position: relative;
}
.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(--grid-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(--grid-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(--grid-gutter);
  text-align: left;
  position: relative;
}

a, a:visited {
  color: inherit;
  font-weight: inherit;
  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;
  width: 100%;
}

address {
  font-style: normal;
  font-weight: inherit;
  line-height: 1.6;
}
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: 600;
  line-height: 1.4;
  position: relative;
  width: 100%;
}

h1, .h1-style {
  font-size: 5rem;
  line-height: 1.2;
}
@media only screen and (min-width: 576px) {
  h1, .h1-style {
    font-size: 6.4rem;
  }
}

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

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

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

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

h6, .h6-style {
  font-size: 2.6rem;
}
@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.6;
}
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;
  line-height: inherit;
}

sup {
  font-size: 0.6em;
}

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

hr {
  background-color: transparent;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  border-top: 0.1rem solid currentColor;
  color: inherit;
  display: inline-block;
  height: 0;
  margin: 0;
  width: 100%;
}
hr.heavy {
  border-top: 0.5rem solid currentColor;
}

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

span {
  line-height: inherit;
}

.maf-content ul, .maf-content ol {
  list-style-position: outside;
  margin: 0;
  max-width: 100rem;
  padding: 0;
  width: 100%;
}
.maf-content ul li, .maf-content ol li {
  margin: 0 0 1.6rem 0;
  padding-left: 1.2em;
}
.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.6em;
  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(--grid-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(--grid-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: 2.4rem;
  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(91, 167, 227);
}
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(91, 167, 227);
}

input[type=submit],
input[type=reset],
button.maf-button {
  align-items: center;
  background-color: rgb(91, 167, 227);
  background-size: 100% 100%;
  border: 0.1rem solid rgb(91, 167, 227);
  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(91, 167, 227);
  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(91, 167, 227);
  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(91, 167, 227);
}
.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(91, 167, 227);
}
.checkbox .pretty-check input[type=checkbox]:checked + label:after {
  opacity: 1;
}
.checkbox .pretty-check input[type=checkbox]:checked + label:focus {
  background: rgb(91, 167, 227);
}
.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(91, 167, 227);
  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(91, 167, 227);
  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(91, 167, 227);
}
.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(91, 167, 227);
}
.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(91, 167, 227);
}

.select {
  background-color: white;
  border: 0.1rem solid rgb(58, 58, 58);
  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(58, 58, 58);
  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(58, 58, 58);
  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(58, 58, 58);
  border: 0.2rem solid rgb(58, 58, 58);
  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(58, 58, 58);
}
.file-button:focus-within span, .file-button:focus span {
  background-color: rgb(255, 255, 255);
  color: rgb(58, 58, 58);
}

.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(91, 167, 227);
  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(58, 58, 58);
  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(91, 167, 227);
  color: rgb(58, 58, 58);
  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(91, 167, 227);
  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(91, 167, 227);
  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(91, 167, 227);
}
.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(58, 58, 58);
  border-radius: 0.8rem;
  color: rgb(58, 58, 58);
  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(91, 167, 227);
}
.spinner-2.plus-minus .quantity-button {
  background-color: rgb(91, 167, 227);
  border: 0.2rem solid rgb(91, 167, 227);
  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(91, 167, 227);
}
.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(58, 58, 58);
  border-right: 0.3rem solid rgb(58, 58, 58);
  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(58, 58, 58);
  border-left: 0.3rem solid rgb(58, 58, 58);
  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(91, 167, 227);
}

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(--grid-spacing);
}
.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(58, 58, 58);
  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(91, 167, 227);
}
.maf-form form .maf-input.actions, .maf-form .form .maf-input.actions {
  align-items: center;
  display: flex;
  flex-direction: row;
  gap: 0.4rem var(--grid-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;
}

.button, .button:visited {
  align-items: center;
  background: none;
  background-color: transparent;
  border: 0.2rem solid currentColor;
  border-radius: 0;
  color: rgb(255, 255, 255);
  cursor: pointer;
  display: inline-flex;
  font-family: "Archivo", sans-serif;
  font-size: 2.4rem;
  font-style: normal;
  font-weight: 400;
  gap: 0.4rem;
  justify-content: flex-start;
  letter-spacing: inherit;
  line-height: 1;
  min-width: 22.2rem;
  opacity: 1;
  outline: transparent;
  padding: 1.2rem 1.8rem;
  position: relative;
  text-align: left;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  transition: all 300ms ease-out;
  width: auto;
  z-index: 1;
}
.button::after, .button:visited::after {
  content: url("data:image/svg+xml,%3Csvg width='17' height='28' viewBox='0 0 17 28' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2 26L14 14L2 2' stroke='white' stroke-width='3'/%3E%3C/svg%3E%0A");
  display: inline-block;
  margin-left: auto;
  transition: transform 300ms ease-out;
}
.button i, .button:visited i {
  margin-right: 0.5em;
}
.button:hover, .button:focus, .button:active, .button.active, .button:visited:hover, .button:visited:focus, .button:visited:active, .button:visited.active {
  background-color: rgba(255, 255, 255, 0.1);
  color: rgb(255, 255, 255);
  opacity: 1;
  text-decoration: none;
}
.button:hover::after, .button:focus::after, .button:active::after, .button.active::after, .button:visited:hover::after, .button:visited:focus::after, .button:visited:active::after, .button:visited.active::after {
  transform: translateX(0.4rem);
}
.button.less, .button:visited.less {
  opacity: 0.5;
}
.button.least, .button:visited.least {
  background-color: rgb(255, 255, 255);
  color: rgb(58, 58, 58);
}
.button.least::before, .button:visited.least::before {
  background-color: rgb(58, 58, 58);
  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);
}

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(58, 58, 58);
  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(58, 58, 58);
  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(91, 167, 227);
}
.is-toggle-group .toggle-click.active i, .is-toggle-group .toggle-click:hover i {
  color: rgb(91, 167, 227);
}
.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(58, 58, 58);
  margin: 0 0 3rem 0;
}
#http-error.e404 p {
  color: rgb(58, 58, 58);
  font-size: 2.5rem;
  margin: 0 auto 3rem auto;
  width: 60%;
}
#http-error.e404 #error {
  margin: 0 auto;
  padding: 0 var(--grid-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(58, 58, 58);
}
#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(58, 58, 58);
  --icon-size: 3.2rem;
  --text-colour: rgb(255, 255, 255);
  --text-size: 2.4rem;
  align-items: center;
  color: var(--text-colour);
  display: inline-flex;
  font-size: var(--text-size);
  justify-content: center;
  line-height: 0;
  margin: 0;
  width: auto;
}
.social-icons a {
  color: var(--text-colour);
  display: inline-block;
  line-height: 0;
  margin-right: 0.5em;
  opacity: 1;
  outline: none;
  padding: 0;
}
.social-icons a:last-child {
  margin-right: 0;
}
.social-icons a i {
  aspect-ratio: 1/1;
  background-color: var(--icon-colour);
  border: 0.2rem solid var(--icon-colour);
  border-radius: 0.4rem;
  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(--text-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;
}

.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(234, 235, 235);
  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(234, 235, 235);
  border-radius: 0;
  box-shadow: none;
  color: rgb(58, 58, 58);
  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(234, 235, 235);
  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(58, 58, 58);
  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(234, 235, 235);
  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(58, 58, 58);
  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(91, 167, 227);
  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;
}

div.ttc {
  display: grid;
  gap: var(--v-gap) var(--grid-gutter);
  grid-template-columns: 1fr;
}
@media only screen and (min-width: 576px) {
  div.ttc {
    grid-template-columns: 1fr 1fr;
  }
}
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(--grid-spacing) * -1);
  width: calc(100% + var(--grid-spacing) * 2);
}
.cardbox .maf-content {
  padding: 0;
}
.cardbox .card {
  --card-colour: rgb(58, 58, 58);
  --card-accent: rgb(91, 167, 227);
  --h-clr: rgb(58, 58, 58);
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: var(--grid-spacing);
  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 {
  background-color: rgb(255, 255, 255);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  border-radius: 0.5rem;
  color: rgb(58, 58, 58);
  cursor: pointer;
  display: inline-block;
  font-size: 1.8rem;
  font-style: normal;
  font-weight: 400;
  height: 100%;
  opacity: 1;
  outline: none;
  overflow: hidden;
  position: relative;
  text-align: left;
  text-decoration: none;
  transform-origin: center;
  transition: all 300ms ease-out;
  width: 100%;
}
.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-content: center;
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
  height: 100%;
  justify-content: center;
  position: relative;
  transition: all 300ms ease-out;
  width: 100%;
}
.cardbox .card .card-cats {
  border-radius: 0 0 0.5rem 0;
  background-color: rgb(91, 167, 227);
  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(91, 167, 227);
  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(91, 167, 227);
  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(91, 167, 227);
}
.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(--grid-spacing);
  width: 100%;
}
.cardbox aside.ad-block {
  cursor: pointer;
  display: inline-block;
  flex: 0 0 auto;
  padding: 0 var(--grid-spacing);
  width: 100%;
}
.cardbox .maf-msg {
  margin: 0 var(--grid-spacing) 3rem var(--grid-spacing);
  z-index: 1;
}
.cardbox.maf-crd-scrllr {
  display: grid;
  gap: 2rem;
  grid-auto-columns: 30.4rem;
  grid-auto-flow: column;
  justify-content: start;
  justify-items: start;
  max-width: 100vw;
  overflow-x: scroll;
  overflow-y: hidden;
  padding-right: max(1rem, 50vw - 63.8rem);
  padding-left: max(1rem, 50vw - 63.8rem);
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
}
@media only screen and (min-width: 576px) {
  .cardbox.maf-crd-scrllr {
    padding-right: max(2rem, 50vw - 63.8rem);
    padding-left: max(2rem, 50vw - 63.8rem);
  }
}
.cardbox.maf-crd-scrllr .card {
  flex: 0 0 auto;
  padding: 0;
  scroll-snap-align: start;
  scroll-margin-left: max(2rem, 50vw - 720px);
  width: auto;
}

.modal {
  align-items: center;
  background-color: rgba(0, 0, 0, 0.8);
  -webkit-backdrop-filter: blur(5px);
          backdrop-filter: blur(5px);
  color: rgb(58, 58, 58);
  display: flex;
  font-family: "Archivo", sans-serif;
  font-size: 2rem;
  font-weight: 400;
  height: var(--app-height);
  justify-content: center;
  left: 0;
  opacity: 0;
  padding: 8rem 1rem 1rem 1rem;
  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 1rem 1rem 1rem;
  }
}
.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 1rem;
  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: 1rem;
  text-align: center;
}
.modal > div .close {
  color: rgb(58, 58, 58);
  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%;
}

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(91, 167, 227);
  color: rgb(91, 167, 227);
  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;
}

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-size: 2.4rem;
  font-weight: 400;
  line-height: 1.4;
}
@media only screen and (min-width: 576px) {
  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-size: 3.2rem;
  }
}
section h1.no-margin, section .h1-style.no-margin, section h2.no-margin, section .h2-style.no-margin, section h3.no-margin, section .h3-style.no-margin, section h4.no-margin, section .h4-style.no-margin, section h5.no-margin, section .h5-style.no-margin, section h6.no-margin, section .h6-style.no-margin, section p.no-margin, section 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: 2rem;
  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: 2.4rem;
  }
}
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(58, 58, 58);
  }
  20% {
    background: rgb(234, 235, 235);
  }
  40% {
    background: rgb(230, 225, 220);
  }
  60% {
    background: rgb(130, 125, 120);
  }
  80% {
    background: rgb(255, 90, 0);
  }
  100% {
    background: rgb(58, 58, 58);
  }
}
@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(91, 167, 227);
  background-color: rgb(91, 167, 227) !important;
  --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: inherit;
}
.bg-1 .maf-content a:not(.button):hover, .bg-1 .maf-content a:not(.button).focus {
  color: inherit;
}

.bg-2 {
  --acc-clr: rgb(234, 235, 235);
  background-color: rgb(234, 235, 235) !important;
}

.bg-3 {
  --acc-clr: rgb(130, 125, 120);
  background-color: rgb(130, 125, 120) !important;
  --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: inherit;
}
.bg-3 .maf-content a:not(.button):hover, .bg-3 .maf-content a:not(.button).focus {
  color: inherit;
}

.bg-4 {
  background-color: rgb(230, 225, 220) !important;
}

.bg-5 {
  background-color: rgb(230, 225, 220);
}

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

.is-main-header {
  align-items: center;
  align-content: center;
  background-color: transparent;
  color: rgb(255, 255, 255);
  display: flex;
  height: 8rem;
  justify-content: center;
  padding: 0 var(--grid-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(--grid-gutter);
  grid-template-columns: minmax(auto, 30.4rem) 1fr;
  grid-template-rows: 1fr;
  height: inherit;
  justify-content: space-between;
  margin-left: auto;
  margin-right: auto;
  max-width: 127.6rem;
  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(58, 58, 58);
  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.squish {
  background-color: rgb(91, 167, 227);
  height: 8rem;
}
.is-main-header.squish.sh-hide {
  transform: translateY(-105%);
}

section {
  overflow: hidden;
}
section .row {
  grid-template-columns: 1fr;
}
section.is-hero {
  background-color: rgb(91, 167, 227);
  color: rgb(255, 255, 255);
  font-size: 2.4rem;
  min-height: var(--app-height);
  padding-top: 8rem;
  position: relative;
  transition: min-height 300ms ease-out, opacity 10ms ease-out;
}
@media only screen and (min-width: 768px) {
  section.is-hero {
    padding-top: 12rem;
  }
}
section.is-hero .spr-daisy {
  height: auto;
  left: 83%;
  opacity: 0.3;
  position: absolute;
  top: 39%;
  transform: translate(-50%, -50%);
  width: 65vw;
  z-index: 0;
}
section.is-hero .row {
  align-content: stretch;
  align-items: stretch;
  flex: 1 1 auto;
  grid-template-columns: 1fr;
  transition: opacity 10ms ease-out;
}
section.is-hero .row .column {
  align-items: flex-start;
  justify-content: center;
  text-align: left;
}
section.is-hero .row .column .maf-content {
  margin: auto 0;
  max-width: 84.8rem;
}
section.one-column .column {
  justify-content: center;
  text-align: center;
}
section.one-column .maf-content {
  align-items: center;
  max-width: 78.8568rem;
}
section.two-column ul {
  font-size: 2rem;
}
section.two-column .row {
  align-items: start;
}
@media only screen and (min-width: 960px) {
  section.two-column .row {
    grid-template-columns: 1fr 1fr;
  }
}
section.two-column .row .column .maf-content {
  align-items: flex-start;
}
@media only screen and (min-width: 960px) {
  section.two-column.img-right .row {
    grid-template-columns: 2fr 1fr;
  }
}
section.two-column.img-right .row .column.maf-col-1 {
  grid-row: 2;
}
@media only screen and (min-width: 960px) {
  section.two-column.img-right .row .column.maf-col-1 {
    grid-row: 1;
  }
}
section.two-column.img-right .row .column.maf-col-2 {
  grid-row: 1;
}
@media only screen and (min-width: 960px) {
  section.two-column.img-left .row {
    grid-template-columns: 1fr 2fr;
  }
}
section.two-column.el360 h2 {
  font-weight: 400;
}
section.two-column.el360 .page-lead {
  font-weight: 600;
}
section.two-column.el360 ul li {
  margin: 0;
}
section.two-column.el360 .row {
  align-items: center;
}
section.two-column.el360 .maf-col-1 .maf-content {
  max-width: 52rem;
}
section.two-column.el360 .maf-col-2 {
  aspect-ratio: 1/1;
  justify-content: center;
  padding: 10% 0;
  position: relative;
}
section.two-column.el360 .maf-col-2 .spr {
  aspect-ratio: 1/1;
  height: 100%;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: auto;
  z-index: 0;
}
section.two-column.el360 .maf-col-2 .maf-content {
  max-width: 34.1rem;
}
section.two-column.boxed {
  padding-top: 0;
  padding-bottom: var(--grid-gutter);
}
section.two-column.boxed .row {
  align-items: stretch;
}
section.two-column.boxed .column {
  background-color: rgb(234, 235, 235);
  padding: var(--sec-space) var(--grid-gutter);
}
section.two-column.boxed .maf-content {
  height: 100%;
  max-width: 41.2rem;
}
section.two-column.boxed .push-up {
  margin-top: auto;
}
section.two-column.caller {
  --h-clr: rgb(255, 255, 255);
  --bllt-clr: rgb(255, 255, 255);
  color: rgb(255, 255, 255);
  font-size: 3.6rem;
  background-color: rgb(91, 167, 227);
  max-width: 127.6rem;
}
section.two-column.caller .maf-content > *:not(.button) {
  color: inherit;
}
section.two-column.caller .maf-content a:not(.button) {
  color: inherit;
}
section.two-column.caller .maf-content a:not(.button):hover, section.two-column.caller .maf-content a:not(.button).focus {
  color: inherit;
}
@media only screen and (min-width: 576px) {
  section.two-column.caller {
    font-size: 4rem;
  }
}
section.two-column.caller .row {
  max-width: 106rem;
}
@media only screen and (min-width: 960px) {
  section.two-column.caller .row {
    grid-template-columns: 4fr 1fr;
  }
}
section.two-column.caller .maf-content {
  max-width: 79.4rem;
}
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;
  font-size: 1.6rem;
  padding-right: 2rem;
  position: relative;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  section.slideshow-section .flickity-slideshow .ss-slide, section.slideshow-section .flickity-slideshow-edit .ss-slide {
    width: 50%;
  }
}
@media only screen and (min-width: 960px) {
  section.slideshow-section .flickity-slideshow .ss-slide, section.slideshow-section .flickity-slideshow-edit .ss-slide {
    width: 33.333%;
  }
}
section.slideshow-section .flickity-slideshow .ss-slide > div, section.slideshow-section .flickity-slideshow-edit .ss-slide > div {
  max-width: 90%;
  position: relative;
  text-align: left;
}

.is-footer {
  background-color: rgb(255, 255, 255);
  color: rgb(58, 58, 58);
  overflow: hidden;
  position: relative;
}
.is-footer a:not(.button) {
  font-style: normal;
  text-decoration: none;
}
.is-footer .phone-block {
  display: flex;
  font-size: 1.6rem;
  gap: 0.3em;
}
.is-footer .phone-block span:first-child {
  display: inline-block;
  min-width: 9rem;
}
.is-footer section {
  color: rgb(58, 58, 58);
}
.is-footer section.footer-section .row {
  align-items: start;
}
@media only screen and (min-width: 960px) {
  .is-footer section.footer-section .row {
    grid-template-columns: repeat(2, 1fr);
  }
}
.is-footer section.footer-section .row .column {
  align-items: flex-start;
  text-align: left;
}
@media only screen and (min-width: 960px) {
  .is-footer section.footer-section .row .column.maf-col-2 {
    align-items: flex-end;
    text-align: right;
  }
}/*# sourceMappingURL=tvw-main.css.map */