@charset "UTF-8";
/*
   Widget Tokens
   ========================================================================== */
:root {
  /* Widget backgrounds */
  --csds-widget-color-background-primary: var(--csds-color-white);
  --csds-widget-color-background-primary-hover: var(--csds-color-neutral-lightest);
  --csds-widget-color-background-secondary: var(--csds-color-neutral-lightest);
  --csds-widget-color-background-secondary-hover: var(--csds-color-neutral-light);
  --csds-widget-color-background-brand: var(--csds-color-brand-base);
  --csds-widget-color-background-brand-hover: var(--csds-color-brand-light);
  --csds-widget-color-background-accent: var(--csds-color-accent-base);
  --csds-widget-color-background-accent-hover: var(--csds-color-accent-light);
  /* Widget Elements */
  --csds-widget-color-border-lighter: var(--csds-color-neutral-lightest);
  --csds-widget-color-border-light: var(--csds-color-neutral-lighter);
  --csds-widget-color-border-dark: var(--csds-color-neutral-darkest);
  --csds-widget-color-border-brand: var(--csds-color-brand-base);
  --csds-widget-color-border-accent: var(--csds-color-accent-base);
  --csds-widget-color-border-white: var(--csds-color-white);
  --csds-widget-border-radius-base: var(--csds-border-radius-md);
  /* Semantic shadow tokens */
  --csds-widget-shadow-base: var(--csds-shadow-material-1);
  --csds-widget-shadow-hover: var(--csds-shadow-material-2);
  --csds-space-inline-gap: var(--csds-space-sm);
  --csds-space-block-gap: var(--csds-space-md);
  --csds-space-section-gap: var(--csds-space-xl);
  --csds-space-page-padding: var(--csds-space-lg);
  --csds-space-content-pad: var(--csds-space-md);
  --csds-space-form-gap: var(--csds-space-sm); }

/*
    Widget Mixins - Backgrounds
    ========================================================================== */
/*
    Widget Mixins - Text Styles
    ========================================================================== */
/*
    Widget Mixins - Border Styles
    ========================================================================== */
/*
    Widget Mixins - Card Styles
    ========================================================================== */
/*
    Widget Mixins - Hover Anchor Styles
    ========================================================================== */
/*
    Widget Misc Styles
    ========================================================================== */
.widget-wrapper {
  margin-bottom: 0;
  padding: 0;
  box-sizing: border-box; }
  .widget-wrapper ._title {
    color: var(--csds-color-text-dark);
    font-size: var(--csds-font-size-lg);
    font-weight: var(--csds-font-weight-bold);
    line-height: var(--csds-line-height-heading); }
  .widget-wrapper ._subtitle {
    color: var(--csds-color-brand-aa-base);
    font-size: var(--csds-font-size-md);
    font-weight: var(--csds-font-weight-semibold);
    letter-spacing: .5px;
    text-decoration: none; }
  .widget-wrapper ._description {
    font-size: var(--csds-font-size-base);
    font-weight: var(--csds-font-weight-regular);
    line-height: var(--csds-line-height-base);
    color: var(--csds-color-neutral-darker); }
  .widget-wrapper ._caption {
    font-size: var(--csds-font-size-sm);
    font-weight: var(--csds-font-weight-bold);
    line-height: var(--csds-line-height-caption);
    color: var(--csds-color-text-muted); }
  .widget-wrapper ._eyebrow {
    font-size: var(--csds-font-size-sm);
    font-weight: var(--csds-font-weight-semibold);
    line-height: var(--csds-line-height-base);
    color: var(--csds-color-neutral-light);
    letter-spacing: 0.05em; }
  .widget-wrapper ._label {
    font-size: var(--csds-font-size-xs);
    font-weight: var(--csds-font-weight-semibold);
    background-color: var(--csds-color-accent-base);
    color: var(--csds-color-text-white);
    width: fit-content;
    padding: var(--csds-space-3xs) var(--csds-space-2xs);
    border-radius: var(--csds-widget-border-radius-base); }
  .widget-wrapper ._meta {
    font-size: var(--csds-font-size-xs);
    color: var(--csds-color-accent-light); }
  .widget-wrapper .csds-hover-link {
    position: relative;
    display: inline-block;
    text-decoration: none; }
    .widget-wrapper .csds-hover-link::after {
      position: absolute;
      left: 0;
      content: '';
      width: 100%;
      height: 2px;
      background: currentColor;
      bottom: -4px;
      transform: scale(0, 1);
      transition: transform .3s;
      transform-origin: left top; }
    .widget-wrapper .csds-hover-link:hover::after {
      transform: scale(1, 1); }

/* No rogue bottom margins */
.widget-wrapper > *:not(:last-child) {
  margin-bottom: var(--csds-space-block-gap); }

.widget-wrapper {
  /* Banners */
  /* ==========================================================================
   Banner - Full Width - Centered
   ========================================================================== */
  /* ==========================================================================
   Banner - Full Width Breakout 50/50 Background Image
   ========================================================================== */
  /* ==========================================================================
    Banner - Simple Image Background and Title
   ========================================================================== */
  /* ==========================================================================
    Banner - Full Width with CTA and Features
   ========================================================================== */
  /* ==========================================================================
    Banner - Title and Sidebar CTA
   ========================================================================== */
  /* ==========================================================================
    Banner - Split Image Breakout
   ========================================================================== */
  /* ==========================================================================
    Banner - Large Block Image with Features
   ========================================================================== */
  /* ==========================================================================
    Banner - Wide with Headings and CTAs
   ========================================================================== */
  /* ==========================================================================
    Banner - Thin with Thumbnail, Text and CTA
   ========================================================================== */
  /* Data Display */
  /* Linked Image Text Columns */
  /* Circle Image with Hover List */
  /* 
  Component: Accordion Group
*/
  /*-- -------------------------- -->
<---           Steps            -->
<--- -------------------------- -*/
  /* Mobile - 360px */
  /* Tablet - 768px */
  /* The actual csds-timeline (the vertical ruler) */
  /* The actual csds-timeline (the vertical ruler) */
  /* csds-timeline-container around content */
  /* The circles on the csds-timeline */
  /* Place the csds-timeline-container to the left */
  /* Place the csds-timeline-container to the right */
  /* Add arrows to the left csds-timeline-container (pointing right) */
  /* Add arrows to the right csds-timeline-container (pointing left) */
  /* Fix the circle for csds-timeline-containers on the right side */
  /* The actual content */
  /* Media queries - Responsive csds-timeline on screens less than 600px wide */
  /* Misc */
  /* ==========================================================================
   Widget Classes
   ========================================================================== */
  /* ========================================================================== */
  /* ========================================================================== */
  /*-- -------------------------- -->
<---          Services          -->
<--- -------------------------- -*/
  /* Mobile - 360px */
  /* ========================================================================== */
  /* Mobile - 360px */
  /* In between - 500px */
  /* Tablet - 768px */
  /* Large Desktop - 1300px */
  /* ========================================================================== */
  /*-- -------------------------- -->
<---          Services          -->
<--- -------------------------- -*/
  /* Mobile - 360px */
  /* Tablet - 768px */
  /* Desktop - 1024px */
  /* ========================================================================== */
  /*-- -------------------------- -->
<---           Menu             -->
<--- -------------------------- -*/
  /* Mobile - 360px */
  /* Mobile - 359px */
  /* Tablet - 768px */
  /* ========================================================================== */
  /*-- -------------------------- -->
<---           Hero             -->
<--- -------------------------- -*/
  /* Mobile - 360px */
  /* Desktop - 1300px (To make image background parallax) */
  /*-- -------------------------- -->
<---         Services           -->
<--- -------------------------- -*/
  /* Mobile - 360px */
  /* Tablet - 768px */
  /* Desktop - 1300px */
  /* ========================================================================== */
  /*-- -------------------------- -->
<---           Footer           -->
<--- -------------------------- -*/
  /* Mobile - 360px - Contains hover state */
  /* Tablet - 700px */
  /* ========================================================================== */
  /*-- -------------------------- -->
<---           Stats            -->
<--- -------------------------- -*/
  /* Mobile - 360px */
  /* In-between - 500px */
  /* Tablet - 768px */
  /* Big Desktop Parallax Effect - 1300px */
  /* ========================================================================== */
  /*-- -------------------------- -->
<---          Reviews           -->
<--- -------------------------- -*/
  /* Mobile - 360px */
  /* Tablet - 768px */
  /* ========================================================================== */
  /* ==========================================================================
   Widget Classes
   ========================================================================== */
  /* ========================================================================== */ }
  .widget-wrapper .csds-banner {
    --csds-banner-accent-color: var(--csds-color-brand-base); }
    .widget-wrapper .csds-banner ._topper {
      color: var(--csds-color-brand-aa-base);
      font-size: var(--csds-font-size-md);
      font-weight: var(--csds-font-weight-semibold);
      letter-spacing: .5px;
      text-decoration: none;
      margin-bottom: var(--csds-space-xs); }
    .widget-wrapper .csds-banner ._title {
      color: var(--csds-color-text-dark);
      font-size: var(--csds-font-size-lg);
      font-weight: var(--csds-font-weight-bold);
      line-height: var(--csds-line-height-heading);
      color: var(--csds-color-white);
      margin-bottom: var(--csds-space-sm); }
  .widget-wrapper .csds-banner-full-width-centered-wrapper {
    padding: var(--csds-space-xl);
    position: relative; }
    .widget-wrapper .csds-banner-full-width-centered-wrapper ._topper {
      color: var(--csds-banner-accent-color); }
    .widget-wrapper .csds-banner-full-width-centered-wrapper ._container {
      width: 100%;
      margin: auto;
      display: flex;
      flex-direction: column;
      align-items: center; }
    .widget-wrapper .csds-banner-full-width-centered-wrapper ._content {
      text-align: center;
      width: 100%;
      display: flex;
      flex-direction: column;
      align-items: center; }
    .widget-wrapper .csds-banner-full-width-centered-wrapper ._text {
      margin-bottom: calc(16 / 16 * 1rem); }
      .widget-wrapper .csds-banner-full-width-centered-wrapper ._text:last-of-type {
        margin-bottom: calc(32 / 16 * 1rem); }
    .widget-wrapper .csds-banner-full-width-centered-wrapper ._picture {
      height: 100%;
      width: 100%;
      display: block;
      position: absolute;
      z-index: -1;
      top: 0;
      left: 0;
      z-index: -1; }
      .widget-wrapper .csds-banner-full-width-centered-wrapper ._picture:before {
        content: "";
        position: absolute;
        display: block;
        height: 100%;
        width: 100%;
        background: var(--csds-color-black-50);
        top: 0;
        left: 0;
        z-index: 1; }
      .widget-wrapper .csds-banner-full-width-centered-wrapper ._picture img {
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
        width: 100%;
        object-fit: cover; }
  .widget-wrapper .csds-banner-full-width-breakout-50-50-bg-img-wrapper {
    display: flex;
    width: 100%;
    height: auto;
    flex-direction: row;
    flex-direction: column; }
    @media (min-width: 801px) {
      .widget-wrapper .csds-banner-full-width-breakout-50-50-bg-img-wrapper {
        margin: 0 calc(0px - (100vw - 100%) / 2);
        width: 100vw;
        flex-direction: row; } }
    .widget-wrapper .csds-banner-full-width-breakout-50-50-bg-img-wrapper .split-hero-half {
      position: relative;
      flex: 1;
      background-size: cover;
      background-position: center;
      display: flex;
      align-items: center;
      justify-content: center;
      height: 50vh; }
      @media (min-width: 801px) {
        .widget-wrapper .csds-banner-full-width-breakout-50-50-bg-img-wrapper .split-hero-half {
          height: 100vh; } }
      .widget-wrapper .csds-banner-full-width-breakout-50-50-bg-img-wrapper .split-hero-half .split-hero-overlay {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: var(--csds-color-black-10);
        z-index: 1; }
      .widget-wrapper .csds-banner-full-width-breakout-50-50-bg-img-wrapper .split-hero-half .split-hero-content {
        position: relative;
        z-index: 2;
        text-align: center;
        padding: 1rem;
        max-width: 300px; }
        .widget-wrapper .csds-banner-full-width-breakout-50-50-bg-img-wrapper .split-hero-half .split-hero-content .split-hero-title {
          letter-spacing: 1px;
          font-size: var(--csds-font-size-2xl);
          font-weight: var(--csds-font-weight-bold);
          margin-bottom: var(--csds-space-sm);
          color: white; }
        .widget-wrapper .csds-banner-full-width-breakout-50-50-bg-img-wrapper .split-hero-half .split-hero-content .split-hero-text {
          backdrop-filter: var(--csds-backdrop-filter-blur-darken);
          padding: var(--csds-space-sm);
          border-radius: var(--csds-border-radius-md);
          color: white;
          font-size: 1rem;
          margin-bottom: var(--csds-space-md);
          font-weight: var(--csds-font-weight-regular);
          word-spacing: 1px; }
  .widget-wrapper .csds-banner-simple-bg-with-title-wrapper {
    padding: var(--csds-space-xl) var(--csds-space-lg);
    position: relative;
    z-index: 1; }
    .widget-wrapper .csds-banner-simple-bg-with-title-wrapper ._container {
      text-align: center;
      width: 100%;
      max-width: calc(1280 / 16 * 1rem);
      margin: auto;
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: flex-start;
      flex-direction: column;
      gap: calc(16 / 16 * 1rem); }
      .widget-wrapper .csds-banner-simple-bg-with-title-wrapper ._container ul {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        margin-bottom: var(--csds-space-0); }
    .widget-wrapper .csds-banner-simple-bg-with-title-wrapper ._int-title {
      font-size: var(--csds-font-size-2xl);
      font-weight: var(--csds-font-weight-semibold);
      margin: 0;
      color: var(--csds-color-white);
      position: relative; }
    .widget-wrapper .csds-banner-simple-bg-with-title-wrapper ._background {
      width: 100%;
      height: 100%;
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      z-index: -1; }
      .widget-wrapper .csds-banner-simple-bg-with-title-wrapper ._background:before {
        /* background color overlay */
        content: "";
        position: absolute;
        display: block;
        height: 100%;
        width: 100%;
        background: var(--csds-color-black);
        opacity: 0.5;
        top: 0;
        left: 0;
        z-index: 1; }
        @media (min-width: 801px) {
          .widget-wrapper .csds-banner-simple-bg-with-title-wrapper ._background:before {
            opacity: 1;
            background: linear-gradient(90.01deg, rgba(0, 0, 0, 0.75) 16.86%, rgba(0, 0, 0, 0) 100%); } }
      .widget-wrapper .csds-banner-simple-bg-with-title-wrapper ._background img {
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
        width: 100%;
        /* Makes img tag act as a background image */
        object-fit: cover; }
  .widget-wrapper .csds-banner-cta-features-wrapper {
    --csds-hero-bg-overlay: var(--csds-color-black-75);
    --csds-hero-max-width: 1400px; }
    .widget-wrapper .csds-banner-cta-features-wrapper ._topper {
      color: var(--csds-banner-accent-color); }
    .widget-wrapper .csds-banner-cta-features-wrapper ._hero {
      position: relative;
      overflow: hidden;
      text-align: center;
      padding: 0 var(--csds-space-md);
      z-index: 1; }
      .widget-wrapper .csds-banner-cta-features-wrapper ._hero ._background {
        position: absolute;
        inset: 0;
        z-index: -2; }
        .widget-wrapper .csds-banner-cta-features-wrapper ._hero ._background::before {
          content: "";
          position: absolute;
          inset: 0;
          background: var(--csds-hero-bg-overlay);
          pointer-events: none;
          z-index: 1;
          backdrop-filter: contrast(30%); }
        .widget-wrapper .csds-banner-cta-features-wrapper ._hero ._background picture,
        .widget-wrapper .csds-banner-cta-features-wrapper ._hero ._background img {
          width: 100%;
          height: 100%;
          object-fit: cover;
          position: absolute;
          top: 0;
          left: 0; }
      .widget-wrapper .csds-banner-cta-features-wrapper ._hero ._container {
        max-width: var(--csds-hero-max-width);
        margin-inline: auto;
        padding: var(--csds-space-xl) 0;
        position: relative;
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: var(--csds-space-lg); }
      .widget-wrapper .csds-banner-cta-features-wrapper ._hero ._content {
        max-width: 40rem;
        text-align: left;
        color: var(--csds-color-white);
        display: flex;
        flex-direction: column;
        gap: var(--csds-space-2xs); }
        .widget-wrapper .csds-banner-cta-features-wrapper ._hero ._content ._desc {
          color: var(--csds-color-white);
          font-size: var(--csds-font-size-md);
          line-height: 1.5;
          margin-bottom: var(--csds-space-md); }
      .widget-wrapper .csds-banner-cta-features-wrapper ._hero ._features {
        display: flex;
        flex-direction: column;
        padding: 0;
        margin: 0;
        list-style: none; }
        .widget-wrapper .csds-banner-cta-features-wrapper ._hero ._features ._feature {
          padding: var(--csds-space-xs); }
          .widget-wrapper .csds-banner-cta-features-wrapper ._hero ._features ._feature ._feature-link {
            display: flex;
            flex-direction: column;
            text-align: left;
            color: var(--csds-color-white);
            text-decoration: none;
            padding: var(--csds-space-0);
            gap: var(--csds-space-xs); }
            .widget-wrapper .csds-banner-cta-features-wrapper ._hero ._features ._feature ._feature-link:hover:after {
              display: none; }
            .widget-wrapper .csds-banner-cta-features-wrapper ._hero ._features ._feature ._feature-link ._dash {
              font-size: var(--csds-font-size-lg);
              font-weight: var(--csds-font-weight-bold);
              color: var(--csds-color-brand-base); }
            .widget-wrapper .csds-banner-cta-features-wrapper ._hero ._features ._feature ._feature-link ._feature-title {
              color: var(--csds-color-brand-aa-base);
              font-size: var(--csds-font-size-md);
              font-weight: var(--csds-font-weight-semibold);
              letter-spacing: .5px;
              text-decoration: none;
              color: var(--csds-color-white);
              font-weight: var(--csds-font-weight-bold);
              margin-bottom: var(--csds-space-xs); }
            .widget-wrapper .csds-banner-cta-features-wrapper ._hero ._features ._feature ._feature-link ._feature-desc {
              font-size: var(--csds-font-size-sm);
              display: flex;
              flex-direction: column;
              gap: var(--csds-space-xxs); }
              .widget-wrapper .csds-banner-cta-features-wrapper ._hero ._features ._feature ._feature-link ._feature-desc ._tagline {
                color: var(--csds-color-white); }
              .widget-wrapper .csds-banner-cta-features-wrapper ._hero ._features ._feature ._feature-link ._feature-desc ._cta {
                color: var(--csds-color-brand-base);
                font-weight: var(--csds-font-weight-bold);
                display: inline-block;
                margin-top: var(--csds-space-sm); }
                .widget-wrapper .csds-banner-cta-features-wrapper ._hero ._features ._feature ._feature-link ._feature-desc ._cta:hover {
                  text-decoration: underline; }
      @media (min-width: 801px) {
        .widget-wrapper .csds-banner-cta-features-wrapper ._hero {
          background-size: cover;
          background-position: center;
          background-repeat: no-repeat;
          background-attachment: fixed; }
          .widget-wrapper .csds-banner-cta-features-wrapper ._hero ._background img {
            display: none; }
          .widget-wrapper .csds-banner-cta-features-wrapper ._hero ._features {
            gap: var(--csds-space-md);
            flex-direction: row;
            justify-content: space-between; }
            .widget-wrapper .csds-banner-cta-features-wrapper ._hero ._features ._feature {
              width: 33%; }
          .widget-wrapper .csds-banner-cta-features-wrapper ._hero ._feature-link {
            padding: var(--csds-space-xl); }
          .widget-wrapper .csds-banner-cta-features-wrapper ._hero ._container {
            padding-bottom: var(--csds-space-xl); } }
  .widget-wrapper .csds-banner-with-title-side-bar-cta-wrapper {
    background-size: cover;
    background-position: center;
    padding: var(--csds-space-md);
    display: flex;
    align-items: center;
    min-height: 200px;
    justify-content: space-between;
    flex-direction: column;
    margin-bottom: 0; }
    @media only screen and (min-width: 801px) {
      .widget-wrapper .csds-banner-with-title-side-bar-cta-wrapper {
        flex-direction: row;
        padding: var(--csds-space-0); } }
    .widget-wrapper .csds-banner-with-title-side-bar-cta-wrapper ._content {
      display: flex;
      flex-direction: row;
      align-items: center;
      gap: var(--csds-space-sm);
      padding: var(--csds-space-xs);
      max-width: 400px;
      width: 100%;
      text-align: center; }
      @media only screen and (min-width: 801px) {
        .widget-wrapper .csds-banner-with-title-side-bar-cta-wrapper ._content {
          flex-direction: column;
          text-align: center;
          align-items: center;
          margin-inline-end: var(--csds-size-width-container-3); } }
      .widget-wrapper .csds-banner-with-title-side-bar-cta-wrapper ._content._left {
        flex-direction: column;
        background-color: var(--csds-color-black-75);
        color: var(--csds-color-white);
        max-width: 500px; }
        @media only screen and (min-width: 801px) {
          .widget-wrapper .csds-banner-with-title-side-bar-cta-wrapper ._content._left {
            text-align: left;
            align-items: flex-start; } }
        .widget-wrapper .csds-banner-with-title-side-bar-cta-wrapper ._content._left ._heading {
          font-size: var(--csds-font-size-xl);
          font-weight: var(--csds-font-weight-bold); }
      .widget-wrapper .csds-banner-with-title-side-bar-cta-wrapper ._content._right {
        background-color: var(--csds-color-white);
        box-shadow: var(--csds-shadow-lg);
        flex-direction: row;
        margin-top: var(--csds-space-md); }
        @media only screen and (min-width: 801px) {
          .widget-wrapper .csds-banner-with-title-side-bar-cta-wrapper ._content._right {
            margin-right: var(--csds-step-3xl);
            margin-top: var(--csds-space-0);
            flex-direction: row; } }
      .widget-wrapper .csds-banner-with-title-side-bar-cta-wrapper ._content ._image {
        flex-shrink: 0;
        display: none; }
        @media only screen and (min-width: 1261px) {
          .widget-wrapper .csds-banner-with-title-side-bar-cta-wrapper ._content ._image {
            display: block; } }
        .widget-wrapper .csds-banner-with-title-side-bar-cta-wrapper ._content ._image img {
          display: block;
          height: auto;
          width: 100px; }
      .widget-wrapper .csds-banner-with-title-side-bar-cta-wrapper ._content ._text-group {
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
        gap: var(--csds-space-2xs);
        color: var(--csds-text-color);
        margin: auto; }
        .widget-wrapper .csds-banner-with-title-side-bar-cta-wrapper ._content ._text-group ._text {
          margin-bottom: var(--csds-space-xs);
          font-weight: var(--csds-font-weight-semibold); }
        .widget-wrapper .csds-banner-with-title-side-bar-cta-wrapper ._content ._text-group ._btn {
          margin: var(--csds-space-sm) auto 0; }
  .widget-wrapper .csds-banner-text-breakout-img-cta-wrapper {
    background-size: 120%;
    background-attachment: fixed;
    background-image: var(--csds-gray-grid-tile-pattern);
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    box-shadow: var(--csds-shadow-2xl); }
    @media (min-width: 551px) {
      .widget-wrapper .csds-banner-text-breakout-img-cta-wrapper {
        flex-direction: row;
        justify-content: space-between;
        text-align: left; } }
    .widget-wrapper .csds-banner-text-breakout-img-cta-wrapper ._section {
      flex: 1;
      padding: var(--csds-space-md); }
      @media (min-width: 801px) {
        .widget-wrapper .csds-banner-text-breakout-img-cta-wrapper ._section._left {
          margin-right: 5cqw; } }
      .widget-wrapper .csds-banner-text-breakout-img-cta-wrapper ._section._left ._subheading {
        color: var(--csds-color-brand-aa-base);
        font-size: var(--csds-font-size-md);
        font-weight: var(--csds-font-weight-semibold);
        letter-spacing: .5px;
        text-decoration: none;
        letter-spacing: 0;
        display: inline-block;
        margin-bottom: var(--csds-space-2xs); }
      .widget-wrapper .csds-banner-text-breakout-img-cta-wrapper ._section._left ._heading {
        color: var(--csds-color-text-dark);
        font-size: var(--csds-font-size-lg);
        font-weight: var(--csds-font-weight-bold);
        line-height: var(--csds-line-height-heading);
        font-size: var(--csds-font-size-xl);
        font-weight: var(--csds-font-weight-bold);
        margin: 0; }
      .widget-wrapper .csds-banner-text-breakout-img-cta-wrapper ._section._right {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        text-align: center;
        padding: var(--csds-space-md); }
        @media (min-width: 801px) {
          .widget-wrapper .csds-banner-text-breakout-img-cta-wrapper ._section._right {
            margin-left: 20cqw; } }
        .widget-wrapper .csds-banner-text-breakout-img-cta-wrapper ._section._right ._text {
          font-size: var(--csds-font-size-md);
          margin-bottom: var(--csds-space-2xs);
          font-weight: var(--csds-font-weight-semibold); }
    .widget-wrapper .csds-banner-text-breakout-img-cta-wrapper ._breakout-img {
      display: none; }
      @media (min-width: 801px) {
        .widget-wrapper .csds-banner-text-breakout-img-cta-wrapper ._breakout-img {
          flex-direction: row;
          display: block;
          position: absolute;
          top: 50%;
          left: 50%;
          transform: translate(-50%, -50%);
          z-index: 0; }
          .widget-wrapper .csds-banner-text-breakout-img-cta-wrapper ._breakout-img img {
            max-width: 220px;
            height: auto;
            filter: drop-shadow(3px 3px 6px var(--csds-color-black-25));
            border-radius: var(--csds-border-radius-sm, 0.25rem);
            transition: transform 0.3s ease; }
            .widget-wrapper .csds-banner-text-breakout-img-cta-wrapper ._breakout-img img:hover {
              transform: scale(1.05); } }
  .widget-wrapper .csds-banner-large-block-image-with-features-wrapper {
    box-shadow: var(--csds-shadow-2xl);
    position: relative;
    overflow: hidden;
    z-index: 1; }
    .widget-wrapper .csds-banner-large-block-image-with-features-wrapper ._topper {
      color: var(--csds-color-text-white); }
    .widget-wrapper .csds-banner-large-block-image-with-features-wrapper ._container {
      width: 100%;
      margin: auto;
      display: flex;
      flex-direction: column;
      align-items: center;
      position: relative;
      z-index: 1; }
    .widget-wrapper .csds-banner-large-block-image-with-features-wrapper ._content {
      text-align: center;
      width: 100%;
      padding: var(--csds-space-xl);
      background-color: var(--csds-color-brand-base);
      box-sizing: border-box;
      display: flex;
      flex-direction: column;
      align-items: center;
      position: relative;
      z-index: 1; }
    .widget-wrapper .csds-banner-large-block-image-with-features-wrapper ._title {
      color: var(--csds-color-text-dark); }
    .widget-wrapper .csds-banner-large-block-image-with-features-wrapper ._picture {
      width: 100%;
      height: auto;
      display: none; }
      .widget-wrapper .csds-banner-large-block-image-with-features-wrapper ._picture img {
        width: 100%;
        height: auto;
        display: block; }
    .widget-wrapper .csds-banner-large-block-image-with-features-wrapper ._card-group {
      width: 100%;
      padding: var(--csds-space-xl);
      box-sizing: border-box;
      margin: 0;
      display: flex;
      justify-content: center;
      align-items: flex-start;
      flex-direction: column;
      gap: clamp(2rem, 0.5vw, 2.5rem); }
    .widget-wrapper .csds-banner-large-block-image-with-features-wrapper ._item {
      list-style: none;
      width: 100%;
      box-sizing: border-box;
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      gap: calc(12 / 16 * 1rem); }
    .widget-wrapper .csds-banner-large-block-image-with-features-wrapper ._item-wrapper {
      width: 100%;
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      gap: calc(12 / 16 * 1rem); }
    .widget-wrapper .csds-banner-large-block-image-with-features-wrapper ._icon {
      width: calc(32 / 16 * 1rem);
      height: auto;
      display: block; }
    .widget-wrapper .csds-banner-large-block-image-with-features-wrapper ._feature-text {
      line-height: 1.2em;
      font-weight: var(--csds-font-weight-bold);
      margin: 0;
      color: var(--csds-headerColor); }
    .widget-wrapper .csds-banner-large-block-image-with-features-wrapper ._item-text {
      font-size: calc(16 / 16 * 1rem);
      line-height: 1.5em;
      margin: 0;
      color: var(--csds-bodyTextColor); }
  @media (min-width: 801px) {
    .widget-wrapper .csds-banner-large-block-image-with-features-wrapper ._container {
      flex-direction: row;
      justify-content: center;
      align-items: stretch; }
    .widget-wrapper .csds-banner-large-block-image-with-features-wrapper ._content {
      text-align: left;
      width: 100%;
      align-items: flex-start;
      background-color: transparent; }
      .widget-wrapper .csds-banner-large-block-image-with-features-wrapper ._content:before {
        /* background color, moves to the section parent at desktop */
        content: "";
        width: 100%;
        height: 100%;
        background: var(--csds-color-brand-base);
        opacity: 1;
        position: absolute;
        display: block;
        top: 0;
        left: 0;
        z-index: -1; }
    .widget-wrapper .csds-banner-large-block-image-with-features-wrapper ._picture {
      margin-left: auto;
      max-width: 100%;
      display: block; }
    .widget-wrapper .csds-banner-large-block-image-with-features-wrapper ._card-group {
      width: 60%;
      max-width: 100%;
      flex: none; }
    .widget-wrapper .csds-banner-large-block-image-with-features-wrapper ._item {
      flex-direction: row; } }
  .widget-wrapper .csds-banner-wide-with-headings-and-cta-wrapper {
    padding: var(--csds-space-xl);
    background-color: var(--csds-color-brand-base);
    position: relative;
    z-index: 1; }
    .widget-wrapper .csds-banner-wide-with-headings-and-cta-wrapper ._container {
      width: 100%;
      max-width: calc(1280 / 16 * 1rem);
      margin: auto;
      display: flex;
      flex-direction: column;
      align-items: center;
      /* 48px - 64px */
      gap: clamp(3rem, 6vw, 4rem); }
    .widget-wrapper .csds-banner-wide-with-headings-and-cta-wrapper ._content {
      text-align: center;
      width: 100%;
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: clamp(3rem, 6vw, 4rem); }
    .widget-wrapper .csds-banner-wide-with-headings-and-cta-wrapper ._flex {
      max-width: calc(630 / 16 * 1rem); }
    .widget-wrapper .csds-banner-wide-with-headings-and-cta-wrapper ._title {
      margin: 0;
      color: var(--csds-color-white); }
    .widget-wrapper .csds-banner-wide-with-headings-and-cta-wrapper ._button-box {
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      gap: calc(16 / 16 * 1rem); }
    .widget-wrapper .csds-banner-wide-with-headings-and-cta-wrapper ._background {
      width: 100%;
      height: 100%;
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      z-index: -1; }
      .widget-wrapper .csds-banner-wide-with-headings-and-cta-wrapper ._background:before {
        /* background color overlay */
        content: "";
        position: absolute;
        display: block;
        height: 100%;
        width: 100%;
        background: var(--csds-color-black-50);
        top: 0;
        left: 0;
        z-index: 1; }
      .widget-wrapper .csds-banner-wide-with-headings-and-cta-wrapper ._background img {
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
        width: 100%;
        /* Makes img tag act as a background image */
        object-fit: cover; }
  @media (min-width: 801px) {
    .widget-wrapper .csds-banner-wide-with-headings-and-cta-wrapper ._content {
      text-align: left;
      flex-direction: row;
      justify-content: space-between; }
    .widget-wrapper .csds-banner-wide-with-headings-and-cta-wrapper ._button-box {
      flex-wrap: nowrap;
      align-items: center;
      flex: none; } }
  .widget-wrapper .csds-banner-thin-with-thumbnail-text-and-cta-wrapper {
    --csds-pad-vert: var(--csds-space-md);
    --csds-pad-horz: var(--csds-space-lg);
    --csds-gap-mobile: var(--csds-space-sm);
    --csds-gap-desktop: var(--csds-space-lg);
    --csds-breakout: var(--csds-space-sm);
    --csds-fig-w: calc(150 / 16 * 1rem);
    --csds-fig-h: calc(100 / 16 * 1rem);
    background-color: var(--csds-color-neutral-lightest);
    position: relative;
    overflow: visible;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--csds-gap-mobile);
    padding: var(--csds-pad-vert) var(--csds-pad-horz);
    box-shadow: var(--csds-shadow-md);
    width: 100%; }
    .widget-wrapper .csds-banner-thin-with-thumbnail-text-and-cta-wrapper ._figure img {
      display: block;
      width: var(--csds-fig-w);
      height: var(--csds-fig-h);
      object-fit: cover;
      box-shadow: var(--csds-shadow-md); }
    .widget-wrapper .csds-banner-thin-with-thumbnail-text-and-cta-wrapper ._background {
      width: 100%;
      border-radius: var(--csds-radius-sm);
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: var(--csds-gap-mobile);
      z-index: 0; }
    .widget-wrapper .csds-banner-thin-with-thumbnail-text-and-cta-wrapper ._heading {
      font-size: var(--csds-font-size-lg);
      font-weight: var(--csds-font-weight-semibold);
      text-align: center; }
    .widget-wrapper .csds-banner-thin-with-thumbnail-text-and-cta-wrapper ._description {
      text-align: center; }
    @media (min-width: 801px) {
      .widget-wrapper .csds-banner-thin-with-thumbnail-text-and-cta-wrapper {
        margin: var(--csds-space-lg) auto;
        flex-direction: row;
        align-items: center;
        justify-content: flex-start;
        gap: var(--csds-gap-desktop);
        padding-block: 0;
        padding-inline: var(--csds-pad-horz); }
        .widget-wrapper .csds-banner-thin-with-thumbnail-text-and-cta-wrapper ._figure {
          margin-left: calc(-1 * var(--csds-breakout));
          margin-top: calc(-1 * var(--csds-breakout));
          margin-bottom: calc(-1 * var(--csds-breakout));
          z-index: 1; }
        .widget-wrapper .csds-banner-thin-with-thumbnail-text-and-cta-wrapper ._background {
          flex: 1;
          flex-direction: row;
          align-items: center;
          justify-content: space-between; }
        .widget-wrapper .csds-banner-thin-with-thumbnail-text-and-cta-wrapper ._heading,
        .widget-wrapper .csds-banner-thin-with-thumbnail-text-and-cta-wrapper ._description {
          text-align: center;
          flex: 1;
          padding: 0 5cqw; }
        .widget-wrapper .csds-banner-thin-with-thumbnail-text-and-cta-wrapper ._cta {
          margin: 0; } }
  .widget-wrapper .linked-img-text-columns-wrapper {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: var(--csds-space-sm); }
    @media (min-width: 551px) {
      .widget-wrapper .linked-img-text-columns-wrapper {
        flex-direction: row; } }
    .widget-wrapper .linked-img-text-columns-wrapper .linked-img-text-column {
      width: 100%;
      max-width: 300px;
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center;
      text-align: center;
      transition: filter 0.3s; }
      .widget-wrapper .linked-img-text-columns-wrapper .linked-img-text-column:hover {
        filter: brightness(0.75); }
      .widget-wrapper .linked-img-text-columns-wrapper .linked-img-text-column a {
        text-decoration: none;
        color: var(--csds-color-text-link); }
        .widget-wrapper .linked-img-text-columns-wrapper .linked-img-text-column a img {
          width: 150px;
          height: 150px;
          object-fit: contain; }
        .widget-wrapper .linked-img-text-columns-wrapper .linked-img-text-column a span {
          color: #df7518;
          font-weight: var(--csds-font-weight-semibold); }
  .widget-wrapper .circle-img-hover-list-wrapper {
    display: flex;
    flex-direction: column; }
    @media (min-width: 551px) {
      .widget-wrapper .circle-img-hover-list-wrapper {
        flex-direction: row; } }
    .widget-wrapper .circle-img-hover-list-wrapper .hover-container {
      position: relative;
      width: 100%;
      overflow: hidden;
      margin: 10px; }
      .widget-wrapper .circle-img-hover-list-wrapper .hover-container .image-link {
        display: block;
        text-align: center;
        color: var(--csds-color-text-link); }
        .widget-wrapper .circle-img-hover-list-wrapper .hover-container .image-link img {
          max-width: 60px;
          max-height: 60px;
          width: 60px;
          height: 60px;
          border-radius: 50%;
          object-fit: contain;
          object-position: center;
          box-shadow: var(--csds-shadow-widget-2); }
          @media (min-width: 551px) {
            .widget-wrapper .circle-img-hover-list-wrapper .hover-container .image-link img {
              max-width: 100px;
              max-height: 100px;
              width: 100px;
              height: 100px;
              transition: transform 0.3s; } }
          @media (min-width: 801px) {
            .widget-wrapper .circle-img-hover-list-wrapper .hover-container .image-link img {
              max-width: 180px;
              max-height: 180px;
              width: 180px;
              height: 180px;
              transition: transform 0.3s; } }
        .widget-wrapper .circle-img-hover-list-wrapper .hover-container .image-link span {
          display: block;
          margin-top: 10px; }
          @media (min-width: 801px) {
            .widget-wrapper .circle-img-hover-list-wrapper .hover-container .image-link span {
              transition: transform 0.3s; } }
      .widget-wrapper .circle-img-hover-list-wrapper .hover-container .hover-details {
        position: absolute;
        bottom: 0;
        width: 100%;
        text-align: center;
        display: none;
        background-color: var(--csds-color-white); }
        @media (min-width: 801px) {
          .widget-wrapper .circle-img-hover-list-wrapper .hover-container .hover-details {
            transform: translateY(100%);
            transition: transform 0.3s;
            display: block; } }
        .widget-wrapper .circle-img-hover-list-wrapper .hover-container .hover-details ul {
          list-style-type: none;
          padding: 0;
          margin: 0; }
          .widget-wrapper .circle-img-hover-list-wrapper .hover-container .hover-details ul li a {
            text-decoration: none;
            font-weight: var(--csds-font-weight-semibold);
            font-size: var(--csds-font-size-sm);
            color: inherit;
            transition: color 0.3s; }
            .widget-wrapper .circle-img-hover-list-wrapper .hover-container .hover-details ul li a:hover {
              color: var(--csds-color-text-link-hover);
              text-decoration: underline; }
      @media (min-width: 801px) {
        .widget-wrapper .circle-img-hover-list-wrapper .hover-container:hover .image-link img {
          transform: scale(0.5) translateY(-40%); }
        .widget-wrapper .circle-img-hover-list-wrapper .hover-container:hover span {
          transform: translateY(-300%); }
        .widget-wrapper .circle-img-hover-list-wrapper .hover-container:hover .hover-details {
          transform: translateY(0); } }
  .widget-wrapper > .csds-accordion-group-wrapper:not(:last-child) {
    margin-bottom: 0; }
  .widget-wrapper .csds-accordion-group-wrapper {
    /* hide the default marker in safari */
    /* 1) Kill every UA marker on <summary> in all states */
    /* 2) Wrap the summary so you can position your arrow absolutely */
    /* 3) Your custom arrow */
    /* 4) Rotate when open */ }
    .widget-wrapper .csds-accordion-group-wrapper ._accordion-group {
      display: flex;
      flex-direction: column;
      gap: var(--csds-space-xs); }
      .widget-wrapper .csds-accordion-group-wrapper ._accordion-group.has-border ._item, .widget-wrapper .csds-accordion-group-wrapper ._accordion-group.has-brand-border ._item, .widget-wrapper .csds-accordion-group-wrapper ._accordion-group.has-accent-border ._item {
        border-width: 1px;
        border-style: solid;
        border-bottom: none; }
      .widget-wrapper .csds-accordion-group-wrapper ._accordion-group.has-border ._item {
        --csds-accordion-border-color: var(--csds-color-border-lighter);
        border-color: var(--csds-accordion-border-color); }
      .widget-wrapper .csds-accordion-group-wrapper ._accordion-group.has-brand-border ._item {
        --csds-accordion-border-color: var(--csds-color-border-brand);
        border-color: var(--csds-accordion-border-color); }
      .widget-wrapper .csds-accordion-group-wrapper ._accordion-group.has-accent-border ._item {
        --csds-accordion-border-color: var(--csds-color-border-accent);
        border-color: var(--csds-accordion-border-color); }
    .widget-wrapper .csds-accordion-group-wrapper:last-child ._accordion-group.has-border ._item, .widget-wrapper .csds-accordion-group-wrapper:last-child ._accordion-group.has-brand-border ._item, .widget-wrapper .csds-accordion-group-wrapper:last-child ._accordion-group.has-accent-border ._item {
      box-shadow: var(--csds-widget-shadow-base);
      border-bottom: 1px solid;
      border-color: var(--csds-accordion-border-color); }
    .widget-wrapper .csds-accordion-group-wrapper ._item {
      display: block; }
      .widget-wrapper .csds-accordion-group-wrapper ._item summary {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: var(--csds-space-sm);
        cursor: pointer;
        list-style: none; }
        .widget-wrapper .csds-accordion-group-wrapper ._item summary::marker, .widget-wrapper .csds-accordion-group-wrapper ._item summary::-webkit-details-marker, .widget-wrapper .csds-accordion-group-wrapper ._item summary::-moz-list-bullet {
          display: none;
          list-style: none;
          color: var(--csds-color-transparent); }
        .widget-wrapper .csds-accordion-group-wrapper ._item summary::after {
          content: "";
          width: 1.75rem;
          height: 1.75rem;
          display: inline-block;
          transform: rotate(0deg);
          background-repeat: no-repeat;
          background-position: center;
          background-size: contain;
          background-color: var(--csds-color-icon-brand);
          mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 256 256" id="Flat"> <path d="M128,24A104,104,0,1,0,232,128,104.12041,104.12041,0,0,0,128,24Zm33.35156,109.94531-40,36a7.99912,7.99912,0,1,1-10.70312-11.89062L144.03906,128,110.64844,97.94531a7.99912,7.99912,0,0,1,10.70312-11.89062l40,36a7.99734,7.99734,0,0,1,0,11.89062Z"/> </svg>');
          transition: transform 0.3s ease; }
      .widget-wrapper .csds-accordion-group-wrapper ._item[open] summary::after {
        transform: rotate(90deg); }
      .widget-wrapper .csds-accordion-group-wrapper ._item ._summary-text {
        display: flex;
        flex-direction: column; }
        .widget-wrapper .csds-accordion-group-wrapper ._item ._summary-text ._title, .widget-wrapper .csds-accordion-group-wrapper ._item ._summary-text h3._title {
          font-size: var(--csds-font-size-base);
          font-weight: var(--csds-font-weight-bold);
          width: 90%;
          margin: 0 !important; }
          @media (min-width: 801px) {
            .widget-wrapper .csds-accordion-group-wrapper ._item ._summary-text ._title, .widget-wrapper .csds-accordion-group-wrapper ._item ._summary-text h3._title {
              width: fit-content; } }
        .widget-wrapper .csds-accordion-group-wrapper ._item ._summary-text ._subtitle {
          font-size: var(--csds-font-size-sm);
          font-weight: var(--csds-font-weight-semibold);
          width: 90%; }
          @media (min-width: 801px) {
            .widget-wrapper .csds-accordion-group-wrapper ._item ._summary-text ._subtitle {
              width: fit-content; } }
        .widget-wrapper .csds-accordion-group-wrapper ._item ._summary-text ._title,
        .widget-wrapper .csds-accordion-group-wrapper ._item ._summary-text ._subtitle {
          max-width: 80cqw; }
      .widget-wrapper .csds-accordion-group-wrapper ._item ._description {
        padding: var(--csds-space-sm);
        border-top: 1px solid var(--csds-accordion-border-color);
        border-bottom: 1px solid var(--csds-accordion-border-color); }
        .widget-wrapper .csds-accordion-group-wrapper ._item ._description p,
        .widget-wrapper .csds-accordion-group-wrapper ._item ._description ul {
          margin-bottom: var(--csds-space-0);
          font-size: var(--csds-font-size-sm); }
        .widget-wrapper .csds-accordion-group-wrapper ._item ._description ul {
          padding-left: var(--csds-space-md);
          list-style: disc; }
    .widget-wrapper .csds-accordion-group-wrapper summary::-webkit-details-marker {
      display: none; }
    .widget-wrapper .csds-accordion-group-wrapper details summary,
    .widget-wrapper .csds-accordion-group-wrapper details summary::-webkit-details-marker,
    .widget-wrapper .csds-accordion-group-wrapper details summary::marker {
      appearance: none;
      /* remove default control */
      -webkit-appearance: none;
      list-style: none;
      /* no bullets */
      padding-inline-start: 0;
      /* no extra indent */
      margin: 0; }
    .widget-wrapper .csds-accordion-group-wrapper details summary {
      position: relative;
      padding: var(--csds-space-sm) var(--csds-space-sm) var(--csds-space-sm) calc(1.5rem + var(--csds-space-sm));
      cursor: pointer; }
    .widget-wrapper .csds-accordion-group-wrapper details summary::after {
      content: "";
      position: absolute;
      right: var(--csds-space-sm);
      transform: translateY(-50%) rotate(0deg);
      width: 1.5rem;
      height: 1.5rem;
      background-repeat: no-repeat;
      background-position: center;
      background-size: contain;
      background-color: var(--csds-color-icon-brand-aa);
      mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M8.59 16.59L13.17 12 8.59 7.41 10 6l6 6-6 6-1.41-1.41z"/></svg>');
      transition: transform 0.3s ease; }
    .widget-wrapper .csds-accordion-group-wrapper details[open] summary::after {
      transform: translateY(-50%) rotate(90deg); }
    .widget-wrapper .csds-accordion-group-wrapper details {
      max-height: 4rem;
      /* Adjust to show only the summary */
      overflow: hidden;
      transition: max-height 200ms ease-out; }
    .widget-wrapper .csds-accordion-group-wrapper details[open] {
      max-height: 700px;
      /* A value large enough to contain the content */ }
  .widget-wrapper .csds-feature-item {
    display: flex;
    align-items: flex-start;
    gap: var(--csds-space-sm);
    flex-direction: column; }
    @media (min-width: 801px) {
      .widget-wrapper .csds-feature-item {
        flex-direction: row; } }
    .widget-wrapper .csds-feature-item ._icon, .widget-wrapper .csds-feature-item .icon {
      width: var(--csds-why-icon-size);
      height: auto;
      flex-shrink: 0;
      background-color: var(--csds-color-brand-lightest);
      padding: 5px;
      border-radius: var(--csds-border-radius-circle); }
    .widget-wrapper .csds-feature-item svg.icon {
      width: var(--csds-icon-size-xl);
      height: var(--csds-icon-size-xl);
      fill: var(--csds-color-brand-base);
      stroke: var(--csds-color-brand-base); }
    .widget-wrapper .csds-feature-item ._text ._title {
      font-size: var(--csds-font-size-base);
      font-weight: var(--csds-font-weight-semibold);
      color: var(--csds-text-color);
      margin-bottom: var(--csds-space-3xs); }
    .widget-wrapper .csds-feature-item ._text ._desc {
      font-size: var(--csds-font-size-sm);
      color: var(--csds-text-color);
      margin: 0; }
  .widget-wrapper .csds-cta-box-container {
    background-size: 120%;
    background-attachment: fixed;
    background-image: var(--csds-gray-grid-tile-pattern);
    border: var(--csds-border-width-thin) solid var(--csds-color-brand-base);
    border-radius: var(--csds-border-radius-md);
    box-shadow: var(--csds-shadow-xl);
    display: flex;
    flex-direction: column;
    align-items: center;
    max-width: max-content;
    text-align: center;
    margin: auto;
    padding: var(--csds-space-lg) var(--csds-space-2xl); }
    .widget-wrapper .csds-cta-box-container .csds-cta-box-heading {
      color: var(--csds-color-text-dark);
      font-size: var(--csds-font-size-lg);
      font-weight: var(--csds-font-weight-bold);
      line-height: var(--csds-line-height-heading);
      margin-bottom: var(--csds-space-sm); }
    .widget-wrapper .csds-cta-box-container .csds-cta-box-text {
      margin-bottom: var(--csds-space-sm);
      max-width: 90cqw;
      margin-left: auto;
      margin-right: auto; }
    .widget-wrapper .csds-cta-box-container .csds-cta-box-highlight {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 0.5rem;
      font-weight: bold; }
      .widget-wrapper .csds-cta-box-container .csds-cta-box-highlight .csds-cta-box-arrow {
        color: var(--csds-color-brand-base);
        font-weight: var(--csds-font-weight-bold);
        margin-bottom: var(--csds-space-sm); }
      .widget-wrapper .csds-cta-box-container .csds-cta-box-highlight .csds-cta-box-text {
        font-weight: var(--csds-font-weight-bold); }
  .widget-wrapper .csds-list-with-icons {
    width: 100%;
    margin: 0 0 calc(24 / 16 * 1rem) 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: calc(12 / 16 * 1rem); }
    .widget-wrapper .csds-list-with-icons ._list-icon {
      list-style: none;
      line-height: 1.5em;
      width: 100%;
      display: flex;
      justify-content: flex-start;
      align-items: center;
      gap: calc(8 / 16 * 1rem); }
      .widget-wrapper .csds-list-with-icons ._list-icon ._list-image-icon {
        width: calc(24 / 16 * 1rem);
        height: auto;
        /* adds extra space between the icon and top of parent so it's more centered */
        margin-top: 1px;
        display: block; }
  .widget-wrapper #list-1186 {
    width: 100%;
    max-width: 39.375rem;
    margin: 0;
    padding: 0;
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    gap: 1.5rem; }
  .widget-wrapper #list-1186 .cs-li {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    /* 16px - 20px */
    gap: clamp(1rem, 2.5vw, 1.25rem); }
  .widget-wrapper #list-1186 .cs-li-picture {
    /* 60px - 80px */
    width: clamp(3.75rem, 6vw, 5rem);
    height: clamp(3.75rem, 6vw, 5rem);
    margin: 0;
    background-color: #f7f7f7;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    /* prevents flexbox from squishing it */
    flex: none; }
  .widget-wrapper #list-1186 .cs-li-icon {
    /* 24px - 32px */
    height: auto;
    display: block; }
  .widget-wrapper #list-1186 .cs-h3 {
    font-size: 1.25rem;
    line-height: 1.2em;
    font-weight: 700;
    text-align: left;
    margin: 0 0 0.75rem 0; }
  .widget-wrapper #list-1186 .cs-li-text {
    font-size: 1rem;
    line-height: 1.5em;
    text-align: left;
    margin: 0; }
  .widget-wrapper .csds-table-special-first-column .csds-table-container {
    width: 100%;
    max-width: calc(1280 / 16 * 1rem);
    margin: auto;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: clamp(3rem, 6vw, 4rem); }
  .widget-wrapper .csds-table-special-first-column .csds-table-content {
    /* set text align to left if content needs to be left aligned */
    text-align: left;
    width: 100%;
    display: flex;
    flex-direction: column;
    /* centers content horizontally, set to flex-start to left align */
    align-items: flex-start; }
  .widget-wrapper .csds-table-special-first-column .csds-table {
    width: 100%;
    border-collapse: collapse; }
  .widget-wrapper .csds-table-special-first-column .csds-table-th {
    padding: calc(12 / 16 * 1rem) calc(16 / 16 * 1rem);
    box-sizing: border-box; }
  .widget-wrapper .csds-table-special-first-column .csds-table-td {
    padding: calc(8 / 16 * 1rem) calc(16 / 16 * 1rem);
    box-sizing: border-box; }
  .widget-wrapper .csds-table-special-first-column .csds-table-th,
  .widget-wrapper .csds-table-special-first-column .csds-table-td {
    border: 1px solid #ddd;
    text-align: center; }
  .widget-wrapper .csds-table-special-first-column .csds-table-color .csds-table-th:first-child {
    color: var(--csds-color-white);
    background-color: var(--csds-color-neutral-base); }
  .widget-wrapper .csds-table-special-first-column .csds-table-th:first-child,
  .widget-wrapper .csds-table-special-first-column .csds-table-td:first-child {
    position: sticky;
    font-weight: var(--csds-font-weight-bold);
    left: 0;
    z-index: 100;
    /* Make sure it sits above the other cells */
    background-color: var(--csds-color-neutral-lightest);
    text-align: left; }
  .widget-wrapper .csds-table-special-first-column .csds-table-th {
    background-color: var(--csds-color-neutral-lightest); }
  .widget-wrapper .csds-table-special-first-column .csds-table-tr {
    color: var(--csds-bodyTextColor); }
  .widget-wrapper .csds-table-special-first-column .csds-table-icon {
    height: calc(16 / 16 * 1rem);
    width: auto; }
  @media (min-width: 801px) {
    .widget-wrapper .csds-table-special-first-column .csds-table-table {
      display: block;
      overflow-x: auto; } }
  @media only screen and (min-width: 0rem) {
    .widget-wrapper #steps-284 {
      padding: var(--csds-space-md); }
      .widget-wrapper #steps-284 .cs-container {
        width: 100%;
        /* changes to 1104px on tablet */
        max-width: calc(550 / 16 * 1rem);
        margin: auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        /* 48px - 64px */
        gap: clamp(3rem, 6vw, 4rem); }
      .widget-wrapper #steps-284 .cs-content {
        /* set text align to left if content needs to be left aligned */
        text-align: left;
        width: 100%;
        max-width: calc(434 / 16 * 1rem);
        display: flex;
        flex-direction: column;
        /* centers content horizontally, set to flex-start to left align */
        align-items: flex-start; }
      .widget-wrapper #steps-284 .cs-text {
        margin-bottom: calc(16 / 16 * 1rem); }
        .widget-wrapper #steps-284 .cs-text:last-of-type {
          margin-bottom: calc(32 / 16 * 1rem); }
      .widget-wrapper #steps-284 .cs-button-solid {
        font-size: calc(16 / 16 * 1rem);
        /* 46px - 56px */
        line-height: clamp(2.875rem, 5.5vw, 3.5rem);
        text-decoration: none;
        font-weight: 700;
        text-align: center;
        margin: 0;
        color: var(--csds-color-white);
        min-width: calc(150 / 16 * 1rem);
        padding: 0 calc(24 / 16 * 1rem);
        background-color: var(--csds-color-brand-base);
        border-radius: calc(4 / 16 * 1rem);
        display: inline-block;
        position: relative;
        z-index: 1;
        /* prevents padding from adding to the width */
        box-sizing: border-box; }
        .widget-wrapper #steps-284 .cs-button-solid:before {
          content: "";
          position: absolute;
          height: 100%;
          width: 0%;
          background: var(--csds-color-black);
          opacity: 1;
          top: 0;
          left: 0;
          z-index: -1;
          border-radius: calc(4 / 16 * 1rem);
          transition: width 0.3s; }
        .widget-wrapper #steps-284 .cs-button-solid:hover:before {
          width: 100%; }
      .widget-wrapper #steps-284 .cs-right-section {
        margin: 0;
        padding: 0;
        max-width: calc(562 / 16 * 1rem); }
      .widget-wrapper #steps-284 .cs-item {
        list-style: none;
        display: flex;
        justify-content: flex-start;
        align-items: center; }
        .widget-wrapper #steps-284 .cs-item:nth-of-type(1) .cs-item-text:before {
          height: 50%;
          top: auto;
          bottom: -1px; }
        .widget-wrapper #steps-284 .cs-item:nth-of-type(2), .widget-wrapper #steps-284 .cs-item:nth-of-type(4) {
          justify-content: flex-end;
          text-align: right; }
          .widget-wrapper #steps-284 .cs-item:nth-of-type(2) .cs-number, .widget-wrapper #steps-284 .cs-item:nth-of-type(4) .cs-number {
            /* Send number to the right */
            order: 2;
            margin: 0;
            /* 15px - 24px */
            margin-left: clamp(0.9375rem, 3vw, 1.5rem); }
          .widget-wrapper #steps-284 .cs-item:nth-of-type(2) .cs-item-text, .widget-wrapper #steps-284 .cs-item:nth-of-type(4) .cs-item-text {
            /* reverse padding */
            padding-left: 0;
            /* 15px - 24px */
            padding-right: clamp(0.9375rem, 3vw, 1.5rem);
            /* reset the border on the :before */ }
            .widget-wrapper #steps-284 .cs-item:nth-of-type(2) .cs-item-text:before, .widget-wrapper #steps-284 .cs-item:nth-of-type(4) .cs-item-text:before {
              border-top: 1px solid var(--csds-color-brand-base);
              border-left: none;
              border-right: 1px solid var(--csds-color-brand-base);
              left: auto;
              right: 0;
              bottom: 0;
              border-radius: 0 calc(8 / 16 * 1rem) calc(8 / 16 * 1rem) 0; }
            .widget-wrapper #steps-284 .cs-item:nth-of-type(2) .cs-item-text:after, .widget-wrapper #steps-284 .cs-item:nth-of-type(4) .cs-item-text:after {
              /* move dot to the right now */
              left: auto;
              right: calc(-15 / 16 * 1rem); }
        .widget-wrapper #steps-284 .cs-item:nth-of-type(3) .cs-item-text:before {
          height: auto;
          border-top: 1px solid var(--csds-color-brand-base);
          border-radius: calc(8 / 16 * 1rem) 0 0 calc(8 / 16 * 1rem);
          top: 1px;
          bottom: 0px; }
        .widget-wrapper #steps-284 .cs-item:nth-of-type(4) .cs-item-text:before {
          height: 50%;
          border-radius: 0 calc(8 / 16 * 1rem) 0 0;
          border-bottom: none;
          top: -1px; }
      .widget-wrapper #steps-284 .cs-number {
        /* 16px - 20px */
        font-size: clamp(1rem, 2vw, 1.25rem);
        font-weight: 700;
        /* 15px - 24px */
        margin-right: clamp(0.9375rem, 3vw, 1.5rem);
        /* 40px - 52px */
        width: clamp(2.5rem, 5.1vw, 3.25rem);
        height: clamp(2.5rem, 5.1vw, 3.25rem);
        border-radius: 50%;
        border: 2px solid var(--csds-color-brand-base);
        background-color: transparent;
        display: flex;
        justify-content: center;
        align-items: center;
        /* prevents flexbox from squishing it */
        flex: none;
        position: relative; }
      .widget-wrapper #steps-284 .cs-item-text {
        /* 14px - 16px */
        font-size: clamp(0.875rem, 1.6vw, 1rem);
        line-height: 1.5em;
        margin: 0;
        max-width: calc(300 / 16 * 1rem);
        /* 22px - 32px */
        padding: clamp(1.375rem, 3vw, 2rem) 0;
        box-sizing: content-box;
        /* 15px - 24px */
        padding-left: clamp(0.9375rem, 3vw, 1.5rem);
        position: relative; }
        .widget-wrapper #steps-284 .cs-item-text:before {
          /* Green line */
          content: "";
          width: 70%;
          height: 100%;
          border-radius: 0 0 0 calc(8 / 16 * 1rem);
          border-left: 1px solid var(--csds-color-brand-base);
          border-bottom: 1px solid var(--csds-color-brand-base);
          box-sizing: content-box;
          opacity: 1;
          position: absolute;
          display: block;
          top: 0;
          left: 0; }
        .widget-wrapper #steps-284 .cs-item-text:after {
          /* list circle */
          content: "";
          width: calc(8 / 16 * 1rem);
          height: calc(8 / 16 * 1rem);
          background: var(--csds-color-brand-base);
          border-radius: 50%;
          border: 12px solid var(--csds-color-white);
          box-sizing: content-box;
          opacity: 1;
          position: absolute;
          display: block;
          top: 50%;
          left: calc(-15 / 16 * 1rem);
          transform: translateY(-50%); } }
  @media only screen and (min-width: 48rem) {
    .widget-wrapper #steps-284 .cs-container {
      max-width: calc(1104 / 16 * 1rem);
      flex-direction: row;
      justify-content: space-between;
      align-items: flex-start;
      column-gap: calc(44 / 16 * 1rem); }
    .widget-wrapper #steps-284 .cs-content {
      width: 50%;
      /* reset margin to play nice with flexbox */
      margin: 0; }
    .widget-wrapper #steps-284 .cs-right-section {
      width: 57%;
      /* 20px - 25px - this pulls the section up so it's flush with the top of the left section, the padding top on the .cs-item-text is creating a gap at the top of the section. Wrapped in a calc() function to turn clamp() value into a negative number */
      margin-top: calc(clamp(1.25rem, 2vw, 1.5625rem) * -1); } }
  .widget-wrapper .csds-breakout-section {
    --csds-breakout-gutter-width: 16px;
    position: relative;
    left: 50%;
    width: 100vw;
    margin-left: -50vw;
    padding: 2rem var(--csds-breakout-gutter-width); }
    .widget-wrapper .csds-breakout-section .inner-breakout-content {
      max-width: var(--csds-container-max-width);
      margin: auto; }
  .widget-wrapper .csds-timeline {
    position: relative;
    max-width: 1200px;
    margin: 0 auto; }
  .widget-wrapper .csds-timeline::after {
    content: '';
    position: absolute;
    width: 4px;
    background-color: var(--csds-color-neutral-base);
    top: 0;
    bottom: 0;
    left: 50%;
    margin-left: -4px; }
  .widget-wrapper .csds-timeline-container {
    padding: 10px 40px;
    position: relative;
    background-color: inherit;
    width: 50%; }
  .widget-wrapper .csds-timeline-container::after {
    content: '';
    position: absolute;
    width: 25px;
    height: 25px;
    right: -10px;
    background-color: var(--csds-color-brand-base);
    border: 4px solid var(--csds-color-brand-base);
    top: 15px;
    border-radius: 50%;
    z-index: 1; }
  .widget-wrapper .timeline-left {
    left: 0; }
  .widget-wrapper .timeline-right {
    left: 50%; }
  .widget-wrapper .timeline-left::before {
    content: " ";
    height: 0;
    position: absolute;
    top: 22px;
    width: 0;
    z-index: 1;
    right: 30px;
    border: medium solid var(--csds-color-neutral-lightest);
    border-width: 10px 0 10px 10px;
    border-color: transparent transparent transparent var(--csds-color-neutral-lightest); }
  .widget-wrapper .timeline-right::before {
    content: " ";
    height: 0;
    position: absolute;
    top: 22px;
    width: 0;
    z-index: 1;
    left: 30px;
    border: medium solid var(--csds-color-neutral-lightest);
    border-width: 10px 10px 10px 0;
    border-color: transparent var(--csds-color-neutral-lightest) transparent transparent; }
  .widget-wrapper .timeline-right::after {
    left: -16px; }
  .widget-wrapper .csds-timeline-content {
    padding: 20px 30px;
    background-color: var(--csds-color-neutral-lightest);
    position: relative;
    border-radius: 6px; }
  @media (max-width: 551px) {
    .widget-wrapper {
      /* Place the timelime to the left */
      /* Full-width csds-timeline-containers */
      /* Make sure that all arrows are pointing leftwards */
      /* Make sure all circles are at the same spot */
      /* Make all right csds-timeline-containers behave like the left ones */ }
      .widget-wrapper .csds-timeline::after {
        left: 31px; }
      .widget-wrapper .csds-timeline-container {
        width: 100%;
        padding-left: 70px;
        padding-right: 25px; }
      .widget-wrapper .csds-timeline-container::before {
        left: 60px;
        border: medium solid var(--csds-color-neutral-lightest);
        border-width: 10px 10px 10px 0;
        border-color: transparent var(--csds-color-neutral-lightest) transparent transparent; }
      .widget-wrapper .timeline-left::after,
      .widget-wrapper .timeline-right::after {
        left: 15px; }
      .widget-wrapper .timeline-right {
        left: 0%; } }
  .widget-wrapper .timeline-heading {
    font-size: var(--csds-font-size-lg);
    font-weight: var(--csds-font-weight-semibold);
    line-height: var(--csds-line-height-heading);
    margin-bottom: var(--csds-space-2xs); }
  .widget-wrapper .timeline-year {
    font-size: var(--csds-font-size-2xl);
    font-weight: var(--csds-font-weight-bold);
    line-height: var(--csds-line-height-heading); }
  .widget-wrapper .timeline-body, .widget-wrapper .timeline-body p, .widget-wrapper .timeline-body ul {
    font-size: var(--csds-font-size-sm);
    font-weight: var(--csds-font-weight-regular);
    line-height: var(--csds-line-height-base); }
  .widget-wrapper .csds-arrow-prefix:before {
    content: '⟶';
    padding-right: 10px;
    display: inline-block;
    color: var(--csds-color-brand-base);
    font-weight: var(--csds-font-weight-bold);
    margin-left: 10px; }
  .widget-wrapper h1.heading-with-bottom-border {
    font-size: var(--csds-font-size-3xl);
    border-width: var(--csds-border-width-thick); }
  .widget-wrapper h2.heading-with-bottom-border {
    font-size: var(--csds-font-size-2xl);
    border-width: var(--csds-border-width-thick); }
  .widget-wrapper h3.heading-with-bottom-border {
    font-size: var(--csds-font-size-xl);
    border-width: var(--csds-border-width-medium);
    padding-bottom: var(--csds-space-sm); }
  .widget-wrapper h4.heading-with-bottom-border {
    font-size: var(--csds-font-size-lg);
    border-width: var(--csds-border-width-medium);
    padding-bottom: var(--csds-space-sm); }
  .widget-wrapper h5.heading-with-bottom-border {
    font-size: var(--csds-font-size-md);
    padding-bottom: var(--csds-space-xs); }
  .widget-wrapper h6.heading-with-bottom-border {
    font-size: var(--csds-font-size-base);
    padding-bottom: var(--csds-space-xs); }
  .widget-wrapper .heading-with-bottom-border {
    padding-bottom: var(--csds-space-md);
    font-weight: var(--csds-font-weight-semibold);
    color: var(--csds-color-black);
    margin-bottom: var(--csds-space-lg);
    border-bottom: var(--csds-border-width-thin) solid var(--csds-color-brand-base); }
  .widget-wrapper .wrapper-center {
    justify-content: center !important; }
  .widget-wrapper .breakout-wrapper {
    margin: inherit;
    width: 100%; }
    @media (min-width: 801px) {
      .widget-wrapper .breakout-wrapper {
        margin: 0 calc(0px - (100vw - 100%) / 2);
        width: 100vw; } }
  .widget-wrapper .breakout-padding {
    padding-left: calc((100vw - 100%) / 2);
    padding-right: calc((100vw - 100%) / 2); }
  @media only screen and (min-width: 0rem) {
    .widget-wrapper #services-1628 {
      padding: var(--csds-space-sm);
      background-color: #f7f7f7; }
      .widget-wrapper #services-1628 .cs-container {
        width: 100%;
        /* changes to 1280px at tablet */
        max-width: calc(550 / 16 * 1rem);
        margin: auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        /* 48px - 64px */
        gap: clamp(3rem, 6vw, 4rem); }
      .widget-wrapper #services-1628 .cs-content {
        /* set text align to left if content needs to be left aligned */
        text-align: left;
        width: 100%;
        display: flex;
        flex-direction: column;
        /* centers content horizontally, set to flex-start to left align */
        align-items: flex-start; }
      .widget-wrapper #services-1628 .cs-title {
        max-width: 20ch; }
      .widget-wrapper #services-1628 .cs-text {
        max-width: calc(640 / 16 * 1rem);
        position: relative;
        z-index: 1; }
        .widget-wrapper #services-1628 .cs-text:after {
          /* divider line */
          content: "";
          width: 100%;
          height: 1px;
          margin-top: calc(24 / 16 * 1rem);
          background: var(--csds-color-brand-base);
          opacity: 1;
          display: block;
          position: relative; }
      .widget-wrapper #services-1628 .cs-chevron {
        --chevronColor: var(--csds-color-brand-base);
        width: calc(48 / 16 * 1rem);
        height: auto; }
      .widget-wrapper #services-1628 .cs-card-group {
        width: 100%;
        margin: 0;
        padding: 0;
        display: grid;
        grid-template-columns: repeat(12, 1fr);
        /* 16px - 20px */
        column-gap: clamp(1rem, 2.5vw, 1.25rem);
        /* 28px - 40px */
        row-gap: clamp(1.75rem, 2.5vw, 2.5rem); }
      .widget-wrapper #services-1628 .cs-item {
        list-style: none;
        width: 100%;
        display: flex;
        grid-column: span 12;
        flex-direction: column;
        align-items: flex-start; }
        .widget-wrapper #services-1628 .cs-item:hover .cs-picture img {
          opacity: .5;
          transform: scale(1.2); }
      .widget-wrapper #services-1628 .cs-link {
        text-decoration: none;
        height: 100%;
        display: flex;
        flex-direction: column;
        align-items: flex-start; }
      .widget-wrapper #services-1628 .cs-picture {
        width: 100%;
        height: calc(240 / 16 * 1rem);
        margin-bottom: calc(24 / 16 * 1rem);
        background-color: #000;
        overflow: hidden;
        display: block;
        position: relative; }
        .widget-wrapper #services-1628 .cs-picture img {
          position: absolute;
          top: 0;
          left: 0;
          height: 100%;
          width: 100%;
          object-fit: cover;
          transition: transform .6s, opacity .3s; }
      .widget-wrapper #services-1628 .cs-h3 {
        text-align: left;
        color: var(--csds-color-brand-base); }
      .widget-wrapper #services-1628 .cs-item-text {
        font-size: calc(16 / 16 * 1rem);
        line-height: 1.5em;
        text-align: left;
        margin: 0 0 calc(24 / 16 * 1rem) 0;
        color: var(--csds-color-neutral-darkest); }
      .widget-wrapper #services-1628 .cs-fake-link {
        font-size: calc(16 / 16 * 1rem);
        line-height: 1.2em;
        font-weight: 700;
        margin: 0;
        margin-top: auto;
        color: var(--primary);
        display: inline-flex;
        justify-content: flex-start;
        align-items: center;
        gap: calc(8 / 16 * 1rem); }
        .widget-wrapper #services-1628 .cs-fake-link:hover .cs-icon {
          transform: translateX(0.5rem); }
      .widget-wrapper #services-1628 .cs-icon {
        width: calc(20 / 16 * 1rem);
        height: auto;
        display: block;
        transition: transform .3s; } }
  @media (min-width: 801px) {
    .widget-wrapper #services-1628 .cs-container {
      max-width: calc(1280 / 16 * 1rem); }
    .widget-wrapper #services-1628 .cs-content {
      flex-direction: row;
      justify-content: center;
      align-items: center; }
    .widget-wrapper #services-1628 .cs-flex {
      text-align: left;
      width: 40vw;
      max-width: calc(640 / 16 * 1rem);
      flex: none; }
    .widget-wrapper #services-1628 .cs-title {
      margin: 0; }
    .widget-wrapper #services-1628 .cs-text {
      padding: calc(12 / 16 * 1rem) 0 calc(12 / 16 * 1rem) calc(24 / 16 * 1rem); }
      .widget-wrapper #services-1628 .cs-text:after {
        width: 1px;
        height: 100%;
        margin: 0 calc(24 / 16 * 1rem) 0 0;
        order: -1;
        position: absolute;
        left: 0;
        top: 0; }
    .widget-wrapper #services-1628 .cs-item {
      grid-column: span 6; } }
  @media (min-width: 801px) and (min-width: 1261px) {
    .widget-wrapper #services-1628 .cs-item {
      grid-column: span 3; } }
  @media (min-width: 801px) {
    .widget-wrapper #services-1628 .cs-picture {
      /* 240px - 420px */
      height: clamp(15rem, 33vw, 26.25rem); } }
  @media only screen and (min-width: 0rem) {
    .widget-wrapper #services-1377 {
      padding: var(--sectionPadding);
      background-color: #f7f7f7; }
      .widget-wrapper #services-1377 .cs-container {
        width: 100%;
        max-width: calc(1280 / 16 * 1rem);
        margin: auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        /* 48px - 64px */
        gap: clamp(3rem, 6vw, 4rem); }
      .widget-wrapper #services-1377 .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; }
      .widget-wrapper #services-1377 .cs-topper {
        color: var(--secondary); }
      .widget-wrapper #services-1377 .cs-card-group {
        width: 100%;
        margin: 0;
        padding: 0;
        display: grid;
        grid-template-columns: repeat(12, 1fr);
        /* 16px - 20px */
        gap: clamp(1rem, 2.3vw, 1.25rem); }
      .widget-wrapper #services-1377 .cs-item {
        list-style: none;
        width: 100%;
        /* 210px - 305px */
        min-height: clamp(13.125rem, 30vw, 19.0625rem);
        margin: 0;
        /* prevents padding and border from affecting height and width */
        box-sizing: border-box;
        /* 16px - 24px */
        padding: clamp(1rem, 1.8vw, 1.5rem);
        /* 24px - 32px */
        padding-top: clamp(1.5rem, 2.3vw, 2rem);
        background-color: #fff;
        border-radius: calc(24 / 16 * 1rem);
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        align-items: start;
        grid-column: span 12;
        gap: calc(48 / 16 * 1rem);
        position: relative;
        z-index: 1;
        transition: background-color 0.3s; }
        .widget-wrapper #services-1377 .cs-item:hover {
          background-color: var(--csds-color-brand-base); }
          .widget-wrapper #services-1377 .cs-item:hover .cs-icon,
          .widget-wrapper #services-1377 .cs-item:hover .cs-arrow {
            filter: grayscale(1) brightness(1000%); }
          .widget-wrapper #services-1377 .cs-item:hover .cs-h3 {
            color: #fff; }
          .widget-wrapper #services-1377 .cs-item:hover .cs-arrow-wrapper {
            border-color: #fff; }
      .widget-wrapper #services-1377 .cs-icon {
        width: auto;
        height: calc(40 / 16 * 1rem);
        transition: filter 0.3s; }
      .widget-wrapper #services-1377 .cs-link {
        text-decoration: none;
        color: var(--headerColor);
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        align-items: flex-end;
        gap: calc(10 / 16 * 1rem); }
      .widget-wrapper #services-1377 .cs-h3 {
        /* 20px - 25px */
        font-size: clamp(1.25rem, 2.5vw, 1.5625rem);
        font-weight: bold;
        line-height: 1.2em;
        text-align: inherit;
        /* if a word is too long for the card, break it onto a new line */
        word-break: break-word;
        margin: 0;
        transition: color 0.3s; }
      .widget-wrapper #services-1377 .cs-arrow-wrapper {
        width: calc(48 / 16 * 1rem);
        height: calc(48 / 16 * 1rem);
        border: 1px solid #bababa;
        border-radius: 50%;
        display: flex;
        justify-content: center;
        align-items: center;
        /* prevents the parent flexbox from shrinking the arrow */
        flex-shrink: 0;
        transition: border-color 0.3s; }
      .widget-wrapper #services-1377 .cs-arrow {
        width: auto;
        height: calc(12 / 16 * 1rem);
        transition: filter 0.3s; } }
  @media only screen and (min-width: 31.25rem) {
    .widget-wrapper #services-1377 .cs-item {
      grid-column: span 6; } }
  @media only screen and (min-width: 48rem) {
    .widget-wrapper #services-1377 .cs-item {
      text-align: left;
      align-items: flex-start;
      grid-column: span 3; } }
  @media only screen and (min-width: 81.25rem) {
    .widget-wrapper #services-1377 .cs-link {
      flex-direction: row; } }
  @media only screen and (min-width: 0rem) {
    .widget-wrapper #services-1191 {
      padding: var(--sectionPadding);
      /* prevents padding from affecting height and  */
      box-sizing: border-box; }
      .widget-wrapper #services-1191 .cs-container {
        /* changes to 1440px at desktop */
        max-width: calc(940 / 16 * 1rem);
        width: 100%;
        margin: auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        /* 48px - 64px */
        gap: clamp(3rem, 6vw, 4rem); }
      .widget-wrapper #services-1191 .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; }
      .widget-wrapper #services-1191 .cs-title {
        max-width: 20ch; }
      .widget-wrapper #services-1191 .cs-wrapper {
        display: flex;
        flex-direction: column;
        align-items: center;
        /* 48px - 64px */
        gap: clamp(3rem, 6vw, 4rem);
        position: relative; }
      .widget-wrapper #services-1191 .cs-image {
        width: 100%;
        max-width: calc(510 / 16 * 1rem);
        height: auto;
        display: block;
        position: relative; }
        .widget-wrapper #services-1191 .cs-image img {
          width: 100%;
          height: auto; }
      .widget-wrapper #services-1191 .cs-card-group {
        width: 100%;
        margin: 0;
        padding: 0;
        display: grid;
        justify-content: center;
        row-gap: calc(16 / 16 * 1rem); }
      .widget-wrapper #services-1191 .cs-item {
        text-align: center;
        list-style: none;
        max-width: calc(368 / 16 * 1rem);
        width: 100%;
        margin: 0;
        box-sizing: border-box;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: calc(20 / 16 * 1rem); }
      .widget-wrapper #services-1191 .cs-picture {
        width: calc(80 / 16 * 1rem);
        height: calc(80 / 16 * 1rem);
        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; }
      .widget-wrapper #services-1191 .cs-icon {
        width: calc(30 / 16 * 1rem);
        height: auto;
        display: block; }
      .widget-wrapper #services-1191 .cs-h3 {
        font-size: calc(20 / 16 * 1rem);
        line-height: 1.5em;
        margin: 0;
        margin-bottom: calc(8 / 16 * 1rem);
        color: var(--headerColor);
        text-align: inherit; }
      .widget-wrapper #services-1191 .cs-item-text {
        /* 14px - 16px */
        font-size: clamp(0.875rem, 1.5vw, 1rem);
        line-height: 1.5em;
        margin: 0;
        color: var(--bodyTextColor);
        text-align: inherit; }
      .widget-wrapper #services-1191 .cs-button-solid {
        font-size: calc(16 / 16 * 1rem);
        /* 46px - 56px */
        line-height: clamp(2.875rem, 5.5vw, 3.5rem);
        font-weight: 700;
        min-width: calc(150 / 16 * 1rem);
        margin: 0;
        /* prevents padding from adding to the width */
        box-sizing: border-box;
        padding: 0 calc(24 / 16 * 1rem);
        color: #fff;
        background-color: var(--csds-color-brand-base);
        text-decoration: none;
        display: inline-block;
        position: relative;
        z-index: 1;
        text-align: center; }
        .widget-wrapper #services-1191 .cs-button-solid:before {
          content: "";
          width: 0%;
          height: 100%;
          background: #000;
          opacity: 1;
          position: absolute;
          top: 0;
          left: 0;
          z-index: -1;
          transition: width 0.3s; }
        .widget-wrapper #services-1191 .cs-button-solid:hover:before {
          width: 100%; } }
  @media only screen and (min-width: 48rem) {
    .widget-wrapper #services-1191 .cs-card-group {
      display: flex;
      flex-direction: row;
      justify-content: space-between;
      align-items: center;
      flex-wrap: wrap; }
    .widget-wrapper #services-1191 .cs-item {
      text-align: left;
      margin: 0;
      width: 32%;
      align-items: flex-start; }
    .widget-wrapper #services-1191 .cs-image {
      max-height: calc(450 / 16 * 1rem); }
      .widget-wrapper #services-1191 .cs-image img {
        width: 100%;
        height: auto;
        max-height: calc(450 / 16 * 1rem);
        object-fit: contain; } }
  @media only screen and (min-width: 64rem) {
    .widget-wrapper #services-1191 .cs-container {
      max-width: calc(1440 / 16 * 1rem); }
    .widget-wrapper #services-1191 .cs-image {
      width: 30vw;
      display: flex;
      justify-content: center;
      align-items: center;
      position: absolute;
      left: 50%;
      top: 50%;
      transform: translate(-50%, -50%); }
      .widget-wrapper #services-1191 .cs-image img {
        width: auto;
        height: auto; }
    .widget-wrapper #services-1191 .cs-card-group {
      align-items: flex-start;
      justify-content: center;
      /* 180px - 356px */
      column-gap: clamp(11.25rem, 21vw, 22.25rem);
      /* 40px - 88px */
      row-gap: clamp(2.5rem, 8vw, 5.5rem); }
    .widget-wrapper #services-1191 .cs-item {
      width: 32vw;
      max-width: calc(422 / 16 * 1rem);
      flex-direction: row;
      position: relative; }
      .widget-wrapper #services-1191 .cs-item:nth-of-type(odd) {
        text-align: right; }
        .widget-wrapper #services-1191 .cs-item:nth-of-type(odd) .cs-picture {
          /* sends it to the right in the 2nd position */
          order: 2; }
      .widget-wrapper #services-1191 .cs-item:nth-of-type(3) {
        /* 90px - 1280px */
        left: calc(clamp(5.625rem, 8vw, 8rem) * -1); }
      .widget-wrapper #services-1191 .cs-item:nth-of-type(4) {
        /* 90px - 1280px */
        right: calc(clamp(5.625rem, 8vw, 8rem) * -1); } }
  @media only screen and (min-width: 0rem) {
    .widget-wrapper #cs-menu-group-1040 {
      text-align: center;
      height: auto;
      padding: var(--sectionPadding);
      background-color: var(--csds-color-neutral-light); }
      .widget-wrapper #cs-menu-group-1040 .cs-container {
        width: 100%;
        /* changes to 1280px at tablet */
        max-width: calc(550 / 16 * 1rem);
        margin: auto;
        /* prevents padding and border from affecting height and width */
        box-sizing: border-box;
        display: flex;
        flex-direction: column;
        align-items: center;
        /* 48px - 64px */
        gap: clamp(3rem, 6vw, 4rem);
        position: relative; }
      .widget-wrapper #cs-menu-group-1040 .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; }
      .widget-wrapper #cs-menu-group-1040 .cs-icon-wrapper {
        width: 100%;
        margin: 0 0 calc(12 / 16 * 1rem);
        display: flex;
        justify-content: center;
        align-items: center;
        gap: calc(16 / 16 * 1rem);
        position: relative; }
        .widget-wrapper #cs-menu-group-1040 .cs-icon-wrapper:before {
          /* left line */
          content: "";
          width: 50%;
          max-width: calc(150 / 16 * 1rem);
          height: 1px;
          background: #b4b2c7;
          opacity: 0.2;
          position: relative;
          display: block; }
        .widget-wrapper #cs-menu-group-1040 .cs-icon-wrapper:after {
          /* right line */
          content: "";
          width: 50%;
          max-width: calc(150 / 16 * 1rem);
          height: 1px;
          background: #b4b2c7;
          opacity: 0.2;
          position: relative;
          display: block; }
      .widget-wrapper #cs-menu-group-1040 .cs-icon {
        width: 40%;
        /* 100px - 180px */
        max-width: clamp(6.25rem, 18vw, 11.25rem);
        height: auto;
        /* prevents flexbox from squishing it */
        flex: none; }
      .widget-wrapper #cs-menu-group-1040 .cs-title {
        margin: 0 0 calc(32 / 16 * 1rem); }
      .widget-wrapper #cs-menu-group-1040 .cs-hidden {
        display: none; }
      .widget-wrapper #cs-menu-group-1040 .cs-button-group {
        width: auto;
        max-width: calc(1000 / 16 * 1rem);
        margin: 0 calc(16 / 16 * 1rem);
        /* 16px - 28px top & bottom */
        /* 32px - 48px left & right */
        padding: clamp(1rem, 3vw, 1.75rem) clamp(2rem, 4vw, 3rem);
        border-radius: calc(70 / 16 * 1rem);
        background-color: rgba(255, 255, 255, 0.02);
        border: 1px solid rgba(255, 255, 255, 0.2);
        display: inline-flex;
        justify-content: center;
        flex-wrap: wrap;
        align-items: center;
        /* 24px - 36px */
        column-gap: clamp(1.5rem, 2vw, 2.25rem);
        row-gap: calc(12 / 16 * 1rem); }
      .widget-wrapper #cs-menu-group-1040 .cs-button {
        font-size: calc(16 / 16 * 1rem);
        line-height: 1.5em;
        font-weight: 400;
        margin: 0;
        padding: 0;
        color: #fafbfc;
        background: transparent;
        border: none;
        display: flex;
        justify-content: center;
        align-items: center;
        position: relative;
        transition: color 0.3s, font-weight 0.3s, color 0.3s; }
        .widget-wrapper #cs-menu-group-1040 .cs-button:hover {
          color: var(--csds-color-brand-base);
          cursor: pointer; }
        .widget-wrapper #cs-menu-group-1040 .cs-button:after {
          /* active state icon */
          content: "";
          position: relative;
          display: block;
          width: 0;
          /* 16px - 24px */
          height: clamp(1rem, 3vw, 1.5rem);
          background: url("https://csimg.nyc3.cdn.digitaloceanspaces.com/Icons%2Ffancy-icon.svg");
          background-size: contain;
          background-position: center;
          background-repeat: no-repeat;
          opacity: 0;
          transition: width 0.3s, opacity 0.3s, margin-left 0.3s; }
        .widget-wrapper #cs-menu-group-1040 .cs-button.cs-active {
          color: var(--csds-color-white);
          font-weight: 700; }
          .widget-wrapper #cs-menu-group-1040 .cs-button.cs-active:after {
            width: clamp(1.5625rem, 3vw, 2.25rem);
            opacity: 1;
            /* 8px - 16px */
            margin-left: clamp(0.5rem, 0.5vw, 1rem); }
      .widget-wrapper #cs-menu-group-1040 .cs-menu {
        display: flex;
        flex-direction: column;
        align-items: center;
        /* 32px - 64px */
        gap: clamp(2rem, 6vw, 4rem); }
      .widget-wrapper #cs-menu-group-1040 .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;
        position: relative;
        z-index: 20; }
      .widget-wrapper #cs-menu-group-1040 .cs-card-group {
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: column;
        justify-content: center;
        column-gap: calc(20 / 16 * 1rem);
        /* 32px - 60px */
        row-gap: clamp(2rem, 6vw, 3.75rem); }
      .widget-wrapper #cs-menu-group-1040 .cs-item {
        list-style: none;
        width: 100%;
        max-width: calc(580 / 16 * 1rem);
        margin: 0;
        display: flex;
        justify-content: space-between;
        align-items: center;
        /* 16px - 36px */
        gap: clamp(1rem, 3vw, 2.25rem); }
      .widget-wrapper #cs-menu-group-1040 .cs-picture {
        /* 76px - 160px */
        width: clamp(4.75rem, 14vw, 10rem);
        height: clamp(4.75rem, 14vw, 10rem);
        overflow: hidden;
        display: block;
        flex: none;
        position: relative; }
        .widget-wrapper #cs-menu-group-1040 .cs-picture img {
          position: absolute;
          top: 0;
          left: 0;
          height: 100%;
          width: 100%;
          /* makes it act like a background image */
          object-fit: cover; }
      .widget-wrapper #cs-menu-group-1040 .cs-h3 {
        /* 16px - 24px */
        font-size: clamp(1rem, 2vw, 1.5rem);
        line-height: 1.2em;
        font-weight: 700;
        text-align: left;
        /* 8px - 16px */
        margin: 0 0 clamp(0.5rem, 1.5vw, 1rem);
        color: var(--csds-color-white);
        display: flex;
        justify-content: space-between;
        align-items: center;
        position: relative;
        gap: calc(12 / 16 * 1rem); }
        .widget-wrapper #cs-menu-group-1040 .cs-h3:after {
          content: "";
          width: 50%;
          height: 1px;
          background: #b4b2c7;
          opacity: 0.2;
          position: relative;
          display: block;
          order: 1; }
      .widget-wrapper #cs-menu-group-1040 .cs-name {
        /* 16px - 20px */
        font-size: clamp(1rem, 2vw, 1.5625rem);
        line-height: 1.2em;
        width: auto;
        max-width: 70%;
        color: var(--csds-color-white);
        flex: none; }
      .widget-wrapper #cs-menu-group-1040 .cs-price {
        /* 16px - 25px */
        font-size: clamp(1rem, 2vw, 1.5625rem);
        /* 28px - 46px */
        line-height: clamp(1.75rem, 4vw, 2.875rem);
        font-weight: 700;
        /* 8px - 12px */
        padding: 0 clamp(0.5rem, 1vw, 0.75rem);
        color: var(--csds-color-brand-base);
        background-color: transparent;
        border-radius: calc(80 / 16 * 1rem);
        border: 1px solid #b4b2c7;
        display: flex;
        align-items: center;
        order: 3; }
      .widget-wrapper #cs-menu-group-1040 .cs-item-p {
        /* 14px - 16px */
        font-size: clamp(0.875rem, 2vw, 1rem);
        line-height: 1.5em;
        text-align: left;
        margin: 0;
        color: var(--csds-color-white);
        opacity: 0.8; }
      .widget-wrapper #cs-menu-group-1040 .cs-button-solid {
        font-size: calc(16 / 16 * 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: calc(150 / 16 * 1rem);
        padding: 0 calc(32 / 16 * 1rem);
        background-color: var(--csds-color-brand-base);
        display: inline-block;
        position: relative;
        z-index: 1;
        /* prevents padding from adding to the width */
        box-sizing: border-box; }
        .widget-wrapper #cs-menu-group-1040 .cs-button-solid:before {
          content: "";
          position: absolute;
          height: 100%;
          width: 0%;
          background: #000;
          opacity: 1;
          top: 0;
          left: 0;
          z-index: -1;
          transition: width 0.3s; }
        .widget-wrapper #cs-menu-group-1040 .cs-button-solid:hover:before {
          width: 100%; } }
  @media only screen and (max-width: 22.4375rem) {
    .widget-wrapper #cs-menu-group-1040 .cs-picture {
      /* removed the picture on smaller devices so everything fits on the screen better */
      display: none; } }
  @media only screen and (min-width: 48rem) {
    .widget-wrapper #cs-menu-group-1040 .cs-container {
      max-width: calc(1280 / 16 * 1rem); }
    .widget-wrapper #cs-menu-group-1040 .cs-card-group {
      flex-direction: row;
      justify-content: space-between;
      flex-wrap: wrap;
      column-gap: calc(20 / 16 * 1rem); }
    .widget-wrapper #cs-menu-group-1040 .cs-item {
      width: 48.5%; } }
  @media only screen and (min-width: 0rem) {
    .widget-wrapper #hero-143 {
      /* Centers button */
      text-align: center;
      /* 144px - 300px - leaving extra space for the navigation */
      padding: clamp(9rem, 25.95vw, 18.75rem) calc(16 / 16 * 1rem) 0;
      /* 130px - 450px */
      padding-bottom: clamp(12.125rem, 30.95vw, 28.125rem);
      position: relative;
      z-index: 1;
      /* Prevents white rectangle pseudos from overlapping the sections below */
      overflow: hidden; }
      .widget-wrapper #hero-143:before {
        /* Left side of the triangle */
        content: "";
        width: calc(500 / 16 * 1rem);
        /* make really long so it covers the whole screen all the way to desktop */
        height: calc(4000 / 16 * 1rem);
        background: #fff;
        opacity: 1;
        transform: rotate(-67deg);
        transform-origin: center;
        position: absolute;
        display: block;
        bottom: calc(-2235 / 16 * 1rem);
        /* this makes the right edge sit at the 50% line at all times */
        right: 50%;
        z-index: 0; }
      .widget-wrapper #hero-143:after {
        /* Right side of the triangle */
        content: "";
        width: calc(500 / 16 * 1rem);
        height: calc(4000 / 16 * 1rem);
        background: #fff;
        opacity: 1;
        transform: rotate(67deg);
        transform-origin: center;
        position: absolute;
        display: block;
        bottom: calc(-2235 / 16 * 1rem);
        /* this makes the left edge sit at the 50% line at all times */
        left: 50%;
        z-index: 0; }
      .widget-wrapper #hero-143 .cs-background {
        width: 100%;
        height: 100%;
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        z-index: -2; }
        .widget-wrapper #hero-143 .cs-background:before {
          /* Overlay */
          content: "";
          width: 100%;
          height: 100%;
          background: #000;
          opacity: 0.7;
          position: absolute;
          display: block;
          top: 0;
          left: 0;
          z-index: 1;
          /* prevents the cursor from interacting with it */
          pointer-events: none; }
        .widget-wrapper #hero-143 .cs-background img {
          position: absolute;
          top: 0;
          left: 0;
          height: 100%;
          width: 100%;
          object-fit: cover; }
      .widget-wrapper #hero-143 .cs-container {
        width: 100%;
        max-width: calc(1280 / 16 * 1rem);
        margin: auto; }
      .widget-wrapper #hero-143 .cs-title {
        /* 39px - 61px */
        font-size: clamp(2.4375rem, 6.4vw, 3.8125rem);
        font-weight: 700;
        line-height: 1.2em;
        text-align: center;
        max-width: calc(829 / 16 * 1rem);
        /* 16px - 24px */
        margin: 0 auto clamp(1rem, 4vw, 1.5rem);
        color: #fff;
        position: relative; }
        .widget-wrapper #hero-143 .cs-title:after {
          /* Divider Line */
          content: "";
          /* 60px - 100px */
          width: clamp(3.75rem, 9.5vw, 6.25rem);
          /* 4px - 8px */
          height: clamp(0.25rem, 0.8vw, 0.5rem);
          /* 16px - 24px */
          margin: clamp(1rem, 4vw, 1.5rem) auto clamp(1rem, 4vw, 1.5rem);
          background: var(--csds-color-brand-base);
          opacity: 1;
          position: relative;
          display: block; }
      .widget-wrapper #hero-143 .cs-text {
        /* 16px - 25px */
        font-size: clamp(1rem, 1.95vw, 1.5625rem);
        line-height: 1.5em;
        text-align: center;
        width: 100%;
        /* 464px - 800px */
        max-width: clamp(29rem, 60vw, 50rem);
        margin: 0 auto;
        /* 40px - 48px */
        margin-bottom: clamp(2.5rem, 4vw, 3rem);
        color: #fff; }
      .widget-wrapper #hero-143 .cs-button-solid {
        font-size: calc(16 / 16 * 1rem);
        /* 46px - 56px */
        line-height: clamp(2.875rem, 5.5vw, 3.5rem);
        text-decoration: none;
        font-weight: 700;
        margin: auto;
        color: #1a1a1a;
        min-width: calc(150 / 16 * 1rem);
        padding: 0 calc(24 / 16 * 1rem);
        background-color: var(--csds-color-brand-base);
        border-radius: calc(4 / 16 * 1rem);
        display: inline-block;
        position: relative;
        z-index: 1;
        transition: color 0.3s; }
        .widget-wrapper #hero-143 .cs-button-solid:before {
          content: "";
          position: absolute;
          height: 100%;
          width: 0%;
          background: #000;
          opacity: 1;
          top: 0;
          left: 0;
          z-index: -1;
          border-radius: calc(4 / 16 * 1rem);
          transition: width 0.3s; }
        .widget-wrapper #hero-143 .cs-button-solid:hover {
          color: #fff; }
          .widget-wrapper #hero-143 .cs-button-solid:hover:before {
            width: 100%; } }
  @media only screen and (min-width: 81.25rem) {
    .widget-wrapper #hero-143 {
      background: url("https://www.clarionsafety.com/product_images/uploaded_images/clarion-web-prototypes-1-.png?t=1648746652");
      background-size: cover;
      background-position: center;
      background-repeat: no-repeat;
      /* makes the parallax effect */
      background-attachment: fixed; }
      .widget-wrapper #hero-143 .cs-background img {
        display: none; } }
  @media only screen and (min-width: 0rem) {
    .widget-wrapper #h-services-143 {
      /* 40px - 100px */
      padding: 0 calc(16 / 16 * 1rem) clamp(2.5rem, 7.9vw, 6.25rem) calc(16 / 16 * 1rem);
      position: relative;
      /* give a higher z index than the hero so it can sit on top */
      z-index: 10; }
      .widget-wrapper #h-services-143 .cs-card-group {
        width: 100%;
        max-width: calc(465 / 16 * 1rem);
        margin: 0 auto 0;
        /* negative margin pulls it up on top of the hero section */
        /* -46px to -76px - we're calculating whatever clamp is and multiplying by -1
            to make the value negative since clamp doesn't work with negative values */
        margin-top: calc(clamp(5rem, 13vw, 4.75rem) * -1);
        /* 40px - 60px top and bottom, 16px - 44px left & right */
        padding: clamp(2.5rem, 4.7vw, 3.75rem) clamp(1rem, 5.3vw, 2.75rem);
        box-shadow: 0px 20px 40px 0px rgba(0, 0, 0, 0.05);
        border-radius: calc(5 / 16 * 1rem);
        border-top: 8px solid var(--csds-color-brand-base);
        background-color: #fff;
        /* prevents padding and border from affecting height and width */
        box-sizing: border-box; }
      .widget-wrapper #h-services-143 .cs-item {
        list-style: none;
        margin: 0 auto calc(32 / 16 * 1rem);
        width: 100%;
        max-width: calc(360 / 16 * 1rem); }
        .widget-wrapper #h-services-143 .cs-item:last-of-type {
          margin-bottom: 0; }
      .widget-wrapper #h-services-143 .cs-icon {
        /* 68px - 88px */
        width: clamp(6.25rem, 8.8vw, 7.5rem);
        /* 68px - 88px */
        height: clamp(6.25rem, 8.8vw, 7.5rem);
        margin: auto;
        /* 20px - 24px */
        margin-bottom: clamp(1.25rem, 5vw, 1.5rem);
        background: var(--csds-color-brand-base);
        border-radius: 50%;
        display: flex;
        justify-content: center;
        align-items: center; }
        .widget-wrapper #h-services-143 .cs-icon img {
          /* 44px - 52px */
          height: auto; }
      .widget-wrapper #h-services-143 .cs-title {
        font-size: calc(20 / 16 * 1rem);
        line-height: 1.2em;
        text-transform: uppercase;
        text-align: center;
        margin: 0 auto calc(8 / 16 * 1rem);
        color: var(--headerColor); }
      .widget-wrapper #h-services-143 .cs-text {
        font-size: calc(16 / 16 * 1rem);
        text-align: center;
        line-height: 1.5em;
        max-width: calc(360 / 16 * 1rem);
        margin: 0 auto;
        color: var(--bodyTextColor); } }
  @media only screen and (min-width: 48rem) {
    .widget-wrapper #h-services-143 .cs-card-group {
      max-width: calc(784 / 16 * 1rem);
      /* -76px to -320px - we're calculating whatever clamp is and multiplying by -1
               to make the value negative since clamp doesn't work with negative values */
      margin-top: calc(clamp(4.75rem, 20vw, 20rem) * -1);
      display: flex;
      justify-content: space-between;
      align-items: center;
      flex-wrap: wrap;
      column-gap: calc(40 / 16 * 1rem); }
    .widget-wrapper #h-services-143 .cs-item {
      width: 45%;
      max-width: calc(314 / 16 * 1rem); }
      .widget-wrapper #h-services-143 .cs-item:last-of-type {
        margin-bottom: calc(32 / 16 * 1rem); } }
  @media only screen and (min-width: 81.25rem) {
    .widget-wrapper #h-services-143 .cs-card-group {
      max-width: calc(1280 / 16 * 1rem);
      flex-wrap: nowrap; }
    .widget-wrapper #h-services-143 .cs-item {
      margin: 0; }
      .widget-wrapper #h-services-143 .cs-item:last-of-type {
        margin-bottom: 0; } }
  @media only screen and (min-width: 0rem) {
    .widget-wrapper #cs-footer-107 {
      padding: calc(40/16 * 1rem) calc(16/16 * 1rem);
      background: #1a1a1a; }
      .widget-wrapper #cs-footer-107 .cs-container {
        width: 100%;
        max-width: calc(1280/16 * 1rem);
        margin: auto; }
      .widget-wrapper #cs-footer-107 .cs-ul {
        padding: 0;
        margin: auto;
        display: flex;
        /* make flexbox arrange top to bottom */
        flex-direction: column;
        align-items: center;
        gap: calc(20/16 * 1rem); }
      .widget-wrapper #cs-footer-107 .cs-li {
        list-style: none;
        text-align: center;
        margin: 0; }
      .widget-wrapper #cs-footer-107 .cs-copyright {
        font-size: calc(15/16 * 1rem);
        line-height: 1.5em;
        margin-top: calc(20/16 * 1rem);
        color: #a0a3bd;
        display: block;
        /* send to first position at the bottom */
        order: 1;
        /* prevents flexbox from squishing it */
        flex: none; }
      .widget-wrapper #cs-footer-107 .cs-link {
        /* 15px - 17px */
        font-size: clamp(0.9375rem, 2vw, 1.0625rem);
        line-height: 1.5em;
        text-decoration: none;
        font-weight: 700;
        color: var(--csds-color-white);
        position: relative; }
        .widget-wrapper #cs-footer-107 .cs-link:hover:before {
          width: 100%; }
        .widget-wrapper #cs-footer-107 .cs-link:before {
          /* top right box */
          content: "";
          width: 0%;
          height: calc(3/16 * 1rem);
          background: var(--csds-color-white);
          opacity: 1;
          position: absolute;
          display: block;
          bottom: calc(-2/16 * 1rem);
          left: 0;
          transition: width 0.3s; } }
  @media only screen and (min-width: 43.75rem) {
    .widget-wrapper #cs-footer-107 .cs-ul {
      flex-direction: row;
      /* push everything to the left */
      justify-content: flex-start;
      /* 44px - 88px */
      gap: clamp(2.75rem, 7vw, 5.5rem); }
    .widget-wrapper #cs-footer-107 .cs-copyright {
      /* marign auto on the left pushes away from the rest of the flex children */
      margin: 0 0 0 auto;
      /* send to the right most position */
      order: 2; } }
  @media only screen and (min-width: 0rem) {
    .widget-wrapper #stats-5 {
      padding: var(--sectionPadding);
      position: relative;
      z-index: 1; }
      .widget-wrapper #stats-5 .cs-container {
        width: 100%;
        max-width: calc(1280 / 16 * 1rem);
        margin: auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        /* 48px - 64px */
        gap: clamp(3rem, 6vw, 4rem); }
      .widget-wrapper #stats-5 .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; }
      .widget-wrapper #stats-5 .cs-text {
        font-size: var(--bodyFontSize);
        line-height: 1.5em;
        text-align: inherit;
        width: 100%;
        max-width: calc(650 / 16 * 1rem);
        margin: 0;
        color: var(--bodyTextColor); }
      .widget-wrapper #stats-5 .cs-title {
        color: var(--csds-color-white); }
      .widget-wrapper #stats-5 .cs-text {
        color: var(--csds-color-white);
        opacity: 0.8; }
      .widget-wrapper #stats-5 .cs-card-group {
        width: 100%;
        max-width: calc(500 / 16 * 1rem);
        padding: 0 calc(20 / 16 * 1rem);
        /* 40px - 68px */
        padding-top: clamp(2.5rem, 5.7vw, 4.25rem);
        /* 48px - 80px */
        padding-bottom: clamp(3rem, 6.5vw, 5rem);
        margin: 0;
        background: #fff;
        border-top: 8px solid var(--csds-color-brand-baseLight);
        border-radius: calc(5 / 16 * 1rem);
        display: flex;
        flex-direction: column;
        justify-content: space-around;
        flex-wrap: wrap;
        align-items: center;
        gap: calc(55 / 16 * 1em);
        box-shadow: 0 calc(20 / 16 * 1em) calc(40 / 16 * 1em) 0 rgba(0, 0, 0, 0.05);
        /* prevents padding from adding to the width of the container */
        box-sizing: border-box; }
      .widget-wrapper #stats-5 .cs-item {
        text-align: center;
        list-style: none;
        width: 100%; }
      .widget-wrapper #stats-5 .cs-number {
        /* 39px - 61px */
        font-size: clamp(2.4375rem, 4.7vw, 3.8125rem);
        font-weight: 700;
        line-height: 1.2em;
        /* 4px - 8px */
        margin-bottom: clamp(0.25rem, 0.78vw, 0.5rem);
        color: var(--csds-color-brand-base);
        display: block; }
      .widget-wrapper #stats-5 .cs-header {
        /* 16px - 25px */
        font-size: clamp(1rem, 2vw, 1.5625rem);
        font-weight: 700;
        line-height: 1.2em;
        color: var(--headerColor); }
      .widget-wrapper #stats-5 .cs-button-solid {
        font-size: calc(16 / 16 * 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: calc(150 / 16 * 1rem);
        padding: 0 calc(24 / 16 * 1rem);
        background-color: var(--csds-color-brand-base);
        border-radius: calc(4 / 16 * 1rem);
        display: inline-block;
        position: relative;
        z-index: 1;
        /* prevents padding from adding to the width */
        box-sizing: border-box; }
        .widget-wrapper #stats-5 .cs-button-solid:before {
          content: "";
          position: absolute;
          height: 100%;
          width: 0%;
          background: #000;
          opacity: 1;
          top: 0;
          left: 0;
          z-index: -1;
          border-radius: calc(4 / 16 * 1rem);
          transition: width 0.3s; }
        .widget-wrapper #stats-5 .cs-button-solid:hover:before {
          width: 100%; }
      .widget-wrapper #stats-5 .cs-background {
        position: absolute;
        display: block;
        top: 0;
        left: 0;
        width: 100%;
        height: 65%;
        z-index: -1; }
        .widget-wrapper #stats-5 .cs-background:before {
          /* Overlay */
          content: "";
          position: absolute;
          display: block;
          height: 100%;
          width: 100%;
          background: #000;
          opacity: 0.8;
          top: 0;
          left: 0;
          z-index: 1; }
        .widget-wrapper #stats-5 .cs-background img {
          position: absolute;
          top: 0;
          left: 0;
          height: 100%;
          width: 100%;
          object-fit: cover; } }
  @media only screen and (min-width: 31.25rem) {
    .widget-wrapper #stats-5 .cs-card-group {
      flex-direction: row;
      justify-content: center;
      align-items: center;
      flex-wrap: wrap;
      gap: 0;
      row-gap: calc(55 / 16 * 1rem);
      column-gap: calc(100 / 16 * 1rem); }
    .widget-wrapper #stats-5 .cs-item {
      /* sets even spacing */
      width: calc(125 / 16 * 1rem); } }
  @media only screen and (min-width: 48rem) {
    .widget-wrapper #stats-5:before {
      height: 37.5%; }
    .widget-wrapper #stats-5 .cs-card-group {
      max-width: 100%;
      column-gap: 0;
      row-gap: 0;
      justify-content: space-around; }
    .widget-wrapper #stats-5 .cs-item {
      /* reset width */
      width: auto; } }
  @media only screen and (min-width: 81.25rem) {
    .widget-wrapper #stats-5 .cs-background {
      background: url("https://csimg.nyc3.digitaloceanspaces.com/Stats/bg.jpg");
      background-size: cover;
      background-position: center;
      background-repeat: no-repeat;
      background-attachment: fixed; }
      .widget-wrapper #stats-5 .cs-background img {
        display: none; } }
  @media only screen and (min-width: 0rem) {
    .widget-wrapper #reviews-211 {
      padding: var(--sectionPadding); }
      .widget-wrapper #reviews-211 .cs-container {
        width: 100%;
        /* changes to 1280px at tablet*/
        max-width: calc(550 / 16 * 1rem);
        margin: auto; }
      .widget-wrapper #reviews-211 .cs-picture {
        width: 100%;
        /* 200px - 304px */
        height: clamp(12.5rem, 23.45vw, 19rem);
        display: block;
        position: relative; }
        .widget-wrapper #reviews-211 .cs-picture img {
          position: absolute;
          top: 0;
          left: 0;
          height: 100%;
          width: 100%;
          object-fit: cover; }
      .widget-wrapper #reviews-211 .cs-card {
        max-width: calc(630 / 16 * 1rem); }
      .widget-wrapper #reviews-211 .cs-content {
        /* set text align to left if content needs to be left aligned */
        text-align: left;
        width: 100%;
        /* Padding top & bottom 40px - 80px */
        /* Padding left & right 32px - 72px */
        padding: clamp(2.5rem, 5.8vw, 5rem) clamp(2rem, 5.8vw, 4.5rem);
        /* prevents padding and border from affecting height and width */
        box-sizing: border-box;
        background: var(--csds-color-brand-base);
        display: flex;
        flex-direction: column;
        /* centers content horizontally, set to flex-start to left align */
        align-items: flex-start; }
      .widget-wrapper #reviews-211 .cs-title,
      .widget-wrapper #reviews-211 .cs-topper {
        color: var(--csds-color-white); }
      .widget-wrapper #reviews-211 .cs-text {
        color: var(--csds-color-white);
        margin-bottom: calc(16 / 16 * 1rem); }
        .widget-wrapper #reviews-211 .cs-text:last-of-type {
          margin-bottom: calc(32 / 16 * 1rem); }
      .widget-wrapper #reviews-211 .cs-button-solid {
        font-size: calc(16 / 16 * 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: calc(150 / 16 * 1rem);
        padding: 0 calc(24 / 16 * 1rem);
        background-color: var(--csds-color-brand-base);
        border-radius: calc(4 / 16 * 1rem);
        display: inline-block;
        position: relative;
        z-index: 1;
        /* prevents padding from adding to the width */
        box-sizing: border-box; }
        .widget-wrapper #reviews-211 .cs-button-solid:before {
          content: "";
          position: absolute;
          height: 100%;
          width: 0%;
          background: #000;
          opacity: 1;
          top: 0;
          left: 0;
          z-index: -1;
          border-radius: calc(4 / 16 * 1rem);
          transition: width 0.3s; }
        .widget-wrapper #reviews-211 .cs-button-solid:hover:before {
          width: 100%; }
      .widget-wrapper #reviews-211 .cs-button-solid {
        /* button styles override */
        background-color: #fff;
        color: var(--csds-color-brand-base); }
      .widget-wrapper #reviews-211 .cs-review {
        /* padding left & right 32px - 80px */
        padding: calc(40 / 16 * 1rem) clamp(2rem, 6vw, 5rem);
        box-shadow: -1px 21px 39px 0px rgba(0, 0, 0, 0.06);
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center; }
      .widget-wrapper #reviews-211 .cs-review-img {
        width: calc(112 / 16 * 1rem);
        height: calc(20 / 16 * 1rem);
        display: block;
        /* margin-bottom 8px - 12px */
        margin: 0 auto clamp(0.5rem, 2vw, 0.75rem); }
      .widget-wrapper #reviews-211 .cs-review-title {
        /* 25px - 31px */
        font-size: clamp(1.5625rem, 3.1vw, 1.9375rem);
        line-height: 1.2em;
        text-align: center;
        font-weight: bold;
        /* margin-bottom 24px - 32px */
        margin: 0 auto clamp(1.5rem, 4.2vw, 2rem);
        color: var(--headerColor);
        display: block; }
      .widget-wrapper #reviews-211 .cs-review-p {
        /* 16px - 20px */
        font-size: clamp(1rem, 2vw, 1.25rem);
        line-height: 1.5em;
        text-align: center;
        max-width: calc(434 / 16 * 1rem);
        /* margin-bottom 24px - 32px */
        margin: 0 auto clamp(1.5rem, 4.2vw, 2rem);
        color: var(--bodyTextColor); }
      .widget-wrapper #reviews-211 .cs-review-name {
        /* 16px - 20px */
        font-size: clamp(1rem, 2vw, 1.25rem);
        line-height: 1.5em;
        text-align: center;
        margin: 0;
        display: block;
        color: var(--headerColor);
        font-weight: 700; } }
  @media only screen and (min-width: 48rem) {
    .widget-wrapper #reviews-211 .cs-container {
      max-width: calc(1280 / 16 * 1rem);
      display: flex;
      justify-content: center;
      align-items: center;
      box-shadow: -1px 21px 39px 0px rgba(0, 0, 0, 0.06); }
    .widget-wrapper #reviews-211 .cs-card {
      /* prevents it from being squished by flexbox */
      flex: none;
      width: 44.8vw; }
    .widget-wrapper #reviews-211 .cs-review {
      box-shadow: none;
      width: 50%; } }
  .widget-wrapper #promotions-1567 {
    padding: var(--sectionPadding); }
    .widget-wrapper #promotions-1567 .cs-container {
      width: 100%;
      max-width: calc(1280 / 16 * 1rem);
      margin: auto;
      display: flex;
      flex-direction: column;
      align-items: center;
      /* 48px - 64px */
      gap: clamp(3rem, 6vw, 4rem); }
    .widget-wrapper #promotions-1567 .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;
      background-color: var(--csds-color-white-75);
      padding: var(--csds-space-sm); }
    .widget-wrapper #promotions-1567 .cs-card-group {
      width: 100%;
      margin: 0;
      padding: 0;
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(16.25rem, 1fr));
      /* 16px - 20px */
      gap: clamp(1rem, 2.4vw, 1.25rem); }
    .widget-wrapper #promotions-1567 .cs-item {
      list-style: none;
      min-height: calc(256 / 16 * 1rem);
      /* 40px - 100px */
      padding: clamp(2.5rem, 7vw, 6.25rem) calc(16 / 16 * 1rem);
      /* prevents padding from affecting height and width */
      box-sizing: border-box;
      display: flex;
      justify-content: center;
      align-items: center;
      position: relative;
      z-index: 1; }
      .widget-wrapper #promotions-1567 .cs-item a {
        text-decoration: none; }
      .widget-wrapper #promotions-1567 .cs-item .title {
        color: var(--csds-color-black); }
      .widget-wrapper #promotions-1567 .cs-item:hover .cs-background img {
        transform: scale(1.2); }
    .widget-wrapper #promotions-1567 .cs-tag {
      font-size: calc(20 / 16 * 1rem);
      line-height: 1.2em;
      font-weight: 700;
      margin: 0 0 calc(4 / 16 * 1rem) 0;
      color: var(--bodyTextColorWhite);
      display: block; }
    .widget-wrapper #promotions-1567 .cs-background {
      width: 100%;
      height: 100%;
      overflow: hidden;
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      z-index: -1; }
      .widget-wrapper #promotions-1567 .cs-background:before {
        /* background color overlay */
        content: '';
        position: absolute;
        display: block;
        height: 100%;
        width: 100%;
        background: #000;
        opacity: .4;
        top: 0;
        left: 0;
        z-index: 1; }
      .widget-wrapper #promotions-1567 .cs-background img {
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
        width: 100%;
        /* Makes img tag act as a background image */
        object-fit: cover;
        transition: transform .6s; }
  .widget-wrapper .csds-brackets {
    margin: var(--csds-space-md);
    /* the size on the corner */
    --csds-bracket-size: 1.5rem;
    /* the thickness of the border */
    --csds-bracket-thickness: 5px;
    /* the gap between the border and content*/
    --csds-bracket-gap: 1rem;
    padding: calc(var(--csds-bracket-gap) + var(--csds-bracket-thickness));
    outline: var(--csds-bracket-thickness) solid var(--csds-color-brand-base);
    outline-offset: calc(-1 * var(--csds-bracket-thickness));
    mask: conic-gradient(at var(--csds-bracket-size) var(--csds-bracket-size), #0000 75%, #000 0) 0 0/calc(100% - var(--csds-bracket-size)) calc(100% - var(--csds-bracket-size)), linear-gradient(#000 0 0) content-box;
    -webkit-mask: conic-gradient(at var(--csds-bracket-size) var(--csds-bracket-size), #0000 75%, #000 0) 0 0/calc(100% - var(--csds-bracket-size)) calc(100% - var(--csds-bracket-size)), linear-gradient(#000 0 0) content-box;
    transition: .4s; }
  .widget-wrapper .csds-underline-br {
    width: 5rem;
    height: 0.5rem;
    background-color: var(--csds-color-brand-base); }
