/* Screenshot review: local service pages only; preserve photos and brand. */
.service-page .service-heading {
  grid-template-columns: minmax(0, 1.2fr) minmax(0, .8fr);
  align-items: center;
  gap: clamp(28px, 5vw, 72px);
  margin-bottom: 44px;
}
.service-page .service-heading > *,
.service-page .service-split > *,
.service-page .service-cta > * { min-width: 0; }
.service-page .service-section { padding-block: clamp(64px, 7vw, 104px); }
.service-page .service-heading h2,
.service-page .service-cta h2 {
  max-width: 100%;
  font-size: clamp(2rem, 3.6vw, 3.6rem);
  font-weight: 600;
  line-height: 1.13;
  letter-spacing: -.025em;
  overflow-wrap: anywhere;
  text-wrap: balance;
}
.service-page .service-copy h3 {
  font-size: clamp(1.65rem, 2.6vw, 2.6rem);
  line-height: 1.2;
  letter-spacing: -.02em;
  overflow-wrap: anywhere;
}
.service-page .service-section .eyebrow {
  display: block;
  width: auto;
  margin-bottom: 18px;
  font-size: .75rem;
  line-height: 1.6;
  letter-spacing: .15em;
}
/* Remove the ornamental side rules requested in the screenshot review. */
.service-page .service-section .eyebrow::before,
.service-page .service-section .eyebrow::after,
.service-page .service-card::before,
.service-page .service-card::after,
.service-page .service-step::before,
.service-page .service-step::after,
.service-page .service-process .service-step:not(:last-child)::after,
.service-page .service-hero .eyebrow::before,
.service-page .service-hero .eyebrow::after,
.service-page .service-switch-card::before { content: none; display: none; }
.service-page .service-heading > p,
.service-page .service-copy p,
.service-page .service-card p,
.service-page .service-step p,
.service-page .service-cta p,
.service-page .service-checklist li {
  color: #b1b6b8;
  font-size: 1rem;
  line-height: 1.7;
  letter-spacing: normal;
}
.service-page .service-card-grid,
.service-page .service-process { gap: 20px; }
.service-page .service-card,
.service-page .service-process .service-step {
  display: flex;
  flex-direction: column;
  min-height: 0;
  padding: clamp(24px, 2.6vw, 36px);
  border: 1px solid var(--service-line);
  border-radius: 16px;
  background: #111416;
  box-shadow: none;
}
.service-page .service-card > span {
  margin-bottom: 28px;
  font-size: .75rem;
  line-height: 1.5;
  letter-spacing: .12em;
}
.service-page .service-card h3,
.service-page .service-process .service-step h3 {
  max-width: 100%;
  margin: 0;
  font-size: clamp(1.35rem, 2vw, 1.8rem);
  font-weight: 650;
  line-height: 1.25;
  letter-spacing: -.015em;
  overflow-wrap: anywhere;
}
.service-page .service-card p,
.service-page .service-process .service-step p { margin-top: 16px; max-width: none; }
.service-page .service-process {
  border: 0;
  border-radius: 0;
  background: none;
  overflow: visible;
}
.service-page .service-step > span,
.service-page .service-step-head strong {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  margin: 0 0 28px;
  border: 0;
  border-radius: 12px;
  background: rgba(var(--red-rgb), .14);
  color: #ff695d;
  font-size: .875rem;
  line-height: 1;
  box-shadow: none;
}
.service-page .service-step-head { margin-bottom: 28px; gap: 16px; }
.service-page .service-step-head strong { margin: 0; }
.service-page .service-step-head small { font-size: .75rem; letter-spacing: .08em; color: #b1b6b8; }
.service-page .service-decision-status {
  position: static;
  inset: auto;
  margin-top: auto;
  padding-top: 24px;
  border: 0;
  font-size: .75rem;
  line-height: 1.5;
}
.service-page .service-step-meta { font-size: .75rem; line-height: 1.5; }
.service-page .service-step-meta i { display: none; }
.service-page .service-gallery { gap: 20px; }
.service-page .service-gallery figcaption { padding: 22px; }
.service-page .service-gallery figcaption b { font-size: 1rem; line-height: 1.4; }
.service-page .service-gallery figcaption small { color: #b1b6b8; font-size: .875rem; line-height: 1.65; margin-top: 8px; }
.service-page .service-hero h1 { line-height: 1.07; letter-spacing: -.03em; overflow-wrap: anywhere; }
.service-page .service-hero .hero-lead { font-size: 1rem; line-height: 1.7; }
@media (max-width: 1000px) {
  .service-page .service-heading { grid-template-columns: 1fr; gap: 20px; }
  .service-page .service-heading > p { max-width: 65ch; }
  .service-page .service-heading h2 { max-width: 22ch; }
  .service-page .service-process { grid-template-columns: 1fr; }
}
@media (max-width: 620px) {
  .service-page .service-heading h2,
  .service-page .service-cta h2 { font-size: clamp(1.8rem, 8vw, 2.6rem); }
  .service-page .service-hero h1 { font-size: clamp(2.1rem, 10vw, 3.4rem); }
  .service-page .service-card h3,
  .service-page .service-process .service-step h3 { font-size: 1.5rem; }
  .service-page .service-cta { gap: 28px; }
}
