
/* Layout: hero states the global offer and shows the three audiences as entry tiles; each audience then gets its own detailed band */
/* Single soft light palette by choice: same look on every phone, light or dark mode */
:root{
  /* Vert olive & crème (comme la publication Facebook) */
  --bg:#f8f4f0; --surface:#fdfbf8; --fg:#3a3b2f; --muted:#6b6c5d;
  --sage:#d6d9c6; --sage-soft:#eaebdf; --forest:#3a3b2f; --accent:#6b7a43;
  --peach:#eaebdf; --line:#e0e0d2; --on:#f8f4f0;
  --dark:#5a693b; --dark-line:#73824f; --dark-text:#e4e8d4; --sand:#f3efe2;
  --display:"Cormorant Garamond", Garamond, Georgia, serif;
  --body:"Jost", "Futura", system-ui, sans-serif;
  color-scheme:light;
}
*{box-sizing:border-box}
body{background:var(--bg);color:var(--fg);font-family:var(--body);font-size:1.0625rem;line-height:1.6}
.wrap{max-width:68rem;margin:0 auto;padding-inline:clamp(16px,5vw,48px)}
h1,h2,h3{font-family:var(--display);font-weight:400;line-height:1.08;text-wrap:balance;margin:0}
p{margin:0}
.eyebrow{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--accent)}
a{color:inherit}

nav{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding-block:1.1rem;flex-wrap:wrap}
.brand{font-family:var(--display);font-size:1.45rem;color:var(--forest);text-decoration:none}
.brand span{color:var(--accent)}
.navlinks{display:flex;gap:1.25rem;flex-wrap:wrap;font-size:.95rem;font-weight:500}
.navlinks a{text-decoration:none;color:var(--muted)}
.navlinks a:hover,.navlinks a:focus-visible{color:var(--fg)}

.hero{padding-block:clamp(2rem,6vw,4.5rem) clamp(2.5rem,6vw,4rem);display:grid;gap:2.5rem}
.hero h1{font-size:clamp(2.5rem,7vw,5rem);color:var(--forest);max-width:52rem;margin-top:1rem}
.hero h1 em{font-style:italic;color:var(--accent)}
.hero .lead{margin-top:1.2rem;max-width:40rem;color:var(--muted);font-size:1.15rem}

.publics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.public{display:grid;gap:.5rem;align-content:start;padding:1.5rem;border-radius:1.25rem;background:var(--sage-soft);text-decoration:none;color:var(--fg);border:1.5px solid transparent}
.public:hover,.public:focus-visible{border-color:var(--forest);outline:none}
.public .n{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--accent)}
.public h2{font-size:1.75rem;color:var(--forest)}
.public p{color:var(--muted);font-size:.95rem}
.public .go{font-weight:600;font-size:.92rem;color:var(--forest);margin-top:.25rem}

.ctas{display:flex;gap:.75rem;flex-wrap:wrap}
.coach{display:grid;grid-template-columns:auto 1fr;gap:clamp(1.5rem,4vw,3rem);align-items:center;padding-block:1rem}
.portrait{width:clamp(9rem,22vw,13rem);aspect-ratio:4/5;max-width:100%;border-radius:999px 999px 1.5rem 1.5rem;background:var(--sage);display:grid;place-items:center;overflow:hidden}
.portrait span{font-family:var(--display);font-size:clamp(4rem,10vw,6rem);color:var(--bg)}
.portrait img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.05)}
.coach-txt{display:grid;gap:.75rem;max-width:40rem;min-width:0}
.coach-txt h2{font-size:clamp(2rem,4.5vw,2.8rem);color:var(--forest)}
.coach-txt p{color:var(--muted)}
.coach-txt strong{color:var(--fg)}
@media (max-width:600px){.coach{grid-template-columns:1fr}}
.credit{display:flex;align-items:center;gap:1.25rem 2rem;flex-wrap:wrap;background:var(--peach);color:var(--fg);border-radius:1.5rem;padding:1.5rem 1.75rem}
.credit-num{font-family:var(--display);font-size:clamp(3.5rem,10vw,5.5rem);line-height:.9;color:var(--accent)}
.credit-txt{flex:1 1 18rem;min-width:0;display:grid;gap:.35rem}
.credit-txt strong{font-size:1.25rem;color:var(--forest)}
.credit-txt p{color:var(--muted);font-size:.97rem}
.pill{display:inline-block;margin-left:.4rem;font-size:.72rem;font-weight:700;padding:.2rem .55rem;border-radius:999px;background:var(--accent);color:var(--on);vertical-align:middle;letter-spacing:.04em}
.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.85rem 1.4rem;border-radius:999px;font-weight:600;text-decoration:none;font-size:1rem;border:1.5px solid var(--forest);cursor:pointer;font-family:var(--body)}
.btn.primary{background:var(--forest);color:var(--on)}
.btn.ghost{background:transparent;color:var(--forest)}
.btn:focus-visible{outline:3px solid var(--accent);outline-offset:3px}

section{padding-block:clamp(3rem,7vw,5rem)}
.band{background:var(--sage-soft)}
.sec-head{display:grid;gap:.75rem;margin-bottom:2.25rem;max-width:44rem}
.sec-head h2{font-size:clamp(2rem,4.5vw,3rem);color:var(--forest)}
.sec-head p.intro{color:var(--muted)}

.items{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,19rem),1fr));gap:1.25rem}
.item{background:var(--surface);border:1px solid var(--line);border-radius:1.25rem;padding:1.6rem;display:grid;gap:.7rem;align-content:start}
.item h3{font-size:1.5rem;color:var(--forest)}
.item p{color:var(--muted);font-size:.97rem}
.tag{justify-self:start;font-size:.72rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;padding:.3rem .7rem;border-radius:999px;background:var(--sage-soft);color:var(--forest)}
.band .tag{background:var(--bg)}

.split:not([hidden]){display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(2rem,5vw,4rem);align-items:start}
.formats{display:grid;gap:1rem}
.format{background:var(--surface);border:1px solid var(--line);border-radius:1.25rem;padding:1.4rem;display:grid;gap:.4rem}
.format h3{font-size:1.4rem;color:var(--forest)}
.format p{color:var(--muted);font-size:.97rem}

.quote{font-family:var(--display);font-size:clamp(1.7rem,4.2vw,2.8rem);line-height:1.15;color:var(--forest);text-wrap:balance}
.quote em{color:var(--accent);font-style:italic}
.pillars{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.pillar{border-top:2px solid var(--forest);padding-top:1rem;display:grid;gap:.4rem}
.pillar h3{font-size:1.3rem;color:var(--forest)}
.pillar p{color:var(--muted);font-size:.95rem}
.not{margin-top:2rem;background:var(--bg);border:1px solid var(--line);border-radius:1.25rem;padding:1.25rem 1.5rem;font-size:.95rem;color:var(--muted)}
.not strong{color:var(--fg)}

.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;counter-reset:s}
.step{display:grid;gap:.6rem;border-top:2px solid var(--forest);padding-top:1.25rem}
.step::before{counter-increment:s;content:"Étape " counter(s);font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--accent)}
.step h3{font-size:1.5rem;color:var(--forest)}
.step p{color:var(--muted);font-size:.98rem}

.sap{display:flex;gap:1.5rem;align-items:center;flex-wrap:wrap;background:var(--surface);border:1px solid var(--line);border-radius:1.5rem;padding:1.5rem 1.75rem;margin-top:3rem}
.sap .big{font-family:var(--display);font-size:3.5rem;line-height:1;color:var(--forest)}
.sap p{flex:1 1 18rem;min-width:0;color:var(--muted);font-size:.97rem}
.sap strong{color:var(--fg)}

.contact{background:var(--sage-soft);color:var(--fg);border-radius:2rem;padding:clamp(2rem,6vw,4rem);display:grid;gap:1.5rem}
.contact h2{font-size:clamp(2.2rem,5.5vw,3.6rem);color:var(--forest)}
.contact p{color:var(--muted);max-width:36rem}
.phone{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}
.phone .num{font-family:var(--display);font-size:clamp(2rem,6vw,3rem);user-select:all;font-variant-numeric:tabular-nums;color:var(--forest)}
.zone{font-size:.95rem}
footer{padding-block:2rem 3rem;color:var(--muted);font-size:.88rem;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}

@media (max-width:820px){
  .publics,.steps,.split,.pillars{grid-template-columns:1fr}
  .panel.split{grid-template-columns:1fr}
  .navlinks{display:none}
}
@media (prefers-reduced-motion:no-preference){.btn,.public{transition:transform .15s,border-color .15s}.btn:hover,.public:hover{transform:translateY(-2px)}}
.tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:2.5rem}
.tab{display:grid;gap:.15rem;text-align:center;padding:.75rem 1rem;border-radius:1rem;flex:1 1 12rem;white-space:normal;overflow-wrap:anywhere;border:1.5px solid var(--line);background:var(--surface);color:var(--fg);font-family:var(--body);cursor:pointer;min-width:0}
.tab-k{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;font-weight:600;color:var(--accent)}
.tab-t{font-weight:600;font-size:.98rem;color:var(--forest);line-height:1.25}
.tab:hover{border-color:var(--sage)}
.tab:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.tab[aria-selected="true"]{background:var(--forest);border-color:var(--forest)}
.tab[aria-selected="true"] .tab-k,.tab[aria-selected="true"] .tab-t{color:var(--on)}
.panel .tag{background:var(--sage-soft)}
.price-table{display:grid;background:var(--surface);border:1px solid var(--line);border-radius:1.25rem;overflow:hidden}
.price-row{display:grid;grid-template-columns:2fr 1fr 1fr;gap:1rem;padding:1rem 1.4rem;border-top:1px solid var(--line);align-items:center;font-variant-numeric:tabular-nums}
.price-row span{min-width:0}
.price-row.head{border-top:0;background:var(--peach);font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;font-weight:600;color:var(--accent)}
.price-row .you{font-weight:700;color:var(--forest)}
@media (max-width:600px){.price-row{grid-template-columns:1.6fr 1fr 1fr;padding:.9rem 1rem;font-size:.92rem}}
.tabs.sub{margin-bottom:2rem;padding:.4rem;background:var(--surface);border:1px solid var(--line);border-radius:1.25rem;gap:.4rem}
.tabs.sub .tab{border:0;background:transparent;padding:.6rem .9rem}
.tabs.sub .tab .tab-t{font-size:.92rem}
.tabs.sub .tab[aria-selected="true"]{background:var(--peach)}
.tabs.sub .tab[aria-selected="true"] .tab-t{color:var(--forest)}
.about-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr))}
#apropos .coach{padding-block:0}

/* single-scroll version */
nav.top{display:block;padding-block:0;position:sticky;top:env(safe-area-inset-top,0px);z-index:10;background:var(--bg);border-bottom:1px solid var(--line)}
nav.top .in{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding-block:.8rem}
nav.top .navlinks{display:flex;flex-wrap:nowrap;gap:.25rem;overflow-x:auto;max-width:100%;justify-content:center;scrollbar-width:none;min-width:0}
nav.top .navlinks::-webkit-scrollbar{display:none}
nav.top .navlinks a{white-space:nowrap;padding:.45rem .8rem;border-radius:999px;font-size:.92rem}
nav.top .navlinks a.on{background:var(--peach);color:var(--forest)}
section[id],header[id]{scroll-margin-top:4.5rem}
.jump{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:2.5rem}
.jump a{padding:.55rem 1rem;border-radius:999px;background:var(--surface);border:1px solid var(--line);text-decoration:none;font-weight:600;font-size:.92rem;color:var(--forest)}
.jump a:hover{border-color:var(--forest)}
.pub{padding-block:2.5rem;border-top:1px solid var(--line)}
.pub:first-of-type{border-top:0;padding-top:0}
.callbar{display:none}
@media (max-width:820px){
  nav.top .in{flex-direction:column;align-items:stretch;gap:.4rem}
  nav.top .navlinks{display:flex}
  .brand{font-size:1.25rem}
  .callbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:20;gap:.5rem;padding:.6rem 16px calc(.6rem + env(safe-area-inset-bottom,0px));background:var(--surface);border-top:1px solid var(--line)}
  .callbar .btn{flex:1;justify-content:center;padding:.75rem 1rem}
  footer{padding-bottom:6rem}
}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
.offers-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem}
.formule{display:grid;gap:1rem;align-content:start;min-width:0}
.plan{background:var(--surface);border:1px solid var(--line);border-radius:1.25rem;padding:1.6rem;display:grid;gap:.6rem}
.plan.sub{background:var(--peach);border-color:transparent}
.plan h3{font-size:1.5rem;color:var(--forest)}
.price{display:flex;align-items:baseline;gap:.6rem;flex-wrap:wrap}
.amt{font-family:var(--display);font-size:2.6rem;line-height:1;color:var(--fg);font-variant-numeric:tabular-nums}
.per{color:var(--muted);font-size:.95rem}
.half{color:var(--muted)}
.half strong{color:var(--forest);font-size:1.1rem}
.plan ul{margin:.3rem 0 0;padding-left:1.1rem;display:grid;gap:.3rem;font-size:.95rem;color:var(--fg)}
@media (max-width:820px){.offers-grid{grid-template-columns:1fr}}
nav.top .in{justify-content:center}
@media (max-width:820px){nav.top .navlinks{justify-content:space-between;gap:0}nav.top .navlinks a{padding:.4rem .5rem;font-size:.84rem}}
.hero .coach{padding-block:0}
.hero h1.name{font-size:clamp(2.6rem,7vw,4.5rem);color:var(--forest)}
.hero .portrait{width:clamp(10rem,26vw,16rem)}
.pwrap{position:relative;justify-self:start;padding:0 2.2rem 1.6rem 0}
.mini{position:absolute;right:0;bottom:0;width:clamp(5.5rem,13vw,7.5rem);aspect-ratio:1;border-radius:50%;object-fit:cover;border:4px solid var(--bg);box-shadow:0 6px 18px rgba(74,58,50,.18)}
.ems{margin-top:1.75rem;background:var(--peach);border-radius:1.5rem;padding:clamp(1.4rem,4vw,2.2rem);display:grid;gap:1rem}
.ems-title{font-size:clamp(1.6rem,3.6vw,2.2rem);color:var(--forest)}
.ems-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));gap:1.25rem}
.ems-grid div{display:grid;gap:.35rem;align-content:start;min-width:0}
.ems h4{margin:0;font-family:var(--body);font-weight:700;font-size:1rem;color:var(--fg)}
.ems-grid p{color:var(--muted);font-size:.96rem}
.ems-note{font-size:.93rem;color:var(--muted);border-top:1px solid var(--line);padding-top:1rem}
.ems-note strong{color:var(--fg)}

/* professional pass */
.phero{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(2rem,5vw,4.5rem);align-items:center;padding-block:clamp(2.5rem,6vw,5rem)}
.phero-txt{display:grid;gap:1.1rem;min-width:0}
.phero h1{font-size:clamp(3rem,8vw,5.5rem);color:var(--forest);line-height:1}
.phero-tag{font-family:var(--display);font-size:clamp(1.35rem,2.8vw,1.8rem);line-height:1.25;color:var(--fg);max-width:32rem}
.phero-lead{color:var(--muted);max-width:34rem}
.phero .ctas{margin-top:.5rem}
.phero-photo{margin:0;position:relative;justify-self:end;width:100%;max-width:26rem}
.phero-photo img{position:relative;z-index:1;display:block;width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:1.25rem;box-shadow:0 18px 40px rgba(74,58,50,.14)}

.phero-photo figcaption{z-index:2;position:absolute;left:-1rem;bottom:1.5rem;background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:.6rem 1.1rem;font-size:.92rem;color:var(--muted);box-shadow:0 8px 24px rgba(74,58,50,.12)}
.phero-photo figcaption strong{font-family:var(--display);font-weight:400;font-size:1.3rem;color:var(--forest);margin-right:.3rem}
.strip{background:var(--forest);color:var(--on)}
.strip-in{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.5rem;padding-block:1.6rem}
.strip-in div{display:grid;gap:.2rem;min-width:0}
.strip-in strong{font-family:var(--display);font-weight:400;font-size:1.5rem;line-height:1.1}
.strip-in span{font-size:.88rem;opacity:.85}
.pfoot{display:grid;grid-template-columns:1.2fr 1fr 1.4fr;gap:2rem;padding-block:3rem;border-top:1px solid var(--line);margin-top:3rem;color:var(--muted);font-size:.92rem}
.pfoot p{margin:0}
.foot-brand{font-family:var(--display);font-size:1.4rem;color:var(--forest);margin-bottom:.4rem!important}
.foot-h{font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--accent);margin-bottom:.4rem!important}
@media (max-width:820px){
  .phero{grid-template-columns:1fr}
  .phero-photo{order:-1;justify-self:center;max-width:17rem}
  .phero-photo figcaption{left:50%;transform:translateX(-50%);bottom:-1rem;white-space:nowrap}
  .phero-txt{margin-top:.75rem}
  .strip-in{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}
  .pfoot{grid-template-columns:1fr;padding-bottom:6rem}
}

/* ===== reskin : luxe sobre ===== */
body{font-weight:300;letter-spacing:.01em}
strong{font-weight:500}
h1,h2,h3{font-weight:400;letter-spacing:-.005em}
.eyebrow{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap;font-weight:400;letter-spacing:.2em;font-size:.88rem;color:var(--accent)}
.eyebrow::before{content:"";width:2.2rem;height:1px;background:var(--accent);flex:none}
.sec-head h2,.phero h1{color:var(--fg)}
.sec-head h2{font-size:clamp(2.2rem,4.8vw,3.4rem)}
.phero h1{font-size:clamp(3.2rem,8.5vw,6rem);font-weight:400}
.phero h1 em,.sec-head h2 em{font-style:italic;color:var(--accent)}
.phero-tag{font-style:italic;color:var(--muted);font-size:clamp(1.25rem,2.4vw,1.6rem)}
.btn{border-radius:0;font-weight:400;letter-spacing:.2em;text-transform:uppercase;font-size:.78rem;padding:1.1rem 1.8rem;border:1px solid var(--fg)}
.btn.primary{background:var(--dark);color:var(--sand);border-color:var(--dark)}
.btn.ghost{border:0;border-bottom:1px solid var(--line);padding-inline:0;letter-spacing:.04em;text-transform:none;font-size:.95rem;color:var(--muted)}
.btn:hover{transform:none!important}
.btn.primary:hover{background:var(--fg)}
.phero-photo{padding:1rem}
.phero-photo::after{content:"";position:absolute;inset:0;border:1px solid var(--sage);pointer-events:none}
.phero-photo img{border-radius:0!important;box-shadow:none!important}
.phero-photo figcaption{left:2rem;bottom:2rem;transform:none;background:none;border:0;box-shadow:none;padding:0;color:#fff;letter-spacing:.3em;text-transform:uppercase;font-size:.72rem;text-shadow:0 1px 6px rgba(0,0,0,.5);white-space:nowrap}
.phero-photo figcaption strong{display:none}
.strip{background:var(--dark);color:var(--on)}
.strip-in strong{color:var(--sand);font-size:1.9rem}
.strip-in span{letter-spacing:.04em}
.band{background:var(--sage-soft)}
.item,.format,.plan,.price-table,.not,.sap,.contact{border-radius:0!important}
.item,.format,.plan{background:var(--surface);border:1px solid var(--line);box-shadow:none}
.item h3,.format h3,.plan h3,.step h3{color:var(--fg);font-size:1.6rem}
.tag{border-radius:0;background:none!important;padding:0;color:var(--accent);letter-spacing:.24em;font-weight:400}
.pill{border-radius:0;background:var(--dark);color:var(--sand);font-weight:400;letter-spacing:.12em}
.items{gap:0;border-left:1px solid var(--line)}
.items .item{border-left:0}
.items{grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr))}
.jump a{border-radius:0;background:none;border:0;border-bottom:1px solid var(--line);padding:.4rem 0;margin-right:1.4rem;font-weight:400;letter-spacing:.14em;text-transform:uppercase;font-size:.74rem;color:var(--fg)}
.jump a:hover{border-color:var(--accent);color:var(--accent)}
.ems{border-radius:0;background:var(--dark);color:var(--on)}
.ems .eyebrow{color:var(--sand)}
.ems-title{color:var(--on)!important}
.ems h4{color:var(--on)}
.ems-grid p,.ems-note{color:var(--dark-text)}
.ems-note strong{color:var(--on)}
.ems-note{border-color:var(--dark-line)}
.plan.sub{background:var(--sage-soft);border:1px solid var(--line)}
.amt{font-size:3rem;font-weight:400}
.half strong{color:var(--accent)}
.price-row.head{background:var(--sage-soft)}
.step{border-top:1px solid var(--fg)}
.step::before{letter-spacing:.24em;font-weight:400}
.contact{background:var(--dark);color:var(--on)}
.contact h2,.contact .num{color:var(--on)}
.contact p{color:var(--dark-text)}
.contact .btn.primary{background:var(--sand);color:var(--fg);border-color:var(--sand)}
.contact .btn.ghost{color:var(--on);border-color:var(--dark-line)}
nav.top{background:rgba(248,244,240,.96);backdrop-filter:blur(6px)}
nav.top .navlinks a{letter-spacing:.2em;text-transform:uppercase;font-size:.72rem;font-weight:400;border-radius:0;color:var(--muted)}
nav.top .navlinks a.on{background:none;color:var(--fg);box-shadow:inset 0 -1px 0 var(--accent)}
.callbar{background:var(--bg)}
.callbar .btn{letter-spacing:.14em}
.foot-brand{font-style:italic;color:var(--fg)}
@media (max-width:820px){nav.top .navlinks a{letter-spacing:.06em;font-size:.68rem;padding:.45rem .3rem}}
.strip-in{text-align:center}
.strip-in div{justify-items:center;padding-inline:.5rem}
.strip-in div+div{border-left:1px solid var(--dark-line)}
.strip-in strong{font-size:clamp(2rem,5vw,2.6rem)}
.strip-in span{text-transform:uppercase;letter-spacing:.2em;font-size:.68rem;color:var(--dark-text);opacity:1}
.phero{padding-block:clamp(3rem,9vw,6rem)}
.phero h1{font-size:clamp(2.8rem,8vw,5.6rem);line-height:1.02}
.phero h1 em{display:block}
.items{counter-reset:it}
.items .item{position:relative;padding:2rem 1.75rem 2.25rem}


.items .item .tag{color:var(--muted)}
@media (max-width:820px){
  .phero .ctas{flex-direction:column;align-items:stretch}
  .phero .ctas .btn.primary{justify-content:center}
  .phero .ctas .btn.ghost{align-self:center}
  .strip-in{grid-template-columns:repeat(2,minmax(0,1fr))}
  .strip-in div:nth-child(3){border-left:0}
}
.contact .eyebrow{color:var(--sand)}
.contact .eyebrow::before,.ems .eyebrow::before{background:var(--sand)}
.phero{grid-template-columns:1.25fr .75fr;align-items:center}

.phero-cut{margin:0;align-self:end;justify-self:center;width:100%;max-width:21rem}
.phero-cut img{display:block;width:100%;height:auto}
@media (max-width:820px){
  .phero{grid-template-columns:1fr;padding-bottom:0}
  .phero-cut{order:2;max-width:15rem}
  .phero-txt{padding-bottom:0}
}
.me{display:grid;grid-template-columns:1fr;gap:clamp(1.5rem,4vw,3rem);align-items:center}
.me-photo{width:clamp(9rem,20vw,13rem);aspect-ratio:4/5;object-fit:cover;object-position:50% 30%;display:block}
.me-txt{display:grid;gap:.9rem;max-width:40rem;min-width:0}
.me-txt h2{font-size:clamp(2.2rem,4.8vw,3.2rem);color:var(--fg)}
.me-txt p:not(.eyebrow){color:var(--muted)}
@media (max-width:600px){.me{grid-template-columns:1fr}}
.hero-disk{width:100%;max-width:18.5rem;aspect-ratio:1;border-radius:50%;background:var(--sage-soft);display:grid;place-items:center;justify-self:center;align-self:start;margin-top:2.2rem}
.hero-photo{display:block;width:88%;aspect-ratio:1;object-fit:cover;object-position:50% 22%;border-radius:50%}
@media (max-width:820px){
  .phero{position:relative}
  .hero-disk{position:absolute;top:clamp(3rem,9vw,6rem);right:0;width:7.5rem;max-width:none;margin-top:0}
  .phero-txt > .eyebrow,.phero-txt > h1{padding-right:8.5rem}
  .phero-txt > h1{font-size:clamp(2.3rem,9.5vw,3rem)}
}
.bp-grid{display:grid;grid-template-columns:minmax(0,9rem) 1fr;gap:clamp(1.5rem,4vw,2.5rem);align-items:center}
.bp-fig{margin:0;display:grid;place-items:center;padding:0}
.bp-svg{width:80%;height:auto}
.bp-fig figcaption{font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--dark-text)}
.bp-txt{display:grid;gap:1rem;min-width:0}
.bp-fig img{width:100%;height:auto;filter:drop-shadow(0 0 1px rgba(255,255,255,.35))}
@media (max-width:760px){.bp-grid{grid-template-columns:1fr}.bp-fig{max-width:7rem}}
.ems-photo{display:block;width:100%;height:auto;margin-bottom:.75rem}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0}
.aud{display:grid;gap:1.5rem;margin-top:2.5rem}
.aud-head{display:flex;gap:1.25rem;align-items:flex-start;max-width:46rem}
.aud-n{font-family:var(--display);font-size:2.6rem;line-height:1;color:var(--accent)}
.aud-head h3{font-size:clamp(1.7rem,3.6vw,2.2rem);color:var(--fg);margin:0 0 .4rem}
.aud-head p{color:var(--muted)}
.aud-hand{background:var(--sage-soft);padding:clamp(1.5rem,4vw,2.5rem)}
.hand-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr));gap:1rem}
.hand{background:var(--surface);border:1px solid var(--line);padding:1.4rem;display:grid;gap:.45rem;align-content:start}
.hand-ico{width:2.6rem;height:2.6rem;border-radius:50%;background:var(--dark);color:var(--sand);display:grid;place-items:center;font-size:1.1rem}
.hand h4{margin:0;font-family:var(--display);font-weight:400;font-size:1.45rem;line-height:1.15;color:var(--fg)}
.hand p{color:var(--muted);font-size:.95rem}
.hand-quote{font-family:var(--display);font-style:italic;font-size:clamp(1.4rem,3vw,1.9rem);color:var(--accent);text-align:center;margin-top:.5rem}
.approach{background:var(--sage-soft);padding:clamp(1.25rem,3vw,1.75rem);display:grid;gap:.75rem;max-width:52rem;color:var(--muted)}
.approach strong{color:var(--accent);font-weight:500}
.approach-key{color:var(--fg)!important;font-weight:500}
.examples{border:1px solid var(--line);background:var(--surface);padding:clamp(1.25rem,3vw,1.75rem);display:grid;gap:1.1rem}
.ex-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));gap:1.5rem}
.ex{display:flex;gap:1rem;align-items:flex-start}
.ex-n{flex:none;width:2.2rem;height:2.2rem;border-radius:50%;background:var(--dark);color:var(--sand);display:grid;place-items:center;font-family:var(--display);font-size:1.2rem}
.ex h4{margin:0 0 .35rem;font-family:var(--display);font-weight:400;font-size:1.4rem;line-height:1.15;color:var(--fg)}
.ex p{color:var(--muted);font-size:.95rem}
.ex-i{display:block;margin-top:.5rem;font-style:italic;color:var(--accent)}
.subpart{display:grid;gap:1.1rem;margin-top:1rem}
.aud{margin-top:3rem;scroll-margin-top:5rem}
.pub .items{grid-template-columns:repeat(auto-fit,minmax(min(100%,12.5rem),1fr))}
.pub-jump{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-bottom:.5rem}
.pub-jump a{display:grid;gap:.25rem;padding:1.1rem 1.25rem;border:1px solid var(--line);border-top:2px solid var(--accent);background:var(--surface);color:var(--fg);text-decoration:none;align-content:start}
.pub-jump a span{font-family:var(--display);font-size:1.8rem;line-height:1;color:var(--accent)}
.pub-jump a b{font-family:var(--display);font-weight:400;font-size:1.35rem;line-height:1.15}
.pub-jump a small{font-size:.85rem;color:var(--muted)}
.pub-jump a:hover{border-color:var(--accent)}
.pub{border:0!important;border-top:2px solid var(--accent)!important;margin-top:4rem;padding:2.5rem 0 0!important;scroll-margin-top:4.5rem}
.pub > .sec-head{display:grid;grid-template-columns:auto 1fr;column-gap:1.5rem;align-items:start;max-width:none}
.pub > .sec-head > *:not(.pub-n){grid-column:2}
.pub-n{grid-row:1 / span 3;margin:0;font-family:var(--display);font-size:clamp(3rem,7vw,4.5rem);line-height:.9;color:var(--accent)}
@media (max-width:760px){.pub-jump{grid-template-columns:1fr}.pub > .sec-head{grid-template-columns:1fr}.pub > .sec-head > *:not(.pub-n){grid-column:1}.pub-n{grid-row:auto}}

.u{color:var(--fg)}
/* lisibilité : tailles minimales */
body{font-size:1.15rem}
.item p,.format p,.ems-grid p,.hand p,.ex p,.plan ul,.half,.per,.ems-note,.not,.step p,.approach,.aud-head p,.sec-head p.intro,.phero-lead,.me-txt p:not(.eyebrow){font-size:1.05rem!important}
.ex-i{font-size:1rem}
.tag{font-size:.8rem!important}
.strip-in span{font-size:.8rem!important}
.pub-jump a small{font-size:.95rem}
.pfoot{font-size:1rem}
.ems h4{font-size:1.1rem}
nav.top .navlinks a{font-size:.82rem}
@media (max-width:820px){nav.top .navlinks a{font-size:.72rem}}
.pub > .sec-head h2{font-size:clamp(2.4rem,5.2vw,3.6rem);display:flex;align-items:center;gap:1rem;flex-wrap:wrap}
.pub > .sec-head h2 .pill{font-family:var(--body);font-size:.85rem}
.tagline{margin:0;font-family:var(--display);font-style:italic;font-size:clamp(1.4rem,2.8vw,1.9rem);line-height:1.2;color:var(--accent)}
.tagline em{font-style:italic}
.aud-head h3{font-size:clamp(1.5rem,3vw,1.9rem)!important}
.strip-in{grid-template-columns:repeat(5,minmax(0,1fr))!important}
@media (max-width:820px){.strip-in{grid-template-columns:repeat(2,minmax(0,1fr))!important}.strip-in div{border-left:0!important}.strip-in div:nth-child(even){border-left:1px solid var(--dark-line)!important}.strip-in div:last-child{grid-column:1/-1}}
.strip-in strong{font-size:clamp(1.4rem,3vw,1.75rem)!important}
.strip-in span{font-size:.72rem!important}
.strip-in{padding-block:1.2rem!important}
.aud-head{display:grid!important;grid-template-columns:auto 1fr;column-gap:1.25rem;align-items:center;max-width:none!important}
.aud-head > div{display:contents}
.aud-head h3{grid-column:2;margin:0!important}
.aud-head p{grid-column:1/-1;margin-top:.75rem!important;max-width:none}
.pub > .sec-head .intro{max-width:none!important}
.approach{max-width:none!important}
.pub-n{grid-row:1 / span 2!important}
.pub > .sec-head > .intro{grid-column:1/-1!important;margin-top:.5rem}
.sec-head{max-width:none!important}
.sec-head p.intro{max-width:none!important}
.contact2{display:grid;grid-template-columns:1.3fr 1fr;gap:clamp(1.5rem,4vw,3rem);align-items:center;border-top:2px solid var(--accent);padding-top:2.5rem}
.c2-txt{display:grid;gap:.9rem;min-width:0}
.c2-txt h2{font-size:clamp(2rem,4.5vw,3rem);color:var(--fg)}
.c2-txt p:not(.eyebrow){color:var(--muted)}
.c2-zone{font-size:.95rem!important}
.c2-card{border:1px solid var(--line);background:var(--surface);padding:1.75rem;display:grid;gap:.75rem;min-width:0}
.c2-label{margin:0;font-size:.8rem;letter-spacing:.2em;text-transform:uppercase;color:var(--accent)}
.c2-num{font-family:var(--display);font-size:clamp(1.9rem,4vw,2.4rem);color:var(--fg);font-variant-numeric:tabular-nums;user-select:all}
.c2-btns{display:flex;flex-wrap:wrap;gap:.75rem 1.25rem;align-items:center}
@media (max-width:760px){.contact2{grid-template-columns:1fr}}
.c2-card{background:var(--dark)!important;border-color:var(--dark)!important;color:#ffffff}
.c2-card .c2-label{color:var(--dark-text)}
.c2-card .c2-num{color:#ffffff}
.c2-card .btn.primary{background:#ffffff;color:var(--dark);border-color:#ffffff}
.c2-card .btn.ghost{color:#ffffff;border-bottom-color:rgba(255,255,255,.5)}
.contact2{background:var(--dark);border-top:0!important;padding:clamp(1.75rem,4vw,3rem)!important;color:#ffffff}
.contact2 .eyebrow{color:var(--dark-text)}
.contact2 .eyebrow::before{background:var(--dark-text)}
.contact2 .c2-txt h2{color:#ffffff}
.contact2 .c2-txt p:not(.eyebrow){color:var(--dark-text)}
.contact2 .c2-card{background:rgba(255,255,255,.1)!important;border:1px solid rgba(255,255,255,.35)!important}
.c2-social{display:flex;flex-wrap:wrap;gap:.6rem 1.25rem;margin-top:.5rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.3)}
.c2-social a{display:inline-flex;align-items:center;gap:.5rem;color:#ffffff;text-decoration:none;font-size:.98rem}
.c2-social a:hover{text-decoration:underline}
.sf-social{display:flex;gap:1rem;margin-top:.4rem}
.sf-social a{display:inline-flex;align-items:center;gap:.45rem;color:var(--fg)!important}

/* pages secondaires */
.sfoot{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:2rem;padding-block:3rem 3.5rem;border-top:1px solid var(--line);margin-top:3rem;color:var(--muted);font-size:1rem}
.sfoot p{margin:0}
.sfoot ul{list-style:none;margin:0;padding:0;display:grid;gap:.45rem}
.sfoot a{color:var(--muted);text-decoration:none}
.sfoot a:hover{color:var(--accent);text-decoration:underline}
.sf-brand{display:grid;gap:.6rem;align-content:start}
.sf-phone{font-family:var(--display);font-size:1.5rem;color:var(--fg)}
.sf-small{margin-top:1rem!important;font-size:.9rem}
@media (max-width:820px){.sfoot{grid-template-columns:1fr 1fr;padding-bottom:6rem}.sf-brand{grid-column:1/-1}}
.sp-hero{padding-block:clamp(2.5rem,7vw,5rem) 2rem;display:grid;gap:1.1rem;max-width:52rem}
.sp-hero h1{font-size:clamp(2.4rem,6.5vw,4.4rem);line-height:1.05;color:var(--fg)}
.sp-hero h1 em{font-style:italic;color:var(--accent)}
.crumb{font-size:.9rem;color:var(--muted)}
.crumb a{color:var(--muted)}
.sp-sec{padding-block:2.5rem;border-top:1px solid var(--line)}
.sp-sec h2{font-size:clamp(1.9rem,4vw,2.6rem);color:var(--fg);margin-bottom:1.25rem}
.prose{display:grid;gap:1rem;max-width:46rem;color:var(--muted);font-size:1.08rem}
.prose strong{color:var(--fg);font-weight:500}
.faq{display:grid;gap:1rem;max-width:50rem}
.faq details{border:1px solid var(--line);background:var(--surface);padding:1.1rem 1.3rem}
.faq summary{cursor:pointer;font-family:var(--display);font-size:1.35rem;color:var(--fg)}
.faq details p{margin:.75rem 0 0;color:var(--muted)}
.cta-band{background:var(--dark);color:var(--on);padding:clamp(1.75rem,4vw,2.75rem);display:flex;flex-wrap:wrap;gap:1.25rem 2rem;align-items:center;justify-content:space-between;margin-top:2.5rem}
.cta-band h2{color:var(--on)!important;margin:0!important;font-size:clamp(1.6rem,3.5vw,2.2rem)}
.cta-band p{margin:.4rem 0 0;color:var(--dark-text)}
.cta-band .btn.primary{background:var(--sand);color:var(--dark);border-color:var(--sand)}
.links-row{display:flex;flex-wrap:wrap;gap:.6rem}
.links-row a{border:1px solid var(--line);background:var(--surface);padding:.55rem 1rem;color:var(--fg);text-decoration:none;font-size:.95rem}
.links-row a:hover{border-color:var(--accent);color:var(--accent)}
