:root{color-scheme:light;--paper: oklch(.973 .006 82);--paper-2: oklch(.94 .012 82);--ink: oklch(.18 .018 72);--muted: oklch(.42 .018 72);--line: oklch(.82 .014 82);--signal: oklch(.58 .21 30);--signal-dark: oklch(.36 .16 30);--green: oklch(.48 .13 150);--blue: oklch(.42 .13 245);--surface: oklch(.988 .004 82);--shadow: 0 16px 40px color-mix(in oklch, var(--ink) 12%, transparent);--grid: minmax(18px, 1fr) repeat(12, minmax(0, 82px)) minmax(18px, 1fr);font-family:Helvetica Neue,Arial,sans-serif;font-feature-settings:"tnum"}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);letter-spacing:0;overflow-wrap:anywhere}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background-image:linear-gradient(to right,color-mix(in oklch,var(--line) 54%,transparent) 1px,transparent 1px),linear-gradient(to bottom,color-mix(in oklch,var(--line) 42%,transparent) 1px,transparent 1px);background-size:calc((100vw - 36px) / 12) 72px;opacity:.18;z-index:-1}a{color:inherit;text-decoration-color:color-mix(in oklch,var(--signal) 68%,transparent);text-decoration-thickness:1px;text-underline-offset:4px}a:hover{color:var(--signal-dark)}img{display:block;max-width:100%}.topbar{display:grid;grid-template-columns:var(--grid);align-items:center;min-height:72px;border-bottom:1px solid var(--line);background:color-mix(in oklch,var(--paper) 92%,transparent);position:sticky;top:0;z-index:10;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.brand{grid-column:2 / span 4;display:flex;align-items:center;gap:12px;text-decoration:none}.brand-mark{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid var(--ink);background:var(--ink);color:var(--paper);font-size:12px;font-weight:800;letter-spacing:0}.brand strong{font-size:14px;text-transform:uppercase;letter-spacing:.08em}.nav{grid-column:7 / span 7;display:flex;justify-content:flex-end;gap:22px;font-size:13px;text-transform:uppercase;letter-spacing:.08em}.nav a{text-decoration:none;border-bottom:1px solid transparent;padding-block:7px}.nav a:hover{border-color:var(--signal)}.hero,.section,.footer{display:grid;grid-template-columns:var(--grid)}.hero{min-height:calc(76dvh - 72px);border-bottom:1px solid var(--ink);background:linear-gradient(90deg,transparent 0 61%,var(--signal) 61% 100%),var(--paper)}.hero-copy{grid-column:2 / span 7;align-self:center;padding:72px 0}.eyebrow,.label{font-size:12px;text-transform:uppercase;letter-spacing:.11em;color:var(--muted)}.hero h1{margin:24px 0;max-width:760px;font-size:86px;line-height:.96;letter-spacing:0;font-weight:800}.hero .lead{max-width:680px;color:var(--ink);font-size:23px;line-height:1.36}.disclosure{max-width:620px;margin:14px 0 0;padding-top:14px;border-top:1px solid var(--line);color:var(--muted);font-size:13px;line-height:1.55}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 19px;border:1px solid var(--ink);background:var(--ink);color:var(--paper);text-decoration:none;font-weight:700;transition:transform .18s ease,background .18s ease,color .18s ease}.button:hover{transform:translateY(-2px);background:var(--signal-dark);color:var(--paper)}.button.secondary{background:transparent;color:var(--ink)}.button.secondary:hover{background:var(--paper-2);color:var(--ink)}.hero-panel{grid-column:10 / span 4;align-self:stretch;display:flex;flex-direction:column;justify-content:space-between;padding:88px 0 52px;color:var(--paper)}.hero-card{background:var(--paper);color:var(--ink);border:1px solid var(--ink);box-shadow:10px 10px 0 var(--ink);padding:22px;width:min(330px,100%);overflow:hidden}.winner-mark{display:block;margin-bottom:18px;font-size:82px;line-height:.84;font-weight:800;letter-spacing:0;color:var(--signal)}.hero-card-title{display:block;margin:12px 0 10px;font-size:30px;line-height:1;text-transform:uppercase;letter-spacing:.03em}.hero-card p{color:var(--muted)}.hero-index{display:grid;gap:12px;margin-top:34px;font-size:14px}.hero-index div{display:grid;grid-template-columns:56px 1fr;border-top:1px solid color-mix(in oklch,var(--paper) 55%,transparent);padding-top:12px}.section{padding:92px 0;border-bottom:1px solid var(--line)}.section-title{grid-column:2 / span 4}.section.wide .section-title{grid-column:2 / span 12;max-width:none}.section-title h2{margin:12px 0 0;font-size:46px;line-height:1.08;letter-spacing:0}.section.wide .section-title h2{font-size:42px;max-width:1120px}.section-body{grid-column:7 / span 7}.section.wide .section-body{grid-column:2 / span 12;margin-top:34px}.answer{font-size:26px;line-height:1.25;margin:0 0 28px;max-width:820px}p,li{color:var(--muted);line-height:1.68;font-size:17px}.criteria{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--ink);margin-top:34px}.criterion{padding:20px;border-right:1px solid var(--line);min-height:164px}.criterion:nth-child(3n){border-right:0}.criterion strong{display:block;font-size:30px;margin-bottom:12px;color:var(--signal-dark)}.winner{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:54px;align-items:start}.score-grid{display:grid;border:1px solid var(--ink)}.score-row{display:grid;grid-template-columns:minmax(180px,.42fr) minmax(0,1fr);gap:18px;padding:18px;border-bottom:1px solid var(--line)}.score-row:last-child{border-bottom:0}.score-row b{color:var(--ink)}.score-row span{color:var(--muted)}.quote-plate{background:var(--ink);color:var(--paper);padding:28px;position:sticky;top:96px}.quote-plate p{color:color-mix(in oklch,var(--paper) 82%,transparent);font-size:18px}.newsletter-list{display:grid;gap:0;border-top:2px solid var(--ink)}.newsletter{display:grid;grid-template-columns:58px minmax(280px,1.25fr) minmax(220px,1fr) minmax(220px,1fr);gap:26px;padding:24px 0;border-bottom:1px solid var(--line);align-items:start}.newsletter-title{display:flex;gap:12px;align-items:flex-start;min-width:0}.newsletter-logo{display:inline-flex;align-items:center;justify-content:center;flex:0 0 34px;width:34px;height:34px;border:1px solid var(--ink);background:var(--surface);color:var(--ink);font-size:11px;font-weight:800;letter-spacing:0;text-transform:uppercase}.newsletter-logo img{width:26px;height:26px;object-fit:contain}.rank{font-size:34px;font-weight:800;line-height:1;color:var(--signal)}.newsletter h3{margin:0 0 8px;font-size:24px;line-height:1.12}.newsletter p{margin:0}.table-wrap{overflow-x:auto;padding-bottom:4px}.fit-table{width:100%;min-width:920px;border-collapse:collapse;border-top:2px solid var(--ink);table-layout:auto}.fit-table th,.fit-table td{text-align:left;vertical-align:top;padding:18px 14px;border-bottom:1px solid var(--line)}.fit-table th{color:var(--ink);font-size:13px;text-transform:uppercase;letter-spacing:.09em}.fit-table td{color:var(--muted);line-height:1.56;overflow-wrap:normal;-webkit-hyphens:auto;hyphens:auto}.fit-table td:first-child{color:var(--ink);font-weight:700;width:25%}.fit-table td:nth-child(2){width:20%}.fit-table td:nth-child(3),.fit-table td:nth-child(4){width:27.5%}.process{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--ink)}.process div{padding:20px;border-right:1px solid var(--line)}.process div:last-child{border-right:0}.process b{display:block;margin-bottom:14px;color:var(--ink)}.process p{margin:0;font-size:16px;line-height:1.55;overflow-wrap:normal;-webkit-hyphens:auto;hyphens:auto}.source-list{columns:2;column-gap:44px;padding-left:18px}.sources{padding:58px 0}.sources .section-title h2{font-size:34px}.sources p,.sources li{font-size:15px;line-height:1.55}.category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.category-card{border:1px solid var(--line);background:var(--surface);padding:20px;text-decoration:none;min-width:0}.category-card:hover{border-color:var(--signal);color:var(--ink)}.category-card b{display:block;margin-bottom:8px;font-size:20px}.category-card p{margin:0;font-size:15px}.news-strip{background:var(--surface)}.news-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--ink)}.news-card{padding:20px;border-right:1px solid var(--line);min-width:0}.news-card:last-child{border-right:0}.news-card span,.small-note{color:var(--muted);font-size:13px}.news-card span{display:block;margin-bottom:12px;text-transform:uppercase;letter-spacing:.08em}.news-card h3{margin:0 0 12px;font-size:22px;line-height:1.12}.news-card p{margin:0;font-size:15px;line-height:1.55}.small-note{margin:16px 0 0}.category-hero{min-height:auto;background:var(--paper)}.category-hero .hero-copy{grid-column:2 / span 9;padding:70px 0}.category-hero h1{max-width:900px;font-size:68px}.category-hero .lead{max-width:800px}.compact-ranking{display:grid;gap:14px}.compact-item{display:grid;grid-template-columns:54px minmax(0,1fr);gap:18px;border-top:1px solid var(--line);padding-top:18px}.compact-item h3{margin:0 0 8px;font-size:24px}.compact-item p{margin:0 0 8px}.source-list li{break-inside:avoid;margin-bottom:10px}.faq details{border-top:1px solid var(--line);padding:18px 0}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;font-size:21px;font-weight:700}.cta-band{background:var(--signal);color:var(--paper)}.cta-band .section-title h2,.cta-band .section-title .label,.cta-band .answer,.cta-band p{color:var(--paper)}.footer{padding:36px 0}.footer-inner{grid-column:2 / span 12;display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;font-size:14px;color:var(--muted)}.footer a{margin-left:18px}.legal-page{background:var(--paper)}.legal-shell{max-width:820px;margin:0 auto;padding:56px 20px 80px}.legal-nav{display:flex;flex-wrap:wrap;gap:16px;padding-bottom:20px;border-bottom:1px solid var(--line);font-size:14px;text-transform:uppercase;letter-spacing:.08em}.legal-shell h1{font-size:62px;letter-spacing:0;line-height:.95}.legal-shell section{border-top:1px solid var(--line);padding-top:18px;margin-top:24px}.reveal{opacity:1;transform:none}.reveal.visible{opacity:1;transform:translateY(0)}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal,.button{transition:none}}@media(max-width:900px){:root{--grid: minmax(18px, 1fr) repeat(6, minmax(0, 1fr)) minmax(18px, 1fr)}.topbar{min-height:auto;padding:14px 0}.brand{grid-column:2 / span 6}.nav{grid-column:2 / span 6;justify-content:flex-start;margin-top:12px;overflow-x:auto;padding-bottom:6px;gap:18px}.hero{background:var(--paper)}.hero-copy,.section-title,.section-body,.section.wide .section-title,.section.wide .section-body,.footer-inner{grid-column:2 / span 6}.hero-copy,.category-hero .hero-copy{padding:52px 0}.hero h1,.category-hero h1,.legal-shell h1{font-size:48px;line-height:1.02}.hero .lead,.answer{font-size:21px}.section{padding:58px 0}.section-title h2{font-size:34px}.hero-panel{grid-column:2 / span 6;color:var(--ink);padding-top:0}.hero-index div{border-color:var(--line)}.criteria,.winner,.newsletter,.category-grid,.news-grid{grid-template-columns:1fr}.process{grid-template-columns:repeat(2,minmax(0,1fr))}.criterion{border-right:0;border-bottom:1px solid var(--line)}.criterion:last-child{border-bottom:0}.process div{border-bottom:1px solid var(--line)}.process div:nth-child(2n){border-right:0}.process div:nth-last-child(-n+2){border-bottom:0}.news-card{border-right:0;border-bottom:1px solid var(--line)}.news-card:last-child{border-bottom:0}.newsletter{gap:10px}.quote-plate{position:static}.source-list{columns:1}.fit-table{white-space:normal}}@media(max-width:1180px)and (min-width:901px){.section-title,.section-body,.section.wide .section-title,.section.wide .section-body{grid-column:2 / span 12}.section-body,.section.wide .section-body{margin-top:32px}.winner{grid-template-columns:1fr}.quote-plate{position:static}.newsletter{grid-template-columns:58px minmax(280px,1.2fr) minmax(200px,1fr) minmax(200px,1fr)}}@media(max-width:520px){:root{--grid: minmax(14px, 1fr) repeat(6, minmax(0, 1fr)) minmax(14px, 1fr)}.brand strong{font-size:12px}.hero h1,.category-hero h1,.legal-shell h1{font-size:40px}.hero .lead,.answer{font-size:19px}.button{width:100%;padding:0 14px}.score-row,.compact-item,.process{grid-template-columns:1fr}.process div{border-right:0}.process div:nth-last-child(-n+2){border-bottom:1px solid var(--line)}.process div:last-child{border-bottom:0}}
