/* ═══════════════════════════════════════════════
   footer.css — footer.html ONLY
═══════════════════════════════════════════════ */

:root {
  --g:#00ff88; --c:#00e5ff; --p:#7c3aed; --pk:#f472b6; --am:#f59e0b;
  --w:#e8f0ff; --mu:rgba(232,240,255,.50); --di:rgba(232,240,255,.22);
  --bd:rgba(255,255,255,.06); --bd2:rgba(255,255,255,.12);
  --sf:rgba(255,255,255,.04); --sf2:rgba(255,255,255,.07);
  --bg:#020810; --bg1:#060f1e; --bg2:#0a1628;
  --fH:'Syne',sans-serif; --fB:'DM Sans',sans-serif; --fM:'DM Mono',monospace;
  --ease-spring:cubic-bezier(.34,1.56,.64,1);
  --ease-expo:cubic-bezier(.16,1,.3,1);
}
body { background:var(--bg); font-family:var(--fB); color:var(--w); -webkit-font-smoothing:antialiased; }
a { text-decoration:none; color:inherit; }

footer { position:relative; overflow:hidden; background:linear-gradient(180deg,transparent 0%,rgba(0,255,136,.012) 60%,rgba(0,229,255,.006) 100%); }
.ft-svg-bg { position:absolute; inset:0; pointer-events:none; z-index:0; overflow:hidden; }
.ft-svg-bg svg { width:100%; height:100%; opacity:.5; }
#ft-canvas { position:absolute; inset:0; pointer-events:none; z-index:1; opacity:.7; }

.ft-topline { height:1.5px; width:100%; position:relative; z-index:2; background:linear-gradient(90deg,transparent 0%,rgba(0,255,136,.15) 10%,var(--g) 35%,var(--c) 55%,var(--p) 75%,rgba(244,114,182,.2) 90%,transparent 100%); box-shadow:0 0 20px rgba(0,255,136,.2),0 0 40px rgba(0,229,255,.08); }
.ft-topline::before { content:''; position:absolute; inset:0; background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent); animation:sweep 3.5s ease-in-out infinite; }
.ft-topline::after  { content:''; position:absolute; inset:0; background:linear-gradient(90deg,transparent,rgba(0,255,136,.4),transparent); animation:sweep 3.5s ease-in-out infinite 1.75s; }
@keyframes sweep { 0%{transform:translateX(-100%);}100%{transform:translateX(100%);} }

.ft-stats-wrap { position:relative; z-index:2; padding:clamp(44px,6vw,72px) clamp(16px,4vw,64px) clamp(44px,5.5vw,60px); max-width:1440px; margin:0 auto; }
.ft-stats-grid { display:grid; grid-template-columns:repeat(4,1fr); border-radius:20px; overflow:hidden; border:1px solid var(--bd2); background:var(--bg1); position:relative; }
.ft-stats-grid::before { content:''; position:absolute; top:0; left:0; right:0; height:1px; background:linear-gradient(90deg,transparent,rgba(0,255,136,.3),rgba(0,229,255,.2),transparent); }
@media(max-width:700px) { .ft-stats-grid{grid-template-columns:repeat(2,1fr);} }
@media(max-width:380px) { .ft-stats-grid{grid-template-columns:1fr;} }
.ft-stat { padding:clamp(24px,3.5vw,36px) clamp(16px,2vw,28px); text-align:center; position:relative; overflow:hidden; border-right:1px solid var(--bd); transition:background .4s; }
.ft-stat:last-child,.ft-stat:nth-child(4) { border-right:none; }
@media(max-width:700px) { .ft-stat:nth-child(2){border-right:none;} .ft-stat:nth-child(3){border-right:1px solid var(--bd);} .ft-stat:nth-child(3),.ft-stat:nth-child(4){border-top:1px solid var(--bd);} }
.ft-stat::after { content:''; position:absolute; inset:0; background:var(--stat-grad,radial-gradient(ellipse at 50% 120%,rgba(0,255,136,.08),transparent 70%)); opacity:0; transition:opacity .5s; }
.ft-stat:hover { background:rgba(0,255,136,.025); }
.ft-stat:hover::after { opacity:1; }
.ft-stat:nth-child(2)::after { --stat-grad:radial-gradient(ellipse at 50% 120%,rgba(0,229,255,.08),transparent 70%); }
.ft-stat:nth-child(3)::after { --stat-grad:radial-gradient(ellipse at 50% 120%,rgba(124,58,237,.08),transparent 70%); }
.ft-stat:nth-child(4)::after { --stat-grad:radial-gradient(ellipse at 50% 120%,rgba(245,158,11,.07),transparent 70%); }
.ft-stat-ico { display:inline-flex; align-items:center; justify-content:center; width:44px; height:44px; border-radius:12px; background:var(--sf2); border:1px solid var(--bd); font-size:1.3rem; margin:0 auto 14px; animation:ico-bob 3s ease-in-out infinite; position:relative; z-index:1; transition:transform .3s var(--ease-spring),box-shadow .3s; }
.ft-stat:hover .ft-stat-ico { transform:translateY(-4px) scale(1.08); box-shadow:0 8px 24px rgba(0,0,0,.4); }
.ft-stat:nth-child(1) .ft-stat-ico{animation-delay:0s;} .ft-stat:nth-child(2) .ft-stat-ico{animation-delay:.6s;} .ft-stat:nth-child(3) .ft-stat-ico{animation-delay:1.2s;} .ft-stat:nth-child(4) .ft-stat-ico{animation-delay:1.8s;}
@keyframes ico-bob { 0%,100%{transform:translateY(0);}50%{transform:translateY(-5px);} }
.ft-stat-num { font-family:var(--fH); font-size:clamp(2rem,4vw,3rem); font-weight:800; line-height:1; letter-spacing:-2px; display:block; margin-bottom:6px; position:relative; z-index:1; }
.ft-stat:nth-child(1) .ft-stat-num { background:linear-gradient(135deg,var(--g),var(--c)); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }
.ft-stat:nth-child(2) .ft-stat-num { background:linear-gradient(135deg,var(--c),var(--p)); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }
.ft-stat:nth-child(3) .ft-stat-num { background:linear-gradient(135deg,var(--p),var(--pk)); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }
.ft-stat:nth-child(4) .ft-stat-num { background:linear-gradient(135deg,var(--am),var(--g)); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }
.ft-stat-lbl { font-size:.76rem; color:var(--mu); font-weight:300; position:relative; z-index:1; letter-spacing:.3px; }

.ft-tech-wrap { position:relative; z-index:2; padding:0 clamp(16px,4vw,64px) clamp(52px,6vw,72px); max-width:1440px; margin:0 auto; }
.ft-tech-header { display:flex; align-items:center; gap:12px; margin-bottom:36px; }
.ft-tech-lbl { font-family:var(--fM); font-size:.65rem; letter-spacing:2.5px; text-transform:uppercase; color:var(--di); }
.ft-tech-line { flex:1; height:1px; background:linear-gradient(90deg,var(--bd2),transparent); }
.ft-tech-grid { display:grid; grid-template-columns:repeat(6,1fr); gap:16px; }
@media(max-width:900px) { .ft-tech-grid{grid-template-columns:repeat(4,1fr);} }
@media(max-width:580px) { .ft-tech-grid{grid-template-columns:repeat(3,1fr);} }
.tech-card { position:relative; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:10px; padding:20px 10px 16px; border-radius:18px; border:1px solid var(--bd2); background:linear-gradient(145deg,var(--card-top,rgba(255,255,255,.05)),var(--card-bot,rgba(255,255,255,.02))); cursor:default; transition:transform .4s var(--ease-spring),border-color .4s,box-shadow .4s,background .4s; overflow:hidden; animation:card-float var(--float-dur,4s) ease-in-out infinite; animation-delay:var(--float-delay,0s); }
@keyframes card-float { 0%,100%{transform:translateY(0);}50%{transform:translateY(-6px);} }
.tech-card::before { content:''; position:absolute; inset:0; border-radius:18px; background:radial-gradient(ellipse at 50% 0%,var(--card-glow,rgba(0,255,136,.08)),transparent 65%); opacity:0; transition:opacity .4s; }
.tech-card::after  { content:''; position:absolute; top:0; left:10%; right:10%; height:1px; background:linear-gradient(90deg,transparent,var(--card-shine,rgba(255,255,255,.15)),transparent); }
.tech-card:hover { transform:translateY(-10px) scale(1.04); border-color:var(--card-accent,rgba(0,255,136,.3)); box-shadow:0 20px 50px rgba(0,0,0,.5),0 0 30px var(--card-shadow,rgba(0,255,136,.12)); animation-play-state:paused; }
.tech-card:hover::before { opacity:1; }
.tech-icon-3d { width:56px; height:56px; position:relative; transform-style:preserve-3d; transition:transform .5s var(--ease-spring); }
.tech-card:hover .tech-icon-3d { transform:rotateY(15deg) rotateX(-8deg) scale(1.1); }
.tech-icon-3d svg { width:56px; height:56px; filter:drop-shadow(0 8px 16px var(--ico-shadow,rgba(0,0,0,.4))) drop-shadow(0 2px 4px rgba(0,0,0,.3)); transition:filter .4s; }
.tech-card:hover .tech-icon-3d svg { filter:drop-shadow(0 12px 24px var(--ico-glow,rgba(0,255,136,.35))) drop-shadow(0 4px 8px rgba(0,0,0,.3)); }
.tech-name { font-family:var(--fM); font-size:.65rem; letter-spacing:1.5px; text-transform:uppercase; color:var(--mu); transition:color .3s; text-align:center; }
.tech-card:hover .tech-name { color:var(--card-accent-text,var(--g)); }

.ft-divider { max-width:1440px; margin:0 auto; padding:0 clamp(16px,4vw,64px); position:relative; z-index:2; }
.ft-div-track { height:1px; background:linear-gradient(90deg,transparent,var(--bd2) 15%,var(--bd2) 85%,transparent); position:relative; overflow:hidden; }
.ft-div-track::before { content:''; position:absolute; top:-1px; left:0; width:60px; height:3px; border-radius:2px; background:linear-gradient(90deg,var(--g),var(--c)); box-shadow:0 0 12px var(--g); animation:line-run 5s linear infinite; }
.ft-div-track::after  { content:''; position:absolute; top:-1px; right:0; width:40px; height:3px; border-radius:2px; background:linear-gradient(90deg,var(--c),var(--p)); box-shadow:0 0 12px var(--c); animation:line-run-r 5s linear infinite; }
@keyframes line-run   { 0%{left:-60px;}100%{left:calc(100% + 60px);} }
@keyframes line-run-r { 0%{right:-40px;}100%{right:calc(100% + 40px);} }

.ft-main { position:relative; z-index:2; padding:clamp(40px,5vw,64px) clamp(16px,4vw,64px) clamp(28px,3.5vw,44px); max-width:1440px; margin:0 auto; }
.ft-grid { display:grid; grid-template-columns:2.4fr 1fr 1fr 1fr; gap:clamp(28px,4vw,64px); margin-bottom:clamp(36px,4.5vw,56px); }
@media(max-width:960px) { .ft-grid{grid-template-columns:1fr 1fr;} .ft-brand{grid-column:1/-1;} }
@media(max-width:480px) { .ft-grid{grid-template-columns:1fr;} .ft-brand{grid-column:auto;} }
.ft-logo-wrap { display:inline-flex; align-items:center; gap:13px; margin-bottom:18px; cursor:pointer; transition:transform .3s var(--ease-spring); }
.ft-logo-wrap:hover { transform:translateY(-2px); }
.ft-logo-img { height:clamp(40px,5.5vw,60px); width:auto; object-fit:contain; filter:drop-shadow(0 0 14px rgba(0,255,136,.5)) drop-shadow(0 0 28px rgba(0,229,255,.22)); transition:filter .4s; }
.ft-logo-wrap:hover .ft-logo-img { filter:drop-shadow(0 0 22px rgba(0,255,136,.8)) drop-shadow(0 0 48px rgba(0,229,255,.4)); }
.ft-brand-desc { font-size:.86rem; color:var(--mu); line-height:1.82; font-weight:300; max-width:300px; margin-bottom:22px; }
.ft-trust { display:flex; flex-wrap:wrap; gap:9px; margin-bottom:22px; }
.ft-trust-pill { display:flex; align-items:center; gap:7px; background:linear-gradient(135deg,rgba(0,255,136,.06),rgba(0,229,255,.03)); border:1px solid rgba(0,255,136,.14); border-radius:10px; padding:8px 14px; font-size:.72rem; font-weight:600; color:var(--mu); transition:all .3s var(--ease-expo); position:relative; }
.ft-trust-pill:hover { border-color:rgba(0,255,136,.3); color:var(--w); transform:translateY(-2px); box-shadow:0 6px 20px rgba(0,0,0,.3); }
.ft-trust-pill i { color:var(--g); font-size:.78rem; }
.ft-socials { display:flex; gap:8px; flex-wrap:wrap; }
.ft-soc { width:38px; height:38px; border-radius:10px; background:var(--sf); border:1px solid var(--bd); display:flex; align-items:center; justify-content:center; font-size:.82rem; color:var(--mu); position:relative; overflow:hidden; transition:all .35s var(--ease-spring); }
.ft-soc::before { content:''; position:absolute; inset:0; background:var(--soc-grad,linear-gradient(135deg,rgba(0,255,136,.18),rgba(0,229,255,.1))); opacity:0; transition:opacity .3s; }
.ft-soc.li{--soc-grad:linear-gradient(135deg,rgba(10,102,194,.35),rgba(10,102,194,.1));}
.ft-soc.gh{--soc-grad:linear-gradient(135deg,rgba(255,255,255,.15),rgba(255,255,255,.05));}
.ft-soc.tw{--soc-grad:linear-gradient(135deg,rgba(0,0,0,.3),rgba(255,255,255,.06));}
.ft-soc.ig{--soc-grad:linear-gradient(135deg,rgba(225,48,108,.3),rgba(253,190,6,.15));}
.ft-soc.yt{--soc-grad:linear-gradient(135deg,rgba(255,0,0,.3),rgba(255,0,0,.08));}
.ft-soc:hover { transform:translateY(-4px) scale(1.08); border-color:rgba(0,255,136,.35); color:var(--w); box-shadow:0 8px 24px rgba(0,0,0,.5); }
.ft-soc:hover::before { opacity:1; }
.ft-soc i { position:relative; z-index:1; }
.ft-col-head { font-family:var(--fH); font-size:.72rem; font-weight:700; letter-spacing:2.5px; text-transform:uppercase; color:var(--di); margin-bottom:20px; display:flex; align-items:center; gap:10px; }
.ft-col-head::before { content:''; display:inline-block; width:18px; height:2px; border-radius:1px; flex-shrink:0; background:linear-gradient(90deg,var(--g),var(--c)); }
.ft-col-links { display:flex; flex-direction:column; gap:2px; }
.ft-col-links a { display:flex; align-items:center; gap:0; color:var(--mu); font-size:.85rem; font-weight:300; padding:7px 0; position:relative; overflow:hidden; transition:color .28s,padding-left .28s; }
.ft-col-links a::after { content:''; position:absolute; bottom:0; left:0; height:1px; width:0%; background:linear-gradient(90deg,var(--g),var(--c)); transition:width .35s var(--ease-expo); border-radius:1px; }
.ft-col-links a:hover { color:var(--w); padding-left:10px; }
.ft-col-links a:hover::after { width:100%; }
.ft-col-links a .arr { font-size:.58rem; color:var(--g); opacity:0; transform:translateX(-6px); transition:opacity .28s,transform .28s; flex-shrink:0; position:absolute; left:0; }
.ft-col-links a:hover .arr { opacity:1; transform:translateX(0); }
.ft-contact-item { display:flex; align-items:flex-start; gap:11px; padding:8px 0; border-bottom:1px solid var(--bd); transition:all .3s; }
.ft-contact-item:last-child { border-bottom:none; }
.ft-contact-item:hover { padding-left:5px; }
.ft-ci-ico { width:30px; height:30px; border-radius:8px; flex-shrink:0; background:var(--sf2); border:1px solid var(--bd); display:flex; align-items:center; justify-content:center; font-size:.72rem; color:var(--g); margin-top:2px; transition:all .3s; }
.ft-contact-item:hover .ft-ci-ico { background:rgba(0,255,136,.1); border-color:rgba(0,255,136,.25); }
.ft-ci-label { font-size:.65rem; color:var(--di); font-family:var(--fM); letter-spacing:.5px; margin-bottom:2px; }
.ft-ci-val { font-size:.81rem; color:var(--mu); font-weight:300; line-height:1.4; transition:color .3s; }
.ft-contact-item:hover .ft-ci-val { color:var(--w); }

.ft-bot-outer { position:relative; z-index:2; max-width:1440px; margin:0 auto; padding:0 clamp(16px,4vw,64px) clamp(32px,4vw,48px); }
.ft-bot { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:16px; padding-top:clamp(20px,2.5vw,28px); border-top:1px solid var(--bd); position:relative; }
.ft-bot::before { content:''; position:absolute; top:-1px; left:50%; transform:translateX(-50%); width:clamp(100px,20%,200px); height:1px; background:linear-gradient(90deg,transparent,var(--g),var(--c),transparent); box-shadow:0 0 16px rgba(0,255,136,.4); }
.ft-bot::after  { content:''; position:absolute; top:-4px; left:0; width:8px; height:8px; border-radius:50%; background:var(--g); box-shadow:0 0 10px var(--g); animation:corner-blink 2.5s ease-in-out infinite; }
@keyframes corner-blink { 0%,100%{opacity:.3;}50%{opacity:1;} }
.ft-copy { font-size:.76rem; color:var(--di); font-weight:300; }
.ft-copy strong { color:var(--g); font-weight:600; }
.ft-bot-links { display:flex; gap:clamp(12px,2vw,26px); }
.ft-bot-links a { font-size:.75rem; color:var(--di); position:relative; transition:color .28s; }
.ft-bot-links a::after { content:''; position:absolute; bottom:-2px; left:0; right:0; height:1px; background:var(--g); transform:scaleX(0); transition:transform .3s var(--ease-expo); transform-origin:left; }
.ft-bot-links a:hover { color:var(--g); }
.ft-bot-links a:hover::after { transform:scaleX(1); }
.ft-made { font-size:.74rem; color:var(--di); display:flex; align-items:center; gap:5px; }
.ft-heart { color:#ef4444; display:inline-block; animation:hb 1.4s ease-in-out infinite; }
@keyframes hb { 0%,100%{transform:scale(1);}40%{transform:scale(1.35);}60%{transform:scale(1.12);} }
@media(max-width:580px) { .ft-bot{flex-direction:column;align-items:center;text-align:center;} .ft-brand-desc{max-width:100%;} .ft-socials{justify-content:center;} .ft-trust{justify-content:center;} .ft-col{text-align:center;} .ft-col-head{justify-content:center;} .ft-col-links a{justify-content:center;} .ft-col-links a .arr{display:none;} .ft-col-links a:hover{padding-left:0;} }
.ft-glow-line { position:absolute; bottom:0; left:50%; transform:translateX(-50%); width:60%; height:1px; background:linear-gradient(90deg,transparent,var(--g),var(--c),transparent); box-shadow:0 0 40px rgba(0,255,136,.22),0 0 80px rgba(0,229,255,.1); }
.ft-glow-orb  { position:absolute; bottom:-100px; left:50%; transform:translateX(-50%); width:600px; height:200px; background:radial-gradient(ellipse,rgba(0,255,136,.055),rgba(0,229,255,.03) 50%,transparent 70%); filter:blur(50px); pointer-events:none; }

/* ── Back to Top Rocket ── */
#btt { position:fixed; bottom:clamp(18px,3vw,34px); right:clamp(18px,3vw,34px); z-index:1000; width:54px; height:54px; border-radius:16px; background:rgba(6,15,30,.95); border:1px solid rgba(0,255,136,.22); display:none; align-items:center; justify-content:center; cursor:pointer; overflow:hidden; box-shadow:0 4px 24px rgba(0,0,0,.5); transition:all .35s var(--ease-spring); }
#btt:hover { border-color:var(--g); transform:translateY(-5px); box-shadow:0 0 0 1px rgba(0,255,136,.3),0 16px 44px rgba(0,0,0,.6),0 0 30px rgba(0,255,136,.2); }
.btt-tip { position:absolute; right:calc(100% + 12px); top:50%; transform:translateY(-50%) translateX(8px); background:rgba(6,15,30,.96); border:1px solid rgba(0,255,136,.2); border-radius:8px; padding:6px 12px; font-size:.7rem; font-weight:600; color:var(--w); white-space:nowrap; pointer-events:none; font-family:var(--fM); opacity:0; transition:opacity .25s,transform .25s; }
#btt:hover .btt-tip { opacity:1; transform:translateY(-50%) translateX(0); }
.btt-trail { position:absolute; bottom:0; left:50%; transform:translateX(-50%); width:4px; height:0; border-radius:2px; background:linear-gradient(transparent,var(--g),var(--c)); z-index:2; }
#btt.launch #btt-rkt { animation:rkt-up .65s var(--ease-spring) forwards; }
@keyframes rkt-up { 0%{transform:translateY(0);}15%{transform:translateY(4px);}100%{transform:translateY(-80px) scale(.35);opacity:0;} }
#btt.launch .btt-trail { animation:trail-g .55s linear forwards; }
@keyframes trail-g { 0%{height:0;opacity:1;}100%{height:80px;opacity:0;} }

/* ── Footer Reveal ── */
.ft-reveal { opacity:0; transform:translateY(32px); transition:opacity .8s var(--ease-expo),transform .8s var(--ease-expo); }
.ft-reveal.in { opacity:1; transform:translateY(0); }
.ft-reveal-left { opacity:0; transform:translateX(-28px); transition:opacity .75s var(--ease-expo),transform .75s var(--ease-expo); }
.ft-reveal-left.in { opacity:1; transform:translateX(0); }
.ft-d1{transition-delay:.08s;} .ft-d2{transition-delay:.16s;} .ft-d3{transition-delay:.24s;} .ft-d4{transition-delay:.32s;} .ft-d5{transition-delay:.40s;}
