/* Contextual public-service links, limited to the work hub and two work guides. */
.kpc { margin-block: 2rem; padding-block: 1.5rem; border-block: 1px solid #d5d3c9; }
.kpc > :first-child { margin-top: 0; }
.kpc-kicker { margin-bottom: .5rem; color: #55554f; font-size: .875rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }
.kpc h2 { margin-block: 0 .75rem; font-size: clamp(1.5rem,3vw,2rem); line-height: 1.25; }
.kpc-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1rem; margin-top: 1rem; }
.kpc-card { min-width: 0; padding: 1.25rem; border-left: 4px solid #d4b919; background: #f8f7ef; overflow-wrap: anywhere; }
.kpc-card h3 { margin-block: 0 .5rem; font-size: 1.125rem; line-height: 1.4; }
.kpc-card p { margin-block: .5rem 1rem; line-height: 1.65; }
.kpc-actions { display: flex; flex-wrap: wrap; gap: .5rem 1rem; }
.kpc a { display: inline-flex; align-items: center; min-height: 44px; font-weight: 700; text-underline-offset: .2em; }
.kpc a:focus-visible { outline: 3px solid #171717; outline-offset: 4px; }
.kpc-boundary { max-width: 80ch; margin-bottom: 0; color: #55554f; font-size: .9375rem; line-height: 1.65; }
:lang(ko) .kpc { word-break: keep-all; overflow-wrap: anywhere; }
@media(max-width:767px) { .kpc { margin-block: 1.5rem; padding-block: 1.25rem; } .kpc-grid { grid-template-columns: minmax(0,1fr); } .kpc-card { padding: 1rem; } }
@media(forced-colors:active) { .kpc-card { border: 1px solid CanvasText; border-left-width: 4px; } }
