.editorial { width: min(900px, calc(100% - 40px)); margin: 0 auto; padding: 135px 0 60px; }
.editorial-hero { padding: 0 0 32px; }
.editorial h1 { font-size: clamp(2.4rem, 6vw, 4.4rem); line-height: 1.1; letter-spacing: -.05em; max-width: 850px; }
.editorial h2 { font-size: clamp(1.6rem, 3vw, 2.3rem); line-height: 1.2; letter-spacing: -.035em; }
.editorial p, .editorial li { line-height: 1.75; }
.editorial .lead { margin-left: 0; max-width: 740px; }
.editorial section { padding: 36px 0; border-top: 1px solid var(--faint); }
.editorial a:not(.primary) { text-underline-offset: 4px; }
.editorial .primary { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 11px 18px; border: 1px solid var(--accent); border-radius: 999px; background: var(--accent); color: #fff; font-weight: 700; text-decoration: none; }
.editorial .primary:hover { background: var(--accent-hover); border-color: var(--accent-hover); }
.editorial li { margin: 12px 0; }
.editorial-meta, .disclosure { font-size: 13px; color: var(--muted); max-width: 780px; }
.article-toc, .related-reading { display: flex; flex-wrap: wrap; gap: 12px 24px; }
.related-reading h2, .related-reading p { width: 100%; }
.article-toc { padding: 24px 0; }
.table-scroll { overflow-x: auto; max-width: 100%; }
.table-scroll table { width: 100%; border-collapse: collapse; background: var(--surface); font-size: 15px; text-align: left; }
.table-scroll th, .table-scroll td { border: 1px solid var(--faint); padding: 16px; min-width: 145px; vertical-align: top; }
.table-scroll caption { text-align: left; color: var(--muted); padding: 0 0 12px; }
.table-scroll thead { background: var(--accent-soft); }
.calculator-inputs { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin: 20px 0; }
.calculator-inputs label { display: grid; gap: 8px; font-weight: 600; }
.calculator-inputs input { width: 100%; min-width: 0; padding: 12px; border: 1px solid var(--faint); border-radius: 8px; font: inherit; background: var(--surface); color: var(--ink); }
#bonus-result { font-size: 1.2rem; font-weight: 600; }
@media(max-width:600px) { .editorial { padding-top: 110px; } .calculator-inputs { grid-template-columns: 1fr; } .table-scroll th, .table-scroll td { padding: 12px; min-width: 125px; } }
