*{margin:0;padding:0;box-sizing:border-box;}
:root{
  --bg:#07090f;--surface:#0d1220;--surface2:#111827;--border:#1a2540;--border2:#243050;
  --blue:#2563eb;--blue-lt:#3b82f6;--blue-dim:rgba(37,99,235,0.12);--blue-glow:rgba(59,130,246,0.07);
  --green:#10b981;--green-dim:rgba(16,185,129,0.12);
  --red:#ef4444;--amber:#f59e0b;--purple:#8b5cf6;
  --text:#f1f5f9;--text2:#94a3b8;--text3:#475569;--radius:12px;
}
html{scroll-behavior:smooth;}
body{font-family:'Manrope',sans-serif;background:var(--bg);color:var(--text);overflow-x:hidden;line-height:1.6;}
body.marketing-intro-active{overflow:hidden;}
/* Hide page chrome/sections during intro — NOT the whole root (intro overlay lives inside it). */
#marketing-page-root > *:not(.marketing-intro-overlay){transition:opacity .85s ease;}
body.marketing-intro-active #marketing-page-root > *:not(.marketing-intro-overlay){opacity:0;pointer-events:none;}
body.marketing-intro-exit #marketing-page-root > *:not(.marketing-intro-overlay){opacity:1;pointer-events:auto;}

.marketing-intro-overlay{position:fixed;inset:0;z-index:9999;background:#04070f;opacity:1;transition:opacity .85s ease,visibility .85s ease;}
body.marketing-intro-exit .marketing-intro-overlay{opacity:0;visibility:hidden;}
::-webkit-scrollbar{width:4px;}
::-webkit-scrollbar-thumb{background:var(--border2);border-radius:4px;}

nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:0 6%;height:68px;display:flex;align-items:stretch;justify-content:space-between;transition:all .3s;}
nav.scrolled{background:rgba(7,9,15,.92);backdrop-filter:blur(20px);border-bottom:1px solid var(--border);}
.nav-logo{display:flex;align-items:center;gap:10px;text-decoration:none;}
.logo-word{font-size:18px;font-weight:900;color:var(--text);letter-spacing:-.4px;}
.logo-word span{color:var(--blue-lt);}
.nav-links{display:flex;align-items:stretch;gap:32px;}
.nav-links a{display:flex;align-items:center;position:relative;font-size:13px;font-weight:600;color:var(--text2);text-decoration:none;transition:color .2s;}
.nav-links a:hover{color:var(--text);}
.nav-links a.active::after{content:'';position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--blue-lt);}
.nav-ctas{display:flex;align-items:center;gap:10px;}
.btn{display:inline-flex;align-items:center;gap:6px;padding:9px 18px;border-radius:8px;font-size:13px;font-weight:700;cursor:pointer;font-family:'Manrope',sans-serif;text-decoration:none;transition:all .2s;border:none;}
.btn-ghost{background:transparent;border:1px solid var(--border2);color:var(--text2);}
.btn-ghost:hover{border-color:var(--blue-lt);color:var(--blue-lt);}
.btn-primary{background:var(--blue);color:#fff;}
.btn-primary:hover{background:var(--blue-lt);transform:translateY(-1px);box-shadow:0 8px 24px rgba(37,99,235,.35);}
.btn:disabled{opacity:.65;cursor:not-allowed;transform:none;box-shadow:none;}
.btn:disabled:hover{transform:none;box-shadow:none;}
.btn-lg{padding:14px 28px;font-size:14px;border-radius:10px;}

/* HERO */
.hero{min-height:100vh;display:flex;align-items:center;position:relative;overflow:hidden;padding:120px 6% 80px;}
.hero::before{content:'';position:absolute;inset:0;background-image:linear-gradient(var(--border) 1px,transparent 1px),linear-gradient(90deg,var(--border) 1px,transparent 1px);background-size:60px 60px;opacity:.35;}
.orb{position:absolute;border-radius:50%;filter:blur(80px);pointer-events:none;}
.orb-1{width:600px;height:600px;background:radial-gradient(circle,rgba(37,99,235,.18),transparent 70%);top:-100px;right:-100px;}
.orb-2{width:400px;height:400px;background:radial-gradient(circle,rgba(16,185,129,.1),transparent 70%);bottom:-50px;left:10%;}
.orb-3{width:300px;height:300px;background:radial-gradient(circle,rgba(139,92,246,.1),transparent 70%);top:40%;left:40%;}
.hero-inner{position:relative;z-index:2;max-width:1200px;margin:0 auto;width:100%;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;}
.hero-badge{display:inline-flex;align-items:center;gap:8px;background:var(--blue-dim);border:1px solid rgba(59,130,246,.25);border-radius:20px;padding:6px 14px;font-size:11px;font-weight:700;color:var(--blue-lt);letter-spacing:.5px;text-transform:uppercase;margin-bottom:24px;}
.badge-dot{width:6px;height:6px;border-radius:50%;background:var(--green);animation:pulse 2s infinite;}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1);}50%{opacity:.5;transform:scale(1.3);}}
h1{font-size:clamp(36px,4vw,56px);font-weight:900;line-height:1.08;letter-spacing:-2px;color:var(--text);margin-bottom:20px;}
h1 .accent{color:var(--blue-lt);}
h1 .dim{color:var(--text3);}
.hero-sub{font-size:16px;color:var(--text2);line-height:1.7;max-width:480px;margin-bottom:36px;}
.hero-ctas{display:flex;align-items:center;gap:12px;flex-wrap:wrap;}
.hero-note{font-size:11px;color:var(--text3);margin-top:14px;}
.hero-note span{color:var(--green);}
.hero-stats{display:flex;gap:28px;margin-top:44px;padding-top:32px;border-top:1px solid var(--border);flex-wrap:wrap;}
.stat{display:flex;flex-direction:column;}
.stat-val{font-size:26px;font-weight:900;color:var(--text);letter-spacing:-1px;line-height:1;}
.stat-lbl{font-size:10px;color:var(--text3);font-weight:600;margin-top:4px;text-transform:uppercase;letter-spacing:.5px;}
.up{color:var(--green);}

/* Dashboard visual */
.hero-visual{position:relative;}
.db-preview{background:var(--surface);border:1px solid var(--border);border-radius:16px;overflow:hidden;box-shadow:0 40px 80px rgba(0,0,0,.6);transform:perspective(1000px) rotateY(-6deg) rotateX(3deg);transition:transform .4s ease;}
.db-preview:hover{transform:perspective(1000px) rotateY(-2deg) rotateX(1deg);}
.db-bar{height:36px;background:var(--surface2);border-bottom:1px solid var(--border);display:flex;align-items:center;padding:0 14px;gap:6px;}
.db-dot{width:8px;height:8px;border-radius:50%;}
.db-lbl{font-size:9px;font-weight:700;color:var(--text3);margin-left:8px;letter-spacing:1px;}
.db-body{padding:14px;display:flex;flex-direction:column;gap:9px;}
.db-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;}
.db-kpi{background:var(--surface2);border:1px solid var(--border);border-radius:8px;padding:10px;position:relative;overflow:hidden;}
.db-kpi::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;}
.db-kpi.kbl::before{background:var(--blue);}
.db-kpi.kgr::before{background:var(--green);}
.db-kpi.krd::before{background:var(--red);}
.db-kpi.kam::before{background:var(--amber);}
.db-kl{font-size:7px;font-weight:700;color:var(--text3);text-transform:uppercase;letter-spacing:1px;}
.db-kv{font-size:16px;font-weight:900;color:var(--text);margin:3px 0 2px;letter-spacing:-.5px;}
.db-ks{font-size:7px;}
.db-chart{background:var(--surface2);border:1px solid var(--border);border-radius:8px;padding:10px;height:85px;position:relative;overflow:hidden;}
.db-ct{font-size:7.5px;font-weight:700;color:var(--text3);margin-bottom:6px;text-transform:uppercase;letter-spacing:1px;}
.db-tbl{background:var(--surface2);border:1px solid var(--border);border-radius:8px;overflow:hidden;}
.db-th-row{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;padding:7px 12px;border-bottom:1px solid var(--border);}
.db-th{font-size:7px;font-weight:700;color:var(--text3);text-transform:uppercase;letter-spacing:1px;}
.db-tr{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;padding:7px 12px;border-bottom:1px solid var(--border);align-items:center;}
.db-tr:last-child{border-bottom:none;}
.db-mn{font-size:8.5px;font-weight:600;color:var(--text);}
.db-sc{font-size:8.5px;font-weight:800;}
.db-pl{display:inline-flex;padding:1px 6px;border-radius:10px;font-size:7px;font-weight:800;}
.fc{position:absolute;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:10px 14px;box-shadow:0 20px 40px rgba(0,0,0,.5);}
.fc1{bottom:-16px;left:-28px;animation:fl1 4s ease-in-out infinite;}
.fc2{top:40px;right:-32px;animation:fl2 5s ease-in-out infinite;}
@keyframes fl1{0%,100%{transform:translateY(0);}50%{transform:translateY(-8px);}}
@keyframes fl2{0%,100%{transform:translateY(0);}50%{transform:translateY(6px);}}
.fc-lbl{font-size:8px;color:var(--text3);font-weight:600;margin-bottom:2px;}
.fc-val{font-size:16px;font-weight:900;letter-spacing:-.5px;}
.fc-sub{font-size:8px;color:var(--text3);margin-top:2px;}

/* SECTIONS */
section{padding:100px 6%;}
.si{max-width:1200px;margin:0 auto;}
.slabel{display:inline-flex;align-items:center;gap:6px;font-size:10px;font-weight:800;letter-spacing:3px;text-transform:uppercase;color:var(--blue-lt);margin-bottom:16px;}
.slabel::before{content:'';width:20px;height:2px;background:var(--blue-lt);}
h2{font-size:clamp(28px,3.5vw,44px);font-weight:900;letter-spacing:-1.5px;line-height:1.1;margin-bottom:16px;}
.ssub{font-size:15px;color:var(--text2);max-width:560px;line-height:1.7;}

/* PROBLEM STRIP */
.pstrip{background:var(--surface);border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:56px 6%;}
.pinner{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--border);}
.pitem{background:var(--surface);padding:32px 28px;}
.pnum{font-size:40px;font-weight:900;letter-spacing:-2px;line-height:1;margin-bottom:8px;}
.plbl{font-size:12px;font-weight:600;color:var(--text2);line-height:1.5;}
.pnote{font-size:10px;color:var(--text3);margin-top:6px;}

/* FEATURES */
.feat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:transparent;border:none;border-radius:16px;overflow:hidden;margin-top:56px;}
.feat-card{background:var(--surface);padding:32px 28px;transition:background .2s;margin: 10px;border-radius: 10px;}
.feat-card:hover{background:var(--surface2);}
.fi{width:44px;height:44px;border-radius:10px;display:flex;align-items:center;justify-content:center;margin-bottom:18px;}
.fi svg{width:20px;height:20px;}
.ft{font-size:15px;font-weight:800;color:var(--text);margin-bottom:10px;letter-spacing:-.3px;}
.fd{font-size:12.5px;color:var(--text2);line-height:1.65;}
.ftag{display:inline-flex;margin-top:14px;padding:3px 10px;border-radius:20px;font-size:9.5px;font-weight:700;}

/* HOW IT WORKS */
.how-wrap{background:var(--surface);border:1px solid var(--border);border-radius:16px;margin-top:56px;overflow:hidden;}
.how-steps{display:grid;grid-template-columns:repeat(3,1fr);}
.how-step{padding:44px 36px;position:relative;}
.how-step:not(:last-child)::after{content:'';position:absolute;right:0;top:20%;bottom:20%;width:1px;background:var(--border);}
.snum{font-size:56px;font-weight:900;color:var(--blue-lt);line-height:1;margin-bottom:16px;letter-spacing:-3px;}
.stitle{font-size:16px;font-weight:800;color:var(--text);margin-bottom:10px;letter-spacing:-.3px;}
.sdesc{font-size:12.5px;color:var(--text2);line-height:1.7;}
.how-bot{border-top:1px solid var(--border);padding:28px 36px;display:flex;align-items:center;justify-content:space-between;gap:20px;background:rgba(37,99,235,.04);}
.how-bot-t{font-size:13px;color:var(--text2);max-width:500px;line-height:1.6;}
.how-bot-t strong{color:var(--blue-lt);}

/* FAQ */
.faq-list{margin-top:48px;display:flex;flex-direction:column;gap:1px;background:var(--border);border:1px solid var(--border);border-radius:16px;overflow:hidden;}
.faq-item{background:var(--surface);}
.faq-q{width:100%;display:flex;align-items:center;justify-content:space-between;padding:22px 28px;font-size:14px;font-weight:700;color:var(--text);cursor:pointer;border:none;background:transparent;text-align:left;gap:16px;font-family:'Manrope',sans-serif;transition:background .2s;}
.faq-q-text{display:block;flex:1;text-align:left;}
.faq-q:hover{background:var(--surface2);}
.faq-ico{width:24px;height:24px;border-radius:50%;background:var(--surface2);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s;}
.faq-ico svg{transition:transform .25s;}
.faq-item.open .faq-ico{background:var(--blue-dim);border-color:rgba(59,130,246,.3);}
.faq-item.open .faq-ico svg{transform:rotate(45deg);}
.faq-a{max-height:0;overflow:hidden;transition:max-height .35s ease;}
.faq-item.open .faq-a{max-height:300px;}
.faq-ai{padding:22px 28px;font-size:13px;color:var(--text2);line-height:1.75;border-top:1px solid var(--border);}

/* DEMO */
.demo-inner{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;}
.demo-form{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:36px;}
.dft{font-size:18px;font-weight:800;color:var(--text);margin-bottom:6px;letter-spacing:-.3px;}
.dfs{font-size:12px;color:var(--text2);margin-bottom:28px;}
.fg{margin-bottom:16px;}
.fg label{display:block;font-size:11px;font-weight:700;color:var(--text2);margin-bottom:6px;letter-spacing:.5px;text-transform:uppercase;}
.fg input,.fg select,.fg textarea{width:100%;background:var(--surface2);border:1px solid var(--border);border-radius:8px;padding:11px 14px;font-size:13px;color:var(--text);font-family:'Manrope',sans-serif;outline:none;transition:border-color .2s;}
.fg input:focus,.fg select:focus{border-color:var(--blue-lt);}
.fg input::placeholder{color:var(--text3);}
.fg select{appearance:none;cursor:pointer;}
.fg select option{background:var(--surface2);}
.field-invalid{border-color:var(--red)!important;}
.field-error{font-size:11px;color:var(--red);margin-top:6px;}
.form-alert{background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.35);border-radius:8px;padding:10px 12px;font-size:12px;color:#fecaca;margin-bottom:14px;}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.fsub{width:100%;margin-top:8px;padding:13px;font-size:14px;border-radius:9px;justify-content:center;}
.fnote{font-size:10.5px;color:var(--text2);text-align:center;margin-top:10px;}
.succ{display:none;text-align:center;padding:24px;}
.demo-bullets{margin-top:32px;display:flex;flex-direction:column;gap:14px;}
.dbullet{display:flex;align-items:flex-start;gap:12px;}
.bico{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px;}
.bico svg{width:15px;height:15px;}
.bt{font-size:13px;font-weight:700;color:var(--text);margin-bottom:2px;}
.bd{font-size:11.5px;color:var(--text2);line-height:1.55;}

/* FOOTER */
footer{background:var(--surface);border-top:1px solid var(--border);padding:48px 6% 32px;}
.footer-in{max-width:1200px;margin:0 auto;}
.ftop{display:flex;justify-content:space-between;align-items:flex-start;gap:40px;margin-bottom:40px;flex-wrap:wrap;}
.fcols{display:flex;gap:48px;flex-wrap:wrap;}
.fcol h4{font-size:10px;font-weight:800;letter-spacing:2px;text-transform:uppercase;color:var(--text3);margin-bottom:14px;}
.fcol a{display:block;font-size:12.5px;color:var(--text2);text-decoration:none;margin-bottom:8px;transition:color .2s;}
.fcol a:hover{color:var(--blue-lt);}
.fbot{border-top:1px solid var(--border);padding-top:24px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;}
.fcopy{font-size:11px;color:var(--text3);}

/* ANIMATIONS */
.fi-anim{opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .6s ease;}
.fi-anim.vis{opacity:1;transform:translateY(0);}
.d1{transition-delay:.1s;}.d2{transition-delay:.2s;}.d3{transition-delay:.3s;}

/* RESPONSIVE */
@media(max-width:900px){
  .hero-inner,.demo-inner{grid-template-columns:1fr;gap:48px;}
  .hero-visual{display:none;}
  .pinner,.how-steps{grid-template-columns:1fr 1fr;}
  .feat-grid{grid-template-columns:1fr 1fr;}
  .ftop{flex-direction:column;}
}
@media(max-width:600px){
  .pinner,.how-steps,.feat-grid{grid-template-columns:1fr;}
  .hero-stats{gap:20px;}
  .frow{grid-template-columns:1fr;}
  .nav-links{display:none;}
}
