/* Variante éditoriale CABS : rubriques sans photographie décorative.
   L’accueil reste inchangé. Cette feuille surcharge uniquement les pages de rubrique. */

.category-page {
  padding-bottom:3.5rem;
}

.category-page .breadcrumb {
  margin:1rem 0 0;
  font-size:.72rem;
  color:var(--muted);
}
.category-page .breadcrumb a { color:var(--muted); }

.category-page .category-intro {
  padding:2.5rem 0 2rem;
  border-bottom:1px solid var(--line);
}
.category-page .category-intro h1 {
  max-width:18ch;
  margin:.7rem 0 .85rem;
  font:400 clamp(2.35rem,4vw,3.45rem)/1.04 var(--font-serif);
  letter-spacing:-.045em;
  color:var(--text);
}
.category-page .category-intro .lead {
  max-width:62ch;
  margin:0;
  font-size:1rem;
  line-height:1.65;
  color:var(--muted);
}

/* Une de rubrique : plus aucune image de couverture. */
.category-page .category-featured__image,
.category-page .category-featured__overlay-image-link,
.category-page .category-featured__overlay-image,
.category-page .category-item__image {
  display:none !important;
}

.category-page .category-featured,
.category-page .category-featured--overlay {
  display:block !important;
  position:relative !important;
  min-height:0 !important;
  margin:2rem 0 0 !important;
  padding:1.7rem 1.9rem 1.9rem !important;
  background:#e8ede3 !important;
  border:0 !important;
  border-top:3px solid var(--brand-blue) !important;
  border-radius:0 !important;
  box-shadow:none !important;
  overflow:visible !important;
}
.category-page .category-featured::before {
  content:"À la une";
  display:block;
  margin:0 0 1.15rem;
  font-size:.66rem;
  font-weight:650;
  line-height:1;
  letter-spacing:.15em;
  text-transform:uppercase;
  color:var(--brand-blue);
}
.category-page .category-featured__overlay-link {
  display:block !important;
  min-height:0 !important;
  position:static !important;
}
.category-page .category-featured__body,
.category-page .category-featured__overlay-copy {
  position:static !important;
  width:auto !important;
  max-width:760px !important;
  margin:0 !important;
  padding:0 !important;
  color:var(--text) !important;
  background:transparent !important;
  transform:none !important;
  box-shadow:none !important;
}
.category-page .category-featured .categories,
.category-page .category-featured__overlay-copy .categories {
  margin:0 0 .65rem;
  font-size:.62rem;
  line-height:1.5;
  letter-spacing:.075em;
  text-transform:uppercase;
  color:#49695f !important;
}
.category-page .category-featured h2,
.category-page .category-featured__overlay-copy h2 {
  max-width:20ch;
  margin:0;
  font:400 clamp(2rem,3.5vw,3rem)/1.06 var(--font-serif) !important;
  letter-spacing:-.045em;
}
.category-page .category-featured h2 a,
.category-page .category-featured__overlay-copy h2 a {
  color:var(--text) !important;
  text-decoration:none;
}
.category-page .category-featured h2 a:hover,
.category-page .category-featured__overlay-copy h2 a:hover {
  text-decoration:underline;
  text-underline-offset:.18em;
}
.category-page .category-featured__summary {
  max-width:58ch;
  margin:1rem 0 0 !important;
  font-size:1rem !important;
  line-height:1.7 !important;
  color:var(--muted) !important;
}
.category-page .category-featured__mark { display:none !important; }
.category-page .category-featured__date {
  margin:.9rem 0 0 !important;
  font-size:.72rem !important;
  color:var(--muted) !important;
}
.category-page .category-featured__cta {
  display:inline-flex !important;
  align-items:center !important;
  gap:2rem !important;
  margin-top:1.4rem !important;
  padding:0 !important;
  color:var(--text) !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  font-size:.85rem !important;
  font-weight:600 !important;
  line-height:1.35 !important;
  text-decoration:underline !important;
  text-underline-offset:.25em;
  transform:none !important;
}
.category-page .category-featured__cta:hover,
.category-page .category-featured__cta:focus-visible {
  color:var(--text) !important;
  background:transparent !important;
  box-shadow:none !important;
  transform:none !important;
}
.category-page .category-featured__cta span {
  text-decoration:none !important;
}

/* Fil des publications : une liste éditoriale, pas une grille de cartes. */
.category-page .category-feed {
  margin-top:2.5rem !important;
  padding-top:1.7rem !important;
  border-top:1px solid var(--line) !important;
}
.category-page .category-feed__heading {
  display:flex;
  justify-content:space-between;
  align-items:baseline;
  gap:1rem;
  margin-bottom:1rem;
}
.category-page .category-feed__heading h2 {
  margin:0;
  font:400 1.55rem/1.25 var(--font-serif) !important;
  letter-spacing:-.035em;
}
.category-page .category-feed__heading h2::after {
  content:"";
  display:inline-block;
  width:1.8rem;
  height:2px;
  margin-left:.65rem;
  vertical-align:.28em;
  background:var(--brand-blue);
  opacity:.48;
}
.category-page .category-feed__heading p {
  margin:0;
  font-size:.75rem;
  color:var(--muted);
}
.category-page .category-list {
  display:block !important;
  border-bottom:1px solid var(--line);
}
.category-page .category-item {
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto;
  gap:1.4rem;
  align-items:start;
  margin:0 !important;
  padding:1.15rem 0 !important;
  background:transparent !important;
  border:0 !important;
  border-top:1px solid var(--line) !important;
  border-radius:0 !important;
  box-shadow:none !important;
  transform:none !important;
}
.category-page .category-item::after {
  content:"→";
  padding-top:.25rem;
  color:var(--brand-blue);
  font-size:1rem;
}
.category-page .category-item__body {
  min-width:0;
  padding:0 !important;
}
.category-page .category-item .categories {
  margin:0 0 .3rem;
  font-size:.61rem;
  line-height:1.5;
  letter-spacing:.075em;
  text-transform:uppercase;
  color:#49695f;
}
.category-page .category-item h3 {
  margin:.15rem 0 .35rem;
  font:400 1.38rem/1.18 var(--font-serif) !important;
  letter-spacing:-.025em;
}
.category-page .category-item h3 a {
  color:var(--text) !important;
  text-decoration:none;
}
.category-page .category-item h3 a:hover {
  text-decoration:underline;
  text-underline-offset:.18em;
}
.category-page .category-item__date {
  margin:0 !important;
  font-size:.72rem !important;
  color:var(--muted) !important;
}

/* Navigation entre rubriques : version journal, sans grande carte. */
.category-page .home-rooms {
  margin:3rem 0 0 !important;
  padding:1.7rem 0 0 !important;
  background:transparent !important;
  border:0 !important;
  border-top:1px solid var(--line) !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
.category-page .home-rooms__heading {
  display:flex !important;
  align-items:baseline;
  justify-content:space-between;
  gap:1rem;
  margin:0 0 1.1rem !important;
  padding:0 !important;
}
.category-page .home-rooms__heading h2 {
  margin:0 !important;
  font:400 1.55rem/1.25 var(--font-serif) !important;
  letter-spacing:-.035em;
  color:var(--text) !important;
}
.category-page .home-rooms__heading h2::after {
  content:"";
  display:inline-block;
  width:1.8rem;
  height:2px;
  margin-left:.65rem;
  vertical-align:.28em;
  background:var(--brand-blue);
  opacity:.48;
}
.category-page .home-rooms__heading p {
  margin:0 !important;
  font-size:.75rem !important;
  color:var(--muted) !important;
}
.category-page .home-rooms__grid {
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:1.5rem !important;
  margin:0 !important;
  padding:0 !important;
}
.category-page .home-room {
  display:grid !important;
  grid-template-columns:1fr auto;
  grid-template-areas:"mark arrow" "title arrow" "text arrow";
  align-content:start;
  gap:.2rem .6rem;
  min-height:0 !important;
  padding:.7rem 0 1.1rem !important;
  background:transparent !important;
  border:0 !important;
  border-top:2px solid #b5c4b7 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  color:var(--text) !important;
  text-decoration:none !important;
  transform:none !important;
}
.category-page .home-room:hover {
  background:transparent !important;
  box-shadow:none !important;
  transform:none !important;
}
.category-page .home-room__mark {
  grid-area:mark;
  width:1.5rem !important;
  height:2px !important;
  margin:0 0 .45rem !important;
  background:var(--brand-blue) !important;
  border-radius:0 !important;
}
.category-page .home-room__arrow {
  grid-area:arrow;
  align-self:start;
  padding-top:.05rem;
  color:var(--brand-blue) !important;
}
.category-page .home-room__title {
  grid-area:title;
  margin:0 !important;
  font:400 1.18rem/1.2 var(--font-serif) !important;
  color:var(--text) !important;
}
.category-page .home-room__text {
  grid-area:text;
  margin:.35rem 0 0 !important;
  font-size:.76rem !important;
  line-height:1.55 !important;
  color:var(--muted) !important;
}
.category-page .home-rooms__footer {
  margin:1rem 0 0 !important;
  padding:1rem 0 0 !important;
  border-top:1px solid var(--line) !important;
  text-align:right;
}
.category-page .home-rooms__footer a {
  font-size:.76rem !important;
  color:var(--text) !important;
}

@media(max-width:760px) {
  .category-page .category-intro { padding:1.8rem 0 1.4rem; }
  .category-page .category-intro h1 { font-size:2.35rem; }
  .category-page .category-featured,
  .category-page .category-featured--overlay { padding:1.35rem !important; }
  .category-page .category-featured h2,
  .category-page .category-featured__overlay-copy h2 { font-size:2rem !important; }
  .category-page .category-feed__heading { flex-wrap:wrap; gap:.4rem; }
  .category-page .category-item { grid-template-columns:minmax(0,1fr) auto; gap:.8rem; }
  .category-page .category-item h3 { font-size:1.22rem !important; }
  .category-page .home-rooms__heading { flex-wrap:wrap; gap:.4rem; }
  .category-page .home-rooms__grid { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:1.2rem 1rem !important; }
  .category-page .home-room__title { font-size:1.08rem !important; }
}
