/* All Services mobile layout. Kept together to make responsive rules predictable. */
@media (max-width: 720px) {
  .all-ref-page {
    --all-heading-size: 20px;
  }

  .all-ref-page :is(.all-ref-title-row, .all-ref-section-head, .all-ref-final__cta) h2 {
    font-size: var(--all-heading-size) !important;
    font-weight: 800;
    line-height: 1.3;
    text-align: center;
  }

  .all-ref-page :is(.all-ref-hero__copy, .all-ref-section-head, .all-ref-title-row, .all-ref-service-intro, .all-ref-final__cta) p {
    text-align: center;
  }

  .all-ref-page :is(.all-ref-pills a, .all-ref-faq__grid summary, .all-ref-service-intro p, .all-ref-sidebar li span) {
    font-size: 14px !important;
    line-height: 1.5;
  }

  .all-ref-page .all-ref-hero__inner {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 14px;
    padding-top: 18px;
    padding-bottom: 20px;
    min-height: 0;
    text-align: center;
  }

  .all-ref-page .all-ref-hero__copy {
    display: contents;
  }

  .all-ref-page .all-ref-kicker { order: 1; margin: 0; }
  .all-ref-page .all-ref-hero h1 { order: 2; }
  .all-ref-page .all-ref-hero__copy > p { order: 3; max-width: none; margin: 0; }
  .all-ref-page .all-ref-hero__media { order: 4; position: relative; inset: auto; width: 100%; height: auto; }
  .all-ref-page .all-ref-hero__media::before { display: none; }

  .all-ref-page .all-ref-hero__media img {
    height: auto !important;
    aspect-ratio: 16 / 10;
    object-fit: cover !important;
    border-radius: 8px;
  }

  .all-ref-page .all-ref-actions {
    order: 5;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin: 0;
  }

  .all-ref-page .all-ref-actions .ref-btn {
    width: 100%;
    min-width: 0;
    min-height: 48px;
    padding: 10px 8px;
    white-space: normal;
  }

  .all-ref-page .all-ref-search {
    margin-top: 0;
  }

  .all-ref-page .all-ref-search__form {
    grid-template-columns: minmax(0, 1fr);
  }

  .all-ref-page .all-ref-search :is(input, select) {
    min-width: 0;
    font-size: 16px !important;
    min-height: 44px;
  }

  .all-ref-page .all-ref-clear-filters {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 44px;
    padding-inline: 8px;
    margin-top: 0;
    opacity: 1;
    font-size: 14px;
  }

  .all-ref-page .all-ref-services__grid {
    display: flex;
    flex-direction: column;
    gap: 24px;
  }

  .all-ref-page .all-ref-service-list { order: 1; min-width: 0; width: 100%; }
  .all-ref-page .all-ref-sidebar { order: 2; width: 100%; min-width: 0; }
  .all-ref-page .all-ref-title-row { display: block; text-align: center; }

  .all-ref-page .all-ref-service-row {
    padding: 20px 12px;
    gap: 16px;
  }

  .all-ref-page .all-ref-service-intro {
    min-height: 0;
    padding-left: 0;
    text-align: center;
  }

  .all-ref-page .all-ref-service-intro > i {
    position: relative;
    margin: 0 auto 10px;
  }

  .all-ref-page .all-ref-pills {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }

  .all-ref-page .all-ref-pills a {
    min-width: 0;
    min-height: 94px;
    padding: 12px 8px;
    overflow-wrap: anywhere;
  }

  .all-ref-page .all-ref-help-card {
    margin-top: 20px;
    text-align: center;
  }

  .all-ref-page .all-ref-help-card p { text-align: center; }
  .all-ref-page .all-ref-help-card img {
    width: 100%;
    max-width: 260px;
    max-height: 240px;
    margin: 16px auto 0;
  }

  .all-ref-page .all-ref-stats__grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
    min-height: 0;
  }

  .all-ref-page .all-ref-stats__grid > div {
    grid-column: span 2;
    min-width: 0;
    padding: 16px 6px;
    border: 0;
  }

  .all-ref-page .all-ref-stats__grid > div:nth-last-child(-n + 2) { grid-column: span 3; }
  .all-ref-page .all-ref-stats__grid strong { font-size: 21px; }
  .all-ref-page .all-ref-stats__grid span { font-size: 12px; }

  .all-ref-page .services-ref-process {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px 12px;
  }

  .all-ref-page .services-ref-process article {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-width: 0;
    min-height: 0;
    padding: 0;
    text-align: center;
  }

  .all-ref-page .services-ref-process article:last-child:nth-child(odd) {
    grid-column: 1 / -1;
    width: calc(50% - 6px);
    justify-self: center;
  }

  .all-ref-page .services-ref-process article::before,
  .all-ref-page .services-ref-process article::after { display: none; }

  .all-ref-page .services-ref-process__icon {
    position: static;
    transform: none;
    width: 44px;
    height: 44px;
    margin-bottom: 8px;
  }

  .all-ref-page .services-ref-process article > span {
    position: static;
    font-size: 18px;
    margin-bottom: 6px;
  }

  .all-ref-page .services-ref-process :is(h3, p) {
    margin: 0 0 6px;
    text-align: center;
    overflow-wrap: anywhere;
  }

  .all-ref-page .all-ref-faq__grid summary {
    min-height: 44px;
    padding: 12px;
    gap: 10px;
  }

  .all-ref-page .all-ref-faq__grid summary i { flex-shrink: 0; }

  .all-ref-page .all-ref-final__cta {
    grid-template-columns: minmax(0, 1fr);
    justify-items: center;
    gap: 16px;
    padding: 24px 16px;
    text-align: center;
  }

  .all-ref-page .all-ref-final__cta img { margin-inline: auto; }

  .all-ref-page .all-ref-final__actions {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
    width: 100%;
  }

  .all-ref-page .all-ref-final__actions .ref-btn {
    width: 100%;
    min-width: 0;
    margin: 0;
  }
}
