.masterheader {
  padding: 0 !important;
  margin-block: var(--pm-space-l) !important;
}

/* En 2026, .pm-main pose déjà 48px au-dessus du premier article : la marge
   basse du bandeau publicitaire s'y ajoutait, soit 78px entre la pub et le fil.
   La marge haute reste, elle sépare le bandeau du header. */
body.pm-2026 .masterheader {
  margin-block-end: 0 !important;
}

/* Home et desktop uniquement : un filet ferme le bandeau publicitaire, comme
   celui du header le ferme au-dessus. C'est un contour interne et non une
   bordure, pour que le trait ne s'ajoute pas à la hauteur du bandeau — la
   maquette dessine tous ses contours en strokeAlign INSIDE.

   Les 24px de marge intérieure basse écartent la création du trait : sans eux
   il vient se coller au bas de l'image. La marge haute prend la même valeur,
   au lieu des 30px hérités de l'ancienne feuille, pour que le bandeau soit à
   égale distance des deux filets qui l'encadrent. C'est --pm-space-l, l'écart
   qui rythme déjà tout le fil.

   Rien de tout cela en mobile : le bandeau y garde ses 30px au-dessus et ses 48
   jusqu'au fil, sans trait. L'y ajouter coûterait un dégagement de plus entre la
   pub et le premier article, sur l'écran où la place manque le plus.

   @see 2026/css/tokens.css, --pm-stroke-bottom
   @see 2026/css/components/header.css */
@media (min-width: 1024px) {
  body.pm-2026.path-frontpage .masterheader {
    margin-block-start: var(--pm-space-l) !important;
    padding-block-end: var(--pm-space-l) !important;
    box-shadow: var(--pm-stroke-bottom);
  }
}

/* Le bloc publicitaire du fil vient de l'ancienne feuille : 25px de marge ET
   25px de marge intérieure de part et d'autre, alors que la colonne 2026 espace
   déjà ses enfants de 24px. On lui retire ses marges ; la marge intérieure et
   les filets gris restent, ils encadrent la création. */
.pm-2026 .block.pub {
  margin-block: 0;
  padding-block: 0;
  border: none;
}

/* La création est servie à sa taille naturelle — 336px pour un pavé IAB. Sans
   plafond, elle imposait cette largeur à toute la colonne du fil : sous 400px
   la page prenait un défilement horizontal. Le pendant de cette règle est le
   `min-width: 0` des éléments de .pm-home, sans lequel la colonne ne peut pas
   rétrécir même une fois l'image plafonnée.

   @see 2026/css/components/layout.css */
.pm-2026 .block.pub img {
  max-width: 100%;
  height: auto;
}

body.path-frontpage #main-wrapper,
.pm-wrapper #main-wrapper {
  padding: 0 !important;
  margin: 0 !important;
}

.has-featured-top .featured-top {
  padding: 0 !important;
}

.pm-header a,
.pm-footer__logo,
.pm-social__link,
.pm-footer__link,
.pm-navlist__link,
.pm-kiosk__summary,
.pm-card__title a,
.pm-article-head a,
.views-exposed-form a {
  color: unset;
}

body.user-logged-in nav .nav-link--auth {
  display: none;
}

.initiales {
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff !important;
  line-height: revert !important;
  background-color: #1510de;
  padding: 0px !important;
  border-radius: 50% !important;
  width: 30px !important;
  height: 30px !important;
}

.initiales:after {
  display: none !important;
}

.wrapper-pop-in {
  z-index: 1001;
}

.pm-home>.views-element-container {
  display: contents;
}

body:where(.pm-2026) h2,
body:where(.pm-text-h2),
body:where(.pm-2026) h1,
body:where(.pm-text-h1) {
  text-transform: unset;
  display: revert;
  font-family: revert;
  align-items: revert;
  font-size: revert;
  color: var(--pm-color-ink);
  font-weight: revert;

  a {
    color: unset;
  }
}

body:where(.pm-2026) {
  h2:before {
    display: none;
  }

  .region-content-full-width {
    margin: 0;
  }
}

/* -------------------
OVERRIDE ROUND 2
------------------- */

body h2,
body .h2,
.view.view-articles.view-display-id-block_3 .view-header h2 {
  /* cf .pm-text-h2 */
  font-family: var(--pm-text-h2-family);
  font-size: var(--pm-text-h2-size);
  font-weight: var(--pm-text-h2-weight);
  line-height: var(--pm-text-h2-height);
  letter-spacing: var(--pm-text-h2-spacing);
}

h2 a,
.pm-text-h2 a,
h3 a,
.pm-text-h3 a {
  text-decoration: none;
  &:hover {
    text-decoration: underline;
  }
}

input.form-email,
input.form-text {
  font-family: var(--pm-font-sans) !important;
}

.region-featured-top #block-titredepage h1,
.region-featured-top #block-titredepage,
.node--type-page h1, 
#pop_node h1,
.path-citations h1,
.view.view-agenda .view-header h1,
#block-bacphilo .row h1 {
  /* cf .pm-text-surtitre */
  font-family: var(--pm-text-surtitre-family);
  font-size: var(--pm-text-surtitre-size);
  font-weight: var(--pm-text-surtitre-weight);
  line-height: var(--pm-text-surtitre-height);
  letter-spacing: var(--pm-text-surtitre-spacing);
  text-transform: uppercase;
  color: var(--pm-color-ink);
}

.featured-top form .form-row .form-type-textfield input {
  background-color: #fff;
}

.page-view-grandes-idees .pm-card__eyebrow {
  display: none;
}

.col-12 .pm-card {
  margin-bottom: 1.5rem;
}

body .h2:before,
body h2:before {
  background-color: var(--pm-color-ink);
}

body.path-philosophes .featured-top .views-exposed-form a {
}

.featured-top form .form-row {
  flex-wrap: nowrap;
}

.view.view-display-id-regular .view-header article {
  margin-bottom: var(--pm-space-xxl);
}

.pm-teaser a {
  text-decoration: none;
}

.pm-teaser:hover a,
.pm-teaser:focus-within a {
  text-decoration: underline;
  text-underline-offset: 3px;
}