:root{--ink:#1e232b;--muted:#59616c;--accent:#b30930;--soft:#f6ecef;--paper:#fff;--line:#dce0e4;--panel:#f4f5f6;--radius:4px;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;color:var(--ink);font:16px/1.6 'Segoe UI',Arial,sans-serif;background:var(--paper)}a{color:var(--accent);text-underline-offset:3px}a:hover{text-decoration-thickness:2px}button,input,select,textarea{font:inherit}button,a.button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #2485dd;outline-offset:3px}button,.button{border:1px solid var(--accent);border-radius:var(--radius);padding:10px 16px;background:var(--accent);color:#fff;font-weight:700;text-decoration:none;display:inline-block;line-height:1.3}button.ghost,.button.ghost{background:transparent;color:var(--accent)}.wrap{width:min(var(--max),calc(100% - 48px));margin:auto}.skip{position:absolute;top:-100px}.skip:focus{top:0;background:white;z-index:20}.utility{font-size:12px;background:#f3f4f5;padding:6px 0;color:var(--muted)}.utility .wrap{display:flex;justify-content:space-between}header{background:var(--paper);border-bottom:1px solid var(--line)}.masthead{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:88px}.brand{color:var(--ink);font-size:24px;line-height:1.15;font-weight:850;letter-spacing:-1px;text-decoration:none;display:flex;align-items:center;gap:9px}.brand img{width:32px;height:32px}.brand small{font-size:11px;font-weight:500;display:block;letter-spacing:1.1px;margin-top:6px}.masthead nav{display:flex;gap:25px;align-items:center}.masthead nav a{color:var(--ink);font-size:14px;text-decoration:none;font-weight:650}.saved-toggle{padding:8px 12px;font-size:13px}.hero{padding:48px 0 35px;background:var(--panel);border-bottom:1px solid var(--line)}.eyebrow{text-transform:uppercase;letter-spacing:1.5px;font-size:12px;font-weight:800;color:var(--accent);margin:0 0 12px}h1{font-size:46px;letter-spacing:-1.5px;line-height:1.12;max-width:900px;margin:0 0 20px}h2{font-size:28px;letter-spacing:-.6px;line-height:1.25;margin:32px 0 16px}h3{font-size:20px;line-height:1.3;margin:0 0 12px}.lead{font-size:19px;max-width:780px;margin:0 0 18px}.meta{font-size:12px;color:var(--muted)}.disclosure{font-size:12px;max-width:850px;margin-top:16px}.trust{display:flex;gap:28px;flex-wrap:wrap;padding:16px 0;border-bottom:1px solid var(--line);font-size:13px}.trust b{margin-right:5px}.role-nav{display:flex;gap:9px;flex-wrap:wrap;padding:22px 0}.role-nav a{padding:8px 14px;border:1px solid var(--line);border-radius:var(--radius);text-decoration:none;color:var(--ink);font-size:14px;background:white}.role-nav a:hover{border-color:var(--accent)}.comparison{display:grid;grid-template-columns:225px 1fr;gap:28px;align-items:start;padding:10px 0 45px}.filters{border:1px solid var(--line);background:#fafafa;border-radius:var(--radius);padding:18px;position:sticky;top:16px}.filters h2{font-size:19px;margin:0}.filter-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.text-button{padding:0;border:0;background:transparent;color:var(--accent);font-size:12px}.filters details{border-top:1px solid var(--line);padding:13px 0}.filters summary{font-size:14px;font-weight:700;cursor:pointer}.filters label{display:flex;gap:7px;font-size:13px;align-items:center;margin-top:10px}.filters label span{margin-left:auto;color:var(--muted);font-size:11px}.filters input{accent-color:var(--accent)}.filters .meta{margin:14px 0 0}.filter-search{width:100%;padding:9px;border:1px solid #aeb5bd;margin:10px 0 15px;border-radius:3px}.estimator{background:var(--soft);border:1px solid var(--line);border-radius:var(--radius);padding:20px;margin-bottom:20px;display:grid;grid-template-columns:1fr 1fr;gap:18px}.estimator label{display:block;font-size:13px;font-weight:700}.estimator select{padding:9px;width:100%;border:1px solid #aeb5bd;border-radius:3px;background:#fff}.estimator input{width:100%;accent-color:var(--accent)}.estimator small{font-size:11px;display:block;color:var(--muted)}.estimator output{float:right;color:var(--accent);font-weight:800}.result-head{display:flex;align-items:center;justify-content:space-between;font-size:13px;margin-bottom:18px;gap:10px}.result-head select{border:1px solid var(--line);padding:7px;background:white;max-width:220px}.provider-card{border:1px solid var(--line);background:white;margin-bottom:15px;border-radius:var(--radius);overflow:hidden}.provider-card.featured{border-color:var(--accent)}.card-top{padding:10px 20px;background:#fafafa;display:flex;align-items:center;justify-content:space-between;font-size:11px;gap:10px;border-bottom:1px solid var(--line)}.tag{display:inline-block;font-size:10px;font-weight:750;padding:3px 8px;background:#e9f4ed;color:#26603c;letter-spacing:.3px}.featured .card-top{background:var(--soft)}.featured .tag{background:var(--accent);color:white}.compare-box{display:flex;gap:6px;align-items:center;font-size:12px}.compare-box input{accent-color:var(--accent);width:16px;height:16px}.card-main{display:grid;grid-template-columns:1.2fr 1fr 1fr 125px;gap:14px;padding:23px 20px;align-items:center}.provider-identity{display:flex;gap:12px;align-items:center}.provider-mark{width:42px;height:42px;min-width:42px;border:1px solid var(--line);border-radius:9px;display:grid;place-items:center;font-size:14px;font-weight:800;color:var(--ink);background:#f6f7f8}.provider-identity h3{font-size:18px;margin:0 0 6px}.provider-identity h3 a{color:var(--ink);text-decoration:none}.provider-identity p{font-size:11px;color:var(--muted);margin:0}.cost-tile{background:var(--panel);padding:12px;border-radius:3px;align-self:stretch;display:flex;flex-direction:column;justify-content:center}.cost-tile small{display:block;font-size:10px;line-height:1.3;color:var(--muted);margin-bottom:5px}.cost-tile strong{font-size:19px;letter-spacing:-.4px;line-height:1.3;font-variant-numeric:tabular-nums}.cost-tile em{font-size:10px;font-style:normal;margin-top:6px;color:var(--muted)}.actions{text-align:center;display:flex;flex-direction:column;gap:10px}.actions .button{font-size:12px;padding:11px 8px}.actions a:not(.button){font-size:11px}.facts{display:flex;gap:7px;flex-wrap:wrap;padding:0 20px 16px}.facts span{background:#f3f4f5;padding:3px 7px;font-size:10px}.card-detail{border-top:1px solid var(--line);padding:11px 20px;font-size:13px}.card-detail summary{cursor:pointer;font-weight:650;display:flex;justify-content:space-between}.card-detail summary:after{content:'+'}.card-detail[open] summary:after{content:'−'}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:15px 0}.detail-grid h4{font-size:13px;margin:0 0 5px}.detail-grid p{font-size:13px;margin:0}.source-line{font-size:10px;color:var(--muted);border-top:1px solid #eee;padding-top:10px}.save-provider{background:none;color:var(--muted);border:0;font-size:11px;font-weight:500;padding:0}.callout{padding:22px;background:var(--soft);margin:25px 0;display:flex;gap:25px;align-items:center;border-left:4px solid var(--accent)}.callout p{margin:4px 0;font-size:14px}.callout h3{margin:0}.empty{padding:40px;text-align:center;background:var(--panel)}.hidden,[hidden]{display:none!important}.reading{padding:45px 0}.reading-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.guide-card{border-top:3px solid var(--accent);background:var(--panel);padding:25px;min-height:180px;text-decoration:none;color:var(--ink)}.guide-card .number{font-size:12px;color:var(--accent);font-weight:800}.guide-card h3{margin:12px 0;font-size:20px}.guide-card p{font-size:14px;margin:0;color:var(--muted)}.faq-section{max-width:850px;padding:10px 0 55px}.faq-section details{border-top:1px solid var(--line);padding:16px 0}.faq-section summary{font-weight:650;cursor:pointer;font-size:16px}.faq-section p{font-size:15px;color:#49515d}.table-scroll{overflow:auto}table{border-collapse:collapse;width:100%;font-size:13px}td,th{text-align:left;padding:13px;border-bottom:1px solid var(--line);vertical-align:top}th{background:var(--panel);font-size:12px}table caption{text-align:left;margin-bottom:10px;font-weight:bold}.article-layout{display:grid;grid-template-columns:200px minmax(0,780px);gap:45px;padding:45px 0}.toc{position:sticky;top:20px;align-self:start;font-size:13px;border-left:3px solid var(--accent);padding:0 15px}.toc a{display:block;margin:12px 0;color:var(--muted)}article p,article li{line-height:1.8}article ul{padding-left:22px}.author{border-top:1px solid var(--line);margin-top:35px;padding:20px 0;font-size:13px}.author p{margin:4px 0}.article-cta{padding:25px;background:var(--soft);margin:30px 0}.article-cta p{font-size:14px}.bread{font-size:12px;margin-bottom:18px}.footer{background:#20252c;color:#edf0f3;padding:45px 0 24px;margin-top:25px}.footer a{color:#e1e6ec}.footer-top{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:45px}.footer h3{font-size:19px}.footer p{font-size:12px;color:#bfc6ce}.footer-links{display:grid;gap:8px;align-content:start;font-size:12px}.footer-bottom{border-top:1px solid #444c56;padding-top:20px;margin-top:30px;font-size:11px;color:#bfc6ce}.compare-tray{position:fixed;bottom:0;left:0;right:0;background:var(--ink);color:white;padding:14px;z-index:10;box-shadow:0 -3px 15px #0002}.compare-tray .wrap{display:flex;align-items:center;justify-content:space-between;gap:15px}.compare-tray span{font-size:13px}.compare-tray button{font-size:13px;margin-left:10px}.compare-tray .ghost{color:white;border-color:white}dialog{width:min(1100px,95vw);max-height:90vh;border:0;border-radius:8px;padding:28px;box-shadow:0 10px 80px #0004}dialog::backdrop{background:#142033aa}dialog header{display:flex;justify-content:space-between;align-items:center;padding-bottom:20px;gap:15px}dialog h2{margin:0}.compare-table th{position:sticky;top:0;min-width:170px}.compare-table th:first-child{min-width:145px}.mobile-filter{display:none}.form-field{margin:16px 0}.form-field label{display:block;font-size:14px;font-weight:600}.form-field input,.form-field textarea{width:100%;padding:10px;border:1px solid #aab2bc}.form-field textarea{height:160px}.honeypot{position:absolute;left:-9999px}.hero-aside{display:none}.hero-grid{display:block}.edition{font-size:11px;text-transform:uppercase;letter-spacing:2px}
/* Cost Lens: geometric type, large calculator, mint price tiles. */
body.cost{--accent:#102d33;--soft:#e2f4ec;--panel:#f3f6f5;--radius:12px;font-family:Arial,sans-serif}.cost header{background:#11282d;color:white}.cost .brand,.cost .masthead nav a{color:white}.cost .saved-toggle{color:white;border-color:#b2c9c3}.cost .hero{background:#e6f4ee;padding:50px 0}.cost h1{font-size:50px;max-width:650px}.cost .hero-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:60px;align-items:center}.cost .hero-aside{display:block;background:white;border-radius:14px;padding:26px;box-shadow:0 5px 20px #183b2b10}.cost .hero-aside strong{font-size:28px;display:block}.cost .hero-aside small{font-size:12px}.cost .comparison{grid-template-columns:205px 1fr}.cost .cost-tile{background:#e1f2e9}.cost .facts span{background:#fff3ba}.cost .card-top{background:#fff}.cost .provider-card{box-shadow:0 2px 5px #00000008}.cost .estimator{border:0;border-radius:12px}.cost .guide-card{border-radius:12px;border:0}.cost .brand small{color:#b7cdc5}.cost .utility{background:#e2eee9}
/* Practice Standards: warm editorial, serif titles, narrow reading column. */
body.vetting{--accent:#8a5c10;--soft:#faf1db;--paper:#fffdf8;--panel:#f5f0e6;--ink:#172c43;--radius:0px}.vetting h1,.vetting h2,.vetting .brand{font-family:Georgia,serif;font-weight:500}.vetting h1{font-size:49px;max-width:950px}.vetting .hero{background:var(--paper);border-bottom:3px solid var(--ink)}.vetting .comparison{grid-template-columns:215px 1fr}.vetting .provider-card{border:0;border-top:2px solid var(--ink);border-bottom:1px solid var(--line)}.vetting .card-main{grid-template-columns:1.2fr 1fr 1fr 115px}.vetting .guide-card{border-top:1px solid var(--accent);background:transparent}.vetting .cost-tile{background:#f8f3e9}.vetting .role-nav a{border:0;border-bottom:1px solid var(--line);background:transparent}
/* Frontdesk Select: lilac, pill navigation, spacious cards. */
body.reception{--accent:#5146a5;--soft:#efedfc;--panel:#f7f6fb;--radius:18px;font-family:'Trebuchet MS',Arial,sans-serif}.reception .hero{background:#f0edff;text-align:center;padding:50px 0}.reception h1,.reception .lead,.reception .disclosure{margin-left:auto;margin-right:auto}.reception .hero h1{max-width:750px}.reception .role-nav{justify-content:center}.reception .provider-card{margin-bottom:24px;box-shadow:0 5px 20px #5045a508}.reception .card-top{background:#fff;border:0;padding-top:17px}.reception .card-main{padding-top:10px;padding-bottom:25px}.reception .provider-mark{border-radius:50%;background:var(--soft);border:0;color:var(--accent)}.reception .filters{background:#fff}.reception .guide-card{border:0;border-radius:18px}.reception .tag{border-radius:20px}
/* Revenue Desk: compact blue tables and task-first navigation. */
body.billing{--accent:#1749b7;--soft:#e9f0ff;--panel:#f3f7fd;--radius:5px;font-family:Arial,sans-serif}.billing .hero{background:linear-gradient(110deg,#0e2856,#1749b7);color:white}.billing .hero .eyebrow,.billing .hero a,.billing .hero .meta{color:#d3e4ff}.billing .role-nav a{border-color:#a9bfe9;font-weight:bold}.billing .comparison{grid-template-columns:210px 1fr}.billing .card-main{padding:18px}.billing .provider-card{border-left:4px solid #9eb8e6}.billing .provider-card.featured{border-left-color:var(--accent)}.billing .provider-mark{border-radius:2px;background:#edf3ff}.billing .guide-card{background:#fff;border:1px solid #b7c9e8}.billing .reading{background:#f3f7fd}
/* Practice Picks: awards-inspired editorial blocks, no invented awards. */
body.picks{--accent:#c4302f;--soft:#fff0e8;--panel:#f8f6f2;--radius:2px;font-family:'Trebuchet MS',Arial,sans-serif}.picks .hero{background:#fff;padding:48px 0;border-bottom:4px solid #24282e}.picks h1{font-size:52px;max-width:850px}.picks .hero .eyebrow{display:inline-block;background:var(--accent);color:white;padding:4px 9px}.picks .role-nav a{border:2px solid var(--ink);font-weight:bold}.picks .guide-card{background:white;border:1px solid var(--line);border-top:5px solid var(--accent)}.picks .provider-card{border-radius:0}.picks .tag{background:#fff0e8;color:#913122}.picks .brand{letter-spacing:-1.4px}
@media(min-width:1400px){.wrap{width:min(var(--max),calc(100% - 80px))}}
@media(max-width:1000px){.masthead{flex-wrap:wrap;padding:20px 0;gap:15px}.masthead nav{gap:20px}.comparison,.cost .comparison,.vetting .comparison,.billing .comparison{grid-template-columns:190px 1fr;gap:18px}.card-main,.vetting .card-main{grid-template-columns:1fr 1fr}.provider-identity{grid-column:1/-1}.actions{flex-direction:row;align-items:center;grid-column:1/-1;justify-content:flex-end}.actions .button{min-width:150px}.reading-grid{grid-template-columns:repeat(2,1fr)}.cost .hero-grid{gap:25px}.cost h1{font-size:42px}}
@media(max-width:700px){.wrap{width:calc(100% - 32px)}.utility .wrap span:last-child{display:none}.masthead{min-height:0;padding:20px 0}.brand{font-size:22px}.masthead nav{width:100%;overflow:auto;gap:20px;white-space:nowrap;padding:4px 0}.masthead nav a{font-size:12px}.saved-toggle{font-size:11px}.hero,.cost .hero,.reception .hero,.picks .hero{padding:32px 0 25px}.hero h1,.cost h1,.vetting h1,.picks h1{font-size:34px;letter-spacing:-1px}.lead{font-size:16px}.trust{gap:10px 18px;font-size:11px}.comparison,.cost .comparison,.vetting .comparison,.billing .comparison{display:block}.filters{display:none;position:static;margin-bottom:20px}.filters.open{display:block}.mobile-filter{display:block;width:100%;margin-bottom:15px}.estimator{grid-template-columns:1fr;padding:16px;gap:12px}.result-head{align-items:flex-start}.result-head select{max-width:175px;font-size:12px}.card-main,.vetting .card-main{padding:16px;gap:12px}.card-top{padding:9px 16px}.cost-tile strong{font-size:18px}.provider-identity h3{font-size:19px}.facts{padding-left:16px}.facts span{font-size:10px}.card-detail{padding:12px 16px}.detail-grid{grid-template-columns:1fr;gap:15px}.reading-grid{grid-template-columns:1fr}.reading{padding:30px 0}.article-layout{display:block;padding:25px 0}.toc{position:static;margin-bottom:30px}.footer-top{grid-template-columns:1fr;gap:25px}.compare-tray .wrap{width:100%;flex-wrap:wrap}.compare-tray button{font-size:12px}.cost .hero-grid{display:block}.cost .hero-aside{margin-top:25px;padding:20px}.cost .hero-aside strong{font-size:23px}.callout{gap:15px;padding:18px;display:block}.callout a{display:inline-block;margin-top:10px}.role-nav{padding:18px 0}.role-nav a{font-size:12px;padding:6px 10px}dialog{padding:15px}dialog header{flex-wrap:wrap}dialog h2{font-size:21px}.disclosure{font-size:11px}h2{font-size:25px}.faq-section summary{font-size:15px}}
@media print{body>*:not(dialog){display:none!important}dialog{display:block!important;position:static;width:100%;max-height:none;overflow:visible;box-shadow:none}dialog button{display:none}.table-scroll{overflow:visible}table{font-size:9px}.compare-table th{min-width:0}td,th{padding:6px}}
.opening-panel{display:grid;grid-template-columns:1fr 1fr;gap:60px;padding:25px 0 40px;border-bottom:1px solid var(--line);margin-bottom:30px}.opening-panel h2{font-size:36px;margin:0 0 18px}.opening-panel ol{margin:0;padding-left:25px}.opening-panel li{padding:7px 0;border-bottom:1px solid var(--line);font-size:15px}.category-first{padding:10px 0 40px}.category-first .reading-grid{grid-template-columns:repeat(3,1fr)}.category-first .guide-card{min-height:170px;padding:20px}.category-first .guide-card h3{font-size:18px}.model-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:10px 0 40px}.model-grid>div{border-radius:20px;padding:25px;background:var(--soft)}.model-grid .number{font-size:10px;letter-spacing:1px;color:var(--accent);font-weight:bold}.model-grid h3{margin:12px 0}.model-grid p{font-size:14px;margin:0}.billing-intro{display:flex;gap:14px;align-items:center;flex-wrap:wrap;padding:20px;border:1px solid #b9ccf1;margin-bottom:25px;font-size:12px}.billing-intro span{padding:4px 9px;background:var(--soft)}@media(max-width:700px){.opening-panel{display:block;padding-top:10px}.opening-panel ol{margin-top:20px}.model-grid,.category-first .reading-grid{grid-template-columns:1fr}.model-grid{gap:12px}.model-grid>div{padding:18px}.opening-panel h2{font-size:29px}}
