
  :root{
    --ivoire:#fbf8f3;
    --sable:#f3ede3;
    --sable-fonce:#e9e0d2;
    --sauge:#a9b89f;
    --sauge-pale:#d3dcca;
    --vert:#2e4534;
    --vert-clair:#4c6752;
    --or:#b8935f;
    --or-pale:#d9bc8f;
    --texte:#5a5c52;
    --serif:'Cormorant Garamond', Georgia, serif;
    --sans:'Jost', -apple-system, sans-serif;
  }
  *{margin:0;padding:0;box-sizing:border-box;}
  body{background:var(--ivoire);color:var(--vert);
    font-family:var(--serif);font-size:19px;line-height:1.75;
    -webkit-font-smoothing:antialiased;}
  a{color:inherit;text-decoration:none;}
  img{display:block;max-width:100%;}
  .wrap{max-width:1140px;margin:0 auto;padding:0 34px;}
  .narrow{max-width:820px;}

  .eyebrow{font-family:var(--sans);font-size:.66rem;font-weight:300;
    letter-spacing:.36em;text-transform:uppercase;color:var(--or);display:block;}
  .eyebrow.light{color:var(--or-pale);}

  h1,h2,h3,h4{font-weight:300;line-height:1.16;}
  h2{font-size:clamp(2.1rem,4.4vw,3.2rem);letter-spacing:-.005em;}
  h3{font-size:1.44rem;font-weight:400;}
  em{font-style:italic;}
  p{color:var(--texte);}

  .btn{font-family:var(--sans);font-size:.72rem;font-weight:300;letter-spacing:.2em;
    text-transform:uppercase;padding:17px 34px;border:1px solid var(--or);
    display:inline-block;transition:.3s;cursor:pointer;background:none;color:var(--vert);}
  .btn.solid{background:var(--or);color:#fff;border-color:var(--or);}
  .btn.solid:hover{background:var(--vert);border-color:var(--vert);}
  .btn:hover{background:rgba(184,147,95,.1);}
  .btn.light{color:#fff;border-color:rgba(255,255,255,.6);}
  .btn.light:hover{background:rgba(255,255,255,.15);}

  /* ═══ NAV ═══ */
  nav{position:sticky;top:0;z-index:60;background:rgba(251,248,243,.93);
    backdrop-filter:blur(12px);border-bottom:1px solid var(--sable-fonce);}
  .nav-in{max-width:1140px;margin:0 auto;padding:0 34px;height:78px;
    display:flex;align-items:center;justify-content:space-between;gap:20px;}
  .brand{font-size:1.4rem;letter-spacing:.06em;white-space:nowrap;
    background:none;border:none;cursor:pointer;font-family:var(--serif);
    color:var(--vert);font-weight:300;}
  .brand em{color:var(--or);}
  .nav-links{display:flex;gap:24px;list-style:none;}
  .nav-links button{font-family:var(--sans);font-size:.71rem;font-weight:300;
    letter-spacing:.19em;text-transform:uppercase;color:var(--vert-clair);
    background:none;border:none;border-bottom:1px solid transparent;
    padding-bottom:4px;cursor:pointer;transition:.25s;}
  .nav-links button:hover{color:var(--or);}
  .nav-links button[aria-current="page"]{color:var(--or);border-color:var(--or-pale);}
  .burger{display:none;background:none;border:none;color:var(--vert);
    font-size:1.4rem;cursor:pointer;}
  @media(max-width:1120px){
    .burger{display:block;}
    .nav-links{position:absolute;top:78px;left:0;right:0;flex-direction:column;gap:0;
      background:var(--ivoire);border-bottom:1px solid var(--sable-fonce);display:none;}
    .nav-links.open{display:flex;}
    .nav-links li{border-top:1px solid var(--sable-fonce);}
    .nav-links button{width:100%;text-align:left;padding:18px 34px;border:none;}
  }

  .page{display:none;}
  .page.active{display:block;animation:fade .5s ease;}
  @keyframes fade{from{opacity:0;transform:translateY(10px);}to{opacity:1;transform:none;}}

  section{padding:clamp(76px,10vw,132px) 0;}
  .sec-head{max-width:700px;margin-bottom:60px;}
  .sec-head h2{margin-top:18px;}
  .sec-head p{margin-top:20px;font-size:1.14rem;}

  .sable{background:var(--sable);}
  .vert{background:var(--vert);}
  .vert h2,.vert h3,.vert .brand{color:var(--ivoire);}
  .vert p{color:rgba(251,248,243,.8);}

  /* ═══ HERO ═══ */
  .hero{position:relative;min-height:clamp(520px,72vh,720px);display:flex;align-items:center;}
  .hero-img{position:absolute;inset:0;background-image:url(/img/cabine-massage-bien-etre-570898f7.jpg);
    background-size:cover;background-position:center right;}
  .hero-veil{position:absolute;inset:0;
    background:linear-gradient(100deg,rgba(251,248,243,.97) 0%,rgba(251,248,243,.9) 34%,rgba(251,248,243,.4) 62%,rgba(251,248,243,.15) 100%);}
  .hero-in{position:relative;z-index:2;padding:clamp(70px,9vw,110px) 0;}
  .hero h1{font-size:clamp(2.5rem,5.6vw,4.2rem);margin:24px 0 0;max-width:19ch;}
  .hero h1 em{color:var(--or);}
  .hero .lede{font-size:1.2rem;max-width:38ch;margin-top:24px;}
  .hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:40px;}
  @media(max-width:760px){
    .hero-veil{background:linear-gradient(160deg,rgba(251,248,243,.97) 0%,rgba(251,248,243,.93) 58%,rgba(251,248,243,.62) 100%);}
    .hero-in{text-align:center;}
    .hero h1{max-width:15ch;margin-left:auto;margin-right:auto;font-size:clamp(2.2rem,8.5vw,3rem);}
    .hero .lede{max-width:34ch;margin-left:auto;margin-right:auto;}
    .hero .eyebrow{letter-spacing:.22em;}
    .hero-actions{justify-content:center;}
    .hero-actions .btn{width:100%;max-width:300px;text-align:center;}
  }

  /* ═══ FILET DE CHIFFRES ═══ */
  .chiffres{border-top:1px solid var(--sable-fonce);border-bottom:1px solid var(--sable-fonce);}
  .chiffres-grid{display:grid;grid-template-columns:repeat(4,1fr);}
  .chiffre{padding:36px 22px;text-align:center;border-right:1px solid var(--sable-fonce);}
  .chiffre:last-child{border-right:none;}
  .chiffre .n{font-size:1.9rem;color:var(--or);display:block;line-height:1.2;}
  .chiffre .l{font-family:var(--sans);font-size:.62rem;letter-spacing:.2em;
    text-transform:uppercase;color:var(--texte);margin-top:8px;display:block;}
  @media(max-width:720px){
    .chiffres-grid{grid-template-columns:1fr 1fr;}
    .chiffre:nth-child(2n){border-right:none;}
    .chiffre:nth-child(-n+2){border-bottom:1px solid var(--sable-fonce);}}

  /* ═══ EBOOK ═══ */
  .ebook{background:var(--sauge-pale);}
  .ebook-in{display:grid;grid-template-columns:1.25fr .75fr;gap:56px;align-items:center;}
  @media(max-width:860px){.ebook-in{grid-template-columns:1fr;gap:34px;}}
  .ebook h2{font-size:clamp(1.8rem,3.4vw,2.6rem);margin:16px 0 16px;}
  .ebook p{color:#4b5748;}
  .form-mini{margin-top:26px;max-width:420px;}
  .form-mini input{width:100%;padding:15px 18px;font-family:var(--serif);
    font-size:1.05rem;background:rgba(255,255,255,.75);border:1px solid rgba(46,69,52,.2);
    color:var(--vert);margin-bottom:12px;}
  .form-mini input:focus{outline:none;border-color:var(--or);background:#fff;}
  .ebook-visuel{display:flex;align-items:center;justify-content:center;padding:10px;}
  .ebook-cover{width:100%;max-width:290px;height:auto;display:block;
    box-shadow:0 16px 38px rgba(46,69,52,.16), 0 3px 10px rgba(46,69,52,.09);
    transition:transform .5s ease;}
  .ebook-visuel:hover .ebook-cover{transform:translateY(-5px);}
  @media(prefers-reduced-motion:reduce){.ebook-cover{transform:none;}}

  /* ═══ PILIERS ═══ */
  .piliers{display:grid;grid-template-columns:repeat(2,1fr);gap:50px 60px;}
  @media(max-width:800px){.piliers{grid-template-columns:1fr;gap:36px;}}
  .pilier{padding-top:22px;border-top:1px solid var(--or-pale);}
  .pilier .num{font-family:var(--sans);font-size:.64rem;letter-spacing:.24em;color:var(--or);}
  .pilier h3{margin:10px 0 9px;}
  .pilier p{font-size:1.04rem;}
  .vert .pilier{border-color:rgba(217,188,143,.4);}

  /* ═══ DUO PHOTO/TEXTE ═══ */
  .duo{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;}
  .duo.inverse .col-img{order:2;}
  @media(max-width:900px){.duo{grid-template-columns:1fr;gap:40px;}
    .duo.inverse .col-img{order:0;}}
  .medaillon{width:100%;max-width:200px;border-radius:50%;aspect-ratio:1/1;object-fit:cover;}
  .medaillon-bloc{display:flex;flex-direction:column;align-items:flex-start;gap:16px;}
  .medaillon-legende{font-family:var(--sans);font-size:.64rem;letter-spacing:.2em;
    text-transform:uppercase;color:var(--sauge);}
  @media(max-width:900px){.medaillon{max-width:160px;}}
  .photo-drainage{width:100%;aspect-ratio:4/5;object-fit:cover;}
  .cadre{position:relative;}
  .cadre::after{content:"";position:absolute;inset:14px;
    border:1px solid rgba(255,255,255,.45);pointer-events:none;}

  .objectifs{display:grid;grid-template-columns:1fr 1fr;gap:0 46px;}
  @media(max-width:800px){.objectifs{grid-template-columns:1fr;}}
  .objectifs li{position:relative;padding:13px 0 13px 30px;color:var(--texte);
    border-bottom:1px solid var(--sable-fonce);list-style:none;font-size:1.03rem;}
  .objectifs li::before{content:"";position:absolute;left:2px;top:23px;
    width:11px;height:1px;background:var(--or);}
  .dark .objectifs li{border-color:rgba(217,188,143,.22);color:rgba(251,248,243,.85);}

  .pratique{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;
    background:var(--sable-fonce);border:1px solid var(--sable-fonce);}
  @media(max-width:860px){.pratique{grid-template-columns:1fr 1fr;}}
  @media(max-width:520px){.pratique{grid-template-columns:1fr;}}
  .pratique div{background:var(--ivoire);padding:24px 22px;}
  .pratique .k{font-family:var(--sans);font-size:.62rem;letter-spacing:.2em;
    text-transform:uppercase;color:var(--sauge);display:block;margin-bottom:7px;}
  .pratique .v{color:var(--texte);font-size:1.02rem;line-height:1.5;}

  .apercu{display:grid;grid-template-columns:1fr 1fr;gap:34px;margin-top:8px;}
  @media(max-width:860px){.apercu{grid-template-columns:1fr;gap:26px;}}
  .apercu figure{margin:0;}
  .apercu img{width:100%;border:1px solid var(--sable-fonce);display:block;}
  .apercu figcaption{font-family:var(--sans);font-size:.72rem;letter-spacing:.1em;
    text-transform:uppercase;color:var(--sauge);margin-top:14px;line-height:1.6;}
  .offre{margin:32px 0 0;border-top:1px solid var(--or-pale);}
  .offre-ligne{display:grid;grid-template-columns:150px 1fr;gap:20px;
    padding:16px 0;border-bottom:1px solid var(--sable-fonce);align-items:baseline;}
  .offre-k{font-family:var(--sans);font-size:.64rem;letter-spacing:.2em;
    text-transform:uppercase;color:var(--sauge);}
  .offre-v{color:var(--texte);font-size:1.04rem;line-height:1.5;}
  .offre-v em{font-style:italic;font-size:.95rem;color:var(--sauge);}
  .offre-v .prix{font-family:var(--serif);font-size:2rem;font-weight:400;
    color:var(--or);letter-spacing:-.01em;}
  @media(max-width:640px){.offre-ligne{grid-template-columns:1fr;gap:6px;}}
  .inclus{list-style:none;margin:28px 0 36px;}
  .inclus li{padding:14px 0 14px 28px;position:relative;font-size:1.04rem;
    border-bottom:1px solid var(--sable-fonce);color:var(--texte);}
  .inclus li::before{content:"";position:absolute;left:0;top:24px;width:9px;height:1px;
    background:var(--or);}
  .vert .inclus li{border-color:rgba(217,188,143,.25);color:rgba(251,248,243,.85);}

  /* ═══ TECHNIQUES ═══ */
  .techs{display:grid;grid-template-columns:repeat(3,1fr);gap:36px 40px;}
  @media(max-width:880px){.techs{grid-template-columns:1fr 1fr;gap:30px;}}
  @media(max-width:560px){.techs{grid-template-columns:1fr;}}
  .tech{padding-top:20px;border-top:1px solid var(--sable-fonce);}
  .tech .n{font-family:var(--sans);font-size:.6rem;letter-spacing:.22em;
    text-transform:uppercase;color:var(--sauge);}
  .tech h3{font-size:1.26rem;margin:9px 0 7px;}
  .tech p{font-size:1rem;}

  /* ═══ TRAJET (signature) ═══ */
  .trajet{position:relative;padding-left:56px;}
  .trajet::before{content:"";position:absolute;left:10px;top:14px;bottom:14px;width:1px;
    background:linear-gradient(180deg,transparent,var(--or-pale) 6%,var(--or-pale) 94%,transparent);}
  .etape{position:relative;padding-bottom:46px;}
  .etape:last-child{padding-bottom:0;}
  .etape::before{content:"";position:absolute;left:-51px;top:11px;width:21px;height:21px;
    border-radius:50%;background:var(--ivoire);border:1px solid var(--or-pale);}
  .etape::after{content:"";position:absolute;left:-45px;top:17px;width:9px;height:9px;
    border-radius:50%;background:var(--or);}
  .sable .etape::before{background:var(--sable);}
  .etape .an{font-family:var(--sans);font-size:.62rem;letter-spacing:.22em;
    text-transform:uppercase;color:var(--sauge);}
  .etape h3{margin:8px 0 7px;}
  .etape p{max-width:58ch;font-size:1.05rem;}
  @media(max-width:600px){.trajet{padding-left:40px;}
    .etape::before{left:-37px;}.etape::after{left:-31px;}}

  /* ═══ À VENIR ═══ */
  .venir{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;}
  @media(max-width:880px){.venir{grid-template-columns:1fr;}}
  .carte{background:#fff;border:1px solid var(--sable-fonce);padding:34px 30px;}
  .carte .statut{font-family:var(--sans);font-size:.6rem;letter-spacing:.22em;
    text-transform:uppercase;color:var(--or);}
  .carte h3{font-size:1.22rem;margin:12px 0 9px;}
  .carte p{font-size:1rem;}

  /* ═══ FAQ ═══ */
  .faq{max-width:840px;}
  .faq details{border-bottom:1px solid var(--sable-fonce);padding:22px 0;}
  .faq summary{font-size:1.2rem;cursor:pointer;list-style:none;
    display:flex;justify-content:space-between;gap:22px;align-items:baseline;}
  .faq summary::-webkit-details-marker{display:none;}
  .faq summary::after{content:"+";color:var(--or);font-size:1.4rem;flex-shrink:0;}
  .faq details[open] summary::after{content:"–";}
  .faq details p{margin-top:15px;font-size:1.05rem;max-width:66ch;}

  /* ═══ TÉMOIGNAGES ═══ */
  .temoins{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;}
  .temoins.duo{grid-template-columns:repeat(2,1fr);gap:28px;}
  @media(max-width:820px){.temoins.duo{grid-template-columns:1fr;}}
  @media(max-width:880px){.temoins{grid-template-columns:1fr;}}
  .temoin{background:#fff;border:1px solid var(--sable-fonce);padding:34px 30px;}
  .temoin .q{font-size:2.4rem;color:var(--or-pale);line-height:.6;display:block;height:18px;}
  .temoin p{font-style:italic;margin:16px 0 20px;font-size:1.05rem;}
  .temoin .who{font-family:var(--sans);font-size:.64rem;letter-spacing:.2em;
    text-transform:uppercase;color:var(--sauge);}
  .vide{font-family:var(--sans);font-size:.68rem;letter-spacing:.12em;
    text-transform:uppercase;color:var(--sauge);margin-top:30px;}

  /* ═══ BLOG ═══ */
  .articles{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;}
  @media(max-width:880px){.articles{grid-template-columns:1fr;}}
  .articles.quatre{grid-template-columns:repeat(2,1fr);gap:48px 44px;}
  @media(max-width:880px){.articles.quatre{grid-template-columns:1fr;}}
  .ph{background:linear-gradient(150deg,var(--sable),var(--sable-fonce));
    border:1px solid rgba(184,147,95,.25);display:flex;align-items:center;
    justify-content:center;text-align:center;padding:24px;
    font-family:var(--sans);font-size:.64rem;letter-spacing:.2em;
    text-transform:uppercase;color:var(--sauge);}
  .ph.paysage{aspect-ratio:16/10;}
  .ph.portrait{aspect-ratio:4/5;}
  .article .meta{font-family:var(--sans);font-size:.6rem;letter-spacing:.22em;
    text-transform:uppercase;color:var(--sauge);margin:20px 0 10px;}
  .article h3{font-size:1.28rem;}
  .article p{font-size:1.02rem;margin-top:10px;}
  .article .lire{font-family:var(--sans);font-size:.66rem;letter-spacing:.2em;
    text-transform:uppercase;color:var(--or);margin-top:18px;display:inline-block;
    border-bottom:1px solid var(--or-pale);padding-bottom:3px;}

  /* ═══ CONTACT ═══ */
  .contact-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:64px;}
  @media(max-width:880px){.contact-grid{grid-template-columns:1fr;gap:46px;}}
  .champ{margin-bottom:22px;}
  .champ label{font-family:var(--sans);font-size:.64rem;letter-spacing:.2em;
    text-transform:uppercase;color:var(--sauge);display:block;margin-bottom:9px;}
  .champ input,.champ textarea,.champ select{width:100%;padding:14px 16px;
    font-family:var(--serif);font-size:1.05rem;background:#fff;
    border:1px solid var(--sable-fonce);color:var(--vert);}
  .champ textarea{min-height:150px;resize:vertical;}
  .champ input:focus,.champ textarea:focus,.champ select:focus{
    outline:none;border-color:var(--or);}
  .coord{list-style:none;}
  .coord li{padding:17px 0;border-bottom:1px solid var(--sable-fonce);}
  .coord .k{font-family:var(--sans);font-size:.62rem;letter-spacing:.2em;
    text-transform:uppercase;color:var(--sauge);display:block;margin-bottom:5px;}

  /* ═══ CTA ═══ */
  .cta{text-align:center;background:var(--sable);}
  .cta h2{max-width:24ch;margin:18px auto 20px;}
  .cta h2 em{color:var(--or);}
  .cta p{max-width:50ch;margin:0 auto 38px;}

  /* ═══ FOOTER ═══ */
  footer{background:var(--vert);color:rgba(251,248,243,.68);padding:64px 0 42px;
    font-family:var(--sans);font-size:.84rem;font-weight:300;}
  .foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr 1.1fr;gap:34px;}
  @media(max-width:1000px){.foot-grid{grid-template-columns:1fr 1fr 1fr;gap:32px;}}
  @media(max-width:760px){.foot-grid{grid-template-columns:1fr 1fr;}}
  @media(max-width:520px){.foot-grid{grid-template-columns:1fr;}}
  footer h4{font-size:.62rem;letter-spacing:.22em;text-transform:uppercase;
    color:var(--or-pale);font-weight:400;margin-bottom:16px;}
  footer ul{list-style:none;}
  footer li{margin-bottom:10px;}
  footer button{background:none;border:none;color:inherit;font:inherit;
    cursor:pointer;padding:0;text-align:left;}
  footer a:hover,footer button:hover{color:var(--or-pale);}
  .mentions{margin-top:46px;padding-top:26px;border-top:1px solid rgba(217,188,143,.2);
    font-size:.73rem;color:rgba(251,248,243,.45);line-height:1.7;}

  /* ═══ ARTICLES ═══ */
  .art-tete{max-width:800px;}
  .art-tete h1{font-size:clamp(2rem,4.4vw,3rem);font-weight:300;margin:18px 0 16px;line-height:1.15;}
  .art-meta{font-family:var(--sans);font-size:.66rem;letter-spacing:.2em;
    text-transform:uppercase;color:var(--sauge);}
  .art-img{width:100%;margin:0 auto;display:block;}
  .art-img.diagramme{max-width:420px;background:#fff;padding:22px;
    border:1px solid var(--sable-fonce);}
  .art-img.photo{max-width:760px;aspect-ratio:16/10;object-fit:cover;object-position:center 50%;}
  .art-img.photo.haut{object-position:center 34%;}
  .prose{max-width:720px;}
  .prose h2{font-size:clamp(1.5rem,2.6vw,1.95rem);margin:52px 0 16px;font-weight:300;}
  .prose h2:first-child{margin-top:0;}
  .prose p{margin-bottom:20px;}
  .prose p.chapo{font-size:1.2rem;color:var(--vert-clair);}
  .prose ul{margin:0 0 24px 0;padding-left:0;list-style:none;}
  .prose li{position:relative;padding:9px 0 9px 26px;color:var(--texte);}
  .prose li::before{content:"";position:absolute;left:0;top:20px;width:10px;height:1px;
    background:var(--or);}
  .prose strong{font-weight:500;color:var(--vert);}
  .prose em.aparte{display:block;font-style:italic;background:var(--sable);
    padding:24px 26px;margin:34px 0;border-left:2px solid var(--or);color:var(--vert-clair);}
  .art-cta{max-width:720px;margin-top:56px;padding-top:34px;border-top:1px solid var(--sable-fonce);}
  .art-cta p{font-style:italic;margin-bottom:20px;}
  .retour{font-family:var(--sans);font-size:.68rem;letter-spacing:.2em;
    text-transform:uppercase;color:var(--sauge);background:none;border:none;
    cursor:pointer;padding:0;}
  .retour:hover{color:var(--or);}
  .legal h3{margin:36px 0 10px;font-size:1.3rem;}
  .legal p{font-size:1.03rem;}
  .legal .maj{font-family:var(--sans);font-size:.68rem;letter-spacing:.16em;
    text-transform:uppercase;color:var(--sauge);margin-top:44px;}

  :focus-visible{outline:2px solid var(--or);outline-offset:3px;}
  @media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;}}

  /* pages séparées */
  .nav-links a{font-family:var(--sans);font-size:.71rem;font-weight:300;letter-spacing:.19em;text-transform:uppercase;color:var(--vert-clair);border-bottom:1px solid transparent;padding-bottom:4px;transition:.25s;display:inline-block;}
  .nav-links a:hover{color:var(--or);}
  .nav-links a[aria-current="page"]{color:var(--or);border-color:var(--or-pale);}
  @media(max-width:1120px){.nav-links a{width:100%;text-align:left;padding:18px 34px;border:none;}}
  a.brand{display:inline-block;}
  a.retour{display:inline-block;}
  .article-lien{display:block;color:inherit;}
  .article-lien:hover h3{color:var(--or);}
  h1.t2{font-size:clamp(2.1rem,4.4vw,3.2rem);letter-spacing:-.005em;}
  .sec-head h1{margin-top:18px;}
  .fil{font-family:var(--sans);font-size:.64rem;letter-spacing:.16em;text-transform:uppercase;color:var(--sauge);margin-bottom:18px;}
  .fil a:hover{color:var(--or);}
  .form-note{font-size:.9rem;color:var(--sauge);margin-top:14px;}
  .hp{display:none;}
