/* style.css — thème commun « socle » des sites repris de WordPress (01/11/2026).
   Aucune valeur ici : tout vient de tokens.css. Les variations propres à chaque site sont dans variante.css. */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;background:var(--c-fond);color:var(--c-texte);font-family:var(--f-texte);font-size:var(--t-base);line-height:var(--interligne);overflow-x:hidden}
img,video,svg{max-width:100%;height:auto;display:block}
picture{display:block}
a{color:var(--c-lien);text-decoration-thickness:.08em;text-underline-offset:.18em}
a:hover{color:var(--c-lien-survol)}
:focus-visible{outline:3px solid var(--c-focus);outline-offset:2px}
h1,h2,h3,h4{font-family:var(--f-titre);font-weight:var(--g-titre);line-height:var(--interligne-titre);color:var(--c-titre);letter-spacing:var(--approche-titre);margin:0 0 .5em}
.saut{position:absolute;left:-9999px;top:0;background:var(--c-accent);color:var(--c-sur-accent);padding:.6rem 1rem;z-index:20}
.saut:focus{left:1rem}
.cadre{width:100%;max-width:var(--l-cadre);margin-inline:auto;padding-inline:var(--gouttiere)}

/* — en-tête — */
.bandeau{background:var(--c-bandeau);color:var(--c-sur-bandeau);border-bottom:var(--trait-bandeau);position:relative;z-index:5}
.bandeau-in{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:var(--h-bandeau)}
.logo{display:inline-flex;align-items:center;color:inherit;text-decoration:none}
.logo img{height:var(--h-logo);width:auto}
.logo-texte{font-family:var(--f-titre);font-weight:var(--g-titre);font-size:1.25rem}
.menu summary{list-style:none;cursor:pointer;min-height:44px;display:inline-flex;align-items:center;padding:.4rem .9rem;border:var(--trait);border-radius:var(--r-petit);font-weight:600}
.menu summary::-webkit-details-marker{display:none}
.menu-nav ul{list-style:none;margin:0;padding:0}
.menu-nav a{display:block;padding:.65rem .2rem;color:inherit;text-decoration:none;font-weight:var(--g-nav);font-size:var(--t-nav)}
.menu-nav a[aria-current="page"],.menu-nav a:hover{color:var(--c-nav-actif)}
.menu[open] .menu-nav{position:absolute;left:0;right:0;top:100%;background:var(--c-bandeau);padding:.5rem var(--gouttiere) 1rem;border-bottom:var(--trait-bandeau)}
.menu-large{display:none}
@media (min-width:1000px){
  .menu{display:none}
  .menu-large{display:block}
  .menu-large ul{display:flex;flex-wrap:wrap;gap:.2rem 1.4rem;justify-content:flex-end}
}


/* — tête de page — */
.tete{background:var(--c-tete);color:var(--c-sur-tete);padding-block:var(--e-6) var(--e-7)}
.tete h1{font-size:var(--t-h1);color:var(--c-sur-tete-titre);max-width:24ch}
.tete .chapo{font-size:var(--t-chapo);max-width:60ch;color:var(--c-sur-tete-doux);margin:0 0 1rem}
.sur{font-size:var(--t-petite);text-transform:var(--casse-sur);letter-spacing:var(--approche-sur);font-weight:700;margin:0 0 .6rem}
.sur a{color:var(--c-sur);text-decoration:none}
.tete-grille{display:grid;gap:var(--e-5)}
.tete-visuel{border-radius:var(--r);overflow:hidden;box-shadow:var(--ombre)}
.tete-visuel img{width:100%;aspect-ratio:16/9;object-fit:cover}
@media (min-width:1000px){.tete-img .tete-grille{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:center}}
.chemin ol{list-style:none;margin:0 0 1.2rem;padding:0;display:flex;flex-wrap:wrap;gap:.3rem;font-size:var(--t-petite)}
.chemin li+li::before{content:var(--sep-chemin);margin-right:.3rem;opacity:.6}
.chemin a{color:inherit}
.infos{display:flex;flex-wrap:wrap;gap:.3rem 1.2rem;font-size:var(--t-petite);color:var(--c-sur-tete-doux);margin:0}
.infos a{color:inherit;font-weight:700}

/* — corps — */
.corps{padding-block:var(--e-6) var(--e-7)}
.prose{width:100%;max-width:none;overflow-wrap:break-word}
.prose > *{max-width:none}
.prose h2{font-size:var(--t-h2);margin-top:1.6em}
.prose h3{font-size:var(--t-h3);margin-top:1.3em}
.prose p,.prose li{margin:0 0 1em}
.prose ul,.prose ol{padding-left:1.3em}
.prose blockquote{margin:1.5em 0;padding:.8em 1.2em;border-left:4px solid var(--c-accent);background:var(--c-doux)}
.prose table{width:100%;border-collapse:collapse;margin:1.5em 0;font-size:.95em;display:block;overflow-x:auto}
.prose th,.prose td{border:1px solid var(--c-ligne);padding:.55em .7em;text-align:left;vertical-align:top}
.prose th{background:var(--c-doux)}
.prose img{border-radius:var(--r-petit)}
.illus{margin:1.5em 0}.illus figcaption{font-size:var(--t-petite);color:var(--c-gris);margin-top:.4em}
.essentiel,.plan,.note,.relais,.questions,.signature{border-radius:var(--r);margin:1.6em 0}
.essentiel{background:var(--c-doux);padding:1.1rem 1.4rem;border:var(--trait)}
.essentiel-t,.plan-t,.note-t,.relais-t{font-family:var(--f-titre);font-weight:var(--g-titre);margin:0 0 .5rem;font-size:1.1rem}
.essentiel ul{margin:0}
.plan{border:var(--trait);padding:1rem 1.4rem}
.plan ol{margin:0;column-gap:2rem}
@media (min-width:700px){.plan ol{columns:var(--plan-colonnes)}}
.plan li{break-inside:avoid;margin-bottom:.35em}
.note{background:var(--c-note);padding:1.1rem 1.4rem;border-left:5px solid var(--c-accent)}
.note > :last-child{margin-bottom:0}
.questions details{border-bottom:1px solid var(--c-ligne);padding:.7rem 0}
.questions summary{cursor:pointer;font-weight:700;min-height:44px;display:flex;align-items:center}
.questions details p{margin:.5rem 0 0}
.relais{border:var(--trait);padding:1rem 1.4rem;background:var(--c-carte)}
.relais ul{list-style:none;padding:0;margin:0 0 .7rem;display:flex;flex-wrap:wrap;gap:.5rem}
.relais li a{display:inline-flex;min-height:44px;align-items:center;padding:.3rem .9rem;border-radius:var(--r-pilule);border:1px solid var(--c-ligne);text-decoration:none;color:var(--c-texte)}
.relais-md{margin:0;font-size:var(--t-petite)}
.relais-md button{min-height:44px;margin-left:.5rem;padding:.3rem .8rem;border:1px solid var(--c-ligne);border-radius:var(--r-petit);background:var(--c-fond);color:var(--c-texte);font:inherit;cursor:pointer}
.relais-note{font-size:var(--t-mini);color:var(--c-gris);margin:.5rem 0 0}
.signature{display:flex;gap:1rem;align-items:flex-start;padding:1.1rem 1.4rem;background:var(--c-doux)}
.signature p{margin:0}
.signature-nom{font-weight:700}
.pastille{flex:none;display:inline-grid;place-items:center;width:3.2rem;height:3.2rem;border-radius:var(--r-pastille);background:var(--c-accent);color:var(--c-sur-accent);font-family:var(--f-titre);font-weight:var(--g-titre);font-size:1.3rem;margin:0}
.pastille-xl{width:6rem;height:6rem;font-size:2.6rem}
.tete-auteur-in{display:flex;gap:1.5rem;align-items:center}

/* — cartes et grilles — */
.titre-bloc{font-size:var(--t-h2-bloc);margin-bottom:1.2rem}
.titre-ligne{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem 1rem}
.grille{display:grid;gap:var(--e-5);grid-template-columns:repeat(auto-fill,minmax(min(100%,var(--l-carte)),1fr))}
.vignette{background:var(--c-carte);border:var(--trait-carte);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--ombre-carte);transition:transform .2s ease}
.vignette:hover{transform:translateY(-3px)}
.vignette-img img{width:100%;aspect-ratio:16/10;object-fit:cover}
.vignette-txt{padding:1rem 1.1rem 1.2rem}
.vignette-meta{display:flex;flex-wrap:wrap;gap:.6rem;font-size:var(--t-mini);text-transform:var(--casse-sur);letter-spacing:var(--approche-sur);color:var(--c-gris);margin:0 0 .5rem}
.vignette-meta span{color:var(--c-sur);font-weight:700}
.vignette h3{font-size:var(--t-h3-carte);margin:0 0 .5rem}
.vignette h3 a{color:var(--c-titre);text-decoration:none}
.vignette h3 a:hover{text-decoration:underline}
.vignette p{margin:0;font-size:var(--t-petite);color:var(--c-gris)}
.liste,.suite,.recents,.themes,.presentation{padding-block:var(--e-6)}
.suite{background:var(--c-doux)}
.vide{color:var(--c-gris)}
.lien-suite{font-weight:700}
.lien-suite::after{content:" →"}
.bouton{display:inline-flex;align-items:center;min-height:48px;padding:.6rem 1.4rem;border-radius:var(--r-bouton);background:var(--c-accent);color:var(--c-sur-accent);text-decoration:none;font-weight:700}
.bouton:hover{color:var(--c-sur-accent);filter:brightness(1.06)}

/* — accueil — */
.une{background:var(--c-une);color:var(--c-sur-une);padding-block:var(--e-6) var(--e-7)}
.une-grille{display:grid;gap:var(--e-5);align-items:center}
.une h1{font-size:var(--t-h1-une);color:var(--c-sur-une-titre);max-width:20ch}
.une .chapo{font-size:var(--t-chapo);max-width:58ch}
.une .sur{color:var(--c-sur-une-accent)}
.une-media{border-radius:var(--r);overflow:hidden;box-shadow:var(--ombre)}
.une-media img{width:100%;aspect-ratio:16/10;object-fit:cover}
.une-actions{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;margin-top:1.4rem}
.une .lien-suite{color:inherit}
@media (min-width:1000px){.une-grille{grid-template-columns:var(--une-colonnes)}.une-media{order:var(--une-ordre-media)}}
@media (prefers-reduced-motion:no-preference){
  .media-anime img{animation:var(--anim-une);transform-origin:var(--anim-origine)}
}
.themes-liste{list-style:none;margin:0;padding:0;display:grid;gap:var(--e-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,15rem),1fr))}
.themes-liste a{display:flex;flex-direction:column;height:100%;padding:0 0 1rem;border-radius:var(--r);background:var(--c-carte);border:var(--trait-carte);text-decoration:none;color:var(--c-texte);overflow:hidden}
.themes-img img{width:100%;aspect-ratio:3/2;object-fit:cover}
.themes-nom{font-family:var(--f-titre);font-weight:var(--g-titre);font-size:1.15rem;padding:.8rem 1rem 0}
.themes-acc{font-size:var(--t-petite);color:var(--c-gris);padding:.3rem 1rem 0}
.themes-nb{font-size:var(--t-mini);color:var(--c-sur);padding:.5rem 1rem 0;font-weight:700}
.presentation{background:var(--c-doux)}
.presentation-grille{display:grid;gap:var(--e-6)}
@media (min-width:1000px){.presentation-grille{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);align-items:start}}
.equipe .signature{background:var(--c-carte);margin:0 0 1rem}

/* — 404 — */
.tete-404 .cadre{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}
.code-404{font-family:var(--f-titre);font-weight:var(--g-titre);font-size:clamp(4rem,10vw,8rem);line-height:1;margin:0;color:var(--c-accent)}

/* — pied — */
.socle{background:var(--c-socle);color:var(--c-sur-socle);padding-block:var(--e-6) var(--e-5);margin-top:var(--e-6)}
.socle a{color:inherit}
.socle-haut{display:grid;gap:var(--e-5)}
@media (min-width:1000px){.socle-haut{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}}
.socle-nom{font-family:var(--f-titre);font-weight:var(--g-titre);font-size:1.3rem;margin:0 0 .3rem}
.socle-liens{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(12rem,1fr));gap:.2rem 1rem}
.socle-liens a{display:inline-flex;min-height:44px;align-items:center}
.socle-bas{border-top:1px solid var(--c-socle-ligne);margin-top:var(--e-5);padding-top:var(--e-4);font-size:var(--t-mini);opacity:.9}
.socle-bas p{margin:0 0 .4rem;max-width:none}

@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
