/* Reuse the public site's typography, colors, radii and focus behavior. */
.kk-resources-page { padding-bottom: 64px; overflow-wrap: anywhere; }
.kk-resources-hero { padding: clamp(36px,5vw,76px) 0 32px; }
.kk-resources-hero h1 { font: 800 clamp(38px,6vw,76px)/1.05 var(--display-font); letter-spacing: -.045em; max-width: 20ch; margin: 16px 0 24px; }
.kk-resources-hero > p { max-width: 65ch; font-size: clamp(18px,2vw,21px); }
.kk-resources-hero .eyebrow, .kk-resource-card .eyebrow { font-size: 13px; }
.kk-resource-link, .kk-resource-actions > a:not(.btn), .kk-resource-prose a, .kk-resource-note a { text-decoration: underline; text-underline-offset: .2em; }
.kk-resource-link { display: inline-block; padding: 10px 0; font-weight: 600; }
.kk-resources-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 28px; }
.kk-resource-card { min-width: 0; overflow: hidden; border: 2px solid var(--line); border-radius: var(--radius-card); background: var(--paper); box-shadow: 6px 6px 0 var(--bg-2); }
.kk-resource-card__body { padding: clamp(22px,3vw,36px); }
.kk-resource-card h2 { font: 800 clamp(26px,3.5vw,40px)/1.1 var(--display-font); letter-spacing: -.035em; margin: 18px 0; }
.kk-resource-card h2 a { text-decoration: underline; text-underline-offset: .14em; }
.kk-resource-card__image { display: block; aspect-ratio: 16 / 9; background: var(--bg-2); }
.kk-resource-card__image img { width: 100%; height: 100%; object-fit: contain; }
.kk-resource-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 24px; margin: 24px 0; }
.kk-resource-actions a { display: inline-flex; align-items: center; min-height: 44px; }
.kk-resource-actions .btn { white-space: normal; text-align: center; }
.kk-resource-video { margin: 0 0 36px; }
.kk-resource-video iframe, .kk-resource-video video { display: block; border: 0; width: 100%; height: auto; aspect-ratio: 16 / 9; background: var(--ink); border-radius: var(--radius-card); }
.kk-resource-video--instagram { max-width: 460px; margin-left: auto; margin-right: auto; }
.kk-resource-instagram-preview { display: block; background: var(--bg-2); border-radius: var(--radius-card); overflow: hidden; }
.kk-resource-instagram-preview img { display: block; width: 100%; height: auto; max-height: 780px; object-fit: contain; }
.kk-resource-video--instagram .kk-resource-actions { justify-content: center; }
.kk-resource-note, .kk-resource-credit { font-size: 14px; color: var(--ink-soft); }
.kk-resource-photo { margin: 0 auto 36px; max-width: 850px; }
.kk-resource-photo img { width: 100%; height: auto; border-radius: var(--radius-card); }
.kk-resource-prose, .kk-resource-credit, .kk-resource-transcript, .kk-resource-next { max-width: 78ch; margin-left: auto; margin-right: auto; }
.kk-resource-prose { line-height: 1.75; }
.kk-resource-prose :is(p,ul,ol) { margin: 1em 0; }
.kk-resource-prose :is(ul,ol) { padding-left: 1.4em; }
.kk-resource-transcript, .kk-resource-next, .kk-resource-related { margin-top: 40px; padding-top: 24px; border-top: 1px solid var(--ink-muted); }
.kk-resource-transcript h2, .kk-resource-next h2, .kk-resource-related > h2 { font: 700 clamp(25px,3vw,36px)/1.15 var(--condensed-font); margin: 14px 0 20px; }
.kk-resource-transcript__text { white-space: pre-wrap; line-height: 1.75; }
.kk-resources-page :is(a,video):focus-visible { outline: 3px solid var(--ink); outline-offset: 4px; }
.kk-resources-page :is(a,[id]), #kk-resources-newsletter { scroll-margin-top: 100px; }
.kk-resources-pagination { display: flex; flex-wrap: wrap; justify-content: center; gap: 24px; padding: 0 24px 48px; }
.kk-resources-pagination a { min-height: 44px; display: inline-flex; align-items: center; text-decoration: underline; }
@media(max-width:760px) { .kk-resources-grid { grid-template-columns: 1fr; } .kk-resource-actions .btn { width: 100%; justify-content: center; } }
