/* Polices hébergées sur le site (OFL) — 20/09/2026 */
/* Cormorant Garamond italic latin-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/cormorant-garamond-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;
}
/* Cormorant Garamond italic latin */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/cormorant-garamond-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;
}
/* Cormorant Garamond italic latin-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(../fonts/cormorant-garamond-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;
}
/* Cormorant Garamond italic latin */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(../fonts/cormorant-garamond-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;
}
/* Cormorant Garamond normal latin-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/cormorant-garamond-normal-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;
}
/* Cormorant Garamond normal latin */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/cormorant-garamond-normal-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;
}
/* Cormorant Garamond normal latin-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(../fonts/cormorant-garamond-normal-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;
}
/* Cormorant Garamond normal latin */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(../fonts/cormorant-garamond-normal-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;
}
/* Cormorant Garamond normal latin-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(../fonts/cormorant-garamond-normal-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;
}
/* Cormorant Garamond normal latin */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(../fonts/cormorant-garamond-normal-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;
}
/* Figtree normal latin-ext */
@font-face {
  font-family: 'Figtree';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(../fonts/figtree-normal-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;
}
/* Figtree normal latin */
@font-face {
  font-family: 'Figtree';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(../fonts/figtree-normal-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;
}
/* Figtree normal latin-ext */
@font-face {
  font-family: 'Figtree';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/figtree-normal-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;
}
/* Figtree normal latin */
@font-face {
  font-family: 'Figtree';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/figtree-normal-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;
}
/* Figtree normal latin-ext */
@font-face {
  font-family: 'Figtree';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(../fonts/figtree-normal-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;
}
/* Figtree normal latin */
@font-face {
  font-family: 'Figtree';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(../fonts/figtree-normal-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;
}
/* Figtree normal latin-ext */
@font-face {
  font-family: 'Figtree';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(../fonts/figtree-normal-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;
}
/* Figtree normal latin */
@font-face {
  font-family: 'Figtree';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(../fonts/figtree-normal-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{
  --ivoire:#F7F6F1;--lin:#EFEDE5;--menthe:#B5CBA8;--menthe-pale:#E4ECDD;--menthe-2:#CFDDC5;--sauge:#2F5D50;--sauge-sombre:#1E403A;
  --encre:#1F2A26;--encre-2:#5A6B65;--ligne:#DDE1DB;--or:#C9A961;--blanc:#FFFFFF;
  --display:"Cormorant Garamond",Georgia,"Times New Roman",serif;--body:"Figtree","Helvetica Neue",Arial,sans-serif;
  --r:8px;--gutter:clamp(16px,5vw,64px);color-scheme:light;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ivoire);color:var(--encre);font-family:var(--body);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit}
h1,h2,h3{font-family:var(--display);font-weight:500;line-height:1.08;margin:0;text-wrap:balance}
h1{font-size:clamp(40px,5.6vw,68px);letter-spacing:-.005em}
h2{font-size:clamp(32px,4vw,50px)}
h3{font-size:26px}
p{margin:0}
em{font-style:italic;color:var(--sauge)}
.eyebrow{font-size:12.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--sauge);font-weight:600}
.muted{color:var(--encre-2)}
.wrap{max-width:1180px;margin:0 auto;padding-inline:var(--gutter)}
.narrow{max-width:860px}
section{padding-block:clamp(64px,8vw,112px)}
section.minor{padding-block:clamp(48px,6vw,80px)}
section.minor h2{font-size:clamp(26px,2.8vw,36px)}
section.key{padding-block:clamp(72px,10vw,136px)}
.sec-head{display:grid;gap:14px;max-width:62ch;margin-bottom:clamp(32px,5vw,52px)}
.sec-head p{font-size:18px;color:var(--encre-2)}
.btn{display:inline-flex;align-items:center;gap:10px;background:var(--sauge);color:#fff;border-radius:999px;padding:15px 26px;font-size:15px;font-weight:500;text-decoration:none;border:1px solid var(--sauge);transition:background .2s,transform .2s;cursor:pointer;font-family:var(--body)}
.btn:hover{background:var(--sauge-sombre);transform:translateY(-1px)}
.btn.ghost{background:transparent;color:var(--sauge)}
.btn.ghost:hover{background:var(--menthe-pale)}
.btn.light{background:var(--ivoire);color:var(--sauge-sombre);border-color:var(--ivoire)}
.btn.light:hover{background:#fff}
.btn svg{width:16px;height:16px}
:where(a,button,summary,input,select,textarea):focus-visible{outline:2px solid var(--sauge);outline-offset:3px}

/* nav */
.nav{position:sticky;top:0;z-index:20;background:rgba(247,246,241,.88);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid transparent;transition:border-color .2s}
.nav.scrolled{border-bottom-color:var(--ligne)}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:14px}
.nav .wrap>nav{margin-left:auto;margin-right:6px}
.logo{font-family:var(--display);font-size:24px;font-weight:600;text-decoration:none;letter-spacing:.005em;display:flex;align-items:baseline;gap:8px;white-space:nowrap}
.logo span{font-weight:400;color:var(--sauge);font-style:italic;font-size:20px}
.menu{list-style:none;display:flex;gap:22px;margin:0;padding:0;font-size:14.5px;align-items:center}
.menu a{white-space:nowrap}
.menu a{text-decoration:none;color:var(--encre-2);transition:color .15s;padding-block:6px}
.menu a:hover,.menu a[aria-current="page"]{color:var(--sauge)}
.menu a[aria-current="page"]{border-bottom:1px solid var(--sauge)}
.has-sub{position:relative}
.has-sub>a::after{content:"";display:inline-block;width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-3px);margin-left:8px}
.sub{position:absolute;top:100%;left:-14px;background:var(--blanc);border:1px solid var(--ligne);border-radius:10px;padding:8px;min-width:250px;display:grid;box-shadow:0 24px 40px -28px rgba(31,42,38,.45);opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .2s,transform .2s,visibility .2s;list-style:none;margin:0}
.has-sub:hover .sub,.has-sub:focus-within .sub{opacity:1;visibility:visible;transform:none}
  .sub a{display:block;padding:12px;border-radius:6px;color:var(--encre)}
.sub a:hover{background:var(--menthe-pale);color:var(--sauge-sombre)}
.sub a[aria-current="page"]{border:0;background:var(--menthe-pale)}
.nav .btn{padding:11px 20px;font-size:14px}
.burger{display:none;background:none;border:0;padding:8px;cursor:pointer;color:var(--encre)}
.burger svg{width:26px;height:26px;display:block}
.mnav{display:none}
@media (max-width:980px){
  .menu{display:none}.burger{display:block}
  .logo{font-size:20px}.logo span{font-size:15px}.nav .btn{padding:9px 14px;font-size:13px}
  .mnav{display:none;position:fixed;inset:0;z-index:30;background:var(--ivoire);padding:24px var(--gutter);overflow:auto}
  .mnav.open{display:block}
  .mnav .top{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}
  .mnav ul{list-style:none;margin:0;padding:0;display:grid;gap:4px}
  .mnav li a{display:block;padding:12px 0;font-family:var(--display);font-size:28px;text-decoration:none;border-bottom:1px solid var(--ligne)}
  .mnav li.small a{font-family:var(--body);font-size:16px;padding:10px 0 10px 18px;color:var(--encre-2);border:0}
  .mnav .btn{margin-top:20px;width:100%;justify-content:center}
}

/* page hero (inner pages) */
.phero{padding-block:clamp(32px,5vw,72px) clamp(48px,6vw,88px)}
.phero .wrap{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(32px,5vw,72px);align-items:center}
.phero h1{margin-top:16px}
.phero .lede{margin-top:20px;font-size:19px;color:var(--encre-2);max-width:48ch}
.phero .cta{margin-top:30px;display:flex;gap:12px;flex-wrap:wrap}
.crumb{font-size:13px;color:var(--encre-2);display:flex;gap:8px;flex-wrap:wrap}
.crumb a{text-decoration:none}
.crumb a:hover{color:var(--sauge)}
.arche{position:relative;justify-self:center;width:min(100%,420px);aspect-ratio:4/5;border-radius:210px 210px 18px 18px;overflow:hidden;background:var(--menthe-pale)}
.arche img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.arche::after{content:"";position:absolute;inset:0;background:linear-gradient(170deg,rgba(227,241,235,.35),rgba(181,203,168,.3));mix-blend-mode:multiply}
.arche.sq{border-radius:18px;aspect-ratio:1}
.arche.person::after{background:linear-gradient(175deg,rgba(227,241,235,.16),rgba(181,203,168,.12))}
.visual::before{content:"";position:absolute;left:-10%;top:-6%;width:56%;aspect-ratio:1;border:1px solid rgba(47,93,80,.18);border-radius:50%;pointer-events:none}
.visual::after{content:"";position:absolute;right:-7%;bottom:6%;width:34%;aspect-ratio:1;border:1px solid rgba(201,169,97,.35);border-radius:50%;pointer-events:none}
.photo-wide{border-radius:var(--r);overflow:hidden;aspect-ratio:16/9;background:var(--lin)}
.photo-wide img{width:100%;height:100%;object-fit:cover}
@media (max-width:900px){.phero .wrap{grid-template-columns:1fr}.arche{width:min(100%,340px)}}

/* home hero */
.hero{padding-block:clamp(40px,6vw,88px) clamp(56px,7vw,96px)}
.hero .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(32px,5vw,72px);align-items:center}
.hero h1{margin-top:18px;font-size:clamp(42px,6.2vw,76px)}
.hero .lede{margin-top:22px;font-size:19px;color:var(--encre-2);max-width:46ch}
.hero .cta{margin-top:32px;display:flex;gap:12px;flex-wrap:wrap}
.trust{margin-top:40px;display:flex;flex-wrap:wrap;gap:10px 28px;font-size:14px;color:var(--encre-2)}
.trust span{display:inline-flex;align-items:center;gap:8px}
.trust i{width:6px;height:6px;border-radius:50%;background:var(--or);flex:none}
.visual{position:relative;justify-self:center;width:min(100%,460px);aspect-ratio:4/5}
.visual .arche{position:absolute;inset:0;width:auto;border-radius:230px 230px 18px 18px}
.visual canvas{position:absolute;inset:0;width:100%;height:100%;z-index:2;opacity:.5;mix-blend-mode:multiply}
.float{position:absolute;left:-8%;bottom:9%;background:var(--blanc);border:1px solid var(--ligne);border-radius:14px;padding:14px 16px;box-shadow:0 24px 44px -28px rgba(31,42,38,.45);display:grid;gap:6px;min-width:210px;z-index:3}
.float small{font-size:12.5px;color:var(--encre-2);letter-spacing:.08em;text-transform:uppercase}
.float b{font-family:var(--display);font-size:22px;font-weight:500}
.float .slots{display:flex;gap:6px;flex-wrap:wrap}
.float .slots a{color:var(--encre);text-decoration:none;transition:border-color .2s,background .2s;font-size:12px;border:1px solid var(--ligne);border-radius:6px;padding:3px 8px;background:var(--ivoire)}
.float .slots a:hover,.float .slots a:focus-visible{border-color:var(--sauge);background:var(--menthe-pale)}
.float .slots a.on{background:var(--menthe-pale);border-color:var(--menthe)}
@media (max-width:900px){.hero .wrap{grid-template-columns:1fr}.visual{width:min(100%,360px);margin-top:12px}.float{left:0}.visual::before,.visual::after{display:none}}

/* bulles */
.pourqui{background:var(--blanc);border-top:1px solid var(--ligne);border-bottom:1px solid var(--ligne)}
.bulles{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(14px,2vw,26px)}
.bulle{position:relative;aspect-ratio:1;border-radius:50%;overflow:hidden;background:var(--sauge-sombre);display:grid;align-content:end;justify-items:center;text-align:center;padding:14% 13% 17%;gap:6px;text-decoration:none;color:#fff;isolation:isolate;transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s}
.bulle img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.bulle::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(30,64,58,0) 28%,rgba(30,64,58,.55) 62%,rgba(30,64,58,.88) 100%)}
.bulle::before{content:"";position:absolute;inset:5%;border-radius:50%;border:1px solid rgba(255,255,255,.35);z-index:0;transition:inset .45s,border-color .45s}
.bulle:hover,.bulle:focus-visible{transform:translateY(-6px);box-shadow:0 34px 50px -34px rgba(31,42,38,.6)}
.bulle:hover img{transform:scale(1.07)}
.bulle:hover::before{inset:3.5%;border-color:rgba(255,255,255,.6)}
.bulle b{font-family:var(--display);font-size:clamp(20px,2.2vw,28px);font-weight:500;line-height:1.1;text-shadow:0 1px 12px rgba(0,0,0,.25)}
.bulle small{font-size:13px;line-height:1.35;color:rgba(255,255,255,.82)}
.bulle .go{font-size:12px;color:var(--menthe);letter-spacing:.12em;text-transform:uppercase;opacity:0;transform:translateY(4px);transition:opacity .3s,transform .3s;margin-top:2px}
.bulle:hover .go{opacity:1;transform:none}
@media (max-width:1000px){.bulles{grid-template-columns:1fr 1fr;gap:20px}.bulle{padding:16% 15% 18%}.bulle b{font-size:26px}.bulle small{font-size:14px}}
@media (max-width:560px){.bulle{padding:14% 12% 15%;gap:4px}.bulle b{font-size:20px}.bulle small{font-size:12.5px;line-height:1.35}.bulle .go{display:none}}

/* two-col text */
.two .wrap{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,6vw,96px);align-items:start}
.big{font-family:var(--display);font-size:clamp(26px,3vw,36px);line-height:1.3;font-weight:400}
.checks{list-style:none;padding:0;margin:26px 0 0;display:grid;gap:14px}
.checks li{display:grid;grid-template-columns:22px 1fr;gap:12px;color:var(--encre-2);font-size:16px}
.checks li::before{content:"";width:22px;height:22px;border-radius:50%;border:1.5px solid var(--sauge);background:radial-gradient(circle,var(--sauge) 0 3px,transparent 3.5px);margin-top:2px}
.pasca{margin-top:34px;padding:22px 24px;background:var(--menthe-pale);border-radius:var(--r);font-size:15px;color:var(--sauge-sombre)}
.pasca b{font-weight:600}
@media (max-width:800px){.two .wrap{grid-template-columns:1fr}}

/* steps */
.seance{background:var(--sauge-sombre);color:var(--ivoire)}
.seance .eyebrow{color:var(--menthe)}
.seance .sec-head p{color:rgba(247,246,241,.72)}
.steps{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.14)}
.step{padding:30px 26px 34px;display:grid;gap:10px;align-content:start;border-right:1px solid rgba(255,255,255,.14)}
.step:first-child{padding-left:0}.step:last-child{border-right:0}
.step i{font-style:normal;font-family:var(--display);font-size:15px;color:var(--or);letter-spacing:.1em}
.step b{font-family:var(--display);font-size:26px;font-weight:500;line-height:1.15}
.step p{font-size:15px;color:rgba(247,246,241,.72)}
.step small{font-size:12px;color:var(--menthe);letter-spacing:.08em;text-transform:uppercase}
.seance .more{margin-top:36px}
@media (max-width:800px){.steps{grid-template-columns:1fr 1fr}.step{border-right:0;border-bottom:1px solid rgba(255,255,255,.14);padding-left:0}}

/* qui suis-je block */
.qui .wrap{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(32px,6vw,96px);align-items:center}
.portrait{position:relative;aspect-ratio:4/5;border-radius:var(--r);overflow:hidden;background:var(--lin)}
.portrait img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.portrait .tag{position:absolute;top:18px;left:18px;background:var(--blanc);border-radius:999px;padding:6px 12px;font-size:12px;color:var(--sauge);z-index:1}
.qui .text{display:grid;gap:18px}
.qui .text p{color:var(--encre-2)}
.creds{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:10px}
.cred{border-top:1px solid var(--or);padding-top:12px;display:grid;gap:4px}
.cred b{font-family:var(--display);font-size:22px;font-weight:500;line-height:1.1}
.cred small{font-size:13px;color:var(--encre-2)}
@media (max-width:800px){.qui .wrap{grid-template-columns:1fr}.portrait{max-width:380px}.creds{grid-template-columns:1fr}}

/* cards */
.presta{background:var(--blanc);border-top:1px solid var(--ligne);border-bottom:1px solid var(--ligne)}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.card{border:1px solid var(--ligne);border-radius:var(--r);padding:30px 28px;display:grid;gap:14px;align-content:start;background:var(--ivoire);transition:transform .3s,box-shadow .3s}
.card:hover{transform:translateY(-4px);box-shadow:0 30px 50px -36px rgba(31,42,38,.4)}
.card.feat{background:var(--menthe-pale);border-color:var(--menthe)}
.card .who{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--sauge)}
.card h3{font-size:28px}
.card .dur{font-size:14px;color:var(--encre-2)}
.card p{font-size:15px;color:var(--encre-2)}
.card .prix{display:flex;align-items:baseline;gap:8px;margin-top:6px}
.card .prix b{font-family:var(--display);font-size:34px;font-weight:500}
.card .prix small{font-size:12px;color:var(--encre-2)}
.card .btn{justify-self:start;margin-top:4px}
@media (max-width:900px){.cards{grid-template-columns:1fr}}

/* quotes */
.quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.quote{display:grid;gap:16px;padding:28px;border-left:1px solid var(--or)}
.quote p{font-family:var(--display);font-size:24px;line-height:1.3;font-style:italic;color:var(--sauge-sombre)}
.quote small{font-size:14px;color:var(--encre-2)}
.exemple{display:inline-block;margin-top:24px;font-size:12px;color:var(--encre-2);background:var(--lin);border-radius:6px;padding:6px 10px}
@media (max-width:900px){.quotes{grid-template-columns:1fr}}

/* faq */
.faq{background:var(--blanc);border-top:1px solid var(--ligne)}
.faq .wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(32px,6vw,96px);align-items:start}
.faq details{border-bottom:1px solid var(--ligne)}
.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 0;font-family:var(--display);font-size:24px;font-weight:500}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-family:var(--body);color:var(--sauge);font-size:22px;flex:none;transition:transform .25s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{padding:0 0 22px;color:var(--encre-2);max-width:60ch}
@media (max-width:800px){.faq .wrap{grid-template-columns:1fr}}

/* posts */
.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.post{display:grid;gap:12px;text-decoration:none;color:inherit;align-content:start}
.post .img{aspect-ratio:4/3;border-radius:var(--r);overflow:hidden;background:var(--menthe-pale)}
.post .img img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.post:hover .img img{transform:scale(1.04)}
.post small{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--sauge)}
.post b{font-family:var(--display);font-size:24px;font-weight:500;line-height:1.2}
.post p{font-size:15px;color:var(--encre-2)}
@media (max-width:900px){.posts{grid-template-columns:1fr}}

/* prose (inner pages, articles) */
.prose{max-width:68ch}
.prose h2{font-size:clamp(28px,3.4vw,40px);margin:48px 0 16px}
.prose h3{font-size:24px;margin:32px 0 10px}
.prose p{margin:0 0 18px;color:var(--encre-2)}
.prose p.lead{font-size:20px;color:var(--encre);font-family:var(--display);line-height:1.4}
.prose ul{margin:0 0 18px;padding-left:22px;color:var(--encre-2)}
.prose li{margin-bottom:8px}
.prose blockquote{margin:28px 0;padding:22px 26px;border-left:1px solid var(--or);font-family:var(--display);font-size:24px;font-style:italic;line-height:1.35;color:var(--sauge-sombre)}
.prose .note{padding:18px 22px;background:var(--menthe-pale);border-radius:var(--r);font-size:15px;color:var(--sauge-sombre);margin:24px 0}
.prose a{color:var(--sauge)}

/* situations grid */
.situ{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.situ article{background:var(--blanc);border:1px solid var(--ligne);border-radius:var(--r);padding:24px;display:grid;gap:8px}
.situ article b{font-family:var(--display);font-size:22px;font-weight:500}
.situ article p{font-size:15px;color:var(--encre-2)}
@media (max-width:700px){.situ{grid-template-columns:1fr}}

/* apports */
.apports{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.apport{padding:26px;background:var(--menthe-pale);border-radius:var(--r);display:grid;gap:10px}
.apport i{width:34px;height:34px;border-radius:50%;background:var(--sauge);display:grid;place-items:center;color:#fff;font-style:normal;font-family:var(--display);font-size:18px}
.apport b{font-family:var(--display);font-size:24px;font-weight:500;color:var(--sauge-sombre)}
.apport p{font-size:15px;color:var(--encre-2)}
@media (max-width:800px){.apports{grid-template-columns:1fr}}

/* cta band */
.band{background:var(--sauge-sombre);color:var(--ivoire);padding-block:64px}
.band .wrap{display:grid;grid-template-columns:1.3fr auto;gap:28px;align-items:center}
.band h2{font-size:clamp(30px,3.6vw,44px)}
.band p{color:rgba(247,246,241,.72);margin-top:10px;max-width:50ch}
@media (max-width:800px){.band .wrap{grid-template-columns:1fr}}
.band.soft{background:var(--menthe-pale);color:var(--encre)}
.band.soft p{color:var(--encre-2)}

/* rdv */
.rdv{background:var(--menthe-pale)}
.rdv .wrap{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(32px,6vw,80px);align-items:start}
.rdv .info{display:grid;gap:20px}
.rdv .info p{color:var(--encre-2)}
.adr{display:grid;gap:6px;font-size:15px;padding-top:18px;border-top:1px solid rgba(47,93,80,.2)}
.adr b{font-weight:500}
.book{background:var(--blanc);border-radius:14px;padding:clamp(20px,3vw,34px);display:grid;gap:22px;box-shadow:0 40px 70px -50px rgba(31,42,38,.45)}
.book h3{font-size:28px}
.days{display:grid;grid-template-columns:repeat(6,1fr);gap:6px}
.day{color:var(--encre);border:1px solid var(--ligne);border-radius:10px;padding:12px 4px;min-height:72px;align-content:center;text-align:center;display:grid;gap:2px;cursor:pointer;background:var(--ivoire);font-family:var(--body);transition:border-color .2s,background .2s}
.day small{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--encre-2)}
.day b{font-family:var(--display);font-size:22px;font-weight:500}
.day[aria-pressed="true"]{background:var(--sauge);color:#fff;border-color:var(--sauge)}
.day[aria-pressed="true"] small{color:rgba(255,255,255,.75)}
.hours{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.hour{color:var(--encre);border:1px solid var(--ligne);border-radius:999px;padding:12px 18px;min-height:44px;display:inline-flex;align-items:center;font-size:14px;background:var(--ivoire);cursor:pointer;font-family:var(--body);transition:background .2s,border-color .2s}
.hour:hover,.day:hover{border-color:var(--sauge)}
.hour[aria-pressed="true"]{background:var(--sauge);color:#fff;border-color:var(--sauge)}
.form{display:grid;gap:12px}
.form .row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.form label{display:grid;gap:6px;font-size:13px;color:var(--encre-2)}
.form input,.form select,.form textarea{font:inherit;font-size:15px;padding:12px 14px;border:1px solid var(--ligne);border-radius:10px;background:var(--ivoire);color:var(--encre);width:100%}
.form textarea{min-height:80px;resize:vertical}
.book .btn{justify-self:stretch;justify-content:center}
.book .note{font-size:13px;color:var(--encre-2);text-align:center}
.done{display:grid;gap:12px;text-align:center;padding:30px 10px}
.done .check{width:56px;height:56px;border-radius:50%;background:var(--menthe-pale);display:grid;place-items:center;margin:0 auto;color:var(--sauge)}
.done b{font-family:var(--display);font-size:30px;font-weight:500}
.done p{color:var(--encre-2)}
.map{aspect-ratio:16/9;border-radius:var(--r);background:linear-gradient(135deg,var(--lin),var(--menthe-2));display:grid;place-items:center;color:var(--sauge-sombre);font-size:14px;margin-top:20px}
@media (max-width:900px){.rdv .wrap{grid-template-columns:1fr}.form .row{grid-template-columns:1fr}.days{grid-template-columns:repeat(3,1fr)}}

/* legal */
.legal .prose h2{font-size:26px;margin-top:36px}

/* footer */
footer{background:var(--sauge-sombre);color:rgba(247,246,241,.8);padding-block:56px 40px;font-size:14px}
footer .wrap{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:32px}
footer .logo{color:#fff}footer .logo span{color:var(--menthe)}
footer p{margin-top:12px;max-width:34ch;color:rgba(247,246,241,.65)}
footer h4{margin:0 0 12px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--menthe);font-weight:600}
footer ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
footer a{color:inherit;text-decoration:none}
footer a:hover{color:#fff}
footer .bottom{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.14);padding-top:20px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:12px;color:rgba(247,246,241,.74)}
@media (max-width:800px){footer .wrap{grid-template-columns:1fr 1fr}}
@media (max-width:500px){footer .wrap{grid-template-columns:1fr}}

/* sticky mobile CTA */
.mcta{position:fixed;left:0;right:0;bottom:0;padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px));background:rgba(247,246,241,.92);backdrop-filter:blur(10px);border-top:1px solid var(--ligne);display:none;z-index:25}
.mcta .btn{width:100%;justify-content:center}
@media (max-width:760px){section{padding-block:56px}section.key{padding-block:64px}section.minor{padding-block:44px}.mcta{display:block}body{padding-bottom:76px}.nav .wrap>.btn{display:none}}

/* reveal */
.rv{opacity:1;transform:none;transition:opacity .7s ease,transform .7s cubic-bezier(.2,.8,.2,1)}
.js .rv:not(.in){opacity:0;transform:translateY(18px)}
@media (prefers-reduced-motion:reduce){.js .rv:not(.in){opacity:1;transform:none}.rv,.bulle,.card,.btn,.post .img img{transition:none}}

/* lien d'évitement */
.skip{position:absolute;left:-9999px;top:0;z-index:50;background:var(--sauge);color:#fff;padding:12px 18px;border-radius:0 0 8px 0;font-size:14px;text-decoration:none}
.skip:focus{left:0}
/* message d'erreur de formulaire */
.form-error{background:#FBF4E4;border:1px solid #DCC48C;color:#6B5320;border-radius:10px;padding:12px 14px;font-size:14px}
.form input[aria-invalid="true"],.form textarea[aria-invalid="true"]{border-color:#C9A961;background:#FDFAF2}
/* page 404 */
.err{min-height:52vh;display:grid;align-content:center;justify-items:start;gap:18px}

/* ── illustrations au trait ─────────────────────────────── */
.ico{width:34px;height:34px;color:var(--sauge);flex:none}
.apport .ico{margin-bottom:2px}
.ico-mini{width:16px;height:16px;color:var(--sauge);display:inline-block;vertical-align:-3px;margin-right:6px}
.apport i.croix{width:34px;height:34px;border-radius:50%;background:var(--sauge);display:grid;place-items:center;color:#fff;font-style:normal;font-family:var(--body);font-size:15px}
.separateur{display:grid;place-items:center;padding-block:8px 0;background:var(--blanc)}
.branche{width:min(100%,560px);color:var(--or);opacity:.8}
.schema{margin:0;display:grid;gap:18px;justify-items:center;background:var(--menthe-pale);border-radius:var(--r);padding:clamp(24px,4vw,44px)}
.schema svg{width:min(100%,680px);height:auto}
.schema .s-line{fill:none;stroke:var(--sauge);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.schema .s-cede{stroke:var(--or);stroke-width:2}
.schema .s-pointille{stroke-dasharray:3 6;opacity:.65}
.schema .s-fleche{stroke:var(--sauge-sombre);stroke-width:1.6}
.schema .s-txt text{font-family:var(--body);font-size:14px;fill:var(--sauge-sombre)}
.schema .s-txt text[text-anchor="middle"]{font-size:12.5px;fill:var(--encre-2);letter-spacing:.04em}
.schema figcaption{font-size:15px;color:var(--encre-2);max-width:62ch;text-align:center}
@media (max-width:600px){.schema .s-txt text{font-size:17px}.schema .s-txt text[text-anchor="middle"]{font-size:15px}}

.photo-fig{margin:30px 0 0;display:grid;gap:10px;max-width:280px}
.photo-fig img{width:100%;height:auto;border-radius:var(--r)}
.photo-fig figcaption{font-size:13.5px;color:var(--encre-2);line-height:1.45}
@media (max-width:800px){.photo-fig{max-width:300px}}

.photo-fig-wide{margin:0;display:grid;gap:10px}
.photo-fig-wide figcaption{font-size:13.5px;color:var(--encre-2)}

/* logo (piste Arche, 20/09/2026) */
.logo{display:block;line-height:0;flex-shrink:0}
.logo img{display:block;height:46px;width:auto}
.mnav .top .logo img{height:40px}
footer .logo img{height:50px}
@media (max-width:1000px){.logo img{height:40px}}
@media (max-width:400px){.logo img{height:38px}}

/* animations douces (20/09/2026) */
@view-transition{navigation:auto}
::view-transition-old(root),::view-transition-new(root){animation-duration:.4s;animation-timing-function:cubic-bezier(.45,.05,.25,1)}
.nav{view-transition-name:site-nav}
.steps{position:relative}
.steps::before{content:"";position:absolute;left:0;right:0;top:-1px;height:1px;background:var(--or);transform:scaleX(0);transform-origin:left center;transition:transform 1.6s cubic-bezier(.45,.05,.25,1) .1s}
.steps.in::before{transform:scaleX(1)}
@media (prefers-reduced-motion:reduce){@view-transition{navigation:none}.steps::before{transition:none;transform:scaleX(1)}}
@media print{.rv{opacity:1!important;transform:none!important}}

/* bulles lisibles (20/09/2026) : photo ronde, texte en dessous */
.bulle{aspect-ratio:auto;border-radius:0;overflow:visible;background:none;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:0;gap:6px;color:var(--encre);isolation:auto}
.bulle img{position:relative;inset:auto;z-index:0;width:100%;height:auto;aspect-ratio:1;border-radius:50%;object-fit:cover;margin-bottom:14px;transition:transform .8s cubic-bezier(.2,.8,.2,1),box-shadow .45s}
.bulle::after{display:none}
.bulle::before{inset:auto;top:0;left:0;width:100%;aspect-ratio:1;border-radius:50%;border:1px solid rgba(255,255,255,.55);transform:scale(.9);z-index:1;pointer-events:none;transition:transform .45s,border-color .45s}
.bulle:hover,.bulle:focus-visible{transform:translateY(-4px);box-shadow:none}
.bulle:hover img,.bulle:focus-visible img{transform:none;box-shadow:0 30px 44px -30px rgba(31,42,38,.55)}
.bulle:hover::before,.bulle:focus-visible::before{transform:scale(.93);border-color:rgba(255,255,255,.85)}
.bulle b{color:var(--encre);text-shadow:none;font-size:clamp(22px,2.2vw,28px)}
.bulle small{color:var(--encre-2);font-size:14.5px;line-height:1.45;max-width:24ch}
.bulle .go{color:var(--sauge);font-weight:600}
@media (max-width:1000px){.bulle b{font-size:26px}.bulle small{font-size:15px}}
@media (max-width:560px){.bulle img{margin-bottom:10px}.bulle b{font-size:21px}.bulle small{font-size:14px}.bulle .go{display:none}}
@media (max-width:760px){body:not(:has(.mcta)){padding-bottom:0}}

/* section kinésiologie de l'accueil (20/09/2026) : colonne de gauche ancrée, texte allégé, puces en arche */
#kinesiologie .sticky-col .kine-sub{margin-top:16px;color:var(--encre-2);font-size:17px;max-width:32ch}
#kinesiologie .big{font-size:clamp(21px,2.1vw,27px);line-height:1.45}
@media (min-width:1001px){#kinesiologie .sticky-col{position:sticky;top:112px}}
.checks li::before{width:13px;height:9px;border:1.5px solid var(--sauge);border-bottom:0;border-radius:7px 7px 0 0;background:none;margin-top:7px;justify-self:start}
@media (prefers-reduced-motion:no-preference){#kinesiologie .sticky-col{transition:none}}

#kinesiologie .kine-cta{margin-top:26px}
#kinesiologie .kine-cta.bas{display:none}
@media (max-width:1000px){#kinesiologie .sticky-col .kine-cta{display:none}#kinesiologie .kine-cta.bas{display:block;margin-top:26px}}

/* bandeaux photo d'illustration (20/09/2026) */
.photoband{padding-block:clamp(40px,6vw,72px)}
.photoband .wrap{max-width:1100px}
.photoband figcaption{text-align:right}

/* images : fondu doux au chargement */
img.fade:not(.ok){opacity:0;filter:blur(8px);transform:scale(1.015)}
img.fade{transition:opacity .9s ease,filter 1.1s ease,transform 1.2s cubic-bezier(.2,.8,.2,1)}
@media (prefers-reduced-motion:reduce){img.fade:not(.ok){filter:none;transform:none}img.fade{transition:opacity .3s linear}}
@media print{img.fade{opacity:1!important;filter:none!important}}

/* ---- 21/10/2026 : retours Raphaëlle ---- */
:root{--or-texte:#86672A;--or-clair:#E2C987}
/* plus de doré : mots en italique des titres, filets, chiffres */
h1 em,h2 em{color:var(--or-texte)}
.seance h2 em,.band h2 em,.pourquoi.sombre h2 em{color:var(--or-clair)}
.eyebrow::before{content:"";display:inline-block;width:18px;height:1px;background:var(--or);vertical-align:middle;margin-right:10px}
.cred b{color:var(--or-texte)}
.card .prix b{color:var(--or-texte)}
.bulle .go{color:var(--or-clair)}
footer h4{color:var(--or-clair)}
/* 5 accompagnements */
.bulles.cinq{grid-template-columns:repeat(5,1fr)}
.bulles.cinq .bulle{padding:14% 11% 17%}
.bulles.cinq .bulle b{font-size:clamp(18px,1.7vw,24px)}
.bulles.cinq .bulle small{font-size:12px}
@media (max-width:1100px){.bulles.cinq{grid-template-columns:repeat(3,1fr)}}
@media (max-width:700px){.bulles.cinq{grid-template-columns:1fr 1fr}}
/* pourquoi consulter */
.pourquoi{background:var(--blanc);border-top:1px solid var(--ligne);border-bottom:1px solid var(--ligne)}
.raisons{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.raisons article{border:1px solid var(--ligne);border-top:2px solid var(--or);border-radius:var(--r);padding:24px;background:var(--ivoire)}
.raisons b{font-family:var(--display);font-size:22px;font-weight:500;display:block;margin-bottom:12px}
.raisons ul{margin:0;padding-left:18px;display:grid;gap:6px;font-size:15px;color:var(--encre-2)}
.raisons li::marker{color:var(--or)}
@media (max-width:1000px){.raisons{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.raisons{grid-template-columns:1fr}}
/* tarif unique, 3 étapes */
.cards.un{grid-template-columns:minmax(0,460px)}
.steps.trois{grid-template-columns:repeat(3,1fr)}
@media (max-width:800px){.steps.trois{grid-template-columns:1fr}}
/* mention non médicale */
footer .avert{grid-column:1/-1;max-width:none;margin:0;font-size:13px;color:rgba(247,246,241,.74)}

/* offres à venir (mars 2027) */
.bientot{margin-top:24px;max-width:640px;border:1px dashed var(--or);border-radius:var(--r);padding:22px 24px;background:var(--ivoire);display:grid;gap:12px}
.bientot ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.bientot li{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:16px;align-items:baseline;border-bottom:1px solid var(--ligne);padding-bottom:10px}
.bientot li b{font-family:var(--display);font-size:22px;font-weight:500}
.bientot li span{grid-column:1;font-size:14px;color:var(--encre-2)}
.bientot li em{grid-column:2;grid-row:1/3;font-family:var(--display);font-style:normal;font-size:26px;color:var(--or-texte)}
.bientot p{margin:0;font-size:14px;color:var(--encre-2)}
.bientot a{color:var(--sauge)}
#seance-enfant{border-top:1px solid rgba(255,255,255,.14)}

.bientot .bientot-deroule{color:var(--encre)}
/* boutons dans un texte (articles) : garder la couleur du bouton */
.prose a.btn{color:#fff;text-decoration:none}
.prose a.btn.ghost{color:var(--sauge)}
.prose a.btn.light{color:var(--sauge-sombre)}

.tarif-duo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,440px);gap:72px;align-items:center}
.tarif-duo .sec-head{margin-bottom:0;max-width:none}
.tarif-duo .cards.un{grid-template-columns:1fr;margin:0}
.tarif-liens{margin-top:28px;line-height:2}
@media(max-width:900px){.tarif-duo{grid-template-columns:1fr;gap:36px}}

.tarifs-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:28px;align-items:stretch}
.tarifs-grid .cards.un{grid-template-columns:1fr;margin:0}
.tarifs-grid .cards.un .card{height:100%}
.tarifs-grid .bientot{margin-top:0;max-width:none}
.tarifs-checks{margin-top:36px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 32px}
.situ article:last-child:nth-child(odd){grid-column:1/-1}
@media(max-width:900px){.tarifs-grid{grid-template-columns:1fr}.tarifs-checks{grid-template-columns:1fr}}

.acces{background:var(--blanc);border-top:1px solid var(--ligne)}
.acces .wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:56px;align-items:center}
.acces h2{margin:14px 0 20px}
.acces-adr{font-size:18px;line-height:1.6;color:var(--encre)}
.acces-btns{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.acces-carte{margin:0}
.acces-carte img{display:block;width:100%;height:auto;border-radius:var(--r);border:1px solid var(--ligne)}
.acces-carte figcaption{font-size:12px;color:var(--encre-2);margin-top:8px;text-align:right}
@media(max-width:900px){.acces .wrap{grid-template-columns:1fr;gap:28px}.acces-btns .btn{flex:1 1 auto;justify-content:center}}
.acces{scroll-margin-top:72px}
.acces-adr{margin:0 0 14px}
.acces-btns .btn{padding-left:22px;padding-right:22px}
/* --- mobile (audit 24/10) --- */
.day small{font-size:12px}
@media(max-width:560px){
  .hero .cta,.phero .cta{flex-direction:column;align-items:stretch}
  .hero .cta .btn,.phero .cta .btn{justify-content:center}
  .bulles.cinq .bulle:last-child:nth-child(odd){grid-column:1/-1;justify-self:center;width:calc(50% - 10px);padding:23px 18px 28px}
  .raisons{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;margin-inline:calc(-1 * var(--gutter));padding:4px var(--gutter) 18px;scroll-padding-inline:var(--gutter);scrollbar-width:none}
  .raisons::-webkit-scrollbar{display:none}
  .raisons>article{flex:0 0 84%;scroll-snap-align:center}
  footer .wrap>div:nth-child(3) ul{grid-template-columns:1fr 1fr;column-gap:16px}
}
.swipe-hint{display:none}
@media(max-width:560px){.swipe-hint{display:block;margin:4px 0 0;font-size:13px;color:var(--encre-2);text-align:center}}

/* --- barre RDV mobile : masquée quand un autre bouton « Prendre rendez-vous » est à l'écran (24/10) --- */
@media (max-width:760px){
  .mcta{transition:transform .32s cubic-bezier(.2,.8,.2,1),opacity .25s ease,visibility 0s linear 0s}
  .mcta.mcta-off{transform:translateY(110%);opacity:0;visibility:hidden;pointer-events:none;transition:transform .32s cubic-bezier(.2,.8,.2,1),opacity .25s ease,visibility 0s linear .32s}
}
@media (max-width:760px) and (prefers-reduced-motion:reduce){.mcta,.mcta.mcta-off{transition:none;transform:none}}
