:root{
  --bg:#0a0a13;
  --bg-alt:#0d0d19;
  --panel:#141420;
  --panel-2:#181826;
  --border:#26263a;
  --text:#e9e7f2;
  --text-muted:#8d89a8;
  --accent:#7b6ff0;
  --accent-2:#a89bff;
  --flame1:#ffc861;
  --flame2:#f2a71b;
  --radius:16px;
}
*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent;}
html,body{background:var(--bg);color:var(--text);font-family:'Inter',sans-serif;scroll-behavior:smooth;overflow-x:hidden;max-width:100%;}
body{width:100%;position:relative;}
a{color:inherit;text-decoration:none;}
.container{max-width:1120px;margin:0 auto;padding:0 24px;}
section{padding:90px 0;}
h1,h2,h3{overflow-wrap:break-word;}

/* ANIMATIONS */
@keyframes fadeInUp{from{opacity:0;transform:translateY(26px);}to{opacity:1;transform:translateY(0);}}
@keyframes floatBlob{0%,100%{transform:translateX(-50%) translateY(0) scale(1);}50%{transform:translateX(-50%) translateY(22px) scale(1.06);}}
@keyframes floatSoft{0%,100%{transform:translateY(0);}50%{transform:translateY(-8px);}}
@keyframes shimmerText{to{background-position:200% center;}}
@keyframes softPulse{0%,100%{box-shadow:0 16px 32px -12px rgba(123,111,240,0.55);}50%{box-shadow:0 18px 42px -8px rgba(123,111,240,0.85);}}

.reveal{opacity:0;transform:translateY(28px);transition:opacity .6s cubic-bezier(.2,.7,.3,1), transform .6s cubic-bezier(.2,.7,.3,1);}
.reveal.visible{opacity:1;transform:translateY(0);}
.feature-grid .feature-card:nth-child(1){transition-delay:.03s;}
.feature-grid .feature-card:nth-child(2){transition-delay:.11s;}
.feature-grid .feature-card:nth-child(3){transition-delay:.19s;}
.feature-grid .feature-card:nth-child(4){transition-delay:.27s;}
.steps .step:nth-child(1){transition-delay:.03s;}
.steps .step:nth-child(2){transition-delay:.11s;}
.steps .step:nth-child(3){transition-delay:.19s;}
.steps .step:nth-child(4){transition-delay:.27s;}
.security-inner > *:nth-child(1){transition-delay:0s;}
.security-inner > *:nth-child(2){transition-delay:.14s;}

@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation:none !important;transition:none !important;scroll-behavior:auto !important;}
  .reveal{opacity:1;transform:none;}
}

/* NAV */
header{position:sticky;top:0;z-index:50;background:rgba(10,10,19,0.85);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);}
nav{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;max-width:1120px;margin:0 auto;gap:16px;}
.logo{display:flex;align-items:center;gap:10px;font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:1.25rem;color:#fff;}
.logo-badge{width:34px;height:34px;border-radius:9px;background:linear-gradient(145deg,#2a2140,#1a1530);display:flex;align-items:center;justify-content:center;font-size:1.1rem;line-height:1;box-shadow:inset 0 0 0 1px rgba(255,255,255,0.06);}
.logo .dot{color:var(--accent-2);}
.nav-links{display:flex;gap:32px;font-size:0.92rem;color:var(--text-muted);}
.nav-links a:hover{color:var(--text);}
.nav-right{display:flex;align-items:center;gap:14px;flex-shrink:0;}
.lang-switch{display:flex;align-items:center;gap:4px;background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:3px;font-size:0.76rem;font-weight:600;flex-shrink:0;white-space:nowrap;}
.lang-switch a{padding:5px 9px;border-radius:6px;color:var(--text-muted);transition:background .2s, color .2s;}
.lang-switch a.active{background:var(--accent);color:#fff;}
.lang-switch a:not(.active):hover{color:var(--text);}
.nav-cta{background:var(--accent);color:#fff;padding:7px 14px;border-radius:8px;font-weight:600;font-size:0.82rem;transition:background .2s;flex-shrink:0;white-space:nowrap;}
.nav-cta:hover{background:var(--accent-2);}
@media (max-width:720px){.nav-links{display:none;}}
@media (max-width:480px){
  nav{flex-wrap:wrap;justify-content:center;row-gap:6px;padding-top:8px;padding-bottom:8px;}
  .nav-right{width:100%;justify-content:center;}
  .logo{font-size:1.05rem;}
  .nav-cta{padding:6px 12px;font-size:0.74rem;}
  .lang-switch{font-size:0.7rem;}
  .lang-switch a{padding:4px 7px;}
}

/* HERO */
.hero{padding:110px 0 70px;text-align:center;position:relative;}
.hero::before{
  content:"";position:absolute;top:-120px;left:50%;transform:translateX(-50%);
  width:900px;height:500px;background:radial-gradient(circle, rgba(123,111,240,0.25), transparent 70%);
  pointer-events:none;z-index:0;
  animation:floatBlob 9s ease-in-out infinite;
}
.hero-inner{position:relative;z-index:1;}
.hero-inner > *{opacity:0;animation:fadeInUp .7s cubic-bezier(.2,.7,.3,1) forwards;}
.hero-inner > .eyebrow{animation-delay:.05s;}
.hero-inner > h1{animation-delay:.15s;}
.hero-inner > p.lead{animation-delay:.25s;}
.hero-inner > .hero-actions{animation-delay:.35s;}
.hero-inner > .hero-note{animation-delay:.42s;}
.hero-inner > .mockup-wrap{animation-delay:.5s;}
.eyebrow{display:inline-flex;align-items:center;gap:8px;background:var(--panel);border:1px solid var(--border);color:var(--accent-2);font-size:0.8rem;font-weight:600;padding:7px 16px;border-radius:999px;margin-bottom:26px;}
h1{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:clamp(1.75rem, 7vw, 3.4rem);line-height:1.18;letter-spacing:-0.01em;max-width:780px;margin:0 auto 22px;color:#fff;overflow-wrap:break-word;}
h1 .grad{background:linear-gradient(120deg,var(--accent-2),var(--flame1),var(--accent-2));background-size:200% auto;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shimmerText 6s linear infinite;}
.hero p.lead{max-width:600px;margin:0 auto 36px;color:var(--text-muted);font-size:1.12rem;line-height:1.6;}
.hero-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-bottom:16px;}
.btn{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;border-radius:12px;font-weight:600;font-size:0.98rem;transition:transform .18s ease, box-shadow .18s ease;}
.btn-primary{background:var(--accent);color:#fff;box-shadow:0 16px 32px -12px rgba(123,111,240,0.55);animation:softPulse 3.2s ease-in-out infinite;}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 20px 40px -12px rgba(123,111,240,0.7);}
.btn:active{transform:scale(0.95);}
.btn-compact{padding:14px 18px;}
.btn-ghost{background:var(--panel);border:1px solid var(--border);color:var(--text);}
.btn-ghost:hover{border-color:var(--accent);}
.hero-note{color:var(--text-muted);font-size:0.85rem;}

/* MOCKUP */
.mockup-wrap{max-width:980px;margin:60px auto 0;position:relative;z-index:1;}
.mockup{background:var(--panel);border:1px solid var(--border);border-radius:14px;overflow:hidden;box-shadow:0 40px 80px -30px rgba(0,0,0,0.6);animation:floatSoft 5s ease-in-out 1.2s infinite;}
.mockup-bar{display:flex;align-items:center;gap:8px;padding:12px 16px;border-bottom:1px solid var(--border);background:var(--panel-2);}
.mockup-bar .dot{width:10px;height:10px;border-radius:50%;}
.mockup-bar .dot:nth-child(1){background:#4b4b63;}
.mockup-bar .dot:nth-child(2){background:#4b4b63;}
.mockup-bar .dot:nth-child(3){background:#e05252;}
.mockup-bar .path{margin-left:14px;color:var(--text-muted);font-size:0.78rem;font-family:monospace;}
.mockup-body{display:grid;grid-template-columns:200px 1fr 260px;min-height:340px;}
.mockup-files{border-right:1px solid var(--border);padding:16px 14px;font-size:0.78rem;color:var(--text-muted);}
.mockup-files .lbl{font-size:0.68rem;letter-spacing:0.08em;color:#5f5c78;margin-bottom:10px;font-weight:700;}
.mockup-files li{list-style:none;padding:4px 0;}
.mockup-main{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;color:var(--text-muted);font-size:0.85rem;}
.mockup-main .folder{font-size:2rem;line-height:1;opacity:.6;}
.mockup-ai{border-left:1px solid var(--border);padding:16px 14px;font-size:0.78rem;color:var(--text-muted);display:flex;flex-direction:column;}
.mockup-ai .lbl{font-size:0.68rem;letter-spacing:0.08em;color:#5f5c78;margin-bottom:14px;font-weight:700;}
.mockup-ai .msg{background:var(--panel-2);border:1px solid var(--border);border-radius:10px;padding:10px 12px;margin-top:auto;color:#6f6c8a;}
@media (max-width:800px){.mockup-body{grid-template-columns:1fr;min-height:auto;}.mockup-files,.mockup-ai{display:none;}.mockup-main{padding:50px 0;}}

/* SECTION HEAD */
.section-head{text-align:center;max-width:640px;margin:0 auto 50px;}
.section-head h2{font-family:'Space Grotesk',sans-serif;font-size:clamp(1.5rem, 6vw, 2.1rem);font-weight:700;color:#fff;margin-bottom:14px;letter-spacing:-0.01em;}
.section-head p{color:var(--text-muted);font-size:1.02rem;line-height:1.6;}

/* FEATURES */
.features{background:var(--bg-alt);border-top:1px solid var(--border);border-bottom:1px solid var(--border);}
.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
@media (max-width:940px){.feature-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:560px){
  .feature-grid{grid-template-columns:1fr;}
  .feature-card{text-align:center;}
  .feature-card .fico{margin-left:auto;margin-right:auto;}
}
.feature-card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:26px 22px;transition:border-color .2s, transform .2s, box-shadow .2s;}
.feature-card:hover{border-color:var(--accent);transform:translateY(-4px);box-shadow:0 16px 32px -18px rgba(123,111,240,0.5);}
.feature-card:active{transform:translateY(-1px) scale(0.98);}
.feature-card .fico{width:42px;height:42px;border-radius:11px;display:flex;align-items:center;justify-content:center;font-size:1.25rem;line-height:1;margin-bottom:16px;background:rgba(123,111,240,0.14);}
.feature-card h3{font-size:1.03rem;font-weight:600;color:#fff;margin-bottom:8px;}
.feature-card p{font-size:0.88rem;color:var(--text-muted);line-height:1.55;}
.cms-row{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-top:40px;}
.cms-pill{background:var(--panel);border:1px solid var(--border);color:var(--text-muted);font-size:0.85rem;padding:8px 18px;border-radius:999px;transition:border-color .2s, transform .2s, color .2s;}
.cms-pill:active{transform:scale(0.94);border-color:var(--accent);color:var(--text);}

/* SCREENSHOTS */
.screenshot-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
@media (max-width:940px){.screenshot-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:700px){.screenshot-grid{grid-template-columns:1fr;}}

/* STEPS */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
@media (max-width:860px){.steps{grid-template-columns:repeat(2,1fr);}}
@media (max-width:560px){
  .steps{grid-template-columns:1fr;}
  .step{text-align:center;}
  .step .num{margin-left:auto;margin-right:auto;}
}
.step{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:26px 22px;position:relative;transition:border-color .2s, transform .2s;}
.step:hover{border-color:var(--accent);transform:translateY(-4px);}
.step:active{transform:translateY(-1px) scale(0.98);}
.step .num{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--accent-2));display:flex;align-items:center;justify-content:center;font-weight:700;color:#fff;font-family:'Space Grotesk',sans-serif;margin-bottom:16px;transition:transform .2s;}
.step:hover .num{transform:scale(1.1) rotate(-6deg);}
.step h3{font-size:1.02rem;font-weight:600;color:#fff;margin-bottom:8px;}
.step p{font-size:0.87rem;color:var(--text-muted);line-height:1.55;}

/* SECURITY */
.security{background:var(--bg-alt);border-top:1px solid var(--border);border-bottom:1px solid var(--border);}
.security-inner{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;}
@media (max-width:860px){.security-inner{grid-template-columns:1fr;}}
.security h2{font-family:'Space Grotesk',sans-serif;font-size:clamp(1.4rem, 5.5vw, 1.9rem);font-weight:700;color:#fff;margin-bottom:18px;letter-spacing:-0.01em;}
.sec-list{list-style:none;display:flex;flex-direction:column;gap:16px;}
.sec-list li{display:flex;gap:12px;font-size:0.95rem;color:var(--text-muted);line-height:1.5;}
.sec-list .check{flex-shrink:0;width:22px;height:22px;border-radius:7px;background:rgba(123,111,240,0.16);color:var(--accent-2);display:flex;align-items:center;justify-content:center;font-size:0.8rem;margin-top:1px;}
.security-panel{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:36px;text-align:center;}
.security-panel .lock{font-size:2.4rem;line-height:1;margin-bottom:14px;}
.security-panel p{color:var(--text-muted);font-size:0.9rem;line-height:1.6;}
.security-panel strong{color:#fff;}

/* PRICING */
.pricing-card{max-width:420px;margin:0 auto;background:var(--panel);border:1px solid var(--accent);border-radius:20px;padding:44px 40px;text-align:center;position:relative;box-shadow:0 30px 60px -30px rgba(123,111,240,0.35);transition:transform .25s ease;}
.pricing-card:hover{transform:translateY(-4px);}
.pricing-badge{display:inline-block;background:linear-gradient(135deg,var(--flame1),var(--flame2));color:#1a1200;font-weight:700;font-size:0.72rem;letter-spacing:0.04em;text-transform:uppercase;padding:6px 16px;border-radius:999px;margin-bottom:22px;}
.price-amount{font-family:'Space Grotesk',sans-serif;font-size:clamp(2.2rem, 9vw, 3.2rem);font-weight:700;color:#fff;letter-spacing:-0.02em;}
.price-amount span{font-size:1rem;font-weight:500;color:var(--text-muted);}
.price-note{color:var(--text-muted);font-size:0.9rem;margin:8px 0 28px;}
.price-features{list-style:none;text-align:left;display:flex;flex-direction:column;gap:12px;margin-bottom:30px;}
.price-features li{display:flex;gap:10px;font-size:0.92rem;color:var(--text);}
.price-features .check{flex-shrink:0;width:20px;height:20px;border-radius:6px;background:rgba(123,111,240,0.16);color:var(--accent-2);display:flex;align-items:center;justify-content:center;font-size:0.72rem;margin-top:2px;}

/* CTA */
.cta{text-align:center;}
.cta-box{background:linear-gradient(135deg,#1c1730,#141020);border:1px solid var(--border);border-radius:24px;padding:64px 40px;position:relative;overflow:hidden;}
.cta-box::before{content:"";position:absolute;top:-100px;right:-100px;width:320px;height:320px;background:radial-gradient(circle,rgba(123,111,240,0.35),transparent 70%);}
.cta-box h2{font-family:'Space Grotesk',sans-serif;font-size:clamp(1.5rem, 6vw, 2rem);font-weight:700;color:#fff;margin-bottom:12px;position:relative;z-index:1;}
.cta-box p{color:var(--text-muted);margin-bottom:30px;position:relative;z-index:1;}
.cta-box .hero-actions{position:relative;z-index:1;}
.contact-form{display:flex;flex-direction:column;gap:14px;max-width:480px;margin:0 auto;text-align:left;position:relative;z-index:1;}
.form-row{display:flex;gap:14px;}
.form-row input{flex:1;min-width:0;}
.contact-form input,.contact-form textarea{background:var(--panel-2);border:1px solid var(--border);border-radius:10px;padding:12px 14px;color:var(--text);font-family:inherit;font-size:0.92rem;transition:border-color .2s;}
.contact-form input::placeholder,.contact-form textarea::placeholder{color:var(--text-muted);}
.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:var(--accent);}
.contact-form textarea{resize:vertical;min-height:100px;}
@media (max-width:560px){.form-row{flex-direction:column;}}

.buy-license-btn[disabled]{opacity:0.7;cursor:default;}

footer{border-top:1px solid var(--border);padding:36px 0;text-align:center;color:var(--text-muted);font-size:0.85rem;}
footer a{color:var(--accent-2);}

/* SCROLL UI */
.scroll-progress{position:fixed;top:0;left:0;height:3px;width:0%;background:linear-gradient(90deg,var(--accent),var(--flame1));z-index:100;transition:width .1s linear;}
.back-to-top{position:fixed;bottom:24px;right:24px;width:46px;height:46px;border-radius:50%;background:var(--accent);color:#fff;border:none;display:flex;align-items:center;justify-content:center;font-size:1.2rem;line-height:1;cursor:pointer;box-shadow:0 10px 24px -8px rgba(123,111,240,0.6);opacity:0;pointer-events:none;transform:translateY(12px);transition:opacity .25s ease, transform .25s ease, background .2s;z-index:60;}
.back-to-top.visible{opacity:1;pointer-events:auto;transform:translateY(0);}
.back-to-top:hover{background:var(--accent-2);}
.back-to-top:active{transform:scale(0.92);}

/* MOBILE OVERRIDES (kept last so they win the cascade over same-specificity base rules above) */
@media (max-width:480px){
  section{padding:60px 0;}
  .hero{padding:18px 0 50px;}
  .eyebrow{margin-bottom:14px;}
  .pricing-card{padding:32px 22px;}
  .cta-box{padding:44px 22px;}
  .security-panel{padding:26px 20px;}
  .back-to-top{bottom:16px;right:16px;width:42px;height:42px;font-size:1.05rem;}
}
