:root{
  --red:#FF0033; --red-dark:#CC0022; --black:#0A0A0A; --panel:#141414; --panel2:#1B1B1B;
  --silver:#C7CCD1; --silver-dim:#8A9096; --white:#F5F5F5; --line:#2A2A2A;
}
*{margin:0;padding:0;box-sizing:border-box}
body{background:var(--black);color:var(--white);font-family:'Segoe UI',Roboto,Arial,sans-serif;line-height:1.5}
.wrap{max-width:1200px;margin:0 auto;padding:0 24px}
a{color:inherit}

/* NAV */
nav{display:flex;align-items:center;justify-content:space-between;padding:18px 0;border-bottom:1px solid var(--line);flex-wrap:wrap;gap:12px}
.logo{display:flex;align-items:center;gap:12px;font-weight:800;font-size:1.25rem;letter-spacing:.5px;text-decoration:none}
.logo .play{width:42px;height:30px;background:var(--red);border-radius:8px;display:flex;align-items:center;justify-content:center}
.logo .play::after{content:"";border-left:12px solid #fff;border-top:7px solid transparent;border-bottom:7px solid transparent;margin-left:2px}
.logo span em{color:var(--red);font-style:normal}
nav .links{display:flex;gap:22px;align-items:center;font-size:.95rem;color:var(--silver)}
nav .links a{color:var(--silver);text-decoration:none}
nav .links a:hover{color:#fff}
.btn{display:inline-block;background:var(--red);color:#fff;font-weight:700;padding:12px 26px;border-radius:8px;text-decoration:none;border:none;cursor:pointer;font-size:1rem}
.btn:hover{background:var(--red-dark)}
.btn.ghost{background:transparent;border:1px solid var(--silver-dim);color:var(--silver)}
.btn.ghost:hover{border-color:#fff;color:#fff}
.btn.small{padding:8px 16px;font-size:.85rem}

/* HERO */
.hero{padding:90px 0 70px;text-align:center;background:
  radial-gradient(ellipse 900px 420px at 50% -80px, rgba(255,0,51,.18), transparent)}
.hero h1{font-size:3.4rem;font-weight:900;line-height:1.12;letter-spacing:-1px}
.hero h1 .r{color:var(--red)}
.hero p.sub{margin:22px auto 0;max-width:720px;font-size:1.25rem;color:var(--silver)}
.hero .cta{margin-top:36px;display:flex;gap:16px;justify-content:center;flex-wrap:wrap}
.ticker{margin-top:46px;display:flex;gap:34px;justify-content:center;color:var(--silver-dim);font-size:.9rem;flex-wrap:wrap}
.ticker b{color:var(--silver);font-size:1.15rem;display:block}

section{padding:80px 0;border-top:1px solid var(--line)}
.kicker{color:var(--red);font-weight:800;text-transform:uppercase;letter-spacing:2px;font-size:.85rem}
h2{font-size:2.3rem;font-weight:850;margin-top:10px;letter-spacing:-.5px}
.lead{color:var(--silver);max-width:680px;margin-top:12px;font-size:1.08rem}

/* SHOWCASE */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:22px;margin-top:42px}
.vid{background:var(--panel);border:1px solid var(--line);border-radius:12px;overflow:hidden;transition:transform .15s}
.vid:hover{transform:translateY(-4px);border-color:var(--red)}
.thumb{position:relative;aspect-ratio:16/9;background:linear-gradient(135deg,#20242B,#15181D);display:flex;align-items:center;justify-content:center}
.thumb iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.thumb .pb{width:58px;height:40px;background:var(--red);border-radius:10px;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 24px rgba(255,0,51,.45)}
.thumb .pb::after{content:"";border-left:16px solid #fff;border-top:9px solid transparent;border-bottom:9px solid transparent;margin-left:3px}
.thumb .dur{position:absolute;right:8px;bottom:8px;background:rgba(0,0,0,.8);padding:2px 7px;border-radius:4px;font-size:.78rem;color:var(--silver)}
.vid .meta{padding:14px 16px}
.vid .meta h4{font-size:.98rem;font-weight:700;line-height:1.35}
.vid .meta small{color:var(--silver-dim);display:block;margin-top:6px}
.badge-ch{display:inline-block;margin-top:10px;font-size:.75rem;color:var(--silver);border:1px solid var(--line);padding:3px 10px;border-radius:20px}

/* FLOWCHART */
.flowart{position:relative;margin-top:70px;height:520px}
.flowart svg.track{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.flowart .rail{fill:none;stroke:url(#railGrad);stroke-width:5;stroke-linecap:round;
  stroke-dasharray:16 14;filter:drop-shadow(0 0 10px rgba(255,0,51,.55));animation:convey 2.6s linear infinite}
.flowart .rail-under{fill:none;stroke:rgba(255,255,255,.06);stroke-width:22;stroke-linecap:round}
@keyframes convey{to{stroke-dashoffset:-60}}
.fnode{position:absolute;transform:translate(-50%,-50%);text-align:center;width:190px}
.fnode .orb{width:118px;height:118px;margin:0 auto;border-radius:50%;position:relative;
  background:radial-gradient(circle at 32% 28%, #2E2E33, #101013 68%);
  border:3px solid var(--red);box-shadow:0 0 0 10px rgba(255,0,51,.07),0 0 34px rgba(255,0,51,.35), inset 0 0 26px rgba(0,0,0,.75);
  display:flex;align-items:center;justify-content:center;transition:transform .2s, box-shadow .2s}
.fnode:hover .orb{transform:scale(1.12);box-shadow:0 0 0 14px rgba(255,0,51,.12),0 0 56px rgba(255,0,51,.65), inset 0 0 26px rgba(0,0,0,.75)}
.fnode .orb .ico{font-size:2.6rem;filter:drop-shadow(0 3px 6px rgba(0,0,0,.6))}
.fnode .orb .num{position:absolute;top:-14px;right:-8px;width:38px;height:38px;border-radius:50%;
  background:var(--red);color:#fff;font-weight:900;font-size:1.15rem;display:flex;align-items:center;justify-content:center;
  box-shadow:0 4px 14px rgba(255,0,51,.6);border:2px solid #0A0A0A}
.fnode h4{margin-top:14px;font-size:1.12rem;font-weight:850;text-transform:uppercase;letter-spacing:1.5px}
.fnode p{color:var(--silver-dim);font-size:.82rem;margin-top:5px;line-height:1.4}
.fnode.flip h4{margin-top:0;margin-bottom:14px}
.fnode.flip{display:flex;flex-direction:column-reverse}
.flowvert{display:none}
@media(max-width:980px){
  .flowart{display:none}
  .flowvert{display:block;margin-top:46px;position:relative;padding-left:66px}
  .flowvert::before{content:"";position:absolute;left:26px;top:10px;bottom:10px;width:4px;
    background:repeating-linear-gradient(180deg,var(--red) 0 14px, transparent 14px 26px);filter:drop-shadow(0 0 8px rgba(255,0,51,.5))}
  .vnode{position:relative;margin-bottom:38px}
  .vnode .orb{position:absolute;left:-66px;top:0;width:54px;height:54px;border-radius:50%;
    background:radial-gradient(circle at 32% 28%, #2E2E33, #101013 68%);border:2px solid var(--red);
    display:flex;align-items:center;justify-content:center;font-size:1.4rem;box-shadow:0 0 18px rgba(255,0,51,.4)}
  .vnode h4{font-size:1.05rem;text-transform:uppercase;letter-spacing:1px}
  .vnode h4 b{color:var(--red);margin-right:8px}
  .vnode p{color:var(--silver-dim);font-size:.85rem;margin-top:4px}
}

/* BRANDING KIT */
.kit{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center;margin-top:42px}
.kit .mock{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:22px}
.kit .banner{aspect-ratio:16/5;border-radius:8px;background:linear-gradient(120deg,#2B0F14,#3A1119 55%,#1A1A1A);display:flex;align-items:center;justify-content:center;gap:14px;border:1px solid #3A2A2A}
.kit .banner .stick{width:44px;height:44px;border-radius:50%;background:var(--silver);opacity:.9}
.kit .banner b{font-size:1.35rem;letter-spacing:1px}
.kit .row{display:flex;gap:12px;margin-top:14px}
.kit .opt{flex:1;text-align:center;border:1px solid var(--line);border-radius:8px;padding:10px;color:var(--silver-dim);font-size:.85rem;cursor:pointer}
.kit .opt.sel{border-color:var(--red);color:#fff}
.kit ul{margin-top:18px;color:var(--silver);list-style:none}
.kit li{margin:12px 0;padding-left:28px;position:relative}
.kit li::before{content:"✓";color:var(--red);font-weight:900;position:absolute;left:0}

/* PRICING */
.tiers{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:22px;margin-top:40px}
.tier{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:30px 26px;position:relative;display:flex;flex-direction:column}
.tier.pop{border:2px solid var(--red);background:var(--panel2);transform:scale(1.04)}
.tier .pop-badge{position:absolute;top:-14px;left:50%;transform:translateX(-50%);background:var(--red);color:#fff;font-weight:800;font-size:.75rem;letter-spacing:1.5px;padding:6px 16px;border-radius:20px;white-space:nowrap}
.tier h3{font-size:1.05rem;color:var(--silver)}
.tier .price{font-size:2.5rem;font-weight:900;margin-top:10px}
.tier .price small{font-size:1rem;color:var(--silver-dim);font-weight:400}
.tier .per{color:var(--red);font-weight:700;font-size:.9rem;margin-top:4px}
.tier ul{list-style:none;margin:22px 0;color:var(--silver);font-size:.92rem;flex:1}
.tier li{margin:10px 0;padding-left:24px;position:relative}
.tier li::before{content:"✓";color:var(--red);font-weight:900;position:absolute;left:0}
.tier .btn{text-align:center}
.packnote{color:var(--silver-dim);margin-top:26px;font-size:.95rem;text-align:center}
.packs{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-top:30px}
.pack{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:22px;text-align:center}
.pack b{font-size:1.5rem}
.pack .p{color:var(--red);font-weight:800;font-size:1.3rem;margin-top:6px}
.pack small{color:var(--silver-dim)}

/* FORMS / APP */
.card{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:34px;max-width:460px;margin:60px auto}
.card.wide{max-width:820px}
.card h2{font-size:1.6rem;margin-bottom:8px}
.card p.hint{color:var(--silver-dim);font-size:.92rem;margin-bottom:18px}
label{display:block;margin-top:16px;font-size:.9rem;color:var(--silver)}
input[type=text],input[type=email],input[type=password],select,textarea{
  width:100%;background:var(--panel2);border:1px solid var(--line);color:var(--white);
  padding:13px 15px;border-radius:8px;font-size:1rem;margin-top:6px;outline:none;font-family:inherit}
input:focus,select:focus,textarea:focus{border-color:var(--red)}
.form-btn{margin-top:24px;width:100%}
.err{background:rgba(255,0,51,.12);border:1px solid var(--red);color:#FF97A8;padding:12px 16px;border-radius:8px;margin-top:16px;font-size:.92rem}
.ok{background:rgba(0,200,90,.1);border:1px solid #0C8;color:#7FE6B4;padding:12px 16px;border-radius:8px;margin-top:16px;font-size:.92rem}

/* DASHBOARD */
.dash-head{display:flex;justify-content:space-between;align-items:center;margin:44px 0 8px;flex-wrap:wrap;gap:14px}
.stat-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-top:24px}
.stat{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:20px}
.stat b{font-size:1.9rem;color:var(--white)}
.stat span{color:var(--silver-dim);font-size:.85rem;display:block;margin-top:4px}
.stat.red b{color:var(--red)}
table.list{width:100%;border-collapse:collapse;margin-top:24px;background:var(--panel);border:1px solid var(--line);border-radius:12px;overflow:hidden}
table.list th{background:var(--panel2);color:var(--silver);font-size:.82rem;text-transform:uppercase;letter-spacing:1px;text-align:left;padding:12px 16px}
table.list td{padding:13px 16px;border-top:1px solid var(--line);font-size:.95rem}
.pill{display:inline-block;padding:3px 12px;border-radius:20px;font-size:.78rem;border:1px solid var(--line);color:var(--silver)}
.pill.active,.pill.done,.pill.paid{border-color:#0C8;color:#7FE6B4}
.pill.onboarding,.pill.queued,.pill.pending{border-color:#E6B450;color:#E6B450}
.pill.paused,.pill.failed{border-color:var(--red);color:#FF97A8}

/* WIZARD */
.wsteps{display:flex;gap:8px;margin:26px 0}
.wsteps span{flex:1;height:6px;border-radius:4px;background:var(--panel2)}
.wsteps span.on{background:var(--red)}
.choice-row{display:flex;gap:14px;margin-top:14px;flex-wrap:wrap}
.choice{flex:1;min-width:180px;background:var(--panel2);border:2px solid var(--line);border-radius:10px;padding:18px;cursor:pointer;text-align:center}
.choice.sel{border-color:var(--red)}
.choice b{display:block;margin-bottom:6px}
.choice small{color:var(--silver-dim)}

footer{border-top:1px solid var(--line);padding:46px 0;color:var(--silver-dim);font-size:.85rem;text-align:center;margin-top:60px}
footer .logo{justify-content:center;margin-bottom:14px;display:flex}

@media(max-width:820px){
  .hero h1{font-size:2.3rem}
  .kit{grid-template-columns:1fr}
  .tier.pop{transform:none}
}
