/* =========================
   RESET GLOBAL CLEAN
   ========================= */

html,
body {
  max-width: 100%;
  overflow-x: hidden;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

/* =========================
   MÉDIAS FLUIDES
   ========================= */

img,
video {
  max-width: 100%;
  height: auto;
  display: block;
}

/* =========================
   IFRAME FIX (IMPORTANT)
   ========================= */

iframe {
  width: 100%;
  max-width: 100%;
  border: 0;
}

/* Wrapper ratio 16:9 pour Gutenberg */
.wp-block-embed__wrapper {
  position: relative;
  width: 100%;
  padding-bottom: 56.25%;
  height: 0;
}

.wp-block-embed__wrapper iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

/* =========================
   BLOCS GUTENBERG SAFE
   ========================= */

.wp-block-image,
.wp-block-video,
.wp-block-embed,
.wp-block-media-text,
.wp-block-gallery,
figure {
  max-width: 100%;
}

.wp-block-image img,
.wp-block-image.is-resized img,
.wp-block-image.size-custom img {
  max-width: 100% !important;
  height: auto !important;
}

/* =========================
   TABLEAUX (important mobile)
   ========================= */

table {
  display: block;
  overflow-x: auto;
  width: 100%;
}

/* =========================
   TEXTE LONG (évite débordement)
   ========================= */

p,
a,
li,
span {
  overflow-wrap: break-word;
}

/* =========================
   BOUTONS
   ========================= */

.btn-article {
  padding: 12px 25px;
  border: 1px solid #87aeba;
  border-radius: 30px;
  cursor: pointer;
  background-color: #fff;
  font-weight: 550;
  display: flex;
  justify-content: center;
  align-items: center;
}

/* =========================
   MARGES UTILES
   ========================= */

.m-top {
  margin-top: clamp(1.5rem, 5vw, 6rem);
}

.m-right {
  margin-right: clamp(1.5rem, 5vw, 6rem);
}

.m-bottom {
  margin-bottom: 100px;
}

.m-zero {
  margin: 0;
}

/* =========================
   TYPO / TITRES
   ========================= */

.header-dernieres-publi {
  margin: 20px 0 0 clamp(1rem, 5vw, 5rem);
  font-weight: bold;
  font-size: clamp(60px, 5vw, 90px);
}

.dernieres-publi-subtitle {
  margin-left: clamp(1rem, 5vw, 5rem);
  font-weight: bold;
  margin-bottom: clamp(40px, 5vw, 120px);
  width: clamp(200px, 25%, 400px);
}

/* =========================
   MENU
   ========================= */

nav .main-menu > li > a {
  color: #9a9a9a;
}

nav .main-menu > li.current-menu-item > a,
nav .main-menu > li.current_page_item > a,
nav .main-menu > li.current-menu-ancestor > a,
nav .main-menu > li.current_page_ancestor > a {
  color: #000 !important;
}

/* =========================
   CONTENU ARTICLE
   ========================= */

.author-bio {
  margin-left: clamp(1rem, 5vw, 5rem);
  margin-bottom: clamp(40px, 5vw, 120px);
  width: 90%;
}

.wp-block-quote {
  padding-left: 10px !important;
  border-color: transparent !important;
}

.wp-block-quote p,
.exergue p.content,
.citation-composant p {
  font-size: clamp(18px, 4vw, 24px) !important;
}

.exergue {
  padding-left: 20%;
  margin: 4rem 0rem;
}
.wp-block-pullquote{text-align:right!important;}

.citation-composant {
  border-color: transparent !important;
}

/* =========================
   CITE
   ========================= */

cite {
  display: block;
  font-size: 0.95rem;
  line-height: 1.4;
  color: #555;
}

/* =========================
   HEADER FLEX
   ========================= */

.header-index {
  display: flex;
  align-items: center;
}

/* =========================
   MOBILE
   ========================= */

@media (max-width: 768px) {
  .header-index {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }

  .header-index .primary-btn {
    margin-right: 0;
    width: 100%;
  }
}
.encadre {
  border: 2px solid #5b748a;
  padding: 4rem;
  margin: 3rem 0;
}

.encadre-titre {
  margin: 0 0 3rem;
  font-size: clamp(18px, 4vw, 20px);
  line-height: 1.05;
  font-weight: 500;
}

.encadre-intro {
  margin: 0 0 2rem;
  font-size: clamp(18px, 4vw, 20px);
  line-height: 1.15;
}

.encadre-source {
  margin: 0;
  font-size: 1rem;
  line-height: 1.45;
font-style: normal;
  color: #333;
}

.encadre-source em {
  font-style: italic;
}
