/* ══════════════════════════════════════════
   VOTRE SECOND PRINTEMPS — Wing Insight V7
   ══════════════════════════════════════════ */

/* ── COULEURS ── */
:root {
  --gd:    #374024;   /* vert foncé — titres, texte principal */
  --gm2:   #667A52;   /* vert moyen — textes courants */
  --gm:    #A1B478;   /* vert accent — notes, mentions légères */
  --gl:    #C2CEB6;   /* vert sauge — fonds alternés */
  --gp:    #E5EADA;   /* vert pâle — encadrés, fond page */
  --gold:  #A29E69;   /* or kaki — étoiles, contacts, accents */
  --gold2: #7A7843;   /* or foncé — tags, early bird, hover */
  --blanc: #FFFFFF;
}

/* ── POLICES ── */
:root {
  --script: 'Segoe Script', 'Great Vibes', cursive;  
  --corps:  'Verdana', Geneva, sans-serif;
}

/* ── BASE ── */
* { margin:0; padding:0; box-sizing:border-box; }
body { background:var(--gp); color:var(--gd); font-family:var(--corps); font-size:14px; line-height:1.75; overflow-x:hidden; }
.wrap { max-width:740px; margin:0 auto; }

/* ── HERO ── */
.hero { background:var(--gd); padding:72px 40px 60px; text-align:center; }

.hero-eyebrow {
  font-size:9px; letter-spacing:4px; text-transform:uppercase;
  color:var(--gold); margin-bottom:20px; display:block; font-weight:700;
  font-family:var(--corps);
}

.hero-titre {
  font-family:var(--script); font-size:53px; color:var(--gp);
  line-height:1.15; margin-bottom:12px; font-weight:400;
}

.hero-sous {
  font-family:var(--script); font-size:15px;
  color:rgba(229,234,218,0.65); max-width:500px;
  margin:0 auto 36px; line-height:1.65;
}

.date-lbl {
  font-size:9px; letter-spacing:3px; text-transform:uppercase;
  color:rgba(162,158,105,0.65); margin-bottom:10px; display:block;
}

.date-sel { display:flex; justify-content:center; gap:12px; flex-wrap:wrap; margin-bottom:32px; }

.dbtn {
  background:transparent; border:1px solid rgba(162,158,105,0.38);
  color:rgba(229,234,218,0.72); font-family:var(--corps);
  font-size:11px; padding:9px 20px; cursor:pointer; transition:all .2s;
}
.dbtn:hover { border-color:var(--gold); color:var(--gold); }
.dbtn.on { background:var(--gold); border-color:var(--gold); color:#fff; }

.hero-meta { display:flex; justify-content:center; gap:24px; flex-wrap:wrap; margin-bottom:36px; }
.mi { color:rgba(229,234,218,0.78); font-size:11px; display:flex; align-items:center; gap:6px; }
.mdot { width:3px; height:3px; background:var(--gold); border-radius:50%; }

/* ── BOUTON CTA ── */
.cta {
  background:var(--gold); color:#fff; font-family:var(--corps);
  font-weight:700; font-size:10px; letter-spacing:2.5px;
  text-transform:uppercase; padding:13px 36px;
  cursor:pointer; border:none; transition:background .2s;
}
.cta:hover { background:var(--gold2); }

.hero-promesse {
  margin-top:36px; font-family:var(--script); font-size:15px;
  color:rgba(229,234,218,0.45); max-width:520px;
  margin-left:auto; margin-right:auto; line-height:1.75;
}

/* ── SECTIONS ── */
.sec       { padding:56px 40px; }
.sec-sauge { background:var(--gl); padding:56px 40px; }
.sec-pale  { background:var(--gp); padding:56px 40px; }
.sec-fonce { background:var(--gd); padding:56px 40px; text-align:center; }

/* ── TAGS ── */
.tag {
  font-size:10px; letter-spacing:4px; text-transform:uppercase;
  color:var(--gold2); margin-bottom:12px; display:block;
  font-weight:700; font-family:var(--corps);
}

/* ── TITRES SECTION ── */
.stitle {
  font-family:var(--script); font-size:24px; color:var(--gd);
  margin-bottom:18px; line-height:1.3; font-weight:400;
}

/* ── CORPS TEXTE ── */
.corps { font-size:13px; color:var(--gm2); line-height:1.9; }
.corps p { margin-bottom:12px; }

.sep { width:36px; height:2px; background:var(--gold); margin:0 auto 48px; opacity:.55; }

/* ── POUR QUI ── */
.forlist { list-style:none; font-size:12px; color:var(--gm2); line-height:2.2; margin-top:18px; }
.forlist li::before { content:'— '; color:var(--gold2); }

/* ── PROGRAMME ── */
.prog-item {
  display:grid; grid-template-columns:76px 1fr; gap:16px;
  padding:18px 0; border-bottom:1px solid rgba(55,64,36,0.1);
}
.prog-item:first-child { border-top:1px solid rgba(55,64,36,0.1); }
.prog-h { font-family:var(--script); font-size:15px; color:var(--gd); padding-top:1px; }
.prog-t { font-family:var(--script); font-size:16px; color:var(--gd); margin-bottom:4px; font-weight:400; }
.prog-d { font-size:12px; color:var(--gm2); line-height:1.75; }
.htag {
  display:inline-block; background:var(--gm2); color:#fff;
  font-size:11px; font-weight:700; letter-spacing:1.5px;
  text-transform:uppercase; padding:3px 10px; margin-top:7px;
}

/* ── CE QUI EST INCLUS ── */
.incl-titre { font-family:var(--script); font-size:24px; color:var(--gd); margin-bottom:32px; font-weight:400; }
.incl-grille { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; max-width:740px; margin:0 auto; }
.incl-item { background:var(--blanc); padding:24px 16px; text-align:center; border:1px solid rgba(55,64,36,0.1); }
.incl-star { font-family:var(--script); font-size:15px; color:var(--gold); margin-bottom:8px; display:block; }
.incl-txt { font-size:12px; color:var(--gd); line-height:1.65; }

/* ── TÉMOIGNAGE ── */
.testi-q {
  font-family:var(--script); font-size:15px; color:var(--gd);
  line-height:1.7; margin-bottom:16px; font-weight:400; padding:0 16px;
}
.testi-q::before { content:'" '; font-size:32px; color:var(--gold); line-height:0; vertical-align:-10px; }
.testi-q::after  { content:' "'; font-size:32px; color:var(--gold); line-height:0; vertical-align:-10px; }
.testi-nom  { font-size:11px; letter-spacing:2px; text-transform:uppercase; color:var(--gold); font-weight:700; }
.testi-role { font-size:11px; color:var(--gold2); margin-top:3px; }

/* ── TARIF ── */
.tarif-boite {
  border:1px solid rgba(162,158,105,0.38); padding:36px 28px;
  max-width:320px; margin:24px auto 0; background:var(--blanc);
}
.tarif-lbl {
  font-size:10px; letter-spacing:3px; text-transform:uppercase;
  color:var(--gold2); margin-bottom:10px; display:block; font-weight:700;
}
.tarif-montant { font-family:var(--corps); font-size:19px; color:var(--gd); font-weight:normal; line-height:1.2; }
.early { font-size:13px; color:var(--gold2); margin-top:12px; font-style:italic; }

.facture-box {
  margin-top:20px; padding:12px 16px; border-left:3px solid var(--gold);
  background:var(--blanc); text-align:left; font-size:12px;
  color:var(--gm2); line-height:1.75; max-width:800px;
  margin-left:auto; margin-right:auto;
}
.facture-box strong { color:var(--gd); font-size:12px; }

.tarif-notes { font-size:11px; color:var(--gm); margin-top:14px; line-height:1.9; }

/* ── DATE PICK ── */
.dpick { margin-top:20px; text-align:center; }
.dpick-lbl { font-size:11px; color:var(--gm2); margin-bottom:8px; display:block; }
.dpick-btns { display:flex; justify-content:center; gap:10px; flex-wrap:wrap; }
.dp {
  background:transparent; border:1px solid rgba(162,158,105,0.32);
  color:var(--gm2); font-family:var(--corps); font-size:11px;
  padding:7px 14px; cursor:pointer; transition:all .2s;
}
.dp:hover { background:var(--gp); }
.dp.on { background:var(--gd); color:var(--gp); border-color:var(--gd); }

/* ── MAGDA ── */
.magda-bq {
  font-family:var(--script); font-size:17px; color:var(--gd);
  line-height:1.65; margin-bottom:24px; padding-left:20px;
  border-left:3px solid var(--gold); font-weight:400;
}
.magda-bio { font-size:13px; color:var(--gm2); line-height:1.9; margin-bottom:10px; }
.magda-nom { font-family:var(--script); font-size:21px; color:var(--gd); margin-top:18px; display:block; font-weight:400; }
.magda-role { font-size:11px; letter-spacing:2px; text-transform:uppercase; color:var(--gold); font-weight:700; margin-top:4px; display:block; }

.magda-layout { display:flex; gap:32px; align-items:flex-start; }
.magda-texte { flex:1; }
.magda-photo { width:160px; height:160px; border-radius:50%; object-fit:cover; flex-shrink:0; }
@media (max-width:600px) {
.magda-layout { flex-direction:column; align-items:center; text-align:center; }
}

/* ── ACCÈS ── */
.acces-grille { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-top:20px; }
.acces-carte { background:var(--blanc); padding:20px; border-left:3px solid var(--gold); }
.acces-t { font-family:var(--script); font-size:15px; color:var(--gd); margin-bottom:8px; font-weight:400; }
.acces-carte p { font-size:12px; color:var(--gm2); line-height:1.9; margin-bottom:3px; }
.acces-carte a { color:var(--gm2); font-size:12px; text-decoration:none; }
.acces-carte a:hover { text-decoration:underline; color:var(--gold2); }

/* ── FAQ ── */
.faq-item { border-bottom:1px solid rgba(55,64,36,0.1); padding:14px 0; }
.faq-q { font-family:var(--script); font-size:15px; color:var(--gd); margin-bottom:6px; font-weight:400; }
.faq-r { font-size:12px; color:var(--gm2); line-height:1.85; }

/* ── FOOTER ── */
.footer-t { font-family:var(--script); font-size:28px; color:var(--gp); margin-bottom:8px; line-height:1.3; font-weight:400; }
.footer-sub { font-family:var(--corps); font-size:15px; color:rgba(229,234,218,0.55); margin-bottom:28px; }
.contact-row { display:flex; justify-content:center; gap:20px; flex-wrap:wrap; margin:0 0 28px; }
.cl { color:var(--gold); font-size:14px; text-decoration:none; transition:color .2s; }
.cl:hover { color:#fff; }
.footer-mention { font-size:11px; color:rgba(229,234,218,0.4); margin-top:16px; line-height:1.9; max-width:460px; margin-left:auto; margin-right:auto; }
.footer-mention-legal { font-size:9px; color:rgba(161,180,120,0.6); margin-top:6px; }

/* ── FIX CKEDITOR ── */
.cke_editable { color:#374024 !important; background:#fff !important; }

/* ── RESPONSIVE ── */
@media (max-width:600px) {
  .acces-grille,
  .incl-grille { grid-template-columns:1fr; }
  .prog-item { grid-template-columns:1fr; }
  .sec,
  .sec-sauge,
  .sec-pale,
  .sec-fonce,
  .hero { padding-left:24px; padding-right:24px; }
}