*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;overflow-x:clip;max-width:100%}body{margin:0;font-family:var(--font-sans),system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--ink);background:var(--bg);line-height:1.65;font-size:1.05rem;text-rendering:optimizeLegibility;overflow-x:clip;max-width:100%}img,svg{max-width:100%;height:auto;display:block}a{color:var(--primary);text-decoration-thickness:1px;text-underline-offset:.15em}a:hover{color:var(--accent)}:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 70%,white);outline-offset:2px}.container{width:min(1120px,calc(100% - 2rem));margin-inline:auto}.container-narrow{width:min(760px,calc(100% - 2rem));margin-inline:auto}.skip-link{position:absolute;left:-999px;top:0;background:var(--primary);color:#fff;padding:.75rem 1rem;z-index:10000}.skip-link:focus{left:1rem;top:1rem}.site-header{position:sticky;top:0;z-index:50;backdrop-filter:blur(10px);background:color-mix(in srgb,var(--bg) 88%,transparent);border-bottom:1px solid color-mix(in srgb,var(--ink) 10%,transparent)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:4rem}.brand{display:flex;align-items:center;gap:.65rem;font-weight:700;color:var(--ink);text-decoration:none;letter-spacing:-.02em}.brand-mark{width:2.1rem;height:2.1rem;border-radius:.65rem;background:linear-gradient(135deg,var(--primary),var(--accent));box-shadow:0 6px 18px color-mix(in srgb,var(--primary) 30%,transparent);flex-shrink:0}.brand-text{font-size:1rem;line-height:1.2;max-width:14rem}.nav-desktop{display:flex;align-items:center;gap:.25rem 1rem;flex-wrap:wrap}.nav-desktop a{color:var(--ink);text-decoration:none;font-weight:500;font-size:.95rem;opacity:.9}.nav-desktop a:hover{color:var(--primary);opacity:1}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;border:0;border-radius:999px;padding:.8rem 1.25rem;font-weight:650;font-size:.98rem;text-decoration:none;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,background .15s ease;line-height:1.2}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--primary);color:#fff!important;box-shadow:0 10px 24px color-mix(in srgb,var(--primary) 28%,transparent)}.btn-primary:hover{filter:brightness(1.05);color:#fff!important}[data-theme-mode=dark] .btn-primary{color:#0b1220!important;font-weight:750}[data-theme-mode=dark] .btn-primary:hover{color:#0b1220!important;filter:brightness(1.08)}[data-theme-mode=dark] .skip-link{background:var(--accent);color:#0b1220}[data-theme-mode=dark] .rank-num{color:#0b1220;background:var(--primary)}[data-theme-mode=dark] .company-card .rank{color:#0b1220}.btn-secondary{background:color-mix(in srgb,var(--ink) 6%,transparent);color:var(--ink)!important;border:1px solid color-mix(in srgb,var(--ink) 12%,transparent)}.btn-accent{background:var(--accent);color:#111!important}.btn-sm{padding:.55rem .9rem;font-size:.9rem}.burger{display:none;width:2.6rem;height:2.6rem;border-radius:.7rem;border:1px solid color-mix(in srgb,var(--ink) 14%,transparent);background:color-mix(in srgb,var(--bg) 70%,white);color:var(--ink);align-items:center;justify-content:center;cursor:pointer}.mobile-nav{display:none;border-top:1px solid color-mix(in srgb,var(--ink) 10%,transparent);padding:.75rem 0 1rem}.mobile-nav.open{display:block}.mobile-nav a{display:block;padding:.7rem .2rem;color:var(--ink);text-decoration:none;font-weight:600;border-bottom:1px solid color-mix(in srgb,var(--ink) 8%,transparent)}.hero{padding:3.2rem 0 2.4rem;position:relative;overflow:hidden}.hero:before{content:"";position:absolute;inset:-20% auto auto -10%;width:50vw;height:50vw;max-width:520px;max-height:520px;background:radial-gradient(circle,color-mix(in srgb,var(--primary) 18%,transparent),transparent 70%);pointer-events:none}.hero-grid{display:grid;gap:2rem;align-items:center}.hero[data-layout=split] .hero-grid{grid-template-columns:1.15fr .85fr}.hero[data-layout=centered] .hero-grid,.hero[data-layout=editorial] .hero-grid,.hero[data-layout=badge] .hero-grid,.hero[data-layout=dark] .hero-grid,.hero[data-layout=steps] .hero-grid,.hero[data-layout=authority] .hero-grid,.hero[data-layout=numbered] .hero-grid,.hero[data-layout=checklist] .hero-grid{grid-template-columns:1fr;text-align:center;max-width:860px;margin-inline:auto}.hero[data-layout=dark]{background:linear-gradient(180deg,color-mix(in srgb,var(--bg) 70%,#000),var(--bg))}.badge{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .75rem;border-radius:999px;font-size:.82rem;font-weight:700;letter-spacing:.02em;background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--ink);border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);margin-bottom:1rem}.hero h1{font-family:var(--font-display),Georgia,serif;font-size:clamp(1.9rem,4vw,3rem);line-height:1.15;letter-spacing:-.025em;margin:0 0 1rem;color:var(--ink)}.hero .lede{font-size:1.12rem;opacity:.92;margin:0 0 1.5rem;max-width:48ch}.hero[data-layout=centered] .lede,.hero[data-layout=editorial] .lede,.hero[data-layout=badge] .lede,.hero[data-layout=dark] .lede,.hero[data-layout=steps] .lede,.hero[data-layout=authority] .lede,.hero[data-layout=numbered] .lede,.hero[data-layout=checklist] .lede{margin-inline:auto}.hero-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1.25rem}.hero[data-layout=centered] .hero-actions,.hero[data-layout=editorial] .hero-actions,.hero[data-layout=badge] .hero-actions,.hero[data-layout=dark] .hero-actions,.hero[data-layout=steps] .hero-actions,.hero[data-layout=authority] .hero-actions,.hero[data-layout=numbered] .hero-actions,.hero[data-layout=checklist] .hero-actions{justify-content:center}.trust-row{display:flex;flex-wrap:wrap;gap:.5rem 1rem;font-size:.9rem;opacity:.88}.hero[data-layout=centered] .trust-row,.hero[data-layout=editorial] .trust-row,.hero[data-layout=badge] .trust-row,.hero[data-layout=dark] .trust-row,.hero[data-layout=steps] .trust-row,.hero[data-layout=authority] .trust-row,.hero[data-layout=numbered] .trust-row,.hero[data-layout=checklist] .trust-row{justify-content:center}.trust-row span{display:inline-flex;align-items:center;gap:.35rem}.trust-row span:before{content:"✓";color:var(--primary);font-weight:800}.hero-card{background:color-mix(in srgb,var(--bg) 40%,white);border:1px solid color-mix(in srgb,var(--ink) 10%,transparent);border-radius:1.25rem;padding:1.25rem;box-shadow:0 18px 50px color-mix(in srgb,var(--ink) 8%,transparent)}[data-theme-mode=dark] .hero-card{background:color-mix(in srgb,var(--bg) 80%,#111)}.hero-card h2{margin:0 0 .75rem;font-size:1.05rem;font-family:var(--font-display),Georgia,serif}.rank-list{list-style:none;margin:0;padding:0;display:grid;gap:.65rem}.rank-list li{display:grid;grid-template-columns:auto 1fr auto;gap:.65rem;align-items:center;padding:.55rem .65rem;border-radius:.8rem;background:color-mix(in srgb,var(--ink) 4%,transparent)}.rank-num{width:1.7rem;height:1.7rem;border-radius:999px;display:grid;place-items:center;font-size:.8rem;font-weight:800;background:var(--primary);color:#fff}.section{padding:2.5rem 0}.section-title{font-family:var(--font-display),Georgia,serif;font-size:clamp(1.5rem,2.5vw,2rem);letter-spacing:-.02em;margin:0 0 1rem}.section-head{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:1.25rem;flex-wrap:wrap}.prose{max-width:72ch}.prose h2,.prose h3{font-family:var(--font-display),Georgia,serif;letter-spacing:-.02em;line-height:1.25;margin:1.8rem 0 .7rem}.prose p{margin:0 0 1rem}.prose ul,.prose ol{padding-left:1.2rem;margin:0 0 1rem}.prose li{margin-bottom:.35rem}.prose a{font-weight:600}.prose table{width:100%;border-collapse:collapse;margin:1rem 0 1.25rem;font-size:.95rem;display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.prose th,.prose td{padding:.65rem .75rem;border-bottom:1px solid color-mix(in srgb,var(--ink) 12%,transparent);text-align:left;vertical-align:top}.prose th{background:color-mix(in srgb,var(--primary) 8%,transparent);font-size:.8rem;text-transform:uppercase;letter-spacing:.04em}.prose .table-wrap,.prose .table-responsive{overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch;margin:1rem 0;border-radius:.75rem;border:1px solid color-mix(in srgb,var(--ink) 10%,transparent)}.prose img{border-radius:.75rem;margin:1rem 0}.guide-layout{display:grid;grid-template-columns:240px 1fr;gap:2rem;align-items:start}.toc{position:sticky;top:5rem;background:color-mix(in srgb,var(--bg) 70%,white);border:1px solid color-mix(in srgb,var(--ink) 10%,transparent);border-radius:1rem;padding:1rem;max-height:calc(100vh - 6rem);overflow:auto}[data-theme-mode=dark] .toc{background:color-mix(in srgb,var(--bg) 85%,#000)}.toc h2{margin:0 0 .75rem;font-size:.85rem;text-transform:uppercase;letter-spacing:.06em;opacity:.7}.toc a{display:block;color:var(--ink);text-decoration:none;font-size:.92rem;opacity:.88;border-left:2px solid transparent;padding:.35rem 0 .35rem .55rem}.toc a:hover{opacity:1;border-left-color:var(--primary);color:var(--primary)}.table-wrap{overflow-x:auto;border-radius:1rem;border:1px solid color-mix(in srgb,var(--ink) 12%,transparent);background:color-mix(in srgb,var(--bg) 55%,white);box-shadow:0 12px 40px color-mix(in srgb,var(--ink) 6%,transparent);-webkit-overflow-scrolling:touch}[data-theme-mode=dark] .table-wrap{background:color-mix(in srgb,var(--bg) 90%,#000)}table.companies{width:100%;border-collapse:collapse;min-width:640px}table.companies th,table.companies td{padding:.95rem .9rem;text-align:left;vertical-align:middle;border-bottom:1px solid color-mix(in srgb,var(--ink) 10%,transparent)}table.companies th{font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;opacity:.75;background:color-mix(in srgb,var(--primary) 8%,transparent);position:sticky;top:0}table.companies tr:last-child td{border-bottom:0}table.companies tr:hover td{background:color-mix(in srgb,var(--primary) 5%,transparent)}.company-name{font-weight:700;color:var(--ink);text-decoration:none}.rating{display:inline-flex;align-items:center;gap:.35rem;font-weight:700}.stars{color:#9a6700;letter-spacing:.05em;font-size:.95rem}[data-theme-mode=dark] .stars{color:#f5c542}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}.company-card{border:1px solid color-mix(in srgb,var(--ink) 12%,transparent);border-radius:1rem;padding:1.1rem;background:color-mix(in srgb,var(--bg) 50%,white);display:flex;flex-direction:column;gap:.65rem}[data-theme-mode=dark] .company-card{background:color-mix(in srgb,var(--bg) 88%,#000)}.company-card .rank{width:2rem;height:2rem;border-radius:999px;display:grid;place-items:center;background:var(--primary);color:#fff;font-weight:800;font-size:.85rem}.faq-list{display:grid;gap:.75rem}.faq-item{border:1px solid color-mix(in srgb,var(--ink) 12%,transparent);border-radius:.9rem;background:color-mix(in srgb,var(--bg) 55%,white);overflow:hidden}[data-theme-mode=dark] .faq-item{background:color-mix(in srgb,var(--bg) 88%,#000)}.faq-item summary{cursor:pointer;padding:1rem 1.1rem;font-weight:700;list-style:none}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";float:right;color:var(--primary);font-weight:800}.faq-item[open] summary:after{content:"–"}.faq-item .answer{padding:0 1.1rem 1.1rem;opacity:.92}.t-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}.t-card{border-radius:1rem;padding:1.15rem;background:color-mix(in srgb,var(--primary) 8%,var(--bg));border:1px solid color-mix(in srgb,var(--primary) 16%,transparent)}.t-card p{margin:0 0 .85rem}.t-card .who{font-weight:700;font-size:.92rem}.site-footer{margin-top:3rem;padding:2.5rem 0 5.5rem;border-top:1px solid color-mix(in srgb,var(--ink) 12%,transparent);background:color-mix(in srgb,var(--ink) 4%,var(--bg))}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:1.5rem}.site-footer h2{font-size:.85rem;text-transform:uppercase;letter-spacing:.06em;margin:0 0 .75rem;opacity:.7}.site-footer a{display:block;color:var(--ink);text-decoration:none;margin-bottom:.4rem;opacity:.88}.site-footer a:hover{opacity:1;color:var(--primary)}.disclaimer{margin-top:1.5rem;font-size:.82rem;opacity:.7;max-width:80ch}.sticky-cta{position:fixed;left:0;right:0;bottom:0;z-index:60;padding:.65rem 1rem calc(.65rem + env(safe-area-inset-bottom));background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(12px);border-top:1px solid color-mix(in srgb,var(--ink) 12%,transparent);transform:translateY(110%);transition:transform .25s ease}.sticky-cta.show{transform:translateY(0)}.sticky-inner{width:min(1120px,100%);margin-inline:auto;display:flex;align-items:center;justify-content:space-between;gap:.75rem}.sticky-inner p{margin:0;font-weight:600;font-size:.95rem}.sticky-close{border:0;background:transparent;color:var(--ink);font-size:1.3rem;cursor:pointer;opacity:.7;padding:.25rem .4rem}.page-hero{padding:2.5rem 0 1rem}.page-hero h1{font-family:var(--font-display),Georgia,serif;font-size:clamp(1.8rem,3vw,2.4rem);margin:0 0 .75rem;letter-spacing:-.02em}.breadcrumbs{font-size:.9rem;opacity:.75;margin-bottom:.75rem}.breadcrumbs a{color:inherit}.form{display:grid;gap:.9rem;max-width:560px}.form label{display:grid;gap:.35rem;font-weight:600;font-size:.92rem}.form input,.form textarea,.form select{width:100%;border-radius:.7rem;border:1px solid color-mix(in srgb,var(--ink) 16%,transparent);background:color-mix(in srgb,var(--bg) 70%,white);color:var(--ink);padding:.75rem .85rem;font:inherit}.form textarea{min-height:140px;resize:vertical}.hp{position:absolute;left:-9999px;opacity:0;height:0;width:0}.review-hero{padding:2rem 0 1rem}.review-meta{display:flex;flex-wrap:wrap;gap:.75rem 1.25rem;margin:1rem 0 1.5rem;font-weight:600}.muted{opacity:.88}[data-theme-mode=dark] .muted{opacity:.9;color:color-mix(in srgb,var(--ink) 88%,#fff)}[data-theme-mode=dark] a{color:color-mix(in srgb,var(--primary) 75%,#fff)}[data-theme-mode=dark] a:hover{color:var(--accent)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.chip{display:inline-block;padding:.2rem .55rem;border-radius:999px;font-size:.78rem;font-weight:700;background:color-mix(in srgb,var(--accent) 20%,transparent)}@media(max-width:900px){.nav-desktop{display:none}.burger{display:inline-flex}.hero[data-layout=split] .hero-grid{grid-template-columns:1fr}.hero-card{order:2}.guide-layout{grid-template-columns:1fr}.toc{position:static;max-height:none}.footer-grid{grid-template-columns:1fr}.sticky-inner{flex-wrap:wrap}.sticky-inner p{flex:1 1 100%;font-size:.88rem}body{font-size:1rem}.hero{padding:2rem 0 1.5rem}}@media(max-width:520px){.container{width:min(1120px,calc(100% - 1.25rem))}.btn{width:100%}.hero-actions{flex-direction:column}.hero-actions .btn{width:100%}table.companies{min-width:560px}.brand-text{max-width:11rem;font-size:.92rem}.hero h1{overflow-wrap:anywhere;word-break:break-word}.prose,.prose *{max-width:100%;overflow-wrap:anywhere}.prose table{min-width:480px}}main,.section,.hero,.container,.table-wrap{max-width:100%}@media print{.site-header,.sticky-cta,.burger,.mobile-nav{display:none!important}}:root{--font-display: var(--fontDisplay);--font-sans: var(--fontSans)}
