.services-overview-page { --sd-ink: #19313f; --sd-muted: #627581; --sd-paper: #f5f8fa; --sd-card: #fff; --sd-line: #dfe7ec; }
.service-directory { padding: var(--site-section-space, 60px) 0; background: radial-gradient(ellipse at right top, #e4eff4, transparent 45%), var(--sd-paper); }
.service-directory__intro { display: grid; grid-template-columns: 1.2fr 1fr; gap: 60px; align-items: end; margin-bottom: 35px; }
.service-directory__eyebrow { display: block; color: var(--glorify-base); font-size: 10px; font-weight: 600; letter-spacing: 2px; margin-bottom: 18px; }
.service-directory__intro h1 { font-size: clamp(36px, 4.5vw, 58px); line-height: 1.12; letter-spacing: -1px; color: var(--sd-ink); margin: 0; }
.service-directory__intro p { font-size: 15px; line-height: 1.9; color: var(--sd-muted); margin: 0; }
.service-directory__categories { display: flex; flex-wrap: wrap; gap: 10px; padding-bottom: 35px; }
.service-directory__categories a { padding: 9px 16px; border: 1px solid var(--sd-line); border-radius: 30px; background: var(--sd-card); color: var(--sd-ink); font-size: 12px; line-height: 1.6; }
.service-directory__categories a:hover { border-color: var(--glorify-base); color: var(--glorify-base); }
.service-directory__grid { --service-grid-gap: 24px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--service-grid-gap); align-items: start; }
.service-directory__column { display: flex; flex-direction: column; gap: var(--service-grid-gap); min-width: 0; }
.service-directory__column > .service-group { margin: 0; }
@media (min-width: 992px) {
    .service-directory__grid { align-items: stretch; }
    .service-directory__column > .service-group { flex: 1; }
}
@media (min-width: 576px) and (max-width: 991px) {
    .service-directory__column:first-child { grid-row: span 2; }
}
.service-group { min-width: 0; padding: 30px; border: 1px solid var(--sd-line); border-radius: 18px; background: var(--sd-card); box-shadow: 0 8px 25px #18384808; scroll-margin-top: 140px; transition: transform .25s, box-shadow .25s, border-color .25s; }
.service-group:hover, .service-group:focus-within { transform: translateY(-4px); box-shadow: 0 20px 45px #18384812; border-color: rgba(var(--glorify-base-rgb), .35); }
.service-group__icon { display: grid; place-items: center; width: 58px; height: 58px; border-radius: 16px; background: rgba(var(--glorify-base-rgb), .09); color: var(--glorify-base); font-size: 23px; margin-bottom: 24px; }
.service-group h2 { font-size: 27px; line-height: 1.25; color: var(--sd-ink); margin-bottom: 16px; }
.service-group p { color: var(--sd-muted); font-size: 13px; line-height: 1.8; margin-bottom: 24px; }
.service-group ul { list-style: none; padding: 0; margin: 0; }
.service-group li { border-top: 1px solid var(--sd-line); }
.service-group li a { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 14px 0; color: var(--sd-ink); font-size: 13px; line-height: 1.6; }
.service-group li:last-child a { padding-bottom: 0; }
.service-group li i { font-size: 11px; color: var(--glorify-base); transition: transform .2s; }
.service-group li a:hover { color: var(--glorify-base); }
.service-group li a:hover i { transform: translateX(4px); }
.service-directory__cta { display: flex; justify-content: space-between; align-items: center; gap: 30px; margin-top: 40px; padding: 45px; border-radius: 20px; background: radial-gradient(ellipse at right top, #31647b, transparent 65%), #183544; }
.service-directory__cta .service-directory__eyebrow { color: #9ed4e8; }
.service-directory__cta h2 { font-size: 38px; line-height: 1.2; color: #fff; margin-bottom: 14px; }
.service-directory__cta p { color: #c0d5e0; font-size: 14px; margin: 0; }
.service-directory__cta > a { display: inline-flex; align-items: center; gap: 20px; flex-shrink: 0; border-radius: 40px; background: #fff; color: #183544; padding: 17px 24px; font-size: 13px; font-weight: 600; }
.service-directory__cta > a:hover { background: #dcedf4; }
.service-directory a:focus-visible { outline: 3px solid var(--glorify-base); outline-offset: 4px; }
html.dark-theme .services-overview-page { --sd-ink: #edf4f8; --sd-muted: #aabcc9; --sd-paper: #0d1923; --sd-card: #142330; --sd-line: #2c3d4b; }
html.dark-theme .service-directory { background: radial-gradient(ellipse at right top, #193340, transparent 45%), var(--sd-paper); }
@media (max-width: 991px) { .service-directory__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .service-directory__intro { grid-template-columns: 1fr; gap: 24px; } .service-directory__cta { flex-direction: column; align-items: flex-start; padding: 32px; } }
@media (max-width: 575px) { .service-directory__grid { grid-template-columns: minmax(0, 1fr); } .service-group { padding: 25px; } .service-directory__cta { padding: 28px 24px; } .service-directory__cta h2 { font-size: 31px; } }
@media (prefers-reduced-motion: reduce) { .service-group, .service-group li i { transition: none; } .service-group:hover, .service-group:focus-within, .service-group li a:hover i { transform: none; } }
