.custom-icon.globe:after {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: 2rem;
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  transition: all 0.2s ease-in-out;
  content: "\e800";
  font-size: 1.8rem;
}

.custom-icon.accordion:after {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: 2rem;
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  transition: all 0.2s ease-in-out;
  content: "\e801";
  font-size: 1.8rem;
}

.custom-icon.arrow:after {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: 2rem;
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  transition: all 0.2s ease-in-out;
  content: "\e802";
  font-size: 1.8rem;
}

.custom-icon.arrow-down:after {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: 2rem;
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  transition: all 0.2s ease-in-out;
  content: "\e803";
  font-size: 1.8rem;
}

.custom-icon.arrow-fat:after {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: 2rem;
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  transition: all 0.2s ease-in-out;
  content: "\e804";
  font-size: 1.8rem;
}

.custom-icon.email-outline:after {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: 2rem;
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  transition: all 0.2s ease-in-out;
  content: "\e805";
  font-size: 1.8rem;
}

.custom-icon.calendar:after {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: 2rem;
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  transition: all 0.2s ease-in-out;
  content: "\e806";
  font-size: 1.8rem;
}

.custom-icon.clock:after {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: 2rem;
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  transition: all 0.2s ease-in-out;
  content: "\e807";
  font-size: 1.8rem;
}

.custom-icon.close:after {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: 2rem;
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  transition: all 0.2s ease-in-out;
  content: "\e808";
  font-size: 1.8rem;
}

.custom-icon.copywriting:after {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: 2rem;
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  transition: all 0.2s ease-in-out;
  content: "\e809";
  font-size: 1.8rem;
}

.custom-icon.menu:after {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: 2rem;
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  transition: all 0.2s ease-in-out;
  content: "\e80a";
  font-size: 1.8rem;
}

.custom-icon.social-li-alt-1:after {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: 2rem;
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  transition: all 0.2s ease-in-out;
  content: "\e80b";
  font-size: 1.8rem;
}

.custom-icon.check:after {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: 2rem;
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  transition: all 0.2s ease-in-out;
  content: "\e80c";
  font-size: 1.8rem;
}

.custom-icon.pdf-alt:after {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: 2rem;
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  transition: all 0.2s ease-in-out;
  content: "\e80d";
  font-size: 1.8rem;
}

.custom-icon.doc-doc:after {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: 2rem;
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  transition: all 0.2s ease-in-out;
  content: "\e810";
  font-size: 1.8rem;
}

.custom-icon.doc-mov:after {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: 2rem;
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  transition: all 0.2s ease-in-out;
  content: "\e811";
  font-size: 1.8rem;
}

.custom-icon.doc-mp3:after {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: 2rem;
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  transition: all 0.2s ease-in-out;
  content: "\e812";
  font-size: 1.8rem;
}

.custom-icon.doc-pdf:after {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: 2rem;
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  transition: all 0.2s ease-in-out;
  content: "\e813";
  font-size: 1.8rem;
}

.custom-icon.doc-ppt:after {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: 2rem;
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  transition: all 0.2s ease-in-out;
  content: "\e814";
  font-size: 1.8rem;
}

.custom-icon.doc-xls:after {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: 2rem;
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  transition: all 0.2s ease-in-out;
  content: "\e815";
  font-size: 1.8rem;
}

.custom-icon.download:after {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: 2rem;
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  transition: all 0.2s ease-in-out;
  content: "\e816";
  font-size: 1.8rem;
}

.custom-icon.external:after {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: 2rem;
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  transition: all 0.2s ease-in-out;
  content: "\e819";
  font-size: 1.8rem;
}

.custom-icon.filter:after {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: 2rem;
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  transition: all 0.2s ease-in-out;
  content: "\e824";
  font-size: 1.8rem;
}

.custom-icon.home:after {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: 2rem;
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  transition: all 0.2s ease-in-out;
  content: "\e825";
  font-size: 1.8rem;
}

.custom-icon.hyperlink:after {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: 2rem;
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  transition: all 0.2s ease-in-out;
  content: "\e826";
  font-size: 1.8rem;
}

.custom-icon.location:after {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: 2rem;
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  transition: all 0.2s ease-in-out;
  content: "\e828";
  font-size: 1.8rem;
}

.custom-icon.marker:after {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: 2rem;
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  transition: all 0.2s ease-in-out;
  content: "\e829";
  font-size: 1.8rem;
}

.custom-icon.information:after {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: 2rem;
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  transition: all 0.2s ease-in-out;
  content: "\e830";
  font-size: 1.8rem;
}

.custom-icon.pause:after {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: 2rem;
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  transition: all 0.2s ease-in-out;
  content: "\e831";
  font-size: 1.8rem;
}

.custom-icon.play-alt:after {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: 2rem;
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  transition: all 0.2s ease-in-out;
  content: "\e835";
  font-size: 1.8rem;
}

.custom-icon.quotes:after {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: 2rem;
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  transition: all 0.2s ease-in-out;
  content: "\e837";
  font-size: 1.8rem;
}

.custom-icon.phone-outline:after {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: 2rem;
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  transition: all 0.2s ease-in-out;
  content: "\e838";
  font-size: 1.8rem;
}

.custom-icon.search:after {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: 2rem;
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  transition: all 0.2s ease-in-out;
  content: "\e839";
  font-size: 1.8rem;
}

.custom-icon.social-bs:after {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: 2rem;
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  transition: all 0.2s ease-in-out;
  content: "\e840";
  font-size: 1.8rem;
}

.custom-icon.social-fb:after {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: 2rem;
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  transition: all 0.2s ease-in-out;
  content: "\e841";
  font-size: 1.8rem;
}

.custom-icon.social-i:after {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: 2rem;
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  transition: all 0.2s ease-in-out;
  content: "\e842";
  font-size: 1.8rem;
}

.custom-icon.social-tt:after {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: 2rem;
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  transition: all 0.2s ease-in-out;
  content: "\e844";
  font-size: 1.8rem;
}

.custom-icon.social-x:after {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: 2rem;
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  transition: all 0.2s ease-in-out;
  content: "\e845";
  font-size: 1.8rem;
}

.custom-icon.social-yt:after {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: 2rem;
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  transition: all 0.2s ease-in-out;
  content: "\e846";
  font-size: 1.8rem;
}

.custom-icon.social-yt-alt:after {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: 2rem;
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  transition: all 0.2s ease-in-out;
  content: "\e847";
  font-size: 1.8rem;
}

.custom-icon.user:after {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: 2rem;
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  transition: all 0.2s ease-in-out;
  content: "\e848";
  font-size: 1.8rem;
}

.custom-icon.zipper:after {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: 2rem;
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  transition: all 0.2s ease-in-out;
  content: "\e849";
  font-size: 1.8rem;
}

html {
  font-size: 100%;
  overflow: auto;
  text-rendering: optimizeLegibility;
  scroll-behavior: smooth;
}

body {
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: 400;
  color: #000;
  font-size: 1.125rem;
  line-height: 1.8rem;
  margin: 0;
  overflow-x: hidden;
  overflow-y: clip;
  /* add this so body handles scrolling */
  padding: 0;
  position: relative;
  white-space: normal;
}
@media only screen and (max-width: 425px) {
  body {
    word-break: break-word;
  }
}
body:before {
  background: #8C2326;
  top: 0;
  clip-path: polygon(0 25%, 25% 25%, 100% 100%, 75% 100%);
  content: "";
  height: 100%;
  left: -50%;
  position: absolute;
  width: 200%;
  z-index: -1;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: 400;
  font-family: "Montserrat", sans-serif;
  font-style: normal;
  font-weight: 800;
  line-height: 1.2em;
  margin: 0;
}

h1 {
  font-size: 2.875rem;
}

h2 {
  font-size: 1.75rem;
}

h3 {
  font-size: 1.125rem;
}

@media only screen and (min-width: 1640px) {
  body:after {
    display: none;
    content: "large";
  }
}
@media only screen and (max-width: 1639px) {
  body:after {
    display: none;
    content: "small";
  }
}
@font-face {
  font-family: "fontello";
  src: url(../fonts/fontello.woff?041125) format("woff");
  font-weight: normal;
  font-style: normal;
}
.gap-xs {
  gap: 1rem;
}

.gap-sm {
  gap: 2rem;
}

.gap-md {
  gap: 2rem;
}
@media only screen and (min-width: 1024px) {
  .gap-md {
    gap: 4rem;
  }
}

.gap-lg {
  gap: 2.5rem;
}
@media only screen and (min-width: 1024px) {
  .gap-lg {
    gap: 6rem;
  }
}
@media only screen and (min-width: 1640px) {
  .gap-lg {
    gap: 10rem;
  }
}

.gap-xl {
  gap: 3rem;
}
@media only screen and (min-width: 1024px) {
  .gap-xl {
    gap: 8rem;
  }
}
@media only screen and (min-width: 1640px) {
  .gap-xl {
    gap: 14rem;
  }
}

.margin {
  margin-top: 2rem;
}
@media only screen and (min-width: 768px) {
  .margin {
    margin-top: 3rem;
  }
}
@media only screen and (min-width: 1024px) {
  .margin {
    margin-top: 4rem;
  }
}
@media only screen and (min-width: 1440px) {
  .margin {
    margin-top: 5rem;
  }
}
@media only screen and (min-width: 1640px) {
  .margin {
    margin-top: 6rem;
  }
}
@media only screen and (min-width: 1900px) {
  .margin {
    margin-top: 7rem;
  }
}
.margin {
  margin-bottom: 2rem;
}
@media only screen and (min-width: 768px) {
  .margin {
    margin-bottom: 3rem;
  }
}
@media only screen and (min-width: 1024px) {
  .margin {
    margin-bottom: 4rem;
  }
}
@media only screen and (min-width: 1440px) {
  .margin {
    margin-bottom: 5rem;
  }
}
@media only screen and (min-width: 1640px) {
  .margin {
    margin-bottom: 6rem;
  }
}
@media only screen and (min-width: 1900px) {
  .margin {
    margin-bottom: 7rem;
  }
}

.margin-half {
  margin-top: 1rem;
}
@media only screen and (min-width: 768px) {
  .margin-half {
    margin-top: 1rem;
  }
}
@media only screen and (min-width: 1024px) {
  .margin-half {
    margin-top: 2rem;
  }
}
@media only screen and (min-width: 1440px) {
  .margin-half {
    margin-top: 3rem;
  }
}
@media only screen and (min-width: 1640px) {
  .margin-half {
    margin-top: 4rem;
  }
}
@media only screen and (min-width: 1900px) {
  .margin-half {
    margin-top: 5rem;
  }
}
.margin-half {
  margin-bottom: 1rem;
}
@media only screen and (min-width: 768px) {
  .margin-half {
    margin-bottom: 1rem;
  }
}
@media only screen and (min-width: 1024px) {
  .margin-half {
    margin-bottom: 2rem;
  }
}
@media only screen and (min-width: 1440px) {
  .margin-half {
    margin-bottom: 3rem;
  }
}
@media only screen and (min-width: 1640px) {
  .margin-half {
    margin-bottom: 4rem;
  }
}
@media only screen and (min-width: 1900px) {
  .margin-half {
    margin-bottom: 5rem;
  }
}

.margin-huge {
  margin-top: 4rem;
}
@media only screen and (min-width: 768px) {
  .margin-huge {
    margin-top: 6rem;
  }
}
@media only screen and (min-width: 1024px) {
  .margin-huge {
    margin-top: 8rem;
  }
}
@media only screen and (min-width: 1440px) {
  .margin-huge {
    margin-top: 10rem;
  }
}
@media only screen and (min-width: 1640px) {
  .margin-huge {
    margin-top: 12rem;
  }
}
@media only screen and (min-width: 1900px) {
  .margin-huge {
    margin-top: 14rem;
  }
}
.margin-huge {
  margin-bottom: 4rem;
}
@media only screen and (min-width: 768px) {
  .margin-huge {
    margin-bottom: 6rem;
  }
}
@media only screen and (min-width: 1024px) {
  .margin-huge {
    margin-bottom: 8rem;
  }
}
@media only screen and (min-width: 1440px) {
  .margin-huge {
    margin-bottom: 10rem;
  }
}
@media only screen and (min-width: 1640px) {
  .margin-huge {
    margin-bottom: 12rem;
  }
}
@media only screen and (min-width: 1900px) {
  .margin-huge {
    margin-bottom: 14rem;
  }
}

.margin-top {
  margin-top: 2rem;
}
@media only screen and (min-width: 768px) {
  .margin-top {
    margin-top: 3rem;
  }
}
@media only screen and (min-width: 1024px) {
  .margin-top {
    margin-top: 4rem;
  }
}
@media only screen and (min-width: 1440px) {
  .margin-top {
    margin-top: 5rem;
  }
}
@media only screen and (min-width: 1640px) {
  .margin-top {
    margin-top: 6rem;
  }
}
@media only screen and (min-width: 1900px) {
  .margin-top {
    margin-top: 7rem;
  }
}

.margin-top-half {
  margin-top: 1rem;
}
@media only screen and (min-width: 768px) {
  .margin-top-half {
    margin-top: 1rem;
  }
}
@media only screen and (min-width: 1024px) {
  .margin-top-half {
    margin-top: 2rem;
  }
}
@media only screen and (min-width: 1440px) {
  .margin-top-half {
    margin-top: 3rem;
  }
}
@media only screen and (min-width: 1640px) {
  .margin-top-half {
    margin-top: 4rem;
  }
}
@media only screen and (min-width: 1900px) {
  .margin-top-half {
    margin-top: 5rem;
  }
}

.margin-top-huge {
  margin-top: 4rem;
}
@media only screen and (min-width: 768px) {
  .margin-top-huge {
    margin-top: 6rem;
  }
}
@media only screen and (min-width: 1024px) {
  .margin-top-huge {
    margin-top: 8rem;
  }
}
@media only screen and (min-width: 1440px) {
  .margin-top-huge {
    margin-top: 10rem;
  }
}
@media only screen and (min-width: 1640px) {
  .margin-top-huge {
    margin-top: 12rem;
  }
}
@media only screen and (min-width: 1900px) {
  .margin-top-huge {
    margin-top: 14rem;
  }
}

.margin-bottom {
  margin-bottom: 2rem;
}
@media only screen and (min-width: 768px) {
  .margin-bottom {
    margin-bottom: 3rem;
  }
}
@media only screen and (min-width: 1024px) {
  .margin-bottom {
    margin-bottom: 4rem;
  }
}
@media only screen and (min-width: 1440px) {
  .margin-bottom {
    margin-bottom: 5rem;
  }
}
@media only screen and (min-width: 1640px) {
  .margin-bottom {
    margin-bottom: 6rem;
  }
}
@media only screen and (min-width: 1900px) {
  .margin-bottom {
    margin-bottom: 7rem;
  }
}

.margin-bottom-half {
  margin-bottom: 1rem;
}
@media only screen and (min-width: 768px) {
  .margin-bottom-half {
    margin-bottom: 1rem;
  }
}
@media only screen and (min-width: 1024px) {
  .margin-bottom-half {
    margin-bottom: 2rem;
  }
}
@media only screen and (min-width: 1440px) {
  .margin-bottom-half {
    margin-bottom: 3rem;
  }
}
@media only screen and (min-width: 1640px) {
  .margin-bottom-half {
    margin-bottom: 4rem;
  }
}
@media only screen and (min-width: 1900px) {
  .margin-bottom-half {
    margin-bottom: 5rem;
  }
}

.margin-bottom-huge {
  margin-bottom: 4rem;
}
@media only screen and (min-width: 768px) {
  .margin-bottom-huge {
    margin-bottom: 6rem;
  }
}
@media only screen and (min-width: 1024px) {
  .margin-bottom-huge {
    margin-bottom: 8rem;
  }
}
@media only screen and (min-width: 1440px) {
  .margin-bottom-huge {
    margin-bottom: 10rem;
  }
}
@media only screen and (min-width: 1640px) {
  .margin-bottom-huge {
    margin-bottom: 12rem;
  }
}
@media only screen and (min-width: 1900px) {
  .margin-bottom-huge {
    margin-bottom: 14rem;
  }
}

.padding {
  padding-top: 2rem;
}
@media only screen and (min-width: 768px) {
  .padding {
    padding-top: 3rem;
  }
}
@media only screen and (min-width: 1024px) {
  .padding {
    padding-top: 4rem;
  }
}
@media only screen and (min-width: 1440px) {
  .padding {
    padding-top: 5rem;
  }
}
@media only screen and (min-width: 1640px) {
  .padding {
    padding-top: 6rem;
  }
}
@media only screen and (min-width: 1900px) {
  .padding {
    padding-top: 7rem;
  }
}
.padding {
  padding-bottom: 2rem;
}
@media only screen and (min-width: 768px) {
  .padding {
    padding-bottom: 3rem;
  }
}
@media only screen and (min-width: 1024px) {
  .padding {
    padding-bottom: 4rem;
  }
}
@media only screen and (min-width: 1440px) {
  .padding {
    padding-bottom: 5rem;
  }
}
@media only screen and (min-width: 1640px) {
  .padding {
    padding-bottom: 6rem;
  }
}
@media only screen and (min-width: 1900px) {
  .padding {
    padding-bottom: 7rem;
  }
}

.padding-half {
  padding-top: 1rem;
}
@media only screen and (min-width: 768px) {
  .padding-half {
    padding-top: 1rem;
  }
}
@media only screen and (min-width: 1024px) {
  .padding-half {
    padding-top: 2rem;
  }
}
@media only screen and (min-width: 1440px) {
  .padding-half {
    padding-top: 3rem;
  }
}
@media only screen and (min-width: 1640px) {
  .padding-half {
    padding-top: 4rem;
  }
}
@media only screen and (min-width: 1900px) {
  .padding-half {
    padding-top: 5rem;
  }
}
.padding-half {
  padding-bottom: 1rem;
}
@media only screen and (min-width: 768px) {
  .padding-half {
    padding-bottom: 1rem;
  }
}
@media only screen and (min-width: 1024px) {
  .padding-half {
    padding-bottom: 2rem;
  }
}
@media only screen and (min-width: 1440px) {
  .padding-half {
    padding-bottom: 3rem;
  }
}
@media only screen and (min-width: 1640px) {
  .padding-half {
    padding-bottom: 4rem;
  }
}
@media only screen and (min-width: 1900px) {
  .padding-half {
    padding-bottom: 5rem;
  }
}

.padding-huge {
  padding-top: 4rem;
}
@media only screen and (min-width: 768px) {
  .padding-huge {
    padding-top: 6rem;
  }
}
@media only screen and (min-width: 1024px) {
  .padding-huge {
    padding-top: 8rem;
  }
}
@media only screen and (min-width: 1440px) {
  .padding-huge {
    padding-top: 10rem;
  }
}
@media only screen and (min-width: 1640px) {
  .padding-huge {
    padding-top: 12rem;
  }
}
@media only screen and (min-width: 1900px) {
  .padding-huge {
    padding-top: 14rem;
  }
}
.padding-huge {
  padding-bottom: 4rem;
}
@media only screen and (min-width: 768px) {
  .padding-huge {
    padding-bottom: 6rem;
  }
}
@media only screen and (min-width: 1024px) {
  .padding-huge {
    padding-bottom: 8rem;
  }
}
@media only screen and (min-width: 1440px) {
  .padding-huge {
    padding-bottom: 10rem;
  }
}
@media only screen and (min-width: 1640px) {
  .padding-huge {
    padding-bottom: 12rem;
  }
}
@media only screen and (min-width: 1900px) {
  .padding-huge {
    padding-bottom: 14rem;
  }
}

.padding-top {
  padding-top: 2rem;
}
@media only screen and (min-width: 768px) {
  .padding-top {
    padding-top: 3rem;
  }
}
@media only screen and (min-width: 1024px) {
  .padding-top {
    padding-top: 4rem;
  }
}
@media only screen and (min-width: 1440px) {
  .padding-top {
    padding-top: 5rem;
  }
}
@media only screen and (min-width: 1640px) {
  .padding-top {
    padding-top: 6rem;
  }
}
@media only screen and (min-width: 1900px) {
  .padding-top {
    padding-top: 7rem;
  }
}

.padding-top-half {
  padding-top: 1rem;
}
@media only screen and (min-width: 768px) {
  .padding-top-half {
    padding-top: 1rem;
  }
}
@media only screen and (min-width: 1024px) {
  .padding-top-half {
    padding-top: 2rem;
  }
}
@media only screen and (min-width: 1440px) {
  .padding-top-half {
    padding-top: 3rem;
  }
}
@media only screen and (min-width: 1640px) {
  .padding-top-half {
    padding-top: 4rem;
  }
}
@media only screen and (min-width: 1900px) {
  .padding-top-half {
    padding-top: 5rem;
  }
}

.padding-top-huge {
  padding-top: 4rem;
}
@media only screen and (min-width: 768px) {
  .padding-top-huge {
    padding-top: 6rem;
  }
}
@media only screen and (min-width: 1024px) {
  .padding-top-huge {
    padding-top: 8rem;
  }
}
@media only screen and (min-width: 1440px) {
  .padding-top-huge {
    padding-top: 10rem;
  }
}
@media only screen and (min-width: 1640px) {
  .padding-top-huge {
    padding-top: 12rem;
  }
}
@media only screen and (min-width: 1900px) {
  .padding-top-huge {
    padding-top: 14rem;
  }
}

.padding-bottom {
  padding-bottom: 2rem;
}
@media only screen and (min-width: 768px) {
  .padding-bottom {
    padding-bottom: 3rem;
  }
}
@media only screen and (min-width: 1024px) {
  .padding-bottom {
    padding-bottom: 4rem;
  }
}
@media only screen and (min-width: 1440px) {
  .padding-bottom {
    padding-bottom: 5rem;
  }
}
@media only screen and (min-width: 1640px) {
  .padding-bottom {
    padding-bottom: 6rem;
  }
}
@media only screen and (min-width: 1900px) {
  .padding-bottom {
    padding-bottom: 7rem;
  }
}

.padding-bottom-half {
  padding-bottom: 1rem;
}
@media only screen and (min-width: 768px) {
  .padding-bottom-half {
    padding-bottom: 1rem;
  }
}
@media only screen and (min-width: 1024px) {
  .padding-bottom-half {
    padding-bottom: 2rem;
  }
}
@media only screen and (min-width: 1440px) {
  .padding-bottom-half {
    padding-bottom: 3rem;
  }
}
@media only screen and (min-width: 1640px) {
  .padding-bottom-half {
    padding-bottom: 4rem;
  }
}
@media only screen and (min-width: 1900px) {
  .padding-bottom-half {
    padding-bottom: 5rem;
  }
}

.padding-bottom-huge {
  padding-bottom: 4rem;
}
@media only screen and (min-width: 768px) {
  .padding-bottom-huge {
    padding-bottom: 6rem;
  }
}
@media only screen and (min-width: 1024px) {
  .padding-bottom-huge {
    padding-bottom: 8rem;
  }
}
@media only screen and (min-width: 1440px) {
  .padding-bottom-huge {
    padding-bottom: 10rem;
  }
}
@media only screen and (min-width: 1640px) {
  .padding-bottom-huge {
    padding-bottom: 12rem;
  }
}
@media only screen and (min-width: 1900px) {
  .padding-bottom-huge {
    padding-bottom: 14rem;
  }
}

.grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
}

@media only screen and (min-width: 1024px) {
  .grid-2 {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }
}

@media only screen and (min-width: 1024px) {
  .grid-2-1 {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }
}
@media only screen and (min-width: 1440px) {
  .grid-2-1 {
    grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
  }
}

@media only screen and (min-width: 1024px) {
  .grid-1-3 {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }
}
@media only screen and (min-width: 1440px) {
  .grid-1-3 {
    grid-template-columns: minmax(0, 1fr) minmax(0, 3fr);
  }
}

@media only screen and (min-width: 1024px) {
  .grid-2-3 {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }
}
@media only screen and (min-width: 1440px) {
  .grid-2-3 {
    grid-template-columns: minmax(0, 2fr) minmax(0, 3fr);
  }
}

@media only screen and (min-width: 1440px) {
  .grid-2-laptop {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }
}

@media only screen and (min-width: 1024px) {
  .grid-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media only screen and (min-width: 1024px) {
  .grid-3-2 {
    grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
  }
}

@media only screen and (min-width: 1024px) {
  .grid-3-2-laptop {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }
}
@media only screen and (min-width: 1440px) {
  .grid-3-2-laptop {
    grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
  }
}

@media only screen and (min-width: 1024px) {
  .grid-3-4 {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }
}
@media only screen and (min-width: 1440px) {
  .grid-3-4 {
    grid-template-columns: minmax(0, 3fr) minmax(0, 4fr);
  }
}

@media only screen and (min-width: 768px) {
  .grid-4 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media only screen and (min-width: 1024px) {
  .grid-4 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media only screen and (min-width: 1440px) {
  .grid-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media only screen and (min-width: 1024px) {
  .grid-4-5 {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }
}
@media only screen and (min-width: 1440px) {
  .grid-4-5 {
    grid-template-columns: minmax(0, 4fr) minmax(0, 5fr);
  }
}

@media only screen and (min-width: 1024px) {
  .layered {
    grid-column-start: 1;
    grid-row-start: 1;
  }
}

.container {
  box-sizing: border-box;
  margin: 0 auto;
  max-width: calc(1430px + 10rem);
}
.container {
  padding-left: 2rem;
}
@media only screen and (min-width: 768px) {
  .container {
    padding-left: 3rem;
  }
}
@media only screen and (min-width: 1024px) {
  .container {
    padding-left: 4rem;
  }
}
@media only screen and (min-width: 1440px) {
  .container {
    padding-left: 5rem;
  }
}
.container {
  padding-right: 2rem;
}
@media only screen and (min-width: 768px) {
  .container {
    padding-right: 3rem;
  }
}
@media only screen and (min-width: 1024px) {
  .container {
    padding-right: 4rem;
  }
}
@media only screen and (min-width: 1440px) {
  .container {
    padding-right: 5rem;
  }
}

.p-2 {
  box-sizing: border-box;
  padding: 2rem;
}

.p-3 {
  box-sizing: border-box;
  padding: 2rem;
}
@media only screen and (min-width: 1440px) {
  .p-3 {
    padding: 3rem;
  }
}

.p-4 {
  box-sizing: border-box;
  padding: 2rem;
}
@media only screen and (min-width: 1024px) {
  .p-4 {
    padding: 3rem;
  }
}
@media only screen and (min-width: 1440px) {
  .p-4 {
    padding: 4rem;
  }
}

.w-100 {
  width: 100%;
}

#site-main-content {
  overflow-x: clip;
}

.relative {
  position: relative;
}

.absolute {
  position: absolute;
}

.flex {
  display: flex;
}

.head {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-direction: row;
  gap: 2rem;
}

.leadin {
  color: #8C2326;
  font-size: 1.125rem;
  font-weight: 600;
  margin: 0 0 1rem;
}

.bg-grey {
  background: #F3F3F3;
}

aside.sidebar {
  padding-left: 2rem;
  padding-right: 2rem;
}
aside.sidebar a {
  transition: all 0.2s ease-in-out;
  color: #000;
  font-weight: 700;
  text-decoration: none;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: row;
  gap: 2rem;
  font-weight: 600;
  gap: 1rem;
  text-decoration: none;
}
aside.sidebar a:after {
  color: #8C2326;
  order: -1;
}
aside.sidebar a:hover, aside.sidebar a:active, aside.sidebar a:focus-within, aside.sidebar a:focus {
  color: #8C2326;
}
aside.sidebar ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-direction: column;
  gap: 2rem;
  gap: 0.75rem;
  margin: 1.5rem 0;
}
aside.sidebar ul li {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: row;
  gap: 2rem;
  gap: 1.5rem;
}
aside.sidebar ul li:before {
  aspect-ratio: 1;
  background: #8C2326;
  border-radius: 100%;
  content: "";
  width: 0.65rem;
}

section {
  position: relative;
  z-index: 2;
}
section .content {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-direction: column;
  gap: 2rem;
}
section .content p {
  margin: 0;
}
@media only screen and (min-width: 1024px) {
  section.hero .container {
    padding-right: 0;
  }
}

header .container {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-direction: row;
  gap: 2rem;
  padding-left: 0;
  padding-top: 2rem;
}
header .logo {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: 2rem;
  max-width: 385px;
  width: 100%;
}
@media only screen and (max-width: 1439px) {
  header .logo {
    margin-left: 2rem;
  }
}
header .logo img {
  width: 100%;
}
header nav ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-direction: row;
  gap: 2rem;
}
header nav ul li a {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-direction: row;
  gap: 2rem;
  transition: all 0.2s ease-in-out;
  color: #000;
  flex-direction: row-reverse;
  font-weight: 600;
  gap: 1rem;
  text-decoration: none;
}
header nav ul li a:after {
  color: #8C2326;
  font-size: 1.2rem !important;
}
@media only screen and (max-width: 1439px) {
  header nav ul li a span {
    display: none;
  }
}
header nav ul li a:hover, header nav ul li a:active, header nav ul li a:focus-within, header nav ul li a:focus {
  color: #8C2326;
}
@media only screen and (max-width: 1439px) {
  header nav ul li a {
    aspect-ratio: 1;
    background: #8C2326;
    border-radius: 100%;
    justify-content: center;
    width: 3rem;
  }
  header nav ul li a:after {
    color: #FFF;
  }
}

footer {
  position: relative;
  z-index: 2;
}
footer .credits {
  background: #8C2326;
  color: #FFF;
  padding: 3.125rem 2rem;
  text-align: center;
}
footer span {
  color: #000;
}
footer h4 {
  color: #8C2326;
  font-size: 1.75rem;
  margin-bottom: 2rem;
}
footer a {
  color: #8C2326;
  text-underline-offset: 4px;
}
footer a:hover, footer a:active, footer a:focus-within, footer a:focus {
  text-decoration: underline dashed;
}
