.service-hero {
  padding: 170px 0 96px;
  background: radial-gradient(circle at 82% 12%, rgba(196, 161, 88, 0.18), transparent 34%), var(--navy);
  color: var(--white);
}

.service-hero-inner { max-width: 920px; }
.service-hero h1 { max-width: 850px; margin: 14px 0 24px; font-size: clamp(44px, 7vw, 82px); line-height: 0.98; }
.service-lead { max-width: 760px; color: rgba(255,255,255,.76); font-size: clamp(18px, 2vw, 23px); line-height: 1.65; }
.service-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 34px; }
.service-actions .secondary { border-color: rgba(255,255,255,.28); color: var(--white); }

.service-capabilities { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 18px; }
.service-capabilities article { padding: 28px; border: 1px solid rgba(16,39,61,.12); border-radius: var(--radius); background: var(--white); box-shadow: 0 18px 45px rgba(16,39,61,.06); }
.service-capabilities span { color: #a27e37; font-family: var(--serif); font-size: 24px; }
.service-capabilities h3 { margin: 22px 0 10px; }
.service-capabilities p { margin: 0; color: var(--muted); }

.service-process, .service-fit { display: grid; grid-template-columns: .8fr 1.2fr; gap: 70px; align-items: start; }
.service-process ol { margin: 0; padding: 0; list-style: none; counter-reset: steps; }
.service-process li { display: grid; grid-template-columns: 190px 1fr; gap: 22px; padding: 22px 0; border-bottom: 1px solid rgba(16,39,61,.12); }
.service-process li span { color: var(--muted); }
.service-fit ul { display: grid; gap: 14px; margin: 0; padding: 0; list-style: none; }
.service-fit li { padding: 20px 22px; border-left: 3px solid var(--gold); background: var(--white); box-shadow: 0 12px 34px rgba(16,39,61,.06); }
.service-cta { padding: 90px 0; text-align: center; background: var(--navy); color: var(--white); }
.service-cta h2 { max-width: 820px; margin: 14px auto 30px; }

@media (max-width: 900px) {
  .service-capabilities { grid-template-columns: 1fr 1fr; }
  .service-process, .service-fit { grid-template-columns: 1fr; gap: 30px; }
}
@media (max-width: 620px) {
  .service-hero { padding: 130px 0 72px; }
  .service-capabilities { grid-template-columns: 1fr; }
  .service-process li { grid-template-columns: 1fr; gap: 7px; }
}
