/* Focused service pages, using the established K2K type and color system. */
.service-page h1,.service-page h2,.service-page h3 { text-wrap:balance; }
.service-page .page-hero h1 { max-width:19ch; }
.service-actions { display:flex; align-items:center; flex-wrap:wrap; gap:1.5rem; margin-top:2rem; }
.service-layout { display:grid; grid-template-columns:minmax(0,0.8fr) minmax(0,1.2fr); gap:clamp(2rem,7vw,6rem); }
.service-intro h2 { max-width:18ch; }
.service-copy { min-width:0; max-width:66ch; }
.service-copy p + p,.service-copy h3 + p { margin-top:1rem; }
.service-copy article + article,.service-copy p + h3 { margin-top:2.3rem; }
.text-link { color:var(--paper); text-decoration:underline; text-decoration-color:var(--steel); text-underline-offset:.3em; }
.text-link:hover { color:var(--steel); }
.service-heading { max-width:65ch; margin-bottom:2.5rem; }
.service-heading p { margin-top:1rem; }
.service-steps { counter-reset:step; list-style:none; display:grid; grid-template-columns:1fr 1fr; gap:2.3rem 4rem; }
.service-steps li { border-top:1px solid var(--line); padding-top:1.5rem; min-width:0; }
.service-steps li::before { counter-increment:step; content:"0" counter(step); display:block; font-family:var(--font-mono); font-size:.8rem; color:var(--steel); margin-bottom:1rem; }
.service-steps h3 { margin-bottom:.75rem; }
.service-findings { margin:1.8rem 0; }
.service-findings dt { border-top:1px solid var(--line); padding-top:1rem; color:var(--paper); font-weight:600; }
.service-findings dd { padding:.4rem 0 1.2rem; color:var(--ink-soft); }
.service-note { font-size:.9rem; color:var(--paper-dim); }
.service-page .cta-inner>div { max-width:60ch; }
.service-page .cta-inner p { margin-top:1rem; }
@media(max-width:760px) { .service-layout,.service-steps { grid-template-columns:1fr; } .service-page .page-hero h1 { max-width:100%; } .service-actions { align-items:flex-start; flex-direction:column; } }
