:root{
  --nuit:#141B3C; --nuit-2:#0C1230; --nuit-3:#1E285A;
  --or:#E7B24C; --or-fonce:#b5852c;
  --menthe:#33C6A0; --menthe-fonce:#1f8a6c;
  --creme:#F7F3EA;
  --surface-menthe:#EFF9F5;
  --encre:#141627; --gris:#5B6079;
  --ligne:rgba(20,27,60,.10);
  --font-disp:'Fraunces', Georgia, serif;
  --font-corps:'Manrope', system-ui, -apple-system, sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  font-family:var(--font-corps);
  color:var(--encre);
  background:var(--creme);
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
.conteneur{max-width:1120px;margin:0 auto;padding:0 24px}
img{max-width:100%;display:block}
a{color:inherit}

/* ===== header ===== */
.entete{
  position:sticky;top:0;z-index:50;
  background:linear-gradient(150deg,var(--nuit),var(--nuit-3));
  box-shadow:0 1px 0 rgba(255,255,255,.06);
}
.entete-int{display:flex;align-items:center;justify-content:space-between;height:70px}
.marque{display:flex;align-items:center;gap:11px;text-decoration:none}
.piece{
  width:38px;height:38px;border-radius:50%;flex:none;
  background:radial-gradient(circle at 35% 30%,#F4D690,var(--or) 60%,var(--or-fonce) 100%);
  box-shadow:inset 0 -2px 4px rgba(0,0,0,.28);
  display:flex;align-items:center;justify-content:center;
  font-family:var(--font-disp);font-weight:900;font-size:18px;color:#5a4212;
}
.nom{font-family:var(--font-corps);font-weight:800;font-size:18px;color:#fff;letter-spacing:-.2px}
.nom em{font-style:normal;font-weight:500;color:#9aa0c6;font-size:14px;margin-left:2px}
.nav{display:flex;gap:6px}
.nav a{
  color:#c3c8e2;text-decoration:none;font-size:14px;font-weight:600;
  padding:9px 16px;border-radius:10px;transition:background .15s,color .15s;
}
.nav a:hover{background:rgba(255,255,255,.08);color:#fff}

/* ===== hero ===== */
.hero{
  position:relative;overflow:hidden;
  background:
    radial-gradient(120% 70% at 15% -10%, #24306b 0%, transparent 55%),
    radial-gradient(110% 70% at 100% 0%, #2a1f4d 0%, transparent 48%),
    linear-gradient(165deg, var(--nuit) 0%, var(--nuit-2) 100%);
  padding:88px 0 96px;
  color:#fff;
  text-align:center;
}
.glow{position:absolute;border-radius:50%;pointer-events:none}
.glow--or{width:340px;height:340px;right:-100px;top:-100px;background:radial-gradient(circle at 35% 30%,#F4D690,var(--or) 55%,transparent 78%);opacity:.28}
.glow--menthe{width:280px;height:280px;left:-90px;bottom:-90px;background:radial-gradient(circle at 35% 30%,#7CE0C4,var(--menthe) 60%,transparent 78%);opacity:.22}
.hero-int{position:relative;max-width:740px}
.eyebrow{font-family:var(--font-corps);font-weight:700;font-size:12.5px;letter-spacing:2.2px;color:var(--or);text-transform:uppercase;margin-bottom:18px}
.eyebrow--or{color:var(--or-fonce)}
.eyebrow--menthe{color:var(--menthe-fonce)}
.hero h1{
  font-family:var(--font-disp);font-weight:900;font-size:44px;line-height:1.12;letter-spacing:-1px;
}
.hero-sous{font-size:17px;line-height:1.6;color:#C9CCE3;max-width:560px;margin:22px auto 0}
.hero-cta{display:flex;gap:14px;justify-content:center;margin-top:34px;flex-wrap:wrap}
.hero-duo{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:56px}
.duo-badge{
  width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  font-family:var(--font-disp);font-weight:900;font-size:22px;
}
.duo-badge--or{background:radial-gradient(circle at 35% 30%,#F4D690,var(--or) 60%,var(--or-fonce) 100%);color:#5a4212;box-shadow:inset 0 -2px 4px rgba(0,0,0,.28)}
.duo-badge--menthe{background:radial-gradient(circle at 35% 30%,#8FEBCE,var(--menthe) 60%,var(--menthe-fonce) 100%);color:#0d3b2e;box-shadow:inset 0 -2px 4px rgba(0,0,0,.28)}
.duo-trait{width:60px;height:1px;background:rgba(255,255,255,.25)}

/* ===== boutons ===== */
.bouton{
  display:inline-block;text-decoration:none;font-family:var(--font-corps);font-weight:700;font-size:15px;
  padding:14px 26px;border-radius:14px;transition:filter .15s,transform .15s;
}
.bouton:hover{filter:brightness(1.05)}
.bouton:active{transform:translateY(1px)}
.bouton--or{background:linear-gradient(120deg,var(--or),var(--or-fonce));color:#3d2c0e}
.bouton--menthe{background:linear-gradient(120deg,var(--menthe),var(--menthe-fonce));color:#fff}
.bouton--menthe-c{background:rgba(255,255,255,.08);border:1.5px solid rgba(255,255,255,.35);color:#fff}
.lien-simple{display:inline-block;margin-left:6px;font-weight:700;font-size:14px;color:var(--or-fonce);text-decoration:none}
.lien-simple:hover{text-decoration:underline}

/* ===== sections produit ===== */
.produit{padding:96px 0;background:var(--creme)}
.produit--inverse{background:var(--surface-menthe)}
.produit-int{display:flex;align-items:center;gap:64px}
.produit--inverse .produit-int{flex-direction:row-reverse}
.produit-texte{flex:1.05;min-width:0}
.produit-visuel{flex:.85;min-width:0;display:flex;justify-content:center}
.produit h2{font-family:var(--font-disp);font-weight:600;font-size:32px;line-height:1.2;letter-spacing:-.5px;color:var(--nuit);margin-bottom:16px}
.produit-texte>p{font-size:15.5px;line-height:1.7;color:var(--gris);max-width:480px}

.benefices{display:flex;flex-wrap:wrap;gap:20px 28px;margin-top:34px}
.benef{display:flex;gap:13px;width:calc(50% - 14px);min-width:210px}
.ic{
  width:38px;height:38px;border-radius:11px;flex:none;display:flex;align-items:center;justify-content:center;
  font-family:var(--font-disp);font-size:17px;font-weight:700;
}
.ic--or{background:rgba(231,178,76,.16);color:var(--or-fonce)}
.ic--menthe{background:rgba(51,198,160,.16);color:var(--menthe-fonce)}
.benef h3{font-size:14.5px;font-weight:800;color:var(--nuit);margin-bottom:3px}
.benef p{font-size:13px;line-height:1.5;color:var(--gris)}

.produit-cta{margin-top:38px;display:flex;align-items:center;flex-wrap:wrap;gap:6px}

/* mock cards */
.mock{
  width:270px;background:#fff;border-radius:22px;padding:24px 22px;color:var(--encre);
  box-shadow:0 30px 60px -22px rgba(20,27,60,.35);
}
.mock-lab{font-size:11px;font-weight:700;color:var(--gris);text-transform:uppercase;letter-spacing:.6px}
.mock-solde{font-family:var(--font-disp);font-weight:900;font-size:30px;color:var(--nuit);margin:8px 0 16px}
.mock-op{display:flex;justify-content:space-between;align-items:center;padding:11px 0;border-top:1px solid var(--ligne);font-size:12.5px;font-weight:700}
.mock-op b{color:var(--nuit)}
.mock-op b.plus{color:var(--menthe-fonce)}
.mock-op b.menthe-txt{color:var(--menthe-fonce)}
.mock-montant{font-family:var(--font-disp);font-weight:900;font-size:26px;color:var(--nuit);margin:10px 0 12px}
.mock-montant small{font-family:var(--font-corps);font-weight:600;font-size:13px;color:var(--gris)}
.barre-progres{height:10px;border-radius:6px;background:var(--surface-menthe);overflow:hidden;margin-bottom:6px}
.barre-remplie{width:68%;height:100%;background:linear-gradient(90deg,var(--menthe),var(--menthe-fonce));border-radius:6px}

/* ===== confiance ===== */
.confiance{
  padding:88px 0;text-align:center;color:#fff;
  background:linear-gradient(165deg, var(--nuit) 0%, var(--nuit-2) 100%);
}
.titre-centre{font-family:var(--font-disp);font-weight:600;font-size:30px;color:#fff;margin-bottom:52px}
.piliers{display:flex;gap:24px;justify-content:center;flex-wrap:wrap}
.pilier{width:280px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.10);border-radius:20px;padding:30px 26px}
.pilier-n{font-size:30px;margin-bottom:16px}
.pilier h3{font-family:var(--font-corps);font-weight:800;font-size:16px;margin-bottom:8px}
.pilier p{font-size:13.5px;line-height:1.6;color:#B7BBD6}

/* ===== footer ===== */
.pied{background:var(--nuit-2);color:#fff;padding:56px 0 0}
.pied-int{display:flex;justify-content:space-between;gap:40px;flex-wrap:wrap;padding-bottom:40px;border-bottom:1px solid rgba(255,255,255,.08)}
.pied-marque .marque{margin-bottom:12px}
.pied-marque p{font-size:13px;color:#9aa0c6;max-width:280px;line-height:1.5}
.pied-liens{display:flex;gap:56px;flex-wrap:wrap}
.pied-liens h4{font-size:12px;text-transform:uppercase;letter-spacing:1px;color:#7d84ab;margin-bottom:14px}
.pied-liens a{display:block;font-size:14px;font-weight:600;color:#dcdfef;text-decoration:none;margin-bottom:10px}
.pied-liens a:hover{color:var(--or)}
.pied-copy{padding:22px 0 26px;font-size:12.5px;color:#767ca3;text-align:center}

/* ===== responsive ===== */
@media (max-width:860px){
  .nav{display:none}
  .hero h1{font-size:32px}
  .hero-sous{font-size:15.5px}
  .produit-int{flex-direction:column !important}
  .produit-visuel{margin-top:44px}
  .produit h2{font-size:26px}
  .benef{width:100%}
  .piliers{flex-direction:column;align-items:center}
}

/* ===== CTA partenariat (page d'accueil) ===== */
.cta-partenariat{padding:80px 0;text-align:center;background:var(--creme)}
.cta-partenariat h2{font-family:var(--font-disp);font-weight:600;font-size:28px;color:var(--nuit);margin-bottom:12px}
.cta-partenariat p{font-size:15px;color:var(--gris);max-width:480px;margin:0 auto 28px}

/* ===== formulaire de partenariat ===== */
.form-hero{
  position:relative;overflow:hidden;padding:64px 0 56px;color:#fff;text-align:center;
  background:radial-gradient(120% 70% at 15% -10%, #24306b 0%, transparent 55%),linear-gradient(165deg, var(--nuit) 0%, var(--nuit-2) 100%);
}
.form-hero-int{position:relative;max-width:640px;margin:0 auto}
.form-hero h1{font-family:var(--font-disp);font-weight:900;font-size:34px;line-height:1.15;letter-spacing:-.5px}
.form-hero .hero-sous{margin-top:14px}
.form-section{padding:56px 0 90px;background:var(--creme)}
.conteneur-etroit{max-width:640px}

.carte-form{background:#fff;border-radius:24px;padding:36px 34px;box-shadow:0 30px 60px -30px rgba(20,27,60,.25)}
.carte-succes{text-align:center;padding:56px 34px}
.succes-icone{
  width:60px;height:60px;border-radius:50%;background:rgba(51,198,160,.14);color:var(--menthe-fonce);
  display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:900;margin:0 auto 20px;
}
.carte-succes h2{font-family:var(--font-disp);font-weight:600;font-size:24px;color:var(--nuit);margin-bottom:10px}
.carte-succes p{font-size:14.5px;color:var(--gris);margin-bottom:26px;line-height:1.6}

.alerte-erreurs{background:rgba(214,76,76,.08);border:1px solid rgba(214,76,76,.25);color:#a72f2f;border-radius:14px;padding:16px 18px;margin-bottom:24px;font-size:13.5px}
.alerte-erreurs ul{margin:8px 0 0 18px;padding:0}
.alerte-erreurs li{margin-bottom:3px}

.piege-a-robot{position:absolute !important;left:-9999px !important;width:1px;height:1px;overflow:hidden}

.fp-titre-groupe{font-family:var(--font-corps);font-weight:800;font-size:13px;color:var(--nuit);text-transform:uppercase;letter-spacing:.5px;margin:28px 0 14px}
.fp-groupe .fp-titre-groupe{margin-top:0}
.fp-note{font-size:12px;color:var(--gris);margin:-6px 0 14px}

.fp-choix{display:flex;gap:12px}
.choix-carte{flex:1;position:relative;cursor:pointer}
.choix-carte input{position:absolute;opacity:0;inset:0;cursor:pointer;margin:0}
.choix-carte span{display:block;border:1.5px solid var(--ligne);border-radius:14px;padding:16px;text-align:center}
.choix-carte span b{display:block;font-size:14.5px;color:var(--nuit);margin-bottom:3px}
.choix-carte span small{font-size:11.5px;color:var(--gris)}
.choix-carte input:checked + span{border-color:var(--or);background:rgba(231,178,76,.08)}

.fp-ligne{display:flex;gap:14px}
.fp-champ{flex:1;margin-bottom:14px;min-width:0}
.fp-champ label{display:block;font-size:12.5px;font-weight:700;color:var(--nuit);margin-bottom:6px}
.fp-champ label small{font-weight:500;color:var(--gris)}
.fp-champ input[type="text"],.fp-champ input[type="date"],.fp-champ input[type="tel"],.fp-champ select{
  width:100%;background:#F7F8FB;border:1px solid var(--ligne);border-radius:11px;padding:11px 12px;
  font-family:var(--font-corps);font-size:13.5px;color:var(--encre);
}
.fp-champ input[type="file"]{
  width:100%;font-family:var(--font-corps);font-size:12.5px;color:var(--gris);
  background:#F7F8FB;border:1px dashed var(--ligne);border-radius:11px;padding:10px;
}

.fp-envoyer{width:100%;margin-top:16px;padding:15px;font-size:15.5px;border:none;cursor:pointer}
.fp-confidentialite{font-size:11.5px;color:var(--gris);text-align:center;margin-top:14px;line-height:1.5}

/* ===== admin ===== */
.admin-body{background:var(--surface-menthe)}
.admin-main{padding:36px 24px 70px}
.lien-retour{display:inline-block;margin-bottom:18px;font-size:13.5px;font-weight:700;color:var(--nuit);text-decoration:none}
.adm-tete2{display:flex;align-items:center;gap:14px;margin-bottom:26px}
.adm-tete2 h1{font-family:var(--font-disp);font-weight:600;font-size:26px;color:var(--nuit)}

.badge-type{font-size:11px;font-weight:800;padding:4px 10px;border-radius:999px;text-transform:uppercase;letter-spacing:.3px}
.badge-type--agent{background:rgba(231,178,76,.16);color:var(--or-fonce)}
.badge-type--distributeur{background:rgba(51,198,160,.16);color:var(--menthe-fonce)}

.badge-statut{font-size:11px;font-weight:700;padding:4px 10px;border-radius:999px}
.badge-statut--nouvelle{background:rgba(20,27,60,.08);color:var(--nuit)}
.badge-statut--contactee{background:rgba(231,178,76,.16);color:var(--or-fonce)}
.badge-statut--acceptee{background:rgba(51,198,160,.16);color:var(--menthe-fonce)}
.badge-statut--refusee{background:rgba(214,76,76,.10);color:#a72f2f}

.filtres-statut{display:flex;gap:6px;margin-bottom:22px;flex-wrap:wrap}
.filtres-statut a{font-size:12.5px;font-weight:700;padding:8px 14px;border-radius:999px;background:#fff;border:1px solid var(--ligne);color:var(--gris);text-decoration:none}
.filtres-statut a.on{background:var(--nuit);color:#fff;border-color:var(--nuit)}

.tableau-adm{background:#fff;border-radius:18px;border:1px solid var(--ligne);overflow:hidden}
.ta-tete,.ta-ligne{display:grid;grid-template-columns:1.4fr .8fr 1fr 1.2fr .9fr .8fr;gap:10px;align-items:center;padding:14px 20px}
.ta-tete{font-size:11px;color:var(--gris);font-weight:700;text-transform:uppercase;letter-spacing:.4px;border-bottom:1px solid var(--ligne)}
.ta-ligne{font-size:13.5px;color:var(--encre);text-decoration:none;border-bottom:1px solid var(--ligne);transition:background .12s}
.ta-ligne:last-child{border-bottom:none}
.ta-ligne:hover{background:var(--surface-menthe)}

.vide2{background:#fff;border-radius:18px;padding:40px;text-align:center;color:var(--gris);font-size:14px}

.grille-detail{display:flex;gap:22px;align-items:flex-start}
.panneau2{flex:1;background:#fff;border-radius:18px;border:1px solid var(--ligne);padding:24px 26px}
.panneau2 h3{font-size:13px;font-weight:800;color:var(--nuit);text-transform:uppercase;letter-spacing:.4px;margin:22px 0 12px}
.panneau2 h3:first-child{margin-top:0}
.fiche{display:flex;flex-direction:column;gap:0}
.fiche dt{font-size:11.5px;color:var(--gris);margin-top:10px}
.fiche dd{font-size:14px;font-weight:600;color:var(--encre);margin:2px 0 0}
.fiche dd a{color:var(--or-fonce);text-decoration:none}

.docs-liste{display:flex;flex-direction:column;gap:8px}
.doc-item{display:block;padding:12px 14px;border-radius:11px;background:var(--surface-menthe);color:var(--nuit);text-decoration:none;font-size:13.5px;font-weight:700}
.doc-item--absent{color:var(--gris);font-weight:500;background:#F7F8FB}

.form-statut{display:flex;gap:10px}
.form-statut select{flex:1;background:#F7F8FB;border:1px solid var(--ligne);border-radius:11px;padding:10px 12px;font-family:var(--font-corps);font-size:13.5px}

@media (max-width:760px){
  .grille-detail{flex-direction:column}
  .ta-tete{display:none}
  .ta-ligne{grid-template-columns:1fr;gap:4px;padding:14px 16px}
}
