/* Shared styles for generated /compare/*.html pages (see compare/_generate.mjs). */
.cmp-wrap { max-width: 880px; margin: 0 auto; padding: 64px 20px 0; }
.cmp-eyebrow { font-family:var(--font-sans, 'Switzer', system-ui, sans-serif); font-size:12px; font-weight:500; letter-spacing:.08em; text-transform:uppercase; color:var(--accent); margin-bottom:14px; }
.cmp-wrap h1 { font-family:var(--font-display, 'Instrument Serif', Georgia, serif); font-weight:400; font-size:50px; line-height:1.06; letter-spacing:-.01em; margin-bottom:18px; }
.cmp-wrap h1 em { color:var(--accent); font-style:italic; }
.cmp-sub { font-size:18px; color:var(--muted2); line-height:1.6; max-width:660px; margin-bottom:24px; }
.cmp-cta { display:inline-block; background:var(--btn); color:#fff; padding:13px 26px; border-radius:9px; font-weight:600; font-size:15px; text-decoration:none; }
.cmp-cta:hover { background:var(--btn-hover); }
.cmp-note { font-size:13px; color:var(--muted); margin-top:12px; }
.cmp-tldr { background:var(--bg2); border:1px solid var(--border); border-left:3px solid var(--accent); border-radius:12px; padding:20px 22px; margin:34px 0 0; font-size:15.5px; line-height:1.65; color:var(--text); }
.cmp-tldr b { color:var(--text); }
.cmp-h2 { font-family:var(--font-display, 'Instrument Serif', Georgia, serif); font-weight:400; font-size:32px; margin:58px 0 16px; }
.cmp-p { font-size:15.5px; color:var(--muted2); line-height:1.7; margin:0 0 14px; }
.cmp-p b { color:var(--text); }
.cmp-table-wrap { overflow-x:auto; margin:8px 0 0; border:1px solid var(--border); border-radius:14px; }
table.cmp { width:100%; border-collapse:collapse; font-size:14.5px; min-width:520px; }
table.cmp th, table.cmp td { text-align:left; padding:13px 16px; border-bottom:1px solid var(--border); vertical-align:top; }
table.cmp thead th { font-family:var(--font-sans, 'Switzer', system-ui, sans-serif); font-size:12px; text-transform:uppercase; letter-spacing:.05em; color:var(--muted); font-weight:600; }
table.cmp thead th.us { color:var(--accent); }
table.cmp tbody td:first-child { color:var(--muted2); font-weight:500; width:34%; }
table.cmp td.us { color:var(--text); font-weight:500; }
table.cmp tr:last-child td { border-bottom:0; }
.cmp-cards { display:grid; grid-template-columns:repeat(2,1fr); gap:16px; margin:8px 0 0; }
@media(max-width:680px){ .cmp-cards{grid-template-columns:1fr} .cmp-wrap h1{font-size:38px} }
.cmp-card { background:var(--bg2); border:1px solid var(--border); border-radius:14px; padding:20px 22px; }
.cmp-card h3 { font-size:16.5px; margin:0 0 7px; }
.cmp-card p { font-size:14px; color:var(--muted2); line-height:1.6; margin:0; }
.cmp-fair { background:var(--bg3); border:1px solid var(--border2); border-radius:14px; padding:22px 24px; margin:8px 0 0; }
.cmp-fair h3 { font-size:16px; margin:0 0 10px; }
.cmp-fair ul { margin:0; padding-left:18px; }
.cmp-fair li { font-size:14.5px; color:var(--muted2); line-height:1.7; margin-bottom:6px; }
.cmp-fair li b { color:var(--text); }
.cmp-faq { margin:8px 0 0; }
.cmp-faq details { border-top:1px solid var(--border); padding:16px 0; }
.cmp-faq summary { font-size:16px; font-weight:600; cursor:pointer; list-style:none; display:flex; justify-content:space-between; gap:12px; align-items:center; }
.cmp-faq summary::-webkit-details-marker { display:none; }
.cmp-faq summary::after { content:"+"; font-family:'Geist Mono',monospace; font-size:20px; color:var(--muted); }
.cmp-faq details[open] summary::after { content:"\2212"; }
.cmp-faq p { font-size:14.5px; color:var(--muted2); line-height:1.7; margin:10px 0 0; }
.cmp-foot-cta { text-align:center; margin:64px 0 0; }
.cmp-foot-cta p { font-size:15px; color:var(--muted2); margin:0 0 16px; }
