/* Concept : une maison calme. Arches comme des fenêtres, bandes vert brume et sable, beaucoup d'air. Thème clair uniquement, à la demande de Margot. */
:root{
  color-scheme:light;
  --paper:#fbfcf9;      /* fond, blanc à peine vert */
  --card:#ffffff;
  --mist:#eef3eb;       /* vert brume très pâle */
  --sand:#eef3f6;       /* ciel très pâle (palette ciel et lavande) */
  --sky:#d6e3ea;        /* bleu brume : enfants */
  --sky-pale:#e8f0f4;
  --lav:#e1dcec;        /* lavande : adultes */
  --lav-pale:#efecf5;
  --pearl:#f4f5f1;      /* perle : structures, entreprises */
  --wheat:#f2e6c9;      /* blé : badges */
  --sage:#c9d7c3;       /* sauge douce, décors */
  --sage-deep:#6c8870;  /* petits libellés */
  --forest:#5d7a63;     /* titres : sauge, sans dureté */
  --ink:#2f3a33;
  --muted:#66746b;
  --line:#e2e9dd;
  --star:#c9a26a;
  --btn:#d3e1cd;        /* bouton principal, sauge pâle */
  --btn-hover:#c3d6bc;
  --btn-text:#35503e;
  --band:#e7efe3;       /* bandeau final */
  --on-forest:#35503e;
  --shadow:0 12px 30px -20px rgba(70,100,75,.35);
  --f-display:"Cormorant Garamond","Cormorant",Garamond,"Times New Roman",serif;
  --f-body:"Mulish","Segoe UI",system-ui,-apple-system,sans-serif;
  --step-0:clamp(1rem,.96rem + .2vw,1.075rem);
  --step-1:clamp(1.2rem,1.1rem + .5vw,1.4rem);
  --step-2:clamp(1.6rem,1.35rem + 1.1vw,2.2rem);
  --step-3:clamp(2.1rem,1.6rem + 2.4vw,3.6rem);
  --radius:22px;
  --wrap:1120px;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--f-body);font-size:var(--step-0);line-height:1.65;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:60;background:var(--paper)}
img{max-width:100%;height:auto;display:block}
a{color:var(--sage-deep);text-underline-offset:3px}
a:hover{color:var(--forest)}
:focus-visible{outline:3px solid var(--sage);outline-offset:3px;border-radius:6px}
h1,h2,h3{font-family:var(--f-display);color:var(--forest);font-weight:600;line-height:1.12;text-wrap:balance;margin:0 0 .5em}
h1{font-size:var(--step-3);letter-spacing:-.01em}
h2{font-size:var(--step-2)}
h3{font-size:var(--step-1)}
h1 em,h2 em{font-style:italic;font-weight:500;color:var(--sage-deep)}
p{margin:0 0 1em;max-width:65ch}
.wrap{max-width:var(--wrap);margin:0 auto;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}
.narrow{max-width:760px}
.eyebrow{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--sage-deep);margin-bottom:.9em}
.lead{font-size:var(--step-1);color:var(--muted);line-height:1.5}
.center{text-align:center;margin-top:2rem}
.center p,.center-text p{margin-inline:auto}
.center-text{text-align:center}
.note{color:var(--muted);font-size:.95rem}

/* ---------- Boutons ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;min-height:48px;padding:.7em 1.5em;border-radius:999px;font-weight:700;font-size:.98rem;text-decoration:none;border:1.5px solid transparent;transition:transform .25s ease,background-color .25s,color .25s,border-color .25s;cursor:pointer;font-family:inherit}
.btn:hover{transform:translateY(-2px)}
.btn-primary{background:var(--btn);color:var(--btn-text)}
.btn-primary:hover{color:var(--btn-text);background:var(--btn-hover)}
.btn-soft{background:var(--mist);color:var(--forest)}
.btn-soft:hover{background:var(--sage);color:var(--forest)}
.btn-ghost{border-color:currentColor;color:var(--forest);background:transparent}
.link-arrow{font-weight:700;text-decoration:none;display:inline-flex;gap:.4em;align-items:center}
.link-arrow::after{content:"→";transition:transform .25s}
.link-arrow:hover::after{transform:translateX(4px)}

/* ---------- En-tête ---------- */
.site-header{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:color-mix(in srgb,var(--paper) 88%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid transparent;transition:border-color .3s}
.site-header.scrolled{border-bottom-color:var(--line)}
.header-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:72px}
.brand{display:flex;align-items:center;gap:.7rem;text-decoration:none;color:var(--forest)}
.brand-mark{width:46px;height:46px;border-radius:50%;background:var(--card);display:grid;place-items:center;flex:none;border:1px solid var(--line)}
.brand-mark img{width:36px}
.brand-name{font-family:var(--f-display);font-size:1.35rem;font-weight:600;line-height:1}
.brand-name small{display:block;font-family:var(--f-body);font-size:.64rem;letter-spacing:.3em;text-transform:uppercase;color:var(--sage-deep);font-weight:700;margin-top:.3em}
.nav{display:flex;align-items:center;gap:.25rem}
.nav a{white-space:nowrap;text-decoration:none;color:var(--ink);font-weight:600;font-size:.92rem;padding:.5em .7em;border-radius:999px;transition:background-color .2s}
.nav a:hover,.nav a[aria-current="page"]{background:var(--mist);color:var(--forest)}
.nav .btn{margin-left:.5rem;padding:.6em 1.2em;min-height:42px;color:var(--btn-text)}
.nav .btn:hover{background:var(--btn-hover);color:var(--btn-text)}
.burger{display:none;background:none;border:0;width:48px;height:48px;border-radius:50%;cursor:pointer;color:var(--forest)}
.burger span{display:block;width:22px;height:2px;background:currentColor;margin:5px auto;border-radius:2px;transition:transform .3s,opacity .3s}
.menu-open .burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menu-open .burger span:nth-child(2){opacity:0}
.menu-open .burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
@media (min-width:0px){
  .burger{display:block}
  .nav{position:fixed;inset:calc(72px + env(safe-area-inset-top,0px)) 0 auto 0;flex-direction:column;align-items:stretch;gap:.2rem;background:var(--paper);padding:1rem max(20px,env(safe-area-inset-right,0px)) 1.5rem max(20px,env(safe-area-inset-left,0px));border-bottom:1px solid var(--line);box-shadow:var(--shadow);transform:translateY(-8px);opacity:0;visibility:hidden;transition:opacity .25s,transform .25s,visibility .25s}
  .menu-open .nav{opacity:1;transform:none;visibility:visible}
  .nav a{font-size:1.05rem;padding:.8em 1em}
  .nav .btn{margin:.6rem 0 0}
}

/* ---------- Hero accueil ---------- */
.hero{padding-block:clamp(2rem,5vw,4.5rem) clamp(2.5rem,6vw,5rem)}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(2rem,5vw,4.5rem);align-items:center}
.hero-text{min-width:0}
.hero-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin:1.6rem 0 1rem}
.hero-small{font-size:.95rem;color:var(--muted)}
.hero-visual{position:relative;justify-self:center;width:min(100%,430px)}
.arch{border-radius:999px 999px var(--radius) var(--radius);overflow:hidden;background:var(--mist);aspect-ratio:4/5;max-width:100%}
.arch img{width:100%;height:100%;object-fit:cover;object-position:50% 20%}
.arch-sm{max-width:380px}
.breath{position:absolute;left:-28px;bottom:36px;width:132px;height:132px;border-radius:50%;border:0;background:var(--card);box-shadow:var(--shadow);cursor:pointer;display:grid;place-items:center;color:var(--forest);font-family:var(--f-display);font-size:1.15rem;font-weight:600;line-height:1.1;padding:0}
.breath-ring{position:absolute;inset:10px;border-radius:50%;border:1.5px solid var(--sage);transition:transform 4s ease-in-out,background-color 4s}
.breath-label{position:relative;text-align:center}
.breath-label small{font-family:var(--f-body);font-size:.66rem;font-weight:600;color:var(--muted);letter-spacing:.02em}
.breath.in .breath-ring{transform:scale(1.18);background:color-mix(in srgb,var(--mist) 70%,transparent)}
@media (max-width:820px){
  .hero-grid{grid-template-columns:1fr}
  .hero-visual{order:-1;width:min(72%,300px)}
  .breath{left:-14%;bottom:18px;width:112px;height:112px;font-size:1.02rem}
}

.trust{border-block:1px solid var(--line);background:var(--card)}
.trust-row{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem 2rem;padding-block:1rem;font-size:.9rem;font-weight:600;color:var(--muted)}
.trust-row span{display:inline-flex;align-items:center;gap:.55em}
.trust-row span::before{content:"";width:8px;height:8px;border-radius:50% 0;background:var(--sage);transform:rotate(45deg)}

/* ---------- Sections ---------- */
.section{padding-block:clamp(3rem,7vw,5.5rem)}
.band-mist{background:var(--mist)}
.band-sand{background:var(--sand)}
.section-head{max-width:640px;margin-bottom:2.2rem}
.section-head p{color:var(--muted)}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,4rem);align-items:start}
.two-col>*{min-width:0}
.split{display:grid;grid-template-columns:1fr 1.15fr;gap:clamp(2rem,5vw,4rem);align-items:center}
.split>*{min-width:0}
.stack{display:grid;gap:1.2rem}
@media (max-width:820px){.two-col,.split{grid-template-columns:1fr}}

.page-head{padding-block:clamp(2.5rem,6vw,4.5rem) clamp(1.5rem,4vw,2.5rem);background:linear-gradient(180deg,var(--mist),var(--paper))}
.page-head h1{max-width:20ch}
.page-head .lead{max-width:56ch}
.page-head .btn{margin-top:.6rem}

/* Profils */
.profiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.1rem}
@media (max-width:1020px){.profiles{grid-template-columns:1fr 1fr}}
.profile{display:flex;flex-direction:column;padding:1.8rem 1.6rem;border-radius:var(--radius);background:var(--card);border:1px solid var(--line);text-decoration:none;color:var(--ink);transition:transform .3s ease,box-shadow .3s,border-color .3s}
.profile:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:var(--sage);color:var(--ink)}
.profile-age{font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--sage-deep);margin-bottom:.6rem}
.profile p{color:var(--muted);flex:1}
.profile .more{font-weight:700;color:var(--forest)}
.profile .more::after{content:" →"}
@media (max-width:820px){.profiles{grid-template-columns:1fr}}

/* Étapes : une vraie séquence */
.steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;counter-reset:s}
.steps li{counter-increment:s;padding:1.6rem;background:var(--paper);border-radius:var(--radius);position:relative}
.steps li::before{content:counter(s);display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--btn);color:var(--btn-text);font-family:var(--f-display);font-size:1.3rem;font-weight:600;margin-bottom:1rem}
.steps p{color:var(--muted);margin:0}
@media (max-width:820px){.steps{grid-template-columns:1fr}}

/* Listes */
.checks,.gains{list-style:none;padding:0;margin:0 0 1.2rem;display:grid;gap:.8rem}
.checks li,.gains li{position:relative;padding-left:2rem}
.checks li::before{content:"";position:absolute;left:0;top:.35em;width:1.1rem;height:1.1rem;border-radius:50%;background:var(--mist);box-shadow:inset 0 0 0 1.5px var(--sage)}
.checks li::after{content:"";position:absolute;left:.38rem;top:.58em;width:.32rem;height:.55rem;border:solid var(--forest);border-width:0 2px 2px 0;transform:rotate(45deg)}
.gains li::before{content:"";position:absolute;left:.1rem;top:.45em;width:.85rem;height:.85rem;border-radius:0 70% 0 70%;background:var(--sage)}
.callout{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:1.5rem 1.6rem;margin-top:1.5rem}
.callout p{margin:0;color:var(--muted)}
.chips{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:.5rem}
.chips li{padding:.45em 1em;border-radius:999px;background:var(--card);border:1px solid var(--line);font-size:.92rem;font-weight:600}

.situations{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
.situations li{background:var(--card);padding:1.5rem 1.4rem}
.situations h3{font-size:1.3rem;margin-bottom:.3em}
.situations p{margin:0;color:var(--muted);font-size:.97rem}
@media (max-width:900px){.situations{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.situations{grid-template-columns:1fr}}

/* Tarifs */
.prices{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.prices-2{grid-template-columns:repeat(2,1fr);max-width:820px}
.price{background:var(--card);border-radius:var(--radius);padding:1.8rem 1.6rem;border:1px solid var(--line)}
.price-meta{font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;font-weight:700;color:var(--sage-deep);margin-bottom:.5rem}
.price-num{font-family:var(--f-display);font-size:2.8rem;font-weight:600;color:var(--forest);line-height:1;margin:.2rem 0 1.2rem;font-variant-numeric:tabular-nums}
.price-num span{font-size:1.1rem;font-family:var(--f-body);font-weight:700;color:var(--muted);margin-left:.2em}
.price ul{margin:0;padding-left:1.1rem;color:var(--muted);display:grid;gap:.35rem;font-size:.95rem}
.price-new{border-style:dashed;border-color:var(--sage)}
.price-inline{font-size:1.1rem;padding:1rem 1.2rem;background:var(--mist);border-radius:14px;display:inline-block}
@media (max-width:900px){.prices,.prices-2{grid-template-columns:1fr}}

.tables{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;align-items:start}
.table-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:1.6rem}
.table-card h2{font-size:1.7rem}
.table-card h2 small{display:block;font-family:var(--f-body);font-size:.85rem;font-weight:600;color:var(--muted);margin-top:.3em}
table{width:100%;border-collapse:collapse;margin-bottom:1.2rem}
th,td{padding:.85rem 0;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
th{font-weight:600}
th span{display:block;font-size:.84rem;color:var(--muted);font-weight:500}
td{text-align:right;font-weight:700;color:var(--forest);white-space:nowrap;font-variant-numeric:tabular-nums}
@media (max-width:900px){.tables{grid-template-columns:1fr}}
.gift-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}
.gift{background:var(--card);border-radius:var(--radius);padding:2rem 1.8rem}
@media (max-width:820px){.gift-grid{grid-template-columns:1fr}}
.infos{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}
.infos p{color:var(--muted);margin:0}
@media (max-width:820px){.infos{grid-template-columns:1fr;gap:1.2rem}}

/* Avis */
.avis{margin:0;background:var(--card);border-radius:var(--radius);padding:1.6rem;border:1px solid var(--line);display:flex;flex-direction:column}
.stars{color:var(--star);letter-spacing:.12em;font-size:.95rem}
.avis blockquote{margin:.7rem 0 1rem;font-size:1rem;line-height:1.6;flex:1}
.avis figcaption{display:flex;flex-wrap:wrap;gap:.2rem .7rem;align-items:baseline;font-size:.88rem;color:var(--muted)}
.avis figcaption strong{color:var(--ink)}
.avis-tag{background:var(--mist);color:var(--forest);padding:.15em .7em;border-radius:999px;font-size:.78rem;font-weight:700}
.avis-big blockquote{font-family:var(--f-display);font-size:1.5rem;line-height:1.35;color:var(--forest)}
.carousel{display:grid;grid-auto-flow:column;grid-auto-columns:min(340px,82%);gap:1rem;overflow-x:auto;scroll-snap-type:x mandatory;padding:.2rem .2rem 1rem;scrollbar-width:thin}
.carousel .avis{scroll-snap-align:start}

/* Ateliers */
.events{display:grid;gap:.8rem;margin-bottom:1.2rem}
.event{display:grid;grid-template-columns:auto 1fr;gap:1rem;align-items:center;background:var(--card);border-radius:16px;padding:1rem 1.2rem;border:1px solid var(--line)}
.event-date{font-family:var(--f-display);font-weight:600;color:var(--forest);text-align:center;line-height:1;min-width:3.2rem}
.event-date b{display:block;font-size:2rem}
.event-date small{font-family:var(--f-body);font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;font-weight:700;color:var(--sage-deep)}
.event h3{font-size:1.25rem;margin:0 0 .2em}
.event p{margin:0;color:var(--muted);font-size:.93rem}
.event-empty{background:var(--card);border-radius:16px;padding:1.3rem 1.4rem;border:1px dashed var(--sage);color:var(--muted)}
.event-empty p{margin:0}
.formats{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.formats article{background:var(--paper);padding:1.7rem;border-radius:var(--radius)}
.formats p{color:var(--muted);margin:0}
@media (max-width:820px){.formats{grid-template-columns:1fr}}
.me-teaser{display:grid;grid-template-columns:150px 1fr;gap:1.5rem;align-items:center}
.me-teaser img{width:150px;height:150px;object-fit:cover;border-radius:50%}
@media (max-width:520px){.me-teaser{grid-template-columns:1fr}.me-teaser img{width:120px;height:120px}}

/* Qui suis-je */
.about-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(2rem,6vw,5rem);align-items:center}
.about-text{min-width:0}
.about-text .btn{margin-top:.5rem}
@media (max-width:820px){.about-grid{grid-template-columns:1fr}.about-grid .arch{width:min(75%,320px);margin:0 auto}}
.values{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.values li{background:var(--paper);border-radius:var(--radius);padding:1.4rem 1.2rem;display:grid;gap:.3rem}
.values strong{font-family:var(--f-display);font-size:1.35rem;color:var(--forest);font-weight:600}
.values span{color:var(--muted);font-size:.93rem}
@media (max-width:980px){.values{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.values{grid-template-columns:1fr}}

/* FAQ */
.faq{display:grid;gap:.6rem}
.faq-item{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:0 1.2rem}
.faq-item summary{cursor:pointer;font-weight:700;padding:1rem 2rem 1rem 0;list-style:none;position:relative}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"+";position:absolute;right:0;top:50%;transform:translateY(-50%);font-size:1.4rem;color:var(--sage-deep);transition:transform .3s}
.faq-item[open] summary::after{transform:translateY(-50%) rotate(45deg)}
.faq-item p{color:var(--muted);margin:0 0 1rem}

/* Contact */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}
.contact-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:1.8rem;min-width:0}
.contact-list{margin:0;display:grid;gap:1rem}
.contact-list dt{font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;font-weight:700;color:var(--sage-deep)}
.contact-list dd{margin:0;font-weight:600;overflow-wrap:anywhere}
.copy{font:inherit;font-size:.78rem;font-weight:700;border:1px solid var(--line);background:var(--paper);color:var(--forest);border-radius:999px;padding:.2em .8em;margin-left:.4em;cursor:pointer;vertical-align:middle}
.hours td{font-weight:600}
.socials-inline{display:flex;gap:1.2rem;flex-wrap:wrap;font-weight:700}
@media (max-width:820px){.contact-grid{grid-template-columns:1fr}}

/* Espace client */
.gate{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:1.8rem}
.gate label{font-weight:700;display:block;margin-bottom:.5rem}
.gate-row{display:flex;gap:.6rem;flex-wrap:wrap}
.gate input{flex:1;min-width:0;min-height:48px;border-radius:999px;border:1.5px solid var(--line);padding:0 1.2em;font:inherit;background:var(--paper);color:var(--ink)}
.gate-msg{margin:.8rem 0 0;color:var(--muted);min-height:1.4em}
.res-list{list-style:none;padding:0;display:grid;gap:.6rem}
.res-list li{display:flex;justify-content:space-between;gap:1rem;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:1rem 1.2rem;flex-wrap:wrap}
.res-list span{color:var(--muted);font-size:.88rem}
.prose h2{font-size:1.6rem;margin-top:1.6em}

/* Bandeau final */
.band-cta{background:var(--band);color:var(--on-forest);padding-block:clamp(3rem,6vw,4.5rem)}
.band-cta h2{color:var(--forest)}
.band-cta p{color:color-mix(in srgb,var(--on-forest) 82%,transparent)}
.cta-inner{display:grid;grid-template-columns:1.3fr auto;gap:2rem;align-items:center}
.cta-actions{display:flex;flex-wrap:wrap;gap:.8rem}
.band-cta .btn-primary{background:var(--card);color:var(--forest)}
.band-cta .btn-primary:hover{background:var(--paper);color:var(--forest)}
.band-cta .btn-ghost{color:var(--forest)}
@media (max-width:820px){.cta-inner{grid-template-columns:1fr}}

/* Pied de page */
.site-footer{background:var(--paper);border-top:1px solid var(--line);padding-block:3rem 6rem;font-size:.93rem}
.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:2rem}
.footer-grid>*{min-width:0}
.footer-grid h4{font-family:var(--f-body);font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--sage-deep);margin:0 0 .8rem}
.footer-grid ul{list-style:none;padding:0;margin:0;display:grid;gap:.45rem}
.footer-grid a{color:var(--ink);text-decoration:none}
.footer-grid a:hover{color:var(--sage-deep);text-decoration:underline}
.footer-logo{width:150px;background:var(--card);border-radius:18px;padding:.6rem;margin-bottom:1rem}
.footer-tag{color:var(--muted);max-width:32ch}
.social{display:flex;gap:.6rem;margin-top:1rem}
.social a{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--mist);color:var(--forest)}
.social svg{width:20px;height:20px}
.copyright{margin-top:2.5rem;color:var(--muted);font-size:.85rem;overflow-wrap:anywhere}
@media (max-width:900px){.footer-grid{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.footer-grid{grid-template-columns:1fr}}

/* Bouton rendez-vous fixe sur mobile */
.mobile-rdv{display:none}
@media (max-width:820px){
  .mobile-rdv{display:block;position:fixed;left:0;right:0;bottom:0;z-index:40;padding:.7rem max(16px,env(safe-area-inset-right,0px)) calc(.7rem + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));background:color-mix(in srgb,var(--paper) 92%,transparent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-top:1px solid var(--line);transition:transform .35s ease}
  .mobile-rdv .btn{width:100%}
  .mobile-rdv.hide{transform:translateY(110%)}
}

/* Animations douces au défilement : l'état de repos reste lisible */
.js .reveal{transition:opacity .9s ease,transform .9s cubic-bezier(.2,.7,.2,1)}
.js .reveal:not(.in){opacity:.35;transform:translateY(18px)}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .js .reveal:not(.in){opacity:1;transform:none}
  *,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important}
}

/* Choix du profil dans l'accueil */
.choices{display:grid;grid-template-columns:1fr 1fr;gap:.7rem;margin:1.6rem 0 0;max-width:560px}
.choice{position:relative;display:flex;align-items:center;justify-content:space-between;gap:.8rem;overflow:hidden;min-height:76px;padding:.9rem 1.1rem;border-radius:18px;background:var(--card);border:1.5px solid var(--line);text-decoration:none;color:var(--ink);font-weight:700;line-height:1.25;transition:border-color .25s,transform .25s,background-color .25s}
.choice small{font-weight:600;color:var(--muted);font-size:.8rem;margin-top:.2rem}
.choice:hover{border-color:var(--sage);background:var(--mist);transform:translateY(-2px);color:var(--ink)}
.choice-main{background:var(--btn);border-color:var(--btn);color:var(--btn-text)}
.choice-main small{color:var(--btn-text)}
.choice-main:hover{background:var(--btn-hover);border-color:var(--btn-hover);color:var(--btn-text)}
@media (max-width:420px){.choices{grid-template-columns:1fr}}
/* Mon histoire */
.story{display:grid;gap:2.2rem;max-width:720px}
.story h2{margin-bottom:.4em}
.story p{color:var(--ink)}
.story-quote{font-family:var(--f-display);font-size:var(--step-2);color:var(--forest);font-style:italic;line-height:1.3;text-align:center;max-width:24ch;margin:0 auto}

.avis-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.1rem;align-items:start}
@media (max-width:760px){.avis-grid{grid-template-columns:1fr}}
.gift-options{list-style:none;padding:0;margin:0 0 1.2rem;display:grid;gap:0}
.gift-options li{display:flex;justify-content:space-between;gap:1rem;padding:.7rem 0;border-bottom:1px solid var(--line)}
.gift-options strong{color:var(--forest);font-variant-numeric:tabular-nums;white-space:nowrap}
.gift-order{background:var(--mist);border-radius:18px;padding:1.3rem 1.3rem 1.4rem;margin-top:1.2rem}
.gift-order h3{margin-bottom:.3em}
.gift-order .contact-list{margin-bottom:1.1rem}
.gift-order .copy{background:var(--card)}
.gift-photo{width:100%;border-radius:14px;margin-bottom:1.4rem;box-shadow:var(--shadow);transform:rotate(-1.2deg)}
.choice-wide{grid-column:1/-1}
.contact-box{background:var(--mist);border-radius:18px;padding:1.3rem 1.3rem 1.4rem;margin-top:1.4rem}
.contact-box h3{margin-bottom:.3em}
.contact-box .contact-list{margin:0}
.contact-box .copy{background:var(--card)}

/* ---------- Animations : vivantes mais calmes ---------- */
.hero-title{font-size:clamp(2.3rem,1.7rem + 3vw,4.2rem);line-height:1.05}
.hero-title span{display:block}
.hero-title em{display:block}
.choices-title{font-weight:700;margin:1.8rem 0 0;color:var(--ink)}
.choice-txt{display:flex;flex-direction:column}
.choice-arrow{flex:none;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--mist);color:var(--forest);font-weight:700;transition:transform .35s cubic-bezier(.3,1.6,.5,1),background-color .3s}
.choice-main .choice-arrow{background:var(--card)}
.choice:hover .choice-arrow{transform:translateX(4px)}
.choice:active,.btn:active,.profile:active{transform:scale(.97)}
/* reflet qui traverse les boutons au survol */
.btn,.choice{position:relative;overflow:hidden;isolation:isolate}
.btn::before,.choice::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.55) 50%,transparent 70%);transform:translateX(-120%);transition:transform .8s ease}
.btn:hover::before,.choice:hover::before{transform:translateX(120%)}
/* le bouton rendez-vous respire doucement */
@keyframes souffle{0%,100%{box-shadow:0 0 0 0 rgba(150,182,146,.55)}50%{box-shadow:0 0 0 10px rgba(150,182,146,0)}}
.nav .btn-primary,.mobile-rdv .btn-primary,.page-head .btn-primary,.hero .choice-main:first-child{animation:souffle 4s ease-in-out infinite}
/* entrée de l'accueil */
@keyframes monte{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
.hero-text>*{animation:monte .9s cubic-bezier(.2,.7,.2,1) both}
.hero-text>*:nth-child(1){animation-delay:.05s}.hero-text>*:nth-child(2){animation-delay:.15s}
.hero-text>*:nth-child(3){animation-delay:.3s}.hero-text>*:nth-child(4){animation-delay:.42s}
.hero-text>*:nth-child(5){animation-delay:.5s}
.choices .choice{animation:monte .7s cubic-bezier(.2,.7,.2,1) both}
.choices .choice:nth-child(1){animation-delay:.55s}.choices .choice:nth-child(2){animation-delay:.63s}
.choices .choice:nth-child(3){animation-delay:.71s}.choices .choice:nth-child(4){animation-delay:.79s}.choices .choice:nth-child(5){animation-delay:.87s}
.page-head .wrap>*{animation:monte .8s cubic-bezier(.2,.7,.2,1) both}
.page-head .wrap>*:nth-child(2){animation-delay:.1s}.page-head .wrap>*:nth-child(3){animation-delay:.2s}.page-head .wrap>*:nth-child(4){animation-delay:.3s}
@keyframes arche{from{opacity:0;transform:translateY(30px) scale(.97)}to{opacity:1;transform:none}}
.hero .arch{animation:arche 1.2s cubic-bezier(.2,.7,.2,1) .1s both}
/* feuilles qui flottent autour de la photo */
.leaf{position:absolute;z-index:2;width:22px;height:22px;border-radius:0 80% 0 80%;background:var(--sage);opacity:.85;pointer-events:none}
.leaf.l1{top:6%;right:-6%;animation:flotte 9s ease-in-out infinite}
.leaf.l2{top:38%;right:-10%;width:14px;height:14px;background:var(--btn-hover);animation:flotte 7s ease-in-out -2s infinite}
.leaf.l3{top:-2%;left:16%;width:16px;height:16px;animation:flotte 11s ease-in-out -4s infinite}
.leaf.l4{bottom:8%;right:4%;width:12px;height:12px;background:var(--sage-deep);opacity:.45;animation:flotte 8s ease-in-out -1s infinite}
@keyframes flotte{0%,100%{transform:translate(0,0) rotate(0deg)}33%{transform:translate(-8px,-14px) rotate(25deg)}66%{transform:translate(6px,-6px) rotate(-15deg)}}
/* la bulle invite à respirer */
@keyframes repos{0%,100%{transform:scale(1)}50%{transform:scale(1.07)}}
.breath:not(.in):not(.running) .breath-ring{animation:repos 5s ease-in-out infinite}
.breath{transition:transform .3s}
.breath:hover{transform:scale(1.04)}
/* cartes et étapes */
.profile .more{transition:letter-spacing .3s}
.profile:hover .more{letter-spacing:.02em}
.steps li::before{transition:transform .6s cubic-bezier(.3,1.6,.5,1) .2s}
.js .steps li:not(.in)::before{transform:scale(.4)}
.nav a:not(.btn){position:relative}
.price,.avis,.table-card,.gift,.values li,.formats article,.contact-card{transition:transform .35s ease,box-shadow .35s ease}
.price:hover,.table-card:hover,.gift:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
@media (prefers-reduced-motion:reduce){
  .hero-text>*,.choices .choice,.page-head .wrap>*,.hero .arch,.leaf,.breath-ring,.btn-primary,.choice-main{animation:none!important}
}

/* Cabinet : la vidéo entière dans un téléphone */
.cab-split{display:grid;grid-template-columns:1fr auto;gap:clamp(2rem,6vw,5rem);align-items:center}
.cab-split>*{min-width:0}
.cab-split .btn{margin-top:.6rem}
.phone-stage{position:relative;width:min(100%,300px);margin:0 auto;padding:1.5rem 0}
.phone-stage::before{content:"";position:absolute;inset:8% -18%;border-radius:50%;background:radial-gradient(circle,var(--mist) 0%,transparent 70%);z-index:-1}
.phone{position:relative;border-radius:46px;padding:11px;background:linear-gradient(145deg,#e9eee6,#cfd9ca);box-shadow:0 30px 60px -28px rgba(60,90,65,.55),inset 0 0 0 1.5px rgba(255,255,255,.7),inset 0 0 0 3px #b9c7b3;transform:rotate(-4deg);animation:phonefloat 7s ease-in-out infinite}
@keyframes phonefloat{0%,100%{transform:rotate(-4deg) translateY(0)}50%{transform:rotate(-2.5deg) translateY(-10px)}}
.phone-screen{position:relative;border-radius:36px;overflow:hidden;background:#dfe7da;aspect-ratio:9/16}
.phone-screen video{display:block;width:100%;height:100%;object-fit:cover}
.phone-island{position:absolute;top:10px;left:50%;transform:translateX(-50%);width:32%;height:22px;border-radius:999px;background:#1e2a22;z-index:2}
.phone-btn{position:absolute;width:4px;border-radius:3px;background:#bfccb9}
.phone-btn-1{left:-3px;top:18%;height:7%}.phone-btn-2{left:-3px;top:28%;height:11%}.phone-btn-3{right:-3px;top:24%;height:14%}
.phone-tag{position:absolute;z-index:3;background:var(--card);color:var(--forest);font-weight:700;font-size:.82rem;padding:.45em 1em;border-radius:999px;box-shadow:var(--shadow);white-space:nowrap}
.phone-tag::before{content:"";display:inline-block;width:8px;height:8px;margin-right:.5em;border-radius:0 70% 0 70%;background:var(--sage-deep);vertical-align:middle}
.phone-tag-1{top:14%;left:-22%;animation:phonefloat2 6s ease-in-out infinite}
.phone-tag-2{bottom:16%;right:-24%;animation:phonefloat2 6s ease-in-out -3s infinite}
@keyframes phonefloat2{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@media (max-width:760px){.cab-split{grid-template-columns:1fr}.phone-stage{width:min(72%,260px)}.phone-tag-1{left:-18%}.phone-tag-2{right:-18%}}
@media (prefers-reduced-motion:reduce){.phone,.phone-tag{animation:none}}

/* Boutons « Je suis » */
.iams{display:grid;gap:.6rem;margin-top:1.8rem;max-width:540px}
.iam{position:relative;overflow:hidden;isolation:isolate;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 1rem .85rem 1.2rem;border-radius:18px;background:var(--card);border:1.5px solid var(--line);text-decoration:none;color:var(--ink);transition:border-color .25s,transform .25s,background-color .25s;animation:monte .7s cubic-bezier(.2,.7,.2,1) both}
.iam::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.6) 50%,transparent 70%);transform:translateX(-120%);transition:transform .8s ease}
.iam:hover::before{transform:translateX(120%)}
.iam:hover{border-color:var(--sage);transform:translateX(4px);color:var(--ink)}
.iam:active{transform:scale(.98)}
.iam:hover .choice-arrow{transform:translateX(4px)}
.iam-main{background:var(--btn);border-color:var(--btn)}
.iam-main:hover{background:var(--btn-hover);border-color:var(--btn-hover)}
.iam-main .choice-arrow{background:var(--card)}
.iam-txt{display:flex;flex-direction:column;line-height:1.3}
.iam-who{font-weight:800;font-size:1.02rem;color:var(--btn-text)}
.iam:not(.iam-main) .iam-who{color:var(--ink)}
.iam-why{font-size:.88rem;color:var(--muted);font-weight:600}
.iam-main .iam-why{color:var(--btn-text);opacity:.85}
.iams>.iam:nth-child(1){animation-delay:.5s}.iams>.iam:nth-child(2){animation-delay:.58s}.iams>.iam:nth-child(3){animation-delay:.66s}.iams>.iam:nth-child(4){animation-delay:.74s}.iams>.iam:nth-child(5){animation-delay:.82s}
@media (prefers-reduced-motion:reduce){.iam{animation:none}}

/* L'essentiel */
.beliefs{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.belief{padding:1.8rem 1.6rem;border-radius:var(--radius);background:var(--mist)}
.belief:nth-child(2){background:var(--sand)}
.belief-big{font-family:var(--f-display);font-size:clamp(1.5rem,1.2rem + 1vw,1.9rem);line-height:1.18;color:var(--forest);font-weight:600;margin-bottom:.8em}
.belief-big em{font-weight:500;color:var(--sage-deep)}
.belief p:last-child{color:var(--muted);margin:0}
@media (max-width:860px){.beliefs{grid-template-columns:1fr}}

.price-strip{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 2.2rem;margin-top:2rem;padding:1.3rem 1.6rem;background:var(--paper);border-radius:var(--radius)}
.price-strip div{display:grid;line-height:1.2}
.price-strip span{font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;font-weight:700;color:var(--sage-deep)}
.price-strip strong{font-family:var(--f-display);font-size:1.8rem;color:var(--forest);font-variant-numeric:tabular-nums}
.price-strip small{color:var(--muted);font-size:.82rem}
.price-strip .link-arrow{margin-left:auto}
@media (max-width:640px){.price-strip .link-arrow{margin-left:0}}

/* Icônes arbre, cœur, soleil */
.belief-ico{width:44px;height:44px;margin-bottom:1rem;fill:none;stroke:var(--sage-deep);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .6s cubic-bezier(.3,1.6,.5,1)}
.belief:hover .belief-ico{transform:rotate(-8deg) scale(1.1)}
/* Avant / après */
.ba{display:grid;grid-template-columns:1fr auto 1fr;gap:1.2rem;align-items:center}
.ba-card{padding:1.8rem 1.6rem;border-radius:var(--radius);height:100%}
.ba-before{background:var(--card);border:1.5px dashed var(--line)}
.ba-after{background:var(--card);border:1.5px solid var(--sage);box-shadow:var(--shadow)}
.ba-label{font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:var(--muted);margin-bottom:.6rem}
.ba-after .ba-label{color:var(--sage-deep)}
.ba-quote{font-family:var(--f-display);font-size:clamp(1.4rem,1.15rem + .9vw,1.8rem);line-height:1.2;font-style:italic;color:var(--muted)}
.ba-after .ba-quote{color:var(--forest)}
.ba-card p:last-child{margin:0;color:var(--muted)}
.ba-arrow{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:var(--btn);color:var(--btn-text);font-weight:800;font-size:1.3rem;animation:baarrow 2.8s ease-in-out infinite}
@keyframes baarrow{0%,100%{transform:translateX(0)}50%{transform:translateX(6px)}}
@media (max-width:820px){.ba{grid-template-columns:1fr}.ba-arrow{margin:0 auto;transform:rotate(90deg);animation:none}}
/* Le pont */
.bridge{padding-block:clamp(3rem,7vw,5rem)}
.bridge-inner{max-width:820px;text-align:center}
.bridge-inner .eyebrow{text-align:center}
.bridge-text{font-family:var(--f-display);font-size:clamp(1.7rem,1.3rem + 1.8vw,2.7rem);line-height:1.18;color:var(--forest);font-weight:600;margin:0 auto .8rem;max-width:none;text-wrap:balance}
.bridge-text em{color:var(--sage-deep);font-weight:500}
.bridge-sub{color:var(--muted);margin:0 auto;max-width:56ch}
/* Raison d'être */
.raison{text-align:center;padding:2rem 1.5rem;border-radius:var(--radius);background:var(--card)}
.raison .story-quote{max-width:34ch;font-size:clamp(1.4rem,1.15rem + 1vw,1.9rem)}
.belief-ico .crown circle{fill:var(--sage);stroke:none;opacity:.8}
.hero-hook{font-family:var(--f-display);font-style:italic;font-size:clamp(1.3rem,1.1rem + .8vw,1.65rem);line-height:1.3;color:var(--forest);margin:0 0 .6rem;padding-left:1rem;border-left:3px solid var(--sage)}

/* ---------- Palette ciel et lavande ---------- */
.iams>.iam:nth-child(1){background:var(--sky);border-color:var(--sky)}
.iams>.iam:nth-child(1):hover{background:#c8d9e2;border-color:#c8d9e2}
.iams>.iam:nth-child(2){background:var(--lav);border-color:var(--lav)}
.iams>.iam:nth-child(2):hover{background:#d5cee5;border-color:#d5cee5}
.iams>.iam:nth-child(3){background:var(--btn);border-color:var(--btn)}
.iams>.iam:nth-child(1) .iam-who,.iams>.iam:nth-child(2) .iam-who{color:#3b4a52}
.iams>.iam:nth-child(2) .iam-who{color:#4a4560}
.iams>.iam:nth-child(1) .iam-why{color:#4f6470;opacity:1}
.iams>.iam:nth-child(2) .iam-why{color:#615a78;opacity:1}
.beliefs .belief:nth-child(1){background:var(--sky-pale)}
.beliefs .belief:nth-child(2){background:var(--lav-pale)}
.beliefs .belief:nth-child(3){background:var(--mist)}
.beliefs .belief:nth-child(1) .belief-ico{stroke:#6f8fa0}
.beliefs .belief:nth-child(2) .belief-ico{stroke:#857aa3}
.avis-tag{background:var(--wheat);color:#6b5a32}
.ba-after{border-color:var(--lav)}
.ba-arrow{background:var(--lav);color:#4a4560}
/* chaque profil a sa couleur */
body[data-page="enfant"] .page-head,[data-view="enfant"] .page-head{background:linear-gradient(180deg,var(--sky),var(--paper))}
body[data-page="adulte"] .page-head,[data-view="adulte"] .page-head{background:linear-gradient(180deg,var(--lav),var(--paper))}
body[data-page="structures"] .page-head,[data-view="structures"] .page-head,body[data-page="entreprise"] .page-head,[data-view="entreprise"] .page-head{background:linear-gradient(180deg,var(--sky-pale),var(--paper))}
body[data-page="enfant"] .band-mist,[data-view="enfant"] .band-mist{background:var(--sky-pale)}
body[data-page="adulte"] .band-mist,[data-view="adulte"] .band-mist{background:var(--lav-pale)}
body[data-page="enfant"] .callout,[data-view="enfant"] .callout{border-color:var(--sky)}
body[data-page="adulte"] .callout,[data-view="adulte"] .callout{border-color:var(--lav)}
.tables .table-card:nth-child(1){border-top:5px solid var(--sky)}
.tables .table-card:nth-child(2){border-top:5px solid var(--lav)}
.tables .table-card:nth-child(3){border-top:5px solid var(--pearl)}
.chips li:nth-child(3n+1){background:var(--sky-pale)}
.chips li:nth-child(3n+2){background:var(--lav-pale)}
.chips li:nth-child(3n){background:var(--mist)}
.band-cta{background:linear-gradient(120deg,var(--mist),var(--sky-pale) 55%,var(--lav-pale))}

/* ---------- Autour de la photo : halos de couleur et symboles ---------- */
.hero-visual{isolation:isolate}
.leaf{display:none}
.halo{position:absolute;z-index:-1;border-radius:50%;filter:blur(28px);opacity:.75;pointer-events:none}
.halo.h1{width:62%;aspect-ratio:1;top:-4%;right:-14%;background:var(--sky);animation:halo 14s ease-in-out infinite}
.halo.h2{width:55%;aspect-ratio:1;bottom:6%;left:-18%;background:var(--lav);animation:halo 17s ease-in-out -5s infinite}
.halo.h3{width:40%;aspect-ratio:1;bottom:-6%;right:-6%;background:var(--sage);opacity:.6;animation:halo 12s ease-in-out -8s infinite}
@keyframes halo{0%,100%{transform:translate(0,0) scale(1)}33%{transform:translate(-14px,10px) scale(1.06)}66%{transform:translate(10px,-12px) scale(.96)}}
.float-ico{position:absolute;z-index:2;width:34px;height:34px;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
.fi-sun{top:3%;right:-4%;stroke:#7f9db0;animation:drift 9s ease-in-out infinite}
.fi-heart{top:40%;right:-9%;width:28px;height:28px;stroke:#9286b0;animation:drift 11s ease-in-out -3s infinite}
@keyframes drift{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-10px) rotate(8deg)}}
@media (max-width:820px){.fi-sun{right:-8%}.fi-heart{right:-12%}}

/* ---------- Respiration carrée dans un rond ---------- */
.float-ico{display:none}
.orb{position:absolute;left:-40px;bottom:26px;z-index:3;width:150px;height:150px;border-radius:50%;padding:0;border:1px solid rgba(255,255,255,.85);background:color-mix(in srgb,var(--card) 70%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 18px 40px -20px rgba(70,90,120,.5);cursor:pointer;display:grid;place-items:center;font-family:var(--f-body);transition:transform .35s cubic-bezier(.3,1.4,.5,1)}
.orb:hover{transform:scale(1.04)}
.orb:active{transform:scale(.97)}
.orb-svg{position:absolute;inset:7px;width:calc(100% - 14px);height:calc(100% - 14px);overflow:visible}
.orb-track{fill:none;stroke:color-mix(in srgb,var(--lav) 80%,transparent);stroke-width:2.5}
.orb-prog{fill:none;stroke:var(--sage-deep);stroke-width:3;stroke-linecap:round;transform:rotate(-90deg);transform-origin:50px 50px}
.orb-core{fill:url(#none);fill:var(--sky);transform-origin:50px 50px;transform:scale(.62);opacity:.85}
.orb[data-phase="1"] .orb-core,.orb[data-phase="3"] .orb-core{fill:var(--lav)}
.orb-ticks circle{fill:var(--card);stroke:var(--sage-deep);stroke-width:1.5}
.orb:not(.running) .orb-core{animation:orbidle 4.5s ease-in-out infinite}
.orb:not(.running)::after{content:"";position:absolute;inset:-6px;border-radius:50%;border:1.5px solid var(--lav);animation:orbring 3s ease-out infinite;pointer-events:none}
@keyframes orbidle{0%,100%{transform:scale(.62)}50%{transform:scale(.74)}}
@keyframes orbring{0%{transform:scale(.92);opacity:.9}100%{transform:scale(1.18);opacity:0}}
.orb-text{position:relative;display:grid;justify-items:center;text-align:center;line-height:1.1;padding:0 18px}
.orb-word{font-family:var(--f-display);font-size:1.22rem;font-weight:600;color:var(--forest)}
.orb-sub{font-size:.62rem;font-weight:800;letter-spacing:.04em;color:#4f6470;margin-top:.25rem}
.orb.running .orb-sub{font-family:var(--f-display);font-size:1.8rem;letter-spacing:0;color:var(--forest);font-variant-numeric:tabular-nums;margin-top:0}
@media (max-width:820px){.orb{left:-14%;bottom:10px;width:124px;height:124px}.orb-word{font-size:1.05rem}.orb.running .orb-sub{font-size:1.5rem}}
@media (prefers-reduced-motion:reduce){.orb:not(.running) .orb-core,.orb:not(.running)::after{animation:none}}

/* Les trois cartes de l'accueil */
.belief{display:flex;flex-direction:column;text-decoration:none;color:var(--ink);transition:transform .35s ease,box-shadow .35s ease}
a.belief:hover{transform:translateY(-5px);box-shadow:var(--shadow);color:var(--ink)}
.belief-tag{align-self:flex-start;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;font-weight:800;padding:.35em .9em;border-radius:999px;background:var(--card);color:var(--sage-deep);margin-bottom:1.1rem}
.beliefs .belief:nth-child(1) .belief-tag{color:#4f6f80}
.beliefs .belief:nth-child(2) .belief-tag{color:#6d6290}
.belief p:not(.belief-big){color:var(--muted);flex:1}
.belief-more{margin-top:1.1rem;font-weight:800;color:var(--forest);display:inline-flex;gap:.4em}
.belief-more::after{content:"→";transition:transform .3s}
a.belief:hover .belief-more::after{transform:translateX(5px)}
.kit{list-style:none;margin:0;padding:0;display:grid;gap:.85rem}
.kit li{display:grid;grid-template-columns:40px 1fr;gap:.8rem;align-items:center}
.kit svg{width:40px;height:40px;padding:9px;border-radius:12px;background:var(--card);fill:none;stroke:var(--sage-deep);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.kit span{display:grid;line-height:1.3;font-size:.9rem;color:var(--muted)}
.kit strong{color:var(--ink);font-size:.98rem}

/* Ouverture : le pont */
.intro{padding-block:clamp(2.5rem,6vw,4.5rem) 0}
.intro-inner{max-width:880px;text-align:center}
.intro-text{font-family:var(--f-display);font-size:clamp(1.6rem,1.25rem + 1.6vw,2.5rem);line-height:1.2;color:var(--forest);font-weight:600;margin:0 auto .9rem;max-width:none;text-wrap:balance}
.intro-text em{color:var(--sage-deep);font-weight:500}
.intro-sub{color:var(--muted);margin:0 auto;max-width:58ch}
.intro-inner::after{content:"";display:block;width:56px;height:2px;margin:2rem auto 0;background:linear-gradient(90deg,var(--sky),var(--lav))}
.section-tight{padding-top:clamp(2rem,4vw,3rem)}

/* Cabinet : présentation haut de gamme */
.phone-stage,.phone{display:none}
.cab-split{grid-template-columns:1fr minmax(0,340px);gap:clamp(2.5rem,7vw,6rem)}
.cab-copy h2{font-size:clamp(1.9rem,1.5rem + 1.6vw,2.8rem);font-weight:500;letter-spacing:-.01em}
.cab-copy>p{font-size:1.05rem;color:var(--muted);max-width:44ch}
.cab-facts{margin:1.8rem 0 1.6rem;display:grid;gap:0;border-top:1px solid var(--line);max-width:440px}
.cab-facts div{display:grid;grid-template-columns:110px 1fr;gap:1rem;padding:.8rem 0;border-bottom:1px solid var(--line)}
.cab-facts dt{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:var(--sage-deep);padding-top:.15rem}
.cab-facts dd{margin:0;font-weight:600}
.cab-frame{position:relative;margin:0;width:100%;max-width:340px;justify-self:end}
.cab-frame::before{content:"";position:absolute;inset:22px -22px -22px 22px;border:1px solid var(--sage);border-radius:160px 160px 6px 6px;z-index:-1}
.cab-frame video{display:block;width:100%;aspect-ratio:9/16;object-fit:cover;border-radius:160px 160px 6px 6px;background:var(--mist);box-shadow:0 30px 60px -35px rgba(60,80,70,.5)}
.cab-frame figcaption{position:absolute;left:18px;bottom:18px;font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;font-weight:800;color:#fff;background:rgba(40,55,45,.28);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);padding:.5em 1em;border-radius:999px}
.cab-frame{isolation:isolate}
@media (max-width:820px){.cab-split{grid-template-columns:1fr}.cab-frame{justify-self:center;width:min(78%,320px)}.cab-frame::before{inset:16px -16px -16px 16px}}
.belief-split{display:grid;gap:.7rem;flex:1}
.belief-split p{margin:0;padding:.8rem .9rem;border-radius:14px;background:color-mix(in srgb,var(--card) 70%,transparent);font-size:.93rem;color:var(--muted)}
.belief-split strong{display:block;color:#5d5280;font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;margin-bottom:.2rem}

/* Cabinet : carte vidéo moderne */
.cab-copy h2 em{font-style:italic;color:var(--sage-deep)}
.cab-copy .btn{margin-top:.8rem}
.cab-card{position:relative;margin:0;width:100%;max-width:340px;justify-self:end;isolation:isolate}
.cab-blob{position:absolute;z-index:-1;border-radius:50%;filter:blur(30px);opacity:.8}
.cab-blob.b1{width:70%;aspect-ratio:1;top:-6%;left:-22%;background:var(--sky);animation:halo 15s ease-in-out infinite}
.cab-blob.b2{width:65%;aspect-ratio:1;bottom:-4%;right:-20%;background:var(--lav);animation:halo 18s ease-in-out -6s infinite}
.cab-media{position:relative;border-radius:30px;overflow:hidden;padding:8px;background:color-mix(in srgb,var(--card) 65%,transparent);border:1px solid rgba(255,255,255,.9);box-shadow:0 30px 60px -32px rgba(60,80,100,.45);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.cab-media video{display:block;width:100%;aspect-ratio:9/16;object-fit:cover;border-radius:23px;background:var(--mist)}
.cab-chip{position:absolute;left:22px;font-size:.78rem;font-weight:800;color:var(--ink);background:rgba(255,255,255,.78);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);padding:.5em 1em;border-radius:999px;display:inline-flex;align-items:center;gap:.5em;box-shadow:0 6px 18px -10px rgba(0,0,0,.3)}
.cab-chip-top{top:22px}
.cab-chip-bottom{bottom:22px;left:auto;right:22px;font-weight:700;color:var(--muted)}
.cab-chip i{width:8px;height:8px;border-radius:50%;background:#7fa98a;animation:livedot 2s ease-out infinite}
@keyframes livedot{0%{box-shadow:0 0 0 0 rgba(127,169,138,.6)}100%{box-shadow:0 0 0 9px rgba(127,169,138,0)}}
@media (max-width:820px){.cab-card{justify-self:center;width:min(80%,320px)}}
@media (prefers-reduced-motion:reduce){.cab-blob,.cab-chip i{animation:none}}

/* Avis : avec leurs mots */
.voices{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(2rem,6vw,5rem);align-items:center}
.voices>*{min-width:0}
.voices-side h2 em{font-style:italic;color:var(--sage-deep);font-weight:500}
.words{list-style:none;padding:0;margin:1.4rem 0;display:flex;flex-wrap:wrap;gap:.5rem}
.words li{font-family:var(--f-display);font-style:italic;font-size:1.15rem;padding:.25em .9em;border-radius:999px;background:var(--card);color:var(--forest);border:1px solid var(--line)}
.words li:nth-child(3n+1){background:var(--sky-pale)}.words li:nth-child(3n+2){background:var(--lav-pale)}
.voices-rating{color:var(--muted);font-weight:700;font-size:.9rem}
.voices-stage{position:relative;background:var(--card);border-radius:30px;padding:clamp(2rem,4vw,3rem);box-shadow:0 30px 60px -40px rgba(60,80,100,.4);min-height:330px;display:flex;flex-direction:column}
.voices-mark{position:absolute;top:-.15em;left:.3em;font-family:var(--f-display);font-size:9rem;line-height:1;color:var(--lav);pointer-events:none}
.voices-track{position:relative;display:grid;flex:1}
.voice{grid-area:1/1;margin:0;opacity:0;transform:translateY(12px);transition:opacity .7s ease,transform .7s ease;visibility:hidden;display:flex;flex-direction:column;justify-content:center}
.voice.on{opacity:1;transform:none;visibility:visible}
.voice p{position:relative;font-family:var(--f-display);font-size:clamp(1.5rem,1.15rem + 1.4vw,2.2rem);line-height:1.25;color:var(--forest);font-weight:500;margin:0 0 1.2rem;max-width:none;text-wrap:balance}
.voice footer{display:flex;flex-wrap:wrap;gap:.3rem .8rem;align-items:baseline;font-size:.9rem;color:var(--muted)}
.voice footer strong{color:var(--ink)}
.voices-nav{display:flex;align-items:center;gap:.8rem;margin-top:1.6rem}
.vbtn{width:42px;height:42px;border-radius:50%;border:1px solid var(--line);background:var(--paper);color:var(--forest);font-weight:800;cursor:pointer;transition:background-color .25s,transform .25s}
.vbtn:hover{background:var(--mist);transform:scale(1.06)}
.vdots{display:flex;gap:.4rem;flex-wrap:wrap}
.vdot{width:8px;height:8px;padding:0;border-radius:999px;border:0;background:var(--line);cursor:pointer;transition:width .4s,background-color .4s}
.vdot.on{width:26px;background:var(--sage-deep)}
.voices-link{margin-top:1.2rem;font-size:.9rem}
@media (max-width:860px){.voices{grid-template-columns:1fr}.voices-stage{min-height:300px}}

/* Cabinet : retour à la grande arche */
.cab-split{grid-template-columns:1fr minmax(0,400px)}
.cab-frame{display:block;max-width:400px}
.section-head h2 em{font-style:italic;color:var(--sage-deep);font-weight:500}

/* Lien vers mon histoire, en haut */
.story-link{display:inline-flex;align-items:center;gap:.7rem;margin:1.2rem 0 .2rem;padding:.35rem .9rem .35rem .35rem;border-radius:999px;background:var(--card);border:1px solid var(--line);text-decoration:none;color:var(--ink);transition:border-color .25s,transform .25s;animation:monte .7s cubic-bezier(.2,.7,.2,1) .45s both}
.story-link img{width:40px;height:40px;border-radius:50%;object-fit:cover}
.story-link span{display:grid;line-height:1.2;font-weight:800;font-size:.9rem}
.story-link small{font-weight:600;color:var(--muted);font-size:.78rem}
.story-link b{color:var(--sage-deep);transition:transform .3s}
.story-link:hover{border-color:var(--sage);color:var(--ink)}
.story-link:hover b{transform:translateX(4px)}

/* Bouton retour en haut */
.to-top{position:fixed;right:max(18px,calc(env(safe-area-inset-right,0px) + 12px));bottom:calc(22px + env(safe-area-inset-bottom,0px));z-index:45;width:48px;height:48px;border-radius:50%;border:1px solid var(--line);background:color-mix(in srgb,var(--card) 88%,transparent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:var(--forest);font-size:1.2rem;font-weight:800;cursor:pointer;box-shadow:var(--shadow);opacity:0;transform:translateY(12px);pointer-events:none;transition:opacity .35s,transform .35s,background-color .25s}
.to-top.show{opacity:1;transform:none;pointer-events:auto}
.to-top:hover{background:var(--mist)}
@media (max-width:820px){.to-top{bottom:calc(84px + env(safe-area-inset-bottom,0px))}}
@media (max-width:820px){.cab-split{grid-template-columns:1fr}.cab-frame{justify-self:center;width:min(80%,330px)}}

/* ---------- Le cabinet en grand, façon cinéma ---------- */
.cinema{position:relative;overflow:hidden;isolation:isolate;padding-block:clamp(3rem,7vw,5.5rem);background:#e9efe6}
.cinema-bg{position:absolute;inset:-8%;width:116%;height:116%;object-fit:cover;filter:blur(38px) saturate(1.1);opacity:.55;z-index:-2;transform:scale(1.05)}
.cinema::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(251,252,249,.92) 0%,rgba(251,252,249,.6) 45%,rgba(251,252,249,.15) 100%)}
.cinema-inner{display:grid;grid-template-columns:1fr auto;gap:clamp(2rem,6vw,5rem);align-items:center}
.cinema-inner>*{min-width:0}
.cinema-copy h2{font-size:clamp(2.2rem,1.6rem + 2.4vw,3.6rem);font-weight:500;letter-spacing:-.01em}
.cinema-copy h2 em{font-style:italic;color:var(--sage-deep)}
.cinema-copy p:last-child{font-size:1.1rem;color:var(--ink);max-width:40ch}
.cinema-screen{height:min(82vh,780px);aspect-ratio:9/16;max-width:100%;border-radius:36px;overflow:hidden;box-shadow:0 40px 80px -40px rgba(40,60,50,.6),0 0 0 10px rgba(255,255,255,.55);transform:rotate(2deg);transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.cinema-screen:hover{transform:rotate(0) scale(1.01)}
.cinema-screen video{width:100%;height:100%;object-fit:cover;display:block}
@media (max-width:820px){
  .cinema::after{background:linear-gradient(180deg,rgba(251,252,249,.9) 0%,rgba(251,252,249,.35) 60%,rgba(251,252,249,.15) 100%)}
  .cinema-inner{grid-template-columns:1fr}
  .cinema-screen{height:auto;width:min(86%,380px);justify-self:center;transform:none}
}

/* Venir au cabinet */
.visit-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(2rem,5vw,4rem);align-items:center}
.visit-grid>*{min-width:0}
.visit-grid h2 em{font-style:italic;color:var(--sage-deep);font-weight:500}
.visit-actions{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.2rem}
.map-card{position:relative;display:block;border-radius:28px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow);transition:transform .4s ease,box-shadow .4s ease}
.map-card svg{display:block;width:100%;height:auto}
.map-card:hover{transform:translateY(-4px)}
.map-pin{animation:pin 2.6s ease-in-out infinite}
@keyframes pin{0%,100%{transform:translate(205px,118px)}50%{transform:translate(205px,110px)}}
.map-cta{position:absolute;left:18px;bottom:18px;background:#fff;color:var(--forest);font-weight:800;font-size:.88rem;padding:.6em 1.1em;border-radius:999px;box-shadow:0 8px 20px -12px rgba(0,0,0,.35)}
.map-cta b{display:inline-block;transition:transform .3s}
.map-card:hover .map-cta b{transform:translateX(4px)}
@media (max-width:820px){.visit-grid{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.map-pin{animation:none}}

/* Flèche « mon histoire » sur la photo */
.story-link{display:none}
.photo-story{position:absolute;right:-18px;top:16%;z-index:3;display:flex;align-items:center;gap:.7rem;padding:.6rem .7rem .6rem 1rem;border-radius:999px;background:color-mix(in srgb,var(--card) 82%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.9);box-shadow:0 14px 30px -16px rgba(60,80,100,.5);text-decoration:none;color:var(--ink);transition:transform .3s;animation:monte .8s cubic-bezier(.2,.7,.2,1) .9s both}
.photo-story span{display:grid;line-height:1.15;font-weight:800;font-size:.88rem}
.photo-story small{font-weight:600;font-size:.74rem;color:var(--muted)}
.photo-story b{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--lav);color:#4a4560;transition:transform .3s}
.photo-story:hover{transform:translateX(-3px);color:var(--ink)}
.photo-story:hover b{transform:translateX(3px)}
@media (max-width:820px){.photo-story{right:-10%;top:10%}}
@media (max-width:820px){.photo-story{top:auto;bottom:14px;right:-12%}}

/* Photo d'accueil aérée */
.hero-visual{display:flex;flex-direction:column;align-items:center;gap:1rem}
.halo{opacity:.45}
.halo.h3{opacity:.35}
.photo-story,.photo-story:hover{position:static;transform:none;animation:monte .8s cubic-bezier(.2,.7,.2,1) .9s both;padding:.35rem .4rem .35rem .9rem;background:transparent;border:0;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;gap:.6rem}
.photo-story span{display:block;font-size:.9rem}
.photo-story small{display:inline;font-size:.9rem;font-weight:600;color:var(--muted);margin-left:.35rem}
.photo-story small::before{content:""}
.photo-story b{width:30px;height:30px}
.photo-story:hover b{transform:translateX(4px)}
.orb{width:118px;height:118px;left:-46px;bottom:56px}
.orb-word{font-size:1.02rem}
.orb-sub{font-size:.56rem}
.orb.running .orb-sub{font-size:1.5rem}
@media (max-width:820px){
  .photo-story,.photo-story:hover{position:static}
  .photo-story small{display:block;margin:0}
  .photo-story small::before{content:""}
  .orb{width:98px;height:98px;left:-16%;bottom:62px}
  .orb-word{font-size:.92rem}
  .orb-sub{font-size:.5rem}
}
.orb-word{white-space:nowrap;font-size:1rem}
.orb-sub{font-size:.66rem;letter-spacing:.06em}
.orb-text{padding:0 10px}
@media (max-width:820px){.orb-word{font-size:.88rem}.orb-sub{font-size:.6rem}}

/* Boutons professionnels, séparés et plus soignés */
.iams-sep{display:flex;align-items:center;gap:.8rem;margin:1rem 0 .1rem;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:var(--muted)}
.iams-sep::after{content:"";flex:1;height:1px;background:var(--line)}
.iams-pro{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}
.iam-pro{flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:.6rem;padding:1rem;background:linear-gradient(var(--card),var(--card)) padding-box,linear-gradient(135deg,var(--sky),var(--lav),var(--sage)) border-box;border:1.5px solid transparent;box-shadow:0 10px 24px -20px rgba(60,80,100,.5)}
.iam-pro:hover{transform:translateY(-3px);box-shadow:0 16px 30px -20px rgba(60,80,100,.55)}
.iam-pro .choice-arrow{position:absolute;right:.8rem;top:.9rem;width:28px;height:28px;font-size:.8rem}
.iam-ico{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,var(--sky-pale),var(--lav-pale))}
.iam-ico svg{width:20px;height:20px;fill:none;stroke:var(--sage-deep);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.iam-pro .iam-who{font-size:.95rem}
@media (max-width:420px){.iams-pro{grid-template-columns:1fr}}

/* Bouton principal plus moderne */
.btn-primary{background:linear-gradient(135deg,#cfe0c9 0%,#d6e3ea 100%);color:var(--btn-text);padding-right:.45rem;gap:.7rem;box-shadow:0 10px 24px -14px rgba(70,100,80,.55);border:1px solid rgba(255,255,255,.7)}
.btn-primary::after{content:"→";display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#fff;color:var(--forest);font-weight:800;transition:transform .35s cubic-bezier(.3,1.5,.5,1)}
.btn-primary:hover{background:linear-gradient(135deg,#c3d6bc 0%,#c8d9e2 100%);color:var(--btn-text)}
.btn-primary:hover::after{transform:translateX(3px) rotate(-8deg)}
.nav .btn-primary{padding-right:.35rem}
.nav .btn-primary::after{width:30px;height:30px}
.band-cta .btn-primary{background:#fff;color:var(--forest)}
.band-cta .btn-primary::after{background:linear-gradient(135deg,#cfe0c9,#d6e3ea)}
.mobile-rdv .btn-primary{justify-content:space-between;padding-left:1.4rem}

/* Bandeau professionnels */
.pros{padding-block:clamp(2.5rem,6vw,4rem)}
.pros-inner{display:grid;grid-template-columns:1fr 1.15fr;gap:clamp(1.5rem,4vw,3.5rem);align-items:center;padding:clamp(1.6rem,4vw,2.6rem);border-radius:30px;background:linear-gradient(var(--card),var(--card)) padding-box,linear-gradient(135deg,var(--sky),var(--lav),var(--sage)) border-box;border:1.5px solid transparent;box-shadow:0 24px 50px -40px rgba(60,80,100,.5)}
.pros-inner>*{min-width:0}
.pros-copy h2 em{font-style:italic;color:var(--sage-deep);font-weight:500}
.pros-copy p:last-child{color:var(--muted);margin:0}
.pros-cards{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}
.pro-card{position:relative;display:grid;gap:.3rem;padding:1.2rem;border-radius:20px;background:linear-gradient(135deg,var(--sky-pale),var(--lav-pale));text-decoration:none;color:var(--ink);transition:transform .3s,box-shadow .3s}
.pro-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);color:var(--ink)}
.pro-card .iam-ico{background:var(--card);margin-bottom:.4rem}
.pro-card strong{font-family:var(--f-display);font-size:1.35rem;color:var(--forest);font-weight:600}
.pro-card>span:not(.iam-ico){font-size:.88rem;color:var(--muted)}
.pro-card b{position:absolute;top:1rem;right:1rem;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--card);color:var(--forest);transition:transform .3s}
.pro-card:hover b{transform:translateX(3px)}
@media (max-width:860px){.pros-inner{grid-template-columns:1fr}}
@media (max-width:460px){.pros-cards{grid-template-columns:1fr}}

/* ---------- Menu ---------- */
.nav-label,.nav-contact,.nav a i,.nav a small{display:none}
.nav a span{display:block}
@media (min-width:0px){
  .nav{max-height:calc(100dvh - 72px - env(safe-area-inset-top,0px));overflow-y:auto;gap:.35rem;padding-top:.6rem;background:linear-gradient(180deg,var(--paper),#f3f6f8)}
  .nav-label{display:block;font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;font-weight:800;color:var(--muted);margin:.9rem .3rem .2rem}
  .nav-label:first-child{margin-top:.2rem}
  .nav a:not(.btn){display:flex;align-items:center;gap:.9rem;padding:.75rem .9rem;border-radius:16px;background:var(--card);border:1px solid var(--line);white-space:normal}
  .nav a:not(.btn) span{display:grid;line-height:1.2;font-weight:800;font-size:1rem;flex:1}
  .nav a:not(.btn) small{display:block;font-weight:600;font-size:.8rem;color:var(--muted);margin-top:.15rem}
  .nav a:not(.btn) i{display:block;width:34px;height:34px;border-radius:11px;flex:none;background:var(--mist)}
  .nav a:not(.btn)::after{content:"→";color:var(--sage-deep);font-weight:800;transition:transform .3s}
  .nav a:not(.btn):hover::after{transform:translateX(4px)}
  .nav a[aria-current="page"]{border-color:var(--sage)}
  .nav a.nav-enfant i{background:var(--sky)}
  .nav a.nav-adulte i{background:var(--lav)}
  .nav a.nav-parent-enfant i{background:linear-gradient(135deg,var(--sky),var(--lav))}
  .nav a.nav-structures i,.nav a.nav-entreprise i{background:var(--pearl);box-shadow:inset 0 0 0 1.5px var(--sage)}
  .nav .nav-accueil i,.nav .nav-ateliers i,.nav .nav-qui-suis-je i,.nav .nav-tarifs i{background:var(--mist)}
  .nav a{order:0!important}
  .nav .btn{margin-top:1rem}
  .nav-contact{display:block;text-align:center;margin:.8rem 0 0;font-size:.88rem;color:var(--muted)}
  .nav-contact a{display:inline!important;padding:0!important;border:0!important;background:none!important;font-weight:700;color:var(--sage-deep)}
  .nav-contact a::after{display:none}
  .menu-open .nav>*{animation:navin .45s cubic-bezier(.2,.7,.2,1) both}
  .menu-open .nav>*:nth-child(2){animation-delay:.03s}.menu-open .nav>*:nth-child(3){animation-delay:.06s}.menu-open .nav>*:nth-child(4){animation-delay:.09s}
  .menu-open .nav>*:nth-child(5){animation-delay:.12s}.menu-open .nav>*:nth-child(6){animation-delay:.15s}.menu-open .nav>*:nth-child(7){animation-delay:.18s}
  .menu-open .nav>*:nth-child(8){animation-delay:.21s}.menu-open .nav>*:nth-child(9){animation-delay:.24s}.menu-open .nav>*:nth-child(10){animation-delay:.27s}
  .menu-open .nav>*:nth-child(n+11){animation-delay:.3s}
}
@keyframes navin{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}

/* Menu : panneau aussi sur ordinateur, bouton rendez-vous visible dans l'en-tête */
.header-rdv{display:none}
@media (min-width:821px){
  .header-row{gap:1rem}
  .header-actions{display:flex;align-items:center;gap:.8rem}
  .header-rdv{display:inline-flex;min-height:44px;padding-top:.5rem;padding-bottom:.5rem}
  .nav{left:auto;right:max(20px,calc((100vw - 1120px)/2 + 20px));width:420px;border:1px solid var(--line);border-top:0;border-radius:0 0 26px 26px}
}
.footer-grid{grid-template-columns:1.3fr 1fr}
@media (max-width:520px){.footer-grid{grid-template-columns:1fr}}
.pros-copy h2{margin:0}

/* Kit dans « Comment ça se passe » */
.kit-band{margin-top:1.4rem;padding:1.4rem 1.6rem;border-radius:var(--radius);background:var(--card);display:grid;grid-template-columns:auto 1fr;gap:1rem 2rem;align-items:center}
.kit-title{font-family:var(--f-display);font-size:1.4rem;color:var(--forest);font-weight:600;margin:0;max-width:16ch;line-height:1.15}
.kit-band .kit{grid-template-columns:repeat(3,1fr);gap:1rem}
.kit-band .kit svg{background:var(--mist)}
@media (max-width:900px){.kit-band{grid-template-columns:1fr}.kit-band .kit{grid-template-columns:1fr}.kit-title{max-width:none}}
/* Parent / adulte sur la page Pour moi */
.who-split{display:grid;grid-template-columns:1fr 1fr;gap:1.1rem}
.who{padding:1.5rem 1.6rem;border-radius:var(--radius)}
.who-parent{background:var(--lav-pale)}
.who-adult{background:var(--sky-pale)}
.who-tag{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;font-weight:800;color:#6d6290;margin-bottom:.5rem}
.who-adult .who-tag{color:#4f6f80}
.who p:last-child{margin:0;font-size:1.05rem}
@media (max-width:760px){.who-split{grid-template-columns:1fr}}

/* Cartes de profil = navigation principale */
.cards-sec{padding-top:clamp(1rem,3vw,2rem)}
.beliefs .belief:nth-child(3){background:var(--mist)}
.belief{position:relative}
.belief-go{position:absolute;top:1.2rem;right:1.2rem;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--card);color:var(--forest);font-weight:800;font-size:1.1rem;box-shadow:0 8px 18px -12px rgba(60,80,100,.5);transition:transform .35s cubic-bezier(.3,1.5,.5,1),background-color .3s}
a.belief:hover .belief-go{transform:translateX(4px) rotate(-8deg);background:var(--btn)}
.belief-tag{margin-right:3.2rem}

/* ---------- Flèches là où elles aident, calendrier pour le rendez-vous, menu épuré ---------- */
.belief-more{padding:.55rem 1rem;border-radius:999px;background:var(--card);align-self:flex-start;gap:.5rem;box-shadow:0 8px 18px -14px rgba(60,80,100,.5);transition:background-color .3s}
a.belief:hover .belief-more{background:var(--btn)}
/* Prendre rendez-vous : une petite icône calendrier */
.btn-primary::after{content:"";font-size:0;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236c8870' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='5' width='16' height='15' rx='3'/%3E%3Cpath d='M8 3v4M16 3v4M4 10h16'/%3E%3Ccircle cx='12' cy='15' r='1.3' fill='%236c8870' stroke='none'/%3E%3C/svg%3E") center/18px no-repeat}
.btn-primary:hover::after{transform:rotate(-8deg) scale(1.08)}
.band-cta .btn-primary::after{background-color:#e7efe3}
/* Menu : sans flèches */
.nav a:not(.btn)::after{content:none}

/* ---------- Bulle de respiration : forme organique ---------- */
.blob{--s:1;position:absolute;left:-52px;bottom:52px;z-index:3;width:128px;height:128px;padding:0;border:0;background:none;cursor:pointer;display:grid;place-items:center;font-family:var(--f-body)}
.blob-shape{position:absolute;inset:0;border-radius:58% 42% 55% 45% / 47% 56% 44% 53%;background:linear-gradient(135deg,color-mix(in srgb,var(--sky) 88%,#fff),color-mix(in srgb,var(--lav) 88%,#fff));box-shadow:0 18px 36px -18px rgba(70,90,120,.5),inset 0 0 0 1.5px rgba(255,255,255,.75);transform:scale(var(--s));transition:transform .25s linear,background .8s;animation:morph 9s ease-in-out infinite}
.blob[data-phase="1"] .blob-shape,.blob[data-phase="3"] .blob-shape{background:linear-gradient(135deg,color-mix(in srgb,var(--lav) 90%,#fff),color-mix(in srgb,var(--sage) 70%,#fff))}
@keyframes morph{0%,100%{border-radius:58% 42% 55% 45% / 47% 56% 44% 53%}33%{border-radius:44% 56% 41% 59% / 58% 43% 57% 42%}66%{border-radius:52% 48% 63% 37% / 40% 60% 40% 60%}}
.blob:not(.running) .blob-shape{animation:morph 9s ease-in-out infinite,blobidle 4.5s ease-in-out infinite}
@keyframes blobidle{0%,100%{transform:scale(1)}50%{transform:scale(1.06)}}
.blob:hover .blob-shape{filter:brightness(1.03)}
.blob .orb-text{position:relative;display:grid;justify-items:center;text-align:center;line-height:1.1}
.blob .orb-word{font-family:var(--f-display);font-size:1.08rem;font-weight:600;color:var(--forest);white-space:nowrap}
.blob .orb-sub{font-size:.64rem;font-weight:800;letter-spacing:.06em;color:#4f6470;margin-top:.2rem}
.blob.running .orb-sub{font-family:var(--f-display);font-size:1.6rem;letter-spacing:0;color:var(--forest);margin-top:0}
.blob-steps{display:none;gap:4px;margin-top:.35rem}
.blob.running .blob-steps{display:flex}
.blob-steps i{width:5px;height:5px;border-radius:50%;background:rgba(93,122,99,.3);transition:width .3s,background-color .3s}
.blob-steps i.on{width:14px;border-radius:3px;background:var(--sage-deep)}
@media (max-width:820px){.blob{left:-16%;bottom:62px;width:104px;height:104px}.blob .orb-word{font-size:.92rem}.blob.running .orb-sub{font-size:1.3rem}}
@media (prefers-reduced-motion:reduce){.blob-shape{animation:none!important}}
@keyframes morph{0%,100%{border-radius:64% 36% 58% 42% / 42% 60% 40% 58%}33%{border-radius:38% 62% 40% 60% / 62% 38% 64% 36%}66%{border-radius:56% 44% 70% 30% / 36% 66% 34% 64%}}
.blob-shape{border-radius:64% 36% 58% 42% / 42% 60% 40% 58%}

/* Bulle : forme dessinée, avec un trait qui en fait le tour */
.blob-shape{display:none}
.blob-svg{position:absolute;inset:-8px;width:calc(100% + 16px);height:calc(100% + 16px);overflow:visible;transform:scale(var(--s));transition:transform .25s linear;filter:drop-shadow(0 14px 18px rgba(70,90,120,.28))}
.blob-rot{transform-origin:50px 50px;animation:blobspin 24s linear infinite}
@keyframes blobspin{to{transform:rotate(360deg)}}
.blob.running .blob-rot{animation:none}
.blob-fill{fill:url(#blobg);stroke:rgba(255,255,255,.9);stroke-width:1.5}
.blob[data-phase="1"] .blob-fill,.blob[data-phase="3"] .blob-fill{fill:#e7e3f0}
.blob-track{fill:none;stroke:rgba(108,136,112,.18);stroke-width:2.2}
.blob-prog{fill:none;stroke:var(--sage-deep);stroke-width:3;stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:100}
.blob:not(.running) .blob-svg{animation:blobidle 4.5s ease-in-out infinite}
@media (prefers-reduced-motion:reduce){.blob-rot,.blob:not(.running) .blob-svg{animation:none}}
.blob:not(.running) .blob-prog{opacity:0}
.blob-prog{transition:opacity .4s}

/* Un moment rien qu'à lui */
.me-time{padding-block:clamp(2.5rem,6vw,4rem)}
.me-time-inner{position:relative;max-width:900px;text-align:center;padding:clamp(2rem,5vw,3.2rem) clamp(1.4rem,5vw,3.5rem);border-radius:36px;background:radial-gradient(circle at 15% 20%,rgba(255,255,255,.7),transparent 40%),linear-gradient(135deg,var(--sky-pale),var(--lav-pale));overflow:hidden}
.me-time-inner::before,.me-time-inner::after{content:"";position:absolute;border-radius:50%;background:var(--sky);opacity:.5;filter:blur(2px);animation:floaty 8s ease-in-out infinite}
.me-time-inner::before{width:18px;height:18px;top:18%;right:9%}
.me-time-inner::after{width:12px;height:12px;bottom:16%;left:8%;background:var(--lav);animation-delay:-3s}
@keyframes floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
.me-time .eyebrow{text-align:center}
.me-time-big{font-family:var(--f-display);font-size:clamp(1.5rem,1.15rem + 1.4vw,2.3rem);line-height:1.25;color:var(--forest);font-weight:500;margin:0 auto .8rem;max-width:none;text-wrap:balance}
.me-time-big em{color:var(--sage-deep);font-weight:600}
.me-time-sub{color:var(--muted);margin:0 auto;font-size:1.08rem;max-width:46ch}
@media (prefers-reduced-motion:reduce){.me-time-inner::before,.me-time-inner::after{animation:none}}

/* Enfant : un temps à lui / et vous, parent */
.duo{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}
.duo-card{padding:clamp(1.6rem,3vw,2.2rem);border-radius:var(--radius);border:1px solid var(--line);background:var(--card)}
.duo-child{background:linear-gradient(160deg,var(--sky-pale),var(--card) 70%)}
.duo-parent{background:linear-gradient(160deg,var(--lav-pale),var(--card) 70%)}
.duo-card h3{font-size:clamp(1.4rem,1.2rem + .7vw,1.75rem);margin-bottom:.6rem}
.duo-card p:last-child{margin:0;color:var(--muted)}
@media (max-width:760px){.duo{grid-template-columns:1fr}}
.belief p strong{color:var(--forest)}

/* Parent-enfant : trois façons */
.section-head h2 em{font-style:italic}
.ways{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.way{position:relative;padding:1.8rem 1.6rem;border-radius:var(--radius);background:var(--card);border:1px solid var(--line);transition:transform .35s,box-shadow .35s}
.way:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.way:nth-child(1){background:linear-gradient(160deg,var(--sky-pale),var(--card) 70%)}
.way:nth-child(2){background:linear-gradient(160deg,var(--lav-pale),var(--card) 70%)}
.way:nth-child(3){background:linear-gradient(160deg,var(--mist),var(--card) 70%)}
.way-num{display:block;font-family:var(--f-display);font-size:2.4rem;line-height:1;color:var(--sage);font-weight:600;margin-bottom:.8rem}
.way h3{font-size:1.4rem}
.way p{margin:0;color:var(--muted)}
@media (max-width:860px){.ways{grid-template-columns:1fr}}
.way-tag{display:inline-block;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;font-weight:800;color:var(--sage-deep);background:var(--card);padding:.35em .9em;border-radius:999px;margin-bottom:1rem}

/* Par où commencer (duo) */
.start{margin-top:1.6rem;padding:1.6rem;border-radius:var(--radius);background:var(--card)}
.start h3{margin-bottom:.8rem}
.start-list{list-style:none;padding:0;margin:0 0 1rem;display:grid;gap:0;border-top:1px solid var(--line)}
.start-list li{display:grid;grid-template-columns:1fr auto;gap:1rem;align-items:center;padding:.85rem 0;border-bottom:1px solid var(--line)}
.start-list span{color:var(--ink)}
.start-list b{font-size:.85rem;padding:.4em .9em;border-radius:999px;background:var(--lav-pale);color:#4a4560;white-space:nowrap}
.start-list li:last-child b{background:var(--sky-pale);color:#3b5562}
@media (max-width:620px){.start-list li{grid-template-columns:1fr}.start-list b{justify-self:start}}
/* Vous hésitez ? (accueil) */
.unsure{margin-top:1.2rem;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem 2rem;padding:1.2rem 1.5rem;border-radius:var(--radius);border:1.5px dashed var(--sage)}
.unsure p{margin:0;max-width:62ch;color:var(--muted)}
.unsure strong{color:var(--forest)}
.unsure-actions{display:flex;flex-wrap:wrap;gap:.6rem}
.unsure .btn{min-height:42px;padding:.5em 1.1em;font-size:.9rem}

/* Structures */
.two-col h2 em{font-style:italic;color:var(--sage-deep);font-weight:500}
.intent{padding:clamp(1.6rem,4vw,2.4rem);border-radius:30px;background:linear-gradient(150deg,var(--sky-pale),var(--lav-pale))}
.intent-line{font-family:var(--f-display);font-size:clamp(1.35rem,1.1rem + .9vw,1.8rem);line-height:1.25;color:var(--forest);font-weight:500;margin:0 0 .5rem}
.intent-line:nth-of-type(3){color:var(--sage-deep);font-style:italic}
.intent-sub{margin:1rem 0 0;color:var(--muted)}
.callout+.callout{margin-top:1rem}
.steps-6{grid-template-columns:repeat(3,1fr)}
@media (max-width:820px){.steps-6{grid-template-columns:1fr}}
.ages{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.age{padding:1.4rem;border-radius:var(--radius);background:var(--card)}
.age:nth-child(1){border-top:4px solid var(--sky)}.age:nth-child(2){border-top:4px solid var(--lav)}.age:nth-child(3){border-top:4px solid var(--sage)}.age:nth-child(4){border-top:4px solid var(--wheat)}
.age-grade{font-family:var(--f-display);font-size:1.6rem;color:var(--forest);font-weight:600;margin:0}
.age-years{font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;font-weight:800;color:var(--sage-deep);margin:0 0 .7rem}
.age p:last-child{margin:0;color:var(--muted);font-size:.94rem}
@media (max-width:960px){.ages{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.ages{grid-template-columns:1fr}}
.steps-6 li{background:var(--card);border:1px solid var(--line)}

/* Qui suis-je, version courte */
.about{padding-block:clamp(3rem,7vw,5.5rem)}
.about-grid{align-items:start}
.about-grid .arch-sm{position:sticky;top:110px}
.bio{display:grid;gap:.2rem;margin-top:1.4rem}
.bio p{color:var(--ink)}
.bio p:nth-child(1){padding-left:1rem;border-left:3px solid var(--sage)}
.bio p:nth-child(2){padding-left:1rem;border-left:3px solid var(--sky)}
.bio p:nth-child(3){padding-left:1rem;border-left:3px solid var(--lav)}
.bio p:nth-child(4){padding-left:1rem;border-left:3px solid var(--wheat)}
.bio-quote{font-family:var(--f-display);font-style:italic;font-size:clamp(1.35rem,1.1rem + .9vw,1.8rem);line-height:1.25;color:var(--forest);margin:1.4rem 0 1.4rem}
@media (max-width:820px){.about-grid .arch-sm{position:static}}

/* Ateliers */
.wks{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;align-items:stretch}
.wk{display:flex;flex-direction:column;padding:1.8rem 1.6rem;border-radius:var(--radius);border:1px solid var(--line)}
.wk-kids{background:linear-gradient(170deg,var(--sky-pale),var(--card) 75%)}
.wk-adults{background:linear-gradient(170deg,var(--lav-pale),var(--card) 75%)}
.wk-duo{background:linear-gradient(170deg,var(--mist),var(--card) 75%)}
.wk h3{font-size:1.5rem}
.wk>p{color:var(--muted);flex:1}
.wk-next{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--line)}
.wk-label{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;font-weight:800;color:var(--sage-deep);margin:0 0 .6rem}
.wk .events{margin:0}
.event-soon{display:flex;gap:.8rem;align-items:center;padding:.8rem 1rem;border-style:dashed}
.event-soon span{flex:none;font-weight:800;font-size:.8rem;padding:.3em .8em;border-radius:999px;background:var(--wheat);color:#6b5a32}
.event-soon p{font-size:.88rem}
@media (max-width:900px){.wks{grid-template-columns:1fr}}
.wk .way-tag{align-self:flex-start}

.wk>p:not(.wk-label):not(.wk-group){flex:0 0 auto}
.wk-list{margin:0 0 1rem;padding-left:1.1rem;color:var(--muted);display:grid;gap:.3rem;font-size:.95rem}
.wk-group{flex:1;font-size:.95rem;color:var(--ink);margin:0}
.wk-group strong{color:var(--forest)}
.tables{grid-template-columns:repeat(2,1fr)}
.tables .table-card:nth-child(3){border-top:5px solid var(--sage)}
.tables .table-card:nth-child(4){border-top:5px solid var(--wheat)}
@media (max-width:760px){.tables{grid-template-columns:1fr}}
.wk>p{flex:0 0 auto}.wk>.wk-group{flex:1 1 auto}

.gift-choice{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1rem 0 1.2rem}
.gift-col{padding:1rem 1.1rem;border-radius:16px;background:var(--paper)}
.gift-col-title{font-family:var(--f-display);font-size:1.2rem;font-weight:600;color:var(--forest);margin:0 0 .3rem;line-height:1.2}
.gift-col-title small{display:block;font-family:var(--f-body);font-size:.78rem;font-weight:600;color:var(--muted);margin-top:.15rem}
.gift-col .gift-options{margin:0}
@media (max-width:520px){.gift-choice{grid-template-columns:1fr}}

/* Chèque cadeau */
.gift-sec{background:linear-gradient(180deg,var(--paper),var(--sand))}
.gift-hero{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(2rem,6vw,4.5rem);align-items:center;padding:clamp(1.6rem,4vw,3rem);border-radius:36px;background:var(--card);box-shadow:0 30px 70px -50px rgba(60,80,100,.5)}
.gift-hero>*{min-width:0}
.gift-visual{position:relative;isolation:isolate;padding:1rem}
.gift-glow{position:absolute;inset:8% 4%;z-index:-1;border-radius:40px;background:linear-gradient(135deg,var(--sky),var(--lav));filter:blur(30px);opacity:.6}
.gift-visual img{width:100%;border-radius:10px;transform:rotate(-3deg);box-shadow:0 24px 40px -24px rgba(40,50,60,.55);transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.gift-visual:hover img{transform:rotate(0) scale(1.02)}
.gift-seal{position:absolute;top:-4px;right:6%;width:84px;height:84px;border-radius:50%;display:grid;place-items:center;text-align:center;font-family:var(--f-display);font-style:italic;font-weight:600;font-size:1.05rem;color:var(--forest);background:var(--wheat);box-shadow:0 10px 20px -12px rgba(0,0,0,.35);transform:rotate(10deg)}
.gift-copy h2 em{font-style:italic;color:var(--sage-deep);font-weight:500}
.gift-perks{list-style:none;padding:0;margin:1.2rem 0;display:flex;flex-wrap:wrap;gap:.5rem}
.gift-perks li{padding:.4em .9em;border-radius:999px;background:var(--mist);font-size:.85rem;font-weight:700;color:var(--btn-text)}
.gift-actions{display:grid;gap:.8rem;justify-items:start}
.gift-or{margin:0;font-size:.88rem;color:var(--muted);overflow-wrap:anywhere}
@media (max-width:860px){.gift-hero{grid-template-columns:1fr}}
.gift-seal{top:auto;bottom:-6px;right:4%}
.gift-actions .btn-primary{padding-right:1.5rem}
.gift-actions .btn-primary::after{content:none}
.wk-group{font-family:var(--f-display);font-style:italic;font-size:1.15rem;color:var(--forest)}

/* Note Google sous l'accroche */
.hero-rating{display:inline-flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-top:.4rem;padding:.45rem .9rem;border-radius:999px;background:var(--card);border:1px solid var(--line);font-size:.86rem;font-weight:600;color:var(--muted);text-decoration:none;animation:monte .8s cubic-bezier(.2,.7,.2,1) .55s both}
.hero-rating strong{color:var(--ink)}
.hero-rating:hover{border-color:var(--sage);color:var(--muted)}
/* Instagram */
.insta{padding-block:clamp(2rem,5vw,3.5rem)}
.insta-inner{display:grid;grid-template-columns:auto 1fr auto;gap:1.5rem;align-items:center;padding:clamp(1.4rem,3vw,2rem);border-radius:28px;background:linear-gradient(120deg,var(--sky-pale),var(--lav-pale))}
.insta-inner>*{min-width:0}
.insta-inner h2{font-size:clamp(1.4rem,1.2rem + .8vw,1.9rem);margin-bottom:.3rem}
.insta-inner h2 em{font-style:italic;color:var(--sage-deep);font-weight:500}
.insta-inner p:last-child{margin:0;color:var(--muted)}
.insta-ico{width:60px;height:60px;border-radius:18px;display:grid;place-items:center;background:var(--card);color:#857aa3}
.insta-ico svg{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:1.8}
.insta .btn{white-space:nowrap}
@media (max-width:760px){.insta-inner{grid-template-columns:1fr}.insta .btn{white-space:normal;justify-self:start}}
/* Bandeau de Noël */
.xmas{background:linear-gradient(90deg,var(--wheat),#f6efe0,var(--lav-pale));text-align:center;font-size:.88rem;font-weight:700}
.xmas a{display:block;padding:.55rem max(16px,env(safe-area-inset-right,0px)) .55rem max(16px,env(safe-area-inset-left,0px));color:#5b4b2a;text-decoration:none}
.xmas span{color:#b98a4e;margin-right:.3rem}
.xmas b{margin-left:.5rem;text-decoration:underline;text-underline-offset:3px}
.bio-way{margin:1.2rem 0 0;color:var(--ink);font-weight:600}
.callout p+p{margin-top:.6rem}
.age-list{list-style:none;margin:0;padding:0;display:grid;gap:.4rem}
.age-list li{position:relative;padding-left:1rem;font-size:.92rem;color:var(--ink);line-height:1.35}
.age-list li::before{content:"";position:absolute;left:0;top:.5em;width:6px;height:6px;border-radius:50%;background:var(--sage-deep)}

/* Tableau d'évolution par âge */
.age-table-wrap{overflow-x:auto;border-radius:var(--radius);background:var(--card);box-shadow:0 20px 40px -34px rgba(60,80,100,.5)}
.age-table{width:100%;min-width:760px;border-collapse:separate;border-spacing:0;margin:0}
.age-table th,.age-table td{padding:.95rem 1rem;text-align:left;vertical-align:top;border-bottom:1px solid var(--line);white-space:normal;font-variant-numeric:normal}
.age-table tbody tr:last-child th,.age-table tbody tr:last-child td{border-bottom:0}
.age-table thead th{border-bottom:2px solid var(--line)}
.age-table thead th:nth-child(2){background:var(--sky-pale)}
.age-table thead th:nth-child(3){background:var(--lav-pale)}
.age-table thead th:nth-child(4){background:var(--mist)}
.age-table thead th:nth-child(5){background:#faf4e6}
.age-table .age-grade{display:block;font-family:var(--f-display);font-size:1.35rem;color:var(--forest);font-weight:600}
.age-table .age-years{display:block;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;font-weight:800;color:var(--sage-deep);margin:0}
.age-table tbody th{font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;font-weight:800;color:var(--sage-deep);width:120px}
.age-table td{font-size:.92rem;color:var(--ink);font-weight:500;text-align:left}
.age-table tbody td{position:relative}

.ways-2{grid-template-columns:repeat(2,1fr);max-width:900px}
@media (max-width:760px){.ways-2{grid-template-columns:1fr}}
.team-card{position:relative;display:grid;gap:.3rem;margin-top:1.2rem;padding:1.2rem 3.5rem 1.2rem 1.2rem;border-radius:20px;background:linear-gradient(135deg,var(--sky-pale),var(--lav-pale));text-decoration:none;color:var(--ink);transition:transform .3s,box-shadow .3s}
.team-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);color:var(--ink)}
.team-card .way-tag{justify-self:start;margin-bottom:.4rem}
.team-card strong{font-family:var(--f-display);font-size:1.3rem;color:var(--forest);font-weight:600}
.team-card>span:not(.way-tag){font-size:.9rem;color:var(--muted)}
.team-card b{position:absolute;right:1rem;top:50%;transform:translateY(-50%);width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--card);color:var(--forest);transition:transform .3s}
.team-card:hover b{transform:translate(4px,-50%)}

/* Pages professionnelles : contact direct au lieu de la réservation en ligne */
.rdv-pro{display:none!important}
body[data-page="structures"] .rdv-std,body[data-page="entreprise"] .rdv-std{display:none!important}
body[data-page="structures"] .rdv-pro,body[data-page="entreprise"] .rdv-pro{display:inline-flex!important}
@media (max-width:820px){body[data-page="structures"] .header-rdv,body[data-page="entreprise"] .header-rdv{display:none!important}}
.mobile-rdv .rdv-pro{width:100%}
.btn-mail::after{background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236c8870' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='3'/%3E%3Cpath d='M4 7l8 6 8-6'/%3E%3C/svg%3E") center/18px no-repeat!important}
.head-pill{display:inline-block;margin:0 0 1rem;padding:.4em 1em;border-radius:999px;background:var(--card);border:1px solid var(--line);font-size:.88rem;font-weight:700;color:var(--sage-deep)}
.page-head .head-pill+.btn{margin-top:0;display:flex;width:max-content;max-width:100%}
.belief-note{margin:.9rem 0 0;font-size:.85rem;font-weight:700;color:#6d6290}
.ways-1{grid-template-columns:1fr;max-width:640px}
.team-card{padding-right:1.2rem}
.contact-box .contact-list{margin-bottom:0}

/* Boutons : une touche abricot pour réveiller la palette */
:root{--peps:#ef8270;--peps-2:#f6a796;--peps-deep:#e46f5c;--peps-text:#ffffff}
.btn-primary{background:linear-gradient(135deg,var(--peps-2) 0%,var(--peps) 100%);color:var(--peps-text);border-color:rgba(255,255,255,.6);box-shadow:0 10px 24px -14px rgba(228,111,92,.75)}
.btn-primary:hover{background:linear-gradient(135deg,var(--peps) 0%,var(--peps-deep) 100%);color:var(--peps-text)}
.nav .btn-primary,.nav .btn-primary:hover,.mobile-rdv .btn-primary{color:var(--peps-text)}
.btn-primary::after{background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e0705d' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='5' width='16' height='15' rx='3'/%3E%3Cpath d='M8 3v4M16 3v4M4 10h16'/%3E%3Ccircle cx='12' cy='15' r='1.3' fill='%23e0705d' stroke='none'/%3E%3C/svg%3E")}
.btn-mail::after{background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e0705d' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='3'/%3E%3Cpath d='M4 7l8 6 8-6'/%3E%3C/svg%3E") center/18px no-repeat!important}
@keyframes souffle{0%,100%{box-shadow:0 0 0 0 rgba(239,130,112,.55)}50%{box-shadow:0 0 0 10px rgba(239,130,112,0)}}
.band-cta .btn-primary{background:linear-gradient(135deg,var(--peps-2) 0%,var(--peps) 100%);color:var(--peps-text)}
.band-cta .btn-primary::after{background-color:#fff}
/* Le pont dans Mon histoire */
.bio-bridge{margin:1.4rem 0 0;padding:1rem 1.2rem;border-radius:18px;background:linear-gradient(135deg,var(--sky-pale),var(--lav-pale));font-family:var(--f-display);font-size:1.25rem;line-height:1.3;color:var(--forest)}
.band-cta .btn-primary::after{background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e0705d' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='5' width='16' height='15' rx='3'/%3E%3Cpath d='M8 3v4M16 3v4M4 10h16'/%3E%3Ccircle cx='12' cy='15' r='1.3' fill='%23e0705d' stroke='none'/%3E%3C/svg%3E") center/18px no-repeat}

/* ---------- Touches de corail, avec parcimonie ---------- */
:root{--coral:#ef8270;--coral-deep:#d9614e;--coral-pale:#fde6e0;--coral-soft:#f8b8a8}
/* bulle de respiration en corail */
.blob .blob-fill{fill:url(#blobg-coral)}
.blob[data-phase="1"] .blob-fill,.blob[data-phase="3"] .blob-fill{fill:#fbd2c7}
.blob-track{stroke:rgba(239,130,112,.25)}
.blob-prog{stroke:var(--coral-deep)}
.blob .orb-word{color:#a8473a}
.blob .orb-sub,.blob.running .orb-sub{color:#b5503f}
.blob-steps i{background:rgba(217,97,78,.25)}
.blob-steps i.on{background:var(--coral-deep)}
.blob-svg{filter:drop-shadow(0 14px 18px rgba(217,97,78,.28))}
/* petites touches */
.hero-hook{border-left-color:var(--coral)}
.steps li::before{background:var(--coral-pale);color:var(--coral-deep)}
.checks li::before{background:var(--coral-pale);box-shadow:inset 0 0 0 1.5px var(--coral-soft)}
.checks li::after{border-color:var(--coral-deep)}
.link-arrow::after{color:var(--coral)}
.link-arrow:hover{color:var(--coral-deep)}
.unsure{border-color:var(--coral-soft)}
.unsure strong{color:var(--coral-deep)}
.bio-quote{color:var(--coral-deep)}
.price-num{color:var(--forest)}
.price-meta{color:var(--coral-deep)}

/* Bulle équilibrée : base douce ciel et lavande, corail seulement en accent */
.blob[data-phase="1"] .blob-fill,.blob[data-phase="3"] .blob-fill{fill:#ece7f5}
.blob-track{stroke:rgba(108,136,112,.2)}
.blob-prog{stroke:var(--coral)}
.blob .orb-word{color:var(--forest)}
.blob .orb-sub{color:var(--coral-deep)}
.blob.running .orb-sub{color:var(--forest)}
.blob-steps i{background:rgba(108,136,112,.25)}
.blob-steps i.on{background:var(--coral)}
.blob-svg{filter:drop-shadow(0 14px 18px rgba(70,90,120,.25))}

/* Bulle corail ensoleillé, trait bleu pour le contraste */
.blob[data-phase="1"] .blob-fill,.blob[data-phase="3"] .blob-fill{fill:#f7a48f}
.blob-track{stroke:rgba(255,255,255,.55)}
.blob-prog{stroke:#3f8f9a}
.blob .orb-word{color:#6b2b20}
.blob .orb-sub{color:#ffffff;text-shadow:0 1px 2px rgba(150,60,40,.35)}
.blob.running .orb-sub{color:#6b2b20;text-shadow:none}
.blob-steps i{background:rgba(255,255,255,.6)}
.blob-steps i.on{background:#3f8f9a}
.blob-svg{filter:drop-shadow(0 14px 20px rgba(217,97,78,.35))}
/* Trait de progression jaune lumineux */
.blob-prog{stroke:#ffd75e;stroke-width:3.5;filter:drop-shadow(0 0 3px rgba(255,215,94,.8))}
.blob-steps i.on{background:#ffd75e;box-shadow:0 0 6px rgba(255,215,94,.9)}
/* Trait de progression terracotta */
.blob-prog{stroke:#b8513a;stroke-width:3.5;filter:none}
.blob-steps i.on{background:#b8513a;box-shadow:none}
/* Menu : touches de corail */
.nav{border-top:3px solid var(--coral)!important}
.nav-label{color:var(--coral-deep)!important}
.nav a:not(.btn):hover{border-color:var(--coral-soft)}
.nav a[aria-current="page"]{border-color:var(--coral)!important;box-shadow:inset 3px 0 0 var(--coral)}
.nav-contact a{color:var(--coral-deep)!important}
.menu-open .burger{color:var(--coral-deep)}
/* Coches des listes : pastille pleine aux couleurs de la page, coche blanche */
.checks li::before{background:var(--sage-deep);box-shadow:none}
.checks li::after{border-color:#fff}
body[data-page="enfant"] .checks li::before,[data-view="enfant"] .checks li::before{background:#7c9cad}
body[data-page="adulte"] .checks li::before,[data-view="adulte"] .checks li::before{background:#8f84b3}
body[data-page="parent-enfant"] .checks li::before,[data-view="parent-enfant"] .checks li::before{background:#7f9a84}
#me-contacter{scroll-margin-top:110px}

/* Boutons violet grisé, prune au survol des éléments */
:root{--peps:#7B6FA0;--peps-2:#7B6FA0;--peps-deep:#63304F;--peps-text:#ffffff;--btn-hover:#63304F}
.btn-primary,.band-cta .btn-primary{background:#7B6FA0;box-shadow:0 10px 24px -14px rgba(99,48,79,.6)}
.btn-primary:hover,.band-cta .btn-primary:hover,.btn-primary:focus-visible,.nav .btn-primary:hover{background:#63304F;color:#fff}
.btn-primary::after,.band-cta .btn-primary::after{background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237B6FA0' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='5' width='16' height='15' rx='3'/%3E%3Cpath d='M8 3v4M16 3v4M4 10h16'/%3E%3Ccircle cx='12' cy='15' r='1.3' fill='%237B6FA0' stroke='none'/%3E%3C/svg%3E") center/18px no-repeat}
.btn-primary:hover::after,.band-cta .btn-primary:hover::after{background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2363304F' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='5' width='16' height='15' rx='3'/%3E%3Cpath d='M8 3v4M16 3v4M4 10h16'/%3E%3Ccircle cx='12' cy='15' r='1.3' fill='%2363304F' stroke='none'/%3E%3C/svg%3E") center/18px no-repeat}
.btn-primary.btn-mail::after,.btn-mail::after{background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237B6FA0' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='3'/%3E%3Cpath d='M4 7l8 6 8-6'/%3E%3C/svg%3E") center/18px no-repeat!important}
.btn-mail:hover::after{background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2363304F' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='3'/%3E%3Cpath d='M4 7l8 6 8-6'/%3E%3C/svg%3E") center/18px no-repeat!important}
@keyframes souffle{0%,100%{box-shadow:0 0 0 0 rgba(123,111,160,.5)}50%{box-shadow:0 0 0 10px rgba(123,111,160,0)}}
/* Survol des liens et éléments cliquables en prune */
.link-arrow:hover,.footer-grid a:hover,.nav a:not(.btn):hover,.nav-contact a:hover,p a:hover{color:#63304F}
a.belief:hover .belief-more,a.belief:hover .belief-go{background:#63304F;color:#fff}
/* Le corail remplacé par le violet grisé et le prune */
:root{--coral:#7B6FA0;--coral-deep:#63304F;--coral-pale:#ece9f3;--coral-soft:#c4bdda}
.blob[data-phase="1"] .blob-fill,.blob[data-phase="3"] .blob-fill{fill:#c9c0df}
.blob .orb-word,.blob.running .orb-sub{color:#63304F;text-shadow:none}
.blob .orb-sub{color:#63304F;text-shadow:none}
.blob-prog{stroke:#63304F}
.blob-steps i.on{background:#63304F}
.blob-svg{filter:drop-shadow(0 14px 20px rgba(123,111,160,.35))}

/* ---------- Menu retravaillé ---------- */
/* Menu visible : Accompagnements et Tarifs */
.topnav{display:flex;align-items:center;gap:.3rem;margin-left:auto}
.topnav>a,.topnav-btn{display:inline-flex;align-items:center;gap:.35rem;min-height:44px;padding:.4rem .9rem;border-radius:999px;border:0;background:none;font:inherit;font-weight:700;font-size:.95rem;color:var(--ink);text-decoration:none;cursor:pointer;transition:background-color .2s,color .2s}
.topnav-btn svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .25s}
.topnav>a:hover,.topnav-btn:hover,.topnav-group.open .topnav-btn{background:var(--lav-pale);color:#63304F}
.topnav-group.open .topnav-btn svg{transform:rotate(180deg)}
.topnav>a[aria-current="page"]{color:#63304F;box-shadow:inset 0 -2px 0 #7B6FA0;border-radius:0}
.topnav-group{position:relative}
.topnav-panel{position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%,6px);min-width:250px;padding:.45rem;background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:0 18px 40px -22px rgba(60,70,90,.45);opacity:0;visibility:hidden;transition:opacity .2s,transform .2s,visibility .2s;z-index:60}
.topnav-group.open .topnav-panel{opacity:1;visibility:visible;transform:translate(-50%,0)}
.topnav-panel a{display:flex;align-items:center;gap:.75rem;padding:.55rem .7rem;border-radius:12px;color:var(--ink);font-weight:700;font-size:.95rem;text-decoration:none}
.topnav-panel a:hover{background:var(--mist);color:#63304F}
.topnav-panel a[aria-current="page"]{color:#63304F}
.topnav-panel i{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;flex:none;color:var(--forest)}
.topnav-panel i svg{width:19px;height:19px}
.topnav-panel a[data-page="enfant"] i{background:var(--sky-pale)}
.topnav-panel a[data-page="adulte"] i{background:var(--lav-pale)}
.topnav-panel a[data-page="parent-enfant"] i{background:linear-gradient(135deg,var(--sky-pale),var(--lav-pale))}

/* Bouton menu avec le mot « Menu » */
.burger{display:inline-flex!important;align-items:center;gap:.45rem;width:auto!important;height:44px!important;padding:0 .9rem 0 .7rem!important;border-radius:999px!important;border:1px solid var(--line)!important;background:var(--card)!important;color:var(--forest)}
.burger:hover{border-color:#c4bdda!important;color:#63304F}
.burger-lines{display:block;width:20px}
.burger-lines span{width:18px!important;margin:4px auto!important}
.burger em{font-style:normal;font-weight:800;font-size:.88rem}
.menu-open .burger span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.menu-open .burger span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}

/* Panneau : lignes simples avec pictos, sans cadres */
.nav a:not(.btn){background:transparent!important;border:0!important;box-shadow:none!important;border-radius:14px;padding:.55rem .7rem!important;gap:.85rem}
.nav a:not(.btn):hover{background:var(--mist)!important;color:#63304F}
.nav a:not(.btn) i{display:grid!important;place-items:center;width:38px!important;height:38px!important;border-radius:50%!important;color:var(--forest);box-shadow:none!important}
.nav a:not(.btn) i svg{width:20px;height:20px}
.nav a.nav-structures i,.nav a.nav-entreprise i{background:#f1f3ee!important}
.nav .nav-accueil i,.nav .nav-ateliers i,.nav .nav-qui-suis-je i,.nav .nav-tarifs i{background:var(--mist)!important}
.nav a.nav-enfant i{background:var(--sky-pale)!important}
.nav a.nav-adulte i{background:var(--lav-pale)!important}
.nav a.nav-parent-enfant i{background:linear-gradient(135deg,var(--sky-pale),var(--lav-pale))!important}
/* Page en cours : texte prune et petit point, sans encadré */
.nav a[aria-current="page"]{color:#63304F!important}
.nav a[aria-current="page"] span::after{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:#7B6FA0;margin-left:.5rem;vertical-align:middle}
.nav a[aria-current="page"] span{display:block}
.nav-label{margin-top:1rem}

@media (max-width:820px){
  .header-row{flex-wrap:wrap;row-gap:0}
  .topnav{order:3;flex-basis:100%;justify-content:center;margin:0 0 .35rem;padding-top:.3rem;border-top:1px solid var(--line);gap:.2rem}
  .topnav>a,.topnav-btn{min-height:40px;font-size:.9rem;padding:.3rem .8rem}
  .nav{top:var(--hdr,118px)!important;max-height:calc(100dvh - var(--hdr,118px))!important}
}
@media (max-width:380px){.burger em{display:none}.burger{padding:0 .7rem!important}}
/* Tout le menu en haut sur grand écran */
.topnav-more{display:none;align-items:center;gap:.3rem}
.topnav-more>a{display:inline-flex;align-items:center;min-height:44px;padding:.4rem .9rem;border-radius:999px;font-weight:700;font-size:.95rem;color:var(--ink);text-decoration:none;transition:background-color .2s,color .2s}
.topnav-more>a:hover{background:var(--lav-pale);color:#63304F}
.topnav-more>a[aria-current="page"]{color:#63304F;box-shadow:inset 0 -2px 0 #7B6FA0;border-radius:0}
.topnav-panel span{display:grid;line-height:1.2}
.topnav-panel small{font-weight:600;font-size:.78rem;color:var(--muted)}
.topnav-panel a[data-page="structures"] i,.topnav-panel a[data-page="entreprise"] i{background:#f1f3ee}
@media (min-width:1180px){
  .topnav-more{display:inline-flex}
  .topnav{gap:.1rem}
  .topnav>a,.topnav-btn,.topnav-more>a{padding:.4rem .75rem}
  .header-actions{margin-left:.6rem}
}
.topnav a,.topnav-btn,.header-rdv,.brand-name{white-space:nowrap}
@media (min-width:1180px) and (max-width:1360px){
  .topnav>a,.topnav-btn,.topnav-more>a{padding:.4rem .55rem;font-size:.92rem}
  .header-actions{margin-left:.3rem}
  .header-row{gap:.6rem}
}

/* ---------- Menu entièrement visible, séparé par de fines barres verticales ---------- */
.topnav-scroll{display:flex;align-items:center}
.topnav-scroll>*{position:relative}
.topnav-scroll>*+*::before{content:"";position:absolute;left:0;top:50%;width:1px;height:18px;transform:translateY(-50%);background:#d9d3e6}
.topnav-scroll>a,.topnav-scroll .topnav-btn{display:inline-flex;align-items:center;gap:.35rem;min-height:44px;padding:.4rem .8rem;margin:0 .15rem;border-radius:999px;font-weight:700;font-size:.93rem;color:var(--ink);text-decoration:none;white-space:nowrap;transition:background-color .2s,color .2s}
.topnav-scroll>a:hover{background:var(--lav-pale);color:#63304F}
.topnav-scroll>a[aria-current="page"]{color:#63304F;background:none;box-shadow:inset 0 -2px 0 #7B6FA0;border-radius:0}
.topnav-scroll>a svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.topnav-group{margin:0}
.topnav-group.has-current .topnav-btn{color:#63304F}
.topnav-panel a[aria-current="page"]{background:var(--lav-pale)}
.header-actions{margin-left:.4rem}
@media (min-width:1180px) and (max-width:1360px){
  .topnav-scroll>a,.topnav-scroll .topnav-btn{padding:.4rem .55rem;margin:0 .05rem;font-size:.9rem}
}
/* Écrans moyens et téléphones : la barre passe sous le logo et défile de côté */
@media (max-width:959px){
  .header-row{flex-wrap:wrap;row-gap:0}
  .topnav{order:3;flex-basis:100%;margin:0;padding:.15rem 0 .3rem;border-top:1px solid var(--line);justify-content:flex-start;position:relative}
  .topnav::after{content:"";position:absolute;right:0;top:1px;bottom:0;width:28px;background:linear-gradient(90deg,rgba(251,252,249,0),var(--paper));pointer-events:none}
  .topnav-scroll{overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;margin:0 auto;padding-right:20px}
  .topnav-scroll::-webkit-scrollbar{display:none}
  .topnav-scroll>a,.topnav-scroll .topnav-btn{min-height:42px;font-size:.9rem;padding:.3rem .65rem}
  .topnav-panel{position:fixed;top:var(--hdr,110px);left:16px;right:16px;min-width:0;transform:translateY(6px)}
  .topnav-group.open .topnav-panel{transform:none}
  .header-actions{margin-left:auto}
}
@media (max-width:820px){ .header-row{min-height:64px} }

/* Menu rapide (Accompagnements, Tarifs, Accueil) + menu complet */
.nav .nav-lieu i{background:var(--mist)!important}
@media (min-width:960px){ .nav{top:var(--hdr,72px)!important} .topnav{margin-left:auto} }
.topnav::after{display:none}
@media (max-width:959px){ .topnav-scroll{padding-right:0} }
@media (min-width:960px){ .topnav-scroll>a,.topnav-scroll .topnav-btn{padding:.4rem .85rem!important;margin:0 .15rem!important;font-size:.95rem!important} .header-actions{margin-left:1rem} }
