/* Galerie « Suivez le chef » et pages carnets */
.page-journal{background:var(--paper)}
.journal-hero{position:relative;padding:calc(82px + 5rem) 0 3.5rem;color:var(--ivory);background:radial-gradient(circle at 15% 30%,rgba(169,87,54,.24),transparent 34%),linear-gradient(135deg,var(--night),var(--blue2));overflow:hidden}
.journal-hero:after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.1;background-image:radial-gradient(circle at 2px 2px,var(--ivory) 1px,transparent 0);background-size:30px 30px;mask-image:linear-gradient(110deg,#000,transparent 62%)}
.journal-hero>*{position:relative;z-index:1}
.journal-hero h1{margin:0;font:600 clamp(2.9rem,6vw,5.7rem)/.86 var(--serif);letter-spacing:-.045em}
.journal-hero h1 em{color:var(--ochre);font-weight:500}
.journal-intro{max-width:620px;margin:1.5rem 0 0;color:rgba(245,237,223,.78);font-size:clamp(.9rem,1.2vw,1.05rem);line-height:1.8}
.journal-compte{margin:1.1rem 0 0;color:var(--ochre);font-size:.7rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}

.journal .cartes{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem;padding:clamp(3rem,6vw,5rem) 0 clamp(4rem,8vw,7rem)}
.carte{margin:0;background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:transform .25s ease,box-shadow .25s ease}
.carte:hover,.carte:focus-within{transform:translateY(-4px);box-shadow:var(--shadow)}
.carte>a{display:grid;grid-template-rows:auto 1fr;height:100%}
.carte-image{aspect-ratio:8/5;overflow:hidden;background:var(--blue)}
.carte-image img{width:100%;height:100%;object-fit:cover}
.sans-image{display:block;width:100%;height:100%;background:linear-gradient(135deg,var(--blue),var(--blue2))}
.carte-texte{display:flex;flex-direction:column;gap:.55rem;padding:1.3rem}
.carte-date{margin:0;color:var(--copper);font-size:.66rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.carte h2{margin:0;color:var(--blue);font:600 1.5rem/1.15 var(--serif);text-wrap:balance}
.carte-texte p:not(.carte-date){margin:0;color:rgba(16,35,42,.66);font-size:.85rem;line-height:1.6}
.carte-lien{margin-top:auto;padding-top:.6rem;color:var(--blue);font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.carte-lien:after{content:" ↗"}

/* Page carnet */
.article-page{padding:calc(82px + 3rem) 0 clamp(4rem,8vw,7rem)}
.fil{margin:0 0 2rem;font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.fil a{color:var(--blue);border-bottom:1px solid var(--bronze);padding-bottom:.2rem}
.fil-bas{margin:3rem 0 0}
.article{max-width:780px;margin-inline:auto}
.article-head{margin-bottom:2rem}
.article-head h1{margin:0;color:var(--blue);font:600 clamp(2.2rem,5vw,3.9rem)/1 var(--serif);letter-spacing:-.03em;text-wrap:balance}
.article-date{margin:1rem 0 0;color:var(--copper);font-size:.68rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.article-cover{margin:0 0 2.5rem;border-radius:var(--radius);overflow:hidden}
.article-cover img{width:100%;height:auto}
.article-body{color:rgba(16,35,42,.82);font-size:1.02rem;line-height:1.85}
.article-body p{margin:0 0 1.3rem}
.article-body h2,.article-body h3,.article-body h4{margin:2.4rem 0 1rem;color:var(--blue);font-family:var(--serif);font-weight:600;line-height:1.1}
.article-body h2{font-size:clamp(1.8rem,3.4vw,2.6rem)}
.article-body h3{font-size:1.6rem}
.article-body h4{font-size:1.3rem}
.article-body img{width:100%;height:auto;margin:1.8rem 0;border-radius:var(--radius)}
.article-body a{color:var(--copper);border-bottom:1px solid var(--bronze)}
.article-body ul,.article-body ol{margin:0 0 1.4rem;padding-left:1.2rem}
.article-body li{margin-bottom:.5rem}
.article-body blockquote{margin:2rem 0;padding:.4rem 0 .4rem 1.5rem;border-left:2px solid var(--bronze);color:var(--blue);font:500 1.5rem/1.35 var(--serif)}
.article-body strong{color:var(--ink)}
.embed{position:relative;margin:1.8rem 0;padding-top:56.25%;border-radius:var(--radius);overflow:hidden;background:var(--night)}
.embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

@media(max-width:1050px){.journal .cartes{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){
  .journal-hero{padding:calc(70px + 3.5rem) 0 2.5rem}
  .journal .cartes{grid-template-columns:1fr;gap:1rem;padding:2.5rem 0 3.5rem}
  .carte h2{font-size:1.35rem}
  .article-page{padding:calc(70px + 2rem) 0 3.5rem}
  .article-body{font-size:.96rem}
  .article-cover{margin-bottom:1.8rem}
  footer{padding-bottom:7rem}
}

/* Les filtres du journal : une pastille par rubrique, l'active en laiton. */
.journal-filtres{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.8rem}
.journal-filtres button{
  display:inline-flex;align-items:center;gap:.5rem;
  padding:.55rem 1.1rem;border-radius:999px;cursor:pointer;
  border:1px solid rgba(214,178,113,.38);background:transparent;
  color:rgba(247,243,235,.78);
  font:500 .82rem/1 var(--sans);letter-spacing:.06em;text-transform:uppercase;
  transition:background .25s,color .25s,border-color .25s
}
.journal-filtres button span{
  font-size:.72rem;letter-spacing:.02em;opacity:.6;font-variant-numeric:tabular-nums
}
.journal-filtres button:hover{border-color:var(--bronze);color:var(--ivory)}
.journal-filtres button[aria-pressed="true"]{
  background:var(--bronze);border-color:var(--bronze);color:var(--night)
}
.journal-filtres button[aria-pressed="true"] span{opacity:.75}
.carte[hidden]{display:none}

/* Les illustrations glissees dans le corps d'un article. */
.article-illustration{margin:1.8rem 0}
.article-illustration img{margin:0}

@media(max-width:760px){
  .journal-filtres{gap:.4rem;margin-top:1.4rem}
  .journal-filtres button{padding:.45rem .85rem;font-size:.74rem}
}
