/* Article previews: preserve space while remote images load or fail. */
.kn-photo{position:relative;display:block;overflow:hidden;aspect-ratio:16/9;background:#e7ede0;isolation:isolate;color:#54725d}
.kn-photo-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:radial-gradient(circle at 80% 10%,#f7f5db 0,transparent 60%),linear-gradient(135deg,#e6eddf,#d9e5de);padding:14px;text-align:center}
.kn-photo-placeholder svg{width:44px;height:44px;opacity:.65}.kn-photo-placeholder strong{font-size:13px;line-height:1.4}.kn-photo-placeholder small{font-size:10px;opacity:.7}
.kn-preview-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .3s ease;z-index:1}.kn-photo:hover .kn-preview-img{transform:scale(1.035)}
.kn-photo-credit{position:absolute;bottom:10px;left:12px;z-index:2;background:#102d29d9;color:white;font-size:9px;line-height:1.4;padding:5px 8px;border-radius:3px;max-width:calc(100% - 24px)}
.kn-photo:not(.has-image) .kn-photo-credit{display:none}.kn-photo:focus-visible{outline:3px solid #9ab56e;outline-offset:3px}
.kn-lead{padding:0;min-height:0}.kn-lead:after{display:none}.kn-lead-copy{padding:24px 28px 25px;display:flex;flex-direction:column;flex:1}.kn-lead-label{margin-bottom:14px}.kn-lead h2{margin-top:12px;font-size:25px;line-height:1.5}.kn-lead-note{margin-top:12px;margin-bottom:20px}.kn-lead .kn-source{padding-top:16px}
.kn-side-story{grid-template-columns:126px minmax(0,1fr);align-items:start;gap:16px;padding:20px 0}.kn-side-story:first-child{padding-top:0}.kn-side-story:last-child{padding-bottom:0}.kn-photo-side{border-radius:7px;aspect-ratio:4/3}.kn-photo-side .kn-photo-credit{font-size:8px;bottom:6px;left:6px;max-width:calc(100% - 12px);padding:3px 5px}.kn-photo-side .kn-photo-placeholder{gap:4px;padding:8px}.kn-photo-side svg{width:26px;height:26px}.kn-photo-side strong{font-size:10px}.kn-photo-side small{font-size:8px}.kn-side h3{margin:8px 0 12px;line-height:1.55}.kn-side .kn-source{flex-wrap:wrap;gap:5px 12px}
.kn-card{padding:0;overflow:hidden;min-height:0}.kn-card-copy{padding:20px;display:flex;flex-direction:column;flex:1}.kn-card h3{margin:14px 0 20px}.kn-card .kn-source{margin-top:auto}.kn-grid{align-items:stretch}
@media(max-width:1000px){.kn-spotlight{grid-template-columns:1fr 1fr;gap:24px}.kn-side-story{grid-template-columns:94px minmax(0,1fr);gap:12px}.kn-lead-copy{padding:22px}.kn-lead h2{font-size:23px}}
@media(max-width:760px){.kn-spotlight{grid-template-columns:1fr;gap:22px}.kn-lead-copy{padding:22px}.kn-lead h2{font-size:22px}.kn-side-story{grid-template-columns:108px minmax(0,1fr);padding:17px 0;gap:13px}.kn-side-story:last-child{padding-bottom:17px}.kn-card{padding:0}.kn-card-copy{padding:19px}.kn-card h3{font-size:17px}.kn-photo-side .kn-photo-credit{display:none}.kn-list-head{align-items:baseline}}
@media(max-width:380px){.kn-side-story{grid-template-columns:88px minmax(0,1fr);gap:10px}.kn-side h3{font-size:14px}.kn-side .kn-meta{font-size:8px;gap:4px}}
@media(prefers-reduced-motion:reduce){.kn-preview-img{transition:none}.kn-photo:hover .kn-preview-img{transform:none}}

/* Country/topic editions: five previews each, with reachable wrapping tabs. */
.kn-controls{flex-wrap:wrap;gap:16px}.kn-tabs{flex-wrap:wrap;gap:6px}.kn-tabs button{white-space:nowrap}.kn-search{margin-left:auto}.kn-topic-section{border-top:1px solid #dce4d7;padding-top:30px;margin-top:38px}.kn-topic-section .kn-list-head{align-items:flex-end}.kn-topic-section .eyebrow{margin-bottom:8px;display:block}.kn-topic-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:10px;color:#687968}.kn-topic-badge{background:#e6eddf;color:#365b43;font-weight:700;border-radius:4px;padding:4px 8px}.kn-topic-section .kn-card h3{line-height:1.6}
@media(max-width:760px){.kn-controls{align-items:stretch}.kn-tabs{width:100%;overflow:visible;flex-wrap:wrap}.kn-tabs button{font-size:11px;padding:10px 12px}.kn-search{width:100%;margin:0}.kn-topic-section .kn-list-head{align-items:flex-start;flex-direction:column;gap:10px}.kn-topic-section .kn-list-head h2{font-size:23px}.kn-topic-section{margin-top:28px;padding-top:24px}}
