*, ::before, ::after {
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
  --tw-contain-size:  ;
  --tw-contain-layout:  ;
  --tw-contain-paint:  ;
  --tw-contain-style:  ;
}

::backdrop {
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
  --tw-contain-size:  ;
  --tw-contain-layout:  ;
  --tw-contain-paint:  ;
  --tw-contain-style:  ;
}

.center-y {
  top: 50%;
  transform: translateY(-50%);
}

.center-x {
  left: 50%;
  transform: translateX(-50%);
}

.center-xy {
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}

.fixed {
  position: fixed;
}

.absolute {
  position: absolute;
}

.relative {
  position: relative;
}

.sticky {
  position: sticky;
}

.bottom-0 {
  bottom: 0px;
}

.right-0 {
  right: 0px;
}

.top-0 {
  top: 0px;
}

.z-10 {
  z-index: 10;
}

.z-20 {
  z-index: 20;
}

.z-50 {
  z-index: 50;
}

.m-0 {
  margin: 0px;
}

.mx-auto {
  margin-left: auto;
  margin-right: auto;
}

.my-10 {
  margin-top: 2.5rem;
  margin-bottom: 2.5rem;
}

.my-12 {
  margin-top: 3rem;
  margin-bottom: 3rem;
}

.my-16 {
  margin-top: 4rem;
  margin-bottom: 4rem;
}

.my-20 {
  margin-top: 5rem;
  margin-bottom: 5rem;
}

.my-4 {
  margin-top: 1rem;
  margin-bottom: 1rem;
}

.my-5 {
  margin-top: 1.25rem;
  margin-bottom: 1.25rem;
}

.my-6 {
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
}

.my-8 {
  margin-top: 2rem;
  margin-bottom: 2rem;
}

.\!mt-4 {
  margin-top: 1rem !important;
}

.-mt-12 {
  margin-top: -3rem;
}

.-mt-24 {
  margin-top: -6rem;
}

.-mt-3 {
  margin-top: -0.75rem;
}

.-mt-36 {
  margin-top: -9rem;
}

.-mt-40 {
  margin-top: -10rem;
}

.mb-10 {
  margin-bottom: 2.5rem;
}

.mb-11 {
  margin-bottom: 2.75rem;
}

.mb-12 {
  margin-bottom: 3rem;
}

.mb-16 {
  margin-bottom: 4rem;
}

.mb-2 {
  margin-bottom: 0.5rem;
}

.mb-20 {
  margin-bottom: 5rem;
}

.mb-3 {
  margin-bottom: 0.75rem;
}

.mb-4 {
  margin-bottom: 1rem;
}

.mb-5 {
  margin-bottom: 1.25rem;
}

.mb-6 {
  margin-bottom: 1.5rem;
}

.mb-8 {
  margin-bottom: 2rem;
}

.mr-4 {
  margin-right: 1rem;
}

.mt-0 {
  margin-top: 0px;
}

.mt-12 {
  margin-top: 3rem;
}

.mt-16 {
  margin-top: 4rem;
}

.mt-2 {
  margin-top: 0.5rem;
}

.mt-20 {
  margin-top: 5rem;
}

.mt-4 {
  margin-top: 1rem;
}

.mt-5 {
  margin-top: 1.25rem;
}

.mt-6 {
  margin-top: 1.5rem;
}

.mt-64 {
  margin-top: 16rem;
}

.mt-7 {
  margin-top: 1.75rem;
}

.mt-8 {
  margin-top: 2rem;
}

.block {
  display: block;
}

.inline-block {
  display: inline-block;
}

.flex {
  display: flex;
}

.grid {
  display: grid;
}

.hidden {
  display: none;
}

.h-auto {
  height: auto;
}

.h-full {
  height: 100%;
}

.min-h-\[367px\] {
  min-height: 367px;
}

.w-\[28px\] {
  width: 28px;
}

.w-full {
  width: 100%;
}

.max-w-1000 {
  max-width: 1000px;
}

.max-w-1050 {
  max-width: 1050px;
}

.max-w-1100 {
  max-width: 1100px;
}

.max-w-1150 {
  max-width: 1150px;
}

.max-w-1200 {
  max-width: 1200px;
}

.max-w-1250 {
  max-width: 1250px;
}

.max-w-1300 {
  max-width: 1300px;
}

.max-w-1350 {
  max-width: 1350px;
}

.max-w-1400 {
  max-width: 1400px;
}

.max-w-25 {
  max-width: 25px;
}

.max-w-250 {
  max-width: 250px;
}

.max-w-300 {
  max-width: 300px;
}

.max-w-350 {
  max-width: 350px;
}

.max-w-400 {
  max-width: 400px;
}

.max-w-450 {
  max-width: 450px;
}

.max-w-500 {
  max-width: 500px;
}

.max-w-550 {
  max-width: 550px;
}

.max-w-600 {
  max-width: 600px;
}

.max-w-650 {
  max-width: 650px;
}

.max-w-750 {
  max-width: 750px;
}

.max-w-800 {
  max-width: 800px;
}

.max-w-850 {
  max-width: 850px;
}

.max-w-900 {
  max-width: 900px;
}

.max-w-950 {
  max-width: 950px;
}

.max-w-\[105px\] {
  max-width: 105px;
}

.max-w-\[110px\] {
  max-width: 110px;
}

.max-w-\[220px\] {
  max-width: 220px;
}

.max-w-\[230px\] {
  max-width: 230px;
}

.max-w-\[265px\] {
  max-width: 265px;
}

.max-w-\[275px\] {
  max-width: 275px;
}

.max-w-\[310px\] {
  max-width: 310px;
}

.max-w-\[320px\] {
  max-width: 320px;
}

.max-w-\[375px\] {
  max-width: 375px;
}

.max-w-\[388px\] {
  max-width: 388px;
}

.max-w-\[390px\] {
  max-width: 390px;
}

.max-w-\[425px\] {
  max-width: 425px;
}

.max-w-\[520px\] {
  max-width: 520px;
}

.max-w-\[66px\] {
  max-width: 66px;
}

.flex-1 {
  flex: 1 1 0%;
}

.flex-auto {
  flex: 1 1 auto;
}

.transform {
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.cursor-pointer {
  cursor: pointer;
}

.columns-2 {
  -moz-columns: 2;
       columns: 2;
}

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

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

.flex-wrap {
  flex-wrap: wrap;
}

.content-center {
  align-content: center;
}

.items-start {
  align-items: flex-start;
}

.items-center {
  align-items: center;
}

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

.justify-between {
  justify-content: space-between;
}

.gap-1 {
  gap: 0.25rem;
}

.gap-10 {
  gap: 2.5rem;
}

.gap-2 {
  gap: 0.5rem;
}

.gap-4 {
  gap: 1rem;
}

.gap-7 {
  gap: 1.75rem;
}

.gap-8 {
  gap: 2rem;
}

.gap-x-8 {
  -moz-column-gap: 2rem;
       column-gap: 2rem;
}

.gap-y-6 {
  row-gap: 1.5rem;
}

.rounded {
  border-radius: 0.25rem;
}

.rounded-40 {
  border-radius: 40px;
}

.rounded-60 {
  border-radius: 60px;
}

.rounded-80 {
  border-radius: 80px;
}

.rounded-r-40 {
  border-top-right-radius: 40px;
  border-bottom-right-radius: 40px;
}

.border {
  border-width: 1px;
}

.border-2 {
  border-width: 2px;
}

.border-b-2 {
  border-bottom-width: 2px;
}

.border-solid {
  border-style: solid;
}

.border-dashed {
  border-style: dashed;
}

.border-none {
  border-style: none;
}

.border-black {
  border-color: var(--color-site-black);
}

.border-blue {
  border-color: var(--color-secondary);
}

.border-darkblue {
  border-color: var(--color-tertiary);
}

.border-b-black {
  border-bottom-color: var(--color-site-black);
}

.bg-black {
  background-color: var(--color-site-black);
}

.bg-darkblue {
  background-color: var(--color-tertiary);
}

.bg-grey {
  background-color: var(--color-site-grey);
}

.bg-primary {
  background-color: var(--color-primary);
}

.bg-red {
  background-color: var(--color-primary);
}

.bg-white {
  background-color: var(--color-site-white);
}

.bg-none {
  background-image: none;
}

.p-0 {
  padding: 0px;
}

.p-10 {
  padding: 2.5rem;
}

.p-8 {
  padding: 2rem;
}

.\!px-4 {
  padding-left: 1rem !important;
  padding-right: 1rem !important;
}

.px-1 {
  padding-left: 0.25rem;
  padding-right: 0.25rem;
}

.px-10 {
  padding-left: 2.5rem;
  padding-right: 2.5rem;
}

.px-11 {
  padding-left: 2.75rem;
  padding-right: 2.75rem;
}

.px-12 {
  padding-left: 3rem;
  padding-right: 3rem;
}

.px-14 {
  padding-left: 3.5rem;
  padding-right: 3.5rem;
}

.px-2 {
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}

.px-20 {
  padding-left: 5rem;
  padding-right: 5rem;
}

.px-3 {
  padding-left: 0.75rem;
  padding-right: 0.75rem;
}

.px-4 {
  padding-left: 1rem;
  padding-right: 1rem;
}

.px-5 {
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}

.px-6 {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}

.px-8 {
  padding-left: 2rem;
  padding-right: 2rem;
}

.py-10 {
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
}

.py-11 {
  padding-top: 2.75rem;
  padding-bottom: 2.75rem;
}

.py-12 {
  padding-top: 3rem;
  padding-bottom: 3rem;
}

.py-16 {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.py-2 {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.py-20 {
  padding-top: 5rem;
  padding-bottom: 5rem;
}

.py-24 {
  padding-top: 6rem;
  padding-bottom: 6rem;
}

.py-32 {
  padding-top: 8rem;
  padding-bottom: 8rem;
}

.py-4 {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.py-6 {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}

.py-8 {
  padding-top: 2rem;
  padding-bottom: 2rem;
}

.py-9 {
  padding-top: 2.25rem;
  padding-bottom: 2.25rem;
}

.pb-1 {
  padding-bottom: 0.25rem;
}

.pb-1\.5 {
  padding-bottom: 0.375rem;
}

.pb-10 {
  padding-bottom: 2.5rem;
}

.pb-11 {
  padding-bottom: 2.75rem;
}

.pb-16 {
  padding-bottom: 4rem;
}

.pb-20 {
  padding-bottom: 5rem;
}

.pb-24 {
  padding-bottom: 6rem;
}

.pb-36 {
  padding-bottom: 9rem;
}

.pb-4 {
  padding-bottom: 1rem;
}

.pb-5 {
  padding-bottom: 1.25rem;
}

.pb-64 {
  padding-bottom: 16rem;
}

.pb-7 {
  padding-bottom: 1.75rem;
}

.pr-4 {
  padding-right: 1rem;
}

.pt-10 {
  padding-top: 2.5rem;
}

.pt-12 {
  padding-top: 3rem;
}

.pt-14 {
  padding-top: 3.5rem;
}

.pt-16 {
  padding-top: 4rem;
}

.pt-3 {
  padding-top: 0.75rem;
}

.pt-32 {
  padding-top: 8rem;
}

.pt-60 {
  padding-top: 15rem;
}

.pt-8 {
  padding-top: 2rem;
}

.text-center {
  text-align: center;
}

.text-right {
  text-align: right;
}

.align-text-top {
  vertical-align: text-top;
}

.align-text-bottom {
  vertical-align: text-bottom;
}

.text-10 {
  font-size: 10px;
}

.text-12 {
  font-size: 12px;
}

.text-16 {
  font-size: 16px;
}

.text-18 {
  font-size: 18px;
}

.text-20 {
  font-size: 20px;
}

.text-24 {
  font-size: 24px;
}

.text-26 {
  font-size: 26px;
}

.text-30 {
  font-size: 30px;
}

.text-32 {
  font-size: 32px;
}

.font-bold {
  font-weight: 700;
}

.font-medium {
  font-weight: 500;
}

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

.uppercase {
  text-transform: uppercase;
}

.lining-nums {
  --tw-numeric-figure: lining-nums;
  font-variant-numeric: var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction);
}

.leading-normal {
  line-height: 1.5;
}

.text-black {
  color: var(--color-site-black);
}

.text-darkblue {
  color: var(--color-tertiary);
}

.text-white {
  color: var(--color-site-white);
}

.underline {
  text-decoration-line: underline;
}

.\!no-underline {
  text-decoration-line: none !important;
}

.outline {
  outline-style: solid;
}

.blur {
  --tw-blur: blur(8px);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.invert {
  --tw-invert: invert(100%);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.sepia {
  --tw-sepia: sepia(100%);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.filter {
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.backdrop-filter {
  -webkit-backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
          backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
}

.transition {
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.alignfull {
  margin: 2rem calc(50% - 50vw) !important;
  max-width: 100vw !important;
  width: 100vw;
}

.alignwide {
  margin: 2rem 0;
  max-width: 1280px !important;
}

.alignnone {
  margin-left: 0px;
  margin-right: 0px;
  height: auto;
  max-width: 100%;
}

.aligncenter {
  margin: 0.5rem auto;
  display: block;
}

@media (min-width: 600px) {
  .alignleft:not(.wp-block-button) {
    margin-right: 0.5rem;
    float: left;
  }

  .alignright:not(.wp-block-button) {
    margin-left: 0.5rem;
    float: right;
  }

  .wp-block-button.alignleft a {
    float: left;
    margin-right: 1rem;
  }

  .wp-block-button.alignright a {
    float: right;
    margin-left: 1rem;
  }
}

.wp-caption {
  display: inline-block;
}

.wp-caption img {
  margin-bottom: 0.5rem;
  line-height: 1;
}

.wp-caption-text {
  font-size: 10px;
  color: #718096;
}

:root {
  --color-primary:      #e70033;
  --color-secondary:    #8DC9E8;
  --color-tertiary:     #00aeef;
  --color-site-black:   #0e1c2a;
  --color-site-grey:    #f2f2f2;
  --color-site-white:   #ffffff;
  --color-black:        #000000;
  --color-grey:         #cccccc;
  --color-white:        #ffffff;
  --color-smoke:        #f5f5f5;
  --filter-color-primary:     brightness(0) saturate(100%) invert(12%) sepia(96%) saturate(6588%) hue-rotate(342deg) brightness(89%) contrast(105%);
  --filter-color-red:         brightness(0) saturate(100%) invert(12%) sepia(96%) saturate(6588%) hue-rotate(342deg) brightness(89%) contrast(105%);
  --filter-color-black:       brightness(0) saturate(100%) invert(8%) sepia(17%) saturate(2089%) hue-rotate(169deg) brightness(95%) contrast(94%);
  --filter-color-site-grey:   brightness(0) saturate(100%) invert(98%) sepia(89%) saturate(98%) hue-rotate(178deg) brightness(115%) contrast(90%);
  --filter-color-site-white:  brightness(0) saturate(100%) invert(100%);
  --filter-color-true-black:  brightness(0) saturate(100%);
  --filter-color-white:       brightness(0) saturate(100%) invert(100%);
  --filter-color-grey:        brightness(0) saturate(100%) invert(98%) sepia(0%) saturate(485%) hue-rotate(134deg) brightness(88%) contrast(83%);
}

/* purgecss start ignore */

/*** Variables ***/

/*** Structure ***/

body {
  margin: 0;
}

.page-top {
  padding-top: 103px;
}

/*** Typography ***/

* {
  font-variant-numeric: lining-nums !important;
}

::-moz-placeholder {
  font-family: "futura-pt", sans-serif;
  font-weight: 500;
  font-size: 18px;
  color: var(--color-site-black);
  line-height: 140%;
}

::placeholder,
div,
input,
li,
p,
span,
ul {
  font-family: "futura-pt", sans-serif;
  font-weight: 500;
  font-size: 18px;
  color: var(--color-site-black);
  line-height: 140%;
}

p {
  margin-bottom: 16px;
}

p:last-of-type {
  margin-bottom: 0;
}

::-moz-placeholder {
  font-family: "futura-pt", sans-serif;
}

::placeholder {
  font-family: "futura-pt", sans-serif;
}

a {
  font-weight: 500;
  text-decoration: none;
  color: var(--color-primary);
}

a:hover {
  text-decoration: underline;
}

.futura {
  font-family: "futura-pt", sans-serif;
}

.futura-bold {
  font-family: "futura-pt-bold", sans-serif;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "futura-pt-bold", sans-serif;
  position: relative;
  color: var(--color-site-black);
  font-weight: bold !important;
  line-height: 120%;
  margin-top: 0;
  margin-bottom: 16px;
}

h1 span,
  h2 span,
  h3 span,
  h4 span,
  h5 span,
  h6 span {
  font-size: inherit;
}

h1.text-white,
  h2.text-white,
  h3.text-white,
  h4.text-white,
  h5.text-white,
  h6.text-white {
  color: white;
}

.hero-top-text {
  font-size: 24px;
  color: var(--color-primary);
}

.hero-bottom-text {
  font-size: 42px;
}

h1, .h1 {
  font-size: 36px;
}

h2, .h2 {
  font-size: 32px;
}

h3, .h3 {
  font-size: 24px;
}

h4, .h4 {
  font-size: 24px;
}

h5, .h5 {
  font-size: 20px;
  font-weight: 500 !important;
}

h6, .h6 {
  font-size: 18px;
  color: var(--color-primary);
}

.home .hero-top-text {
  font-size: 24px;
}

.home .hero-bottom-text {
  font-size: 42px;
  color: black !important;
}

.home h1, .home .h1 {
  font-size: 20px;
  color: var(--color-primary);
}

.home h2, .home .h2 {
  font-size: 36px;
}

.home h3, .home .h3 {
  font-size: 26px;
}

.home h4, .home .h4 {
  font-size: 24px;
}

.home h5, .home .h5 {
  font-size: 20px;
}

.home h6, .home .h6 {
  font-size: 18px;
}

span {
  font-weight: inherit;
  font-variation-settings: inherit;
  font-family: inherit;
  color: inherit;
}

.filter-black {
  filter: var(--filter-color-black);
}

.filter-white {
  filter: var(--filter-color-white);
}

.filter-blue {
  filter: var(--filter-color- var(--color-site-black));
}

strong {
  font-weight: bold;
}

.text-18 p {
  font-size: 18px;
}

.text-24 p,
.text-24 span,
.laptop\:text-24 p,
.laptop\:text-24 span {
  font-size: 24px;
}

.text-32 p,
.text-32 span,
.laptop\:text-32 p,
.laptop\:text-32 span {
  font-size: 32px;
}

.text-16 p,
.laptop\:text-16 p {
  font-size: 16px;
}

.leading-normal p {
  line-height: 1.5;
}

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

.font-medium span,
.font-medium p {
  font-weight: 500;
}

.text-20 p {
  font-size: 20px;
  line-height: 28px;
}

.text-white p, .text-white h1, .text-white h2, .text-white h3, .text-white h4, .text-white h5, .text-white span, .text-white a, .text-white li, .text-white div {
  color: white;
}

.text-black h2, .text-black h3, .text-black li, .text-black span, .text-black p {
  color: var(--color-site-black);
}

.text-10 div, .text-10 span {
  font-size: 10px;
}

.text-12 div, .text-12 span {
  font-size: 12px;
}

.leading-0 {
  line-height: 0;
}

.p-leading-0 p {
  line-height: 0;
}

/*** Universal ***/

*,
::before,
::after {
  box-sizing: border-box;
}

form .frm_fields_container {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

form .frm_fields_container input, form .frm_fields_container select {
  height: 40px !important;
}

form .frm_fields_container input, form .frm_fields_container textarea, form .frm_fields_container select {
  background-color: var(--color-site-white) !important;
  border: 1px solid var(--color-site-black) !important;
  margin-bottom: 8px;
  color: var(--color-site-black) !important;
  font-weight: 900;
  border-radius: 6px;
  padding: 8px 10px 4px;
  width: 100%;
}

form .frm_fields_container input::-moz-placeholder, form .frm_fields_container textarea::-moz-placeholder, form .frm_fields_container select::-moz-placeholder {
  color: var(--color-site-black) !important;
}

form .frm_fields_container input::placeholder, form .frm_fields_container textarea::placeholder, form .frm_fields_container select::placeholder {
  color: var(--color-site-black) !important;
}

form .frm_fields_container input option, form .frm_fields_container textarea option, form .frm_fields_container select option {
  font-weight: bold;
}

form .frm_fields_container .frm_submit {
  margin: 8px auto 0;
}

form .frm_fields_container .frm_submit button {
  cursor: pointer;
}

form .frm_fields_container .frm_submit a.frm_start_over {
  display: none;
}

form .frm_fields_container .frm6 {
  max-width: 48%;
}

form label {
  display: block;
  text-align: left;
}

form .frm_verify {
  display: none;
}

form .frm_single_upload svg {
  display: none;
}

.hide-labels label {
  display: none !important;
}

.frm_error_style {
  color: var(--color-site-black);
  font-size: 12px;
  margin-bottom: 8px;
}

.frm_error {
  margin-top: -5px;
  margin-bottom: 12px;
  color: red;
}

.frm_form_field {
  flex: 1 100%;
  margin-bottom: 9px;
}

.frm_form_field.frm_half {
  flex: 1 50%;
  max-width: 49%;
}

legend {
  display: none;
}

fieldset {
  border: none;
  padding: 0;
  margin: 0;
}

div,
section,
footer {
  position: relative;
}

* {
  transition: background 0.4s, color 0.4s, border-color 0.4s, filter 0.4s, opacity 0.4s, max-width 0.4s, max-height 0.4s, border 0.4s, padding 0.4s;
}

*:focus {
  outline: none;
}

iframe {
  max-width: 100%;
}

.btn, form .frm_fields_container .frm_submit button, .wp-block-button__link {
  font-size: 20px;
  font-weight: bold;
  display: inline-block;
  min-width: 120px;
  padding: 20px 39px;
  margin-top: 16px;
  text-align: center;
  border: none;
  line-height: 100%;
  position: relative;
  z-index: 0;
  border-radius: 100px;
  color: #fff !important;
  text-decoration: none !important;
  text-transform: uppercase;
  font-family: "futura-pt-bold", sans-serif;
}

.btn.mt-0, form .frm_fields_container .frm_submit button.mt-0, .mt-0.wp-block-button__link {
  margin-top: 0;
}

.btn:hover:before, form .frm_fields_container .frm_submit button:hover:before, .wp-block-button__link:hover:before {
  opacity: 1;
}

.btn:before, form .frm_fields_container .frm_submit button:before, .wp-block-button__link:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 100px;
  z-index: -1;
  transition: all .4s;
  opacity: 0;
}

.btn.blueBtn, form .frm_fields_container .frm_submit button.blueBtn, .blueBtn.wp-block-button__link, .btn.primaryBtn, form .frm_fields_container .frm_submit button, .wp-block-button__link {
  background: linear-gradient(-180deg, #00aeef 0%, #008abe 100%);
}

.btn.blueBtn:before, form .frm_fields_container .frm_submit button.blueBtn:before, .blueBtn.wp-block-button__link:before, .btn.primaryBtn:before, form .frm_fields_container .frm_submit button:before, .wp-block-button__link:before {
  background: var(--color-primary);
}

.btn.redBtn, form .frm_fields_container .frm_submit button.redBtn, .redBtn.wp-block-button__link, .home-membership a.wp-block-button__link, .home-membership a.btn {
  background: var(--color-primary);
}

.btn.redBtn:before, form .frm_fields_container .frm_submit button.redBtn:before, .redBtn.wp-block-button__link:before, .home-membership a.wp-block-button__link:before, .home-membership a.btn:before {
  background: linear-gradient(-180deg, #00aeef 0%, #008abe 100%);
}

.btn.ghostBtn, form .frm_fields_container .frm_submit button.ghostBtn, .ghostBtn.wp-block-button__link, .blog-sidebar-items .blog-sidebar-item .btn, .blog-sidebar-items .blog-sidebar-item form .frm_fields_container .frm_submit button, form .frm_fields_container .frm_submit .blog-sidebar-items .blog-sidebar-item button, .blog-sidebar-items .blog-sidebar-item .wp-block-button__link {
  background: none;
  border: 1px solid white;
}

.btn.ghostBtn:before, form .frm_fields_container .frm_submit button.ghostBtn:before, .ghostBtn.wp-block-button__link:before, .blog-sidebar-items .blog-sidebar-item .btn:before, .blog-sidebar-items .blog-sidebar-item form .frm_fields_container .frm_submit button:before, form .frm_fields_container .frm_submit .blog-sidebar-items .blog-sidebar-item button:before, .blog-sidebar-items .blog-sidebar-item .wp-block-button__link:before {
  background: var(--color-site-white);
}

.btn.ghostBtn:hover, form .frm_fields_container .frm_submit button.ghostBtn:hover, .ghostBtn.wp-block-button__link:hover, .blog-sidebar-items .blog-sidebar-item .btn:hover, .blog-sidebar-items .blog-sidebar-item form .frm_fields_container .frm_submit button:hover, form .frm_fields_container .frm_submit .blog-sidebar-items .blog-sidebar-item button:hover, .blog-sidebar-items .blog-sidebar-item .wp-block-button__link:hover {
  color: var(--color-site-black) !important;
}

.btn.whiteBtn, form .frm_fields_container .frm_submit button.whiteBtn, .whiteBtn.wp-block-button__link {
  background: var(--color-site-white);
  color: var(--color-site-black) !important;
}

.btn.whiteBtn:before, form .frm_fields_container .frm_submit button.whiteBtn:before, .whiteBtn.wp-block-button__link:before {
  background: var(--color-site-black);
}

.btn.whiteBtn:hover, form .frm_fields_container .frm_submit button.whiteBtn:hover, .whiteBtn.wp-block-button__link:hover {
  color: var(--color-site-white) !important;
}

.bookBtn {
  padding-top: 12.5px !important;
  padding-bottom: 12.5px !important;
}

.social-icons-container {
  display: flex;
  justify-content: center;
  gap: 20px;
  align-items: center;
  flex-wrap: wrap;
}

.social-icons-container .social-media-account {
  width: 60px;
  height: 60px;
  position: relative;
  display: flex;
}

.social-icons-container .social-media-account img {
  position: absolute;
  width: 100%;
  height: 100%;
}

.social-icons-container .social-media-account img.passive-icon {
  opacity: 1;
}

.social-icons-container .social-media-account img.hover-icon {
  opacity: 0;
}

.social-icons-container .social-media-account:hover .passive-icon {
  opacity: 0;
}

.social-icons-container .social-media-account:hover .hover-icon {
  opacity: 1;
}

.align-text-top {
  vertical-align: text-top !important;
}

.align-text-bottom {
  vertical-align: text-bottom !important;
}

.p-first-mt-0 p:first-of-type, .first-p-mt-0 p:first-of-type {
  margin-top: 0;
}

.p-img-less-mb p img {
  margin-bottom: -14px;
}

.p-text-left p, .text-p-left p {
  text-align: left;
}

.overlay {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.overlay.hero-overlay {
  background-color: rgba(6, 58, 98, 0.82);
}

.hoverIcon,
.passiveIcon {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
}

.hoverIcon {
  z-index: 2;
  opacity: 0 !important;
}

.hoverSet:hover .hoverIcon,
.hoverSetOuterContainer:hover .hoverIcon {
  opacity: 1 !important;
}

ul {
  list-style: disc;
  padding-left: 25px;
  margin: 10px 0;
}

ul li {
  color: var(--color-site-black);
  margin-bottom: 8px;
  position: relative;
}

ul li::marker {
  color: var(--color-tertiary);
}

.marker-white ul li::marker {
  color: white;
}

.marker-black ul li::marker {
  color: var(--color-site-black);
}

.marker-red ul li::marker {
  color: var(--color-primary);
}

img.alignright {
  float: right;
}

img.alignleft {
  float: left;
}

.se-widget-button {
  cursor: pointer;
}

.accordionItem {
  margin-bottom: 16px;
}

.accordionItem .accordionTitle {
  cursor: pointer;
  line-height: 130%;
  background: var(--color-site-white);
  color: var(--color-site-black);
  padding: 17px 49px 17px 15px;
  border-radius: 12px;
  font-size: 20px;
  display: flex;
  align-items: center;
  margin-bottom: 0;
}

.accordionItem .accordionTitle:after {
  content: "";
  transform: rotate(90deg);
  position: absolute;
  right: 20px;
  line-height: 0;
  transition: transform .4s;
  width: 20px;
  height: 3px;
  background: var(--color-site-black);
}

.accordionItem .accordionTitle:before {
  content: "";
  position: absolute;
  right: 20px;
  line-height: 0;
  transition: transform .4s;
  width: 20px;
  height: 3px;
  background: var(--color-site-black);
}

.accordionItem .accordionContent {
  max-height: 0;
  opacity: 0;
  padding: 0 20px;
  overflow: hidden;
}

.accordionItem .accordionContent p:first-of-type {
  margin-top: 0;
}

.accordionItem.active .accordionTitle:after {
  transform: rotate(180deg);
}

.accordionItem.active .accordionContent {
  max-height: 3000px;
  opacity: 1;
  padding: 10px 20px;
}

.bg-none {
  background: none !important;
}

.bg-siteGrey {
  background: var(--color-site-grey) !important;
}

img {
  max-width: 100%;
}

.border-b-solid {
  border-bottom-style: solid;
}

.border-t-solid {
  border-top-style: solid;
}

.border-l-solid {
  border-left-style: solid;
}

.border-r-solid {
  border-right-style: solid;
}

.box-shadow {
  box-shadow: 4px 4px 10px -3px rgba(55, 55, 55, 0.32);
}

.box-shadow-full {
  box-shadow: 2px 2px 12px 1px rgba(0, 0, 0, 0.12);
}

.aligncenter {
  margin-top: 0;
  margin-bottom: 0;
}

p:first-of-type:has(img) {
  margin-top: 0;
}

.red-bg {
  background-image: linear-gradient(-180deg, #e70033 0%, #c9002c 100%);
}

.icon-bg:before {
  content: "";
  background: url("/wp-content/uploads/dotdesign_pattern_fadeout_chopped.png");
  background-repeat: repeat-x;
  height: 225px;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-size: auto 100%;
}

.img-blue-background {
  z-index: 1;
}

.img-blue-background img {
  border-radius: 50%;
  z-index: 10;
}

.img-blue-background:before, .img-blue-background:after {
  content: "";
  background: var(--color-secondary);
  border-radius: 50%;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 10px;
  left: 10px;
  z-index: -1;
}

.img-blue-background:after {
  background: var(--color-tertiary);
  top: -10px;
  left: 0;
  z-index: -2;
}

.white-bg {
  background-image: linear-gradient(180deg, #f4f4f4 0%, #fff, 50%, #fff 100%);
}

.dots-bg:before {
  content: "";
  background: url("/wp-content/uploads/gray_dot_pattern_new.webp") bottom/cover;
  position: absolute;
  width: 100%;
  height: 100%;
  bottom: 0;
  left: 0;
}

.top-fade-white:before {
  content: "";
  background-image: linear-gradient(-180deg, white 0%, rgba(244, 244, 244, 0) 55%, rgba(244, 244, 244, 0) 100%);
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
}

.top-curve:after {
  content: "";
  background: url("/wp-content/uploads/top_curve.png") center/100% 100%;
  position: absolute;
  width: 100%;
  height: 104px;
  top: 0;
}

.bottom-curve:after {
  content: "";
  background: url("/wp-content/uploads/red_curve_bottom.png") center/100% 100%;
  position: absolute;
  width: 100%;
  height: 104px;
  bottom: 0;
  left: 0;
}

.bottom-curve-2:after {
  content: "";
  background: url("/wp-content/uploads/red_curve_bottom-1.svg") center/100% 100%;
  position: absolute;
  width: 100%;
  height: 30px;
  top: calc(100% - 1px);
  left: 0;
}

/*** Universal Sections ***/

/* Hero */

.hero .hero-inner .hero-content .btn, .hero .hero-inner .hero-content form .frm_fields_container .frm_submit button, form .frm_fields_container .frm_submit .hero .hero-inner .hero-content button, .hero .hero-inner .hero-content .wp-block-button__link {
  font-size: 24px;
}

.hero:after {
  content: "";
  background: url("/wp-content/uploads/header_curve.png") center/100% 100%;
  position: absolute;
  width: 100%;
  height: 100px;
  bottom: -1px;
  left: 0;
}

@media screen and (max-width: 1024px) {
  .hero:after {
    background: url("/wp-content/uploads/mobile_header_curve.png") center/100% 100%;
    height: 40px;
  }
}

.hero + .hero-guarantees img {
  margin-bottom: 10px;
}

/* Testimonials */

/*** Rebates ***/

.rebate-btn-inner {
  margin-top: 0px !important;
}

.rebate-boxes .rebate-box-inner h5 {
  margin-top: 30px;
  margin-bottom: 30px;
  font-weight: 500 !important;
}

/* Creds */

.cred-item img {
  vertical-align: middle;
}

/* Service Area */

.sa-items .sa-reset {
  display: none;
}

.sa-items .sa-reset img {
  max-width: 6px;
  margin-right: 10px;
}

.sa-items ul {
  padding: 0 0 0 20px;
  -moz-column-count: 2;
       column-count: 2;
}

.sa-items ul li {
  line-height: 0;
  margin-bottom: 16px;
  position: relative;
}

.sa-items ul li a {
  font-size: 18px;
  position: relative;
  padding-right: 16px;
  margin-right: 10px;
  line-height: 110%;
  color: var(--color-site-black);
  display: inline-block;
}

.sa-items ul li a[href]:hover {
  color: var(--color-site-black);
}

.sa-items ul li.menu-item-has-children .sub-menu {
  display: none !important;
}

.sa-items ul.active {
  display: block;
  -moz-column-count: unset;
       column-count: unset;
}

.sa-items ul.active > li {
  display: none !important;
  border: none;
}

.sa-items ul.active > li.active-sa-menu {
  display: block !important;
}

.sa-items ul.active > li.active-sa-menu .sub-menu {
  margin-top: 26px;
  display: block !important;
  margin-bottom: -26px;
  -moz-column-count: unset;
       column-count: unset;
}

.sa-items ul.active > li.active-sa-menu .sub-menu li {
  display: inline-block;
  padding-left: 0;
  padding-bottom: 16px;
  margin-bottom: 16px;
}

.sa-items ul.active > li.active-sa-menu .sub-menu li a {
  display: block !important;
  margin: 0 20px 0px 0;
  padding: 0;
}

.sa-items ul.active > li.active-sa-menu.active-sa-menu > a {
  display: none !important;
}

.sa-items ul.active > li.active-sa-menu.active-sa-menu a:after {
  display: none !important;
}

.sa-items.active-sa-container .sa-reset {
  display: block  !important;
}

.services-pre-footer-container:before {
  content: "";
  background: url("/wp-content/uploads/gray_dot_pattern_new.webp") bottom/cover;
  position: absolute;
  width: 100%;
  height: 60%;
  top: 0;
  left: 0;
  transform: rotate(180deg);
}

/*** Glide ***/

.glide__bullets .glide__bullet {
  background: var(--color-tertiary);
  margin: 0 4px;
  border: none;
  width: 15px;
  height: 15px;
  border-radius: 50%;
  padding: 0;
  cursor: pointer;
}

.glide__bullets .glide__bullet.glide__bullet--active {
  background: var(--color-primary);
}

.red-bg .glide__bullets .glide__bullet {
  background: white;
}

.red-bg .glide__bullets .glide__bullet.glide__bullet--active {
  background: var(--color-site-black);
}

.glide__arrows {
  max-width: 115px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  justify-content: center;
  gap: 16px;
  text-align: center;
  cursor: pointer;
}

.glide__arrows img {
  cursor: pointer;
}

.glide__arrows .glide__arrow {
  padding: 0;
  border: none;
  background: none;
}

/* WPBR Carousel */

.swiper-pagination .swiper-pagination-bullet {
  opacity: 1 !important;
  background: var(--color-tertiary) !important;
  width: 15px !important;
  height: 15px !important;
}

.swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: var(--color-primary) !important;
}

/*** Header ***/

.headerMain {
  box-shadow: 3px 3px 4px 0 rgba(0, 0, 0, 0.2);
}

header#masthead {
  position: fixed;
  width: 100%;
  z-index: 99;
}

header#masthead .headerLogo {
  line-height: 0;
  max-width: 250px;
}

header#masthead .headerLogo img {
  width: 100%;
}

header#masthead .stickyHeader {
  display: none;
}

header#masthead .passiveHeader {
  display: block;
}

@media screen and (max-width: 1280px) {
  header#masthead .headerSchedule {
    display: none;
  }
}

header#masthead nav#site-navigation, header#masthead .headerCall {
  display: inline-block;
}

ul#primary-menu li {
  display: inline-block;
  position: relative;
  margin: 0;
}

ul#primary-menu li a {
  font-size: 16px;
  border: 1px solid transparent;
  border-radius: 15px 15px 0 0;
  padding: 12px 10px;
  margin: 0;
  font-weight: bold;
  display: inline-block;
  color: var(--color-site-black);
  letter-spacing: 0.03em;
  transition: none;
  width: 100%;
  line-height: 100%;
  text-decoration: none !important;
  font-family: "futura-pt-bold", sans-serif;
  text-transform: uppercase !important;
}

ul#primary-menu li .sub-menu-wrap {
  position: absolute;
  top: 100%;
  left: 0;
  display: none;
  margin: 0;
  text-align: left;
}

ul#primary-menu li .sub-menu-wrap .sub-menu {
  margin: 0;
  padding: 8px 3px;
  min-width: 320px;
  background: var(--color-site-white);
}

ul#primary-menu li .sub-menu-wrap .sub-menu li {
  display: block !important;
}

ul#primary-menu li .sub-menu-wrap .sub-menu li a {
  margin: 0 !important;
  padding: 6px 15px !important;
  color: var(--color-site-black) !important;
}

ul#primary-menu li .sub-menu-wrap .sub-menu li a:hover {
  color: var(--color-primary) !important;
}

ul#primary-menu li .sub-menu-wrap .sub-menu-wrap {
  display: none !important;
}

ul#primary-menu li.reverse-dropdown .sub-menu-wrap {
  left: unset;
  right: 0;
  border-radius: 8px 0 8px 8px;
}

ul#primary-menu li.menu-item-has-children:hover .sub-menu-wrap {
  display: block;
}

/*** Home ***/

body.home .not-on-home {
  display: none;
}

body:not(.home) .only-on-home {
  display: none;
}

.home-services a {
  text-decoration: none;
}

.home-services a img {
  transition: transform .4s;
}

.home-services a:hover img {
  transform: translateY(-10px);
}

.home-overflow-services ul li a {
  color: var(--color-site-black);
  font-weight: 500;
  font-size: 20px;
}

.int-overlay {
  -o-border-image: linear-gradient(to top, rgba(255, 255, 255, 0) 0%, #f4f4f4 100%);
     border-image: linear-gradient(to top, rgba(255, 255, 255, 0) 0%, #f4f4f4 100%);
  height: 200px;
}

.home-carrier-overlay {
  background-image: linear-gradient(to top, rgba(255, 255, 255, 0) 0%, #f4f4f4 100%);
}

/*** Services ***/

.services-rebate-right-inner h2 {
  font-size: 36px;
}

.services-list {
  overflow: hidden;
}

.services-list .services-list-items ul {
  padding: 0;
  -moz-column-count: 2;
       column-count: 2;
}

.services-list .services-list-items ul a {
  color: var(--color-site-black);
}

/* To be used for FAQ Section */

.wpsp-faq-child__outer-wrap .wpsp-faq-item {
  background: none !important;
  margin-bottom: 16px;
  padding-bottom: 16px;
  border: none !important;
  border-bottom: 1px solid #d6d6d6 !important;
}

.wpsp-faq-child__outer-wrap .wpsp-faq-item .wpsp-faq-questions .wpsp-question {
  font-weight: bold;
  font-size: 20px;
  padding-right: 48px;
}

.wpsp-faq-child__outer-wrap .wpsp-faq-item .wpsp-faq-questions .wpsp-faq-icon-wrap {
  display: none !important;
}

.wpsp-faq-child__outer-wrap .wpsp-faq-item .wpsp-faq-questions:before, .wpsp-faq-child__outer-wrap .wpsp-faq-item .wpsp-faq-questions:after {
  content: "";
  background: var(--color-site-black);
  width: 18px;
  height: 4px;
  top: 21px;
  position: absolute;
  right: 20px;
  line-height: 0;
  transition: transform .4s;
}

.wpsp-faq-child__outer-wrap .wpsp-faq-item .wpsp-faq-questions:after {
  transform: rotate(90deg);
}

.wpsp-faq-child__outer-wrap .wpsp-faq-item:focus {
  outline: none !important;
}

.wpsp-faq-child__outer-wrap .wpsp-faq-item.wpsp-faq-item-active .wpsp-faq-questions:after {
  transform: none;
}

.wpsp-faq-child__outer-wrap:last-of-type .wpsp-faq-item {
  border: none !important;
  padding-bottom: 0;
  margin-bottom: 0;
}

/*** Default Page ***/

/*** Community ***/

.community-items .community-item .comm-image img {
  cursor: pointer;
}

.community-image-modals .image-modal {
  position: fixed;
  opacity: 0;
  z-index: -10;
}

.community-image-modals .image-modal.active {
  opacity: 1;
  z-index: 999;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.8);
  padding-top: 150px;
}

.community-image-modals .image-modal.active .image-modal-inner img {
  max-width: 600px;
  max-height: 70vh;
  margin: 0 auto;
  position: relative;
  z-index: 20;
}

.community-image-modals .image-modal.active .comm-image-close {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 10;
  cursor: pointer;
}

@media screen and (max-width: 1000px) {
  .community-image-modals .image-modal.active {
    padding-top: 100px;
  }
}

/*** Careers ***/

.careers-benefits .career-benefit-items .career-benefit-item svg path {
  fill: white;
}

/*** Contact ***/

.contact-left .social-icons-container {
  justify-content: flex-start;
}

/*** Blog / Expert Tips ***/

.blog-post-content a:hover {
  color: var(--color-site-black) !important;
}

.blog-sidebar-items {
  position: sticky;
  top: 180px;
}

.blog-sidebar-items .blog-sidebar-item {
  background-color: var(--color-primary);
  border-radius: 40px;
  color: white;
  text-align: center;
  padding-left: 16px;
  padding-right: 16px;
}

#cats-picker, .services-menu-dropdown {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  cursor: pointer;
  background-color: var(--color-site-white);
  background-image: linear-gradient(45deg, #0000 50%, var(--color-site-black) 50%), linear-gradient(135deg, var(--color-site-black) 50%, #0000 50%), linear-gradient(to right, var(--color-site-white), var(--color-site-white));
  background-position: calc(100% - 20px) calc(1em + 2px), calc(100% - 15px) calc(1em + 2px), 100% 0;
  background-repeat: no-repeat;
  background-size: 5px 5px,5px 5px,2.5em 2.5em;
  border: none;
  box-sizing: border-box;
  display: inline-block;
  font-size: 16px;
  line-height: 1.5em;
  margin: 0;
  min-width: 100%;
  max-width: 100%;
  padding: 6px 30px 6px 12px;
  color: var(--color-site-black);
  border-radius: 100px;
}

#cats-picker option, .services-menu-dropdown option {
  color: var(--color-site-black);
}

.post-template-default .hero-top-text {
  font-size: 42px !important;
  color: black !important;
}

.post-template-default .hero-bottom-text {
  font-size: 24px !important;
  color: var(--color-primary);
}

/*** Footer ***/

footer .bottom-bar {
  padding-bottom: 135px;
}

footer .bottom-bar:after {
  content: "";
  background: url("/wp-content/uploads/dots_footer_new-scaled.webp");
  width: 100%;
  height: 135px;
  position: absolute;
  bottom: 0;
  left: 0;
  background-size: contain;
}

/*** Media Queries ***/

@media screen and (min-width: 1024px) {
  /*** Universal ***/

  .mobileOnly {
    display: none !important;
  }

  .columns-2 {
    -moz-column-count: 2;
         column-count: 2;
  }

  .white-blur-bg {
    background-color: rgba(255, 255, 255, 0.8);
    -webkit-backdrop-filter: blur(10px);
            backdrop-filter: blur(10px);
  }

  /*** Home ***/

  .home-hero .hero .hero-inner .hero-content {
    text-align: left;
  }
}

@media screen and (max-width: 1024px) {
  /*** Structure ***/

  .desktopOnly {
    display: none !important;
  }

  .flexHalf,
  .flexThird {
    flex: 1 100%;
    padding: 0;
  }

  .hoverSet.iconImages {
    width: 13px;
    height: 13px;
    margin-right: 7px;
    vertical-align: middle;
  }

  img {
    max-width: 100%;
  }

  .wp-block-columns {
    gap: 0;
    margin-top: 16px;
  }

  .wp-block-columns ul {
    margin: 0;
  }

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

  .justify-between.force-between {
    justify-content: space-between;
  }

  /*** Typography ***/

  .hero-top-text {
    font-size: 16px;
  }

  .hero-bottom-text {
    font-size: 34px;
  }

  h1, .h1 {
    font-size: 28px;
  }

  h2, .h2 {
    font-size: 24px;
  }

  h3, .h3 {
    font-size: 24px;
  }

  h4, .h4 {
    font-size: 20px;
  }

  h5, .h5 {
    font-size: 20px;
  }

  h6, .h6 {
    font-size: 16px;
  }

  .home .hero-top-text {
    font-size: 16px;
  }

  .home .hero-bottom-text {
    font-size: 34px;
  }

  .home h1, .home .h1 {
    font-size: 18px;
  }

  .home h2, .home .h2 {
    font-size: 28px;
  }

  .home h3, .home .h3 {
    font-size: 26px;
  }

  .home h4, .home .h4 {
    font-size: 20px;
  }

  .home h5, .home .h5 {
    font-size: 20px;
  }

  .home h6, .home .h6 {
    font-size: 16px;
  }

  /*** Universal ***/

  .mob-headings-center h1, .mob-headings-center h2, .mob-headings-center h3, .mob-headings-center h4, .mob-headings-center h5, .mob-headings-center h6 {
    text-align: center;
  }

  .top-curve:after {
    background: url("/wp-content/uploads/mobile_curve.png") center/100% 100%;
    height: 33px;
  }

  .bottom-curve:after {
    background: url("/wp-content/uploads/mobile_red_curve_bottom-1.png") center/100% 100%;
    height: 39px;
  }

  .bottom-curve-2:after {
    height: 39px;
  }

  .icon-bg:before {
    background: url("/wp-content/uploads/dotdesign_pattern_fadeout_chopped.png") center/cover;
    height: 157px;
  }

  .mob-no-img-background img {
    border-radius: 0;
  }

  .mob-no-img-background:before, .mob-no-img-background:after {
    content: none;
  }

  /*** Universal Sections ***/

  /* Hero */

  .hero {
    background: none !important;
  }

  .hero .hero-content {
    background: none;
    -webkit-backdrop-filter: blur(0);
            backdrop-filter: blur(0);
  }

  .hero .hero-mobile-img img {
    height: 240px;
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: top;
       object-position: top;
  }

  .hero .hero-mobile-img:before {
    content: "";
    background-image: linear-gradient(-180deg, white 0%, rgba(255, 255, 255, 0) 100%);
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100px;
  }

  .guarantees-section {
    background: none !important;
  }

  /*** Header ***/

  .page-top {
    padding-top: 85px;
  }

  html[lang="en-US"] {
    margin: 0 !important;
  }

  div#wpadminbar {
    display: none;
  }

  header#masthead .headerLogo.logo {
    line-height: 0;
    max-width: 120px;
  }

  header#masthead .headerLogo.logo * {
    line-height: 0;
  }

  header#masthead .headerMainInner .menu-toggle img, header#masthead .headerMainInner .header-phone-mobile img {
    max-width: 45px;
    width: 100%;
  }

  header#masthead .headerMainInner ul#primary-menu li {
    display: block;
  }

  header#masthead .headerMainInner ul#primary-menu > li {
    border-bottom: 1px solid rgba(14, 28, 42, 0.2);
  }

  header#masthead .headerMainInner ul#primary-menu > li > a {
    text-transform: uppercase;
  }

  header#masthead .headerMainInner ul#primary-menu a:not(.btn):not(.wp-block-button__link) {
    font-size: 16px;
    padding: 10px;
    color: var(--color-site-black);
    font-weight: 600;
  }

  header#masthead .headerMainInner ul#primary-menu a:not(.btn):not(.wp-block-button__link):after {
    display: none !important;
  }

  header#masthead .headerMainInner ul#primary-menu a.btn, header#masthead .headerMainInner ul#primary-menu a.wp-block-button__link {
    border-radius: 0;
    border: none;
    padding: 14px;
  }

  header#masthead .headerMainInner ul#primary-menu .menu-item {
    padding: 0 16px;
  }

  header#masthead .headerMainInner ul#primary-menu .menu-item:last-of-type {
    line-height: 0;
  }

  header#masthead .headerMainInner ul#primary-menu .menu-item:last-of-type a {
    border-bottom: none;
  }

  header#masthead .headerMainInner ul#primary-menu .activeMenu a {
    color: white !important;
  }

  header#masthead .headerMainInner ul#primary-menu .activeMenu > a {
    color: var(--color-site-black) !important;
  }

  header#masthead .headerMainInner ul#primary-menu .activeMenu.menu-item-has-children .sub-menu-wrap {
    display: block !important;
    position: relative !important;
  }

  header#masthead .headerMainInner ul#primary-menu .activeMenu .minus {
    display: block !important;
  }

  header#masthead .headerMainInner ul#primary-menu .activeMenu .plus {
    display: none;
  }

  header#masthead .headerMainInner ul#primary-menu .sub-menu-wrap {
    -moz-column-count: 1;
         column-count: 1;
    width: 100%;
    padding: 0;
    box-shadow: none;
    position: relative;
    background: none;
    top: 0;
  }

  header#masthead .headerMainInner ul#primary-menu .sub-menu-wrap .sub-menu {
    background: none;
    padding-top: 0;
    margin-top: -2px;
  }

  header#masthead .headerMainInner ul#primary-menu .sub-menu-wrap .sub-menu a {
    padding-left: 35px !important;
    color: var(--color-site-black) !important;
    font-weight: 500 !important;
  }

  header#masthead .headerMainInner ul#primary-menu .sub-menu-wrap .sub-menu li {
    border: none !important;
    padding: 0;
  }

  header#masthead .headerMainInner ul#primary-menu .minus {
    display: none;
  }

  header#masthead .headerMainInner .activeMenu .fa-plus {
    display: none;
  }

  header#masthead .headerMainInner .activeMenu .fa-minus {
    display: block;
  }

  header#masthead .headerMainInner #site-navigation > div {
    display: none;
    background: var(--color-site-white);
    position: fixed;
    width: 100vw;
    left: 0;
    top: 84px;
    max-height: calc(100vh - 84px);
    overflow-y: scroll;
    text-align: left;
  }

  header#masthead .headerMainInner #site-navigation > div a:not(.btn):not(.wp-block-button__link) {
    background: none;
  }

  header#masthead .headerMainInner .closeMenu {
    text-align: center;
  }

  header#masthead .headerMainInner .closeMenu a {
    font-weight: bold;
  }

  header#masthead .headerMainInner .plusMinus {
    width: 38px;
    height: 38px;
  }

  header#masthead .headerMainInner .plusMinus .plusMinusInner {
    height: 20px;
    width: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  header#masthead .headerMainInner .plusMinus .plusMinusInner:before {
    content: "";
    background: url("/wp-content/uploads/icon_right.svg") center/cover;
    display: block;
    position: absolute;
    width: 16px;
    height: 16px;
    transition: all .4s;
  }

  header#masthead .headerMainInner .menu-item-has-children .sub-menu-wrap {
    display: none !important;
  }

  header#masthead .headerMainInner .activeMenu .plusMinus .plusMinusInner:before {
    transform: rotate(90deg);
  }

  header#masthead .headerMainInner .activeMenu.menu-item-has-children .sub-menu-wrap {
    display: block !important;
  }

  header#masthead.customSticky .headerMainInner .headerRight {
    line-height: 0;
  }

  header#masthead.customSticky .headerMainInner .headerRight .menuIsOpen {
    line-height: 0;
  }

  .admin-bar header#masthead {
    top: 0;
    z-index: 999999;
  }

  .toggled#site-navigation > div {
    display: block !important;
  }

  .toggledMainMenu header .headerMainInner .menuIsClosed {
    display: block !important;
  }

  .toggledMainMenu header .headerMainInner .menuIsOpen {
    display: none;
  }

  .menu-item-has-children .sub-menu-wrap {
    display: none !important;
  }

  li:not(.menu-item-has-children) .plusMinus {
    display: none !important;
  }

  /*** Home ***/

  .home-services .home-service-item img {
    max-width: 172px;
  }

  .home-financing {
    background: none !important;
  }

  .home-careers .home-careers-right img {
    width: 100%;
    height: 275px;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center;
       object-position: center;
  }

  /*** Services ***/

  .services-rebate-right-inner {
    border-left: none;
    border-right: none;
  }

  .services-list {
    overflow: hidden;
    background: var(--color-site-grey) !important;
  }

  .services-photo-2 {
    background: var(--color-site-grey) !important;
  }

  .about-photo-2 {
    background: var(--color-site-grey) !important;
  }

  /*** Footer ***/

  footer h4 {
    font-size: 24px !important;
  }
}

/* purgecss end ignore */

@media (min-width: 1024px) {
  .laptop\:center-xy {
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
  }
}

.last\:mb-0:last-child {
  margin-bottom: 0px;
}

.last\:border-b-white:last-child {
  border-bottom-color: var(--color-site-white);
}

.last\:pb-0:last-child {
  padding-bottom: 0px;
}

@media (min-width: 1024px) {
  .laptop\:absolute {
    position: absolute;
  }

  .laptop\:my-12 {
    margin-top: 3rem;
    margin-bottom: 3rem;
  }

  .laptop\:my-16 {
    margin-top: 4rem;
    margin-bottom: 4rem;
  }

  .laptop\:my-20 {
    margin-top: 5rem;
    margin-bottom: 5rem;
  }

  .laptop\:my-24 {
    margin-top: 6rem;
    margin-bottom: 6rem;
  }

  .laptop\:my-auto {
    margin-top: auto;
    margin-bottom: auto;
  }

  .laptop\:-ml-16 {
    margin-left: -4rem;
  }

  .laptop\:-mt-24 {
    margin-top: -6rem;
  }

  .laptop\:-mt-28 {
    margin-top: -7rem;
  }

  .laptop\:mb-10 {
    margin-bottom: 2.5rem;
  }

  .laptop\:mb-20 {
    margin-bottom: 5rem;
  }

  .laptop\:mb-24 {
    margin-bottom: 6rem;
  }

  .laptop\:mb-6 {
    margin-bottom: 1.5rem;
  }

  .laptop\:mt-20 {
    margin-top: 5rem;
  }

  .laptop\:mt-4 {
    margin-top: 1rem;
  }

  .laptop\:mt-6 {
    margin-top: 1.5rem;
  }

  .laptop\:mt-8 {
    margin-top: 2rem;
  }

  .laptop\:flex {
    display: flex;
  }

  .laptop\:grid {
    display: grid;
  }

  .laptop\:min-h-\[500px\] {
    min-height: 500px;
  }

  .laptop\:max-w-1\/2 {
    max-width: 50%;
  }

  .laptop\:max-w-300 {
    max-width: 300px;
  }

  .laptop\:max-w-350 {
    max-width: 350px;
  }

  .laptop\:max-w-400 {
    max-width: 400px;
  }

  .laptop\:max-w-500 {
    max-width: 500px;
  }

  .laptop\:max-w-600 {
    max-width: 600px;
  }

  .laptop\:max-w-\[220px\] {
    max-width: 220px;
  }

  .laptop\:grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .laptop\:flex-nowrap {
    flex-wrap: nowrap;
  }

  .laptop\:gap-10 {
    gap: 2.5rem;
  }

  .laptop\:gap-14 {
    gap: 3.5rem;
  }

  .laptop\:rounded-80 {
    border-radius: 80px;
  }

  .laptop\:border {
    border-width: 1px;
  }

  .laptop\:border-solid {
    border-style: solid;
  }

  .laptop\:border-black {
    border-color: var(--color-site-black);
  }

  .laptop\:bg-white {
    background-color: var(--color-site-white);
  }

  .laptop\:px-14 {
    padding-left: 3.5rem;
    padding-right: 3.5rem;
  }

  .laptop\:px-4 {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .laptop\:py-12 {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }

  .laptop\:py-16 {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }

  .laptop\:py-36 {
    padding-top: 9rem;
    padding-bottom: 9rem;
  }

  .laptop\:py-6 {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
  }

  .laptop\:py-8 {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }

  .laptop\:pb-10 {
    padding-bottom: 2.5rem;
  }

  .laptop\:pb-24 {
    padding-bottom: 6rem;
  }

  .laptop\:pb-6 {
    padding-bottom: 1.5rem;
  }

  .laptop\:pl-10 {
    padding-left: 2.5rem;
  }

  .laptop\:pl-2 {
    padding-left: 0.5rem;
  }

  .laptop\:pl-3 {
    padding-left: 0.75rem;
  }

  .laptop\:pl-4 {
    padding-left: 1rem;
  }

  .laptop\:pl-5 {
    padding-left: 1.25rem;
  }

  .laptop\:pr-3 {
    padding-right: 0.75rem;
  }

  .laptop\:pr-4 {
    padding-right: 1rem;
  }

  .laptop\:pr-5 {
    padding-right: 1.25rem;
  }

  .laptop\:pr-6 {
    padding-right: 1.5rem;
  }

  .laptop\:pt-11 {
    padding-top: 2.75rem;
  }

  .laptop\:pt-40 {
    padding-top: 10rem;
  }
}

@media (min-width: 1280px) {
  .desktop\:grid {
    display: grid;
  }
}

@media (max-width: 1024px) {
  .mob\:order-2 {
    order: 2;
  }

  .mob\:mx-auto {
    margin-left: auto;
    margin-right: auto;
  }

  .mob\:my-4 {
    margin-top: 1rem;
    margin-bottom: 1rem;
  }

  .mob\:my-5 {
    margin-top: 1.25rem;
    margin-bottom: 1.25rem;
  }

  .mob\:my-6 {
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
  }

  .mob\:my-8 {
    margin-top: 2rem;
    margin-bottom: 2rem;
  }

  .mob\:-mt-16 {
    margin-top: -4rem;
  }

  .mob\:-mt-20 {
    margin-top: -5rem;
  }

  .mob\:-mt-40 {
    margin-top: -10rem;
  }

  .mob\:-mt-6 {
    margin-top: -1.5rem;
  }

  .mob\:mb-2 {
    margin-bottom: 0.5rem;
  }

  .mob\:mb-4 {
    margin-bottom: 1rem;
  }

  .mob\:mb-5 {
    margin-bottom: 1.25rem;
  }

  .mob\:mb-6 {
    margin-bottom: 1.5rem;
  }

  .mob\:mb-8 {
    margin-bottom: 2rem;
  }

  .mob\:mb-9 {
    margin-bottom: 2.25rem;
  }

  .mob\:mt-10 {
    margin-top: 2.5rem;
  }

  .mob\:mt-12 {
    margin-top: 3rem;
  }

  .mob\:mt-2 {
    margin-top: 0.5rem;
  }

  .mob\:mt-3 {
    margin-top: 0.75rem;
  }

  .mob\:mt-4 {
    margin-top: 1rem;
  }

  .mob\:mt-5 {
    margin-top: 1.25rem;
  }

  .mob\:mt-6 {
    margin-top: 1.5rem;
  }

  .mob\:mt-8 {
    margin-top: 2rem;
  }

  .mob\:mt-9 {
    margin-top: 2.25rem;
  }

  .mob\:block {
    display: block;
  }

  .mob\:flex {
    display: flex;
  }

  .mob\:hidden {
    display: none;
  }

  .mob\:w-full {
    width: 100%;
  }

  .mob\:max-w-250 {
    max-width: 250px;
  }

  .mob\:max-w-300 {
    max-width: 300px;
  }

  .mob\:max-w-\[66px\] {
    max-width: 66px;
  }

  .mob\:max-w-\[75px\] {
    max-width: 75px;
  }

  .mob\:flex-wrap {
    flex-wrap: wrap;
  }

  .mob\:items-center {
    align-items: center;
  }

  .mob\:justify-center {
    justify-content: center;
  }

  .mob\:justify-between {
    justify-content: space-between;
  }

  .mob\:gap-0 {
    gap: 0px;
  }

  .mob\:gap-1 {
    gap: 0.25rem;
  }

  .mob\:gap-4 {
    gap: 1rem;
  }

  .mob\:gap-5 {
    gap: 1.25rem;
  }

  .mob\:\!bg-grey {
    background-color: var(--color-site-grey) !important;
  }

  .mob\:bg-grey {
    background-color: var(--color-site-grey);
  }

  .mob\:bg-red {
    background-color: var(--color-primary);
  }

  .mob\:p-5 {
    padding: 1.25rem;
  }

  .mob\:p-6 {
    padding: 1.5rem;
  }

  .mob\:p-7 {
    padding: 1.75rem;
  }

  .mob\:p-8 {
    padding: 2rem;
  }

  .mob\:px-1 {
    padding-left: 0.25rem;
    padding-right: 0.25rem;
  }

  .mob\:px-14 {
    padding-left: 3.5rem;
    padding-right: 3.5rem;
  }

  .mob\:px-2 {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }

  .mob\:px-4 {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .mob\:px-5 {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }

  .mob\:px-6 {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }

  .mob\:py-10 {
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
  }

  .mob\:py-24 {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }

  .mob\:py-28 {
    padding-top: 7rem;
    padding-bottom: 7rem;
  }

  .mob\:py-32 {
    padding-top: 8rem;
    padding-bottom: 8rem;
  }

  .mob\:py-4 {
    padding-top: 1rem;
    padding-bottom: 1rem;
  }

  .mob\:py-5 {
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
  }

  .mob\:py-6 {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
  }

  .mob\:py-7 {
    padding-top: 1.75rem;
    padding-bottom: 1.75rem;
  }

  .mob\:py-8 {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }

  .mob\:pb-0 {
    padding-bottom: 0px;
  }

  .mob\:pb-1 {
    padding-bottom: 0.25rem;
  }

  .mob\:pb-11 {
    padding-bottom: 2.75rem;
  }

  .mob\:pb-12 {
    padding-bottom: 3rem;
  }

  .mob\:pb-16 {
    padding-bottom: 4rem;
  }

  .mob\:pb-48 {
    padding-bottom: 12rem;
  }

  .mob\:pb-6 {
    padding-bottom: 1.5rem;
  }

  .mob\:pb-8 {
    padding-bottom: 2rem;
  }

  .mob\:pb-9 {
    padding-bottom: 2.25rem;
  }

  .mob\:pt-0 {
    padding-top: 0px;
  }

  .mob\:pt-1 {
    padding-top: 0.25rem;
  }

  .mob\:pt-10 {
    padding-top: 2.5rem;
  }

  .mob\:pt-16 {
    padding-top: 4rem;
  }

  .mob\:pt-4 {
    padding-top: 1rem;
  }

  .mob\:pt-5 {
    padding-top: 1.25rem;
  }

  .mob\:pt-6 {
    padding-top: 1.5rem;
  }

  .mob\:pt-7 {
    padding-top: 1.75rem;
  }

  .mob\:pt-8 {
    padding-top: 2rem;
  }

  .mob\:text-center {
    text-align: center;
  }

  .mob\:first-of-type\:mb-4:first-of-type {
    margin-bottom: 1rem;
  }
}