/* Cartes cliquables sans style de lien */
a.card.service{
  text-decoration:none;
  color:inherit;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  gap:12px;
}

/* Garder le même hover que tes cartes */
a.card.service:hover{
  transform:translateY(-8px) scale(1.03) rotateX(2deg);
  box-shadow:0 20px 52px rgba(0,0,0,.7);
  border-color:rgba(255,255,255,.18);
}

/* Assure l’affichage de l’icône */
a.card.service svg{
  display:block;
  width:52px;height:52px;
  filter:drop-shadow(0 0 6px rgba(139,92,246,.7));
}

/* Cartes cliquables */
a.card.service{
  text-decoration:none;
  color:inherit;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  gap:12px;
}
a.card.service:hover{
  transform:translateY(-8px) scale(1.03) rotateX(2deg);
  box-shadow:0 20px 52px rgba(0,0,0,.7);
  border-color:rgba(255,255,255,.18);
}
a.card.service svg{
  display:block;
  width:52px; height:52px;
  filter:drop-shadow(0 0 6px rgba(139,92,246,.7));
}



    :root{
      --bg:#0b0e14;--panel:rgba(255,255,255,.06);
      --text:#e6e9ef;--muted:#9aa4b2;
      --green:#22c55e;--orange:#f97316;--purple:#8b5cf6;
    }
    .avatar-img{
  width:100%;
  aspect-ratio:1/1;
  border-radius:22px;
  object-fit:cover;
  border:1px solid rgba(255,255,255,.1);
  box-shadow:0 0 22px rgba(139,92,246,.55),0 0 44px rgba(34,197,94,.4);
  animation:float 7s ease-in-out infinite;
    }
    *{margin:0;padding:0;box-sizing:border-box}
    html,body{height:100%}
    body{
      font-family:"Inter",system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif;
      color:var(--text); background:#0b0e14; overflow-x:hidden; line-height:1.7;
    }

    /* 🌌 Aurora + Particles layers */
    .bg-aurora{
      position:fixed;inset:0;z-index:-2;filter:blur(80px);
      background:
        radial-gradient(ellipse at 20% 30%,rgba(34,197,94,.28),transparent 60%),
        radial-gradient(ellipse at 80% 70%,rgba(139,92,246,.28),transparent 60%),
        radial-gradient(ellipse at 50% 50%,rgba(249,115,22,.22),transparent 70%);
      animation:aurora 20s ease-in-out infinite alternate;
    }
    @keyframes aurora{
      0%{transform:translate(-50px,-50px) scale(1)}
      100%{transform:translate(50px,50px) scale(1.2)}
    }
    #fx{
      position:fixed;inset:0;z-index:-1;pointer-events:none;
    }

    /* HEADER */
    header{
      position:sticky;top:0;z-index:50;
      background:rgba(11,14,20,.6);
      backdrop-filter:blur(16px);
      border-bottom:1px solid rgba(255,255,255,.08);
      box-shadow:0 4px 20px rgba(0,0,0,.35);
      animation:fadeDown .8s ease;
    }
    @keyframes fadeDown{from{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:translateY(0)}}
    .nav{
      max-width:1200px;margin:auto;padding:18px 24px;
      display:flex;align-items:center;justify-content:space-between;gap:16px;
    }
    .brand{display:flex;align-items:center;gap:12px;font-weight:800;font-size:22px;white-space:nowrap}
    .logo{
      width:42px;height:42px;border-radius:14px;
      background:conic-gradient(from 180deg,var(--green),var(--orange),var(--purple),var(--green));
      animation:spin 8s linear infinite;
      box-shadow:0 0 20px rgba(34,197,94,.6),0 0 40px rgba(139,92,246,.35);
    }
    @keyframes spin{to{transform:rotate(360deg)}}

    nav.menu{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}
    nav.menu button{
      font-size:15px;padding:9px 14px;border-radius:12px;
      background:transparent;color:var(--text);
      border:1px solid rgba(255,255,255,.12);
      transition:.28s; backdrop-filter:blur(6px);
    }
    nav.menu button:hover{background:rgba(255,255,255,.09);transform:translateY(-2px);box-shadow:0 6px 18px rgba(0,0,0,.4)}

    /* PRIMARY BUTTONS */
    button,a.btn{
      cursor:pointer;border:none;outline:none;
      font-weight:600; letter-spacing:.2px;
      background:linear-gradient(135deg,var(--orange),var(--purple));
      color:#fff;border-radius:14px;
      padding:10px 18px;position:relative;overflow:hidden;
      box-shadow:0 0 18px rgba(249,115,22,.35);
      transition:.35s;
    }
    button::before,a.btn::before{
      content:"";position:absolute;top:0;left:-80%;
      width:50%;height:100%;background:rgba(255,255,255,.25);
      transform:skewX(-20deg);
    }
    button:hover::before,a.btn:hover::before{left:130%;transition:.8s}
    button:hover,a.btn:hover{transform:translateY(-2px) scale(1.04);box-shadow:0 0 28px rgba(139,92,246,.6)}

    /* LAYOUT */
    .container{max-width:1100px;margin:auto;padding:60px 20px}
    .grid{display:grid;gap:22px}
    .cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
    .cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
    @media (max-width:980px){.cols-2,.cols-3{grid-template-columns:1fr}}
    section{margin-top:90px;opacity:0;transform:translateY(40px);transition:opacity 1s, transform 1s}
    section.visible{opacity:1;transform:translateY(0)}

/* TITRES — gradient vert/orange avec animation + mouvement subtil */
h2 {
  font-size: 34px;
  margin-bottom: 24px;
  font-weight: 800;
  background: linear-gradient(
    90deg,
    var(--green) 0%,
    var(--green) 35%,
    var(--orange) 60%,
    var(--purple) 80%,
    var(--green) 100%
  );
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-size: 250% auto;
  letter-spacing: .3px;
  animation: gradientflow 6s ease-in-out infinite,
             floatTitle 4s ease-in-out infinite,
             glowPulse 3s ease-in-out infinite;
  text-align: center; /* rend les titres plus élégants */
}

/* Défilement du dégradé */
@keyframes gradientflow {
  0% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}

/* Léger flottement vertical */
@keyframes floatTitle {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-6px); }
}

/* Halo lumineux discret */
@keyframes glowPulse {
  0%, 100% {
    text-shadow: 0 0 6px rgba(34,197,94,.6),
                 0 0 14px rgba(249,115,22,.4);
  }
  50% {
    text-shadow: 0 0 12px rgba(34,197,94,.8),
                 0 0 22px rgba(249,115,22,.6),
                 0 0 30px rgba(139,92,246,.5);
  }
}
    /* CARDS — glassmorphism + tilt */
    .card{
      background:var(--panel);
      border:1px solid rgba(255,255,255,.10);
      border-radius:22px; padding:28px;
      box-shadow:inset 0 0 22px rgba(255,255,255,.05), 0 12px 36px rgba(0,0,0,.5);
      backdrop-filter:blur(16px);
      transition:transform .5s, box-shadow .5s, border-color .5s;
      transform-style:preserve-3d; will-change:transform;
    }
    .card:hover{transform:translateY(-8px) scale(1.03) rotateX(2deg);box-shadow:0 20px 52px rgba(0,0,0,.7);border-color:rgba(255,255,255,.18)}

    /* HERO */
    .title{font-size:46px;font-weight:800;margin-bottom:14px}
    .lead{color:var(--muted);font-size:18px}
    .avatar{
      width:100%;aspect-ratio:1/1;border-radius:22px;
      display:flex;align-items:center;justify-content:center;
      font-size:72px;font-weight:800;
      background:linear-gradient(135deg,#1a2234,#101523);
      color:var(--green);
      text-shadow:0 0 18px var(--green),0 0 42px var(--purple);
      border:1px solid rgba(255,255,255,.1);
      animation:float 7s ease-in-out infinite;
    }
    @keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-18px) rotate(2deg)}}

    /* TAGS -> boutons */
    .tags{margin-top:18px;display:flex;gap:12px;flex-wrap:wrap}
    .tag-btn{
      font-size:13px;padding:7px 14px;border-radius:999px;
      background:linear-gradient(90deg,rgba(34,197,94,.22),rgba(249,115,22,.22));
      border:1px solid rgba(255,255,255,.12);
      color:#e8ffee; transition:.28s;
    }
    .tag-btn:hover{transform:scale(1.12) rotate(-2deg);box-shadow:0 0 18px rgba(249,115,22,.5)}

    /* LIST + dots animés */
    .li{display:flex;gap:12px;align-items:flex-start}
    .dot{
      width:12px;height:12px;border-radius:50%;
      background:conic-gradient(var(--green),var(--orange),var(--purple));
      animation:pulse 2s infinite;box-shadow:0 0 12px rgba(34,197,94,.7);
      flex-shrink:0;margin-top:6px;
    }
    @keyframes pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.35)}}

    /* SERVICES */
    .service{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px}
    .service svg{width:52px;height:52px;fill:url(#grad1);filter:drop-shadow(0 0 6px rgba(139,92,246,.7))}
    .service h3{font-size:18px;font-weight:700}
    .service p{font-size:15px;color:var(--muted)}
    .links{margin-top:16px;display:flex;gap:14px;flex-wrap:wrap;justify-content:center}

    /* FOOTER */
    footer{text-align:center;padding:44px;color:var(--muted);font-size:14px;opacity:.85}

    /* Accessibilité: réduire animations si préférence */
    @media (prefers-reduced-motion: reduce){
      *{animation:none !important;transition:none !important}
    }
