/*-- -------------------------- -->
<---          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;
    flex-direction: column;
    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;
    font-family: "Cormorant Garamond", Arial, sans-serif;
    line-height: 1.2em;
    text-align: left;
    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(--accent);
  }
  #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(rgb(0, 0, 0)), to(rgba(0, 0, 0, 0)));
    background: -o-linear-gradient(top, rgb(0, 0, 0) 0%, rgba(0, 0, 0, 0) 100%);
    background: linear-gradient(to bottom, rgb(0, 0, 0) 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(rgb(0, 0, 0)), to(rgba(0, 0, 0, 0)));
    background: -o-linear-gradient(left, rgb(0, 0, 0) 0%, rgba(0, 0, 0, 0) 100%);
    background: linear-gradient(to right, rgb(0, 0, 0) 0%, rgba(0, 0, 0, 0) 100%);
    opacity: 1;
  }
}
/*-- -------------------------- -->
<---       Call To Action       -->
<--- -------------------------- -*/
/* Mobile */
@media only screen and (min-width: 0rem) {
  #cta-2443 {
    padding: var(--sectionPadding);
    background-color: var(--darkNeutral);
    position: relative;
    z-index: 1;
  }
  #cta-2443 .cs-container {
    width: 100%;
    max-width: 80rem;
    margin: auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    /* 40px - 48px */
    gap: clamp(2.5rem, 5vw, 3rem);
  }
  #cta-2443 .cs-content {
    /* set text align to left if content needs to be left aligned */
    text-align: left;
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 2rem;
  }
  #cta-2443 .cs-title {
    font-size: clamp(2.5rem, 8vw, 4.5rem);
    margin-bottom: 0 0 0.75rem 0;
    color: var(--bodyTextColorWhite);
    flex: 1;
    max-width: 100%;
  }
  #cta-2443 .cs-text {
    margin-bottom: 1rem;
    color: var(--bodyTextColorWhite);
    opacity: 0.8;
  }
  #cta-2443 .cs-text:last-of-type {
    margin-bottom: 2rem;
  }
}
/* Tablet - 768px */
@media only screen and (min-width: 48rem) {
  #cta-2443 .cs-content {
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-end;
  }
  #cta-2443 .cs-flex {
    max-width: 23.25rem;
  }
}
/*-- -------------------------- -->
<---       Side By Side         -->
<--- -------------------------- -*/
/* Mobile - 360px */
@media only screen and (min-width: 0rem) {
  #sbs-1099 {
    padding: var(--sectionPadding);
    background-color: var(--primary);
  }
  #sbs-1099 .cs-container {
    width: 100%;
    /* changes to 1280px at desktop */
    max-width: 34.375rem;
    margin: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    /* 48px - 64px */
    gap: clamp(3rem, 6vw, 4rem);
  }
  #sbs-1099 .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-1099 .cs-text {
    margin-bottom: 1rem;
  }
  #sbs-1099 .cs-text:last-of-type {
    margin-bottom: 2rem;
  }
  #sbs-1099 .cs-ul {
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 1.5rem;
  }
  #sbs-1099 .cs-li {
    list-style: none;
    padding: 0;
    margin: 0;
  }
  #sbs-1099 .cs-h3 {
    /* 20px - 25px */
    font-size: 1.25rem, 3vw, 1.5625rem;
    line-height: 1.2em;
    font-weight: 700;
    margin: 0 0 0.75rem;
  }
  #sbs-1099 .cs-li-text {
    font-size: var(--bodyFontSize);
    line-height: 1.6em;
    text-align: inherit;
    width: 100%;
    max-width: 39.375rem;
    margin: 0;
    color: var(--bodyTextColor);
  }
  #sbs-1099 .cs-image-group {
    /* scales the whole group based on the view width size and stop when that vales equals .8em, resets at desktop */
    font-size: min(2.235vw, 0.8em);
    width: 40.5em;
    height: 37.125em;
    display: block;
    position: relative;
    z-index: 1;
  }
  #sbs-1099 .cs-picture {
    position: absolute;
  }
  #sbs-1099 .cs-picture img {
    border-radius: var(--borderRadius);
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
  }
  #sbs-1099 .cs-picture1 {
    width: 20.1875em;
    height: 27.9375em;
    top: 0;
    left: 0;
    z-index: 10;
  }
  #sbs-1099 .cs-picture2 {
    width: 19.0625em;
    height: 27.5625em;
    bottom: 0;
    right: 0;
  }
  #sbs-1099 .cs-stripes {
    width: 34.25em;
    height: auto;
    display: block;
    position: absolute;
    top: 5em;
    right: 2.5em;
    z-index: -1;
  }
  #sbs-1099 .cs-graphic {
    width: 11.5em;
    height: auto;
    position: absolute;
    bottom: 5em;
    right: 13.875em;
    z-index: 10;
  }
}
/* Small Desktop - 1024px */
@media only screen and (min-width: 64rem) {
  #sbs-1099 .cs-container {
    max-width: 80em;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
  }
  #sbs-1099 .cs-image-group {
    font-size: min(1.2vw, 1em);
    flex: none;
  }
}
/*-- -------------------------- -->
<---          Services          -->
<--- -------------------------- -*/
/* Mobile - 360px */
@media only screen and (min-width: 0rem) {
  #services-1187 {
    padding: var(--sectionPadding);
    background-color: var(--primary);
  }
  #services-1187 .cs-container {
    max-width: 80rem;
    width: 100%;
    margin: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    /* 48px - 64px */
    gap: clamp(3rem, 6vw, 4rem);
  }
  #services-1187 .cs-content {
    width: 100%;
    display: flex;
    flex-direction: column;
    /* centers content horizontally, set to flex-start to left align */
    align-items: center;
    /* set text align to left if content needs to be left aligned */
    text-align: center;
  }
  #services-1187 .cs-card-group {
    /* changes to 1280px at desktop */
    max-width: 50rem;
    width: 100%;
    margin: 0;
    padding: 0;
    display: grid;
    justify-content: center;
    row-gap: 1rem;
  }
  #services-1187 .cs-item {
    list-style: none;
    max-width: 23rem;
    width: 100%;
    margin: 0;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: left;
  }
  #services-1187 .cs-picture {
    width: 5rem;
    height: 5rem;
    margin-bottom: 1.25rem;
    box-sizing: border-box;
    /* prevents border from affecting height and width */
    background-color: #f7f7f7;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    /* prevents flexbox from squishing it */
    flex: none;
    box-shadow: 0px 24px 54px rgba(87, 107, 147, 0.12);
  }
  #services-1187 .cs-icon {
    width: 1.875rem;
    height: auto;
    display: block;
  }
  #services-1187 .cs-h3 {
    font-size: 1.25rem;
    line-height: 1.6em;
    margin: 0;
    margin-bottom: 0.5rem;
    color: var(--headerColor);
    text-align: center;
  }
  #services-1187 .cs-item-text {
    /* 14px - 16px */
    font-size: clamp(0.875rem, 1.5vw, 1rem);
    line-height: 1.6em;
    margin: 0;
    color: var(--bodyTextColorWhite);
    text-align: center;
  }
}
/* Tablet - 768px */
@media only screen and (min-width: 48rem) {
  #services-1187 .cs-card-group {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    column-gap: 2.5rem;
    row-gap: 2.5rem;
  }
  #services-1187 .cs-item {
    margin: 0;
    width: 46%;
    align-items: flex-start;
  }
  #services-1187 .cs-h3,
  #services-1187 .cs-item-text {
    text-align: left;
  }
}
/* Large Desktop - 1300px */
@media only screen and (min-width: 81.25rem) {
  #services-1187 .cs-card-group {
    max-width: 80rem;
  }
  #services-1187 .cs-item {
    flex-direction: row;
  }
  #services-1187 .cs-picture {
    margin: 0;
    margin-right: 1.25rem;
  }
}
/*-- -------------------------- -->
<---          Services          -->
<--- -------------------------- -*/
/* Mobile - 360px */
@media only screen and (min-width: 0rem) {
  #services-25 {
    /* Centers the button */
    text-align: center;
    padding: var(--sectionPadding);
    background: var(--darkNeutral);
  }
  #services-25 .cs-container {
    width: 100%;
    max-width: 80rem;
    margin: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    /* 48px - 64px */
    gap: clamp(3rem, 6vw, 4rem);
  }
  #services-25 .cs-content {
    /* set text align to left if content needs to be left aligned */
    text-align: center;
    width: 100%;
    display: flex;
    flex-direction: column;
    /* centers content horizontally, set to flex-start to left align */
    align-items: center;
  }
  #services-25 .cs-card-group {
    width: 100%;
    max-width: 34.375rem;
    margin: 0;
    padding: 0;
    border: 1px solid #b4b2c7;
    border-bottom: 0;
    border-radius: var(--borderRadius);
  }
  #services-25 .cs-item {
    /* 32px - 40px */
    padding: clamp(2rem, 5vw, 2.5rem) 0;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-direction: column;
    width: 100%;
    margin: auto;
    list-style: none;
    border-bottom: 1px solid #b4b2c7;
    transition: background-color 0.3s;
    box-shadow: 0px 24px 54px rgba(87, 107, 147, 0.12);
  }
  #services-25 .cs-item:first-child {
    border-top-left-radius: var(--borderRadius);
    border-top-right-radius: var(--borderRadius);
  }
  #services-25 .cs-item:last-child {
    border-bottom-left-radius: var(--borderRadius);
    border-bottom-right-radius: var(--borderRadius);
  }
  #services-25 .cs-icon {
    margin-bottom: 1.125rem;
    width: 5rem;
    height: auto;
  }
  #services-25 .cs-hover {
    display: none;
  }
  #services-25 .cs-h3 {
    /* 16px - 20px */
    font-size: clamp(1rem, 1.7vw, 1.25rem);
    line-height: 1.2em;
    font-weight: 700;
    text-align: center;
    margin: 0;
    color: var(--bodyTextColorWhite);
    transition: color 0.3s;
  }
}
/* In Between - 500px */
@media only screen and (min-width: 31.25rem) {
  #services-25 .cs-card-group {
    display: flex;
    justify-content: center;
    /* makes the items have the same height */
    align-items: stretch;
    flex-wrap: wrap;
    border: none;
  }
  #services-25 .cs-item {
    width: 50%;
    max-width: 18.4375rem;
    margin: 0;
    border-bottom: none;
    /* Makes borders not affect widths */
    box-sizing: border-box;
  }
  #services-25 .cs-item:nth-of-type(1) {
    border: 1px solid #b4b2c7;
    border-right: 0;
    border-top-left-radius: var(--borderRadius);
    border-top-right-radius: 0;
    border-bottom-left-radius: var(--borderRadius);
    border-bottom-right-radius: 0;
  }
  #services-25 .cs-item:nth-of-type(2) {
    border: 1px solid #b4b2c7;
    border-top-left-radius: 0;
    border-top-right-radius: var(--borderRadius);
    border-bottom-left-radius: 0;
    border-bottom-right-radius: var(--borderRadius);
  }
  #services-25 .cs-item:nth-of-type(3) {
    width: 100%;
    border: 1px solid #b4b2c7;
    border-top: 0;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border-bottom-left-radius: var(--borderRadius);
    border-bottom-right-radius: var(--borderRadius);
  }
}
/* Tablet - 768px */
@media only screen and (min-width: 48rem) {
  #services-25 .cs-card-group {
    max-width: 100%;
    border: none;
  }
  #services-25 .cs-item {
    height: 13.125rem;
    width: 33%;
  }
  #services-25 .cs-item:nth-of-type(1) {
    border: none;
    border: 1px solid #b4b2c7;
    border-top-left-radius: var(--borderRadius);
    border-bottom-left-radius: var(--borderRadius);
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
  }
  #services-25 .cs-item:nth-of-type(2) {
    border: none;
    border-top: 1px solid #b4b2c7;
    border-bottom: 1px solid #b4b2c7;
    border-right: 1px solid #b4b2c7;
    border-radius: 0;
  }
  #services-25 .cs-item:nth-of-type(3) {
    border: none;
    border-top: 1px solid #b4b2c7;
    border-right: 1px solid #b4b2c7;
    border-bottom: 1px solid #b4b2c7;
    width: 33%;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    border-top-right-radius: var(--borderRadius);
    border-bottom-right-radius: var(--borderRadius);
  }
  #services-25 .cs-item:nth-of-type(4) {
    border: 1px solid #b4b2c7;
  }
  #services-25 .cs-link {
    padding: 2.25rem 0;
  }
  #services-25 .cs-icon {
    margin-bottom: 1.75rem;
  }
}
/*-- -------------------------- -->
<---         Services           -->
<--- -------------------------- -*/
/* Mobile */
@media only screen and (min-width: 0rem) {
  #cs-content-1656 {
    /* set text align to left if content needs to be left aligned */
    text-align: left;
    width: 100%;
    max-width: 80rem;
    display: flex;
    flex-direction: column;
    /* centers content horizontally, set to flex-start to left align */
    align-items: flex-start;
  }
  #cs-content-1656 .cs-title {
    max-width: 25ch;
  }
  #cs-content-1656 .cs-text {
    max-width: 40rem;
    position: relative;
    z-index: 1;
  }
  #cs-content-1656 .cs-highlight {
    margin-bottom: 1rem;
  }
  #services-2387 {
    padding: var(--sectionPadding);
    background-color: var(--darkNeutral);
  }
  #services-2387 .cs-container {
    width: 100%;
    max-width: 80rem;
    margin: auto;
    /* 24px - 64px top & bottom */
    /* 16px - 64px left & right */
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    /* 40px - 48px */
    gap: clamp(2.5rem, 5vw, 3rem);
  }
  #services-2387 .cs-content {
    /* set text align to left if content needs to be left aligned */
    text-align: center;
    width: 100%;
    max-width: 66.25rem;
    display: flex;
    flex-direction: column;
    /* centers content horizontally, set to flex-start to left align */
    align-items: center;
  }
  #services-2387 .cs-card-group {
    padding: 0;
    margin: 0;
    width: 100%;
    display: flex;
    flex-direction: column;
    /* 16px - 20px */
    gap: clamp(1rem, 2.3vw, 1.25rem);
  }
  #services-2387 .cs-item {
    text-align: left;
    list-style: none;
    /* 24px - 32px top & bottom */
    /* 16px - 32px left & right */
    padding: clamp(1.5rem, 3vw, 2rem) clamp(1rem, 3vw, 2rem);
    background-color: #fbf9f5;
    border-radius: var(--borderRadius);
    display: flex;
    grid-column: span 12;
    flex-direction: column;
    align-items: flex-start;
  }
  #services-2387 .cs-h3 {
    /* 20px - 25px */
    font-size: clamp(1.5rem, 4vw, 2rem);
    line-height: 1.2em;
    font-weight: 700;
    color: var(--primary);
    width: 100%;
    padding-bottom: clamp(0.6rem, 2vw, 1.2rem);
    margin-bottom: clamp(0.6rem, 2vw, 1.2rem);
    border-bottom: 1px solid #d2d8df;
  }
  #services-2387 .cs-item-text {
    font-size: var(--bodyFontSize);
    line-height: 1.6em;
    margin: 0 0 1rem;
    color: var(--bodyTextColor);
  }
  #services-2387 .cs-feature-wrapper {
    margin-bottom: 2rem;
  }
  #services-2387 .cs-li-feature {
    /* 14px - 16px */
    font-size: clamp(0.875rem, 1.5vw, 1rem);
    list-style: none;
    line-height: 1.6em;
    width: 100%;
    margin: 0;
    padding: 0;
    color: var(--bodyTextColor);
    display: flex;
    align-items: center;
    gap: 1rem;
  }
  #services-2387 .cs-popular {
    background-color: var(--secondaryDefault);
    border-radius: calc(var(--borderRadius) * 3);
    padding: 0.25rem 0.75rem;
    font-size: calc(var(--bodyFontSize) * 0.7);
    color: var(--bodyTextColorWhite);
    font-family: Raleway, Arial, sans-serif;
  }
}
/* Tablet - 768px */
@media only screen and (min-width: 48rem) {
  #cs-content-1656 {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
  }
  #cs-content-1656 .cs-flex {
    text-align: left;
    width: 40vw;
    max-width: 40rem;
    flex: none;
  }
  #cs-content-1656 .cs-title {
    margin: 0;
  }
  #services-2387 .cs-item {
    grid-column: span 6;
  }
  #services-2387 .cs-item:nth-of-type(3) {
    grid-column: 1/-1;
    max-width: 100%;
  }
  #services-2387 .cs-break {
    display: none;
  }
  #services-2387 .cs-popular {
    position: relative;
    bottom: 6px;
  }
  #services-2387 .cs-highlight,
  #services-2387 .cs-text {
    padding-left: 0.75rem;
  }
}
/*-- -------------------------- -->
<---          Services          -->
<--- -------------------------- -*/
/* Mobile - 360px */
@media only screen and (min-width: 0rem) {
  #services-1684 {
    padding: var(--sectionPadding);
    background-color: var(--darkNeutral);
  }
  #services-1684 .cs-container {
    width: 100%;
    /* changes to 1280px at desktop */
    max-width: 36.5rem;
    margin: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    /* 48px - 64px */
    gap: clamp(3rem, 6vw, 4rem);
  }
  #services-1684 .cs-content {
    /* set text align to center if content needs to be centrally aligned */
    text-align: left;
    width: 100%;
    display: flex;
    flex-direction: column;
    /* left aligns the content, center the content by using 'center' */
    align-items: flex-start;
  }
  #services-1684 .cs-text {
    max-width: none;
  }
  #services-1684 .cs-card-group {
    width: 100%;
    margin: 0 auto;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-auto-flow: row;
    gap: 1.75rem;
  }
  #services-1684 .cs-item {
    list-style: none;
    width: 100%;
    margin: 0 auto;
    /* prevents padding and border from affecting height and width */
    box-sizing: border-box;
    padding-bottom: 1.75rem;
    border-bottom: 1px solid var(--secondaryDefault);
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    grid-column: span 12;
    grid-row: span 1;
    position: relative;
    z-index: 1;
    transition: box-shadow 0.3s, border-color 0.3s;
    color: var(--bodyTextColorWhite);
  }
  #services-1684 .cs-item:last-of-type {
    padding-bottom: 0;
    border-bottom: none;
  }
  #services-1684 .cs-h3 {
    /* 20px - 31px */
    font-size: clamp(1.25rem, 2vw, 1.9375rem);
    font-weight: bold;
    line-height: 1.2em;
    text-align: inherit;
    margin: 0 0 1rem;
    color: var(--secondary);
  }
  #services-1684 .cs-item-text {
    /* 14px - 16px */
    font-size: clamp(0.875rem, 1.5vw, 1rem);
    line-height: 1.6em;
    margin: 0 0 1.5rem 0;
    padding: 0;
    color: var(--bodyTextColorWhite);
  }
  #services-1684 .cs-link {
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.2em;
    text-align: inherit;
    text-decoration: none;
    margin-top: auto;
    color: var(--primary);
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 0.625rem;
    transition: color 0.3s;
  }
  #services-1684 .cs-link-text {
    width: fit-content;
  }
  #services-1684 .cs-arrow {
    width: 1.25rem;
    height: auto;
    display: block;
    transition: filter 0.3s, transform 0.3s;
  }
}
/* Tablet - 768px */
@media only screen and (min-width: 48rem) {
  #services-1684 .cs-container {
    max-width: 80rem;
  }
  #services-1684 .cs-card-group {
    /* 20px - 32px */
    gap: clamp(1.25rem, 3vw, 2rem);
  }
  #services-1684 .cs-item {
    padding: 0;
    /* 20px - 32px */
    padding-left: clamp(1.25rem, 3vw, 2rem);
    border: none;
    border-left: 1px solid var(--secondaryDefault);
    grid-column: span 4;
  }
  #services-1684 .cs-text {
    max-width: 700px;
  }
}
/*-- -------------------------- -->
<---       Side By Side         -->
<--- -------------------------- -*/
/* Mobile - 360px */
@media only screen and (min-width: 0rem) {
  #sbs-1006 {
    padding: var(--sectionPadding);
    background: var(--primary);
  }
  #sbs-1006 .cs-container {
    width: 100%;
    /* changes to 1280px at desktop */
    max-width: 50rem;
    margin: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    /* 48px - 64px */
    gap: clamp(3rem, 6vw, 4rem);
  }
  #sbs-1006 .cs-content {
    /* set text align to left if content needs to be left aligned */
    text-align: left;
    width: 100%;
    /* changes to 522px at desktop */
    max-width: 36.125rem;
    margin-top: -1rem;
    display: flex;
    flex-direction: column;
    /* centers content horizontally, set to flex-start to left align */
    align-items: flex-start;
    order: 1;
  }
  #sbs-1006 .cs-text {
    margin-bottom: 1rem;
  }
  #sbs-1006 .cs-text:last-of-type {
    margin-bottom: 2rem;
  }
  #sbs-1006 .cs-spacer {
    width: 100%;
    /* 16px - 24px */
    height: clamp(1rem, 3vw, 1.5rem);
    display: block;
  }
  #sbs-1006 .cs-image-group {
    width: 100%;
    order: 2;
  }
  #sbs-1006 .cs-picture {
    width: 100%;
    height: 15rem;
    border-radius: var(--borderRadius);
    overflow: hidden;
    display: block;
    position: relative;
  }
  #sbs-1006 .cs-picture img {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    /* makes it behave like a background image */
    object-fit: cover;
  }
  #sbs-1006 .cs-feature-wrapper {
    margin-bottom: 2rem;
  }
  #sbs-1006 .cs-li-feature {
    /* 14px - 16px */
    font-size: clamp(0.875rem, 1.5vw, 1rem);
    list-style: none;
    line-height: 1.6em;
    width: 100%;
    margin: 0;
    padding: 0;
    color: var(--bodyTextColorWhite);
    display: flex;
    align-items: center;
    gap: 1rem;
  }
}
/* Tablet - 768px */
@media only screen and (min-width: 48rem) {
  #sbs-1006 .cs-container {
    align-items: flex-start;
  }
  #sbs-1006 .cs-flex-group {
    flex-direction: row;
  }
  #sbs-1006 .cs-spacer {
    display: none;
  }
}
/* Small Desktop - 1024px */
@media only screen and (min-width: 64rem) {
  #sbs-1006 .cs-container {
    max-width: 80rem;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    /* 100px - 200px */
    gap: clamp(6.25rem, 13vw, 12.5rem);
  }
  #sbs-1006 .cs-image-group {
    max-width: 33.875rem;
    display: flex;
    justify-content: flex-end;
    position: relative;
    order: 0;
  }
  #sbs-1006 .cs-picture {
    height: 28.75rem;
    aspect-ratio: initial;
  }
  #sbs-1006 .cs-content {
    flex: none;
    width: 54%;
    max-width: 33.875rem;
  }
}
/*-- -------------------------- -->
<---          Pricing           -->
<--- -------------------------- -*/
/* Mobile - 360px */
@media only screen and (min-width: 0rem) {
  #pricing-1260 {
    padding: var(--sectionPadding);
    /* clips svg graphic from overflowing the section */
    overflow: hidden;
    position: relative;
    z-index: 1;
    background-color: var(--primary);
  }
  #pricing-1260 .cs-container {
    width: 100%;
    /* changes to 1280px at desktop */
    max-width: 34.375em;
    margin: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    /* 48px - 64px, changes to 20px at large desktop */
    gap: clamp(3rem, 6vw, 4rem);
    position: relative;
  }
  #pricing-1260 .cs-content {
    /* set text align to left if content needs to be left aligned */
    text-align: left;
    width: 100%;
    max-width: 40.1875rem;
    margin-right: auto;
    display: flex;
    flex-direction: column;
    /* centers content horizontally, set to flex-start to left align */
    align-items: flex-start;
  }
  #pricing-1260 .cs-text {
    margin-bottom: 1rem;
  }
  #pricing-1260 .cs-text:last-of-type {
    margin-bottom: 2rem;
  }
  #pricing-1260 .cs-card-group {
    width: 100%;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    /* prevents flexbox from squishing it */
    flex: none;
  }
  #pricing-1260 .cs-item {
    text-align: left;
    list-style: none;
    width: 100%;
    margin: 0;
    padding: 1.5rem 1.5rem;
    background-color: #fff;
    border: 1px solid #dad9e3;
    border-radius: var(--borderRadius);
    /* prevents padding and border from affecting height and width */
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    position: relative;
    z-index: 1;
  }
  #pricing-1260 .cs-package {
    font-size: 1.875rem;
    font-family: "Cormorant Garamond", Arial, sans-serif;
    line-height: 1.2em;
    text-align: inherit;
    font-weight: 700;
    margin: 0 0 0.5rem 0;
    color: var(--primary);
    display: block;
  }
  #pricing-1260 .cs-extra-info {
    display: flex;
    margin-bottom: 1.5rem;
  }
  #pricing-1260 .cs-single-info {
    display: flex;
    align-items: center;
    font-size: clamp(0.875rem, 1.5vw, 1rem);
    margin-right: 1rem;
  }
  #pricing-1260 .cs-single-info img {
    margin-right: 0.625rem;
    height: 24px;
  }
  #pricing-1260 .cs-duration {
    font-size: 0.875rem;
    line-height: 1.6em;
    font-weight: 400;
    margin: 0;
    color: var(--headerColor);
  }
  #pricing-1260 .cs-item-text {
    /* 14px - 16px */
    font-size: clamp(0.875rem, 1.5vw, 1rem);
    line-height: 1.6em;
    text-align: inherit;
    margin: 0 0 1rem;
    color: var(--bodyTextColor);
  }
  #pricing-1260 .cs-ul {
    margin: 0 0 2rem;
    padding: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.5rem;
  }
  #pricing-1260 .cs-li {
    /* 14px - 16px */
    font-size: clamp(0.875rem, 1.5vw, 1rem);
    list-style: none;
    line-height: 1.6em;
    width: 100%;
    margin: 0;
    padding: 0;
    color: var(--bodyTextColor);
    display: flex;
    justify-content: flex-start;
    /* push everything to the top so if the li goes to two lines the icon stays at the top */
    align-items: flex-start;
    gap: 0.5rem;
  }
  #pricing-1260 .cs-li.cs-disabled {
    opacity: 0.5;
  }
  #pricing-1260 .cs-li.cs-disabled .cs-icon {
    filter: grayscale(1) brightness(300%);
  }
  #pricing-1260 .cs-icon {
    width: 1.125rem;
    height: auto;
    display: block;
  }
  #pricing-1260 .button-solid {
    width: 100%;
  }
  #pricing-1260 .cs-feature-wrapper {
    margin-bottom: 2rem;
  }
  #pricing-1260 .cs-li-feature,
  #pricing-1260 .cs-item-li-feature {
    /* 14px - 16px */
    font-size: clamp(0.875rem, 1.5vw, 1rem);
    list-style: none;
    line-height: 1.6em;
    width: 100%;
    margin: 0;
    padding: 0;
    color: var(--bodyTextColorWhite);
    display: flex;
    align-items: center;
    gap: 1rem;
  }
  #pricing-1260 .cs-item-li-feature {
    color: var(--bodyTextColor);
  }
}
/* Tablet - 768px */
@media only screen and (min-width: 48rem) {
  #pricing-1260 .cs-container {
    max-width: 80rem;
    /* remove the position so the svg waves wrapper can be positioned relative to the section container for tablet so it hugs the right edge of the screen. We set it back to relative at 1024px so it can then be positioned relative to the container again so it hugs the right edge of the container with the pricing cards */
    position: initial;
  }
  #pricing-1260 .cs-card-group {
    flex-direction: row;
    justify-content: center;
    align-items: stretch;
    flex-wrap: nowrap;
  }
  #pricing-1260 .cs-waves-wrapper {
    /* changes to 740px at large desktop */
    width: 55vw;
    height: 100%;
    left: auto;
    right: 0;
    bottom: auto;
    top: 0;
    transform: none;
  }
}
/* Desktop - 1024px */
@media only screen and (min-width: 64rem) {
  #pricing-1260 .cs-container {
    max-width: 80rem;
    position: relative;
    z-index: 1;
  }
  #pricing-1260 .cs-waves-wrapper {
    height: 140%;
    top: 50%;
    transform: translateY(-50%);
  }
}
/* Large Desktop - 1300px */
@media only screen and (min-width: 81.25rem) {
  #pricing-1260 .cs-container {
    flex-direction: row;
    justify-content: space-between;
    gap: 1.25rem;
  }
  #pricing-1260 .cs-card-group {
    width: 62%;
    max-width: 36.25rem;
  }
  #pricing-1260 .cs-waves-wrapper {
    max-width: 46.25rem;
    width: 100%;
  }
}
/*-- -------------------------- -->
<---          Reviews           -->
<--- -------------------------- -*/
/* Mobile - 360px */
@media only screen and (min-width: 0rem) {
  #reviews-1453 {
    padding: var(--sectionPadding);
    background-color: var(--darkNeutral);
  }
  #reviews-1453 .cs-container {
    width: 100%;
    max-width: 80rem;
    margin: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    /* 48px - 64px */
    gap: clamp(3rem, 6vw, 4rem);
    position: relative;
  }
  #reviews-1453 .cs-content {
    /* set text align to left if content needs to be left aligned */
    text-align: center;
    width: 100%;
    max-width: 33.875rem;
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  #reviews-1453 .cs-title {
    max-width: 20ch;
  }
  #reviews-1453 .cs-quote {
    /* 48px - 72px */
    width: clamp(3rem, 7vw, 4.5rem);
    height: auto;
    /* 28px - 48px */
    margin: 0 0 2rem 0;
  }
  #reviews-1453 .cs-card-group {
    padding: 0;
    margin: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    /* 16px - 20px */
    gap: clamp(1rem, 2.75vw, 1.25rem);
    max-width: 40.625rem;
  }
  #reviews-1453 .cs-item {
    list-style: none;
    width: 100%;
    margin: 0;
    /* 20px - 40px top & bottom */
    /* 20px - 40px left & right */
    padding: clamp(1.5rem, 3.15vw, 2rem);
    background-color: #f7f7f7;
    border-radius: var(--borderRadius);
    /* prevents padding from adding to height and width */
    box-sizing: border-box;
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    justify-content: center;
  }
  #reviews-1453 .cs-highlight-review {
    background-color: var(--secondaryDefault);
  }
  #reviews-1453 .cs-highlight-review .cs-review,
  #reviews-1453 .cs-highlight-review .cs-name {
    color: var(--bodyTextColorWhite);
  }
  #reviews-1453 .cs-review {
    /* 14px - 16px */
    font-size: clamp(0.875rem, 1.6vw, 1rem);
    line-height: 1.6em;
    margin: 0 0 1.75rem 0;
    color: var(--bodyTextColor);
  }
  #reviews-1453 .cs-flex-group {
    /* this margin top auto will push everything up and force the cs-flex-group to the bottom of the container. This is to account for review cards with different heights because of more or less text and makes the cards more responsive to changing text */
    margin-top: auto;
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
  }
  #reviews-1453 .cs-name {
    /* 20px - 25px */
    font-size: clamp(1.25rem, 2.3vw, 1.5625rem);
    line-height: 1.2em;
    font-weight: 700;
    margin: 0;
    /* in case one card has more text than the other, this pushes up against the review text so the name and title are always at the bottom. Only works if parent is a flexbox */
    margin-top: auto;
    color: var(--headerColor);
    display: block;
  }
  #reviews-1453 .cs-text,
  #reviews-1453 .cs-highlight {
    margin-bottom: 1.25rem;
  }
}
/* Small Desktop - 1024px */
@media only screen and (min-width: 64rem) {
  #reviews-1453 .cs-container {
    flex-direction: row;
  }
  #reviews-1453 .cs-content {
    text-align: left;
    width: 45%;
    align-items: flex-start;
    /* prevents flexbox from squishing it */
    flex: none;
  }
  #reviews-1453 .cs-card-group {
    width: 100%;
    order: -1;
  }
}
/* Large Desktop - 1300px */
@media only screen and (min-width: 81.25rem) {
  #reviews-1453 .cs-content {
    max-width: 32.625rem;
    align-items: flex-start;
    text-align: left;
  }
}
/*-- -------------------------- -->
<---            CTA             -->
<--- -------------------------- -*/
/* Mobile - 360px */
@media only screen and (min-width: 0rem) {
  #cta-51 {
    padding: var(--sectionPadding);
    position: relative;
    background-color: var(--darkNeutral);
  }
  #cta-51 .cs-container {
    width: 100%;
    max-width: 80rem;
    margin: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    /* 48px - 64px */
    gap: clamp(3rem, 6vw, 4rem);
  }
  #cta-51 .cs-content {
    /* set text align to left if content needs to be left aligned */
    text-align: center;
    width: 100%;
    display: flex;
    flex-direction: column;
    /* centers content horizontally, set to flex-start to left align */
    align-items: center;
  }
  #cta-51 .cs-title {
    color: var(--bodyTextColorWhite);
  }
  #cta-51 .cs-text {
    margin-bottom: 1rem;
    color: var(--bodyTextColorWhite);
    opacity: 0.8;
  }
  #cta-51 .cs-text:last-of-type {
    margin-bottom: 2rem;
  }
}

/*# sourceMappingURL=chakra-analysis.css.map */
