/*
Theme Name: PsychEspoir
Theme URI: https://psychespoir.fr/
Author: Wilfried Symphor
Description: Thème sur mesure de PsychEspoir — psychologue clinicien, docteur en psychologie.
Version: 1.0
Requires at least: 6.0
Requires PHP: 7.4
License: Tous droits réservés
Text Domain: psychespoir
*/

@font-face {
  font-family: 'DM Sans';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/dmsans/v17/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat-JDW3z.ttf) format('truetype');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/dmsans/v17/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAopxhTg.ttf) format('truetype');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/dmsans/v17/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAfJthTg.ttf) format('truetype');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/dmsans/v17/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwARZthTg.ttf) format('truetype');
}
@font-face {
  font-family: 'DM Serif Display';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/dmserifdisplay/v17/-nFhOHM81r4j6k0gjAW3mujVU2B2G_Vx1w.ttf) format('truetype');
}
@font-face {
  font-family: 'DM Serif Display';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/dmserifdisplay/v17/-nFnOHM81r4j6k0gjAW3mujVU2B2K_c.ttf) format('truetype');
}

:root{--parch:#F9F6F0;--slate:#183A37;--profond:#12312E;--pin:#336B62;--eau:#68B4AC;--tan:#DAB185;--encre:var(--slate);--mut:rgba(24,58,55,.68);--voile:rgba(104,180,172,.10);--fil:rgba(24,58,55,.13);--filc:rgba(249,246,240,.17);--filet-tan:rgba(218,177,133,.55);--emb-tige:var(--slate);--emb-bourgeon:var(--tan);--emb-bras:var(--pin);--teal:var(--pin);--eaucl:var(--eau);--tancl:var(--tan);--tealcl:var(--eau);--pine:var(--profond);--creme:var(--parch);--lin:var(--parch);--sauge:var(--parch);--menthe:var(--parch);--titre:"DM Serif Display",Georgia,"Times New Roman",serif;--texte:"DM Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--entete:68px;--large:1180px;--etroit:720px;--r:4px;}*,*::before,*::after{box-sizing:border-box;}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;}body{margin:0;background:var(--parch);color:var(--encre);font-family:var(--texte);font-size:15px;line-height:1.75;-webkit-font-smoothing:antialiased;}img,svg{max-width:100%;}img{height:auto;display:block;}.ds{font-family:var(--titre);font-weight:400;letter-spacing:-.005em;}h1,h2,h3,h4{margin:0;line-height:1.18;font-weight:400;}h1.gr{font-size:clamp(38px,5.6vw,62px);}h2.gr{font-size:clamp(29px,3.9vw,44px);}h3{font-size:20px;font-weight:600;}.gr em{font-style:italic;color:var(--pin);}.f-slate .gr em,.f-pin .gr em,.heros .gr em{color:var(--eau);}p{margin:0 0 16px;}p:last-child{margin-bottom:0;}.intro{font-size:16px;line-height:1.8;color:var(--mut);max-width:62ch;margin:18px 0 0;}.f-slate .intro,.f-pin .intro,.heros .intro{color:rgba(249,246,240,.78);}.eyeb{display:inline-flex;align-items:center;gap:10px;font-size:10.5px;font-weight:700;letter-spacing:.19em;text-transform:uppercase;color:var(--teal);}.eyeb::before{content:"";width:26px;height:1px;background:var(--tan);}.eyeb.nu::before{display:none;}.eyeb.centre{justify-content:center;}.f-slate .eyeb,.f-pin .eyeb,.heros .eyeb{color:var(--tan);}.f-slate .eyeb::before,.f-pin .eyeb::before,.heros .eyeb::before{background:var(--eau);}.fin{font-size:9.5px;letter-spacing:.12em;padding:2px 8px;border:1px solid currentColor;border-radius:20px;opacity:.8;}.mention{font-size:12px;line-height:1.7;color:var(--mut);}.f-slate .mention,.heros .mention{color:rgba(249,246,240,.55);}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}.todo{background:#FFE9A8;color:#6B4E00;padding:0 4px;border-radius:2px;font-weight:600;}.wrap{width:min(100% - 44px,var(--large));margin-inline:auto;}.wrap.etroit,.etroit{width:min(100% - 44px,var(--etroit));margin-inline:auto;}.sec{padding-block:clamp(62px,7vw,104px);position:relative;}.sec.court{padding-block:clamp(46px,5vw,74px);}.sec.centre{text-align:center;}.sec.centre .intro{margin-inline:auto;}.sec.centre .duo-btn{justify-content:center;}.f-slate{background:var(--slate);color:var(--parch);}.f-pin{background:var(--profond);color:var(--parch);}.f-creme,.f-sauge,.f-lin{background:var(--parch);}.f-menthe{background:var(--voile);}.f-slate p,.f-pin p{color:rgba(249,246,240,.78);}.f-slate h2,.f-slate h3,.f-pin h2,.f-pin h3{color:var(--parch);}.deux{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center;}.deux.haut{align-items:start;}.g2{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;}.g3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}.raccorde{position:relative;}.raccord{position:absolute;top:-1px;left:0;width:100%;height:56px;display:block;pointer-events:none;}.raccord path{fill:var(--depuis,var(--parch));}.filet{width:210px;height:20px;display:block;margin-inline:auto;}.filet path{fill:none;stroke:var(--tan);stroke-width:1.4;stroke-linecap:round;}.flourish{display:block;margin-top:18px;}.evitement{position:absolute;left:-9999px;background:var(--slate);color:var(--parch);padding:12px 20px;z-index:999;}.evitement:focus{left:12px;top:12px;}.jauge{position:fixed;top:0;left:0;z-index:60;height:2px;width:0%;background:linear-gradient(90deg,var(--teal),var(--tan));transition:width .1s linear;}.entete{position:sticky;top:0;z-index:50;height:var(--entete);background:rgba(249,246,240,.93);backdrop-filter:blur(10px);border-bottom:1px solid var(--fil);}.entete .wrap{height:100%;display:flex;align-items:center;justify-content:space-between;gap:24px;}.logo{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--slate);font-family:var(--titre);font-size:21px;letter-spacing:-.01em;}.logo .emb{width:17px;height:28px;flex:none;}.logo i{font-style:italic;color:var(--teal);}.pied .logo{color:var(--parch);}.pied .logo i{color:var(--tancl);}.pied .logo{--emb-tige:var(--parch);--emb-bras:var(--eau);}.nav{display:flex;align-items:center;gap:26px;}.nav>* + *{margin-left:0;}@supports not (gap:1px){.nav>a{margin-left:26px;}}.nav a{text-decoration:none;color:var(--encre);font-size:13.5px;font-weight:500;padding-block:4px;position:relative;}.nav a:not(.btn)::after{content:"";position:absolute;left:0;bottom:0;width:0;height:1px;background:var(--tan);transition:width .25s ease;}.nav a:not(.btn):hover::after,.nav a.ici::after{width:100%;}.nav a.ici{color:var(--teal);font-weight:600;}.sousnav{position:sticky;top:var(--entete);z-index:40;background:var(--parch);border-bottom:1px solid var(--fil);}.sousnav .in{width:min(100% - 44px,var(--large));margin-inline:auto;display:flex;gap:28px;overflow-x:auto;scrollbar-width:none;}.sousnav .in::-webkit-scrollbar{display:none;}.sousnav a{flex:none;padding:15px 0;font-size:12.5px;color:var(--mut);text-decoration:none;white-space:nowrap;border-bottom:2px solid transparent;}.sousnav a:hover{color:var(--encre);}.sousnav a.actif{color:var(--teal);border-bottom-color:var(--tan);font-weight:600;}.btn{display:inline-block;padding:13px 24px;border:1px solid var(--slate);border-radius:var(--r);background:transparent;color:var(--slate);font-family:var(--texte);font-size:13.5px;font-weight:600;text-decoration:none;cursor:pointer;transition:background .2s ease,color .2s ease,transform .2s ease;}.btn:hover{background:var(--slate);color:var(--parch);transform:translateY(-1px);}.btn.vert{background:var(--eau);border-color:var(--eau);color:var(--profond);}.btn.vert:hover{background:var(--pin);border-color:var(--pin);color:var(--parch);}.btn.pri{padding:10px 18px;font-size:12.5px;}.btn.creux{background:transparent;border-color:var(--filc);color:var(--parch);}.btn.creux:hover{background:rgba(249,246,240,.1);color:var(--parch);}.duo-btn{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:30px;}.lien{display:inline-flex;align-items:center;gap:7px;color:var(--pin);font-size:13.5px;font-weight:600;text-decoration:none;}.lien i{font-style:normal;color:var(--eau);transition:transform .22s ease;}.lien:hover i{transform:translateX(4px);}.lien.clair{color:var(--eau);}.lien.clair i{color:var(--tan);}.tag{display:inline-block;padding:5px 13px;border-radius:20px;font-size:10.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;border:1px solid var(--fil);color:var(--mut);}.tag.clair{border-color:var(--filc);color:rgba(249,246,240,.8);}.tag.vif{background:var(--tan);border-color:var(--tan);color:var(--profond);}.carte{position:relative;display:block;padding:30px 28px;background:#FFFFFF;border:1px solid var(--fil);border-radius:var(--r);color:inherit;text-decoration:none;transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease;}a.carte:hover{transform:translateY(-3px);border-color:var(--teal);box-shadow:0 14px 34px rgba(21,43,41,.08);}.carte h3{margin-bottom:10px;}.carte p{font-size:13.5px;color:var(--mut);}.carte .lien{margin-top:16px;}.carte.plate{background:transparent;border:none;padding:26px 24px;}.f-creme .carte,.f-sauge .carte,.f-lin .carte{background:var(--parch);}.f-menthe .carte,.carte.plate.f-menthe{background:var(--menthe);border-color:transparent;}.f-creme .num-carte,.f-sauge .num-carte{background:var(--parch);}.f-pin .carte,.f-slate .carte{background:rgba(249,246,240,.05);border-color:var(--filc);}.f-pin .carte p,.f-slate .carte p{color:rgba(249,246,240,.74);}.fantome{position:absolute;top:14px;right:20px;font-family:var(--titre);font-size:46px;line-height:1;color:var(--fil);pointer-events:none;}.f-pin .fantome,.f-slate .fantome{color:rgba(249,246,240,.1);}.ic{margin-bottom:16px;}.meta{margin-top:14px;font-size:10.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--pin);}.f-slate .meta,.f-pin .meta{color:var(--tan);}.ligne{display:grid;grid-template-columns:118px 1fr;gap:16px;align-items:baseline;padding:12px 0;border-bottom:1px solid var(--fil);font-size:13.5px;}.ligne b{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--teal);}.f-slate .ligne,.f-pin .ligne{border-color:var(--filc);}.f-slate .ligne b,.f-pin .ligne b{color:var(--tancl);}.f-slate .ligne span,.f-pin .ligne span{color:rgba(249,246,240,.78);}.num-carte{display:flex;gap:16px;align-items:flex-start;padding:18px 20px;background:var(--parch);border:1px solid var(--fil);border-radius:var(--r);}.num-carte .n{flex:none;width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:var(--menthe);color:var(--teal);font-size:12px;font-weight:700;}.num-carte b{display:block;font-size:14px;margin-bottom:4px;}.num-carte p{font-size:12.5px;color:var(--mut);margin:0;}.coche{display:flex;gap:14px;align-items:flex-start;padding:15px 0;border-bottom:1px solid var(--fil);}.coche svg{flex:none;margin-top:3px;}.coche b{display:block;font-size:14.5px;margin-bottom:3px;}.coche p{font-size:13px;color:var(--mut);margin:0;}.parcours{border-left:1px solid var(--fil);padding-left:26px;}.etape{position:relative;padding-bottom:26px;}.etape:last-child{padding-bottom:0;}.etape::before{content:"";position:absolute;left:-30px;top:7px;width:8px;height:8px;border-radius:50%;background:var(--tan);}.etape .k{font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--tan);margin-bottom:5px;}.etape h3{font-size:17px;margin-bottom:5px;}.etape p{font-size:13px;color:var(--mut);}.pt{display:flex;gap:12px;margin-top:14px;font-size:14px;}.pt i{font-style:normal;color:var(--tan);}.cit{position:relative;padding:30px 28px;border:1px solid var(--fil);border-radius:var(--r);background:rgba(249,246,240,.55);}.cit .guill{font-family:var(--titre);font-size:52px;line-height:.6;color:var(--tan);opacity:.5;}.cit q{display:block;quotes:none;font-family:var(--titre);font-size:19px;line-height:1.5;margin-top:8px;}.cit .att{margin-top:14px;font-size:10.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--mut);}.form{max-width:560px;}.champ{margin-bottom:18px;}.champ label{display:block;margin-bottom:7px;font-size:11.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--teal);}.champ input,.champ select,.champ textarea{width:100%;padding:12px 14px;border:1px solid var(--fil);border-radius:var(--r);background:#fff;color:var(--encre);font-family:var(--texte);font-size:14.5px;}.champ textarea{min-height:140px;resize:vertical;}.champ input:focus,.champ select:focus,.champ textarea:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px rgba(51,107,98,.12);}.duo-champ{display:grid;grid-template-columns:1fr 1fr;gap:18px;}.capte{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px;}.capte input{flex:1 1 240px;padding:13px 16px;border:1px solid var(--filc);border-radius:var(--r);background:rgba(249,246,240,.07);color:var(--parch);font-family:var(--texte);font-size:14px;}.capte input::placeholder{color:rgba(249,246,240,.45);}.capte input:focus{outline:none;border-color:var(--eau);}.merci{display:none;margin-top:18px;padding:14px 18px;border-left:2px solid var(--eau);background:rgba(104,180,172,.1);font-size:13.5px;}.merci.vu{display:block;}.urgence{padding:20px 22px;border-left:3px solid #C4553D;background:rgba(196,85,61,.07);border-radius:0 var(--r) var(--r) 0;font-size:13px;line-height:1.7;}.urgence b{display:block;margin-bottom:6px;font-size:14px;}.f-slate .urgence{background:rgba(196,85,61,.16);color:rgba(249,246,240,.88);}.faq{border-bottom:1px solid var(--fil);}.faq button{width:100%;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 0;background:none;border:none;cursor:pointer;font-family:var(--texte);font-size:15.5px;font-weight:600;color:var(--encre);text-align:left;}.faq .pl{flex:none;font-size:20px;color:var(--tan);transition:transform .25s ease;}.faq.ouvert .pl{transform:rotate(45deg);}.corps-faq{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s ease;}.faq.ouvert .corps-faq{grid-template-rows:1fr;}.corps-faq>p{overflow:hidden;font-size:14px;color:var(--mut);margin:0;}.faq.ouvert .corps-faq>p{padding-bottom:22px;}.heros{position:relative;overflow:hidden;padding-block:clamp(64px,8vw,112px);}.heros.grand{padding-block:clamp(80px,10vw,140px);}.aurore{position:absolute;inset:0;z-index:1;pointer-events:none;}.aurore span{position:absolute;border-radius:50%;filter:blur(90px);opacity:.4;}.aurore .a1{width:460px;height:460px;background:var(--teal);top:-140px;left:-90px;animation:derive 34s ease-in-out infinite;}.aurore .a2{width:380px;height:380px;background:var(--eau);bottom:-150px;right:8%;animation:derive 40s ease-in-out infinite reverse;}.aurore .a3{width:300px;height:300px;background:var(--tan);top:28%;right:-80px;opacity:.22;animation:derive 46s ease-in-out infinite;}@keyframes derive{0%,100%{transform:translate(0,0) scale(1);}50%{transform:translate(28px,-22px) scale(1.09);}}.grain{position:absolute;inset:0;z-index:2;pointer-events:none;opacity:.3;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)' opacity='.35'/%3E%3C/svg%3E");}.halo{position:absolute;top:50%;left:50%;width:640px;height:640px;transform:translate(-50%,-50%);background:radial-gradient(circle,rgba(104,180,172,.14),transparent 68%);pointer-events:none;z-index:1;}.mot{display:inline-block;}html.anim .mot{opacity:0;transform:translateY(14px);animation:monte .7s cubic-bezier(.2,.7,.3,1) forwards;animation-delay:calc(var(--i) * .09s);}@keyframes monte{to{opacity:1;transform:none;}}.portrait{position:relative;}.cadre-or{position:absolute;inset:14px -14px -14px 14px;border:1px solid var(--tancl);border-radius:var(--r);}.vitre{position:relative;display:grid;place-items:center;aspect-ratio:4 / 5;background:rgba(249,246,240,.07);border:1px solid var(--filc);border-radius:var(--r);overflow:hidden;}.vitre img{width:100%;height:100%;object-fit:cover;}.marqueur{position:absolute;bottom:14px;font-size:9.5px;letter-spacing:.2em;color:rgba(249,246,240,.5);}.legende{margin-top:26px;font-size:12.5px;color:rgba(249,246,240,.62);}.legende b{display:block;color:var(--parch);font-size:14.5px;}.ill{width:100%;height:auto;display:block;overflow:visible;}.ill .trame{fill:none;stroke:currentColor;stroke-width:1.2;opacity:.3;stroke-linecap:round;}.ill .sujet{fill:none;stroke:var(--teal);stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;}.ill .eau{fill:none;stroke:var(--eau);stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;}.ill .accent{fill:none;stroke:var(--tan);stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;}.ill .voile{fill:rgba(104,180,172,.12);stroke:none;}.ill .plein{fill:var(--tan);stroke:none;}.ill .plein-eau{fill:var(--eau);stroke:none;}.f-slate .ill .sujet,.f-pin .ill .sujet,.heros .ill .sujet{stroke:var(--eaucl);}.f-slate .ill .accent,.f-pin .ill .accent,.heros .ill .accent{stroke:var(--tancl);}.ill-cadre{position:relative;padding:22px;border:1px solid var(--fil);border-radius:var(--r);}.ill-legende{margin-top:12px;text-align:center;font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--mut);}.module{display:flex;flex-direction:column;padding:30px 26px;background:rgba(249,246,240,.05);border:1px solid var(--filc);border-radius:var(--r);}.module.phare{background:rgba(104,180,172,.1);border-color:var(--eau);}.module .duree{font-size:10.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--tancl);}.module h3{margin:10px 0 8px;font-size:22px;color:var(--parch);}.module>p{font-size:13.5px;color:rgba(249,246,240,.76);}.module ul{margin:14px 0 0;padding:0;list-style:none;}.module li{position:relative;padding-left:18px;margin-bottom:9px;font-size:12.5px;line-height:1.6;color:rgba(249,246,240,.72);}.module li::before{content:"—";position:absolute;left:0;color:var(--tan);}.module .objectif{margin-top:16px;padding:13px 15px;border-left:2px solid var(--tan);background:rgba(249,246,240,.04);font-size:12.5px;line-height:1.65;color:rgba(249,246,240,.8);}.module .objectif b{color:var(--tancl);}.module .prix{margin:18px 0 16px;padding-top:16px;border-top:1px solid var(--filc);font-size:13px;line-height:1.5;color:var(--parch);}.module .btn{margin-top:auto;text-align:center;}.chiffres{display:flex;flex-wrap:wrap;gap:34px;margin-top:38px;padding-top:20px;border-top:1px solid var(--filc);}.chiffres>div{display:flex;flex-direction:column;gap:4px;}.chiffres b{font-family:var(--titre);font-size:30px;line-height:1;color:var(--tancl);}.chiffres i{font-style:normal;font-size:11.5px;line-height:1.5;max-width:16ch;color:rgba(249,246,240,.62);}.bandeau-preuve{background:var(--pine);color:var(--parch);padding-block:26px;}.bandeau-preuve .wrap{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;}.bandeau-preuve b{display:block;font-size:13px;margin-bottom:5px;color:var(--tancl);}.bandeau-preuve span{font-size:12.5px;line-height:1.65;color:rgba(249,246,240,.72);}.fiche{display:flex;flex-direction:column;}.apercu{padding:20px 18px;margin:-30px -28px 0;border-radius:var(--r) var(--r) 0 0;background:linear-gradient(160deg,var(--sauge),var(--menthe));color:var(--slate);}.apercu .a1{font-size:8.5px;letter-spacing:.16em;text-transform:uppercase;opacity:.55;}.apercu .a2{font-size:21px;margin:6px 0 2px;}.apercu .a3{font-size:10.5px;font-style:italic;opacity:.65;}.dl{display:inline-flex;align-items:center;gap:8px;margin-top:auto;padding-top:16px;color:var(--teal);font-size:13px;font-weight:600;text-decoration:none;}.dl span{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--menthe);}.dl:hover span{background:var(--eau);color:#fff;}.articles{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}.art{display:block;padding:26px 24px;background:var(--parch);border:1px solid var(--fil);border-radius:var(--r);text-decoration:none;color:inherit;transition:transform .25s ease,border-color .25s ease;}.art:hover{transform:translateY(-3px);border-color:var(--teal);}.art.vedette{grid-column:span 2;background:var(--menthe);}.art h3{font-size:19px;margin:12px 0 8px;}.art.vedette h3{font-size:25px;}.art p{font-size:13px;color:var(--mut);}.cat{display:inline-block;padding:4px 11px;border-radius:20px;font-size:9.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;background:var(--teal);color:var(--parch);}.cat.alt{background:var(--tan);}.replay,.vign,.bulle,.lecture,.sommaire,.doc,.annot{}.replay{display:flex;gap:16px;align-items:center;padding:16px 0;border-bottom:1px solid var(--fil);}.vign{flex:none;width:96px;aspect-ratio:16/9;border-radius:var(--r);background:var(--menthe);display:grid;place-items:center;}.lecture{font-size:11.5px;color:var(--mut);}.bulle{display:inline-block;padding:6px 14px;border-radius:20px;background:var(--menthe);font-size:12px;}.sommaire{display:flex;flex-wrap:wrap;gap:12px;}.compte{display:flex;gap:24px;margin:20px 0;}.compte b{display:block;font-family:var(--titre);font-size:32px;color:var(--tancl);line-height:1;}.compte i{font-style:normal;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:rgba(249,246,240,.55);}.cyc{flex:none;}.cyc circle{fill:none;stroke:var(--filc);stroke-width:1.2;}.cyc line{stroke:rgba(249,246,240,.3);stroke-width:1;}.cyc .m{stroke:var(--tancl);stroke-width:1.6;}.cyc .aig{transform-origin:38px 38px;animation:tourne 60s linear infinite;}@keyframes tourne{to{transform:rotate(360deg);}}.sec.ap{position:relative;overflow:hidden;}.ronds{position:absolute;inset:0;pointer-events:none;}.rond{position:absolute;border-radius:50%;filter:blur(70px);opacity:.3;}.r-vert{width:320px;height:320px;background:var(--eau);top:-80px;left:-60px;}.r-rose{width:280px;height:280px;background:#E8B4A0;bottom:-90px;right:-50px;}.dedans{position:relative;z-index:2;}.embleme{width:100%;max-width:220px;margin-inline:auto;}.marque{font-family:var(--titre);font-size:clamp(34px,4.4vw,50px);color:var(--slate);margin:10px 0 6px;}.marque i{font-style:italic;color:#C4553D;}.accroche{font-size:16px;line-height:1.75;color:var(--mut);max-width:46ch;}.signature{margin-top:12px;font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--tan);}.btn-ap{display:inline-block;margin:22px 20px 0 0;padding:13px 24px;border-radius:var(--r);background:#C4553D;color:#fff;font-size:13.5px;font-weight:600;text-decoration:none;}.btn-ap:hover{background:#A8442F;}.lien-ap{color:#C4553D;font-size:13.5px;font-weight:600;text-decoration:none;}.lien-ap i{font-style:normal;}.suite{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--fil);}.suite a{position:relative;display:block;padding:40px 32px;text-decoration:none;color:inherit;border-right:1px solid var(--fil);transition:background .25s ease;}.suite a:last-child{border-right:none;}.suite a:hover{background:var(--creme);}.suite .k{display:block;font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--tan);}.suite .t{display:block;font-size:25px;margin:8px 0 8px;}.suite p{font-size:13px;color:var(--mut);}.suite .fl{position:absolute;top:40px;right:32px;color:var(--teal);transition:transform .25s ease;}.suite a:hover .fl{transform:translateX(5px);}.rappel{position:fixed;bottom:20px;right:20px;z-index:45;max-width:340px;padding:20px 22px;background:var(--slate);color:var(--parch);border-radius:var(--r);box-shadow:0 18px 44px rgba(21,43,41,.28);}.rappel p{font-size:13px;color:rgba(249,246,240,.8);}.rappel .fermer{position:absolute;top:8px;right:10px;background:none;border:none;cursor:pointer;color:rgba(249,246,240,.55);font-size:19px;}body.p-index .sec{padding-block:clamp(54px,6vw,88px);}body.p-soin .rv,body.p-soin .casc>*{opacity:1 !important;transform:none !important;}body.p-soin .jauge{display:none;}body.p-soin .sec{padding-block:clamp(66px,8vw,112px);}body.p-soin .sec p,body.p-soin .corps-faq>p{line-height:1.85;max-width:68ch;}body.p-soin .aurore{display:none;}body.p-form .sec p{line-height:1.7;}body.p-form .ligne{grid-template-columns:130px 1fr;padding:10px 0;}body.p-biblio .sec{padding-block:clamp(46px,5vw,76px);}body.p-biblio .carte p{font-size:13px;}body.p-recit .sec .intro,body.p-recit .sec>.wrap>p{max-width:62ch;}.pied{background:var(--profond);color:rgba(249,246,240,.72);padding-block:56px 26px;}.pied .cols{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:40px;}.devise{margin-top:14px;font-size:13px;font-style:italic;color:rgba(249,246,240,.6);max-width:26ch;}.pied h4{font-size:10.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--tan);margin-bottom:14px;}.pied ul{list-style:none;margin:0;padding:0;}.pied li{margin-bottom:9px;}.pied a{color:rgba(249,246,240,.72);font-size:13px;text-decoration:none;}.pied a:hover{color:var(--parch);text-decoration:underline;}.avert{margin-top:44px;padding:18px 20px;border:1px solid var(--filc);border-radius:var(--r);font-size:12px;line-height:1.7;color:rgba(249,246,240,.62);}.avert b{color:var(--parch);}.bas{margin-top:22px;padding-top:18px;border-top:1px solid var(--filc);display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;font-size:11.5px;color:rgba(249,246,240,.5);}.bas a{font-size:11.5px;}html.anim .rv{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease;}html.anim .rv.vu{opacity:1;transform:none;}html.anim .rv.d1{transition-delay:.12s;}html.anim .rv.d2{transition-delay:.24s;}html.anim .casc>*{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease;}html.anim .casc.vu>*{opacity:1;transform:none;}html.anim .casc.vu>*:nth-child(2){transition-delay:.1s;}html.anim .casc.vu>*:nth-child(3){transition-delay:.2s;}html.anim .casc.vu>*:nth-child(4){transition-delay:.3s;}html.anim .casc.vu>*:nth-child(5){transition-delay:.4s;}html.anim .casc.vu>*:nth-child(6){transition-delay:.5s;}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--tan);outline-offset:3px;border-radius:2px;}@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;scroll-behavior:auto !important;}.rv,.casc>*,.mot{opacity:1 !important;transform:none !important;}}@media (max-width:980px){.deux{grid-template-columns:1fr !important;gap:40px;}.g3,.articles{grid-template-columns:repeat(2,1fr);}.art.vedette{grid-column:span 2;}.pied .cols{grid-template-columns:1fr 1fr;gap:30px;}.suite{grid-template-columns:1fr;}.suite a{border-right:none;border-bottom:1px solid var(--fil);}.bandeau-preuve .wrap{grid-template-columns:1fr;gap:18px;}}@media (max-width:720px){body{font-size:14.5px;}.wrap{width:calc(100% - 32px);}.entete{height:auto;padding-block:10px;position:static;}.entete .wrap{flex-direction:column;align-items:flex-start;gap:10px;}.nav{gap:16px;flex-wrap:wrap;}.nav a{font-size:12.5px;}.sousnav{top:0;}.g3,.articles{grid-template-columns:1fr;}.art.vedette{grid-column:span 1;}.duo-champ{grid-template-columns:1fr;}.ligne{grid-template-columns:1fr;gap:3px;}.chiffres{gap:22px;}.chiffres b{font-size:25px;}.rappel{left:14px;right:14px;bottom:14px;max-width:none;}.pied .cols{grid-template-columns:1fr;}.apercu{margin-inline:-28px;}}.vague{animation:houle 22s linear infinite;}.vague.v1{animation-duration:30s;animation-direction:reverse;}.vague.v2{animation-duration:40s;}@keyframes houle{to{transform:translateX(-240px);}}.annot path{fill:none;stroke:var(--tancl);stroke-width:1.4;stroke-linecap:round;}.annot text{fill:var(--tancl);font-family:var(--texte);font-size:11px;font-style:italic;}.insta{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}.insta .vign{width:auto;aspect-ratio:1;display:flex;flex-direction:column;justify-content:flex-end;gap:6px;padding:22px;border-radius:var(--r);text-decoration:none;overflow:hidden;transition:transform .25s ease;}.insta .vign:hover{transform:translateY(-3px);}.vign.sombre{background:var(--slate);color:var(--parch);}.vign.claire{background:var(--menthe);color:var(--slate);}.vign .h{font-family:var(--titre);font-size:20px;line-height:1.2;}.vign .b{font-size:11.5px;opacity:.72;line-height:1.5;}@media (max-width:720px){.insta{grid-template-columns:1fr 1fr;}}.vitre.detoure{background:none;border:none;aspect-ratio:auto;overflow:visible;}.vitre.detoure img{width:100%;height:auto;object-fit:contain;filter:drop-shadow(0 22px 44px rgba(0,0,0,.28));}.portrait:has(.detoure) .cadre-or{inset:26px -18px 8px 26px;}.vitre img{width:100%;height:100%;object-fit:cover;display:block;}.ill-cadre img{width:100%;height:auto;display:block;}.doc-lourd{display:flex;align-items:center;gap:14px;padding:16px 18px;border:1px solid var(--fil);border-radius:var(--r);background:var(--parch);text-decoration:none;color:inherit;transition:border-color .25s ease,transform .25s ease;}.doc-lourd:hover{border-color:var(--teal);transform:translateY(-2px);}.doc-lourd .n{flex:none;width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:var(--menthe);color:var(--teal);font-size:15px;}.doc-lourd b{display:block;font-size:14px;}.doc-lourd span{font-size:12px;color:var(--mut);}.replay .t{display:flex;flex-direction:column;flex:1;}.replay .t b{font-size:14px;}.replay .t span{font-size:11.5px;color:rgba(249,246,240,.6);}.replay .lecture{flex:none;width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:var(--eau);}.f-slate .replay{border-color:var(--filc);}.filet-haut{border-top:1px solid var(--fil);}.f-creme + .f-creme,.sec + .sec.filet-haut{border-top-color:var(--fil);}.f-slate .ill-cadre,.f-pin .ill-cadre{border-color:var(--filc);}.f-slate .ill-legende,.f-pin .ill-legende{color:rgba(249,246,240,.55);}.f-slate .cit,.f-pin .cit{background:rgba(249,246,240,.05);border-color:var(--filc);}.f-slate .cit q,.f-pin .cit q{color:var(--parch);}.f-slate .coche,.f-pin .coche{border-color:var(--filc);}.f-slate .faq,.f-pin .faq{border-color:var(--filc);}.f-slate .faq button,.f-pin .faq button{color:var(--parch);}.cit{background:#FFFFFF;}.f-creme .cit{background:var(--parch);}.sec.ap:not([class*="f-"]){background:var(--parch);}.rond{opacity:.16;filter:blur(90px);}.r-vert{width:260px;height:260px;top:-60px;left:4%;}.r-rose{width:220px;height:220px;bottom:-70px;right:6%;}.pied .pied .pied .filet-haut{position:relative;border-top:none;}.filet-haut::before{content:"";position:absolute;top:0;left:50%;width:72px;height:1px;transform:translateX(-50%);background:var(--filet-tan);}.f-pin + .f-slate,.f-slate + .f-pin{border-top:1px solid var(--filc);}.f-creme .carte,.f-sauge .carte,.f-lin .carte{background:#FFFFFF;}.f-creme .num-carte,.f-sauge .num-carte{background:#FFFFFF;}.num-carte{background:#FFFFFF;}.num-carte .n{background:var(--voile);color:var(--pin);}.cit,.f-creme .cit{background:#FFFFFF;}.cit .guill{color:var(--tan);opacity:1;}.apercu{background:var(--voile);color:var(--slate);}.dl{color:var(--pin);}.dl span{background:var(--voile);color:var(--pin);}.dl:hover span{background:var(--eau);color:var(--profond);}.aurore .a1{background:var(--pin);}.aurore .a2{background:var(--eau);}.aurore .a3{background:var(--tan);opacity:.18;}.ill .sujet{stroke:var(--pin);}.ill .eau{stroke:var(--eau);}.ill .accent{stroke:var(--tan);}.ill .plein{fill:var(--tan);}.ill .plein-eau{fill:var(--eau);}.f-slate .ill .sujet,.f-pin .ill .sujet,.heros .ill .sujet{stroke:var(--eau);}.f-slate .ill .accent,.f-pin .ill .accent,.heros .ill .accent{stroke:var(--tan);}.bandeau-preuve{background:var(--profond);}.bandeau-preuve b{color:var(--tan);}.module.phare{background:var(--voile);border-color:var(--eau);}.sec.ap{background:var(--parch);}.r-vert{background:var(--eau);}.suite a:hover{background:var(--voile);}.suite .k{color:var(--pin);}.suite .fl{color:var(--eau);}.jauge{background:linear-gradient(90deg,var(--pin),var(--tan));}.burger{display:none;}@media (max-width:860px){.menu-js .entete{position:sticky;height:var(--entete);padding-block:0;}.menu-js .entete .wrap{flex-direction:row;align-items:center;gap:12px;}.menu-js .burger{display:flex;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;padding:0;background:none;border:none;cursor:pointer;}.menu-js .burger span{display:block;width:22px;height:1.5px;background:var(--slate);border-radius:2px;transition:transform .28s ease,opacity .2s ease;}.menu-ouvert .burger span:nth-child(1){transform:translateY(6.5px) rotate(45deg);}.menu-ouvert .burger span:nth-child(2){opacity:0;}.menu-ouvert .burger span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg);}.menu-js .nav{position:fixed;inset:var(--entete) 0 auto 0;flex-direction:column;align-items:stretch;gap:0;padding:8px 22px 26px;background:var(--parch);border-bottom:1px solid var(--fil);box-shadow:0 18px 40px rgba(18,49,46,.12);transform:translateY(-12px);opacity:0;visibility:hidden;transition:opacity .24s ease,transform .24s ease,visibility .24s;}.menu-ouvert .nav{opacity:1;visibility:visible;transform:none;}.menu-js .nav a{padding:15px 0;font-size:16px;border-bottom:1px solid var(--fil);}.menu-js .nav a:not(.btn)::after{display:none;}.menu-js .nav a.btn{margin-top:18px;text-align:center;border-bottom:none;padding:14px 20px;}}@media (max-width:720px){.menu-js .entete{position:sticky;top:0;height:var(--entete);padding-block:0;}.menu-js .entete .wrap{flex-direction:row;align-items:center;}.sousnav{top:var(--entete);}}.pied-titre{font-size:10.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--tan);margin-bottom:14px;}@media (pointer:coarse){.nav a,.sousnav a,.lien,.dl{min-height:44px;display:inline-flex;align-items:center;}.faq button{min-height:52px;}}@media print{.entete,.sousnav,.jauge,.rappel,.suite,.evitement,.burger{display:none;}.f-slate,.f-pin,.pied{background:#fff !important;color:#000 !important;}.f-slate *,.f-pin *,.pied *{color:#000 !important;}.aurore,.grain,.halo,.raccord{display:none;}a[href^="http"]::after{content:" (" attr(href) ")";font-size:10px;}}.g2 .module{min-height:100%;}.module .sous-titre{font-size:12.5px;line-height:1.5;color:var(--tan);margin:-4px 0 12px;}.module .duree{display:flex;align-items:center;flex-wrap:wrap;gap:6px;}.module .duree .tag{padding:3px 10px;font-size:9px;}.module .duo-btn{margin-top:auto;padding-top:4px;}.module .duo-btn .btn{flex:none;}@media (max-width:980px){.g2{grid-template-columns:1fr !important;}}.module .theme{font-size:10px;font-weight:700;letter-spacing:.17em;text-transform:uppercase;color:var(--eau);margin:14px 0 6px;}.module h3{margin:0 0 6px;}.module .sous-titre{color:var(--tan);font-style:italic;}.video{position:relative;width:100%;aspect-ratio:16 / 9;border-radius:var(--r);overflow:hidden;border:1px solid var(--filc);background:rgba(249,246,240,.05);}.video iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}

/* Un SVG est un élément en ligne : il réserve sous lui la place des jambages,
   soit 8 px de vide dans les pastilles d icône. Le mode quirks masquait ce
   comportement ; en mode standard (le bon), il faut le neutraliser. */
.ic > svg{display:block}

/* ─── Détourage des décors ──────────────────────────────────────
   Les halos et auréoles sont des cercles absolus de 460 à 640 px de large.
   Les sections héros les détouraient déjà ; les sections ordinaires qui en
   portent un, non — d où un débordement latéral de 133 px sur mobile.
   « clip » plutôt que « hidden » : cela ne crée pas de conteneur de
   défilement et ne casse donc pas les éléments collants. */
.sec:has(> .halo),
.sec:has(> .aurore){overflow:clip}

/* ─── Grilles : autoriser les colonnes à rétrécir ────────────────
   Un élément de grille a min-width:auto par défaut : il refuse de devenir
   plus étroit que son contenu, et la grille déborde de son conteneur.
   min-width:0 lève cette contrainte sans rien changer au rendu large. */
.deux > *, .g2 > *, .g3 > *, .articles > *, .suite > *{min-width:0}

/* ─── Menu mobile : figer le fond ────────────────────────────────
   Sans cela, la page continue de défiler derrière le menu ouvert :
   on referme le menu et on a perdu sa place dans la lecture. */
body.menu-ouvert{overflow:hidden}

/* ═══════════════════════════════════════════════════════════════════
   CORRECTIFS DEMANDÉS
   ═══════════════════════════════════════════════════════════════════ */

/* ── Un vrai second ton clair ─────────────────────────────────────
   Le système n'avait plus qu'un beige : --creme et --lin étaient des
   alias de --parch. Trois sections claires se suivaient sans qu'on
   voie la frontière. On rétablit le crème de la charte d'origine
   (Tan à 22 % sur Parchemin) et on alterne d'une section à l'autre. */
:root{--creme:#F1E7D8}
.f-creme{background:var(--creme)}
/* la carte doit rester lisible sur le crème : blanc pur plutôt que parchemin */
.f-creme .carte,.f-creme .num-carte{background:#FFFDF9}
/* entre deux tons clairs, le filet devient inutile : la valeur suffit */
.f-creme.filet-haut::before,.f-creme+.filet-haut::before{display:none}

/* ── Angles ───────────────────────────────────────────────────────
   4 px sur une carte de 380 px de large, c'est un angle vif qui
   durcit le bloc. 18 px sur les cartes, 4 px conservés sur les
   petits objets : le rayon suit la taille de l'objet. */
.carte,.num-carte,.module,.art,.fiche{border-radius:18px}
.vitre,.ill-cadre{border-radius:14px}

/* ── Légende incrustée dans l'image ───────────────────────────────
   Elle flottait sous le cadre, détachée. Posée dans l'image sur un
   voile dégradé, elle appartient enfin à la photo. */
.legende-incrustee{
  position:absolute;left:0;right:0;bottom:0;
  padding:34px 20px 16px;
  font-size:12.5px;line-height:1.5;color:rgba(249,246,240,.78);
  background:linear-gradient(transparent,rgba(18,49,46,.82) 55%);
}
.legende-incrustee b{display:block;color:#F9F6F0;font-size:14.5px;margin-bottom:2px}

/* ── Contraste des cartes sur fond vert ───────────────────────────
   Les modules étaient à 5 % de blanc sur le slate : du vert sur du
   vert. À 10 %, avec un liseré à 22 %, le bloc se détache enfin. */
.f-slate .carte,.f-slate .module,.f-slate .num-carte,
.f-pin .carte,.f-pin .module,.f-pin .num-carte{
  background:rgba(249,246,240,.10);
  border:1px solid rgba(249,246,240,.22);
  box-shadow:inset 0 1px 0 rgba(249,246,240,.10);
}
.f-slate .module:hover,.f-pin .module:hover,
.f-slate .carte:hover,.f-pin .carte:hover{
  background:rgba(249,246,240,.14);
  border-color:rgba(218,177,133,.45);
}

/* ── La bande de fin de page ──────────────────────────────────────
   Trois colonnes collées bord à bord, séparées par un trait : ça
   ressemblait à un pied de page d'annuaire. Trois cartes posées,
   avec de l'air autour, se lisent comme une invitation. */
.suite{
  display:grid;grid-template-columns:repeat(3,1fr);gap:18px;
  max-width:var(--large);margin-inline:auto;
  padding:clamp(40px,5vw,72px) 22px clamp(56px,6vw,88px);
  border-top:none;background:none;
}
.suite a{
  display:flex;flex-direction:column;gap:6px;
  padding:26px 24px 22px;border:1px solid var(--fil);border-radius:18px;
  background:#FFFDF9;text-decoration:none;
  transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease;
}
.suite a:hover{transform:translateY(-3px);border-color:var(--eau);
  box-shadow:0 14px 30px -14px rgba(21,43,41,.22)}
.suite a::after{display:none}
@media (max-width:860px){.suite{grid-template-columns:1fr;gap:14px}}

/* ── Le visuel des trois temps ────────────────────────────────────
   Un dessin par carte : deux présences qui se rejoignent, un rythme
   régulier, puis l'espacement vers l'horizon. Il dit le mouvement
   du suivi avant que le texte ne l'explique. */
.visuel-temps{margin:-4px 0 18px;max-width:190px}
.visuel-temps .ill{color:var(--encre)}

/* ── Bandeau illustré des modules ─────────────────────────────────
   Un dessin en tête de chaque module : il donne une prise visuelle
   avant la lecture, et distingue les quatre au premier coup d'œil. */
.bandeau-module{
  margin:-6px -6px 20px;padding:18px 20px 14px;
  border-radius:13px;
  background:rgba(249,246,240,.06);
  border:1px solid rgba(249,246,240,.14);
}
.bandeau-module .ill{color:rgba(249,246,240,.55);max-width:230px;margin-inline:auto}
/* sur fond clair, le bandeau s'inverse */
.f-creme .bandeau-module,body:not(.p-form) .bandeau-module{
  background:rgba(24,58,55,.04);border-color:var(--fil);
}
.f-creme .bandeau-module .ill,body:not(.p-form) .bandeau-module .ill{color:var(--mut)}
@media (max-width:720px){.bandeau-module{margin:-4px -4px 16px;padding:14px 14px 10px}}

/* ── Le module phare se distingue par le liseré, pas par le fond ──
   Il portait un lavis de vert d'eau sur le slate : vert sur vert,
   illisible. C'est le cadre doré qui le signale désormais. */
.f-slate .module.phare,.f-pin .module.phare{
  background:rgba(249,246,240,.13);
  border:1px solid rgba(218,177,133,.55);
  box-shadow:inset 0 1px 0 rgba(249,246,240,.14),0 0 0 1px rgba(218,177,133,.14);
}

/* ── Bloc tarifaire des pages de programme ────────────────────────
   Trois lignes sobres avant le bouton : le prix, le format, la taille
   du groupe. Ce qu'on veut savoir avant de cliquer. */
.tarif-bloc{max-width:420px;margin:26px auto 30px;text-align:left}
.tarif-ligne{display:flex;justify-content:space-between;gap:20px;
  padding:13px 0;border-top:1px solid var(--filc);font-size:14px}
.tarif-ligne:last-child{border-bottom:1px solid var(--filc)}
.tarif-ligne b{font-weight:600;color:rgba(249,246,240,.72);font-size:12.5px;
  letter-spacing:.06em;text-transform:uppercase}
.tarif-ligne span{color:#F9F6F0;font-weight:600}

/* ── Lignes d'information : libellé souple ────────────────────────
   La colonne du libellé était figée à 130 px. Dans une colonne
   étroite il ne restait que 60 px pour la valeur, qui débordait.
   Le libellé prend maintenant ce qu'il lui faut, sans plus. */
.ligne{grid-template-columns:minmax(90px,max-content) 1fr}
@media (max-width:980px){.ligne{grid-template-columns:1fr;gap:2px}
  .ligne b{margin-bottom:2px}}

/* Vagues de raccord entre deux sections de couleurs differentes.
   La vague est peinte de la couleur de la section du dessus : elle
   deborde donc sur celle du dessous, qui lui reserve la place. */
.vg{position:absolute;top:-1px;left:0;width:100%;height:clamp(30px,4vw,58px);display:block;pointer-events:none;z-index:1}
.a-vague{padding-top:calc(clamp(30px,4vw,58px) + 34px) !important}
.a-vague > .wrap,.a-vague > .in{position:relative;z-index:2}
@media print{.vg{display:none}}

.pied > .vg path{fill:var(--fond-bas,#F9F6F0)}
body.p-programme{--fond-bas:#183A37}

/* ── Le trait sous le titre : il doit se dessiner, pas apparaître ── */
.flourish.trace path{stroke-dasharray:400;stroke-dashoffset:400;animation:tracer 1.6s cubic-bezier(.62,0,.34,1) .4s forwards}
@keyframes tracer{to{stroke-dashoffset:0}}
@media(prefers-reduced-motion:reduce){.flourish.trace path{animation:none;stroke-dashoffset:0}}

/* ── Bouton ocre : deuxième appel à l'action, aussi présent que le vert ── */
.btn.ocre{background:var(--tan);color:var(--profond);border:1px solid var(--tan);font-weight:700}
.btn.ocre:hover{background:#E4C39D;border-color:#E4C39D}

/* ── Les trois portes : icône centrée dans un disque, pas de numéro ── */
.carte.porte{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;
  padding:38px 28px 32px;background:#FFFDF9;border:1px solid var(--fil);border-radius:18px;
  color:inherit;text-decoration:none;transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease}
.carte.porte:hover{transform:translateY(-3px);border-color:var(--tan);box-shadow:0 16px 34px -16px rgba(21,43,41,.24)}
.carte.porte .ic-rond{display:grid;place-items:center;width:96px;height:96px;margin-bottom:22px;
  border-radius:50%;background:rgba(218,177,133,.16);border:1px solid rgba(218,177,133,.5)}
.carte.porte .ic-rond svg{width:54px;height:54px;display:block}
.carte.porte h3{font-size:23px;font-family:var(--titre);font-weight:400;margin-bottom:10px}
.carte.porte p{font-size:14px;color:var(--mut);margin-bottom:14px}
.carte.porte .meta{margin-top:auto;padding-top:6px;font-size:10.5px;font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;color:var(--tan)}
.carte.porte .lien{margin-top:14px}
.carte.porte .fantome{display:none}
@media(max-width:720px){.carte.porte .ic-rond{width:80px;height:80px}.carte.porte .ic-rond svg{width:44px;height:44px}}

/* ── Repères : les travaux et les postes, listés sobrement dans une carte ── */
.repere{margin-top:20px;padding-top:16px;border-top:1px solid var(--fil)}
.repere .k{font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--tan);margin-bottom:8px}
.repere p{font-size:13px;line-height:1.7;color:var(--mut);margin:0}
.repere ul{margin:0;padding-left:16px;list-style:none}
.repere li{position:relative;font-size:13px;line-height:1.65;color:var(--mut);margin-bottom:9px}
.repere li:last-child{margin-bottom:0}
.repere li::before{content:"";position:absolute;left:-16px;top:8px;width:5px;height:5px;border-radius:50%;background:var(--eau)}
.repere li b{color:var(--encre);font-weight:600}
.repere li i{font-style:italic}
.f-slate .repere,.f-pin .repere{border-top-color:var(--filc)}
.f-slate .repere p,.f-slate .repere li,.f-pin .repere p,.f-pin .repere li{color:rgba(249,246,240,.72)}
.f-slate .repere li b,.f-pin .repere li b{color:#F9F6F0}

/* ── Le trait droit derrière la vague ────────────────────────────────
   .filet-haut dessine une ligne en haut de section. Quand une vague
   passe par-dessus, on voit la ligne droite courir derrière la courbe :
   deux frontières pour un seul raccord. La vague suffit. */
.a-vague{border-top:none !important}

/* ── Le pliage des questions ─────────────────────────────────────────
   L'ancienne version animait grid-template-rows de 0fr à 1fr. Mais le
   paragraphe portait overflow:hidden, ce qui en faisait un conteneur de
   défilement : sa taille automatique valait zéro et la ligne 1fr ne
   mesurait plus que le padding. Les réponses s'ouvraient sur 22 px, une
   seule ligne. On anime maintenant max-height, dont la valeur est
   mesurée en JavaScript : plus rien à deviner. */
.corps-faq{display:block;overflow:hidden;max-height:0;transition:max-height .32s cubic-bezier(.4,0,.2,1)}
.corps-faq>p{overflow:visible;font-size:14px;color:var(--mut);margin:0;padding-bottom:22px}
.faq.ouvert .corps-faq>p{padding-bottom:22px}
@media(prefers-reduced-motion:reduce){.corps-faq{transition:none}}

/* ─── styles propres à certaines pages ─── */

/* vagues de la bande « conviction » — propres à cette page */
.vague{animation:onde 14s linear infinite}
.vague.v1{animation-duration:19s}.vague.v2{animation-duration:11s}
@keyframes onde{to{transform:translateX(120px)}}
@media(prefers-reduced-motion:reduce){.vague{animation:none!important}}


/* mise en page propre au document légal : une colonne lisible */
.doc{max-width:760px}
.doc h2{font-family:'DM Serif Display',serif;font-size:clamp(24px,3vw,32px);letter-spacing:-.02em;
 margin:56px 0 6px;padding-top:26px;border-top:1px solid var(--fil);scroll-margin-top:calc(var(--entete) + 20px)}
.doc h2:first-of-type{margin-top:36px}
.doc h3{font-family:'DM Sans',sans-serif;font-size:14px;font-weight:700;letter-spacing:.02em;margin:26px 0 6px}
.doc p,.doc li{font-size:14.5px;line-height:1.9;color:var(--mut)}
.doc p{margin-top:12px}
.doc ul{margin:12px 0 0 20px;display:flex;flex-direction:column;gap:8px}
.doc a{color:var(--pine);font-weight:600;border-bottom:1px solid var(--tan)}
.doc a:hover{color:var(--slate);border-color:var(--slate)}
.doc dl{margin-top:16px}
.doc dt{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--pine);font-weight:700;
 padding-top:16px;border-top:1px solid var(--fil)}
.doc dd{font-size:14.5px;line-height:1.8;color:var(--mut);padding:6px 0 10px}
.sommaire{position:sticky;top:calc(var(--entete) + 30px)}
.sommaire ul{list-style:none;display:flex;flex-direction:column;gap:11px;margin-top:16px}
.sommaire a{font-size:13px;color:var(--mut);border-left:2px solid var(--fil);padding-left:14px;
 display:block;transition:color .3s,border-color .3s}
.sommaire a:hover{color:var(--slate);border-color:var(--tan)}
@media (max-width:980px){.sommaire{position:static}}


/* ─── propre au thème ───────────────────────────────────────────
   Le contenu est enveloppé dans <main> pour donner une cible au lien
   « Aller au contenu ». Plusieurs sections utilisent background:inherit :
   sans cette ligne, elles hériteraient du <main> transparent au lieu du
   fond du <body>, et perdraient leur couleur. */
main#contenu{background:inherit}

.contenu-wp{font-size:15px;line-height:1.75;color:var(--encre)}
.contenu-wp h2,.contenu-wp h3{font-family:var(--titre);font-weight:400;margin:32px 0 12px}
.contenu-wp a{color:var(--pin);text-decoration:underline;text-underline-offset:3px}
.contenu-wp table{width:100%;border-collapse:collapse;margin:18px 0;font-size:14px}
.contenu-wp th,.contenu-wp td{padding:12px 10px;border-bottom:1px solid var(--fil);text-align:left}
.contenu-wp input:not([type=checkbox]):not([type=radio]),.contenu-wp select,.contenu-wp textarea{padding:12px 14px;border:1px solid rgba(24,58,55,.2);border-radius:var(--r);font-family:inherit;font-size:14.5px;background:var(--parch);max-width:100%}
.contenu-wp .button,.contenu-wp button[type=submit],.contenu-wp input[type=submit]{display:inline-block;padding:13px 24px;border:none;border-radius:var(--r);background:var(--eau);color:var(--profond);font-family:inherit;font-size:13.5px;font-weight:700;cursor:pointer}
.contenu-wp ul,.contenu-wp ol{margin:12px 0 12px 22px}
.contenu-wp li{margin-bottom:7px}
.contenu-wp img{max-width:100%;height:auto}
