:root{--bg:#0b0d14;--bg2:#11141f;--card:#151927;--line:#232a3d;--text:#e8ebf4;--mute:#9aa3b8;--acc:#6c7cff;--acc2:#22d3ee;--acc3:#a855f7;--ok:#34d399;--radius:16px}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font:16px/1.6 Inter,system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none}img,svg{display:block}
.wrap{max-width:1160px;margin:0 auto;padding:0 24px}
.btn{display:inline-flex;align-items:center;gap:8px;padding:11px 20px;border-radius:12px;font-weight:600;font-size:15px;border:1px solid transparent;cursor:pointer;transition:transform .2s,box-shadow .2s,background .2s}
.btn-primary{background:linear-gradient(135deg,var(--acc),var(--acc3));color:#fff;box-shadow:0 8px 30px -8px rgba(108,124,255,.6)}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 14px 40px -10px rgba(108,124,255,.8)}
.btn-ghost{border-color:var(--line);color:var(--text);background:rgba(255,255,255,.02)}
.btn-ghost:hover{background:rgba(255,255,255,.06)}
/* nav */
.nav{position:sticky;top:0;z-index:50;backdrop-filter:saturate(160%) blur(14px);background:rgba(11,13,20,.72);border-bottom:1px solid rgba(255,255,255,.05)}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:68px}
.logo{display:flex;align-items:center;gap:10px;font-weight:700;font-size:18px;letter-spacing:-.3px}
.logo b{background:linear-gradient(135deg,var(--acc2),var(--acc));-webkit-background-clip:text;background-clip:text;color:transparent}
.links{display:flex;gap:28px;color:var(--mute);font-size:15px}.links a:hover{color:var(--text)}
.nav-cta{display:flex;gap:10px}
@media(max-width:860px){.links{display:none}}
/* hero */
.hero{position:relative;padding:96px 0 80px;overflow:hidden}
.blob{position:absolute;border-radius:50%;filter:blur(80px);opacity:.45;animation:float 18s ease-in-out infinite;pointer-events:none}
.b1{width:520px;height:520px;background:var(--acc);top:-160px;left:-120px}
.b2{width:420px;height:420px;background:var(--acc3);top:40px;right:-140px;animation-delay:-6s}
.b3{width:360px;height:360px;background:var(--acc2);bottom:-200px;left:35%;animation-delay:-12s;opacity:.3}
@keyframes float{0%,100%{transform:translate(0,0) scale(1)}33%{transform:translate(40px,-30px) scale(1.08)}66%{transform:translate(-30px,25px) scale(.95)}}
.hero .wrap{position:relative;display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}
@media(max-width:960px){.hero .wrap{grid-template-columns:1fr}}
.pill{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border:1px solid var(--line);border-radius:99px;font-size:13px;color:var(--mute);background:rgba(255,255,255,.03)}
.pill i{width:8px;height:8px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 0 rgba(52,211,153,.7);animation:pulse 2s infinite}
@keyframes pulse{70%{box-shadow:0 0 0 10px rgba(52,211,153,0)}100%{box-shadow:0 0 0 0 rgba(52,211,153,0)}}
h1{font-size:clamp(38px,5.4vw,64px);line-height:1.04;letter-spacing:-2px;margin:22px 0 18px;font-weight:800}
.grad{background:linear-gradient(120deg,var(--acc2),var(--acc) 45%,var(--acc3));-webkit-background-clip:text;background-clip:text;color:transparent;background-size:200% auto;animation:shine 6s linear infinite}
@keyframes shine{to{background-position:200% center}}
.lead{font-size:19px;color:var(--mute);max-width:540px;margin:0 0 32px}
.cta{display:flex;gap:12px;flex-wrap:wrap}
.trust{display:flex;gap:22px;margin-top:36px;color:var(--mute);font-size:14px;flex-wrap:wrap}
.trust span{display:flex;align-items:center;gap:6px}
/* upload card */
.card{background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.01));border:1px solid var(--line);border-radius:22px;padding:22px;box-shadow:0 30px 80px -30px rgba(0,0,0,.8)}
.drop{border:1.5px dashed #34405e;border-radius:16px;padding:30px 20px;text-align:center;transition:border-color .3s,background .3s;cursor:pointer}
.drop.over,.drop:hover{border-color:var(--acc);background:rgba(108,124,255,.06)}
.drop .ic{width:54px;height:54px;margin:0 auto 12px;border-radius:14px;display:grid;place-items:center;background:rgba(108,124,255,.12);animation:bob 3s ease-in-out infinite}
@keyframes bob{50%{transform:translateY(-6px)}}
.drop p{margin:4px 0;color:var(--mute);font-size:14px}.drop strong{color:var(--text)}
.files{margin-top:16px;display:grid;gap:10px}
.file{display:grid;grid-template-columns:38px 1fr auto;gap:12px;align-items:center;padding:12px;border-radius:12px;background:var(--bg2);border:1px solid var(--line);animation:slidein .6s both}
.file:nth-child(2){animation-delay:.15s}.file:nth-child(3){animation-delay:.3s}
@keyframes slidein{from{opacity:0;transform:translateY(12px)}}
.ft{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;font-size:11px;font-weight:700;color:#fff}
.ft.zip{background:linear-gradient(135deg,#f59e0b,#ef4444)}.ft.mov{background:linear-gradient(135deg,#a855f7,#6366f1)}.ft.psd{background:linear-gradient(135deg,#22d3ee,#3b82f6)}
.fn{font-size:14px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fm{font-size:12px;color:var(--mute)}
.bar{height:5px;border-radius:9px;background:#1f2638;margin-top:7px;overflow:hidden}
.bar i{display:block;height:100%;width:0;border-radius:9px;background:linear-gradient(90deg,var(--acc2),var(--acc));transition:width .4s ease}
.st{font-size:12px;color:var(--mute);min-width:52px;text-align:right}.st.done{color:var(--ok)}
.share{margin-top:16px;display:flex;gap:10px;align-items:center;padding:12px 14px;border-radius:12px;background:rgba(52,211,153,.07);border:1px solid rgba(52,211,153,.25);font-size:13px;color:#a7f3d0;opacity:0;transform:translateY(6px);transition:all .5s}
.share.show{opacity:1;transform:none}
.share code{flex:1;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:#d1fae5;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* logos / stats */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;padding:20px 0 70px}
@media(max-width:760px){.stats{grid-template-columns:repeat(2,1fr)}}
.stat{padding:22px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg2)}
.stat b{display:block;font-size:30px;letter-spacing:-1px}.stat span{color:var(--mute);font-size:14px}
/* sections */
section{padding:84px 0}
.eyebrow{color:var(--acc2);font-weight:600;font-size:13px;letter-spacing:1.6px;text-transform:uppercase}
h2{font-size:clamp(30px,3.6vw,44px);letter-spacing:-1.2px;line-height:1.1;margin:10px 0 14px}
.sub{color:var(--mute);max-width:620px;font-size:18px;margin:0}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:44px}
@media(max-width:900px){.grid3{grid-template-columns:1fr}}
.feat{padding:26px;border-radius:var(--radius);border:1px solid var(--line);background:var(--card);transition:transform .3s,border-color .3s}
.feat:hover{transform:translateY(-4px);border-color:#38436a}
.feat .fi{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;margin-bottom:16px;background:rgba(108,124,255,.12)}
.feat h3{margin:0 0 6px;font-size:18px}.feat p{margin:0;color:var(--mute);font-size:15px}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:44px;counter-reset:s}
@media(max-width:900px){.steps{grid-template-columns:1fr}}
.step{padding:26px;border-radius:var(--radius);background:var(--bg2);border:1px solid var(--line);position:relative}
.step:before{counter-increment:s;content:counter(s);position:absolute;top:22px;right:24px;font-size:44px;font-weight:800;color:#1f2740}
.step h3{margin:0 0 6px;font-size:18px}.step p{margin:0;color:var(--mute);font-size:15px}
.sec{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
@media(max-width:900px){.sec{grid-template-columns:1fr}}
.checks{list-style:none;padding:0;margin:24px 0 0;display:grid;gap:12px}
.checks li{display:flex;gap:10px;color:var(--mute)}.checks li b{color:var(--text);font-weight:600}
.lock{aspect-ratio:1.2;border-radius:22px;border:1px solid var(--line);background:radial-gradient(circle at 50% 40%,rgba(108,124,255,.25),transparent 60%),var(--bg2);display:grid;place-items:center;position:relative;overflow:hidden}
.ring{position:absolute;border:1px solid rgba(108,124,255,.35);border-radius:50%;animation:ring 4s linear infinite}
@keyframes ring{from{width:60px;height:60px;opacity:.9}to{width:520px;height:520px;opacity:0}}
.ring:nth-child(2){animation-delay:1.3s}.ring:nth-child(3){animation-delay:2.6s}
/* pricing */
.toggle{display:inline-flex;margin-top:26px;padding:4px;border-radius:12px;border:1px solid var(--line);background:var(--bg2)}
.toggle button{border:0;background:none;color:var(--mute);padding:8px 16px;border-radius:9px;font:inherit;font-size:14px;cursor:pointer}
.toggle button.on{background:var(--card);color:var(--text)}
.save{color:var(--ok);font-size:12px;margin-left:4px}
.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:34px}
@media(max-width:900px){.plans{grid-template-columns:1fr}}
.plan{padding:28px;border-radius:20px;border:1px solid var(--line);background:var(--card);display:flex;flex-direction:column}
.plan.pop{border-color:transparent;background:linear-gradient(var(--card),var(--card)) padding-box,linear-gradient(135deg,var(--acc2),var(--acc),var(--acc3)) border-box;border:1.5px solid transparent;position:relative}
.plan.pop:after{content:"Most popular";position:absolute;top:-12px;left:28px;font-size:12px;font-weight:700;padding:3px 10px;border-radius:99px;background:linear-gradient(135deg,var(--acc),var(--acc3))}
.plan h3{margin:0;font-size:18px}.plan .pr{font-size:42px;font-weight:800;letter-spacing:-1.5px;margin:14px 0 2px}
.plan .pr small{font-size:15px;color:var(--mute);font-weight:500;letter-spacing:0}
.plan ul{list-style:none;padding:0;margin:20px 0 26px;display:grid;gap:10px;color:var(--mute);font-size:15px;flex:1}
.plan li:before{content:"✓";color:var(--ok);margin-right:8px;font-weight:700}
/* testimonials, faq */
.quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:44px}
@media(max-width:900px){.quotes{grid-template-columns:1fr}}
.q{padding:24px;border-radius:var(--radius);background:var(--bg2);border:1px solid var(--line);font-size:15px}
.q p{margin:0 0 16px}.who{display:flex;gap:10px;align-items:center;color:var(--mute);font-size:14px}
.av{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:13px;color:#fff}
.faq{max-width:760px;margin:40px auto 0}
details{border-bottom:1px solid var(--line);padding:18px 4px}
summary{cursor:pointer;font-weight:600;list-style:none;display:flex;justify-content:space-between}
summary::-webkit-details-marker{display:none}summary:after{content:"+";color:var(--mute);font-size:22px;line-height:1;transition:transform .3s}
details[open] summary:after{transform:rotate(45deg)}details p{color:var(--mute);margin:10px 0 0}
.final{text-align:center;border-radius:28px;padding:64px 24px;background:radial-gradient(ellipse at top,rgba(108,124,255,.28),transparent 70%),var(--bg2);border:1px solid var(--line)}
footer{border-top:1px solid var(--line);padding:48px 0 36px;color:var(--mute);font-size:14px}
.fcols{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:28px}
@media(max-width:760px){.fcols{grid-template-columns:1fr 1fr}}
.fcols h4{color:var(--text);font-size:14px;margin:0 0 12px}.fcols a{display:block;margin:6px 0}.fcols a:hover{color:var(--text)}
.copy{margin-top:36px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}
.dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--ok);margin-right:6px}
/* reveal */
.rv{opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .8s ease}.rv.in{opacity:1;transform:none}
/* auth pages */
.auth{min-height:100vh;display:grid;place-items:center;padding:40px 20px;position:relative;overflow:hidden}
.auth .card{width:100%;max-width:400px;position:relative}
.auth h1{font-size:28px;letter-spacing:-.6px;margin:18px 0 6px}
.auth p.m{color:var(--mute);margin:0 0 22px;font-size:15px}
label{display:block;font-size:13px;color:var(--mute);margin:14px 0 6px}
input{width:100%;padding:12px 14px;border-radius:11px;border:1px solid var(--line);background:var(--bg2);color:var(--text);font:inherit;outline:none;transition:border-color .2s,box-shadow .2s}
input:focus{border-color:var(--acc);box-shadow:0 0 0 3px rgba(108,124,255,.18)}
.auth .btn{width:100%;justify-content:center;margin-top:20px}
.err{display:none;margin-top:14px;padding:10px 12px;border-radius:10px;background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.3);color:#fca5a5;font-size:14px}
.err.show{display:block}
.alt{text-align:center;margin-top:18px;color:var(--mute);font-size:14px}.alt a{color:var(--acc2)}
.doc{max-width:760px;margin:0 auto;padding:60px 24px 80px}.doc h1{font-size:40px}.doc h2{font-size:22px;margin-top:34px;letter-spacing:-.3px}.doc p,.doc li{color:var(--mute)}
.nf{text-align:center}.nf .code{font-size:110px;font-weight:800;letter-spacing:-5px;line-height:1}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.rv{opacity:1;transform:none}}
