
    :root { --ink:#172b55; --text:#354154; --muted:#617087; --accent:#7950d5; --line:#e5eaf1; --soft:#f5f7fc; --lav:#f1ecff; }
    * { box-sizing:border-box; }
    body { margin:0; background:#fff; color:var(--text); font:16px/1.75 Arial,Helvetica,sans-serif; }
    .article-wrap { max-width:920px; margin:0 auto; padding:36px 24px 72px; }
    .eyebrow { color:var(--accent); font-size:13px; font-weight:700; letter-spacing:.13em; text-transform:uppercase; }
    h1,h2,h3 { color:var(--ink); line-height:1.25; }
    h1 { font-size:clamp(34px,5vw,50px); letter-spacing:-.025em; margin:12px 0 16px; }
    h2 { font-size:28px; margin:42px 0 14px; }
    h3 { font-size:20px; margin:25px 0 8px; }
    p { margin:0 0 16px; }
    a { color:#6240b5; text-underline-offset:3px; }
    .dek { color:#53627a; font-size:19px; line-height:1.6; max-width:780px; }
    .byline { color:var(--muted); font-size:14px; margin:19px 0 26px; }
    .hero-image { display:block; width:100%; height:auto; border-radius:18px; margin:24px auto 8px; }
    .caption { color:var(--muted); font-size:13px; margin-bottom:30px; }
    .answer-box { background:linear-gradient(135deg,#f5f7ff,#f4efff); border-left:4px solid var(--accent); border-radius:12px; padding:20px 22px; margin:28px 0; }
    .answer-box strong { color:var(--ink); }
    .toc { background:var(--soft); border:1px solid var(--line); border-radius:14px; padding:20px 24px; margin:28px 0; }
    .toc strong { color:var(--ink); }
    .toc ul { margin:8px 0 0; padding-left:20px; }
    .toc li { margin:4px 0; }
    .table-wrap { overflow-x:auto; margin:18px 0 22px; }
    table { width:100%; border-collapse:collapse; min-width:620px; font-size:15px; }
    th,td { border:1px solid var(--line); padding:12px 14px; text-align:left; vertical-align:top; }
    th { background:#f1f3fa; color:var(--ink); }
    .note { background:#fff9e9; border:1px solid #f1dfae; border-radius:12px; padding:16px 18px; margin:20px 0; }
    .note strong { color:#4c3d14; }
    .check-list { padding-left:22px; }
    .check-list li { padding:3px 0; }
    .cta { background:var(--ink); color:#fff; border-radius:16px; padding:25px 26px; margin:38px 0; }
    .cta h2 { color:#fff; font-size:24px; margin:0 0 8px; }
    .cta p { color:#e5eafa; margin-bottom:14px; }
    .cta a { display:inline-block; background:#fff; color:var(--ink); font-weight:700; text-decoration:none; padding:10px 17px; border-radius:8px; }
    .faq-item { border-bottom:1px solid var(--line); padding:15px 2px; }
    .faq-item summary { cursor:pointer; color:var(--ink); font-weight:700; }
    .faq-item p { margin:12px 0 2px; }
    .sources { background:#fbfbfd; border:1px solid var(--line); border-radius:14px; padding:20px 22px; margin-top:34px; }
    .sources h2 { margin:0 0 10px; font-size:23px; }
    .sources li { margin:8px 0; }
    .small { color:var(--muted); font-size:13px; }
    @media(max-width:600px) { .article-wrap { padding:26px 17px 52px; } h2 { font-size:24px; } .dek { font-size:17px; } }
  