/* Layout : colonne éditoriale centrée sur fond ivoire, une rupture sombre pour Legacy, le pont comme fil conducteur */
:root{
  --ivoire:#F7F2EA; --sable:#EEE6D8; --encre:#1C1917; --texte2:#5B544C;
  --foret:#0F4D36; --terracotta:#B5432C; --terracotta-h:#9C3824; --or:#C9A45C;
  --nuit:#0F2A20; --nuit2:#163829; --ivoire-sur-nuit:#EFE7D8; --texte-nuit:#B9C2B6;
  --filet:rgba(28,25,23,.14); --filet-nuit:rgba(201,164,92,.28);
  --display:"Cormorant Garamond",Georgia,"Times New Roman",serif;
  --sans:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --max:1120px;
  color-scheme:light;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{background:var(--ivoire);color:var(--encre);font-family:var(--sans);font-size:16px;line-height:1.65;overflow-x:hidden}
.wrap{max-width:var(--max);margin:0 auto;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}
h1,h2,h3{font-family:var(--display);font-weight:500;text-wrap:balance;margin:0;letter-spacing:-.01em}
p{margin:0}
a{color:inherit}
.eyebrow{font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--foret)}
.lead{font-size:clamp(17px,1.6vw,19px);color:var(--texte2);max-width:58ch}
.btn{display:inline-flex;align-items:center;gap:10px;font:600 15px/1 var(--sans);padding:16px 22px;border-radius:999px;text-decoration:none;border:1px solid transparent;cursor:pointer;transition:background .3s,color .3s,border-color .3s,transform .3s}
.btn-p{background:var(--terracotta);color:var(--ivoire)}
.btn-p:hover{background:var(--terracotta-h)}
.btn-s{border-color:var(--filet);color:var(--encre);background:transparent}
.btn-s:hover{border-color:var(--encre)}
.btn .arr{transition:transform .3s}
.btn:hover .arr{transform:translateX(4px)}
:focus-visible{outline:2px solid var(--terracotta);outline-offset:3px}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:60;background:var(--ivoire)}

/* En-tête */
.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;transition:background .4s,border-color .4s;border-bottom:1px solid transparent}
.top.solid{background:rgba(247,242,234,.92);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-color:var(--filet)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:14px}
.mark{display:flex;align-items:center;gap:10px;text-decoration:none}
.mark svg{width:34px;height:22px;flex:none}
.mark b{font:600 13px/1.1 var(--sans);letter-spacing:.18em}
.mark small{display:block;font:500 10px/1.2 var(--sans);letter-spacing:.12em;color:var(--texte2);text-transform:uppercase}
.nav{display:none;gap:26px;font-size:14px;font-weight:500}
.nav a{text-decoration:none;color:var(--texte2);transition:color .2s}
.nav a:hover{color:var(--encre)}
.top .btn{padding:11px 16px;font-size:13px}
@media(min-width:960px){.nav{display:flex}}
@media(max-width:420px){.top .btn .long{display:none}}

/* Hero */
.hero{position:relative}
.sky{background:linear-gradient(180deg,var(--ivoire) 0%,#F2E8D6 100%);padding-block:clamp(32px,6vw,80px) clamp(18px,3.5vw,40px)}
.hero-top{display:grid;gap:18px}
.hero h1{font-size:clamp(34px,9.4vw,80px);line-height:1;margin:16px 0 0;letter-spacing:-.015em}
.hero h1 .ln{display:block;overflow:hidden;padding-bottom:.07em}
.hero h1 .ln>span{display:inline-block}
.hero h1 em{font-style:italic;color:var(--terracotta)}
.hero .acts{display:flex;flex-wrap:wrap;gap:12px}
.acts-d{display:none!important}
.acts-m{padding-block:24px 4px}
.scene{position:relative;width:100%;aspect-ratio:1/.78;overflow:hidden;background:#F2E8D6}
.scene svg{display:block;width:100%;height:100%}
.bank{position:absolute;bottom:clamp(12px,2vw,24px);margin:0;font:600 10.5px/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:#EFE7D8}
.bank-l{left:max(16px,env(safe-area-inset-left,0px))}
.bank-r{right:max(16px,env(safe-area-inset-right,0px))}
@media(min-width:640px){.scene{aspect-ratio:16/8.4}.bank{font-size:11.5px}}
@media(min-width:880px){
  .hero-top{grid-template-columns:minmax(0,8fr) minmax(0,4fr);gap:56px;align-items:end}
  .ht-side{padding-bottom:10px}
  .acts-d{display:flex!important;margin-top:24px}
  .acts-m{display:none}
  .scene{aspect-ratio:1200/400}
  .bank-l{left:max(20px,calc((100% - var(--max))/2 + 20px))}
  .bank-r{right:max(20px,calc((100% - var(--max))/2 + 20px))}
}

/* Sections */
section{position:relative}
.sec{padding-block:clamp(72px,10vw,128px)}
.split{display:grid;gap:28px}
@media(min-width:880px){.split{grid-template-columns:5fr 7fr;gap:64px;align-items:start}}
.sec h2{font-size:clamp(34px,4.6vw,58px);line-height:1.04}
.prose{display:grid;gap:18px;font-size:17px;max-width:60ch}
.prose .note{padding:18px 20px;border-left:2px solid var(--or);background:var(--sable);color:var(--encre);font-size:16px}
.link{display:inline-flex;gap:8px;align-items:center;font-weight:600;color:var(--foret);text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:2px;width:max-content}

/* But, mission, vision */
.bmv{display:grid;gap:1px;background:var(--filet);border-top:1px solid var(--filet);border-bottom:1px solid var(--filet);margin-top:56px}
@media(min-width:880px){.bmv{grid-template-columns:repeat(3,1fr)}}
.bmv article{background:var(--ivoire);padding:32px 4px 36px;display:grid;gap:14px;align-content:start}
@media(min-width:880px){.bmv article{padding:36px 32px 40px}.bmv article:first-child{padding-left:0}}
.bmv .k{font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--terracotta)}
.bmv h3{font-size:clamp(25px,2.4vw,30px);line-height:1.12}
.bmv p{color:var(--texte2);font-size:15.5px}

/* Parcours */
.parcours{background:var(--sable)}
.path{position:relative;margin-top:56px;display:grid;gap:0}
.track,.fill{position:absolute;left:23px;top:24px;bottom:24px;width:2px}
.track{background:rgba(28,25,23,.12)}
.fill{background:var(--terracotta);transform-origin:top;transform:scaleY(0)}
.step{position:relative;display:grid;grid-template-columns:48px 1fr;gap:20px;padding-block:22px;transition:opacity .5s}
.step .dot{width:48px;height:48px;border-radius:50%;border:1px solid rgba(28,25,23,.2);background:var(--sable);display:grid;place-items:center;font:600 13px var(--sans);color:var(--texte2);position:relative;z-index:1;transition:background .5s,border-color .5s,color .5s}
.step h3{font-size:clamp(26px,3vw,36px);line-height:1.1}
.step p{color:var(--texte2);margin-top:6px;max-width:52ch}
.step.on .dot{background:var(--terracotta);border-color:var(--terracotta);color:var(--ivoire)}
.js .step:not(.on){opacity:.42}
.step.last.on .dot{background:var(--foret);border-color:var(--foret)}
@media(min-width:880px){.path{grid-template-columns:1fr 1fr;column-gap:64px}.path .track,.path .fill{display:none}.step{grid-template-columns:56px 1fr}.step .dot{width:56px;height:56px}}

/* Portes */
.doors{display:grid;gap:20px;margin-top:48px}
@media(min-width:880px){.doors{grid-template-columns:1fr 1fr}}
.door{border-radius:4px;padding:clamp(28px,4vw,48px);display:grid;gap:16px;align-content:start;min-height:100%}
.door.a{background:transparent;border:1px solid var(--filet)}
.door.a h3{font-size:clamp(28px,3vw,38px);line-height:1.08}
.door.a p{color:var(--texte2)}
.door.l{background:var(--nuit);color:var(--ivoire-sur-nuit);position:relative;overflow:hidden}
.door.l .eyebrow{color:var(--or)}
.door.l h3{font-size:clamp(30px,3.4vw,44px);line-height:1.06}
.door.l p{color:var(--texte-nuit)}
.door.l .link{color:var(--or)}
.door.l svg.arc{position:absolute;right:-60px;bottom:-40px;width:320px;opacity:.5;pointer-events:none}

/* Pensée du matin */
.pensee{background:var(--foret);color:var(--ivoire-sur-nuit)}
.pensee .eyebrow{color:var(--or)}
.pensee h2{color:var(--ivoire)}
.pensee .lead{color:#C8D3C9}
.quote-card{margin-top:28px;border-top:1px solid var(--filet-nuit);border-bottom:1px solid var(--filet-nuit);padding-block:24px}
.quote-card small{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--or)}
.quote-card blockquote{margin:10px 0 0;font:italic 500 clamp(24px,2.6vw,32px)/1.25 var(--display);color:var(--ivoire)}
form{display:grid;gap:16px;background:var(--ivoire);color:var(--encre);padding:clamp(22px,3.5vw,36px);border-radius:4px}
.f{display:grid;gap:6px}
.f label{font-size:13px;font-weight:600}
.f label span{font-weight:400;color:var(--texte2)}
.f input,.f select{font:400 16px var(--sans);color:var(--encre);background:#fff;border:1px solid rgba(28,25,23,.2);border-radius:4px;padding:13px 14px;width:100%;min-width:0}
.f input:focus,.f select:focus{outline:none;border-color:var(--foret);box-shadow:0 0 0 3px rgba(15,77,54,.15)}
.tel{display:grid;grid-template-columns:110px minmax(0,1fr);gap:8px}
.err{font-size:13px;color:var(--terracotta);min-height:0}
.err:empty{display:none}
.chk{display:grid;grid-template-columns:20px 1fr;gap:10px;font-size:14px;color:var(--texte2);align-items:start}
.chk input{width:18px;height:18px;margin:2px 0 0;accent-color:var(--foret)}
form .btn{justify-content:center;width:100%}
form .fine{font-size:12.5px;color:var(--texte2)}
.ok{display:grid;gap:10px;background:var(--ivoire);color:var(--encre);padding:clamp(22px,3.5vw,36px);border-radius:4px}
.ok h3{font-size:30px}
.ok p{color:var(--texte2)}

/* Final */
.final{text-align:left}
.final blockquote{margin:0;font:italic 500 clamp(30px,4.4vw,56px)/1.15 var(--display);max-width:22ch}
.final cite{display:block;margin-top:18px;font:normal 600 12px var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--texte2)}
.final .end{margin-top:72px;padding-top:40px;border-top:1px solid var(--filet);display:grid;gap:18px}
.final .end h2{font-size:clamp(32px,4vw,48px)}
.final .acts{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}

footer{background:var(--encre);color:#CFC8BC;font-size:14px}
footer .wrap{padding-block:56px 40px;display:grid;gap:28px}
footer .sig{font:500 clamp(24px,3vw,32px)/1.2 var(--display);color:var(--ivoire)}
footer .tri{font-size:12px;letter-spacing:.2em;color:var(--or)}
footer nav{display:flex;flex-wrap:wrap;gap:10px 22px}
footer nav a{text-decoration:none;color:#CFC8BC}
footer nav a:hover{color:var(--ivoire)}
footer .proto{font-size:12px;color:#8E877C;border-top:1px solid rgba(255,255,255,.1);padding-top:20px}

@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}.js .step:not(.on){opacity:1}}

/* Transitions entre pages */
@view-transition{navigation:auto}
::view-transition-old(root){animation:vt-out .35s ease both}
::view-transition-new(root){animation:vt-in .55s cubic-bezier(.2,.7,.2,1) both}
@keyframes vt-out{to{opacity:0;transform:translateY(-8px)}}
@keyframes vt-in{from{opacity:0;transform:translateY(12px)}}
@media(prefers-reduced-motion:reduce){::view-transition-old(root),::view-transition-new(root){animation:none}}

/* Navigation active et menu mobile */
.nav a[aria-current="page"]{color:var(--encre);box-shadow:inset 0 -1px 0 var(--terracotta)}
.burger{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:50%;border:1px solid var(--filet);background:transparent;color:var(--encre);cursor:pointer;flex:none}
.burger span{display:block;width:18px;height:1.5px;background:currentColor;position:relative}
.burger span::before,.burger span::after{content:"";position:absolute;left:0;width:18px;height:1.5px;background:currentColor;transition:transform .3s}
.burger span::before{top:-6px}.burger span::after{top:6px}
.top .right{display:flex;align-items:center;gap:10px}
@media(min-width:960px){.burger{display:none}}
.menu{position:fixed;inset:0;z-index:80;background:var(--nuit);color:var(--ivoire-sur-nuit);display:flex;flex-direction:column;padding:calc(18px + env(safe-area-inset-top,0px)) max(20px,env(safe-area-inset-right,0px)) calc(28px + env(safe-area-inset-bottom,0px)) max(20px,env(safe-area-inset-left,0px));overflow-y:auto}
.menu .mhead{display:flex;justify-content:space-between;align-items:center}
.menu .mhead b{font:600 13px var(--sans);letter-spacing:.18em;color:var(--ivoire)}
.menu .close{width:44px;height:44px;border-radius:50%;border:1px solid var(--filet-nuit);background:transparent;color:var(--ivoire);font-size:22px;cursor:pointer}
.menu nav{display:grid;margin-top:36px}
.menu nav a{font:500 clamp(34px,9vw,52px)/1.15 var(--display);color:var(--ivoire);text-decoration:none;padding-block:6px;border-bottom:1px solid rgba(201,164,92,.16);display:flex;justify-content:space-between;align-items:baseline}
.menu nav a small{font:600 11px var(--sans);letter-spacing:.14em;color:var(--or)}
.menu nav a[aria-current="page"]{color:var(--or)}
.menu .btn{margin-top:auto;justify-content:center}
.menu .mfoot{margin-top:28px}
body.locked{overflow:hidden}

/* En-tête de page intérieure */
.phero{padding-block:clamp(48px,8vw,104px) clamp(40px,6vw,72px);border-bottom:1px solid var(--filet)}
.phero h1{font-size:clamp(40px,6.4vw,84px);line-height:1;margin:16px 0 22px;max-width:17ch}
.phero h1 .ln{display:block;overflow:hidden;padding-bottom:.06em}
.phero h1 .ln>span{display:inline-block}
.phero h1 em{font-style:italic;color:var(--terracotta)}
.phero .acts{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.crumb{font-size:13px;color:var(--texte2);margin-bottom:6px}
.crumb a{text-decoration:none}

/* Blocs génériques */
.sec.tight{padding-block:clamp(56px,8vw,96px)}
.sec.sand{background:var(--sable)}
.h2-row{display:grid;gap:14px;margin-bottom:40px}
.big-quote{margin:0;font:italic 500 clamp(28px,3.6vw,46px)/1.18 var(--display);max-width:24ch}
.big-quote cite{display:block;margin-top:16px;font:normal 600 12px var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--texte2)}
.rows{display:grid;border-top:1px solid var(--filet)}
.rows>div{display:grid;gap:8px;padding-block:24px;border-bottom:1px solid var(--filet)}
@media(min-width:760px){.rows>div{grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:40px}}
.rows h3{font-size:clamp(23px,2.4vw,29px);line-height:1.15}
.rows p{color:var(--texte2)}
.ticks{list-style:none;padding:0;margin:0;display:grid;gap:0;border-top:1px solid var(--filet)}
.ticks li{padding:18px 0 18px 34px;border-bottom:1px solid var(--filet);position:relative;font-size:17px}
.ticks li::before{content:"";position:absolute;left:4px;top:28px;width:16px;height:1.5px;background:var(--terracotta)}
.grid2{display:grid;gap:20px}
@media(min-width:760px){.grid2{grid-template-columns:1fr 1fr}}
.card{border:1px solid var(--filet);border-radius:4px;padding:clamp(24px,3.4vw,36px);display:grid;gap:12px;align-content:start;background:var(--ivoire)}
.card h3{font-size:clamp(25px,2.6vw,32px);line-height:1.1}
.card p{color:var(--texte2)}
.card .eyebrow{color:var(--terracotta)}
.steps5{list-style:none;margin:0;padding:0;display:grid;gap:0;counter-reset:s}
.steps5 li{display:grid;grid-template-columns:56px 1fr;gap:16px;padding-block:20px;border-bottom:1px solid var(--filet)}
.steps5 li b{font:500 34px/1 var(--display);color:var(--terracotta)}
.steps5 li h3{font-size:24px}
.steps5 li p{color:var(--texte2);margin-top:4px}
@media(min-width:960px){.steps5{grid-template-columns:repeat(5,1fr);gap:24px}.steps5 li{grid-template-columns:1fr;border-bottom:0;border-top:2px solid var(--filet);padding-top:22px;position:relative}.steps5 li::before{content:"";position:absolute;left:0;top:-2px;height:2px;width:100%;background:var(--terracotta);transform:scaleX(var(--p,0));transform-origin:left;transition:transform 1s cubic-bezier(.2,.7,.2,1)}.steps5 li.on::before{--p:1}}
.info{width:100%;border-collapse:collapse;font-size:15.5px}
.info th,.info td{text-align:left;padding:16px 0;border-bottom:1px solid var(--filet);vertical-align:top}
.info th{width:38%;font-weight:600;padding-right:20px}
.info td{color:var(--texte2)}
.todo{display:inline-block;font-size:12px;font-weight:600;letter-spacing:.04em;color:var(--terracotta);background:rgba(181,67,44,.08);padding:3px 8px;border-radius:3px}
.cadre{border:1.5px solid var(--encre);border-radius:4px;padding:clamp(24px,3.6vw,40px);display:grid;gap:14px;background:var(--ivoire)}
.cadre h2{font-size:clamp(30px,3.4vw,42px)}
.cadre p{max-width:64ch}
.form-wrap{display:grid;gap:28px}
@media(min-width:880px){.form-wrap{grid-template-columns:5fr 7fr;gap:64px;align-items:start}}
.f textarea{font:400 16px var(--sans);color:var(--encre);background:#fff;border:1px solid rgba(28,25,23,.2);border-radius:4px;padding:13px 14px;width:100%;min-height:130px;resize:vertical}
.f textarea:focus{outline:none;border-color:var(--foret);box-shadow:0 0 0 3px rgba(15,77,54,.15)}
.choices{display:flex;flex-wrap:wrap;gap:8px}
.choices label{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(28,25,23,.2);border-radius:999px;padding:9px 14px;font-size:14px;cursor:pointer;background:#fff}
.choices input{accent-color:var(--foret);margin:0}
.choices label:has(input:checked){border-color:var(--foret);background:rgba(15,77,54,.07)}
form.on-sand{background:#fff}
.portrait{aspect-ratio:4/5;max-width:100%;border-radius:4px;background:repeating-linear-gradient(135deg,var(--sable) 0 14px,#E7DECD 14px 28px);display:grid;place-items:center;text-align:center;color:var(--texte2);font-size:14px;padding:20px;border:1px solid var(--filet)}
.trio{display:grid;gap:0;border-top:1px solid var(--filet)}
.trio>div{padding-block:28px;border-bottom:1px solid var(--filet);display:grid;gap:10px}
@media(min-width:880px){.trio{grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--filet)}.trio>div{border-bottom:0;padding:32px 28px 36px;border-left:1px solid var(--filet)}.trio>div:first-child{border-left:0;padding-left:0}}
.trio h3{font-size:clamp(34px,3.6vw,46px);font-style:italic;color:var(--foret)}
.trio p{color:var(--texte2)}

/* Pensées */
.chips{display:flex;gap:8px;overflow-x:auto;padding-bottom:6px;margin-bottom:32px;scrollbar-width:none}
.chips::-webkit-scrollbar{display:none}
.chips button{flex:none;font:500 14px var(--sans);border:1px solid var(--filet);background:transparent;color:var(--encre);padding:10px 16px;border-radius:999px;cursor:pointer;transition:background .25s,color .25s,border-color .25s}
.chips button[aria-pressed="true"]{background:var(--encre);color:var(--ivoire);border-color:var(--encre)}
.plist{display:grid;gap:16px}
@media(min-width:760px){.plist{grid-template-columns:1fr 1fr}}
@media(min-width:1080px){.plist{grid-template-columns:repeat(3,1fr)}}
.pc{border:1px solid var(--filet);border-radius:4px;padding:26px 24px;display:grid;gap:16px;align-content:space-between;background:var(--ivoire);transition:border-color .3s,transform .3s}
.pc:hover{border-color:var(--encre);transform:translateY(-3px)}
.pc .meta{display:flex;justify-content:space-between;gap:12px;font-size:12px;color:var(--texte2);letter-spacing:.04em}
.pc .meta b{color:var(--foret);font-weight:600;letter-spacing:.12em;text-transform:uppercase}
.pc blockquote{margin:0;font:500 24px/1.25 var(--display)}
.pc .share{display:flex;gap:16px;font-size:14px;font-weight:600}
.pc .share a{color:var(--foret);text-decoration:none}
.pc .share button{font:inherit;background:none;border:0;padding:0;color:var(--texte2);cursor:pointer}
.empty{padding:40px 0;color:var(--texte2)}

/* Page Legacy : atmosphère sombre */
body.legacy{--ivoire:#0F2A20;--sable:#123326;--encre:#EFE7D8;--texte2:#B9C2B6;--filet:rgba(201,164,92,.22);background:#0F2A20;color:#EFE7D8}
body.legacy::before{background:#0F2A20}
body.legacy .top.solid{background:rgba(15,42,32,.9)}
body.legacy .eyebrow{color:var(--or)}
body.legacy .phero h1 em,body.legacy .big-quote{color:var(--ivoire-sur-nuit)}
body.legacy .phero h1 em{color:var(--or)}
body.legacy .btn-s{border-color:rgba(201,164,92,.5);color:var(--or)}
body.legacy .btn-s:hover{border-color:var(--or)}
body.legacy .btn-p{background:var(--or);color:#0F2A20}
body.legacy .btn-p:hover{background:#D9B672}
body.legacy .ticks li::before{background:var(--or)}
body.legacy .rows h3{color:var(--ivoire-sur-nuit)}
body.legacy .link{color:var(--or)}
body.legacy .mark path:first-child{stroke:#C9A45C}
body.legacy .mark path:last-child{stroke:#EFE7D8}
body.legacy form{background:#F7F2EA;color:#1C1917}
body.legacy form .btn-p{background:#0F2A20;color:#F7F2EA}
body.legacy .burger{border-color:var(--filet)}
body.legacy footer{background:#0A1E17}
.dim{display:grid;grid-template-columns:auto 1fr;gap:6px 20px;padding-block:28px;border-bottom:1px solid var(--filet);position:relative}
.dim .n{font:500 clamp(40px,5vw,64px)/1 var(--display);color:var(--or);grid-row:span 2}
.dim h3{font-size:clamp(26px,2.8vw,34px)}
.dim p{color:var(--texte2);max-width:58ch}
.dim .rule{position:absolute;left:0;bottom:-1px;height:1px;width:100%;background:var(--or);transform-origin:left;transform:scaleX(0)}
.gold-arc{display:block;width:100%;max-width:520px;height:auto;margin-top:36px}
.legal p{max-width:66ch;margin-bottom:18px}
.legal p b{color:var(--encre)}
body.legacy form,body.legacy .ok{--encre:#1C1917;--texte2:#5B544C;--filet:rgba(28,25,23,.14);--ivoire:#F7F2EA}
/* Base commune à toutes les pages */
[hidden]{display:none!important}
body{margin:0}
img{max-width:100%}
.link{width:fit-content;max-width:100%}

/* Bouton d'en-tête : une seule ligne, même style que les autres boutons */
.btn{white-space:nowrap}
.mark span{white-space:nowrap}
.top .hcta{padding:12px 18px;font-size:14px}
@media(max-width:599px){
  .top .hcta{display:none}
  .mark small{display:none}
}
@media(min-width:960px) and (max-width:1180px){.nav{gap:18px}.mark small{display:none}}
/* Bouton fixe en bas d'écran sur téléphone */
.mcta{position:fixed;left:0;right:0;bottom:0;z-index:40;padding:12px max(16px,env(safe-area-inset-right,0px)) calc(12px + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));background:linear-gradient(to top,rgba(247,242,234,.96) 60%,rgba(247,242,234,0));transform:translateY(110%);transition:transform .45s cubic-bezier(.2,.7,.2,1);pointer-events:none}
.mcta.show{transform:none;pointer-events:auto}
.mcta .btn{width:100%;justify-content:center}
body.legacy .mcta{background:linear-gradient(to top,rgba(15,42,32,.96) 60%,rgba(15,42,32,0))}
@media(min-width:600px){.mcta{display:none}}
@media(prefers-reduced-motion:reduce){.mcta{transition:none}}
