.kd-wrap { padding-block: 28px 72px; max-width: 820px; }
.kd-kicker { display: inline-block; font: 700 12px/1 var(--sans, sans-serif); letter-spacing: .12em; background: #EAF5F0; color: #146C55; padding: 7px 12px; border-radius: 999px; margin-bottom: 14px; }
.kd-h1 { font: 800 clamp(30px, 4.5vw, 42px)/1.08 var(--serif, serif); letter-spacing: -.025em; margin: 0 0 12px; color: #0F181C; }
.kd-lead { max-width: 64ch; font-size: 16.5px; line-height: 1.6; color: #2B373C; margin: 0 0 10px; }
.kd-asof { font-size: 13px; color: #5E6B70; margin: 0 0 26px; }

.kd-links { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 10px; margin-bottom: 36px; }
.kd-links a { display: flex; flex-direction: column; gap: 3px; background: #F7F9F8; border-radius: 14px; padding: 16px 18px; text-decoration: none; color: inherit; transition: background .15s ease; }
.kd-links a:hover { background: #EEF2F1; }
.kd-links b { font: 700 15px/1.2 var(--sans, sans-serif); color: #0A676B; }
.kd-links span { font-size: 12.5px; color: #5E6B70; }

.kd-h2 { font: 800 22px/1.25 var(--serif, serif); color: #0F181C; margin: 0 0 14px; }

.kd-table-wrap { overflow-x: auto; margin-bottom: 8px; }
.kd-table { width: 100%; border-collapse: collapse; font-size: 15px; }
.kd-table th { text-align: right; font: 600 12px/1 var(--sans, sans-serif); letter-spacing: .04em; text-transform: uppercase; color: #5E6B70; padding: 0 0 10px; border-bottom: 2px solid #E4E9E8; }
.kd-table th:first-child { text-align: left; }
.kd-table td { padding: 12px 0; border-bottom: 1px solid #E4E9E8; text-align: right; vertical-align: middle; }
.kd-table td:first-child { text-align: left; }
.kd-table b { display: block; font: 700 14.5px/1.2 var(--sans, sans-serif); color: #0F181C; }
.kd-table small { color: #5E6B70; font-size: 12px; }
.kd-chg { font: 700 13px/1 var(--sans, sans-serif); padding: 4px 8px; border-radius: 999px; }
.kd-chg.up { background: #EAF5F0; color: #146C55; }
.kd-chg.down { background: #FBEAEA; color: #B3261E; }

.kd-note { font-size: 13px; color: #5E6B70; margin: 10px 0 34px; }
.kd-note a { color: #0A676B; }

.kd-chart-caption { font-size: 13.5px; color: #5E6B70; margin: 0 0 30px; }
.kd-chart-caption a { color: #0A676B; font-weight: 600; }
