/* ================================================================
   THOJYY WARE — Premium Dark Purple Theme v2.0
   ================================================================ */
:root {
  --bg: #07070d;
  --bg2: #0e0e18;
  --bg3: #141422;
  --bg4: #1a1a2e;
  --border: rgba(139,92,246,0.12);
  --border2: rgba(139,92,246,0.3);
  --text: #eeeef5;
  --text2: #8e8ea8;
  --text3: #55556e;
  --purple: #8b5cf6;
  --purple2: #a78bfa;
  --purple3: #6d28d9;
  --purple-g: rgba(139,92,246,0.25);
  --green: #34d399;
  --red: #f87171;
  --yellow: #fbbf24;
  --font: 'Inter',system-ui,sans-serif;
  --mono: 'JetBrains Mono',monospace;
  --r: 14px;
  --r2: 20px;
  --t: all .35s cubic-bezier(.4,0,.2,1);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased}
body{font-family:var(--font);background:var(--bg);color:var(--text);overflow-x:hidden;line-height:1.6;cursor:none}
::selection{background:var(--purple);color:#fff}
a{text-decoration:none;color:inherit}
img{user-select:none;-webkit-user-drag:none}

/* ---- Cursor ---- */
.cursor{position:fixed;width:8px;height:8px;background:var(--purple);border-radius:50%;pointer-events:none;z-index:9999;transition:transform .1s;mix-blend-mode:screen}
.cursor-trail{position:fixed;width:32px;height:32px;border:1px solid var(--purple);border-radius:50%;pointer-events:none;z-index:9998;transition:transform .15s ease-out,width .3s,height .3s;transform:translate(-50%,-50%)}
body:hover .cursor-trail{opacity:1}

/* ---- Particles ---- */
#particles{position:fixed;inset:0;z-index:0;pointer-events:none}

/* ---- Animated BG ---- */
.bg-grid{position:fixed;inset:0;z-index:0;
  background-image:linear-gradient(rgba(139,92,246,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(139,92,246,.03) 1px,transparent 1px);
  background-size:80px 80px;pointer-events:none}
.bg-glow{position:fixed;border-radius:50%;filter:blur(150px);pointer-events:none;z-index:0;opacity:.6}
.bg-glow-1{width:700px;height:700px;background:rgba(139,92,246,.07);top:-300px;right:-200px;animation:gfloat 25s ease-in-out infinite}
.bg-glow-2{width:500px;height:500px;background:rgba(109,40,217,.05);bottom:10%;left:-200px;animation:gfloat 30s ease-in-out infinite reverse}
.bg-glow-3{width:400px;height:400px;background:rgba(167,139,250,.04);top:50%;right:10%;animation:gfloat 20s ease-in-out infinite}
.bg-orb{position:fixed;width:2px;height:2px;background:var(--purple);border-radius:50%;box-shadow:0 0 20px 10px var(--purple-g);top:30%;left:50%;animation:orb-move 40s linear infinite;pointer-events:none;z-index:0}
@keyframes gfloat{0%,100%{transform:translate(0,0)}33%{transform:translate(40px,-40px)}66%{transform:translate(-30px,30px)}}
@keyframes orb-move{0%{transform:translate(0,0)}25%{transform:translate(300px,-200px)}50%{transform:translate(-200px,100px)}75%{transform:translate(100px,300px)}100%{transform:translate(0,0)}}

/* ---- Nav ---- */
nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:18px 0;
  background:rgba(7,7,13,.6);backdrop-filter:blur(24px) saturate(1.8);
  border-bottom:1px solid transparent;transition:var(--t)}
nav.scrolled{padding:12px 0;border-bottom-color:var(--border)}
.nav-container{max-width:1200px;margin:0 auto;padding:0 24px;display:flex;align-items:center;justify-content:space-between}
.nav-logo{display:flex;align-items:center;gap:8px;font-weight:800;font-size:18px;position:relative}
.logo-glow{position:absolute;width:40px;height:40px;background:var(--purple);filter:blur(20px);opacity:.3;left:-10px}
.logo-icon{font-size:22px;position:relative;z-index:1}
.logo-text{color:var(--text);letter-spacing:1.5px;position:relative;z-index:1}
.logo-accent{color:var(--purple)}
.nav-links{display:flex;gap:36px}
.nav-links a{color:var(--text2);font-weight:500;font-size:14px;letter-spacing:.5px;transition:var(--t);position:relative}
.nav-links a:hover{color:var(--text)}
.nav-links a::after{content:'';position:absolute;bottom:-6px;left:0;width:0;height:2px;background:linear-gradient(90deg,var(--purple),var(--purple2));transition:var(--t);border-radius:1px}
.nav-links a:hover::after{width:100%}
.nav-right{display:flex;align-items:center;gap:16px}
.status-dot{width:8px;height:8px;background:var(--green);border-radius:50%;animation:pulse 2s infinite}
.status-text{font-size:12px;color:var(--green);font-weight:600;letter-spacing:.5px}
@keyframes pulse{0%,100%{opacity:1;box-shadow:0 0 0 0 rgba(52,211,153,.4)}50%{opacity:.8;box-shadow:0 0 0 6px rgba(52,211,153,0)}}
.nav-cta{display:flex;align-items:center;gap:6px;padding:8px 20px;border-radius:8px;
  background:linear-gradient(135deg,var(--purple),var(--purple3));color:#fff;font-weight:600;font-size:13px;transition:var(--t)}
.nav-cta:hover{transform:translateY(-2px);box-shadow:0 8px 24px var(--purple-g)}
.hamburger{display:none;background:none;border:none;cursor:pointer;flex-direction:column;gap:5px;padding:4px}
.hamburger span{width:22px;height:2px;background:var(--text);transition:var(--t)}

/* ---- Buttons ---- */
.btn{display:inline-flex;align-items:center;gap:8px;padding:13px 28px;border-radius:10px;font-weight:600;font-size:14px;transition:var(--t);cursor:pointer;border:none;font-family:var(--font);letter-spacing:.3px;position:relative;overflow:hidden}
.btn-primary{background:linear-gradient(135deg,var(--purple),var(--purple3));color:#fff}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 30px var(--purple-g)}
.btn-glow::before{content:'';position:absolute;inset:-2px;background:linear-gradient(135deg,var(--purple2),var(--purple),#e879f9,var(--purple));border-radius:12px;z-index:-1;opacity:0;transition:var(--t);filter:blur(8px)}
.btn-glow:hover::before{opacity:.6}
.btn-ghost{background:transparent;color:var(--text);border:1px solid var(--border)}
.btn-ghost:hover{border-color:var(--purple);color:var(--purple);background:rgba(139,92,246,.05)}
.btn-full{width:100%;justify-content:center}
.btn-lg{padding:16px 36px;font-size:16px}
.btn-danger{background:var(--red);color:#fff}

/* ---- Hero ---- */
#hero{position:relative;z-index:1;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:100px 24px 40px}
.hero-container{max-width:1200px;width:100%;display:flex;align-items:center;gap:60px}
.hero-content{flex:1}
.hero-badge{display:inline-flex;align-items:center;gap:8px;padding:6px 18px;border-radius:100px;font-size:11px;font-weight:700;letter-spacing:2.5px;
  background:rgba(139,92,246,.08);border:1px solid var(--border);color:var(--purple2);margin-bottom:28px}
.badge-dot{width:6px;height:6px;background:var(--green);border-radius:50%;animation:pulse 2s infinite}
.hero-title{font-size:clamp(42px,6vw,76px);font-weight:900;line-height:1.05;margin-bottom:24px;letter-spacing:-1px}
.hero-line{display:block}
.gradient-text{background:linear-gradient(135deg,var(--purple2),var(--purple),#e879f9,var(--purple2));background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;animation:shimmer 3s linear infinite}
@keyframes shimmer{to{background-position:200% center}}
.text-purple{color:var(--purple2)}
.hero-desc{font-size:17px;color:var(--text2);max-width:480px;margin-bottom:36px;line-height:1.8}
.hero-actions{display:flex;gap:14px;margin-bottom:48px}
.hero-stats{display:flex;align-items:center;gap:32px;padding:24px 0;border-top:1px solid var(--border)}
.stat-num{font-size:32px;font-weight:900;background:linear-gradient(135deg,var(--purple2),var(--purple));-webkit-background-clip:text;-webkit-text-fill-color:transparent;display:block}
.stat-label{font-size:12px;color:var(--text3);font-weight:500;letter-spacing:.5px}
.stat-divider{width:1px;height:40px;background:var(--border)}

/* ---- Animations ---- */
.animate-in{opacity:0;transform:translateY(30px);animation:fadeUp .8s forwards}
.d1{animation-delay:.15s}.d2{animation-delay:.3s}.d3{animation-delay:.45s}.d4{animation-delay:.6s}
@keyframes fadeUp{to{opacity:1;transform:translateY(0)}}
.reveal{opacity:0;transform:translateY(30px);transition:opacity .7s ease,transform .7s ease}
.reveal.visible{opacity:1;transform:translateY(0)}

/* ---- Scroll Indicator ---- */
.scroll-indicator{position:absolute;bottom:30px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;animation:bobble 2s ease-in-out infinite}
.scroll-mouse{width:24px;height:38px;border:2px solid var(--text3);border-radius:12px;display:flex;justify-content:center;padding-top:8px}
.scroll-wheel{width:3px;height:8px;background:var(--purple);border-radius:2px;animation:scroll-anim 1.5s infinite}
@keyframes scroll-anim{0%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(12px)}}
@keyframes bobble{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(-6px)}}
.scroll-indicator span{font-size:10px;color:var(--text3);letter-spacing:2px;font-weight:500}

/* ---- Terminal ---- */
.hero-visual{flex:1;display:flex;justify-content:center}
.terminal-wrapper{position:relative;width:100%;max-width:500px}
.terminal-glow{position:absolute;inset:-20px;background:radial-gradient(circle,var(--purple-g) 0%,transparent 70%);filter:blur(40px);z-index:-1;animation:termPulse 4s ease-in-out infinite}
@keyframes termPulse{0%,100%{opacity:.4}50%{opacity:.7}}
.terminal{width:100%;background:var(--bg2);border:1px solid var(--border2);border-radius:var(--r2);overflow:hidden;box-shadow:0 24px 80px rgba(0,0,0,.6)}
.terminal-bar{padding:14px 16px;display:flex;align-items:center;justify-content:space-between;background:var(--bg3);border-bottom:1px solid var(--border)}
.terminal-dots{display:flex;gap:7px}
.dot{width:12px;height:12px;border-radius:50%}
.dot.red{background:#f87171}.dot.yellow{background:#fbbf24}.dot.green{background:#34d399}
.terminal-title{font-size:11px;color:var(--text3);font-family:var(--mono)}
.terminal-actions{display:flex;gap:12px;font-size:11px;color:var(--text3)}
.terminal-body{padding:20px;font-family:var(--mono);font-size:12px;min-height:280px}
.term-line{margin-bottom:3px;opacity:0;animation:termIn .4s forwards;white-space:pre}
.term-line:nth-child(1){animation-delay:.3s}.term-line:nth-child(2){animation-delay:.4s}
.term-line:nth-child(3){animation-delay:.5s}.term-line:nth-child(4){animation-delay:.6s}
.term-line:nth-child(5){animation-delay:.7s}.term-line:nth-child(6){animation-delay:.9s}
.term-line:nth-child(7){animation-delay:1.0s}.term-line:nth-child(8){animation-delay:1.1s}
.delay-1{animation-delay:1.8s !important}.delay-2{animation-delay:2.6s !important}
.delay-3{animation-delay:3.4s !important}.delay-4{animation-delay:4.0s !important}
@keyframes termIn{to{opacity:1}}
.t-purple{color:var(--purple2)}.t-green{color:var(--green)}.t-white{color:var(--text)}.t-dim{color:var(--text3)}
.blink-text{animation:blk 1s step-end infinite}
@keyframes blk{50%{opacity:0}}

/* ---- Sections ---- */
section{position:relative;z-index:1;padding:120px 0}
.section-container{max-width:1200px;margin:0 auto;padding:0 24px}
.section-header{text-align:center;margin-bottom:72px}
.section-tag{font-size:11px;font-weight:700;letter-spacing:3px;color:var(--purple);margin-bottom:16px;display:block}
.section-header h2{font-size:clamp(32px,4vw,48px);font-weight:800;margin-bottom:16px}
.section-header p{font-size:16px;color:var(--text2);max-width:460px;margin:0 auto}

/* ---- Features ---- */
.features-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}
.feature-card{background:var(--bg3);border:1px solid var(--border);border-radius:var(--r);padding:28px;transition:var(--t);position:relative;overflow:hidden}
.feature-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--purple),transparent);opacity:0;transition:var(--t)}
.feature-card:hover{border-color:var(--border2);transform:translateY(-6px);box-shadow:0 16px 48px rgba(139,92,246,.08)}
.feature-card:hover::before{opacity:1}
.feature-icon-wrap{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:rgba(139,92,246,.08);border-radius:12px;margin-bottom:16px}
.feature-icon{font-size:24px}
.feature-card h3{font-size:17px;font-weight:700;margin-bottom:8px}
.feature-card p{font-size:13px;color:var(--text2);line-height:1.7}
.feature-tag{display:inline-block;margin-top:12px;padding:3px 10px;border-radius:6px;font-size:10px;font-weight:600;letter-spacing:1px;background:rgba(139,92,246,.08);color:var(--purple2)}

/* ---- Why ---- */
.why-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.why-card{background:var(--bg3);border:1px solid var(--border);border-radius:var(--r);padding:32px;transition:var(--t)}
.why-card:hover{border-color:var(--border2);transform:translateY(-4px)}
.why-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}
.why-number{font-size:42px;font-weight:900;color:rgba(139,92,246,.12);line-height:1}
.why-icon{font-size:28px}
.why-card h3{font-size:19px;font-weight:700;margin-bottom:8px}
.why-card p{color:var(--text2);font-size:14px;margin-bottom:16px}
.why-bar{width:100%;height:4px;background:var(--bg);border-radius:2px;overflow:hidden;margin-bottom:6px}
.why-bar-fill{height:100%;background:linear-gradient(90deg,var(--purple),var(--purple2));border-radius:2px;transition:width 1.5s ease}
.why-bar-label{font-size:11px;color:var(--text3)}

/* ---- Showcase ---- */
.showcase-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.showcase-card{background:var(--bg3);border:1px solid var(--border);border-radius:var(--r);overflow:hidden;transition:var(--t)}
.showcase-card:hover{border-color:var(--border2);transform:translateY(-6px)}
.showcase-preview{aspect-ratio:16/10;background:var(--bg2);display:flex;align-items:center;justify-content:center}
.showcase-placeholder{text-align:center;color:var(--text3)}
.showcase-placeholder span{font-size:48px;display:block;margin-bottom:8px}
.showcase-placeholder p{font-size:12px;letter-spacing:1px}
.showcase-card h4{padding:16px 20px 4px;font-size:15px}
.showcase-card>p{padding:0 20px 16px;font-size:13px;color:var(--text2)}

/* ---- Pricing ---- */
.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:start}
.price-card{background:var(--bg3);border:1px solid var(--border);border-radius:var(--r2);padding:36px;text-align:center;position:relative;transition:var(--t)}
.price-card:hover{border-color:var(--border2);transform:translateY(-6px)}
.price-card.featured{border-color:var(--purple);background:linear-gradient(180deg,rgba(139,92,246,.06) 0%,var(--bg3) 100%);transform:scale(1.06);box-shadow:0 24px 60px rgba(139,92,246,.12)}
.price-card.featured:hover{transform:scale(1.06) translateY(-6px)}
.price-badge{position:absolute;top:-14px;left:50%;transform:translateX(-50%);padding:5px 20px;border-radius:100px;background:linear-gradient(135deg,var(--purple),var(--purple3));color:#fff;font-size:11px;font-weight:700;letter-spacing:1px;white-space:nowrap}
.price-header{margin-bottom:24px}
.price-name{font-size:16px;font-weight:600;color:var(--text2);margin-bottom:8px}
.price-amount{font-size:52px;font-weight:900}
.price-period{font-size:15px;color:var(--text3);font-weight:400}
.price-features{list-style:none;margin-bottom:24px;text-align:left}
.price-features li{padding:10px 0;font-size:14px;color:var(--text2);border-bottom:1px solid rgba(255,255,255,.03);display:flex;align-items:center;gap:10px}
.check{color:var(--green);font-weight:700;font-size:13px}
.cross{color:var(--text3);font-size:13px}

/* ---- FAQ ---- */
.faq-list{max-width:700px;margin:0 auto}
.faq-item{border:1px solid var(--border);border-radius:var(--r);margin-bottom:10px;overflow:hidden;transition:var(--t)}
.faq-item:hover{border-color:var(--border2)}
.faq-q{width:100%;padding:18px 24px;display:flex;justify-content:space-between;align-items:center;background:var(--bg3);border:none;color:var(--text);font-size:15px;font-weight:600;cursor:pointer;font-family:var(--font);transition:var(--t)}
.faq-q:hover{background:var(--bg4)}
.faq-icon{color:var(--purple);font-size:18px;font-weight:300;transition:var(--t)}
.faq-item.open .faq-icon{transform:rotate(45deg)}
.faq-a{max-height:0;overflow:hidden;transition:max-height .4s ease}
.faq-item.open .faq-a{max-height:200px}
.faq-a p{padding:0 24px 18px;font-size:14px;color:var(--text2);line-height:1.8}

/* ---- CTA ---- */
.cta-box{position:relative;text-align:center;padding:80px 40px;background:var(--bg3);border:1px solid var(--border2);border-radius:var(--r2);overflow:hidden}
.cta-glow{position:absolute;top:50%;left:50%;width:400px;height:400px;background:radial-gradient(circle,var(--purple-g),transparent 70%);transform:translate(-50%,-50%);filter:blur(60px);pointer-events:none}
.cta-box h2{font-size:36px;font-weight:800;margin-bottom:12px;position:relative}
.cta-box p{color:var(--text2);margin-bottom:28px;position:relative}
.cta-box .btn{position:relative}

/* ---- Footer ---- */
footer{position:relative;z-index:1;border-top:1px solid var(--border);padding:60px 0 30px}
.footer-container{max-width:1200px;margin:0 auto;padding:0 24px}
.footer-top{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;margin-bottom:40px}
.footer-brand p{color:var(--text3);font-size:13px;margin-top:10px}
.footer-col h4{font-size:13px;font-weight:700;letter-spacing:1px;color:var(--text2);margin-bottom:14px}
.footer-col a{display:block;font-size:13px;color:var(--text3);margin-bottom:8px;transition:var(--t)}
.footer-col a:hover{color:var(--purple)}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:24px;border-top:1px solid var(--border)}
.footer-bottom span{font-size:12px;color:var(--text3)}
.footer-status{display:flex;align-items:center;gap:6px}

/* ---- Responsive ---- */
@media(max-width:900px){
  .hero-container{flex-direction:column;gap:40px}
  .hero-visual{width:100%}.terminal-wrapper{max-width:100%}
  .why-grid,.pricing-grid,.showcase-grid{grid-template-columns:1fr}
  .price-card.featured{transform:none}
  .price-card.featured:hover{transform:translateY(-6px)}
  .footer-top{grid-template-columns:1fr 1fr}
  body{cursor:auto}
  .cursor,.cursor-trail{display:none}
}
@media(max-width:680px){
  .nav-links{display:none}
  .hamburger{display:flex}
  .nav-right .status-dot,.nav-right .status-text{display:none}
  .hero-stats{flex-wrap:wrap;gap:16px}
  .stat-divider{display:none}
  .footer-top{grid-template-columns:1fr}
}

/* ---- Scrollbar ---- */
::-webkit-scrollbar{width:5px}
::-webkit-scrollbar-track{background:var(--bg)}
::-webkit-scrollbar-thumb{background:var(--purple3);border-radius:3px}
