/*
Theme Name: Côté Malin Gazette
Author: Seobooster
Version: 1.0.0
Text Domain: cm-gazette
*/

/* ===== Fondations ===== */
:root{
  --fond:#f3efe2;
  --carte:#ffffff;
  --pastel:#e5ded0;
  --encre:#10333a;
  --accent:#e8a400;
  --accent-fonce:#8a5a08;
  --accent-texte:#10333a;
  --sombre:#0b2226;
  --sombre-texte:#f2f7f2;
  --ligne:color-mix(in srgb,var(--encre) 14%,transparent);
  --ombre:0 18px 36px -22px rgba(16,51,58,.35);
  --rayon:22px;
  --rayon-p:14px;
  --serif:"Bitter",Georgia,serif;
  --sans:"Manrope",system-ui,-apple-system,sans-serif;
  color-scheme:light dark;
}
@media(prefers-color-scheme:dark){
  :root{
    --fond:#0d1a1b;
    --carte:#15282a;
    --pastel:#1b3134;
    --encre:#eef4ee;
    --accent:#ffcf4d;
    --accent-fonce:#ffcf4d;
    --accent-texte:#10333a;
    --sombre:#f3efe0;
    --sombre-texte:#10333a;
    --ligne:color-mix(in srgb,var(--encre) 22%,transparent);
    --ombre:0 18px 36px -22px rgba(0,0,0,.65);
  }
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--fond);color:var(--encre);font:16px/1.7 var(--sans);-webkit-font-smoothing:antialiased}
button,input,textarea,select{font:inherit;color:inherit}
a{color:inherit;text-decoration:none}
a:hover{text-decoration:underline;text-underline-offset:4px}
button{cursor:pointer;background:none}
img{display:block;max-width:100%;height:auto}
svg{max-width:100%;display:block}
figure{margin:0}
p{margin:0 0 16px}
h1,h2,h3{font-family:var(--serif);line-height:1.1;font-weight:700;margin:0;letter-spacing:-.006em;text-wrap:balance;overflow-wrap:anywhere}
h1{font-size:clamp(32px,4.6vw,58px)}
h2{font-size:clamp(23px,2.4vw,32px)}
h3{font-size:19px;font-weight:700}
:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
[hidden]{display:none!important}
.mark{background-image:linear-gradient(transparent 62%,color-mix(in srgb,var(--accent) 70%,transparent) 62%);padding:.02em .04em}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font:700 13px/1.4 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--accent-fonce)}
.eyebrow::before{content:"";width:8px;height:8px;border-radius:2px;background:var(--accent);flex-shrink:0}
.skip{position:fixed;top:-100px;left:16px;z-index:200;background:var(--encre);color:var(--fond);padding:12px 18px;border-radius:0 0 10px 10px}
.skip:focus{top:0}
.site-frame{max-width:1280px;margin:0 auto;padding:0 32px}
.btn{display:inline-flex;align-items:center;gap:10px;background:var(--encre);color:var(--fond);padding:14px 22px;border-radius:12px;font:700 13px/1 var(--sans);letter-spacing:.02em;border:1px solid var(--encre)}
.btn:hover{background:var(--accent);border-color:var(--accent);color:var(--accent-texte);text-decoration:none}
.btn-accent{background:var(--accent);border-color:var(--accent);color:var(--accent-texte)}
.btn-accent:hover{background:var(--encre);border-color:var(--encre);color:var(--fond)}
.btn-ghost{background:transparent;color:var(--encre);border-color:var(--ligne)}
.btn-ghost:hover{background:var(--encre);color:var(--fond)}
.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* ===== En-tête (deux bandes : marque, puis pilules de rubriques) ===== */
.site-header{background:var(--fond);border-bottom:1px solid var(--ligne)}
.header-top{display:flex;align-items:center;gap:24px;padding:20px 0 16px}
.logo{display:flex;align-items:center;gap:12px;font-family:var(--serif);font-weight:700;font-size:21px;flex-shrink:0;color:var(--encre)}
.logo svg{width:38px;height:38px;color:var(--encre);flex-shrink:0}
.logo small{display:block;font-family:var(--sans);font-weight:600;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:color-mix(in srgb,var(--encre) 60%,transparent)}
.cm-search{margin-left:auto;display:flex;align-items:center;gap:8px;background:var(--carte);border:1px solid var(--ligne);border-radius:999px;padding:6px 8px 6px 16px}
.cm-search input{border:0;background:none;width:160px;font-size:13px}
.cm-search button{width:32px;height:32px;border-radius:999px;background:var(--accent);color:var(--accent-texte);display:grid;place-items:center;font-size:14px}
.cm-nav-strip{position:sticky;top:0;z-index:60;background:var(--encre);border-top:2px solid var(--accent)}
.cm-nav-strip-in{display:flex;gap:10px;overflow-x:auto;padding:12px 32px;scrollbar-width:thin;list-style:none;margin:0}
.cm-nav-strip a{flex-shrink:0;display:inline-block;font:700 13px/1 var(--sans);letter-spacing:.02em;color:var(--fond);background:color-mix(in srgb,var(--fond) 12%,transparent);padding:10px 16px;border-radius:999px;white-space:nowrap}
.cm-nav-strip a:hover,.cm-nav-strip a[aria-current]{background:var(--accent);color:var(--accent-texte);text-decoration:none}

/* ===== Accueil : la une ===== */
.hero{display:grid;grid-template-columns:.92fr 1.08fr;gap:48px;align-items:center;padding:44px 0 56px}
.hero-photo{border-radius:var(--rayon);overflow:hidden;box-shadow:var(--ombre);position:relative}
.hero-photo::after{content:"";position:absolute;inset:0;border-radius:var(--rayon);box-shadow:inset 0 0 0 6px var(--carte)}
.hero-photo img{width:100%;height:420px;object-fit:cover}
.hero-copy .eyebrow{margin-bottom:14px}
.hero-copy h1{margin:6px 0 18px}
.hero-copy p{font-size:17px;max-width:480px;color:color-mix(in srgb,var(--encre) 85%,transparent)}
.mag-card-repli{display:flex;align-items:center;justify-content:center;height:200px;background:var(--pastel);font:700 40px var(--serif);color:var(--accent-fonce)}

/* ===== Cartes « fiches carnet » (coin corné) ===== */
.selection{padding:48px 0}
.selection-head{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:26px}
.selection-head a{font:700 13px var(--sans);letter-spacing:.02em;text-transform:uppercase;color:var(--accent-fonce)}
.story-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.mag-card{background:var(--carte);border-radius:var(--rayon-p);overflow:hidden;box-shadow:var(--ombre);transition:transform .18s ease;position:relative}
.mag-card::before{content:"";position:absolute;top:0;right:0;width:22px;height:22px;background:linear-gradient(135deg,transparent 50%,var(--pastel) 50%);z-index:2}
.mag-card:hover{transform:translateY(-5px)}
.mag-card a{display:block}
.mag-card img{height:190px;width:100%;object-fit:cover}
.mag-card h3{padding:0 20px;margin:8px 0 16px}
.mag-meta{display:block;padding:18px 20px 0;font:700 13px var(--sans);letter-spacing:.02em;text-transform:uppercase;color:var(--accent-fonce)}
.mag-card p{padding:0 20px 20px;margin:0;font-size:14px;color:color-mix(in srgb,var(--encre) 78%,transparent)}
.story{display:flex;flex-direction:column;background:var(--carte);border-radius:var(--rayon-p);padding:22px;box-shadow:var(--ombre)}
.story h3{margin:12px 0 16px}
.readlink{margin-top:auto;font:700 13px var(--sans);color:var(--accent-fonce)}

/* Grille de rubrique en escalier */
.mag-rubrique{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.mag-rubrique .mag-card-first{grid-column:span 2;grid-row:span 2}
.mag-rubrique .mag-card-first img{height:100%;min-height:270px}

/* ===== Puces carrées des rubriques (au lieu de ronds) ===== */
.pastilles{display:flex;flex-wrap:wrap;justify-content:center;gap:28px;padding:40px 0 52px}
.pastille{display:flex;flex-direction:column;align-items:center;gap:10px;width:112px;text-align:center}
.pastille-rond{width:96px;height:96px;border-radius:22px;overflow:hidden;background:var(--pastel);box-shadow:var(--ombre)}
.pastille-rond img{width:100%;height:100%;object-fit:cover}
.pastille-rond i{width:100%;height:100%;display:grid;place-items:center;font:700 32px var(--serif);font-style:normal;color:var(--accent-fonce)}
.pastille-nom{font:700 13px/1.3 var(--sans);letter-spacing:.01em}
.pastille:hover .pastille-rond{outline:3px solid var(--accent);outline-offset:3px}

/* ===== Bandeau chiffres : cartes « post-it », pas un bandeau plein ===== */
.chiffres{padding:8px 0 56px}
.chiffres-grille{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.chiffres-grille>div{background:var(--sombre);color:var(--sombre-texte);border-radius:var(--rayon-p);padding:26px 20px;text-align:center;transform:rotate(-1deg)}
.chiffres-grille>div:nth-child(2n){transform:rotate(1deg)}
.chiffres-grille b{display:block;font:700 clamp(26px,3.4vw,44px)/1 var(--serif);color:var(--accent)}
.chiffres-grille span{display:block;margin-top:8px;font:600 13px/1.5 var(--sans);letter-spacing:.02em;color:color-mix(in srgb,var(--sombre-texte) 82%,transparent)}

/* ===== Fil chronologique (« carnet ») ===== */
.fil{padding:8px 0 52px}
.fil ol{list-style:none;margin:0;padding:0;max-width:820px}
.fil li{display:flex;gap:22px;align-items:baseline;padding:14px 0;border-top:1px dashed var(--ligne)}
.fil time{flex:0 0 70px;font:700 13px var(--sans);color:var(--accent-fonce)}
.fil a{font:600 16px/1.4 var(--serif)}

/* ===== Sections de rubrique ===== */
.mag-section{padding:52px 0}
.mag-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:28px;border-top:1px solid var(--ligne);padding-top:24px}
.mag-section-head h2 a{color:inherit}
.mag-section-head>a{font:700 13px var(--sans);letter-spacing:.02em;text-transform:uppercase;white-space:nowrap;color:var(--accent-fonce)}

/* ===== Bandeau contact (pas de formulaire, un lien) ===== */
.contact-band{margin:16px 0 60px;padding:46px;border-radius:var(--rayon);background:var(--pastel);display:flex;align-items:center;justify-content:space-between;gap:28px;flex-wrap:wrap}
.contact-band h2{max-width:500px}

/* ===== Archives / recherche ===== */
.page-heading{padding:48px 0 32px}
.page-heading h1{margin:12px 0}
.page-heading p{max-width:620px;font-size:16px;color:color-mix(in srgb,var(--encre) 82%,transparent)}
.mag-archive-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding-bottom:48px}
.results{padding-bottom:48px}
.results>a{display:block;background:var(--carte);border-radius:var(--rayon-p);padding:18px 22px;margin-bottom:14px;box-shadow:var(--ombre)}
.search-form{display:flex;gap:10px;max-width:540px;margin:0 0 32px}
.search-form input{flex:1;min-width:0;padding:13px 18px;border-radius:12px;border:1px solid var(--ligne);background:var(--carte);font-size:16px}
.sb-pagination{display:flex;gap:8px;padding:26px 0 56px;flex-wrap:wrap}
.sb-pagination span,.sb-pagination a{display:grid;place-items:center;min-width:38px;height:38px;border-radius:10px;background:var(--carte);box-shadow:var(--ombre);font:700 13px var(--sans)}
.sb-pagination a:hover{background:var(--accent);color:var(--accent-texte);text-decoration:none}
.sb-pagination .current{background:var(--encre);color:var(--fond)}

/* ===== Article : encadré « L'essentiel » en colonne, pas de bande méta horizontale ===== */
.article-band{background:var(--pastel)}
.article-band-in{padding:44px 0 8px}
.article-band nav{font:600 12px var(--sans);margin-bottom:16px;color:color-mix(in srgb,var(--encre) 70%,transparent)}
.article-band nav a{text-decoration:underline;text-underline-offset:3px}
.article-band h1{margin:0 0 14px;max-width:820px}
.article-band .chapo{font-size:17px;max-width:640px;color:color-mix(in srgb,var(--encre) 85%,transparent)}
.article-band-photo{border-radius:var(--rayon) var(--rayon) 0 0;overflow:hidden;margin-top:28px}
.article-band-photo img{width:100%;height:320px;object-fit:cover}
.reading-grid{display:grid;grid-template-columns:280px minmax(0,1fr);gap:48px;padding:40px 0 68px}
.reading{min-width:0;order:2}
.reading-aside{order:1;align-self:start;position:sticky;top:88px}
.essentiel{background:var(--carte);border-radius:var(--rayon);box-shadow:var(--ombre);padding:24px;margin-bottom:20px;border-top:5px solid var(--accent)}
.essentiel h2{font-size:16px;text-transform:uppercase;letter-spacing:.04em;margin-bottom:14px}
.essentiel dl{margin:0;display:grid;gap:12px}
.essentiel dt{font:700 12px var(--sans);letter-spacing:.03em;text-transform:uppercase;color:var(--accent-fonce)}
.essentiel dd{margin:2px 0 0;font-size:14px}
.reading-aside details{background:var(--carte);border-radius:var(--rayon-p);padding:18px 20px;box-shadow:var(--ombre);margin-bottom:16px}
.reading-aside summary{font:700 13px var(--sans);letter-spacing:.02em;text-transform:uppercase;cursor:pointer}
.reading-aside ol{list-style:none;margin:12px 0 0;padding:0}
.reading-aside li{border-top:1px solid var(--ligne);font-size:14px}
.reading-aside li a{display:block;padding:9px 0}
.aside-card{background:var(--pastel);border-radius:var(--rayon-p);padding:20px;margin-top:16px}
.aside-card h2{font-size:18px;margin-bottom:8px}
.aside-card p{font-size:14px}
.article-image{border-radius:var(--rayon-p);overflow:hidden;box-shadow:var(--ombre);margin-bottom:8px}
.article-image img{width:100%;max-height:420px;object-fit:cover}
.article-image figcaption{font-size:13px;padding:10px 4px;color:color-mix(in srgb,var(--encre) 65%,transparent)}
.article-meta{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:16px;font:600 13px var(--sans);color:color-mix(in srgb,var(--encre) 72%,transparent)}
.sommaire-bande{display:none}
.mobile-toc{display:none}
.prose{font-size:17px;line-height:1.8;overflow-wrap:anywhere}
.prose p{margin:0 0 20px}
.prose h2{font-size:27px;margin:36px 0 16px;scroll-margin-top:90px}
.prose h3{font-size:20px;margin:26px 0 12px;scroll-margin-top:90px}
.prose a{text-decoration:underline;text-underline-offset:3px;color:var(--accent-fonce)}
.prose ul,.prose ol{padding-left:22px}
.prose li{margin:8px 0}
.prose blockquote{margin:26px 0;padding:18px 22px;background:var(--pastel);border-radius:var(--rayon-p);border-left:4px solid var(--accent)}
.prose img{border-radius:var(--rayon-p)}
.prose table{display:block;overflow-x:auto;border-collapse:collapse;width:100%;margin:22px 0;-webkit-overflow-scrolling:touch}
.prose th,.prose td{padding:10px 14px;border-bottom:1px solid var(--ligne);text-align:left;font-size:14px;white-space:nowrap}
.author{display:flex;gap:16px;align-items:flex-start;padding:26px;margin:42px 0 0;background:var(--carte);border-radius:var(--rayon);box-shadow:var(--ombre)}
.sb-avatar{width:60px;height:60px;border-radius:14px;object-fit:cover;flex-shrink:0}
.author p{margin:0;font-size:14px;line-height:1.7}
.author a{font:700 13px var(--sans);margin-top:8px;display:inline-block}

/* ===== Blocs mu-plugins : sources, auteur fin, maillage (classes réelles du contenu) ===== */
.prose .sb-sources{list-style:none;display:flex;flex-wrap:wrap;gap:8px 16px;margin:22px 0;padding:14px 0 0;border-top:1px dashed var(--ligne);font-size:13px}
.prose .sb-sources li{margin:0}
.prose .sb-sources a{color:var(--accent-fonce)}
.sb-auteur-fin{display:flex;gap:16px;align-items:flex-start;padding:26px;margin:42px 0 0;background:var(--carte);border-radius:var(--rayon);box-shadow:var(--ombre)}
.sb-auteur-fin-av{width:60px;height:60px;border-radius:14px;object-fit:cover;flex-shrink:0}
.sb-auteur-fin-nom{font:700 15px var(--sans);display:block}
.sb-auteur-fin-role{font:600 12px var(--sans);color:var(--accent-fonce);text-transform:uppercase;letter-spacing:.03em}
.sb-auteur-fin-txt{font-size:14px;line-height:1.7;margin-top:6px}
.sb-auteur-fin-lien{font:700 13px var(--sans);margin-top:8px;display:inline-block}
.sb-equipe-page{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:18px;margin:24px 0}
.sb-maillage{background:var(--pastel);border-radius:var(--rayon-p);padding:22px 24px;margin:28px 0}
.sb-maillage a{font-weight:700}
[class^="sbsrc-"]{margin:24px 0}
[class*="__tbl"]{display:block;overflow-x:auto}
[class*="__liste"]{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px 16px}
[class*="__item"]{font-size:13px}
[class*="__lien"]{color:var(--accent-fonce);font-weight:700}
[class*="__date"]{color:color-mix(in srgb,var(--encre) 60%,transparent);font-size:12px}
[class*="__vide"]{display:none}

/* ===== Bandeau d'action générique ===== */
.action-band{display:flex;align-items:center;justify-content:space-between;gap:26px;flex-wrap:wrap;background:var(--pastel);border-radius:var(--rayon);padding:38px}
.action-band h2{margin:6px 0 8px}
.action-band p{max-width:500px;font-size:14px}

/* ===== Pages éditoriales (à-propos, contact) ===== */
.prose-page{max-width:740px;margin:0 auto;padding-bottom:56px}
.prose-page h2{font-size:25px;margin:32px 0 14px}
.editorial-layout{display:grid;grid-template-columns:.85fr 1.4fr;gap:52px;padding-bottom:52px}
.editorial-mark{background:var(--pastel);border-radius:var(--rayon);padding:30px;text-align:center}
.editorial-mark svg{width:96px;color:var(--encre);margin:0 auto 16px}
.editorial-mark h2{font-size:21px}
.editorial-layout article h2{font-size:23px;margin:30px 0 12px}
.editorial-layout article p{font-size:15px}

/* ===== Pied de page ===== */
.footer{margin-top:36px;background:var(--sombre);color:var(--sombre-texte);padding:48px 0 112px}
.footer-in{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px}
.footer .logo{color:var(--sombre-texte)}
.footer .logo svg{color:var(--accent)}
.footer p{font-size:14px;max-width:360px;color:color-mix(in srgb,var(--sombre-texte) 78%,transparent);margin:14px 0 0}
.footer-links{display:flex;flex-wrap:wrap;gap:8px 24px;list-style:none;margin:0;padding:0}
.footer-links a{font-size:14px;color:color-mix(in srgb,var(--sombre-texte) 92%,transparent)}
.footer-bottom{border-top:1px solid color-mix(in srgb,var(--sombre-texte) 18%,transparent);margin-top:32px;padding-top:18px;font-size:13px;color:color-mix(in srgb,var(--sombre-texte) 60%,transparent)}

/* ===== Nav mobile fixe ===== */
.mobile-nav{display:none}
.progress{position:fixed;top:0;left:0;height:3px;background:var(--accent);z-index:90;width:0}

/* ===== Responsive ===== */
@media(max-width:1100px){
  .site-frame{padding:0 20px}
  main .site-frame,header .site-frame,footer .site-frame{padding-left:20px;padding-right:20px}
  .cm-nav-strip-in{padding-left:20px;padding-right:20px}
  .hero{grid-template-columns:1fr;gap:28px;padding:28px 0 36px}
  .hero-photo img{height:280px}
  .story-grid{grid-template-columns:repeat(2,1fr)}
  .mag-rubrique{grid-template-columns:repeat(2,1fr)}
  .mag-rubrique .mag-card-first{grid-column:span 2;grid-row:auto}
  .mag-rubrique .mag-card-first img{min-height:210px}
  .chiffres-grille{grid-template-columns:repeat(2,1fr);gap:16px}
  .reading-grid{grid-template-columns:1fr}
  .reading{order:1}
  .reading-aside{order:2;position:static;display:grid;grid-template-columns:1fr 1fr;gap:16px}
  .mobile-toc{display:block;background:var(--carte);border-radius:var(--rayon-p);padding:16px 20px;box-shadow:var(--ombre);margin:16px 0}
  .mobile-toc summary{font:700 13px var(--sans);cursor:pointer}
  .mobile-toc ol{list-style:none;margin:12px 0 0;padding:0}
  .mobile-toc li{padding:8px 0;border-top:1px solid var(--ligne);font-size:14px}
  .essentiel{grid-column:1/-1}
  .editorial-layout{grid-template-columns:1fr}
  .footer-in{flex-direction:column;align-items:flex-start}
}
@media(max-width:680px){
  body{font-size:15px}
  .header-top{flex-wrap:wrap}
  .cm-search{order:3;width:100%;margin-left:0}
  .cm-search input{width:100%}
  .hero-photo img{height:220px}
  .story-grid{grid-template-columns:1fr}
  .mag-rubrique{grid-template-columns:1fr}
  .mag-rubrique .mag-card-first{grid-column:auto}
  .chiffres-grille{grid-template-columns:1fr 1fr;gap:14px}
  .chiffres-grille>div{transform:none}
  .chiffres-grille b{font-size:26px}
  .pastilles{gap:18px}
  .pastille{width:84px}
  .pastille-rond{width:72px;height:72px;border-radius:18px}
  .reading-aside{grid-template-columns:1fr}
  .article-band-photo img{height:200px}
  .mag-archive-grid{grid-template-columns:1fr}
  .contact-band{flex-direction:column;align-items:flex-start;padding:28px 22px}
  .action-band{padding:24px}
  .mobile-nav{display:grid;grid-template-columns:repeat(4,1fr);position:fixed;left:0;right:0;bottom:0;z-index:70;background:var(--carte);border-top:1px solid var(--ligne);padding:6px 6px calc(6px + env(safe-area-inset-bottom))}
  .mobile-nav a{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 4px;min-height:48px;font-size:13px;text-align:center;line-height:1.1;border-radius:10px}
  .mobile-nav a[aria-current]{background:var(--pastel)}
  .mobile-nav svg{width:20px;height:20px}
  .footer{padding-bottom:116px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
