/* Polices (Newsreader, Unbounded, Allura : SIL OFL 1.1), auto-hébergées : mêmes fichiers et déclarations que Google Fonts */
@font-face{font-family:'Newsreader';font-style:normal;font-weight:300;font-display:swap;src:url(../fonts/newsreader-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Newsreader';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/newsreader-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Newsreader';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/newsreader-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Newsreader';font-style:normal;font-weight:300;font-display:swap;src:url(../fonts/newsreader-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Newsreader';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/newsreader-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Newsreader';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/newsreader-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Newsreader';font-style:italic;font-weight:300;font-display:swap;src:url(../fonts/newsreader-italic-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Newsreader';font-style:italic;font-weight:400;font-display:swap;src:url(../fonts/newsreader-italic-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Newsreader';font-style:italic;font-weight:500;font-display:swap;src:url(../fonts/newsreader-italic-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Newsreader';font-style:italic;font-weight:300;font-display:swap;src:url(../fonts/newsreader-italic-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Newsreader';font-style:italic;font-weight:400;font-display:swap;src:url(../fonts/newsreader-italic-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Newsreader';font-style:italic;font-weight:500;font-display:swap;src:url(../fonts/newsreader-italic-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Unbounded';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/unbounded-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Unbounded';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/unbounded-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Unbounded';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/unbounded-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Unbounded';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/unbounded-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Allura';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/allura-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Allura';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/allura-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{
  --h-section:clamp(40px,4.6vw,68px); --h-page:clamp(44px,5.6vw,84px); --pad:clamp(72px,9vw,140px);
  --blanc:#ECEAE5; --pierre:#D8D3C9; --cuivre:#8F6155; --profond:#3B2620; --noir:#161514; --gris:#4E4843;
  --bg:var(--blanc); --surface:var(--pierre); --text:var(--noir); --muted:var(--gris); --line:#C5BEB2;
  --btn-bg:#7E5246; --btn-text:#F4F2EE;
  --serif:'Newsreader',Georgia,'Times New Roman',serif;
  --sans:'Helvetica Neue',Helvetica,Arial,sans-serif;
  --wide:'Unbounded','Helvetica Neue',Arial,sans-serif;
  --script:'Allura','Snell Roundhand',cursive;
  box-sizing:border-box;
  padding-top:env(safe-area-inset-top,0px);
  padding-bottom:env(safe-area-inset-bottom,0px);
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){--bg:#1B1918;--surface:#2A2522;--text:#ECEAE5;--muted:#B9B1A7;--line:#3A3532;--btn-bg:#B08273;--btn-text:#161514}
}
:root[data-theme="dark"]{--bg:#1B1918;--surface:#2A2522;--text:#ECEAE5;--muted:#B9B1A7;--line:#3A3532;--btn-bg:#B08273;--btn-text:#161514}
*,*::before,*::after{box-sizing:inherit}
html{scroll-padding-top:env(safe-area-inset-top,0px);-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);font-size:17px;line-height:1.6}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
:focus-visible{outline:2px solid #B08273;outline-offset:3px}
.wrap{max-width:1360px;margin:0 auto;padding:0 clamp(20px,3vw,40px)}
.measure{max-width:38em}
b,strong{font-weight:600}

/* ---------- En-tête ---------- */
.top{position:sticky;top:0;z-index:30;background:var(--surface);color:var(--text);padding-top:env(safe-area-inset-top,0px)}
body.home .top{position:absolute;left:0;right:0;background:transparent;color:#F4F2EE}
.top .bar{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;min-height:84px;padding:0 clamp(20px,3vw,40px)}
.mono{display:inline-flex;color:inherit}
.logo{display:inline-flex;flex-direction:column;align-items:center;gap:3px;text-decoration:none;color:inherit;white-space:nowrap;line-height:1}
.logo .w{font-family:var(--wide);font-weight:400;font-size:21px;letter-spacing:.06em}
.logo .s{font-family:var(--serif);font-style:italic;font-weight:300;font-size:17px}
@media (max-width:520px){.logo .w{font-size:15px}.logo .s{font-size:13px}}
.mono svg{width:58px;height:58px}
.links{display:flex;justify-content:center;gap:28px;list-style:none;margin:0;padding:0;align-items:center}
.links a,.links button,.right a{font-family:var(--sans);font-size:15px;letter-spacing:.02em;text-transform:uppercase;text-decoration:none;color:inherit;background:none;border:0;padding:6px 0;cursor:pointer;border-bottom:1px solid transparent}
.links a[aria-current="page"]{border-bottom-color:currentColor}
.links a:hover,.right a.gift:hover{border-bottom-color:currentColor}
.drop{position:relative}
.drop button::after{content:"";display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translate(-2px,-2px);margin-left:12px}
.drop ul{display:none;position:absolute;top:100%;left:-16px;list-style:none;margin:8px 0 0;padding:10px 16px;background:var(--bg);color:var(--text);min-width:220px;box-shadow:0 8px 24px rgba(0,0,0,.12)}
.drop.open ul{display:block}
.drop ul a{display:block;padding:8px 0}
.right{display:flex;align-items:center;gap:26px}
.pill{font-family:var(--sans);font-size:16px;text-transform:uppercase;letter-spacing:.03em;text-decoration:none;padding:17px 38px;border-radius:999px;background:var(--btn-bg);color:var(--btn-text);white-space:nowrap}
body.home .top .pill{background:#845749;color:#F7F3EF}
.top .pill{background:#845749;color:#F7F3EF;box-shadow:0 2px 14px rgba(30,18,14,.18)}
.top .pill:hover{background:#8F6155}
.burger{display:none;background:none;border:1px solid currentColor;color:inherit;border-radius:999px;padding:9px 16px;font-family:var(--sans);font-size:14px;text-transform:uppercase;cursor:pointer}
.mobile{display:none}
@media (max-width:1080px){
  .links,.right a.gift{display:none}
  .burger{display:inline-block}
  .top .bar{grid-template-columns:auto 1fr auto auto}
  .right{grid-column:3;justify-self:end}
  .mobile.open{display:block;background:var(--bg);color:var(--text);padding:12px clamp(20px,3vw,40px) 28px;border-top:1px solid var(--line)}
  .mobile ul{list-style:none;margin:0;padding:0}
  .mobile a{display:block;padding:10px 0;text-decoration:none;text-transform:uppercase;font-size:16px}
}
@media (max-width:520px){.top .pill{padding:11px 18px;font-size:13px}.mono svg{width:46px;height:46px}}

/* ---------- Pages ---------- */
.page{display:none}.page.active{display:block}

/* Sections photo + texte : une seule mise en page, en alternance */
.split2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(40px,7vw,120px);align-items:center}
.split2 .col-img{margin:0}
.split2 .col-img img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block}
.split2 .col-text>*+*{margin-top:0}
.split2 .col-text p{max-width:32em;margin:0 0 1.1em}
.split2 .col-text h1,.split2 .col-text h2{margin-bottom:clamp(24px,3vw,40px)}
@media (max-width:860px){.split2{grid-template-columns:1fr}.split2 .col-img{order:-1}}

/* 1. Héros plein écran */
.hero{position:relative;min-height:100vh;min-height:100svh;display:grid;place-items:center;color:#F4F2EE;overflow:visible;z-index:2}
.hero-media{position:absolute;inset:0;overflow:hidden}
.hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 45%}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(rgba(30,18,14,.38),rgba(30,18,14,.28) 40%,rgba(30,18,14,.45))}
.hero p{position:relative;z-index:1;font-family:var(--serif);font-weight:300;font-size:clamp(30px,4.4vw,62px);line-height:1.1;text-align:center;margin:0;padding:0 24px}
.hero p i{font-style:italic}
.hero p .sub{display:inline-block;margin-top:18px;font-size:.68em;font-weight:300;letter-spacing:.01em}
.hero .hero-btn{margin-top:clamp(28px,7vh,80px)}
.hero-inner{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:clamp(24px,3vw,36px);align-self:center;padding:14vh 24px 0}
.hero-btn{font-family:var(--sans);font-size:13px;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;color:#F7F3EF;border:0;border-radius:999px;padding:12px 26px;background:#845749;box-shadow:0 2px 14px rgba(30,18,14,.18)}
.hero-btn:hover{background:#8F6155}
.hero .mono{position:absolute;z-index:3;bottom:-46px;left:50%;margin-left:-46px;width:92px;height:92px;border-radius:50%;background:var(--profond);display:flex;align-items:center;justify-content:center;color:#F4F2EE;box-shadow:0 6px 24px rgba(20,12,9,.35);animation:lkfloat 5s ease-in-out infinite}
@keyframes lkfloat{0%,100%{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-8px) rotate(6deg)}}
@media (prefers-reduced-motion:reduce){.hero .mono{animation:none}}
.hero .mono svg{width:68px;height:68px}

/* 2. Bienvenue (fond profond) */
.welcome{background:var(--profond);color:#F4F2EE;padding:var(--pad) 0}
.welcome .grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(40px,7vw,120px);align-items:start}
.welcome h1{font-family:var(--serif);font-weight:300;font-size:clamp(34px,3.8vw,56px);line-height:1;letter-spacing:-.01em;margin:0 0 clamp(40px,6vw,80px)}
.welcome h1 i{font-style:italic}
.welcome .txt p{margin:0 0 1.2em;max-width:34em}
.welcome .imgs{display:grid;grid-template-columns:minmax(0,1fr);max-width:none;gap:clamp(16px,3vw,40px);align-items:start;margin:32px 0 0}
.welcome .imgs img{width:100%;object-fit:cover}
.welcome .imgs img:first-child{aspect-ratio:3/4}
.welcome .imgs img:last-child{aspect-ratio:3/4}
.welcome .side .imgs{margin:0 0 32px}
.welcome .side p{max-width:34em;margin:0 0 1.2em}
.welcome .sig{font-family:var(--serif);font-style:italic;font-weight:300;font-size:clamp(22px,2vw,28px);line-height:1.3;margin-top:32px!important}
@media (max-width:860px){.welcome .grid{grid-template-columns:1fr}}

/* 2b. Citation (fond Cuivre Poli) */
.quote{background:var(--cuivre);color:#F7F3EF;text-align:center;padding:clamp(40px,5vw,72px) 0}
.quote .mono svg{width:52px;height:52px;margin:0 auto 20px;display:block}
.quote blockquote{font-family:var(--serif);font-style:italic;font-weight:300;font-size:clamp(24px,2.6vw,38px);line-height:1.2;margin:0 auto;max-width:24em}
.quote .by{margin:18px 0 0;font-size:13px;letter-spacing:.06em;text-transform:uppercase}

/* 3. Fondatrice (fond pierre) */
.founder{background:var(--surface);color:var(--text);padding:var(--pad) 0}
.founder blockquote{font-family:var(--serif);font-weight:300;font-size:clamp(26px,3vw,44px);line-height:1.15;margin:0 0 clamp(56px,7vw,110px) auto;max-width:28em;text-align:right}
.founder .grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.85fr);gap:clamp(40px,6vw,96px);align-items:start}
.founder .role{font-size:14px;letter-spacing:.02em;text-transform:uppercase;margin:0 0 18px}
.founder .split2 .col-text h2{margin-bottom:12px}
.founder .role-under{margin:0 0 clamp(24px,3vw,40px)!important}
.founder h2{font-family:var(--serif);font-weight:300;font-size:var(--h-section);line-height:1;margin:0}
.founder .letter p{margin:0 0 1.1em;max-width:30em;font-size:17px;line-height:1.6}
.founder .letter{align-self:center;padding-top:clamp(40px,6vw,96px)}
@media (max-width:860px){.founder .letter{padding-top:0}}
.founder .who{margin-bottom:clamp(24px,3vw,36px)}
.founder .grid{align-items:stretch}
.founder .grid>div:first-child{display:flex;flex-direction:column}
.founder .portrait{width:100%;flex:1 1 auto;min-height:560px;height:0;object-fit:cover;object-position:50% 30%;margin:0}
@media (max-width:860px){.founder .portrait{height:auto;flex:none;aspect-ratio:4/5;min-height:0}}
.founder .letter p:first-child{margin-top:0}
.founder .sign{font-family:var(--script);white-space:nowrap;font-size:clamp(34px,3.4vw,50px);line-height:1;color:var(--cuivre);margin-top:24px}
@media (max-width:860px){.founder .grid{grid-template-columns:1fr}.founder blockquote{text-align:left}}

/* 4. Diptyque photo */
.diptych{background:var(--surface);padding:0 clamp(12px,1.2vw,20px) clamp(12px,1.2vw,20px)}
.diptych .grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(8px,1vw,16px)}
.diptych img{width:100%;aspect-ratio:1/1;object-fit:cover}
@media (max-width:640px){.diptych .grid{grid-template-columns:1fr}}
.diptych .grid.solo{grid-template-columns:1fr;justify-items:center;padding-bottom:clamp(24px,4vw,56px)}
.diptych .solo img{width:min(100%,480px);aspect-ratio:4/5;object-position:50% 30%}

/* 5. Valeurs sur photo */
.values{position:relative;color:#F4F2EE;padding:clamp(48px,6vw,88px) 0;overflow:hidden;text-align:center}
.values>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:30% 20%;filter:blur(3px) saturate(.8);transform:scale(1.05)}
.values::before{content:"";position:absolute;inset:0;background:rgba(59,38,32,.84)}
.values .wrap{position:relative;z-index:1}
.values h2{font-family:var(--serif);font-weight:300;font-size:var(--h-section);margin:0 0 clamp(28px,3.5vw,48px)}
.values .cols{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}
.values .col{padding:8px clamp(18px,2.4vw,36px)}
.values .col+.col{border-left:1px solid rgba(244,242,238,.45)}
.values h3{font-family:var(--serif);font-style:italic;font-weight:300;font-size:clamp(26px,2.4vw,34px);line-height:1.1;margin:0 0 16px}
.values p{margin:0 auto;font-size:16px;line-height:1.6;max-width:17em;color:#EFE6E1}
@media (max-width:1000px){.values .cols{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:48px}.values .col:nth-child(3){border-left:0}}
@media (max-width:560px){.values .cols{grid-template-columns:1fr}.values .col+.col{border-left:0;border-top:1px solid rgba(244,242,238,.35);padding-top:32px}}

/* 5b. Programmes et réservation */
.offer-home{background:var(--bg);color:var(--text);padding:var(--pad) 0}
.offer-home .top-line{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(40px,7vw,120px);align-items:end;margin-bottom:clamp(36px,5vw,64px)}
.offer-home h2{font-family:var(--serif);font-weight:300;font-size:var(--h-section);line-height:1}
.offer-home .rows{border-top:1px solid var(--line)}
.offer-home .row{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.4fr) auto;gap:24px;align-items:baseline;padding:26px 0;border-bottom:1px solid var(--line);text-decoration:none}
.offer-home .row .t{font-family:var(--serif);font-weight:300;font-size:clamp(28px,2.8vw,40px)}
.offer-home .row .d{color:var(--muted)}
.offer-home .row .p{white-space:nowrap;font-size:15px}
.offer-home a.row:hover .t{font-style:italic}
.cta{margin-top:clamp(56px,7vw,96px);background:var(--surface);padding:clamp(40px,5vw,72px);display:grid;grid-template-columns:minmax(0,1.3fr) auto;gap:32px;align-items:center}
.cta h3{font-family:var(--serif);font-weight:300;font-size:clamp(30px,3vw,44px);margin:0 0 10px}
.cta p{margin:0;max-width:36em}
.cta .actions{display:flex;gap:12px;flex-wrap:wrap}
@media (max-width:860px){.offer-home .top-line,.cta{grid-template-columns:1fr}.offer-home .row{grid-template-columns:1fr;gap:4px}}

/* Fonds foncés : valeurs et programmes */
.founder{background:#332B27;color:#F4F2EE}
.founder .role{color:#CFC4BD}
.founder .sign{color:#C89B8B}
.offer-home{background:#332B27;color:#F4F2EE}
.offer-home .rows,.offer-home .row{border-color:rgba(244,242,238,.22)}
.offer-home .row .d,.offer-home .top-line p{color:#CFC4BD}
.offer-home .cta{background:#332B27;color:#F4F2EE;border:1px solid rgba(244,242,238,.22)}
.offer-home .cta .btn.ghost{color:#F4F2EE;border-color:#F4F2EE}
.offer-home .cta .btn:not(.ghost){background:#845749;border-color:#845749;color:#F7F3EF}

/* Approche, soins, triptyque (inspirés de Maison Ora) */
.eyebrow{font-size:14px;letter-spacing:.06em;text-transform:uppercase;margin:0 0 28px}
.btn.light{background:#F7F3EF;color:var(--profond);border-color:#F7F3EF}
.btn.outline-light{background:transparent;color:#F7F3EF;border-color:#F7F3EF}
.ap-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:clamp(40px,5vw,64px)}
.approach{background:linear-gradient(180deg,#8F6155,#6E4537);color:#F7F3EF;text-align:center;padding:var(--pad) 0}
.approach .statement{font-family:var(--serif);font-weight:300;font-size:clamp(30px,4.2vw,62px);line-height:1.12;max-width:20em;margin:0 auto}
.approach .statement b{font-weight:500}
.approach .expertises{font-family:var(--serif);font-weight:300;font-size:clamp(26px,3.2vw,46px);line-height:1.35;max-width:22em;margin:0 auto}
.approach .expertises .i{font-style:italic;color:#F7F3EF}
.approach .expertises .d{color:rgba(247,243,239,.55)}
.soins{background:#332B27;color:#F4F2EE;padding:clamp(48px,6vw,88px) 0 clamp(32px,4vw,56px);text-align:center}
.soins h2{font-family:var(--serif);font-weight:300;font-size:var(--h-section);margin:0 0 clamp(28px,3.5vw,48px)}
.soins .cards{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr) minmax(0,1fr);gap:clamp(16px,2vw,32px);align-items:start}
.soins .card{position:relative;display:block;color:#F7F3EF;text-decoration:none;overflow:hidden}
.soins .card.raised{margin-top:clamp(0px,3vw,40px)}
.soins .card img{width:100%;aspect-ratio:3/4;object-fit:cover;display:block;transition:transform .6s}
.soins .card:hover img{transform:scale(1.03)}
.soins .card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(30,18,14,0) 35%,rgba(30,18,14,.78))}
.soins .card-text{position:absolute;left:0;right:0;bottom:0;z-index:1;padding:clamp(20px,2.4vw,36px);text-align:left}
.soins .card-text h3{font-family:var(--serif);font-style:italic;font-weight:400;font-size:clamp(30px,2.9vw,44px);line-height:1.05;letter-spacing:-.005em;margin:0 0 10px;text-shadow:0 2px 18px rgba(20,12,9,.35)}
.soins .card-text p{margin:0;font-size:15px;line-height:1.55}
@media (max-width:900px){.soins .cards{grid-template-columns:1fr}.soins .card.raised{margin-top:0}}
.soins .card-link{position:absolute;inset:0;z-index:1}
.soins .card-text{z-index:2;pointer-events:none}
.soins .card-text .card-btn{pointer-events:auto;margin-top:16px;background:#845749;color:#F7F3EF;border-color:#845749;box-shadow:0 2px 14px rgba(30,18,14,.25)}
.soins .card-text .card-btn:hover{background:#8F6155;border-color:#8F6155}
.soins .card-text .card-btn{position:relative;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease,background .3s}
.soins .card-text .card-btn:hover{transform:translateY(-3px);box-shadow:0 10px 26px rgba(30,18,14,.4)}
.soins .card-text .card-btn::after{content:"";position:absolute;top:0;left:-60%;width:45%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.38),transparent);transform:skewX(-20deg);animation:btnshine 4s ease-in-out infinite;pointer-events:none}
.soins .two-cards .card:nth-child(2) .card-btn::after{animation-delay:2s}
@keyframes btnshine{0%{left:-60%}45%,100%{left:140%}}
@media (prefers-reduced-motion:reduce){.soins .card-text .card-btn::after{animation:none;display:none}}
.soins .two-cards .card-text{display:flex;flex-direction:column;align-items:center}
.soins .two-cards{grid-template-columns:repeat(2,minmax(0,1fr));max-width:1100px;margin:0 auto}
.soins .two-cards .card img{aspect-ratio:4/5}
.soins .two-cards .card-text{text-align:center}
.soins .two-cards .card-text h3{margin:0}
.seasons{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(14px,1.8vw,28px);align-items:start;max-width:1360px;margin:clamp(28px,3.5vw,48px) auto 0;padding:0 clamp(20px,3vw,40px) clamp(16px,2vw,28px)}
.season{position:relative;display:flex;flex-direction:column;gap:14px;color:#F7F3EF;text-decoration:none}
.season .ph{position:relative;display:block;overflow:hidden}
.season img{width:100%;aspect-ratio:3/4;object-fit:cover;display:block;filter:saturate(.85);transition:transform .6s}
.season:hover img{transform:scale(1.04)}
.season > span:last-child{font-family:var(--serif);font-style:italic;font-weight:400;font-size:clamp(21px,1.9vw,26px);letter-spacing:0;text-transform:none;line-height:1.2;text-align:center;color:#F7F3EF;padding-top:12px;position:relative}
.season > span:last-child::before{content:"";position:absolute;top:0;left:50%;width:28px;height:1px;background:#C99B8B;transform:translateX(-50%);transition:width .4s ease}
.season:hover > span:last-child::before{width:70%}
@media (max-width:1000px){.seasons{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:600px){.seasons{grid-template-columns:repeat(2,minmax(0,1fr))}.soins .two-cards{grid-template-columns:1fr}}

.triptyque{background:#7A4A3B;color:#F7F3EF;padding:var(--pad) 0}
.tri-row{display:grid;grid-template-columns:48px minmax(0,1.4fr) minmax(0,1fr) minmax(0,.9fr);gap:clamp(16px,3vw,48px);align-items:center;padding:clamp(24px,3vw,40px) 0;border-bottom:1px solid rgba(247,243,239,.45)}
.tri-row:last-of-type{border-bottom:0}
.tri-row .num{font-family:var(--serif);font-style:italic;font-size:20px}
.tri-row .big{font-family:var(--serif);font-style:italic;font-weight:300;text-transform:uppercase;font-size:clamp(40px,5.2vw,80px);line-height:.95;margin:0;letter-spacing:-.01em;overflow-wrap:anywhere}
.tri-row .big b{font-weight:500}
.tri-row p{margin:0;font-size:16px;line-height:1.6;max-width:30em}
.tri-row img{width:100%;aspect-ratio:2/1;object-fit:cover}
@media (max-width:900px){.tri-row{grid-template-columns:40px minmax(0,1fr)}.tri-row p,.tri-row img{grid-column:2}}

.book-split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:0!important}
.book-split .bs{position:relative;display:grid;place-items:center;min-height:clamp(360px,70vh,720px);overflow:hidden;text-decoration:none}
.book-split img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s}
.book-split .bs::after{content:"";position:absolute;inset:0;background:rgba(30,18,14,.25)}
.book-split .bs:hover img{transform:scale(1.04)}
.book-split .btn{position:relative;z-index:1;background:rgba(30,18,14,.15)}
@media (max-width:760px){.book-split{grid-template-columns:1fr}.book-split .bs{min-height:60vh}}

/* Révélation des phrases au scroll */
.approach .rv{opacity:.18;transition:opacity .45s ease}
.approach .rv.on{opacity:1}
.approach .expertises .d.rv.on{opacity:.72}
.approach .expertises{color:rgba(247,243,239,.35)}
.approach .expertises .d{color:#F7F3EF}
@media (prefers-reduced-motion:reduce){.approach .rv{opacity:1!important;transition:none}}

/* Récit au scroll : apparitions progressives */
.js-anim .reveal{opacity:0;transform:translateY(44px);transition:opacity 1s ease,transform 1.1s cubic-bezier(.2,.7,.2,1)}
.js-anim .reveal.in{opacity:1;transform:none}
.js-anim .reveal-img{clip-path:inset(14% 8% 14% 8%);opacity:.2;transition:clip-path 1.4s cubic-bezier(.2,.7,.2,1),opacity 1s ease}
.js-anim .reveal-img img{transform:scale(1.12);transition:transform 1.8s cubic-bezier(.2,.7,.2,1)}
.js-anim .reveal-img.in{clip-path:inset(0 0 0 0);opacity:1}
.js-anim .reveal-img.in img{transform:scale(1)}
.hero-media img{will-change:transform}
@media (prefers-reduced-motion:reduce){.js-anim .reveal,.js-anim .reveal-img{opacity:1;transform:none;clip-path:none;transition:none}.js-anim .reveal-img img{transform:none}}

.welcome h1 .brand{font-family:var(--wide);font-weight:400;font-size:.68em;letter-spacing:.06em;vertical-align:.08em;white-space:nowrap}
.welcome .rv{opacity:.18;transition:opacity .45s ease}
.welcome .rv.on{opacity:1}
@media (prefers-reduced-motion:reduce){.welcome .rv{opacity:1!important;transition:none}}

/* Entrée animée de la page d'accueil */
.hero-media{animation:heroZoom 2.6s cubic-bezier(.2,.7,.2,1) both}
@keyframes heroZoom{from{transform:scale(1.14);filter:brightness(.7)}to{transform:scale(1);filter:none}}
.hero .hw{display:inline-block;opacity:0;transform:translateY(26px);animation:heroWord 1.1s cubic-bezier(.2,.7,.2,1) forwards}
.hero p .hw:nth-of-type(1){animation-delay:.5s}
.hero p .hw:nth-of-type(2){animation-delay:.85s}
.hero p .hw:nth-of-type(3){animation-delay:1.2s}
.hero p .sub.hw{animation-delay:1.65s}
.hero .hero-btn.hw{animation-delay:2s}
@keyframes heroWord{to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.hero-media,.hero .hw{animation:none;opacity:1;transform:none}}

.split-title .st-a{display:block;font-family:var(--serif);font-weight:300;font-size:clamp(24px,2.6vw,38px);letter-spacing:0;color:#E9DED8;margin-bottom:clamp(4px,1vw,10px)}
.split-title .st-b{display:block;font-family:var(--serif);font-style:italic;font-weight:300;font-size:clamp(44px,5.8vw,88px);line-height:1.02;color:#F7F3EF}
.split-title .st-b .w{display:inline-block}
.js-anim .split-title .st-a{opacity:0;transform:translateY(.4em);transition:opacity 1s ease,transform 1.1s cubic-bezier(.2,.7,.2,1)}
.js-anim .split-title.in .st-a{opacity:1;transform:none}
.js-anim .split-title .st-b .w{opacity:0;transform:translateY(.45em);transition:opacity .9s ease,transform 1s cubic-bezier(.2,.7,.2,1)}
.js-anim .split-title.in .st-b .w{opacity:1;transform:none}
.js-anim .split-title.in .st-b .w:nth-child(1){transition-delay:.35s}
.js-anim .split-title.in .st-b .w:nth-child(2){transition-delay:.5s}
.js-anim .split-title.in .st-b .w:nth-child(3){transition-delay:.65s}
.js-anim .split-title.in .st-b .w:nth-child(4){transition-delay:.75s}
.js-anim .split-title.in .st-b .w:nth-child(5){transition-delay:.9s}

.quote .rv{opacity:.2;transition:opacity .45s ease}
.quote .rv.on{opacity:1}
@media (prefers-reduced-motion:reduce){.quote .rv{opacity:1!important;transition:none}}

/* Carte des soins */
.carte{background:var(--blanc);color:var(--profond);padding:clamp(120px,14vw,170px) 0 clamp(72px,9vw,120px);text-align:center}
.carte h1{font-family:var(--serif);font-weight:300;font-size:var(--h-page);margin:0 0 clamp(28px,3.5vw,44px)}
.carte .eyebrow{color:#845749}
.tabs{display:inline-flex;flex-wrap:wrap;justify-content:center;border:1px solid var(--profond);border-radius:999px;padding:4px;gap:4px;margin-bottom:clamp(32px,4vw,52px)}
.tabs button{font-family:var(--serif);font-size:clamp(17px,1.5vw,21px);background:transparent;color:var(--profond);border:0;border-radius:999px;padding:10px 22px;cursor:pointer;transition:background .3s,color .3s}
.tabs button[aria-selected="true"]{background:var(--profond);color:#F7F3EF}
.carte-intro{max-width:44em;margin:0 auto 18px;font-size:17px;line-height:1.65}
.carte-points{list-style:none;margin:0 auto clamp(36px,4.5vw,56px);padding:0;font-weight:700;color:#5A3328;line-height:1.9}
.carte-points li::before{content:"· "}
.sc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--profond);text-align:left}
.sc-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:1000px){.sc-grid,.sc-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.sc-grid,.sc-grid.four{grid-template-columns:1fr}}
.sc{display:flex;flex-direction:column;border-right:1px solid var(--profond);border-bottom:1px solid var(--profond);margin:0 -1px -1px 0;background:var(--blanc)}
.sc-img{padding:14px 14px 0;overflow:hidden}
.sc-img img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;transition:transform .8s}
.sc:hover .sc-img img{transform:scale(1.04)}
.sc-body{padding:22px 24px 8px;flex:1;border-top:1px solid var(--profond);margin-top:14px}
.sc h3{font-family:var(--serif);font-weight:300;font-size:clamp(28px,2.4vw,36px);line-height:1.05;margin:0 0 6px}
.sc-price{font-family:var(--serif);font-weight:600;font-size:clamp(24px,2vw,30px);margin:0 0 14px;color:var(--profond)}
.sc-was{font-weight:300;font-size:.6em;text-decoration:line-through;opacity:.55;margin-left:10px}
.sc-desc{color:#6B5550;font-size:15.5px;line-height:1.55;margin:0 0 16px}
.sc-dur{font-size:15px;margin:0 0 10px;line-height:1.5}
.sc-foot{border-top:1px solid var(--profond);padding:16px;text-align:center}
.sc-btn{background:#845749;border-color:#845749;color:#F7F3EF}
.sc-btn:hover{background:var(--profond);border-color:var(--profond)}
.carte-gift{margin:clamp(32px,4vw,48px) 0 0;font-family:var(--serif);font-style:italic;font-size:clamp(20px,1.8vw,26px)}
.carte-gift a{color:#845749}

.carte-badges{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:900px;margin:0 auto clamp(32px,4vw,48px);border-top:1px solid var(--profond);border-bottom:1px solid var(--profond)}
.carte-badges p{margin:0;padding:16px 12px;font-size:14.5px;line-height:1.45}
.carte-badges p+p{border-left:1px solid var(--profond)}
.carte-badges b{font-family:var(--serif);font-weight:600;font-size:19px;color:#845749}
.carte-h2{font-family:var(--serif);font-weight:300;font-size:clamp(30px,3.2vw,46px);margin:clamp(40px,5vw,64px) 0 clamp(18px,2.4vw,28px)}
.tab-panel>.carte-h2:first-child{margin-top:0}
.sc-grid.two{grid-template-columns:repeat(2,minmax(0,1fr));max-width:900px;margin:0 auto}
.sc-tag{font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;color:#845749;margin:0 0 8px}
.sc-pay{font-size:13.5px;color:#845749;margin:-8px 0 14px}
.sc-list{list-style:none;padding:0;margin:0 0 16px;font-size:15px;line-height:1.6}
.sc-list li{padding-left:16px;position:relative}
.sc-list li::before{content:"";position:absolute;left:0;top:.7em;width:7px;height:1px;background:#845749}
.sc-custom{background:var(--pierre);justify-content:space-between}
.sc-custom .sc-body{border-top:0;margin-top:0;display:flex;flex-direction:column;justify-content:center;padding:40px 28px}
.sig-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);border:1px solid var(--profond);text-align:left;margin-bottom:clamp(28px,3.5vw,44px);background:#F3EEE9}
.sig-img{overflow:hidden}
.sig-img img{width:100%;height:100%;min-height:420px;object-fit:cover;display:block}
.sig-body{padding:clamp(28px,4vw,56px);display:flex;flex-direction:column;align-items:flex-start}
.sig-body h3{font-family:var(--serif);font-weight:300;font-size:clamp(34px,3.4vw,52px);line-height:1.05;margin:0 0 10px}
.sig-body h3 .brand{font-family:var(--wide);font-size:.62em;letter-spacing:.06em;vertical-align:.1em}
.sig-body .sc-btn{margin-top:8px}
.carte-pay{margin:clamp(32px,4vw,48px) 0 0;font-size:16px}
@media (max-width:860px){.carte-badges{grid-template-columns:1fr}.carte-badges p+p{border-left:0;border-top:1px solid var(--profond)}.sig-card{grid-template-columns:1fr}.sig-img img{min-height:260px}.sc-grid.two{grid-template-columns:1fr}}

/* Carte des soins : version compacte */
.carte{padding:clamp(92px,8vw,104px) 0 clamp(40px,5vw,64px)}
.carte h1,.head-compact h1{font-size:clamp(36px,4vw,56px)}
.carte h1{margin:0 0 10px}
.carte-intro{margin:0 auto 16px;font-size:16px}
.carte-intro.small{font-size:15px;margin-bottom:18px}
.carte-badges{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 28px;border:0;max-width:none;margin:0 auto 20px;font-size:14px}
.carte-badges p{padding:0;border:0!important}
.carte-badges b{font-size:16px}
.tabs{margin-bottom:clamp(20px,2.5vw,32px)}
.carte-h2{font-size:clamp(24px,2.4vw,32px);margin:clamp(24px,3vw,36px) 0 14px;text-align:left}
.mc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:1px solid var(--profond);border-left:1px solid var(--profond);text-align:left}
.mc-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.mc{display:flex;flex-direction:column;gap:6px;padding:18px 20px 14px;border-right:1px solid var(--profond);border-bottom:1px solid var(--profond);background:var(--blanc);transition:background .25s}
.mc:hover{background:#F3EEE9}
.mc-top{display:flex;justify-content:space-between;align-items:baseline;gap:14px}
.mc h3{font-family:var(--serif);font-weight:400;font-size:clamp(20px,1.7vw,24px);line-height:1.15;margin:0}
.mc-price{font-family:var(--serif);font-weight:600;font-size:clamp(20px,1.7vw,24px);margin:0;white-space:nowrap;color:var(--profond)}
.mc-price s{font-weight:300;font-size:.62em;opacity:.55;margin-left:4px}
.mc-desc{margin:0;color:#6B5550;font-size:14.5px;line-height:1.5}
.mc .sc-list{margin:2px 0 0;font-size:14px;line-height:1.55}
.mc .sc-pay{margin:-2px 0 0;font-size:13px}
.mc .sc-tag{margin:0;font-size:11.5px}
.mc-meta{margin-top:auto;padding-top:8px;display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:13.5px;color:#6B5550}
.mc-link{color:#845749;font-weight:700;text-decoration:none;text-transform:uppercase;letter-spacing:.05em;font-size:12.5px;white-space:nowrap}
.mc-link:hover{text-decoration:underline}
.mc-custom{background:var(--pierre)}
.sig-card{grid-template-columns:minmax(0,.55fr) minmax(0,1.45fr);margin-bottom:18px;background:#F3EEE9}
.sig-img img{min-height:0;height:100%;max-height:280px}
.sig-body{padding:22px 26px;gap:6px}
.sig-body .mc-top{width:100%}
.sig-body h3{font-size:clamp(26px,2.4vw,34px)}
.sig-body .sc-tag{margin:0}
.sig-body .mc-desc{font-size:15px}
.sig-list{columns:2;column-gap:28px;margin:4px 0 0}
.sig-body .mc-meta{width:100%}
.carte-gift{margin:22px 0 0;font-size:clamp(18px,1.5vw,22px)}
@media (max-width:1000px){.mc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.mc-grid,.mc-grid.two{grid-template-columns:1fr}.sig-card{grid-template-columns:1fr}.sig-img img{max-height:200px;width:100%}.sig-list{columns:1}}

/* Pages Nos soins compactes */
.head-compact{padding:clamp(92px,8vw,104px) 0 8px}
.head-compact .lead{font-size:clamp(17px,1.4vw,20px)}
.head-compact h1{margin-bottom:10px}
.head-compact .lead{margin:0}
.sec-compact{padding:clamp(16px,2vw,24px) 0}
.soins-page .offer{padding:14px 0}
.links-row{margin:14px 0 0;font-size:14.5px;color:var(--muted)}
.links-row a{color:#845749}
.three-notes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.three-notes .note{padding:18px 20px}
.three-notes .note h3{font-size:20px;margin:0 0 8px}
.three-notes .note p{margin:0;font-size:14.5px;line-height:1.55}
.soins-page{padding-bottom:clamp(24px,3vw,40px)}
@media (max-width:860px){.three-notes{grid-template-columns:1fr}}

/* Carte des soins v3 : plus lisible, plus vendeuse */
.carte{padding:clamp(24px,3vw,36px) 0 clamp(36px,4vw,56px)!important}
.head-compact{padding:clamp(24px,3vw,36px) 0 8px!important}
.carte-badges b,.sc-pay,.mc-link,.pc-tag,.sc-tag{color:#6E3F31!important}
.carte-badges b{font-size:17px;font-weight:700}
.carte-badges{font-size:15px}
.mc-link{font-size:13.5px;font-weight:800}
.sc-pay{font-weight:700;font-size:13.5px}
.save{display:inline-block;font-family:var(--sans);font-size:12px;font-weight:800;letter-spacing:.04em;color:#F7F3EF;background:#845749;border-radius:999px;padding:3px 9px;vertical-align:middle;animation:savePulse 2.6s ease-in-out infinite}
.mc .save{align-self:flex-start;margin:-2px 0 2px}
@keyframes savePulse{0%,100%{transform:scale(1);box-shadow:0 0 0 0 rgba(132,87,73,.45)}50%{transform:scale(1.06);box-shadow:0 0 0 7px rgba(132,87,73,0)}}
.mc{transition:transform .3s ease,box-shadow .3s ease,background .25s}
.mc:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(59,38,32,.12);position:relative;z-index:1}
/* Programmes et cures en cartes à en-tête */
.pc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;text-align:left}
.pc-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}
.pc{display:flex;flex-direction:column;border:1px solid var(--profond);background:#FBF8F5;transition:transform .35s ease,box-shadow .35s ease}
.pc:hover{transform:translateY(-5px);box-shadow:0 16px 34px rgba(59,38,32,.16)}
.pc-head{background:var(--profond);color:#F7F3EF;padding:18px 20px 16px}
.pc-head .pc-tag{color:#E7C9B9!important;font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;margin:0 0 6px}
.pc-head h3{font-family:var(--serif);font-weight:400;font-size:clamp(28px,2.5vw,36px);line-height:1.05;margin:0 0 8px;color:#fff}
.pc-price{font-family:var(--serif);font-weight:600;font-size:24px;margin:0;color:#fff}
.pc-price s{font-weight:300;font-size:.6em;opacity:.6}
.pc-head .save{background:#F7F3EF;color:var(--profond)}
.pc-pay{margin:6px 0 0;font-size:13px;color:#EBDDD5;font-weight:600}
.pc.light .pc-head{background:#E6DCD4;color:var(--profond)}
.pc.light .pc-head h3,.pc.light .pc-price{color:var(--profond)}
.pc.light .pc-head .pc-tag{color:#6E3F31!important}
.pc.light .pc-pay{color:#6E3F31}
.pc.light .pc-head .save{background:#845749;color:#F7F3EF}
.pc-body{padding:16px 20px 18px;display:flex;flex-direction:column;gap:10px;flex:1}
.pc-body .sc-list{margin:0;font-size:14.5px}
.pc-foot{margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:10px;padding-top:6px}
.pc-dur{font-size:13.5px;color:#6B5550}
.pc-btn{font-size:12px;padding:10px 16px;background:#845749;border-color:#845749;color:#F7F3EF;white-space:nowrap}
.pc-btn:hover{background:var(--profond);border-color:var(--profond)}
.pc-custom .pc-head{background:var(--pierre)}
/* Programme signature mis en avant */
.sig-hero{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);text-align:left;background:var(--profond);color:#F7F3EF;margin:6px 0 24px;position:relative;overflow:hidden;animation:sigGlow 4s ease-in-out infinite}
@keyframes sigGlow{0%,100%{box-shadow:0 0 0 1px rgba(201,155,139,.35),0 10px 30px rgba(59,38,32,.18)}50%{box-shadow:0 0 0 1px rgba(231,201,185,.9),0 14px 44px rgba(132,87,73,.45)}}
.sig-hero .sig-img img{width:100%;height:100%;max-height:360px;object-fit:cover;display:block}
.sig-hero .sig-body{padding:clamp(22px,3vw,36px);display:flex;flex-direction:column;gap:8px}
.sig-badge{display:inline-block;align-self:flex-start;margin:0;font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--profond);background:#E7C9B9;border-radius:999px;padding:6px 12px}
.sig-hero h2{font-family:var(--serif);font-weight:300;font-size:clamp(32px,3.4vw,50px);margin:2px 0 0;line-height:1.05}
.sig-hero h2 .brand{font-family:var(--wide);font-size:.62em;letter-spacing:.06em;vertical-align:.1em}
.sig-lead{margin:0;color:#EBDDD5;font-size:16px}
.sig-hero .sig-list{columns:2;column-gap:26px;margin:4px 0;color:#F7F3EF;font-size:14.5px}
.sig-hero .sig-list li::before{background:#E7C9B9}
.sig-buy{display:grid;grid-template-columns:auto 1fr;grid-template-areas:"price btn" "pay btn";align-items:center;gap:2px 20px;margin-top:6px;padding-top:12px;border-top:1px solid rgba(247,243,239,.2)}
.sig-price{grid-area:price;font-family:var(--serif);font-weight:600;font-size:clamp(28px,2.6vw,36px);margin:0}
.sig-price s{font-weight:300;font-size:.55em;opacity:.6}
.sig-hero .save{background:#E7C9B9;color:var(--profond)}
.sig-pay{grid-area:pay;margin:0;font-size:13.5px;color:#EBDDD5;font-weight:600}
.sig-btn{grid-area:btn;justify-self:end;background:#C99B8B;border-color:#C99B8B;color:var(--profond);font-weight:700}
.sig-btn:hover{background:#F7F3EF;border-color:#F7F3EF}
.shine{position:relative;overflow:hidden}
.shine::after{content:"";position:absolute;top:0;left:-60%;width:45%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.5),transparent);transform:skewX(-20deg);animation:btnshine 3.6s ease-in-out infinite;pointer-events:none}
/* Offrir un soin */
.gift-band{background:linear-gradient(120deg,#8F6155,#6E4537);color:#F7F3EF;padding:clamp(40px,5vw,64px) 0}
.gift-inner{display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap}
.gift-eyebrow{margin:0 0 6px;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:#F3DDD3}
.gift-band h2{font-family:var(--serif);font-weight:300;font-size:clamp(40px,4.6vw,64px);margin:0 0 10px;line-height:1}
.gift-band p{margin:0;max-width:34em;font-size:16.5px;color:#F7EDE8}
.gift-btn{background:#F7F3EF;border-color:#F7F3EF;color:var(--profond);font-weight:700;font-size:15px;padding:16px 30px}
.gift-btn:hover{background:var(--profond);border-color:var(--profond);color:#F7F3EF}
@media (max-width:1100px){.pc-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:1000px){.pc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){.sig-hero{grid-template-columns:1fr}.sig-hero .sig-img img{max-height:200px}.sig-hero .sig-list{columns:1}.sig-buy{grid-template-columns:1fr;grid-template-areas:"price" "pay" "btn"}.sig-btn{justify-self:start;margin-top:8px}}
@media (max-width:620px){.pc-grid,.pc-grid.four{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.save,.sig-hero,.shine::after{animation:none}}

/* Soins à l'unité : cartes modernes */
.sk-section{margin:0 0 clamp(28px,3.5vw,44px);text-align:left}
.sk-head{display:grid;grid-template-columns:auto 1fr;align-items:baseline;column-gap:16px;margin:8px 0 16px}
.sk-kicker{grid-row:1/3;margin:0;font-family:var(--wide);font-size:14px;color:#845749;letter-spacing:.08em}
.sk-head h2{font-family:var(--serif);font-weight:300;font-size:clamp(28px,2.8vw,38px);margin:0}
.sk-head p:last-child{margin:2px 0 0;color:#6B5550;font-size:15px}
.sk-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.sk-grid.two{grid-template-columns:repeat(2,minmax(0,1fr));max-width:820px}
.sk{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;padding:26px 22px 22px;background:#FBF8F5;border:1px solid rgba(59,38,32,.14);border-radius:18px;box-shadow:0 2px 10px rgba(59,38,32,.05);transition:transform .35s ease,box-shadow .35s ease,border-color .35s}
.sk:hover{transform:translateY(-5px);box-shadow:0 18px 36px rgba(59,38,32,.14);border-color:#C99B8B}
.sk-label{position:absolute;top:-11px;left:50%;transform:translateX(-50%);margin:0;background:#845749;color:#F7F3EF;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:4px 12px;border-radius:999px;white-space:nowrap}
.sk-dur{display:inline-flex;align-items:center;gap:6px;margin:0;padding:5px 12px;border-radius:999px;background:#EFE5DE;color:#5A3328;font-size:13.5px;font-weight:700}
.sk-dur svg{width:15px;height:15px}
.sk h3{font-family:var(--serif);font-weight:600;font-size:clamp(22px,1.9vw,26px);line-height:1.15;margin:4px 0 0;color:var(--profond)}
.sk-desc{margin:0;color:#6B5550;font-size:14.5px;line-height:1.5;max-width:26em}
.sk-buy{margin-top:auto;padding-top:10px;display:flex;flex-direction:column;align-items:center;gap:4px}
.sk-price{margin:0;font-family:var(--serif);font-weight:600;font-size:30px;color:var(--profond)}
.sk-price s{font-weight:300;font-size:.55em;opacity:.55}
.sk-pay{margin:0;font-size:13px;font-weight:700;color:#6E3F31}
.sk-btn{margin-top:8px;width:100%;justify-content:center;background:transparent;border:1px solid var(--profond);color:var(--profond);font-weight:700}
.sk-btn:hover{background:var(--profond);color:#F7F3EF}
@media (max-width:1000px){.sk-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:620px){.sk-grid,.sk-grid.two{grid-template-columns:1fr}}
/* Carte cadeau v2 */
.gift-band{background:radial-gradient(120% 140% at 85% 20%,#A9786A 0%,#8F6155 45%,#5E392E 100%)!important;padding:clamp(48px,6vw,80px) 0!important;overflow:hidden}
.gift-inner{display:grid!important;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:clamp(32px,5vw,72px)}
.gift-visual{position:relative;height:clamp(220px,24vw,300px);perspective:900px}
.gcard{position:absolute;inset:8% 6% 8% 10%;border-radius:20px;background:linear-gradient(140deg,#3B2620,#22150F);color:#F7F3EF;box-shadow:0 30px 60px rgba(20,12,9,.45);display:flex;flex-direction:column;justify-content:space-between;padding:clamp(18px,2vw,28px);transform:rotate(-6deg);animation:gcardFloat 6s ease-in-out infinite}
.gcard::after{content:"";position:absolute;inset:0;border-radius:20px;background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.14) 45%,transparent 60%);background-size:250% 100%;animation:gcardSheen 4.5s ease-in-out infinite}
.gcard-back{background:linear-gradient(140deg,#E7C9B9,#C99B8B);transform:rotate(5deg) translate(18px,10px);animation:none;box-shadow:0 18px 40px rgba(20,12,9,.3)}
.gcard-back::after{display:none}
.gcard-mono{width:46px;height:46px;color:#E7C9B9}
.gcard-brand{margin:0;font-family:var(--wide);font-size:clamp(20px,2.2vw,28px);letter-spacing:.08em}
.gcard-sub{margin:-4px 0 0;font-family:var(--serif);font-style:italic;font-size:15px;color:#E7C9B9}
.gcard-label{margin:0;font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:#E7C9B9}
@keyframes gcardFloat{0%,100%{transform:rotate(-6deg) translateY(0)}50%{transform:rotate(-4deg) translateY(-10px)}}
@keyframes gcardSheen{0%{background-position:150% 0}60%,100%{background-position:-50% 0}}
.gift-text h2{font-size:clamp(44px,5vw,70px)!important}
.gift-amounts{list-style:none;padding:0;margin:16px 0 10px;display:flex;flex-wrap:wrap;gap:8px}
.gift-amounts li{border:1px solid rgba(247,243,239,.45);border-radius:999px;padding:7px 14px;font-size:14px;color:#F7EDE8}
.gift-amounts b{color:#fff;margin-left:4px}
.gift-small{font-size:13.5px!important;color:#F3DDD3!important;margin:0 0 18px!important}
.gift-btn{background:transparent!important;border:1.5px solid #F7F3EF!important;color:#F7F3EF!important;font-weight:700;padding:15px 30px}
.gift-btn:hover{background:#F7F3EF!important;color:var(--profond)!important}
@media (max-width:820px){.gift-inner{grid-template-columns:1fr}.gift-visual{max-width:360px;width:100%}}
@media (prefers-reduced-motion:reduce){.gcard,.gcard::after{animation:none}}

/* Carte des soins v4 */
.carte h1{color:#845749}
.carte h1 i{color:var(--profond)}
.carte-badges{gap:10px 14px!important;margin-bottom:18px!important}
.cb{display:inline-flex;align-items:center;gap:8px;background:#845749;color:#F7F3EF!important;border-radius:999px;padding:9px 18px 9px 10px!important;font-size:14px;box-shadow:0 6px 18px rgba(132,87,73,.25);animation:cbPop .9s cubic-bezier(.2,.7,.2,1) both}
.cb:nth-child(2){animation-delay:.15s}
.cb b{color:#fff!important;font-size:15.5px!important}
.cb-ico{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#F7F3EF;color:#845749;font-weight:800;font-size:13px}
@keyframes cbPop{from{opacity:0;transform:translateY(12px) scale(.96)}to{opacity:1;transform:none}}
/* signature plus compacte */
.sig-hero{max-width:900px;margin:4px auto 22px!important;grid-template-columns:minmax(0,.62fr) minmax(0,1.38fr)!important}
.sig-hero .sig-img img{max-height:250px!important}
.sig-hero .sig-body{padding:18px 24px!important;gap:5px!important}
.sig-hero h2{font-size:clamp(26px,2.6vw,36px)!important}
.sig-lead{font-size:14.5px!important}
.sig-hero .sig-list{font-size:13.5px!important;margin:2px 0!important}
.sig-price{font-size:clamp(24px,2.2vw,30px)!important}
.sig-buy{padding-top:8px!important}
/* cartes de soin compactes */
.sk-title{font-family:var(--serif);font-weight:300;font-size:clamp(24px,2.4vw,32px);margin:6px 0 14px;text-align:left}
.sk-section{margin-bottom:clamp(20px,2.5vw,30px)!important}
.sk-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important}
.sk-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))!important;max-width:620px}
.sk{padding:18px 14px 14px!important;gap:5px!important;border-radius:14px!important}
.sk h3{font-size:clamp(18px,1.5vw,21px)!important;margin:2px 0 0!important}
.sk-desc{font-size:13.5px!important;line-height:1.45!important}
.sk-dur{font-size:12.5px!important;padding:4px 10px!important}
.sk-buy{padding-top:6px!important}
.sk-price{font-size:24px!important}
.sk-btn{margin-top:6px!important;padding:9px 14px!important;font-size:12.5px!important}
/* soins mis en avant */
.sk-feat{background:var(--profond)!important;border-color:var(--profond)!important;color:#F7F3EF;animation:featGlow 3.2s ease-in-out infinite}
.sk-feat h3,.sk-feat .sk-price{color:#fff!important}
.sk-feat .sk-desc{color:#EBDDD5!important}
.sk-feat .sk-dur{background:rgba(247,243,239,.14);color:#F7F3EF}
.sk-feat .sk-pay{color:#E7C9B9}
.sk-feat .save{background:#E7C9B9;color:var(--profond)}
.sk-feat .sk-label{background:#E7C9B9;color:var(--profond)}
.sk-feat .sk-btn{background:#C99B8B!important;border-color:#C99B8B!important;color:var(--profond)!important;position:relative;overflow:hidden}
.sk-feat .sk-btn::after{content:"";position:absolute;top:0;left:-60%;width:45%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-20deg);animation:btnshine 3.2s ease-in-out infinite}
@keyframes featGlow{0%,100%{box-shadow:0 8px 22px rgba(59,38,32,.25)}50%{box-shadow:0 12px 34px rgba(132,87,73,.55),0 0 0 3px rgba(201,155,139,.35)}}
/* carte cadeau v3 */
.gcard-brand{font-size:clamp(22px,2.4vw,30px)!important}
.gcard-sub{margin:2px 0 0!important;font-size:18px!important}
.gift-offers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:16px 0 12px;max-width:560px}
.go{display:flex;flex-direction:column;gap:4px;padding:14px 14px 12px;border-radius:14px;background:rgba(247,243,239,.12);border:1px solid rgba(247,243,239,.35);color:#F7EDE8;text-decoration:none;transition:transform .3s,background .3s}
.go:hover{transform:translateY(-4px);background:rgba(247,243,239,.22)}
.go span{font-size:13.5px;line-height:1.3}
.go b{font-family:var(--serif);font-size:26px;font-weight:600;color:#fff}
.go-feat{background:#F7F3EF;border-color:#F7F3EF;color:var(--profond)}
.go-feat b{color:var(--profond)}
.go-feat:hover{background:#fff}
@media (max-width:1100px){.sk-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media (max-width:800px){.sk-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.gift-offers{grid-template-columns:1fr}}
@media (max-width:520px){.sk-grid,.sk-grid.two{grid-template-columns:1fr!important}}
@media (prefers-reduced-motion:reduce){.cb,.sk-feat,.sk-feat .sk-btn::after{animation:none}}

/* Carte des soins v5 : couleurs plus douces, plus d'animation */
:root{--doux:#F2E6DE;--doux2:#E4CBBE;--doux3:#C99B8B}
.carte-title .cw{display:inline-block;opacity:0;transform:translateY(22px);animation:heroWord 1s cubic-bezier(.2,.7,.2,1) forwards}
.carte-title .cw:nth-child(1){animation-delay:.05s}.carte-title .cw:nth-child(2){animation-delay:.18s}.carte-title .cw:nth-child(3){animation-delay:.31s}.carte-title .cw:nth-child(4){animation-delay:.48s}
/* pastilles plus fines */
.cb{padding:6px 14px 6px 7px!important;font-size:13px!important;gap:7px!important;background:var(--doux2)!important;color:var(--profond)!important;box-shadow:none!important}
.cb b{color:var(--profond)!important;font-size:14px!important}
.cb-ico{width:21px!important;height:21px!important;font-size:11px!important;background:#845749!important;color:#fff!important}
/* signature retravaillée, tons doux */
.sig-hero{background:linear-gradient(135deg,var(--doux),var(--doux2))!important;color:var(--profond)!important;border:1px solid var(--doux3);border-radius:18px;animation:sigGlowSoft 4s ease-in-out infinite!important}
@keyframes sigGlowSoft{0%,100%{box-shadow:0 8px 24px rgba(132,87,73,.12)}50%{box-shadow:0 14px 40px rgba(132,87,73,.3),0 0 0 3px rgba(201,155,139,.25)}}
.sig-hero .sig-img{position:relative}
.sig-ribbon{position:absolute;top:14px;left:14px;margin:0;background:#845749;color:#fff;font-size:11.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;padding:7px 13px;border-radius:999px;white-space:nowrap;box-shadow:0 6px 16px rgba(59,38,32,.3);animation:ribbonBlink 1.8s ease-in-out infinite}
@keyframes ribbonBlink{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.55;transform:scale(1.05)}}
.sig-hero h2{color:var(--profond)}
.sig-lead{color:#5A3328!important}
.sig-hero .sig-list{color:var(--profond)!important}
.sig-hero .sig-list li::before{background:#845749!important}
.sig-buy{border-top:1px solid rgba(132,87,73,.3)!important}
.sig-price{color:var(--profond)}
.sig-pay{color:#6E3F31!important}
.sig-hero .save{background:#845749!important;color:#fff!important}
.sig-btn{background:#845749!important;border-color:#845749!important;color:#fff!important;padding:12px 34px!important}
.sig-btn:hover{background:var(--profond)!important;border-color:var(--profond)!important}
.js-anim .sig-hero.reveal .sig-img{transform:translateX(-30px);opacity:0;transition:transform 1.1s cubic-bezier(.2,.7,.2,1),opacity 1s}
.js-anim .sig-hero.reveal .sig-body{transform:translateX(30px);opacity:0;transition:transform 1.1s cubic-bezier(.2,.7,.2,1) .15s,opacity 1s .15s}
.js-anim .sig-hero.reveal.in .sig-img,.js-anim .sig-hero.reveal.in .sig-body{transform:none;opacity:1}
/* cartes mises en avant, tons doux */
.sk-feat{background:linear-gradient(160deg,var(--doux),var(--doux2))!important;border-color:var(--doux3)!important;color:var(--profond)!important;animation:featGlowSoft 3.2s ease-in-out infinite!important}
@keyframes featGlowSoft{0%,100%{box-shadow:0 6px 18px rgba(132,87,73,.14);transform:translateY(0)}50%{box-shadow:0 14px 32px rgba(132,87,73,.32),0 0 0 3px rgba(201,155,139,.3);transform:translateY(-3px)}}
.sk-feat h3,.sk-feat .sk-price{color:var(--profond)!important}
.sk-feat .sk-desc{color:#5A3328!important}
.sk-feat .sk-dur{background:rgba(255,255,255,.55)!important;color:var(--profond)!important}
.sk-feat .sk-pay{color:#6E3F31!important}
.sk-feat .save{background:#845749!important;color:#fff!important}
.sk-feat .sk-label{background:#845749!important;color:#fff!important;animation:ribbonBlink 1.8s ease-in-out infinite}
.sk-feat .sk-btn{background:#845749!important;border-color:#845749!important;color:#fff!important}
/* en-têtes des programmes et cures plus doux */
.pc-head{background:var(--doux2)!important;color:var(--profond)!important}
.pc-head h3,.pc-price{color:var(--profond)!important}
.pc-head .pc-tag{color:#6E3F31!important}
.pc-pay{color:#6E3F31!important}
.pc-head .save{background:#845749!important;color:#fff!important}
.pc.light .pc-head{background:var(--doux)!important}
.pc-custom .pc-head{background:var(--pierre)!important}
/* titres de sections mis en avant */
.sk-title{text-align:center!important;margin:10px 0 18px!important;display:flex;align-items:center;gap:18px;font-size:clamp(28px,3vw,40px)!important;color:#845749}
.sk-title i{color:var(--profond)}
.sk-title::before,.sk-title::after{content:"";flex:1;height:1px;background:linear-gradient(90deg,transparent,#C99B8B)}
.sk-title::after{background:linear-gradient(90deg,#C99B8B,transparent)}
.js-anim .sk-title.reveal::before,.js-anim .sk-title.reveal::after{transform:scaleX(0);transition:transform 1.2s cubic-bezier(.2,.7,.2,1) .2s}
.js-anim .sk-title.reveal::before{transform-origin:right}.js-anim .sk-title.reveal::after{transform-origin:left}
.js-anim .sk-title.reveal.in::before,.js-anim .sk-title.reveal.in::after{transform:scaleX(1)}
.sk-grid.two{margin:0 auto}
/* carte cadeau */
.gcard-valid{margin:6px 0 0;font-family:var(--serif);font-style:italic;font-size:13px;letter-spacing:0;text-transform:none;color:#C99B8B}
.gcard-label{font-size:12.5px!important}
/* micro-animations */
.sk:hover .sk-dur svg{animation:clockSpin 1.2s ease-in-out}
@keyframes clockSpin{to{transform:rotate(360deg)}}
.js-anim .sk.reveal{transform:translateY(30px) scale(.97)}
.js-anim .sk.reveal.in{transform:none}
.tabs button{position:relative}
.tabs button[aria-selected="true"]{animation:tabPop .4s ease}
@keyframes tabPop{from{transform:scale(.94)}to{transform:none}}
.tab-panel:not([hidden]){animation:panelIn .6s cubic-bezier(.2,.7,.2,1)}
@keyframes panelIn{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.carte-title .cw{animation:none;opacity:1;transform:none}.sig-ribbon,.sk-feat,.sk-feat .sk-label,.sig-hero,.tab-panel:not([hidden]){animation:none!important}}

/* v6 : brun transparent (identité), étiquettes repositionnées, pied de page */
:root{--doux:rgba(143,97,85,.08);--doux2:rgba(143,97,85,.16);--doux3:rgba(143,97,85,.45)}
.sig-hero{background:rgba(143,97,85,.10)!important;border-color:rgba(143,97,85,.35)!important}
.sk-feat{background:rgba(143,97,85,.13)!important;border-color:rgba(143,97,85,.45)!important}
.pc-head{background:rgba(143,97,85,.18)!important}
.pc.light .pc-head{background:rgba(143,97,85,.08)!important}
.cb{background:rgba(143,97,85,.14)!important}
.sig-ribbon{position:static!important;align-self:flex-start;box-shadow:none!important;font-size:11px!important;padding:5px 12px!important;margin:0 0 2px!important}
/* étiquette des cartes vedettes : dans la carte, sous le prix */
.sk-feat .sk-label{position:static!important;transform:none!important;order:5;margin:2px 0 0!important}
.sk-feat .sk-buy{order:4}
.sk-feat .sk-btn{order:6}
.sk-feat{padding-top:18px!important}
/* pied de page plus compact, écriture claire */
footer{padding-top:clamp(40px,5vw,64px)!important}
footer .news h2{margin-bottom:6px!important}
footer form{margin-top:16px!important}
footer .links-row{padding-top:8px!important}
footer li a{color:#E9DED8!important}
footer .word{margin-top:clamp(24px,4vw,56px)!important}

/* v7 */
.sig-hero{overflow:visible!important;margin-top:22px!important}
.sig-hero .sig-img{overflow:hidden;border-radius:18px 0 0 18px}
.sig-ribbon{position:absolute!important;top:-14px;left:50%;transform:translateX(-50%);z-index:2;font-size:11.5px!important;padding:6px 16px!important;box-shadow:0 6px 16px rgba(59,38,32,.25)!important;animation:ribbonBlinkC 1.8s ease-in-out infinite!important}
@keyframes ribbonBlinkC{0%,100%{opacity:1;transform:translateX(-50%) scale(1)}50%{opacity:.6;transform:translateX(-50%) scale(1.05)}}
.sig-hero .sig-body{align-items:center;text-align:center;padding-top:26px!important}
.sig-hero .sig-list{text-align:left;align-self:center}
.sig-buy{display:flex!important;flex-direction:column;align-items:center;gap:4px!important;width:100%}
.sig-price{font-size:clamp(34px,3.4vw,46px)!important;line-height:1}
.sig-btn{justify-self:auto!important;margin-top:8px}
/* étiquettes des cartes vedettes : de nouveau en haut */
.sk-feat .sk-label{position:absolute!important;top:-11px!important;left:50%!important;transform:translateX(-50%)!important;order:0;margin:0!important;animation:ribbonBlinkC 1.8s ease-in-out infinite!important}
.sk-feat{padding-top:24px!important;overflow:visible}
/* carte cadeau : drainage corps entier mis en avant */
.gift-offers{grid-template-columns:1fr 1.35fr 1fr!important;align-items:center;max-width:600px!important}
.go-feat{padding:22px 16px 18px!important;transform:scale(1.04);box-shadow:0 16px 34px rgba(20,12,9,.3);animation:goFloat 3.4s ease-in-out infinite;position:relative}
.go-feat em{font-style:normal;font-size:10.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#fff;background:#845749;border-radius:999px;padding:4px 10px;align-self:flex-start;margin-bottom:4px}
.go-feat span{font-size:15px!important;font-weight:700}
.go-feat b{font-size:34px!important}
@keyframes goFloat{0%,100%{transform:scale(1.04) translateY(0)}50%{transform:scale(1.04) translateY(-5px)}}
@media (max-width:800px){.gift-offers{grid-template-columns:1fr!important}.sig-hero .sig-img{border-radius:18px 18px 0 0}}
@media (prefers-reduced-motion:reduce){.go-feat,.sig-ribbon,.sk-feat .sk-label{animation:none!important}}

.sig-hero .sig-img img{max-height:none!important;height:100%!important;min-height:100%}
.sk-detail{margin:0;font-size:14.5px;font-weight:700;color:#5A3328}
.sk-note{margin:2px 0 0;font-size:12.5px;color:#6B5550}
.sk-cure .sk-buy{gap:6px}

/* Rituel : carte plus compacte */
.sig-hero{max-width:720px!important;grid-template-columns:minmax(0,.55fr) minmax(0,1.45fr)!important;margin-bottom:18px!important}
.sig-hero .sig-body{padding:22px 20px 16px!important;gap:3px!important}
.sig-hero h2{font-size:clamp(22px,2.1vw,28px)!important}
.sig-lead{font-size:13.5px!important}
.sig-hero .sig-list{font-size:12.5px!important;line-height:1.45!important}
.sig-price{font-size:clamp(28px,2.6vw,34px)!important}
.sig-pay{font-size:12px!important}
.sig-buy{padding-top:6px!important;gap:2px!important}
.sig-btn{padding:9px 26px!important;font-size:12.5px!important;margin-top:4px!important}
.sig-ribbon{font-size:10.5px!important;padding:5px 13px!important;top:-12px!important}

.sk-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))!important;max-width:980px;margin:0 auto}
.sk-for{margin:2px 0 0;font-size:11.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#845749}
.sk-prog h3{font-size:clamp(22px,2vw,26px)!important}
.sk-custom{background:rgba(143,97,85,.06)!important;border-style:dashed!important}
.sk-price-small{font-size:20px!important}
@media (max-width:900px){.sk-grid.three{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media (max-width:520px){.sk-grid.three{grid-template-columns:1fr!important}}

/* ligne de détail centrée verticalement dans toutes les cartes */
.sk .sk-detail,.sk .sk-desc{margin-top:auto!important;margin-bottom:auto!important;padding:10px 0}
.sk .sk-buy{margin-top:0!important}
.sk h3{margin-top:16px!important}
/* Page Drainage alignée sur la carte des soins */
.info-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:8px;text-align:left}
.info-card{background:rgba(143,97,85,.07);border:1px solid rgba(143,97,85,.25);border-radius:14px;padding:18px 20px;display:flex;flex-direction:column;gap:8px}
.info-card h3{font-family:var(--serif);font-weight:600;font-size:20px;margin:0;color:var(--profond)}
.info-card p{margin:0;font-size:14px;line-height:1.55;color:#5A3328}
.info-cta .sk-btn{margin-top:auto;align-self:flex-start;width:auto;padding:9px 20px!important}
@media (max-width:860px){.info-cards{grid-template-columns:1fr}}

/* Nous trouver */
.visit{background:var(--pierre);color:var(--profond);padding:clamp(36px,4.5vw,60px) 0}
.visit-wrap{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(24px,4vw,56px);align-items:center}
.visit-title{margin:0 0 clamp(18px,2.5vw,28px)!important}
.visit-title i{color:var(--profond)}
.visit-list{margin:0;display:grid;gap:0}
.visit-list>div{display:grid;grid-template-columns:110px 1fr;gap:16px;padding:12px 0;border-top:1px solid rgba(59,38,32,.18)}
.visit-list>div:last-child{border-bottom:1px solid rgba(59,38,32,.18)}
.visit-list dt{font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#845749;padding-top:4px}
.visit-list dd{margin:0;font-family:var(--serif);font-size:clamp(18px,1.6vw,21px);line-height:1.35}
.visit-list dd a{color:var(--profond);text-decoration:none;font-weight:600;font-size:clamp(22px,2vw,26px)}
.visit-actions{display:flex;gap:10px;margin-top:18px;flex-wrap:wrap}
.visit-btn{background:#845749;border-color:#845749;color:#F7F3EF}
.visit-btn.ghost-dark{background:transparent;color:var(--profond);border-color:var(--profond)}
.visit-btn.ghost-dark:hover{background:var(--profond);color:#F7F3EF}
.visit-map{position:relative;display:block;border-radius:18px;overflow:hidden;box-shadow:0 14px 34px rgba(59,38,32,.16);transition:transform .35s,box-shadow .35s}
.visit-map:hover{transform:translateY(-4px);box-shadow:0 20px 44px rgba(59,38,32,.24)}
.visit-map svg{display:block;width:100%;height:auto}
.visit-map-cta{position:absolute;right:14px;bottom:14px;background:#FBF8F5;color:var(--profond);font-size:12.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;padding:8px 14px;border-radius:999px;box-shadow:0 4px 12px rgba(59,38,32,.15)}
@media (max-width:860px){.visit-wrap{grid-template-columns:1fr}.visit-list>div{grid-template-columns:1fr;gap:2px}}

/* Journal */
.jchips{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:4px 0 22px}
.jchip{font-family:var(--sans);font-size:13px;font-weight:700;border:1px solid rgba(143,97,85,.45);background:transparent;color:var(--profond);border-radius:999px;padding:7px 14px;cursor:pointer;transition:background .25s,color .25s}
.jchip:hover{background:rgba(143,97,85,.12)}
.jchip.on{background:#845749;border-color:#845749;color:#fff}
.jgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;text-align:left;align-items:start}
.jc{background:#FBF8F5;border:1px solid rgba(59,38,32,.14);border-radius:16px;padding:20px 22px;display:flex;flex-direction:column;gap:6px;transition:transform .35s,box-shadow .35s}
.jc:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(59,38,32,.1)}
.jc[hidden]{display:none}
.jc-tag{margin:0;font-size:11.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#845749}
.jc h3{font-family:var(--serif);font-weight:600;font-size:clamp(20px,1.8vw,24px);line-height:1.2;margin:0;color:var(--profond)}
.jc-intro{margin:0;font-size:14.5px;line-height:1.55;color:#5A3328}
.jc-more summary{cursor:pointer;list-style:none;margin-top:6px;font-size:12.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#845749}
.jc-more summary::-webkit-details-marker{display:none}
.jc-more summary::after{content:" +"}
.jc-more[open] summary::after{content:" −"}
.jc-more .sc-list{margin:10px 0 8px;font-size:14px}
.jc-end{margin:0;font-size:14px;line-height:1.55;color:var(--profond);font-style:italic}
.jc-more[open]{animation:panelIn .5s cubic-bezier(.2,.7,.2,1)}
.jlisten{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:22px 0 6px;padding:22px 26px;border-radius:18px;background:rgba(143,97,85,.10);border:1px solid rgba(143,97,85,.35);text-align:left}
.jlisten h3{font-family:var(--serif);font-weight:300;font-size:clamp(26px,2.6vw,34px);margin:2px 0 6px;color:#845749}
.jlisten h3 i{color:var(--profond)}
.jlisten p:not(.jc-tag){margin:0;font-size:15px;line-height:1.55;max-width:42em;color:#5A3328}
.jlisten-actions{display:flex;gap:10px;flex:none}
.jlisten-actions .sk-btn{width:auto;padding:11px 26px!important}
@media (max-width:820px){.jgrid{grid-template-columns:1fr}.jlisten{flex-direction:column;align-items:flex-start}}

/* Journal : format éditorial en liste */
.jlist{display:block!important;max-width:880px;margin:0 auto;border-top:1px solid rgba(59,38,32,.2)}
.jlist .jc{display:grid!important;grid-template-columns:64px 1fr;gap:0 22px;background:transparent!important;border:0!important;border-bottom:1px solid rgba(59,38,32,.2)!important;border-radius:0!important;padding:22px 4px!important;box-shadow:none!important;transform:none!important}
.jlist .jc:hover{background:rgba(143,97,85,.05)!important}
.jc-num{font-family:var(--serif);font-weight:300;font-size:44px;line-height:1;color:#C99B8B;padding-top:2px}
.jc-body{display:flex;flex-direction:column;gap:6px}
.jlist .jc h3{font-family:var(--serif);font-weight:400;font-size:clamp(22px,2.2vw,30px)!important;line-height:1.15}
.jlist .jc:hover h3{color:#845749}
.jlist .jc-intro{max-width:44em}
@media (max-width:620px){.jlist .jc{grid-template-columns:1fr}.jc-num{font-size:30px;margin-bottom:4px}}

/* Page carte cadeau */
.cc-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:center;max-width:960px;margin:0 auto clamp(24px,3vw,40px);text-align:left}
.cc-steps{list-style:none;counter-reset:s;margin:0;padding:0;display:grid;gap:12px}
.cc-steps li{counter-increment:s;position:relative;padding:14px 16px 14px 62px;border-radius:14px;background:rgba(143,97,85,.08);border:1px solid rgba(143,97,85,.25);font-size:15px;line-height:1.45;color:#5A3328}
.cc-steps li::before{content:counter(s,decimal-leading-zero);position:absolute;left:16px;top:50%;transform:translateY(-50%);font-family:var(--serif);font-size:28px;color:#845749}
.cc-steps b{color:var(--profond)}
@media (max-width:820px){.cc-hero{grid-template-columns:1fr}}

/* Planning */
.pweek{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}
.pd{border-radius:14px;padding:16px 10px;min-height:150px;display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center}
.pd.open{background:#FBF8F5;border:1px solid rgba(143,97,85,.35);box-shadow:0 2px 10px rgba(59,38,32,.05)}
.pd.closed{background:rgba(59,38,32,.04);border:1px dashed rgba(59,38,32,.18)}
.pd-day{margin:0 0 4px;font-family:var(--serif);font-weight:600;font-size:19px;color:var(--profond)}
.pd.closed .pd-day{color:#9C8A84;font-weight:400}
.pd-slot{display:flex;flex-direction:column;gap:2px;width:100%;padding:8px 6px;border-radius:10px;background:rgba(143,97,85,.12);font-size:13.5px;color:var(--profond)}
.pd-slot b{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#845749}
.pd-slot.pil{background:rgba(143,97,85,.28);color:var(--profond)}
.pd-slot.pil b{color:#6E3F31}
.pd-closed{font-size:13px;color:#9C8A84;margin-top:auto;margin-bottom:auto}
.ic-big{font-family:var(--serif);font-size:22px!important}
.ic-big a{color:var(--profond);text-decoration:none;font-weight:600}
.ic-big a:hover{color:#845749}
@media (max-width:900px){.pweek{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:560px){.pweek{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Nous contacter */
.ct-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;max-width:960px;margin:0 auto}
.ct{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:22px 18px 18px;background:#FBF8F5;border:1px solid rgba(143,97,85,.3);border-radius:16px;transition:transform .35s,box-shadow .35s}
.ct:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(59,38,32,.12)}
.ct-ico{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:rgba(143,97,85,.14);color:#845749}
.ct-ico svg{width:22px;height:22px}
.ct-k{margin:6px 0 0;font-size:11.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#845749}
.ct-v{margin:0 0 8px;font-family:var(--serif);font-weight:600;font-size:clamp(19px,1.7vw,23px);color:var(--profond);word-break:break-word}
.ct-btn{width:auto!important;padding:9px 28px!important;margin-top:auto}
.ct-note{max-width:760px;margin:16px auto 0;text-align:center;font-size:14.5px;line-height:1.55;color:#5A3328;background:rgba(143,97,85,.08);border-radius:12px;padding:12px 18px}
.ct-note b{color:var(--profond)}
@media (max-width:760px){.ct-grid{grid-template-columns:1fr}}

/* Récit au scroll v2 : apparitions plus marquées, parallaxe des photos */
.js-anim .reveal{opacity:0;transform:translateY(60px);transition:opacity 1.2s ease,transform 1.3s cubic-bezier(.16,.8,.24,1)}
.js-anim .reveal.in{opacity:1;transform:none}
.js-anim .reveal-img img{transform:translateY(var(--py,0px)) scale(1.14)!important;transition:transform 1.8s cubic-bezier(.16,.8,.24,1)}
.js-anim .reveal-img.in img{transform:translateY(var(--py,0px)) scale(1.04)!important;transition:transform .2s linear}
.js-anim .sk-title.reveal{transform:translateY(40px);letter-spacing:.06em}
.js-anim .sk-title.reveal.in{transform:none;letter-spacing:0;transition:opacity 1.2s ease,transform 1.3s cubic-bezier(.16,.8,.24,1),letter-spacing 1.6s cubic-bezier(.16,.8,.24,1)}
@media (prefers-reduced-motion:reduce){.js-anim .reveal{filter:none}}

.studio-head{padding-bottom:clamp(20px,2.5vw,32px)!important}

/* Lettre de la fondatrice : courte et élégante */
.letter-short p{font-family:var(--serif);font-weight:300;font-size:clamp(18px,1.55vw,21px);line-height:1.6;margin:0 0 14px;max-width:30em;color:#EFE6E1}
.letter-short .letter-close{font-style:italic;color:#E7C9B9;margin-top:18px}

/* Page Le studio v2 */
.studio-hero{position:relative;min-height:clamp(320px,52vh,520px);display:grid;place-items:center;text-align:center;color:#F7F3EF;overflow:hidden}
.sh-media{position:absolute;inset:0}
.sh-media img{width:100%;height:100%;object-fit:cover;object-position:50% 45%;animation:heroZoom 2.6s cubic-bezier(.2,.7,.2,1) both}
.studio-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(30,18,14,.25),rgba(30,18,14,.55))}
.sh-text{position:relative;z-index:1;padding:0 20px}
.sh-kicker{margin:0 0 6px;font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#E7C9B9}
.studio-hero h1{color:#F7F3EF!important;font-size:clamp(48px,6vw,84px)!important;margin:0 0 8px}
.studio-hero h1 i{color:#F7F3EF!important}
.sh-text p:last-child{margin:0;font-family:var(--serif);font-style:italic;font-size:clamp(19px,1.8vw,24px)}
.spaces,.method{background:var(--blanc);padding:clamp(40px,5vw,64px) 0}
.method{padding-top:0}
.sp-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.sp{position:relative;margin:0;border-radius:16px;overflow:hidden;aspect-ratio:3/4}
.sp img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.sp:hover img{transform:scale(1.05)}
.sp figcaption{position:absolute;left:0;right:0;bottom:0;padding:60px 18px 16px;background:linear-gradient(180deg,transparent,rgba(30,18,14,.75));color:#F7F3EF;display:flex;flex-direction:column;gap:4px}
.sp figcaption b{font-family:var(--serif);font-weight:400;font-size:24px}
.sp figcaption span{font-size:14px;color:#EBDDD5}
.mt-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;position:relative}
.mt-steps li{position:relative;text-align:center;padding:24px 20px 20px;border-radius:16px;background:rgba(143,97,85,.08);border:1px solid rgba(143,97,85,.28)}
.mt-steps li:not(:last-child)::after{content:"→";position:absolute;right:-13px;top:50%;transform:translateY(-50%);width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:#845749;color:#fff;font-size:13px;z-index:1}
.mt-n{font-family:var(--serif);font-size:40px;line-height:1;color:#C99B8B}
.mt-steps h3{font-family:var(--serif);font-weight:600;font-size:24px;margin:6px 0;color:var(--profond)}
.mt-steps p{margin:0;font-size:14.5px;line-height:1.55;color:#5A3328}
@media (max-width:820px){.sp-grid,.mt-steps{grid-template-columns:1fr}.mt-steps li:not(:last-child)::after{right:50%;top:auto;bottom:-13px;transform:translateX(50%) rotate(90deg)}.sp{aspect-ratio:4/3}}

/* parallaxe des photos : cadres qui masquent les débords */
.card,.season .ph,.sp,.sig-img,.book-split .bs,.values,.visit-map{overflow:hidden}
.page.active img{will-change:translate,scale;transition:scale .25s linear,translate .25s linear}
@media (prefers-reduced-motion:reduce){}

/* Harmonisation cartes Drainage/Pilates et saisons de la vie */
.soins .two-cards{max-width:none!important;gap:clamp(14px,1.8vw,28px)!important;padding:0}
.soins .two-cards .card{border-radius:14px}
.soins .two-cards .card img{aspect-ratio:16/9!important}
.season .ph{border-radius:14px}
.soins .card-text h3{font-size:clamp(26px,2.4vw,34px)!important}

/* Le studio : en-tête éditorial + mosaïque */
.studio-head2{background:var(--blanc);padding:clamp(28px,3.5vw,48px) 0 clamp(36px,4.5vw,60px)}
.sh2{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(24px,4vw,56px);align-items:center}
.sh2-text{text-align:left}
.sh2-text .sh-kicker{color:#845749}
.sh2-text h1{text-align:left;font-size:clamp(48px,5.6vw,80px)!important;margin:4px 0 12px!important}
.sh2-lead{font-family:var(--serif);font-weight:300;font-size:clamp(19px,1.7vw,23px);line-height:1.5;margin:0 0 22px;color:#5A3328;max-width:28em}
.sh2-facts{list-style:none;margin:0;padding:16px 0 0;display:grid;grid-template-columns:repeat(3,auto);gap:12px 28px;border-top:1px solid rgba(59,38,32,.18);justify-content:start}
.sh2-facts li{display:flex;flex-direction:column;gap:2px}
.sh2-facts b{font-family:var(--serif);font-weight:400;font-size:32px;line-height:1;color:#845749}
.sh2-facts span{font-size:13px;color:#6B5550;max-width:12em}
.sh2-mosaic{display:grid;grid-template-columns:1.3fr 1fr;grid-template-rows:1fr 1fr;gap:10px;height:clamp(320px,38vw,470px)}
.sh2-mosaic figure{margin:0;border-radius:16px;overflow:hidden}
.sh2-mosaic .m1{grid-row:1/3}
.sh2-mosaic img{width:100%;height:100%;object-fit:cover;display:block}
@media (max-width:860px){.sh2{grid-template-columns:1fr}.sh2-facts{grid-template-columns:repeat(3,1fr)}}

#p-studio .founder{padding-top:clamp(36px,4.5vw,64px)}
/* L'ambiance Lymphatika : carrousel */
.ambiance{background:var(--blanc);padding:clamp(36px,4.5vw,56px) 0 clamp(36px,4vw,56px)}
.amb-intro{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-width:960px;margin:0 auto 22px;text-align:left}
.amb-space{padding:18px 20px;border-radius:14px;background:rgba(143,97,85,.08);border:1px solid rgba(143,97,85,.25)}
.amb-space p:last-child{margin:6px 0 0;font-family:var(--serif);font-weight:300;font-size:clamp(17px,1.4vw,19px);line-height:1.5;color:#5A3328}
.amb-slider{position:relative}
.amb-track{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:4px 2px 12px;scrollbar-width:none}
.amb-track::-webkit-scrollbar{display:none}
.amb-slide{flex:0 0 clamp(220px,24vw,300px);margin:0;scroll-snap-align:start;position:relative;border-radius:16px;overflow:hidden;aspect-ratio:3/4}
.amb-slide img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.amb-slide:hover img{transform:scale(1.05)}
.amb-slide figcaption{position:absolute;left:0;right:0;bottom:0;padding:50px 14px 12px;background:linear-gradient(180deg,transparent,rgba(30,18,14,.72));color:#F7F3EF;display:flex;flex-direction:column;gap:2px}
.amb-slide figcaption b{font-family:var(--serif);font-weight:400;font-size:20px}
.amb-slide figcaption span{font-size:13px;color:#EBDDD5}
.amb-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:44px;height:44px;border-radius:50%;border:0;background:#FBF8F5;color:var(--profond);font-size:26px;line-height:1;cursor:pointer;box-shadow:0 6px 18px rgba(59,38,32,.2);transition:background .25s,color .25s}
.amb-nav:hover{background:#845749;color:#fff}
.amb-nav.prev{left:-10px}.amb-nav.next{right:-10px}
@media (max-width:760px){.amb-intro{grid-template-columns:1fr}.amb-nav{display:none}.amb-slide{flex-basis:72vw}}

/* L'ambiance v3 : fond anthracite, défilement continu */
.amb2{background:#332B27!important;color:#F4F2EE;padding:clamp(48px,6vw,80px) 0 clamp(48px,6vw,80px)!important;overflow:hidden}
.amb2 .amb-title{text-align:center;margin-bottom:clamp(22px,3vw,36px)}
.amb2 .amb-title .st-a{color:#E7C9B9}
.amb2 .amb-title .st-b{color:#F7F3EF}
.amb-duo{display:grid;grid-template-columns:1fr 1fr;max-width:860px;margin:0 auto clamp(32px,4vw,52px);text-align:center}
.amb-duo>div{padding:0 clamp(16px,3vw,40px)}
.amb-duo>div+div{border-left:1px solid rgba(231,201,185,.35)}
.amb-k{margin:0 0 8px;font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#C99B8B}
.amb-p{margin:0;font-family:var(--serif);font-style:italic;font-weight:300;font-size:clamp(18px,1.6vw,21px);line-height:1.55;color:#EFE6E1}
.amb-n{margin:0 0 10px;font-family:var(--serif);font-weight:300;font-size:clamp(28px,2.8vw,38px);line-height:1.1;color:#F7F3EF}
.marquee{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.mq-track{display:flex;gap:16px;width:max-content;animation:mqScroll 70s linear infinite}
.marquee:hover .mq-track{animation-play-state:paused}
.mq-slide{flex:0 0 auto;width:clamp(220px,22vw,300px);aspect-ratio:3/4;margin:0;border-radius:16px;overflow:hidden}
.mq-slide img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}
.mq-slide:hover img{transform:scale(1.05)}
@keyframes mqScroll{from{transform:translateX(0)}to{transform:translateX(calc(-50% - 8px))}}
@media (max-width:760px){.amb-duo{grid-template-columns:1fr;gap:18px}.amb-duo>div+div{border-left:0;border-top:1px solid rgba(231,201,185,.35);padding-top:18px}.mq-track{animation-duration:50s}}
@media (prefers-reduced-motion:reduce){.mq-track{animation:none}.marquee{overflow-x:auto}}

/* Le studio : la lettre de la fondatrice comme une page de roman, sur fond clair */
#p-studio .founder{background:#F3EEE9!important;color:var(--profond)!important;padding:clamp(48px,6vw,80px) 0!important}
#p-studio .founder h2,#p-studio .founder h1{color:var(--profond)!important}
#p-studio .founder .role{color:#845749!important}
#p-studio .founder .sign{color:#845749!important}
#p-studio .letter-short{max-width:31em;position:relative;padding-top:6px}
#p-studio .letter-short p{font-family:var(--serif)!important;font-weight:400!important;font-size:clamp(18px,1.5vw,20px)!important;line-height:1.75!important;color:#3B2620!important;text-align:justify;hyphens:auto;-webkit-hyphens:auto;margin:0!important;text-indent:1.6em}
#p-studio .letter-short p:first-child{text-indent:0}
#p-studio .letter-short p:first-child::first-letter{float:left;font-family:var(--serif);font-weight:300;font-size:4.2em;line-height:.82;margin:.06em .1em 0 0;color:#845749}
#p-studio .letter-short p:first-child::first-line{font-variant:small-caps;letter-spacing:.04em}
#p-studio .letter-short .letter-close{font-style:italic;text-indent:0;text-align:left;margin-top:1.2em!important;padding-top:1em;border-top:1px solid rgba(132,87,73,.3);color:#6E3F31!important}

/* ===== Refonte : parcours de soin ===== */
.save,.sk-feat,.sk-label,.sig-ribbon,.shine::after{animation:none!important}
/* Héros */
.hero-h1{margin:0;text-align:center;font-family:var(--serif);font-weight:300;font-size:clamp(32px,4.2vw,58px);line-height:1.1;color:#F7F3EF}
.hero-h1 .hw:last-child{font-style:italic}
.hero .hero-sub{margin:16px auto 0;max-width:34em;text-align:center;font-family:var(--serif);font-style:italic;font-size:clamp(20px,2vw,28px)!important;line-height:1.4;color:#F4EEEA}
.hero-ctas{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:clamp(22px,4vh,40px)}
.hero-btn.ghost{background:transparent!important;border:1.5px solid #F7F3EF!important;color:#F7F3EF!important}
.hero-btn.ghost:hover{background:#F7F3EF!important;color:var(--profond)!important}
.hero .hero-ctas .hero-btn{margin-top:0!important}
.hero p .hw:nth-of-type(1){animation-delay:.9s}
/* Intro */
.h-intro{background:var(--blanc);padding:clamp(40px,5vw,64px) 0 0;text-align:center}
.h-intro-k{margin:0 0 10px;font-family:var(--wide);font-size:13px;letter-spacing:.14em;color:#845749}
.h-intro-t{margin:0 auto;max-width:44em;font-family:var(--serif);font-weight:300;font-size:clamp(20px,2vw,27px);line-height:1.5;color:var(--profond)}
.h-intro-t b{font-weight:500;color:#845749}
/* Situations */
.sits{background:var(--blanc);padding:clamp(36px,4.5vw,56px) 0}
.sit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.sit{display:flex;flex-direction:column;text-decoration:none;color:var(--profond);background:#FBF8F5;border:1px solid rgba(143,97,85,.25);border-radius:16px;overflow:hidden;transition:transform .35s,box-shadow .35s}
.sit:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(59,38,32,.12)}
.sit-ph{display:block;aspect-ratio:16/10;overflow:hidden}
.sit-ph img{width:100%;height:100%;object-fit:cover;display:block}
.sit-q{padding:16px 18px 4px;font-family:var(--serif);font-style:italic;font-size:clamp(19px,1.6vw,22px);line-height:1.3}
.sit-n{padding:6px 18px 18px;margin-top:auto;font-size:12.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#845749}
.sits-note{text-align:center;margin:20px 0 0;font-size:15px;color:#5A3328}
.sits-note a{color:#845749;font-weight:700}
/* Méthode */
.method3{background:var(--blanc);padding:0 0 clamp(40px,5vw,64px)}
/* Expertises */
.exp{background:#F3EEE9;padding:clamp(40px,5vw,64px) 0}
.exp-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.exp-card{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);background:#FBF8F5;border-radius:16px;overflow:hidden;border:1px solid rgba(143,97,85,.22)}
.exp-img{overflow:hidden;min-height:240px}
.exp-img img{width:100%;height:100%;object-fit:cover;display:block}
.exp-body{padding:22px;display:flex;flex-direction:column;gap:10px}
.exp-body h3{margin:0;font-family:var(--serif);font-weight:400;font-size:clamp(22px,2vw,27px);color:var(--profond)}
.exp-body p{margin:0;font-size:14.5px;line-height:1.6;color:#5A3328}
.exp-link{margin-top:auto;font-size:12.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#845749;text-decoration:none}
.exp-link:hover{text-decoration:underline}
/* Bilan */
.bilan-band{background:#332B27;color:#F4F2EE;padding:clamp(44px,5.5vw,72px) 0}
.bilan-in{display:grid;grid-template-columns:minmax(0,1.4fr) auto;gap:clamp(24px,4vw,56px);align-items:center}
.bilan-band .jc-tag{color:#C99B8B}
.bilan-band h2{font-family:var(--serif);font-weight:300;font-size:clamp(34px,3.6vw,50px);margin:4px 0 10px;color:#F7F3EF}
.bilan-band p{margin:0 0 12px;font-size:16px;line-height:1.6;color:#EFE6E1;max-width:40em}
.bilan-band .sc-list{color:#F4EEEA;font-size:15px;margin:0 0 12px}
.bilan-band .sc-list li::before{background:#C99B8B}
.bilan-note{font-size:13px!important;color:#C9B8B0!important;font-style:italic}
.bilan-btn{background:#C99B8B;border-color:#C99B8B;color:var(--profond);font-weight:700;padding:16px 30px;white-space:nowrap}
.bilan-btn:hover{background:#F7F3EF;border-color:#F7F3EF}
/* Fondatrice (accueil) */
.h-founder .creds,.creds{list-style:none;padding:0;margin:4px 0 16px;display:grid;gap:8px}
.creds li{position:relative;padding-left:18px;font-size:15px;line-height:1.5;color:#EFE6E1}
.creds li::before{content:"";position:absolute;left:0;top:.65em;width:8px;height:1px;background:#C99B8B}
.h-founder-q{font-family:var(--serif);font-style:italic;font-size:clamp(19px,1.7vw,22px);line-height:1.5;color:#E7C9B9;margin:0 0 16px}
.creds-line{margin:-4px 0 16px;font-size:13.5px;letter-spacing:.04em;color:#845749}
/* CTA final */
.final-cta{background:var(--blanc);padding:clamp(44px,5.5vw,72px) 0;text-align:center}
.final-cta h2{font-family:var(--serif);font-weight:300;font-size:clamp(32px,3.6vw,48px);margin:0 0 10px;color:#845749}
.final-cta h2 i{color:var(--profond)}
.final-cta p{margin:0 auto 20px;max-width:36em;color:#5A3328;font-size:16px}
.final-btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.final-btns .sk-btn{width:auto;padding:13px 30px!important}
/* Navigation */
.nav-cta{margin-left:14px;background:#845749;color:#F7F3EF!important;text-decoration:none;font-size:12.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:9px 16px;border-radius:999px}
.nav-cta:hover{background:var(--profond)}
body.home .top:not(.scrolled) .nav-cta{background:rgba(247,243,239,.18);border:1px solid rgba(247,243,239,.6)}
/* Pages parcours */
.pp-k{margin:0 0 4px;font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#845749;text-align:center}
.pp-ctas{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin:6px 0 clamp(24px,3vw,36px)}
.cta-bilan{width:auto!important;padding:12px 26px!important}
.pp-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;text-align:left}
.pp-b{position:relative;background:#FBF8F5;border:1px solid rgba(143,97,85,.22);border-radius:14px;padding:20px 22px 18px 72px}
.pp-n{position:absolute;left:20px;top:16px;font-family:var(--serif);font-size:32px;line-height:1;color:#C99B8B}
.pp-b h3,.pp-alert h3{margin:0 0 8px;font-family:var(--serif);font-weight:600;font-size:20px;color:var(--profond)}
.pp-b p,.pp-alert p{margin:0;font-size:15px;line-height:1.6;color:#5A3328}
.pp-b .sc-list{margin:0;font-size:15px}
.pp-alert{position:relative;margin-top:12px;text-align:left;background:rgba(143,97,85,.12);border:1px solid rgba(143,97,85,.4);border-left:4px solid #845749;border-radius:14px;padding:20px 22px 18px 72px}
.pp-book{margin-top:16px}
.pp-book p a{color:#845749}
.pp-others{margin:20px 0 0;text-align:center;font-size:14px;color:#6B5550}
.pp-others a{color:#845749}
/* Soins & tarifs */
.step-block{margin:0 0 clamp(28px,3.5vw,44px)}
.step-n{margin:0 0 10px;font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#845749;text-align:center}
.bilan-card{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;max-width:900px;margin:0 auto;padding:22px 26px;border-radius:16px;background:#332B27;color:#F4F2EE;text-align:left}
.bilan-card h2{margin:0 0 6px;font-family:var(--serif);font-weight:300;font-size:clamp(26px,2.6vw,34px);color:#F7F3EF}
.bilan-card p{margin:0;font-size:14.5px;line-height:1.55;color:#EFE6E1;max-width:42em}
.bilan-card .jc-tag{color:#C99B8B}
.bilan-card .sk-btn{background:#C99B8B!important;border-color:#C99B8B!important;color:var(--profond)!important}
.bilan-card.big{margin-bottom:clamp(28px,3.5vw,44px)}
.bilan-actions{display:flex;gap:10px;flex-wrap:wrap}
.bilan-card .ghost-dark{color:#F7F3EF!important;border-color:#F7F3EF!important}
.pc-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-width:960px;margin:0 auto}
.pc-link{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:16px 18px;border-radius:14px;background:#FBF8F5;border:1px solid rgba(143,97,85,.28);text-decoration:none;color:var(--profond);font-family:var(--serif);font-size:19px;transition:background .25s,transform .3s}
.pc-link b{color:#845749}
.pc-link:hover{background:rgba(143,97,85,.1);transform:translateY(-2px)}
@media (max-width:900px){.sit-grid,.pc-links{grid-template-columns:repeat(2,minmax(0,1fr))}.exp-grid{grid-template-columns:1fr}.bilan-in{grid-template-columns:1fr}}
@media (max-width:620px){.sit-grid,.pc-links,.pp-grid{grid-template-columns:1fr}.exp-card{grid-template-columns:1fr}.exp-img{min-height:200px}.nav-cta{display:none}}

.hero .hero-ctas{display:flex!important;width:100%}
.hero .hero-ctas .hero-btn{margin:0!important;transform:none}
@media (max-width:620px){.hero-ctas{flex-direction:column;align-items:center;gap:10px}}
.top .right a.nav-cta{background:#845749!important;color:#F7F3EF!important;border:0}
.top .right a.nav-cta:hover{background:#3B2620!important}
.sk-grid.one{grid-template-columns:minmax(0,320px)!important;justify-content:center}
/* Héros v2 : bloc éditorial à gauche, texte resserré */
.hero::after{background:linear-gradient(90deg,rgba(28,17,13,.72) 0%,rgba(28,17,13,.45) 38%,rgba(28,17,13,.05) 70%)!important}
.hero .hero-inner{justify-self:start;align-self:end;text-align:left!important;align-items:flex-start!important;max-width:620px;padding:0 clamp(24px,6vw,96px) clamp(56px,11vh,120px)!important}
.hero .hero-k{display:block;margin:0 0 14px;font-family:var(--sans);font-size:12px!important;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#E7C9B9}
.hero .hero-h1{text-align:left!important;font-size:clamp(34px,4vw,56px)!important;line-height:1.08}
.hero .hero-sub{text-align:left!important;margin:16px 0 0!important;max-width:24em!important;font-size:clamp(18px,1.6vw,22px)!important}
.hero .hero-ctas{justify-content:flex-start!important;margin-top:26px!important}
@media (max-width:620px){.hero::after{background:linear-gradient(180deg,rgba(28,17,13,.15),rgba(28,17,13,.7))!important}.hero .hero-ctas{align-items:flex-start!important}}

.hero .hero-inner{max-width:none!important;width:100%;box-sizing:border-box}
.hero .hero-inner>*{max-width:640px}
.hero .hero-inner p{text-align:left!important;padding:0!important;margin-left:0!important}
.hero .hero-h1 .hw{white-space:nowrap}
.hero .hero-h1{font-size:clamp(30px,3.7vw,54px)!important}
.hero .hero-ctas{flex-direction:row!important;flex-wrap:wrap}
@media (max-width:620px){.hero .hero-h1 .hw{white-space:normal}.hero .hero-ctas{flex-direction:column!important}}

/* ===== Refonte 2 : site percutant ===== */
.rv{opacity:1!important}

.sec-k{margin:0 0 6px;text-align:center;font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#845749}
/* Héros */
.hero3 .hero-h1{font-size:clamp(36px,4.6vw,64px)!important;line-height:1.02}
.hero3 .hero-h1 i{font-style:italic}
.hero3 .hero-tag{margin:14px 0 0!important;font-family:var(--wide);font-size:clamp(11px,1vw,13px)!important;letter-spacing:.16em;text-transform:uppercase;color:#E7C9B9}
.hero3 .hero-sub{max-width:30em!important;font-style:normal!important;font-family:var(--sans)!important;font-size:clamp(15px,1.25vw,17px)!important;line-height:1.6;color:#F4EEEA}
.hero3 .hero-sub b{color:#fff}
.chips{display:flex!important;flex-wrap:wrap;gap:8px;margin-top:18px;max-width:640px}
.chip{font-size:12.5px;font-weight:600;color:#F7F3EF;text-decoration:none;padding:6px 12px;border-radius:999px;border:1px solid rgba(247,243,239,.45);background:rgba(28,17,13,.25);transition:background .25s}
.chip:hover{background:rgba(247,243,239,.2)}
.hero3 .hero-inner{padding-bottom:clamp(36px,7vh,80px)!important}
/* Repères */
.facts{background:#332B27;color:#F4F2EE}
.facts-in{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;padding:22px 0 18px}
.fact{display:flex;flex-direction:column;gap:4px;padding:0 18px;border-left:1px solid rgba(231,201,185,.25)}
.fact:first-child{border-left:0;padding-left:0}
.fact b{font-family:var(--serif);font-weight:400;font-size:clamp(22px,2vw,28px);color:#E7C9B9}
.fact span{font-size:13px;line-height:1.4;color:#EFE6E1}
.reassure{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 28px;padding:12px 20px;background:#2A221F;font-size:13px;color:#D9C9C1}
/* Entrées */
.ent-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.ent{display:flex;flex-direction:column;gap:10px;padding:24px 22px;background:#FBF8F5;border:1px solid rgba(143,97,85,.28);border-radius:16px;transition:transform .35s,box-shadow .35s}
.ent:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(59,38,32,.12)}
.ent-q{margin:0;font-family:var(--serif);font-style:italic;font-size:clamp(21px,1.8vw,25px);line-height:1.25;color:var(--profond)}
.ent-t{margin:0;font-size:14.5px;line-height:1.6;color:#5A3328}
.ent-l{margin:auto 0 0;padding-top:8px;font-size:12.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.ent-l a{color:#845749;text-decoration:none}
.ent-l a:hover{text-decoration:underline}
/* Deux façons */
.two-ways{background:#F3EEE9;padding:clamp(44px,5.5vw,72px) 0}
.way-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:1040px;margin:0 auto;text-align:left}
.way{display:flex;flex-direction:column;gap:10px;padding:26px 26px 22px;border-radius:18px;background:#FBF8F5;border:1px solid rgba(143,97,85,.28)}
.way-main{background:#332B27;border-color:#332B27;color:#F4F2EE}
.way-tag{margin:0;font-size:11.5px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#845749}
.way-main .way-tag{color:#C99B8B}
.way h3{margin:0;font-family:var(--serif);font-weight:400;font-size:clamp(26px,2.4vw,32px);color:var(--profond)}
.way-main h3{color:#F7F3EF}
.way p{margin:0;font-size:15px;line-height:1.6;color:#5A3328}
.way-main p{color:#EFE6E1}
.way .way-price{font-family:var(--serif);font-size:19px;color:#845749;margin-top:4px}
.way-main .way-price{color:#E7C9B9}
.way-btns{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:auto;padding-top:10px}
.way-btns .sk-btn{width:auto!important;padding:12px 24px!important}
.way-main .sk-btn{background:#C99B8B!important;border-color:#C99B8B!important;color:var(--profond)!important}
.way-link{font-size:12.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#845749;text-decoration:none}
.way-main .way-link{color:#E7C9B9}
/* Approche */
.pillars{background:var(--blanc);padding:clamp(44px,5.5vw,72px) 0}
.pil-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.pil-grid article{padding:22px 20px;border-top:2px solid #845749;background:#FBF8F5;border-radius:0 0 14px 14px}
.pil-grid h3{margin:0 0 8px;font-family:var(--serif);font-weight:600;font-size:20px;color:var(--profond)}
.pil-grid p{margin:0;font-size:14.5px;line-height:1.6;color:#5A3328}
/* Soins */
.services{background:#F3EEE9;padding:clamp(44px,5.5vw,72px) 0}
.srv-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.srv{display:flex;flex-direction:column;gap:8px;padding:22px;border-radius:16px;background:#FBF8F5;border:1px solid rgba(143,97,85,.25)}
.srv-tag{align-self:flex-start;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#845749;background:rgba(143,97,85,.12);padding:4px 10px;border-radius:999px}
.srv h3{margin:4px 0 0;font-family:var(--serif);font-weight:400;font-size:clamp(21px,1.8vw,24px);color:var(--profond)}
.srv p{margin:0;font-size:14.5px;line-height:1.55;color:#5A3328}
.srv a{margin-top:auto;font-size:12.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#845749;text-decoration:none}
.srv a+a{margin-top:0}
.steps3{background:var(--blanc);padding:clamp(44px,5.5vw,72px) 0}
.h-founder-p{margin:0 0 14px;font-size:15.5px;line-height:1.65;color:#EFE6E1;max-width:36em}
.h-founder-btns{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.h-founder-btns .sk-btn{width:auto!important;padding:12px 24px!important;background:#C99B8B!important;border-color:#C99B8B!important;color:var(--profond)!important}
/* Navigation */
.nav-tel{font-size:13px;font-weight:700;color:inherit;text-decoration:none;letter-spacing:.02em;margin-left:8px}
.float-rdv{position:fixed;right:18px;bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:40;background:#845749;color:#F7F3EF;text-decoration:none;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:13px 20px;border-radius:999px;box-shadow:0 10px 26px rgba(30,18,14,.3)}
.float-rdv:hover{background:#3B2620}
/* Accompagnements spécifiques */
.sit-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}
/* Formulaire */
.rdv-form{max-width:760px;margin:0 auto;display:grid;gap:12px;text-align:left}
.rf-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.rdv-form label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:700;color:var(--profond)}
.rdv-form input,.rdv-form select,.rdv-form textarea{font:inherit;font-weight:400;font-size:15px;padding:11px 12px;border-radius:10px;border:1px solid rgba(59,38,32,.25);background:#FBF8F5;color:var(--profond)}
.rdv-form .rf-ok{flex-direction:row;align-items:flex-start;gap:8px;font-weight:400}
.rdv-form button{justify-self:start;width:auto!important;padding:13px 28px!important}
.rf-note{margin:0;font-size:12.5px;color:#6B5550}
@media (max-width:1000px){.ent-grid,.srv-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pil-grid,.sit-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}.facts-in{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:16px}.fact:nth-child(3){border-left:0;padding-left:0}}
@media (max-width:700px){.ent-grid,.srv-grid,.pil-grid,.way-grid,.rf-row,.sit-grid.four{grid-template-columns:1fr}.nav-tel{display:none}.chips{display:none!important}}

/* Héros centré */
.hero.hero3::after{background:radial-gradient(ellipse 70% 75% at 50% 52%,rgba(28,17,13,.62) 0%,rgba(28,17,13,.4) 55%,rgba(28,17,13,.18) 100%)!important}
.hero.hero3 .hero-inner{justify-self:center!important;align-self:center!important;text-align:center!important;align-items:center!important;padding:clamp(80px,12vh,120px) 24px clamp(40px,7vh,80px)!important}
.hero.hero3 .hero-inner>*{margin-left:auto!important;margin-right:auto!important}
.hero.hero3 .hero-inner p,.hero.hero3 .hero-h1{text-align:center!important}
.hero.hero3 .hero-k{margin:16px auto 0!important}
.hero.hero3 .hero-sub{max-width:34em!important}
.hero.hero3 .chips,.hero.hero3 .hero-ctas{justify-content:center!important}
@media (max-width:620px){.hero.hero3 .hero-ctas{align-items:center!important}}

.pil-tag{margin:-6px 0 22px;text-align:center;font-family:var(--wide);font-size:clamp(11px,1vw,13px);letter-spacing:.18em;text-transform:uppercase;color:#845749}
.top .right a.nav-cta{font-size:13px!important;font-weight:700;letter-spacing:.06em;padding:13px 20px!important;border-radius:999px;box-shadow:0 10px 26px rgba(30,18,14,.3)}


/* Nos soins à l'unité */
.soin-list{display:grid;gap:16px;max-width:1080px;margin:0 auto clamp(24px,3vw,36px);text-align:left}
.soin{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);background:#FBF8F5;border:1px solid rgba(143,97,85,.25);border-radius:18px;overflow:hidden;scroll-margin-top:100px}
.soin:nth-child(even){grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}
.soin:nth-child(even) .soin-img{order:2}
.soin-img{position:relative;min-height:260px;overflow:hidden}
.soin-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.soin-body{padding:clamp(22px,3vw,34px);display:flex;flex-direction:column;gap:12px}
.soin-body h3{margin:0;font-family:var(--serif);font-weight:400;font-size:clamp(26px,2.4vw,34px);color:var(--profond)}
.soin-body p{margin:0;font-size:15px;line-height:1.65;color:#5A3328;max-width:34em}
.soin-rows{list-style:none;margin:4px 0 0;padding:0;border-top:1px solid rgba(59,38,32,.15)}
.soin-rows li{display:grid;grid-template-columns:1fr auto auto;gap:18px;align-items:baseline;padding:10px 0;border-bottom:1px solid rgba(59,38,32,.15);font-size:15px;color:var(--profond)}
.soin-rows li span:nth-child(2){color:#6B5550;font-size:14px}
.soin-rows b{font-family:var(--serif);font-weight:600;font-size:20px;color:#845749;min-width:5.5em;text-align:right}
.soin-btn{align-self:flex-start;width:auto!important;padding:12px 26px!important;margin-top:auto}
.drop ul.menu-soins{min-width:310px}
.menu-soins a{display:flex!important;justify-content:space-between;gap:18px;white-space:nowrap;text-transform:none!important;letter-spacing:0!important;font-size:14.5px!important}
.menu-soins a span{color:#845749;font-weight:700}
.menu-sep{border-top:1px solid rgba(59,38,32,.15);margin-top:4px;padding-top:4px}
@media (max-width:760px){.soin,.soin:nth-child(even){grid-template-columns:1fr}.soin:nth-child(even) .soin-img{order:0}.soin-img{min-height:200px}}

.sk-grid.three-c{grid-template-columns:repeat(3,minmax(0,1fr))!important;max-width:980px;margin:0 auto}
@media (max-width:800px){.sk-grid.three-c{grid-template-columns:1fr!important}}
/* Menu Nos soins raffiné */
.drop ul.menu-soins{min-width:400px!important;padding:14px 10px 10px!important;border-radius:16px;background:#FBF8F5!important;border:1px solid rgba(143,97,85,.22);box-shadow:0 18px 44px rgba(30,18,14,.16)!important}
.menu-soins .ms-h{padding:10px 12px 4px;font-size:10.5px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#845749}
.menu-soins .ms-h:first-child{padding-top:2px}
.menu-soins li a{display:grid!important;grid-template-columns:1fr auto 5.2em;align-items:baseline;gap:14px;padding:8px 12px!important;border-radius:10px;text-decoration:none;color:var(--profond)!important;font-size:15px!important;text-transform:none!important;letter-spacing:0!important;white-space:nowrap;transition:background .2s}
.menu-soins li a:hover{background:rgba(143,97,85,.1)}
.menu-soins .ms-n{font-family:var(--serif);font-size:17px;font-weight:400;color:var(--profond)}
.menu-soins .ms-d{font-weight:400}
.menu-soins .ms-d{font-size:12.5px;color:#8A7670}
.menu-soins b{font-family:var(--serif);font-weight:600;font-size:16px;color:#845749;text-align:right}
.menu-soins .ms-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:8px;padding:12px 12px 4px;border-top:1px solid rgba(59,38,32,.12)}
.menu-soins .ms-foot>a{display:inline!important;padding:0!important;font-size:12px!important;font-weight:800;letter-spacing:.08em!important;text-transform:uppercase!important;color:#845749!important}
.menu-soins .ms-foot>a:hover{background:none;text-decoration:underline}
.menu-soins .ms-foot span{font-size:12.5px;color:#8A7670;white-space:nowrap}
.menu-soins .ms-foot span a{display:inline!important;padding:0!important;font-size:12.5px!important;color:#6B5550!important}
.menu-soins .ms-foot span a:hover{background:none;text-decoration:underline}
.menu-sep{display:none}

/* Audit 3 */
.way-list{list-style:none;margin:4px 0 0;padding:0;display:grid;gap:8px}
.way-list li{font-size:14px;line-height:1.55;color:#EFE6E1;padding-left:14px;border-left:1px solid rgba(231,201,185,.4)}
.way-list b{display:block;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#E7C9B9;margin-bottom:2px}
.offer3{background:#F3EEE9;padding:clamp(44px,5.5vw,72px) 0}
.of-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.of{display:flex;flex-direction:column;gap:8px;padding:24px 22px;border-radius:16px;background:#FBF8F5;border:1px solid rgba(143,97,85,.25);text-decoration:none;color:var(--profond);transition:transform .3s,box-shadow .3s}
.of:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(59,38,32,.1)}
.of h3{margin:0;font-family:var(--serif);font-weight:400;font-size:clamp(22px,2vw,26px)}
.of p{margin:0;font-size:14.5px;line-height:1.55;color:#5A3328}
.of-m{font-family:var(--serif);font-size:17px;color:#845749}
.of-l{margin-top:auto;padding-top:6px;font-size:12.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#845749}
.hero3 .hero-sub{max-width:36em!important}
@media (max-width:860px){.of-grid{grid-template-columns:1fr}}

.facts{padding:0!important}
.facts .reassure{margin:0}
/* Héros : bloc descendu, espacements aérés */
.hero.hero3 .hero-inner{align-self:end!important;padding:clamp(120px,22vh,220px) 24px clamp(48px,9vh,96px)!important}
.hero.hero3 .hero-h1{position:relative;top:32px}
.hero-div{display:block!important;width:48px;height:1px;background:#E7C9B9;margin:26px auto 0!important}
.hero.hero3 .hero-sub{margin-top:24px!important;line-height:1.7}
.hero.hero3 .chips{margin-top:30px!important;gap:10px!important;max-width:820px!important}
.hero.hero3 .chip{font-size:17px;padding:10px 20px}
.hero.hero3 .hero-ctas{margin-top:38px!important;gap:16px!important}

@media (max-width:760px){.hero.hero3 .hero-media img{object-position:60% 55%!important}}
/* Héros dézoomé : bloc compact et centré */
.hero.hero3 .hero-inner{align-self:center!important;padding:clamp(90px,12vh,120px) 24px clamp(40px,6vh,64px)!important}
.hero.hero3 .hero-h1{top:0!important;font-size:clamp(34px,4.2vw,58px)!important}
.hero.hero3 .hero-sub{margin-top:16px!important;font-size:clamp(15px,1.2vw,17px)!important;line-height:1.6}
.hero.hero3 .chips{margin-top:20px!important;gap:8px!important;max-width:760px!important}
.hero.hero3 .chip{font-size:14.5px!important;padding:7px 15px!important}
.hero.hero3 .hero-ctas{margin-top:26px!important}

/* En bref : expertise + offre */
.facts .wrap{padding-top:clamp(28px,3.5vw,44px)}
.facts-lead{margin:0 auto clamp(18px,2.4vw,28px);max-width:40em;text-align:center;font-family:var(--serif);font-weight:300;font-size:clamp(20px,2vw,27px);line-height:1.4;color:#F7F3EF}
.facts-lead b{font-weight:400;font-style:italic;color:#E7C9B9}
.facts .facts-in{padding:0 0 clamp(24px,3vw,36px)!important}
.facts .fact b{font-size:clamp(19px,1.6vw,22px)!important}
.facts .fact span{font-size:14px!important;line-height:1.5}
.facts .reassure{gap:0!important;padding:18px 20px 20px!important;background:transparent!important;border-top:1px solid rgba(231,201,185,.22);font-family:var(--sans);font-size:11px!important;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#E7C9B9!important}
.facts .reassure span{display:inline-flex;align-items:center;padding:4px 20px}
.facts .reassure span+span{border-left:1px solid rgba(231,201,185,.35)}
.facts .reassure span::before{display:none}

/* En bref : typographie de l'identité, plus douce */
.facts-hello{margin:0 0 2px;text-align:center;font-family:'Allura',cursive;font-size:clamp(40px,4vw,56px);line-height:1;color:#E7C9B9}
.facts .facts-lead{font-family:var(--serif)!important;font-weight:300!important;font-size:clamp(24px,2.6vw,36px)!important;line-height:1.3!important;max-width:30em}
.facts .facts-lead b{font-style:italic;font-weight:300!important;color:#E7C9B9}
.facts .fact{text-align:center;align-items:center;padding:0 22px!important}
.facts .fact:first-child{padding-left:22px!important}
.facts .fact b{font-family:var(--serif)!important;font-style:italic;font-weight:300!important;font-size:clamp(24px,2.2vw,30px)!important;color:#F7F3EF!important}
.facts .fact span{font-family:var(--serif)!important;font-size:16.5px!important;line-height:1.5!important;color:#E9DCD5!important}
.facts .reassure{font-family:var(--serif)!important;font-style:italic;font-size:18px!important;font-weight:300!important;letter-spacing:0!important;text-transform:none!important;color:#FBF5F1!important;background:linear-gradient(90deg,#7A4A3B 0%,#8F6155 50%,#7A4A3B 100%)!important;border-top:0!important;padding:22px 20px!important}
.facts .reassure span{padding:2px 28px!important}
.facts .reassure span+span{border-left:0!important}

.facts-brand{margin:6px 0 14px;text-align:center;font-family:var(--wide);font-weight:400;font-size:clamp(30px,3.6vw,50px);letter-spacing:.14em;color:#F7F3EF}

/* En bref v3 : deux colonnes éditoriales */
.facts2{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(28px,5vw,72px);align-items:center;padding-top:clamp(40px,5vw,64px)!important;padding-bottom:clamp(40px,5vw,64px)!important}
.facts2 .facts-hello,.facts2 .facts-brand,.facts2 .facts-lead{text-align:left!important;margin-left:0!important}
.facts2 .facts-brand{margin:4px 0 16px}
.facts2 .facts-lead{font-size:clamp(21px,2vw,27px)!important;max-width:22em}
.f2-grid{display:grid;grid-template-columns:1fr 1fr;gap:0}
.f2{display:flex;flex-direction:column;gap:6px;padding:20px 22px;border-top:1px solid rgba(231,201,185,.25)}
.f2:nth-child(odd){border-right:1px solid rgba(231,201,185,.25)}
.f2:nth-child(-n+2){border-top:0}
.f2-n{font-family:var(--serif);font-size:15px;color:#C99B8B}
.f2 b{font-family:var(--serif);font-style:italic;font-weight:300;font-size:clamp(22px,2vw,27px);color:#F7F3EF}
.f2 span:last-child{font-family:var(--serif);font-size:16px;line-height:1.5;color:#E9DCD5}
@media (max-width:860px){.facts2{grid-template-columns:1fr}.f2-grid{grid-template-columns:1fr}.f2:nth-child(odd){border-right:0}.f2:nth-child(2){border-top:1px solid rgba(231,201,185,.25)}}

/* Univers en images (accueil) */
.marquee.univers{margin:6px 0 clamp(28px,3.5vw,44px)}
.marquee.univers .mq-slide{width:clamp(200px,19vw,270px);border-radius:14px}
.marquee.univers .mq-track{animation-duration:80s}
/* Récit au scroll : mots qui s'éclairent */
.js-anim .sw{opacity:.16;transition:opacity .5s ease}
.js-anim .sw.on{opacity:1}
@media (prefers-reduced-motion:reduce){.js-anim .sw{opacity:1}}

.univ-lead{margin:-4px auto 22px;max-width:36em;text-align:center;font-family:var(--serif);font-style:italic;font-size:clamp(18px,1.6vw,21px);line-height:1.5;color:#5A3328}

/* ===== Accompagnements v3 : comprendre, preuves, programme ===== */
.pp-why{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:16px;margin:8px 0 clamp(28px,3.5vw,44px);text-align:left}
.pp-why>div{background:#FBF8F5;border:1px solid rgba(143,97,85,.22);border-radius:16px;padding:24px 26px}
.pp-why h2{margin:0 0 10px;font-family:var(--serif);font-weight:400;font-size:clamp(24px,2.2vw,30px);color:var(--profond)}
.pp-why p{margin:0;font-family:var(--serif);font-size:17px;line-height:1.7;color:#4A2E26}
.pp-needs{background:rgba(143,97,85,.08)!important}
.pp-needs h3{margin:0 0 10px;font-family:var(--serif);font-style:italic;font-weight:400;font-size:22px;color:#845749}
.pp-needs .sc-list{font-size:15px;margin:0}
.sci-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;text-align:left}
.sci{display:flex;flex-direction:column;gap:12px;padding:22px 24px;border-radius:16px;background:#332B27;color:#F4EEEA}
.sci p{margin:0;font-family:var(--serif);font-size:17px;line-height:1.6}
.sci a{margin-top:auto;font-size:12.5px;letter-spacing:.04em;color:#E7C9B9;text-decoration:none}
.sci a:hover{text-decoration:underline}
.sci-limit{margin:14px auto clamp(28px,3.5vw,44px);max-width:46em;text-align:center;font-family:var(--serif);font-style:italic;font-size:16px;color:#6E3F31}
.pg{list-style:none;margin:0 auto;padding:0;max-width:860px;text-align:left;position:relative}
.pg::before{content:"";position:absolute;left:9px;top:10px;bottom:10px;width:1px;background:rgba(132,87,73,.4)}
.pg li{position:relative;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.4fr);gap:16px;padding:14px 0 14px 40px;border-bottom:1px solid rgba(59,38,32,.1)}
.pg-dot{position:absolute;left:3px;top:20px;width:13px;height:13px;border-radius:50%;background:#845749;box-shadow:0 0 0 4px #F3EEE9}
.pg b{font-family:var(--serif);font-weight:400;font-size:20px;color:var(--profond)}
.pg li>span:last-child{font-size:15px;line-height:1.55;color:#5A3328}
.pp-team{margin:18px auto clamp(28px,3.5vw,44px);max-width:46em;text-align:center;font-family:var(--serif);font-size:17px;color:#845749}
.pp-grid.two-b{grid-template-columns:1fr 1fr}
@media (max-width:820px){.pp-why,.pp-grid.two-b{grid-template-columns:1fr}.pg li{grid-template-columns:1fr;gap:4px}}

/* Menu Accompagnements raffiné */
.drop ul.menu-acc{min-width:270px!important;padding:12px 10px!important;border-radius:16px;background:#FBF8F5!important;border:1px solid rgba(143,97,85,.22);box-shadow:0 18px 44px rgba(30,18,14,.16)!important}
.menu-acc li a{display:block!important;padding:9px 14px!important;border-radius:10px;font-family:var(--serif)!important;font-size:17px!important;text-transform:none!important;letter-spacing:0!important;white-space:nowrap;color:var(--profond)!important;text-decoration:none}
.menu-acc li a:hover{background:rgba(143,97,85,.1)}

/* Accompagnements v4 : offres de l'application */
.pp-limit{margin-top:12px!important;font-style:italic;font-size:15.5px!important;color:#6E3F31!important}
.pp-offers{scroll-margin-top:100px}
.of2-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;text-align:center}
.of2{display:flex;flex-direction:column;align-items:center;gap:8px;padding:24px 20px 20px;border-radius:18px;background:#FBF8F5;border:1px solid rgba(143,97,85,.25)}
.of2-main{background:#332B27;border-color:#332B27;color:#F4EEEA}
.of2-tag{margin:0;font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#845749}
.of2-main .of2-tag{color:#C99B8B}
.of2 h3{margin:0;font-family:var(--serif);font-weight:400;font-size:clamp(24px,2.2vw,30px);color:var(--profond)}
.of2-main h3{color:#F7F3EF}
.of2-meta{margin:0;font-size:14.5px;line-height:1.5;color:#5A3328}
.of2-main .of2-meta{color:#EFE6E1}
.of2-var{margin:0;font-size:13px;color:#6B5550}.of2-var a{color:#845749}
.of2-main .of2-var,.of2-main .of2-var a{color:#E7C9B9}
.of2-price{margin:auto 0 4px;padding-top:8px;font-family:var(--serif);font-weight:600;font-size:26px;color:#845749}
.of2-main .of2-price{color:#E7C9B9}
.of2 .sk-btn{width:auto!important;padding:11px 26px!important}
.pp-grid.one-b{grid-template-columns:1fr!important}
.of2-main .sk-btn{background:#C99B8B!important;border-color:#C99B8B!important;color:var(--profond)!important}

/* Accompagnements : textes « dézoomés » pour voir vite les soins */
.page .carte.pp{padding-top:28px!important}
.page .carte.pp .pp-k{margin-top:0}
.pp .carte-title{font-size:clamp(34px,3.6vw,48px)!important;margin-bottom:8px!important}
.pp .carte-intro{font-size:15.5px!important;max-width:40em;margin-bottom:12px!important}
.pp .pp-ctas{margin:4px 0 22px!important}
.pp .pp-why{gap:12px;margin:0 0 26px!important}
.pp .pp-why>div{padding:18px 20px!important}
.pp .pp-why h2{font-size:21px!important;margin-bottom:6px!important}
.pp .pp-why p{font-size:15px!important;line-height:1.6!important}
.pp .pp-limit{font-size:14px!important}
.pp .pp-needs h3{font-size:18px!important;margin-bottom:6px!important}
.pp .pp-needs .sc-list{font-size:14px!important}
.pp .sk-title{font-size:clamp(26px,2.4vw,34px)!important;margin-bottom:6px!important}
.pp .carte-intro.small{font-size:14px!important}
.pp .of2{padding:18px 16px 16px!important;gap:6px!important}
.pp .of2 h3{font-size:clamp(20px,1.8vw,24px)!important}
.pp .of2-meta{font-size:13.5px!important}
.pp .of2-price{font-size:22px!important}
.pp .pp-b p,.pp .pp-alert p{font-size:14.5px!important}

.menu-two li a small{display:block;margin-top:2px;font-family:var(--sans);font-size:12.5px;color:#8A7670;white-space:normal;max-width:260px}
.drop ul.menu-two{min-width:300px!important}

/* Sous-menus sombres, en majuscules */
.drop ul.menu-acc{background:#3B2620!important;border:1px solid rgba(201,155,139,.25)!important;box-shadow:0 22px 50px rgba(20,12,9,.35)!important;padding:14px 10px!important}
.menu-acc li a{font-family:var(--sans)!important;font-size:12.5px!important;font-weight:600;letter-spacing:.16em!important;text-transform:uppercase!important;color:#F7F3EF!important;padding:11px 16px!important}
.menu-acc li a:hover{background:rgba(201,155,139,.16)!important;color:#E7C9B9!important}
.menu-two li a small{font-size:11.5px!important;font-weight:400;letter-spacing:.02em;text-transform:none;color:#C9B8B0!important;margin-top:4px}

/* Sous-menus : style préféré (fond quasi noir, angles droits, grandes majuscules) */
.drop ul.menu-acc{background:#1F1B19!important;border:0!important;border-radius:0!important;box-shadow:0 18px 40px rgba(0,0,0,.25)!important;padding:18px 0!important;min-width:330px!important}
.menu-acc li a{font-family:var(--sans)!important;font-size:15.5px!important;font-weight:500!important;letter-spacing:.02em!important;line-height:1.45;text-transform:uppercase!important;color:#F7F3EF!important;padding:12px 32px!important;border-radius:0!important;white-space:normal!important}
.menu-acc li a:hover{background:transparent!important;color:#E7C9B9!important}
.menu-two li a small{font-size:12px!important;text-transform:none!important;color:#BFAFA7!important}

/* Sous-menus : Cuivre Poli en transparence, animés */
.drop ul.menu-acc{background:rgba(132,87,73,.82)!important;-webkit-backdrop-filter:blur(14px) saturate(1.1);backdrop-filter:blur(14px) saturate(1.1);border:1px solid rgba(255,255,255,.18)!important;border-radius:14px!important;padding:12px!important;box-shadow:0 20px 44px rgba(30,18,14,.28)!important}
.drop.open ul.menu-acc{animation:lkMenuIn .38s cubic-bezier(.2,.7,.2,1) both}
.drop.open ul.menu-acc li{animation:lkItemIn .4s cubic-bezier(.2,.7,.2,1) both}
.drop.open ul.menu-acc li:nth-child(2){animation-delay:.04s}.drop.open ul.menu-acc li:nth-child(3){animation-delay:.08s}.drop.open ul.menu-acc li:nth-child(4){animation-delay:.12s}.drop.open ul.menu-acc li:nth-child(5){animation-delay:.16s}.drop.open ul.menu-acc li:nth-child(6){animation-delay:.2s}
@keyframes lkMenuIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
@keyframes lkItemIn{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
.menu-acc li a{color:#FBF5F1!important;border-radius:9px!important;padding:12px 22px!important;transition:background .25s,color .25s}
.menu-acc li a:hover,.menu-acc li a:active,.menu-acc li a:focus-visible{background:#FFFFFF!important;color:#845749!important}
.menu-two li a small{color:#F1DFD6!important;transition:color .25s}
.menu-two li a:hover small,.menu-two li a:active small{color:#8A6A5F!important}
@media (prefers-reduced-motion:reduce){.drop.open ul.menu-acc,.drop.open ul.menu-acc li{animation:none}}

/* Sous-menus : angles droits, plus compacts */
.drop ul.menu-acc{border-radius:0!important;padding:6px!important;min-width:250px!important}
.menu-acc li a{border-radius:0!important;font-size:12.5px!important;letter-spacing:.08em!important;padding:9px 16px!important;line-height:1.35}
.drop ul.menu-two{min-width:270px!important}
.menu-two li a small{font-size:11px!important;margin-top:2px!important;white-space:normal!important}
#soins-menu li a{white-space:nowrap!important}

/* Sous-menus : survol élégant (texte brun foncé, trait animé, sans case blanche) */
.menu-acc li a{position:relative;background:transparent!important;transition:color .3s ease,padding-left .35s cubic-bezier(.2,.7,.2,1)!important}
.menu-acc li a::before{content:"";position:absolute;left:16px;top:50%;width:0;height:1.5px;background:#2E1A14;transform:translateY(-50%);transition:width .35s cubic-bezier(.2,.7,.2,1)}
#exp-menu li a::before{top:20px}
.menu-acc li a:hover,.menu-acc li a:active,.menu-acc li a:focus-visible{background:transparent!important;color:#2E1A14!important;padding-left:38px!important}
.menu-acc li a:hover::before,.menu-acc li a:active::before,.menu-acc li a:focus-visible::before{width:14px}
.menu-two li a:hover small,.menu-two li a:active small{color:#3B2620!important}
.menu-acc li a::after{display:none!important}
.menu-acc li a,.menu-acc li a:hover,.menu-acc li a:focus{border:0!important;border-bottom:0!important}

/* 6. FAQ */
.faq{background:var(--cuivre);color:#F4F2EE;padding:var(--pad) 0}
.faq .grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(40px,7vw,120px);align-items:start}
.faq .grid>img{width:100%;aspect-ratio:4/5;object-fit:cover}
.faq h2{font-family:var(--serif);font-weight:300;font-size:var(--h-section);margin:0 0 clamp(32px,4vw,56px)}
.faq details{border-top:1px solid rgba(244,242,238,.45)}
.faq details:last-of-type{border-bottom:1px solid rgba(244,242,238,.45)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;align-items:center;padding:14px 0;font-family:var(--serif);font-weight:300;font-size:clamp(18px,1.6vw,23px);line-height:1.25}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";flex:none;width:12px;height:12px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-4px);transition:transform .2s}
.faq details[open] summary::after{transform:rotate(-135deg) translateY(-2px)}
.faq details p{margin:0 0 16px;max-width:40em;color:#F4EEEA;font-size:15px;line-height:1.55}
@media (max-width:860px){.faq .grid{grid-template-columns:1fr}.faq .grid>img{order:2}}

/* ---------- Pages intérieures ---------- */
section{padding:clamp(48px,7vw,96px) 0}
h1,h2,h3{font-family:var(--serif);font-weight:300;line-height:1.1;margin:0}
.head h1{font-size:var(--h-page);margin-bottom:24px}
section h2{font-size:clamp(32px,3.4vw,48px)}
h3{font-size:24px;font-weight:400}
p{margin:0 0 1em}
.lead{font-family:var(--serif);font-size:clamp(22px,2.2vw,28px);line-height:1.4;font-style:italic;font-weight:300}
.muted{color:var(--muted)}
.stack>*+*{margin-top:22px}
.btn{display:inline-block;font-family:var(--sans);font-size:14px;text-transform:uppercase;letter-spacing:.02em;text-decoration:none;padding:13px 24px;border-radius:999px;background:var(--btn-bg);color:var(--btn-text);border:1px solid var(--btn-bg);cursor:pointer}
.btn.ghost{background:transparent;color:var(--text);border-color:var(--text)}
.btn.small{padding:9px 16px;font-size:12px}
.head{padding:clamp(48px,7vw,96px) 0 clamp(24px,3vw,40px)}
.split{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:clamp(32px,5vw,72px);align-items:start}
.split figure{margin:0}.split img{width:100%;aspect-ratio:3/4;object-fit:cover}
@media (max-width:860px){.split{grid-template-columns:1fr}}
.offers{border-top:1px solid var(--line)}
.offer{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1.4fr) 90px 90px auto;gap:20px;align-items:baseline;padding:20px 0;border-bottom:1px solid var(--line)}
.offer .t{font-family:var(--serif);font-size:24px;font-weight:400}
.offer .d{color:var(--muted)}
.offer .n{white-space:nowrap}
@media (max-width:860px){.offer{grid-template-columns:1fr 1fr;gap:6px 16px}.offer .t,.offer .d{grid-column:1/-1}.offer .btn{justify-self:start}}
.steps{counter-reset:s;list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.steps li{counter-increment:s;border-top:1px solid var(--text);padding-top:16px}
.steps li::before{content:counter(s);font-family:var(--serif);font-size:20px;display:block;margin-bottom:6px}
@media (max-width:860px){.steps{grid-template-columns:1fr}}
.note{background:var(--surface);padding:28px 32px}
.two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(24px,4vw,56px)}
@media (max-width:720px){.two{grid-template-columns:1fr}}
details.prog{border-bottom:1px solid var(--line)}
details.prog:first-of-type{border-top:1px solid var(--line)}
details.prog summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr) auto;gap:24px;align-items:baseline;padding:26px 0}
details.prog summary::-webkit-details-marker{display:none}
details.prog summary .t{font-family:var(--serif);font-size:clamp(28px,3vw,40px);font-weight:300}
details.prog summary .d{color:var(--muted)}
details.prog summary .x{font-size:26px;font-weight:300;transition:transform .2s}
details.prog[open] summary .x{transform:rotate(45deg)}
details.prog .body{padding:0 0 40px}
@media (max-width:720px){details.prog summary{grid-template-columns:1fr auto}details.prog summary .d{grid-column:1/-1;order:3}}
.band{background:var(--profond);color:#F4F2EE}
.table-wrap{overflow-x:auto;margin:20px 0 48px}
table{width:100%;border-collapse:collapse;min-width:620px}
th,td{text-align:left;padding:14px 16px 14px 0;border-bottom:1px solid var(--line);vertical-align:baseline}
th{font-size:13px;font-weight:400;text-transform:uppercase;color:var(--muted)}
td.price{white-space:nowrap;font-weight:600}
td.old{color:var(--muted);text-decoration:line-through;white-space:nowrap}
.articles{list-style:none;padding:0;margin:32px 0 0;border-top:1px solid var(--line)}
.articles li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:baseline;padding:22px 0;border-bottom:1px solid var(--line)}
.articles .t{font-family:var(--serif);font-size:clamp(22px,2.2vw,28px)}
.plan{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}
.plan div{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:14px;min-height:150px}
.plan b{display:block;font-family:var(--serif);font-weight:400;font-size:20px;margin-bottom:10px}
.plan span{display:block;font-size:14px;margin-bottom:8px}
.plan .c{background:var(--surface);padding:6px 8px}
.plan .closed{color:var(--muted)}
@media (max-width:860px){.plan{grid-template-columns:1fr}.plan div{min-height:auto}}

/* ---------- Pied de page ---------- */
footer{background:var(--profond);color:#E9DED8;padding:var(--pad) 0 calc(20px + env(safe-area-inset-bottom,0px));overflow:hidden}
footer .news{max-width:760px;margin:0 auto;padding-bottom:clamp(8px,1.5vw,16px)}
footer .links-row{display:flex;justify-content:space-between;gap:32px;padding-top:clamp(12px,2vw,24px);flex-wrap:wrap}
footer ul{list-style:none;margin:0;padding:0}
footer li a{text-transform:uppercase;text-decoration:none;font-size:15px;line-height:1.75}
footer li a:hover{text-decoration:underline}
footer .right-col{text-align:right}
footer .news{text-align:center}
footer .news h2{font-family:var(--serif);font-weight:300;font-size:clamp(34px,3.6vw,52px);margin:0 0 12px;color:#F4F2EE}
footer form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;margin-top:22px;text-align:left}
footer textarea{grid-column:1/-1;font-family:var(--serif);font-size:19px;background:#55362E;color:#F4F2EE;border:0;padding:14px 18px;resize:vertical;min-height:120px}
footer textarea::placeholder{color:#D9A898}
footer form button{grid-column:1/-1;justify-self:center}
footer input{font-family:var(--serif);font-size:19px;background:#55362E;color:#F4F2EE;border:0;padding:14px 18px;min-width:0}
footer input::placeholder{color:#D9A898}
footer form button{font-family:var(--sans);text-transform:uppercase;font-size:15px;background:transparent;color:#E9B8A8;border:1px solid #E9B8A8;border-radius:999px;padding:12px 28px;cursor:pointer}
footer .msg{min-height:1.6em;margin-top:10px;font-size:15px;color:#E9B8A8}
footer .word{font-family:var(--wide);font-weight:500;color:var(--pierre);font-size:min(9.4vw,138px);line-height:.9;letter-spacing:-.01em;white-space:nowrap;text-align:center;margin-top:clamp(64px,10vw,160px)}
footer .copy{font-family:var(--serif);font-size:16px;color:#CDBFB8;margin-top:12px}
@media (max-width:860px){footer form{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}

/* Découpage en pages : contenu invisible le temps que site.js prépare les animations (aucun effet sur la mise en page) */
.lk-attente main{visibility:hidden}
/* Étape 17 : titre de page lu par les moteurs et les lecteurs d'écran, invisible (page Le studio, sans h1 visible) */
.lk-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Étape 16 bis : grilles de cartes (scripts/site/carte-site.mjs) : toutes visibles, même largeur, même hauteur par
   ligne, boutons alignés en bas, ligne incomplète centrée ; 1 colonne sur téléphone, 2 au plus sur tablette, 3 au plus */
.lk-grille{display:flex;flex-wrap:wrap;justify-content:center;gap:16px;padding:6px 0 14px}
.lk-grille>.sk{box-sizing:border-box;width:100%;max-width:420px;margin:0;display:flex;flex-direction:column}
.lk-grille>.sk .sk-buy{margin-top:auto}
/* la grille ne peut contenir que le nombre de colonnes voulu (sinon des cartes plafonnées à 352 px s'ajouteraient) */
@media (min-width:640px){.lk-grille{max-width:calc(var(--c2) * 352px + (var(--c2) - 1) * 16px);margin-inline:auto}.lk-grille>.sk{width:calc((100% - (var(--c2) - 1) * 16px) / var(--c2));max-width:352px}}
@media (min-width:1024px){.lk-grille{max-width:calc(var(--c3) * 352px + (var(--c3) - 1) * 16px)}.lk-grille>.sk{width:calc((100% - (var(--c3) - 1) * 16px) / var(--c3))}}
/* Étape 16 bis : bandeau fin du bilan offert, sous les cartes ; une ligne sur ordinateur, deux au plus sur téléphone */
.lk-bandeau-bilan{margin:28px calc(-1 * clamp(20px,3vw,40px)) 0;padding:12px clamp(20px,3vw,40px);background:rgba(231,201,185,.45);text-align:center;font-size:13.6px;line-height:1.4;color:#3B2620}
.lk-bandeau-bilan a{display:inline-block;margin:-8px 0;padding:8px 0;white-space:nowrap;font-weight:700;color:#7E5246;text-decoration:underline;text-underline-offset:3px}
@media (min-width:640px){.lk-bandeau-bilan{width:fit-content;max-width:100%;margin:32px auto 0;padding:12px 24px;border-radius:999px;font-size:14.4px}}
/* Étape 14 : carte du bilan compacte, détail dans un repli accessible (scripts/site/retouches-v2.mjs) */
.lk-bilan .lk-bilan-pastille{align-self:flex-start;background:rgba(247,243,239,.14);color:#F7F3EF}
.lk-bilan .lk-bilan-pastille svg{width:14px;height:14px}
.lk-bilan .way-btns{margin-top:0}
.lk-repli{align-self:flex-start;min-height:44px;padding:0;background:none;border:0;font:inherit;font-size:12.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#E7C9B9;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.lk-repli::after{content:"";display:inline-block;width:7px;height:7px;margin-left:8px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-3px) rotate(45deg);transition:transform .2s}
.lk-repli[aria-expanded="true"]::after{transform:translateY(1px) rotate(-135deg)}
.lk-repli:focus-visible{outline:2px solid #E7C9B9;outline-offset:3px}
.lk-repli-contenu p,.lk-repli-contenu li{color:inherit}
.lk-repli-contenu p{margin-top:10px;font-size:14px}

/* Étape 14 : pages légales générées (scripts/site/pages-legales.mjs) */
.lk-legal{margin-top:8px}
.lk-legal h2{font-family:var(--serif);font-weight:400;font-size:clamp(22px,2vw,26px);color:#845749;margin:28px 0 8px}
.lk-legal p,.lk-legal li{font-size:15.5px;line-height:1.65;margin:0 0 10px}
.lk-legal ul{padding-left:20px;margin:0 0 10px}
.lk-legal a:not(.btn){color:inherit;text-decoration:underline;text-underline-offset:3px}
.lk-legal .btn{margin-top:6px}
