@media (max-width: 900px) {
  .abc-hero-grid,
  .abc-split-grid,
  .abc-contact-grid {
    grid-template-columns: 1fr;
  }

  .abc-site-header {
    position: static;
  }
}

@media (max-width: 680px) {
  html,
  body,
  .wp-site-blocks {
    max-width: 100%;
    overflow-x: hidden;
  }

  .wp-site-blocks,
  .wp-site-blocks * {
    box-sizing: border-box;
  }

  .is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)),
  .alignwide,
  .abc-container,
  .abc-services-wrap,
  .abc-services-hub,
  .abc-services-hub section,
  .abc-quote-card,
  .abc-card,
  .abc-service-card,
  .abc-map-card {
    max-width: calc(100vw - 2rem) !important;
    min-width: 0 !important;
    width: auto !important;
  }

  .alignfull,
  .abc-hero,
  .abc-section,
  .abc-section-tight,
  .abc-cta-band,
  .abc-services-hub .abc-services-hero,
  .abc-services-hub .abc-services-section {
    max-width: 100vw !important;
    overflow-x: hidden;
    width: 100% !important;
  }

  .abc-hero-grid,
  .abc-split-grid,
  .abc-contact-grid,
  .abc-services-hero-grid,
  .abc-two-col,
  .abc-service-grid,
  .abc-card-grid,
  .abc-step-grid,
  .abc-info-grid {
    grid-template-columns: minmax(0, 1fr) !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  h1,
  h2,
  h3,
  p,
  li,
  .wp-block-heading {
    max-width: 100%;
    overflow-wrap: break-word;
  }

  img {
    height: auto;
    max-width: 100% !important;
  }

  .wp-block-buttons,
  .abc-services-actions {
    align-items: stretch !important;
    flex-direction: column !important;
    width: 100% !important;
  }

  .wp-block-button,
  .wp-block-button__link,
  .abc-services-btn,
  .abc-cta-button {
    display: block;
    max-width: 100% !important;
    text-align: center;
    white-space: normal !important;
    width: 100% !important;
  }

  .abc-section,
  .abc-hero {
    padding-bottom: 40px;
    padding-top: 40px;
  }

  .abc-section-tight,
  .abc-cta-band {
    padding-bottom: 40px;
    padding-top: 40px;
  }

  .abc-container {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .abc-mobile-cta-bar {
    display: flex;
  }

  body {
    padding-bottom: 82px;
  }
}
