/* Palette */
:root {
  --club-bg: #000;
  --club-fg: #fff;
  --club-muted: #bfbfbf;
  --club-accent: #ad4f13; /* cuivré/orange */
}

/* HERO */
.club-hero {
  position: relative;
  background-color: var(--club-bg);
  background-size: cover;
  background-position: center;
  min-height: 72vh;
  display: flex;
  align-items: center;
}
.club-hero__overlay {
  position:absolute; inset:0; background:rgba(0,0,0,.45);
}
.club-hero__inner {
  position:relative; z-index:1; color: var(--club-fg);
  padding: 5rem 0;
}
.club-eyebrow {
  color: var(--club-muted);
  letter-spacing:.15em;
  font-size:.85rem; text-transform:uppercase; margin-bottom:.5rem;
}
.club-heading {
  color: var(--club-fg);
  text-transform: uppercase;
  font-weight: 800;
  letter-spacing:.04em;
  line-height:1.05;
  margin: 0 0 1rem 0;
  font-size: clamp(2rem, 6vw, 3.75rem);
}
.club-subheading {
  color:#e6e6e6; max-width: 680px; font-size:1.125rem; margin-bottom:1.75rem;
}

/* Sections */
.club-section { background: var(--club-bg); color: var(--club-fg); padding: 9.5rem 0; }
.club-section--dark { background: #0a0a0a; }
.club-section--bordered { position:relative; }
.club-section--bordered .container { position: relative; }
.club-section--bordered .container::before {
  content:""; position:absolute; inset: -1.5rem 0; border: 1px solid rgba(255,255,255,.35);
  pointer-events:none;
}

/* Titres */
.club-title {
  color: var(--club-fg);
  text-transform: uppercase;
  letter-spacing:.06em;
  font-weight: 700;
  margin-bottom: 2rem;
  font-size: clamp(1.25rem, 3vw, 1.75rem);
}

/* Cards */
.club-card {
  background: #0f0f0f;
  border: 1px solid rgba(255,255,255,.12);
  padding: 1.25rem 1.25rem 1.1rem;
  height: 100%;
}
.club-card__title {
  color: var(--club-fg);
  text-transform: uppercase;
  font-weight: 700; letter-spacing:.05em;
  margin: 0 0 .5rem;
  font-size: 1rem;
}
.club-card__text { color:#ddd; margin:0; }

/* Advantages */
.club-adv { display:flex; gap:.9rem; align-items:flex-start; }
.club-adv__dot { width:.6rem; height:.6rem; border-radius:50%; background:var(--club-accent); margin-top:.5rem; }
.club-adv__title {
  color: var(--club-fg); text-transform: uppercase; font-weight:700; letter-spacing:.05em; margin:0;
  font-size: 1rem;
}
.club-adv__text { color:#d7d7d7; margin:.25rem 0 0 0; }

/* CTA */
.club-cta { background: #0a0a0a; color: var(--club-fg); padding: 4rem 0; }
.club-cta__desc { max-width:780px; margin: .5rem auto 1.5rem; color:#e6e6e6; }

/* Buttons */
.club-btn {
  display:inline-block; text-transform:uppercase; letter-spacing:.08em;
  padding:.85rem 1.5rem; font-weight:700; border-radius:0;
  transition: .2s ease; text-decoration:none;cursor: pointer;
}
.club-btn--ghost {
  border:2px solid #fff; color:#fff; background:transparent;
}
.club-btn--ghost:hover { background:#fff; color:#000; }
.club-btn--accent {
  background: var(--club-accent); color:#fff; border:2px solid var(--club-accent);
}
.club-btn--accent:hover { background: transparent; color:#fff; border-color:#fff; }

/* Utilitaires responsive (si Bootstrap pas partout) */
@media (max-width: 767.98px) {
  .club-section { padding: 3rem 0; }
  .club-subheading { font-size:1rem; }
}
/* ===== CTA visuel ===== */
.club-cta {
  position: relative;
  background: #0a0a0a;
  color: var(--club-fg);
  padding: 9rem 0;
  overflow: hidden; /* masque le bg et l'effet shine */
  border-top: 1px solid rgba(255,255,255,.1);
  border-bottom: 1px solid rgba(255,255,255,.08);
}

.club-cta__bg {
  position: absolute; inset: 0;
  background-size: cover; background-position: center;
  opacity: .22;               /* léger, pour garder la lisibilité */
  filter: saturate(90%) contrast(95%) brightness(80%);
  pointer-events: none;
}

/* léger voile pour plus de lisibilité sur les textes */
.club-cta::before {
  content: "";
  position: absolute; inset: 0;
  background: radial-gradient(120% 120% at 20% 0%, rgba(0,0,0,.35) 0%, rgba(0,0,0,.6) 60%, rgba(0,0,0,.75) 100%);
  pointer-events: none;
}

.club-cta__wrap { position: relative; z-index: 1; }

.club-cta__title {
  color: var(--club-fg);
  text-transform: uppercase;
  letter-spacing: .06em;
  font-weight: 800;
  margin: 0 0 .5rem 0;
  font-size: clamp(1.35rem, 3vw, 1.9rem);
}

.club-cta__desc {
  max-width: 780px;
  margin: .25rem 0 0 0;
  color: #e6e6e6;
  line-height: 1.5;
}

/* bouton avec effet "shine" discret */
.club-btn--shine {
  position: relative;
  overflow: hidden;
}
.club-btn--shine::after {
  content: "";
  position: absolute;
  top: 0; bottom: 0;
  left: -120%;
  width: 60%;
  transform: skewX(-20deg);
  background: linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.22) 50%, rgba(255,255,255,0) 100%);
  transition: left .45s ease;
}
.club-btn--shine:hover::after { left: 120%; }

/* version bordure blanche en alternative si tu veux la changer :
   .club-btn--ghost { ... } déjà présent chez toi */
@media (max-width: 767.98px) {
  .club-cta { padding: 2.75rem 0; }
}


/* ===== Reasons — cards modern ===== */
.club-reasons .row { row-gap: 1rem; }

/* carte */
.reason-card{
  position: relative;
  background: #0f0f0f;
  border: 1px solid rgba(255,255,255,.12);
  padding: 1.25rem 1.25rem 1.15rem;
  height: 100%;
  overflow: hidden;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.reason-card:hover{
  transform: translateY(-4px);
  border-color: rgba(255,255,255,.22);
  box-shadow: 0 12px 28px rgba(0,0,0,.35);
}

/* lueur cuivrée très légère en fond (accent, pas tape-à-l'oeil) */
.reason-card__glow{
  position:absolute; inset:auto -25% -55% -25%;
  height: 180px;
  background: radial-gradient(60% 60% at 50% 0%, rgba(199,123,44,.18) 0%, rgba(199,123,44,0) 70%);
  pointer-events:none;
  transition: transform .3s ease, opacity .3s ease;
  opacity:.9;
}
.reason-card:hover .reason-card__glow{ transform: translateY(2px) scale(1.02); }

/* média (icône / emoji / dot) */
.reason-card__media{
  width: 52px; height: 52px;
  display: inline-flex; align-items:center; justify-content:center;
  background: linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,0));
  border: 1px solid rgba(255,255,255,.12);
  margin-bottom: .9rem;
}
.reason-card__media img{ max-width: 58%; max-height: 58%; display:block; }
.reason-card__emoji{ font-size: 1.6rem; line-height:1; }
.reason-card__dot{ width:.6rem; height:.6rem; border-radius:50%; background: var(--club-accent); display:block; }

/* titres & texte */
.reason-card__title{
  color: var(--club-fg);
  text-transform: uppercase;
  letter-spacing: .05em;
  font-weight: 700;
  margin: 0 0 .4rem;
  font-size: 1rem;
}
.reason-card__text{ color: #d9d9d9; margin: 0; }

/* index fantôme en fond (01, 02, 03...) */
.reason-card__index{
  position:absolute; right:.6rem; bottom:.3rem;
  font-weight:800;
  font-size: 2.2rem;
  line-height:1;
  color:#fff; opacity:.06;
  letter-spacing:.04em;
  pointer-events:none;
}

/* focus a11y */
.reason-card:focus-within{ outline: 2px solid #fff; outline-offset: 2px; }

/* responsive */
@media (max-width: 767.98px){
  .reason-card{ padding: 1rem; }
  .reason-card__index{ font-size: 1.8rem; }
}


/* ===== Advantages — variante "lines" (liste premium) ===== */
.club-advantages-lines{
  position:relative; background:#000; color:var(--club-fg);
  padding: 9.5rem 0; overflow:hidden;
  border-top:1px solid rgba(255,255,255,.06);
  border-bottom:1px solid rgba(255,255,255,.06);
}
.club-advantages-lines__bg{
  position:absolute; inset:0; pointer-events:none;
  
  opacity:.95;
}

/* Header */
.adv-lines__title{
  text-transform:uppercase; letter-spacing:.06em; font-weight:800;
  margin:0 0 .5rem; font-size:clamp(1.35rem,3vw,1.9rem);
}
.adv-lines__intro{ color:#e6e6e6; max-width:720px; margin:0 0 1.25rem; }

/* Liste */
.adv-lines__list{ margin:0; padding:0; list-style:none; border-top:1px solid rgba(255,255,255,.08); }
.adv-lines__item{
  position:relative; display:flex; gap:1rem; align-items:flex-start;
  padding:1.05rem 0; border-bottom:1px solid rgba(255,255,255,.08);
}
.adv-lines__item::after{
  content:""; position:absolute; left:0; right:3.5rem; bottom:-1px; height:1px;
  background: linear-gradient(90deg, rgba(199,123,44,0) 0%, rgba(199,123,44,.6) 35%, rgba(199,123,44,0) 100%);
  opacity:0; transform: scaleX(.6); transform-origin:left center;
  transition: opacity .25s ease, transform .25s ease;
}
.adv-lines__item:hover::after{ opacity:1; transform: scaleX(1); }

/* icône */
.adv-lines__icon{
  flex:0 0 44px; width:44px; height:44px;
  display:inline-flex; align-items:center; justify-content:center;
  border:1px solid rgba(255,255,255,.12);
  background: linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,0));
  color:var(--club-accent);
}
.adv-lines__icon img{ max-width:60%; max-height:60%; display:block; }

/* contenu */
.adv-lines__content{ display:flex; flex-direction:column; gap:.15rem; }
.adv-lines__label{
  font-weight:800; text-transform:uppercase; letter-spacing:.04em;
  font-size:clamp(1rem,2.2vw,1.1rem); color:var(--club-fg);
}
.adv-lines__desc{ color:#d9d9d9; font-size:.98rem; }

/* index fantôme à droite */
.adv-lines__index{
  margin-left:auto; align-self:flex-end; transform: translateY(6px);
  font-weight:800; letter-spacing:.04em; color:#fff; opacity:.06;
  font-size:2.3rem; line-height:1; pointer-events:none;
}

/* CTA */
.adv-lines__cta{ margin-top:1.25rem; }
.adv-lines__cta .club-btn{ padding: .9rem 1.6rem; }

/* visuel carte membre (sticky) */
.adv-lines__visual{ position:sticky; top:84px; display:flex; justify-content:flex-end; }
.adv-lines__visual img{
      width: 48%;
    max-width: 420px;
    height: auto;
    margin: 0 auto;
    display: block;
    border-radius: 18px;
    /* border: 1px solid rgba(255, 255, 255, .12); */
    /* box-shadow: 0 18px 40px rgba(0, 0, 0, .45); */
    filter: saturate(95%) contrast(98%);
}

/* fallback carte mock si pas d'image fournie */
.adv-lines__cardmock{
  width:88%; max-width:420px; aspect-ratio: 16/10;
  border-radius:18px; padding:1.25rem;
  background:
    radial-gradient(140% 100% at 0% 0%, rgba(199,123,44,.22), rgba(199,123,44,0) 60%),
    linear-gradient(160deg, #0e0e0e, #151515 60%, #0e0e0e);
  border:1px solid rgba(255,255,255,.12);
  box-shadow: 0 18px 40px rgba(0,0,0,.45);
  display:flex; flex-direction:column; justify-content:flex-end;
}
.adv-lines__cardmock-title{
  font-weight:800; letter-spacing:.06em; text-transform:uppercase;
  font-size:1.05rem; color:#fff;
}
.adv-lines__cardmock-sub{ color:#e6e6e6; font-size:.95rem; }

/* Responsive */
@media (max-width: 991.98px){
  .adv-lines__index{ display:none; }
  .adv-lines__visual{ display:none; }
  .club-advantages-lines{ padding: 3.25rem 0; }
}


/* ===== Pricing ===== */
.club-pricing{ position:relative; background:#000; color:var(--club-fg); padding:4.5rem 0; border-top:1px solid rgba(255,255,255,.06); }
.club-pricing__bg{ position:absolute; inset:0; pointer-events:none;
  background:
    radial-gradient(120% 70% at 100% 0%, rgba(199,123,44,.15) 0%, rgba(199,123,44,0) 60%),
    linear-gradient(#070707, #0c0c0c);
}
.club-pricing__header{ text-align:center; margin:0 0 1.25rem; }
.club-pricing__title{ text-transform:uppercase; letter-spacing:.06em; font-weight:800; margin:0; font-size:clamp(1.35rem,3vw,1.9rem); }
.club-pricing__note{ color:#e6e6e6; margin:.4rem 0 0; }

/* cards */
.plan-card{
  position:relative; height:100%;
  background:#0f0f0f; border:1px solid rgba(255,255,255,.12);
  padding:1.4rem 1.25rem 1.25rem; overflow:hidden;
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.plan-card:hover{ transform:translateY(-4px); border-color:rgba(255,255,255,.22); box-shadow:0 16px 32px rgba(0,0,0,.35); }
.plan-card--highlight{ background:#121212; border-color:rgba(199,123,44,.45); box-shadow:0 18px 36px rgba(199,123,44,.08); }

.plan-card__badge{
  position:absolute; top:12px; right:12px; z-index:1;
  display:inline-block; padding:.28rem .55rem; font-size:.72rem; letter-spacing:.06em; text-transform:uppercase;
  border:1px solid rgba(255,255,255,.18); background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,0));
}
.plan-card--highlight .plan-card__badge{ border-color:rgba(199,123,44,.6); color:#fff; }

.plan-card__name{ margin:0 0 .35rem; font-weight:800; text-transform:uppercase; letter-spacing:.05em; font-size:1.05rem; }
.plan-card__price{ display:flex; align-items:flex-end; gap:.35rem; margin: .2rem 0 1rem; }
.plan-card__amount{ font-size:2.15rem; line-height:1; font-weight:800; letter-spacing:.02em; }
.plan-card__period{ color:var(--club-muted); font-size:.95rem; }
.plan-card__subtitle{ color:#e6e6e6; margin:-.35rem 0 .8rem; }

.plan-card__features{ list-style:none; margin:0 0 1.1rem; padding:0; display:flex; flex-direction:column; gap:.55rem; }
.plan-card__feature{ display:flex; gap:.55rem; align-items:flex-start; }
.plan-card__tick{ width:22px; height:22px; display:inline-flex; align-items:center; justify-content:center; color:var(--club-accent); border:1px solid rgba(255,255,255,.12); background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,0)); }
.plan-card__feature-text{ color:#d9d9d9; }

.plan-card__cta{ margin-top:auto; }
@media(max-width:767.98px){ .club-pricing{ padding:3.25rem 0; } }



/* ===== Reseller form (dark) ===== */
.dealer-form__grid{
  display:grid; grid-template-columns: 1fr 1fr; gap:1rem;
}
.dealer-field--full{ grid-column: 1 / -1; }
.dealer-label{ display:block; font-size:.9rem; color:#e8e8e8; margin:0 0 .35rem; }
.dealer-input{
  width:100%; background:#0f0f0f; color:#fff;
  border:1px solid rgba(255,255,255,.14);
  padding:.75rem .85rem; outline:none; transition:border-color .2s ease, box-shadow .2s ease;
  border-radius:2px;
}
.dealer-textarea{ resize:vertical; }
.dealer-input:focus{
  border-color: var(--club-accent);
  box-shadow: 0 0 0 3px rgba(199,123,44,.2);
}
.dealer-check{ display:flex; gap:.6rem; align-items:flex-start; color:#e6e6e6; font-size:.95rem; }
.dealer-check input{ transform: translateY(.2rem); }

@media (max-width: 767.98px){
  .dealer-form__grid{ grid-template-columns: 1fr; }
}
/* ===== Reseller — Intro (bande éditoriale) ===== */
.res-intro{
  position:relative; background:#000; color:var(--club-fg);
  padding:4.25rem 0; border-top:1px solid rgba(255,255,255,.06);
  border-bottom:1px solid rgba(255,255,255,.06);
  overflow:hidden;
}
.res-intro__bg{
  position:absolute; inset:0; pointer-events:none;
  background:
    radial-gradient(120% 70% at 0% 0%, rgba(199,123,44,.18) 0%, rgba(199,123,44,0) 60%),
    linear-gradient(#070707,#0b0b0b);
}
.res-intro__title{
  text-transform:uppercase; letter-spacing:.06em; font-weight:800;
  margin:0 0 .5rem; font-size:clamp(1.35rem,3vw,1.9rem);
}
.res-intro__lead{ color:#e6e6e6; margin:0 0 1rem; max-width:720px; }
.res-intro__chips{ display:flex; flex-wrap:wrap; gap:.5rem; margin-top:.5rem; }
.res-chip{
  display:inline-flex; align-items:center; gap:.45rem;
  padding:.5rem .7rem; border:1px solid rgba(255,255,255,.14);
  background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,0));
  font-weight:700; letter-spacing:.04em; text-transform:uppercase; font-size:.8rem;
}
.res-intro__fig{ position:relative; width:80%; max-width:360px; margin-left:auto; aspect-ratio: 1/1; }
.res-intro__ring{
  position:absolute; inset:0; border-radius:50%;
  background:
    radial-gradient(60% 60% at 50% 50%, rgba(199,123,44,.22), rgba(199,123,44,0) 60%),
    conic-gradient(from 0deg, rgba(255,255,255,.06), rgba(255,255,255,0) 40%, rgba(255,255,255,.06));
  filter: blur(.2px);
  border:1px solid rgba(255,255,255,.12);
}
.res-intro__badge{
  position:absolute; inset:auto 0 0 0; margin:auto; width:56%;
  aspect-ratio: 6/4; border-radius:14px;
  background:#0f0f0f; border:1px solid rgba(255,255,255,.14);
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  box-shadow:0 16px 36px rgba(0,0,0,.35);
  text-transform:uppercase; letter-spacing:.08em;
}
.res-intro__badge strong{ font-size:2.1rem; line-height:1; }
.res-intro__badge span{ color:#e6e6e6; font-size:.9rem; }

/* ===== Reseller — Benefits (lignes numérotées) ===== */
.res-benefits{ background:#0a0a0a; color:var(--club-fg); padding:9.5rem 0; }
.res-benefits__title{
  text-transform:uppercase; letter-spacing:.06em; font-weight:800;
  margin:0 0 1rem; font-size:clamp(1.25rem,3vw,1.7rem);
}
.res-rows{ list-style:none; margin:0; padding:0; border-top:1px solid rgba(255,255,255,.08); }
.res-row{
  position:relative; display:flex; gap:1rem; align-items:flex-start;
  padding:1rem 0; border-bottom:1px solid rgba(255,255,255,.08);
}
.res-row__nbr{
  flex:0 0 auto; min-width:2.8rem; text-align:right;
  font-weight:800; font-size:1.35rem; line-height:1; color:#fff; opacity:.12;
}
.res-row__content{ display:flex; flex-direction:column; gap:.15rem; }
.res-row__label{ text-transform:uppercase; letter-spacing:.04em; font-weight:800; }
.res-row__desc{ color:#d9d9d9; }
.res-row__bar{
  margin-left:auto; align-self:center; width:110px; height:2px;
  background:linear-gradient(90deg, rgba(199,123,44,0), rgba(199,123,44,.6), rgba(199,123,44,0));
  opacity:.65;
}

/* ===== Reseller — Why (pills) ===== */
.res-why{ background:#000; color:var(--club-fg); padding:9.5rem 0; border-top:1px solid rgba(255,255,255,.06); }
.res-why__head{ display:flex; align-items:center; gap:1rem; justify-content:space-between; margin-bottom:1rem; }
.res-why__title{ text-transform:uppercase; letter-spacing:.06em; font-weight:800; margin: 0 0 3rem; font-size:clamp(1.25rem,3vw,1.7rem); }
.res-why__cta{ white-space:nowrap; }
.res-pills{ display:grid; grid-template-columns: repeat(3, 1fr); gap:.8rem; }
.res-pill{
  display:flex; gap:.8rem; align-items:flex-start;
  background: #0f0f0f; padding: .9rem 1rem; border:1px solid rgba(255,255,255,.12);
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.res-pill:hover{ transform: translateY(-2px); border-color: rgba(255,255,255,.22); box-shadow:0 10px 24px rgba(0,0,0,.3); }
.res-pill__dot{ width:.55rem; height:.55rem; border-radius:50%; background:var(--club-accent); margin-top:.35rem; }
.res-pill__label{ text-transform:uppercase; letter-spacing:.04em; font-weight:800; display:block; }
.res-pill__desc{ color:#d9d9d9; display:block; margin-top:.1rem; }

@media (max-width: 991.98px){
  .res-intro__fig{ display:none; }
  .res-pills{ grid-template-columns:1fr; }
}
/* ===== Visuels produits (intro revendeur) ===== */

/* Variante A — deck de 3 packshots en éventail */
.res-intro__deck{
  position:relative; width:92%; max-width:420px; margin-left:auto; height:280px;
}
.res-card{
  position:absolute; inset:auto 0 0 0; margin:auto;
  width:64%; max-width:260px; aspect-ratio: 3/4;
  background:#0f0f0f;
  border:1px solid rgba(255,255,255,.14);
  box-shadow: 0 16px 38px rgba(0,0,0,.45);
  overflow:hidden; display:flex; align-items:center; justify-content:center;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.res-card__img{
  width:88%; height:88%; object-fit:contain; display:block;
  filter: saturate(100%) contrast(100%);
}
.res-card--1{ transform: rotate(-7deg) translateX(-22%); z-index:1; }
.res-card--2{ transform: translateY(-8px); z-index:2; border-color: rgba(199,123,44,.45); }
.res-card--3{ transform: rotate(7deg) translateX(22%); z-index:1; }

.res-card:hover{ box-shadow: 0 20px 48px rgba(0,0,0,.55); border-color: rgba(255,255,255,.22); }
.res-deck__badge{
  position:absolute; right:0; bottom:-12px;
  padding:.5rem .8rem; border:1px solid rgba(255,255,255,.14);
  background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,0));
  text-transform:uppercase; letter-spacing:.06em; font-weight:800; font-size:.85rem;
  box-shadow: 0 10px 24px rgba(0,0,0,.35);
}

/* Variante B — un seul visuel produit */
.res-intro__photo{
  position:relative; width:92%; max-width:420px; margin-left:auto;
  background:#0f0f0f; 
  border-radius:16px; overflow:hidden; box-shadow:0 20px 46px rgba(0,0,0,.45);
  display:flex; align-items:center; justify-content:center; aspect-ratio: 16/10;
}

.res-photo__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.res-photo__badge{
  position:absolute; left:12px; bottom:12px;
  padding:.45rem .7rem; border:1px solid rgba(255,255,255,.14);
  background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,0));
  text-transform:uppercase; letter-spacing:.06em; font-weight:800; font-size:.8rem;
}

@media (max-width: 991.98px){
  .res-intro__deck, .res-intro__photo{ display:none; }
}
