/* BackBeat Performance public site. Built on the Backbeat design tokens v0.1 (dark is the primary environment). */
:root{color-scheme:dark;--bb-brand-charcoal:#252B32;--bb-brand-electric-blue:#1445F5;--bb-brand-sky-blue:#7DA0FF;--bb-brand-signal-teal:#03B8C8;--bb-bg-primary:#252B32;--bb-bg-secondary:#2E353E;--bb-bg-tertiary:#38414C;--bb-border-subtle:#424B56;--bb-text-primary:#F4F6F8;--bb-text-secondary:#B8C1CC;--bb-text-muted:#929EAC;--bb-status-success:#10B981;--bb-status-warning:#F59E0B;--bb-font-family:"Inter",Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--bb-radius-control:6px;--bb-radius-card:10px;--bb-radius-container:14px}
*{box-sizing:border-box}html{scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--bb-bg-primary);color:var(--bb-text-primary);font-family:var(--bb-font-family);font-size:1rem;line-height:1.5rem;-webkit-font-smoothing:antialiased}
h1,h2,h3{margin:0;font-weight:600;letter-spacing:-.01em}h1{font-size:2.5rem;line-height:3rem}h2{font-size:1.5rem;line-height:2rem}h3{font-size:1.25rem;line-height:1.75rem}
p{margin:0}a{color:var(--bb-brand-sky-blue)}a:hover{color:#fff}
:focus-visible{outline:2px solid var(--bb-brand-sky-blue);outline-offset:2px}
.skip{position:absolute;left:-999px;top:8px;background:#fff;color:#252B32;padding:8px 14px;border-radius:6px;z-index:10}.skip:focus{left:8px}
.wrap{max-width:1180px;margin:0 auto;padding:0 clamp(16px,4vw,48px)}
header.site{border-bottom:1px solid var(--bb-border-subtle);background:var(--bb-bg-primary)}
header.site .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px;padding-top:16px;padding-bottom:16px}
.brand{font-weight:600;font-size:1.25rem;color:var(--bb-text-primary);text-decoration:none;letter-spacing:-.01em}.brand:hover{color:#fff}
nav.main{display:flex;flex-wrap:wrap;align-items:center;gap:4px 20px;font-size:.9375rem}
nav.main a{color:var(--bb-text-secondary);text-decoration:none;padding:8px 2px}nav.main a:hover,nav.main a[aria-current=page]{color:#fff}nav.main a[aria-current=page]{box-shadow:inset 0 -2px 0 var(--bb-brand-sky-blue)}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 20px;border-radius:var(--bb-radius-control);border:1px solid transparent;background:var(--bb-brand-electric-blue);color:#fff;font:600 .9375rem/1.25rem var(--bb-font-family);text-decoration:none;cursor:pointer}.btn:hover{background:#2C57F7;color:#fff}
.btn.ghost{background:transparent;border-color:var(--bb-brand-sky-blue);color:var(--bb-brand-sky-blue)}.btn.ghost:hover{background:rgba(125,160,255,.14);color:#fff}
nav.main .btn{color:#fff;padding:0 16px}nav.main .btn:hover{color:#fff}
section{padding:72px 0}section.alt{background:var(--bb-bg-secondary);border-top:1px solid var(--bb-border-subtle);border-bottom:1px solid var(--bb-border-subtle)}
.eyebrow{font-size:.75rem;line-height:1rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--bb-brand-signal-teal);margin-bottom:12px}
.lede{font-size:1.25rem;line-height:1.75rem;color:var(--bb-text-secondary);max-width:640px}
.hero{padding:72px 0 80px}.hero .grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:56px;align-items:center}
.hero h1{margin-bottom:20px}.hero .lede{margin-bottom:28px}.cta{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px}.fine{font-size:.875rem;line-height:1.25rem;color:var(--bb-text-secondary)}
.nbviz{background:var(--bb-bg-secondary);border:1px solid var(--bb-border-subtle);border-radius:var(--bb-radius-container);padding:20px}
.nbviz .gridv{display:grid;grid-template-columns:56px repeat(3,minmax(0,1fr));gap:6px;align-items:stretch}
.nbviz .rl,.nbviz .cl{font-size:.75rem;line-height:1rem;color:var(--bb-text-secondary);display:flex;align-items:center}.nbviz .cl{justify-content:center;text-align:center;padding-top:4px}
.nbviz .c{min-height:76px;border:1px dashed var(--bb-text-muted);border-radius:8px;padding:6px;display:flex;flex-direction:column;gap:4px}.nbviz .r0{background:#1f4a52}.nbviz .r1{background:#22335f}.nbviz .r2{background:var(--bb-bg-tertiary)}
.nbviz .t{background:var(--bb-bg-tertiary);border:1px solid var(--bb-border-subtle);border-radius:6px;padding:4px 8px;font-size:.8125rem;line-height:1.1rem;font-weight:600}.nbviz .t small{display:block;font-weight:400;color:var(--bb-text-secondary);font-size:.6875rem}
.nbviz .r2 .t{background:var(--bb-bg-secondary)}.nbviz .cap{margin-top:12px;font-size:.75rem;color:var(--bb-text-secondary)}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;margin-top:32px}
.card{background:var(--bb-bg-secondary);border:1px solid var(--bb-border-subtle);border-radius:var(--bb-radius-card);padding:24px;display:flex;flex-direction:column;gap:10px}section.alt .card{background:var(--bb-bg-primary)}
.card p{color:var(--bb-text-secondary)}.tag{align-self:flex-start;font-size:.75rem;line-height:1rem;font-weight:600;padding:3px 10px;border-radius:999px;border:1px solid var(--bb-brand-sky-blue);color:var(--bb-brand-sky-blue)}.tag.paid{border-color:var(--bb-text-muted);color:var(--bb-text-secondary)}
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:28px;margin-top:32px;counter-reset:s;padding:0;list-style:none}.steps li{counter-increment:s}.steps li:before{content:counter(s);display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:var(--bb-brand-electric-blue);font-weight:600;margin-bottom:12px}.steps h3{margin-bottom:6px}.steps p{color:var(--bb-text-secondary)}
.two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:start}
ul.ticks{margin:12px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}ul.ticks li{padding-left:26px;position:relative;color:var(--bb-text-secondary)}ul.ticks li:before{content:"";position:absolute;left:4px;top:.55em;width:10px;height:6px;border-left:2px solid var(--bb-brand-signal-teal);border-bottom:2px solid var(--bb-brand-signal-teal);transform:rotate(-45deg)}
.feature{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:center;padding:44px 0;border-top:1px solid var(--bb-border-subtle)}.feature:first-of-type{border-top:0}.feature h2{margin:10px 0}.feature p.lead{color:var(--bb-text-secondary)}.feature .links{margin-top:18px}
.panel{background:var(--bb-bg-secondary);border:1px solid var(--bb-border-subtle);border-radius:var(--bb-radius-container);padding:24px;color:var(--bb-text-secondary)}.panel b{color:var(--bb-text-primary)}
.price{font-size:2.5rem;line-height:3rem;font-weight:600}.price small{font-size:1rem;font-weight:400;color:var(--bb-text-secondary)}
.plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-top:32px;align-items:stretch}.plans .card{padding:28px}.plans .card.pick{border:2px solid var(--bb-brand-sky-blue)}.plans .btn{margin-top:auto}
.faq{max-width:760px;display:flex;flex-direction:column;gap:22px;margin-top:28px}.faq h3{font-size:1.0625rem;line-height:1.5rem;margin-bottom:4px}.faq p{color:var(--bb-text-secondary)}
form.contact{display:flex;flex-direction:column;gap:18px;background:var(--bb-bg-secondary);border:1px solid var(--bb-border-subtle);border-radius:var(--bb-radius-container);padding:28px}
label{display:block;font-weight:500;font-size:.9375rem;margin-bottom:6px}.opt{font-weight:400;color:var(--bb-text-secondary)}
input,select,textarea{width:100%;min-height:44px;padding:10px 12px;background:var(--bb-bg-primary);color:var(--bb-text-primary);border:1px solid var(--bb-text-muted);border-radius:var(--bb-radius-control);font:inherit}textarea{min-height:130px;resize:vertical}
.note{font-size:.875rem;line-height:1.25rem;color:var(--bb-text-secondary)}.ok{color:#6EE7B7}
.band{padding:64px 0;text-align:center}.band h2{font-size:2rem;line-height:2.5rem;margin-bottom:12px}.band p{color:var(--bb-text-secondary);margin-bottom:24px}
.doc{max-width:760px}.doc h2{margin:32px 0 8px}.doc p,.doc li{color:var(--bb-text-secondary);margin-bottom:10px}.draft{display:inline-block;border:1px solid var(--bb-status-warning);color:#FBD38D;border-radius:6px;padding:6px 12px;font-size:.875rem;margin:16px 0}
footer.site{border-top:1px solid var(--bb-border-subtle);padding:32px 0;font-size:.875rem;color:var(--bb-text-secondary)}footer.site .wrap{display:flex;flex-wrap:wrap;gap:12px 32px;justify-content:space-between}footer.site nav{display:flex;flex-wrap:wrap;gap:8px 20px}footer.site a{color:var(--bb-text-secondary)}footer.site a:hover{color:#fff}
.pagehead{padding-top:56px;padding-bottom:24px}.pagehead h1{margin-bottom:14px}
@media(max-width:900px){.hero .grid,.two,.feature{grid-template-columns:minmax(0,1fr);gap:32px}h1{font-size:2rem;line-height:2.5rem}section{padding:56px 0}.hero{padding:48px 0 56px}.feature .viz{order:-1}}
@media(max-width:560px){nav.main{gap:0 14px}.nbviz .gridv{grid-template-columns:44px repeat(3,minmax(0,1fr))}.nbviz .t small{display:none}}

/* v2 brand pass: lockup, imagery, rhythm, icons */
header.site{position:sticky;top:0;z-index:20}
.brand{display:inline-flex;align-items:center;gap:10px;font-size:1.0625rem;font-weight:400;color:var(--bb-text-secondary)}.brand b{color:var(--bb-text-primary);font-weight:600}.brand:hover b{color:#fff}
.bmark{display:inline-flex;width:32px;height:32px;flex:none}.bmark svg{width:100%;height:100%;display:block}
.hero{padding:64px 0 72px}.hero .grid{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:48px}
.hero h1{font-size:2.75rem;line-height:3.25rem}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin:26px 0 0;padding:0;list-style:none}.chips li{display:inline-flex;align-items:center;gap:8px;font-size:.875rem;line-height:1.25rem;color:var(--bb-text-secondary);border:1px solid var(--bb-border-subtle);background:var(--bb-bg-secondary);border-radius:999px;padding:6px 14px 6px 10px}.chips .ic{width:18px;height:18px;color:var(--bb-brand-sky-blue)}
.ic{width:24px;height:24px;display:block}
.ficon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:10px;background:rgba(20,69,245,.16);border:1px solid rgba(125,160,255,.35);color:var(--bb-brand-sky-blue);flex:none}.ficon .ic{width:24px;height:24px}
.shot{margin:0;background:var(--bb-bg-secondary);border:1px solid var(--bb-border-subtle);border-radius:var(--bb-radius-container);overflow:hidden;box-shadow:0 0 0 1px rgba(0,0,0,.15)}
.shotbar{display:flex;align-items:center;gap:6px;padding:10px 14px;background:var(--bb-bg-tertiary);border-bottom:1px solid var(--bb-border-subtle)}.shotbar i{width:10px;height:10px;border-radius:50%;background:var(--bb-text-muted);opacity:.55}.shotbar span{margin-left:10px;font-size:.75rem;line-height:1rem;color:var(--bb-text-secondary);background:var(--bb-bg-primary);border-radius:6px;padding:3px 12px}
.shot img{display:block;width:100%;height:auto}
.beats{height:10px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='96' height='10'%3E%3Cg%3E%3Crect x='0' y='1' width='8' height='8' rx='2' fill='%23424B56'/%3E%3Crect x='24' y='1' width='8' height='8' rx='2' fill='%237DA0FF' opacity='.85'/%3E%3Crect x='48' y='1' width='8' height='8' rx='2' fill='%23424B56'/%3E%3Crect x='72' y='1' width='8' height='8' rx='2' fill='%237DA0FF' opacity='.85'/%3E%3C/g%3E%3C/svg%3E") repeat-x center;border-top:1px solid var(--bb-border-subtle);border-bottom:1px solid var(--bb-border-subtle);box-sizing:content-box;padding:10px 0;background-color:var(--bb-bg-secondary)}
.shead{max-width:680px;margin-bottom:12px}.shead h2{font-size:2rem;line-height:2.5rem}.shead .lede{margin-top:12px}
.feat{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:56px;align-items:center;padding:56px 0;border-top:1px solid var(--bb-border-subtle)}.feat:first-of-type{border-top:0;padding-top:36px}.feat.flip{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}.feat.flip .ftext{order:2}.feat.flip .fshot{order:1}
.ftext{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.ftext h2{font-size:1.75rem;line-height:2.25rem}.ftext .lead{color:var(--bb-text-secondary);font-size:1.0625rem;line-height:1.625rem}.ftext .links{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}
.who{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;margin-top:28px}.whoc{gap:12px;padding:28px}.whoc h3{margin-top:4px}.whoc a{margin-top:auto;font-weight:600}
.steps2{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:32px;margin:32px 0 0;padding:0;list-style:none;counter-reset:s2}.steps2 li{display:flex;flex-direction:column;gap:10px;position:relative;counter-increment:s2;padding-top:18px;border-top:2px solid var(--bb-border-subtle)}.steps2 li:before{content:counter(s2);position:absolute;top:-2px;left:0;transform:translateY(-100%);font-size:.75rem;font-weight:600;color:var(--bb-text-muted);display:none}.steps2 li:nth-child(2n){border-top-color:var(--bb-brand-sky-blue)}.steps2 p{color:var(--bb-text-secondary)}
.mini{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;margin-top:28px}.mini .card{gap:10px}.mini .btn{margin-top:auto;align-self:flex-start}
.ctas{padding:24px 0 72px}.ctapanel{position:relative;overflow:hidden;background:var(--bb-brand-electric-blue);border-radius:var(--bb-radius-container);padding:56px 48px;text-align:center}.ctapanel h2{font-size:2rem;line-height:2.5rem;margin-bottom:10px;position:relative}.ctapanel p{color:#E3EAFF;margin-bottom:24px;position:relative}.ctapanel .cta{justify-content:center;margin:0;position:relative}.ctapanel .wm{position:absolute;right:-30px;bottom:-60px;width:300px;opacity:.12;pointer-events:none}.ctapanel .wm svg{width:100%;height:auto;display:block}
.btn.light{background:#fff;color:#1445F5}.btn.light:hover{background:#E3EAFF;color:#0F34C0}.btn.ghostl{background:transparent;border-color:rgba(255,255,255,.7);color:#fff}.btn.ghostl:hover{background:rgba(255,255,255,.12);color:#fff}
footer.site{padding:0;border-top:1px solid var(--bb-border-subtle);background:var(--bb-bg-primary)}footer.site .wrap{display:block}
footer.site .fgrid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:32px;padding-top:48px;padding-bottom:36px}
.fbrand p{margin-top:12px;color:var(--bb-text-secondary);max-width:280px}.fbrand .fsmall{font-size:.875rem}.fbrand .brand{margin-bottom:2px}
footer.site nav{display:flex;flex-direction:column;align-items:flex-start;gap:8px}footer.site nav h2{font-size:.75rem;line-height:1rem;text-transform:uppercase;letter-spacing:.08em;color:var(--bb-text-muted);margin-bottom:4px;font-weight:600}footer.site nav a{color:var(--bb-text-secondary);text-decoration:none}footer.site nav a:hover{color:#fff;text-decoration:underline}
footer.site .fbase{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 24px;padding-top:18px;padding-bottom:28px;border-top:1px solid var(--bb-border-subtle);color:var(--bb-text-muted);font-size:.8125rem}
.pagehead:after{content:"";display:block;height:8px;width:96px;margin-top:20px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='96' height='8'%3E%3Crect x='0' width='8' height='8' rx='2' fill='%23424B56'/%3E%3Crect x='24' width='8' height='8' rx='2' fill='%237DA0FF'/%3E%3Crect x='48' width='8' height='8' rx='2' fill='%23424B56'/%3E%3Crect x='72' width='8' height='8' rx='2' fill='%237DA0FF'/%3E%3C/svg%3E") no-repeat}
@media(max-width:900px){.hero .grid,.feat,.feat.flip{grid-template-columns:minmax(0,1fr);gap:28px}.feat.flip .ftext,.feat.flip .fshot{order:0}.hero h1{font-size:2.25rem;line-height:2.75rem}footer.site .fgrid{grid-template-columns:1fr 1fr}.fbrand{grid-column:1/-1}.ctapanel{padding:40px 24px}.feat{padding:40px 0}}
@media(max-width:560px){.brand .bword{font-size:1rem}.shotbar span{display:none}.chips li{font-size:.8125rem}}

.hero .htext{max-width:760px}.hero .hshot{margin-top:44px}.hero{padding:56px 0 64px}.hero h1{font-size:2.75rem;line-height:3.25rem}
.ctapanel .wm{top:-70px;bottom:auto;width:220px;opacity:.1}
footer.site .fbase{border-top:1px solid var(--bb-border-subtle);padding-top:18px}footer.site .fgrid{padding-bottom:32px}
.beats{background-color:var(--bb-bg-primary)}
@media(max-width:900px){.hero .hshot{margin-top:32px}}

.shead+.feat{border-top:0;padding-top:28px}
.hero .htext{max-width:none;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:64px;align-items:start}
.hero .htext .eyebrow{grid-column:1/-1}.hero .htext h1{grid-column:1;grid-row:2/5;margin:0}.hero .htext .lede{grid-column:2;grid-row:2;margin:6px 0 24px}.hero .htext .cta{grid-column:2;grid-row:3;margin:0 0 14px}.hero .htext .fine{grid-column:2;grid-row:4}
@media(max-width:900px){.hero .htext{display:block}.hero .htext h1{margin-bottom:20px}.hero .htext .lede{margin:0 0 24px}}

.pagehead[style*="center"]:after{margin-left:auto;margin-right:auto}
.feat{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr)}.feat.flip{grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr)}
@media(max-width:900px){.feat,.feat.flip{grid-template-columns:minmax(0,1fr)}}
.ctapanel .wm{top:auto;bottom:-64px;right:-24px;width:230px;opacity:.12}
.bmark{width:36px;height:36px}.brand{gap:11px}
/* Learn page */
.lcol>*:not(.who){max-width:760px}.lcol .who{max-width:none}
.lstep{max-width:760px;margin:20px 0 28px}
.bxg{display:grid;grid-template-columns:96px repeat(3,1fr);gap:10px;margin-top:8px}
.bxh,.bxl{display:flex;flex-direction:column;justify-content:center;font-weight:600;color:var(--bb-text-primary)}.bxh{text-align:center;padding-bottom:4px}.bxh small,.bxl small{font-weight:400;font-size:.75rem;line-height:1rem;color:var(--bb-text-secondary)}
.bxc{background:var(--bb-bg-secondary);border:1px solid var(--bb-border-subtle);border-radius:var(--bb-radius-card);padding:16px;min-width:0}.bxc.r0{border-top:3px solid var(--bb-brand-signal-teal)}.bxc.r1{border-top:3px solid var(--bb-brand-electric-blue)}.bxc.r2{border-top:3px solid var(--bb-border-subtle)}
.bxc small{display:block;font-size:.75rem;line-height:1rem;color:var(--bb-text-secondary)}.bxc b{display:block;margin:4px 0 6px;font-size:1rem;line-height:1.5rem}.bxc p{margin:0;font-size:.875rem;line-height:1.25rem;color:var(--bb-text-secondary)}
.steps2.six{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
@media(max-width:820px){.bxg{grid-template-columns:1fr}.bxg>div:empty,.bxh{display:none}.bxl{margin-top:12px;flex-direction:row;gap:6px;align-items:baseline}}
.pagehead .fine{margin-top:20px}
ul.ticks.nots li:before{width:10px;height:0;border-left:0;border-bottom:2px solid var(--bb-text-secondary);transform:none;top:.8em}
/* Pricing calculator */
.calc{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;margin-top:32px;align-items:stretch}.calc .card{padding:28px}.calc .cout.pick{border:2px solid var(--bb-brand-sky-blue)}
.calc input[type=number]{font-size:1.5rem;line-height:2rem;height:56px;max-width:220px}.seg2{display:flex;flex-wrap:wrap;gap:8px}.seg2 button{min-height:44px;padding:0 16px;border-radius:999px;border:1px solid var(--bb-border-subtle);background:transparent;color:var(--bb-text-secondary);font:inherit;font-weight:500;cursor:pointer}.seg2 button.on{background:var(--bb-brand-electric-blue);border-color:var(--bb-brand-electric-blue);color:#fff;font-weight:600}.seg2 button:focus-visible{outline:2px solid var(--bb-brand-sky-blue);outline-offset:2px}
.cout .btn{margin-top:8px;align-self:flex-start}.cout .btn[aria-disabled=true]{opacity:.6;pointer-events:none}
.ptable td,.ptable th{padding:12px 16px}.ptable tr.hit td{background:rgba(20,69,245,.22);font-weight:600}
@media(max-width:820px){.calc{grid-template-columns:minmax(0,1fr)}}
/* Line breaks: keep ending words together */
h1,h2,h3,.lede{text-wrap:balance}p,li,.note,.fine{text-wrap:pretty}
.ph{display:inline-block}
.ptable{width:100%}.ptable th,.ptable td{text-align:left;white-space:nowrap}.ptable td[colspan]{white-space:normal}
