.finance-ai-product { --accent:#286349; --accent-ink:#18452f; --tint:#edf2e8; --wash:#eef2e9; --paper:#faf9f2; --soft:#506052; --line:#dce3d6; }
.fa-hero { background:radial-gradient(ellipse at 85% 20%,#e1e9ce,transparent 60%),linear-gradient(125deg,#f7f8ee,#eef3e8); padding:1.4rem 0 4rem; border-bottom:1px solid var(--line); }
.fa-hero-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.14fr); align-items:center; gap:3.2rem; padding-top:3.2rem; }
.fa-hero-copy { min-width:0; }
.fa-hero h1 { font-size:clamp(2.5rem,4.25vw,4.15rem); line-height:1.22; margin:.9rem 0 1.35rem; letter-spacing:-.06em; }
.fa-hero .hero-summary { font-size:1.06rem; line-height:1.95; max-width:30rem; }
.fa-hero-foot { margin-top:1.7rem; font-size:.78rem; color:#687466; line-height:1.8; }
.fa-dashboard { border:1px solid #c4d2bc; border-radius:1rem; overflow:hidden; background:#fbfcf7; box-shadow:0 1.5rem 4rem #284c3118; }
.fa-dashboard figcaption { display:flex; gap:.6rem; align-items:center; padding:.85rem 1rem; border-bottom:1px solid var(--line); font-size:.8rem; }
.fa-mini-logo { display:grid; place-items:center; width:25px; height:25px; background:var(--accent); border-radius:7px; color:#fff; font-size:.75rem; }
.fa-example-label { margin-left:auto; font-size:.63rem; color:#6b7767; padding:.2rem .4rem; border:1px solid #dce3d6; border-radius:.3rem; }
.fa-dash-body { display:grid; grid-template-columns:96px minmax(0,1fr); }
.fa-dash-sidebar { display:flex; flex-direction:column; gap:.25rem; background:#f0f3e9; border-right:1px solid var(--line); padding:.9rem .45rem; font-size:.66rem; color:#6b7767; }
.fa-dash-sidebar > * { padding:.65rem .4rem; white-space:nowrap; }
.fa-dash-sidebar b { background:#dfe9d4; border-radius:.35rem; color:var(--accent); }
.fa-dash-main { min-width:0; padding:1rem; }
.fa-dash-title { display:flex; align-items:baseline; justify-content:space-between; gap:.5rem; margin-bottom:.9rem; }
.fa-dash-title > strong { font-size:.95rem; }
.fa-dash-title > small { font-size:.6rem; color:#72806e; }
.fa-kpis { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.5rem; }
.fa-kpis > div { background:#f1f5ec; border:1px solid #e0e6d9; border-radius:.45rem; padding:.65rem .55rem; }
.fa-kpis span { font-size:.63rem; color:#6b7767; display:block; }
.fa-kpis strong { display:block; font-size:1.6rem; font-weight:800; letter-spacing:-.04em; margin:.25rem 0; line-height:1.15; }
.fa-kpis strong small { font-size:.55rem; margin-left:.2rem; font-weight:550; }
.fa-kpis em { display:block; font-style:normal; font-size:.57rem; color:#79836e; }
.fa-trend { margin-top:.9rem; padding:.8rem .7rem; border:1px solid #e0e6d9; border-radius:.45rem; background:white; }
.fa-trend > div:first-child { display:flex; justify-content:space-between; font-size:.68rem; color:#6b7767; }
.fa-trend > div:first-child strong { color:var(--ink); }
.fa-trend svg { display:block; width:100%; height:auto; margin-top:.55rem; }
.fa-chart-key { display:flex; gap:1rem; font-size:.58rem; margin-top:.2rem; }
.fa-chart-key span:first-child { color:#286349; }.fa-chart-key span:last-child { color:#7d8452; }
.fa-dash-observation { display:grid; grid-template-columns:auto 1fr; gap:.25rem .55rem; padding:.8rem 0 .1rem; }
.fa-dash-observation > span { grid-row:1/3; font-size:.57rem; border-radius:.3rem; background:#f0ead3; color:#756128; padding:.3rem .4rem; align-self:start; }
.fa-dash-observation p { font-size:.72rem; font-weight:700; }.fa-dash-observation small { font-size:.57rem; color:#72806e; }
.fa-chapters { border-bottom:1px solid var(--line); background:#fbfcf7; }
.fa-chapters > .wrap { display:flex; gap:2rem; padding-block:1.1rem; font-size:.83rem; font-weight:650; flex-wrap:wrap; }
.fa-section { padding:4.2rem 0; }
.fa-heading { margin-bottom:2rem; }
.fa-heading h2 { font-size:clamp(1.9rem,3.3vw,3rem); line-height:1.25; letter-spacing:-.05em; margin:.55rem 0 .7rem; }
.fa-heading > p:not(.eyebrow),.fa-heading-row > p { max-width:46rem; color:var(--soft); font-size:.98rem; line-height:1.85; }
.fa-value-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:2.2rem; }
.fa-value-grid article { padding-left:1rem; border-left:2px solid #c1d1b1; }
.fa-value-grid article > span { font-size:.73rem; color:var(--accent); font-weight:750; }
.fa-value-grid h3 { font-size:1.15rem; margin:.55rem 0 .6rem; letter-spacing:-.03em; }
.fa-value-grid p { color:var(--soft); font-size:.91rem; line-height:1.8; }
.fa-capabilities { background:#edf2e7; }
.fa-module-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.fa-module { background:#fafbf6; padding:1.5rem; border:1px solid #d4dfc9; border-radius:.75rem; }
.fa-icon { display:grid; place-items:center; width:38px; height:38px; border-radius:.55rem; background:#e4eddb; color:var(--accent); margin-bottom:1rem; }
.fa-icon svg { width:22px; height:22px; }
.fa-module h3 { font-size:1.16rem; letter-spacing:-.035em; margin-bottom:.7rem; }
.fa-module p { color:var(--soft); font-size:.92rem; line-height:1.8; }
.fa-module small { display:block; color:#75816e; font-size:.7rem; line-height:1.8; margin-top:1rem; padding-top:.8rem; border-top:1px solid #e0e6d9; }
.fa-scenarios { background:#173a2b; color:#f7faed; }
.fa-scenarios .eyebrow { color:#c9e79e; }
.fa-scenarios .fa-heading { display:grid; grid-template-columns:1.3fr .9fr; align-items:end; column-gap:3rem; }
.fa-scenarios .fa-heading .eyebrow { grid-column:1/-1; }
.fa-scenarios .fa-heading > p:not(.eyebrow) { color:#cad9c9; padding-bottom:1rem; }
.fa-scenario-tabs { display:flex; flex-wrap:wrap; gap:.55rem; margin:1.4rem 0; }
.fa-scenario-tabs button { padding:.65rem 1rem; border:1px solid #7b997d; border-radius:.5rem; background:transparent; color:#e7f0dc; font-size:.87rem; font-weight:700; }
.fa-scenario-tabs button[aria-pressed=true] { background:#d5f4a0; border-color:#d5f4a0; color:#1a3824; }
.fa-scenario-tabs button:hover { border-color:#d5f4a0; }
.fa-scenario-panel { background:#f9fbf1; color:#1c3525; border-radius:.85rem; border:1px solid #c6d5b8; padding:1.6rem 1.8rem; }
.fa-scenario-heading { display:flex; gap:1rem; align-items:center; flex-wrap:wrap; padding-bottom:1.3rem; border-bottom:1px solid #dce3d1; }
.fa-scenario-heading > span { font-size:.65rem; padding:.3rem .5rem; background:#e8efdd; border-radius:.3rem; color:#66725a; white-space:nowrap; }
.fa-scenario-heading h3 { font-size:1.3rem; letter-spacing:-.03em; }
.fa-scenario-columns { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.5rem; padding:1.5rem 0; }
.fa-scenario-columns article + article { border-left:1px solid #dce3d1; padding-left:1.5rem; }
.fa-scenario-columns small { font-size:.75rem; color:#6e7b60; }
.fa-scenario-columns h4 { margin:.6rem 0; font-size:1.05rem; letter-spacing:-.02em; }
.fa-scenario-columns p { color:#56654b; font-size:.88rem; line-height:1.8; }
.fa-scenario-source { display:flex; gap:1rem; font-size:.79rem; line-height:1.7; padding-top:1rem; border-top:1px solid #dce3d1; color:#68745a; }
.fa-scenario-source > span { white-space:nowrap; font-weight:700; color:#325136; }
.fa-scenario-note { color:#b6c8b1; font-size:.73rem; margin-top:.9rem; line-height:1.7; }
.fa-process-list { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:1.5rem; padding:0; margin:0; list-style:none; }
.fa-process-list li { border-top:2px solid #cedbc3; padding-top:1rem; }
.fa-process-list li > span { font-size:.74rem; color:#81956d; font-weight:750; }
.fa-process-list h3 { font-size:1.1rem; margin:.65rem 0 .55rem; }
.fa-process-list p { color:var(--soft); line-height:1.85; font-size:.87rem; }
.fa-delivery { display:flex; gap:1rem; justify-content:space-between; align-items:center; margin-top:2rem; padding:1.2rem 1.5rem; background:#eef3e6; border:1px solid #d5dfcb; border-radius:.65rem; }
.fa-delivery > div { display:flex; gap:1rem; align-items:center; }
.fa-delivery-icon { display:grid; place-items:center; width:42px; height:42px; background:#dce8cc; border-radius:.5rem; flex:none; color:var(--accent); }
.fa-delivery-icon svg { width:25px; height:25px; }
.fa-delivery strong { font-size:1rem; }.fa-delivery p { color:var(--soft); font-size:.82rem; margin-top:.35rem; line-height:1.8; }
.fa-file-pair { display:flex; gap:.5rem; white-space:nowrap; }
.fa-file-pair b { font-size:.77rem; border:1px solid #c4d2b8; border-radius:.35rem; padding:.5rem .7rem; color:#466545; background:#fafcf6; }
.fa-screens { background:#edf2e7; }
.fa-heading-row { display:flex; justify-content:space-between; align-items:end; gap:1.5rem; }
.fa-heading-row > p { font-size:.78rem; padding-bottom:.75rem; }
.fa-gallery { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.2rem; }
.fa-gallery figure { overflow:hidden; background:#fbfcf7; border:1px solid #d1ddc6; border-radius:.8rem; }
.fa-screen-frame { height:270px; overflow:hidden; background:#f3f6ed; border-bottom:1px solid #d1ddc6; padding:1rem 1.3rem 0; }
.fa-screen-frame img { width:100%; height:100%; object-fit:cover; border:1px solid #e1e7da; border-radius:.55rem .55rem 0 0; transition:transform 160ms; }
.fa-gallery figure > a:hover img { transform:translateY(-5px); }
.fa-gallery figcaption { padding:1.3rem; }
.fa-gallery figcaption h3 { font-size:1.15rem; margin-bottom:.6rem; }
.fa-gallery figcaption p { font-size:.9rem; line-height:1.8; color:var(--soft); }
.fa-gallery figcaption > a { display:inline-block; color:var(--accent); font-size:.8rem; font-weight:700; margin-top:.9rem; }
.fa-gallery figcaption > a:hover { text-decoration:underline; text-underline-offset:.25em; }
.fa-questions > .wrap { display:grid; grid-template-columns:.8fr 1.2fr; gap:3rem; }
.fa-questions .faq-list summary { font-size:.96rem; }.fa-questions .faq-list details p { font-size:.88rem; }
.fa-related { padding:1.7rem 0; border-top:1px solid var(--line); }
.fa-related > .wrap { display:grid; grid-template-columns:.7fr 1fr 1fr; gap:2rem; align-items:center; }
.fa-related p { font-size:.8rem; color:var(--muted); }
.fa-related a { padding-left:1.3rem; border-left:1px solid var(--line); }
.fa-related strong { display:block; font-size:.92rem; }.fa-related a span { display:block; font-size:.75rem; color:var(--soft); margin-top:.35rem; }
.fa-related a:hover strong { color:var(--accent); text-decoration:underline; }
@media (max-width:1050px) {
  .fa-hero-grid { gap:1.8rem; }
  .fa-hero h1 { font-size:3rem; }
  .fa-dash-sidebar { display:none; }.fa-dash-body { grid-template-columns:1fr; }
  .fa-process-list { gap:1rem; }
}
@media (max-width:800px) {
  .fa-hero-grid { grid-template-columns:1fr; padding-top:2rem; gap:2rem; }
  .fa-hero .hero-summary { max-width:40rem; }.fa-hero h1 { font-size:3.2rem; }
  .fa-dashboard { width:100%; max-width:580px; margin-inline:auto; }.fa-dash-sidebar { display:flex; }.fa-dash-body { grid-template-columns:96px minmax(0,1fr); }
  .fa-module-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .fa-process-list { grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.3rem; }
  .fa-value-grid { gap:1rem; }.fa-value-grid h3 { font-size:1rem; }
  .fa-scenarios .fa-heading { grid-template-columns:1fr; gap:.3rem; }
  .fa-screen-frame { height:230px; padding:.7rem .7rem 0; }
  .fa-gallery { gap:.7rem; }.fa-gallery figcaption { padding:1rem; }
  .fa-questions > .wrap { gap:1.5rem; }
}
@media (max-width:680px) {
  .fa-section { padding:3.2rem 0; }
  .fa-hero { padding-bottom:3rem; }.fa-hero h1 { font-size:clamp(2.25rem,7.8vw,3.2rem); }
  .fa-hero .hero-summary { font-size:1rem; }.fa-hero-foot { font-size:.7rem; }
  .fa-dashboard { border-radius:.7rem; }.fa-dash-sidebar { display:none; }.fa-dash-body { grid-template-columns:1fr; }
  .fa-dash-main { padding:.8rem; }.fa-dashboard figcaption { font-size:.72rem; padding:.7rem .8rem; }
  .fa-kpis strong { font-size:1.5rem; }.fa-kpis em { font-size:.52rem; }
  .fa-chapters > .wrap { gap:.8rem 1.2rem; font-size:.76rem; padding-block:.9rem; }
  .fa-heading h2 { font-size:1.9rem; }.fa-heading > p:not(.eyebrow) { font-size:.92rem; }
  .fa-value-grid,.fa-module-grid,.fa-scenario-columns,.fa-gallery,.fa-questions > .wrap { grid-template-columns:minmax(0,1fr); }
  .fa-value-grid { gap:1.6rem; }.fa-value-grid h3 { font-size:1.16rem; }
  .fa-module { padding:1.3rem; }.fa-module-grid { gap:.8rem; }
  .fa-scenario-panel { padding:1.3rem; }.fa-scenario-heading { gap:.65rem; }.fa-scenario-heading h3 { font-size:1.15rem; line-height:1.65; }
  .fa-scenario-columns { gap:1.3rem; }.fa-scenario-columns article + article { padding:1.2rem 0 0; border:0; border-top:1px solid #dce3d1; }
  .fa-scenario-source { flex-direction:column; gap:.3rem; }.fa-scenario-tabs { gap:.4rem; }.fa-scenario-tabs button { padding:.6rem .75rem; font-size:.8rem; }
  .fa-process-list { grid-template-columns:minmax(0,1fr); gap:0; }
  .fa-process-list li { display:grid; grid-template-columns:2rem 1fr; gap:.5rem .6rem; padding:1.1rem 0; border-width:1px; }
  .fa-process-list li > span { grid-row:1/3; padding-top:.2rem; }.fa-process-list h3 { margin:0; }.fa-process-list p { grid-column:2; }
  .fa-delivery { flex-direction:column; align-items:flex-start; padding:1.2rem; }.fa-delivery > div { align-items:flex-start; }
  .fa-heading-row { display:block; }.fa-heading-row > p { padding-top:.4rem; }
  .fa-gallery { gap:1.1rem; }.fa-screen-frame { height:300px; padding:1rem 1.7rem 0; }
  .fa-questions .fa-heading { margin:0; }
  .fa-related > .wrap { grid-template-columns:1fr; gap:1.3rem; }.fa-related a { padding-left:0; border:0; }
}
@media (prefers-reduced-motion:reduce) { .fa-screen-frame img { transition:none; } }

.fa-ui-frame { padding:1.1rem 1.25rem; background:#fafcf5; }
.fa-preview-title { display:flex; justify-content:space-between; align-items:center; gap:.6rem; padding-bottom:.7rem; border-bottom:1px solid #dce3d6; font-size:.85rem; }
.fa-preview-title span { font-size:.62rem; color:#72806a; white-space:nowrap; }
.fa-preview-table { width:100%; border-collapse:collapse; font-size:.8rem; margin-top:.65rem; }
.fa-preview-table th { text-align:left; font-size:.68rem; color:#7a866f; font-weight:500; }
.fa-preview-table td,.fa-preview-table th { padding:.45rem .2rem; border-bottom:1px solid #e4eadd; }
.fa-preview-table td:last-child,.fa-preview-table th:last-child { text-align:right; font-variant-numeric:tabular-nums; }
.fa-preview-total { color:#286349; font-weight:800; }
.fa-preview-foot { font-size:.63rem; color:#7a866f; line-height:1.7; padding-top:.45rem; }
.fa-preview-forecast { padding:1.1rem 0 .7rem; }
.fa-preview-forecast > small { display:block; font-size:.67rem; color:#6e7b64; }
.fa-preview-forecast > strong { display:block; font-size:2.4rem; line-height:1.4; letter-spacing:-.04em; }
.fa-preview-forecast > strong span { font-size:.7rem; font-weight:500; letter-spacing:0; color:#7a866f; }
.fa-preview-progress { height:6px; border-radius:5px; background:#e2eacf; margin:.4rem 0 .6rem; overflow:hidden; }
.fa-preview-progress span { display:block; width:95.8333%; height:100%; background:#5c8555; }
.fa-preview-forecast > b { font-size:.75rem; color:#386744; }
.fa-preview-sources { display:flex; gap:1rem; font-size:.75rem; }
.fa-preview-sources > div { display:flex; align-items:center; gap:.5rem; }
.fa-preview-sources dt { font-size:.62rem; color:#7a866f; }
.fa-preview-sources dd { font-weight:750; }
@media (min-width:681px) and (max-width:800px) { .fa-preview-title { flex-direction:column; align-items:flex-start; gap:.3rem; } .fa-ui-frame { padding:.8rem; } .fa-preview-table td,.fa-preview-table th { padding:.5rem .1rem; } .fa-preview-sources { gap:.4rem; flex-wrap:wrap; } }

@media (min-width:681px) and (max-width:800px) { .fa-gallery { grid-template-columns:minmax(0,1fr); max-width:520px; margin-inline:auto; gap:1rem; } .fa-screen-frame { height:300px; } .fa-preview-title { flex-direction:row; align-items:center; } }
