.comparison-guide .guide-heading { padding-block:clamp(1rem,3vw,3rem) 1rem; max-width:100%; }
.comparison-guide .guide-heading h1 { font-size:clamp(2.25rem,4.8vw,4.8rem); line-height:1.09; letter-spacing:-.045em; max-width:24ch; margin-bottom:1.75rem; text-wrap:balance; }
.comparison-guide .guide-heading .lead { max-width:82ch; font-size:clamp(1.05rem,1.6vw,1.35rem); line-height:1.8; color:var(--muted); }
.comparison-guide .guide-byline { font-size:.85rem; color:var(--muted); border-top:1px solid var(--line); padding-top:1.25rem; margin-top:2rem; }
.comparison-snapshot { display:grid; grid-template-columns:1fr 1.6fr; gap:2rem 3rem; padding:2rem 0; margin-bottom:4rem; border-block:1px solid var(--line); }
.comparison-snapshot h2 { font-size:1.5rem; letter-spacing:-.025em; margin:0 0 .75rem; }
.comparison-snapshot p:not(.eyebrow) { max-width:42ch; font-size:.9rem; color:var(--muted); margin:0; }
.comparison-snapshot .eyebrow { font-size:.7rem; color:var(--ember-hot); margin:0 0 .75rem; }
.comparison-snapshot dl { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1.25rem; margin:0; align-items:center; }
.comparison-snapshot dt { color:var(--muted); font-size:.7rem; line-height:1.7; }
.comparison-snapshot dd { margin:.5rem 0 0; font-family:var(--font-display); font-weight:700; font-size:clamp(1.8rem,3vw,3rem); line-height:1; color:var(--ember-hot); }
.comparison-snapshot > a { grid-column:2; color:var(--aqua); text-underline-offset:.3em; font-size:.9rem; }
.comparison-guide .guide-contents { position:sticky; top:7rem; max-height:calc(100dvh - 8rem); overflow-y:auto; scrollbar-width:thin; }
.comparison-guide .guide-layout { grid-template-columns:minmax(13rem,.3fr) minmax(0,1fr); gap:clamp(2rem,5vw,5rem); }
.comparison-guide .guide-copy { max-width:100%; }
.comparison-guide .guide-copy section { border-bottom:1px solid var(--line-soft); padding-bottom:2rem; margin-bottom:3rem; }
.comparison-guide .guide-copy h2 { max-width:100%; text-wrap:balance; }
.comparison-guide .guide-copy h3 { font-size:1.2rem; line-height:1.4; margin-top:2rem; }
.comparison-guide .table-wrap { width:100%; overflow:auto; margin:2rem 0; border:1px solid var(--line); scrollbar-color:var(--ember-hot) var(--ink); scrollbar-width:thin; }
.comparison-guide table { width:100%; min-width:620px; border-collapse:collapse; font-size:.88rem; line-height:1.65; }
.comparison-guide table caption { text-align:left; padding:1.25rem; color:var(--paper); font-weight:700; background:#161a1c; }
.comparison-guide th,.comparison-guide td { padding:1rem 1.25rem; text-align:left; vertical-align:top; border-bottom:1px solid var(--line); }
.comparison-guide thead th { background:#202327; color:var(--ember-hot); font-size:.75rem; }
.comparison-guide tbody th { color:var(--paper); font-weight:600; }
.comparison-guide tbody td { color:var(--muted); }
.comparison-guide tbody tr:nth-child(even) { background:rgba(246,240,230,.025); }
.comparison-guide .table-wrap:focus-visible { outline:2px solid var(--aqua); outline-offset:4px; }
.comparison-guide .guide-next { background:#161a1c; border-top:2px solid var(--ember-hot); padding:2rem; }
.comparison-guide .guide-next .hero-actions { flex-wrap:wrap; }
@media(max-width:1000px) { .comparison-guide .guide-layout { grid-template-columns:1fr; } .comparison-guide .guide-contents { position:static; max-height:none; } .comparison-guide .guide-contents ol { grid-template-columns:1fr 1fr; column-gap:2rem; } .comparison-snapshot { grid-template-columns:1fr; } .comparison-snapshot > a { grid-column:1; } }
@media(max-width:600px) { .comparison-guide .guide-heading h1 { font-size:2.3rem; } .comparison-snapshot dl { grid-template-columns:1fr 1fr; gap:2rem; } .comparison-guide .guide-contents ol { grid-template-columns:1fr; } .comparison-guide .guide-next { padding:1.25rem; } .comparison-guide table { min-width:580px; } }
