:root {
  --bg:#0a0a0f; --bg0:#0d0d13; --bg1:#111118; --bg2:#181821; --bg3:#1e1e2a; --bg4:#252535; --bg5:#2d2d42;
  --text:#f5f5ff; --text1:#e0e0f0; --text2:#a0a0b8; --text3:#7a7a96;
  --accent:#7c5cff; --accent2:#00d2ff; --accent-soft:rgba(124,92,255,0.18); --accent2-soft:rgba(0,210,255,0.14);
  --danger:#ff4d6d; --success:#42f2a2; --warn:#ffcc42;
  --glass:rgba(255,255,255,0.04); --glass2:rgba(255,255,255,0.08); --border:rgba(255,255,255,0.08);
  --radius:18px; --shadow:0 20px 50px rgba(0,0,0,0.45); --shadow-sm:0 8px 24px rgba(0,0,0,0.30);
  --font:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
  --transition:0.18s ease;
}
* { box-sizing:border-box; margin:0; padding:0; -webkit-tap-highlight-color:transparent; }
html { scroll-behavior:smooth; }
body { background:var(--bg); color:var(--text); font-family:var(--font); font-size:15px; line-height:1.5; overflow-x:hidden; -webkit-font-smoothing:antialiased; }
#stars { position:fixed; inset:0; z-index:0; pointer-events:none; background:radial-gradient(1200px 800px at 10% 0%, var(--accent-soft) 0%, transparent 60%), radial-gradient(900px 650px at 90% 100%, var(--accent2-soft) 0%, transparent 60%), var(--bg); }
a { text-decoration:none; color:inherit; }
button { border:none; cursor:pointer; font-family:inherit; }
.glass { background:var(--glass); backdrop-filter:blur(22px); -webkit-backdrop-filter:blur(22px); border:1px solid var(--border); }

.topnav { position:fixed; top:0; left:0; right:0; z-index:50; height:72px; padding:0 32px; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--border); }
.brand img { display:block; height:40px; width:auto; }
.nav-links { display:flex; align-items:center; gap:28px; font-weight:600; font-size:14px; color:var(--text2); }
.nav-links a:hover { color:var(--text); }
.btn-pill { padding:10px 22px; border-radius:999px; font-weight:700; font-size:14px; transition:var(--transition); }
.btn-primary { background:linear-gradient(135deg,var(--accent),var(--accent2)); color:#fff; box-shadow:0 6px 18px rgba(124,92,255,0.22); }
.btn-primary:hover { transform:translateY(-1px); filter:brightness(1.08); }
.menu-toggle { display:none; background:transparent; color:var(--text); font-size:22px; }

.hero { position:relative; z-index:1; min-height:100vh; padding:140px 32px 80px; display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center; max-width:1440px; margin:0 auto; }
.badge { display:inline-flex; padding:6px 14px; border-radius:999px; background:var(--accent-soft); color:var(--accent2); border:1px solid rgba(0,210,255,0.25); font-size:12px; font-weight:700; margin-bottom:22px; }
.hero h1 { font-size:clamp(38px,6vw,72px); font-weight:800; line-height:1.05; letter-spacing:-1.5px; margin-bottom:20px; }
.gradient { background:linear-gradient(135deg,var(--accent),var(--accent2)); -webkit-background-clip:text; background-clip:text; color:transparent; }
.hero-sub { color:var(--text2); font-size:clamp(16px,1.4vw,20px); max-width:560px; margin-bottom:32px; }
.hero-actions { display:flex; gap:16px; margin-bottom:44px; }
.btn-main { padding:15px 32px; border-radius:var(--radius); background:linear-gradient(135deg,var(--accent),var(--accent2)); color:#fff; font-weight:700; font-size:16px; box-shadow:0 8px 24px rgba(124,92,255,0.25); transition:var(--transition); }
.btn-main:hover { transform:translateY(-2px); filter:brightness(1.08); }
.btn-ghost { padding:15px 32px; border-radius:var(--radius); background:var(--bg2); color:var(--text); font-weight:700; font-size:16px; border:1px solid var(--border); transition:var(--transition); }
.btn-ghost:hover { background:var(--bg3); border-color:rgba(255,255,255,0.15); }
.stats-row { display:flex; gap:40px; }
.stats-row strong { display:block; font-size:32px; font-weight:800; color:var(--text); }
.stats-row span { color:var(--text3); font-size:13px; font-weight:600; }

.hero-visual { padding:28px; border-radius:var(--radius); box-shadow:var(--shadow); }
.mockup { display:grid; grid-template-columns:64px 180px 1fr; gap:14px; background:var(--bg1); border-radius:16px; padding:18px; min-height:340px; border:1px solid var(--border); }
.mock-servers,.mock-channels,.mock-chat { display:flex; flex-direction:column; gap:10px; }
.mock-servers { align-items:center; }
.m-s,.m-ch,.m-input { background:var(--bg2); border-radius:12px; padding:10px 12px; color:var(--text2); font-size:13px; border:1px solid var(--border); }
.m-s { width:44px; height:44px; display:flex; align-items:center; justify-content:center; font-weight:700; border-radius:50%; transition:var(--transition); }
.m-s.active { background:linear-gradient(135deg,var(--accent),var(--accent2)); color:#fff; border-radius:16px; }
.m-s.add { color:var(--success); font-size:22px; }
.m-cat { color:var(--text3); font-size:10px; font-weight:800; letter-spacing:0.8px; margin:8px 4px 2px; }
.m-ch { cursor:pointer; }
.m-ch.active { background:var(--glass2); color:var(--text); }
.mock-chat { justify-content:flex-end; }
.m-msg { display:flex; gap:8px; font-size:13px; color:var(--text1); margin-bottom:6px; }
.m-msg.me { justify-content:flex-end; }
.m-msg b { color:var(--accent2); }
.m-input { margin-top:8px; color:var(--text3); }

.section { position:relative; z-index:1; padding:90px 32px; max-width:1440px; margin:0 auto; }
.section-title { font-size:clamp(28px,3.4vw,44px); font-weight:800; text-align:center; margin-bottom:50px; letter-spacing:-0.5px; }
.features-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(320px,1fr)); gap:24px; }
.feature { padding:30px; border-radius:var(--radius); transition:var(--transition); }
.feature:hover { transform:translateY(-4px); border-color:rgba(255,255,255,0.15); box-shadow:var(--shadow-sm); }
.feature .icon { font-size:34px; margin-bottom:16px; }
.feature h3 { font-size:20px; margin-bottom:10px; }
.feature p { color:var(--text2); font-size:14px; line-height:1.55; }

.privacy-section { display:flex; justify-content:center; }
.privacy-card { width:100%; max-width:1100px; padding:50px; border-radius:var(--radius); display:grid; grid-template-columns:1.4fr 1fr; gap:60px; align-items:center; }
.privacy-card h2 { font-size:clamp(26px,3vw,40px); margin-bottom:16px; }
.privacy-card p { color:var(--text2); margin-bottom:26px; font-size:16px; }
.checklist { list-style:none; display:flex; flex-direction:column; gap:12px; }
.checklist li { display:flex; align-items:center; gap:10px; color:var(--text1); font-weight:600; }
.checklist li::before { content:'✓'; width:24px; height:24px; border-radius:50%; background:var(--success); color:var(--bg); display:flex; align-items:center; justify-content:center; font-size:13px; }
.privacy-visual { display:flex; align-items:center; justify-content:center; }
.lock-ring { width:180px; height:180px; border-radius:50%; border:3px solid var(--accent); display:flex; align-items:center; justify-content:center; animation:spin 20s linear infinite; box-shadow:0 0 40px rgba(124,92,255,0.25); }
.lock-core { font-size:56px; animation:spin 20s linear infinite reverse; }
@keyframes spin { to { transform:rotate(360deg); } }

.demo-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; margin-bottom:40px; }
.demo-step { padding:34px; border-radius:var(--radius); text-align:center; }
.step-num { width:48px; height:48px; border-radius:50%; background:linear-gradient(135deg,var(--accent),var(--accent2)); color:#fff; display:flex; align-items:center; justify-content:center; font-weight:800; font-size:18px; margin:0 auto 18px; }
.demo-step h3 { margin-bottom:10px; }
.demo-step p { color:var(--text2); font-size:14px; }
.cta-box { padding:44px; border-radius:var(--radius); text-align:center; max-width:720px; margin:0 auto; }
.cta-box h3 { font-size:24px; margin-bottom:18px; }

.footer { position:relative; z-index:1; border-top:1px solid var(--border); padding:46px 32px 26px; background:var(--bg0); }
.footer-inner { max-width:1440px; margin:0 auto; display:flex; justify-content:space-between; align-items:flex-start; gap:32px; }
.footer-tag { color:var(--text3); font-size:13px; margin-top:10px; }
.footer-links { display:flex; gap:26px; font-size:14px; font-weight:600; color:var(--text2); }
.footer-links a:hover { color:var(--text); }
.copyright { max-width:1440px; margin:30px auto 0; color:var(--text3); font-size:12px; text-align:center; }

@media (max-width:980px) {
  .hero { grid-template-columns:1fr; text-align:center; gap:40px; }
  .hero-sub { margin-left:auto; margin-right:auto; }
  .hero-actions { justify-content:center; }
  .stats-row { justify-content:center; }
  .mockup { grid-template-columns:50px 1fr; }
  .mock-chat { display:none; }
  .privacy-card { grid-template-columns:1fr; text-align:center; }
  .checklist { align-items:center; }
}
@media (max-width:760px) {
  .topnav { padding:0 18px; }
  .nav-links { display:none; position:fixed; top:72px; left:0; right:0; background:var(--bg1); flex-direction:column; padding:18px; gap:14px; border-bottom:1px solid var(--border); }
  .nav-links.open { display:flex; }
  .menu-toggle { display:block; }
  .hero { padding:120px 18px 60px; }
  .section { padding:60px 18px; }
  .features-grid { grid-template-columns:1fr; }
  .demo-grid { grid-template-columns:1fr; }
  .footer-inner { flex-direction:column; align-items:center; text-align:center; }
}
