@charset "UTF-8";
.link-arrow:hover::before {
  transition-timing-function: cubic-bezier(0.4, 0.82, 0.63, 0.2);
  transition: opacity 0.56s, height 0.56s, transform 0.56s, background 0.3s, font-size 0s;
}

.link-arrow::before {
  transition-timing-function: cubic-bezier(0.4, 0.82, 0.63, 0.2);
  transition: opacity 0.28s, height 0.28s, transform 0.28s, background 0.22s, font-size 0s;
}

.link-arrow:hover::before {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transform-style: preserve-3d;
}

/* * ----------  GLOBAL LAYOUT  ---------- */
:root {
  --header-h: 0px; /* Default fallback for layouts without header height JS */
}

html, body {
  margin: 0;
  padding: 0;
  height: 100%;
}

header {
  flex: 0 0 auto;
  width: 100%;
}

picture {
  display: block;
  line-height: 0;
}

/* main: at least full‐screen minus header, but will grow with content */
main#main-content {
  /* ensure it never “shrinks” smaller than the viewport under header */
  min-height: calc(100vh - var(--header-h)) !important;
  height: auto !important;
}

/* footer simply follows main in the flex flow */
footer {
  flex: 0 0 auto;
  width: 100%;
}

/* * ============ Custom classes ============ */
.padding-top-xl {
  padding-top: 96px !important;
}

@media (max-width: 1024px) {
  .lg-padding-top-xl {
    padding-top: 96px !important;
  }
}
@media (max-width: 768px) {
  .md-padding-top-xl.md-padding-top-xl {
    padding-top: 96px !important;
  }
}
@media (max-width: 576px) {
  .sm-padding-top-xl.sm-padding-top-xl.sm-padding-top-xl {
    padding-top: 96px !important;
  }
}
.margin-top-xl {
  margin-top: 96px !important;
}

@media (max-width: 1024px) {
  .lg-margin-top-xl {
    margin-top: 96px !important;
  }
}
@media (max-width: 768px) {
  .md-margin-top-xl.md-margin-top-xl {
    margin-top: 96px !important;
  }
}
@media (max-width: 576px) {
  .sm-margin-top-xl.sm-margin-top-xl.sm-margin-top-xl {
    margin-top: 96px !important;
  }
}
.padding-top-lg {
  padding-top: 48px !important;
}

@media (max-width: 1024px) {
  .lg-padding-top-lg {
    padding-top: 48px !important;
  }
}
@media (max-width: 768px) {
  .md-padding-top-lg.md-padding-top-lg {
    padding-top: 48px !important;
  }
}
@media (max-width: 576px) {
  .sm-padding-top-lg.sm-padding-top-lg.sm-padding-top-lg {
    padding-top: 48px !important;
  }
}
.margin-top-lg {
  margin-top: 48px !important;
}

@media (max-width: 1024px) {
  .lg-margin-top-lg {
    margin-top: 48px !important;
  }
}
@media (max-width: 768px) {
  .md-margin-top-lg.md-margin-top-lg {
    margin-top: 48px !important;
  }
}
@media (max-width: 576px) {
  .sm-margin-top-lg.sm-margin-top-lg.sm-margin-top-lg {
    margin-top: 48px !important;
  }
}
.padding-top-md {
  padding-top: 24px !important;
}

@media (max-width: 1024px) {
  .lg-padding-top-md {
    padding-top: 24px !important;
  }
}
@media (max-width: 768px) {
  .md-padding-top-md.md-padding-top-md {
    padding-top: 24px !important;
  }
}
@media (max-width: 576px) {
  .sm-padding-top-md.sm-padding-top-md.sm-padding-top-md {
    padding-top: 24px !important;
  }
}
.margin-top-md {
  margin-top: 24px !important;
}

@media (max-width: 1024px) {
  .lg-margin-top-md {
    margin-top: 24px !important;
  }
}
@media (max-width: 768px) {
  .md-margin-top-md.md-margin-top-md {
    margin-top: 24px !important;
  }
}
@media (max-width: 576px) {
  .sm-margin-top-md.sm-margin-top-md.sm-margin-top-md {
    margin-top: 24px !important;
  }
}
.padding-top-sm {
  padding-top: 12px !important;
}

@media (max-width: 1024px) {
  .lg-padding-top-sm {
    padding-top: 12px !important;
  }
}
@media (max-width: 768px) {
  .md-padding-top-sm.md-padding-top-sm {
    padding-top: 12px !important;
  }
}
@media (max-width: 576px) {
  .sm-padding-top-sm.sm-padding-top-sm.sm-padding-top-sm {
    padding-top: 12px !important;
  }
}
.margin-top-sm {
  margin-top: 12px !important;
}

@media (max-width: 1024px) {
  .lg-margin-top-sm {
    margin-top: 12px !important;
  }
}
@media (max-width: 768px) {
  .md-margin-top-sm.md-margin-top-sm {
    margin-top: 12px !important;
  }
}
@media (max-width: 576px) {
  .sm-margin-top-sm.sm-margin-top-sm.sm-margin-top-sm {
    margin-top: 12px !important;
  }
}
.padding-top-none {
  padding-top: 0 !important;
}

@media (max-width: 1024px) {
  .lg-padding-top-none {
    padding-top: 0 !important;
  }
}
@media (max-width: 768px) {
  .md-padding-top-none.md-padding-top-none {
    padding-top: 0 !important;
  }
}
@media (max-width: 576px) {
  .sm-padding-top-none.sm-padding-top-none.sm-padding-top-none {
    padding-top: 0 !important;
  }
}
.margin-top-none {
  margin-top: 0 !important;
}

@media (max-width: 1024px) {
  .lg-margin-top-none {
    margin-top: 0 !important;
  }
}
@media (max-width: 768px) {
  .md-margin-top-none.md-margin-top-none {
    margin-top: 0 !important;
  }
}
@media (max-width: 576px) {
  .sm-margin-top-none.sm-margin-top-none.sm-margin-top-none {
    margin-top: 0 !important;
  }
}
.padding-right-xl {
  padding-right: 96px !important;
}

@media (max-width: 1024px) {
  .lg-padding-right-xl {
    padding-right: 96px !important;
  }
}
@media (max-width: 768px) {
  .md-padding-right-xl.md-padding-right-xl {
    padding-right: 96px !important;
  }
}
@media (max-width: 576px) {
  .sm-padding-right-xl.sm-padding-right-xl.sm-padding-right-xl {
    padding-right: 96px !important;
  }
}
.margin-right-xl {
  margin-right: 96px !important;
}

@media (max-width: 1024px) {
  .lg-margin-right-xl {
    margin-right: 96px !important;
  }
}
@media (max-width: 768px) {
  .md-margin-right-xl.md-margin-right-xl {
    margin-right: 96px !important;
  }
}
@media (max-width: 576px) {
  .sm-margin-right-xl.sm-margin-right-xl.sm-margin-right-xl {
    margin-right: 96px !important;
  }
}
.padding-right-lg {
  padding-right: 48px !important;
}

@media (max-width: 1024px) {
  .lg-padding-right-lg {
    padding-right: 48px !important;
  }
}
@media (max-width: 768px) {
  .md-padding-right-lg.md-padding-right-lg {
    padding-right: 48px !important;
  }
}
@media (max-width: 576px) {
  .sm-padding-right-lg.sm-padding-right-lg.sm-padding-right-lg {
    padding-right: 48px !important;
  }
}
.margin-right-lg {
  margin-right: 48px !important;
}

@media (max-width: 1024px) {
  .lg-margin-right-lg {
    margin-right: 48px !important;
  }
}
@media (max-width: 768px) {
  .md-margin-right-lg.md-margin-right-lg {
    margin-right: 48px !important;
  }
}
@media (max-width: 576px) {
  .sm-margin-right-lg.sm-margin-right-lg.sm-margin-right-lg {
    margin-right: 48px !important;
  }
}
.padding-right-md {
  padding-right: 24px !important;
}

@media (max-width: 1024px) {
  .lg-padding-right-md {
    padding-right: 24px !important;
  }
}
@media (max-width: 768px) {
  .md-padding-right-md.md-padding-right-md {
    padding-right: 24px !important;
  }
}
@media (max-width: 576px) {
  .sm-padding-right-md.sm-padding-right-md.sm-padding-right-md {
    padding-right: 24px !important;
  }
}
.margin-right-md {
  margin-right: 24px !important;
}

@media (max-width: 1024px) {
  .lg-margin-right-md {
    margin-right: 24px !important;
  }
}
@media (max-width: 768px) {
  .md-margin-right-md.md-margin-right-md {
    margin-right: 24px !important;
  }
}
@media (max-width: 576px) {
  .sm-margin-right-md.sm-margin-right-md.sm-margin-right-md {
    margin-right: 24px !important;
  }
}
.padding-right-sm {
  padding-right: 12px !important;
}

@media (max-width: 1024px) {
  .lg-padding-right-sm {
    padding-right: 12px !important;
  }
}
@media (max-width: 768px) {
  .md-padding-right-sm.md-padding-right-sm {
    padding-right: 12px !important;
  }
}
@media (max-width: 576px) {
  .sm-padding-right-sm.sm-padding-right-sm.sm-padding-right-sm {
    padding-right: 12px !important;
  }
}
.margin-right-sm {
  margin-right: 12px !important;
}

@media (max-width: 1024px) {
  .lg-margin-right-sm {
    margin-right: 12px !important;
  }
}
@media (max-width: 768px) {
  .md-margin-right-sm.md-margin-right-sm {
    margin-right: 12px !important;
  }
}
@media (max-width: 576px) {
  .sm-margin-right-sm.sm-margin-right-sm.sm-margin-right-sm {
    margin-right: 12px !important;
  }
}
.padding-right-none {
  padding-right: 0 !important;
}

@media (max-width: 1024px) {
  .lg-padding-right-none {
    padding-right: 0 !important;
  }
}
@media (max-width: 768px) {
  .md-padding-right-none.md-padding-right-none {
    padding-right: 0 !important;
  }
}
@media (max-width: 576px) {
  .sm-padding-right-none.sm-padding-right-none.sm-padding-right-none {
    padding-right: 0 !important;
  }
}
.margin-right-none {
  margin-right: 0 !important;
}

@media (max-width: 1024px) {
  .lg-margin-right-none {
    margin-right: 0 !important;
  }
}
@media (max-width: 768px) {
  .md-margin-right-none.md-margin-right-none {
    margin-right: 0 !important;
  }
}
@media (max-width: 576px) {
  .sm-margin-right-none.sm-margin-right-none.sm-margin-right-none {
    margin-right: 0 !important;
  }
}
.padding-bottom-xl {
  padding-bottom: 96px !important;
}

@media (max-width: 1024px) {
  .lg-padding-bottom-xl {
    padding-bottom: 96px !important;
  }
}
@media (max-width: 768px) {
  .md-padding-bottom-xl.md-padding-bottom-xl {
    padding-bottom: 96px !important;
  }
}
@media (max-width: 576px) {
  .sm-padding-bottom-xl.sm-padding-bottom-xl.sm-padding-bottom-xl {
    padding-bottom: 96px !important;
  }
}
.margin-bottom-xl {
  margin-bottom: 96px !important;
}

@media (max-width: 1024px) {
  .lg-margin-bottom-xl {
    margin-bottom: 96px !important;
  }
}
@media (max-width: 768px) {
  .md-margin-bottom-xl.md-margin-bottom-xl {
    margin-bottom: 96px !important;
  }
}
@media (max-width: 576px) {
  .sm-margin-bottom-xl.sm-margin-bottom-xl.sm-margin-bottom-xl {
    margin-bottom: 96px !important;
  }
}
.padding-bottom-lg {
  padding-bottom: 48px !important;
}

@media (max-width: 1024px) {
  .lg-padding-bottom-lg {
    padding-bottom: 48px !important;
  }
}
@media (max-width: 768px) {
  .md-padding-bottom-lg.md-padding-bottom-lg {
    padding-bottom: 48px !important;
  }
}
@media (max-width: 576px) {
  .sm-padding-bottom-lg.sm-padding-bottom-lg.sm-padding-bottom-lg {
    padding-bottom: 48px !important;
  }
}
.margin-bottom-lg {
  margin-bottom: 48px !important;
}

@media (max-width: 1024px) {
  .lg-margin-bottom-lg {
    margin-bottom: 48px !important;
  }
}
@media (max-width: 768px) {
  .md-margin-bottom-lg.md-margin-bottom-lg {
    margin-bottom: 48px !important;
  }
}
@media (max-width: 576px) {
  .sm-margin-bottom-lg.sm-margin-bottom-lg.sm-margin-bottom-lg {
    margin-bottom: 48px !important;
  }
}
.padding-bottom-md {
  padding-bottom: 24px !important;
}

@media (max-width: 1024px) {
  .lg-padding-bottom-md {
    padding-bottom: 24px !important;
  }
}
@media (max-width: 768px) {
  .md-padding-bottom-md.md-padding-bottom-md {
    padding-bottom: 24px !important;
  }
}
@media (max-width: 576px) {
  .sm-padding-bottom-md.sm-padding-bottom-md.sm-padding-bottom-md {
    padding-bottom: 24px !important;
  }
}
.margin-bottom-md {
  margin-bottom: 24px !important;
}

@media (max-width: 1024px) {
  .lg-margin-bottom-md {
    margin-bottom: 24px !important;
  }
}
@media (max-width: 768px) {
  .md-margin-bottom-md.md-margin-bottom-md {
    margin-bottom: 24px !important;
  }
}
@media (max-width: 576px) {
  .sm-margin-bottom-md.sm-margin-bottom-md.sm-margin-bottom-md {
    margin-bottom: 24px !important;
  }
}
.padding-bottom-sm {
  padding-bottom: 12px !important;
}

@media (max-width: 1024px) {
  .lg-padding-bottom-sm {
    padding-bottom: 12px !important;
  }
}
@media (max-width: 768px) {
  .md-padding-bottom-sm.md-padding-bottom-sm {
    padding-bottom: 12px !important;
  }
}
@media (max-width: 576px) {
  .sm-padding-bottom-sm.sm-padding-bottom-sm.sm-padding-bottom-sm {
    padding-bottom: 12px !important;
  }
}
.margin-bottom-sm {
  margin-bottom: 12px !important;
}

@media (max-width: 1024px) {
  .lg-margin-bottom-sm {
    margin-bottom: 12px !important;
  }
}
@media (max-width: 768px) {
  .md-margin-bottom-sm.md-margin-bottom-sm {
    margin-bottom: 12px !important;
  }
}
@media (max-width: 576px) {
  .sm-margin-bottom-sm.sm-margin-bottom-sm.sm-margin-bottom-sm {
    margin-bottom: 12px !important;
  }
}
.padding-bottom-none {
  padding-bottom: 0 !important;
}

@media (max-width: 1024px) {
  .lg-padding-bottom-none {
    padding-bottom: 0 !important;
  }
}
@media (max-width: 768px) {
  .md-padding-bottom-none.md-padding-bottom-none {
    padding-bottom: 0 !important;
  }
}
@media (max-width: 576px) {
  .sm-padding-bottom-none.sm-padding-bottom-none.sm-padding-bottom-none {
    padding-bottom: 0 !important;
  }
}
.margin-bottom-none {
  margin-bottom: 0 !important;
}

@media (max-width: 1024px) {
  .lg-margin-bottom-none {
    margin-bottom: 0 !important;
  }
}
@media (max-width: 768px) {
  .md-margin-bottom-none.md-margin-bottom-none {
    margin-bottom: 0 !important;
  }
}
@media (max-width: 576px) {
  .sm-margin-bottom-none.sm-margin-bottom-none.sm-margin-bottom-none {
    margin-bottom: 0 !important;
  }
}
.padding-left-xl {
  padding-left: 96px !important;
}

@media (max-width: 1024px) {
  .lg-padding-left-xl {
    padding-left: 96px !important;
  }
}
@media (max-width: 768px) {
  .md-padding-left-xl.md-padding-left-xl {
    padding-left: 96px !important;
  }
}
@media (max-width: 576px) {
  .sm-padding-left-xl.sm-padding-left-xl.sm-padding-left-xl {
    padding-left: 96px !important;
  }
}
.margin-left-xl {
  margin-left: 96px !important;
}

@media (max-width: 1024px) {
  .lg-margin-left-xl {
    margin-left: 96px !important;
  }
}
@media (max-width: 768px) {
  .md-margin-left-xl.md-margin-left-xl {
    margin-left: 96px !important;
  }
}
@media (max-width: 576px) {
  .sm-margin-left-xl.sm-margin-left-xl.sm-margin-left-xl {
    margin-left: 96px !important;
  }
}
.padding-left-lg {
  padding-left: 48px !important;
}

@media (max-width: 1024px) {
  .lg-padding-left-lg {
    padding-left: 48px !important;
  }
}
@media (max-width: 768px) {
  .md-padding-left-lg.md-padding-left-lg {
    padding-left: 48px !important;
  }
}
@media (max-width: 576px) {
  .sm-padding-left-lg.sm-padding-left-lg.sm-padding-left-lg {
    padding-left: 48px !important;
  }
}
.margin-left-lg {
  margin-left: 48px !important;
}

@media (max-width: 1024px) {
  .lg-margin-left-lg {
    margin-left: 48px !important;
  }
}
@media (max-width: 768px) {
  .md-margin-left-lg.md-margin-left-lg {
    margin-left: 48px !important;
  }
}
@media (max-width: 576px) {
  .sm-margin-left-lg.sm-margin-left-lg.sm-margin-left-lg {
    margin-left: 48px !important;
  }
}
.padding-left-md {
  padding-left: 24px !important;
}

@media (max-width: 1024px) {
  .lg-padding-left-md {
    padding-left: 24px !important;
  }
}
@media (max-width: 768px) {
  .md-padding-left-md.md-padding-left-md {
    padding-left: 24px !important;
  }
}
@media (max-width: 576px) {
  .sm-padding-left-md.sm-padding-left-md.sm-padding-left-md {
    padding-left: 24px !important;
  }
}
.margin-left-md {
  margin-left: 24px !important;
}

@media (max-width: 1024px) {
  .lg-margin-left-md {
    margin-left: 24px !important;
  }
}
@media (max-width: 768px) {
  .md-margin-left-md.md-margin-left-md {
    margin-left: 24px !important;
  }
}
@media (max-width: 576px) {
  .sm-margin-left-md.sm-margin-left-md.sm-margin-left-md {
    margin-left: 24px !important;
  }
}
.padding-left-sm {
  padding-left: 12px !important;
}

@media (max-width: 1024px) {
  .lg-padding-left-sm {
    padding-left: 12px !important;
  }
}
@media (max-width: 768px) {
  .md-padding-left-sm.md-padding-left-sm {
    padding-left: 12px !important;
  }
}
@media (max-width: 576px) {
  .sm-padding-left-sm.sm-padding-left-sm.sm-padding-left-sm {
    padding-left: 12px !important;
  }
}
.margin-left-sm {
  margin-left: 12px !important;
}

@media (max-width: 1024px) {
  .lg-margin-left-sm {
    margin-left: 12px !important;
  }
}
@media (max-width: 768px) {
  .md-margin-left-sm.md-margin-left-sm {
    margin-left: 12px !important;
  }
}
@media (max-width: 576px) {
  .sm-margin-left-sm.sm-margin-left-sm.sm-margin-left-sm {
    margin-left: 12px !important;
  }
}
.padding-left-none {
  padding-left: 0 !important;
}

@media (max-width: 1024px) {
  .lg-padding-left-none {
    padding-left: 0 !important;
  }
}
@media (max-width: 768px) {
  .md-padding-left-none.md-padding-left-none {
    padding-left: 0 !important;
  }
}
@media (max-width: 576px) {
  .sm-padding-left-none.sm-padding-left-none.sm-padding-left-none {
    padding-left: 0 !important;
  }
}
.margin-left-none {
  margin-left: 0 !important;
}

@media (max-width: 1024px) {
  .lg-margin-left-none {
    margin-left: 0 !important;
  }
}
@media (max-width: 768px) {
  .md-margin-left-none.md-margin-left-none {
    margin-left: 0 !important;
  }
}
@media (max-width: 576px) {
  .sm-margin-left-none.sm-margin-left-none.sm-margin-left-none {
    margin-left: 0 !important;
  }
}
.padding-x-xl {
  padding-left: 96px !important;
}

@media (max-width: 1024px) {
  .lg-padding-x-xl {
    padding-left: 96px !important;
  }
}
@media (max-width: 768px) {
  .md-padding-x-xl.md-padding-x-xl {
    padding-left: 96px !important;
  }
}
@media (max-width: 576px) {
  .sm-padding-x-xl.sm-padding-x-xl.sm-padding-x-xl {
    padding-left: 96px !important;
  }
}
.padding-x-xl {
  padding-right: 96px !important;
}

@media (max-width: 1024px) {
  .lg-padding-x-xl {
    padding-right: 96px !important;
  }
}
@media (max-width: 768px) {
  .md-padding-x-xl.md-padding-x-xl {
    padding-right: 96px !important;
  }
}
@media (max-width: 576px) {
  .sm-padding-x-xl.sm-padding-x-xl.sm-padding-x-xl {
    padding-right: 96px !important;
  }
}
.padding-y-xl {
  padding-top: 96px !important;
}

@media (max-width: 1024px) {
  .lg-padding-y-xl {
    padding-top: 96px !important;
  }
}
@media (max-width: 768px) {
  .md-padding-y-xl.md-padding-y-xl {
    padding-top: 96px !important;
  }
}
@media (max-width: 576px) {
  .sm-padding-y-xl.sm-padding-y-xl.sm-padding-y-xl {
    padding-top: 96px !important;
  }
}
.padding-y-xl {
  padding-bottom: 96px !important;
}

@media (max-width: 1024px) {
  .lg-padding-y-xl {
    padding-bottom: 96px !important;
  }
}
@media (max-width: 768px) {
  .md-padding-y-xl.md-padding-y-xl {
    padding-bottom: 96px !important;
  }
}
@media (max-width: 576px) {
  .sm-padding-y-xl.sm-padding-y-xl.sm-padding-y-xl {
    padding-bottom: 96px !important;
  }
}
.margin-x-xl {
  margin-left: 96px !important;
}

@media (max-width: 1024px) {
  .lg-margin-x-xl {
    margin-left: 96px !important;
  }
}
@media (max-width: 768px) {
  .md-margin-x-xl.md-margin-x-xl {
    margin-left: 96px !important;
  }
}
@media (max-width: 576px) {
  .sm-margin-x-xl.sm-margin-x-xl.sm-margin-x-xl {
    margin-left: 96px !important;
  }
}
.margin-x-xl {
  margin-right: 96px !important;
}

@media (max-width: 1024px) {
  .lg-margin-x-xl {
    margin-right: 96px !important;
  }
}
@media (max-width: 768px) {
  .md-margin-x-xl.md-margin-x-xl {
    margin-right: 96px !important;
  }
}
@media (max-width: 576px) {
  .sm-margin-x-xl.sm-margin-x-xl.sm-margin-x-xl {
    margin-right: 96px !important;
  }
}
.margin-y-xl {
  margin-top: 96px !important;
}

@media (max-width: 1024px) {
  .lg-margin-y-xl {
    margin-top: 96px !important;
  }
}
@media (max-width: 768px) {
  .md-margin-y-xl.md-margin-y-xl {
    margin-top: 96px !important;
  }
}
@media (max-width: 576px) {
  .sm-margin-y-xl.sm-margin-y-xl.sm-margin-y-xl {
    margin-top: 96px !important;
  }
}
.margin-y-xl {
  margin-bottom: 96px !important;
}

@media (max-width: 1024px) {
  .lg-margin-y-xl {
    margin-bottom: 96px !important;
  }
}
@media (max-width: 768px) {
  .md-margin-y-xl.md-margin-y-xl {
    margin-bottom: 96px !important;
  }
}
@media (max-width: 576px) {
  .sm-margin-y-xl.sm-margin-y-xl.sm-margin-y-xl {
    margin-bottom: 96px !important;
  }
}
.padding-x-lg {
  padding-left: 48px !important;
}

@media (max-width: 1024px) {
  .lg-padding-x-lg {
    padding-left: 48px !important;
  }
}
@media (max-width: 768px) {
  .md-padding-x-lg.md-padding-x-lg {
    padding-left: 48px !important;
  }
}
@media (max-width: 576px) {
  .sm-padding-x-lg.sm-padding-x-lg.sm-padding-x-lg {
    padding-left: 48px !important;
  }
}
.padding-x-lg {
  padding-right: 48px !important;
}

@media (max-width: 1024px) {
  .lg-padding-x-lg {
    padding-right: 48px !important;
  }
}
@media (max-width: 768px) {
  .md-padding-x-lg.md-padding-x-lg {
    padding-right: 48px !important;
  }
}
@media (max-width: 576px) {
  .sm-padding-x-lg.sm-padding-x-lg.sm-padding-x-lg {
    padding-right: 48px !important;
  }
}
.padding-y-lg {
  padding-top: 48px !important;
}

@media (max-width: 1024px) {
  .lg-padding-y-lg {
    padding-top: 48px !important;
  }
}
@media (max-width: 768px) {
  .md-padding-y-lg.md-padding-y-lg {
    padding-top: 48px !important;
  }
}
@media (max-width: 576px) {
  .sm-padding-y-lg.sm-padding-y-lg.sm-padding-y-lg {
    padding-top: 48px !important;
  }
}
.padding-y-lg {
  padding-bottom: 48px !important;
}

@media (max-width: 1024px) {
  .lg-padding-y-lg {
    padding-bottom: 48px !important;
  }
}
@media (max-width: 768px) {
  .md-padding-y-lg.md-padding-y-lg {
    padding-bottom: 48px !important;
  }
}
@media (max-width: 576px) {
  .sm-padding-y-lg.sm-padding-y-lg.sm-padding-y-lg {
    padding-bottom: 48px !important;
  }
}
.margin-x-lg {
  margin-left: 48px !important;
}

@media (max-width: 1024px) {
  .lg-margin-x-lg {
    margin-left: 48px !important;
  }
}
@media (max-width: 768px) {
  .md-margin-x-lg.md-margin-x-lg {
    margin-left: 48px !important;
  }
}
@media (max-width: 576px) {
  .sm-margin-x-lg.sm-margin-x-lg.sm-margin-x-lg {
    margin-left: 48px !important;
  }
}
.margin-x-lg {
  margin-right: 48px !important;
}

@media (max-width: 1024px) {
  .lg-margin-x-lg {
    margin-right: 48px !important;
  }
}
@media (max-width: 768px) {
  .md-margin-x-lg.md-margin-x-lg {
    margin-right: 48px !important;
  }
}
@media (max-width: 576px) {
  .sm-margin-x-lg.sm-margin-x-lg.sm-margin-x-lg {
    margin-right: 48px !important;
  }
}
.margin-y-lg {
  margin-top: 48px !important;
}

@media (max-width: 1024px) {
  .lg-margin-y-lg {
    margin-top: 48px !important;
  }
}
@media (max-width: 768px) {
  .md-margin-y-lg.md-margin-y-lg {
    margin-top: 48px !important;
  }
}
@media (max-width: 576px) {
  .sm-margin-y-lg.sm-margin-y-lg.sm-margin-y-lg {
    margin-top: 48px !important;
  }
}
.margin-y-lg {
  margin-bottom: 48px !important;
}

@media (max-width: 1024px) {
  .lg-margin-y-lg {
    margin-bottom: 48px !important;
  }
}
@media (max-width: 768px) {
  .md-margin-y-lg.md-margin-y-lg {
    margin-bottom: 48px !important;
  }
}
@media (max-width: 576px) {
  .sm-margin-y-lg.sm-margin-y-lg.sm-margin-y-lg {
    margin-bottom: 48px !important;
  }
}
.padding-x-md {
  padding-left: 24px !important;
}

@media (max-width: 1024px) {
  .lg-padding-x-md {
    padding-left: 24px !important;
  }
}
@media (max-width: 768px) {
  .md-padding-x-md.md-padding-x-md {
    padding-left: 24px !important;
  }
}
@media (max-width: 576px) {
  .sm-padding-x-md.sm-padding-x-md.sm-padding-x-md {
    padding-left: 24px !important;
  }
}
.padding-x-md {
  padding-right: 24px !important;
}

@media (max-width: 1024px) {
  .lg-padding-x-md {
    padding-right: 24px !important;
  }
}
@media (max-width: 768px) {
  .md-padding-x-md.md-padding-x-md {
    padding-right: 24px !important;
  }
}
@media (max-width: 576px) {
  .sm-padding-x-md.sm-padding-x-md.sm-padding-x-md {
    padding-right: 24px !important;
  }
}
.padding-y-md {
  padding-top: 24px !important;
}

@media (max-width: 1024px) {
  .lg-padding-y-md {
    padding-top: 24px !important;
  }
}
@media (max-width: 768px) {
  .md-padding-y-md.md-padding-y-md {
    padding-top: 24px !important;
  }
}
@media (max-width: 576px) {
  .sm-padding-y-md.sm-padding-y-md.sm-padding-y-md {
    padding-top: 24px !important;
  }
}
.padding-y-md {
  padding-bottom: 24px !important;
}

@media (max-width: 1024px) {
  .lg-padding-y-md {
    padding-bottom: 24px !important;
  }
}
@media (max-width: 768px) {
  .md-padding-y-md.md-padding-y-md {
    padding-bottom: 24px !important;
  }
}
@media (max-width: 576px) {
  .sm-padding-y-md.sm-padding-y-md.sm-padding-y-md {
    padding-bottom: 24px !important;
  }
}
.margin-x-md {
  margin-left: 24px !important;
}

@media (max-width: 1024px) {
  .lg-margin-x-md {
    margin-left: 24px !important;
  }
}
@media (max-width: 768px) {
  .md-margin-x-md.md-margin-x-md {
    margin-left: 24px !important;
  }
}
@media (max-width: 576px) {
  .sm-margin-x-md.sm-margin-x-md.sm-margin-x-md {
    margin-left: 24px !important;
  }
}
.margin-x-md {
  margin-right: 24px !important;
}

@media (max-width: 1024px) {
  .lg-margin-x-md {
    margin-right: 24px !important;
  }
}
@media (max-width: 768px) {
  .md-margin-x-md.md-margin-x-md {
    margin-right: 24px !important;
  }
}
@media (max-width: 576px) {
  .sm-margin-x-md.sm-margin-x-md.sm-margin-x-md {
    margin-right: 24px !important;
  }
}
.margin-y-md {
  margin-top: 24px !important;
}

@media (max-width: 1024px) {
  .lg-margin-y-md {
    margin-top: 24px !important;
  }
}
@media (max-width: 768px) {
  .md-margin-y-md.md-margin-y-md {
    margin-top: 24px !important;
  }
}
@media (max-width: 576px) {
  .sm-margin-y-md.sm-margin-y-md.sm-margin-y-md {
    margin-top: 24px !important;
  }
}
.margin-y-md {
  margin-bottom: 24px !important;
}

@media (max-width: 1024px) {
  .lg-margin-y-md {
    margin-bottom: 24px !important;
  }
}
@media (max-width: 768px) {
  .md-margin-y-md.md-margin-y-md {
    margin-bottom: 24px !important;
  }
}
@media (max-width: 576px) {
  .sm-margin-y-md.sm-margin-y-md.sm-margin-y-md {
    margin-bottom: 24px !important;
  }
}
.padding-x-sm {
  padding-left: 12px !important;
}

@media (max-width: 1024px) {
  .lg-padding-x-sm {
    padding-left: 12px !important;
  }
}
@media (max-width: 768px) {
  .md-padding-x-sm.md-padding-x-sm {
    padding-left: 12px !important;
  }
}
@media (max-width: 576px) {
  .sm-padding-x-sm.sm-padding-x-sm.sm-padding-x-sm {
    padding-left: 12px !important;
  }
}
.padding-x-sm {
  padding-right: 12px !important;
}

@media (max-width: 1024px) {
  .lg-padding-x-sm {
    padding-right: 12px !important;
  }
}
@media (max-width: 768px) {
  .md-padding-x-sm.md-padding-x-sm {
    padding-right: 12px !important;
  }
}
@media (max-width: 576px) {
  .sm-padding-x-sm.sm-padding-x-sm.sm-padding-x-sm {
    padding-right: 12px !important;
  }
}
.padding-y-sm {
  padding-top: 12px !important;
}

@media (max-width: 1024px) {
  .lg-padding-y-sm {
    padding-top: 12px !important;
  }
}
@media (max-width: 768px) {
  .md-padding-y-sm.md-padding-y-sm {
    padding-top: 12px !important;
  }
}
@media (max-width: 576px) {
  .sm-padding-y-sm.sm-padding-y-sm.sm-padding-y-sm {
    padding-top: 12px !important;
  }
}
.padding-y-sm {
  padding-bottom: 12px !important;
}

@media (max-width: 1024px) {
  .lg-padding-y-sm {
    padding-bottom: 12px !important;
  }
}
@media (max-width: 768px) {
  .md-padding-y-sm.md-padding-y-sm {
    padding-bottom: 12px !important;
  }
}
@media (max-width: 576px) {
  .sm-padding-y-sm.sm-padding-y-sm.sm-padding-y-sm {
    padding-bottom: 12px !important;
  }
}
.margin-x-sm {
  margin-left: 12px !important;
}

@media (max-width: 1024px) {
  .lg-margin-x-sm {
    margin-left: 12px !important;
  }
}
@media (max-width: 768px) {
  .md-margin-x-sm.md-margin-x-sm {
    margin-left: 12px !important;
  }
}
@media (max-width: 576px) {
  .sm-margin-x-sm.sm-margin-x-sm.sm-margin-x-sm {
    margin-left: 12px !important;
  }
}
.margin-x-sm {
  margin-right: 12px !important;
}

@media (max-width: 1024px) {
  .lg-margin-x-sm {
    margin-right: 12px !important;
  }
}
@media (max-width: 768px) {
  .md-margin-x-sm.md-margin-x-sm {
    margin-right: 12px !important;
  }
}
@media (max-width: 576px) {
  .sm-margin-x-sm.sm-margin-x-sm.sm-margin-x-sm {
    margin-right: 12px !important;
  }
}
.margin-y-sm {
  margin-top: 12px !important;
}

@media (max-width: 1024px) {
  .lg-margin-y-sm {
    margin-top: 12px !important;
  }
}
@media (max-width: 768px) {
  .md-margin-y-sm.md-margin-y-sm {
    margin-top: 12px !important;
  }
}
@media (max-width: 576px) {
  .sm-margin-y-sm.sm-margin-y-sm.sm-margin-y-sm {
    margin-top: 12px !important;
  }
}
.margin-y-sm {
  margin-bottom: 12px !important;
}

@media (max-width: 1024px) {
  .lg-margin-y-sm {
    margin-bottom: 12px !important;
  }
}
@media (max-width: 768px) {
  .md-margin-y-sm.md-margin-y-sm {
    margin-bottom: 12px !important;
  }
}
@media (max-width: 576px) {
  .sm-margin-y-sm.sm-margin-y-sm.sm-margin-y-sm {
    margin-bottom: 12px !important;
  }
}
.padding-x-none {
  padding-left: 0 !important;
}

@media (max-width: 1024px) {
  .lg-padding-x-none {
    padding-left: 0 !important;
  }
}
@media (max-width: 768px) {
  .md-padding-x-none.md-padding-x-none {
    padding-left: 0 !important;
  }
}
@media (max-width: 576px) {
  .sm-padding-x-none.sm-padding-x-none.sm-padding-x-none {
    padding-left: 0 !important;
  }
}
.padding-x-none {
  padding-right: 0 !important;
}

@media (max-width: 1024px) {
  .lg-padding-x-none {
    padding-right: 0 !important;
  }
}
@media (max-width: 768px) {
  .md-padding-x-none.md-padding-x-none {
    padding-right: 0 !important;
  }
}
@media (max-width: 576px) {
  .sm-padding-x-none.sm-padding-x-none.sm-padding-x-none {
    padding-right: 0 !important;
  }
}
.padding-y-none {
  padding-top: 0 !important;
}

@media (max-width: 1024px) {
  .lg-padding-y-none {
    padding-top: 0 !important;
  }
}
@media (max-width: 768px) {
  .md-padding-y-none.md-padding-y-none {
    padding-top: 0 !important;
  }
}
@media (max-width: 576px) {
  .sm-padding-y-none.sm-padding-y-none.sm-padding-y-none {
    padding-top: 0 !important;
  }
}
.padding-y-none {
  padding-bottom: 0 !important;
}

@media (max-width: 1024px) {
  .lg-padding-y-none {
    padding-bottom: 0 !important;
  }
}
@media (max-width: 768px) {
  .md-padding-y-none.md-padding-y-none {
    padding-bottom: 0 !important;
  }
}
@media (max-width: 576px) {
  .sm-padding-y-none.sm-padding-y-none.sm-padding-y-none {
    padding-bottom: 0 !important;
  }
}
.margin-x-none {
  margin-left: 0 !important;
}

@media (max-width: 1024px) {
  .lg-margin-x-none {
    margin-left: 0 !important;
  }
}
@media (max-width: 768px) {
  .md-margin-x-none.md-margin-x-none {
    margin-left: 0 !important;
  }
}
@media (max-width: 576px) {
  .sm-margin-x-none.sm-margin-x-none.sm-margin-x-none {
    margin-left: 0 !important;
  }
}
.margin-x-none {
  margin-right: 0 !important;
}

@media (max-width: 1024px) {
  .lg-margin-x-none {
    margin-right: 0 !important;
  }
}
@media (max-width: 768px) {
  .md-margin-x-none.md-margin-x-none {
    margin-right: 0 !important;
  }
}
@media (max-width: 576px) {
  .sm-margin-x-none.sm-margin-x-none.sm-margin-x-none {
    margin-right: 0 !important;
  }
}
.margin-y-none {
  margin-top: 0 !important;
}

@media (max-width: 1024px) {
  .lg-margin-y-none {
    margin-top: 0 !important;
  }
}
@media (max-width: 768px) {
  .md-margin-y-none.md-margin-y-none {
    margin-top: 0 !important;
  }
}
@media (max-width: 576px) {
  .sm-margin-y-none.sm-margin-y-none.sm-margin-y-none {
    margin-top: 0 !important;
  }
}
.margin-y-none {
  margin-bottom: 0 !important;
}

@media (max-width: 1024px) {
  .lg-margin-y-none {
    margin-bottom: 0 !important;
  }
}
@media (max-width: 768px) {
  .md-margin-y-none.md-margin-y-none {
    margin-bottom: 0 !important;
  }
}
@media (max-width: 576px) {
  .sm-margin-y-none.sm-margin-y-none.sm-margin-y-none {
    margin-bottom: 0 !important;
  }
}
.width-10 {
  width: 10% !important;
}

@media (max-width: 1024px) {
  .lg-width-10 {
    width: 10% !important;
  }
}
@media (max-width: 768px) {
  .md-width-10.md-width-10 {
    width: 10% !important;
  }
}
@media (max-width: 576px) {
  .sm-width-10.sm-width-10.sm-width-10 {
    width: 10% !important;
  }
}
.width-20 {
  width: 20% !important;
}

@media (max-width: 1024px) {
  .lg-width-20 {
    width: 20% !important;
  }
}
@media (max-width: 768px) {
  .md-width-20.md-width-20 {
    width: 20% !important;
  }
}
@media (max-width: 576px) {
  .sm-width-20.sm-width-20.sm-width-20 {
    width: 20% !important;
  }
}
.width-25 {
  width: 25% !important;
}

@media (max-width: 1024px) {
  .lg-width-25 {
    width: 25% !important;
  }
}
@media (max-width: 768px) {
  .md-width-25.md-width-25 {
    width: 25% !important;
  }
}
@media (max-width: 576px) {
  .sm-width-25.sm-width-25.sm-width-25 {
    width: 25% !important;
  }
}
.width-30 {
  width: 30% !important;
}

@media (max-width: 1024px) {
  .lg-width-30 {
    width: 30% !important;
  }
}
@media (max-width: 768px) {
  .md-width-30.md-width-30 {
    width: 30% !important;
  }
}
@media (max-width: 576px) {
  .sm-width-30.sm-width-30.sm-width-30 {
    width: 30% !important;
  }
}
.width-33 {
  width: 33% !important;
}

@media (max-width: 1024px) {
  .lg-width-33 {
    width: 33% !important;
  }
}
@media (max-width: 768px) {
  .md-width-33.md-width-33 {
    width: 33% !important;
  }
}
@media (max-width: 576px) {
  .sm-width-33.sm-width-33.sm-width-33 {
    width: 33% !important;
  }
}
.width-40 {
  width: 40% !important;
}

@media (max-width: 1024px) {
  .lg-width-40 {
    width: 40% !important;
  }
}
@media (max-width: 768px) {
  .md-width-40.md-width-40 {
    width: 40% !important;
  }
}
@media (max-width: 576px) {
  .sm-width-40.sm-width-40.sm-width-40 {
    width: 40% !important;
  }
}
.width-50 {
  width: 50% !important;
}

@media (max-width: 1024px) {
  .lg-width-50 {
    width: 50% !important;
  }
}
@media (max-width: 768px) {
  .md-width-50.md-width-50 {
    width: 50% !important;
  }
}
@media (max-width: 576px) {
  .sm-width-50.sm-width-50.sm-width-50 {
    width: 50% !important;
  }
}
.width-60 {
  width: 60% !important;
}

@media (max-width: 1024px) {
  .lg-width-60 {
    width: 60% !important;
  }
}
@media (max-width: 768px) {
  .md-width-60.md-width-60 {
    width: 60% !important;
  }
}
@media (max-width: 576px) {
  .sm-width-60.sm-width-60.sm-width-60 {
    width: 60% !important;
  }
}
.width-66 {
  width: 66% !important;
}

@media (max-width: 1024px) {
  .lg-width-66 {
    width: 66% !important;
  }
}
@media (max-width: 768px) {
  .md-width-66.md-width-66 {
    width: 66% !important;
  }
}
@media (max-width: 576px) {
  .sm-width-66.sm-width-66.sm-width-66 {
    width: 66% !important;
  }
}
.width-70 {
  width: 70% !important;
}

@media (max-width: 1024px) {
  .lg-width-70 {
    width: 70% !important;
  }
}
@media (max-width: 768px) {
  .md-width-70.md-width-70 {
    width: 70% !important;
  }
}
@media (max-width: 576px) {
  .sm-width-70.sm-width-70.sm-width-70 {
    width: 70% !important;
  }
}
.width-75 {
  width: 75% !important;
}

@media (max-width: 1024px) {
  .lg-width-75 {
    width: 75% !important;
  }
}
@media (max-width: 768px) {
  .md-width-75.md-width-75 {
    width: 75% !important;
  }
}
@media (max-width: 576px) {
  .sm-width-75.sm-width-75.sm-width-75 {
    width: 75% !important;
  }
}
.width-80 {
  width: 80% !important;
}

@media (max-width: 1024px) {
  .lg-width-80 {
    width: 80% !important;
  }
}
@media (max-width: 768px) {
  .md-width-80.md-width-80 {
    width: 80% !important;
  }
}
@media (max-width: 576px) {
  .sm-width-80.sm-width-80.sm-width-80 {
    width: 80% !important;
  }
}
.width-90 {
  width: 90% !important;
}

@media (max-width: 1024px) {
  .lg-width-90 {
    width: 90% !important;
  }
}
@media (max-width: 768px) {
  .md-width-90.md-width-90 {
    width: 90% !important;
  }
}
@media (max-width: 576px) {
  .sm-width-90.sm-width-90.sm-width-90 {
    width: 90% !important;
  }
}
.width-100 {
  width: 100% !important;
}

@media (max-width: 1024px) {
  .lg-width-100 {
    width: 100% !important;
  }
}
@media (max-width: 768px) {
  .md-width-100.md-width-100 {
    width: 100% !important;
  }
}
@media (max-width: 576px) {
  .sm-width-100.sm-width-100.sm-width-100 {
    width: 100% !important;
  }
}
.height-50 {
  height: 50px !important;
}

@media (max-width: 1024px) {
  .lg-height-50 {
    height: 50px !important;
  }
}
@media (max-width: 768px) {
  .md-height-50.md-height-50 {
    height: 50px !important;
  }
}
@media (max-width: 576px) {
  .sm-height-50.sm-height-50.sm-height-50 {
    height: 50px !important;
  }
}
.height-100 {
  height: 100px !important;
}

@media (max-width: 1024px) {
  .lg-height-100 {
    height: 100px !important;
  }
}
@media (max-width: 768px) {
  .md-height-100.md-height-100 {
    height: 100px !important;
  }
}
@media (max-width: 576px) {
  .sm-height-100.sm-height-100.sm-height-100 {
    height: 100px !important;
  }
}
.height-150 {
  height: 150px !important;
}

@media (max-width: 1024px) {
  .lg-height-150 {
    height: 150px !important;
  }
}
@media (max-width: 768px) {
  .md-height-150.md-height-150 {
    height: 150px !important;
  }
}
@media (max-width: 576px) {
  .sm-height-150.sm-height-150.sm-height-150 {
    height: 150px !important;
  }
}
.height-200 {
  height: 200px !important;
}

@media (max-width: 1024px) {
  .lg-height-200 {
    height: 200px !important;
  }
}
@media (max-width: 768px) {
  .md-height-200.md-height-200 {
    height: 200px !important;
  }
}
@media (max-width: 576px) {
  .sm-height-200.sm-height-200.sm-height-200 {
    height: 200px !important;
  }
}
.height-250 {
  height: 250px !important;
}

@media (max-width: 1024px) {
  .lg-height-250 {
    height: 250px !important;
  }
}
@media (max-width: 768px) {
  .md-height-250.md-height-250 {
    height: 250px !important;
  }
}
@media (max-width: 576px) {
  .sm-height-250.sm-height-250.sm-height-250 {
    height: 250px !important;
  }
}
.height-300 {
  height: 300px !important;
}

@media (max-width: 1024px) {
  .lg-height-300 {
    height: 300px !important;
  }
}
@media (max-width: 768px) {
  .md-height-300.md-height-300 {
    height: 300px !important;
  }
}
@media (max-width: 576px) {
  .sm-height-300.sm-height-300.sm-height-300 {
    height: 300px !important;
  }
}
.height-350 {
  height: 350px !important;
}

@media (max-width: 1024px) {
  .lg-height-350 {
    height: 350px !important;
  }
}
@media (max-width: 768px) {
  .md-height-350.md-height-350 {
    height: 350px !important;
  }
}
@media (max-width: 576px) {
  .sm-height-350.sm-height-350.sm-height-350 {
    height: 350px !important;
  }
}
.height-400 {
  height: 400px !important;
}

@media (max-width: 1024px) {
  .lg-height-400 {
    height: 400px !important;
  }
}
@media (max-width: 768px) {
  .md-height-400.md-height-400 {
    height: 400px !important;
  }
}
@media (max-width: 576px) {
  .sm-height-400.sm-height-400.sm-height-400 {
    height: 400px !important;
  }
}
.height-450 {
  height: 450px !important;
}

@media (max-width: 1024px) {
  .lg-height-450 {
    height: 450px !important;
  }
}
@media (max-width: 768px) {
  .md-height-450.md-height-450 {
    height: 450px !important;
  }
}
@media (max-width: 576px) {
  .sm-height-450.sm-height-450.sm-height-450 {
    height: 450px !important;
  }
}
.height-500 {
  height: 500px !important;
}

@media (max-width: 1024px) {
  .lg-height-500 {
    height: 500px !important;
  }
}
@media (max-width: 768px) {
  .md-height-500.md-height-500 {
    height: 500px !important;
  }
}
@media (max-width: 576px) {
  .sm-height-500.sm-height-500.sm-height-500 {
    height: 500px !important;
  }
}
.height-550 {
  height: 550px !important;
}

@media (max-width: 1024px) {
  .lg-height-550 {
    height: 550px !important;
  }
}
@media (max-width: 768px) {
  .md-height-550.md-height-550 {
    height: 550px !important;
  }
}
@media (max-width: 576px) {
  .sm-height-550.sm-height-550.sm-height-550 {
    height: 550px !important;
  }
}
.margin-auto {
  margin: auto !important;
}

@media (max-width: 1024px) {
  .lg-margin-auto {
    margin: auto !important;
  }
}
@media (max-width: 768px) {
  .md-margin-auto.md-margin-auto {
    margin: auto !important;
  }
}
@media (max-width: 576px) {
  .sm-margin-auto.sm-margin-auto.sm-margin-auto {
    margin: auto !important;
  }
}
.margin-left-auto {
  margin-left: auto !important;
}

@media (max-width: 1024px) {
  .lg-margin-left-auto {
    margin-left: auto !important;
  }
}
@media (max-width: 768px) {
  .md-margin-left-auto.md-margin-left-auto {
    margin-left: auto !important;
  }
}
@media (max-width: 576px) {
  .sm-margin-left-auto.sm-margin-left-auto.sm-margin-left-auto {
    margin-left: auto !important;
  }
}
.margin-right-auto {
  margin-right: auto !important;
}

@media (max-width: 1024px) {
  .lg-margin-right-auto {
    margin-right: auto !important;
  }
}
@media (max-width: 768px) {
  .md-margin-right-auto.md-margin-right-auto {
    margin-right: auto !important;
  }
}
@media (max-width: 576px) {
  .sm-margin-right-auto.sm-margin-right-auto.sm-margin-right-auto {
    margin-right: auto !important;
  }
}
.border-radius-none {
  border-radius: 0 !important;
}

.gap-none {
  gap: 0 !important;
}

.gap-1 {
  gap: 1rem;
}

.gap-2 {
  gap: 2rem;
}

.float-right {
  float: right !important;
}

.float-left {
  float: left !important;
}

.items-left {
  justify-content: flex-start;
}

.items-center {
  justify-content: center;
}

.items-right {
  justify-content: flex-end;
}

.line-height-200 {
  line-height: 200%;
}

.object-fit-fill {
  object-fit: fill !important;
}

.object-fit-contain {
  object-fit: contain !important;
}

.object-fit-none {
  object-fit: none !important;
}

.text-wrap {
  overflow-wrap: anywhere;
  word-break: break-word;
}

@media (min-width: 769px) {
  .full-page {
    min-height: 100vh;
  }
}

/* + Colors */
.color-rmkblue {
  color: #004186;
}

/* + Font Family */
.font-family-open-sans {
  font-family: "Open Sans", sans-serif;
}

/* + Button Styles */
.button-square-blue, .button-square-lightblue {
  width: 214px;
  height: 50px;
  margin: 24px 24px 32px 0;
  display: inline-block;
  transition: 0.22s;
  box-shadow: 1px 4px 4px rgba(2, 2, 2, 0);
}
.button-square-blue, .button-square-lightblue, .button-square-blue p, .button-square-lightblue p {
  margin: 0;
  color: #fff;
  padding: 0 !important;
  font-size: 1.2em;
  font-weight: 800;
  text-align: center !important;
  line-height: 50px !important;
  text-transform: uppercase;
  max-width: 100% !important;
}
.button-square-blue:hover, .button-square-lightblue:hover {
  transform: translateY(-2px);
  box-shadow: 1px 4px 4px rgba(2, 2, 2, 0.12);
}

.button-square-lightblue {
  background: #00aeef;
}

.button-square-blue {
  background: #004186;
}
.button-square-blue:hover {
  background: #1e5794;
}

/* + Box Shadows */
.box-shadow-sm {
  box-shadow: 0 2px 4px rgba(2, 2, 2, 0.16);
}

.box-shadow-md {
  box-shadow: 0 4px 8px rgba(2, 2, 2, 0.2);
}

.box-shadow-lg {
  box-shadow: 0 8px 16px rgba(2, 2, 2, 0.24);
}

/* * ============ Shared Block Styles ============ */
.block {
  width: 100%;
}

.block:first-child {
  margin-top: 0;
}

.block:last-child {
  margin-bottom: 0;
}

.page-builder {
  width: 100%;
}

/* * ============ Rich text specific styles ============ */
.link-arrow {
  font-weight: 700;
  color: #004186;
  position: relative;
  display: inline-block;
}

.link-arrow::before {
  position: absolute;
  content: "";
  display: none;
  background: url("../images/icons/arrowblue.png") no-repeat center center;
  background-size: 100% 100%;
  right: -52px;
  top: 50%;
  transform: translateY(-50%);
  height: 28px;
  width: 50px;
}

.link-arrow:hover::before {
  transform: translateY(-50%) translateX(6px) !important;
  display: block;
}

.link-arrow.blue::before {
  background: url("../images/icons/arrowblue.png") no-repeat center center;
  background-size: 100% 100%;
  width: 50px;
  top: 50%;
  transform: translateY(-50%);
  right: -55px;
}

.link-arrow.blue:hover::before {
  transform: translateY(-50%) translateX(6px) !important;
}

/* * Rich Text - Stolen from Rowlam */
.fadeinslide {
  -webkit-animation: fadeinslide 0.5s;
  animation: fadeinslide 0.5s;
  visibility: visible !important;
  transition-timing-function: cubic-bezier(0.45, 0.09, 0.01, 0.98);
}

.fadeindelay {
  -webkit-animation: fadeindelay 0.8s;
  animation: fadeindelay 0.8s;
  visibility: visible !important;
}

.headerlinks h3.title {
  font-size: calc(1.75vw + 1.75vh) !important;
}

.font-weight-normal {
  font-weight: 400 !important;
}

.small-letter-spacing {
  letter-spacing: -3px;
}

.font-size-1em {
  font-size: 1em;
}

.font-size-2em {
  font-size: 2em;
}

.font-size-3em {
  font-size: 3em;
}

.margin-bottom-none {
  margin-bottom: 0;
}

/* * ============= Block - Main  ============= */
.block--main {
  position: relative;
}

.block--main.has-bg:after {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: var(--bg-url);
  background-size: 100vh;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  opacity: 0.07;
  z-index: 0;
  pointer-events: none;
}

/* * ============ Block - Gallery ============ */
.block--gallery {
  margin: 3rem 0;
}

.block--gallery h2 {
  margin-bottom: 2rem;
  font-size: 2rem;
  font-weight: 600;
}

.block--gallery-grid .gallery-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 1.5rem;
  justify-content: center;
}

.block--gallery-grid .gallery-item {
  position: relative;
  aspect-ratio: 1;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  justify-self: center;
}

.block--gallery-grid .gallery-item:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
}

.block--gallery-grid .gallery-item img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  transition: transform 0.3s ease;
}

.block--gallery-grid .gallery-item:hover img {
  transform: scale(1.05);
}

.block--gallery-carousel {
  position: relative;
}

.block--gallery-carousel .gallery-carousel {
  display: flex;
  gap: 1.5rem;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  padding-bottom: 1rem;
  scrollbar-width: thin;
  scrollbar-color: #ccc #f5f5f5;
}

.block--gallery-carousel .gallery-carousel::-webkit-scrollbar {
  height: 8px;
}

.block--gallery-carousel .gallery-carousel::-webkit-scrollbar-track {
  background: #f5f5f5;
  border-radius: 4px;
}

.block--gallery-carousel .gallery-carousel::-webkit-scrollbar-thumb {
  background: #ccc;
  border-radius: 4px;
}

.block--gallery-carousel .gallery-carousel::-webkit-scrollbar-thumb:hover {
  background: #999;
}

.block--gallery-carousel .gallery-item {
  flex: 0 0 300px;
  aspect-ratio: 1;
  scroll-snap-align: start;
  position: relative;
  overflow: hidden;
  border-radius: 8px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  transition: transform 0.3s ease;
}

.block--gallery-carousel .gallery-item:hover {
  transform: scale(1.02);
}

.block--gallery-carousel .gallery-item img {
  width: 100%;
  height: 100%;
  /* Changed from cover to contain to show full image */
  object-fit: contain;
}

.gallery-small .gallery-grid {
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
}

.no-shadow .gallery-grid .gallery-item {
  box-shadow: none;
}

@media (max-width: 768px) {
  .block--gallery-grid .gallery-grid {
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  }
}
@media (max-width: 480px) {
  .block--gallery-grid .gallery-grid {
    grid-template-columns: 1fr;
    max-width: 300px;
    margin: 0 auto;
  }
}
/* * ============ Block - Image ============ */
.block--image {
  text-align: center;
  margin: 3rem 0;
}

.block--image .standalone-image {
  display: flex;
  max-width: 100%;
  height: auto;
  border-radius: 8px;
}

.block--image caption {
  margin-top: 1rem;
  font-size: 0.9rem;
  color: #666;
  font-style: italic;
}

/* * ============ Block - Image Grid ============ */
.block--image-grid__wrapper {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
  justify-content: center;
}

.block--image-grid__item {
  flex: 0 1 auto;
}

/* * ============ Block - Video ============ */
.block--video {
  text-align: center;
  margin: 3rem 0;
}

.block--video .standalone-video {
  width: 100%;
  height: auto;
  max-width: 100%;
  display: block;
  margin-inline: auto;
}

/* * ============ Block - Quote with Image ============ */
.basic-image-block {
  position: relative;
  overflow: hidden;
  min-height: 500px;
}

.basic-image-block__picture {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.basic-image-block__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}

.basic-image-block__content {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  max-width: 1200px;
  z-index: 1;
  color: white;
  line-height: 1.3;
  padding: 0 1rem;
  text-align: center;
}

.basic-image-block__content h2 {
  font-size: 3rem;
  font-weight: 700;
  margin-bottom: 1rem;
}

.basic-image-block__content p {
  font-size: 1.5rem;
  margin-bottom: 0.75rem;
}

/* Responsive adjustments */
@media (max-width: 768px) {
  .basic-image-block {
    min-height: 400px;
  }
  .basic-image-block__content {
    padding: 0 1.5rem;
  }
  .basic-image-block__content h2 {
    font-size: 2rem;
  }
  .basic-image-block__content p {
    font-size: 1.2rem;
  }
}
/* * ============ Block - Column - Multi ============ */
.block--column-multi {
  display: grid;
  gap: 2rem;
}

/* Column layout variations */
.block--column-multi.block--layout-1fr-1fr {
  grid-template-columns: 1fr 1fr;
}

.block--column-multi.block--layout-2fr-1fr {
  grid-template-columns: 2fr 1fr;
}

.block--column-multi.block--layout-1fr-2fr {
  grid-template-columns: 1fr 2fr;
}

.block--column-multi.block--layout-1fr-1fr-1fr {
  grid-template-columns: 1fr 1fr 1fr;
}

.block--column-multi.block--layout-1fr-2fr-1fr {
  grid-template-columns: 1fr 2fr 1fr;
}

/* Column dividers */
.block--column-multi.block--divider-line .column:not(:last-child) {
  border-right: 1px solid #ddd;
  padding-right: 2rem;
}

.block--column-multi.block--divider-dotted .column:not(:last-child) {
  border-right: 1px dotted #999;
  padding-right: 2rem;
}

.block--column-multi .column p {
  width: auto !important;
  max-width: none !important;
}

/* Responsive Design */
@media (max-width: 768px) {
  /* Stack columns on mobile */
  .block--column-multi {
    grid-template-columns: 1fr !important;
    gap: 1.5rem;
  }
  /* Remove dividers on mobile */
  .block--column-multi.block--divider-line .column,
  .block--column-multi.block--divider-dotted .column {
    border-right: none;
    padding-right: 0;
  }
}
h3 {
  display: block !important;
  margin-bottom: 0 !important;
}

/* * ============ Block - Column - Single w/ Image ============ */
.block--column-single-with-image {
  display: grid;
  align-items: stretch;
}

.block--column-single-with-image.block--image-right .image-container {
  order: 2;
}

.block--column-single-with-image.block--image-right .content-container {
  order: 1;
}

.block--column-single-with-image .content-container {
  font-size: 1.1rem;
  line-height: 1.6;
  height: 100%;
}

.block--column-single-with-image .image-container,
.block--column-single-with-image .image-container picture {
  height: 100%;
}

.block--column-single-with-image .image-container picture {
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.block--column-single-with-image .image-container img {
  width: 100%;
  height: 100%;
  display: block;
  border-radius: 8px;
  object-fit: cover;
  object-position: center;
}

.block--column-single-with-image .caption {
  margin-top: 0.5rem;
  font-size: 0.9rem;
  color: #666;
  font-style: italic;
}

.block--column-single-with-image .content-container p {
  width: auto !important;
  max-width: none !important;
}

/* Responsive Design */
@media (max-width: 768px) {
  /* Stack columns on mobile */
  .block--column-single-with-image {
    grid-template-columns: 1fr !important;
    gap: 1.5rem;
  }
  .block--column-single-with-image.block--image-right .image-container,
  .block--column-single-with-image.block--image-right .content-container {
    order: unset;
  }
}
/* * ============ Block - Hero ============ */
.block--hero {
  position: relative;
  height: calc(100vh - var(--header-h));
  overflow: hidden;
}

.hero-slides {
  position: relative;
  width: 100%;
  height: 100%;
}

.hero-slide {
  display: none;
  position: relative;
  opacity: 0;
  transition: opacity 0.4s ease-in-out;
}

.hero-slide.is-active {
  display: block;
  opacity: 1;
  height: calc(100vh - var(--header-h));
  overflow: hidden;
}

.hero-slide.is-hidden {
  display: none;
}

.hero-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
}

.hero-image img {
  /*width: 100%;*/
  /*height: 100%;*/
  object-fit: cover;
}

.slide-text {
  position: absolute;
  top: 5%;
  left: 5%;
  z-index: 1;
}

/* respect the mainwrap if added */
.slide-text.mainwrap {
  left: 0;
  right: 0;
  margin: 0 auto;
  padding: 0;
}

.slide-text p {
  margin: 0;
  line-height: 1.4;
}

.slide-buttons {
  margin-top: 1em;
}

.slide-buttons a {
  display: inline-block;
  margin-right: 0.5em;
  text-decoration: none;
}

@media (max-width: 576px) {
  .block--hero .slide-buttons {
    padding-left: 24px;
  }
}
/* * ============ Block - Rich Text ============ */
.block--rich-text p {
  margin-bottom: 0 !important;
}

/* * ============ Block - Buttons ============ */
.block--button__content {
  display: flex;
  gap: 0.75rem;
  flex-wrap: wrap;
}

/* * ============ Block - Slider ============ */
.pb-slider {
  --tile-w: 184px;
  --gap: 32px;
  --center-padding: 120px;
  position: relative;
  overflow: hidden;
}

.pb-slider__track {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: var(--tile-w);
  gap: var(--gap);
  padding: 0 var(--center-padding);
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: none;
  scrollbar-width: none;
}

.pb-slider__track::-webkit-scrollbar {
  display: none;
}

.pb-slider__slide {
  width: var(--tile-w);
  scroll-snap-align: center;
}

.pb-slider__slide picture,
.pb-slider__slide img {
  display: block;
  width: 100%;
  height: auto;
}

.block--slider[class*=height-] .pb-slider,
.block--slider[class*=height-] .pb-slider__track,
.block--slider[class*=height-] .pb-slider__slide {
  height: 100%;
}

.block--slider[class*=height-] .pb-slider__slide picture,
.block--slider[class*=height-] .pb-slider__slide img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.block--slider[class*=height-] .pb-slider__track {
  grid-auto-columns: max-content;
  align-items: center;
}

.block--slider[class*=height-] .pb-slider__slide {
  width: auto;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* In height mode, the image uses HEIGHT as the driver */
.block--slider[class*=height-] .pb-slider__slide picture,
.block--slider[class*=height-] .pb-slider__slide img {
  height: 100%;
  width: auto;
  object-fit: contain;
  display: block;
}

@media (max-width: 1236px) {
  .pb-slider {
    --center-padding: 160px;
    --tile-w: 184px;
  }
}
@media (max-width: 1100px) {
  .pb-slider {
    --center-padding: 120px;
    --tile-w: 184px;
  }
}
@media (max-width: 991px) {
  .pb-slider {
    --center-padding: 60px;
    --tile-w: 160px;
  }
}
@media (max-width: 820px) {
  .pb-slider {
    --center-padding: 90px;
    --tile-w: 160px;
  }
}
@media (max-width: 600px) {
  .pb-slider {
    --center-padding: 140px;
    --tile-w: 140px;
  }
}
@media (max-width: 480px) {
  .pb-slider {
    --center-padding: 90px;
    --tile-w: 140px;
  }
}
@media (max-width: 400px) {
  .pb-slider {
    --center-padding: 55px;
    --tile-w: 120px;
  }
}
@media (max-width: 340px) {
  .pb-slider {
    --center-padding: 45px;
    --tile-w: 110px;
  }
}
/* * ============ Block - Product Preview ============ */
.block--product-preview .product-preview__card {
  display: flex;
  gap: 1.25rem;
  align-items: stretch;
}

.block--product-preview .product-preview__media {
  flex: 0 0 300px;
  max-width: 40vw;
  height: 180px;
}

.block--product-preview .product-preview__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.block--product-preview .product-preview__title {
  margin: 0 0 0.25rem 0;
}

.block--product-preview .product-preview__excerpt {
  line-height: 1.45;
}

@media (max-width: 768px) {
  .block--product-preview .product-preview__card {
    flex-direction: column;
  }
  .block--product-preview .product-preview__media {
    width: 100%;
    max-width: 100%;
    height: 200px;
    max-height: 200px;
  }
}
/* * ============ Block - Product Display ============ */
.block--product-display {
  margin: 3rem 0;
}

.product-display__wrapper {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 1.1rem;
}

@media (max-width: 768px) {
  .product-display__wrapper {
    justify-content: space-around;
  }
}
.product-display__card {
  display: flex;
  flex-direction: column;
  background: #fff;
  width: 175px;
}

.product-display__media {
  position: relative;
  width: 100%;
  height: 225px;
  aspect-ratio: 1/1;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  background: none;
}

.product-display__media picture,
.product-display__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.product-display__image--border {
  border: 1px solid #000;
}

.product-display__image--placeholder {
  width: 100%;
  height: 100%;
  background: repeating-linear-gradient(45deg, #eee, #eee 10px, #e2e2e2 10px, #e2e2e2 20px);
}

.product-display__content {
  padding: 0.25rem;
  height: 75px;
}

.product-display__sku {
  margin: 0 0 0.25rem;
  font-weight: 700;
  font-size: 1rem;
  line-height: 1.2;
}

.product-display__name {
  margin: 0;
  font-size: 0.95rem;
  line-height: 1.4;
}

.product-display__media {
  position: relative;
}

.product-display__annotation {
  position: absolute;
  top: 4px;
  left: 6px;
  color: #00aeef;
  font-size: 1.5rem;
  font-weight: bold;
  user-select: none;
  pointer-events: none;
  z-index: 1;
  line-height: 1;
}

/* * ============ Block - Resources List ============ */
.resources-list__wrapper {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

/* * ============ Block - HubSpot Form ============ */
/* === HubSpot form (page-builder) — scoped defaults === */
.block--hubspot-form .hs-form,
.block--hubspot-form .pb-hs.hs-form {
  text-align: left !important;
  width: 100%;
  --pb-hs-gap: .75rem;
  --pb-hs-control-h: 44px;
  --pb-hs-pad-x: .75rem;
}

.block--hubspot-form .hs-form .hs-form-field {
  width: auto !important;
  margin: 0 0 0.75rem !important;
  min-width: 0;
}

/* Labels above fields, left aligned */
.block--hubspot-form .hs-form .hs-form-field > label {
  display: block !important;
  margin: 0 0 0.35rem !important;
  font-weight: 600;
  text-align: left !important;
}

.block--hubspot-form .hs-form .input {
  display: block;
  width: 100%;
  max-width: 100%;
  margin: 0 !important;
  padding: 0 !important;
}

.block--hubspot-form .hs-form input[type=text],
.block--hubspot-form .hs-form input[type=email],
.block--hubspot-form .hs-form input[type=tel],
.block--hubspot-form .hs-form input[type=url],
.block--hubspot-form .hs-form input[type=number],
.block--hubspot-form .hs-form input[type=search],
.block--hubspot-form .hs-form select {
  display: block;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box;
  border: 1px solid #ccc;
  background: #fff;
  border-radius: 0;
  text-align: left !important;
  height: var(--pb-hs-control-h);
  padding: 0 var(--pb-hs-pad-x);
  line-height: normal;
}

.block--hubspot-form .hs-form textarea {
  display: block;
  box-sizing: border-box;
  border: 1px solid #ccc;
  background: #fff;
  border-radius: 0;
  text-align: left !important;
  min-height: 140px;
  padding: 0.5rem var(--pb-hs-pad-x);
}

.block--hubspot-form .hs-form fieldset.form-columns-2,
.block--hubspot-form .hs-form fieldset.form-columns-3 {
  border: 0;
  margin: 0 0 1rem;
  padding: 0;
  display: grid;
  gap: var(--pb-hs-gap);
}

.block--hubspot-form .hs-form fieldset.form-columns-2 {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}

.block--hubspot-form .hs-form fieldset.form-columns-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.block--hubspot-form .hs-form fieldset[class^=form-columns-] .hs-form-field {
  margin: 0 !important;
  min-width: 0;
}

.block--hubspot-form .hs-form .inputs-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.block--hubspot-form .hs-form .inputs-list > li {
  display: flex;
  align-items: baseline;
  gap: 0.5rem;
}

.block--hubspot-form .hs-form .actions,
.block--hubspot-form .hs-form .hs-recaptcha,
.block--hubspot-form .hs-form .grecaptcha-badge {
  text-align: left !important;
}

@media (max-width: 640px) {
  .block--hubspot-form .hs-form fieldset.form-columns-2,
  .block--hubspot-form .hs-form fieldset.form-columns-3 {
    grid-template-columns: 1fr;
  }
}
input.hs-button.primary.large {
  height: 30px;
  line-height: 30px !important;
}

.actions {
  display: flex;
  justify-content: center;
}

/* Subtle focus state (inputs/selects/textareas only) */
.block--hubspot-form .hs-form input:not([type=checkbox]):not([type=radio]):focus,
.block--hubspot-form .hs-form select:focus,
.block--hubspot-form .hs-form textarea:focus {
  border-color: var(--rmklightblue, #00aeef);
  box-shadow: 0 0 0 2px rgba(0, 174, 239, 0.2);
  outline: none;
}

/* Error state: only after HubSpot validation adds .error on the field wrapper */
.error {
  border-color: #c62828 !important;
  box-shadow: 0 0 0 2px rgba(198, 40, 40, 0.18);
}

/* * ============ Block - ============ */

/*# sourceMappingURL=shared.css.map */
