.kl-term-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; width: 100%; }
.kl-term-card { background: #fff; border: 1px solid #dbe4eb; border-radius: 6px; padding: 26px; min-width: 0; overflow-wrap: anywhere; }
.kl-term-card h3,.kl-term-card h2 { color: #142c40; font-size: 23px; margin: 0 0 14px; }
.kl-term-card p { color: #4a5a67; font-size: 16px; line-height: 1.7; }
.kl-term-card img { width: 100%; height: auto; aspect-ratio: 4/3; object-fit: contain; margin-bottom: 20px; }
.kl-text-link { font-weight: 700; }
.kl-term-story { display: flex; gap: 32px; align-items: start; margin: 24px 0 32px; }
.kl-term-image { max-width: min(36%,400px); height: auto; border-radius: 5px; }
.kl-term-details { min-width: 0; flex: 1; overflow-wrap: anywhere; }
.kl-term-details img { max-width: 100%; height: auto; }
.kl-news-page { width: 100%; max-width: 1240px; padding: 64px 28px; margin: auto; }
.kl-news-page header { max-width: 780px; margin-bottom: 36px; }
.kl-news-page h1 { color: #142c40; font-size: clamp(36px,4vw,52px); }
.kl-news-page time { color: #526677; font-size: 14px; }
.kl-news-page .navigation { margin-top: 32px; }
.kl-term-grid a:focus-visible { outline: 3px solid #1677b1; outline-offset: 4px; }
@media(max-width:900px) { .kl-term-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) { .kl-term-grid { grid-template-columns: minmax(0,1fr); } .kl-term-story { flex-direction: column; } .kl-term-image { max-width: 100%; } .kl-news-page { padding: 40px 22px; } }
