/* Budgets 2.0 public story. All surfaces are explicitly paired for the public theme. */
.bgt-page { --bgt-bg:#fff; --bgt-surface:#fff; --bgt-soft:#f5f4fc; --bgt-inset:#f0eef9; --bgt-text:#131625; --bgt-muted:#565973; --bgt-border:#e1ddf0; --bgt-accent:#8336bf; --bgt-violet:#6350db; --bgt-good:#167548; --bgt-amber:#a35b0a; --bgt-red:#c63742; --bgt-loop:12s; color:var(--bgt-text); background:var(--bgt-bg); overflow:clip; }
[data-bs-theme=dark] .bgt-page { --bgt-bg:#0b0f19; --bgt-surface:#151b29; --bgt-soft:#101522; --bgt-inset:#20263a; --bgt-text:#eef0fa; --bgt-muted:#b4b7c9; --bgt-border:#30364b; --bgt-accent:#e294f4; --bgt-violet:#ab9bff; --bgt-good:#66dfac; --bgt-amber:#f3bc68; --bgt-red:#fb8490; }
.bgt-page :is(h1,h2,h3,h4,b,strong,dt) { color:inherit; }
.bgt-page h2 { font-size:clamp(2rem,3.4vw,3.35rem); line-height:1.12; letter-spacing:-.045em; margin:16px 0 22px; }
.bgt-page h3 { font-size:1.3rem; letter-spacing:-.025em; line-height:1.3; }
.bgt-page p { color:var(--bgt-muted); line-height:1.8; }
.bgt-page :is(section,nav)[id] { scroll-margin-top:100px; }
.bgt-eyebrow { color:var(--bgt-accent); font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.14em; display:inline-flex; align-items:center; gap:9px; }
.bgt-eyebrow>i { font-size:18px; }
.bgt-number { display:block; color:var(--bgt-accent); font-size:10px; font-weight:800; letter-spacing:.12em; margin-bottom:20px; }
.bgt-hero { position:relative; padding:155px 0 85px; background:radial-gradient(ellipse at 75% 42%,color-mix(in srgb,var(--bgt-accent) 12%,transparent),transparent 52%); }
.bgt-hero-grid { display:grid; grid-template-columns:1fr 1.06fr; align-items:center; gap:60px; }
.bgt-hero h1 { font-size:clamp(3rem,4.8vw,4.9rem); letter-spacing:-.055em; line-height:1.06; margin:22px 0 28px; }
.bgt-hero h1>span,.bgt-final h2>span,.bgt-ai-band h2>span { color:var(--bgt-accent); }
.bgt-lead { font-size:17px; max-width:525px; }
.bgt-actions { display:flex; align-items:center; flex-wrap:wrap; gap:22px; margin-top:30px; }
.bgt-actions .btn { white-space:normal; gap:8px; }
.bgt-text-link { color:var(--bgt-violet); font-weight:700; text-decoration:none; display:inline-flex; align-items:center; gap:8px; }
.bgt-text-link:hover { color:var(--bgt-accent); text-decoration:underline; }
.bgt-reassurance { display:flex; gap:18px; flex-wrap:wrap; margin-top:27px; color:var(--bgt-muted); font-size:11px; }
.bgt-reassurance span { display:flex; gap:5px; align-items:center; }
.bgt-reassurance i { color:var(--bgt-accent); font-size:16px; }
.bgt-section { padding-block:100px; }
.bgt-heading { max-width:680px; margin-bottom:44px; }
.bgt-heading p { max-width:610px; font-size:17px; }
.bgt-jump { display:flex; justify-content:center; flex-wrap:wrap; gap:12px 28px; padding-block:24px; border-block:1px solid var(--bgt-border); }
.bgt-jump a { font-size:12px; color:var(--bgt-muted); text-decoration:none; font-weight:600; }
.bgt-jump a:hover { color:var(--bgt-accent); }
.bgt-story { display:grid; grid-template-columns:1fr 1.1fr; gap:76px; align-items:center; }
.bgt-story.bgt-reverse { grid-template-columns:1.1fr 1fr; }
.bgt-reverse>.bgt-copy { order:2; }
.bgt-copy>p { font-size:16px; }
.bgt-benefits { list-style:none; padding:0; display:grid; gap:16px; margin:28px 0; }
.bgt-benefits li { display:flex; align-items:flex-start; gap:13px; font-size:14px; line-height:1.6; }
.bgt-benefits i { font-size:21px; color:var(--bgt-accent); flex-shrink:0; margin-top:1px; }
.bgt-page .bgt-fine { font-size:12px; line-height:1.7; margin-top:23px; }
.bgt-pills { display:flex; flex-wrap:wrap; gap:8px; }
.bgt-pills>span { border:1px solid var(--bgt-border); padding:8px 12px; border-radius:99px; font-size:11px; color:var(--bgt-muted); background:var(--bgt-surface); }
.bgt-methods { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.bgt-methods>article { border:1px solid var(--bgt-border); border-radius:20px; padding:24px 20px; background:var(--bgt-surface); }
.bgt-methods h3 { font-size:18px; margin:24px 0 12px; }
.bgt-methods p { font-size:13px; margin:0; }
.bgt-method-art { height:155px; background:var(--bgt-soft); border-radius:12px; padding:18px 14px; font-size:10px; color:var(--bgt-muted); }
.bgt-mini-lines span { display:flex; justify-content:space-between; margin-bottom:6px; }
.bgt-mini-lines>i { display:block; height:5px; border-radius:99px; background:linear-gradient(90deg,var(--bgt-violet) var(--fill),var(--bgt-border) var(--fill)); margin-bottom:13px; }
.bgt-flex-art { text-align:center; }
.bgt-flex-art>strong { display:block; color:var(--bgt-text); font-size:38px; margin:5px 0; letter-spacing:-.05em; }
.bgt-flex-art strong span { font-size:13px; font-weight:500; color:var(--bgt-muted); letter-spacing:0; }
.bgt-dots { display:flex; justify-content:center; gap:6px; margin-bottom:10px; }
.bgt-dots i { width:11px; height:11px; border-radius:50%; background:var(--bgt-accent); opacity:.6; }
.bgt-dots i:nth-last-child(-n+2) { background:var(--bgt-border); }
.bgt-envelope-art { display:grid; grid-template-columns:repeat(3,1fr); gap:6px; text-align:center; }
.bgt-envelope-art>div { background:var(--bgt-surface); border:1px solid var(--bgt-border); border-radius:8px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:6px; }
.bgt-envelope-art i { font-size:20px; color:var(--bgt-violet); }
.bgt-envelope-art b { font-size:12px; color:var(--bgt-text); }
.bgt-envelope-art>small { grid-column:1/-1; padding-top:8px; }
.bgt-payday-art { display:grid; grid-template-columns:1fr 20px 1fr; align-items:center; text-align:center; gap:5px; }
.bgt-payday-art>div { display:flex; flex-direction:column; gap:6px; }
.bgt-payday-art>div i { font-size:29px; color:var(--bgt-violet); }
.bgt-payday-art>small { grid-column:1/-1; }
.bgt-cadences { display:flex; justify-content:space-between; align-items:center; gap:24px; padding:26px 0 0; }
.bgt-cadences>div:first-child { display:flex; align-items:center; gap:12px; font-size:12px; color:var(--bgt-muted); }
.bgt-cadences strong { display:block; color:var(--bgt-text); margin-bottom:4px; }
.bgt-cadences i { font-size:28px; color:var(--bgt-accent); }
.bgt-ai-band { padding:95px 0 60px; background:radial-gradient(ellipse at 75% 30%,color-mix(in srgb,var(--bgt-accent) 15%,transparent),transparent 65%),var(--bgt-soft); border-block:1px solid var(--bgt-border); }
.bgt-feature-spotlight .bgt-ai-band { padding-block:clamp(60px,7vw,100px); }
.bgt-feature-spotlight .bgt-story { grid-template-columns:minmax(0,1fr) minmax(0,1.1fr); }
@media (max-width:991px) { .bgt-feature-spotlight .bgt-story { grid-template-columns:minmax(0,1fr); } }
.bgt-tier { border:1px solid color-mix(in srgb,var(--bgt-accent) 40%,transparent); background:color-mix(in srgb,var(--bgt-accent) 9%,transparent); border-radius:6px; padding:5px 7px; font-size:9px; letter-spacing:.08em; }
.bgt-trust { display:flex; gap:12px; padding:18px; border-left:3px solid var(--bgt-accent); background:color-mix(in srgb,var(--bgt-accent) 7%,var(--bgt-surface)); border-radius:0 12px 12px 0; font-size:13px; line-height:1.7; color:var(--bgt-muted); }
.bgt-trust>i { font-size:24px; color:var(--bgt-accent); flex-shrink:0; }
.bgt-trust strong { display:block; color:var(--bgt-text); }
.bgt-prompt-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; margin-top:48px; }
.bgt-prompt-grid>div { border-top:1px solid var(--bgt-border); padding-top:22px; }
.bgt-prompt-grid span { color:var(--bgt-accent); font-size:10px; font-weight:800; letter-spacing:.12em; }
.bgt-prompt-grid p { font-size:14px; margin:12px 0 0; }
.bgt-rule-copy { margin-top:25px; padding:20px; border:1px solid var(--bgt-border); border-radius:16px; }
.bgt-rule-copy small { color:var(--bgt-accent); font-weight:800; letter-spacing:.12em; font-size:10px; }
.bgt-rule-copy p { font-size:13px; margin:7px 0 0; }
.bgt-rule-copy>i { color:var(--bgt-accent); margin:8px 0; }
.bgt-soft-band { background:var(--bgt-soft); border-block:1px solid var(--bgt-border); }
.bgt-custom-grid { display:grid; grid-template-columns:1.1fr 1fr; gap:24px; }
.bgt-custom-grid>article { background:var(--bgt-surface); padding:34px; border:1px solid var(--bgt-border); border-radius:22px; }
.bgt-custom-grid h3 { margin-bottom:20px; font-size:25px; }
.bgt-custom-grid p { font-size:14px; }
.bgt-match-cloud { display:flex; gap:12px; flex-wrap:wrap; margin:28px 0; }
.bgt-match-cloud span { border-radius:10px; padding:11px 13px; font-size:12px; border:1px solid var(--bgt-border); background:var(--bgt-soft); }
.bgt-match-cloud i { color:var(--bgt-accent); margin-right:5px; }
.bgt-inline-note { display:flex; align-items:center; gap:12px; border-top:1px solid var(--bgt-border); padding-top:20px; font-size:12px; line-height:1.7; color:var(--bgt-muted); }
.bgt-inline-note i { font-size:25px; color:var(--bgt-violet); }
.bgt-target-card dl { margin:0; }
.bgt-target-card dl>div { display:grid; grid-template-columns:125px 1fr; gap:15px; border-bottom:1px solid var(--bgt-border); padding:14px 0; font-size:12px; }
.bgt-target-card dl>div:last-child { border:0; padding-bottom:0; }
.bgt-target-card dt { color:var(--bgt-violet); }
.bgt-target-card dd { margin:0; color:var(--bgt-muted); }
.bgt-rollover-row { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:60px; margin-top:60px; }
.bgt-rollover-row h3 { font-size:28px; margin-bottom:18px; }
.bgt-together-band { padding-block:85px; border-block:1px solid var(--bgt-border); background:var(--bgt-soft); }
.bgt-together-grid { display:grid; grid-template-columns:1.15fr 1fr; gap:85px; align-items:center; }
.bgt-together-grid p { font-size:15px; }
.bgt-sharing-art { display:flex; align-items:center; gap:13px; margin-top:28px; font-size:12px; }
.bgt-sharing-art :is(span,strong) { padding:15px 12px; border:1px solid var(--bgt-border); border-radius:12px; background:var(--bgt-surface); }
.bgt-sharing-art i { color:var(--bgt-violet); }
.bgt-sharing-art strong { color:var(--bgt-accent); }
.bgt-checkin { background:var(--bgt-surface); border:1px solid var(--bgt-border); border-radius:24px; padding:38px; }
.bgt-checkin>i { font-size:35px; color:var(--bgt-accent); margin-bottom:25px; display:block; }
.bgt-checkin h3 { font-size:30px; }
.bgt-final { text-align:center; padding-block:105px; }
.bgt-final h2 { font-size:clamp(2.4rem,4.5vw,4.4rem); }
.bgt-final .bgt-actions { justify-content:center; }
/* Drawn product stories use the same V4 lifecycle as the rest of the site. */
.bgt-demo { border:1px solid var(--bgt-border); border-radius:24px; overflow:hidden; background:var(--bgt-surface); color:var(--bgt-text); min-width:0; box-shadow:0 22px 75px -40px color-mix(in srgb,var(--bgt-violet) 35%,transparent); }
.bgt-demo .v4-motion-art { padding:0; }
.bgt-demo .v4-motion-art>div { padding:28px; }
.bgt-demo .v4-motion-controls { display:flex; justify-content:space-between; align-items:center; gap:12px; background:var(--bgt-soft); border-top:1px solid var(--bgt-border); padding:13px 20px; color:var(--bgt-muted); font-size:10px; }
.bgt-demo .v4-motion-controls>span { min-width:0; }
.bgt-demo .v4-motion-controls button,.bgt-reel-controls button { display:inline-flex; gap:5px; align-items:center; flex-shrink:0; background:var(--bgt-surface); color:var(--bgt-text); border:1px solid var(--bgt-border); border-radius:99px; font-size:11px; padding:7px 11px; }
.bgt-demo .v4-live-dot { background:var(--bgt-accent); }
.bgt-demo .v4-demo-disclaimer { display:block; margin-top:3px; }
.bgt-demo small { font-size:9px; color:var(--bgt-muted); font-weight:600; letter-spacing:.035em; }
.bgt-demo-head { display:flex; align-items:center; gap:12px; margin-bottom:22px; }
.bgt-demo-head>div { flex:1; min-width:0; }
.bgt-demo-head h3 { font-size:18px; margin:5px 0 0; }
.bgt-demo-head>i { color:var(--bgt-accent); font-size:27px; }
.bgt-chip { padding:5px 9px; border:1px solid var(--bgt-border); background:var(--bgt-soft); border-radius:99px; font-size:9px; color:var(--bgt-violet); white-space:nowrap; }
.bgt-dashboard .v4-motion-art>div { padding:0; }
.bgt-window { display:flex; align-items:center; justify-content:space-between; padding:13px 20px; font-size:10px; color:var(--bgt-muted); border-bottom:1px solid var(--bgt-border); background:var(--bgt-soft); }
.bgt-window>span { display:flex; gap:4px; }
.bgt-window>span i { width:5px; height:5px; background:var(--bgt-muted); opacity:.5; border-radius:50%; }
.bgt-window b { font-weight:500; }
.bgt-dashboard-body { padding:24px; }
.bgt-dash-hero { display:flex; align-items:center; gap:26px; padding:22px; border:1px solid color-mix(in srgb,var(--bgt-accent) 25%,var(--bgt-border)); border-radius:17px; background:linear-gradient(120deg,color-mix(in srgb,var(--bgt-accent) 14%,var(--bgt-surface)),var(--bgt-soft)); }
.bgt-health { width:105px; height:105px; position:relative; flex-shrink:0; }
.bgt-health svg { width:100%; transform:rotate(-90deg); fill:none; stroke:var(--bgt-border); stroke-width:7; }
.bgt-health .bgt-ring-value { stroke:var(--bgt-accent); stroke-dasharray:86 100; stroke-linecap:round; animation:bgt-ring var(--bgt-loop) ease-in-out infinite; }
.bgt-health>div { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; }
.bgt-health b { font-size:30px; line-height:1.1; }
.bgt-health small { color:var(--bgt-good); margin-top:4px; font-size:8px; }
.bgt-dash-hero>div:last-child>strong { display:block; font-size:45px; line-height:1.3; letter-spacing:-.05em; }
.bgt-dash-hero>div:last-child>strong span { font-size:27px; color:var(--bgt-muted); }
.bgt-dash-hero>div:last-child>span { font-size:10px; color:var(--bgt-muted); }
.bgt-dash-stats { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin:15px 0 8px; }
.bgt-dash-stats>div { border:1px solid var(--bgt-border); border-radius:10px; padding:11px; }
.bgt-dash-stats b { display:block; font-size:19px; margin-top:4px; }
.bgt-dash-stats b span { font-size:11px; color:var(--bgt-muted); font-weight:500; }
.bgt-budget-row { padding:15px 0; border-bottom:1px solid var(--bgt-border); }
.bgt-budget-row>div:first-child { display:flex; align-items:center; gap:8px; font-size:11px; margin-bottom:9px; }
.bgt-budget-row>div>i { color:var(--bgt-violet); font-size:16px; }
.bgt-budget-row em { font-style:normal; font-size:8px; color:var(--bgt-good); background:color-mix(in srgb,var(--bgt-good) 10%,transparent); border-radius:99px; padding:3px 5px; }
.bgt-budget-row>div>span { margin-left:auto; color:var(--bgt-muted); font-size:10px; }
.bgt-bar { position:relative; height:6px; border-radius:99px; background:var(--bgt-inset); }
.bgt-bar>i { display:block; height:100%; width:var(--fill); border-radius:inherit; background:var(--bgt-good); transform-origin:left; animation:bgt-fill var(--bgt-loop) ease-in-out infinite; }
.bgt-bar>b { position:absolute; left:65%; height:12px; width:1px; top:-3px; background:var(--bgt-muted); }
.bgt-caution { color:var(--bgt-amber); }
.bgt-caution .bgt-bar>i,.bgt-bar.bgt-caution>i { background:var(--bgt-amber); }
.bgt-caution em { color:var(--bgt-amber); background:color-mix(in srgb,var(--bgt-amber) 10%,transparent); }
.bgt-dash-prompt { display:flex; align-items:center; gap:10px; padding:14px; margin-top:18px; border-radius:10px; border:1px solid var(--bgt-border); background:var(--bgt-soft); font-size:10px; }
.bgt-dash-prompt>i { color:var(--bgt-accent); font-size:19px; }
.bgt-dash-prompt>i:last-child { margin-left:auto; }
.bgt-ai-icon { flex-shrink:0; width:42px; height:42px; display:grid; place-items:center; border-radius:13px; color:#fff; background:linear-gradient(135deg,#587cf0,#b345df); font-size:23px; }
.bgt-chat-question { padding:19px; border:1px solid var(--bgt-border); border-radius:15px; background:var(--bgt-soft); position:relative; }
.bgt-chat-question>span { font-size:8px; letter-spacing:.13em; color:var(--bgt-accent); font-weight:800; }
.bgt-chat-question p { font-size:14px; color:var(--bgt-text); margin:9px 24px 0 0; }
.bgt-chat-question strong { color:var(--bgt-violet); }
.bgt-chat-question p { animation:bgt-type var(--bgt-loop) steps(45,end) infinite; }
.bgt-chat-question>i { position:absolute; right:15px; bottom:16px; padding:7px; border-radius:50%; color:#fff; background:#7352dd; }
.bgt-ai-progress { display:flex; justify-content:space-between; flex-wrap:wrap; gap:8px; margin:18px 0; font-size:9px; color:var(--bgt-muted); }
.bgt-ai-progress i { color:var(--bgt-good); }
.bgt-ai-progress>span { animation:bgt-step var(--bgt-loop) ease-in-out infinite; }
.bgt-ai-progress>span:nth-child(2) { animation-delay:.7s; }
.bgt-ai-progress>span:nth-child(3) { animation-delay:1.4s; }
.bgt-proposal { border:1px solid color-mix(in srgb,var(--bgt-accent) 40%,var(--bgt-border)); padding:20px; border-radius:16px; background:linear-gradient(145deg,color-mix(in srgb,var(--bgt-accent) 7%,var(--bgt-surface)),var(--bgt-surface)); }
.bgt-proposal-head { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-bottom:13px; }
.bgt-proposal h4 { font-size:17px; margin:5px 0 0; }
.bgt-proposal-row { display:flex; justify-content:space-between; align-items:center; border-bottom:1px solid var(--bgt-border); padding:12px 0; }
.bgt-proposal-row>span { display:grid; grid-template-columns:28px 1fr; align-items:center; gap:2px 8px; font-size:12px; }
.bgt-proposal-row i { grid-row:span 2; background:var(--bgt-soft); padding:6px; color:var(--bgt-violet); border-radius:8px; }
.bgt-proposal-row strong { font-size:20px; }
.bgt-proposal>p { font-size:10px; line-height:1.7; margin:14px 0; }
.bgt-proposal-actions { display:flex; align-items:center; justify-content:space-between; gap:10px; font-size:10px; }
.bgt-proposal-actions>span { color:var(--bgt-muted); }
.bgt-proposal-actions>b { padding:9px 11px; color:#fff; background:linear-gradient(120deg,#536cdd,#9c43d1); border-radius:8px; }
.bgt-demo-footnote { text-align:center; font-size:10px; color:var(--bgt-muted); margin-top:18px; }
.bgt-demo-footnote i { color:var(--bgt-accent); margin-right:4px; }
.bgt-rule-sentence { background:var(--bgt-soft); border-left:3px solid var(--bgt-accent); border-radius:0 10px 10px 0; padding:18px; font-size:15px; line-height:1.7; margin-bottom:24px; }
.bgt-rule-sentence b { color:var(--bgt-violet); }
.bgt-flow-node { padding:19px; border:1px solid var(--bgt-border); border-radius:13px; }
.bgt-flow-node>span,.bgt-flow-actions>div>span { display:block; font-size:8px; color:var(--bgt-accent); font-weight:800; letter-spacing:.14em; margin-bottom:12px; }
.bgt-flow-node>div:nth-child(2) { display:flex; align-items:center; flex-wrap:wrap; gap:10px; font-size:13px; margin-bottom:12px; }
.bgt-flow-node small { margin-left:auto; }
.bgt-connector { height:45px; position:relative; display:flex; justify-content:center; align-items:flex-end; color:var(--bgt-violet); }
.bgt-connector>i:first-child { width:1px; background:var(--bgt-border); position:absolute; top:0; bottom:14px; }
.bgt-connector>span { position:absolute; width:6px; height:6px; top:2px; border-radius:50%; background:var(--bgt-accent); animation:bgt-flow var(--bgt-loop) ease-in-out infinite; }
.bgt-flow-actions { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.bgt-flow-actions>div { border:1px solid var(--bgt-border); border-radius:13px; padding:16px; background:var(--bgt-soft); }
.bgt-flow-actions>div>i { display:block; color:var(--bgt-violet); font-size:25px; margin-bottom:10px; }
.bgt-flow-actions b { display:block; font-size:13px; }
.bgt-flow-actions small { display:block; margin-top:5px; font-weight:400; }
.bgt-transfer { display:grid; grid-template-columns:1fr 35px 1fr; align-items:center; gap:12px; padding:17px; margin-top:18px; border:1px solid color-mix(in srgb,var(--bgt-good) 35%,var(--bgt-border)); background:color-mix(in srgb,var(--bgt-good) 6%,var(--bgt-surface)); border-radius:13px; }
.bgt-transfer span { display:flex; align-items:center; gap:10px; margin-top:4px; }
.bgt-transfer s { color:var(--bgt-muted); font-size:12px; }
.bgt-transfer b { font-size:24px; }
.bgt-transfer>i { font-size:25px; color:var(--bgt-good); }
.bgt-sweep { display:grid; grid-template-columns:1fr 65px 1fr; align-items:center; gap:10px; text-align:center; margin:28px 0; }
.bgt-sweep>div:not(.bgt-sweep-path) { display:flex; flex-direction:column; gap:9px; font-size:12px; }
.bgt-sweep>div>i { font-size:32px; color:var(--bgt-violet); }
.bgt-sweep strong { font-size:34px; letter-spacing:-.04em; }
.bgt-sweep-path { color:var(--bgt-accent); display:flex; flex-direction:column; align-items:center; }
.bgt-sweep-path span { border:1px solid var(--bgt-border); background:var(--bgt-soft); border-radius:99px; padding:4px 8px; font-size:10px; animation:bgt-transfer var(--bgt-loop) ease-in-out infinite; }
.bgt-note { border-radius:10px; background:color-mix(in srgb,var(--bgt-good) 8%,var(--bgt-surface)); color:var(--bgt-good); padding:14px; display:flex; gap:9px; align-items:center; font-size:11px; }
.bgt-note>i { font-size:20px; }
.bgt-note.bgt-caution { color:var(--bgt-amber); background:color-mix(in srgb,var(--bgt-amber) 8%,var(--bgt-surface)); }
.bgt-forecast-numbers { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }
.bgt-forecast-numbers b { display:block; font-size:28px; margin-top:7px; letter-spacing:-.03em; }
.bgt-forecast-numbers>div:nth-child(2) b { color:var(--bgt-amber); }
.bgt-pace-chart { width:100%; margin:24px 0 0; overflow:visible; fill:none; }
.bgt-pace-chart text { fill:var(--bgt-muted); font-size:11px; }
.bgt-chart-grid { stroke:var(--bgt-border); stroke-width:1; }
.bgt-chart-target { stroke:var(--bgt-good); stroke-dasharray:6 6; }
.bgt-chart-today { stroke:var(--bgt-muted); stroke-dasharray:3 5; opacity:.4; }
.bgt-chart-area { fill:color-mix(in srgb,var(--bgt-violet) 11%,transparent); }
.bgt-chart-spend { stroke:var(--bgt-violet); stroke-width:4; stroke-linecap:round; stroke-dasharray:1; animation:bgt-draw var(--bgt-loop) ease-in-out infinite; }
.bgt-chart-projected { stroke:var(--bgt-amber); stroke-width:3; stroke-dasharray:6 6; animation:bgt-dash 6s linear infinite; }
.bgt-pace-chart circle { fill:var(--bgt-violet); stroke:var(--bgt-surface); stroke-width:3; }
.bgt-chart-key { display:flex; justify-content:center; gap:19px; margin:15px 0 24px; font-size:10px; color:var(--bgt-muted); }
.bgt-chart-key span { display:flex; align-items:center; gap:6px; }
.bgt-chart-key i { width:12px; height:3px; background:var(--bgt-violet); }
.bgt-chart-key>span:nth-child(2) i { background:var(--bgt-amber); }
.bgt-chart-key>span:nth-child(3) i { background:var(--bgt-good); }
.bgt-report-summary { display:flex; gap:45px; }
.bgt-report-summary b { display:block; font-size:30px; margin-top:5px; }
.bgt-report-summary em { font-size:13px; font-weight:500; font-style:normal; color:var(--bgt-muted); }
.bgt-page .bgt-good { color:var(--bgt-good); }
.bgt-report-chart { height:180px; margin:35px 0 50px; display:grid; grid-template-columns:repeat(4,1fr); gap:27px; position:relative; border-bottom:1px solid var(--bgt-border); }
.bgt-report-chart>div { position:relative; }
.bgt-report-chart>div>i { position:absolute; inset-inline:9%; bottom:0; height:var(--height); background:linear-gradient(0deg,var(--bgt-violet),color-mix(in srgb,var(--bgt-violet) 50%,var(--bgt-surface))); border-radius:7px 7px 0 0; transform-origin:bottom; animation:bgt-grow var(--bgt-loop) ease-in-out infinite; animation-delay:var(--delay); }
.bgt-report-chart>.bgt-over>i { background:linear-gradient(0deg,var(--bgt-red),color-mix(in srgb,var(--bgt-red) 50%,var(--bgt-surface))); }
.bgt-report-chart>div>b { position:absolute; bottom:calc(var(--height) + 8px); width:100%; text-align:center; font-size:10px; }
.bgt-report-chart>div>span { position:absolute; top:calc(100% + 9px); width:100%; text-align:center; color:var(--bgt-muted); font-size:10px; }
.bgt-report-target { position:absolute; left:0; right:0; bottom:75%; border-bottom:1px dashed var(--bgt-muted); text-align:right; font-size:9px; color:var(--bgt-muted); padding-bottom:4px; }
.bgt-heatmap { display:grid; grid-template-columns:1.5fr repeat(4,1fr); align-items:center; gap:7px; font-size:10px; }
.bgt-heatmap>span { text-align:center; color:var(--bgt-muted); }
.bgt-heatmap>i { background:color-mix(in srgb,var(--bgt-good) 14%,var(--bgt-surface)); color:var(--bgt-good); font-style:normal; text-align:center; border-radius:5px; padding:9px 2px; }
.bgt-heatmap>.bgt-hot { background:color-mix(in srgb,var(--bgt-red) 16%,var(--bgt-surface)); color:var(--bgt-red); }
.bgt-heatmap>.bgt-warm { background:color-mix(in srgb,var(--bgt-amber) 16%,var(--bgt-surface)); color:var(--bgt-amber); }
/* The carousel shares the homepage controller, with a rightward drift and an explicit pause. */
.bgt-reel-section { padding:25px 0 65px; }
.bgt-reel-heading { display:flex; justify-content:space-between; align-items:flex-end; gap:24px; }
.bgt-reel-heading h2 { font-size:28px; margin-bottom:8px; }
.bgt-reel-heading p { font-size:11px; white-space:nowrap; }
.bgt-reel { margin-inline:0; mask-image:none; -webkit-mask-image:none; }
.bgt-reel .fs-reel-track { padding:24px max(24px,calc((100vw - 1296px)/2)); gap:18px; }
.bgt-reel-card { flex:0 0 280px; border:1px solid var(--bgt-border); border-radius:20px; padding:23px; background:linear-gradient(150deg,color-mix(in srgb,var(--bgt-accent) 7%,var(--bgt-surface)),var(--bgt-surface) 65%); }
.bgt-reel-card>small { color:var(--bgt-accent); font-size:9px; font-weight:800; letter-spacing:.12em; display:flex; align-items:center; gap:6px; }
.bgt-reel-card>small i { font-size:15px; }
.bgt-reel-card h3 { font-size:23px; min-height:60px; margin:17px 0 20px; }
.bgt-reel-card>p { font-size:12px; line-height:1.7; margin:18px 0 0; }
.bgt-reel-art { height:160px; background:var(--bgt-soft); border-radius:12px; padding:16px; font-size:10px; }
.bgt-reel-art em { font-style:normal; color:var(--bgt-muted); font-size:9px; }
.bgt-reel-chat>span { display:block; background:var(--bgt-inset); padding:10px; border-radius:8px; margin-bottom:12px; }
.bgt-reel-chat>div { display:flex; gap:6px; margin:9px 0; }
.bgt-reel-chat>div b { margin-left:auto; }
.bgt-reel-chat i { color:var(--bgt-good); }
.bgt-reel-chat em { display:block; margin-top:13px; }
.bgt-reel-tiles { display:grid; grid-template-columns:1fr 1fr; gap:7px; }
.bgt-reel-tiles>span { display:flex; flex-direction:column; justify-content:center; align-items:center; gap:7px; border:1px solid var(--bgt-border); border-radius:8px; background:var(--bgt-surface); }
.bgt-reel-tiles i { font-size:22px; color:var(--bgt-violet); }
.bgt-reel-number { text-align:center; }
.bgt-reel-number>small { font-size:8px; color:var(--bgt-muted); }
.bgt-reel-number>strong { display:block; font-size:43px; letter-spacing:-.05em; margin:6px 0 14px; }
.bgt-reel-number strong span { color:var(--bgt-muted); font-size:26px; }
.bgt-reel-number em { display:block; margin-top:12px; }
.bgt-reel-rule { display:flex; flex-direction:column; justify-content:center; align-items:center; gap:9px; }
.bgt-reel-rule>span { background:var(--bgt-surface); padding:12px; border:1px solid var(--bgt-border); border-radius:8px; width:100%; text-align:center; }
.bgt-reel-rule b { color:var(--bgt-violet); }
.bgt-reel-rule>i { color:var(--bgt-accent); }
.bgt-reel-goal { display:grid; grid-template-columns:30px 1fr; align-content:center; gap:10px; }
.bgt-reel-goal>i { color:var(--bgt-accent); font-size:25px; }
.bgt-reel-goal strong { grid-column:1/-1; font-size:30px; }
.bgt-reel-goal .bgt-bar,.bgt-reel-goal em { grid-column:1/-1; }
.bgt-reel-move { display:flex; justify-content:space-between; align-items:center; gap:6px; text-align:center; }
.bgt-reel-move>i { color:var(--bgt-accent); font-size:22px; animation:bgt-transfer var(--bgt-loop) ease-in-out infinite; }
.bgt-reel-move small { display:block; font-size:8px; color:var(--bgt-muted); margin-bottom:10px; }
.bgt-reel-move b { font-size:17px; }
.bgt-reel-tags { display:flex; flex-wrap:wrap; align-content:center; gap:8px; }
.bgt-reel-tags span { border:1px solid var(--bgt-border); background:var(--bgt-surface); border-radius:99px; padding:7px 10px; }
.bgt-reel-bars { display:flex; align-items:flex-end; justify-content:center; gap:13px; position:relative; padding:20px 20px 35px; }
.bgt-reel-bars>i { height:var(--height); width:30px; background:var(--bgt-violet); border-radius:5px 5px 0 0; transform-origin:bottom; animation:bgt-grow var(--bgt-loop) ease-in-out infinite; }
.bgt-reel-bars>i:nth-child(2) { background:var(--bgt-red); }
.bgt-reel-bars>span { position:absolute; bottom:12px; color:var(--bgt-muted); font-size:9px; }
.bgt-reel-share { display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:14px; padding-top:25px; }
.bgt-reel-share>i { font-size:32px; color:var(--bgt-violet); }
.bgt-reel-share>i:nth-child(2) { font-size:23px; color:var(--bgt-muted); }
.bgt-reel-share>span { width:100%; text-align:center; color:var(--bgt-muted); }
.bgt-reel-email { display:flex; flex-direction:column; gap:8px; }
.bgt-reel-email>i { font-size:30px; color:var(--bgt-accent); }
.bgt-reel-email strong { font-size:12px; margin-bottom:4px; }
.bgt-reel-email span { color:var(--bgt-muted); }
.bgt-reel-controls { display:flex; justify-content:space-between; align-items:center; font-size:10px; color:var(--bgt-muted); }
.bgt-page :is(a,button,[tabindex]):focus-visible { outline:3px solid var(--bgt-violet); outline-offset:5px; }
/* Preserve the current frame on pause; show complete examples before motion begins. */
.bgt-arrive { animation:bgt-arrive var(--bgt-loop) ease-in-out infinite; }
.bgt-demo *,.bgt-reel * { animation-play-state:paused !important; animation-fill-mode:both; }
.bgt-demo[data-motion=running] *,.bgt-reel[data-reel-motion=running] * { animation-play-state:running !important; }
.bgt-demo[data-motion=still] * { animation:none !important; }
@keyframes bgt-fill { 0%,5% { transform:scaleX(.25); } 32%,92% { transform:scaleX(1); } 100% { transform:scaleX(.25); } }
@keyframes bgt-grow { 0%,5% { transform:scaleY(.2); } 35%,92% { transform:scaleY(1); } 100% { transform:scaleY(.2); } }
@keyframes bgt-arrive { 0%,12% { opacity:.35; transform:translateY(9px); } 32%,92% { opacity:1; transform:none; } 100% { opacity:.35; transform:translateY(9px); } }
@keyframes bgt-ring { 0%,5% { stroke-dasharray:20 100; } 35%,92% { stroke-dasharray:86 100; } 100% { stroke-dasharray:20 100; } }
@keyframes bgt-step { 0%,8% { opacity:.35; } 24%,92% { opacity:1; } 100% { opacity:.35; } }
@keyframes bgt-flow { 0%,20% { transform:translateY(0); opacity:.2; } 40%,70% { opacity:1; } 80%,100% { transform:translateY(28px); opacity:0; } }
@keyframes bgt-transfer { 0%,10% { transform:translateX(-10px); opacity:.4; } 40%,80% { transform:translateX(7px); opacity:1; } 100% { transform:translateX(-10px); opacity:.4; } }
@keyframes bgt-draw { 0%,5% { stroke-dashoffset:1; } 40%,95% { stroke-dashoffset:0; } 100% { stroke-dashoffset:1; } }
@keyframes bgt-dash { to { stroke-dashoffset:-24; } }
@keyframes bgt-type { 0%,3% { clip-path:inset(0 100% 0 0); } 25%,97% { clip-path:inset(0 0 0 0); } 100% { clip-path:inset(0 100% 0 0); } }
@media (min-width:1400px) { .bgt-page>.container,.bgt-page section>.container { max-width:1240px; } }
@media (max-width:1199px) { .bgt-hero-grid,.bgt-story,.bgt-story.bgt-reverse { gap:35px; } .bgt-hero h1 { font-size:3.4rem; } .bgt-methods { grid-template-columns:repeat(2,minmax(0,1fr)); } .bgt-method-art { height:160px; } .bgt-cadences { flex-direction:column; align-items:flex-start; } .bgt-together-grid { gap:35px; } .bgt-demo .v4-motion-art>div { padding:22px; } .bgt-dashboard .v4-motion-art>div { padding:0; } }
@media (max-width:991px) { .bgt-hero { padding-top:125px; } .bgt-hero-grid,.bgt-story,.bgt-story.bgt-reverse { grid-template-columns:1fr; gap:45px; } .bgt-hero-copy { max-width:650px; } .bgt-hero h1 { font-size:4.3rem; } .bgt-demo { width:100%; max-width:640px; margin-inline:auto; } .bgt-reverse>.bgt-copy { order:0; } .bgt-section { padding-block:75px; } .bgt-page h2 { font-size:2.8rem; } .bgt-custom-grid,.bgt-rollover-row,.bgt-together-grid { grid-template-columns:1fr; } .bgt-rollover-row { gap:30px; } .bgt-reel-heading h2 { font-size:24px; } .bgt-reel-heading { align-items:flex-start; flex-direction:column; gap:0; } }
@media (max-width:575px) { .bgt-hero { padding:112px 0 50px; } .bgt-hero-grid { gap:36px; } .bgt-hero h1 { font-size:3.2rem; } .bgt-eyebrow { font-size:9px; letter-spacing:.11em; } .bgt-lead { font-size:15px; } .bgt-reassurance { gap:13px; font-size:10px; } .bgt-actions { gap:20px; } .bgt-actions .btn { font-size:13px; padding:13px 17px; } .bgt-text-link { font-size:13px; } .bgt-page h2 { font-size:2.3rem; } .bgt-section { padding-block:58px; } .bgt-heading { margin-bottom:30px; } .bgt-heading p,.bgt-copy>p { font-size:14px; } .bgt-jump { gap:12px 20px; padding-inline:20px; } .bgt-methods { grid-template-columns:1fr; gap:15px; } .bgt-methods>article { padding:24px; } .bgt-method-art { height:160px; } .bgt-methods h3 { font-size:21px; } .bgt-methods p { font-size:14px; } .bgt-ai-band { padding:60px 0 40px; } .bgt-prompt-grid { grid-template-columns:1fr; gap:22px; } .bgt-custom-grid>article { padding:25px; } .bgt-custom-grid h3 { font-size:22px; } .bgt-target-card dl>div { grid-template-columns:105px 1fr; gap:10px; } .bgt-rollover-row h3 { font-size:25px; } .bgt-together-band { padding-block:55px; } .bgt-sharing-art { gap:7px; font-size:9px; } .bgt-sharing-art :is(span,strong) { padding:12px 7px; } .bgt-checkin { padding:27px; } .bgt-final { padding-block:70px; } .bgt-final h2 { font-size:2.7rem; } .bgt-demo { border-radius:18px; } .bgt-demo .v4-motion-art>div { padding:18px; } .bgt-dashboard .v4-motion-art>div { padding:0; } .bgt-dashboard-body { padding:17px; } .bgt-demo-head h3 { font-size:15px; } .bgt-dash-hero { padding:17px 13px; gap:16px; } .bgt-health { width:85px; height:85px; } .bgt-health b { font-size:27px; } .bgt-dash-hero>div:last-child>strong { font-size:37px; } .bgt-demo small { font-size:8px; } .bgt-dash-stats { gap:7px; } .bgt-dash-stats>div { padding:9px; } .bgt-dash-stats b { font-size:17px; } .bgt-budget-row em { display:none; } .bgt-demo .v4-motion-controls { padding:12px 14px; font-size:9px; } .bgt-chat-question { padding:15px; } .bgt-chat-question p { font-size:12px; } .bgt-proposal { padding:15px; } .bgt-proposal h4 { font-size:15px; } .bgt-proposal-row strong { font-size:18px; } .bgt-proposal-actions { font-size:9px; } .bgt-ai-progress { font-size:8px; gap:6px; } .bgt-flow-actions>div { padding:13px; } .bgt-flow-actions b { font-size:11px; } .bgt-transfer { gap:8px; padding:14px; } .bgt-transfer b { font-size:21px; } .bgt-rule-sentence { font-size:13px; } .bgt-forecast-numbers b { font-size:25px; } .bgt-reel-section { padding-bottom:40px; } .bgt-reel-heading h2 { font-size:23px; } .bgt-report-chart { gap:14px; } .bgt-report-summary { gap:28px; } .bgt-heatmap { gap:5px; font-size:9px; } .bgt-sweep { grid-template-columns:1fr 45px 1fr; gap:5px; } .bgt-sweep strong { font-size:30px; } }
@media (prefers-reduced-motion:reduce) {
    .bgt-page *,.bgt-demo[data-motion=running] *,.bgt-reel[data-reel-motion=running] * { animation:none !important; transition:none !important; }
    .bgt-demo .v4-motion-controls button { display:none; }
    .bgt-demo .v4-motion-controls::after { content:"Motion off"; flex-shrink:0; color:var(--bgt-muted); }
}
