.fc-hero{padding-top:48px;padding-bottom:24px}
.fc-hero .hero-card{padding:38px 42px}
.fc-hero h1{max-width:20ch;font-size:clamp(2.35rem,4.2vw,4rem)}
.fc-section{padding-top:24px}
.fc-section-head{align-items:end}
.fc-section-head h2{font-size:clamp(1.8rem,3vw,2.5rem)}
.fc-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(290px,.8fr);gap:18px;align-items:start}
.fc-chart-card,.fc-values-card{padding:24px}
.fc-card-heading{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}
.fc-card-heading h2{font-size:1.35rem;letter-spacing:-.02em;margin-bottom:7px}
.fc-card-heading p{margin:0;color:var(--muted);font-size:.95rem}
.fc-legend{display:flex;flex-wrap:wrap;gap:10px 18px;margin:18px 0 16px;color:var(--muted);font-size:.84rem}
.fc-legend span{display:inline-flex;align-items:center;gap:7px}
.fc-swatch{display:inline-block;width:22px;height:0;border-top:3px solid;border-radius:4px}
.fc-observed{border-color:#162d29}.fc-model{border-color:#326cc0}.fc-comparator{border-color:#bd7920}
.fc-band{display:inline-block;width:18px;height:11px;border-radius:3px;background:rgba(50,108,192,.2);border:1px solid rgba(50,108,192,.32)}
.fc-controls{display:grid;grid-template-columns:minmax(210px,1fr) auto;gap:12px;align-items:end;margin:16px 0 12px;padding:15px;border:1px solid var(--line);border-radius:18px;background:rgba(244,248,246,.72)}
.fc-select-label,.fc-range-label{display:grid;gap:6px;color:var(--muted);font-size:.82rem;font-weight:750}
.fc-controls select{width:100%;min-height:44px;border:1px solid rgba(19,35,31,.18);border-radius:12px;padding:9px 12px;background:#fff;color:var(--text);font:inherit}
.fc-play{min-height:44px;cursor:pointer}
.fc-range-label{grid-column:1 / 2}.fc-range-label input{width:100%;accent-color:var(--brand)}
.fc-controls output{grid-column:2 / 3;align-self:center;color:var(--text);font-size:.85rem;font-weight:700;text-align:right}
.fc-chart-wrap{width:100%;min-height:320px;border:1px solid rgba(19,35,31,.08);border-radius:18px;background:#fff;overflow:hidden}
#forecastCanvas{display:block;width:100%;height:390px}
.fc-meta{margin:10px 0 0;color:var(--muted);font-size:.88rem}
.fc-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px 0 14px}
.fc-metrics>div{min-width:0;padding:13px;border:1px solid var(--line);border-radius:15px;background:rgba(244,248,246,.7)}
.fc-metrics dt{color:var(--muted);font-size:.78rem;font-weight:700;line-height:1.35}
.fc-metrics dd{margin:6px 0 0;overflow-wrap:anywhere;color:var(--text);font-size:1rem;font-weight:800;font-variant-numeric:tabular-nums}
.fc-product-note{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-top:18px;padding:20px;border:1px solid rgba(47,139,106,.2);border-radius:18px;background:linear-gradient(120deg,rgba(224,244,234,.8),rgba(255,255,255,.96))}
.fc-product-note-copy{min-width:0}
.fc-product-note-kicker{color:var(--brand-dark);font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.fc-product-note h3{margin:6px 0;font-size:1.12rem;letter-spacing:-.02em}
.fc-product-note p{margin:0;color:#536158;font-size:.9rem;line-height:1.55}
.fc-product-note .btn{flex:0 0 auto;white-space:nowrap}
.fc-cta-section{padding-top:10px}
.fc-cta{display:flex;align-items:center;justify-content:space-between;gap:26px;padding:28px 32px;border-color:rgba(47,139,106,.18);background:linear-gradient(115deg,rgba(224,244,234,.95),rgba(255,255,255,.94))}
.fc-cta .eyebrow{margin-bottom:12px}
.fc-cta h2{font-size:clamp(1.6rem,2.7vw,2.4rem);max-width:26ch;margin-bottom:8px}
.fc-cta p{margin:0;max-width:64ch}
.fc-cta .btn{flex:0 0 auto}
@media(max-width:900px){.fc-grid{grid-template-columns:1fr}.fc-values-card{order:2}.fc-chart-card{order:1}.fc-section-head{display:block}.fc-section-head>p{margin:12px 0 0}}
@media(max-width:560px){.fc-hero{padding-top:32px}.fc-hero .hero-card{padding:24px}.fc-grid{gap:14px}.fc-chart-card,.fc-values-card{padding:17px}.fc-controls{grid-template-columns:1fr}.fc-range-label,.fc-controls output{grid-column:1}.fc-controls output{text-align:left}.fc-play{justify-self:start}.fc-chart-wrap{min-height:275px}#forecastCanvas{height:290px}.fc-metrics{gap:8px}.fc-metrics>div{padding:10px}.fc-product-note{display:block;padding:17px}.fc-product-note .btn{margin-top:15px;white-space:normal}.fc-cta{display:block;padding:23px}.fc-cta .btn{margin-top:18px;white-space:normal}}
