/* Cortist forecast pillar reading system · scoped to forecast pages · 2026-10-29 */
.forecast-pillar{box-sizing:border-box;max-width:1100px;margin:54px auto 70px;padding:0 24px;color:#26253b;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
.forecast-pillar *{box-sizing:border-box}
.forecast-pillar__eyebrow{font-size:12px;letter-spacing:.11em;color:#6152A5;text-transform:uppercase;font-weight:800}
.forecast-pillar__intro{margin:10px 0 24px}
.forecast-pillar h2{font-size:clamp(1.7rem,3vw,2.35rem);line-height:1.16;letter-spacing:-.024em;font-weight:750;margin:10px 0 18px;color:#27243B}
.forecast-pillar h3{font-size:clamp(1.12rem,1.5vw,1.4rem);line-height:1.3;letter-spacing:-.015em;margin:20px 0 10px;color:#302C45;font-weight:750}
.forecast-pillar p,.forecast-pillar li{font-size:clamp(1rem,1.05vw,1.08rem);line-height:1.75;color:#49465d;margin:0 0 16px}
.forecast-pillar__intro p{max-width:75ch}
.forecast-pillar__toc{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0 28px}
.forecast-pillar__toc a{display:inline-block;border:1px solid #ddd8ee;background:#fff;border-radius:10px;padding:9px 13px;font-size:14px;line-height:1.4;color:#4F4292;font-weight:700;text-decoration:none}
.forecast-pillar__toc a:hover,.forecast-pillar__toc a:focus-visible{text-decoration:underline;border-color:#8575C6}
.forecast-pillar__section{padding:34px 0;border-top:1px solid #e1deed}
.forecast-pillar__visuals{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:18px 0 23px}
.forecast-pillar figure{margin:0;min-width:0}
.forecast-pillar figure img{display:block;width:100%;height:auto;max-width:100%;border:1px solid #E3DEEF;border-radius:14px;background:#F8F8FD}
.forecast-pillar figcaption{color:#5C576F;font-size:13.5px;line-height:1.6;padding:9px 2px}
.forecast-pillar__takeaway{padding:19px 24px;border-left:4px solid #8A78DC;background:#F7F5FD;border-radius:0 11px 11px 0;margin:20px 0 27px}
.forecast-pillar__takeaway strong{font-size:16px;line-height:1.4;color:#312C4D}
.forecast-pillar__takeaway p{font-size:15px;margin:8px 0 0}
.forecast-pillar__rules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0}
.forecast-pillar__rule{border:1px solid #E0DDEA;border-radius:12px;padding:19px;background:white}
.forecast-pillar__rule span{font:800 12px/1.5 system-ui;color:#6655A5;letter-spacing:.08em}
.forecast-pillar__rule strong{display:block;font-size:17px;line-height:1.4;margin:5px 0;color:#2F2948}
.forecast-pillar__rule p{font-size:14px;line-height:1.6;margin:0}
.forecast-pillar__faq{padding:15px 0;border-bottom:1px solid #E6E2ED}
.forecast-pillar__faq h3{margin:0 0 8px;font-size:17px}
.forecast-pillar__faq p{font-size:15px;margin:0}
.forecast-pillar__links{display:flex;gap:10px 16px;flex-wrap:wrap}
.forecast-pillar a{color:#5742AD;text-underline-offset:3px}
.forecast-pillar__links a{font-weight:750;font-size:15px;line-height:1.55}
.forecast-pillar__label{color:#5E5875;font-size:14px}
@media(max-width:760px){.forecast-pillar{margin:36px auto 50px;padding:0 18px}.forecast-pillar__visuals,.forecast-pillar__rules{grid-template-columns:1fr}.forecast-pillar__section{padding:25px 0}.forecast-pillar__toc a{font-size:13px;padding:8px 10px}}
/* Restore missing forecast status-card/hero styling across legacy F-003–F-008. */
.fo-page .fo-hero{padding:36px 0 25px}
.fo-page .fo-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 296px;align-items:center;gap:clamp(24px,4vw,64px);max-width:1110px;margin:0 auto;padding:0 24px}
.fo-page .fo-hero-copy{min-width:0}
.fo-page .fo-hero-copy h1{font-size:clamp(2.1rem,4.1vw,4rem)!important;line-height:1.08!important;letter-spacing:-.028em!important;max-width:17ch;margin:14px 0 25px;font-weight:750!important}
.fo-page .fo-hero-copy>p{font-size:clamp(1rem,1.5vw,1.12rem);line-height:1.7;max-width:65ch;color:#4D4962}
.fo-page .fo-kicker{font-size:12px;font-weight:800;letter-spacing:.08em;color:#6151A5;text-transform:uppercase}
.fo-page .fo-actions{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0 12px}
.fo-page .fo-btn{display:inline-flex;gap:6px;align-items:center;min-height:42px;padding:10px 15px;border-radius:10px;background:#24203B;color:white;font-size:14px;font-weight:750;text-decoration:none}
.fo-page .fo-btn.fo-btn-outline{background:transparent;border:1px solid #C4BADF;color:#4E428F}
.fo-page .fo-btn:focus-visible{outline:3px solid #A998F1;outline-offset:2px}
.fo-page .fo-note{font-size:13px!important;color:#696578!important;margin-top:13px}
.fo-page .fo-status-box{padding:25px 24px;border:1px solid #D9D2ED;border-radius:18px;background:linear-gradient(160deg,#fff 0%,#F3F1FD 100%);box-shadow:0 10px 30px rgba(51,35,93,.06);min-width:0}
.fo-page .fo-status-head{display:flex;justify-content:space-between;gap:7px;align-items:center;font-size:11px;font-weight:800;letter-spacing:.06em;color:#5D4FA6}
.fo-page .fo-status-head span:last-child{background:#EDE7FF;border-radius:999px;padding:5px 8px}
.fo-page .fo-status-number{font-size:clamp(3.1rem,5vw,4.6rem);font-weight:800;letter-spacing:-.055em;line-height:1.1;color:#28243F;padding:21px 0 0}
.fo-page .fo-status-caption{font-size:14px;color:#59536C;line-height:1.5;margin:3px 0 18px}
.fo-page .fo-status-row{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;padding:10px 0;border-top:1px solid #DDD8EC;font-size:12px;line-height:1.5;color:#625A77}
.fo-page .fo-status-row strong{color:#302A49;font-size:12px;text-align:right;overflow-wrap:anywhere}
.fo-page .future-evidence{max-width:1110px;margin:40px auto;padding:26px 24px}
.fo-page .future-evidence h2{font-size:clamp(1.5rem,2.8vw,2.2rem);line-height:1.25}
.fo-page .future-evidence-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:13px}
.fo-page .future-evidence-list article{min-width:0;background:#fff;border:1px solid #E1DDEA;border-radius:13px;padding:18px}
.fo-page .future-evidence-list article span{font-size:11px;letter-spacing:.07em;color:#6557A5;font-weight:750}
.fo-page .future-evidence-list article h3{font-size:17px;line-height:1.4;margin:10px 0}
.fo-page .future-evidence-list article p{font-size:14px;line-height:1.65;color:#55516A}
.fo-page .future-evidence-list article a{font-size:14px;font-weight:750;color:#5743A1}
@media(max-width:800px){.fo-page .fo-hero-grid{grid-template-columns:1fr;gap:20px;padding:0 18px}.fo-page .fo-hero-copy h1{font-size:clamp(2rem,7vw,3.1rem)!important;max-width:21ch}.fo-page .fo-status-box{max-width:450px}.fo-page .future-evidence{padding:20px 18px}}
