/* L'Astrologie expliquée — ciel.css
   Convention : une classe par élément, préfixée lmi-, sans niveau
   supplémentaire ; les variantes passent par des attributs data-, ce qui
   évite les noms à rallonge et se lit dans le HTML.
   Titres : Fraunces. Texte : Figtree.
   Ciel de nuit en bandeaux, ivoire pour le texte, or et ambre en accents. */

:root{
  --nuit:#141738;
  --nuit-clair:#232852;
  --nuit-voile:rgba(20,23,56,.72);
  --ivoire:#FCFAF5;
  --creme:#F4EEE2;
  --encre:#1C1F2E;
  --encre-douce:#3A3F55;
  --gris:#6B7087;
  --trait:#DED6C6;
  --trait-nuit:rgba(236,230,216,.22);
  --or:#C08A1E;
  --ambre:#E3B251;
  --clair:#ECE6D8;
  --titre:"Fraunces","Iowan Old Style",Georgia,serif;
  --courant:"Figtree","Segoe UI",Arial,sans-serif;
  --arrondi:10px;
  --colonne:1180px;
  --ombre:0 1px 2px rgba(20,23,56,.06),0 14px 30px -20px rgba(20,23,56,.45);
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:5.5rem}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
body{margin:0;background:var(--ivoire);color:var(--encre);font-family:var(--courant);font-size:1.05rem;line-height:1.7}
img{max-width:100%;height:auto;display:block}
a{color:var(--or);text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--nuit-clair)}
:focus-visible{outline:3px solid var(--ambre);outline-offset:2px}
h1,h2,h3,h4{font-family:var(--titre);font-weight:600;line-height:1.16;margin:0 0 .5em;color:var(--encre)}
h1{font-size:clamp(2rem,4.3vw,3rem)}
h2{font-size:clamp(1.5rem,2.7vw,2.1rem)}
h3{font-size:1.2rem}
p{margin:0 0 1.1em}
sup{font-size:.66em}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}

.lmi-echappee{position:absolute;left:-999px;top:0;z-index:99;background:var(--ambre);color:var(--nuit);padding:.6rem 1.1rem}
.lmi-echappee:focus{left:0;color:var(--nuit)}

.lmi-largeur{width:min(100% - 2.5rem,var(--colonne));margin-inline:auto}
.lmi-largeur-serree{max-width:760px}
.lmi-corps{display:block}
.lmi-glyphe{display:block;flex:0 0 auto}

/* ───── En-tête ───── */
.lmi-entete{position:sticky;top:0;z-index:40;background:var(--nuit);color:var(--clair)}
.lmi-entete-haut{display:flex;align-items:center;gap:1.2rem;padding:.75rem 0;flex-wrap:wrap}
.lmi-enseigne{margin:0;flex:1 1 auto}
.lmi-enseigne a{display:inline-flex;align-items:center;gap:.7rem;text-decoration:none;color:inherit}
.lmi-enseigne-astre{color:var(--ambre);flex:0 0 auto;display:block}
.lmi-enseigne-mots{display:block;min-width:0}
.lmi-enseigne-nom{display:block;font-family:var(--titre);font-size:1.35rem;font-weight:600;line-height:1.1;color:#FDFBF6}
.lmi-enseigne-dit{display:block;font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:rgba(236,230,216,.68)}

.lmi-poignee{display:none;align-items:center;gap:.5rem;background:var(--ambre);color:var(--nuit);border:0;border-radius:var(--arrondi);padding:.52rem 1rem;font-family:var(--courant);font-size:.93rem;font-weight:600;cursor:pointer}
.lmi-poignee-traits{display:inline-grid;gap:3px}
.lmi-poignee-traits i{display:block;width:15px;height:2px;background:currentColor}

.lmi-chercher{display:flex;align-items:center;gap:.4rem;flex:0 0 auto}
.lmi-chercher input{width:11rem;border:1px solid var(--trait-nuit);background:rgba(255,255,255,.07);border-radius:var(--arrondi);padding:.45rem .85rem;font:inherit;font-size:.92rem;color:#FDFBF6}
.lmi-chercher input::placeholder{color:rgba(236,230,216,.55)}
.lmi-chercher button{border:1px solid var(--ambre);background:transparent;color:var(--ambre);border-radius:var(--arrondi);padding:.45rem .9rem;font:inherit;font-size:.88rem;font-weight:600;cursor:pointer}
.lmi-chercher button:hover{background:var(--ambre);color:var(--nuit)}

.lmi-panneau{border-top:1px solid var(--trait-nuit);background:var(--nuit)}
.lmi-menu{display:flex;align-items:center;gap:1.6rem;list-style:none;margin:0;padding:0;flex-wrap:wrap}
.lmi-menu a{display:block;padding:.65rem 0;font-size:.85rem;letter-spacing:.09em;text-transform:uppercase;font-weight:600;text-decoration:none;color:rgba(236,230,216,.86);border-bottom:2px solid transparent}
.lmi-menu a:hover,.lmi-menu li[data-actif]>a,.lmi-menu li.current-cat>a{color:var(--ambre);border-bottom-color:var(--ambre)}

@media(max-width:940px){
  .lmi-poignee{display:inline-flex}
  .lmi-chercher{flex-basis:100%}
  .lmi-chercher input{width:100%}
  .lmi-panneau{display:none}
  body[data-panneau-ouvert] .lmi-panneau{display:block;max-height:calc(100dvh - 6rem);overflow-y:auto;overscroll-behavior:contain}
  .lmi-menu{flex-direction:column;align-items:stretch;gap:0}
  .lmi-menu a{padding:.75rem .15rem;border-bottom:1px solid var(--trait-nuit)}
}

/* ───── Boutons ───── */
.lmi-bouton{display:inline-block;background:var(--or);color:#fff;border:1px solid var(--or);border-radius:var(--arrondi);padding:.7rem 1.4rem;font-size:.98rem;font-weight:600;text-decoration:none}
.lmi-bouton:hover{background:#A8760F;border-color:#A8760F;color:#fff}
.lmi-bouton[data-creux]{background:transparent;color:var(--nuit-clair);border-color:var(--nuit-clair)}
.lmi-bouton[data-creux]:hover{background:var(--nuit-clair);color:#fff}

/* ───── La une ───── */
.lmi-une{background:linear-gradient(170deg,var(--nuit) 0%,var(--nuit-clair) 62%,#36305C 100%);color:var(--clair);padding:3.4rem 0 3.6rem}
.lmi-une-rang{display:grid;grid-template-columns:1.04fr .96fr;gap:3rem;align-items:center}
/* Sans illustration livrée, le texte prend toute la largeur plutôt que de
   laisser une colonne vide. */
.lmi-une-rang[data-sans-image]{grid-template-columns:1fr}
.lmi-une-rang[data-sans-image] .lmi-une-dit{max-width:72ch}
.lmi-une-mot{min-width:0}
.lmi-une h1{color:#FDFBF6;margin-bottom:.45em}
.lmi-une-plume{font-size:.88rem;font-style:italic;color:var(--ambre);margin:0 0 .85rem}
.lmi-une-dit{font-size:1.07rem;color:rgba(236,230,216,.92);max-width:58ch}
.lmi-une-boutons{display:flex;gap:.8rem;flex-wrap:wrap;margin:1.7rem 0 0}
.lmi-une .lmi-bouton[data-creux]{color:var(--ambre);border-color:var(--ambre)}
.lmi-une .lmi-bouton[data-creux]:hover{background:var(--ambre);color:var(--nuit)}
.lmi-une-image{margin:0}
.lmi-une-image img{border-radius:var(--arrondi);box-shadow:0 20px 48px -24px rgba(0,0,0,.8)}
.lmi-une .lmi-credit,.lmi-une .lmi-credit a{color:rgba(236,230,216,.6)}
@media(max-width:940px){.lmi-une-rang{grid-template-columns:1fr;gap:2rem}.lmi-une{padding:2.3rem 0 2.6rem}}

.lmi-credit{margin:.5rem 0 0;font-size:.75rem;color:var(--gris)}
.lmi-credit a{color:inherit}

/* ───── Bandes ───── */
.lmi-bande{padding:3.9rem 0}
.lmi-bande[data-ton="creme"]{background:var(--creme)}
.lmi-bande[data-ton="nuit"]{background:var(--nuit);color:var(--clair)}
.lmi-bande[data-ton="nuit"] .lmi-bande-titre,.lmi-bande[data-ton="nuit"] h2{color:#FDFBF6}
.lmi-bande[data-ton="nuit"] .lmi-bande-chapo{color:rgba(236,230,216,.78)}
.lmi-bande-titre{margin-bottom:1.3rem}
.lmi-bande-chapo{max-width:70ch;color:var(--gris);margin-bottom:2rem}
.lmi-apres{margin:1.8rem 0 0}

/* ───── Frise ───── */
.lmi-frise{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:1.3rem}
.lmi-frise li{position:relative;background:var(--ivoire);border:1px solid var(--trait);border-radius:var(--arrondi);padding:1.3rem 1.25rem 1.35rem;box-shadow:var(--ombre)}
.lmi-frise li::before{content:"";position:absolute;left:1.25rem;right:1.25rem;top:0;height:3px;background:linear-gradient(90deg,var(--or),var(--ambre))}
.lmi-frise-date{display:block;font-size:.78rem;letter-spacing:.11em;text-transform:uppercase;color:var(--or);font-weight:700;margin-bottom:.4rem}
.lmi-frise h3{margin:0 0 .35rem;color:var(--nuit-clair)}
.lmi-frise p{margin:0;font-size:.95rem;color:var(--encre-douce)}
@media(max-width:1000px){.lmi-frise{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.lmi-frise{grid-template-columns:1fr}}

/* ───── Dossiers ───── */
.lmi-dossiers{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3rem}
.lmi-dossier{display:flex;flex-direction:column;gap:.45rem;background:rgba(255,255,255,.05);border:1px solid var(--trait-nuit);border-radius:var(--arrondi);padding:1.5rem 1.4rem 1.4rem;text-decoration:none;color:inherit;transition:border-color .15s,transform .15s}
.lmi-dossier:hover{border-color:var(--ambre);transform:translateY(-2px);color:inherit}
.lmi-dossier-signe{color:var(--ambre);margin-bottom:.35rem}
.lmi-dossier-nom{font-family:var(--titre);font-weight:600;font-size:1.3rem;color:#FDFBF6}
.lmi-dossier-dit{font-size:.94rem;color:rgba(236,230,216,.78)}
.lmi-dossier-compte{font-size:.76rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ambre);margin-top:.3rem}
/* Hors bande de nuit — recherche, 404 — les cartes passent sur fond clair. */
.lmi-bande:not([data-ton="nuit"]) .lmi-dossier{background:var(--ivoire);border-color:var(--trait);box-shadow:var(--ombre)}
.lmi-bande:not([data-ton="nuit"]) .lmi-dossier-nom{color:var(--nuit-clair)}
.lmi-bande:not([data-ton="nuit"]) .lmi-dossier-dit{color:var(--gris)}
.lmi-bande:not([data-ton="nuit"]) .lmi-dossier-signe{color:var(--or)}
.lmi-bande:not([data-ton="nuit"]) .lmi-dossier-compte{color:var(--or)}
@media(max-width:940px){.lmi-dossiers{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.lmi-dossiers{grid-template-columns:1fr}}

/* ───── Lexique ───── */
.lmi-lexique{margin:0 0 1.8rem;display:grid;gap:.9rem}
.lmi-lexique>div{background:var(--creme);border-left:4px solid var(--or);border-radius:0 var(--arrondi) var(--arrondi) 0;padding:1rem 1.2rem}
.lmi-lexique dt{font-family:var(--titre);font-weight:600;font-size:1.14rem;color:var(--nuit-clair);margin-bottom:.15rem}
.lmi-lexique dd{margin:0;font-size:.97rem;color:var(--encre-douce)}
.lmi-remarque{background:var(--ivoire);border:1px solid var(--trait);border-radius:var(--arrondi);padding:1.05rem 1.25rem;margin:0;color:var(--encre-douce)}

/* ───── Grilles et fiches ───── */
.lmi-grille{display:grid;gap:1.35rem}
.lmi-grille[data-colonnes="trois"]{grid-template-columns:repeat(3,1fr)}
.lmi-grille[data-colonnes="quatre"]{grid-template-columns:repeat(4,1fr)}
@media(max-width:1000px){.lmi-grille[data-colonnes="quatre"]{grid-template-columns:repeat(2,1fr)}}
@media(max-width:860px){.lmi-grille[data-colonnes="trois"]{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.lmi-grille[data-colonnes="trois"],.lmi-grille[data-colonnes="quatre"]{grid-template-columns:1fr}}

.lmi-fiche{background:var(--ivoire);border:1px solid var(--trait);border-radius:var(--arrondi);overflow:hidden;box-shadow:var(--ombre);transition:border-color .15s,transform .15s}
.lmi-fiche:hover{border-color:var(--or);transform:translateY(-2px)}
.lmi-fiche[data-nue]{border-top:3px solid var(--or)}
.lmi-fiche-lien{display:flex;flex-direction:column;height:100%;text-decoration:none;color:inherit}
.lmi-fiche-vue{display:block;aspect-ratio:3/2;overflow:hidden;background:var(--creme)}
.lmi-fiche-vue img{width:100%;height:100%;object-fit:cover}
.lmi-fiche-corps{display:block;padding:1rem 1.2rem 1.25rem}
.lmi-fiche-titre{display:block;font-family:var(--titre);font-weight:600;font-size:1.13rem;line-height:1.25;color:var(--encre);margin:.45rem 0 .35rem}
.lmi-fiche:hover .lmi-fiche-titre{color:var(--or)}
.lmi-fiche-dit{display:block;font-size:.92rem;color:var(--gris)}

.lmi-etiquette{display:inline-flex;align-items:center;gap:.35rem;background:var(--creme);color:#7A5A11;border-radius:999px;padding:.18rem .75rem;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;font-weight:700;text-decoration:none}
.lmi-etiquette[data-lien]:hover{background:var(--or);color:#fff}
.lmi-etiquette .lmi-glyphe{width:14px;height:14px}

/* ───── Fil d'Ariane ───── */
.lmi-fil{margin:1.4rem 0 1rem;font-size:.84rem;color:var(--gris)}
.lmi-fil ol{list-style:none;display:flex;flex-wrap:wrap;gap:.25rem .5rem;margin:0;padding:0}
.lmi-fil li+li::before{content:"›";margin-right:.5rem;color:#B3AC9A}
.lmi-fil a{color:var(--gris)}
.lmi-fil a:hover{color:var(--or)}

/* ───── Page ───── */
.lmi-page{display:block}
.lmi-page-titre{margin:.75rem 0 .45rem}
.lmi-page-chapo{font-size:1.1rem;color:var(--encre-douce);margin-bottom:.7rem}
.lmi-page-date{font-size:.86rem;color:var(--gris);margin-bottom:1.6rem}
.lmi-page-date span[data-repris]{color:var(--or)}
.lmi-page-corps{padding-bottom:3.2rem}
.lmi-page-vue{margin:0 0 1.7rem}
.lmi-page-vue img{border-radius:var(--arrondi)}

.lmi-bandeau{margin:0 0 2rem}
.lmi-bandeau img{width:100%;max-height:340px;object-fit:cover}
.lmi-bandeau .lmi-credit{width:min(100% - 2.5rem,var(--colonne));margin-inline:auto;margin-top:.5rem}
@media(min-width:1100px){.lmi-bandeau img{width:min(100% - 2.5rem,var(--colonne));margin-inline:auto;border-radius:var(--arrondi)}}

.lmi-sommaire{background:var(--creme);border:1px solid var(--trait);border-radius:var(--arrondi);padding:1.05rem 1.25rem;margin:0 0 2rem}
.lmi-sommaire-titre{font-family:var(--titre);font-weight:600;font-size:1.02rem;color:var(--nuit-clair);margin:0 0 .4rem}
.lmi-sommaire ol{margin:0;padding-left:1.15rem;font-size:.95rem}
.lmi-sommaire li{margin-bottom:.26rem}
.lmi-sommaire a{color:var(--encre-douce);text-decoration:none;border-bottom:1px solid var(--trait)}
.lmi-sommaire a:hover{color:var(--or);border-bottom-color:var(--or)}

.lmi-texte h2{margin:2.3rem 0 .6rem}
.lmi-texte h3{margin:1.75rem 0 .4rem;color:var(--nuit-clair)}
.lmi-texte ul,.lmi-texte ol{padding-left:1.3rem;margin:0 0 1.15em}
.lmi-texte li{margin-bottom:.4rem}
.lmi-texte blockquote{margin:1.5rem 0;padding:.15rem 0 .15rem 1.2rem;border-left:3px solid var(--or);color:var(--encre-douce);font-style:italic}
.lmi-texte img{margin:1.5rem auto;border-radius:var(--arrondi)}
.lmi-texte figure{margin:1.5rem 0}
.lmi-texte figcaption{font-size:.84rem;color:var(--gris);margin-top:.4rem}
.lmi-texte table{width:100%;border-collapse:collapse;margin:1.5rem 0;font-size:.97rem}
.lmi-texte th,.lmi-texte td{border:1px solid var(--trait);padding:.58rem .8rem;text-align:left;vertical-align:top}
.lmi-texte th{background:var(--creme);font-family:var(--titre);font-weight:600;color:var(--nuit-clair)}
.lmi-texte tbody tr:nth-child(even){background:#FBF7EE}
.lmi-pose{text-decoration-color:var(--ambre)}

.lmi-questions{margin:2.3rem 0 0;border-top:2px solid var(--or);padding-top:1.25rem}
.lmi-questions h3{font-family:var(--titre);font-weight:600;font-size:1.12rem;color:var(--nuit-clair);margin:1.3rem 0 .3rem}
.lmi-questions h3:first-child{margin-top:0}
.lmi-questions p{color:var(--encre-douce);margin-bottom:.75rem}

.lmi-voisinage{margin:2rem 0 0;padding:.9rem 1.1rem;background:var(--creme);border-left:3px solid var(--or);border-radius:0 var(--arrondi) var(--arrondi) 0;font-size:.94rem}
.lmi-voisinage span{display:block;font-family:var(--titre);font-weight:600;color:#7A5A11;margin-bottom:.22rem}

.lmi-signature{display:flex;gap:1rem;align-items:flex-start;background:var(--nuit);color:var(--clair);border-radius:var(--arrondi);padding:1.2rem 1.3rem;margin:2.5rem 0 0}
.lmi-signature-astre{flex:0 0 auto;color:var(--ambre);display:block}
.lmi-signature-nom{font-family:var(--titre);font-weight:600;font-size:1.16rem;margin:0 0 .1rem;color:#FDFBF6}
.lmi-signature-dit{margin:0;font-size:.93rem;color:rgba(236,230,216,.86)}
.lmi-signature-dit a{color:var(--ambre)}

/* ───── Têtes de dossier et de liste ───── */
.lmi-tete-dossier{position:relative;background:var(--nuit);color:var(--clair);padding:.9rem 0 2.6rem;overflow:hidden}
.lmi-tete-fond{position:absolute;inset:0;z-index:0;display:block}
.lmi-tete-fond img{width:100%;height:100%;object-fit:cover;opacity:.3}
.lmi-tete-dossier .lmi-largeur{position:relative;z-index:1}
.lmi-tete-dossier h1{color:#FDFBF6;margin-bottom:.3em}
.lmi-tete-signe{margin:0 0 .6rem;color:var(--ambre)}
.lmi-tete-dit{max-width:62ch;color:rgba(236,230,216,.9);margin:0}
.lmi-tete-dossier .lmi-fil,.lmi-tete-dossier .lmi-fil a{color:rgba(236,230,216,.76)}
.lmi-tete-dossier .lmi-fil a:hover{color:#fff}
.lmi-tete-dossier .lmi-credit{margin-top:1.1rem;text-align:right;font-size:.72rem}
.lmi-tete-dossier .lmi-credit,.lmi-tete-dossier .lmi-credit a{color:rgba(236,230,216,.62)}
.lmi-tete-dossier[data-sans-fond]{padding-bottom:2.2rem}

.lmi-tete-liste{padding:.5rem 0 1.9rem;border-bottom:1px solid var(--trait)}
.lmi-tete-liste-dit{color:var(--gris);max-width:62ch;margin:0}
.lmi-vide{color:var(--gris);margin-bottom:2rem}

/* ───── Pagination ───── */
.lmi-pagination{margin-top:2.2rem}
.lmi-pagination .nav-links{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center;justify-content:center}
.lmi-pagination .page-numbers{display:inline-block;min-width:2.4rem;text-align:center;padding:.42rem .8rem;border:1px solid var(--trait);border-radius:var(--arrondi);background:var(--ivoire);text-decoration:none;color:var(--encre-douce);font-size:.93rem}
.lmi-pagination .page-numbers:hover{border-color:var(--or);color:var(--or)}
.lmi-pagination .page-numbers.current{background:var(--nuit-clair);border-color:var(--nuit-clair);color:#fff}
.lmi-pagination .screen-reader-text{display:none}

/* ───── Bas de page ───── */
.lmi-pied{background:var(--nuit);color:rgba(236,230,216,.84)}
.lmi-pied-rang{display:grid;grid-template-columns:2fr 1fr 1fr;gap:2.2rem;padding:3rem 0 2.2rem}
.lmi-pied-mot{min-width:0}
.lmi-pied-colonne{min-width:0}
.lmi-pied-nom{font-family:var(--titre);font-weight:600;font-size:1.4rem;color:#FDFBF6;margin:0 0 .45rem}
.lmi-pied-mot p{max-width:46ch}
.lmi-pied-adresse a{color:var(--ambre)}
.lmi-pied-titre{font-family:var(--titre);font-weight:600;font-size:1.06rem;color:#FDFBF6;margin:0 0 .6rem}
.lmi-liens-bas{list-style:none;margin:0;padding:0}
.lmi-liens-bas li{margin-bottom:.4rem}
.lmi-liens-bas a{color:rgba(236,230,216,.84);text-decoration:none;border-bottom:1px solid transparent}
.lmi-liens-bas a:hover{color:#fff;border-bottom-color:var(--ambre)}
.lmi-pied-bas{border-top:1px solid var(--trait-nuit);padding:1rem 0 1.5rem;font-size:.85rem}
.lmi-pied-bas p{margin:0;color:rgba(236,230,216,.6)}
@media(max-width:860px){.lmi-pied-rang{grid-template-columns:1fr;gap:1.7rem;padding:2.2rem 0 1.6rem}}
