/* Comparison dossier: wide evidence table, readable editorial analysis. */
.comparison-hero { padding-block: clamp(3rem, 7vw, 7rem) 3rem; }
.comparison-hero h1 { max-width: 18ch; font-size: clamp(2.8rem, 6.5vw, 6rem); line-height: 1.04; letter-spacing: -.045em; margin-block: 1.2rem 1.8rem; }
.comparison-vs { color: var(--muted); font-weight: 400; }
.comparison-intro { max-width: 66ch; font-size: clamp(1.1rem, 2vw, 1.35rem); line-height: 1.65; color: var(--ink-soft); }
.comparison-hero .article-meta { margin-block: 1.5rem 2rem; }
.comparison-content { border-top: 1px solid var(--line); }
.comparison-prose { max-width: none; padding-block: 1rem 3rem; counter-reset: comparison-section -1; }
.comparison-prose > :is(p, ul, ol, blockquote, h3) { max-width: 48rem; margin-inline: auto; }
.comparison-prose > h2 { max-width: 48rem; margin: 3.5rem auto 1.3rem; font-size: clamp(1.65rem, 3vw, 2.5rem); line-height: 1.2; }
.comparison-prose > h2::before { counter-increment: comparison-section; content: 'SECTION / ' counter(comparison-section, decimal-leading-zero); display: block; margin-bottom: .9rem; font-size: .7rem; font-weight: 650; letter-spacing: .16em; color: var(--teal); }
.comparison-prose > h2:first-child { max-width: none; }
.comparison-prose > h2:first-child::before { content: 'AT A GLANCE'; }
.comparison-prose > .comparison-table { max-width: none; }
.comparison-table { width: 100%; overflow-x: auto; overscroll-behavior-x: contain; margin-block: 1.7rem; border: 1px solid var(--line); border-radius: 1rem; }
.comparison-table table { display: table; table-layout: fixed; width: 100%; min-width: 640px; margin: 0; border-collapse: collapse; font-size: .94rem; }
.comparison-table :is(th, td) { padding: 1.25rem 1.4rem; vertical-align: top; width: 36%; border-bottom: 1px solid var(--line); line-height: 1.55; }
.comparison-table :is(th, td):first-child { width: 28%; font-weight: 600; }
.comparison-table :is(th, td):nth-child(2) { background: color-mix(in srgb, var(--teal) 7%, transparent); }
.comparison-table th { text-align: left; color: var(--ink); font-size: 1rem; }
.comparison-table th:nth-child(2) { color: var(--teal); }
.comparison-table tr:last-child td { border-bottom: 0; }
.comparison-prose > h3 { padding-top: 1.5rem; border-top: 1px solid var(--line); }
.comparison-next { border-top: 1px solid var(--line); padding-block: 3rem 5rem; }
.comparison-next h2 { max-width: 25ch; font-size: clamp(1.8rem, 3vw, 3rem); }
.comparison-next .feature-grid { margin-block: 2rem; }
@media (max-width: 640px) {
  .comparison-hero { padding-top: 2rem; }
  .comparison-hero h1 { overflow-wrap: anywhere; }
  .comparison-table :is(th, td) { padding: 1rem; }
  .comparison-prose > h2 { margin-top: 2.5rem; }
}
