:root{
  --bg:#061022;
  --card:#0f1724;
  --muted:#9aa4b2;
  --accent:#ff5a8f;
  --accent-2:#6c5ce7;
  --accent-3:#00e0b8;
  --glass: rgba(255,255,255,0.03);
  --radius:14px;
  --max-width:1200px;
  --gap:20px;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
}

*{box-sizing:border-box}
html,body{height:100%;margin:0;background:linear-gradient(180deg,#061022 0%, #071026 100%);color:#eef6ff}
a{color:inherit}
.wrap{max-width:var(--max-width);margin:28px auto;padding:0 20px}

/* Header */
.hero{
  position:relative;border-radius:18px;overflow:hidden;min-height:64vh;display:flex;align-items:center;justify-content:center;
  background-color:#071026;border:1px solid rgba(255,255,255,0.03);box-shadow: 0 18px 60px rgba(2,6,23,0.6);
}
.hero .hero-media{position:absolute;inset:0;background-size:cover;background-position:center center;filter:contrast(0.95) saturate(1.05);transform:scale(1.02)}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg, rgba(7,16,38,0.45) 10%, rgba(7,16,38,0.6) 60%, rgba(7,16,38,0.85) 100%);pointer-events:none}
.hero-inner{position:relative;z-index:2;width:100%;max-width:1100px;padding:48px;display:grid;grid-template-columns:1fr 360px;gap:28px;align-items:center}

.eyebrow{display:inline-block;padding:6px 12px;border-radius:999px;background:linear-gradient(90deg,var(--accent),var(--accent-2));font-weight:700;color:white;font-size:13px}
h1{font-size:40px;margin:18px 0 10px;line-height:1.02}
p.lead{color:var(--muted);font-size:16px;margin:0 0 18px;max-width:60ch}

.cta-row{display:flex;gap:12px;align-items:center;margin-top:12px}
.btn{display:inline-flex;align-items:center;gap:10px;padding:12px 16px;border-radius:12px;background:linear-gradient(90deg,var(--accent),var(--accent-2));color:white;text-decoration:none;font-weight:700;border:0;cursor:pointer;box-shadow: 0 10px 30px rgba(108,92,231,0.12)}
.btn.ghost{background:transparent;border:1px solid rgba(255,255,255,0.06);color:var(--muted);font-weight:700}

.hero-right{
  display:flex;flex-direction:column;gap:12px;align-items:stretch;
}
.promo{
  background:rgba(255,255,255,0.02);padding:14px;border-radius:12px;border:1px solid rgba(255,255,255,0.03);
  color:var(--muted);font-size:14px;
}

/* Connect section */
.connect-section{margin-top:28px;display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}
.connect-card{background:linear-gradient(180deg, rgba(255,255,255,0.01), transparent);border-radius:14px;padding:24px;border:1px solid rgba(255,255,255,0.03);box-shadow: 0 10px 30px rgba(2,6,23,0.45);display:flex;flex-direction:column;gap:14px}
.connect-card .top{display:flex;align-items:center;gap:16px}
.icon{width:72px;height:72px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-weight:800;color:white;font-size:20px}
.icon.discord{background:linear-gradient(135deg,#5865F2,#4752C4)}
.icon.irc{background:linear-gradient(135deg,#00c896,#00a38a)}
.connect-card h3{margin:0;font-size:20px}
.connect-card p{margin:0;color:var(--muted)}
.actions{display:flex;gap:12px;margin-top:8px}
.big-btn{padding:12px 18px;border-radius:12px;font-weight:800;border:0;cursor:pointer}
.big-btn.primary{background:linear-gradient(90deg,var(--accent),var(--accent-2));color:white}
.big-btn.ghost{background:transparent;border:1px solid rgba(255,255,255,0.06);color:var(--muted)}

/* Intro section */
.intro{
  margin-top:28px;padding:22px;border-radius:12px;background:linear-gradient(180deg, rgba(255,255,255,0.01), transparent);border:1px solid rgba(255,255,255,0.03);
  display:flex;flex-direction:column;gap:12px;
}
.intro h2{margin:0;font-size:20px}
.intro p{margin:0;color:var(--muted);line-height:1.6;font-size:15px}

/* Ronds dynamiques */
.features-rounds{
  margin-top:28px;padding:28px;border-radius:14px;background:linear-gradient(180deg, rgba(255,255,255,0.01), transparent);border:1px solid rgba(255,255,255,0.03);
  display:flex;align-items:center;justify-content:center;position:relative;overflow:visible;
}
.rounds-grid{
  display:flex;gap:28px;align-items:stretch;justify-content:center;flex-wrap:wrap;width:100%;
}

.round-card{
  flex: 1 1 220px;
  max-width:260px;
  aspect-ratio:1/1;
  border-radius:50%;
  display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:22px;border:1px solid rgba(255,255,255,0.03);
  box-shadow: 0 18px 40px rgba(2,6,23,0.45);backdrop-filter: blur(6px);transition:transform 300ms cubic-bezier(.2,.9,.3,1), box-shadow 300ms;
  position:relative;overflow:visible;background:linear-gradient(180deg, rgba(255,255,255,0.01), rgba(255,255,255,0.005));
  min-width:180px;
}
.round-card:hover{transform:translateY(-10px) scale(1.03);box-shadow: 0 26px 60px rgba(2,6,23,0.6)}
.round-badge{
  width:96px;height:96px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;color:white;font-size:20px;margin-bottom:12px;
  box-shadow: 0 10px 30px rgba(0,0,0,0.45);
}
.round-badge.free{background:linear-gradient(135deg,var(--accent),#ff8fb3)}
.round-badge.noauth{background:linear-gradient(135deg,#7b61ff,#6ce7ff)}
.round-badge.live{background:linear-gradient(135deg,#00e0b8,#00a38a)}

.round-title{font-weight:800;margin-bottom:6px;font-size:16px}
.round-desc{font-size:13px;color:var(--muted);max-width:170px;line-height:1.25}

/* Anneaux décoratifs */
.ring{
  position:absolute;border-radius:50%;pointer-events:none;opacity:0.08;filter:blur(6px);
  animation:spin 18s linear infinite;
}
.ring.r1{width:420px;height:420px;left:calc(50% - 210px);top:calc(50% - 210px);background:conic-gradient(from 0deg, rgba(255,90,143,0.08), transparent 40%);animation-duration:20s}
.ring.r2{width:520px;height:520px;left:calc(50% - 260px);top:calc(50% - 260px);background:conic-gradient(from 180deg, rgba(108,92,231,0.06), transparent 30%);animation-duration:28s}
@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}

/* Animation d'entrée */
.round-card{opacity:0;transform:translateY(18px) scale(0.98);animation:enter 700ms cubic-bezier(.2,.9,.3,1) forwards}
.round-card:nth-child(1){animation-delay:120ms}
.round-card:nth-child(2){animation-delay:260ms}
.round-card:nth-child(3){animation-delay:400ms}
@keyframes enter{to{opacity:1;transform:translateY(0) scale(1)}}

/* Pourquoi nous choisir */
.why{
  margin-top:28px;padding:18px;border-radius:12px;background:linear-gradient(180deg, rgba(255,255,255,0.01), transparent);border:1px solid rgba(255,255,255,0.03);
}
.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:12px}
.why-card{padding:18px;border-radius:12px;background:rgba(255,255,255,0.01);border:1px solid rgba(255,255,255,0.02)}
.why-card h4{margin:0 0 8px}
.why-card p{margin:0;color:var(--muted);font-size:14px}

/* Footer */
footer{
  margin-top:28px;padding:28px;border-radius:12px;background:linear-gradient(180deg, rgba(255,255,255,0.01), transparent);
  display:flex;flex-direction:column;gap:18px;border:1px solid rgba(255,255,255,0.03);
}
.footer-top{display:flex;gap:24px;flex-wrap:wrap;align-items:flex-start;justify-content:space-between}
.footer-about{flex:1 1 520px;color:var(--muted);font-size:14px;line-height:1.45}
.footer-links{display:flex;flex-direction:column;gap:8px;min-width:220px}
.footer-links a{color:var(--muted);text-decoration:none;font-size:14px}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;color:var(--muted);font-size:13px}

/* Responsive */
@media (max-width:1000px){
  .hero-inner{grid-template-columns:1fr;padding:28px}
  .connect-section{grid-template-columns:1fr;gap:16px}
  .rounds-grid{flex-direction:column;gap:18px}
  .why-grid{grid-template-columns:1fr}
  .footer-top{flex-direction:column}
}

/* Titre multicolore animé */
.hero-title {
  font-size: 2.8rem;
  font-weight: 800;
  background: linear-gradient(
    120deg,
    #ff6ec7,
    #ffd66e,
    #6ef3ff,
    #a86eff,
    #ff6ec7
  );
  background-size: 300% 300%;
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  animation: heroGradient 8s ease-in-out infinite;
}

@keyframes heroGradient {
  0% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}

@media (max-width: 600px) {

  /* Les connect-cards deviennent verticales */
  .connect-card .top {
    flex-direction: column;
    text-align: center;
    align-items: center;
  }

  .connect-card .top img {
    width: 64px;
    height: 64px;
  }

  /* Le bas de la card se réorganise */
  .connect-card > div:last-child {
    flex-direction: column;
    gap: 10px;
    text-align: center;
  }

  .actions {
    justify-content: center;
  }
}
