/* APEL Jean XXIII — charte : turquoise rgb(29,179,174) + magenta rgb(206,0,127) uniquement */
:root{
  --turquoise:#1DB3AE; --turquoise-d:#138C88;
  --magenta:#CE007F; --magenta-d:#A4036A;
  --ink:#23302F; --muted:#5C6B6E;
  --paper:#FBF8F3; --cloud:#FFFFFF; --mist:#E8F6F5;
  --line:#E6E0D6;
  --shadow:0 10px 30px rgba(35,48,47,.10);
  --display:"Fjalla One",Impact,"Arial Narrow",sans-serif;
  --body:"Martel Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0; font-family:var(--body); color:var(--ink); background:var(--paper); line-height:1.6; -webkit-font-smoothing:antialiased;}
img{max-width:100%; display:block;}
a{color:inherit; text-decoration:none;}
:focus-visible{outline:3px solid var(--turquoise-d); outline-offset:2px;}
.skip{position:absolute; left:-999px; top:8px; background:#fff; padding:8px 14px; border-radius:8px; z-index:100;}
.skip:focus{left:8px;}
.wrap{max-width:1180px; margin:0 auto; padding:0 22px;}
.wrap--narrow{max-width:760px;} .wrap--mid{max-width:980px;}
.eyebrow{font-size:.78rem; font-weight:800; letter-spacing:.16em; text-transform:uppercase; color:var(--magenta); margin:0;}
h1,h2{font-family:var(--display); font-weight:400; line-height:1.06; letter-spacing:.005em; margin:0;}
h3{font-weight:800; line-height:1.25; margin:0;}

.btn{display:inline-flex; align-items:center; gap:.5em; font-family:var(--body); font-weight:800; font-size:1rem;
  padding:12px 22px; border-radius:999px; border:2px solid transparent; cursor:pointer; line-height:1.2;
  transition:transform .12s ease, background .12s ease, border-color .12s ease;}
.btn--primary{background:var(--magenta); color:#fff;}
.btn--primary:hover{background:var(--magenta-d); transform:translateY(-2px);}
.btn--ghost{background:#fff; color:var(--ink); border-color:var(--line);}
.btn--ghost:hover{border-color:var(--turquoise); color:var(--turquoise-d); transform:translateY(-2px);}
.btn--white{background:#fff; color:var(--magenta-d);}
.btn--white:hover{transform:translateY(-2px); box-shadow:var(--shadow);}
.btn--outline-white{background:transparent; color:#fff; border-color:rgba(255,255,255,.7);}
.btn--outline-white:hover{background:rgba(255,255,255,.14); transform:translateY(-2px);}

/* Mosaïque (motif signature) */
.mosaic{display:grid; grid-template-columns:repeat(8,20px); grid-auto-rows:20px; gap:5px;}
.mosaic i{border-radius:4px;}
.mosaic .t{background:var(--turquoise);} .mosaic .m{background:var(--magenta);}
.mosaic .w{background:#fff; box-shadow:inset 0 0 0 1px var(--line);} .mosaic .e{background:transparent;}
.mosaic--hero{margin-bottom:30px;}
.mosaic--corner{position:absolute; grid-template-columns:repeat(2,14px); grid-auto-rows:14px; gap:4px;}
.mosaic--corner.tl{top:18px; left:18px;} .mosaic--corner.br{bottom:18px; right:18px;}
.mosaic--line{grid-template-columns:repeat(7,14px); grid-auto-rows:14px; gap:4px; margin-bottom:22px;}
.mosaic--tile{grid-template-columns:repeat(2,16px); grid-auto-rows:16px; gap:4px; margin-bottom:6px;}
.mosaic--card{grid-template-columns:repeat(4,26px); grid-auto-rows:26px; gap:6px;}
.mosaic--card .w{box-shadow:none;}

/* Logo texte (si le fichier logo n'est pas encore déposé) */
.wordmark{font-family:var(--display); font-size:1.5rem; color:var(--turquoise-d); letter-spacing:.01em; white-space:nowrap;}
.wordmark b{font-weight:400; color:var(--magenta);}

/* En-tête */
.hdr{position:sticky; top:0; z-index:50; background:rgba(251,248,243,.94); backdrop-filter:blur(8px); border-bottom:1px solid var(--line);}
.hdr-in{display:flex; align-items:center; gap:18px; padding:12px 22px; max-width:1180px; margin:0 auto;}
.brand img{height:64px; width:auto;}
.menu{display:flex; align-items:center; gap:10px; margin-left:auto;}
.nav{display:flex; gap:4px;}
.nav a{padding:9px 13px; border-radius:10px; font-weight:700; font-size:.95rem;}
.nav a:hover{background:var(--mist); color:var(--turquoise-d);}
.nav a[aria-current]{color:var(--turquoise-d); box-shadow:inset 0 -3px 0 var(--turquoise);}
.burger{display:none; margin-left:auto; width:44px; height:44px; border:1px solid var(--line); background:#fff;
  border-radius:12px; cursor:pointer; align-items:center; justify-content:center;}
.burger span,.burger span::before,.burger span::after{content:""; display:block; width:20px; height:2px; background:var(--ink); position:relative;}
.burger span::before{position:absolute; top:-6px;} .burger span::after{position:absolute; top:6px;}
.adminbar{background:var(--ink); color:#fff; font-size:.85rem; padding:6px 0;}
.adminbar a{text-decoration:underline;}

/* Accueil */
.hero{position:relative; overflow:hidden; padding:30px 0 64px;
  background:radial-gradient(1000px 420px at 82% -8%, var(--mist), transparent 60%), radial-gradient(760px 360px at -5% 115%, #FBE7F2, transparent 60%);}
.hero-grid{display:grid; grid-template-columns:1.12fr .88fr; gap:44px; align-items:center;}
.hero h1{font-size:clamp(2.5rem,6vw,4.4rem);}
.hero h1 em{font-style:normal; color:var(--magenta);}
.lead{font-size:1.16rem; color:var(--muted); margin:18px 0 26px; max-width:52ch;}
.hero .lead{max-width:38ch;}
.hero-cta{display:flex; flex-wrap:wrap; gap:12px;}
.hero-card{position:relative; background:#fff; border:1px solid var(--line); border-radius:24px; box-shadow:var(--shadow);
  padding:52px 40px; display:grid; place-items:center; min-height:240px;}
.hero-card img.hero-logo{width:62%;}
.hero-card .wordmark{font-size:3rem; text-align:center; line-height:1;}
.ribbon{margin-top:36px; display:flex; align-items:center; gap:14px; flex-wrap:wrap; background:#fff; border:1px solid var(--line);
  border-left:6px solid var(--turquoise); border-radius:14px; padding:14px 18px; box-shadow:var(--shadow);}
.ribbon p{margin:0; font-weight:700;}
.ribbon a{margin-left:auto; color:var(--magenta); font-weight:800; white-space:nowrap;}
.ribbon a:hover{color:var(--magenta-d); text-decoration:underline;}

.feature{background:var(--magenta); color:#fff; padding:56px 0;}
.feature .wrap{display:grid; grid-template-columns:1fr auto; gap:34px; align-items:center;}
.feature .eyebrow{color:rgba(255,255,255,.92);}
.feature h2{font-size:clamp(2rem,4.4vw,3rem); margin:8px 0 10px;}
.feature p{color:rgba(255,255,255,.94); margin:0 0 22px; max-width:52ch;}
.feature-cta{display:flex; gap:12px; flex-wrap:wrap;}
.countdown{display:flex; gap:12px;}
.cd{background:rgba(255,255,255,.16); border:1px solid rgba(255,255,255,.3); border-radius:16px; padding:16px 14px; text-align:center; min-width:80px;}
.cd b{display:block; font-family:var(--display); font-weight:400; font-size:2.4rem; line-height:1;}
.cd span{font-size:.7rem; letter-spacing:.12em; text-transform:uppercase; opacity:.9;}

/* Sections */
.sec{padding:64px 0;} .sec--tight{padding:40px 0 72px;} .sec--mist{background:var(--mist);}
.sec-head{display:flex; align-items:flex-end; justify-content:space-between; gap:18px; margin-bottom:30px;}
.sec-head h2{font-size:clamp(1.9rem,4vw,2.7rem); margin-top:4px;}
.more{font-weight:800; color:var(--turquoise-d); white-space:nowrap;}
.more:hover{color:var(--magenta);}
.empty{color:var(--muted); font-weight:600; padding:30px; background:#fff; border:1px dashed var(--line); border-radius:16px; text-align:center;}

/* Cartes d'actualité */
.grid3{display:grid; grid-template-columns:repeat(3,1fr); gap:22px;}
.card{background:var(--cloud); border:1px solid var(--line); border-radius:18px; overflow:hidden; display:flex; flex-direction:column;
  transition:transform .14s ease, box-shadow .14s ease;}
.card:hover{transform:translateY(-4px); box-shadow:var(--shadow);}
.card-media{aspect-ratio:16/10; position:relative; display:grid; place-items:center; background:var(--mist);}
.card-media.is-tur{background:var(--turquoise);} .card-media.is-mag{background:var(--magenta);}
.card-media img{width:100%; height:100%; object-fit:cover; position:absolute; inset:0;}
.card-media.is-tur .mosaic .t{background:rgba(255,255,255,.35);} .card-media.is-mag .mosaic .m{background:rgba(255,255,255,.35);}
.tag{position:absolute; top:12px; left:12px; z-index:2; background:#fff; color:var(--magenta); font-size:.7rem; font-weight:800;
  letter-spacing:.06em; text-transform:uppercase; padding:5px 10px; border-radius:999px;}
.tag--inline{position:static; display:inline-block; border:1px solid var(--line);}
.card-body{padding:18px 18px 20px; display:flex; flex-direction:column; gap:8px; flex:1;}
.card-body time{font-size:.82rem; color:var(--muted); font-weight:700;}
.card-body h3{font-size:1.16rem;}
.card-body p{margin:0; color:var(--muted); font-size:.95rem;}
.card-body .read{margin-top:auto; padding-top:10px; font-weight:800; color:var(--turquoise-d);}

/* Tuiles L'APEL en bref */
.tiles{display:grid; grid-template-columns:repeat(4,1fr); gap:18px;}
.tile{display:flex; flex-direction:column; gap:8px; padding:24px 20px; border-radius:18px; background:#fff; border:1px solid var(--line); transition:.14s ease;}
.tile:hover{transform:translateY(-4px); box-shadow:var(--shadow); border-color:var(--turquoise);}
.tile h3{font-size:1.1rem;} .tile p{margin:0; color:var(--muted); font-size:.92rem;}

/* En-têtes de page */
.pagehead{padding:48px 0 8px;}
.pagehead h1{font-size:clamp(2.3rem,5vw,3.6rem);}
.pagehead .lead{margin-bottom:10px;}
.pagehead--404{padding:80px 0 100px;}
.pagehead--404 .btn{margin:6px 8px 0 0;}
.chips{display:flex; flex-wrap:wrap; gap:8px; margin-top:18px;}
.chips a{padding:7px 15px; border-radius:999px; border:1px solid var(--line); background:#fff; font-weight:700; font-size:.9rem;}
.chips a:hover{border-color:var(--turquoise); color:var(--turquoise-d);}
.chips a[aria-current]{background:var(--turquoise); border-color:var(--turquoise); color:#fff;}
.pager{display:flex; justify-content:center; align-items:center; gap:20px; margin-top:40px; font-weight:700; color:var(--muted);}
.pager a{color:var(--turquoise-d); font-weight:800;}

/* Article */
.post{padding:36px 0 56px;}
.back{display:inline-block; font-weight:800; color:var(--turquoise-d); margin-bottom:22px;}
.back::before{content:"‹ ";}
.post-head h1{font-size:clamp(2.2rem,5vw,3.4rem); margin:14px 0 10px;}
.meta{color:var(--muted); font-weight:700; margin:0 0 28px;}
.post-cover{width:100%; max-height:560px; object-fit:cover; border-radius:22px; margin:0 auto 34px;}
.notice{background:var(--mist); border-left:5px solid var(--turquoise); padding:12px 16px; border-radius:10px; font-weight:700;}

/* Texte riche */
.prose{font-size:1.08rem; max-width:68ch;}
.prose h2{font-size:1.9rem; margin:1.6em 0 .5em;}
.prose h3{font-size:1.25rem; margin:1.4em 0 .4em;}
.prose p,.prose ul,.prose ol{margin:0 0 1.1em;}
.prose li{margin-bottom:.35em;}
.prose a{color:var(--magenta); text-decoration:underline; text-underline-offset:3px;}
.prose a.btn{color:#fff; text-decoration:none;}
.prose blockquote{margin:1.4em 0; padding:6px 0 6px 20px; border-left:5px solid var(--turquoise); font-size:1.15rem; font-weight:600;}
.prose img{border-radius:16px; margin:1.4em 0;}
.page-grid{display:grid; grid-template-columns:1fr 260px; gap:48px; align-items:start;}
.side{position:sticky; top:96px; display:flex; flex-direction:column; background:#fff; border:1px solid var(--line); border-radius:18px; padding:10px;}
.side a{padding:10px 14px; border-radius:10px; font-weight:700;}
.side a:hover{background:var(--mist);}
.side a[aria-current]{background:var(--turquoise); color:#fff;}

/* Pied de page */
.ftr{padding:54px 0 30px; border-top:1px solid var(--line); background:#fff;}
.ftr-grid{display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:28px; padding-bottom:28px; border-bottom:1px solid var(--line);}
.ftr h4{font-weight:800; font-size:.8rem; letter-spacing:.12em; text-transform:uppercase; color:var(--muted); margin:0 0 12px;}
.ftr a{display:block; padding:5px 0; font-weight:600; font-size:.95rem;}
.ftr a:hover{color:var(--magenta);}
.ftr .brand img{height:58px;}
.ftr small{display:block; color:var(--muted); margin-top:10px; max-width:34ch;}
.ftr-bottom{display:flex; justify-content:space-between; flex-wrap:wrap; gap:10px; padding-top:18px; color:var(--muted); font-size:.88rem;}
.ftr-bottom a{display:inline; padding:0;}

@media (max-width:980px){
  .hero-grid{grid-template-columns:1fr;} .hero-card{order:-1; max-width:440px;}
  .feature .wrap{grid-template-columns:1fr;}
  .grid3{grid-template-columns:repeat(2,1fr);} .tiles{grid-template-columns:repeat(2,1fr);}
  .ftr-grid{grid-template-columns:1fr 1fr;} .page-grid{grid-template-columns:1fr;} .side{position:static;}
}
@media (max-width:760px){
  .burger{display:flex;}
  .menu{display:none; position:absolute; left:0; right:0; top:100%; flex-direction:column; align-items:stretch; gap:8px;
    background:var(--paper); padding:14px 22px 20px; border-bottom:1px solid var(--line); box-shadow:var(--shadow);}
  .menu.open{display:flex;}
  .nav{flex-direction:column;} .nav a{padding:12px;}
  .menu .btn{justify-content:center;}
  .grid3,.tiles{grid-template-columns:1fr;} .ftr-grid{grid-template-columns:1fr;}
  .sec-head{flex-direction:column; align-items:flex-start;}
  .countdown{gap:8px;} .cd{min-width:0; flex:1; padding:12px 6px;} .cd b{font-size:1.9rem;}
  .ribbon a{margin-left:0;}
}
@media (prefers-reduced-motion:reduce){*{transition:none !important; scroll-behavior:auto !important;}}

/* ---------- Ajouts v2 ---------- */
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}
.pflash{margin:18px 0 0;padding:14px 18px;border-radius:14px;font-weight:700;border-left:6px solid var(--turquoise);background:#fff;box-shadow:var(--shadow);}
.pflash--err{border-color:var(--magenta);color:var(--magenta-d);}
.muted-line{color:var(--muted);font-weight:600;margin:10px 0 0;} .muted-line a{color:var(--turquoise-d);}
.sec--gap{margin-top:56px;}

/* Recherche */
.search{display:flex;gap:10px;max-width:560px;margin-top:6px;}
.search input{flex:1;font:inherit;font-size:1rem;padding:12px 16px;border:1px solid var(--line);border-radius:999px;background:#fff;}
.search input:focus{outline:2px solid var(--turquoise);border-color:var(--turquoise);}

/* Partage */
.share{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:34px;padding-top:20px;border-top:1px solid var(--line);}
.share span{font-weight:800;margin-right:4px;}
.share a,.share button{font:inherit;font-weight:700;font-size:.9rem;padding:7px 14px;border-radius:999px;border:1px solid var(--line);background:#fff;cursor:pointer;color:var(--ink);}
.share a:hover,.share button:hover{border-color:var(--turquoise);color:var(--turquoise-d);}

/* Bénévolat : cartes */
.vol-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:22px;}
.vol{display:flex;flex-direction:column;gap:6px;background:#fff;border:1px solid var(--line);border-top:6px solid var(--magenta);border-radius:18px;padding:22px;transition:transform .14s, box-shadow .14s;}
.vol:nth-child(2n){border-top-color:var(--turquoise);}
.vol:hover{transform:translateY(-4px);box-shadow:var(--shadow);}
.vol h3{font-family:var(--display);font-weight:400;font-size:1.6rem;line-height:1.1;}
.vol-when{margin:0;font-weight:800;color:var(--turquoise-d);} .vol-where{margin:0;color:var(--muted);font-size:.92rem;}
.vol-left{margin:0;color:var(--muted);font-weight:600;} .vol-left b{color:var(--magenta);font-size:1.15rem;}
.vol .read{margin-top:8px;font-weight:800;color:var(--magenta);}
.bar{height:10px;border-radius:99px;background:var(--mist);overflow:hidden;margin:10px 0 2px;}
.bar span{display:block;height:100%;background:var(--turquoise);border-radius:99px;}

/* Bénévolat : créneaux */
.meta{color:var(--muted);font-weight:700;margin:8px 0 0;}
h2.day{font-size:1.7rem;margin:36px 0 14px;padding-bottom:8px;border-bottom:3px solid var(--turquoise);display:inline-block;}
h2.day:first-child{margin-top:0;}
.slots{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px;}
.slot{display:grid;grid-template-columns:90px 1fr auto;gap:18px;align-items:start;background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;scroll-margin-top:100px;}
.slot:target{border-color:var(--magenta);box-shadow:0 0 0 3px #FBE7F2;}
.slot-time{font-family:var(--display);font-size:1.6rem;line-height:1;color:var(--turquoise-d);}
.slot-time span{display:block;font-size:1rem;color:var(--muted);margin-top:6px;}
.slot-time span::before{content:"à ";}
.slot-main h3{font-size:1.12rem;}
.slot-note{margin:2px 0 0;color:var(--muted);font-size:.92rem;}
.seats{display:flex;flex-wrap:wrap;align-items:center;gap:5px;margin-top:10px;}
.seats i{width:16px;height:16px;border-radius:4px;background:#fff;box-shadow:inset 0 0 0 2px var(--line);}
.seats i.on{background:var(--magenta);box-shadow:none;}
.seats span{margin-left:8px;font-weight:700;font-size:.9rem;color:var(--muted);}
.who{margin:8px 0 0;font-size:.88rem;color:var(--muted);}
.slot.is-full{background:#FDFCFA;} .slot.is-full .slot-time{color:var(--muted);}
.slot-act{justify-self:end;}
.slot-act details{position:relative;}
.slot-act summary{list-style:none;} .slot-act summary::-webkit-details-marker{display:none;}
.slot-act details[open] summary{background:var(--ink);}
.slot-state{display:inline-block;font-weight:800;color:var(--muted);padding:10px 4px;}
.slot-form{grid-column:1/-1;margin-top:14px;display:grid;align-items:end;grid-template-columns:1fr 1fr;gap:10px 14px;width:min(560px,80vw);}
.slot-form label{display:flex;flex-direction:column;gap:4px;font-weight:800;font-size:.88rem;}
.slot-form small{font-weight:600;color:var(--muted);}
.slot-form input{font:inherit;font-weight:400;font-size:1rem;padding:10px 12px;border:1px solid var(--line);border-radius:10px;}
.slot-form input:focus{outline:2px solid var(--turquoise);border-color:var(--turquoise);}
.slot-form .btn,.slot-form .fine{grid-column:1/-1;justify-self:start;}
.fine{margin:0;font-size:.82rem;color:var(--muted);}
@media (min-width:761px){ .slot:has(details[open]){grid-template-columns:90px 1fr;} .slot:has(details[open]) .slot-act{grid-column:2;justify-self:start;} }

/* Documents */
.docs{list-style:none;margin:0 0 10px;padding:0;background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;}
.docs li+li{border-top:1px solid var(--line);}
.docs a{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;padding:16px 18px;}
.docs a:hover{background:var(--mist);}
.doc-ext{width:52px;height:52px;border-radius:12px;display:grid;place-items:center;font-family:var(--display);font-size:.95rem;color:#fff;background:var(--turquoise);}
.doc-ext--pdf{background:var(--magenta);}
.doc-main b{display:block;font-weight:800;} .doc-main small{display:block;color:var(--muted);font-size:.9rem;}
.doc-meta{text-align:right;font-weight:700;font-size:.9rem;white-space:nowrap;} .doc-meta small{display:block;color:var(--muted);font-weight:600;}
.letter-hero{display:grid;grid-template-columns:auto 1fr;gap:32px;align-items:center;background:var(--magenta);color:#fff;border-radius:24px;padding:34px 38px;margin-bottom:40px;}
.letter-hero .eyebrow{color:rgba(255,255,255,.9);}
.letter-hero h2{font-size:clamp(1.8rem,3.4vw,2.5rem);margin:6px 0 8px;}
.letter-hero p{margin:0 0 18px;color:rgba(255,255,255,.94);}
.mosaic--letter{grid-template-columns:repeat(2,34px);grid-auto-rows:34px;gap:8px;}
.mosaic--letter .m{background:rgba(255,255,255,.35);} .mosaic--letter .w{box-shadow:none;}

/* Lettre d'information */
.news{background:var(--turquoise);color:#fff;border-radius:26px;padding:44px;display:grid;grid-template-columns:1fr 1.05fr;gap:34px;align-items:center;}
.news .eyebrow{color:rgba(255,255,255,.92);}
.news h2{font-size:clamp(1.7rem,3.4vw,2.4rem);margin-top:8px;}
.news p{color:rgba(255,255,255,.95);margin:10px 0 0;}
.news-last a{font-weight:800;text-decoration:underline;text-underline-offset:3px;color:#fff;}
.news-form{display:flex;flex-direction:column;gap:14px;}
.news-row{display:flex;gap:10px;flex-wrap:wrap;}
.news-row input{flex:1 1 220px;padding:14px 16px;border-radius:12px;border:0;font-size:1rem;font-family:var(--body);}
.news-row input:focus{outline:3px solid var(--ink);}
.news-levels{border:0;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px 16px;}
.news-levels legend{font-weight:800;font-size:.85rem;margin-bottom:6px;padding:0;}
.news-levels label{display:flex;align-items:center;gap:6px;font-weight:600;font-size:.95rem;}
.news-consent{font-size:.85rem;font-weight:600;display:flex;gap:8px;align-items:flex-start;line-height:1.45;}
.news-consent a{text-decoration:underline;}
.news input[type=checkbox]{width:17px;height:17px;accent-color:var(--magenta);flex-shrink:0;margin-top:2px;}
.news .btn--white{color:var(--magenta-d);}

@media (max-width:980px){ .news{grid-template-columns:1fr;padding:32px;} }
@media (max-width:760px){
  .slot{grid-template-columns:64px 1fr;} .slot-act{grid-column:1/-1;justify-self:stretch;}
  .slot-act summary{width:100%;justify-content:center;} .slot-form{grid-template-columns:1fr;width:100%;}
  .slot-time{font-size:1.3rem;}
  .letter-hero{grid-template-columns:1fr;padding:28px;} .mosaic--letter{display:none;}
  .docs a{grid-template-columns:auto 1fr;} .doc-meta{grid-column:2;text-align:left;}
  .search{flex-direction:column;} .news{padding:26px;}
}
.btn--contact[aria-current]{background:var(--magenta-d);box-shadow:inset 0 -3px 0 rgba(255,255,255,.5);}

/* Espace parents */
.parents{margin-top:48px;background:#fff;border:2px solid var(--turquoise);border-radius:22px;padding:28px;}
.parents-head{display:flex;gap:18px;align-items:center;margin-bottom:18px;}
.parents-head h2{font-size:1.9rem;} .parents-head p{margin:4px 0 0;color:var(--muted);}
.parents-head form{margin-left:auto;}
.parents-head .linkbtn{background:none;border:0;font:inherit;font-weight:800;color:var(--turquoise-d);cursor:pointer;text-decoration:underline;}
.mosaic--lock{grid-template-columns:repeat(2,18px);grid-auto-rows:18px;gap:5px;flex-shrink:0;}
.parents-form{display:flex;gap:10px;flex-wrap:wrap;max-width:560px;}
.parents-form input{flex:1 1 240px;font:inherit;font-size:1rem;padding:12px 16px;border:1px solid var(--line);border-radius:999px;}
.parents-form input:focus{outline:2px solid var(--turquoise);border-color:var(--turquoise);}
.parents .fine{margin-top:10px;} .parents .fine a{color:var(--turquoise-d);text-decoration:underline;}
.parents-cat{font-size:1.05rem;margin:18px 0 10px;color:var(--turquoise-d);}
.parents .docs{border-color:var(--mist);}

/* Galeries : plusieurs images à la suite dans un paragraphe = grille */
.prose p:has(> img + img){display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin:1.4em 0;}
.prose p:has(> img + img) img{margin:0;width:100%;aspect-ratio:1;object-fit:cover;border-radius:12px;}
.prose img{cursor:zoom-in;}
.lightbox{position:fixed;inset:0;z-index:200;background:rgba(20,28,27,.92);display:grid;place-items:center;padding:24px;cursor:zoom-out;}
.lightbox img{max-width:100%;max-height:100%;border-radius:10px;box-shadow:0 20px 60px rgba(0,0,0,.4);}
.lightbox button{position:absolute;top:16px;right:16px;width:44px;height:44px;border-radius:50%;border:0;background:#fff;font-size:1.4rem;cursor:pointer;}
