/* Services overview: page-specific layout using the shared site palette and typography. */
.services-overview-hero { padding-bottom: 50px; }
.services-overview-hero-grid { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(0, 1fr); gap: clamp(32px, 5vw, 100px); align-items: end; }
.services-overview-hero .eyebrow { margin-bottom: 24px; }
.services-overview-hero h1 { font-size: clamp(3.1rem, 6vw, 6.7rem); margin-bottom: 0; }
.services-overview-intro { padding-bottom: 4px; }
.services-overview-intro .lead-copy { font-size: clamp(1.1rem, 1.55vw, 1.4rem); max-width: 43ch; margin-bottom: 25px; }
.services-overview-actions { display: flex; flex-wrap: wrap; gap: 16px 25px; align-items: center; }
.services-overview-actions .text-link { padding-bottom: 0; white-space: normal; }
.services-overview-actions .button { font-size: .82rem; }
.services-overview-options { padding-top: 65px; }
.services-overview-heading h2 { margin-bottom: 22px; }
.services-overview-list { list-style: none; margin: 0; padding: 0; min-width: 0; border-top: 1px solid var(--rule); }
.services-overview-list > li { border-bottom: 1px solid var(--rule); }
.services-overview-service { display: grid; grid-template-columns: minmax(0, 1fr) minmax(140px, .36fr) 24px; gap: 28px; align-items: center; padding: 30px 22px; text-decoration: none; color: var(--ink); }
.services-overview-service:hover, .services-overview-service:focus-visible { color: var(--ink); background: var(--panel); }
.services-overview-copy { min-width: 0; }
.services-overview-copy .eyebrow { font-size: .67rem; }
.services-overview-copy h3 { font-size: clamp(1.75rem, 2.35vw, 2.5rem); letter-spacing: -.025em; margin: 12px 0; }
.services-overview-copy p { color: var(--muted); font-size: .95rem; max-width: 51ch; margin: 0; }
.services-overview-fact { min-width: 0; }
.services-overview-fact strong { display: block; font: 400 clamp(1.3rem, 1.65vw, 1.85rem)/1.25 Georgia, serif; letter-spacing: -.025em; }
.services-overview-fact-label { display: block; margin-top: 9px; color: var(--muted); font-size: .75rem; line-height: 1.5; }
.services-overview-arrow { color: var(--accent); font-size: 1.6rem; justify-self: end; }
@media (min-width: 1600px) {
    .services-overview-service { padding: 34px 28px; gap: 38px; grid-template-columns: minmax(0, 1fr) minmax(180px, .36fr) 28px; }
    .services-overview-copy p { font-size: 1rem; }
}
@media (max-width: 1100px) {
    .services-overview-hero-grid { grid-template-columns: 1fr; gap: 30px; }
    .services-overview-intro { max-width: 760px; }
    .services-overview-intro .lead-copy { max-width: 56ch; }
    .services-overview-service { gap: 22px; padding-inline: 12px; grid-template-columns: minmax(0, 1fr) 140px 20px; }
}
@media (max-width: 991px) {
    .services-overview-options { padding-top: 45px; }
    .services-overview-service { padding-inline: 20px; }
    .services-overview-heading .service-section-note { margin-bottom: 0; }
}
@media (max-width: 640px) {
    .services-overview-hero { padding-bottom: 40px; }
    .services-overview-hero h1 { font-size: clamp(2.8rem, 9.5vw, 3.9rem); }
    .services-overview-hero-grid { gap: 24px; }
    .services-overview-intro .lead-copy { font-size: 1.1rem; }
    .services-overview-actions { gap: 18px 22px; }
    .services-overview-options { padding-top: 36px; }
    .services-overview-service { grid-template-columns: minmax(0, 1fr) 22px; gap: 18px 12px; padding: 25px 12px; }
    .services-overview-copy { grid-column: 1; grid-row: 1; }
    .services-overview-copy h3 { font-size: 1.75rem; }
    .services-overview-copy p { font-size: .93rem; }
    .services-overview-fact { grid-column: 1; grid-row: 2; display: flex; flex-wrap: wrap; gap: 5px 14px; align-items: baseline; }
    .services-overview-fact strong { font-size: 1.3rem; }
    .services-overview-fact-label { margin-top: 0; font-size: .72rem; }
    .services-overview-arrow { grid-column: 2; grid-row: 1 / span 2; }
}

