/* ============================================================
   PAGE BIORÉSONANCE — surcouche sur le système de l'accueil validé
   Menu et footer repris à l'identique de l'accueil.
   Les modules manifeste, étapes, cards, témoignages, FAQ et CTA
   sont ceux des pages déjà validées : rien de nouveau inventé.
   ============================================================ */

/* --- NAVBAR page interne : crème rosé fixe, dimensions de l'accueil --- */
.nav{
  background:rgba(245,237,232,.94);
  backdrop-filter:blur(14px) saturate(1.05);
  color:var(--encre);
  border-bottom:1px solid rgba(201,164,90,.55);
  animation:none;
}
@supports (animation-timeline: scroll()){
  .nav{
    background:rgba(245,237,232,.94); color:var(--encre);
    border-bottom-color:rgba(201,164,90,.55); animation:none;
  }
}
.nav-links a.is-active{color:var(--or); background-size:100% 1px; font-weight:500}

/* chips recentrées dans les blocs en colonne centrée */
.hero-int .chip,.sec-head--center .chip,.manifeste .chip{align-self:center}

/* ============================================================
   2 — HERO PAGE INTERNE
   ============================================================ */
.hero-int{
  min-height:0; display:flex; align-items:center; justify-content:center;
  text-align:center; overflow:hidden; padding:146px 0 68px;
  background:linear-gradient(150deg,#7c6a86,#5f5069 55%,#463b50);
}
.hero-int .bg{
  position:absolute; inset:0; z-index:0;
  background-image:url("https://images.unsplash.com/photo-1620733723572-11c53f73a416?auto=format&fit=crop&w=1920&q=80");
  background-size:cover; background-position:center 52%;
  transform:scale(1.05); animation:heroDrift 30s ease-in-out infinite alternate;
}
.hero-int .veil{position:absolute; inset:0; z-index:1;
  background:
    linear-gradient(180deg,rgba(70,59,80,.5),rgba(107,91,123,.5) 45%,rgba(88,74,102,.72)),
    linear-gradient(0deg,rgba(107,91,123,.5),rgba(107,91,123,.5));
}
.hero-int .grid-p{position:absolute; inset:0; z-index:1; opacity:.45;
  background-image:linear-gradient(rgba(245,237,232,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(245,237,232,.12) 1px,transparent 1px);
  background-size:92px 92px;
  -webkit-mask-image:radial-gradient(ellipse 70% 66% at 50% 46%,#000 18%,transparent 78%);
  mask-image:radial-gradient(ellipse 70% 66% at 50% 46%,#000 18%,transparent 78%);
}
.hero-int .blob-1{width:560px; height:560px; top:-26%; left:-10%; background:rgba(196,168,212,.5); z-index:1}
.hero-int .blob-2{width:470px; height:470px; bottom:-28%; right:-6%; background:rgba(201,164,90,.4); z-index:1}
/* ornement signature de CETTE page : l'onde, pas la lune */
.hero-int .wave-wm{position:absolute; z-index:1; width:min(64vw,760px);
  top:16%; right:-8%; color:var(--or-clair); opacity:.16;
  animation:waveFloat 22s ease-in-out infinite alternate}
@keyframes waveFloat{from{transform:translateY(0) scale(1)} to{transform:translateY(22px) scale(1.05)}}
.hero-int .inner{position:relative; z-index:3; color:var(--creme); display:flex; flex-direction:column; align-items:center}
.hero-int h1{
  color:var(--creme); font-style:italic; font-weight:600;
  font-size:clamp(29px,4.5vw,54px); letter-spacing:-.03em; line-height:1.05; margin-top:6px;
  text-shadow:0 2px 40px rgba(63,50,47,.3); max-width:20ch;
}
.hero-int h1 .hl{color:var(--or-clair)}
.hero-int .lead{color:rgba(245,237,232,.84); text-align:center; margin:18px auto 0; max-width:60ch}
.hero-int .hero-row{display:flex; align-items:center; justify-content:center; gap:18px; flex-wrap:wrap; margin-top:30px; align-self:center}
.hero-int .hero-row .btn{height:52px; padding:0 8px 0 26px}

/* ============================================================
   4 — LE PRINCIPE : texte + 3 chiffres XL
   ============================================================ */
.principe{background:var(--creme); overflow:hidden; padding:110px 0}
.principe .lotus-wm{width:min(34vw,400px); right:-6%; top:-8%; opacity:.09}
.principe h2{max-width:700px}
.principe .lead{margin-top:24px; max-width:680px; line-height:1.78; font-size:18px}
.principe-wave{width:230px; margin:52px 0 46px; color:var(--or); opacity:.8}
.xl-row{display:grid; grid-template-columns:repeat(3,1fr); gap:28px}
.xl-num{position:relative; padding-left:30px}
.xl-num::before{content:""; position:absolute; left:0; top:6px; bottom:8px; width:1px;
  background:linear-gradient(rgba(201,164,90,.75),rgba(201,164,90,0))}
.xl-num b{
  display:block; font-family:"Fraunces",serif; font-style:italic; font-weight:400;
  font-size:clamp(48px,6.4vw,76px); color:var(--or); line-height:.92; letter-spacing:-.04em;
}
.xl-num span{display:block; margin-top:12px; font-size:15px; color:var(--encre-doux); letter-spacing:.02em}

/* ============================================================
   5 — LE DÉROULEMENT (module « étapes » de l'accueil)
   ============================================================ */
.deroulement{background:var(--mauve-pale); overflow:hidden; padding:104px 0}
.deroulement .blob-1{width:460px; height:460px; top:-22%; left:-8%; background:rgba(232,180,200,.45)}
.deroulement .blob-2{width:420px; height:420px; bottom:-24%; right:-8%; background:rgba(201,164,90,.28)}

/* ============================================================
   6 — POUR QUI (grille de 6 cards)
   ============================================================ */
.pourqui{background:var(--creme); overflow:hidden; padding:110px 0}
.pourqui .lotus-wm{width:min(38vw,440px); left:-7%; bottom:-12%; opacity:.09}
.pq-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:20px}
.pq-card{
  position:relative; overflow:hidden;
  background:var(--creme-hi); border:1px solid rgba(201,164,90,.4);
  border-radius:16px; padding:30px 26px 28px;
  box-shadow:var(--shadow-card);
  transition:transform .55s cubic-bezier(.2,.9,.25,1), box-shadow .55s ease, border-color .5s ease;
}
.pq-card::after{content:""; position:absolute; inset:auto -30% -60% auto; width:200px; height:200px; border-radius:50%;
  background:radial-gradient(closest-side,rgba(196,168,212,.5),transparent); filter:blur(30px); opacity:0; transition:opacity .6s ease}
.pq-card:hover{transform:translateY(-8px); border-color:rgba(201,164,90,.8); box-shadow:0 34px 60px -34px rgba(107,91,123,.6)}
.pq-card:hover::after{opacity:1}
.pq-card svg{width:30px; height:30px; color:var(--mauve); margin-bottom:18px}
.pq-card p{font-size:16.5px; line-height:1.5; color:var(--encre); position:relative; z-index:2}
.pq-cta{text-align:center; margin-top:48px; position:relative; z-index:2}

/* ============================================================
   7 — TARIFS BIORÉSONANCE (2 formules)
   ============================================================ */
.tarifs{background:var(--mauve-pale); overflow:hidden; padding:110px 0}
.tarifs .blob-1{width:470px; height:470px; top:-24%; right:-9%; background:rgba(196,168,212,.55)}
.tarifs .blob-2{width:400px; height:400px; bottom:-26%; left:-7%; background:rgba(201,164,90,.3)}
.tf-grid{display:grid; grid-template-columns:1fr 1fr; gap:24px; align-items:stretch; max-width:940px; margin:0 auto}
.tf-card{
  position:relative; display:flex; flex-direction:column;
  border-radius:24px; padding:44px 38px 38px;
  transition:transform .5s cubic-bezier(.2,.9,.25,1), box-shadow .5s ease;
}
.tf-card:hover{transform:translateY(-8px)}
.tf-card h3{font-size:clamp(22px,2.2vw,28px); font-style:italic}
.tf-dur{margin-top:10px; font-size:15px; letter-spacing:.02em}
.tf-price{display:flex; align-items:baseline; gap:14px; margin:22px 0 26px}
.tf-price b{font-family:"Fraunces",serif; font-style:italic; font-weight:400;
  font-size:clamp(44px,5vw,58px); line-height:.95; letter-spacing:-.04em; color:var(--or)}
.tf-price s{font-size:17px}
.tf-checks{display:flex; flex-direction:column; gap:12px; margin-bottom:32px}
.tf-checks li{display:flex; align-items:flex-start; gap:12px; font-size:16px; line-height:1.5}
.tf-checks svg{width:18px; height:18px; flex:none; margin-top:3px}
.tf-card .btn{margin-top:auto; justify-content:space-between}
/* formule 1 : card claire */
.tf-light{background:var(--creme-hi); border:1px solid rgba(201,164,90,.5); box-shadow:var(--shadow-card)}
.tf-light .tf-dur{color:var(--encre-doux)}
.tf-light .tf-checks li{color:var(--encre)}
.tf-light .tf-checks svg{color:var(--mauve)}
/* formule 2 : card mauve profond, mise en avant */
.tf-dark{background:var(--mauve-deep); color:var(--creme); border:1px solid rgba(201,164,90,.5);
  box-shadow:0 34px 70px -40px rgba(107,91,123,.85)}
.tf-dark h3{color:var(--creme)}
.tf-dark .tf-dur{color:rgba(245,237,232,.72)}
.tf-dark .tf-price b{color:var(--or-clair)}
.tf-dark .tf-price s{color:rgba(245,237,232,.55)}
.tf-dark .tf-checks li{color:rgba(245,237,232,.88)}
.tf-dark .tf-checks svg{color:var(--or-clair)}
.tf-badge{
  position:absolute; top:-15px; left:50%; transform:translateX(-50%);
  background:var(--or); color:var(--creme); border-radius:100px; padding:8px 22px;
  font-size:12px; letter-spacing:.14em; text-transform:uppercase; font-weight:500;
  box-shadow:0 14px 30px -16px rgba(201,164,90,.95); white-space:nowrap;
}
.tf-note{margin-top:34px; text-align:center; font-size:15px; font-style:italic; color:rgba(74,55,40,.6); position:relative; z-index:2}

/* ============================================================
   9 — FAQ (accordéon natif <details>, zéro JS)
   ============================================================ */
.faq{background:var(--mauve-pale); overflow:hidden; padding:110px 0}
.faq .blob-1{width:480px; height:480px; top:-24%; right:-10%; background:rgba(196,168,212,.55)}
.faq-grid{display:grid; grid-template-columns:.78fr 1.22fr; gap:72px; align-items:start}
.faq-aside{position:sticky; top:118px}
.faq-aside .lead{margin-top:18px}
.faq-aside .btn{margin-top:30px}
.faq-list{display:flex; flex-direction:column}
.faq-item{border-top:1px solid rgba(201,164,90,.45)}
.faq-item:last-child{border-bottom:1px solid rgba(201,164,90,.45)}
.faq-item summary{
  list-style:none; cursor:pointer; padding:26px 46px 26px 0; position:relative;
  font-size:clamp(17px,1.7vw,20px); font-weight:500; color:var(--encre); line-height:1.4;
  transition:color .35s ease;
}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary:hover{color:var(--or)}
.faq-item summary:focus-visible{outline:2px solid var(--or); outline-offset:4px; border-radius:6px}
.faq-item summary::after,.faq-item summary::before{
  content:""; position:absolute; right:6px; top:50%; background:var(--or);
  transition:transform .45s cubic-bezier(.2,.9,.25,1), opacity .35s ease;
}
.faq-item summary::before{width:17px; height:1.5px; transform:translateY(-50%)}
.faq-item summary::after{width:1.5px; height:17px; right:13.75px; transform:translateY(-50%)}
.faq-item[open] summary::after{transform:translateY(-50%) rotate(90deg); opacity:0}
.faq-item[open] summary{color:var(--or)}
.faq-answer{padding:0 46px 28px 0; font-size:16.5px; line-height:1.75; color:var(--encre-doux); max-width:62ch}
@media (prefers-reduced-motion: no-preference){
  .faq-item[open] .faq-answer{animation:faqIn .45s cubic-bezier(.2,.9,.25,1) both}
  @keyframes faqIn{from{opacity:0; transform:translateY(-8px)} to{opacity:1; transform:none}}
}

/* témoignages sur rose poudré (rupture de rythme) */
.testi--rose{background:var(--rose)}
.testi--rose .chip{background:rgba(245,237,232,.55); border-color:rgba(107,91,123,.25)}
.testi--rose .testi-ph{background:rgba(245,237,232,.45)}
.testi--rose .lotus-wm{width:min(32vw,380px); left:-5%; bottom:-12%; color:var(--creme); opacity:.3}

/* ============================================================
   RESPONSIVE — page Biorésonance
   ============================================================ */
@media (max-width:1080px){
  .pq-grid{grid-template-columns:repeat(2,1fr)}
  .faq-grid{gap:44px}
  .tf-card{padding:38px 30px 32px}
}


/* ============================ PROGRAMME H.E.B II ============================
   Ajouté le 9 octobre 2026. Une seule carte, large, volontairement différente
   des deux cartes de tarifs juste au-dessus : ce n'est pas une séance, c'est
   un abonnement, et le lecteur doit le voir avant de lire le prix.
   Le montant reprend la typographie de .tf-price b pour rester de la même
   famille, en plus petit, parce qu'il pèse moins lourd que 110 € ou 390 €. */
.heb{position:relative; overflow:hidden}
.heb .lotus-wm{position:absolute; bottom:-14%; left:-5%; width:min(420px,46vw);
  color:var(--or-clair); opacity:.12; pointer-events:none}

.heb-card{
  position:relative; display:grid; grid-template-columns:minmax(0,1fr) 268px;
  gap:clamp(28px,4vw,56px); align-items:center;
  max-width:940px; margin:0 auto; padding:clamp(32px,4vw,46px);
  background:var(--creme-hi); border:1px solid rgba(201,164,90,.5);
  border-radius:28px; box-shadow:var(--shadow-card);
}
.heb-corps .chip{margin-bottom:18px}
.heb-corps h2{margin:0}
.heb-sous{margin:8px 0 0; font-family:"Fraunces",serif; font-style:italic;
  font-size:18px; color:var(--or); letter-spacing:-.01em}
.heb-texte{margin:18px 0 0; color:var(--encre-doux); font-size:16.5px; line-height:1.72}

.heb-prix{
  display:flex; flex-direction:column; align-items:center; gap:16px;
  padding:26px 22px; border-radius:20px;
  background:var(--mauve-pale); border:1px solid rgba(196,168,212,.6);
}
.heb-montant{display:flex; align-items:baseline; gap:8px; margin:0}
.heb-montant b{font-family:"Fraunces",serif; font-style:italic; font-weight:400;
  font-size:clamp(38px,4vw,46px); line-height:.95; letter-spacing:-.04em; color:var(--or)}
.heb-montant span{font-size:15px; color:var(--encre-doux)}
.heb-acces{display:flex; align-items:center; gap:9px; margin:0;
  font-size:14.5px; color:var(--encre); text-align:center}
.heb-acces svg{width:18px; height:18px; flex:none; color:var(--mauve);
  fill:none; stroke:currentColor; stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round}

@media (max-width:860px){
  .heb-card{grid-template-columns:1fr; gap:28px}
  .heb-prix{flex-direction:row; justify-content:center; gap:26px; flex-wrap:wrap}
}

@media (max-width:768px){
  .hero-int{padding:118px 0 60px}
  .hero-int h1{font-size:clamp(27px,7.4vw,36px); max-width:20ch}
  .hero-int .hero-row{flex-direction:column; gap:14px; width:100%; margin-top:26px}
  .hero-int .hero-row .btn{width:100%; justify-content:space-between}

  .principe,.pourqui,.tarifs,.deroulement,.faq{padding:70px 0}
  .principe-wave{width:180px; margin:36px 0 32px}
  .xl-row{grid-template-columns:1fr; gap:22px}
  .xl-num{padding-left:22px}

  .pq-grid{grid-template-columns:1fr; gap:14px}
  .pq-card{padding:24px 22px 22px}
  .pq-card svg{width:26px; height:26px; margin-bottom:14px}
  .pq-card p{font-size:15.5px}
  .pq-cta{margin-top:34px}
  .pq-cta .btn{width:100%; justify-content:space-between}

  .tf-grid{grid-template-columns:1fr; gap:34px}
  .tf-card{padding:36px 26px 30px}
  .tf-badge{font-size:11px; padding:7px 18px}

  .faq-grid{grid-template-columns:1fr; gap:34px}
  .faq-aside{position:static}
  .faq-aside .btn{width:100%; justify-content:space-between}
  .faq-item summary{font-size:17px; padding:22px 40px 22px 0}
  .faq-answer{padding-right:0}

  .heb-card{padding:28px 22px}
  .heb-texte{font-size:15.5px}
  .heb-prix{padding:22px 18px}
}
