/* Save Your MPF tool pages and article pages, editorial skin.
   Loaded AFTER each page's inline <style>, so it re-skins the existing markup without touching any HTML structure or JS.
   Language is taken from the homepage (assets/home/home.css): white paper, navy ink, hairline rules, square gold buttons,
   Noto Sans TC headings at 750, small letter-spaced eyebrows, Georgia only for the wordmark.
   Interactive "instrument" bands (.section-dark) stay navy, so the tool is the one dark thing on the page. */

:root{
  --navy:#0f1f3d; --gold:#c9a84c; --gold-light:#e8c96a;
  --gold-ink:#846314;   /* gold as text on white (5.6:1) */
  --tag:#785c19;        /* eyebrows on white */
  --line:#ccd2db; --muted:#536075; --surface:#f5f6f8;
  --pos:#1b7a43; --neg:#b03a2e; --warn-ink:#8a5a00;      /* figures on white */
  --pos-dark:#5fd08f; --neg-dark:#ff8b7b;                 /* figures on navy */
  --g:clamp(20px,5vw,72px);                               /* page gutter, matches the homepage at 1440 */
  --ease:cubic-bezier(.23,1,.32,1);
  --font-heading:"Noto Sans TC","PingFang HK","Microsoft JhengHei",sans-serif;
  --font-body:"Noto Sans TC","PingFang HK","Microsoft JhengHei",sans-serif;
  --charcoal:#0f1f3d; --cream:#fff; --border:#ccd2db; --gold-border:#ccd2db; --row-alt:#f5f6f8;
}
html{scroll-padding-top:96px}
body{background:#fff;color:var(--navy);font-size:16px;line-height:1.75}
a:focus-visible,button:focus-visible{outline:3px solid var(--gold-ink);outline-offset:4px}
.section-dark a:focus-visible,.section-dark button:focus-visible,.footer a:focus-visible,.advisor-cta a:focus-visible{outline-color:var(--gold-light)}

/* ---- type ---- */
.page-hero h1,.article-hero h1,.section-title,.prose h2,.prose h3,.card h3,.rules-card h3,.advisor-cta h3,.cta-title,.empty-state h3{font-weight:750;letter-spacing:-.03em;text-wrap:balance}
.section-title{font-size:clamp(28px,3.2vw,46px);line-height:1.3;margin-bottom:18px}
.section-label,.page-hero-label{font-size:12px;letter-spacing:.12em;font-weight:600;color:var(--tag);margin-bottom:14px}
.section-dark .section-label{color:var(--gold-light)}
.gold-line{width:40px;height:2px;border-radius:0;margin-bottom:22px}
.section-subtitle{font-size:17px;color:var(--muted);max-width:52ch;margin-bottom:44px}
.section-dark .section-subtitle{color:rgba(255,255,255,.72)}
[style*="margin-left:auto"]{margin-left:0!important}
[style*="text-align:center"]{text-align:left!important}
p,.prose p{text-wrap:pretty}

/* ---- masthead ---- */
.nav{background:rgba(255,255,255,.97);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);padding:0}
.nav.scrolled{box-shadow:none}
.nav-inner{max-width:1440px;height:76px;padding-inline:var(--g)}
.nav-brand{font-family:Georgia,"Times New Roman",serif;font-weight:700;font-size:26px;letter-spacing:-1.2px;color:var(--navy)}
.nav-brand::after,.footer-brand::after{content:".";color:#947122}
.footer-brand::after{color:var(--gold)}
.nav-links{gap:24px}
.nav-links a{color:var(--navy);font-size:13px;font-weight:550;padding:5px 0;border-bottom:2px solid transparent;transition:color .18s,border-color .18s}
.nav-links a:hover{color:var(--gold-ink)}
.nav-links a.current{color:var(--navy);border-bottom-color:var(--gold)}
.nav-links a.nav-cta{background:var(--gold);color:var(--navy)!important;border:0;border-radius:0;padding:12px 16px;font-size:12px!important;font-weight:700!important;transition:background .18s,transform .18s}
.nav-links a.nav-cta:hover{background:#dfbe63;opacity:1;color:var(--navy)}
.nav-links a.nav-cta:active{transform:translateY(2px)}
.nav-links a.lang-toggle{color:var(--navy);border:1px solid var(--line);border-radius:0;padding:5px 10px;font-size:12px}
.nav-links a.lang-toggle:hover{border-color:var(--navy);color:var(--navy)}
.hamburger span{background:var(--navy);border-radius:0}
@media(max-width:1024px){
  .nav-links{display:none}
  .nav-links.open{display:flex;flex-direction:column;align-items:flex-start;position:absolute;top:76px;left:0;right:0;background:#fff;padding:22px var(--g) 28px;gap:16px;border-bottom:1px solid var(--line)}
  .nav-links.open a{font-size:15px}
  .hamburger{display:flex}
}

/* ---- page hero ---- */
.page-hero,.article-hero{background:#fff;padding:calc(76px + clamp(44px,6vw,84px)) var(--g) clamp(48px,6vw,84px);text-align:left;border-bottom:1px solid var(--line);overflow:hidden}
.page-hero::before,.article-hero::before{display:none}
.page-hero::after,.article-hero::after{content:"";position:absolute;top:76px;right:0;bottom:0;width:min(34%,520px);background:#15243b url(/assets/editorial/hero-fold.jpg) 50% 40%/cover no-repeat;z-index:0}
@media(min-width:901px){
  body:has(#viewToggle) .page-hero::after{background-position:50% 8%}
  body:has(#screen-checkpoint) .page-hero::after{background-position:50% 88%}
}
.page-hero>*,.article-hero>*{position:relative;z-index:1;max-width:min(62%,780px)}
.breadcrumb{font-size:12px;color:var(--muted);margin-bottom:30px}
.breadcrumb a{color:var(--navy);text-decoration:none;border-bottom:1px solid var(--line)}
.breadcrumb a:hover{color:var(--gold-ink)}
.page-hero-label{margin-bottom:22px}
.page-hero h1,.article-hero h1{font-size:clamp(34px,4.4vw,62px);line-height:1.28;color:var(--navy);max-width:min(62%,780px);margin:0 0 24px}
.article-hero h1{font-size:clamp(28px,3.5vw,50px);line-height:1.38}
.page-hero h1 .gold{color:var(--gold-ink);white-space:nowrap}
.page-hero p,.article-hero p{color:var(--muted);font-size:19px;line-height:1.75;max-width:34em;margin:0}
@media(max-width:900px){
  .page-hero,.article-hero{padding-bottom:calc(clamp(40px,8vw,64px) + 64px)}
  .page-hero::after,.article-hero::after{top:auto;left:0;width:auto;height:64px;background-position:50% 30%}
  .page-hero>*,.page-hero h1,.article-hero>*,.article-hero h1{max-width:none}
  .page-hero p,.article-hero p{font-size:17px}
}

/* ---- buttons ---- */
.btn-primary{background:var(--gold);color:var(--navy);border-radius:0;padding:17px 25px;font-size:15px;font-weight:700;box-shadow:none;transition:background .18s,transform .18s}
.btn-primary:hover{background:#dfbe63;box-shadow:none;transform:none}
.btn-primary:active{transform:translateY(2px)}
.btn-outline{border:1px solid var(--gold);color:var(--gold-light);border-radius:0;padding:15px 24px;font-size:15px}
.btn-outline:hover{background:var(--gold);color:var(--navy)}
.btn-dark{background:var(--navy);color:#fff;border-radius:0;padding:17px 26px;font-size:15px}
.btn-dark:hover{background:#1a2f52;box-shadow:none;transform:none}

/* ---- sections ---- */
.section{max-width:1440px;padding:clamp(56px,7vw,104px) var(--g)}
.section-narrow{max-width:1440px}
.section-dark{padding:clamp(56px,7vw,104px) var(--g)}
.section-dark .section-inner{max-width:1296px}
.section+.section{border-top:1px solid var(--line)}
.section+.section[style*="padding-top"]{border-top:0}
.section-narrow .prose{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);column-gap:clamp(40px,6vw,96px)}
.section-narrow .prose>h2{grid-column:1;grid-row:1/span 8;align-self:start;font-size:clamp(26px,2.6vw,38px);line-height:1.35;margin:0}
.section-narrow .prose>*:not(h2){grid-column:2}
.prose p,.prose ul{font-size:17px;line-height:1.85;color:var(--navy);margin-bottom:18px}
.prose strong{color:var(--navy);font-weight:700}
@media(max-width:860px){.section-narrow .prose{display:block}.section-narrow .prose>h2{margin-bottom:22px}}

/* ---- cards: ruled columns instead of boxes ---- */
.card-grid{gap:0 clamp(28px,3.4vw,52px)}
.card{background:none;border:0;border-top:1px solid var(--line);border-radius:0;padding:22px 0 12px;transition:border-color .18s}
.card:hover{transform:none;box-shadow:none;border-top-color:var(--navy)}
.card .card-num{font-weight:750;font-size:34px;line-height:1.2;color:var(--tag);letter-spacing:-.02em;margin-bottom:10px}
.card h3{font-size:20px;line-height:1.45;color:var(--navy);margin-bottom:8px}
.card p{font-size:15px;color:var(--muted);line-height:1.75}
a:hover>.card h3{text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:5px;text-decoration-thickness:2px}

/* ---- instrument band: calculator + time machine setup/reveal ---- */
.calc-grid{gap:clamp(28px,5vw,72px)}
.calc-form,.rules-card{background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.2);border-radius:0;padding:clamp(24px,3vw,36px)}
.rules-card h3{color:var(--gold-light);font-size:18px}
.rules-card li{color:rgba(255,255,255,.8)}
.calc-label{font-size:15px;font-weight:600;color:#fff}
.calc-label span:last-child{color:var(--gold-light);font-size:1.1rem;font-weight:700;font-variant-numeric:tabular-nums}
.calc-slider{height:2px;border-radius:0;background:rgba(255,255,255,.32)}
.calc-slider::-webkit-slider-thumb{width:22px;height:22px;border-radius:0;background:var(--gold);box-shadow:0 0 0 3px var(--navy)}
.calc-slider::-moz-range-thumb{width:22px;height:22px;border-radius:0;background:var(--gold);border:0;box-shadow:0 0 0 3px var(--navy)}
.calc-slider:focus-visible{outline:3px solid var(--gold-light);outline-offset:8px}
.calc-result{background:#fff;border:0;border-radius:0;padding:clamp(24px,3vw,36px);text-align:left}
.calc-result-row{font-size:15px;color:var(--navy);border-bottom:1px solid var(--line)}
.calc-result-row .val{font-weight:700;font-size:1.15rem;font-variant-numeric:tabular-nums}
.calc-result-row .val.green{color:var(--pos)}
.calc-result-row .val.red{color:var(--neg)}
.calc-result-row .val.amber{color:var(--warn-ink)}
.calc-gap-highlight{background:var(--surface);border-top:2px solid var(--gold);border-radius:0;padding:26px 24px;text-align:left}
.calc-gap-highlight .label{color:var(--muted);font-size:14px}
.calc-gap-highlight .amount{font-weight:750;font-size:clamp(34px,4vw,46px);letter-spacing:-.03em;color:var(--neg);font-variant-numeric:tabular-nums}
.calc-gap-highlight .amount.surplus{color:var(--pos)}
.calc-cta{margin-top:24px}
.calc-disclaimer{color:rgba(255,255,255,.62);font-size:13px;margin-inline:0!important}
.section:not(.section-dark) .calc-disclaimer{color:var(--muted)}

/* ---- FAQ ---- */
#faq{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);column-gap:clamp(40px,6vw,96px);align-items:start}
#faq .faq-list{max-width:none}
.faq-item{border-bottom:1px solid var(--line)}
.faq-item:first-child{border-top:1px solid var(--line)}
.faq-q{font-size:17px;font-weight:650;color:var(--navy);padding:22px 0;line-height:1.55}
.faq-q::after{color:var(--gold-ink);font-weight:300;font-size:1.6rem;line-height:1}
.faq-a p{font-size:16px;color:var(--muted);line-height:1.8}
@media(max-width:860px){#faq{display:block}#faq .faq-list{margin-top:8px}}

/* ---- closing banner ---- */
.cta-banner{background:#fff;text-align:left;padding:clamp(56px,7vw,104px) var(--g);border-top:1px solid var(--line)}
.cta-banner-inner{max-width:1296px;background:none;border:0;border-radius:0;padding:0;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);column-gap:clamp(40px,6vw,96px);align-items:start;margin:0 auto}
.cta-banner-inner>.section-label{grid-column:1;grid-row:1}
.cta-banner-inner>.gold-line{grid-column:1;grid-row:2}
.cta-banner-inner>.section-title,.cta-banner-inner>.cta-title{grid-column:1;grid-row:3/5;margin:0}
.cta-banner-inner>.section-subtitle,.cta-banner-inner>.cta-sub{grid-column:2;grid-row:3;margin:0;max-width:44ch;align-self:start}
.cta-banner-inner>.btn-primary{grid-column:2;grid-row:4;justify-self:start;align-self:start;margin-top:26px}
@media(max-width:860px){.cta-banner-inner{display:block}.cta-banner-inner>.section-title,.cta-banner-inner>.cta-title{margin-bottom:18px}.cta-banner-inner>.section-subtitle,.cta-banner-inner>.cta-sub{margin-bottom:28px}}

/* ---- footer ---- */
.footer{background:var(--navy);padding:clamp(40px,5vw,56px) var(--g) 32px}
.footer-inner,.footer-bottom{max-width:1296px}
.footer-brand{font-family:Georgia,"Times New Roman",serif;font-weight:700;font-size:26px;letter-spacing:-1.2px;color:#fff;margin-bottom:10px}
.footer-company{color:#c5cedc;font-size:13px}
.footer-links a{color:#c5cedc;font-size:13px}
.footer-links a:hover{color:var(--gold-light)}
.footer-bottom{border-top:1px solid rgba(255,255,255,.16);text-align:left}
.footer-disclaimer{color:#c5cedc;font-size:11px;max-width:760px;margin:0 0 14px}

/* ---- reveal-on-scroll: shorter travel, off for reduced motion ---- */
.fade-in{transform:translateY(14px);transition:opacity .6s var(--ease),transform .6s var(--ease)}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.fade-in{opacity:1!important;transform:none!important;transition:none!important}}

/* ================= fund comparison ================= */
.view-toggle-wrap,.metric-toggle-wrap{justify-content:flex-start}
.segmented{background:#fff;border:1px solid var(--line);border-radius:0;padding:0;gap:0;box-shadow:none}
.segmented button{border-radius:0;font-size:15px;font-weight:650;padding:14px 26px;color:var(--navy);transition:background .18s,color .18s}
.segmented button:hover:not(.active){background:var(--surface);color:var(--navy)}
.segmented button.active{background:var(--navy);color:#fff;box-shadow:inset 0 -3px 0 var(--gold)}
.segmented.small button{padding:10px 18px;font-size:14px}
.metric-toggle-label{font-size:12px;letter-spacing:.1em;color:var(--muted)}
.asof-note,.cat-caveat{text-align:left;color:var(--muted);font-size:13px}
.asof-note{margin:0 0 28px}
.board-container{background:none;border:0;border-top:2px solid var(--navy);border-radius:0;padding:8px 0 0;margin-bottom:28px}
.board-row{padding:13px 0;border-bottom:1px solid var(--line)}
.board-rank{font-weight:650;color:var(--muted);font-variant-numeric:tabular-nums}
.board-name{font-size:15px;color:var(--navy)}
.swatch{border-radius:0}
.board-track{height:16px;background:var(--surface);border-radius:0}
.board-fill{border-radius:0}
.board-score{font-weight:750;font-size:16px;color:var(--navy);font-variant-numeric:tabular-nums}
.board-tooltip{border-radius:0;box-shadow:none;font-size:12px}
@media(max-width:760px){.board-tooltip{white-space:normal;width:max-content;max-width:min(230px,62vw);left:auto;right:0}}
.fund-table-wrapper{margin:24px 0 0;padding:0}
.fund-table{border:0;border-top:2px solid var(--navy);border-radius:0;background:#fff}
.fund-table th{white-space:nowrap;background:none;color:var(--navy);font-size:12px;font-weight:650;letter-spacing:.06em;padding:14px 16px;border-bottom:1px solid var(--navy);border-radius:0!important}
.fund-table td{font-size:14px;padding:13px 16px;border-bottom:1px solid var(--line);color:var(--navy)}
.fund-table tr:nth-child(even) td{background:#fafbfc}
.fund-table td.provider-name{color:var(--navy)}
.fund-table td.fund-name,.fund-table td.asof{color:var(--muted)}
.fund-table td.num{font-weight:700;font-variant-numeric:tabular-nums}
.fund-table td.num.pos,.fund-table td.num.cheapest{color:var(--pos)}
.fund-table td.num.neg,.fund-table td.num.priciest{color:var(--neg)}
.star{color:var(--gold-ink)}
.fund-cat-tabs{justify-content:flex-start;gap:0;margin-bottom:12px}
.fund-cat-tab{background:#fff;border:1px solid var(--line);border-radius:0;padding:11px 20px;margin:0 -1px -1px 0;font-size:14px;font-weight:600;color:var(--navy);transition:background .18s,color .18s,border-color .18s}
.fund-cat-tab:hover{border-color:var(--navy);position:relative;z-index:1}
.fund-cat-tab.active{background:var(--navy);border-color:var(--navy);color:#fff;box-shadow:inset 0 -3px 0 var(--gold);position:relative;z-index:1}
.method-box{background:var(--surface);border:0;border-left:2px solid var(--gold);border-radius:0;padding:26px 28px}
.method-box p,.caveat-list li{font-size:14px;color:var(--muted)}
.method-box strong,.caveat-list strong{color:var(--navy)}
.caveat-list li::before{color:var(--gold-ink)}

/* ================= time machine ================= */
.scenario-card{background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.2);border-left:3px solid var(--gold);border-radius:0}
.scenario-card .scenario-year{color:var(--gold-light);font-weight:750}
.scenario-card .scenario-text{color:rgba(255,255,255,.85)}
.timeline{margin:0;max-width:760px}
.timeline::before{background:var(--line);height:1px}
.timeline-dot{border-radius:0;border:1px solid var(--line);color:var(--muted);font-weight:650}
.timeline-dot.done{background:var(--gold);border-color:var(--gold);color:var(--navy)}
.timeline-dot.current{background:var(--navy);border-color:var(--navy);color:#fff;transform:scale(1.25);box-shadow:none}
.timeline-year{color:var(--muted)}
.timeline-step.current .timeline-year{color:var(--navy)}
.checkpoint-card{background:none;border:0;border-top:2px solid var(--navy);border-radius:0;padding:32px 0 8px;text-align:left;max-width:none;margin:0 0 36px}
.checkpoint-card::before{display:none}
.checkpoint-card .year-range{font-weight:750;font-size:clamp(28px,3.4vw,44px);letter-spacing:-.03em;color:var(--navy)}
.checkpoint-card .theme{color:var(--tag);font-weight:650;font-size:15px}
.checkpoint-card .blurb{color:var(--navy);font-size:17px;line-height:1.85;max-width:60ch}
.news-clip{border-radius:0}
.news-clip.alert .news-clip-headline,.news-clip.alert .news-clip-masthead{color:var(--neg)}
.news-clip.alert .news-clip-masthead{border-color:var(--neg)}
.news-clip.alert.pos{background:#e9f3ec}
.news-clip.alert.pos .news-clip-headline,.news-clip.alert.pos .news-clip-masthead{color:var(--pos)}
.news-clip.alert.pos .news-clip-masthead{border-color:var(--pos)}
.news-clip-row,.news-clip{margin-left:0;margin-right:0}
.choice-grid{max-width:none;margin:0;gap:0}
.choice-btn{background:#fff;border:1px solid var(--line);border-left:4px solid var(--risk-color);border-radius:0;padding:22px 18px;text-align:left;margin:0 -1px -1px 0;transition:border-color .18s,background .18s}
.choice-btn:hover{border-color:var(--navy);border-left-color:var(--risk-color);background:var(--surface);transform:none;box-shadow:none}
.choice-btn:active{transform:translateY(1px)}
.choice-btn .name{font-weight:750;font-size:17px}
.choice-btn .desc{font-size:13px}
.choice-btn.risk-low{--risk-color:var(--pos)}
.choice-btn.risk-mid{--risk-color:#c98a10}
.choice-btn.risk-high{--risk-color:var(--neg)}
.reveal-card{background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.2);border-radius:0;max-width:none;text-align:left;padding:clamp(26px,3.4vw,44px)}
.reveal-card::before{display:none}
.reveal-card .picked{color:rgba(255,255,255,.7)}
.reveal-stat{font-weight:750;letter-spacing:-.03em;font-size:clamp(40px,5vw,60px)}
.reveal-stat.neg,.reveal-balance .down{color:var(--neg-dark)}
.reveal-stat.pos,.reveal-balance .up{color:var(--pos-dark)}
.reveal-card .blurb{color:rgba(255,255,255,.85);font-size:16px;max-width:60ch}
.reveal-balance{justify-content:flex-start;font-weight:650}
.chart-wrap{background:none;border:0;border-top:2px solid var(--navy);border-radius:0;padding:24px 0 0}
.compare-card{background:var(--navy);border:0;border-radius:0;padding:8px clamp(20px,3vw,32px)}
.compare-card:hover{border:0}
.path-compare-row .val{font-weight:750}
.path-compare-row .val.green{color:var(--pos-dark)}
.score-badge{background:var(--navy);border-radius:0;max-width:none;margin:28px 0 0}
.score-gauge::before{background:var(--navy)}
.advisor-cta{background:var(--gold);border-radius:0;text-align:left;padding:clamp(30px,4vw,52px)}
.advisor-cta::before{display:none}
.advisor-cta-badge{border-radius:0;background:var(--navy);color:var(--gold-light);font-weight:700;letter-spacing:.08em}
.advisor-cta h3{margin:0 0 16px;font-size:clamp(24px,3vw,34px);max-width:26em}
.advisor-cta p{margin:0 0 28px;max-width:56ch;color:rgba(15,31,61,.85)}
.illustrative-note{background:var(--surface);border-left:2px solid var(--gold);border-radius:0;max-width:none;margin:0 0 32px;color:var(--muted)}
.replay-link{color:var(--muted);border-bottom-color:var(--line)}
.replay-link:hover{color:var(--navy);border-color:var(--gold)}
@media(max-width:768px){
  .btn-dark{width:auto}
  .choice-btn{padding:18px 14px}
  .advisor-cta{padding:28px 22px}
}

/* ================= article pages ================= */
.article-meta{justify-content:flex-start;gap:14px;font-size:13px;color:var(--muted);margin-bottom:22px}
.article-tag{color:var(--tag);font-size:12px;letter-spacing:.12em;font-weight:600}
.article-section{max-width:1440px;padding:clamp(48px,6vw,88px) var(--g)}
.article-section[style*="max-width"]{max-width:1440px!important}
.article-section:has(>.prose){display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);column-gap:clamp(40px,6vw,96px)}
.article-section>.prose{grid-column:2;max-width:none}
.article-section+.article-section{border-top:1px solid var(--line)}
.prose h2{font-size:clamp(24px,2.3vw,32px);line-height:1.4;margin:56px 0 18px}
.prose h2:first-child{margin-top:0}
.prose h3{font-size:20px;line-height:1.5;margin:32px 0 12px;color:var(--navy)}
.prose p,.prose ul,.prose ol{font-size:17px;line-height:1.95}
.prose li{margin-bottom:8px}
.prose a{color:var(--gold-ink);font-weight:650;text-decoration:underline;text-decoration-color:var(--gold);text-decoration-thickness:2px;text-underline-offset:4px}
.prose a:hover{color:var(--navy)}
.callout{background:var(--surface);border:0;border-left:2px solid var(--gold);border-radius:0;padding:22px 26px;margin:28px 0;font-size:16px;color:var(--navy)}
.data-table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch}
.data-table{border:0;border-top:2px solid var(--navy);border-radius:0;background:#fff;font-size:14px}
.data-table th{background:none;color:var(--navy);font-size:12px;font-weight:650;letter-spacing:.06em;padding:14px 16px;border-bottom:1px solid var(--navy)}
.data-table td{padding:13px 16px;border-bottom:1px solid var(--line);color:var(--navy)}
.data-table tr:nth-child(even) td{background:#fafbfc}
.risk-list,.question-list,.step-list{margin:28px 0;padding:0;border-top:2px solid var(--navy)}
.risk-item,.question-item,.step-item{background:none;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:22px 0;margin:0;gap:22px}
.risk-num,.step-num{font-weight:750;font-size:28px;color:var(--tag);letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.question-mark{font-weight:750;font-size:24px;color:var(--tag)}
.risk-item h3,.step-item h3{font-size:18px;color:var(--navy);margin-bottom:6px}
.risk-item p,.step-item p{font-size:15px;color:var(--muted);line-height:1.75}
.question-item p{font-size:17px;font-weight:600;color:var(--navy)}
.checklist{background:none;border:0;border-top:2px solid var(--navy);border-radius:0;padding:0;margin:28px 0}
.checklist li{padding:14px 0;margin:0;border-bottom:1px solid var(--line);font-size:16px;color:var(--navy)}
.checklist li::before{color:var(--gold-ink)}
.source-note{font-size:13px;color:var(--muted);border-top:1px solid var(--line);padding-top:22px;margin-top:56px}
.source-note a{color:var(--gold-ink);font-weight:500;text-decoration-thickness:1px}
.cta-title{font-size:clamp(28px,3.2vw,46px);line-height:1.3;color:var(--navy)}
.cta-sub{font-size:17px;color:var(--muted)}
[style*="--bull-green"]{color:var(--pos)!important}
[style*="--bear-red"]{color:var(--neg)!important}
/* article hub */
.card .card-tag{display:block;background:none;border-radius:0;padding:0;font-size:12px;letter-spacing:.12em;font-weight:600;color:var(--tag);margin-bottom:10px}
.empty-state{text-align:left;background:none;border:0;border-top:1px solid var(--line);border-radius:0;padding:32px 0 0;margin-top:40px}
.empty-state h3{font-size:20px}
.empty-state p{margin:0;max-width:52ch;font-size:15px}
@media(max-width:860px){.article-section:has(>.prose){display:block}.prose h2{margin-top:44px}}
@media(max-width:600px){.data-table{font-size:13px}.data-table th,.data-table td{padding:10px 6px;overflow-wrap:anywhere}.data-table th{letter-spacing:.02em}}
