/* Service entry pages extend the existing public-site composition. */
.service-detail .page-hero { padding-top: calc(68px + clamp(40px, 6vw, 80px)); }
.service-detail .page-hero .display { max-width: 15ch; font-size: clamp(42px, 5.8vw, 80px); }
.service-breadcrumb { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 40px; color: var(--ink-2); font-size: 14px; }
.service-breadcrumb a { text-underline-offset: 4px; }
.service-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 20px; margin-top: 32px; }
.service-actions > a:not(.btn) { color: var(--ink-2); text-underline-offset: 5px; }
.service-detail .section-heading { max-width: 18ch; margin-bottom: 32px; font-size: clamp(30px, 3.4vw, 48px); }
.service-detail .body + .body { margin-top: 20px; }
.service-detail .closing { text-align: center; }
.service-detail .closing .display { max-width: 16ch; margin-inline: auto; }
.service-detail .closing p { margin: 24px auto 32px; max-width: 42em; color: var(--ink-2); }
.contact-intro { grid-column: 1 / -1; }
.contact-intro h2 { font-size: clamp(26px, 3vw, 36px); margin: 0 0 12px; }
.contact-intro p { color: var(--ink-2); line-height: 1.6; }
.form select { width: 100%; font: inherit; font-size: 18px; padding: 14px 8px 14px 0; background: var(--bg); border: 0; border-bottom: 1px solid var(--line-2); color: var(--ink); border-radius: 0; }
.form select:focus-visible { outline: 2px solid var(--gold-ink); outline-offset: 3px; }
#contact-form { scroll-margin-top: 100px; }
.page-contact .page-hero .eyebrow .mono:first-child { flex-shrink: 0; }
@media (max-width: 600px) {
  .page-contact .contact-grid > .spec > div { grid-template-columns: 70px minmax(0, 1fr); }
}
