/* Homepage-approved Service Areas rhythm, shared by main and service pages. */
@media screen and (min-width: 992px) {
  .section.section-service-areas {
    --service-areas-section-space: 96px;
    --service-areas-intro-gap: 24px;
    --service-areas-grid-gap: 48px;
    --service-areas-card-gap: 8px;
    --service-areas-card-top-space: 16px;
    --service-areas-card-bottom-space: 24px;
    padding-top: 0;
    padding-bottom: var(--service-areas-section-space);
  }

  .section-service-areas.gap-sm {
    display: flex;
    flex-direction: column;
    gap: var(--service-areas-intro-gap);
    padding-bottom: 0;
  }

  .section-service-areas .service-areas_grid {
    padding-top: var(--service-areas-grid-gap);
  }

  .section-service-areas .service-area_body {
    gap: var(--service-areas-card-gap);
    padding-top: var(--service-areas-card-top-space);
    padding-bottom: var(--service-areas-card-bottom-space);
  }
}

@media screen and (max-width: 991px) {
  #main-content > .section.section-service-areas {
    --service-areas-section-space: 72px;
    --service-areas-major-space: 36px;
    --service-areas-tight-space: var(--_spacing---spacing--sm);
    padding-top: 0;
    padding-bottom: var(--service-areas-section-space);
  }

  #main-content > .section-service-areas .section-service-areas.gap-sm {
    padding-bottom: 0;
    row-gap: var(--service-areas-tight-space);
  }

  #main-content > .section-service-areas .service-areas_grid {
    padding-top: var(--service-areas-major-space);
  }
}

@media screen and (max-width: 767px) {
  #main-content > .section.section-service-areas {
    --service-areas-section-space: var(--_spacing---spacing--2xl);
    --service-areas-major-space: 36px;
    padding-top: var(--service-areas-section-space);
  }
}

@media screen and (max-width: 479px) {
  #main-content > .section.section-service-areas {
    --service-areas-section-space: 56px;
    --service-areas-major-space: var(--_spacing---spacing--lg);
  }
}
