/* Kairos · le site (kairos.kwitek.be). Même habit que l'appli : parchemin, encre, or, grenat. */
:root{
  --nuit:#121a3d; --bleu:#1b2654; --bleu2:#243166; --trait:#2d3a74;
  --creme:#f8f1e3; --carte:#fdf9f1; --ligne:#e6dcc8;
  --encre:#1c2450; --gris:#5f5f74; --doux:#cfd2e6;
  --or:#efc25a; --or2:#d9a334; --grenat:#8a2b22;
  --t-vert:#e1e9d3; --t-or:#f5e5bd; --t-rose:#f4dcd7; --t-bleu:#dce4f2;
  --f-titre:"Cormorant Garamond","EB Garamond",Georgia,serif;
  --f-texte:"EB Garamond",Georgia,"Times New Roman",serif;
  color-scheme:light;
}
@font-face{font-family:"Cormorant Garamond";src:url(/assets/fonts/cormorant.woff2) format("woff2");font-weight:300 700;font-display:swap}
@font-face{font-family:"Cormorant Garamond";src:url(/assets/fonts/cormorant-italic.woff2) format("woff2");font-style:italic;font-weight:300 700;font-display:swap}
@font-face{font-family:"EB Garamond";src:url(/assets/fonts/garamond.woff2) format("woff2");font-weight:400 800;font-display:swap}
@font-face{font-family:"EB Garamond";src:url(/assets/fonts/garamond-italic.woff2) format("woff2");font-style:italic;font-weight:400 800;font-display:swap}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
body{margin:0;background:var(--nuit);color:var(--creme);font-family:var(--f-texte);font-size:1.125rem;line-height:1.6;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto}
a{color:inherit}
h1,h2,h3,h4{font-family:var(--f-titre);font-weight:600;line-height:1.12;text-wrap:pretty;margin:0}
p{margin:0;text-wrap:pretty}
.wrap{max-width:1160px;margin:0 auto;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}
.etroit{max-width:760px}
.sur{font-family:var(--f-titre);font-weight:600;font-size:.8rem;letter-spacing:.22em;text-transform:uppercase}
.or{color:var(--or)} .gr{color:var(--grenat)}
:focus-visible{outline:2px solid var(--or);outline-offset:3px;border-radius:6px}
.saut{position:absolute;left:-999px;top:8px;z-index:50;background:var(--creme);color:var(--encre);padding:8px 14px;border-radius:8px}
.saut:focus{left:12px}

/* ---- En-tête ---- */
.tete{position:absolute;inset:0 0 auto;z-index:5}
.tete .wrap{display:flex;align-items:center;gap:26px;padding-block:18px}
.marque{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--encre)}
.marque img{width:42px;height:42px;border-radius:11px;box-shadow:0 2px 8px rgba(28,36,80,.25)}
.marque b{font-family:var(--f-titre);font-size:1.7rem;font-weight:700}
.menu{display:flex;gap:20px;margin-left:auto}
.menu a{text-decoration:none;color:var(--encre);font-size:1rem;font-weight:500;opacity:.85;white-space:nowrap}
.menu a:hover,.menu a[aria-current]{opacity:1;text-decoration:underline;text-decoration-color:var(--or2);text-underline-offset:6px;text-decoration-thickness:2px}
.btn{display:inline-flex;align-items:center;gap:10px;font-family:var(--f-titre);font-weight:700;font-size:1.15rem;text-decoration:none;border-radius:14px;padding:12px 22px;transition:transform .15s ease}
.btn:hover{transform:translateY(-1px)}
.btn-or{background:linear-gradient(180deg,var(--or),var(--or2));color:var(--encre);box-shadow:0 6px 18px rgba(217,163,52,.35)}
.btn-bleu{background:var(--bleu);color:var(--creme)}
.btn-ligne{border:1.5px solid currentColor;color:var(--encre)}
.btn svg{width:20px;height:20px;flex:none}
.tete .btn{padding:9px 16px;font-size:1rem}

/* ---- Ouverture (accueil) et bandeau (autres pages) : le paysage de Kairos ---- */
.ouv,.bande{position:relative;overflow:hidden;color:var(--encre);background:linear-gradient(100deg,rgba(250,243,232,.9) 0,rgba(250,243,232,.74) 40%,rgba(250,243,232,0) 66%),url(/assets/img/collines.webp) center 70%/cover no-repeat,#d9cfd8}
.ouv::after,.bande::after{content:"";position:absolute;inset:auto 0 0;height:90px;background:linear-gradient(transparent,var(--nuit))}
.ouv .wrap{position:relative;z-index:1;display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:end;padding-block:130px 0}
.ouv-texte{display:grid;gap:22px;padding-bottom:150px;max-width:600px}
.ouv h1{font-size:clamp(2.6rem,5.6vw,4.5rem);letter-spacing:-.01em}
.ouv h1 em,.bande h1 em{font-style:italic;font-weight:500;white-space:nowrap}
.lead{font-size:1.28rem;max-width:34em}
.actions{display:flex;flex-wrap:wrap;gap:12px}
.assure{font-size:1rem;opacity:.85}
.tel{justify-self:center;width:min(300px,78vw);aspect-ratio:9/18.6;border-radius:42px;background:#0b0f22;padding:10px;box-shadow:0 30px 60px rgba(10,14,40,.45),inset 0 0 0 2px #2b3156;transform:translateY(40px)}
.tel img{width:100%;height:100%;object-fit:cover;object-position:top;border-radius:33px;display:block}
.bande .wrap{position:relative;z-index:1;display:grid;gap:18px;padding-block:130px 120px;max-width:1160px}
.bande .wrap>*{max-width:680px}
.bande h1{font-size:clamp(2.4rem,5vw,4rem)}
.fil{font-size:.95rem;opacity:.8;display:flex;flex-wrap:wrap;gap:6px}
.fil a{text-underline-offset:3px}

/* ---- Sections ---- */
.sec{padding-block:80px}
.sec.serre{padding-top:20px}
.sec h2{font-size:clamp(2rem,3.6vw,2.9rem)}
.intro{display:grid;gap:12px;max-width:660px;margin-bottom:38px}
.intro p{color:var(--doux);font-size:1.2rem}
.clair{background:var(--creme);color:var(--encre)}
.clair .intro p{color:#4a4e72}
.moments{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.moment{border-radius:22px;padding:26px 24px 28px;display:grid;gap:10px;align-content:start;min-height:220px;position:relative;overflow:hidden}
.moment .h{font-family:var(--f-titre);font-weight:600;font-size:1rem;letter-spacing:.18em;text-transform:uppercase;opacity:.8}
.moment h3{font-size:1.75rem}
.m-matin{background:linear-gradient(160deg,#f6d9a8,#f1b97a);color:var(--encre)}
.m-midi{background:linear-gradient(160deg,#cfe0f2,#9fbde0);color:var(--encre)}
.m-soir{background:linear-gradient(160deg,#2a3672,#141c45);color:var(--creme);box-shadow:inset 0 0 0 1px #34407c}
.moment svg{position:absolute;right:18px;top:18px;width:46px;height:46px;opacity:.9}

/* ---- La tablette ---- */
.tablette{background:#0a0e22;border-radius:38px;padding:16px;box-shadow:0 40px 80px rgba(0,0,0,.45),inset 0 0 0 2px #262c52}
.ecran{background:var(--creme);color:var(--encre);border-radius:26px;overflow:hidden;display:grid;grid-template-rows:1fr auto}
.vue{display:grid;grid-template-columns:300px 1fr;gap:48px;align-items:center;padding:40px 48px;min-height:520px}
.vue img{width:100%;border-radius:22px;box-shadow:0 14px 34px rgba(28,36,80,.25);aspect-ratio:1134/2287;object-fit:cover;object-position:top}
.vue-texte{display:grid;gap:16px;max-width:30em;min-width:0}
.vue-texte .sur{color:var(--grenat)}
.vue-texte h3{font-size:clamp(2rem,3.4vw,2.8rem)}
.vue-texte p{font-size:1.25rem;color:#3d4166}
.vue-texte a{color:var(--grenat);font-weight:600;text-underline-offset:4px}
.onglets{display:grid;grid-template-columns:repeat(5,1fr);background:var(--carte);border-top:1px solid var(--ligne)}
.onglets button{appearance:none;border:0;background:none;font:inherit;color:var(--gris);display:grid;justify-items:center;gap:4px;padding:12px 4px 14px;cursor:pointer;font-size:.98rem;position:relative}
.onglets button svg{width:26px;height:26px}
.onglets button[aria-selected="true"]{color:var(--grenat)}
.onglets button[aria-selected="true"]::before{content:"";position:absolute;top:0;left:30%;right:30%;height:3px;border-radius:0 0 3px 3px;background:var(--grenat)}

/* ---- Promesse ---- */
.promesse{background:var(--bleu);border-block:1px solid var(--trait)}
.promesse .wrap{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;padding-block:44px}
.promesse h3{font-size:1.5rem;color:var(--or);margin-bottom:6px}
.promesse p{color:#d6d9ec}

/* ---- Tuiles (comme l'onglet Moi) ---- */
.tuiles{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.tuiles.t3{grid-template-columns:repeat(3,1fr)}
.tuile{border-radius:22px;padding:22px 20px 24px;color:var(--encre);display:grid;gap:8px;align-content:start;text-decoration:none;transition:transform .15s ease}
a.tuile:hover{transform:translateY(-3px)}
.tuile svg{width:40px;height:40px;color:var(--grenat);margin-bottom:6px}
.tuile h3{font-size:1.5rem}
.tuile p{font-size:1.05rem;color:#44486a}
.tv{background:var(--t-vert)} .to{background:var(--t-or)} .tr{background:var(--t-rose)} .tb{background:var(--t-bleu)}

/* ---- Écran + texte, côte à côte ---- */
.duo{display:grid;grid-template-columns:280px 1fr;gap:56px;align-items:center}
.duo.inv{grid-template-columns:1fr 280px}
.duo.inv .cadre{order:2}
.cadre{border-radius:34px;background:#0b0f22;padding:8px;box-shadow:0 24px 50px rgba(0,0,0,.4),inset 0 0 0 2px #2b3156}
.cadre img{display:block;border-radius:27px;width:100%}
.duo-texte{display:grid;gap:16px;min-width:0}
.duo-texte h2{font-size:clamp(1.9rem,3.2vw,2.6rem)}
.duo-texte p{color:var(--doux);font-size:1.15rem}
.liste{list-style:none;margin:0;padding:0;display:grid;gap:0}
.liste li{padding:14px 0;border-top:1px solid var(--trait);display:grid;gap:2px}
.liste li:last-child{border-bottom:1px solid var(--trait)}
.liste b{font-family:var(--f-titre);font-size:1.35rem;font-weight:600;color:var(--creme)}
.liste span{color:var(--doux)}
.clair .liste li{border-color:var(--ligne)} .clair .liste b{color:var(--encre)} .clair .liste span{color:#55597a}

/* ---- Tableau des Évangiles ---- */
.evangiles{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.ev{border-radius:20px;padding:20px;background:var(--carte);color:var(--encre);display:grid;gap:6px}
.ev .num{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--grenat);color:var(--creme);font-family:var(--f-titre);font-weight:700;font-size:1.1rem}
.ev h3{font-size:1.7rem}
.ev p{color:#55597a;font-variant-numeric:tabular-nums}
.ev.bientot{background:transparent;border:1.5px dashed #4a5590;color:var(--creme)}
.ev.bientot .num{background:#2a3570}
.ev.bientot p{color:var(--doux)}

/* ---- Étapes (Ma maison) ---- */
.etapes{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:16px;counter-reset:e}
.etapes li{counter-increment:e;background:var(--carte);color:var(--encre);border-radius:22px;padding:24px 22px;display:grid;gap:8px;align-content:start}
.etapes li::before{content:counter(e);width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--bleu);color:var(--or);font-family:var(--f-titre);font-weight:700;font-size:1.2rem}
.etapes h3{font-size:1.45rem}
.etapes p{color:#55597a}
.code{font-family:var(--f-titre);font-weight:700;letter-spacing:.12em;color:var(--grenat)}

/* ---- Les Semeurs ---- */
.colonnes{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}
.offres{display:grid;grid-template-columns:1fr 1fr;gap:18px;max-width:820px}
.offre{border-radius:24px;padding:28px 26px;display:grid;gap:8px;background:var(--carte);color:var(--encre)}
.offre.mise{background:linear-gradient(160deg,#f6d9a8,#efc25a);box-shadow:0 18px 40px rgba(217,163,52,.25)}
.offre .prix{font-family:var(--f-titre);font-weight:700;font-size:2.6rem;line-height:1;font-variant-numeric:tabular-nums}
.offre .prix small{font-size:1.1rem;font-weight:600}
.offre p{color:#44486a}
.offre .plus{font-weight:600;color:var(--grenat)}
.note{color:var(--doux);font-size:1rem;margin-top:18px;max-width:46em}

/* ---- Verset ---- */
.verset{padding-block:40px 90px;text-align:center}
.verset blockquote{margin:0 auto;max-width:780px;font-family:var(--f-titre);font-style:italic;font-weight:500;font-size:clamp(1.7rem,3.2vw,2.5rem);line-height:1.25;text-wrap:balance}
.verset cite,.v cite{display:block;margin-top:14px;font-style:normal;color:var(--or);letter-spacing:.18em;text-transform:uppercase;font-family:var(--f-titre);font-weight:600;font-size:.9rem}

/* ---- Guides : liste ---- */
.liste-guides{display:grid;grid-template-columns:repeat(3,1fr);gap:0 36px}
.guide{display:grid;gap:6px;padding:22px 0;border-top:1px solid var(--ligne);text-decoration:none;align-content:start}
.guide .sur{color:var(--grenat);font-size:.72rem}
.guide h3{font-size:1.45rem}
.guide p{color:#55597a;font-size:1.02rem}
.guide:hover h3{text-decoration:underline;text-decoration-color:var(--or2);text-underline-offset:5px}

/* ---- Guides : l'article ---- */
.article{background:var(--creme);color:var(--encre)}
.prose{padding-block:64px 80px;display:grid;gap:20px;font-size:1.2rem;line-height:1.7}
.prose h2{font-size:clamp(1.8rem,3vw,2.3rem);margin-top:26px}
.prose h3{font-size:1.5rem;margin-top:8px}
.prose p,.prose li{color:#2c3158}
.prose ul,.prose ol{margin:0;padding-left:1.3em;display:grid;gap:8px}
.prose a{color:var(--grenat);text-underline-offset:3px}
.prose strong{color:var(--encre)}
.v{margin:6px 0;padding:22px 26px;border-radius:18px;background:var(--carte);border:1px solid var(--ligne);font-style:italic;font-size:1.25rem;line-height:1.5}
.v cite{color:var(--grenat);margin-top:10px;font-size:.8rem}
.priere{margin:6px 0;padding:24px 26px;border-radius:18px;background:var(--bleu);color:var(--creme);display:grid;gap:10px}
.priere h3{color:var(--or);font-size:1.35rem;margin:0}
.priere p{color:#e7e9f6;font-size:1.18rem;line-height:1.65}
.avec{margin-top:18px;padding:24px 26px;border-radius:20px;background:var(--t-or);display:grid;gap:10px}
.avec p{color:#3a3f66}
.avec .btn{justify-self:start}
.plan{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums;font-size:1.08rem}
.plan th,.plan td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--ligne);vertical-align:top}
.plan th{font-family:var(--f-titre);font-weight:700;font-size:1rem;letter-spacing:.06em;color:var(--grenat)}
.plan td:first-child{white-space:nowrap;color:var(--gris)}
.defile{overflow-x:auto}

/* ---- Questions ---- */
.faq .grille{display:grid;grid-template-columns:.8fr 1.2fr;gap:56px;align-items:start}
.faq details{border-top:1px solid var(--trait);padding:18px 0}
.faq details:last-child{border-bottom:1px solid var(--trait)}
.faq summary{cursor:pointer;font-family:var(--f-titre);font-weight:600;font-size:1.45rem;list-style:none;display:flex;justify-content:space-between;gap:16px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";color:var(--or);font-size:1.6rem;line-height:1}
.faq details[open] summary::after{content:"−"}
.faq details p{margin-top:10px;color:var(--doux);max-width:40em}

/* ---- Pages légales ---- */
.legal{padding-block:56px 80px;display:grid;gap:14px;font-size:1.12rem}
.legal h2{font-size:1.7rem;margin-top:22px}
.legal p,.legal li{color:#2c3158}
.legal ul{margin:0;padding-left:1.3em;display:grid;gap:6px}
.legal a{color:var(--grenat)}

/* ---- Appel final et pied ---- */
.appel{background:linear-gradient(180deg,var(--bleu2),var(--nuit));text-align:center}
.appel .wrap{display:grid;justify-items:center;gap:18px;padding-block:80px}
.appel img{width:96px;height:96px;border-radius:24px;box-shadow:0 12px 30px rgba(0,0,0,.4)}
.appel h2{font-size:clamp(1.8rem,4vw,3rem)}
.appel p{color:var(--doux)}
.pied{border-top:1px solid #26306a;color:#aeb3d2;font-size:1rem}
.pied .wrap{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:32px;padding-block:48px 120px}
.pied h4{font-size:1.1rem;color:var(--creme);margin:0 0 10px}
.pied ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.pied a{text-decoration:none}
.pied a:hover{color:var(--creme);text-decoration:underline}
.pied .k{display:flex;gap:10px;align-items:center;color:var(--creme);font-family:var(--f-titre);font-size:1.5rem;font-weight:700;margin-bottom:8px}
.pied .k img{width:36px;height:36px;border-radius:9px}
.pied .droits{grid-column:1/-1;border-top:1px solid #26306a;padding-top:18px;font-size:.92rem}

/* ---- Barre d'onglets du téléphone (comme dans l'appli) ---- */
.barre{display:none}

@media (max-width:1100px){.menu{gap:14px}.menu a{font-size:.95rem}}
@media (max-width:980px){
  .menu,.tete .btn{display:none}
  .ouv .wrap{grid-template-columns:1fr;padding-block:96px 0;gap:10px}
  .ouv,.bande{background:linear-gradient(180deg,rgba(250,243,232,.82) 0,rgba(250,243,232,.62) 55%,rgba(250,243,232,0) 80%),url(/assets/img/collines.webp) center 70%/cover no-repeat,#d9cfd8}
  .ouv-texte{padding-bottom:10px}
  .tel{width:min(250px,64vw);transform:translateY(30px)}
  .bande .wrap{padding-block:96px 90px}
  .moments,.promesse .wrap,.colonnes{grid-template-columns:1fr}
  .moment{min-height:0}
  .vue{grid-template-columns:1fr;padding:28px 22px;gap:24px;min-height:0;justify-items:center}
  .vue img{width:min(200px,56vw)}
  .vue-texte{text-align:center;justify-items:center}
  .tablette{padding:10px;border-radius:30px}
  .ecran{border-radius:22px}
  .onglets button{font-size:.82rem;padding:10px 2px 12px}
  .onglets button svg{width:22px;height:22px}
  .tuiles,.tuiles.t3,.evangiles,.etapes{grid-template-columns:repeat(2,1fr)}
  .duo,.duo.inv{grid-template-columns:1fr;gap:30px}
  .duo .cadre,.duo.inv .cadre{order:0;width:min(240px,64vw);justify-self:center}
  .liste-guides{grid-template-columns:1fr}
  .faq .grille{grid-template-columns:1fr;gap:20px}
  .pied .wrap{grid-template-columns:1fr 1fr}
  .pied .wrap>div:first-child{grid-column:1/-1}
  .barre{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;inset:auto 0 0;z-index:20;background:var(--carte);border-top:1px solid var(--ligne);padding:6px max(6px,env(safe-area-inset-right,0px)) calc(8px + env(safe-area-inset-bottom,0px)) max(6px,env(safe-area-inset-left,0px));box-shadow:0 -6px 20px rgba(0,0,0,.25)}
  .barre a{display:grid;justify-items:center;gap:2px;text-decoration:none;color:var(--gris);font-size:.78rem;padding-top:4px}
  .barre a svg{width:22px;height:22px}
  .barre a[aria-current]{color:var(--grenat)}
}
@media (max-width:560px){
  .tuiles,.tuiles.t3,.evangiles,.etapes,.offres{grid-template-columns:1fr}
  .ouv h1{font-size:2.5rem}
  .prose{font-size:1.12rem}
}
.prose a.btn{color:var(--creme);text-decoration:none}
@media (max-width:980px){
  .bande{background:linear-gradient(180deg,rgba(250,243,232,.92) 0,rgba(250,243,232,.86) 70%,rgba(250,243,232,.2) 100%),url(/assets/img/collines.webp) center 80%/cover no-repeat,#d9cfd8}
}
/* jamais un mot seul en bas d'un texte (en plus des espaces insécables posées à la construction) */
li,blockquote,summary,td,th,a,button,cite,figcaption{text-wrap:pretty}
.plan td:nth-child(-n+2),.plan th{white-space:nowrap}
.pied .wrap>div{min-width:0}

/* ---- 25.90 · la page Les Semeurs (la maquette validée), sur le parchemin ---- */
.sem .cmp{width:100%;border-collapse:separate;border-spacing:0;background:#fffdf7;border:1px solid var(--ligne);border-radius:20px;overflow:hidden;font-size:1.05rem}
.sem .cmp th,.sem .cmp td{padding:12px 14px;text-align:left;vertical-align:middle;border-top:1px solid var(--ligne)}
.sem .cmp thead th{background:var(--encre);color:#fff6e2;font-family:var(--f-titre);font-weight:700;letter-spacing:.04em;border-top:0}
.sem .cmp thead th:last-child{color:var(--or)}
.sem .cmp tbody th{font-weight:600;color:var(--encre)}
.sem .cmp td{color:#55597a}
.sem .cmp td:last-child{background:#fbf1d4;color:var(--encre);font-weight:600}
.sem .ok{color:#2f6b3f;font-weight:700}
.formules{display:grid;gap:12px;max-width:560px}
.formule{display:grid;grid-template-columns:1fr auto;column-gap:16px;row-gap:4px;align-items:start;background:#fffdf7;border:1.5px solid var(--ligne);border-radius:18px;padding:16px 18px;color:var(--encre)}
.formule h3{font-size:1.5rem}
.formule p{color:#55597a;font-size:1rem}
.formule .vert,.f-p .vert{color:#2f6b3f;font-weight:700}
.f-p{text-align:right;display:grid;gap:2px;flex:none}
.f-p b{font-family:var(--f-titre);font-size:1.6rem;line-height:1}
.f-p span{font-size:.9rem;color:#55597a}
.feat{background:var(--encre);border-radius:21px;padding:0 3px 3px;box-shadow:0 12px 26px rgba(27,43,82,.25)}
.feat-h{color:#fff6e2;text-align:center;font-size:.98rem;padding:9px 12px 8px}
.feat-h b{color:var(--or)}
.feat .formule{border:2.5px solid var(--encre);background:#fff}
.deroule{list-style:none;margin:0;padding:0;display:grid;gap:0;max-width:560px;counter-reset:d}
.deroule li{position:relative;padding:0 0 16px 36px;display:grid;gap:2px;color:var(--encre)}
.deroule li::before{content:"";position:absolute;left:0;top:3px;width:20px;height:20px;border-radius:50%;background:var(--encre)}
.deroule li:nth-child(2)::before{background:var(--or2)}
.deroule li:nth-child(3)::before{background:var(--grenat)}
.deroule li::after{content:"";position:absolute;left:9px;top:24px;bottom:0;width:2px;background:var(--ligne)}
.deroule li:last-child::after{display:none}
.deroule b{font-weight:600}
.deroule span{color:#55597a}
.note-c{color:#55597a;font-size:.95rem;max-width:46em;margin-top:6px}
@media (max-width:560px){.formule{padding:14px}.f-p b{font-size:1.4rem}.sem .cmp{font-size:.95rem}.sem .cmp th,.sem .cmp td{padding:10px}}

.formule .d{grid-column:1/-1;white-space:nowrap;color:#55597a;font-size:1rem}
/* 30 oct. : un titre reste sur une ligne tant qu'il y a la place à droite */
.bande .wrap>h1,.bande .wrap>h2,.intro>h2,.intro>h1,.ouv-texte>h1{max-width:none}
.bande .wrap>.lead{max-width:920px}

/* ---- 30 oct. · le parchemin de l'appli partout (demande de Ka) : le bleu nuit reste sur les boutons et le soir ---- */
:root{--fond:#f4ecdb;--texte2:#4a4e72;--texte3:#55597a}
body{background:var(--fond);color:var(--encre)}
.ouv::after,.bande::after{background:linear-gradient(transparent,var(--fond))}
.clair{background:#fbf6ea}
.intro p,.duo-texte p,.appel p,.note,.faq details p{color:var(--texte2)}
.liste li,.liste li:last-child,.faq details,.faq details:last-child{border-color:var(--ligne)}
.liste b{color:var(--encre)} .liste span{color:var(--texte3)}
.ev,.etapes li,.offre{border:1px solid var(--ligne)}
.ev.bientot{border:1.5px dashed #c9b88f;color:var(--encre)}
.ev.bientot .num{background:#b9a77c}
.ev.bientot p{color:var(--texte3)}
.etapes li::before{background:var(--grenat);color:#fff6e2}
.verset blockquote{color:var(--encre)}
.verset cite,.faq summary::after{color:var(--grenat)}
.promesse{background:#efe4cb;border-block:1px solid var(--ligne)}
.promesse h3{color:var(--grenat)} .promesse p{color:var(--texte2)}
.appel{background:linear-gradient(180deg,var(--fond),#efe4cb)}
.appel img{box-shadow:0 12px 30px rgba(28,36,80,.25)}
.pied{border-top:1px solid var(--ligne);color:var(--texte3);background:#efe4cb}
.pied h4,.pied .k,.pied a:hover{color:var(--encre)}
.pied .droits{border-top-color:var(--ligne)}
.priere{background:#fbf1d4;color:var(--encre);border:1px solid #ead9ad}
.priere h3{color:var(--grenat)} .priere p{color:#2c3158}
.barre{box-shadow:0 -6px 20px rgba(28,36,80,.12)}
.intro{max-width:none}.intro>p{max-width:660px}
.intro>p{max-width:920px}
@media (min-width:981px){.bande{background:linear-gradient(100deg,rgba(250,243,232,.93) 0,rgba(250,243,232,.84) 52%,rgba(250,243,232,.35) 78%,rgba(250,243,232,0) 92%),url(/assets/img/collines.webp) center 70%/cover no-repeat,#d9cfd8}}

/* 25.91 · l'invitation dans une maison */
.code-inv{text-align:center;display:grid;justify-items:center;gap:6px;background:#fffdf7;border:1px solid var(--ligne);border-radius:22px;padding:24px 18px}
.code-c{font-family:var(--f-titre);font-weight:700;font-size:clamp(2.4rem,9vw,3.4rem);color:var(--encre);letter-spacing:.06em;line-height:1.1;white-space:nowrap}
.code-n{color:var(--texte3);font-size:1rem}
.code-inv .btn{margin-top:8px;background:none;cursor:pointer;font:inherit;font-family:var(--f-titre);font-weight:700;font-size:1.1rem}
