:root{--indigo:#6d28d9;--pink:#ed4fa7;--orange:#ff8d55;--ink:#101225;--muted:#556179}
body{background:#fafbff;color:var(--ink)}
.wrap{width:min(1120px,calc(100% - 40px))}
nav{border-bottom:0}nav .brand{color:#101225}nav .brand b{color:var(--indigo)}
.breadcrumb{font-size:13px;color:#64748b;padding:5px 0 18px}.breadcrumb a{text-decoration:underline;text-underline-offset:3px}
.editorial-hero{background:radial-gradient(circle at 95% 0,rgba(244,85,145,.28),transparent 34%),radial-gradient(circle at 0 100%,rgba(109,40,217,.25),transparent 38%),#0b1020;color:white;padding:52px 0 58px}
.editorial-hero .breadcrumb,.editorial-hero .breadcrumb a{color:#abb5ce}
.kicker{font-size:12px;text-transform:uppercase;letter-spacing:.14em;font-weight:800;color:#ffae89}
.editorial-hero h1{font-size:clamp(37px,5vw,60px);letter-spacing:-.055em;line-height:1.09;max-width:910px;margin:13px 0 20px;color:white}
.editorial-hero p{max-width:780px;color:#d0d7e9;font-size:18px;line-height:1.65}
.hero-meta{display:flex;flex-wrap:wrap;gap:12px;margin:23px 0 0;font-size:12px;color:#bfc6d8}
.hero-meta span{border:1px solid #3c4260;border-radius:999px;padding:7px 12px}
.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:25px}
.hero-actions a{display:inline-flex;align-items:center;padding:12px 18px;border-radius:11px;font-size:14px;font-weight:800}
.action-primary{color:#fff;background:linear-gradient(110deg,#df2497,#ff7855)}.action-secondary{border:1px solid #555c75;color:#fff}
.full{width:min(1080px,calc(100% - 40px));margin:0 auto}
.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 235px;gap:38px;padding:43px 0 72px}
main article{width:auto;margin:0;padding:0}
main article section{padding:30px 0;border-top:1px solid #dfe4f2}
main article section:first-child{border:0;padding-top:0}
main article h2{font-size:clamp(25px,3vw,34px);letter-spacing:-.035em;color:#101225;line-height:1.2}
main article h3{font-size:20px;color:#15182b;margin:24px 0 9px}
main article p,main article li{color:#4a5670;line-height:1.82;font-size:16px}
main article a{color:#6039c7;text-decoration:underline;text-underline-offset:3px}
aside{align-self:start;position:sticky;top:90px;border:1px solid #e2e6f1;border-radius:18px;padding:19px;background:white}
aside strong{font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:#334155;display:block;margin-bottom:14px}
aside a{display:block;padding:9px 0;color:#475569;font-size:13px;border-bottom:1px solid #f0f1f6}
aside a:last-child{border:0}
.note{background:#fff9ed;border-color:#ffe0ac}
.disclosure{padding:16px 19px;border:1px solid #dedcf9;background:#f2f0ff;border-radius:14px;margin:22px 0;color:#4b416b;font-size:14px;line-height:1.7}
.answer{background:#fff;padding:22px 24px;border:1px solid #dee1f3;border-radius:20px;box-shadow:0 12px 28px #222a4709;margin:16px 0 20px}
.answer p{margin-bottom:0}
.decision-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:22px 0}
.decision{background:white;border:1px solid #dfe4f0;border-radius:16px;padding:17px}
.decision b{display:block;font-size:15px;color:#15182b}
.decision p{font-size:14px;line-height:1.65;margin:8px 0 0}
.chip{font-size:11px;display:inline-block;color:#6b21a8;background:#f5eaff;border-radius:99px;padding:5px 8px;margin-bottom:10px;font-weight:800}
.scroll-table{max-width:100%;overflow:auto;border-radius:17px;border:1px solid #dce2ed;background:white;margin:20px 0}
.audit-table{width:100%;border-collapse:collapse;min-width:690px}
.audit-table th,.audit-table td{padding:14px;text-align:left;vertical-align:top;border-bottom:1px solid #edf0f6;font-size:13.5px;line-height:1.55}
.audit-table th{color:#213049;background:#f0f3fa;font-size:12px;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}
.audit-table td:first-child{font-weight:750;color:#14203a}
.audit-table tr:last-child td{border-bottom:0}
.audit-table a{color:#6039c7}
.tool-card{background:#fff;border:1px solid #e1e5f0;border-radius:18px;padding:23px;margin:17px 0}
.tool-card h3{margin:0 0 9px;font-size:21px}
.tool-card .desc{font-size:15px;line-height:1.75;margin:0 0 10px}
.tool-card .limitation{background:#f7f8fc;border-radius:10px;padding:10px 13px;margin:12px 0;font-size:14px}
.tool-card .tag{display:inline-block;font-size:12px;border-radius:6px;background:#f0ebff;color:#6d28d9;font-weight:800;padding:5px 9px;margin-bottom:10px}
.scenario{border-left:3px solid #955bff;padding:2px 0 2px 18px;margin:21px 0}
.scenario h3{margin:0 0 7px}.scenario p{margin:0}
.steps{counter-reset:step;list-style:none;padding:0}
.steps li{position:relative;padding:0 0 18px 45px}
.steps li:before{counter-increment:step;content:counter(step);position:absolute;left:0;top:0;width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:#ede9fe;color:#5b21b6;font-weight:800}
.faq{background:white;border-color:#e2e6f1}.faq h3{font-size:17px}
.source-list{padding-left:22px}.source-list li{font-size:14px}
.mid-cta{border-radius:20px;padding:25px;background:linear-gradient(110deg,#1b1742,#372065);color:white;margin-top:26px}
.mid-cta h2,.mid-cta p{color:white}.mid-cta p{color:#d5d0ec}
.mid-cta a{display:inline-block;background:linear-gradient(90deg,#db329b,#ff7b59);color:white!important;text-decoration:none;padding:13px 19px;border-radius:11px;font-size:14px}
footer{background:#0b1020;color:#bac4d6}
footer a{color:#f1c9ef}
@media(max-width:900px){.article-layout{grid-template-columns:1fr}aside{display:none}.decision-grid{grid-template-columns:1fr}.editorial-hero{padding:30px 0 44px}}
@media(max-width:500px){.full,.wrap{width:calc(100% - 32px)}.editorial-hero h1{font-size:36px}.editorial-hero p{font-size:16px}.tool-card{padding:17px}.hero-actions a{width:100%;justify-content:center}main article section{padding:26px 0}}

/* Keep intrinsic table/card widths inside the article, including narrow phones. */
.article-layout > main,.article-layout > aside,.article-layout article,.article-layout section{min-width:0;max-width:100%}
.article-layout{grid-template-columns:minmax(0,1fr) 235px}
.editorial-hero{width:100%;min-width:0}
.scroll-table,.compare-table-wrap{width:100%;min-width:0;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
.scroll-table:focus-visible,.compare-table-wrap:focus-visible{outline:3px solid #7c3aed;outline-offset:3px}
.article-layout p,.article-layout li,.article-layout h1,.article-layout h2,.article-layout h3,.article-layout a{overflow-wrap:anywhere}
@media(max-width:900px){.article-layout{grid-template-columns:minmax(0,1fr)}}
@media(max-width:500px){.article-layout{gap:0;padding-top:28px}.editorial-hero h1{font-size:clamp(30px,8.5vw,36px)}.hero-actions{display:grid;grid-template-columns:minmax(0,1fr)}.hero-actions a{min-width:0;white-space:normal;text-align:center}}
