.offer-box {
    background: #1a1a1c;
    border-radius: 10px;
    padding: 20px;
    border: 1px solid #333;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    cursor: pointer;
}

.offer-box:hover {
    transform: scale(1.05);
    box-shadow: 0 0 15px #00d0ff88;
}



.tab-content {
  display: none;
  animation: fadeIn 0.3s ease-in-out;
}

.tab-content.active {
  display: block;
}

.tab-btn.active {
  background: #00d0ff;
  color: #000;
}

@keyframes fadeIn {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: translateY(0); }
}


.modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.6);
  justify-content: center;
  align-items: center;
  z-index: 1000;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.modal.show {
  display: flex;
  opacity: 1;
}

.modal-content {
  background: #1a1a1c;
  padding: 20px;
  border-radius: 8px;
  max-width: 700px;
  color: #fff;
  font-family: 'Segoe UI', sans-serif;
  line-height: 1.6;
  border: 2px solid #00d0ff;
  box-shadow: 
    0 0 15px rgba(0, 208, 255, 0.4),
    0 0 40px rgba(0, 208, 255, 0.1); /* deuxième halo diffus */
  
  transform: scale(0.8);
  opacity: 0;
  transition: transform 0.3s ease, opacity 0.3s ease, box-shadow 0.3s ease;
}

.modal.show .modal-content {
  transform: scale(1);
  opacity: 1;
}

.modal-content:hover {
  transform: scale(1.03); /* effet zoom léger */
  box-shadow: 0 0 25px rgba(0, 208, 255, 0.7); /* lueur plus forte */
  border-color: #00f0ff; /* légère variation de couleur */
}

.modal-content h2 {
  color: #ffaa00;
  font-size: 1.4rem;
  margin-bottom: 10px;
}
.modal-content ul {
  list-style: none;
  padding-left: 0;
}
.modal-content li {
  margin: 8px 0;
  font-size: 0.95rem;
  font-weight: normal;
}
.close-btn {
  background: #ff6600;
  color: white;
  border: none;
  padding: 6px 14px;
  margin-top: 15px;
  cursor: pointer;
  border-radius: 6px;
  font-size: 0.9rem;
}

    .offers {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
        gap: 20px;
        align-items: stretch; /* ✅ Aligne toutes les boîtes en hauteur */
        }

    .offer-box {
        display: flex;
        flex-direction: column;
        justify-content: space-between; /* ✅ Espace pour pousser le bouton en bas */
        }

    .offer-box .cta-btn {
        align-self: flex-start; /* ✅ Garde le bouton collé en bas de chaque bloc */
        }


    body {
      margin: 0;
      font-family: 'Segoe UI', sans-serif;
      background-color: #0f0f10;
      color: #ffffff;
      line-height: 1.6;
    }
    header {
      background-color: #111;
      padding: 30px;
      text-align: center;
      border-bottom: 2px solid #00d0ff;
    }
    header h1 {
      margin: 0;
      font-size: 2.5rem;
      color: #00d0ff;
    }
    section {
      padding: 60px 20px;
      max-width: 1100px;
      margin: auto;
    }
    .offers {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
      gap: 20px;
    }
    .offer-box {
      background: #1a1a1c;
      border-radius: 10px;
      padding: 20px;
      border: 1px solid #333;
      transition: transform 0.3s ease, box-shadow 0.3s ease;
    }
    .offer-box:hover {
      transform: scale(1.05);
      box-shadow: 0 0 15px #00d0ff88;
    }
    .offer-box h3 {
      color: #ffaa00;
      margin-bottom: 10px;
    }
    .offer-box p {
      color: #ccc;
      font-size: 0.95rem;
    }
    .cta-btn {
      display: inline-block;
      background: #ff6600;
      color: white;
      text-decoration: none;
      padding: 12px 24px;
      border-radius: 6px;
      font-weight: bold;
      margin-top: 15px;
      transition: background 0.3s ease;
    }
    .cta-btn:hover {
      background: #ff8533;
    }
    .testimonial {
      background: #1a1a1c;
      padding: 20px;
      border-radius: 8px;
      margin-top: 20px;
      color: #bbb;
      font-style: italic;
      border-left: 4px solid #00d0ff;
    }
    footer {
      background: #111;
      text-align: left !important;
      padding: 20px;
      margin-top: 40px;
      color: #777;
      border-top: 1px solid #333;
    }