/* The Essentials. — ambiance « Atelier » : bleu marine du logo, blanc cassé, bleu ciel, filets francs. */
/* Thèmes de couleur (choisis par le lecteur, mémorisés) + mode nuit automatique (réglage de l'appareil).
   --ink = texte/traits principaux · --band = grands bandeaux · --light/--band-text = textes clairs posés sur un bandeau */
:root{
  --bg:#FBF9F5; --ink:#03365C; --muted:#4A6781; --sky:#DCE8F2; --sky-2:#EAF1F7; --accent:#2F7BB8; --line:#03365C; --soft-line:#C9D6E2; --on-ink:#FBF9F5;
  --rule:#03365C; --band:#03365C; --light:#9CC4E4; --band-text:#DCE8F2; --field:#fff; --placeholder:#6F8599; --on-accent:#fff; --deep:#0a4a7a; --docbg:#e9eef3;
  --acc-text:#25689D; --sh:3 54 92; --acc-rgb:47 123 184; --band-rgb:3 54 92; --tint:#DCE8F2;
  color-scheme:light;
  --f-d:'Bricolage Grotesque','Helvetica Neue',Arial,sans-serif;
  --f-b:'Newsreader',Georgia,'Times New Roman',serif;
  --gutter:max(18px,env(safe-area-inset-left,0px));
}

html[data-theme="vert"]{--acc-text:#236B4B; --bg:#F8FAF5; --ink:#0F3D2E; --muted:#4A6B5B; --sky:#DDEBE2; --sky-2:#EAF3EE; --accent:#2A7A57; --line:#0F3D2E; --soft-line:#C5D8CB; --on-ink:#F8FAF5; --rule:#0F3D2E; --band:#0F3D2E; --light:#9ACFB3; --band-text:#DDEBE2; --placeholder:#6D8777; --deep:#14503A; --docbg:#e8efea; --sh:15 61 46; --acc-rgb:42 122 87; --band-rgb:15 61 46; --tint:#DDEBE2}
html[data-theme="violet"]{--acc-text:#6444AA; --bg:#FBF9FC; --ink:#3F2A6E; --muted:#6B5A8A; --sky:#EAE3F6; --sky-2:#F2EDFA; --accent:#7152B8; --line:#3F2A6E; --soft-line:#D8CEEA; --on-ink:#FBF9FC; --rule:#3F2A6E; --band:#3F2A6E; --light:#C9B8EC; --band-text:#EAE3F6; --placeholder:#8473A3; --deep:#4F3888; --docbg:#eeeaf5; --sh:63 42 110; --acc-rgb:113 82 184; --band-rgb:63 42 110; --tint:#EAE3F6}
html[data-theme="bordeaux"]{--acc-text:#8A2B3F; --bg:#FBF8F7; --ink:#5A1F2E; --muted:#7A4F5A; --sky:#F3E4E6; --sky-2:#F8EEEF; --accent:#9A3347; --line:#5A1F2E; --soft-line:#E3CDD1; --on-ink:#FBF8F7; --rule:#5A1F2E; --band:#5A1F2E; --light:#E8B4BF; --band-text:#F3E4E6; --placeholder:#8F6B75; --deep:#6E2A3B; --docbg:#f1e8e9; --sh:90 31 46; --acc-rgb:154 51 71; --band-rgb:90 31 46; --tint:#F3E4E6}
html[data-theme="graphite"]{--acc-text:#3F4756; --bg:#F8F8F7; --ink:#25272B; --muted:#5B6068; --sky:#E6E7E9; --sky-2:#EFEFF0; --accent:#4A5568; --line:#25272B; --soft-line:#D5D7DA; --on-ink:#F8F8F7; --rule:#25272B; --band:#25272B; --light:#C4C8CE; --band-text:#E6E7E9; --placeholder:#767B84; --deep:#3A3D43; --docbg:#ececed; --sh:37 39 43; --acc-rgb:74 85 104; --band-rgb:37 39 43; --tint:#E6E7E9}
@media (prefers-color-scheme:dark){
  html:not([data-admin]){color-scheme:dark;--acc-text:var(--accent);--bg:#0B1722; --ink:#E8EFF6; --muted:#A9BDCF; --sky:#12293B; --sky-2:#0F2231; --accent:#6FB1E6; --line:#5B7A96; --soft-line:#25405A; --on-ink:#0B1722; --rule:#4C6A85; --band:#0F3A5E; --light:#9CC4E4; --band-text:#DCE8F2; --field:#10202D; --placeholder:#7F96AA; --on-accent:#0B1722; --deep:#0F3A5E; --docbg:#12293B; --sh:0 0 0; --acc-rgb:111 177 230; --band-rgb:3 25 45; --tint:#12293B}
  html:not([data-admin])[data-theme="vert"]{--acc-text:var(--accent);--bg:#0A1712; --ink:#E6F1EA; --muted:#A6C0B1; --sky:#12281F; --sky-2:#0F211A; --accent:#6CC59B; --line:#5E8470; --soft-line:#24402F; --on-ink:#0A1712; --rule:#4A6F5B; --band:#14503A; --light:#9ACFB3; --band-text:#D8EEE1; --field:#0F2018; --placeholder:#7B9A89; --on-accent:#0A1712; --deep:#14503A; --docbg:#12281F; --acc-rgb:108 197 155; --band-rgb:5 30 21; --tint:#12281F}
  html:not([data-admin])[data-theme="violet"]{--acc-text:var(--accent);--bg:#130F1C; --ink:#EEE9F8; --muted:#BDB2D6; --sky:#221A33; --sky-2:#1B1529; --accent:#B7A0EC; --line:#8171AA; --soft-line:#3A2F55; --on-ink:#130F1C; --rule:#6B5C90; --band:#3F2A6E; --light:#C9B8EC; --band-text:#E7DFF6; --field:#1B1529; --placeholder:#9486B5; --on-accent:#130F1C; --deep:#3F2A6E; --docbg:#221A33; --acc-rgb:183 160 236; --band-rgb:25 15 48; --tint:#221A33}
  html:not([data-admin])[data-theme="bordeaux"]{--acc-text:var(--accent);--bg:#1A0F12; --ink:#F3E6E8; --muted:#C9A9B0; --sky:#2B181D; --sky-2:#231316; --accent:#E58CA0; --line:#8A5A66; --soft-line:#4A2A32; --on-ink:#1A0F12; --rule:#7A4A55; --band:#5A1F2E; --light:#E8B4BF; --band-text:#F3E4E8; --field:#231316; --placeholder:#A8858E; --on-accent:#1A0F12; --deep:#5A1F2E; --docbg:#2B181D; --acc-rgb:229 140 160; --band-rgb:50 15 24; --tint:#2B181D}
  html:not([data-admin])[data-theme="graphite"]{--acc-text:var(--accent);--bg:#121315; --ink:#ECEDEF; --muted:#A8ADB5; --sky:#1D1F22; --sky-2:#18191C; --accent:#9AA6B8; --line:#6A707A; --soft-line:#2D3035; --on-ink:#121315; --rule:#50555D; --band:#2E3137; --light:#B9C0CB; --band-text:#E2E4E7; --field:#18191C; --placeholder:#868C95; --on-accent:#121315; --deep:#2E3137; --docbg:#1D1F22; --acc-rgb:154 166 184; --band-rgb:10 11 12; --tint:#1D1F22}
  html:not([data-admin]) .card .ph img,html:not([data-admin]) .art-cover img,html:not([data-admin]) .prose img{filter:brightness(.92)}
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;overflow-x:clip}
body{margin:0;overflow-x:clip;background:var(--bg);color:var(--ink);font-family:var(--f-b);font-size:19px;line-height:1.65;
  padding-left:max(18px,env(safe-area-inset-left,0px));padding-right:max(18px,env(safe-area-inset-right,0px))}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
a:hover{color:var(--acc-text)}
button{font:inherit;color:inherit;cursor:pointer}
:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.wrap{max-width:1120px;margin:0 auto}
.skip{position:absolute;left:-999px;top:8px;background:var(--ink);color:var(--on-ink);padding:8px 14px;z-index:20}
.skip:focus{left:8px}
h1,h2,h3,h4{font-family:var(--f-d);line-height:1.08;letter-spacing:-.025em;text-wrap:balance;margin:0}
.eyebrow{font-family:var(--f-d);font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--acc-text)}

/* En-tête */
.top{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 0;border-bottom:3px solid var(--rule)}
.top .logo img{height:62px;width:auto}
.nav{display:flex;align-items:center;gap:22px;font-family:var(--f-d);font-size:15px;font-weight:600}
.nav a{text-decoration:none;white-space:nowrap}
.nav a:hover,.nav a[aria-current="page"]{color:var(--acc-text)}
.nav .yt{display:inline-flex;align-items:center;gap:6px}
.lang{display:inline-flex;border:2px solid var(--rule);border-radius:999px;padding:2px;font-family:var(--f-d);font-weight:700;font-size:13px;letter-spacing:.06em}
.lang a,.lang span{padding:4px 11px;border-radius:999px;text-decoration:none;color:inherit}
.lang span[aria-current="true"]{background:var(--ink);color:var(--on-ink)}
.menu-btn{display:none;background:none;border:2px solid var(--rule);border-radius:999px;padding:6px 14px;font-family:var(--f-d);font-weight:700;font-size:14px}

/* Accueil : bienvenue */
.hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);border-bottom:3px solid var(--rule)}
.hero .l{background:var(--band);color:#FBF9F5;padding:52px 36px 52px 0;position:relative}
.hero .l{box-shadow:-100vw 0 0 var(--band)}
.hero .l .eyebrow{color:var(--light)}
.hero h1{font-size:clamp(38px,5.8vw,76px);font-weight:800;margin:14px 0 18px}
.hero .lead{font-size:21px;max-width:44ch;margin:0 0 26px;color:var(--band-text)}
.hero .r{background:var(--sky);padding:44px 0 44px 36px;display:flex;flex-direction:column;justify-content:flex-end;gap:14px;position:relative}
.hero .r{box-shadow:100vw 0 0 var(--sky)}
.hero blockquote{margin:0;font-family:'Fraunces',Georgia,serif;font-style:italic;font-weight:500;font-size:clamp(21px,2.4vw,29px);line-height:1.28;font-variation-settings:'opsz' 144}
.hero cite{font-style:normal;font-family:var(--f-d);font-size:14px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--acc-text)}
.btn{display:inline-block;font-family:var(--f-d);font-weight:700;font-size:15px;letter-spacing:.04em;padding:13px 24px;border:2px solid var(--rule);background:var(--bg);color:var(--ink);text-decoration:none;border-radius:0}
.btn:hover{background:var(--acc-text);border-color:var(--acc-text);color:var(--on-accent)}
.btn.solid{background:var(--ink);color:var(--on-ink)}
.btn.solid:hover{background:var(--acc-text);border-color:var(--acc-text)}
.btn.light{background:var(--bg);color:var(--ink);border-color:var(--bg)}
.btn.light:hover{background:var(--sky);color:var(--ink)}

.welcome{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:48px;padding:56px 0;border-bottom:3px solid var(--rule)}
.welcome h2{font-size:clamp(26px,3.4vw,38px);font-weight:700;margin-bottom:18px}
.welcome p{margin:0 0 1.1em;max-width:62ch}
.welcome .note{font-size:16px;color:var(--muted);border-left:3px solid var(--accent);padding-left:14px}
.welcome .sign{font-family:var(--f-d);font-weight:700;font-size:22px;margin:22px 0 0}
.welcome figure{margin:0}
.welcome img{width:100%;border:3px solid var(--rule)}

.sec{padding:52px 0 8px}
.sec-h{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap;border-bottom:3px solid var(--rule);padding-bottom:10px;margin-bottom:28px}
.sec-h h2{font-size:clamp(26px,3.6vw,40px);font-weight:800;text-transform:uppercase;letter-spacing:-.01em}
.sec-h a{font-family:var(--f-d);font-weight:700;font-size:14px;letter-spacing:.08em;text-transform:uppercase}

/* Cartes d'articles */
.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:1px solid var(--rule)}
.card{display:flex;flex-direction:column;gap:10px;padding:24px 22px 28px 0;border-bottom:1px solid var(--rule);border-right:1px solid var(--rule);min-width:0;text-decoration:none;color:inherit}
.grid .card:nth-child(3n){border-right:0;padding-right:0}
.grid .card:not(:nth-child(3n+1)){padding-left:22px}
.card .ph{aspect-ratio:3/2;background:var(--sky);overflow:hidden;border:1px solid var(--rule)}
.card .ph img{width:100%;height:100%;object-fit:cover}
.card .meta{font-family:var(--f-d);font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--acc-text);display:flex;gap:10px;flex-wrap:wrap}
.card .meta span+span{color:var(--muted)}
.card h3{font-size:clamp(20px,2vw,25px);font-weight:700;letter-spacing:-.02em}
.card:hover h3{color:var(--acc-text)}
.card p{margin:0;font-size:16px;color:var(--muted)}
.feature{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:0;border-bottom:3px solid var(--rule)}
.feature .ph{aspect-ratio:16/10;border:0;border-right:3px solid var(--rule)}
.feature .card{padding:36px 0 36px 32px;border:0;justify-content:center}
.feature .card h3{font-size:clamp(28px,3.6vw,46px);font-weight:800}
.feature .card p{font-size:19px}

/* Bannière de prière */
.prayer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:center;background:var(--band);color:#fff;padding:38px 36px;margin:56px 0 0;text-decoration:none}
.prayer:hover{color:#fff}
.prayer h2{font-size:clamp(26px,3.4vw,40px);font-weight:800;margin:0 0 8px}
.prayer p{margin:0;color:var(--band-text);max-width:52ch}
.prayer small{display:block;margin-top:12px;font-style:italic;color:var(--light);font-size:15px}
.prayer .btn{white-space:nowrap}
.prayer-wrap{margin:44px 0}
.prayer-wrap .prayer{margin:0}

/* Podcast, contact, formulaires */
.podcast{display:block;background:var(--sky);padding:32px 36px;margin-top:0;border-top:3px solid var(--rule);border-bottom:3px solid var(--rule)}
.pod-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center}
.podcast h2{font-size:clamp(24px,3vw,34px);font-weight:800}
.pod-player{display:block;margin-top:26px;border-radius:12px;background:var(--bg)}
.podcast p{margin:6px 0 0;max-width:56ch}
.formbox{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:48px;padding:52px 0;border-bottom:3px solid var(--rule)}
.formbox .intro p{margin:0 0 1em;max-width:46ch}
.formbox h2{font-size:clamp(26px,3.4vw,38px);font-weight:800;text-transform:uppercase;margin-bottom:16px}
.form{display:grid;gap:14px}
.form label{display:block;font-family:var(--f-d);font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;margin-bottom:5px}
.form .req{color:var(--acc-text)}
input,textarea,select{font:inherit;font-size:17px;color:var(--ink);background:var(--field);border:2px solid var(--rule);border-radius:0;padding:12px 14px;width:100%;max-width:100%}
textarea{min-height:140px;resize:vertical}
input::placeholder,textarea::placeholder{color:var(--placeholder)}
.form .hp{position:absolute;left:-9999px;height:0;overflow:hidden}
.form .btn{justify-self:start;cursor:pointer}
.status{font-family:var(--f-d);font-weight:600;font-size:15px;min-height:1.4em;margin:0}
.status.ok{color:#14673B}.status.err{color:#A12A2A}

/* Archive */
.pagehead{padding:48px 0 30px;border-bottom:3px solid var(--rule)}
.pagehead h1{font-size:clamp(36px,6vw,72px);font-weight:800;margin-top:10px}
.pagehead p{margin:14px 0 0;max-width:56ch;color:var(--muted);font-size:20px}
.filters{display:flex;gap:10px;flex-wrap:wrap;align-items:center;padding:22px 0}
.filters input[type=search]{max-width:320px;padding:10px 14px}
.chip{font-family:var(--f-d);font-size:13px;font-weight:700;letter-spacing:.04em;border:2px solid var(--rule);background:var(--bg);padding:6px 14px;border-radius:999px}
.chip[aria-pressed="true"]{background:var(--ink);color:var(--on-ink)}
.empty{padding:40px 0;color:var(--muted)}

/* Article */
.art-head{padding:44px 0 26px;max-width:860px}
.art-head h1{font-size:clamp(34px,5.4vw,66px);font-weight:800;margin:14px 0 18px}
.art-meta{display:flex;gap:14px;flex-wrap:wrap;align-items:center;font-family:var(--f-d);font-size:14px;font-weight:600;color:var(--muted)}
.art-meta a.sw{border:2px solid var(--rule);padding:3px 12px;border-radius:999px;color:var(--ink);text-decoration:none;font-weight:700}
.art-meta a.sw:hover{background:var(--ink);color:var(--on-ink)}
.cats{display:flex;gap:8px;flex-wrap:wrap}
.cats a{font-family:var(--f-d);font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;color:var(--acc-text)}
.art-cover{border:3px solid var(--rule);margin:0 0 36px;aspect-ratio:16/9;overflow:hidden;background:var(--sky)}
.art-cover img{width:100%;height:100%;object-fit:cover}
.prose{max-width:700px;font-size:21px;line-height:1.7}
.prose>*{margin-top:0}
.prose p{margin:0 0 1.25em}
.prose h2,.prose h3,.prose h4{margin:1.7em 0 .6em;font-weight:700}
.prose h2{font-size:34px}.prose h3{font-size:28px}.prose h4{font-size:23px}
.prose a{color:var(--acc-text);text-underline-offset:3px}
.prose blockquote,.prose .wp-block-pullquote{margin:1.8em 0;padding:4px 0 4px 22px;border-left:5px solid var(--accent);font-family:var(--f-d);font-weight:600;font-size:24px;line-height:1.3;letter-spacing:-.015em}
.prose blockquote p{margin:0 0 .6em}
.prose blockquote cite{font-size:15px;font-style:normal;color:var(--muted)}
.prose ul,.prose ol{padding-left:1.3em;margin:0 0 1.25em}
.prose li{margin:.35em 0}
.prose img{margin:1.8em 0;border:1px solid var(--rule)}
.prose figure{margin:1.8em 0}
.prose figcaption{font-size:15px;color:var(--muted);margin-top:6px}
.prose hr,.prose .wp-block-separator{border:0;border-top:3px solid var(--rule);margin:2.4em 0}
.prose table{border-collapse:collapse;width:100%;font-size:17px;display:block;overflow-x:auto}
.prose td,.prose th{border:1px solid var(--rule);padding:8px 12px}
.prose .wp-block-file{margin:1.6em 0;display:flex;gap:14px;align-items:center;flex-wrap:wrap;border:2px solid var(--rule);padding:14px 18px;background:var(--sky-2)}
.prose .wp-block-file a:first-child{font-family:var(--f-d);font-weight:700}
.prose .wp-block-file__button{font-family:var(--f-d);font-weight:700;font-size:14px;background:var(--ink);color:var(--on-ink)!important;padding:8px 16px;text-decoration:none}
.video{position:relative;aspect-ratio:16/9;margin:1.8em 0;border:3px solid var(--rule);background:#000}
.video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.share{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:36px 0 0;padding-top:20px;border-top:1px solid var(--rule);font-family:var(--f-d);font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.share a,.share button{border:2px solid var(--rule);background:none;padding:6px 14px;border-radius:999px;text-decoration:none;font-family:var(--f-d);font-weight:700;font-size:13px;letter-spacing:.04em;text-transform:none}
.share a:hover,.share button:hover{background:var(--ink);color:var(--on-ink)}
.pn{display:grid;grid-template-columns:1fr 1fr;border-top:3px solid var(--rule);margin-top:48px}
.pn a{padding:22px 0;text-decoration:none;font-family:var(--f-d);font-weight:700;font-size:20px;line-height:1.2;display:block;min-width:0}
.pn a small{display:block;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--acc-text);margin-bottom:6px}
.pn a:last-child{text-align:right;border-left:1px solid var(--rule);padding-left:20px}

/* Commentaires */
.comments{border-top:3px solid var(--rule);margin-top:56px;padding:34px 0 20px;max-width:760px}
.comments h2{font-size:clamp(28px,3.4vw,40px);font-weight:800;margin-bottom:8px}
.comments .hint{color:var(--muted);margin:0 0 22px;font-size:17px}
.cform{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.cform .full{grid-column:1/-1}
.cform label{display:block;font-family:var(--f-d);font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;margin-bottom:5px}
.cform .hp{position:absolute;left:-9999px;height:0;overflow:hidden}
.clist{list-style:none;margin:34px 0 0;padding:0}
.clist li{display:grid;grid-template-columns:46px minmax(0,1fr);gap:16px;padding:20px 0;border-top:1px solid var(--rule)}
.av{width:46px;height:46px;border-radius:50%;background:var(--ink);color:var(--on-ink);display:grid;place-items:center;font-family:var(--f-d);font-weight:700;font-size:20px}
.clist .who{font-family:var(--f-d);font-weight:700}
.clist .when{font-family:var(--f-d);font-size:13px;color:var(--muted);margin-left:10px}
.clist p{margin:4px 0 0;overflow-wrap:anywhere;white-space:pre-line}

/* Pied de page */
.foot{margin-top:72px;border-top:3px solid var(--rule);padding:28px 0 40px;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:28px;font-size:16px}
.foot img{height:54px;width:auto;margin-bottom:12px}
.foot p{margin:0 0 6px;max-width:44ch;color:var(--muted)}
.foot nav{display:flex;flex-direction:column;gap:6px;font-family:var(--f-d);font-weight:600}
.foot nav a{text-decoration:none}
.foot .copy{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px 24px;grid-column:1/-1;font-size:14px;color:var(--muted);border-top:1px solid var(--soft-line);padding-top:16px}
[hidden]{display:none!important}

@media (max-width:900px){
  body{font-size:18px}
  .menu-btn{display:inline-block}
  .nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--bg);border-bottom:3px solid var(--rule);flex-direction:column;align-items:flex-start;padding:18px max(18px,env(safe-area-inset-left,0px)) 22px;gap:14px;z-index:10}
  .nav.open{display:flex}
  .top{position:relative}
  .hero,.feature,.welcome,.formbox,.foot{grid-template-columns:minmax(0,1fr)}
  .hero .l{padding:40px 0}
  .hero .r{padding:34px 0}
  .hero .l,.hero .r{box-shadow:none}
  .hero .l{margin:0 calc(-1*max(18px,env(safe-area-inset-left,0px)));padding-left:max(18px,env(safe-area-inset-left,0px));padding-right:max(18px,env(safe-area-inset-right,0px))}
  .hero .r{margin:0 calc(-1*max(18px,env(safe-area-inset-left,0px)));padding-left:max(18px,env(safe-area-inset-left,0px));padding-right:max(18px,env(safe-area-inset-right,0px))}
  .welcome{gap:32px}
  .welcome figure{max-width:280px}
  .grid{grid-template-columns:minmax(0,1fr)}
  .grid .card,.grid .card:nth-child(3n),.grid .card:not(:nth-child(3n+1)){border-right:0;padding:22px 0}
  .feature .ph{border-right:0;border-bottom:3px solid var(--rule)}
  .feature .card{padding:26px 0}
  .prayer,.pod-head{grid-template-columns:minmax(0,1fr)}
  .prayer,.podcast{padding:30px 22px}
  .formbox{gap:28px}
}
@media (max-width:560px){
  .cform{grid-template-columns:minmax(0,1fr)}
  .clist li{grid-template-columns:38px minmax(0,1fr);gap:12px}
  .av{width:38px;height:38px;font-size:17px}
  .top .logo img{height:50px}
  .pn{grid-template-columns:minmax(0,1fr)}
  .pn a:last-child{text-align:left;border-left:0;border-top:1px solid var(--rule);padding-left:0}
  .prose{font-size:19px}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.prose .note{margin:1.8em 0;padding:20px 24px;background:var(--sky);border:3px solid var(--rule)}
.prose .note>:last-child{margin-bottom:0}
.pubdate{max-width:700px;margin:2.2em 0 0;padding-top:16px;border-top:3px solid var(--rule);font-family:var(--f-d);font-weight:600;font-size:15px;color:var(--muted)}
.prose s{opacity:.75}

.foot .copy em{font-family:'Caveat','Comic Sans MS',cursive;font-style:normal;font-weight:600;font-size:24px;line-height:1;color:var(--acc-text)}

.lang a,.lang span{display:inline-flex;align-items:center;gap:6px}
.lang .flag{display:block;width:18px;height:auto;border:1px solid rgb(var(--sh) / .25);border-radius:2px;flex:none}
.welcome .signature,.prose .signature{font-family:'Dancing Script','Caveat',cursive;font-weight:700;font-size:44px;line-height:1.1;color:var(--ink);margin:2px 0 0;border:0;background:none;padding:0;}
.share button[data-story]{background:var(--ink);color:var(--on-ink)}
.share button[data-story]:disabled{opacity:.7;cursor:wait}

/* aperçu PDF */
.pdfbox{margin:32px 0;border:2px solid var(--rule);background:var(--sky);padding:18px clamp(14px,3vw,24px) 22px}
.pdf-h{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:14px}
.pdf-h div{display:flex;flex-direction:column;gap:2px;min-width:0}
.pdf-k{font-family:var(--f-d);font-weight:700;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--acc-text)}
.pdf-h strong{font-family:var(--f-d);font-size:19px;line-height:1.25;overflow-wrap:anywhere}
.pdf-view{max-height:620px;overflow:auto;background:var(--docbg);border:1px solid var(--rule);padding:12px;display:flex;flex-direction:column;gap:12px;-webkit-overflow-scrolling:touch}
.pdf-view .pdf-page{display:block;background:#fff;box-shadow:0 2px 10px rgb(var(--sh) / .18);height:auto}
.pdf-ph{margin:0;padding:24px 8px;text-align:center;color:var(--muted);font-size:16px}
/* aperçu YouTube */
.yt-facade{position:relative;aspect-ratio:16/9;background:#000;margin:20px 0;overflow:hidden}
.yt-facade iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.yt-play{position:absolute;inset:0;width:100%;height:100%;border:0;padding:0;cursor:pointer;background:#000}
.yt-play img{width:100%;height:100%;object-fit:cover;display:block;opacity:.92}
.yt-btn{position:absolute;left:50%;top:50%;width:76px;height:54px;margin:-27px 0 0 -38px;background:#f00;border-radius:14px}
.yt-btn::after{content:"";position:absolute;left:31px;top:15px;border-style:solid;border-width:12px 0 12px 20px;border-color:transparent transparent transparent #fff}
.yt-play:hover .yt-btn,.yt-play:focus-visible .yt-btn{background:#c00}

/* texte de base (passage biblique de départ) */
.prose .basetext{margin:1.8em 0;padding:22px clamp(18px,3vw,28px) 20px;background:var(--sky);border-left:6px solid var(--accent)}
.prose .basetext::before{content:"Texte de base";display:block;font:700 12px/1 var(--f-d);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:12px}
html[lang="en"] .prose .basetext::before{content:"Base text"}
.prose .basetext .bt-ref{font-family:var(--f-d);font-weight:800;font-size:20px;color:var(--acc-text);margin:0 0 10px}
.prose .basetext p{font-family:'Newsreader',Georgia,serif;font-style:italic;font-size:1.08em}
.prose .basetext p.bt-ref{font-style:normal}
.prose .basetext>:last-child{margin-bottom:0}

/* accueil : texte centré, pleine largeur */
.welcome.welcome-center{display:block;text-align:center;max-width:none}
.welcome.welcome-center>div{max-width:920px;margin:0 auto}
.welcome.welcome-center p,.welcome.welcome-center .prose p{margin-left:auto;margin-right:auto;max-width:72ch}
.welcome.welcome-center blockquote,.welcome.welcome-center .note{border-left:0;padding-left:0;margin-left:auto;margin-right:auto;max-width:72ch}
.lang-m{display:none}
@media (max-width:900px){
  .lang-d{display:none}
  .lang-m{display:inline-flex;margin:0 auto}
}
.consent{margin:6px 0 4px}.consent label{display:flex;gap:10px;align-items:flex-start;font-weight:600}.consent input{width:auto;margin-top:4px;flex:none}.rgpd{font-size:14px;color:var(--muted);margin:8px 0 0}
.pod-avail{margin-top:22px!important;font-weight:600}
.pod-logos{list-style:none;margin:14px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:12px}
.pod-logos a{display:inline-flex;align-items:center;gap:9px;background:var(--bg);border:2px solid var(--rule);border-radius:999px;padding:6px 16px 6px 8px;font-family:var(--f-d);font-weight:700;font-size:14px;text-decoration:none}
.pod-logos a:hover{background:var(--sky)}

/* ---------- animations d'apparition (désactivées si « réduire les animations » est demandé) ---------- */
@keyframes rv-up{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}
@keyframes rv-fade{from{opacity:0}to{opacity:1}}
.js .hero .eyebrow,.js .hero h1,.js .hero .lead,.js .hero .l>div,.js .hero blockquote,.js .hero cite{animation:rv-up .8s cubic-bezier(.2,.7,.2,1) both}
.js .hero h1{animation-delay:.12s}.js .hero .lead{animation-delay:.24s}.js .hero .l>div{animation-delay:.36s}
.js .hero blockquote{animation-delay:.3s;animation-duration:1.1s}.js .hero cite{animation-delay:.6s}
.js .rv{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1);transition-delay:var(--d,0s)}
.js .rv.in{opacity:1;transform:none}
.js .rv-l{transform:translateX(-34px)}.js .rv-r{transform:translateX(34px)}
.js .rv-s{transform:scale(.96)}
/* effets au survol */
.card .ph img{transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.card:hover .ph img{transform:scale(1.06)}
.card h3{transition:color .25s}
.btn{transition:background .25s,color .25s,border-color .25s,transform .25s,box-shadow .25s}
.btn:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgb(var(--sh) / .22)}
.prayer .btn:hover,.podcast .btn:hover{transform:translateY(-2px)}
.pod-logos a{transition:transform .25s,background .25s,box-shadow .25s}
.pod-logos a:hover{transform:translateY(-3px);box-shadow:0 8px 16px rgb(var(--sh) / .18)}
.sec-h{position:relative}
.sec-h::after{content:"";position:absolute;left:0;bottom:-3px;height:3px;width:0;background:var(--accent);transition:width .9s cubic-bezier(.2,.7,.2,1) .2s}
.js .sec-h.in::after,.sec-h:not(.rv)::after{width:100%}
.nav a{position:relative}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.js .rv{opacity:1!important;transform:none!important}}

/* compteur d'articles + thèmes qui s'écrivent */
.stats{display:flex;align-items:center;gap:64px;padding:48px 0;border-bottom:3px solid var(--rule)}
.ring{position:relative;width:260px;height:260px;flex:none}
.ring svg{width:100%;height:100%;display:block}
.ring-bg{fill:none;stroke:var(--sky);stroke-width:16}
.ring-fg{fill:none;stroke:var(--accent);stroke-width:16;stroke-linecap:round;transition:stroke-dashoffset .1s linear}
.ring-n{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}
.ring-n b{font-family:var(--f-d);font-size:92px;line-height:1;font-weight:800;letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.ring-n span{font-family:var(--f-d);font-size:14px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--acc-text);margin-top:6px}
.stats-t{min-width:0;flex:1}
.stats-lead{font-family:var(--f-d);font-size:clamp(26px,3.6vw,44px);line-height:1.12;font-weight:800;letter-spacing:-.02em;margin:10px 0 6px}
.typed-line{margin:0;font-family:'Fraunces',Georgia,serif;font-weight:500;font-size:clamp(34px,5.6vw,70px);line-height:1.12;color:var(--acc-text);min-height:1.2em;max-width:none}
.typed-line .det{font-style:italic}
.typed-line .typed{font-style:italic}
.typed-line .det:empty{display:none}
.typed-line .det:empty+*{margin-left:0}
.caret{display:inline-block;width:4px;height:.85em;background:var(--accent);margin-left:6px;vertical-align:-.06em;animation:blink 1s steps(1) infinite}
@keyframes blink{0%,49%{opacity:1}50%,100%{opacity:0}}
@media (max-width:900px){.stats{flex-direction:column;text-align:center;gap:28px;padding:36px 0}.ring{width:210px;height:210px}.ring-n b{font-size:72px}}
@media (prefers-reduced-motion:reduce){.caret{animation:none}}

/* temps de lecture + lecture audio */
.art-read{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:6px 0 14px;font-family:var(--f-d);font-weight:700;font-size:16px}
.art-read .rt{display:inline-flex;align-items:center;gap:8px;color:var(--acc-text)}
.listen{display:inline-flex;align-items:center;gap:8px;background:var(--ink);color:var(--on-ink);border:2px solid var(--rule);border-radius:999px;padding:7px 18px;font-family:var(--f-d);font-weight:700;font-size:15px;cursor:pointer;transition:background .25s,transform .25s}
.listen:hover{background:var(--acc-text);border-color:var(--acc-text);transform:translateY(-2px)}
.listen:focus-visible,.player button:focus-visible,.player select:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.listen[hidden],.player[hidden]{display:none}
.player{display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap;font-family:var(--f-d);font-weight:700;font-size:14px}
.player button{background:var(--bg);border:2px solid var(--rule);border-radius:999px;padding:7px 16px;font:inherit;cursor:pointer;color:var(--ink)}
.player button:hover{background:var(--ink);color:var(--on-ink)}
.player select{font:inherit;border:2px solid var(--rule);border-radius:8px;background:var(--bg);color:var(--ink);padding:4px 6px}
.prose .reading{background:linear-gradient(transparent 0,rgb(var(--acc-rgb) / .14) 0);box-shadow:-10px 0 0 rgb(var(--acc-rgb) / .14),10px 0 0 rgb(var(--acc-rgb) / .14);border-radius:4px}
.player label{display:inline-flex;align-items:center;gap:6px}

/* réactions des lecteurs */
.reactions{margin:34px 0 8px;padding:22px 24px;border:2px solid var(--rule);background:var(--sky);text-align:center}
.reactions .rq{margin:0 0 14px;font-family:var(--f-d);font-weight:800;font-size:20px}
.rbtns{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}
.rb{display:inline-flex;align-items:center;gap:9px;background:var(--bg);color:var(--ink);border:2px solid var(--rule);border-radius:999px;padding:9px 18px;font-family:var(--f-d);font-weight:700;font-size:15px;cursor:pointer;transition:background .25s,color .25s,transform .25s,box-shadow .25s}
.rb:hover{transform:translateY(-2px);box-shadow:0 8px 16px rgb(var(--sh) / .18)}
.rb:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.rb .rn{min-width:1.4em;padding:1px 8px;border-radius:999px;background:var(--sky);font-variant-numeric:tabular-nums;font-size:14px}
.rb[aria-pressed="true"]{background:var(--ink);color:var(--on-ink)}
.rb[aria-pressed="true"] .rn{background:var(--acc-text);color:var(--on-accent)}
.rb.pop svg{animation:rpop .45s cubic-bezier(.2,.9,.3,1.4)}
@keyframes rpop{0%{transform:scale(1)}50%{transform:scale(1.5)}100%{transform:scale(1)}}
@media (prefers-reduced-motion:reduce){.rb.pop svg{animation:none}}

/* partage : icônes de réseaux */
.share .sh{display:inline-flex;align-items:center;gap:8px;padding:7px 15px 7px 11px;cursor:pointer;color:var(--ink);transition:background .25s,color .25s,transform .25s,border-color .25s}
.share .sh svg{flex:none;transition:color .25s}
.share .sh:hover{transform:translateY(-2px)}
.share .sh-wa svg{color:#25D366}.share .sh-fb svg{color:#1877F2}.share .sh-ig svg{color:#E4405F}.share .sh-x svg{color:var(--ink)}.share .sh-mail svg{color:var(--acc-text)}
.share .sh:hover svg{color:currentColor}
.share button[data-story]{background:none;color:var(--ink)}
.share button[data-story]:hover{background:var(--ink);color:var(--on-ink)}

/* ---------- « À la une » : vitrine immersive ---------- */
.vit{background:var(--band);color:#fff;padding:20px}
.vit-stage{position:relative;height:clamp(300px,42vw,420px);overflow:hidden;background:var(--deep)}
.vs{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .7s ease,visibility .7s}
.vs.on{opacity:1;visibility:visible}
.vs img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.vs-ov{position:absolute;inset:0;background:linear-gradient(180deg,rgb(var(--band-rgb) / .15) 0,rgb(var(--band-rgb) / .55) 45%,rgb(var(--band-rgb) / .92) 100%)}
.vs-t{position:absolute;left:clamp(18px,4vw,44px);right:clamp(18px,4vw,44px);bottom:clamp(18px,3.5vw,38px);display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.vs-m{font-family:var(--f-d);font-weight:800;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--light)}
.vs h3{font-family:'Fraunces',var(--f-b);font-style:italic;font-weight:500;font-size:clamp(26px,4.6vw,54px);line-height:1.06;letter-spacing:-.01em;max-width:22ch;color:#fff}
.vs.on h3,.vs.on .vs-m,.vs.on .btn{animation:vsUp .8s cubic-bezier(.2,.7,.2,1) both}
.vs.on h3{animation-delay:.08s}.vs.on .btn{animation-delay:.16s}
@keyframes vsUp{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
.vs .btn.light:hover{background:var(--sky)}
.vit-th{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:16px}
.vit-th:has(.vt:nth-child(6)){grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}
.vt{position:relative;display:flex;flex-direction:column;gap:8px;text-align:left;background:transparent;border:2px solid transparent;padding:6px 6px 10px;opacity:.6;transition:opacity .25s,border-color .25s,transform .25s;color:#fff;min-width:0}
.vt:hover{opacity:1;transform:translateY(-2px)}
.vt.on{opacity:1;border-color:var(--light)}
.vt-i{display:block;aspect-ratio:1/1;max-height:74px;width:100%;background:linear-gradient(135deg,var(--accent),var(--light));overflow:hidden}
.vt-i img{width:100%;height:100%;object-fit:cover}
.vt-n{font-family:var(--f-d);font-weight:700;font-size:13px;line-height:1.2;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.vt-b{display:block;height:3px;background:rgba(255,255,255,.2);position:relative;overflow:hidden}
.vt.on .vt-b::after{content:"";position:absolute;inset:0;background:var(--light);transform-origin:left;transform:scaleX(0);animation:vtBar var(--vit-ms,5000ms) linear forwards}
.vit.paused .vt.on .vt-b::after{animation-play-state:paused}
@keyframes vtBar{to{transform:scaleX(1)}}
@media (max-width:760px){.vit{padding:12px}.vit-th{display:flex;overflow-x:auto;gap:10px;scroll-snap-type:x mandatory;padding-bottom:4px}.vt{flex:0 0 118px;scroll-snap-align:start}}

/* ---------- carte « Ton témoignage compte » ---------- */
.tcta{margin:52px 0 8px;background:var(--band);color:#fff;display:flex;gap:clamp(24px,5vw,64px);align-items:center;padding:clamp(28px,5vw,52px) clamp(20px,5vw,64px);overflow:hidden}
.tcta-fx{position:relative;flex:none;width:220px;height:220px;display:flex;align-items:center;justify-content:center}
.tcta-fx i{position:absolute;inset:0;border-radius:50%;border:3px solid var(--light);animation:tRing 3.3s ease-out infinite;opacity:0}
.tcta-fx i:nth-child(2){animation-delay:1.1s}.tcta-fx i:nth-child(3){animation-delay:2.2s}
@keyframes tRing{0%{transform:scale(.5);opacity:.75}100%{transform:scale(1.15);opacity:0}}
.tcta-bub{position:relative;width:112px;height:112px;border-radius:50%;background:var(--bg);color:var(--ink);display:flex;align-items:center;justify-content:center;animation:tFloat 3.6s ease-in-out infinite}
@keyframes tFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.tcta-t{display:flex;flex-direction:column;gap:14px;min-width:0}
.tcta-e{font-family:var(--f-d);font-weight:800;font-size:14px;letter-spacing:.16em;text-transform:uppercase;color:var(--light)}
.tcta h2{font-family:'Fraunces',var(--f-b);font-style:italic;font-weight:500;font-size:clamp(28px,4.4vw,48px);line-height:1.08;letter-spacing:-.01em;color:#fff}
.tcta-l{margin:0;font-family:var(--f-d);font-size:19px;color:var(--band-text);min-height:2.6em;transition:opacity .35s,transform .35s}
.tcta-l.out{opacity:0;transform:translateY(6px)}
.tcta-a{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin-top:4px}
.tcta-n{font-family:var(--f-d);font-weight:600;font-size:14px;color:var(--light)}
.tcta .btn.light{animation:tPulse 2.4s infinite}
@keyframes tPulse{0%{box-shadow:0 0 0 0 rgb(var(--light-rgb,156 196 228) / .6)}70%{box-shadow:0 0 0 16px rgb(var(--light-rgb,156 196 228) / 0)}100%{box-shadow:0 0 0 0 rgb(var(--light-rgb,156 196 228) / 0)}}
@media (max-width:760px){.tcta{flex-direction:column;text-align:center;align-items:center}.tcta-fx{width:160px;height:160px}.tcta-bub{width:84px;height:84px}.tcta-bub svg{width:44px;height:44px}.tcta-a{justify-content:center}}
@media (prefers-reduced-motion:reduce){.tcta-fx i,.tcta-bub,.tcta .btn.light,.vs.on h3,.vs.on .vs-m,.vs.on .btn{animation:none!important}.vs{transition:none}.tcta-fx i{opacity:.4;transform:scale(1)}}

/* page Témoignages + rappel en fin d'article */
.form .two{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media (max-width:560px){.form .two{grid-template-columns:1fr}}
.form input[type=file]{padding:10px;background:var(--bg)}
.tmini{text-align:center;margin:14px 0 4px;font-family:var(--f-d);font-weight:600;font-size:16px;color:var(--muted)}
.tmini a{color:var(--ink);font-weight:800;text-underline-offset:3px}
.tmini a:hover{color:var(--acc-text)}

/* menu sur deux lignes (ordinateur) : le logo garde sa taille ; le sélecteur de langue reste en haut à droite */
.nav-rows{display:flex;flex-direction:column;gap:8px}
.nav-r{display:flex;align-items:center;gap:22px}
@media (min-width:901px){.nav{align-items:flex-start;gap:28px;margin-left:auto}.nav-rows{align-items:flex-end}.nav .lang-d{margin-top:0}}
@media (max-width:900px){.nav-rows,.nav-r{display:contents}}
/* menu centré entre le logo et le sélecteur de langue */
@media (min-width:901px){.nav{flex:1;margin-left:0}.nav-rows{flex:1;align-items:center}.nav-r{justify-content:center}}

/* ---------- articles invités ---------- */
.gav{flex:none;width:var(--s);height:var(--s);border-radius:50%;object-fit:cover;border:2px solid var(--rule);display:block}
.gav.sig{display:flex;flex-direction:column;align-items:center;justify-content:center;background:#fff;font-family:'Dancing Script','Caveat',cursive;font-weight:700;color:#002F8E;line-height:.92;text-align:center;overflow:hidden;font-size:calc(var(--s)*.22*var(--k,1))}
.gav.sig b{font-weight:700;display:block;max-width:92%;white-space:nowrap}
.gbadge{display:inline-block;background:var(--ink);color:var(--on-ink);font-family:var(--f-d);font-weight:800;font-size:11px;letter-spacing:.12em;text-transform:uppercase;padding:5px 10px}
.card .ph{position:relative}.card .ph .gbadge{position:absolute;left:10px;top:10px}
.gbadge-l{font-size:12px;padding:6px 12px;margin-bottom:10px}
.cby{display:flex;align-items:center;gap:10px;margin-top:12px;padding-top:12px;border-top:1px solid var(--soft-line);font-family:var(--f-d);line-height:1.2}
.cby b{display:block;font-size:14px}.cby small{display:block;font-size:13px;color:var(--muted);font-weight:500}
.gby{display:flex;align-items:center;gap:12px;margin:14px 0 4px;font-family:var(--f-d);line-height:1.25}
.gby b{display:block;font-size:17px}.gby small{display:block;font-size:14px;color:var(--muted);font-weight:500}
.gbio{display:flex;gap:22px;align-items:flex-start;margin:34px 0 10px;padding:24px 26px;border:2px solid var(--rule);background:var(--sky)}
.gbio-e{font-family:var(--f-d);font-weight:800;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--acc-text)}
.gbio h2{font-size:26px;font-weight:800;margin:4px 0 2px}
.gbio-r{margin:0 0 8px;font-family:var(--f-d);font-weight:600;font-size:15px;color:var(--muted)}
.gbio-b p{margin:0 0 .8em;font-size:18px;line-height:1.6}
.gbio-l{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}
.gbio-l a{border:2px solid var(--rule);background:var(--bg);border-radius:999px;padding:5px 14px;font-family:var(--f-d);font-weight:700;font-size:14px;text-decoration:none}
.gbio-l a:hover{background:var(--ink);color:var(--on-ink)}
.gdisc{font-style:italic;font-size:15px;color:var(--muted);margin:6px 0 10px}
@media (max-width:560px){.gbio{flex-direction:column;padding:20px}}
.guests .g-note{max-width:72ch;margin:0 0 30px}
.guests .g-note>p{font-size:20px;margin:0 0 14px}
.guests .g-note strong{letter-spacing:.04em}
.guests .g-note blockquote{margin:0;padding:4px 0 4px 18px;border-left:4px solid var(--accent)}
.guests .g-note blockquote p{margin:0 0 4px;font-style:italic;font-size:18px}
.guests .g-note cite{font-family:var(--f-d);font-style:normal;font-weight:700;font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--acc-text)}
.g-cta{margin-top:30px;border:2px solid var(--rule);background:var(--sky);padding:22px 26px;display:flex;gap:20px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.g-cta strong{display:block;font-family:var(--f-d);font-weight:800;font-size:20px}
.g-cta span{font-size:17px;color:var(--muted)}
/* page Je souhaite suivre Jésus */
.jesus{max-width:760px;padding:10px 0 40px}
.jesus section{padding:26px 0;border-bottom:1px solid var(--soft-line)}
.jesus h2{font-size:clamp(24px,3vw,32px);font-weight:800;margin-bottom:12px}
.jesus p{margin:0 0 1em}
.jq{margin:18px 0 0;padding:6px 0 6px 18px;border-left:4px solid var(--accent)}
.jq p{font-style:italic;margin:0 0 4px}
.jq cite{font-family:var(--f-d);font-style:normal;font-weight:700;font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--acc-text)}
.jsteps{margin:0;padding-left:1.3em}.jsteps li{margin:0 0 .6em;padding-left:.3em}
.jprayer{background:var(--sky);border:2px solid var(--rule);padding:26px 28px!important;margin:28px 0}
.jprayer p{font-style:italic;font-size:21px;margin:0}
.jbtns{display:flex;gap:12px;flex-wrap:wrap;margin-top:16px}
.gav.sig.sm{font-size:calc(var(--s)*.5)}
.top .logo{flex:none}
.jesus section:has(+ .jprayer){border-bottom:0}

/* Logo : un seul fichier, repeint de la couleur du thème choisi (repli : logo d'origine si le masque n'est pas géré) */
.top .logo,.foot .logo-f{display:inline-block;background:var(--ink);-webkit-mask:url(logo.png) left center/contain no-repeat;mask:url(logo.png) left center/contain no-repeat}
.top .logo img,.foot .logo-f img{opacity:0}
.foot .logo-f img{margin-bottom:0}.foot .logo-f{margin-bottom:12px}
@supports not ((-webkit-mask-image:url(x)) or (mask-image:url(x))){.top .logo,.foot .logo-f{background:none}.top .logo img,.foot .logo-f img{opacity:1}}

/* Choix de la couleur du site : bouton palette + petit panneau */
.nav-tools{display:flex;align-items:center;gap:14px}
.tp{position:relative;display:inline-block}
.tp-btn{height:36px;border-radius:20px;gap:7px;padding:0 14px 0 10px;font-family:var(--f-d);font-weight:700;font-size:14px;line-height:1;border:2px solid var(--rule);background:var(--bg);color:var(--ink);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s}
.tp-btn:hover,.tp-btn[aria-expanded="true"]{background:var(--sky)}
.tp-panel{position:absolute;right:0;top:calc(100% + 10px);z-index:30;width:min(300px,calc(100vw - 36px));background:var(--bg);color:var(--ink);border:2px solid var(--rule);padding:12px;box-shadow:0 12px 28px rgb(var(--sh) / .22);display:flex;flex-direction:column;gap:10px}
.tp-panel[hidden]{display:none}
.tp-h{font-family:var(--f-d);font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.tp-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.tp-grid button{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 4px;border:2px solid var(--soft-line);background:var(--bg);color:var(--ink);font-family:var(--f-d);font-weight:700;font-size:12px;line-height:1.1;text-align:center;cursor:pointer}
.tp-grid button:hover{background:var(--sky)}
.tp-grid button[aria-pressed="true"]{border-color:var(--ink);background:var(--sky)}
.tp-grid i{display:block;width:34px;height:34px;border-radius:50%;border:2px solid var(--bg);box-shadow:0 0 0 1.5px var(--rule)}
.tp-grid button[aria-pressed="true"] i{box-shadow:0 0 0 3px var(--ink)}
.tp-m{display:none}
@media (max-width:900px){.tp-d{display:none}.tp-m{display:flex;justify-content:flex-end;padding:12px 0 18px}.nav-tools{flex-wrap:wrap;margin-top:8px}}
/* Bloc « parcours » en fin d'article */
.journey{margin:40px 0 8px;border:2px solid var(--rule);background:var(--sky);padding:24px 24px 22px}
.journey[hidden]{display:none}
.j-k{margin:0 0 4px;font-family:var(--f-d);font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--acc-text)}
.journey h2{font-size:clamp(22px,2.6vw,30px);font-weight:800;margin:0 0 14px;line-height:1.15}
.journey p{margin:0 0 14px}
.j-main{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.j-main .btn{white-space:normal;text-align:left}
.j-links{display:flex;gap:8px 22px;flex-wrap:wrap;font-family:var(--f-d);font-weight:700;font-size:15px}
.j-links a{color:var(--ink);text-decoration:none;border-bottom:2px solid var(--rule);padding-bottom:1px}
.j-links a:hover{color:var(--acc-text);border-color:var(--acc-text)}
/* Suivi de lecture (sur l'appareil du lecteur) */
.po-prog{margin:-2px 0 8px;font-family:var(--f-d);font-weight:700;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--acc-text)}
.po-prog[hidden]{display:none}
a.is-read::after{content:" ✓";color:var(--acc-text);font-weight:800}
.j-miss{margin:0 0 14px;padding-left:20px;display:grid;gap:6px}
.j-miss a{color:var(--ink);font-weight:700}
.j-miss a:hover{color:var(--acc-text)}
/* Page « Par où commencer ? » */
.hero .l .btn{padding:13px 18px;letter-spacing:.02em}
.po-sec{padding:44px 0 8px}
.po-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.po-c{position:relative;border:2px solid var(--rule);padding:26px 24px 24px;display:flex;flex-direction:column;gap:6px;background:var(--bg)}
.po-n{font-family:var(--f-d);font-weight:800;font-size:13px;letter-spacing:.14em;color:var(--on-ink);background:var(--ink);width:30px;height:30px;border-radius:50%;display:grid;place-items:center;margin-bottom:6px}
.po-c h2{font-size:clamp(22px,2.4vw,28px);font-weight:800;letter-spacing:-.01em;line-height:1.1}
.po-s{margin:0 0 6px;color:var(--muted);font-size:17px}
.po-c ol{margin:0 0 14px;padding-left:22px;display:grid;gap:7px}
.po-c ol a{color:var(--ink);text-decoration:none;border-bottom:1px solid var(--soft-line)}
.po-c ol a:hover{color:var(--acc-text);border-color:var(--acc-text)}
.po-go{align-self:flex-start;margin-top:auto}
.po-more{background:var(--sky);border-style:dashed}
.po-w-lead{margin:0 0 18px;color:var(--muted);font-size:18px}
.po-week{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border:2px solid var(--rule)}
.po-week li{padding:14px 12px 16px;border-right:1px solid var(--rule);display:flex;flex-direction:column;gap:8px}
.po-week li:last-child{border-right:0}
.po-week span{font-family:var(--f-d);font-weight:700;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--acc-text)}
.po-week a{color:var(--ink);font-weight:700;text-decoration:none;line-height:1.25;font-size:15px}
.po-week a:hover{color:var(--acc-text)}
.po-band{margin:52px 0 0;background:var(--band);color:var(--band-text);padding:34px 30px;display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}
.po-band h2{font-size:clamp(26px,3.4vw,38px);font-weight:800;text-transform:uppercase;color:var(--band-text)}
.po-band p{margin:6px 0 0;color:var(--light);font-size:18px}
.po-steps{display:flex;gap:12px;flex-wrap:wrap}
.nav-start{font-weight:800}
@media (max-width:900px){.po-grid{grid-template-columns:1fr}.po-week{grid-template-columns:1fr}.po-week li{border-right:0;border-bottom:1px solid var(--rule);flex-direction:row;align-items:baseline;gap:12px}.po-week li:last-child{border-bottom:0}.po-week span{min-width:52px}.po-band{padding:26px 20px}}
/* Menu replié (bouton « Menu ») jusqu'à 1180 px : la nouvelle entrée du menu ne tient pas sur une ligne en dessous */
@media (min-width:901px) and (max-width:1180px){
  .menu-btn{display:inline-block}
  .nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--bg);border-bottom:3px solid var(--rule);flex-direction:column;align-items:flex-start;padding:18px max(18px,env(safe-area-inset-left,0px)) 22px;gap:14px;z-index:10;margin-left:0;flex:none}
  .nav.open{display:flex}
  .top{position:relative}
  .nav-rows,.nav-r{display:contents}
  .lang-d{display:none}.lang-m{display:inline-flex;margin:0 auto}
  .tp-d{display:none}.tp-m{display:flex;justify-content:flex-end;padding:12px 0 18px}.nav-tools{flex-wrap:wrap;margin-top:8px}
}
@media print{html{--bg:#fff}}
.prose .prayer,.prose .prayer:hover,.prose .prayer h2,.prose .prayer p{color:#fff}.prose .prayer p{color:var(--band-text)}.prose .prayer small{color:var(--light)}
