﻿@charset "UTF-8";
/***
    The new CSS reset - version 1.7.3 (last updated 7.8.2022)
    GitHub page: https://github.com/elad2412/the-new-css-reset
***/
/*
    Remove all the styles of the "User-Agent-Stylesheet", except for the 'display' property
    - The "symbol *" part is to solve Firefox SVG sprite bug
 */
*:where(:not(html, iframe, canvas, img, svg, video, audio):not(svg *, symbol *)) {
  all: unset;
  display: revert;
}

/* Preferred box-sizing value */
*,
*::before,
*::after {
  box-sizing: border-box;
}

/* Reapply the pointer cursor for anchor tags */
a, button {
  cursor: revert;
}

/* Remove list styles (bullets/numbers) */
ol, ul, menu {
  list-style: none;
}

/* For images to not be able to exceed their container */
img {
  max-width: 100%;
}

/* removes spacing between cells in tables */
table {
  border-collapse: collapse;
}

/* Safari - solving issue when using user-select:none on the <body> text input doesn't working */
input, textarea {
  -webkit-user-select: auto;
}

/* revert the 'white-space' property for textarea elements on Safari */
textarea {
  white-space: revert;
}

/* minimum style to allow to style meter element */
meter {
  -webkit-appearance: revert;
  appearance: revert;
}

/* reset default text opacity of input placeholder */
::placeholder {
  color: unset;
}

/* fix the feature of 'hidden' attribute.
 display:revert; revert to element instead of attribute */
:where([hidden]) {
  display: none;
}

/* revert for bug in Chromium browsers
 - fix for the content editable attribute will work properly.
 - webkit-user-select: auto; added for Safari in case of using user-select:none on wrapper element*/
:where([contenteditable]:not([contenteditable=false])) {
  -moz-user-modify: read-write;
  -webkit-user-modify: read-write;
  overflow-wrap: break-word;
  -webkit-line-break: after-white-space;
  -webkit-user-select: auto;
}

/* apply back the draggable feature - exist only in Chromium and Safari */
:where([draggable=true]) {
  -webkit-user-drag: element;
}

img {
  height: auto;
}

html {
  font-family: Helvetica, Arial, sans-serif;
  color: black;
  line-height: 1.5;
  font-size: 16px;
  background-color: #FFF;
}

.video-wrapper {
  position: relative;
  padding-bottom: 56.25%; /* 16:9 */
  height: 0;
  background: black;
}
.video-wrapper iframe,
.video-wrapper video {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.container {
  width: 100%;
}

.row {
  box-sizing: border-box;
  margin: 0 auto;
  width: 100%;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  flex: 0 1 auto;
  flex-direction: row;
  flex-wrap: wrap;
  max-width: 1280px;
  padding: 0 16px;
}
@media only screen and (min-width: 100.0625rem) {
  .row {
    padding: 0 48px;
  }
}

.row-fluid {
  box-sizing: border-box;
  margin: 0 auto;
  padding: 0;
  width: 100%;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  flex: 0 1 auto;
  flex-direction: row;
  flex-wrap: wrap;
}

.row.reverse {
  flex-direction: row-reverse;
}

.row.natural-height {
  align-items: flex-start;
}

.row.flex-column {
  flex-direction: column;
}

.col {
  box-sizing: border-box;
  flex-grow: 1;
  flex-basis: 0;
  max-width: 100%;
  padding: 0 16px;
}

.col.reverse {
  flex-direction: column-reverse;
}

.first {
  order: -1;
}

.last {
  order: 1;
}

.align-start {
  align-self: flex-start;
}

.align-end {
  align-self: flex-end;
}

.align-center {
  align-self: center;
}

.align-baseline {
  align-self: baseline;
}

.align-stretch {
  align-self: stretch;
}

.col-xs {
  box-sizing: border-box;
  flex-grow: 1;
  flex-basis: 0;
  max-width: 100%;
  padding: 0 8px;
}
@media only screen and (min-width: 62.5625rem) {
  .col-xs {
    padding: 0 16px;
  }
}

.col-xs-1 {
  box-sizing: border-box;
  flex-basis: 8.3333333333%;
  max-width: 8.3333333333%;
  padding: 0 8px;
}
@media only screen and (min-width: 62.5625rem) {
  .col-xs-1 {
    padding: 0 16px;
  }
}

.col-xs-offset-1 {
  margin-left: 8.3333333333%;
}

.col-xs-2 {
  box-sizing: border-box;
  flex-basis: 16.6666666667%;
  max-width: 16.6666666667%;
  padding: 0 8px;
}
@media only screen and (min-width: 62.5625rem) {
  .col-xs-2 {
    padding: 0 16px;
  }
}

.col-xs-offset-2 {
  margin-left: 16.6666666667%;
}

.col-xs-3 {
  box-sizing: border-box;
  flex-basis: 25%;
  max-width: 25%;
  padding: 0 8px;
}
@media only screen and (min-width: 62.5625rem) {
  .col-xs-3 {
    padding: 0 16px;
  }
}

.col-xs-offset-3 {
  margin-left: 25%;
}

.col-xs-4 {
  box-sizing: border-box;
  flex-basis: 33.3333333333%;
  max-width: 33.3333333333%;
  padding: 0 8px;
}
@media only screen and (min-width: 62.5625rem) {
  .col-xs-4 {
    padding: 0 16px;
  }
}

.col-xs-offset-4 {
  margin-left: 33.3333333333%;
}

.col-xs-5 {
  box-sizing: border-box;
  flex-basis: 41.6666666667%;
  max-width: 41.6666666667%;
  padding: 0 8px;
}
@media only screen and (min-width: 62.5625rem) {
  .col-xs-5 {
    padding: 0 16px;
  }
}

.col-xs-offset-5 {
  margin-left: 41.6666666667%;
}

.col-xs-6 {
  box-sizing: border-box;
  flex-basis: 50%;
  max-width: 50%;
  padding: 0 8px;
}
@media only screen and (min-width: 62.5625rem) {
  .col-xs-6 {
    padding: 0 16px;
  }
}

.col-xs-offset-6 {
  margin-left: 50%;
}

.col-xs-7 {
  box-sizing: border-box;
  flex-basis: 58.3333333333%;
  max-width: 58.3333333333%;
  padding: 0 8px;
}
@media only screen and (min-width: 62.5625rem) {
  .col-xs-7 {
    padding: 0 16px;
  }
}

.col-xs-offset-7 {
  margin-left: 58.3333333333%;
}

.col-xs-8 {
  box-sizing: border-box;
  flex-basis: 66.6666666667%;
  max-width: 66.6666666667%;
  padding: 0 8px;
}
@media only screen and (min-width: 62.5625rem) {
  .col-xs-8 {
    padding: 0 16px;
  }
}

.col-xs-offset-8 {
  margin-left: 66.6666666667%;
}

.col-xs-9 {
  box-sizing: border-box;
  flex-basis: 75%;
  max-width: 75%;
  padding: 0 8px;
}
@media only screen and (min-width: 62.5625rem) {
  .col-xs-9 {
    padding: 0 16px;
  }
}

.col-xs-offset-9 {
  margin-left: 75%;
}

.col-xs-10 {
  box-sizing: border-box;
  flex-basis: 83.3333333333%;
  max-width: 83.3333333333%;
  padding: 0 8px;
}
@media only screen and (min-width: 62.5625rem) {
  .col-xs-10 {
    padding: 0 16px;
  }
}

.col-xs-offset-10 {
  margin-left: 83.3333333333%;
}

.col-xs-11 {
  box-sizing: border-box;
  flex-basis: 91.6666666667%;
  max-width: 91.6666666667%;
  padding: 0 8px;
}
@media only screen and (min-width: 62.5625rem) {
  .col-xs-11 {
    padding: 0 16px;
  }
}

.col-xs-offset-11 {
  margin-left: 91.6666666667%;
}

.col-xs-12 {
  box-sizing: border-box;
  flex-basis: 100%;
  max-width: 100%;
  padding: 0 8px;
}
@media only screen and (min-width: 62.5625rem) {
  .col-xs-12 {
    padding: 0 16px;
  }
}

.col-xs-offset-12 {
  margin-left: 100%;
}

.row.start-xs {
  justify-content: flex-start;
}

.row.center-xs {
  justify-content: center;
}

.row.end-xs {
  justify-content: flex-end;
}

.row.top-xs {
  align-items: flex-start;
}

.row.middle-xs {
  align-items: center;
}

.row.bottom-xs {
  align-items: flex-end;
}

.row.around-xs {
  justify-content: space-around;
}

.row.between-xs {
  justify-content: space-between;
}

.first-xs {
  order: -1;
}

.last-xs {
  order: 1;
}

@media only screen and (min-width: 37.5625rem) {
  .col-sm {
    box-sizing: border-box;
    flex-grow: 1;
    flex-basis: 0;
    max-width: 100%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 37.5625rem) and (min-width: 62.5625rem) {
  .col-sm {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 37.5625rem) {
  .col-sm-1 {
    box-sizing: border-box;
    flex-basis: 8.3333333333%;
    max-width: 8.3333333333%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 37.5625rem) and (min-width: 62.5625rem) {
  .col-sm-1 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 37.5625rem) {
  .col-sm-offset-1 {
    margin-left: 8.3333333333%;
  }
}
@media only screen and (min-width: 37.5625rem) {
  .col-sm-2 {
    box-sizing: border-box;
    flex-basis: 16.6666666667%;
    max-width: 16.6666666667%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 37.5625rem) and (min-width: 62.5625rem) {
  .col-sm-2 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 37.5625rem) {
  .col-sm-offset-2 {
    margin-left: 16.6666666667%;
  }
}
@media only screen and (min-width: 37.5625rem) {
  .col-sm-3 {
    box-sizing: border-box;
    flex-basis: 25%;
    max-width: 25%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 37.5625rem) and (min-width: 62.5625rem) {
  .col-sm-3 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 37.5625rem) {
  .col-sm-offset-3 {
    margin-left: 25%;
  }
}
@media only screen and (min-width: 37.5625rem) {
  .col-sm-4 {
    box-sizing: border-box;
    flex-basis: 33.3333333333%;
    max-width: 33.3333333333%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 37.5625rem) and (min-width: 62.5625rem) {
  .col-sm-4 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 37.5625rem) {
  .col-sm-offset-4 {
    margin-left: 33.3333333333%;
  }
}
@media only screen and (min-width: 37.5625rem) {
  .col-sm-5 {
    box-sizing: border-box;
    flex-basis: 41.6666666667%;
    max-width: 41.6666666667%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 37.5625rem) and (min-width: 62.5625rem) {
  .col-sm-5 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 37.5625rem) {
  .col-sm-offset-5 {
    margin-left: 41.6666666667%;
  }
}
@media only screen and (min-width: 37.5625rem) {
  .col-sm-6 {
    box-sizing: border-box;
    flex-basis: 50%;
    max-width: 50%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 37.5625rem) and (min-width: 62.5625rem) {
  .col-sm-6 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 37.5625rem) {
  .col-sm-offset-6 {
    margin-left: 50%;
  }
}
@media only screen and (min-width: 37.5625rem) {
  .col-sm-7 {
    box-sizing: border-box;
    flex-basis: 58.3333333333%;
    max-width: 58.3333333333%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 37.5625rem) and (min-width: 62.5625rem) {
  .col-sm-7 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 37.5625rem) {
  .col-sm-offset-7 {
    margin-left: 58.3333333333%;
  }
}
@media only screen and (min-width: 37.5625rem) {
  .col-sm-8 {
    box-sizing: border-box;
    flex-basis: 66.6666666667%;
    max-width: 66.6666666667%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 37.5625rem) and (min-width: 62.5625rem) {
  .col-sm-8 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 37.5625rem) {
  .col-sm-offset-8 {
    margin-left: 66.6666666667%;
  }
}
@media only screen and (min-width: 37.5625rem) {
  .col-sm-9 {
    box-sizing: border-box;
    flex-basis: 75%;
    max-width: 75%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 37.5625rem) and (min-width: 62.5625rem) {
  .col-sm-9 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 37.5625rem) {
  .col-sm-offset-9 {
    margin-left: 75%;
  }
}
@media only screen and (min-width: 37.5625rem) {
  .col-sm-10 {
    box-sizing: border-box;
    flex-basis: 83.3333333333%;
    max-width: 83.3333333333%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 37.5625rem) and (min-width: 62.5625rem) {
  .col-sm-10 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 37.5625rem) {
  .col-sm-offset-10 {
    margin-left: 83.3333333333%;
  }
}
@media only screen and (min-width: 37.5625rem) {
  .col-sm-11 {
    box-sizing: border-box;
    flex-basis: 91.6666666667%;
    max-width: 91.6666666667%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 37.5625rem) and (min-width: 62.5625rem) {
  .col-sm-11 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 37.5625rem) {
  .col-sm-offset-11 {
    margin-left: 91.6666666667%;
  }
}
@media only screen and (min-width: 37.5625rem) {
  .col-sm-12 {
    box-sizing: border-box;
    flex-basis: 100%;
    max-width: 100%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 37.5625rem) and (min-width: 62.5625rem) {
  .col-sm-12 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 37.5625rem) {
  .col-sm-offset-12 {
    margin-left: 100%;
  }
}
@media only screen and (min-width: 37.5625rem) {
  .row.start-sm {
    justify-content: flex-start;
  }
}
@media only screen and (min-width: 37.5625rem) {
  .row.center-sm {
    justify-content: center;
  }
}
@media only screen and (min-width: 37.5625rem) {
  .row.end-sm {
    justify-content: flex-end;
  }
}
@media only screen and (min-width: 37.5625rem) {
  .row.top-sm {
    align-items: flex-start;
  }
}
@media only screen and (min-width: 37.5625rem) {
  .row.middle-sm {
    align-items: center;
  }
}
@media only screen and (min-width: 37.5625rem) {
  .row.bottom-sm {
    align-items: flex-end;
  }
}
@media only screen and (min-width: 37.5625rem) {
  .row.around-sm {
    justify-content: space-around;
  }
}
@media only screen and (min-width: 37.5625rem) {
  .row.between-sm {
    justify-content: space-between;
  }
}
@media only screen and (min-width: 37.5625rem) {
  .first-sm {
    order: -1;
  }
}
@media only screen and (min-width: 37.5625rem) {
  .last-sm {
    order: 1;
  }
}
@media only screen and (min-width: 62.5625rem) {
  .col-md {
    box-sizing: border-box;
    flex-grow: 1;
    flex-basis: 0;
    max-width: 100%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 62.5625rem) and (min-width: 62.5625rem) {
  .col-md {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 62.5625rem) {
  .col-md-1 {
    box-sizing: border-box;
    flex-basis: 8.3333333333%;
    max-width: 8.3333333333%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 62.5625rem) and (min-width: 62.5625rem) {
  .col-md-1 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 62.5625rem) {
  .col-md-offset-1 {
    margin-left: 8.3333333333%;
  }
}
@media only screen and (min-width: 62.5625rem) {
  .col-md-2 {
    box-sizing: border-box;
    flex-basis: 16.6666666667%;
    max-width: 16.6666666667%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 62.5625rem) and (min-width: 62.5625rem) {
  .col-md-2 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 62.5625rem) {
  .col-md-offset-2 {
    margin-left: 16.6666666667%;
  }
}
@media only screen and (min-width: 62.5625rem) {
  .col-md-3 {
    box-sizing: border-box;
    flex-basis: 25%;
    max-width: 25%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 62.5625rem) and (min-width: 62.5625rem) {
  .col-md-3 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 62.5625rem) {
  .col-md-offset-3 {
    margin-left: 25%;
  }
}
@media only screen and (min-width: 62.5625rem) {
  .col-md-4 {
    box-sizing: border-box;
    flex-basis: 33.3333333333%;
    max-width: 33.3333333333%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 62.5625rem) and (min-width: 62.5625rem) {
  .col-md-4 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 62.5625rem) {
  .col-md-offset-4 {
    margin-left: 33.3333333333%;
  }
}
@media only screen and (min-width: 62.5625rem) {
  .col-md-5 {
    box-sizing: border-box;
    flex-basis: 41.6666666667%;
    max-width: 41.6666666667%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 62.5625rem) and (min-width: 62.5625rem) {
  .col-md-5 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 62.5625rem) {
  .col-md-offset-5 {
    margin-left: 41.6666666667%;
  }
}
@media only screen and (min-width: 62.5625rem) {
  .col-md-6 {
    box-sizing: border-box;
    flex-basis: 50%;
    max-width: 50%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 62.5625rem) and (min-width: 62.5625rem) {
  .col-md-6 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 62.5625rem) {
  .col-md-offset-6 {
    margin-left: 50%;
  }
}
@media only screen and (min-width: 62.5625rem) {
  .col-md-7 {
    box-sizing: border-box;
    flex-basis: 58.3333333333%;
    max-width: 58.3333333333%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 62.5625rem) and (min-width: 62.5625rem) {
  .col-md-7 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 62.5625rem) {
  .col-md-offset-7 {
    margin-left: 58.3333333333%;
  }
}
@media only screen and (min-width: 62.5625rem) {
  .col-md-8 {
    box-sizing: border-box;
    flex-basis: 66.6666666667%;
    max-width: 66.6666666667%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 62.5625rem) and (min-width: 62.5625rem) {
  .col-md-8 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 62.5625rem) {
  .col-md-offset-8 {
    margin-left: 66.6666666667%;
  }
}
@media only screen and (min-width: 62.5625rem) {
  .col-md-9 {
    box-sizing: border-box;
    flex-basis: 75%;
    max-width: 75%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 62.5625rem) and (min-width: 62.5625rem) {
  .col-md-9 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 62.5625rem) {
  .col-md-offset-9 {
    margin-left: 75%;
  }
}
@media only screen and (min-width: 62.5625rem) {
  .col-md-10 {
    box-sizing: border-box;
    flex-basis: 83.3333333333%;
    max-width: 83.3333333333%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 62.5625rem) and (min-width: 62.5625rem) {
  .col-md-10 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 62.5625rem) {
  .col-md-offset-10 {
    margin-left: 83.3333333333%;
  }
}
@media only screen and (min-width: 62.5625rem) {
  .col-md-11 {
    box-sizing: border-box;
    flex-basis: 91.6666666667%;
    max-width: 91.6666666667%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 62.5625rem) and (min-width: 62.5625rem) {
  .col-md-11 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 62.5625rem) {
  .col-md-offset-11 {
    margin-left: 91.6666666667%;
  }
}
@media only screen and (min-width: 62.5625rem) {
  .col-md-12 {
    box-sizing: border-box;
    flex-basis: 100%;
    max-width: 100%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 62.5625rem) and (min-width: 62.5625rem) {
  .col-md-12 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 62.5625rem) {
  .col-md-offset-12 {
    margin-left: 100%;
  }
}
@media only screen and (min-width: 62.5625rem) {
  .row.start-md {
    justify-content: flex-start;
  }
}
@media only screen and (min-width: 62.5625rem) {
  .row.center-md {
    justify-content: center;
  }
}
@media only screen and (min-width: 62.5625rem) {
  .row.end-md {
    justify-content: flex-end;
  }
}
@media only screen and (min-width: 62.5625rem) {
  .row.top-md {
    align-items: flex-start;
  }
}
@media only screen and (min-width: 62.5625rem) {
  .row.middle-md {
    align-items: center;
  }
}
@media only screen and (min-width: 62.5625rem) {
  .row.bottom-md {
    align-items: flex-end;
  }
}
@media only screen and (min-width: 62.5625rem) {
  .row.around-md {
    justify-content: space-around;
  }
}
@media only screen and (min-width: 62.5625rem) {
  .row.between-md {
    justify-content: space-between;
  }
}
@media only screen and (min-width: 62.5625rem) {
  .first-md {
    order: -1;
  }
}
@media only screen and (min-width: 62.5625rem) {
  .last-md {
    order: 1;
  }
}
@media only screen and (min-width: 100.0625rem) {
  .col-lg {
    box-sizing: border-box;
    flex-grow: 1;
    flex-basis: 0;
    max-width: 100%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 100.0625rem) and (min-width: 62.5625rem) {
  .col-lg {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 100.0625rem) {
  .col-lg-1 {
    box-sizing: border-box;
    flex-basis: 8.3333333333%;
    max-width: 8.3333333333%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 100.0625rem) and (min-width: 62.5625rem) {
  .col-lg-1 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 100.0625rem) {
  .col-lg-offset-1 {
    margin-left: 8.3333333333%;
  }
}
@media only screen and (min-width: 100.0625rem) {
  .col-lg-2 {
    box-sizing: border-box;
    flex-basis: 16.6666666667%;
    max-width: 16.6666666667%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 100.0625rem) and (min-width: 62.5625rem) {
  .col-lg-2 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 100.0625rem) {
  .col-lg-offset-2 {
    margin-left: 16.6666666667%;
  }
}
@media only screen and (min-width: 100.0625rem) {
  .col-lg-3 {
    box-sizing: border-box;
    flex-basis: 25%;
    max-width: 25%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 100.0625rem) and (min-width: 62.5625rem) {
  .col-lg-3 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 100.0625rem) {
  .col-lg-offset-3 {
    margin-left: 25%;
  }
}
@media only screen and (min-width: 100.0625rem) {
  .col-lg-4 {
    box-sizing: border-box;
    flex-basis: 33.3333333333%;
    max-width: 33.3333333333%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 100.0625rem) and (min-width: 62.5625rem) {
  .col-lg-4 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 100.0625rem) {
  .col-lg-offset-4 {
    margin-left: 33.3333333333%;
  }
}
@media only screen and (min-width: 100.0625rem) {
  .col-lg-5 {
    box-sizing: border-box;
    flex-basis: 41.6666666667%;
    max-width: 41.6666666667%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 100.0625rem) and (min-width: 62.5625rem) {
  .col-lg-5 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 100.0625rem) {
  .col-lg-offset-5 {
    margin-left: 41.6666666667%;
  }
}
@media only screen and (min-width: 100.0625rem) {
  .col-lg-6 {
    box-sizing: border-box;
    flex-basis: 50%;
    max-width: 50%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 100.0625rem) and (min-width: 62.5625rem) {
  .col-lg-6 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 100.0625rem) {
  .col-lg-offset-6 {
    margin-left: 50%;
  }
}
@media only screen and (min-width: 100.0625rem) {
  .col-lg-7 {
    box-sizing: border-box;
    flex-basis: 58.3333333333%;
    max-width: 58.3333333333%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 100.0625rem) and (min-width: 62.5625rem) {
  .col-lg-7 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 100.0625rem) {
  .col-lg-offset-7 {
    margin-left: 58.3333333333%;
  }
}
@media only screen and (min-width: 100.0625rem) {
  .col-lg-8 {
    box-sizing: border-box;
    flex-basis: 66.6666666667%;
    max-width: 66.6666666667%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 100.0625rem) and (min-width: 62.5625rem) {
  .col-lg-8 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 100.0625rem) {
  .col-lg-offset-8 {
    margin-left: 66.6666666667%;
  }
}
@media only screen and (min-width: 100.0625rem) {
  .col-lg-9 {
    box-sizing: border-box;
    flex-basis: 75%;
    max-width: 75%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 100.0625rem) and (min-width: 62.5625rem) {
  .col-lg-9 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 100.0625rem) {
  .col-lg-offset-9 {
    margin-left: 75%;
  }
}
@media only screen and (min-width: 100.0625rem) {
  .col-lg-10 {
    box-sizing: border-box;
    flex-basis: 83.3333333333%;
    max-width: 83.3333333333%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 100.0625rem) and (min-width: 62.5625rem) {
  .col-lg-10 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 100.0625rem) {
  .col-lg-offset-10 {
    margin-left: 83.3333333333%;
  }
}
@media only screen and (min-width: 100.0625rem) {
  .col-lg-11 {
    box-sizing: border-box;
    flex-basis: 91.6666666667%;
    max-width: 91.6666666667%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 100.0625rem) and (min-width: 62.5625rem) {
  .col-lg-11 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 100.0625rem) {
  .col-lg-offset-11 {
    margin-left: 91.6666666667%;
  }
}
@media only screen and (min-width: 100.0625rem) {
  .col-lg-12 {
    box-sizing: border-box;
    flex-basis: 100%;
    max-width: 100%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 100.0625rem) and (min-width: 62.5625rem) {
  .col-lg-12 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 100.0625rem) {
  .col-lg-offset-12 {
    margin-left: 100%;
  }
}
@media only screen and (min-width: 100.0625rem) {
  .row.start-lg {
    justify-content: flex-start;
  }
}
@media only screen and (min-width: 100.0625rem) {
  .row.center-lg {
    justify-content: center;
  }
}
@media only screen and (min-width: 100.0625rem) {
  .row.end-lg {
    justify-content: flex-end;
  }
}
@media only screen and (min-width: 100.0625rem) {
  .row.top-lg {
    align-items: flex-start;
  }
}
@media only screen and (min-width: 100.0625rem) {
  .row.middle-lg {
    align-items: center;
  }
}
@media only screen and (min-width: 100.0625rem) {
  .row.bottom-lg {
    align-items: flex-end;
  }
}
@media only screen and (min-width: 100.0625rem) {
  .row.around-lg {
    justify-content: space-around;
  }
}
@media only screen and (min-width: 100.0625rem) {
  .row.between-lg {
    justify-content: space-between;
  }
}
@media only screen and (min-width: 100.0625rem) {
  .first-lg {
    order: -1;
  }
}
@media only screen and (min-width: 100.0625rem) {
  .last-lg {
    order: 1;
  }
}
@media only screen and (min-width: 120.0625rem) {
  .col-xl {
    box-sizing: border-box;
    flex-grow: 1;
    flex-basis: 0;
    max-width: 100%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 120.0625rem) and (min-width: 62.5625rem) {
  .col-xl {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 120.0625rem) {
  .col-xl-1 {
    box-sizing: border-box;
    flex-basis: 8.3333333333%;
    max-width: 8.3333333333%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 120.0625rem) and (min-width: 62.5625rem) {
  .col-xl-1 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 120.0625rem) {
  .col-xl-offset-1 {
    margin-left: 8.3333333333%;
  }
}
@media only screen and (min-width: 120.0625rem) {
  .col-xl-2 {
    box-sizing: border-box;
    flex-basis: 16.6666666667%;
    max-width: 16.6666666667%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 120.0625rem) and (min-width: 62.5625rem) {
  .col-xl-2 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 120.0625rem) {
  .col-xl-offset-2 {
    margin-left: 16.6666666667%;
  }
}
@media only screen and (min-width: 120.0625rem) {
  .col-xl-3 {
    box-sizing: border-box;
    flex-basis: 25%;
    max-width: 25%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 120.0625rem) and (min-width: 62.5625rem) {
  .col-xl-3 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 120.0625rem) {
  .col-xl-offset-3 {
    margin-left: 25%;
  }
}
@media only screen and (min-width: 120.0625rem) {
  .col-xl-4 {
    box-sizing: border-box;
    flex-basis: 33.3333333333%;
    max-width: 33.3333333333%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 120.0625rem) and (min-width: 62.5625rem) {
  .col-xl-4 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 120.0625rem) {
  .col-xl-offset-4 {
    margin-left: 33.3333333333%;
  }
}
@media only screen and (min-width: 120.0625rem) {
  .col-xl-5 {
    box-sizing: border-box;
    flex-basis: 41.6666666667%;
    max-width: 41.6666666667%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 120.0625rem) and (min-width: 62.5625rem) {
  .col-xl-5 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 120.0625rem) {
  .col-xl-offset-5 {
    margin-left: 41.6666666667%;
  }
}
@media only screen and (min-width: 120.0625rem) {
  .col-xl-6 {
    box-sizing: border-box;
    flex-basis: 50%;
    max-width: 50%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 120.0625rem) and (min-width: 62.5625rem) {
  .col-xl-6 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 120.0625rem) {
  .col-xl-offset-6 {
    margin-left: 50%;
  }
}
@media only screen and (min-width: 120.0625rem) {
  .col-xl-7 {
    box-sizing: border-box;
    flex-basis: 58.3333333333%;
    max-width: 58.3333333333%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 120.0625rem) and (min-width: 62.5625rem) {
  .col-xl-7 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 120.0625rem) {
  .col-xl-offset-7 {
    margin-left: 58.3333333333%;
  }
}
@media only screen and (min-width: 120.0625rem) {
  .col-xl-8 {
    box-sizing: border-box;
    flex-basis: 66.6666666667%;
    max-width: 66.6666666667%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 120.0625rem) and (min-width: 62.5625rem) {
  .col-xl-8 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 120.0625rem) {
  .col-xl-offset-8 {
    margin-left: 66.6666666667%;
  }
}
@media only screen and (min-width: 120.0625rem) {
  .col-xl-9 {
    box-sizing: border-box;
    flex-basis: 75%;
    max-width: 75%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 120.0625rem) and (min-width: 62.5625rem) {
  .col-xl-9 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 120.0625rem) {
  .col-xl-offset-9 {
    margin-left: 75%;
  }
}
@media only screen and (min-width: 120.0625rem) {
  .col-xl-10 {
    box-sizing: border-box;
    flex-basis: 83.3333333333%;
    max-width: 83.3333333333%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 120.0625rem) and (min-width: 62.5625rem) {
  .col-xl-10 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 120.0625rem) {
  .col-xl-offset-10 {
    margin-left: 83.3333333333%;
  }
}
@media only screen and (min-width: 120.0625rem) {
  .col-xl-11 {
    box-sizing: border-box;
    flex-basis: 91.6666666667%;
    max-width: 91.6666666667%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 120.0625rem) and (min-width: 62.5625rem) {
  .col-xl-11 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 120.0625rem) {
  .col-xl-offset-11 {
    margin-left: 91.6666666667%;
  }
}
@media only screen and (min-width: 120.0625rem) {
  .col-xl-12 {
    box-sizing: border-box;
    flex-basis: 100%;
    max-width: 100%;
    padding: 0 8px;
  }
}
@media only screen and (min-width: 120.0625rem) and (min-width: 62.5625rem) {
  .col-xl-12 {
    padding: 0 16px;
  }
}
@media only screen and (min-width: 120.0625rem) {
  .col-xl-offset-12 {
    margin-left: 100%;
  }
}
@media only screen and (min-width: 120.0625rem) {
  .row.start-xl {
    justify-content: flex-start;
  }
}
@media only screen and (min-width: 120.0625rem) {
  .row.center-xl {
    justify-content: center;
  }
}
@media only screen and (min-width: 120.0625rem) {
  .row.end-xl {
    justify-content: flex-end;
  }
}
@media only screen and (min-width: 120.0625rem) {
  .row.top-xl {
    align-items: flex-start;
  }
}
@media only screen and (min-width: 120.0625rem) {
  .row.middle-xl {
    align-items: center;
  }
}
@media only screen and (min-width: 120.0625rem) {
  .row.bottom-xl {
    align-items: flex-end;
  }
}
@media only screen and (min-width: 120.0625rem) {
  .row.around-xl {
    justify-content: space-around;
  }
}
@media only screen and (min-width: 120.0625rem) {
  .row.between-xl {
    justify-content: space-between;
  }
}
@media only screen and (min-width: 120.0625rem) {
  .first-xl {
    order: -1;
  }
}
@media only screen and (min-width: 120.0625rem) {
  .last-xl {
    order: 1;
  }
}
.col-gutter-lr {
  padding: 0 0 8px;
}
@media only screen and (min-width: 62.5625rem) {
  .col-gutter-lr {
    padding: 0 16px;
  }
}

.col-no-gutter {
  padding: 0;
}

.show-hide-list .item {
  margin-bottom: 1rem;
}
.show-hide-list .content {
  overflow: hidden;
  height: 0px;
  opacity: 0;
  transition: all 0.2s ease;
}
.show-hide-list .trigger {
  cursor: pointer;
  display: inline-flex;
}
.show-hide-list .trigger:after {
  transition: all 0.2s ease;
  content: "";
  margin-left: 1rem;
  width: 0.5rem;
  height: 0.5rem;
  position: relative;
  top: 0.5rem;
  border: 2px solid #ccc;
  display: inline-flex;
  border-top: 0;
  border-left: 0;
  transform: rotate(45deg);
}
.show-hide-list li.active .trigger:after {
  top: 0.8rem;
  transform: rotate(-135deg);
}
.show-hide-list li.active .content {
  opacity: 1;
  padding: 1rem 0;
  height: auto;
}

.visually-hidden {
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  height: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

.table-wrapper {
  overflow-x: auto;
  width: 100%;
  padding: 10px 0;
}

/* ============================================================================= 
Forms
========================================================================== */
form input:-webkit-autofill,
form input:-webkit-autofill:hover,
form input:-webkit-autofill:focus,
form input:-webkit-autofill:active {
  box-shadow: 0 0 0px 1000px #f6f2ee inset !important;
  background: #fff;
}
form .field-validation-valid {
  display: none;
  margin: 0;
}
form .field-validation-valid[style^="display: inline;"] {
  display: inline-block !important;
}
form .field-validation-valid,
form .field-validation-error {
  display: inline-block;
  padding: 7px 0;
  color: red;
  font-size: 0.8rem;
  font-weight: 500;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.62;
}
form input[type=text],
form input[type=tel],
form input[type=number],
form input[type=password],
form input[type=email],
form input[type=search],
form input[type=date],
form select,
form textarea {
  display: block;
  width: 100%;
  padding: 1rem;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.56;
  color: #333;
  -webkit-appearance: none;
  -moz-background-clip: padding;
  -webkit-background-clip: padding-box;
  background-clip: padding-box;
  outline: none;
  border: 1px solid #E1E2E2;
  font-family: Helvetica, Arial, sans-serif;
  background-color: #fff;
}
form input[type=text]:focus,
form input[type=tel]:focus,
form input[type=number]:focus,
form input[type=password]:focus,
form input[type=email]:focus,
form input[type=search]:focus,
form input[type=date]:focus,
form select:focus,
form textarea:focus {
  background-color: #fff;
}
form fieldset {
  border: 0;
  padding: 0;
  margin: 0;
  min-width: 0;
}
form select {
  font-size: 16px;
  color: #333;
}
form textarea {
  height: auto;
  min-height: 10rem;
  -webkit-appearance: none;
  line-height: 1.4;
  resize: vertical;
}
form input[type=submit], form button {
  -webkit-appearance: none;
  cursor: pointer;
}
form legend {
  font-size: 1rem;
  line-height: 1.3;
  display: block;
  margin-bottom: 1rem;
  text-transform: uppercase;
  font-weight: 700;
}
form label, form .label {
  font-size: 0.7em;
  color: #333;
  text-transform: uppercase;
  font-weight: 600;
}
form label svg, form .label svg {
  width: 23px;
  height: 23px;
  display: inline-block;
  vertical-align: middle;
  margin-right: 10px;
}

.umbraco-forms-container.col-xs-12 {
  padding: 0 1rem;
}
.umbraco-forms-container.col-xs-12:first-child {
  padding-left: 0;
}
.umbraco-forms-container.col-xs-12:last-child {
  padding-right: 0;
}

.recaptchav3withscore {
  overflow: hidden;
}

em, i {
  font-style: italic;
}

strong, b {
  font-weight: 600;
}

.rich-text {
  max-width: 100%;
  overflow: hidden;
}
.rich-text ul,
.rich-text ol,
.rich-text dl {
  list-style-position: outside;
  padding-left: 1rem;
}
.rich-text ul {
  list-style-type: disc;
}
.rich-text ol {
  list-style-type: decimal;
}
.rich-text legend {
  font-weight: bold;
}
.rich-text sup {
  vertical-align: super;
  font-size: 50%;
}
.rich-text sub {
  vertical-align: sub;
  font-size: 50%;
}
.rich-text > * {
  margin: 1rem 0;
}
.rich-text > *:last-child {
  margin-bottom: 0;
}
.rich-text > *:first-child {
  margin-top: 0;
}
.rich-text > * a {
  color: #6DAC33;
}
.rich-text table {
  text-align: center;
  min-width: 100%;
}
.rich-text table thead, .rich-text table .thead {
  background: #93C268;
  font-weight: 700;
}
.rich-text table thead td, .rich-text table .thead td {
  border: 1px solid white !important;
  max-width: 50px;
  vertical-align: middle;
  background: #93C268 !important;
}
.rich-text table th, .rich-text table td {
  border: 1px solid white;
  padding: 0.3rem;
}
.rich-text table th {
  background-color: #93C268;
}
.rich-text table td:nth-child(odd) {
  background-color: #E9F3E1;
}
.rich-text table tfoot {
  background: #e5e5e5;
}
.rich-text table tfoot td {
  background: #e5e5e5 !important;
}
.rich-text h1, .rich-text h2, .rich-text h3, .rich-text h4, .rich-text h5, .rich-text h6 {
  line-height: 1.3;
}
.rich-text h1 {
  font-size: 1.7em;
}
.rich-text h2 {
  font-size: 1.58em;
}
.rich-text h3 {
  font-size: 1.3em;
}
.rich-text h4 {
  font-size: 1.1em;
}
.rich-text h5 {
  font-size: 0.9em;
}
.rich-text h6 {
  font-size: 0.7em;
}
.rich-text .large-text {
  font-size: 1.75rem;
}
.rich-text .color-green {
  color: #6DAC33;
}
.rich-text .color-red {
  color: red;
}

.caption {
  line-height: 1.6;
  margin-top: 0.5rem;
  font-size: 0.875rem;
  color: #444444;
  font-style: italic;
}

.p.xs {
  font-size: 0.75rem;
  line-height: 1.125rem;
  letter-spacing: 0.0125rem;
}
.p.sm {
  font-size: 0.75rem;
  line-height: 1.125rem;
  letter-spacing: 0.0125rem;
}
.p.lg {
  font-size: 1.125rem;
  line-height: 1.6875rem;
  letter-spacing: -0.00625rem;
}
.p.xl {
  font-size: 1.3125rem;
  line-height: 1.875rem;
  letter-spacing: -0.015625rem;
}

.chev-right {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: flex-end;
  -ms-flex-align: end;
  align-items: flex-end;
}
.chev-right:after {
  content: "";
  width: 0.8rem;
  height: 0.8rem;
  -webkit-transform: rotate(45deg) translateY(-8px);
  -moz-transform: rotate(45deg) translateY(-8px);
  -ms-transform: rotate(45deg) translateY(-8px);
  transform: rotate(45deg) translateY(-8px);
  margin-left: 10px;
  border: 3px solid navy;
  border-left: 0;
  border-bottom: 0;
}

.chev-down {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: flex-end;
  -ms-flex-align: end;
  align-items: flex-end;
}
.chev-down:after {
  content: "";
  width: 0.8rem;
  height: 0.8rem;
  -webkit-transform: rotate(45deg) translateY(-8px);
  -moz-transform: rotate(45deg) translateY(-8px);
  -ms-transform: rotate(45deg) translateY(-8px);
  transform: rotate(45deg) translateY(-8px);
  border: 3px solid navy;
  border-left: 0;
  border-top: 0;
}

.heading {
  font-weight: 800;
  font-size: 1.5625rem;
  line-height: 1.75rem;
  text-transform: uppercase;
}
.heading.xxxs {
  font-size: 1.125rem;
  line-height: 1.3125rem;
  letter-spacing: -0.019375rem;
}
.heading.xxs {
  font-size: 1.3125rem;
  line-height: 1.5rem;
  letter-spacing: -0.01875rem;
}
.heading.xs {
  font-size: 1.5rem;
  line-height: 1.6875rem;
  letter-spacing: -0.025rem;
}
.heading.sm {
  font-size: 1.6875rem;
  line-height: 1.875rem;
  letter-spacing: -0.025rem;
}
.heading.md {
  font-size: 1.875rem;
  line-height: 2.0625rem;
  letter-spacing: -0.0625rem;
}
.heading.lg {
  font-size: 2.8125rem;
  line-height: 3rem;
  letter-spacing: -0.125rem;
}
.heading.xl {
  font-size: 3.75rem;
  line-height: 3.9375rem;
  letter-spacing: -0.15625rem;
}
.heading.xxlg {
  font-size: 4.5rem;
  line-height: 4.6875rem;
  letter-spacing: -0.1875rem;
}

.sub-heading {
  font-weight: 300;
  font-size: 1.125rem;
  line-height: 1.3125rem;
  letter-spacing: 0.03125rem;
}
.sub-heading.lg {
  font-size: 1.75rem;
  line-height: 2rem;
}
.sub-heading.md {
  font-size: 1.375rem;
  line-height: 1.5rem;
}
.sub-heading.xs {
  font-size: 1rem;
  line-height: 1.1875rem;
}
.sub-heading > strong, .sub-heading > b {
  font-weight: 600;
}

.text-sm {
  font-size: 0.875rem;
  line-height: 1.3125rem;
  letter-spacing: 0.009375rem;
}

.text-tn {
  font-size: 0.8125rem;
  line-height: 1.125rem;
}

.btn, a.btn, button.btn, input[type=submit].btn, input[type=button].btn {
  display: -ms-inline-flexbox;
  display: -webkit-inline-flex;
  display: inline-flex;
  align-items: center;
  padding: 1.125rem 1.5rem;
  border-radius: 1.875rem;
  color: navy;
  border: 1px solid navy;
  background: transparent;
  letter-spacing: -0.00125rem;
  line-height: 1.5rem;
  text-decoration: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: 0;
  font-size: 1.125rem;
  font-weight: 600;
  margin: 0;
  cursor: pointer;
}
.btn.arrow-right:after, a.btn.arrow-right:after, button.btn.arrow-right:after, input[type=submit].btn.arrow-right:after, input[type=button].btn.arrow-right:after {
  content: "→";
  font-size: 1rem;
  margin-left: 0.5rem;
}
.btn.md, a.btn.md, button.btn.md, input[type=submit].btn.md, input[type=button].btn.md {
  padding: 0.9375rem 1.3125rem;
  font-size: 1rem;
  line-height: 1.125rem;
}
.btn.sm, a.btn.sm, button.btn.sm, input[type=submit].btn.sm, input[type=button].btn.sm {
  padding: 0.75rem 1.125rem;
  font-size: 0.875rem;
  line-height: 0.9375rem;
}
.btn.xs, a.btn.xs, button.btn.xs, input[type=submit].btn.xs, input[type=button].btn.xs {
  padding: 0.5625rem 0.9375rem;
  font-size: 0.75rem;
  line-height: 0.9375rem;
}

@media only screen and (max-width: 62.5625rem) {
  html.mobile-nav-open {
    overflow: hidden;
  }
  html.mobile-nav-open body {
    overflow: hidden;
  }
  html.mobile-nav-open .main-navigation .mobile-menu-trigger i:before {
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    left: 0%;
    top: 0;
  }
  html.mobile-nav-open .main-navigation .mobile-menu-trigger i:after {
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
    left: 0%;
    top: -2px;
  }
  html.mobile-nav-open .mobile-nav {
    -webkit-transform: translateX(0%);
    -moz-transform: translateX(0%);
    -ms-transform: translateX(0%);
    transform: translateX(0%);
  }
}

.mobile-nav {
  display: block;
  z-index: 4000;
  background-color: #6DAC33;
  position: fixed;
  width: 100vw;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  -webkit-transition: transform 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  -moz-transition: transform 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  -ms-transition: transform 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  -o-transition: transform 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  transition: transform 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  -webkit-transform: translateX(100%);
  -moz-transform: translateX(100%);
  -ms-transform: translateX(100%);
  transform: translateX(100%);
  overflow: hidden;
  color: white;
  padding-top: 88px;
  font-size: 1.1rem;
}
@media only screen and (min-width: 62.5625rem) {
  .mobile-nav {
    display: none;
  }
}
.mobile-nav .mob-nav-back {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 1rem;
}
.mobile-nav .mob-nav-back i {
  width: 10px;
  margin-right: 0.5rem;
  height: 10px;
  border: 2px solid white;
  -webkit-transform: rotate(-135deg);
  -moz-transform: rotate(-135deg);
  -ms-transform: rotate(-135deg);
  transform: rotate(-135deg);
  border-left: 0;
  border-bottom: 0;
}
.mobile-nav .sub-nav-open.items {
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}
.mobile-nav .sub-nav-open.items ul.active {
  display: block;
}
.mobile-nav .items {
  min-height: calc(80vh - 100px);
  -webkit-transition: transform 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  -moz-transition: transform 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  -ms-transition: transform 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  -o-transition: transform 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  transition: transform 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  padding-bottom: 2rem;
  position: relative;
  -webkit-transform: translateX(0);
  -moz-transform: translateX(0);
  -ms-transform: translateX(0);
  transform: translateX(0);
  width: 200vw;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
}
.mobile-nav .items > div {
  width: 100vw;
  padding: 50px 24px 0 24px;
  overflow-y: auto;
  max-height: calc(100vh - 88px);
}
.mobile-nav .items li {
  border-bottom: 1px dotted white;
}
.mobile-nav .items li a {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 12px 0;
}
.mobile-nav .items li a span {
  flex: 1;
}
.mobile-nav .items li a i {
  width: 10px;
  height: 10px;
  border: 2px solid white;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  border-left: 0;
  border-bottom: 0;
}
.mobile-nav .level-1 ul {
  display: none;
}

.main-header {
  position: relative;
  background-color: white;
  box-shadow: 1px -3px 7px 12px rgba(0, 0, 0, 0.28);
  z-index: 4001;
}

.mobile-menu-trigger {
  cursor: pointer;
  width: 30px;
  height: 30px;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.mobile-menu-trigger i {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  width: 30px;
  height: 30px;
  left: 0;
  position: relative;
}
.mobile-menu-trigger i:before, .mobile-menu-trigger i:after {
  display: block;
  content: "";
  height: 2px;
  width: 30px;
  background-color: #6DAC33;
  position: absolute;
  position: relative;
  -webkit-transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  -ms-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
.mobile-menu-trigger i:before {
  top: -2px;
}
.mobile-menu-trigger i:after {
  top: 4px;
}

.util-navigation {
  display: none;
  min-height: 2.7rem;
  font-size: 0.875rem;
  line-height: 1.125rem;
}
@media only screen and (min-width: 62.5625rem) {
  .util-navigation {
    display: block;
  }
}
.util-navigation > ul {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: flex-end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}
.util-navigation > ul li > a {
  display: block;
  font-size: 0.875rem;
  line-height: 1.125rem;
  padding: 0.9375rem 0.9375rem 0.625rem 0.9375rem;
}
.util-navigation > ul li > a.account-link {
  padding: 0.9375rem 1.5625rem 0.625rem 1.5625rem;
  background: linear-gradient(0deg, #6DAC33 0%, white 100%);
}
.util-navigation > ul li > a.account-link:hover {
  color: white;
}

.main-navigation {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media only screen and (min-width: 62.5625rem) {
  .main-navigation {
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    align-items: flex-end;
  }
  .main-navigation .mobile-menu-trigger {
    display: none;
  }
}
.main-navigation .logo {
  font-weight: 900;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  height: auto;
  width: 150px;
  padding: 1rem 0;
  position: relative;
}
@media only screen and (min-width: 62.5625rem) {
  .main-navigation .logo {
    padding: 0;
    width: 18.75rem;
    top: -1.4rem;
  }
}
.main-navigation ul.sub-nav-item {
  position: absolute;
  top: 100%;
  display: none;
  left: auto;
  top: 100%;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 250px;
  background: #6DAC33;
  z-index: 10;
}
.main-navigation ul.sub-nav-item li a {
  text-decoration: none;
  color: white;
  display: block;
  padding: 0.5rem 1rem;
  border-bottom: 1px dotted white;
}
.main-navigation ul.sub-nav-item li a:hover {
  background-color: #487122;
}
.main-navigation ul.sub-nav-item li:last-child a {
  border-bottom: 0;
}
.main-navigation ul.items {
  flex: 1;
  display: none;
  -webkit-align-items: flex-end;
  -ms-flex-align: end;
  align-items: flex-end;
  -webkit-justify-content: flex-end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}
@media only screen and (min-width: 62.5625rem) {
  .main-navigation ul.items {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
  }
}
.main-navigation ul.items > li {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  margin: 0 0.0625rem;
  position: relative;
}
.main-navigation ul.items > li > a {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  text-transform: uppercase;
  font-size: 1rem;
  line-height: 1rem;
  padding: 0.9375rem;
  letter-spacing: -0.00125rem;
  border-radius: 0.1875rem 0.1875rem 0 0;
}
.main-navigation ul.items > li:hover > ul {
  display: block;
}
.main-navigation ul.items > li:last-child > * {
  margin-right: 0;
  padding-right: 0;
}
.main-navigation .logo > div {
  width: 100%;
}
.main-navigation .logo img {
  display: block;
  height: auto;
  width: 100%;
}

.breadcrumbs {
  margin: 2rem 0;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
}
.breadcrumbs a, .breadcrumbs span {
  display: block;
  color: white;
  position: relative;
  padding: 10px 10px 10px 22px;
  margin-right: 5px;
  position: relative;
  font-size: 13px;
  line-height: 15px;
  min-height: 35px;
}
.breadcrumbs a:before, .breadcrumbs span:before {
  content: "";
  display: block;
  position: absolute;
  left: 0px;
  bottom: 0px;
  width: 0;
  height: 0;
  border-top: 18px solid transparent;
  border-bottom: 18px solid transparent;
  border-left: 10px solid white;
  border-right: 4px solid transparent;
}
.breadcrumbs a:after, .breadcrumbs span:after {
  content: " ";
  display: block;
  position: absolute;
  right: -14px;
  z-index: 1;
  bottom: 0px;
  width: 0;
  height: 0;
  border-top: 17px solid transparent;
  border-bottom: 18px solid transparent;
  border-left: 10px solid #B4B4B4;
  border-right: 4px solid transparent;
}
.breadcrumbs a {
  background-color: #B4B4B4;
}
.breadcrumbs span {
  background-color: #6DAC33;
}
.breadcrumbs span:after {
  border-left: 10px solid #6DAC33;
}

.side-nav {
  padding-right: 2rem;
  margin-bottom: 2rem;
}
@media only screen and (min-width: 62.5625rem) {
  .side-nav {
    margin-bottom: 0;
  }
}
.side-nav .heading {
  margin-bottom: 2rem;
}
.side-nav nav ul li + li {
  margin: 1rem 0;
}
.side-nav nav ul li a {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
}
.side-nav nav ul li a img {
  width: 50px;
  height: 50px;
  display: block;
}
.side-nav nav ul li a .img-wrapper {
  margin-right: 1rem;
}
.side-nav nav ul li a div:not(.img-wrapper) {
  flex: 1;
  padding-top: 0.3125rem;
}
.side-nav picture {
  margin-bottom: 1rem;
  max-width: 226px;
}
.side-nav picture:last-child {
  margin: 0;
}

footer.main-footer {
  background-color: #6DAC33;
  color: white;
  padding-top: 2rem;
  padding-bottom: 2rem;
  margin-top: 5rem;
}
footer.main-footer a {
  color: black;
}
footer.main-footer nav {
  display: grid;
  margin: 0 auto;
  max-width: 1280px;
}
@media only screen and (max-width: 62.5rem) {
  footer.main-footer nav {
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
    padding: 0 16px;
  }
}
@media only screen and (min-width: 62.5625rem) {
  footer.main-footer nav {
    gap: 32px;
    padding: 0 32px;
    grid-template-columns: repeat(15, 1fr);
  }
}
@media only screen and (min-width: 100.0625rem) {
  footer.main-footer nav {
    gap: 32px;
    padding: 0 64px;
    grid-template-columns: repeat(15, 1fr);
  }
}
footer.main-footer nav ul li.column-header a {
  color: white;
  text-transform: uppercase;
}
footer.main-footer nav ul li:first-child {
  margin-top: 0;
}
footer.main-footer nav ul li:last-child {
  margin-bottom: 0;
}
footer.main-footer hr {
  border-top: 1px solid white;
  margin: 2rem 0;
}
footer.main-footer .footer-utils .content {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
footer.main-footer .footer-utils .content .logo {
  margin-right: 2rem;
}
footer.main-footer .footer-utils .content .logo img {
  max-width: 100px;
}

main {
  min-height: calc(100vh - 130px);
}

picture {
  display: block;
}
picture img {
  display: block;
  width: 100%;
  height: auto;
}

.template-block-header-featured-image picture {
  margin-bottom: 2rem;
}

.block-gallery .sub-heading {
  margin-bottom: 2rem;
}
.block-gallery .row-grid {
  padding: 0;
}
.block-gallery img {
  display: block;
}

.block-staff .row-grid {
  padding: 0;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  margin-bottom: 2rem;
  padding-bottom: 2rem;
}
.block-staff .row-grid img {
  max-width: 200px;
  display: block;
}
@media only screen and (min-width: 37.5625rem) {
  .block-staff .row-grid img {
    margin: auto;
  }
}
@media only screen and (min-width: 37.5625rem) {
  .block-staff .row-grid .desc {
    padding-left: 15px;
  }
}

.block-main-categories {
  margin: 2rem 0 !important;
}
@media only screen and (min-width: 62.5625rem) {
  .block-main-categories {
    margin: 0 !important;
  }
}
.block-main-categories a {
  position: relative;
  display: block;
  padding: 1rem 2rem;
}
@media only screen and (min-width: 37.5625rem) {
  .block-main-categories a {
    padding: 3rem;
  }
}
.block-main-categories a:hover {
  opacity: 0.8;
}
.block-main-categories a picture {
  border-radius: 100%;
  overflow: hidden;
}
.block-main-categories a .desc {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  text-align: center;
}
.block-main-categories a .desc h3 {
  color: white;
  font-weight: 300;
}

.block-feature {
  margin-bottom: 1rem !important;
}

.block-feature {
  background-color: #6DAC33;
}
.block-feature .title {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  padding: 0.5rem 0;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.block-feature .title .feature {
  font-size: 1.5rem;
  line-height: 1.6rem;
  color: white;
  margin-right: 1rem;
}
@media only screen and (min-width: 62.5625rem) {
  .block-feature .title .feature {
    font-size: 2rem;
    line-height: 2.1rem;
  }
}
.block-feature .title .desc {
  font-size: 0.9rem;
  line-height: 1.2;
}
@media only screen and (min-width: 62.5625rem) {
  .block-feature .title .desc {
    font-size: 1rem;
    line-height: 1.3;
  }
}
.block-feature .title img {
  margin-left: 1rem;
  width: 2.6rem;
  min-width: 2.6rem;
  height: 2.6rem;
  display: block;
}
@media only screen and (min-width: 62.5625rem) {
  .block-feature .title img {
    width: 2.8rem;
    min-width: 2.8rem;
    height: 2.8em;
  }
}
.block-feature.black-feature {
  color: white;
  background-color: black;
}

.block-sub-categories a {
  padding: 2rem;
  position: relative;
  color: white;
  display: block;
}
@media only screen and (min-width: 62.5625rem) {
  .block-sub-categories a {
    padding: 1rem 7rem;
  }
}
.block-sub-categories a:hover {
  opacity: 0.8;
}
.block-sub-categories a.green .desc {
  color: #6DAC33;
}
.block-sub-categories a .desc {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  color: black;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  text-align: center;
  padding: 2rem;
}
@media only screen and (min-width: 62.5625rem) {
  .block-sub-categories a .desc {
    padding: 1rem 8rem;
  }
}
.block-sub-categories a .desc h3 {
  color: white;
  font-weight: 300;
  font-size: 1.6rem;
  line-height: 1.6rem;
}
.block-sub-categories a .desc p {
  margin-top: 0.3rem;
}

.main-content > * {
  margin-bottom: 2rem;
}
.main-content > *:last-child {
  margin: 0;
}

html:not(.template-home) .main-content {
  max-width: 1000px;
}

*:focus-visible {
  border: 1px solid red;
}

.row-grid {
  display: grid;
  margin: 0 auto;
  max-width: 1280px;
}
@media only screen and (max-width: 62.5rem) {
  .row-grid {
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
    padding: 0 16px;
  }
}
@media only screen and (min-width: 62.5625rem) {
  .row-grid {
    gap: 32px;
    padding: 0 32px;
    grid-template-columns: repeat(12, 1fr);
  }
}
@media only screen and (min-width: 100.0625rem) {
  .row-grid {
    gap: 32px;
    padding: 0 64px;
    grid-template-columns: repeat(12, 1fr);
  }
}

.grid-item-auto {
  grid-column: auto auto;
}

.order-sm-1 {
  order: 1;
}

.order-sm-2 {
  order: 2;
}

.order-sm-3 {
  order: 3;
}

.order-sm-4 {
  order: 4;
}

.order-sm-5 {
  order: 5;
}

.order-sm-6 {
  order: 6;
}

.order-sm-7 {
  order: 7;
}

.order-sm-8 {
  order: 8;
}

.order-sm-9 {
  order: 9;
}

.order-sm-10 {
  order: 10;
}

.order-sm-11 {
  order: 11;
}

.order-sm-12 {
  order: 12;
}

.grid-item-sm-1 {
  grid-column: span 1;
}

.grid-item-sm-2 {
  grid-column: span 2;
}

.grid-item-sm-3 {
  grid-column: span 3;
}

.grid-item-sm-4 {
  grid-column: span 4;
}

.grid-item-sm-5 {
  grid-column: span 5;
}

.grid-item-sm-6 {
  grid-column: span 6;
}

.grid-item-sm-7 {
  grid-column: span 7;
}

.grid-item-sm-8 {
  grid-column: span 8;
}

.grid-item-sm-9 {
  grid-column: span 9;
}

.grid-item-sm-10 {
  grid-column: span 10;
}

.grid-item-sm-11 {
  grid-column: span 11;
}

.grid-item-sm-12 {
  grid-column: span 12;
}

@media only screen and (min-width: 62.5625rem) {
  .grid-item-md-1 {
    grid-column: span 1;
  }
  .grid-item-md-2 {
    grid-column: span 2;
  }
  .grid-item-md-3 {
    grid-column: span 3;
  }
  .grid-item-md-4 {
    grid-column: span 4;
  }
  .grid-item-md-5 {
    grid-column: span 5;
  }
  .grid-item-md-6 {
    grid-column: span 6;
  }
  .grid-item-md-7 {
    grid-column: span 7;
  }
  .grid-item-md-8 {
    grid-column: span 8;
  }
  .grid-item-md-9 {
    grid-column: span 9;
  }
  .grid-item-md-10 {
    grid-column: span 10;
  }
  .grid-item-md-11 {
    grid-column: span 11;
  }
  .grid-item-md-12 {
    grid-column: span 12;
  }
}
@media only screen and (min-width: 100.0625rem) {
  .grid-item-lg-1 {
    grid-column: span 1;
  }
  .grid-item-lg-2 {
    grid-column: span 2;
  }
  .grid-item-lg-3 {
    grid-column: span 3;
  }
  .grid-item-lg-4 {
    grid-column: span 4;
  }
  .grid-item-lg-5 {
    grid-column: span 5;
  }
  .grid-item-lg-6 {
    grid-column: span 6;
  }
  .grid-item-lg-7 {
    grid-column: span 7;
  }
  .grid-item-lg-8 {
    grid-column: span 8;
  }
  .grid-item-lg-9 {
    grid-column: span 9;
  }
  .grid-item-lg-10 {
    grid-column: span 10;
  }
  .grid-item-lg-11 {
    grid-column: span 11;
  }
  .grid-item-lg-12 {
    grid-column: span 12;
  }
}
