:root{
  --bg: #0b1020;
  --panel: #0e1428;
  --text: #eef2ff;
  --muted: #b6c0d9;
  --primary: #6c5ce7;
  --primary-2: #7c74ff;
  --neon: #37E2FF;
  --ring: rgba(108,92,231,.35);
  --card: #0f172a;
  --alt: #0b132b;
  --border: #1f2a44;
  --shadow: 0 30px 80px rgba(0,0,0,.45);
}

*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family: ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Inter,Arial;
  color: var(--text);
  background:
    radial-gradient(900px 600px at 10% -10%, rgba(124,116,255,.25), transparent),
    radial-gradient(900px 600px at 90% -10%, rgba(16,185,129,.18), transparent),
    var(--bg);
  line-height:1.6;
  position: relative;
}

/* Canvas háttér – ne legyen a body mögött */
#bg-anim{
  position: fixed; inset: 0; width: 100vw; height: 100vh;
  z-index: 0; pointer-events: none;
}
@media (prefers-reduced-motion: reduce){ #bg-anim{ display:none; } }

/* Minden fő szekciót hozzuk a canvas fölé */
.site-header, .hero, .section, .site-footer{ position: relative; z-index: 1; }

/* Layout */
.container{max-width:1180px;margin:0 auto;padding:0 20px}
.section{padding:96px 0}
.section.alt{background:linear-gradient(0deg,var(--alt),var(--alt))}
.section h2{font-size:clamp(26px,2.4vw,36px);margin:0 0 10px}
.section-lead{color:var(--muted);margin:0 0 24px;max-width:68ch}

/* Header */
.site-header{
  position:sticky;top:0;z-index:10;
  border-bottom:1px solid rgba(255,255,255,.06);
  background:linear-gradient(180deg, rgba(13,18,37,.75), rgba(13,18,37,.35));
  backdrop-filter:saturate(140%) blur(10px);
}
.nav{display:flex;align-items:center;justify-content:space-between;height:68px}
.brand{display:flex;gap:12px;align-items:center;color:var(--text);text-decoration:none;font-weight:800}
.brand img{filter: drop-shadow(0 0 10px rgba(124,116,255,.6))}
.nav-menu{display:flex;gap:16px;align-items:center}
.nav-menu a{color:var(--muted);text-decoration:none;padding:8px 12px;border-radius:10px}
.nav-menu a:hover{color:var(--text);background:rgba(255,255,255,.05)}
.nav-toggle{display:none;background:none;border:0;cursor:pointer}
.nav-toggle span{display:block;width:24px;height:2px;background:#cbd5e1;margin:5px 0;border-radius:2px}
@media (max-width: 860px){
  .nav-toggle{display:block}
  .nav-menu{position:absolute;right:20px;top:74px;flex-direction:column;background:var(--panel);
    border:1px solid var(--border);padding:12px;border-radius:14px;display:none;min-width:240px;box-shadow:var(--shadow)}
  .nav-menu.show{display:flex}
}

/* Buttons */
.btn{--bg:var(--primary);--bg2:var(--primary-2);
  color:#fff;background:linear-gradient(180deg,var(--bg),var(--bg2));
  border:1px solid rgba(255,255,255,.08);padding:12px 16px;border-radius:12px;
  text-decoration:none;font-weight:700;display:inline-block;box-shadow:0 10px 36px rgba(124,116,255,.35)}
.btn--outline{background:transparent;border:1px solid var(--primary);color:#fff;cursor:pointer}

/* Glow */
.glow{position:absolute;filter:blur(60px);opacity:.55;z-index:-1}
.glow--l{left:-160px;top:-180px;width:520px;height:520px;background:radial-gradient(closest-side, rgba(124,116,255,.55), transparent)}
.glow--r{right:-160px;top:-160px;width:520px;height:520px;background:radial-gradient(closest-side, rgba(16,185,129,.45), transparent)}

/* HERO – egyoszlop + nagy kép */
.hero{padding:110px 0 84px;overflow:hidden}
.hero__col{display:grid;grid-template-columns:1fr;gap:28px;justify-items:center;text-align:center}
.hero__text{max-width:920px;margin:0 auto}
.hero__text h1{font-size: clamp(32px, 4.2vw, 56px); line-height:1.08;margin:0 0 14px}
.accent{color:#c7f3ff}
.lead{color:var(--muted);max-width:62ch;margin:0 auto}
.inline-tags{display:flex;gap:12px;flex-wrap:wrap;list-style:none;padding:0;margin:16px 0 0;justify-content:center}
.inline-tags li{border:1px solid var(--border);background:rgba(255,255,255,.05);padding:6px 10px;border-radius:999px;font-size:13px}
.pill-row{margin-bottom:12px}
.pill{display:inline-block;font-size:12px;background:rgba(255,255,255,.05);border:1px solid var(--border);
  padding:4px 8px;border-radius:999px}
.hero-img{width:100%;max-width:1100px;border-radius:16px;box-shadow:0 18px 60px rgba(0,0,0,.45);border:1px solid rgba(255,255,255,.06)}

/* Features */
.features{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:24px}
@media (max-width: 1100px){.features{grid-template-columns:repeat(2,1fr)}}
@media (max-width: 640px){.features{grid-template-columns:1fr}}
.feature{
  background:linear-gradient(180deg,rgba(16,24,48,.7),rgba(16,24,48,.45));
  border:1px solid var(--border);
  border-radius:14px;padding:18px;
  transition:transform .1s ease, box-shadow .2s ease
}
.feature:hover{transform:translateY(-2px);box-shadow:0 18px 50px rgba(0,0,0,.35)}
.icon{
  width:32px;height:32px;border-radius:8px;
  display:grid;place-items:center;margin-bottom:8px;
  color:var(--neon);
  filter: drop-shadow(0 0 10px rgba(55,226,255,.45));
}
.icon svg{width:20px;height:20px;display:block}

/* A 7. kártya középre desktopon */
@media (min-width: 901px){
  .features .feature:nth-child(7){ grid-column: 2; }
}

/* Metrics – egybe board a .metrics konténeren, háttér nélkül; hover-glow az egyes elemekre */
.metrics.metrics--no-bg{
  border:1px solid var(--border);
  border-radius:16px;
  padding:14px;
  background: transparent;
  backdrop-filter: blur(2px);
  display:grid;grid-template-columns:repeat(4,1fr);gap:8px;align-items:stretch;
}
@media (max-width: 900px){.metrics.metrics--no-bg{grid-template-columns:repeat(2,1fr)}}
@media (max-width: 520px){.metrics.metrics--no-bg{grid-template-columns:1fr}}

.metric{
  position:relative;
  text-align:center;
  padding:18px 10px;
  border-radius:12px;
  overflow:hidden;           /* nincs saját háttér – csillagok átütnek */
}
.metric strong{display:block;font-size:28px;letter-spacing:.3px}
.metric span{color:var(--muted);font-size:14px}

/* Hover derengés (neon kék) az egyes elemek mögé */
@media (hover:hover){
  .metric::before{
    content:"";
    position:absolute;inset:-20%;
    background: radial-gradient(40% 40% at 50% 50%, rgba(55,226,255,.22), rgba(55,226,255,0));
    opacity:0; transform:scale(.85);
    transition: opacity .25s ease, transform .25s ease;
    z-index:-1;
  }
  .metric:hover::before{ opacity:1; transform:scale(1); }
}

/* CTA + Footer */
.cta{text-align:center;margin-top:28px}
.cta h2{font-size:clamp(24px,2.2vw,32px);margin:0 0 8px}

.site-footer{border-top:1px solid var(--border);padding:32px 0;background:#0a0f20}
.footer{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap}

/* Nav gomb szélesség, hogy ne „ugorjon” */
.nav .btn--outline{min-width:92px;text-align:center}
