:root{
  --bg:#070a12;
  --text:#e9eef8;
  --muted:#a9b7d3;
  --accent:#53c8ff;
  --accent2:#1fa8ff;

  /* CONTROLE SIMPLES DAS CLASSES */
  --char-height:410px;
  --char-width:145px;
}

/* RESET */
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  background:
    radial-gradient(1200px 600px at 50% -120px, rgba(83,200,255,.14), transparent 60%),
    radial-gradient(900px 500px at 15% 20%, rgba(31,168,255,.10), transparent 55%),
    var(--bg);
  color:var(--text);
}
img{display:block;max-width:none;height:auto}
a{text-decoration:none;color:inherit}

.container{width:min(1100px,92vw);margin:0 auto}

/* NAV */
.nav{
  position:sticky;top:0;z-index:50;
  background:rgba(7,10,18,.75);
  backdrop-filter:blur(10px);
  border-bottom:1px solid rgba(255,255,255,.06);
}
.nav-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:14px 0;
}
.nav-logo{
  height:54px;
  transition:.2s;
}
.nav-logo:hover{
  transform:scale(1.15);
  filter:drop-shadow(0 0 22px rgba(83,200,255,.7));
}
.nav-links{
  display:flex;
  gap:14px;
}
.nav-links a{
  font-weight:900;
  font-size:13px;
  letter-spacing:.08em;
  padding:8px 10px;
  border-radius:12px;
}
.nav-links a:hover,
.nav-links a.is-active{
  background:rgba(83,200,255,.15);
}
.nav-btn{
  padding:10px 14px;
  border-radius:14px;
  font-weight:900;
  border:1px solid rgba(83,200,255,.35);
}

/* HERO */
.hero{
  min-height:78vh;
  background:url("../images/hero-bg.jpg") center/cover no-repeat;
  position:relative;
  overflow:hidden;
}

/* overlay original */
.hero::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(0,0,0,.45),rgba(0,0,0,.85));
}

/* ✅ fade suave no final (remove o corte seco) */
.hero::before{
  content:"";
  position:absolute;
  left:0; right:0; bottom:0;
  height:180px;
  background:linear-gradient(to bottom, rgba(7,10,18,0), rgba(7,10,18,1));
  z-index:1;
  pointer-events:none;
}

.hero-content{
  position:relative;
  z-index:2;
  text-align:center;
  padding:90px 0 70px;
}

/* ✅ “nuvem/energia” atrás da logo (sem mexer no HTML) */
.hero-content::before{
  content:"";
  position:absolute;
  left:50%;
  top:34px;
  width:520px;
  height:260px;
  transform:translateX(-50%);
  background:
    radial-gradient(closest-side, rgba(83,200,255,.35), transparent 70%),
    radial-gradient(closest-side, rgba(31,168,255,.20), transparent 72%);
  filter:blur(26px);
  opacity:.85;
  z-index:0;
  animation:hero-glow 6s ease-in-out infinite;
  pointer-events:none;
}

@keyframes hero-glow{
  0%,100%{transform:translateX(-50%) translateY(0) scale(1); opacity:.75}
  50%{transform:translateX(-50%) translateY(-8px) scale(1.05); opacity:1}
}

/* ✅ logo maior + brilho + leve flutuação */
.hero-logo{
  width:420px;
  margin:0 auto 20px;
  position:relative;
  z-index:1;
  transition:.2s;
  animation:logo-float 6s ease-in-out infinite;
  filter:
    drop-shadow(0 0 18px rgba(83,200,255,.55))
    drop-shadow(0 0 44px rgba(31,168,255,.35));
}
@keyframes logo-float{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-10px)}
}
.hero-logo:hover{
  transform:translateY(-6px) scale(1.08);
  filter:
    drop-shadow(0 0 26px rgba(83,200,255,.75))
    drop-shadow(0 0 60px rgba(31,168,255,.45));
}

.hero-title{
  font-size:52px;
  font-weight:900;
}
.hero-subtitle{
  color:var(--muted);
  margin-top:10px;
}

/* SECTIONS */
.section{padding:80px 0}
.section-title{
  text-align:center;
  font-weight:900;
  letter-spacing:.12em;
}
.section-subtitle{
  text-align:center;
  color:var(--muted);
  margin-top:10px;
}

/* ================= CLASSES ================= */
.classes-section{
  position:relative;
  overflow:hidden;
}
.classes-section::before{
  content:"";
  position:absolute;
  inset:-200px;
  background:
    radial-gradient(900px 420px at 50% 55%, rgba(83,200,255,.22), transparent 72%),
    radial-gradient(700px 360px at 65% 45%, rgba(31,168,255,.16), transparent 74%);
  filter:blur(28px);
  z-index:0;
}
.classes-section .container{position:relative;z-index:1}

/* LINHA DAS CLASSES */
.arc-stage{
  margin-top:50px;
  display:flex;
  justify-content:center;
  align-items:flex-end;
  gap:32px;
  padding-bottom:220px;
  flex-wrap:nowrap;
}

/* CADA PERSONAGEM */
.arc-stage .char{
  width:var(--char-width);
  flex:0 0 var(--char-width);
  display:flex;
  justify-content:center;
  align-items:flex-end;
  position:relative;
  cursor:pointer;
  z-index:1;
  flex-shrink:0;
}

/* IMAGEM – SEM ESTICAR */
.arc-stage .char img{
  height:var(--char-height);
  width:auto !important;
  max-width:none !important;
  object-fit:contain !important;
  transform-origin:center bottom;
  transition:.25s;
  filter:drop-shadow(0 25px 45px rgba(0,0,0,.65));
}

/* HOVER */
.arc-stage .char:hover{z-index:20}
.arc-stage .char:hover img{
  transform:scale(1.14);
  filter:
    drop-shadow(0 0 45px rgba(83,200,255,.45))
    drop-shadow(0 30px 60px rgba(0,0,0,.70));
}

/* NOME */
.arc-stage .char::after{
  content:attr(data-name);
  position:absolute;
  bottom:-20px;
  left:50%;
  transform:translateX(-50%);
  background:rgba(7,10,18,.85);
  padding:8px 14px;
  border-radius:999px;
  font-size:12px;
  opacity:0;
  transition:.2s;
  z-index:60;
}

/* DESCRIÇÃO (POPUP) */
.arc-stage .char::before{
  content:attr(data-desc);
  position:absolute;
  bottom:-140px;
  left:50%;
  transform:translateX(-50%) translateY(10px);
  width:280px;
  padding:14px 16px;

  background:rgba(10,14,25,.95);
  backdrop-filter:blur(6px);
  border:1px solid rgba(83,200,255,.30);
  border-radius:14px;

  font-size:13px;
  line-height:1.45;
  color:var(--muted);
  text-align:center;

  opacity:0;
  pointer-events:none;
  box-shadow:0 25px 60px rgba(0,0,0,.75);
  transition:.25s cubic-bezier(.22,1,.36,1);
  z-index:59;
}

.arc-stage .char:hover::after,
.arc-stage .char:hover::before{
  opacity:1;
  transform:translateX(-50%) translateY(0);
}

/* FOOTER */
.footer{
  text-align:center;
  padding:20px 0;
  color:var(--muted);
  border-top:1px solid rgba(255,255,255,.06);
}

/* MOBILE */
@media(max-width:900px){
  .hero-logo{width:300px}
  .arc-stage{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:18px;
    padding-bottom:60px;
  }
  .arc-stage .char{
    width:auto;
    flex:initial;
  }
  .arc-stage .char img{
    height:380px;
  }
}

/* =======================================================
   ✅ DISCORD + SLIDER (LADO A LADO, MAIOR E NA ESQUERDA)
   ======================================================= */

#discord .container{width:min(1350px,92vw);margin:0 auto}

.discord-slider{
  margin-top:18px;
  display:flex;
  gap:28px;
  align-items:flex-start;      /* topo */
  justify-content:flex-start;  /* <<< esquerda */
  flex-wrap:nowrap;
  width:100%;
}

.discord-widget{
  flex:0 0 350px;
  margin-top:-5px;            /* <<< sobe (seta) */
  border-radius:16px;
  overflow:hidden;
  border:1px solid rgba(83,200,255,.25);
  box-shadow:0 18px 55px rgba(0,0,0,.65);
}

.slider-card{
  flex:1 1 auto;
  height:500px;
  border-radius:18px;
  overflow:hidden;
  border:1px solid rgba(83,200,255,.25);
  box-shadow:0 25px 80px rgba(0,0,0,.70);
  position:relative;
}

/* trilha animada simples */
.slider-track{
  display:flex;
  width:300%;
  height:100%;
  animation:pw-slide 18s infinite;
}

.slider-track img{
  width:100%;
  height:100%;
  object-fit:cover;
  flex:0 0 33.3333%;
}

@keyframes pw-slide{
  0%,30%{transform:translateX(0)}
  33%,63%{transform:translateX(-33.3333%)}
  66%,100%{transform:translateX(-66.6666%)}
}

@media(max-width:900px){
  #discord .container{width:min(1100px,92vw);}
  .discord-widget{margin-top:0;}
  .discord-slider{flex-wrap:wrap;justify-content:center;}
  .slider-card{height:320px;}
}/* ================= EVENTOS ================= */

/* HERO DA PÁGINA */
.page-hero{
  padding:120px 0 80px;
  background:
    radial-gradient(600px 300px at 50% 0%, rgba(83,200,255,.25), transparent 70%),
    linear-gradient(180deg, rgba(7,10,18,.6), rgba(7,10,18,1));
  text-align:center;
}

.page-title{
  font-size:52px;
  font-weight:900;
  letter-spacing:.12em;
}

.page-subtitle{
  margin-top:12px;
  color:var(--muted);
}

/* GRID DOS EVENTOS */
.events-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  gap:28px;
  margin-top:40px;
}

/* CARD */
.event-card{
  background:linear-gradient(
    180deg,
    rgba(15,20,35,.95),
    rgba(7,10,18,.95)
  );
  border-radius:18px;
  padding:22px 22px 24px;
  border:1px solid rgba(83,200,255,.18);
  box-shadow:0 20px 60px rgba(0,0,0,.6);
  position:relative;
  overflow:hidden;
  transition:.25s;
}

/* brilho suave */
.event-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(
    400px 200px at 50% -60px,
    rgba(83,200,255,.25),
    transparent 70%
  );
  opacity:.6;
  pointer-events:none;
}

/* hover */
.event-card:hover{
  transform:translateY(-6px);
  box-shadow:0 35px 90px rgba(0,0,0,.8);
  border-color:rgba(83,200,255,.45);
}

/* EVENTO EM DESTAQUE */
.event-card.highlight{
  border-color:rgba(83,200,255,.55);
  box-shadow:
    0 0 0 1px rgba(83,200,255,.35),
    0 35px 90px rgba(0,0,0,.85);
}

/* MEDIA (FAIXA DO TOPO) */
.event-media{
  height:110px;
  border-radius:14px;
  margin-bottom:16px;
  background:
    linear-gradient(135deg, rgba(83,200,255,.35), rgba(31,168,255,.15)),
    radial-gradient(closest-side, rgba(83,200,255,.45), transparent);
}

/* TÍTULO */
.event-title{
  font-size:18px;
  font-weight:900;
  margin-bottom:8px;
}

/* TEXTO */
.event-text{
  font-size:14px;
  line-height:1.5;
  color:var(--muted);
  margin-bottom:14px;
}

/* META */
.event-meta{
  list-style:none;
  padding:0;
  margin:0;
  display:flex;
  flex-direction:column;
  gap:6px;
  font-size:13px;
  color:#cfd9ee;
}

/* MOBILE */
@media(max-width:600px){
  .page-title{font-size:38px}
}
:root{
  --bg:#070a12;
  --text:#e9eef8;
  --muted:#a9b7d3;
  --accent:#53c8ff;
  --accent2:#1fa8ff;

  --char-height:410px;
  --char-width:145px;
}

/* RESET */
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  background:
    radial-gradient(1200px 600px at 50% -120px, rgba(83,200,255,.14), transparent 60%),
    radial-gradient(900px 500px at 15% 20%, rgba(31,168,255,.10), transparent 55%),
    var(--bg);
  color:var(--text);
}
img{display:block;max-width:none;height:auto}
a{text-decoration:none;color:inherit}

.container{width:min(1100px,92vw);margin:0 auto}

/* NAV */
.nav{
  position:sticky;top:0;z-index:50;
  background:rgba(7,10,18,.75);
  backdrop-filter:blur(10px);
  border-bottom:1px solid rgba(255,255,255,.06);
}
.nav-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:14px 0;
}
.nav-logo{
  height:54px;
  transition:.2s;
}
.nav-logo:hover{
  transform:scale(1.15);
  filter:drop-shadow(0 0 22px rgba(83,200,255,.7));
}
.nav-links{
  display:flex;
  gap:14px;
}
.nav-links a{
  font-weight:900;
  font-size:13px;
  letter-spacing:.08em;
  padding:8px 10px;
  border-radius:12px;
}
.nav-links a:hover,
.nav-links a.is-active{
  background:rgba(83,200,255,.15);
}
.nav-btn{
  padding:10px 14px;
  border-radius:14px;
  font-weight:900;
  border:1px solid rgba(83,200,255,.35);
}

/* SECTIONS */
.section{padding:80px 0}

/* FOOTER */
.footer{
  text-align:center;
  padding:20px 0;
  color:var(--muted);
  border-top:1px solid rgba(255,255,255,.06);
}

/* =======================================================
   EVENTOS – IMAGEM ESQUERDA + CAIXA PRATEADA
   ======================================================= */

.events-list{
  display:flex;
  flex-direction:column;
  gap:36px;
}

.event-row{
  display:flex;
  align-items:center;
  gap:28px;
}

.event-image{
  flex:0 0 420px;
  height:230px;
  border-radius:18px;
  overflow:hidden;
  border:1px solid rgba(180,190,210,.35);
  box-shadow:0 20px 60px rgba(0,0,0,.7);
}

.event-image img{
  width:100%;
  height:100%;
  object-fit:cover;
}

/* CAIXA PADRÃO (MESMO TAMANHO PRA TODAS) */
.event-box{
  min-height:190px;
  background:rgba(12,15,24,.96);
  backdrop-filter:blur(6px);
  border:1px solid rgba(190,200,220,.45);
  border-radius:16px;
  padding:22px 26px;
  max-width:420px;

  box-shadow:
    0 0 0 1px rgba(255,255,255,.06),
    0 20px 70px rgba(0,0,0,.75),
    0 0 35px rgba(180,190,210,.25); /* glow prateado */

  transition:.25s;
}

.event-box h3{
  margin-bottom:8px;
}

.event-box p{
  color:var(--muted);
  font-size:14px;
  margin-bottom:12px;
}

.event-box span{
  font-size:13px;
  color:#d6dbea;
  font-weight:700;
}

/* HOVER SUAVE */
.event-row:hover .event-box{
  transform:translateY(-4px);
  box-shadow:
    0 0 0 1px rgba(255,255,255,.10),
    0 30px 90px rgba(0,0,0,.85),
    0 0 45px rgba(200,210,230,.45);
}

/* MOBILE */
@media(max-width:900px){
  .event-row{
    flex-direction:column;
    align-items:stretch;
  }
  .event-image{
    width:100%;
    height:200px;
  }
  .event-box{
    max-width:100%;
    min-height:auto;
  }
}/* =======================================================
   INFORMAÇÕES – CARDS ESTILO EVENTOS (ISOLADO)
   ======================================================= */

.info-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:28px;
  margin-top:40px;
}

.info-tile{
  background:linear-gradient(
    180deg,
    rgba(15,20,35,.95),
    rgba(7,10,18,.95)
  );
  border-radius:18px;
  padding:26px 24px 28px;
  border:1px solid rgba(83,200,255,.18);
  box-shadow:0 20px 60px rgba(0,0,0,.6);
  position:relative;
  overflow:hidden;
  transition:.25s;
}

/* brilho suave */
.info-tile::before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(
    420px 200px at 50% -60px,
    rgba(83,200,255,.22),
    transparent 70%
  );
  opacity:.6;
  pointer-events:none;
}

/* hover igual eventos */
.info-tile:hover{
  transform:translateY(-6px) scale(1.02);
  box-shadow:0 35px 90px rgba(0,0,0,.85);
  border-color:rgba(83,200,255,.45);
}

/* título */
.info-tile h3{
  font-size:18px;
  font-weight:900;
  margin-bottom:14px;
}

/* conteúdo */
.info-tile p{
  font-size:14px;
  line-height:1.5;
  color:var(--muted);
  margin-bottom:10px;
}

.info-tile b{
  color:var(--text);
}
/* =======================================================
   FUMAÇA / PARTÍCULAS AZUIS – EFEITO MMORPG
   ======================================================= */

.fx-fog{
  position:fixed;
  inset:-20%;
  z-index:4;
  pointer-events:none;
  background:
    radial-gradient(600px 600px at 20% 30%, rgba(80,150,255,.18), transparent 60%),
    radial-gradient(500px 500px at 80% 20%, rgba(80,150,255,.14), transparent 65%),
    radial-gradient(700px 700px at 50% 80%, rgba(80,150,255,.12), transparent 70%);
  filter:blur(60px);
  animation:fogFloat 22s linear infinite;
}

@keyframes fogFloat{
  0%{
    transform:translate(0,0);
  }
  25%{
    transform:translate(-60px, -40px);
  }
  50%{
    transform:translate(40px, -70px);
  }
  75%{
    transform:translate(70px, 30px);
  }
  100%{
    transform:translate(0,0);
  }
}

/* garante que conteúdo fique acima */
body > *{
  position:relative;
  z-index:10;
}
#fx{
  position:fixed;
  inset:0;
  z-index:3;
  pointer-events:none;
}
body > *{
  position:relative;
  z-index:5;
}
@media (max-width: 768px){

  .nav-inner{
    flex-direction: column;
    gap: 12px;
  }

  .nav-links{
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
  }

  .hero-title{
    font-size: 22px;
    line-height: 1.2;
    text-align: center;
  }

  .hero-subtitle{
    font-size: 14px;
    text-align: center;
  }

  .discord-slider{
    flex-direction: column;
  }

  .arc-stage{
    display: flex;
    overflow-x: auto;
    gap: 12px;
    padding-bottom: 10px;
  }

  .arc-stage .char{
    flex: 0 0 auto;
  }

}
@media (max-width: 768px){
  body{
    background: #0b1220 !important;
  }
}