/*
Theme Name: Le Kiosque
Theme URI: https://example.com/le-kiosque
Author: Conçu pour vous
Description: Thème média minimaliste et éditorial. Articles tout-texte (archives), rubrique « C'était comme aujourd'hui », recherche par mot / année / mois, encarts publicitaires avec gabarits dimensionnés, pagination.
Version: 1.4.0
Requires at least: 6.0
Tested up to: 6.5
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: kiosque
*/
:root{
  --papier:#FBFAF7; --papier-2:#F3F0E9; --encre:#16151A; --ardoise:#5B5F6B;
  --filet:#E4E1D9; --filet-fort:#CFCABE; --accent:#E2483D; --accent-fonce:#B5331F;
  --serif:"Lora", Georgia, "Times New Roman", serif;
  --grotesque:"Archivo", "Helvetica Neue", Arial, sans-serif;
  --pas:clamp(1rem, 0.6rem + 1.6vw, 1.6rem);
  --largeur:1180px; --largeur-texte:720px; --rayon:2px;
}
*,*::before,*::after{ box-sizing:border-box; }
html{ -webkit-text-size-adjust:100%; scroll-behavior:smooth; }
body{ margin:0; background:var(--papier); color:var(--encre); font-family:var(--serif); font-size:1.075rem; line-height:1.65; -webkit-font-smoothing:antialiased; }
img{ max-width:100%; height:auto; display:block; }
a{ color:var(--encre); text-decoration:none; }
a:hover{ color:var(--accent); }
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{ outline:2px solid var(--accent); outline-offset:3px; }
.eyebrow{ font-family:var(--grotesque); text-transform:uppercase; letter-spacing:.18em; font-size:.72rem; font-weight:600; color:var(--ardoise); }
h1,h2,h3,h4{ font-family:var(--serif); font-weight:600; line-height:1.08; letter-spacing:-.015em; }
h1{ font-size:clamp(2.4rem,1.5rem + 3.4vw,4rem); }
h2{ font-size:clamp(1.7rem,1.1rem + 2.2vw,2.7rem); }
h3{ font-size:clamp(1.3rem,1rem + 1vw,1.7rem); }
.contenu{ width:min(100% - 2*var(--pas), var(--largeur)); margin-inline:auto; }
.skip-link{ position:absolute; left:-999px; }
.skip-link:focus{ left:1rem; top:1rem; background:var(--encre); color:var(--papier); padding:.6rem 1rem; z-index:999; }
.site-header{ border-bottom:2px solid var(--encre); }
.dateline{ border-bottom:1px solid var(--filet); font-family:var(--grotesque); text-transform:uppercase; letter-spacing:.16em; font-size:.72rem; color:var(--ardoise); }
.dateline .contenu{ display:flex; justify-content:space-between; gap:1rem; padding:.55rem 0; flex-wrap:wrap; }
.masthead{ display:flex; align-items:flex-end; justify-content:space-between; gap:1.5rem; padding:1.4rem 0 1.1rem; flex-wrap:wrap; }
.site-title{ margin:0; font-size:clamp(2.1rem,1.1rem + 4vw,3.6rem); letter-spacing:-.03em; font-weight:600; }
.site-title a{ color:var(--encre); }
.site-description{ margin:.1rem 0 0; color:var(--ardoise); font-style:italic; font-size:1rem; }
.main-navigation{ border-top:1px solid var(--filet); border-bottom:1px solid var(--filet); }
.main-navigation ul{ list-style:none; display:flex; flex-wrap:wrap; gap:1.4rem; margin:0; padding:.7rem 0; font-family:var(--grotesque); text-transform:uppercase; letter-spacing:.12em; font-size:.78rem; font-weight:600; }
.main-navigation a{ color:var(--encre); }
.menu-toggle{ display:none; }
.layout{ display:grid; grid-template-columns:1fr; gap:calc(var(--pas)*1.6); padding-block:calc(var(--pas)*1.6); }
@media(min-width:980px){ .layout.has-sidebar{ grid-template-columns:minmax(0,1fr) 320px; } }
.fil{ display:grid; grid-template-columns:repeat(auto-fill,minmax(300px,1fr)); gap:0; column-gap:calc(var(--pas)*1.8); border-top:2px solid var(--encre); }
.fil > .bloc:first-child{ border-top:0; }
.bloc{ padding:1.2rem 0 1.4rem; border-top:1px solid var(--filet); }
.bloc__surtitre{ display:inline-block; margin-bottom:.5rem; }
.bloc__surtitre a{ font-family:var(--grotesque); text-transform:uppercase; letter-spacing:.16em; font-weight:700; font-size:.7rem; color:var(--accent); }
.bloc__titre{ margin:0 0 .45rem; font-size:clamp(1.45rem,1.1rem + 1.1vw,2rem); line-height:1.1; }
.bloc__titre a{ color:var(--encre); background-image:linear-gradient(var(--accent),var(--accent)); background-size:0 2px; background-repeat:no-repeat; background-position:0 100%; transition:background-size .3s; }
.bloc__titre a:hover{ color:var(--encre); background-size:100% 2px; }
.bloc__meta{ font-family:var(--grotesque); text-transform:uppercase; letter-spacing:.12em; font-size:.68rem; color:var(--ardoise); margin:0 0 .55rem; }
.bloc__chapo{ margin:0; color:#33313a; font-size:1.02rem; line-height:1.55; }
.affiche__meta{ font-family:var(--grotesque); text-transform:uppercase; letter-spacing:.12em; font-size:.72rem; color:var(--ardoise); }
.affiche__extrait{ color:#33313a; font-size:1.05rem; line-height:1.6; }
.une{ grid-column:1 / -1; border-top:3px solid var(--encre); padding-top:1.3rem; margin-bottom:.4rem; }
.une .bloc__titre{ font-size:clamp(2.2rem,1.4rem + 3.2vw,3.6rem); letter-spacing:-.02em; }
.une .bloc__chapo{ font-size:1.18rem; line-height:1.55; max-width:46ch; }
@media(min-width:820px){ .une{ display:grid; grid-template-columns:1.6fr 1fr; gap:calc(var(--pas)*1.8); align-items:start; } .une .bloc__chapo{ border-left:2px solid var(--filet-fort); padding-left:1.1rem; } }
.article-single{ max-width:var(--largeur-texte); margin-inline:auto; }
.article-single .entry-header{ text-align:left; margin-bottom:1.8rem; padding-bottom:1.4rem; border-bottom:1px solid var(--filet); }
.article-single .entry-title{ margin:.5rem 0 .7rem; font-size:clamp(2.3rem,1.5rem + 3vw,3.6rem); line-height:1.06; letter-spacing:-.02em; }
.article-hero{ margin:1.6rem 0; border:1px solid var(--filet); border-radius:var(--rayon); overflow:hidden; }
.entry-content{ font-size:1.18rem; line-height:1.72; }
.entry-content > p:first-of-type{ font-size:1.28rem; line-height:1.6; color:#26252b; }
.entry-content p{ margin:0 0 1.35rem; }
.entry-content blockquote{ margin:1.6rem 0; padding-left:1.2rem; border-left:3px solid var(--accent); font-style:italic; color:#34323a; }
.entry-content a{ text-decoration:underline; text-decoration-color:var(--accent); text-underline-offset:3px; }
.ephemeride{ border:1px solid var(--filet); border-radius:var(--rayon); background:#fff; }
.ephemeride__tete{ display:flex; align-items:center; gap:.7rem; padding:1rem 1.1rem; border-bottom:1px dashed var(--filet-fort); }
.ephemeride__tampon{ flex:0 0 auto; width:56px; text-align:center; border:1.5px solid var(--accent); border-radius:var(--rayon); color:var(--accent); line-height:1; padding:.45rem 0; }
.ephemeride__tampon .j{ display:block; font-family:var(--grotesque); font-weight:700; font-size:1.5rem; }
.ephemeride__tampon .m{ display:block; font-family:var(--grotesque); text-transform:uppercase; letter-spacing:.1em; font-size:.6rem; }
.ephemeride__titre{ margin:0; font-size:1.15rem; }
.ephemeride__titre small{ display:block; font-family:var(--grotesque); text-transform:uppercase; letter-spacing:.14em; font-size:.62rem; color:var(--ardoise); }
.ephemeride__liste{ list-style:none; margin:0; padding:.4rem 0; }
.ephemeride__liste li{ padding:.7rem 1.1rem; border-bottom:1px solid var(--filet); }
.ephemeride__liste li:last-child{ border-bottom:0; }
.ephemeride__annee{ font-family:var(--grotesque); font-weight:700; color:var(--accent); font-size:.82rem; letter-spacing:.05em; }
.ephemeride__lien{ display:block; font-size:1.02rem; line-height:1.35; margin-top:.15rem; }
.ephemeride__vide{ padding:1.1rem; color:var(--ardoise); font-style:italic; }
.recherche{ border:1px solid var(--filet); border-radius:var(--rayon); background:#fff; padding:1rem; }
.recherche__rangee{ display:flex; gap:.6rem; flex-wrap:wrap; }
.recherche input[type=search]{ flex:1 1 200px; }
.recherche input,.recherche select{ font-family:var(--grotesque); font-size:.9rem; padding:.6rem .7rem; border:1px solid var(--filet-fort); border-radius:var(--rayon); background:var(--papier); color:var(--encre); }
.recherche__filtres{ display:flex; gap:.6rem; margin-top:.6rem; flex-wrap:wrap; }
.recherche__filtres select{ flex:1 1 120px; }
.bouton{ font-family:var(--grotesque); text-transform:uppercase; letter-spacing:.12em; font-size:.78rem; font-weight:600; background:var(--encre); color:var(--papier); border:0; padding:.65rem 1.2rem; border-radius:var(--rayon); cursor:pointer; }
.bouton:hover{ background:var(--accent); }
.encart{ margin:calc(var(--pas)*1.4) auto; text-align:center; }
.encart__cadre{ display:inline-block; max-width:100%; border:1px solid var(--filet); border-radius:var(--rayon); overflow:hidden; line-height:0; }
.encart__mention{ display:block; font-family:var(--grotesque); text-transform:uppercase; letter-spacing:.2em; font-size:.58rem; color:var(--filet-fort); margin-bottom:.4rem; }
.encart__gabarit{ display:grid; place-items:center; gap:.4rem; background:repeating-linear-gradient(45deg, var(--papier-2), var(--papier-2) 12px, #efece4 12px, #efece4 24px); border:1px dashed var(--filet-fort); color:var(--ardoise); text-align:center; }
.encart__gabarit b{ font-family:var(--grotesque); font-size:1.05rem; letter-spacing:.04em; color:var(--encre); }
.encart__gabarit span{ font-family:var(--grotesque); text-transform:uppercase; letter-spacing:.16em; font-size:.62rem; }
.widget{ margin-bottom:calc(var(--pas)*1.6); }
.widget-title{ font-family:var(--grotesque); text-transform:uppercase; letter-spacing:.16em; font-size:.78rem; padding-bottom:.5rem; margin:0 0 .9rem; border-bottom:2px solid var(--encre); }
.widget ul{ list-style:none; margin:0; padding:0; }
.widget li{ padding:.5rem 0; border-bottom:1px solid var(--filet); font-size:.98rem; }
.pagination{ margin:calc(var(--pas)*2) 0; }
.pagination .nav-links{ display:flex; flex-wrap:wrap; gap:.4rem; justify-content:center; align-items:center; }
.pagination .page-numbers{ font-family:var(--grotesque); font-size:.85rem; min-width:2.4rem; text-align:center; padding:.55rem .75rem; border:1px solid var(--filet-fort); border-radius:var(--rayon); color:var(--encre); }
.pagination .page-numbers:hover{ border-color:var(--encre); }
.pagination .page-numbers.current{ background:var(--encre); color:var(--papier); border-color:var(--encre); }
.pagination .page-numbers.dots{ border:0; }
.site-footer{ border-top:2px solid var(--encre); margin-top:calc(var(--pas)*2); padding:calc(var(--pas)*1.6) 0; }
.site-footer .contenu{ display:flex; justify-content:space-between; gap:1.5rem; flex-wrap:wrap; font-family:var(--grotesque); font-size:.78rem; text-transform:uppercase; letter-spacing:.12em; color:var(--ardoise); }
@media(max-width:760px){
  .menu-toggle{ display:inline-flex; align-items:center; gap:.5rem; background:none; border:1px solid var(--filet-fort); border-radius:var(--rayon); font-family:var(--grotesque); text-transform:uppercase; letter-spacing:.12em; font-size:.75rem; padding:.55rem .9rem; cursor:pointer; margin:.6rem 0; }
  .main-navigation ul{ display:none; flex-direction:column; gap:.2rem; }
  .main-navigation.is-open ul{ display:flex; }
}
@media(prefers-reduced-motion:reduce){ *{ animation:none !important; transition:none !important; scroll-behavior:auto !important; } }
.screen-reader-text{ position:absolute !important; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.zone-principale{ min-width:0; }
