/* FinanceGPT R2C — Public Experience & Runtime Error Closure */
:root {
    --fg-r2c-bg: #0b121c;
    --fg-r2c-panel: #121d2a;
    --fg-r2c-panel-2: #0f1925;
    --fg-r2c-line: rgba(144, 164, 191, .22);
    --fg-r2c-text: #eef5ff;
    --fg-r2c-muted: #9eacc0;
    --fg-r2c-blue: #1689ff;
    --fg-r2c-green: #5dcaa5;
}

/* Home hero */
.fg-public-home .fg-seo-hero-v2 .row { align-items: center !important; }
.fg-public-home .fg-seo-hero-v2 h1 { max-width: 760px; letter-spacing: -.045em; }
.fg-public-home .fg-seo-hero-v2 .fg-seo-lead { max-width: 760px; }
.fg-public-home .fg-hero-actions { gap: .75rem; flex-wrap: wrap; }
.fg-public-home .fg-hero-actions .btn { margin: 0 !important; }

.fg-capital-network {
    background: linear-gradient(145deg, #0b1421 0%, #0d1826 58%, #09111c 100%);
    border: 1px solid rgba(92, 135, 184, .28);
    border-radius: 22px;
    box-shadow: 0 26px 70px rgba(8, 21, 39, .2);
    color: var(--fg-r2c-text);
    overflow: hidden;
    padding: 1.1rem 1.1rem .9rem;
}
.fg-capital-network-head { display:flex; align-items:center; justify-content:space-between; gap:1rem; color:#8fa3c4; font-size:.72rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.fg-capital-network-status { color: var(--fg-r2c-green); display:inline-flex; align-items:center; gap:.4rem; letter-spacing:0; text-transform:none; }
.fg-capital-network-status i { width:7px; height:7px; border-radius:50%; background:currentColor; box-shadow:0 0 0 4px rgba(93,202,165,.12); }
.fg-capital-network-canvas { position:relative; margin-top:.35rem; }
.fg-capital-network svg { display:block; width:100%; height:auto; min-height:360px; }
.fg-network-labels text { fill:#657897; font:700 10px/1 sans-serif; letter-spacing:.08em; }
.fg-network-hidden-node { animation:fg-r2c-node-pulse 2.8s ease-in-out infinite; transform-box:fill-box; transform-origin:center; }
.fg-network-nodes text { font:600 10.5px/1 sans-serif; }
.fg-network-particle { opacity:.9; filter:drop-shadow(0 0 3px currentColor); }
.fg-network-engine-glow { fill:#1689ff; opacity:.16; animation:fg-r2c-engine-glow 3.2s ease-in-out infinite; }
.fg-network-engine-core { fill:#0b1421; stroke:#7bc0ff; stroke-width:1.2; }
.fg-network-brand { position:absolute; left:55.3%; top:51.8%; width:52px; height:52px; transform:translate(-50%,-50%); display:flex; align-items:center; justify-content:center; animation:fg-r2c-engine-rotate 24s linear infinite; }
.fg-network-brand img { max-width:100%; max-height:100%; border-radius:50%; }
.fg-capital-network-controls { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:.4rem; padding:.72rem .45rem .1rem; color:#94a6bf; font-size:.68rem; font-weight:650; letter-spacing:.02em; }
.fg-capital-network-controls b { color:#3f88cd; font-weight:700; }
@keyframes fg-r2c-node-pulse { 0%,100%{opacity:.55;transform:scale(.96)} 50%{opacity:1;transform:scale(1.08)} }
@keyframes fg-r2c-engine-glow { 0%,100%{opacity:.13} 50%{opacity:.31} }
@keyframes fg-r2c-engine-rotate { to { transform:translate(-50%,-50%) rotate(360deg); } }
@media (prefers-reduced-motion: reduce) {
    .fg-network-hidden-node,.fg-network-engine-glow,.fg-network-brand,.fg-network-particle animateMotion { animation:none !important; }
    .fg-network-particle { display:none; }
}
@media (max-width: 1199.98px) { .fg-capital-network svg { min-height:320px; } }
@media (max-width: 575.98px) {
    .fg-capital-network { padding:.8rem .55rem .65rem; border-radius:16px; }
    .fg-capital-network-head { padding:0 .35rem; }
    .fg-capital-network svg { min-height:285px; }
    .fg-network-brand { width:42px; height:42px; }
    .fg-capital-network-controls { font-size:.61rem; }
}

/* Talk to sales — designed to work inside authenticated portal and as a public page. */
.fg-r2c-sales { min-height:calc(100vh - 72px); background:linear-gradient(135deg,#0b121c 0%,#0d1723 55%,#101d2b 100%); color:var(--fg-r2c-text); padding:clamp(2rem,4vw,4.5rem) 0 4.5rem; }
.fg-r2c-sales .container { max-width:1180px; }
.fg-r2c-sales-grid { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr); gap:clamp(2rem,4vw,4.5rem); align-items:start; }
.fg-r2c-sales-copy { padding-top:.6rem; }
.fg-r2c-sales .fg-eyebrow { color:#55a8ff !important; }
.fg-r2c-sales h1 { color:#fff !important; font-size:clamp(2.35rem,5vw,4.7rem); line-height:.98; letter-spacing:-.055em; max-width:800px; margin:.75rem 0 1.2rem; }
.fg-r2c-sales-lead { color:#b6c3d6; font-size:clamp(1.05rem,1.65vw,1.3rem); line-height:1.65; max-width:720px; }
.fg-r2c-sales-chips { display:flex; flex-wrap:wrap; gap:.55rem; margin:1.6rem 0 2rem; }
.fg-r2c-sales-chips span { border:1px solid rgba(85,168,255,.25); background:rgba(31,74,116,.2); color:#c8def8; border-radius:999px; padding:.48rem .7rem; font-size:.78rem; font-weight:650; }
.fg-r2c-sales-launches { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.8rem; margin:1.25rem 0 1.65rem; }
.fg-r2c-sales-launch { min-height:156px; border:1px solid var(--fg-r2c-line); border-radius:16px; padding:1.05rem; background:rgba(17,30,44,.7); }
.fg-r2c-sales-launch small { color:#55a8ff; font-weight:750; text-transform:uppercase; letter-spacing:.06em; }
.fg-r2c-sales-launch h2 { color:#fff; font-size:1rem; margin:.55rem 0 .5rem; }
.fg-r2c-sales-launch p { color:#96a8bf; font-size:.86rem; line-height:1.5; margin:0; }
.fg-r2c-sales-buy-now { display:flex; align-items:center; justify-content:space-between; gap:1rem; border-top:1px solid var(--fg-r2c-line); padding-top:1.4rem; }
.fg-r2c-sales-buy-now p { margin:0; color:#9cacbf; font-size:.86rem; }
.fg-r2c-sales-buy-now strong { display:block; color:#fff; font-size:1rem; margin-bottom:.15rem; }
.fg-r2c-sales-buy-actions { display:flex; gap:.55rem; flex-wrap:wrap; justify-content:flex-end; }
.fg-r2c-sales-buy-actions .btn-outline-primary { border-color:#3f9eff; color:#7fc2ff; }

.fg-r2c-sales-card { position:sticky; top:1.5rem; background:#121d2a; border:1px solid rgba(117,147,184,.28); border-radius:20px; padding:clamp(1.25rem,2.5vw,2rem); box-shadow:0 28px 75px rgba(0,0,0,.27); }
.fg-r2c-sales-card-kicker { color:#55a8ff; font-size:.72rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.fg-r2c-sales-card h2 { color:#fff; font-size:1.65rem; margin:.5rem 0 .45rem; }
.fg-r2c-sales-card > p { color:#9eacc0; line-height:1.5; }
.fg-r2c-sales-card label { color:#b3c0d2; font-weight:650; margin-bottom:.42rem; }
.fg-r2c-sales-card .form-control { color:#f1f5fb; background:#101a26; border-color:#3a4b60; min-height:46px; border-radius:8px; }
.fg-r2c-sales-card .form-control:focus { border-color:#1689ff; box-shadow:0 0 0 3px rgba(22,137,255,.13); background:#101a26; color:#fff; }
.fg-r2c-sales-card select.form-control option { background:#101a26; color:#fff; }
.fg-r2c-sales-card textarea.form-control { min-height:145px; resize:vertical; }
.fg-r2c-sales-card .is-invalid { border-color:#e86670; }
.fg-r2c-sales-card .invalid-feedback { color:#ff9ca4; display:block; font-size:.78rem; margin-top:.35rem; }
.fg-r2c-sales-submit { min-height:52px; border-radius:9px; font-weight:800; font-size:1.05rem; }
.fg-r2c-sales-note { display:flex; gap:.55rem; color:#8799b0; font-size:.76rem; line-height:1.45; margin-top:.85rem; }
.fg-r2c-sales-note svg { width:17px; height:17px; flex:0 0 auto; margin-top:.1rem; color:#5dcaa5; }
.fg-r2c-sales-success { border:1px solid rgba(93,202,165,.35); background:rgba(42,117,93,.18); color:#c8f4e4; padding:.8rem .9rem; border-radius:9px; margin-bottom:1rem; }

@media (max-width: 991.98px) {
    .fg-r2c-sales-grid { grid-template-columns:1fr; }
    .fg-r2c-sales-card { position:static; }
    .fg-r2c-sales-launches { grid-template-columns:1fr; }
}
@media (max-width: 575.98px) {
    .fg-r2c-sales { padding:1.4rem 0 3rem; }
    .fg-r2c-sales h1 { font-size:2.55rem; }
    .fg-r2c-sales-buy-now { align-items:flex-start; flex-direction:column; }
    .fg-r2c-sales-buy-actions { justify-content:flex-start; }
    .fg-r2c-sales-card { border-radius:14px; }
}
