/* Site public LUXEVENT — noir/or. */

.lux-site {
  background: var(--lux-black);
  color: #e8e2d6;
}

.lux-site h1, .lux-site h2, .lux-site h3 { color: #fff; }

.lux-gold { color: var(--lux-gold); }

.hero {
  min-height: 72vh;
  display: flex;
  align-items: center;
  background:
    linear-gradient(180deg, rgba(14,13,11,.55) 0%, rgba(14,13,11,.95) 100%),
    radial-gradient(ellipse at 30% 20%, rgba(201,162,39,.25), transparent 60%);
}

.hero h1 {
  font-size: clamp(2.2rem, 6vw, 4rem);
  font-weight: 800;
  line-height: 1.1;
}

.hero .lead { color: var(--lux-gold-soft); font-size: 1.3rem; }

.section-title {
  font-weight: 700;
  margin-bottom: 1.5rem;
}

.section-title::after {
  content: "";
  display: block;
  width: 48px;
  height: 3px;
  background: var(--lux-gold);
  margin-top: .5rem;
}

.event-card {
  background: var(--lux-ink);
  border: 1px solid #2c2820;
  border-radius: 12px;
  overflow: hidden;
  transition: transform .15s ease, border-color .15s;
  height: 100%;
}

.event-card:hover { transform: translateY(-4px); border-color: var(--lux-gold); }

.event-card .cover {
  height: 180px;
  background: linear-gradient(135deg, #2a2517, #171410);
  display: flex; align-items: center; justify-content: center;
  color: var(--lux-gold);
  font-size: 2.5rem;
  overflow: hidden;
}

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

.event-card .body { padding: 1rem 1.25rem; }
.event-card .date { color: var(--lux-gold-soft); font-size: .8rem; letter-spacing: .1em; text-transform: uppercase; }
.event-card .meta { color: #a89f8d; font-size: .85rem; }
.event-card .price { color: #fff; font-weight: 700; }

.ticket-table { background: var(--lux-ink); border-radius: 12px; overflow: hidden; }
.ticket-table .row { border-bottom: 1px solid #2c2820; padding: .9rem 1.25rem; }
.ticket-table .row:last-child { border-bottom: none; }

.badge-stock-ok { background: #1e5c3a; color: #b7f0cd; }
.badge-stock-low { background: #6b4b08; color: #ffd98a; }
.badge-stock-out { background: #5c1e1e; color: #f0b7b7; }

.lux-footer { background: #0a0908; border-top: 1px solid #2c2820; }
.lux-footer a { color: #a89f8d; text-decoration: none; }
.lux-footer a:hover { color: var(--lux-gold-soft); }

.offer-card { background: var(--lux-ink); border: 1px solid #2c2820; border-radius: 12px; height: 100%; color: #e8e2d6; }
.offer-card .price { color: var(--lux-gold); font-size: 1.4rem; font-weight: 800; }
.offer-card ul { color: #bdb5a3; }
.offer-card .card-title, .offer-card h1, .offer-card h2, .offer-card h3,
.offer-card h4, .offer-card h5, .offer-card h6 { color: #fff; }
.offer-card strong { color: #fff; }

/* Bootstrap repasse le texte des .card en couleur sombre — on force le clair */
.lux-site .card { color: #e8e2d6; }
.lux-site .text-muted { color: #a89f8d !important; }
.lux-site .table { color: #e8e2d6; }
.lux-site .alert { color: inherit; }

.form-control, .form-select { background: #221f19; border-color: #3a352a; color: #eee; }
.form-control::placeholder { color: #7d7666; }

/* Carrousel événement */
.event-hero-img { height: 420px; object-fit: cover; }
@media (max-width: 768px) { .event-hero-img { height: 240px; } }
.carousel-indicators [data-bs-target] { background-color: var(--lux-gold); }
.form-control:focus { background: #26231c; color: #fff; border-color: var(--lux-gold); box-shadow: 0 0 0 .2rem rgba(201,162,39,.2); }
