/* ============================================================
   CreditXpress · Blog / Guides shared stylesheet
   Tokens & type mirror the main site (index.html) for visual parity.
   English-first content hub. Flat URL scheme: /blog/<slug>.html
   ============================================================ */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --brand-1:oklch(0.32 0.18 262);--brand-2:oklch(0.50 0.22 262);--brand-3:oklch(0.65 0.18 258);
  --brand-4:oklch(0.92 0.05 258);--brand-5:oklch(0.97 0.02 258);
  --accent-1:oklch(0.74 0.18 60);--accent-2:oklch(0.85 0.14 75);--accent-3:oklch(0.95 0.05 80);
  --bg:oklch(0.99 0.005 262);--surface-1:oklch(0.97 0.008 262);--surface-2:oklch(0.94 0.01 262);
  --border-1:oklch(0.90 0.012 262);--border-2:oklch(0.82 0.018 262);
  --text-1:oklch(0.20 0.02 262);--text-2:oklch(0.40 0.015 262);--text-3:oklch(0.55 0.012 262);
  --text-on-brand:oklch(0.99 0.005 262);
  --success:oklch(0.65 0.18 145);--warning:oklch(0.75 0.16 80);--danger:oklch(0.58 0.20 25);
  --sh-1:0 1px 2px oklch(0.20 0.02 262/0.05);--sh-2:0 6px 16px oklch(0.20 0.02 262/0.08);
  --sh-3:0 14px 32px oklch(0.20 0.02 262/0.12);--sh-brand:0 14px 36px oklch(0.50 0.22 262/0.32);
  --sh-accent:0 12px 30px oklch(0.74 0.18 60/0.42);
  --r-xs:8px;--r-sm:14px;--r-md:20px;--r-lg:28px;--r-pill:999px;
  --d-fast:180ms;--d-base:320ms;--ease-q:cubic-bezier(0.25,1,0.5,1);--ease-Q:cubic-bezier(0.22,1,0.36,1);
  --container:1120px;--measure:720px;
}
html{scroll-behavior:smooth}
html,body{font-family:'Inter','-apple-system',system-ui,sans-serif;color:var(--text-2);background:var(--bg);-webkit-font-smoothing:antialiased;line-height:1.65;font-size:16px;overflow-x:hidden}
.display{font-family:'Plus Jakarta Sans','Inter',sans-serif;letter-spacing:-0.03em;font-weight:900}
a{color:var(--brand-2);text-decoration:none}
img{max-width:100%;display:block}
.container{max-width:var(--container);margin:0 auto;padding:0 24px}
::selection{background:var(--brand-2);color:var(--text-on-brand)}

/* ── HEADER ── */
/* fixed site nav = needs body offset */
body{padding-top:72px}
.nav{position:fixed;top:0;left:0;right:0;z-index:80;background:oklch(0.99 0.005 262/0.7);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-bottom:1px solid transparent;transition:all var(--d-base) var(--ease-q)}
.nav.scrolled{background:oklch(0.99 0.005 262/0.92);border-bottom-color:var(--border-1)}
.nav-row{display:flex;align-items:center;justify-content:space-between;height:72px}
.brand{display:flex;align-items:center;gap:11px;font-family:'Plus Jakarta Sans',sans-serif;font-weight:900;font-size:1.22rem;color:var(--text-1);letter-spacing:-0.025em}
.brand-mark{width:40px;height:40px;border-radius:10px;background:#fff url("../img/gp-mobile.jpg") center/86% no-repeat;border:1px solid var(--border-1);box-shadow:0 4px 12px oklch(0.50 0.22 262/0.10);flex:none}
.nav-links{display:flex;align-items:center;gap:36px;font-size:.92rem;font-weight:600;color:var(--text-2)}
.nav-links a{position:relative;padding:6px 0;color:var(--text-2);transition:color var(--d-fast) var(--ease-q)}
.nav-links a::after{content:'';position:absolute;left:0;right:0;bottom:-4px;height:2px;background:var(--brand-2);border-radius:2px;transform:scaleX(0);transform-origin:left;transition:transform var(--d-base) var(--ease-Q)}
.nav-links a:hover{color:var(--text-1)}.nav-links a:hover::after{transform:scaleX(1)}
.nav-links a.cx-cur{color:var(--text-1)}.nav-links a.cx-cur::after{transform:scaleX(1)}
.nav-right{display:flex;align-items:center;gap:14px}
.lang{display:flex;align-items:center;background:var(--surface-2);border-radius:var(--r-pill);padding:3px;font-size:.78rem;font-weight:700}
.lang button{padding:6px 14px;border-radius:var(--r-pill);border:none;cursor:pointer;background:transparent;color:var(--text-3);transition:all var(--d-fast) var(--ease-q);font-family:'Inter',sans-serif}
.lang button.on{background:var(--text-1);color:var(--text-on-brand);box-shadow:var(--sh-2)}
.btn{display:inline-flex;align-items:center;gap:9px;font-weight:700;padding:13px 24px;border-radius:var(--r-pill);font-size:.93rem;transition:transform var(--d-fast) var(--ease-q),box-shadow var(--d-base) var(--ease-q),background var(--d-fast) var(--ease-q);cursor:pointer;border:none;white-space:nowrap;font-family:'Inter',sans-serif;text-decoration:none}
.btn-primary{background:var(--text-1);color:var(--text-on-brand);box-shadow:var(--sh-2)}
.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--sh-3);background:oklch(0.12 0.02 262)}
@media (max-width:880px){.nav-links{display:none}.nav-right .btn-primary{display:none}}

/* ── BLOG INDEX HERO ── */
.blog-hero{padding:64px 0 26px;text-align:center}
.eyebrow{display:inline-block;font-size:.74rem;font-weight:800;color:var(--brand-2);background:var(--brand-4);padding:5px 14px;border-radius:var(--r-pill);letter-spacing:.08em;text-transform:uppercase;margin-bottom:18px;border:1px solid oklch(0.85 0.05 258)}
.blog-hero h1{font-family:'Plus Jakarta Sans',sans-serif;font-size:clamp(2.2rem,5vw,3.4rem);font-weight:900;line-height:1.06;letter-spacing:-0.035em;color:var(--text-1);margin-bottom:16px}
.blog-hero h1 .grad{background:linear-gradient(105deg,var(--brand-2),var(--accent-1));-webkit-background-clip:text;background-clip:text;color:transparent}
.blog-hero p{font-size:1.08rem;color:var(--text-3);max-width:600px;margin:0 auto;line-height:1.6}

/* ── POST GRID ── */
.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding:40px 0 20px}
@media(max-width:920px){.post-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.post-grid{grid-template-columns:1fr}}
.post-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--border-1);border-radius:var(--r-md);overflow:hidden;box-shadow:var(--sh-1);transition:transform var(--d-base) var(--ease-Q),box-shadow var(--d-base) var(--ease-Q),border-color var(--d-base)}
.post-card:hover{transform:translateY(-5px);box-shadow:var(--sh-3);border-color:var(--border-2)}
.post-card.feature{grid-column:1 / -1;flex-direction:row}
@media(max-width:600px){.post-card.feature{flex-direction:column}}
.post-thumb{aspect-ratio:16/9;background:linear-gradient(135deg,var(--brand-1),var(--brand-2));position:relative;display:flex;align-items:flex-end;padding:18px;overflow:hidden}
.post-thumb img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.post-card.feature .post-thumb{aspect-ratio:auto;flex:0 0 46%;min-height:240px}
.post-thumb .glyph{position:absolute;top:-20px;right:-10px;font-size:9rem;line-height:1;opacity:.16;color:#fff;transform:rotate(-8deg)}
.post-thumb .cat{position:relative;z-index:1;font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#fff;background:oklch(0.24 0.04 262/0.80);border:1px solid oklch(1 0 0/0.16);padding:5px 12px;border-radius:var(--r-pill);backdrop-filter:blur(6px)}
.post-thumb.amber{background:linear-gradient(135deg,oklch(0.60 0.16 50),var(--accent-1))}
.post-thumb.teal{background:linear-gradient(135deg,oklch(0.42 0.10 200),oklch(0.58 0.13 195))}
.post-thumb.violet{background:linear-gradient(135deg,oklch(0.38 0.16 290),oklch(0.55 0.18 295))}
.post-body{padding:22px;display:flex;flex-direction:column;gap:10px;flex:1}
.post-card.feature .post-body{padding:34px;justify-content:center}
.post-body h2,.post-body h3{font-family:'Plus Jakarta Sans',sans-serif;color:var(--text-1);letter-spacing:-0.02em;line-height:1.24}
.post-body h3{font-size:1.16rem;font-weight:800}
.post-card.feature .post-body h2{font-size:1.7rem;font-weight:900;margin-bottom:4px}
.post-body p{font-size:.93rem;color:var(--text-3);flex:1}
.post-meta{display:flex;align-items:center;gap:10px;font-size:.78rem;color:var(--text-3);font-weight:600}
.post-meta .dot{width:3px;height:3px;border-radius:50%;background:var(--border-2)}
.post-more{font-weight:700;color:var(--brand-2);font-size:.9rem;display:inline-flex;align-items:center;gap:6px;margin-top:2px}
.post-card:hover .post-more{gap:10px}
.post-more,.post-more svg{transition:gap var(--d-base) var(--ease-q),transform var(--d-base) var(--ease-q)}

/* ── ARTICLE ── */
.article{padding:0 0 20px}
.crumbs{font-size:.82rem;color:var(--text-3);padding:26px 0 0;font-weight:600}
.langswitch{float:right;font-size:.8rem;font-weight:700;color:var(--brand-2);border:1px solid var(--border-2);border-radius:var(--r-pill);padding:4px 14px;transition:background var(--d-fast),border-color var(--d-fast)}
.langswitch:hover{background:var(--brand-5);border-color:var(--brand-2)}
.crumbs a{color:var(--text-3)}.crumbs a:hover{color:var(--brand-2)}
.crumbs span{margin:0 7px;opacity:.5}
.article-head{max-width:var(--measure);margin:0 auto;padding:20px 0 0;text-align:left}
.article-head .cat{display:inline-block;font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--brand-2);background:var(--brand-4);padding:5px 13px;border-radius:var(--r-pill);border:1px solid oklch(0.85 0.05 258);margin-bottom:18px}
.article-head h1{font-family:'Plus Jakarta Sans',sans-serif;font-size:clamp(1.9rem,4.4vw,2.9rem);font-weight:900;line-height:1.1;letter-spacing:-0.035em;color:var(--text-1);margin-bottom:16px}
.article-head .dek{font-size:1.18rem;color:var(--text-2);line-height:1.55;margin-bottom:22px}
.article-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;font-size:.86rem;color:var(--text-3);font-weight:600;padding-bottom:26px;border-bottom:1px solid var(--border-1)}
.article-meta .av{width:34px;height:34px;border-radius:50%;background:var(--brand-2);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.82rem;font-family:'Plus Jakarta Sans'}
.article-meta .dot{width:3px;height:3px;border-radius:50%;background:var(--border-2)}

.prose{max-width:calc(var(--measure) + 48px);margin:0 auto;padding:34px 24px 10px;font-size:1.07rem;color:var(--text-2)}
.prose>p{margin:0 0 22px}
.prose h2{font-family:'Plus Jakarta Sans',sans-serif;font-size:1.6rem;font-weight:800;letter-spacing:-0.02em;color:var(--text-1);line-height:1.2;margin:42px 0 16px;scroll-margin-top:84px}
.prose h3{font-family:'Plus Jakarta Sans',sans-serif;font-size:1.22rem;font-weight:800;color:var(--text-1);margin:30px 0 12px;letter-spacing:-0.01em}
.prose ul,.prose ol{margin:0 0 22px;padding-left:4px;list-style:none}
.prose li{position:relative;padding-left:30px;margin-bottom:11px}
.prose ul li::before{content:'';position:absolute;left:6px;top:11px;width:7px;height:7px;border-radius:2px;background:var(--brand-2);transform:rotate(45deg)}
.prose ol{counter-reset:li}
.prose ol li{counter-increment:li}
.prose ol li::before{content:counter(li);position:absolute;left:0;top:1px;width:22px;height:22px;border-radius:50%;background:var(--brand-4);color:var(--brand-2);font-size:.74rem;font-weight:800;display:flex;align-items:center;justify-content:center;font-family:'Plus Jakarta Sans'}
.prose strong{color:var(--text-1);font-weight:700}
.prose a{font-weight:600;border-bottom:1.5px solid oklch(0.50 0.22 262/0.30);transition:border-color var(--d-fast)}
.prose a:hover{border-bottom-color:var(--brand-2)}
.prose blockquote{margin:26px 0;padding:6px 0 6px 22px;border-left:3px solid var(--accent-1);color:var(--text-1);font-size:1.16rem;font-style:italic;line-height:1.5}

/* callouts */
.callout{margin:26px 0;padding:20px 22px;border-radius:var(--r-sm);background:var(--surface-1);border:1px solid var(--border-1);font-size:.98rem}
.callout.tip{background:oklch(0.96 0.03 145);border-color:oklch(0.85 0.07 145)}
.callout.warn{background:oklch(0.97 0.03 60);border-color:oklch(0.88 0.09 70)}
.callout.brand{background:var(--brand-5);border-color:oklch(0.85 0.05 258)}
.callout .ct{font-weight:800;color:var(--text-1);display:flex;align-items:center;gap:8px;margin-bottom:7px;font-family:'Plus Jakarta Sans'}
.callout p{margin:0}

/* table */
.tbl-wrap{margin:26px 0;overflow-x:auto;border:1px solid var(--border-1);border-radius:var(--r-sm)}
table{width:100%;border-collapse:collapse;font-size:.94rem;min-width:480px}
th,td{text-align:left;padding:13px 16px;border-bottom:1px solid var(--border-1)}
thead th{background:var(--surface-1);color:var(--text-1);font-weight:800;font-size:.82rem;letter-spacing:.02em;text-transform:uppercase}
tbody tr:last-child td{border-bottom:none}
td strong{color:var(--text-1)}
.tbl-wrap.compare th:first-child,.tbl-wrap.compare td:first-child{font-weight:700;color:var(--text-1)}
.yes{color:var(--success);font-weight:700}.no{color:var(--danger);font-weight:700}

/* key-fact strip */
.facts{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:30px 0}
@media(max-width:620px){.facts{grid-template-columns:repeat(2,1fr)}}
.fact{background:#fff;border:1px solid var(--border-1);border-radius:var(--r-sm);padding:16px;box-shadow:var(--sh-1)}
.fact .n{font-family:'Plus Jakarta Sans';font-weight:900;font-size:1.3rem;color:var(--brand-2);letter-spacing:-0.02em}
.fact .l{font-size:.76rem;color:var(--text-3);margin-top:4px;line-height:1.4}

/* CTA band — app download */
.cta-band{position:relative;overflow:hidden;max-width:var(--measure);margin:50px auto;border-radius:var(--r-lg);padding:36px 38px;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:28px;background:linear-gradient(118deg,var(--brand-1) 0%,var(--brand-2) 68%,oklch(0.56 0.20 268) 100%);box-shadow:0 22px 50px oklch(0.32 0.18 262/0.32)}
.cta-band::before{content:"";position:absolute;inset:0;background-image:radial-gradient(oklch(1 0 0/0.16) 1.3px,transparent 1.3px);background-size:17px 17px;-webkit-mask-image:linear-gradient(125deg,transparent 38%,#000 100%);mask-image:linear-gradient(125deg,transparent 38%,#000 100%);pointer-events:none}
.cta-band::after{content:"";position:absolute;top:-45%;right:-4%;width:330px;height:330px;background:radial-gradient(circle,oklch(0.74 0.18 60/0.34),transparent 64%);pointer-events:none}
@media(max-width:600px){.cta-band{flex-direction:column;text-align:center;padding:30px 24px}}
.cta-band-txt{position:relative;z-index:1}
.cta-band .eb{display:inline-flex;align-items:center;gap:8px;font-size:.7rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-2);margin-bottom:11px}
.cta-band .eb::before{content:"";width:18px;height:2px;background:var(--accent-1);border-radius:2px}
.cta-band h3{font-family:'Plus Jakarta Sans';font-weight:900;font-size:1.45rem;letter-spacing:-0.025em;margin-bottom:7px;color:#fff;line-height:1.16}
.cta-band p{font-size:.92rem;color:oklch(0.92 0.03 262);max-width:330px}
/* Google Play badge button */
.gp-badge{position:relative;z-index:1;flex:none;display:inline-flex;align-items:center;gap:13px;background:#fff;border-radius:15px;padding:12px 24px 12px 20px;box-shadow:0 12px 28px oklch(0.18 0.04 262/0.36);transition:transform var(--d-fast) var(--ease-q),box-shadow var(--d-fast)}
.gp-badge:hover{transform:translateY(-3px);box-shadow:0 18px 40px oklch(0.18 0.04 262/0.46)}
.gp-badge svg{width:27px;height:27px;flex:none}
.gp-badge .tx{display:flex;flex-direction:column;line-height:1.12;text-align:left}
.gp-badge .tx small{font-size:.6rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--text-3)}
.gp-badge .tx strong{font-family:'Plus Jakarta Sans';font-size:1.12rem;font-weight:800;color:var(--text-1);letter-spacing:-0.01em}

/* disclaimer */
.disclaimer{max-width:var(--measure);margin:30px auto 0;font-size:.82rem;color:var(--text-3);line-height:1.6;padding:18px 20px;background:var(--surface-1);border-radius:var(--r-sm);border:1px solid var(--border-1)}
.disclaimer strong{color:var(--text-2)}

/* related */
.related{padding:50px 0;border-top:1px solid var(--border-1);margin-top:46px}
.related h4{font-family:'Plus Jakarta Sans';font-weight:800;color:var(--text-1);font-size:1.05rem;text-align:center;margin-bottom:26px;letter-spacing:.02em}
.related .post-grid{padding:0}

/* ── FOOTER ── */
footer{background:var(--text-1);color:oklch(1 0 0/0.7);padding:56px 0 32px;position:relative}
.ft-skyline{position:absolute;top:0;left:0;right:0;height:48px;overflow:hidden;pointer-events:none;opacity:0.6}
.ft-skyline svg{width:100%;height:100%}
.ft-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:48px;margin-bottom:48px}
.ft-brand-row{display:flex;align-items:center;gap:11px;margin-bottom:18px}
.ft-brand-row .brand-mark{border-color:oklch(1 0 0/0.18)}
.ft-brand-row strong{color:#fff;font-family:'Plus Jakarta Sans',sans-serif;font-size:1.25rem;letter-spacing:-0.025em}
.ft-slogan{font-family:'Plus Jakarta Sans',sans-serif;font-size:1.02rem;font-weight:800;letter-spacing:0.1em;color:#fff;text-transform:uppercase;margin:14px 0 16px;display:block}
.ft-slogan em{color:var(--accent-1);font-style:normal;font-weight:900;margin:0 3px}
.ft-tagline{color:oklch(1 0 0/0.65);font-size:.92rem;line-height:1.7;margin-bottom:24px;max-width:320px}
.ft-h{font-family:'Plus Jakarta Sans',sans-serif;font-size:.76rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:#fff;margin-bottom:18px}
.ft-links{display:flex;flex-direction:column;gap:12px}
.ft-links a{font-size:.88rem;color:oklch(1 0 0/0.6);transition:color var(--d-fast) var(--ease-q)}
.ft-links a:hover{color:var(--accent-1)}
.ft-bottom{padding-top:24px;border-top:1px solid oklch(1 0 0/0.08);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px;font-size:.78rem;color:oklch(1 0 0/0.5)}
.ft-bottom strong{color:oklch(1 0 0/0.75);font-weight:600}
@media (max-width:780px){.ft-grid{grid-template-columns:1fr 1fr;gap:32px}}
@media (max-width:520px){.ft-grid{grid-template-columns:1fr}}

/* ── article header image ── */
.article-hero-img{max-width:calc(var(--measure) + 48px);margin:24px auto 0;padding:0 24px}
.article-hero-img img{width:100%;border-radius:var(--r-md);box-shadow:var(--sh-2);aspect-ratio:16/9;object-fit:cover;display:block}
/* in-body figure */
figure.fig{margin:32px 0}
figure.fig img{width:100%;border-radius:var(--r-sm);box-shadow:var(--sh-1);aspect-ratio:16/9;object-fit:cover}
figure.fig figcaption{font-size:.82rem;color:var(--text-3);text-align:center;margin-top:11px}

/* ── GEO: quick answer ── */
.quick-answer{margin:8px 0 30px;padding:22px 24px;border-radius:var(--r-md);background:var(--brand-5);border:1px solid oklch(0.85 0.05 258);border-left:4px solid var(--brand-2)}
.quick-answer .qa-h{font-family:'Plus Jakarta Sans';font-weight:800;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;color:var(--brand-2);margin-bottom:9px;display:flex;align-items:center;gap:8px}
.quick-answer p{margin:0;font-size:1.06rem;color:var(--text-1);line-height:1.56}
/* GEO: key takeaways */
.takeaways{margin:28px 0;padding:22px 24px;border-radius:var(--r-md);background:var(--surface-1);border:1px solid var(--border-1)}
.takeaways .tk-h{font-family:'Plus Jakarta Sans';font-weight:800;color:var(--text-1);margin-bottom:13px;font-size:1.02rem}
.takeaways ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:11px}
.takeaways li{position:relative;padding-left:30px;font-size:.97rem;color:var(--text-2)}
.takeaways li::before{content:"✓";position:absolute;left:2px;top:0;color:var(--success);font-weight:900}
/* GEO: in-page TOC */
.toc{margin:26px 0;padding:18px 22px;border-radius:var(--r-sm);background:#fff;border:1px solid var(--border-1);box-shadow:var(--sh-1)}
.toc .toc-h{font-size:.74rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);margin-bottom:11px}
.toc ol{margin:0;padding:0;list-style:none;counter-reset:toc;display:flex;flex-direction:column;gap:8px}
.toc li{counter-increment:toc;padding-left:26px;position:relative;font-size:.94rem}
.toc li::before{content:counter(toc);position:absolute;left:0;top:0;color:var(--brand-2);font-weight:800;font-family:'Plus Jakarta Sans';font-size:.82rem}
.toc a{color:var(--text-2);font-weight:600}.toc a:hover{color:var(--brand-2)}
/* GEO: visible FAQ */
.faq-block{max-width:var(--measure);margin:0 auto}
.faq-block h2{font-family:'Plus Jakarta Sans';font-size:1.6rem;font-weight:800;letter-spacing:-0.02em;color:var(--text-1);margin:42px 0 16px}
.faq-block details{border:1px solid var(--border-1);border-radius:var(--r-sm);margin-bottom:12px;background:#fff;overflow:hidden}
.faq-block summary{cursor:pointer;list-style:none;padding:16px 20px;font-weight:700;color:var(--text-1);font-family:'Plus Jakarta Sans';font-size:1.02rem;display:flex;justify-content:space-between;align-items:center;gap:12px}
.faq-block summary::-webkit-details-marker{display:none}
.faq-block summary::after{content:"+";font-size:1.5rem;line-height:1;color:var(--brand-2);font-weight:400;transition:transform var(--d-fast);flex:none}
.faq-block details[open] summary::after{transform:rotate(45deg)}
.faq-block .fa{padding:0 20px 18px;color:var(--text-2);font-size:.98rem;line-height:1.6}
/* GEO: sources */
.sources{max-width:var(--measure);margin:32px auto 0;padding:20px 22px;border-radius:var(--r-sm);background:var(--surface-1);border:1px solid var(--border-1)}
.sources h4{font-family:'Plus Jakarta Sans';font-weight:800;font-size:.8rem;letter-spacing:.05em;text-transform:uppercase;color:var(--text-2);margin-bottom:12px}
.sources ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:9px}
.sources li{font-size:.86rem;padding-left:18px;position:relative;color:var(--text-3)}
.sources li::before{content:"›";position:absolute;left:2px;color:var(--brand-2);font-weight:800}
.sources a{font-weight:600}

/* reveal */
.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s var(--ease-Q),transform .7s var(--ease-Q)}
.reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}html{scroll-behavior:auto}}
