.comparison-guide { max-width:1280px; padding:36px 6% 72px; margin:0 auto; }
.comparison-guide a { text-underline-offset:.22em; }
.comparison-guide a:hover { color:var(--signal); }
.comparison-guide a:focus-visible { outline:2px solid currentColor; outline-offset:3px; }
.comparison-guide summary:focus-visible, .comparison-guide select:focus-visible { outline:2px solid currentColor; outline-offset:-1px; }
.comparison-guide p, .comparison-guide li { font-size:16px; line-height:1.7; }
.comparison-guide-breadcrumb ol { list-style:none; padding:0; margin:0; display:flex; flex-wrap:wrap; align-items:center; gap:8px 12px; }
.comparison-guide-breadcrumb li { color:var(--muted-text); font-size:13px; line-height:22px; }
.comparison-guide-breadcrumb li + li::before { content:"/"; margin-right:12px; color:var(--muted-text); }
.comparison-guide-breadcrumb a { text-decoration:none; }
.comparison-guide-intro { padding:52px 0 40px; max-width:980px; }
.comparison-guide-eyebrow { color:var(--signal); font-size:14px!important; line-height:24px!important; margin:0 0 20px; }
.comparison-guide h1 { font:800 italic clamp(42px,5vw,72px)/1.02 Anybody,sans-serif; letter-spacing:-.04em; margin:0 0 28px; text-wrap:balance; }
.comparison-guide-summary { max-width:66ch; font-size:21px!important; line-height:1.55!important; margin:0 0 24px; }
.comparison-guide-method { max-width:85ch; color:var(--muted-text); font-size:14px!important; line-height:24px!important; margin:0; }
.comparison-guide-choices { display:grid; grid-template-columns:1fr 1fr; gap:56px; padding:28px 0 36px; border-top:1px solid var(--rule); border-bottom:1px solid var(--rule); }
.comparison-guide-choices h2 { font:600 24px/1.25 Bricolage,sans-serif; letter-spacing:-.025em; margin:0 0 16px; }
.comparison-guide-choices p { margin:0; }
.comparison-guide-layout { display:grid; grid-template-columns:210px minmax(0,1fr); gap:64px; align-items:start; margin-top:52px; }
.comparison-guide-toc { position:sticky; top:126px; max-height:calc(100svh - 160px); overflow:auto; padding-right:12px; }
.comparison-guide-toc nav > p { color:var(--muted-text); font-size:13px; line-height:24px; margin:0 0 16px; }
.comparison-guide-toc ol { list-style:none; padding:0; margin:0; }
.comparison-guide-toc li { font-size:14px; line-height:22px; margin-bottom:16px; }
.comparison-guide-toc a { text-decoration:none; color:var(--muted-text); }
.comparison-guide-toc label { display:none; }
.comparison-guide-body { min-width:0; }
.comparison-guide-body > section { padding:0 0 40px; margin:0 0 40px; border-bottom:1px solid var(--rule); scroll-margin-top:126px; }
.comparison-guide-body > section > h2 { font:600 30px/1.2 Bricolage,sans-serif; letter-spacing:-.03em; margin:0 0 24px; text-wrap:balance; }
.comparison-guide-body p { margin:0 0 22px; }
.comparison-guide-body p:last-child { margin-bottom:0; }
.comparison-guide-sources { margin-top:24px; }
.comparison-guide-sources > span { display:block; color:var(--muted-text); font-size:12px; line-height:20px; margin-bottom:8px; }
.comparison-guide-sources ul { display:flex; flex-wrap:wrap; gap:8px 20px; list-style:none; padding:0; margin:0; }
.comparison-guide-sources li { font-size:13px; line-height:22px; }
.comparison-guide-sources a { color:var(--muted-text); }
.comparison-guide-faq details { border-top:1px solid var(--rule); }
.comparison-guide-faq summary { list-style:none; display:flex; align-items:center; justify-content:space-between; gap:24px; cursor:pointer; font:500 20px/1.4 Bricolage,sans-serif; padding:22px 0; }
.comparison-guide-faq summary::-webkit-details-marker { display:none; }
.comparison-guide-faq summary > span { flex:none; width:24px; text-align:center; }
.comparison-guide-faq details[open] summary > span { transform:rotate(45deg); }
.comparison-guide-faq details > div { padding:0 20px 24px 0; }
.comparison-guide-faq .comparison-guide-sources { margin-top:16px; }
.comparison-guide-next { padding:0 0 12px; }
.comparison-guide-next > p { color:var(--muted-text); }
.comparison-guide-next > div { display:flex; gap:12px 28px; flex-wrap:wrap; }
.comparison-guide-next a { display:inline-flex; min-height:44px; align-items:center; font-size:15px; }
.comparison-guide-related { margin-top:64px; padding-top:32px; border-top:1px solid var(--rule); }
.comparison-guide-related h2 { font:600 26px/1.25 Bricolage,sans-serif; letter-spacing:-.025em; margin:0 0 16px; }
.comparison-guide-related > p { color:var(--muted-text); margin:0 0 28px; }
.comparison-guide-related ul { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0 36px; list-style:none; padding:0; margin:0; }
.comparison-guide-related li { border-top:1px solid var(--rule); }
.comparison-guide-related li a { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:18px 0; min-height:60px; text-decoration:none; font-size:15px; }
@media(max-width:1000px) {
 .comparison-guide-layout { grid-template-columns:175px minmax(0,1fr); gap:36px; }
 .comparison-guide { padding-inline:5%; }
 .comparison-guide-choices { gap:32px; }
}
@media(max-width:700px) {
 .comparison-guide { padding:28px 20px 56px; }
 .comparison-guide-intro { padding:36px 0 32px; }
 .comparison-guide h1 { font-size:44px; }
 .comparison-guide-summary { font-size:19px!important; line-height:1.55!important; }
 .comparison-guide-choices { grid-template-columns:1fr; gap:28px; padding-block:28px; }
 .comparison-guide-choices h2 { font-size:22px; }
 .comparison-guide-layout { display:block; margin-top:32px; }
 .comparison-guide-toc { position:static; max-height:none; padding:0; margin-bottom:36px; overflow:visible; }
 .comparison-guide-toc nav { display:none; }
 .comparison-guide-toc label { display:flex; flex-direction:column; gap:8px; color:var(--muted-text); font-size:13px; line-height:22px; }
 .comparison-guide-toc select { display:block; width:100%; min-width:0; min-height:48px; border:1px solid var(--rule); border-radius:8px; padding:10px 36px 10px 12px; color:var(--text); background:var(--surface); font:400 15px/24px Bricolage,sans-serif; }
 .comparison-guide-body > section { padding-bottom:32px; margin-bottom:32px; scroll-margin-top:112px; }
 .comparison-guide-body > section > h2 { font-size:27px; }
 .comparison-guide-faq summary { font-size:19px; gap:16px; }
 .comparison-guide-related { margin-top:40px; }
 .comparison-guide-related ul { grid-template-columns:1fr 1fr; gap:0 24px; }
 .comparison-guide-related li a { font-size:14px; gap:12px; }
}
@media(prefers-reduced-motion:reduce) {
 .comparison-guide * { scroll-behavior:auto; }
}
