/*-- -------------------------- -->
<---          Banner            -->
<--- -------------------------- -*/

/* Mobile - 360px */
@media only screen and (min-width: 0rem) {
  #banner-1403 {
      padding: var(--sectionPadding);
      /* 190px - 268px */
      padding-top: clamp(11.875rem, 25vw, 16.75rem);
      padding-bottom: 6.25rem;
      /* clips the line from causing overflow issues for going off screen */
      overflow: hidden;
      position: relative;
      z-index: 1;
  }
  #banner-1403 .cs-container {
      text-align: center;
      width: 100%;
      max-width: 80rem;
      margin: auto;
      display: flex;
      justify-content: center;
      align-items: flex-start;
      flex-direction: column;
      /* 8px - 12px */
      gap: clamp(0.5rem, 1vw, 0.75rem);
  }
  #banner-1403 .cs-int-title {
      /* 39px - 61px */
      font-size: clamp(2.4375rem, 6.4vw, 3.8125rem);
      font-weight: 900;
      line-height: 1.2em;
      text-align: inherit;
      margin: 0;
      color: var(--bodyTextColorWhite);
      position: relative;
  }
  #banner-1403 .cs-breadcrumbs {
      display: flex;
      justify-content: center;
      align-items: center;
  }
  #banner-1403 .cs-link {
      font-size: 1rem;
      line-height: 1.2em;
      text-decoration: none;
      color: var(--bodyTextColorWhite);
      position: relative;
      display: flex;
      justify-content: center;
      align-items: center;
  }
  #banner-1403 .cs-link:last-of-type {
      /* remove the chevron on the last list item */
  }
  #banner-1403 .cs-link:last-of-type::after {
      display: none;
  }
  #banner-1403 .cs-link:after {
      /* chevron */
      content: "";
      width: 0.4375rem;
      height: 0.75rem;
      margin: 0 1rem;
      background: url("https://csimg.nyc3.cdn.digitaloceanspaces.com/Icons/white-chev.svg");
      background-size: contain;
      background-position: center;
      background-repeat: no-repeat;
      position: relative;
      display: block;
  }
  #banner-1403 .cs-link.cs-active {
      color: var(--primary);
  }
  #banner-1403 .cs-background {
      width: 100%;
      height: 100%;
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      z-index: -1;
  }
  #banner-1403 .cs-background:before {
      /* gradient overlay */
      content: "";
      width: 100%;
      height: 100%;
      background: #000;
      opacity: 0.4;
      position: absolute;
      display: block;
      top: 0;
      left: 0;
      z-index: 1;
  }
  #banner-1403 .cs-background:after {
      /* gradient overlay */
      content: "";
      width: 100%;
      height: 40%;
      background: -webkit-gradient(
          linear,
          left top,
          left bottom,
          from(#000000),
          to(rgba(0, 0, 0, 0))
      );
      background: -o-linear-gradient(top, #000000 0%, rgba(0, 0, 0, 0) 100%);
      background: linear-gradient(
          to bottom,
          #000000 0%,
          rgba(0, 0, 0, 0) 100%
      );
      position: absolute;
      display: block;
      top: 0;
      left: 0;
      z-index: 2;
  }
  #banner-1403 .cs-background img {
      position: absolute;
      top: 0;
      left: 0;
      height: 100%;
      width: 100%;
      /* Makes img tag act as a background image */
      object-fit: cover;
  }
}
/* Tablet - 768px */
@media only screen and (min-width: 48rem) {
  #banner-1403 .cs-background:before {
      width: 50%;
      height: 100%;
      background: -webkit-gradient(
          linear,
          left top,
          right top,
          from(#000000),
          to(rgba(0, 0, 0, 0))
      );
      background: -o-linear-gradient(left, #000000 0%, rgba(0, 0, 0, 0) 100%);
      background: linear-gradient(
          to right,
          #000000 0%,
          rgba(0, 0, 0, 0) 100%
      );
      opacity: 1;
  }
}


                              
/*-- -------------------------- -->
<---       Side By Side         -->
<--- -------------------------- -*/

/* Mobile - 360px */
@media only screen and (min-width: 0rem) {
    #sbs-1125 {
        padding: var(--sectionPadding);
        position: relative;
        z-index: 1;
    }
    #sbs-1125 .cs-container {
        width: 100%;
        /* changes to 1280px at desktop */
        max-width: 34.375rem;
        margin: auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 3em;
    }
    #sbs-1125 .cs-content {
        /* set text align to left if content needs to be left aligned */
        text-align: left;
        width: 100%;
        max-width: 32.625rem;
        display: flex;
        flex-direction: column;
        /* centers content horizontally, set to flex-start to left align */
        align-items: flex-start;
    }

    #sbs-1125 .cs-topper {
        color: #767676;
    }
    #sbs-1125 .cs-text {
        margin-bottom: 1rem;
    }
    #sbs-1125 .cs-text:last-of-type {
        margin-bottom: 2rem;
    }
    #sbs-1125 .cs-ul {
        width: 100%;
        margin: 0 0 2rem 0;
        padding-left: 1.25rem;
        /* prevents padding from affecting width and height */
        box-sizing: border-box;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 0.5rem;
    }
    #sbs-1125 .cs-li {
        font-size: var(--bodyFontSize);
        line-height: 1.5em;
        list-style: none;
        text-align: left;
        width: 100%;
        max-width: 25rem;
        margin: 0;
        color: var(--bodyTextColor);
        position: relative;
    }
    #sbs-1125 .cs-li:before {
        /* bullet */
        content: "";
        width: 4px;
        height: 4px;
        border-radius: 50%;
        background: currentColor;
        opacity: 1;
        position: absolute;
        display: block;
        top: 0.625rem;
        left: -0.9375rem;
    }
    #sbs-1125 .cs-button-solid {
        font-size: 1rem;
        /* 46px - 56px */
        line-height: clamp(2.875rem, 5.5vw, 3.5rem);
        text-decoration: none;
        font-weight: 700;
        text-align: center;
        margin: 0;
        color: #fff;
        min-width: 12.5rem;
        padding: 0 1.5rem;
        background-color: var(--primary);
        border-radius: 0.5rem;
        display: inline-block;
        position: relative;
        z-index: 1;
        /* prevents padding from adding to the width */
        box-sizing: border-box;
    }
    #sbs-1125 .cs-button-solid:before {
        content: "";
        position: absolute;
        height: 100%;
        width: 0%;
        background: #000;
        opacity: 1;
        top: 0;
        left: 0;
        z-index: -1;
        border-radius: 0.5rem;
        transition: width 0.3s;
    }
    #sbs-1125 .cs-button-solid:hover:before {
        width: 100%;
    }
    #sbs-1125 .cs-image-group {
        /* scaling entire section down. font-size starts at a min in vw, and stops when that value reaches 1em (16px). Since we want the picture elements to base their font size on the parent and not the root, we use ems for this entire section  */
        font-size: min(1.9vw, 0.64em);
        width: 41.0625em;
        height: 42.25em;
        /* offset the amount the cs-graphic overflows the container so it stays centerd on mobile and tablet, removed at desktop */
        margin-left: 6.75em;
        position: relative;
        z-index: 1;
    }
    #sbs-1125 .cs-picture {
        width: 41.0625em;
        height: 42.25em;
        overflow: hidden;
        border-radius: 50%;
        display: block;
        position: absolute;
        top: 0;
        right: 0;
    }
    #sbs-1125 .cs-picture img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        position: absolute;
        top: 0;
        left: 0;
    }
    #sbs-1125 .cs-graphic {
        width: 40.0625em;
        height: auto;
        position: absolute;
        left: -6.75em;
        top: 0;
        z-index: -1;
    }
}
/* Desktop - 1024px */
@media only screen and (min-width: 64rem) {
    #sbs-1125 .cs-container {
        max-width: 80rem;
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
    }
    #sbs-1125 .cs-image-group {
        /* reset the scale */
        font-size: min(1.2vw, 1em);
        margin: 0;
    }
    #sbs-1125 .cs-content {
        width: 45%;
        /* prevent flexbox from squishing it */
        flex: none;
    }
}

/*-- -------------------------- -->
<---          Banner            -->
<--- -------------------------- -*/

/* Mobile - 360px */
@media only screen and (min-width: 0rem) {
    #banner-1534 {
        padding: var(--sectionPadding);
        /* 190px - 268px */
        padding-top: clamp(11.875rem, 25vw, 16.75rem);
        /* 100px - 150px */
        padding-bottom: clamp(6.25rem, 12vw, 9.375rem);
        /* clips the line from causing overflow issues for going off screen */
        overflow: hidden;
        position: relative;
        z-index: 1;
    }

    #banner-1534 .cs-container {
        text-align: center;
        width: 100%;
        max-width: 80rem;
        margin: auto;
        display: flex;
        justify-content: center;
        align-items: flex-start;
        flex-direction: column;
        /* 8px - 12px */
        gap: clamp(0.5rem, 1vw, 0.75rem);
    }

    #banner-1534 .cs-int-title {
        /* 39px - 61px */
        font-size: clamp(2.4375rem, 6.4vw, 3.8125rem);
        font-weight: 900;
        line-height: 1.2em;
        text-align: inherit;
        margin: 0;
        color: var(--headercolor);
        position: relative;
        display: none;
    }

    #banner-1534 .cs-breadcrumbs {
        display: flex;
        justify-content: center;
        align-items: center;
    }

    #banner-1534 .cs-link {
        font-size: 1rem;
        line-height: 1.2em;
        text-decoration: none;
        color: var(--bodyTextColor);
        position: relative;
        display: none;
        justify-content: center;
        align-items: center;
    }

    #banner-1534 .cs-link:last-of-type {
        /* remove the chevron on the last list item */
    }

    #banner-1534 .cs-link:last-of-type::after {
        display: none;
    }

    #banner-1534 .cs-link:after {
        /* chevron */
        content: '';
        width: 0.4375rem;
        height: 0.75rem;
        margin: 0 1rem;
        background: url("https://csimg.nyc3.cdn.digitaloceanspaces.com/Images/Icons/grey-chevron.svg");
        background-size: contain;
        background-position: center;
        background-repeat: no-repeat;
        position: relative;
        display: block;
    }

    #banner-1534 .cs-link.cs-active {
        color: var(--primary);
    }

    #banner-1534 .cs-background {
        width: 100%;
        height: 100%;
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        z-index: -1;
    }

    #banner-1534 .cs-background:before {
        /* gradient overlay */
        content: '';
        width: 100%;
        height: 100%;
        background: rgba(58, 163, 46, 0.3);
        opacity: .8;
        position: absolute;
        display: block;
        top: 0;
        left: 0;
        z-index: 1;
    }

    #banner-1534 .cs-background img {
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
        width: 100%;
        /* Makes img tag act as a background image */
        object-fit: cover;
    }

    #banner-1534 .cs-mask {
        --maskBG: #ffffff;
        width: 100%;
        height: auto;
        display: block;
        position: absolute;
        bottom: -1px;
        left: 0;
        z-index: 100;
    }
}

/* Tablet - 768px */
@media only screen and (min-width: 48rem) {
    #banner-1534 .cs-background:before {
        width: 100%;
        height: 100%;
        background: linear-gradient(90deg, rgba(58, 163, 46, 0.3) 23.05%, rgba(255, 243, 236, 0) 80.08%);
        opacity: 1;
    }

    #banner-1534 .cs-int-title {
        display: block;
    }

    #banner-1534 .cs-link {
        display: flex;
    }
}                          