  :root{
    --violet:#1E3D34; --indigo:#255043; --bleu:#8FA6B5; --vert:#6E9384;
    --jaune:#C0A15E; --orange:#C39A66; --rose:#B08D7E;
    --fond:#FAF7F1; --encre:#2B2A26;
  }
  *{margin:0;padding:0;box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{font-family:'Jost','Nunito',system-ui,-apple-system,'Segoe UI',sans-serif;background:var(--fond);color:var(--encre);font-size:16px;line-height:1.65}
  h2,h3{font-family:'Cormorant Garamond',Garamond,'Times New Roman',serif;font-weight:600;line-height:1.2}
  .script{font-family:'Cormorant Garamond',Garamond,'Times New Roman',serif}
  .wrap{max-width:1040px;margin:0 auto;padding:0 22px}

  /* Arc-en-ciel signature (comme le trait sous le logo de l'affiche) */
  .arc{height:4px;border-radius:4px;background:linear-gradient(90deg,var(--violet),var(--indigo),var(--bleu),var(--vert),var(--jaune),var(--orange),var(--rose))}

  /* ---------- Navigation ---------- */
  nav{position:sticky;top:0;background:rgba(253,251,247,.93);backdrop-filter:blur(8px);z-index:10;box-shadow:0 1px 0 rgba(30,61,52,.12)}
  .nav-in{display:flex;align-items:center;justify-content:space-between;padding:12px 22px;max-width:1040px;margin:0 auto}
  .logo{font-family:'Cormorant Garamond',Garamond,'Times New Roman',serif;font-size:1.5rem;font-weight:700;color:var(--violet)}
  .logo span{display:block;font-family:'Jost','Nunito',system-ui,-apple-system,'Segoe UI',sans-serif;font-size:.6rem;font-weight:800;letter-spacing:.24em;text-transform:uppercase;color:#8B8371}
  .btn{display:inline-block;border:none;cursor:pointer;font-family:'Jost','Nunito',system-ui,-apple-system,'Segoe UI',sans-serif;font-weight:800;font-size:.95rem;
       background:linear-gradient(90deg,var(--orange),var(--rose));color:#fff;padding:13px 26px;border-radius:999px;text-decoration:none;
       box-shadow:0 4px 14px rgba(30,61,52,.3);transition:transform .2s ease, box-shadow .2s ease}
  .btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(30,61,52,.42)}
  .btn:focus-visible{outline:3px solid var(--encre);outline-offset:3px}
  .btn-nav{padding:9px 18px;font-size:.85rem}

  /* ---------- Héro : le dégradé de l'affiche ---------- */
  header.hero{position:relative;overflow:hidden;text-align:center;padding:90px 22px 100px;color:#fff;
    background:
      radial-gradient(700px 420px at 50% -10%, rgba(255,255,255,.22), transparent 60%),
      linear-gradient(170deg,var(--violet) 0%,var(--indigo) 22%,var(--bleu) 40%,var(--vert) 60%,var(--jaune) 80%,var(--orange) 100%)}
  .logo-bloc{display:flex;align-items:center;gap:10px}
  .logo-img{height:44px;width:auto}
  .logo-hero{width:min(520px,86vw);height:auto;display:block;margin:0 auto 10px;
    filter:drop-shadow(0 4px 18px rgba(43,42,38,.25))}
  .hero .halo{background:radial-gradient(closest-side, rgba(255,255,255,.92), rgba(255,255,255,.55) 60%, transparent);
    border-radius:32px;padding:26px 18px 16px;max-width:620px;margin:0 auto 14px}
  .hero .lieu{font-size:.78rem;letter-spacing:.22em;text-transform:uppercase;font-weight:800;color:rgba(255,255,255,.85);margin-bottom:18px}
  .hero h1{margin:0 auto 6px}
  .hero .titre-script{display:block;font-family:'Cormorant Garamond',Garamond,'Times New Roman',serif;font-weight:700;font-size:clamp(2.8rem,9vw,4.6rem);
    text-shadow:0 2px 14px rgba(43,42,38,.35)}
  .hero .by{display:block;font-family:'Cormorant Garamond',Garamond,'Times New Roman',serif;font-style:italic;font-size:clamp(1.2rem,3vw,1.6rem);margin-bottom:18px}
  .hero .arc{max-width:280px;margin:0 auto 24px;background:linear-gradient(90deg,#fff3,#ffffffcc,#fff3),linear-gradient(90deg,var(--violet),var(--bleu),var(--vert),var(--jaune),var(--orange))}
  .hero p{max-width:52ch;margin:0 auto 30px;font-size:1.05rem;color:rgba(255,255,255,.94);text-shadow:0 1px 8px rgba(43,42,38,.3)}
  .hero .btn{background:#fff;color:var(--violet);box-shadow:0 6px 20px rgba(43,42,38,.3)}
  .hero .btn:hover{box-shadow:0 12px 28px rgba(43,42,38,.4)}

  /* ---------- Réassurance ---------- */
  .valeurs{padding:56px 0}
  .valeurs .grid{display:grid;gap:26px;grid-template-columns:1fr}
  .valeur{text-align:center;padding:0 8px}
  .valeur .ico{width:54px;height:54px;margin:0 auto 12px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.4rem;color:#fff}
  .valeur:nth-child(1) .ico{background:linear-gradient(135deg,var(--bleu),var(--indigo))}
  .valeur:nth-child(2) .ico{background:linear-gradient(135deg,var(--violet),var(--rose))}
  .valeur:nth-child(3) .ico{background:linear-gradient(135deg,var(--vert),var(--jaune))}
  .valeur h3{font-size:1.35rem;margin-bottom:6px}
  .valeur p{font-size:.94rem;color:#6E6657}

  /* ---------- Présentation Laurence : fond lavande ---------- */
  .presentation{padding:64px 0 70px;background:linear-gradient(180deg,#EFE9F7 0%,#EFE7D8 100%)}
  .presentation .portrait{margin:0 auto 24px}
  .presentation .duo{display:block}
  .portrait{justify-self:center;width:min(240px,70vw);aspect-ratio:1/1;border-radius:50%;padding:7px;
    background:conic-gradient(var(--violet),var(--indigo),var(--bleu),var(--vert),var(--jaune),var(--orange),var(--rose),var(--violet))}
  .portrait .photo{width:100%;height:100%;border-radius:50%;object-fit:cover;display:block;background:#fff}
  .portrait .photo-placeholder{width:100%;height:100%;border-radius:50%;background:#fff;
    display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;
    color:#8B8371;font-size:.8rem;font-weight:700;text-align:center;padding:14px}
  .portrait .photo-placeholder span{font-size:2rem}
  .presentation h2{font-size:clamp(1.8rem,4vw,2.4rem);margin-bottom:14px}
  .presentation h2 .script{color:var(--violet);font-size:1.15em}
  .presentation p{color:#4A463C;margin-bottom:14px}
  .presentation .signature{font-family:'Cormorant Garamond',Garamond,'Times New Roman',serif;font-style:italic;font-size:1.25rem;color:var(--violet)}
  @media(min-width:760px){
    .presentation .duo{grid-template-columns:1fr}
    .presentation .texte p{max-width:none}
  }

  /* Texte de présentation amélioré */
  .presentation .sur-titre{text-transform:uppercase;letter-spacing:2px;font-size:.72rem;
    font-weight:800;color:var(--rose);margin-bottom:6px}
  .presentation .accroche{font-family:'Cormorant Garamond',Garamond,'Times New Roman',serif;font-size:1.5rem;
    font-style:italic;color:var(--violet);margin-bottom:18px;line-height:1.3}
  .presentation .texte strong{color:var(--encre);font-weight:700}
  .presentation .cta-presentation{margin-top:20px;margin-bottom:0}

  /* Bloc « Flânez dans mon univers » */
  .presentation .flaner{margin-top:60px;clear:both;position:relative}
  .flaner-titre{text-align:center;font-family:'Cormorant Garamond',Garamond,'Times New Roman',serif;font-style:italic;
    font-size:1.45rem;color:var(--violet);margin-bottom:24px}
  .flaner-cartes{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;max-width:780px;margin:0 auto}
  @media(min-width:760px){.flaner-cartes{grid-template-columns:repeat(4,1fr)}}
  .flaner-carte{position:relative;display:flex;flex-direction:column;gap:5px;
    background:#fff;border-radius:18px;padding:22px 18px 20px;text-decoration:none;
    border:1.5px solid color-mix(in srgb,var(--fc) 18%, #eee);
    box-shadow:0 4px 14px rgba(60,40,90,.06);
    transition:transform .35s cubic-bezier(.2,.7,.3,1.3),box-shadow .35s ease,border-color .35s ease;
    overflow:hidden}
  .flaner-carte::before{content:"";position:absolute;inset:0 0 auto 0;height:4px;
    background:var(--fc);opacity:.85}
  .flaner-ico{font-size:1.9rem;line-height:1;transition:transform .35s ease}
  .flaner-nom{font-weight:800;color:var(--encre);font-size:1.02rem}
  .flaner-desc{font-size:.82rem;color:#7a6f92;line-height:1.35}
  .flaner-fleche{margin-top:6px;font-weight:800;color:var(--fc);
    transform:translateX(0);transition:transform .35s ease;align-self:flex-start}
  .flaner-carte:hover,.flaner-carte:focus-visible{transform:translateY(-6px);
    border-color:var(--fc);box-shadow:0 12px 26px color-mix(in srgb,var(--fc) 22%, transparent);outline:none}
  .flaner-carte:hover .flaner-ico,.flaner-carte:focus-visible .flaner-ico{transform:scale(1.18) rotate(-6deg)}
  .flaner-carte:hover .flaner-fleche,.flaner-carte:focus-visible .flaner-fleche{transform:translateX(6px)}
  /* apparition en cascade (gérée par JS via .flaner-vu) */
  @media(prefers-reduced-motion:no-preference){
    .flaner-carte{opacity:0;transform:translateY(38px) scale(.92)}
    .flaner-carte.flaner-vu{opacity:1;transform:translateY(0) scale(1);
      transition:opacity .6s ease,transform .65s cubic-bezier(.18,.8,.28,1.4)}
    .flaner-carte.flaner-vu:hover,.flaner-carte.flaner-vu:focus-visible{transform:translateY(-6px)}
  }

  /* ---------- Soins : les couleurs des chakras ---------- */
  .soins{padding:64px 0 72px;
    background:radial-gradient(600px 340px at 85% 0%, rgba(30,61,52,.08), transparent 70%), var(--fond)}
  .sec-titre{text-align:center;margin-bottom:10px;font-size:clamp(1.8rem,4vw,2.4rem)}
  .sec-sous{text-align:center;color:#6E6657;max-width:60ch;margin:0 auto 40px}
  .cartes{display:grid;gap:18px;grid-template-columns:1fr}
  .carte{--c:var(--bleu);background:#fff;border-radius:18px;padding:0 22px 22px;overflow:hidden;
         box-shadow:0 3px 14px rgba(43,42,38,.08);transition:transform .2s ease, box-shadow .2s ease}
  .carte:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(43,42,38,.16)}
  .carte .visuel{height:130px;margin:0 -22px 18px;display:flex;align-items:center;justify-content:center;position:relative;
    background:
      radial-gradient(circle at 50% 120%, rgba(255,255,255,.3), transparent 60%),
      linear-gradient(135deg,var(--c),color-mix(in srgb,var(--c) 55%, #2E2450))}
  .carte .visuel::before{content:"";position:absolute;inset:0;
    background:radial-gradient(circle at 50% 50%, transparent 38%, rgba(255,255,255,.12) 39%, transparent 40%),
               radial-gradient(circle at 50% 50%, transparent 52%, rgba(255,255,255,.08) 53%, transparent 54%)}
  .carte .visuel svg{width:74px;height:74px;fill:rgba(255,255,255,.95);filter:drop-shadow(0 2px 6px rgba(46,36,80,.35));position:relative}
  .carte .visuel.photo{height:170px;padding:0}
  .carte .visuel.photo img{width:100%;height:100%;object-fit:cover;display:block}
  .carte .visuel.photo::before{content:none}
  /* Pour remplacer par une vraie photo :
     <div class="visuel"><img src="photo.jpg" alt="..." style="width:100%;height:100%;object-fit:cover"></div> */
  .carte .pastille{width:38px;height:38px;border-radius:50%;background:color-mix(in srgb,var(--c) 18%, white);display:flex;align-items:center;justify-content:center;margin-bottom:12px;font-size:1.1rem}
  .carte h3{font-size:1.4rem;margin-bottom:6px;color:color-mix(in srgb,var(--c) 70%, var(--encre))}
  .carte p{font-size:.93rem;color:#6E6657;margin-bottom:14px}
  .carte .infos{font-size:.82rem;font-weight:800;color:var(--c);letter-spacing:.04em;margin-bottom:14px}
  .carte a{font-weight:800;font-size:.9rem;color:var(--encre);text-decoration:none;border-bottom:2px solid var(--c)}
  .c-bleu{--c:var(--bleu)} .c-vert{--c:var(--vert)} .c-violet{--c:var(--violet)}
  .c-rose{--c:var(--rose)} .c-orange{--c:var(--orange)} .c-or{--c:#C9941F} .c-arc{--c:var(--indigo)}
  .c-arc .visuel{background:radial-gradient(circle at 50% 130%, rgba(255,255,255,.35), transparent 60%),linear-gradient(135deg,var(--violet),var(--indigo) 25%,var(--bleu) 45%,var(--vert) 65%,var(--jaune) 85%,var(--orange))}

  /* ---------- Cartes soins en liste (photo + texte côte à côte) ---------- */
  .cartes.liste{grid-template-columns:1fr;gap:22px;max-width:880px;margin:0 auto}
  .cartes.liste .carte{display:grid;grid-template-columns:300px 1fr;padding:0;overflow:hidden;align-items:stretch}
  .cartes.liste .carte .visuel{height:auto;margin:0;min-height:230px;border-radius:0}
  .cartes.liste .carte .visuel.photo{height:auto;min-height:230px}
  .cartes.liste .carte .visuel.photo img{height:100%;min-height:230px}
  .cartes.liste .carte .contenu{padding:26px 28px;display:flex;flex-direction:column}
  .cartes.liste .carte .pastille{margin-top:0;margin-bottom:12px}
  .cartes.liste .carte .infos{margin-top:auto}
  @media(max-width:720px){
    .cartes.liste .carte{grid-template-columns:1fr}
    .cartes.liste .carte .visuel,.cartes.liste .carte .visuel.photo{min-height:180px}
    .cartes.liste .carte .visuel.photo img{min-height:180px}
  }

  /* ---------- Barre de filtres / tri des soins ---------- */
  .soins-filtres{max-width:880px;margin:0 auto 26px;display:flex;flex-wrap:wrap;
    gap:14px 18px;align-items:center;justify-content:space-between}
  .filtres-groupe{display:flex;flex-wrap:wrap;gap:8px}
  .filtre-btn{font-family:inherit;font-weight:700;font-size:.86rem;cursor:pointer;
    padding:8px 16px;border-radius:999px;border:1.5px solid color-mix(in srgb,var(--violet) 30%, #ddd);
    background:#fff;color:#6E6657;transition:all .18s ease}
  .filtre-btn:hover{border-color:var(--violet);color:var(--violet)}
  .filtre-btn.actif{background:var(--violet);border-color:var(--violet);color:#fff;
    box-shadow:0 4px 12px color-mix(in srgb,var(--violet) 35%, transparent)}
  .tri-bloc{font-size:.86rem;font-weight:700;color:#6E6657;display:flex;align-items:center;gap:6px}
  .tri-select{font-family:inherit;font-size:.86rem;font-weight:600;color:var(--encre);
    padding:8px 12px;border-radius:12px;border:1.5px solid color-mix(in srgb,var(--violet) 30%, #ddd);
    background:#fff;cursor:pointer}
  .tri-select:focus,.filtre-btn:focus-visible,.tri-select:focus-visible{outline:2px solid var(--violet);outline-offset:2px}
  .soins-vide{text-align:center;color:#6E6657;font-size:.95rem;margin:30px auto;max-width:880px}
  .lien-reset{background:none;border:none;color:var(--violet);font:inherit;font-weight:800;
    text-decoration:underline;cursor:pointer;padding:0}
  @media(max-width:600px){
    .soins-filtres{flex-direction:column;align-items:stretch}
    .filtres-groupe{justify-content:center}
    .tri-bloc{justify-content:center}
  }

  /* ---------- Apparition au défilement ---------- */
  .cartes.liste .carte{opacity:1;transform:none}
  @media(prefers-reduced-motion:no-preference){
    .cartes.liste .carte{opacity:0;transform:translateY(18px);
      transition:opacity .5s ease, transform .5s ease}
    .cartes.liste .carte.vu{opacity:1;transform:none}
    .cartes.liste .carte.apparait{animation:carteIn .35s ease both}
  }
  @keyframes carteIn{from{opacity:.3;transform:scale(.985)}to{opacity:1;transform:scale(1)}}

  /* ---------- Huiles essentielles ---------- */
  .huiles{padding:70px 0;text-align:center;color:#fff;
    background:linear-gradient(135deg,var(--orange),var(--jaune) 60%,var(--vert))}
  .huiles .sec-sous{color:rgba(255,255,255,.95)}
  .huiles .btn{background:#fff;color:var(--orange);box-shadow:0 6px 18px rgba(43,42,38,.25)}

  /* ---------- Témoignages ---------- */
  .temoignages{padding:64px 0;background:#F5F0E5}
  .quotes{display:grid;gap:18px;grid-template-columns:1fr}
  .quote{background:#fff;border-radius:18px;padding:24px;font-size:.95rem;color:#4A463C;border-left:5px solid var(--violet)}
  .quote:nth-child(2){border-left-color:var(--bleu)}
  .quote .qui{margin-top:12px;font-weight:800;font-size:.84rem;color:var(--encre)}
  .quote .qui span{font-weight:600;color:#8B8371}

  /* ---------- Zone & contact ---------- */
  .zone{padding:70px 0 80px;text-align:center}
  .adresse{font-size:1.05rem;margin-bottom:6px}
  .adresse strong{color:var(--violet)}
  .tel{display:inline-block;margin:8px 0 22px;font-weight:800;font-size:1.3rem;color:var(--violet);text-decoration:none}
  .villes{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:6px 0 34px}
  .ville{background:#fff;border:1px solid #EFE7D8;border-radius:999px;padding:7px 16px;font-size:.86rem;font-weight:700;color:#4A463C}

  footer{background:linear-gradient(135deg,#2B2A26,#52317A);color:#DACDB8;padding:36px 0;font-size:.84rem}
  footer .wrap{display:flex;flex-direction:column;gap:8px;align-items:center;text-align:center}
  footer a{color:#DACDB8}
  footer .arc{max-width:180px;width:100%}

  @media(min-width:720px){
    .valeurs .grid{grid-template-columns:repeat(3,1fr)}
    .cartes{grid-template-columns:repeat(2,1fr)}
    .carte.large{grid-column:span 2}
    .quotes{grid-template-columns:repeat(2,1fr)}
  }
  @media(min-width:980px){
    .cartes{grid-template-columns:repeat(3,1fr)}
    .carte.large{grid-column:span 1}
  }
  @media(prefers-reduced-motion:reduce){
    html{scroll-behavior:auto}
    .btn,.carte{transition:none}
  }

/* ---------- Pages intérieures ---------- */
.page-hero{position:relative;text-align:center;padding:54px 22px 58px;color:#fff;
  background:linear-gradient(150deg,var(--violet) 0%,var(--indigo) 30%,var(--bleu) 60%,var(--vert) 100%)}
.page-hero h1{font-family:'Cormorant Garamond',Garamond,'Times New Roman',serif;font-weight:600;font-size:clamp(1.9rem,5vw,2.8rem);max-width:24ch;margin:0 auto 10px;text-shadow:0 1px 10px rgba(43,42,38,.3)}
.page-hero p{max-width:56ch;margin:0 auto;color:rgba(255,255,255,.93)}
.page-hero .arc{max-width:200px;margin:20px auto 0}
nav .menu{display:flex;gap:16px;align-items:center;flex-wrap:wrap;font-size:.9rem;font-weight:700}
nav .menu a{color:var(--encre);text-decoration:none;padding:6px 2px;border-bottom:2px solid transparent}
nav .menu a:hover,nav .menu a.actif{border-bottom-color:var(--violet);color:var(--violet)}
@media(max-width:719px){nav .menu{display:none}}

.fiche{background:#fff;border-radius:18px;box-shadow:0 3px 14px rgba(43,42,38,.08);padding:26px 24px;margin-bottom:22px;border-top:6px solid var(--c,var(--violet))}
.fiche h2{font-size:1.6rem;margin-bottom:4px;color:color-mix(in srgb,var(--c,var(--violet)) 70%, var(--encre))}
.fiche .meta{font-weight:800;color:var(--c,var(--violet));letter-spacing:.04em;font-size:.92rem;margin-bottom:14px}
.fiche h3{font-size:1.12rem;margin:14px 0 4px}
.fiche p{color:#4A463C;font-size:.96rem}
.fiche .btn{margin-top:16px}
.note-legale{background:#F5F0E5;border-left:5px solid var(--violet);border-radius:10px;padding:14px 18px;font-size:.9rem;color:#4A463C;margin:26px 0}
.section{padding:54px 0}
.section.alt{background:var(--sable, #F5F0E5)}
.etapes{display:grid;gap:16px;grid-template-columns:1fr;counter-reset:etape}
.etape{background:#fff;border-radius:14px;padding:18px 18px 18px 60px;position:relative;box-shadow:0 2px 10px rgba(43,42,38,.07)}
.etape::before{counter-increment:etape;content:counter(etape);position:absolute;left:16px;top:16px;width:30px;height:30px;border-radius:50%;
  background:linear-gradient(135deg,var(--violet),var(--rose));color:#fff;font-weight:800;display:flex;align-items:center;justify-content:center;font-size:.92rem}
@media(min-width:760px){.etapes{grid-template-columns:repeat(3,1fr)}}
.formulaire{background:#fff;border-radius:18px;padding:26px;box-shadow:0 3px 14px rgba(43,42,38,.08);max-width:640px;margin:0 auto}
.formulaire label{display:block;font-weight:700;font-size:.9rem;margin:14px 0 6px}
.formulaire input,.formulaire textarea,.formulaire select{width:100%;padding:12px 14px;border:1.5px solid #EFE7D8;border-radius:10px;font-family:'Jost','Nunito',system-ui,-apple-system,'Segoe UI',sans-serif;font-size:1rem;color:var(--encre);background:#FAF7F1}
.formulaire input:focus,.formulaire textarea:focus,.formulaire select:focus{outline:2px solid var(--violet);border-color:var(--violet)}
.rgpd{font-size:.78rem;color:#8B8371;margin-top:12px}
.tableau{width:100%;border-collapse:collapse;background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 2px 10px rgba(43,42,38,.07)}
.tableau th{background:linear-gradient(90deg,var(--violet),var(--indigo));color:#fff;text-align:left;padding:12px 16px;font-size:.9rem}
.tableau td{padding:12px 16px;border-top:1px solid #F2ECDF;font-size:.94rem;color:#4A463C}
.legal h2{font-size:1.35rem;margin:28px 0 8px}
.legal p,.legal li{color:#4A463C;font-size:.95rem;margin-bottom:8px}
.a-completer{background:#FFF3D6;border-radius:4px;padding:0 5px;font-weight:700}
.faq details{background:#fff;border-radius:12px;padding:16px 18px;margin-bottom:10px;box-shadow:0 2px 8px rgba(43,42,38,.06)}
.faq summary{font-weight:800;cursor:pointer;color:var(--encre)}
.faq p{margin-top:8px;color:#4A463C;font-size:.94rem}

.galerie{display:grid;gap:16px;grid-template-columns:1fr;max-width:880px;margin:26px auto 0}
.galerie figure{margin:0}
.galerie img{width:100%;border-radius:18px;box-shadow:0 6px 22px rgba(43,42,38,.18);display:block}
.galerie figcaption{font-size:.85rem;color:#8B8371;text-align:center;margin-top:8px}
@media(min-width:720px){.galerie{grid-template-columns:1fr 1fr}}

.evt-date{display:inline-block;background:linear-gradient(90deg,#3E7A46,#7BA05B);color:#fff;font-weight:800;
  border-radius:999px;padding:8px 20px;font-size:.92rem;margin:0 auto 16px;display:table;margin-left:auto;margin-right:auto}

/* ---------- Menu mobile ---------- */
.burger{display:none;background:none;border:none;font-size:1.7rem;line-height:1;color:var(--violet);cursor:pointer;padding:4px 6px 6px;margin-left:6px}
@media(max-width:719px){
  .burger{display:block}
  nav .menu{display:none;position:absolute;top:100%;left:0;right:0;background:#FAF7F1;
    flex-direction:column;gap:0;padding:8px 22px 14px;box-shadow:0 14px 24px rgba(43,42,38,.18);
    border-bottom:2px solid #EFE7D8;z-index:30;
    max-height:calc(100vh - var(--nav-h, 68px));max-height:calc(100dvh - var(--nav-h, 68px));
    overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
  nav .menu.ouvert{display:flex}
  nav .menu a{padding:13px 2px;border-bottom:1px solid #F2ECDF;font-size:1rem}
  nav .menu a:last-child{border-bottom:none}
}
/* ---------- Réseaux sociaux ---------- */
.sociaux{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:8px}
.btn-social{display:inline-flex;align-items:center;gap:9px;font-weight:800;font-size:.95rem;color:#fff;
  padding:12px 22px;border-radius:999px;text-decoration:none;transition:transform .2s ease, box-shadow .2s ease}
.btn-social:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(43,42,38,.25)}
.btn-social svg{width:20px;height:20px;fill:#fff}
.btn-fb{background:#1877F2}
.btn-ig{background:linear-gradient(45deg,#F58529,#DD2A7B 55%,#8134AF)}
footer .suivez a{font-weight:800}
/* ---------- Partenaires ---------- */
.partenaire{background:#fff;border-radius:20px;box-shadow:0 4px 18px rgba(43,42,38,.1);padding:30px 26px;max-width:920px;margin:0 auto 26px;border-top:6px solid var(--bleu)}
.partenaire h2{font-size:1.7rem;margin-bottom:4px}
.partenaire .role{font-weight:800;color:var(--bleu);letter-spacing:.05em;text-transform:uppercase;font-size:.8rem;margin-bottom:14px}
.partenaire p{color:#4A463C;margin-bottom:12px}

/* ---------- Blog ---------- */
.article{max-width:740px;margin:0 auto}
.article .date{font-weight:800;color:#8B8371;font-size:.85rem;letter-spacing:.08em;text-transform:uppercase}
.article h2{font-size:1.6rem;margin:30px 0 10px}
.article p{color:#4A463C;margin-bottom:16px;font-size:1.02rem}
.article img{width:100%;border-radius:18px;box-shadow:0 6px 22px rgba(43,42,38,.16);margin:10px 0 6px}
.article .legende{font-size:.84rem;color:#8B8371;text-align:center;margin-bottom:18px}
.carte-blog{background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 4px 16px rgba(43,42,38,.1);max-width:680px;margin:0 auto}
.carte-blog img{width:100%;height:260px;object-fit:cover;display:block}
.carte-blog .corps{padding:22px 24px 26px}
.carte-blog h2{font-size:1.45rem;margin-bottom:8px}
.carte-blog p{color:#4A463C;font-size:.95rem;margin-bottom:14px}

.huile-bloc{--c:var(--vert);background:#fff;border-radius:18px;padding:24px 24px 20px;margin:22px 0;
  border-left:7px solid var(--c);box-shadow:0 4px 16px rgba(43,42,38,.1)}
.huile-bloc h2{color:color-mix(in srgb,var(--c) 75%, var(--encre));margin-top:0 !important}
.huile-bloc .latin{font-family:'Cormorant Garamond',Garamond,'Times New Roman',serif;font-style:italic;color:#8B8371;margin-top:-6px}
.huile-bloc .astuce{background:color-mix(in srgb,var(--c) 10%, white);border-radius:12px;padding:12px 16px;font-size:.95rem}

.meteo{display:none;align-items:center;gap:12px;justify-content:center;background:#fff;border-radius:999px;
  padding:10px 22px;box-shadow:0 3px 12px rgba(43,42,38,.12);font-weight:700;color:var(--encre);
  width:fit-content;margin:0 auto 8px;font-size:.95rem}
.meteo .ico{font-size:1.5rem}
.meteo .min{color:#8B8371;font-weight:600;font-size:.85rem}

/* ---------- Qui suis-je (page a-propos uniquement) ---------- */
.presentation-apropos{display:grid;grid-template-columns:300px 1fr;gap:36px;align-items:start;max-width:960px;margin:0 auto}
.presentation-apropos .photo img{width:100%;border-radius:50%;border:8px solid #fff;box-shadow:0 8px 26px rgba(43,42,38,.2)}
.presentation-apropos .texte p{color:#4A463C;margin-bottom:14px;font-size:1.04rem}
/* Accueil : la section présentation s'affiche en pleine largeur centrée */
.presentation-accueil .texte{max-width:760px;margin:0 auto}
.presentation-accueil .texte p{font-size:1.06rem;line-height:1.7;max-width:none}
.punchline{font-family:'Cormorant Garamond',Garamond,'Times New Roman',serif;font-style:italic;font-size:1.3rem;color:var(--violet);
  border-left:5px solid var(--jaune);padding:6px 0 6px 18px;margin:18px 0}
.video-presentation{display:flex;justify-content:center;margin-top:8px}
.video-presentation video{width:100%;max-width:380px;border-radius:24px;box-shadow:0 10px 32px rgba(43,42,38,.28);border:6px solid #fff}
.diplomes{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:22px;max-width:880px;margin:0 auto}
.diplome{background:#fff;border-radius:18px;padding:26px;box-shadow:0 4px 16px rgba(43,42,38,.1);text-align:center;border-top:6px solid var(--violet)}
.diplome .badge-d{font-size:2rem;margin-bottom:8px}
.diplome h3{font-size:1.15rem;margin-bottom:8px;color:var(--encre)}
.diplome p{color:#4A463C;font-size:.95rem}
@media(max-width:719px){.presentation-apropos{grid-template-columns:1fr}.presentation-apropos .photo{max-width:240px;margin:0 auto}}

  /* ========== Accueil v2 : héros duo, vague, badges, rituel ========== */
  header.hero{padding:64px 22px 110px}
  .hero-duo{display:grid;gap:38px;align-items:center;grid-template-columns:1fr;position:relative;z-index:1}
  .hero-texte{text-align:center}
  .hero .logo-hero{width:min(440px,82vw);margin:0 auto 14px;background:rgba(255,255,255,.93);
    border-radius:24px;padding:22px 26px;box-shadow:0 14px 40px rgba(43,42,38,.28)}
  .hero .arc{max-width:240px;margin:0 auto 20px}
  .hero .pitch{max-width:48ch;margin:0 auto 26px;font-size:1.05rem;color:rgba(255,255,255,.95);text-shadow:0 1px 8px rgba(43,42,38,.3)}
  .hero-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
  .btn-ghost{background:rgba(255,255,255,.14);color:#fff;border:2px solid rgba(255,255,255,.75);box-shadow:none}
  .btn-ghost:hover{background:rgba(255,255,255,.26);box-shadow:0 8px 20px rgba(43,42,38,.25)}
  .hero-video video{width:100%;display:block;border-radius:20px;box-shadow:0 18px 50px rgba(43,42,38,.4);
    border:5px solid rgba(255,255,255,.85);background:#2E2450;aspect-ratio:16/10;object-fit:cover}
  .hero-video .legende{margin-top:12px;text-align:center;font-size:.86rem;font-weight:700;color:rgba(255,255,255,.92);text-shadow:0 1px 6px rgba(43,42,38,.35)}
  @media(min-width:880px){
    .hero-duo{grid-template-columns:1.05fr .95fr;text-align:left}
    .hero-texte{text-align:left}
    .hero .logo-hero{margin:0 0 14px}
    .hero .arc{margin:0 0 20px}
    .hero .pitch{margin:0 0 26px}
    .hero-actions{justify-content:flex-start}
  }

  /* Bulles ambiantes du héros */
  .bulles{position:absolute;inset:0;overflow:hidden;pointer-events:none}
  .bulles span{position:absolute;border-radius:50%;background:radial-gradient(circle at 35% 30%, rgba(255,255,255,.5), rgba(255,255,255,.06) 70%);
    animation:flotte 14s ease-in-out infinite}
  .bulles span:nth-child(1){width:130px;height:130px;left:4%;top:14%;animation-delay:0s}
  .bulles span:nth-child(2){width:70px;height:70px;left:16%;bottom:18%;animation-delay:-4s}
  .bulles span:nth-child(3){width:95px;height:95px;right:8%;top:8%;animation-delay:-7s}
  .bulles span:nth-child(4){width:54px;height:54px;right:22%;bottom:24%;animation-delay:-10s}
  .bulles span:nth-child(5){width:80px;height:80px;left:46%;top:4%;animation-delay:-2s}
  @keyframes flotte{0%,100%{transform:translateY(0)}50%{transform:translateY(-22px)}}
  @media (prefers-reduced-motion: reduce){.bulles span{animation:none}}

  /* Vague de transition */
  .vague{position:absolute;left:0;right:0;bottom:-1px;width:100%;height:60px;display:block}

  /* Bandeau badges de réassurance */
  .badges{background:var(--fond);padding:18px 0 6px}
  .badges-in{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
  .badges-in span{background:#fff;border:1px solid #EFE7D8;border-radius:999px;padding:9px 18px;
    font-size:.86rem;font-weight:800;color:#4A463C;box-shadow:0 2px 8px rgba(43,42,38,.06)}

  /* Encart Rituel du jour */
  .rituel-bandeau{padding:30px 0 56px}
  .rituel-in{display:grid;gap:22px;grid-template-columns:1fr;align-items:center;text-align:center;
    background:linear-gradient(135deg,#EDE9F6,#F7F2E9);border:1px solid #EFE7D8;
    border-radius:24px;padding:34px 30px;box-shadow:0 6px 22px rgba(30,61,52,.10)}
  .orbe-mini{width:84px;height:84px;border-radius:50%;margin:0 auto;
    background:radial-gradient(circle at 35% 30%, #CFC1A8, #8B7FB8 70%);
    box-shadow:0 14px 36px -10px #CFC1A8;animation:respire 7s ease-in-out infinite}
  @keyframes respire{0%,100%{transform:scale(1)}50%{transform:scale(1.06)}}
  @media (prefers-reduced-motion: reduce){.orbe-mini{animation:none}}
  .rituel-texte .etiquette{font-weight:800;font-size:.76rem;letter-spacing:.18em;text-transform:uppercase;color:#8B8371;margin-bottom:6px}
  .rituel-texte h2{font-size:1.7rem;color:#5C5187;margin-bottom:8px}
  .rituel-texte p{color:#4A463C;max-width:54ch;margin:0 auto}
  @media(min-width:820px){
    .rituel-in{grid-template-columns:auto 1fr auto;text-align:left}
    .orbe-mini{margin:0}
    .rituel-texte p{margin:0}
  }

  /* Section huiles en duo */
  .huiles{text-align:left}
  .huiles-duo{display:grid;gap:30px;grid-template-columns:1fr;align-items:center}
  .huiles-photo{width:100%;border-radius:20px;box-shadow:0 14px 40px rgba(43,42,38,.3);border:5px solid rgba(255,255,255,.6)}
  .huiles-texte{text-align:center}
  .huiles-texte .sec-titre,.huiles-texte .sec-sous{text-align:center}
  @media(min-width:820px){
    .huiles-duo{grid-template-columns:.9fr 1.1fr}
    .huiles-texte,.huiles-texte .sec-titre,.huiles-texte .sec-sous{text-align:left}
    .huiles-texte .sec-sous{margin:0 0 24px}
  }

  /* Apparition au défilement */
  .reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease, transform .6s ease}
  .reveal.visible{opacity:1;transform:none}
  @media (prefers-reduced-motion: reduce){.reveal{opacity:1;transform:none;transition:none}}
  .hero .btn-ghost{background:rgba(255,255,255,.14);color:#fff;border:2px solid rgba(255,255,255,.8);box-shadow:none}
  .hero .btn-ghost:hover{background:rgba(255,255,255,.28)}

  /* ========== Héros PRO : dégradé vivant, logo 3D, particules ========== */
  .hero-pro{position:relative;overflow:hidden;padding:70px 22px 110px;color:#fff;
    background:linear-gradient(160deg,var(--violet),var(--indigo),var(--bleu),var(--vert),var(--jaune),var(--orange));
    background-size:220% 220%;animation:gradVivant 24s ease-in-out infinite}
  @keyframes gradVivant{0%,100%{background-position:0% 0%}50%{background-position:100% 100%}}
  @media (prefers-reduced-motion: reduce){.hero-pro{animation:none}}

  #particules{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}

  .hero-pro .hero-duo{display:grid;gap:42px;align-items:center;grid-template-columns:1fr;position:relative;z-index:2}
  .hero-pro .carte-logo{justify-self:center;background:rgba(255,255,255,.95);border-radius:28px;padding:24px;
    width:min(380px,80vw);box-shadow:0 24px 60px rgba(46,36,80,.42);
    transform-style:preserve-3d;will-change:transform;transition:box-shadow .3s ease}
  .hero-pro .carte-logo img{width:100%;display:block;border-radius:16px}
  .hero-pro .carte-logo p{text-align:center;margin-top:12px;font-size:.78rem;font-weight:800;
    letter-spacing:.16em;text-transform:uppercase;color:#8B8371}

  .hero-pro .lieu{font-size:.78rem;letter-spacing:.22em;text-transform:uppercase;font-weight:800;
    color:rgba(255,255,255,.92);margin-bottom:16px}
  .hero-pro h1{font-family:'Cormorant Garamond',Garamond,'Times New Roman',serif;font-weight:600;color:#fff;
    font-size:clamp(1.9rem,4.2vw,2.9rem);line-height:1.22;margin-bottom:8px;text-shadow:0 2px 14px rgba(46,36,80,.35)}
  .hero-pro h1 .script{font-family:'Cormorant Garamond',Garamond,'Times New Roman',serif;font-size:1.12em}
  .mot-tournant{display:inline-block;min-width:6.5ch;transition:opacity .45s ease, transform .45s ease}
  .mot-tournant.sortie{opacity:0;transform:translateY(10px)}
  .hero-pro .arc-blanc{max-width:230px;margin:16px 0 20px;background:linear-gradient(90deg,#fff5,#ffffffe0,#fff5)}
  .hero-pro .pitch{max-width:50ch;color:rgba(255,255,255,.96);text-shadow:0 1px 8px rgba(46,36,80,.3);
    font-size:1.03rem;margin-bottom:26px}
  .hero-pro .hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:26px}
  .hero-pro .btn-hero{background:#fff;color:var(--violet);box-shadow:0 8px 24px rgba(46,36,80,.35)}
  .hero-pro .btn-hero:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(46,36,80,.45)}
  .hero-pro .btn-ghost{background:rgba(255,255,255,.12);color:#fff;border:2px solid rgba(255,255,255,.85);box-shadow:none}
  .hero-pro .btn-ghost:hover{background:rgba(255,255,255,.26)}
  .hero-pro .preuves{display:flex;gap:10px;flex-wrap:wrap}
  .hero-pro .preuves span{background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.45);
    backdrop-filter:blur(5px);border-radius:999px;padding:8px 16px;font-size:.82rem;font-weight:800;
    color:#fff;text-shadow:0 1px 4px rgba(46,36,80,.3)}
  .hero-pro .hero-texte{text-align:center}
  .hero-pro .arc-blanc{margin-left:auto;margin-right:auto}
  .hero-pro .pitch{margin-left:auto;margin-right:auto}
  .hero-pro .hero-actions,.hero-pro .preuves{justify-content:center}
  @media(min-width:900px){
    .hero-pro .hero-duo{grid-template-columns:.9fr 1.1fr}
    .hero-pro .hero-texte{text-align:left}
    .hero-pro .arc-blanc,.hero-pro .pitch{margin-left:0;margin-right:0}
    .hero-pro .hero-actions,.hero-pro .preuves{justify-content:flex-start}
  }

  /* Apparition séquencée */
  .apparait{opacity:0;transform:translateY(16px);transition:opacity .7s ease, transform .7s ease}
  .apparait.visible{opacity:1;transform:none}
  @media (prefers-reduced-motion: reduce){.apparait{opacity:1;transform:none;transition:none}}

  /* Ombre du menu au défilement */
  nav.ombre{box-shadow:0 4px 18px rgba(43,42,38,.14)}

  /* ========== Boutons d'envoi professionnels ========== */
  .btn-envoi{position:relative;overflow:hidden;cursor:pointer;border:none;
    transition:transform .2s ease, box-shadow .2s ease, background .3s ease;min-width:230px}
  .btn-envoi:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(30,61,52,.4)}
  .btn-envoi:active{transform:translateY(0)}
  .btn-envoi.en-cours{pointer-events:none;opacity:.92}
  .btn-envoi.envoye{background:linear-gradient(90deg,#3F9655,var(--vert));box-shadow:0 8px 22px rgba(79,164,99,.4)}

  .btn-envoi .onde{position:absolute;border-radius:50%;pointer-events:none;
    background:radial-gradient(circle, rgba(255,255,255,.55) 0%, rgba(255,255,255,0) 65%);
    transform:scale(0);animation:ondeAnim .65s ease-out forwards}
  @keyframes ondeAnim{to{transform:scale(1);opacity:0}}

  .btn-envoi .spinner{display:inline-block;width:15px;height:15px;vertical-align:-2px;margin-right:8px;
    border:2.5px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;
    animation:tourne .7s linear infinite}
  @keyframes tourne{to{transform:rotate(360deg)}}
  @media (prefers-reduced-motion: reduce){
    .btn-envoi .onde{animation:none;display:none}
    .btn-envoi .spinner{animation-duration:1.6s}
  }

  /* Champs : focus aux couleurs du site, erreurs douces */
  .formulaire input:focus,.formulaire textarea:focus{outline:none;border-color:var(--violet);
    box-shadow:0 0 0 4px rgba(30,61,52,.14)}
  .champ-erreur{border-color:#C94F4F !important;background:#FDF6F6;animation:secoue .4s ease}
  @keyframes secoue{0%,100%{transform:translateX(0)}25%{transform:translateX(-5px)}50%{transform:translateX(5px)}75%{transform:translateX(-3px)}}
  @media (prefers-reduced-motion: reduce){.champ-erreur{animation:none}}
  .erreur-note{color:#B23A3A;font-size:.82rem;font-weight:700;margin:6px 0 2px}

  /* Panneau de confirmation après envoi */
  .note-envoi{margin-top:16px;padding:16px 20px;border-radius:14px;text-align:left;
    background:#EFF7F0;border:1px solid #BCDCC2;color:#1E3D34;font-size:.92rem;
    opacity:0;transform:translateY(8px);transition:opacity .45s ease, transform .45s ease}
  .note-envoi.visible{opacity:1;transform:none}
  .note-envoi strong{display:block;margin-bottom:4px}
  .note-envoi span{display:block}
  .note-envoi .secours{margin-top:8px;font-size:.85rem;color:#54665A}
  .note-envoi a{color:#1E3D34;font-weight:800}
  .copie-email{background:#fff;border:1px dashed #7FB78D;border-radius:8px;color:#1E3D34;
    font-family:inherit;font-size:.85rem;font-weight:800;padding:4px 10px;cursor:pointer}
  .copie-email:hover{background:#F3FAF4}

  /* ========== Blog professionnel ========== */
  /* Filtres et recherche */
  .blog-outils{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:center;margin-bottom:30px}
  .blog-chips{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
  .chip{background:#fff;border:1.5px solid #EFE7D8;border-radius:999px;padding:8px 18px;cursor:pointer;
    font-family:inherit;font-size:.86rem;font-weight:800;color:#4A463C;transition:all .25s ease}
  .chip:hover{border-color:var(--violet);color:var(--violet)}
  .chip.actif{background:linear-gradient(90deg,var(--violet),var(--indigo));border-color:transparent;color:#fff;
    box-shadow:0 4px 14px rgba(30,61,52,.3)}
  #blog-recherche{border:1.5px solid #EFE7D8;border-radius:999px;padding:9px 18px;font-family:inherit;
    font-size:.9rem;color:var(--encre);background:#fff;min-width:230px}
  #blog-recherche:focus{outline:none;border-color:var(--violet);box-shadow:0 0 0 4px rgba(30,61,52,.12)}
  #blog-aucun{display:none;text-align:center;color:#8B8371;font-weight:700;padding:30px 0}

  /* Cartes : apparition et survol */
  .carte-anim{opacity:0;transform:translateY(20px);transition:opacity .45s ease, transform .45s ease}
  .carte-anim.posee{opacity:1;transform:none}
  .carte-anim.cachee{opacity:0;transform:scale(.97)}
  @media (prefers-reduced-motion: reduce){.carte-anim{opacity:1;transform:none;transition:none}}
  .carte-blog a img{transition:transform .5s ease}
  .carte-blog:hover a img{transform:scale(1.04)}
  .carte-blog a{overflow:hidden;display:block}

  /* Barre de progression de lecture */
  .lecture-progression{position:fixed;top:0;left:0;right:0;height:4px;z-index:9999;background:rgba(43,42,38,.08)}
  .lecture-progression span{display:block;height:100%;width:0;
    background:linear-gradient(90deg,var(--violet),var(--indigo),var(--bleu),var(--vert),var(--jaune),var(--orange),var(--rose))}

  .temps-lecture{color:#8B8371;font-weight:800}

  /* Partage */
  .partage{margin-top:44px;padding:24px;border-radius:16px;background:#F7F2E9;border:1px solid #EFE7D8;text-align:center}
  .partage p{font-weight:800;color:#4A463C;margin-bottom:14px}
  .partage-boutons{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}
  .p-btn{display:inline-block;border:none;cursor:pointer;font-family:inherit;font-size:.88rem;font-weight:800;
    padding:10px 20px;border-radius:999px;text-decoration:none;color:#fff;transition:transform .2s ease, box-shadow .2s ease}
  .p-btn:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(43,42,38,.2)}
  .p-fb{background:#1877F2}
  .p-wa{background:#25D366}
  .p-copie{background:#fff;color:var(--violet);border:2px solid var(--violet)}
  .p-natif{background:linear-gradient(90deg,var(--orange),var(--rose))}

  /* À lire ensuite */
  .lire-ensuite{margin-top:44px}
  .lire-ensuite h2{font-size:1.5rem;color:var(--violet);margin-bottom:18px;text-align:center}
  .le-grille{display:grid;gap:18px;grid-template-columns:1fr}
  @media(min-width:640px){.le-grille{grid-template-columns:1fr 1fr}}
  .le-carte{display:block;background:#fff;border-radius:18px;overflow:hidden;text-decoration:none;color:var(--encre);
    box-shadow:0 3px 14px rgba(43,42,38,.1);transition:transform .25s ease, box-shadow .25s ease}
  .le-carte:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(43,42,38,.18)}
  .le-carte img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}
  .le-carte .le-cat{display:inline-block;margin:14px 18px 0;font-size:.74rem;font-weight:800;
    letter-spacing:.1em;text-transform:uppercase;color:#8B8371}
  .le-carte strong{display:block;padding:6px 18px 0;font-family:'Cormorant Garamond',Garamond,'Times New Roman',serif;
    font-weight:600;font-size:1.2rem;line-height:1.3;color:var(--violet)}
  .le-carte .le-resume{display:block;padding:8px 18px 18px;font-size:.9rem;color:#4A463C}

  /* Images d'articles animées */
  .wrap.article .img-anim{opacity:0;transform:translateY(22px) scale(.985);
    transition:opacity .7s ease, transform .7s ease}
  .wrap.article .img-anim.posee{opacity:1;transform:none}
  @media (prefers-reduced-motion: reduce){.wrap.article .img-anim{opacity:1;transform:none;transition:none}}

  /* ========== Qui suis-je : version professionnelle animée ========== */
  /* Machine à écrire */
  .page-hero .machine{min-height:1.6em}
  .curseur{display:inline-block;margin-left:2px;animation:clignote 1s steps(2) infinite;font-weight:400}
  @keyframes clignote{50%{opacity:0}}
  @media (prefers-reduced-motion: reduce){.curseur{animation:none}}

  /* Anneau arc-en-ciel tournant autour du portrait */
  .anneau-portrait{position:relative;display:inline-block;border-radius:50%;padding:9px;
    background:conic-gradient(var(--violet),var(--indigo),var(--bleu),var(--vert),var(--jaune),var(--orange),var(--rose),var(--violet));
    animation:tourneAnneau 16s linear infinite}
  .anneau-portrait img{display:block;border-radius:50%;border:6px solid #fff;animation:tourneAnneauInverse 16s linear infinite}
  @keyframes tourneAnneau{to{transform:rotate(360deg)}}
  @keyframes tourneAnneauInverse{to{transform:rotate(-360deg)}}
  @media (prefers-reduced-motion: reduce){.anneau-portrait,.anneau-portrait img{animation:none}}

  /* Compteurs */
  .chiffres-bande{padding-top:10px;padding-bottom:10px}
  .chiffres{display:grid;gap:18px;grid-template-columns:repeat(2,1fr);text-align:center;
    background:linear-gradient(135deg,#F7F2E9,#FAF7F1);border:1px solid #EFE7D8;border-radius:22px;
    padding:30px 22px;box-shadow:0 6px 22px rgba(30,61,52,.08)}
  @media(min-width:760px){.chiffres{grid-template-columns:repeat(4,1fr)}}
  .nombre{display:block;font-family:'Cormorant Garamond',Garamond,'Times New Roman',serif;font-weight:600;font-size:2.6rem;
    color:var(--violet);line-height:1.1}
  .legende-c{font-size:.88rem;font-weight:700;color:#4A463C}
  .legende-c small{color:#8B8371;font-weight:700}

  /* Cartes à retourner */
  .cartes-flip{display:grid;gap:18px;grid-template-columns:repeat(2,1fr);max-width:860px;margin:0 auto}
  @media(min-width:760px){.cartes-flip{grid-template-columns:repeat(4,1fr)}}
  .carte-flip{background:none;border:none;padding:0;cursor:pointer;perspective:900px;font-family:inherit;height:190px}
  .cf-int{position:relative;display:block;width:100%;height:100%;transition:transform .65s cubic-bezier(.4,.1,.2,1);
    transform-style:preserve-3d}
  .carte-flip.retournee .cf-int{transform:rotateY(180deg)}
  .cf-face{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;
    gap:8px;border-radius:18px;backface-visibility:hidden;-webkit-backface-visibility:hidden;padding:16px}
  .cf-avant{background:#fff;border-top:6px solid var(--cf);box-shadow:0 4px 16px rgba(43,42,38,.12);
    font-family:'Cormorant Garamond',Garamond,'Times New Roman',serif;font-weight:600;font-size:1.3rem;color:var(--encre)}
  .cf-ico{font-size:2.2rem}
  .cf-arriere{background:linear-gradient(135deg,var(--violet),var(--indigo));color:#fff;
    transform:rotateY(180deg);font-size:.9rem;font-weight:600;line-height:1.5;box-shadow:0 8px 24px rgba(43,42,38,.25)}
  .carte-flip:hover .cf-avant{box-shadow:0 10px 26px rgba(43,42,38,.2)}
  @media (prefers-reduced-motion: reduce){.cf-int{transition:none}}

  /* Révélation au défilement */
  .revele{opacity:0;transform:translateY(18px);transition:opacity .65s ease, transform .65s ease}
  .revele.visible{opacity:1;transform:none}
  @media (prefers-reduced-motion: reduce){.revele{opacity:1;transform:none;transition:none}}

/* ===== Newsletter ===== */
.newsletter{
  background:linear-gradient(135deg,#255043,#9B6FC9);
  padding:60px 20px;text-align:center;color:#fff;
}
.newsletter .wrap{max-width:620px;margin:0 auto;}
.newsletter-titre{
  font-family:'Cormorant Garamond',Garamond,'Times New Roman',serif;font-size:2.4rem;margin:0 0 12px;color:#fff;
}
.newsletter-sous{
  font-size:1.05rem;line-height:1.6;margin:0 auto 28px;color:#f0eafc;max-width:500px;
}
.newsletter-form{
  display:flex;gap:10px;max-width:480px;margin:0 auto 16px;flex-wrap:wrap;
  justify-content:center;
}
.newsletter-form input{
  flex:1;min-width:220px;padding:15px 20px;border:none;border-radius:30px;
  font-size:1rem;font-family:inherit;
}
.newsletter-form button{
  padding:15px 28px;border:none;border-radius:30px;background:#fff;color:#255043;
  font-weight:800;font-size:1rem;cursor:pointer;font-family:inherit;
  transition:transform .15s ease;
}
.newsletter-form button:hover{transform:translateY(-2px);}
.newsletter-rgpd{
  font-size:.82rem;line-height:1.5;color:#e3d9f7;margin:0 auto;max-width:480px;
}
.newsletter-rgpd a{color:#fff;text-decoration:underline;}

/* ============ Page Mes adresses ============ */
.adresse-photo{overflow:hidden;border-radius:18px}
.adresse-photo img{transition:transform .6s ease}
.adresse-photo:hover img{transform:scale(1.06)}
.partenaire.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease, transform .7s ease}
.partenaire.reveal.visible{opacity:1;transform:none}
#carte-adresses{height:420px;width:100%;border-radius:20px;box-shadow:0 4px 18px rgba(43,42,38,.14);margin-top:8px;z-index:0}
.carte-wrap{max-width:920px;margin:0 auto 36px}
.leaflet-popup-content{font-family:'Jost','Nunito',system-ui,-apple-system,'Segoe UI',sans-serif;color:#4A463C}
.leaflet-popup-content strong{color:var(--bleu)}
@media (prefers-reduced-motion: reduce){
  .adresse-photo img{transition:none}
  .adresse-photo:hover img{transform:none}
  .partenaire.reveal{opacity:1;transform:none;transition:none}
}

/* ===== FAQ ===== */
.faq-liste{max-width:780px;margin:0 auto}
.faq-item{background:#fff;border:1.5px solid #F0E8DA;border-radius:14px;margin-bottom:14px;overflow:hidden;box-shadow:0 4px 16px rgba(43,42,38,.05)}
.faq-item summary{list-style:none;cursor:pointer;padding:18px 52px 18px 22px;position:relative;font-weight:700;font-size:1.05rem;color:var(--encre)}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"+";position:absolute;right:22px;top:50%;transform:translateY(-50%);font-size:1.5rem;font-weight:400;color:var(--violet);transition:transform .25s}
.faq-item[open] summary::after{content:"\2212"}
.faq-item[open] summary{color:var(--violet)}
.faq-rep{padding:0 22px 20px;color:#5f5479}
.faq-rep p{margin:0}
.faq-rep a{color:var(--violet);font-weight:700}
.faq-cta{text-align:center;margin-top:40px}
.faq-cta p:first-child{font-family:'Cormorant Garamond',Garamond,'Times New Roman',serif;font-style:italic;font-size:1.4rem;color:var(--violet);margin-bottom:14px}

/* ===== Carte cadeau ===== */
.cadeau-visuel{display:flex;justify-content:center;margin-bottom:30px}
.cadeau-carte{position:relative;width:min(340px,86vw);aspect-ratio:1.6/1;border-radius:20px;padding:26px;color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;
  background:linear-gradient(135deg,var(--violet),var(--indigo) 45%,var(--bleu));
  box-shadow:0 16px 40px rgba(43,42,38,.32);overflow:hidden}
.cadeau-carte::before{content:"";position:absolute;inset:10px;border:1.5px solid rgba(255,255,255,.4);border-radius:14px;pointer-events:none}
.cadeau-noeud{font-size:2.2rem;margin-bottom:6px}
.cadeau-titre{font-family:'Cormorant Garamond',Garamond,'Times New Roman',serif;font-size:2rem;font-weight:700;line-height:1.1}
.cadeau-sous{font-family:'Cormorant Garamond',Garamond,'Times New Roman',serif;font-style:italic;font-size:1.15rem;opacity:.95;margin-top:2px}
.cadeau-marque{font-size:.78rem;letter-spacing:.04em;opacity:.85;margin-top:14px}
.etapes-cadeau{display:grid;gap:26px;grid-template-columns:1fr}
@media(min-width:760px){.etapes-cadeau{grid-template-columns:repeat(3,1fr)}}

/* ===== Bouton Réserver flottant (mobile) ===== */
.reserver-flottant{position:fixed;left:0;right:0;bottom:0;z-index:90;
  padding:10px 16px calc(10px + env(safe-area-inset-bottom));
  background:linear-gradient(180deg,rgba(253,251,247,0),rgba(253,251,247,.96) 38%);
  display:none;transition:transform .35s ease,opacity .35s ease}
.reserver-flottant a{display:flex;align-items:center;justify-content:center;gap:8px;
  background:linear-gradient(90deg,var(--orange),var(--rose));color:#fff;font-weight:800;font-size:1.05rem;
  text-decoration:none;padding:15px;border-radius:999px;box-shadow:0 8px 24px rgba(30,61,52,.4)}
.reserver-flottant.cache{transform:translateY(120%);opacity:0;pointer-events:none}
@media(max-width:860px){
  .reserver-flottant{display:block}
  body{padding-bottom:78px}
  /* Masquer le bouton flottant quand le menu mobile est ouvert (sinon il cache Oracle / Rituel du jour) */
  .reserver-flottant.cache-menu{transform:translateY(120%);opacity:0;pointer-events:none}
}
@media (prefers-reduced-motion: reduce){
  .reserver-flottant{transition:none}
}

/* ===== Carte cadeau : recto/verso ===== */
.cadeau-duo{display:flex;flex-wrap:wrap;gap:24px;justify-content:center;margin-bottom:34px}
.cadeau-face{margin:0;max-width:420px;width:100%}
.cadeau-face img{width:100%;border-radius:16px;box-shadow:0 12px 36px rgba(43,42,38,.22);display:block}
.cadeau-face figcaption{text-align:center;font-size:.82rem;font-weight:700;color:#8a7fa0;letter-spacing:.04em;margin-top:10px;text-transform:uppercase}
.secu-cadeau{display:grid;gap:26px;grid-template-columns:1fr}
@media(min-width:760px){.secu-cadeau{grid-template-columns:repeat(3,1fr)}}

/* ===== Page vérification carte ===== */
.verif-bloc{background:#fff;border:1.5px solid #F0E8DA;border-radius:18px;padding:34px 28px;box-shadow:0 8px 28px rgba(43,42,38,.07);text-align:center}
.verif-sceau{width:72px;height:72px;margin:0 auto 14px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  font-size:2.2rem;color:#fff;background:linear-gradient(135deg,var(--vert),var(--bleu));box-shadow:0 8px 22px rgba(79,164,99,.4)}
.verif-liste{list-style:none;max-width:460px;margin:18px auto 0;padding:0;text-align:left}
.verif-liste li{position:relative;padding:9px 0 9px 30px;border-bottom:1px solid #F2ECDF;color:#5f5479}
.verif-liste li::before{content:"✓";position:absolute;left:0;top:9px;color:var(--vert);font-weight:800}
.verif-liste .mono{font-family:ui-monospace,'SFMono-Regular',Menlo,Consolas,monospace;font-weight:800;color:var(--violet)}
.verif-note{margin-top:20px;color:#6E6657;font-size:.95rem}
.verif-avert{margin-top:24px;background:#FDF4EC;border:1px solid #F4D9BE;border-radius:14px;padding:18px 22px;color:#8a6a3e;font-size:.92rem}
.verif-avert strong{color:var(--orange)}

/* ===== Illustration "cadeau qui fait du bien" ===== */
.cadeau-illus{margin:32px auto 0;max-width:440px}
.cadeau-illus img{width:100%;height:auto;display:block}

/* ===== Encart témoignage (avis sur pages prestations) ===== */
.temoignage-bloc{max-width:680px;margin:0 auto}
.temoignage-carte{background:#fff;border:1px solid #ece6f3;border-radius:18px;padding:1.6rem 1.7rem;box-shadow:0 6px 22px rgba(30,61,52,.07)}
.temoignage-carte .t-haut{display:flex;align-items:center;gap:.8rem;margin-bottom:.5rem}
.temoignage-carte .t-pastille{width:46px;height:46px;border-radius:50%;background:linear-gradient(135deg,#1E3D34,#a06fd6);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.15rem;flex-shrink:0}
.temoignage-carte .t-nom{font-weight:700;color:#3a2d4a}
.temoignage-carte .t-meta{font-size:.82rem;color:#9b90a8}
.temoignage-carte .t-etoiles{color:#f5b301;letter-spacing:2px;font-size:1.05rem;margin-bottom:.5rem}
.temoignage-carte .t-texte{color:#4a4254;line-height:1.6;font-style:italic;margin:0}
.temoignage-carte .t-reponse{margin-top:.9rem;padding:.85rem 1rem;background:#f7f3fc;border-left:3px solid #1E3D34;border-radius:0 12px 12px 0}
.temoignage-carte .t-reponse .tr-nom{font-weight:700;font-size:.85rem;color:#1E3D34;margin-bottom:.25rem}
.temoignage-carte .t-reponse p{margin:0;font-size:.9rem;color:#5a5165;line-height:1.5}
.temoignage-lien{text-align:center;margin-top:1rem}

/* Complément SEO local du H1 d'accueil — visible, discret, accessible */
.h1-seo{display:block;font-family:var(--police-texte,inherit);font-weight:600;
  font-size:.42em;line-height:1.3;letter-spacing:.2px;margin-top:14px;
  color:color-mix(in srgb, currentColor 78%, transparent);font-style:normal}
@media(max-width:600px){.h1-seo{font-size:.5em;margin-top:10px}}

/* ============================================================
   IDENTITÉ MAISON 2026 — « Lumière des Landes »
   Couche de raffinement appliquée à l'ensemble du site.
   Palette : Écume #FAF7F1 · Sable #F0E8DA · Lin #DACDB8
             Pin maritime #1E3D34 · Or de lumière #C0A15E · Encre #2B2A26
   ============================================================ */
:root{
  --pin:#1E3D34; --pin-fonce:#16302A; --or:#C0A15E; --or-pale:#D9C08A;
  --sable:#F0E8DA; --lin:#DACDB8; --grege:#6E6657; --bord:#E9E0CE;
  --arc-landes:linear-gradient(90deg,#A79BB5,#9FB2C2,#8FA98F,#C9B37E,#C7A08A,#B98F7E,#C39A66);
}
body{font-weight:400;color:#33312B}
h1,h2,h3,h4{font-family:'Cormorant Garamond',Garamond,'Times New Roman',serif;font-weight:500;line-height:1.15;color:var(--pin);letter-spacing:.005em}
strong{font-weight:600}
.script{font-family:'Cormorant Garamond',Garamond,'Times New Roman',serif;font-style:italic;font-weight:500}

/* Filet signature — l'Arc de couleurs, désormais un liseré précieux */
.arc{height:2px;border-radius:0;background:var(--arc-landes);opacity:.85}

/* Navigation */
nav{background:rgba(250,247,241,.94);box-shadow:none;border-bottom:1px solid rgba(192,161,94,.35)}
.logo{font-family:'Cormorant Garamond',Garamond,'Times New Roman',serif;font-style:normal;font-weight:600;font-size:1.28rem;letter-spacing:.03em;color:var(--pin)}
.logo span{font-family:'Jost',system-ui,-apple-system,'Segoe UI',sans-serif;font-weight:400;font-size:.58rem;letter-spacing:.3em;color:var(--grege);margin-top:2px}
nav .menu a{font-weight:400;letter-spacing:.02em}
nav .menu a.actif{color:var(--pin);font-weight:500}

/* Boutons — l'invitation, pas l'injonction */
.btn{background:var(--pin);border-radius:2px;font-family:'Jost',system-ui,-apple-system,'Segoe UI',sans-serif;font-weight:500;
     font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;padding:15px 30px;
     box-shadow:none;transition:background .25s,transform .2s,box-shadow .25s}
.btn:hover{background:var(--pin-fonce);transform:translateY(-1px);box-shadow:inset 0 -2px 0 var(--or)}
.btn-ghost{background:transparent;color:var(--pin);border:1px solid var(--lin);box-shadow:none}
.btn-ghost:hover{border-color:var(--or);background:rgba(192,161,94,.06);box-shadow:inset 0 -2px 0 var(--or)}

/* Héros des pages intérieures : profondeur de pinède, lisible partout */
header.hero{background:linear-gradient(168deg,#16302A 0%,#1E3D34 46%,#2E5347 100%)}
header.hero .arc{background:var(--arc-landes);opacity:.9}

/* Cartes de soins */
.carte{border-radius:6px;border:1px solid var(--bord);box-shadow:0 10px 32px rgba(43,42,38,.06)}
.carte:hover{box-shadow:0 18px 46px rgba(43,42,38,.10)}
.carte h3{font-size:1.45rem}
.carte .infos{color:var(--grege);font-weight:400;letter-spacing:.04em}
.pastille{font-size:0;line-height:0;width:11px;height:11px;min-width:11px;min-height:11px;
          border-radius:50%;background:var(--or);border:none;box-shadow:0 0 0 4px rgba(192,161,94,.18)}

/* Titres de sections */
.sec-titre{font-size:clamp(1.9rem,4vw,2.6rem);font-weight:500}
.sec-sous{color:var(--grege)}
.sur-titre,.etiquette{font-family:'Jost',system-ui,-apple-system,'Segoe UI',sans-serif;font-weight:500;font-size:.72rem;
  letter-spacing:.26em;text-transform:uppercase;color:var(--or)}

/* Villes, étiquettes, pastilles de réassurance */
.ville{background:#fff;border:1px solid var(--bord);color:#4A463C;border-radius:2px}

/* Pied de page — la Maison ferme ses volets */
footer{background:var(--pin-fonce);color:#E8E2D2}
footer a{color:var(--or-pale)}
footer .arc{opacity:.7}

/* Bouton flottant de réservation */
.reserver-flottant a{background:var(--pin);border-radius:2px;letter-spacing:.1em;text-transform:uppercase;font-size:.78rem}

/* ---------- Page d'accueil « La Maison » ---------- */
.hero-maison{background:
   radial-gradient(900px 480px at 85% -10%,rgba(192,161,94,.10),transparent 60%),
   linear-gradient(180deg,#FAF7F1 0%,#F6F0E4 100%);
   padding:72px 0 84px;overflow:hidden}
.hero-maison .duo-m{display:grid;gap:44px;align-items:center;grid-template-columns:1fr}
.hero-maison .eyebrow{font-family:'Jost',system-ui,-apple-system,'Segoe UI',sans-serif;font-weight:500;font-size:.72rem;
   letter-spacing:.3em;text-transform:uppercase;color:var(--or);margin-bottom:20px}
.hero-maison h1{font-size:clamp(2.5rem,5.6vw,4rem);font-weight:500;color:var(--pin);margin-bottom:8px;max-width:16ch}
.hero-maison h1 em{font-style:italic;font-weight:500;color:#3A6153}
.hero-maison .h1-seo{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.hero-maison .arc{max-width:180px;margin:22px 0 24px}
.hero-maison .pitch{max-width:50ch;color:#4A463C;font-size:1.06rem;line-height:1.75;margin-bottom:32px}
.hero-maison .hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:30px}
.hero-maison .preuves{display:flex;flex-wrap:wrap;gap:8px 22px;color:var(--grege);
   font-size:.78rem;letter-spacing:.12em;text-transform:uppercase}
.hero-maison .preuves span::before{content:'';display:inline-block;width:5px;height:5px;border-radius:50%;
   background:var(--or);margin-right:9px;vertical-align:2px}
.cadre-arche{position:relative;justify-self:center;max-width:430px;width:100%}
.cadre-arche img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;
   border-radius:230px 230px 8px 8px;border:1px solid var(--bord);
   box-shadow:0 26px 60px rgba(43,42,38,.14)}
.cadre-arche::after{content:'';position:absolute;inset:-12px;border:1px solid rgba(192,161,94,.5);
   border-radius:242px 242px 12px 12px;pointer-events:none}
.cadre-arche figcaption{margin-top:22px;text-align:center;font-family:'Cormorant Garamond',Garamond,'Times New Roman',serif;
   font-style:italic;font-size:1.05rem;color:var(--grege)}
@media(min-width:900px){.hero-maison .duo-m{grid-template-columns:1.1fr .9fr}}

/* Manifeste */
.manifeste{background:var(--sable);padding:64px 0;border-top:1px solid var(--bord);border-bottom:1px solid var(--bord)}
.manifeste .m-grid{display:grid;gap:36px;grid-template-columns:1fr;text-align:center}
.manifeste h3{font-size:.78rem;font-family:'Jost',system-ui,-apple-system,'Segoe UI',sans-serif;font-weight:500;letter-spacing:.28em;
   text-transform:uppercase;color:var(--pin);margin-bottom:10px}
.manifeste h3::after{content:'';display:block;width:28px;height:1px;background:var(--or);margin:12px auto 0}
.manifeste p{color:#57534A;font-size:.95rem;max-width:34ch;margin:0 auto}
@media(min-width:760px){.manifeste .m-grid{grid-template-columns:repeat(3,1fr)}}

/* Rituels — pastille couleur propriétaire */
.rituel-nom{display:flex;align-items:center;gap:9px;font-family:'Jost',system-ui,-apple-system,'Segoe UI',sans-serif;font-weight:500;
   font-size:.7rem;letter-spacing:.24em;text-transform:uppercase;color:var(--grege);margin-bottom:6px}
.rituel-nom i{width:9px;height:9px;border-radius:50%;flex:none;background:var(--rc,var(--or));
   box-shadow:0 0 0 3px color-mix(in srgb,var(--rc,var(--or)) 22%,transparent)}
.conseils-duo{display:grid;gap:18px;grid-template-columns:1fr;margin-top:26px}
.conseil-ligne{display:flex;align-items:center;justify-content:space-between;gap:16px;background:#fff;
   border:1px solid var(--bord);border-radius:6px;padding:20px 24px;text-decoration:none;transition:box-shadow .25s}
.conseil-ligne:hover{box-shadow:0 12px 30px rgba(43,42,38,.08)}
.conseil-ligne .cl-t{font-family:'Cormorant Garamond',Garamond,'Times New Roman',serif;font-size:1.25rem;color:var(--pin)}
.conseil-ligne .cl-d{color:var(--grege);font-size:.85rem;letter-spacing:.04em}
.conseil-ligne .cl-f{color:var(--or);font-size:1.1rem}
@media(min-width:760px){.conseils-duo{grid-template-columns:1fr 1fr}}

/* Citation de la Maison */
.parole{padding:78px 0;text-align:center;background:
   radial-gradient(700px 300px at 50% 0,rgba(192,161,94,.08),transparent 70%)}
.parole blockquote{font-family:'Cormorant Garamond',Garamond,'Times New Roman',serif;font-style:italic;font-weight:500;
   font-size:clamp(1.5rem,3.4vw,2.2rem);color:var(--pin);max-width:26ch;margin:0 auto 18px;line-height:1.35}
.parole cite{font-style:normal;font-family:'Jost',system-ui,-apple-system,'Segoe UI',sans-serif;font-size:.74rem;letter-spacing:.26em;
   text-transform:uppercase;color:var(--grege)}
.parole .arc{max-width:120px;margin:26px auto 0}

/* Apparition douce du héros (sans JS) */
@media(prefers-reduced-motion:no-preference){
  .hero-maison .eyebrow,.hero-maison h1,.hero-maison .arc,.hero-maison .pitch,
  .hero-maison .hero-actions,.hero-maison .preuves,.hero-maison .cadre-arche{
    opacity:0;transform:translateY(14px);animation:mApparait .9s cubic-bezier(.2,.7,.2,1) forwards}
  .hero-maison h1{animation-delay:.08s}.hero-maison .arc{animation-delay:.16s}
  .hero-maison .pitch{animation-delay:.22s}.hero-maison .hero-actions{animation-delay:.3s}
  .hero-maison .preuves{animation-delay:.38s}.hero-maison .cadre-arche{animation-delay:.2s}
  @keyframes mApparait{to{opacity:1;transform:none}}
}

/* ---------- Page « La Maison » : le récit ---------- */
.recit{max-width:640px;margin:0 auto;padding:64px 22px}
.recit .mouvement{margin-bottom:54px}
.recit .mouvement:last-child{margin-bottom:0}
.recit h2{font-size:clamp(1.6rem,3.2vw,2.1rem);margin-bottom:16px}
.recit h2::before{content:'';display:block;width:34px;height:1px;background:var(--or);margin-bottom:18px}
.recit p{color:#3F3C33;line-height:1.85;margin-bottom:16px;font-size:1.02rem}
.recit .lettrine::first-letter{font-family:'Cormorant Garamond',Garamond,'Times New Roman',serif;font-size:3.4em;float:left;
  line-height:.82;padding:4px 10px 0 0;color:var(--pin)}
.recit .citation-maison{font-family:'Cormorant Garamond',Garamond,'Times New Roman',serif;font-style:italic;font-size:1.35rem;
  color:var(--pin);border-left:2px solid var(--or);padding:6px 0 6px 22px;margin:26px 0}
.recit .signature-fin{font-family:'Cormorant Garamond',Garamond,'Times New Roman',serif;font-style:italic;font-size:1.2rem;color:var(--grege)}
.certifs{background:var(--sable);border-top:1px solid var(--bord);border-bottom:1px solid var(--bord);padding:64px 0}
.certifs .c-grid{display:grid;gap:22px;grid-template-columns:1fr;margin-top:30px}
.certif{background:#fff;border:1px solid var(--bord);border-radius:6px;padding:28px 30px}
.certif h3{font-size:1.3rem;margin-bottom:8px}
.certif p{color:#57534A;font-size:.95rem}
.certif .c-tag{font-family:'Jost',system-ui,-apple-system,'Segoe UI',sans-serif;font-weight:500;font-size:.68rem;letter-spacing:.24em;
  text-transform:uppercase;color:var(--or);display:block;margin-bottom:10px}
@media(min-width:760px){.certifs .c-grid{grid-template-columns:1fr 1fr}}
.entete-page{background:linear-gradient(168deg,#16302A 0%,#1E3D34 46%,#2E5347 100%);
  text-align:center;padding:74px 22px 66px;color:#fff}
.entete-page .eyebrow{font-family:'Jost',system-ui,-apple-system,'Segoe UI',sans-serif;font-weight:500;font-size:.72rem;letter-spacing:.3em;
  text-transform:uppercase;color:var(--or-pale);margin-bottom:16px}
.entete-page h1{color:#fff;font-size:clamp(2.1rem,4.6vw,3.2rem);font-weight:500;max-width:22ch;margin:0 auto 18px}
.entete-page .arc{max-width:150px;margin:0 auto}


/* ============================================================
   CORRECTIONS PREMIUM — juillet 2026
   (menu épuré + déroulant, filet or au losange, mentions dorées,
    bande d'avis client, logo en lettrage seul)
   ============================================================ */

/* --- Le filet or au losange remplace partout le trait arc-en-ciel --- */
.arc,.hero .arc,header.hero .arc,.hero-maison .arc,.parole .arc,footer .arc{
  height:1px;border-radius:0;opacity:1;position:relative;
  background:linear-gradient(90deg,transparent,var(--or) 22%,var(--or) 78%,transparent)}
.arc::after{content:'';position:absolute;left:50%;top:50%;width:7px;height:7px;
  transform:translate(-50%,-50%) rotate(45deg);background:var(--or)}
footer .arc,header.hero .arc{opacity:.85}

/* --- Les trois mentions du hero : une ligne, petites capitales dorées --- */
.hero-maison .preuves{color:var(--or);font-family:'Jost',system-ui,-apple-system,'Segoe UI',sans-serif;font-weight:500;
  font-size:.72rem;letter-spacing:.22em;gap:0;flex-wrap:wrap}
.hero-maison .preuves span::before{content:'·';display:inline;width:auto;height:auto;
  background:none;border-radius:0;margin:0 14px;color:var(--or);vertical-align:0}
.hero-maison .preuves span:first-child::before{content:'';margin:0}

/* --- Logo en lettrage seul (la vignette est retirée du HTML) --- */
.logo-img{display:none}
.logo span{color:var(--or)}

/* --- Menu : déroulant « Découvrir » --- */
.deroulant{position:relative}
.deroulant-titre .chevron{font-size:.72em;color:var(--or);margin-left:2px}
.deroulant-panneau{display:none;position:absolute;top:calc(100% + 12px);left:50%;
  transform:translateX(-50%);background:#FAF7F1;border:1px solid var(--bord);
  border-top:2px solid var(--or);box-shadow:0 22px 48px rgba(43,42,38,.16);
  padding:10px 0;min-width:228px;z-index:40}
.deroulant-panneau::before{content:'';position:absolute;top:-14px;left:0;right:0;height:14px}
.deroulant:hover .deroulant-panneau,.deroulant:focus-within .deroulant-panneau,
.deroulant.ouvert .deroulant-panneau{display:block}
nav .menu .deroulant-panneau a{display:block;padding:10px 24px;border-bottom:none;
  font-size:.88rem;white-space:nowrap;letter-spacing:.02em}
nav .menu .deroulant-panneau a:hover,nav .menu .deroulant-panneau a.actif{
  background:rgba(192,161,94,.10);border-bottom:none;color:var(--pin)}

/* Déroulant en version mobile : liste dépliée dans le menu burger */
@media(max-width:719px){
  .deroulant{width:100%}
  .deroulant-titre{display:block;pointer-events:none;color:var(--or)!important;
    font-size:.78rem!important;letter-spacing:.24em;text-transform:uppercase;
    border-bottom:none!important;padding-top:16px!important}
  .deroulant-titre .chevron{display:none}
  .deroulant-panneau{display:block;position:static;transform:none;border:none;
    box-shadow:none;background:transparent;padding:0 0 4px 14px;min-width:0}
  .deroulant-panneau::before{display:none}
  nav .menu .deroulant-panneau a{padding:12px 2px;border-bottom:1px solid #F2ECDF;font-size:1rem}
  nav .menu .deroulant-panneau a:last-child{border-bottom:none}
}

/* --- Bande d'avis client sous le hero de l'accueil --- */
.bande-avis{background:var(--pin-fonce);color:#EDE7D8;text-align:center;
  padding:38px 22px;border-top:1px solid rgba(192,161,94,.4)}
.bande-avis .bande-etoiles{color:var(--or-pale);letter-spacing:7px;font-size:.95rem;margin-bottom:12px}
.bande-avis blockquote{font-family:'Cormorant Garamond',Garamond,'Times New Roman',serif;font-style:italic;font-weight:500;
  font-size:clamp(1.15rem,2.4vw,1.5rem);line-height:1.5;max-width:54ch;margin:0 auto 12px}
.bande-avis .bande-source{font-family:'Jost',system-ui,-apple-system,'Segoe UI',sans-serif;font-size:.7rem;letter-spacing:.26em;
  text-transform:uppercase;color:var(--or-pale)}
.bande-avis .bande-source a{color:#fff;text-decoration:underline;text-underline-offset:3px}

/* --- Ligne « La Maison vient à vous » : pleine largeur, liseré or --- */
.conseils-duo .conseil-ligne[href="a-domicile.html"]{grid-column:1/-1;
  border-color:var(--or);background:linear-gradient(90deg,rgba(192,161,94,.07),transparent 55%)}
.conseils-duo .conseil-ligne[href="a-domicile.html"] .cl-t{color:var(--pin)}

/* ==========================================================
   COUCHE PREMIUM — logo officiel & habillage or champagne
   (surcharges globales, appliquées à toutes les pages)
   ========================================================== */
.logo-img{height:46px;width:46px;border-radius:50%;display:block;
  box-shadow:0 2px 10px rgba(43,42,38,.14)}
.logo-bloc a{display:block;line-height:0}
.logo{font-weight:600;letter-spacing:.01em}
.logo span{color:var(--jaune);font-weight:600;letter-spacing:.22em}

/* Boutons : passage au registre luxe (le héros et styles locaux gardent leurs surcharges) */
.btn{background:var(--violet);border:1px solid var(--jaune);border-radius:2px;
  font-weight:600;font-size:.82rem;letter-spacing:.16em;text-transform:uppercase;
  box-shadow:none;padding:14px 28px}
.btn:hover{background:var(--jaune);color:#fff;transform:none;box-shadow:0 10px 26px rgba(192,161,94,.4)}
.btn-nav{padding:10px 20px;font-size:.74rem}

/* Titres de section : respiration et filet or */
.sec-titre{font-weight:600;letter-spacing:.01em}
.sec-titre::after{content:"";display:block;width:56px;height:1px;background:var(--jaune);margin-top:14px}
.sec-titre[style*="text-align:center"]::after,
section .wrap>.sec-titre:only-of-type::after{margin-left:auto;margin-right:auto}
h2.sec-titre[style*="center"]::after{margin-left:auto;margin-right:auto}

/* Cartes : liseré or, angles adoucis mais nets */
.carte{border-radius:6px;border:1px solid color-mix(in srgb,var(--jaune) 35%, transparent);
  box-shadow:0 10px 30px rgba(30,61,52,.08)}
.carte:hover{box-shadow:0 20px 44px rgba(30,61,52,.15)}

/* Pied de page : vert forêt, filet or, logo officiel */
footer{background:var(--violet);color:#D9D3C4;border-top:1px solid var(--jaune)}
footer a{color:#EFEAE0;text-decoration-color:color-mix(in srgb,var(--jaune) 60%, transparent)}
footer a:hover{color:var(--jaune)}
.logo-pied{width:210px;height:auto;border-radius:8px;background:#fff;padding:14px;
  box-shadow:0 12px 34px rgba(0,0,0,.22);margin-bottom:6px}
footer .arc{opacity:.85}

/* Bouton flottant réserver : accordé à la couche or */
.reserver-flottant a{border:1px solid var(--jaune)}

/* Cadre or pour la vidéo « L'esprit de la Maison » */
.cadre-or{display:inline-block;padding:10px;background:#fff;border:1px solid color-mix(in srgb,var(--jaune) 45%, transparent);
  border-radius:4px;box-shadow:0 18px 46px rgba(30,61,52,.16)}
.cadre-or video{display:block;border-radius:2px;max-width:min(420px,100%);height:auto}

/* Bandeau Entreprises (accueil) — carton d'invitation vert & or */
.bandeau-ent{padding:64px 22px}
.bandeau-ent .carton{max-width:860px;margin:0 auto;background:var(--violet);border-radius:4px;padding:10px;
  box-shadow:0 24px 56px rgba(30,61,52,.30)}
.bandeau-ent .carton-in{border:1px solid var(--jaune);border-radius:2px;padding:46px 28px;text-align:center;color:#EFEAE0}
.bandeau-ent .surtitre{display:block;font-weight:600;font-size:.74rem;letter-spacing:.28em;text-transform:uppercase;
  color:var(--jaune);margin-bottom:12px}
.bandeau-ent h2{font-family:'Cormorant Garamond',Garamond,'Times New Roman',serif;font-weight:500;font-size:clamp(1.7rem,4vw,2.4rem);
  color:#fff;line-height:1.25;margin-bottom:14px}
.bandeau-ent h2 em{font-style:italic;color:var(--jaune)}
.bandeau-ent p{max-width:36rem;margin:0 auto 24px;font-size:.98rem;line-height:1.7;color:#D9D3C4}
.bandeau-ent .btn{background:transparent;border-color:var(--jaune);color:#fff}
.bandeau-ent .btn:hover{background:var(--jaune);color:var(--violet)}

/* Correctif lisibilité boutons (22/07) : texte toujours contrasté */
.btn{color:#fff}
.btn:hover{color:#fff}
/* Variante « ghost » : filet or, texte vert forêt — pour fonds clairs */
.btn.btn-ghost{background:transparent;color:var(--violet);border:1px solid var(--jaune);box-shadow:none}
.btn.btn-ghost:hover{background:var(--jaune);color:#fff;box-shadow:0 10px 26px rgba(192,161,94,.4)}
/* Héros sombres : le ghost repasse en blanc */
.page-hero .btn.btn-ghost,.hero-pro .btn.btn-ghost{background:rgba(255,255,255,.12);color:#fff;border-color:rgba(255,255,255,.85)}
.page-hero .btn.btn-ghost:hover,.hero-pro .btn.btn-ghost:hover{background:rgba(255,255,255,.26);color:#fff}
/* Bouton « hero » d'événement : fond blanc, texte vert */
.btn.btn-hero{background:#fff;color:var(--violet);border:1px solid var(--jaune)}
.btn.btn-hero:hover{background:var(--jaune);color:#fff}

/* === Maillage interne : articles liés & villes (MAJ 23/07/2026) === */
.lies{margin-top:38px;padding-top:26px;border-top:1px solid rgba(198,166,100,.45)}
.lies h2{font-size:1.25rem;margin-bottom:16px}
.lies-grid{display:grid;gap:14px;grid-template-columns:1fr}
@media(min-width:700px){.lies-grid{grid-template-columns:repeat(3,1fr)}}
.lies-carte{display:block;background:#fff;border:1px solid rgba(198,166,100,.55);border-radius:14px;
  padding:16px 18px;text-decoration:none;color:inherit;transition:transform .25s,box-shadow .25s}
.lies-carte:hover{transform:translateY(-4px);box-shadow:0 10px 24px rgba(43,42,38,.14)}
.lies-carte .etiq{display:block;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;
  color:#8B8371;font-weight:700;margin-bottom:6px}
.lies-carte .titre{font-weight:600;line-height:1.35;color:#1E3D34}
.lies-carte .fleche{display:inline-block;margin-top:8px;color:#C6A664;font-weight:700}
.villes-lies{margin-top:30px;text-align:center}
.villes-lies .puces{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:12px}
.villes-lies .puces a{display:inline-block;padding:9px 18px;border:1px solid rgba(198,166,100,.65);
  border-radius:999px;text-decoration:none;color:#1E3D34;font-weight:600;font-size:.92rem;
  background:#fff;transition:background .25s,transform .2s}
.villes-lies .puces a:hover{background:rgba(198,166,100,.14);transform:translateY(-2px)}

/* === Bouton d'appel au chat (consentement RGPD) — MAJ 23/07/2026 === */
.chat-appel{position:fixed;right:16px;bottom:18px;z-index:95;display:flex;align-items:center;gap:9px;
  padding:12px 20px;border:1px solid var(--jaune,#C6A664);border-radius:999px;cursor:pointer;
  background:var(--pin,#1E3D34);color:#fff;font-family:'Jost',system-ui,-apple-system,'Segoe UI',sans-serif;font-size:.86rem;
  font-weight:600;letter-spacing:.06em;box-shadow:0 8px 22px rgba(30,61,52,.28);
  transition:transform .25s,box-shadow .25s,opacity .35s}
.chat-appel:hover,.chat-appel:focus-visible{transform:translateY(-3px);box-shadow:0 12px 28px rgba(30,61,52,.34)}
.chat-appel .chat-ico{font-size:1.05rem;line-height:1}
.chat-appel .chat-info{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.chat-appel.chat-parti{opacity:0;transform:scale(.9);pointer-events:none}
@media(max-width:760px){
  .chat-appel{padding:11px 16px;font-size:.8rem;right:12px;bottom:14px}
  .chat-appel .chat-txt{display:none}
  .chat-appel.chat-remonte{bottom:74px}
}
@media(prefers-reduced-motion:reduce){.chat-appel{transition:none}}

/* === FAQ des pages soins (MAJ 23/07/2026) === */
.faq-soin{margin-top:36px;padding-top:26px;border-top:1px solid rgba(198,166,100,.45)}
.faq-q{background:#fff;border:1px solid rgba(198,166,100,.5);border-radius:12px;
  padding:14px 18px;margin-bottom:12px}
.faq-q summary{cursor:pointer;font-weight:600;color:#1E3D34;list-style:none;
  display:flex;justify-content:space-between;align-items:center;gap:12px}
.faq-q summary::-webkit-details-marker{display:none}
.faq-q summary::after{content:"+";color:#C6A664;font-size:1.3rem;font-weight:700;line-height:1}
.faq-q[open] summary::after{content:"−"}
.faq-q p{margin:12px 0 2px;color:#4a4a44;line-height:1.65}

/* === Liens sous la bande avis de l'accueil (MAJ 23/07/2026) === */
.bande-avis .bande-liens{margin-top:10px;font-size:.9rem;display:flex;gap:10px;
  justify-content:center;flex-wrap:wrap;align-items:center}
.bande-avis .bande-liens a{text-decoration:underline;text-underline-offset:3px}

/* === Témoignage client sur une page de soin (MAJ 23/07/2026) === */
.temoignage-soin{margin-top:34px;padding:24px 26px;border-radius:16px;
  background:color-mix(in srgb, #C6A664 8%, white);border:1px solid rgba(198,166,100,.55);text-align:center}
.temoignage-soin .temoignage-etoiles{color:#f5b301;letter-spacing:2px;font-size:1.1rem;margin:0 0 10px}
.temoignage-soin blockquote{margin:0;font-family:'Cormorant Garamond',Garamond,'Times New Roman',serif;font-size:1.22rem;
  line-height:1.55;color:#1E3D34;font-style:italic}
.temoignage-soin .temoignage-source{margin:12px 0 0;font-size:.86rem;color:#8B8371}

/* ===== FAQ locale (pages géo enrichies) ===== */
.fiche .faq-local{background:#fff;border:1.5px solid #F0E8DA;border-radius:12px;padding:14px 18px;margin:0 0 10px;box-shadow:0 2px 8px rgba(43,42,38,.06)}
.fiche .faq-local summary{list-style:none;cursor:pointer;font-weight:700;color:var(--encre);position:relative;padding-right:28px}
.fiche .faq-local summary::-webkit-details-marker{display:none}
.fiche .faq-local summary::after{content:"+";position:absolute;right:4px;top:50%;transform:translateY(-50%);font-size:1.3rem;font-weight:400;color:var(--c,#6B5B95);transition:transform .25s}
.fiche .faq-local[open] summary::after{content:"\2212"}
.fiche .faq-local p{margin:8px 0 0;color:#4A463C;font-size:.94rem}

/* =====================================================================
   PARTAGE DES RÉSULTATS (Oracle, Rituel du jour) — 26/07/2026
   ===================================================================== */
.partage-bloc{
  max-width:560px;margin:28px auto 0;padding:22px 20px;text-align:center;
  background:#fff;border:1px solid var(--bord);border-radius:6px;
}
.partage-intro{
  font-family:'Cormorant Garamond',Garamond,'Times New Roman',serif;font-style:italic;
  font-size:1.12rem;color:var(--pin);margin-bottom:16px;line-height:1.4;
}
.partage-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.partage-btn{font-size:.92rem;padding:11px 20px}
.partage-btn[disabled]{opacity:.6;cursor:progress}
.partage-note{
  margin-top:14px;font-size:.86rem;color:var(--grege);line-height:1.5;
  opacity:0;transition:opacity .3s;
}
.partage-note.visible{opacity:1}
.partage-recu{
  max-width:560px;margin:0 auto 22px;padding:13px 18px;text-align:center;
  background:var(--sable);border:1px solid var(--bord);border-radius:6px;
  font-family:'Jost',system-ui,-apple-system,'Segoe UI',sans-serif;font-size:.9rem;color:var(--pin);line-height:1.5;
}
@media(max-width:520px){
  .partage-actions{flex-direction:column}
  .partage-btn{width:100%}
}

/* =====================================================================
   FORMULAIRE DE DEVIS ENTREPRISE — 26/07/2026
   ===================================================================== */
.devis-form{background:#fff;border:1px solid var(--bord);border-radius:6px;padding:30px 26px}
.devis-grille{display:grid;grid-template-columns:1fr;gap:18px}
@media(min-width:640px){.devis-grille{grid-template-columns:1fr 1fr}.devis-large{grid-column:1/-1}}
.devis-champ label{display:block;font-family:'Jost',system-ui,-apple-system,'Segoe UI',sans-serif;font-weight:500;font-size:.82rem;
  letter-spacing:.04em;color:var(--pin);margin-bottom:6px}
.devis-champ input,.devis-champ select,.devis-champ textarea{
  width:100%;padding:12px 14px;border:1px solid var(--bord);border-radius:4px;
  font-family:'Jost',system-ui,-apple-system,'Segoe UI',sans-serif;font-size:.98rem;color:var(--encre);background:#FDFCFA;
  transition:border-color .2s}
.devis-champ input:focus,.devis-champ select:focus,.devis-champ textarea:focus{
  outline:none;border-color:var(--or);background:#fff}
.devis-champ textarea{resize:vertical;min-height:96px}
.devis-champ .champ-erreur{border-color:#B0574E;background:#FDF7F6}
.devis-err{margin-top:5px;font-size:.8rem;color:#B0574E;font-family:'Jost',system-ui,-apple-system,'Segoe UI',sans-serif}
.devis-accord label{display:flex;gap:11px;align-items:flex-start;font-weight:400;
  font-size:.85rem;line-height:1.55;color:var(--grege);letter-spacing:0}
.devis-accord input{width:auto;flex:0 0 auto;margin-top:3px}
.devis-accord a{color:var(--pin);text-decoration:underline}
.devis-piege{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.devis-pied{margin-top:24px;text-align:center}
.devis-pied .btn-or{width:100%;max-width:340px}
.devis-pied .btn-or[disabled]{opacity:.6;cursor:progress}
.devis-mention{margin-top:12px;font-size:.82rem;color:var(--grege);font-family:'Jost',system-ui,-apple-system,'Segoe UI',sans-serif}
.devis-mention a{color:var(--pin)}
.devis-etat{display:none;margin-top:20px;padding:18px 20px;border-radius:4px;
  font-family:'Jost',system-ui,-apple-system,'Segoe UI',sans-serif;font-size:.92rem;line-height:1.6}
.devis-etat.ok,.devis-etat.ko{display:block}
.devis-etat.ok{background:var(--sable);border:1px solid var(--or)}
.devis-etat.ko{background:#FDF7F6;border:1px solid #D8B5B0}
.devis-etat strong{display:block;color:var(--pin);margin-bottom:5px;font-weight:600}
.devis-etat span{display:block;color:#57534A}
.devis-etat a{color:var(--pin);text-decoration:underline}

/* Détail tarifaire — page EVJF & groupes */
.col-prix-detail{margin-top:-8px;margin-bottom:14px;font-family:'Jost',system-ui,-apple-system,'Segoe UI',sans-serif;
  font-size:.78rem;color:var(--grege);font-style:italic}
.prix-variables{max-width:680px;margin:38px auto 0;padding:26px 24px;
  background:#fff;border:1px solid var(--bord);border-radius:6px}
.prix-variables h3{font-family:'Cormorant Garamond',Garamond,'Times New Roman',serif;font-size:1.35rem;
  color:var(--pin);margin-bottom:16px;text-align:center}
.prix-variables ul{list-style:none;padding:0;margin:0}
.prix-variables li{position:relative;padding-left:18px;margin-bottom:13px;
  font-size:.94rem;line-height:1.65;color:#57534A}
.prix-variables li::before{content:"·";position:absolute;left:4px;color:var(--or);font-weight:700}
.prix-variables li strong{color:var(--pin)}
.prix-note{margin-top:18px;padding-top:15px;border-top:1px solid var(--bord);
  text-align:center;font-size:.88rem;color:var(--grege);font-style:italic}

/* Photos des formats — page EVJF & groupes */
.col-photo{width:100%;height:auto;display:block;aspect-ratio:3/4;object-fit:cover;
  border-radius:6px 6px 0 0;background:var(--sable)}

/* =====================================================================
   BLOCS PARTAGÉS — cartes de formats, bandeau rassurance
   Ces classes étaient définies uniquement dans le <style> inline de
   entreprises.html : elles sont désormais disponibles pour toutes les
   pages (EVJF, et les suivantes).                        26/07/2026
   ===================================================================== */
.ent-eyebrow{display:block;text-align:center;font-family:'Jost',system-ui,-apple-system,'Segoe UI',sans-serif;font-weight:600;
  font-size:.76rem;letter-spacing:.28em;text-transform:uppercase;color:var(--jaune);margin-bottom:14px}
.ent-eyebrow::before,.ent-eyebrow::after{content:"—";margin:0 12px;
  color:color-mix(in srgb,var(--jaune) 55%, transparent)}

.collections{display:grid;gap:26px;grid-template-columns:1fr;margin-top:38px}
@media(min-width:900px){.collections{grid-template-columns:repeat(3,1fr)}}
.collection{background:#fff;border:1px solid color-mix(in srgb,var(--jaune) 38%, transparent);
  border-radius:4px;padding:36px 30px 32px;display:flex;flex-direction:column;position:relative;
  transition:box-shadow .3s,transform .3s;overflow:hidden}
.collection:hover{transform:translateY(-4px);box-shadow:0 22px 48px rgba(30,61,52,.14)}
.collection h3{font-family:'Cormorant Garamond',Garamond,'Times New Roman',serif;font-weight:600;font-size:1.75rem;
  color:var(--violet);margin-bottom:6px}
.collection p{font-size:.93rem;color:#5d564a;line-height:1.65;margin-bottom:18px}

/* Carte illustrée : la photo occupe toute la largeur en tête */
.col-photo{display:block;width:calc(100% + 60px);margin:-36px -30px 22px;height:auto;
  aspect-ratio:1/1;object-fit:cover;background:var(--sable)}
.col-haut{margin-bottom:14px}
.col-sous{font-style:italic;font-family:'Cormorant Garamond',Garamond,'Times New Roman',serif;font-size:1.05rem;
  color:#8a8272;margin:0}
.col-corps{display:flex;flex-direction:column;flex:1}
.col-liste{list-style:none;margin:0 0 20px;padding:0;
  border-top:1px solid color-mix(in srgb,var(--jaune) 30%, transparent)}
.col-liste li{font-size:.88rem;color:var(--encre);padding:10px 0 10px 22px;position:relative;
  border-bottom:1px solid color-mix(in srgb,var(--jaune) 18%, transparent)}
.col-liste li::before{content:"·";position:absolute;left:4px;color:var(--jaune);
  font-weight:700;font-size:1.3rem;line-height:1}
.col-prix{font-family:'Cormorant Garamond',Garamond,'Times New Roman',serif;font-size:1.22rem;color:var(--violet);
  text-align:center;margin:0 0 4px;font-weight:600}
.col-corps .btn-or{margin-top:auto;align-self:center}

.reassure{display:grid;gap:22px;grid-template-columns:1fr;max-width:920px;margin:36px auto 0}
@media(min-width:760px){.reassure{grid-template-columns:repeat(3,1fr)}}
.reassure div{text-align:center;padding:0 12px}
.reassure h3{font-family:'Cormorant Garamond',Garamond,'Times New Roman',serif;font-weight:600;font-size:1.2rem;
  color:var(--violet);margin-bottom:8px}
.reassure p{font-size:.88rem;color:#6E6657;line-height:1.6}
.reassure .r-filet{width:34px;height:1px;background:var(--jaune);margin:0 auto 14px}

/* =====================================================================
   CARTES DE FORMATS — habillage premium                    26/07/2026
   ===================================================================== */
.collection{overflow:hidden}
.collection .col-photo{transition:transform .8s cubic-bezier(.2,.7,.3,1)}
.collection:hover .col-photo{transform:scale(1.04)}

.col-num{font-family:'Jost',system-ui,-apple-system,'Segoe UI',sans-serif;font-weight:600;font-size:.68rem;
  letter-spacing:.26em;text-transform:uppercase;color:var(--jaune);margin:0 0 8px}

/* Carte phare — hiérarchie plutôt que trois cartes égales */
.collection.phare{background:var(--violet);border-color:var(--jaune)}
.collection.phare h3{color:#fff}
.collection.phare p,.collection.phare .col-sous{color:#CFC9BA}
.collection.phare .col-liste{border-top-color:rgba(192,161,94,.42)}
.collection.phare .col-liste li{color:#EFEAE0;border-bottom-color:rgba(192,161,94,.26)}
.collection.phare .col-prix-nb{color:#fff}
.collection.phare .col-prix-detail{color:#A9A192}
.collection.phare .btn-or{color:#fff;border-color:var(--jaune)}
.collection.phare .btn-or:hover{background:var(--jaune);color:var(--violet)}

/* Tarif */
.col-prix{display:flex;flex-direction:column;align-items:center;gap:2px;margin:6px 0 2px}
.col-prix-mention{font-family:'Jost',system-ui,-apple-system,'Segoe UI',sans-serif;font-weight:600;font-size:.64rem;
  letter-spacing:.22em;text-transform:uppercase;color:var(--jaune)}
.col-prix-nb{font-family:'Cormorant Garamond',Garamond,'Times New Roman',serif;font-weight:600;font-size:2.1rem;
  line-height:1.05;color:var(--violet)}
.col-prix-unite{font-family:'Jost',system-ui,-apple-system,'Segoe UI',sans-serif;font-size:.72rem;letter-spacing:.08em;color:#8a8272}
.collection.phare .col-prix-unite{color:#A9A192}
.col-prix-detail{margin:2px 0 20px;text-align:center;font-family:'Jost',system-ui,-apple-system,'Segoe UI',sans-serif;
  font-size:.72rem;font-style:italic;color:#9a927f}

/* Respiration éditoriale */
.citation-bloc{background:var(--sable);padding:clamp(46px,7vw,78px) 22px;text-align:center}
.citation-bloc p{font-family:'Cormorant Garamond',Garamond,'Times New Roman',serif;font-style:italic;font-weight:500;
  font-size:clamp(1.3rem,3vw,1.85rem);line-height:1.5;color:var(--violet);
  max-width:660px;margin:0 auto 16px}
.citation-bloc span{display:inline-block;font-family:'Jost',system-ui,-apple-system,'Segoe UI',sans-serif;font-weight:600;
  font-size:.7rem;letter-spacing:.28em;text-transform:uppercase;color:var(--jaune)}
.citation-bloc span::before{content:"—";margin-right:10px}

/* Photos de cartes : transition de cadrage fluide (finitions.js) */
.col-photo{will-change:transform,object-position}
@media (prefers-reduced-motion: reduce){
  .col-photo,.collection:hover .col-photo{transition:none;transform:none}
}


/* ============ SIGNATURE — bandeau cinematique ============ */
.signature{
  position:relative; padding:0 0 clamp(28px,5vw,54px);
  background:var(--pin-fonce,#16302A);
  overflow:hidden;
}
.signature-cadre{
  position:relative; width:100%; aspect-ratio:16/9;
  max-height:min(72vh,620px); overflow:hidden; background:#0B1F18;
}
.signature-video{
  width:100%; height:100%; object-fit:cover; display:block;
  filter:saturate(1.04) contrast(1.03);
}
/* fondu haut/bas : la video se dissout dans la section */
.signature-voile{
  position:absolute; inset:0; pointer-events:none;
  background:
    linear-gradient(to bottom, var(--pin-fonce,#16302A) 0%, rgba(22,48,42,0) 16%,
                    rgba(22,48,42,0) 76%, var(--pin-fonce,#16302A) 100%),
    radial-gradient(120% 90% at 50% 50%, rgba(0,0,0,0) 52%, rgba(11,31,24,.55) 100%);
}
.signature-legende{
  margin:clamp(16px,3vw,30px) auto 0; text-align:center;
  font-family:"Cormorant Garamond",Georgia,serif; font-style:italic;
  font-size:clamp(1.05rem,2.2vw,1.5rem); letter-spacing:.02em;
  color:var(--or-pale,#D9C08A); opacity:.92;
}
.signature-legende::before,.signature-legende::after{
  content:""; display:block; width:54px; height:1px; margin:14px auto;
  background:linear-gradient(90deg,transparent,var(--or,#C0A15E),transparent);
}
.signature-legende::before{display:none}
@media (max-width:640px){
  .signature-cadre{aspect-ratio:4/3}
}
@media (prefers-reduced-motion:reduce){
  .signature-video{display:none}
  .signature-cadre{
    background:url("images/signature-poster.webp") center/cover no-repeat;
  }
}
