/* Focused spacing and type polish for the two primary service pages. */

.service-page .hero-layout {
  align-items: center;
  gap: clamp(52px, 6.5vw, 92px);
}

.service-page .hero-message {
  max-width: 720px;
}

.service-page .hero h1 {
  max-width: 720px;
  margin-block: 28px 30px;
  font-size: clamp(3.8rem, 6.25vw, 5.5rem);
  letter-spacing: -0.064em;
  line-height: 0.94;
}

.service-page .hero-copy {
  max-width: 640px;
  margin-bottom: 32px;
  line-height: 1.68;
}

.service-page .plain-language-promise {
  line-height: 1.55;
}

.service-page .section-intro > p,
.service-page .local-answer-intro > p {
  max-width: 760px;
  line-height: 1.7;
}

.service-page .local-answer-grid article,
.service-page .process-steps article,
.service-page .fit-card {
  text-wrap: pretty;
}

.service-page .local-answer-grid h3,
.service-page .process-steps h3,
.service-page .fit-card h2 {
  text-wrap: balance;
}

@media (max-width: 900px) {
  .service-page .hero-message {
    max-width: 760px;
  }

  .service-page .hero h1 {
    max-width: 760px;
  }
}

@media (max-width: 620px) {
  .service-page .hero {
    padding-bottom: 64px;
  }

  .service-page .hero h1 {
    margin-block: 24px 25px;
    font-size: clamp(3.05rem, 14.5vw, 4.25rem);
    letter-spacing: -0.058em;
    line-height: 0.96;
  }

  .service-page .hero-copy {
    margin-bottom: 27px;
    font-size: 1.06rem;
    line-height: 1.65;
  }

  .service-page .local-answer-section {
    padding-block: 76px;
  }

  .service-page .local-answer-grid {
    margin-top: 38px;
  }
}
