/* Delta-Sierra V20.14.0 compiled France bundle. Source order preserved. */

/* === SOURCE: style.css === */
/* ============================================================
   delta-sierra.com — David Salvan
   Style institutionnel sobre
   ============================================================ */

:root {
  --color-bleu: #0c2340;
  --color-bleu-clair: #1a3a5c;
  --color-bleu-light: #b8c4d6;
  --color-rouge: #c8102e;
  --color-rouge-fonce: #a00d24;
  --color-ivoire: #f4f1ea;
  --color-ivoire-fonce: #e8e3d4;
  --color-texte: #1f1f1f;
  --color-texte-secondaire: #5a5a5a;
  --color-blanc: #ffffff;
  --color-bord: #d9d4c5;
  --font-serif: Georgia, "Times New Roman", serif;
  --font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --max-width: 1240px;
  --shadow-card: 0 1px 3px rgba(0,0,0,0.08);
  --shadow-card-hover: 0 4px 16px rgba(12,35,64,0.15);
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  padding: 0;
  font-family: var(--font-sans);
  font-size: 16px;
  line-height: 1.6;
  color: var(--color-texte);
  background: var(--color-blanc);
}

a {
  color: var(--color-bleu);
  text-decoration: none;
}

a:hover {
  color: var(--color-rouge);
}

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

/* ============================================================
   HEADER (bandeau supérieur)
   ============================================================ */

.site-header {
  background: var(--color-bleu);
  color: var(--color-blanc);
  padding: 1.25rem 0;
}

.site-header__inner {
  max-width: var(--max-width);
  margin: 0 auto;
  padding: 0 1.5rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1.5rem;
  flex-wrap: wrap;
}

.site-header__brand p {
  margin: 0;
}

.site-header__eyebrow {
  font-size: 11px;
  letter-spacing: 2px;
  color: var(--color-bleu-light);
  text-transform: uppercase;
  margin-bottom: 4px !important;
}

.site-header__title {
  font-size: 22px;
  font-weight: 600;
  letter-spacing: -0.3px;
  color: var(--color-blanc);
}

.btn-soutien {
  background: var(--color-rouge);
  color: var(--color-blanc) !important;
  padding: 11px 22px;
  border-radius: 4px;
  font-size: 14px;
  font-weight: 500;
  text-decoration: none;
  border: 0;
  transition: background 0.2s;
  white-space: nowrap;
}

.btn-soutien:hover {
  background: var(--color-rouge-fonce);
  color: var(--color-blanc) !important;
}

/* ============================================================
   NAVIGATION (catégories)
   ============================================================ */

.site-nav {
  background: var(--color-blanc);
  border-bottom: 1px solid var(--color-bord);
  position: sticky;
  top: 0;
  z-index: 100;
}

.site-nav__inner {
  max-width: var(--max-width);
  margin: 0 auto;
  padding: 0 1.5rem;
  display: flex;
  gap: 28px;
  flex-wrap: wrap;
  align-items: center;
}

.site-nav button.cat-btn {
  background: none;
  border: 0;
  padding: 16px 0;
  font-size: 14px;
  color: var(--color-texte-secondaire);
  cursor: pointer;
  border-bottom: 2px solid transparent;
  font-family: inherit;
  font-weight: 400;
  transition: all 0.2s;
}

.site-nav button.cat-btn.active,
.site-nav button.cat-btn:hover {
  color: var(--color-bleu);
  border-bottom-color: var(--color-rouge);
  font-weight: 500;
}

.site-nav__about {
  font-size: 14px;
  color: var(--color-texte-secondaire);
  text-decoration: none;
}

.site-nav__about:hover {
  color: var(--color-bleu);
}

.site-nav__books {
  margin-left: auto;
  font-size: 14px;
  font-weight: 600;
  color: var(--color-blanc);
  background: var(--color-bleu);
  padding: 8px 18px;
  border-radius: 4px;
  text-decoration: none;
  border: 1px solid var(--color-bleu);
  transition: all 0.2s;
  letter-spacing: 0.3px;
}

.site-nav__books:hover {
  background: var(--color-blanc);
  color: var(--color-bleu);
}

/* ============================================================
   HERO (bannière + bio)
   ============================================================ */

.hero {
  background: var(--color-blanc);
  border-bottom: 1px solid var(--color-bord);
}

.hero__banner {
  width: 100%;
  height: 280px;
  background-image: url('../img/banniere.jpg');
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  background-color: var(--color-bleu);
}

/* La photo ronde fait doublon avec le portrait dans la bannière, on la cache */
.hero__photo {
  display: none;
}

@media (min-width: 1100px) {
  .hero__banner {
    height: 340px;
  }
}

.hero__bio {
  max-width: var(--max-width);
  margin: 0 auto;
  padding: 1.75rem 1.5rem 2rem;
  display: flex;
  gap: 2rem;
  align-items: flex-start;
  flex-wrap: wrap;
}

.hero__photo {
  flex: 0 0 auto;
  width: 130px;
  height: 130px;
  border-radius: 50%;
  overflow: hidden;
  border: 4px solid var(--color-blanc);
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
  margin-top: -85px;
}

.hero__photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.hero__text {
  flex: 1;
  min-width: 280px;
}

.hero__text h1 {
  font-size: 26px;
  font-weight: 500;
  margin: 0 0 0.5rem;
  color: var(--color-bleu);
  letter-spacing: -0.3px;
}

.hero__quote {
  font-family: var(--font-serif);
  font-style: italic;
  color: var(--color-texte-secondaire);
  font-size: 16px;
  line-height: 1.7;
  margin: 0 0 1rem;
  padding-left: 1rem;
  border-left: 3px solid var(--color-rouge);
}

.hero__bio-text {
  font-size: 14px;
  line-height: 1.7;
  color: var(--color-texte);
  margin: 0;
}

/* ============================================================
   BARRE DE RECHERCHE
   ============================================================ */

.search-bar {
  background: var(--color-ivoire);
  padding: 1.25rem 0;
  border-bottom: 1px solid var(--color-bord);
}

.search-bar__inner {
  max-width: var(--max-width);
  margin: 0 auto;
  padding: 0 1.5rem;
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.search-bar input[type="text"] {
  flex: 1;
  min-width: 240px;
  padding: 11px 14px;
  border: 1px solid var(--color-bord);
  border-radius: 4px;
  font-size: 14px;
  background: var(--color-blanc);
  font-family: inherit;
}

.search-bar input[type="text"]:focus {
  outline: none;
  border-color: var(--color-bleu);
  box-shadow: 0 0 0 3px rgba(12,35,64,0.1);
}

/* ============================================================
   GRILLE DES ARTICLES
   ============================================================ */

.articles-section {
  padding: 2rem 0 3rem;
  background: var(--color-blanc);
}

.articles-grid {
  max-width: var(--max-width);
  margin: 0 auto;
  padding: 0 1.5rem;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 22px;
}

.article-card {
  background: var(--color-blanc);
  border: 1px solid var(--color-bord);
  border-radius: 4px;
  overflow: hidden;
  text-decoration: none;
  color: inherit;
  transition: transform 0.2s, box-shadow 0.2s;
  display: flex;
  flex-direction: column;
}

.article-card:hover {
  transform: translateY(-3px);
  box-shadow: var(--shadow-card-hover);
  color: inherit;
}

.article-card__cover {
  aspect-ratio: 3/4;
  overflow: hidden;
  background: var(--color-bleu);
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

.article-card__cover img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: transform 0.4s;
}

.article-card:hover .article-card__cover img {
  transform: scale(1.04);
}

.article-card__meta {
  padding: 12px 14px;
  border-top: 2px solid var(--color-rouge);
  background: var(--color-blanc);
}

.article-card__category {
  font-size: 10px;
  letter-spacing: 1.5px;
  color: var(--color-rouge);
  text-transform: uppercase;
  font-weight: 500;
  margin: 0 0 6px;
}

.article-card__title {
  font-size: 13px;
  font-weight: 500;
  color: var(--color-bleu);
  margin: 0 0 6px;
  line-height: 1.35;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.article-card__date {
  font-size: 11px;
  color: var(--color-texte-secondaire);
  margin: 0;
}

.no-results {
  grid-column: 1 / -1;
  text-align: center;
  padding: 3rem 1rem;
  color: var(--color-texte-secondaire);
  font-style: italic;
}

/* ============================================================
   BLOC SOUTIEN (PayPal)
   ============================================================ */

.support-block {
  max-width: var(--max-width);
  margin: 2rem auto;
  padding: 1.5rem 1.5rem;
}

.support-block__inner {
  background: var(--color-ivoire);
  border-left: 4px solid var(--color-rouge);
  padding: 1.75rem 2rem;
  border-radius: 0 4px 4px 0;
}

.support-block h2 {
  margin: 0 0 0.5rem;
  font-size: 20px;
  color: var(--color-bleu);
  font-weight: 600;
}

.support-block p {
  margin: 0 0 1rem;
  font-size: 14px;
  color: var(--color-texte-secondaire);
  line-height: 1.7;
  max-width: 720px;
}

.support-block .btn-soutien {
  display: inline-block;
  margin-top: 0.5rem;
}

.support-block__costs {
  margin-top: 1rem;
  font-size: 12px;
  color: var(--color-texte-secondaire);
  font-style: italic;
}

/* ============================================================
   FOOTER
   ============================================================ */

.site-footer {
  background: var(--color-bleu);
  color: var(--color-bleu-light);
  padding: 1.5rem 0;
  font-size: 13px;
}

.site-footer__inner {
  max-width: var(--max-width);
  margin: 0 auto;
  padding: 0 1.5rem;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 8px;
}

.site-footer a {
  color: var(--color-bleu-light);
  text-decoration: underline;
}

.site-footer a:hover {
  color: var(--color-blanc);
}

/* ============================================================
   PAGES D'ARTICLES
   ============================================================ */

.article-header {
  background: var(--color-bleu);
  color: var(--color-blanc);
  padding: 2.5rem 0 2rem;
}

.article-header__inner {
  max-width: 820px;
  margin: 0 auto;
  padding: 0 1.5rem;
}

.btn-retour {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: rgba(255,255,255,0.1);
  color: var(--color-blanc) !important;
  padding: 8px 14px;
  border-radius: 4px;
  font-size: 13px;
  text-decoration: none;
  margin-bottom: 1.5rem;
  border: 1px solid rgba(255,255,255,0.2);
  transition: background 0.2s;
}

.btn-retour:hover {
  background: rgba(255,255,255,0.2);
  color: var(--color-blanc) !important;
}

.article-header__category {
  font-size: 11px;
  letter-spacing: 2px;
  color: var(--color-bleu-light);
  text-transform: uppercase;
  margin-bottom: 0.75rem;
}

.article-header h1 {
  font-size: 32px;
  font-weight: 600;
  line-height: 1.25;
  margin: 0 0 0.5rem;
  letter-spacing: -0.5px;
}

.article-header__subtitle {
  font-family: var(--font-serif);
  font-style: italic;
  font-size: 18px;
  color: var(--color-bleu-light);
  margin: 0 0 1rem;
  line-height: 1.5;
}

.article-header__meta {
  font-size: 13px;
  color: var(--color-bleu-light);
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
  align-items: center;
}

.article-header__meta a {
  color: var(--color-blanc) !important;
  text-decoration: none;
  background: var(--color-rouge);
  padding: 6px 12px;
  border-radius: 3px;
  font-size: 12px;
  font-weight: 500;
}

.article-header__meta a:hover {
  background: var(--color-rouge-fonce);
}

.article-body {
  max-width: 720px;
  margin: 0 auto;
  padding: 2.5rem 1.5rem 3rem;
  font-size: 17px;
  line-height: 1.8;
  color: var(--color-texte);
  text-align: justify;
  hyphens: none;
  -webkit-hyphens: none;
  overflow-wrap: normal;
  word-break: normal;
}

.article-body p {
  margin: 0 0 1.5rem;
  text-indent: 0;
}

.article-body p:first-of-type::first-letter {
  font-size: 2.6em;
  font-weight: 600;
  float: left;
  line-height: 1;
  margin: 4px 8px 0 0;
  color: var(--color-bleu);
  font-family: var(--font-serif);
}

.article-body h2 {
  font-size: 22px;
  font-weight: 600;
  color: var(--color-bleu);
  margin: 2.5rem 0 1rem;
  line-height: 1.3;
  letter-spacing: -0.2px;
  padding-bottom: 0.5rem;
  border-bottom: 2px solid var(--color-ivoire-fonce);
}

.article-body h3 {
  font-size: 18px;
  font-weight: 600;
  color: var(--color-bleu);
  margin: 2rem 0 0.75rem;
  line-height: 1.3;
}

.article-body ul {
  margin: 0 0 1.25rem;
  padding-left: 1.5rem;
}

.article-body li {
  margin-bottom: 0.5rem;
}

.article-body strong {
  color: var(--color-bleu);
}

.article-body blockquote {
  border-left: 3px solid var(--color-rouge);
  padding: 0.5rem 1rem;
  margin: 1.5rem 0;
  font-family: var(--font-serif);
  font-style: italic;
  color: var(--color-texte-secondaire);
}

/* Boutons partage */
.share-buttons {
  max-width: 720px;
  margin: 2rem auto;
  padding: 1.25rem 1.5rem;
  background: var(--color-ivoire);
  border-radius: 4px;
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}

.share-buttons span {
  font-size: 14px;
  color: var(--color-texte-secondaire);
  font-weight: 500;
}

.share-buttons a {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 7px 14px;
  background: var(--color-blanc);
  border: 1px solid var(--color-bord);
  border-radius: 4px;
  font-size: 13px;
  color: var(--color-texte);
  text-decoration: none;
  transition: all 0.2s;
}

.share-buttons a:hover {
  border-color: var(--color-bleu);
  background: var(--color-bleu);
  color: var(--color-blanc);
}

/* Bloc fin d'article : soutien */
.article-end-cta {
  max-width: 720px;
  margin: 2rem auto 3rem;
  padding: 1.5rem;
  background: var(--color-ivoire);
  border-left: 4px solid var(--color-rouge);
  border-radius: 0 4px 4px 0;
}

.article-end-cta h3 {
  margin: 0 0 0.5rem;
  font-size: 17px;
  color: var(--color-bleu);
}

.article-end-cta p {
  font-size: 14px;
  margin: 0 0 1rem;
  color: var(--color-texte-secondaire);
}

/* ============================================================
   PAGE À PROPOS
   ============================================================ */

.about-section {
  max-width: 820px;
  margin: 0 auto;
  padding: 2.5rem 1.5rem 3rem;
}

.about-section h2 {
  font-size: 22px;
  color: var(--color-bleu);
  margin: 2rem 0 0.75rem;
  font-weight: 600;
}

.about-section p {
  font-size: 16px;
  line-height: 1.75;
  margin: 0 0 1rem;
}

.about-photo {
  float: right;
  width: 200px;
  height: 200px;
  border-radius: 50%;
  overflow: hidden;
  margin: 0 0 1.5rem 1.5rem;
  border: 4px solid var(--color-ivoire);
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}

.about-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.about-channels {
  background: var(--color-ivoire);
  padding: 1.5rem;
  border-radius: 4px;
  margin: 1.5rem 0;
}

.about-channels h3 {
  margin: 0 0 0.75rem;
  font-size: 16px;
  color: var(--color-bleu);
}

.about-channels ul {
  margin: 0;
  padding-left: 1.25rem;
}

/* ============================================================
   BOUTONS FLOTTANTS (sur les pages d'articles)
   ============================================================ */

.floating-actions {
  position: fixed;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  display: flex !important;
  flex-direction: column;
  gap: 10px;
  z-index: 9999;
  pointer-events: auto;
}

.floating-btn {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 8px;
  background: var(--color-bleu);
  color: var(--color-blanc) !important;
  text-decoration: none !important;
  padding: 12px 18px;
  border-radius: 30px;
  font-size: 13px;
  font-weight: 500;
  box-shadow: 0 3px 12px rgba(12,35,64,0.35);
  border: 0;
  cursor: pointer;
  font-family: inherit;
  transition: all 0.2s;
  min-width: 56px;
  white-space: nowrap;
}

.floating-btn:hover {
  background: var(--color-bleu-clair);
  color: var(--color-blanc) !important;
  transform: scale(1.05);
}

.floating-btn--don {
  background: var(--color-rouge);
}

.floating-btn--don:hover {
  background: var(--color-rouge-fonce);
}

.floating-btn__icon {
  font-size: 16px;
  line-height: 1;
}

/* ============================================================
   BOUTON TRADUCTION
   ============================================================ */

.translate-widget {
  position: relative;
  display: inline-block;
}

.translate-toggle {
  background: rgba(255,255,255,0.1);
  border: 1px solid rgba(255,255,255,0.2);
  color: var(--color-blanc);
  padding: 8px 14px;
  border-radius: 4px;
  font-size: 12px;
  cursor: pointer;
  font-family: inherit;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  transition: background 0.2s;
}

.translate-toggle:hover {
  background: rgba(255,255,255,0.2);
}

.translate-menu {
  display: none;
  position: absolute;
  top: 100%;
  right: 0;
  margin-top: 6px;
  background: var(--color-blanc);
  border: 1px solid var(--color-bord);
  border-radius: 4px;
  box-shadow: 0 6px 24px rgba(0,0,0,0.18);
  min-width: 180px;
  z-index: 300;
  overflow: hidden;
}

.translate-menu.is-open {
  display: block;
}

.translate-menu a {
  display: block;
  padding: 10px 14px;
  color: var(--color-texte);
  font-size: 13px;
  border-bottom: 1px solid var(--color-bord);
  text-decoration: none;
}

.translate-menu a:last-child {
  border-bottom: 0;
}

.translate-menu a:hover {
  background: var(--color-ivoire);
  color: var(--color-bleu);
}

/* ============================================================
   CARTE CHAÎNES YOUTUBE (style article spécial)
   ============================================================ */

.youtube-card {
  background: linear-gradient(135deg, #c8102e 0%, #8a0b1f 100%);
  position: relative;
}

.youtube-card .article-card__cover {
  background: transparent;
  padding: 16px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  color: var(--color-blanc);
}

.youtube-card .article-card__cover-icon {
  font-size: 42px;
  margin-bottom: 8px;
}

.youtube-card .article-card__cover-title {
  font-size: 16px;
  font-weight: 600;
  margin: 0 0 6px;
  color: var(--color-blanc);
  line-height: 1.3;
}

.youtube-card .article-card__cover-subtitle {
  font-size: 12px;
  color: rgba(255,255,255,0.85);
  margin: 0;
  line-height: 1.4;
}

.youtube-card .article-card__meta {
  border-top: 2px solid rgba(255,255,255,0.3);
  background: rgba(0,0,0,0.15);
}

.youtube-card .article-card__category {
  color: var(--color-blanc);
}

.youtube-card .article-card__date {
  color: rgba(255,255,255,0.85);
}

/* ============================================================
   LECTEUR PDF INTÉGRÉ
   ============================================================ */

.pdf-viewer-section {
  max-width: 1100px;
  margin: 0 auto 2rem;
  padding: 0 1.5rem;
  width: 100%;
  display: block;
}

.pdf-viewer-tabs {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  margin-bottom: 0;
  border-bottom: 2px solid var(--color-bord);
}

.pdf-tab {
  background: var(--color-ivoire);
  border: 1px solid var(--color-bord);
  border-bottom: 0;
  padding: 10px 18px;
  font-size: 13px;
  font-weight: 500;
  color: var(--color-texte-secondaire);
  cursor: pointer;
  border-radius: 6px 6px 0 0;
  font-family: inherit;
  transition: all 0.2s;
  margin-bottom: -2px;
  position: relative;
}

.pdf-tab:hover {
  background: var(--color-blanc);
  color: var(--color-bleu);
}

.pdf-tab.active {
  background: var(--color-bleu);
  color: var(--color-blanc);
  border-color: var(--color-bleu);
  border-bottom-color: var(--color-bleu);
}

.pdf-viewer-frame {
  width: 100% !important;
  display: block;
  background: var(--color-bleu);
  border: 2px solid var(--color-bleu);
  border-top: 0;
  height: 900px;
  min-height: 800px;
  overflow: hidden;
  position: relative;
  box-sizing: border-box;
}

.pdf-viewer-frame iframe {
  width: 100% !important;
  height: 100% !important;
  min-height: 800px !important;
  display: block !important;
  border: 0 !important;
  background: var(--color-blanc);
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.pdf-viewer-note {
  margin-top: 1rem;
  padding: 12px 16px;
  background: var(--color-ivoire);
  border-radius: 4px;
  font-size: 13px;
  color: var(--color-texte-secondaire);
  line-height: 1.7;
}

.pdf-viewer-note a {
  color: var(--color-bleu);
  font-weight: 500;
}

@media (max-width: 768px) {
  .pdf-viewer-frame {
    height: 600px;
    min-height: 500px;
  }
  .pdf-viewer-frame iframe {
    min-height: 500px;
  }
  .pdf-tab {
    font-size: 12px;
    padding: 8px 12px;
  }
}

/* ============================================================
   BADGE "EN COURS DE RÉALISATION"
   ============================================================ */

.badge-progress {
  display: inline-flex;
  align-items: center;
  background: var(--color-rouge);
  color: var(--color-blanc) !important;
  padding: 6px 14px;
  border-radius: 4px;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.5px;
  text-transform: uppercase;
}

/* Badge sur la carte article en accueil (signal "en cours") */
.article-card__progress-badge {
  position: absolute;
  top: 10px;
  right: 10px;
  background: var(--color-rouge);
  color: var(--color-blanc);
  padding: 5px 10px;
  border-radius: 4px;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  box-shadow: 0 2px 8px rgba(0,0,0,0.2);
  z-index: 2;
}

.article-card__progress-badge--soon {
  background: var(--color-bleu);
}

.article-card__progress-badge--coming {
  background: var(--color-rouge);
  color: var(--color-blanc);
  font-weight: 700;
}

.article-card__progress-badge--launching {
  background: #FF9900;
  color: #111;
  font-weight: 800;
  box-shadow: 0 2px 10px rgba(255, 153, 0, 0.45);
  letter-spacing: 0.3px;
  text-transform: none;
  padding: 6px 11px;
  font-size: 11px;
}

/* Bandeau diagonal de langue dans le coin inférieur droit des cartes non-FR.
   Le bandeau est placé DANS .article-card__cover qui a overflow:hidden,
   donc la partie qui dépasse est automatiquement clippée au cadre de l'image. */
.article-card__lang-ribbon {
  position: absolute;
  bottom: 22px;
  right: -38px;
  width: 150px;
  background: var(--color-rouge);
  color: #fff;
  text-align: center;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  padding: 5px 0;
  transform: rotate(-45deg);
  transform-origin: center;
  box-shadow: 0 2px 8px rgba(0,0,0,0.4);
  z-index: 2;
  pointer-events: none;
}

.article-card__book-badge {
  position: absolute;
  top: 10px;
  right: 10px;
  background: var(--color-rouge);
  color: var(--color-blanc);
  padding: 6px 14px;
  border-radius: 4px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  box-shadow: 0 3px 10px rgba(200, 16, 46, 0.4);
  z-index: 2;
  border: 2px solid var(--color-blanc);
}

.article-card {
  position: relative;
}

/* ============================================================
   RESPONSIVE
   ============================================================ */

@media (max-width: 768px) {
  .site-header__inner {
    flex-direction: column;
    align-items: flex-start;
  }

  .site-header__title {
    font-size: 18px;
  }

  /* Sur mobile, boutons flottants plus petits, en bas à droite, juste icônes */
  .floating-actions {
    right: 12px;
    top: auto;
    bottom: 12px;
    transform: none;
  }

  .floating-btn {
    padding: 10px;
    min-width: 44px;
    font-size: 0;
  }

  .floating-btn__icon {
    font-size: 18px;
  }

  .hero__banner {
    height: 180px;
  }

  .hero__bio {
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 1.5rem 1rem;
  }

  .hero__photo {
    margin-top: -65px;
    width: 110px;
    height: 110px;
  }

  .hero__text {
    text-align: left;
  }

  .hero__quote {
    font-size: 14px;
  }

  .articles-grid {
    grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
    gap: 14px;
    padding: 0 1rem;
  }

  .article-header h1 {
    font-size: 24px;
  }

  .article-header__subtitle {
    font-size: 16px;
  }

  .article-body {
    font-size: 16px;
    padding: 2rem 1.25rem;
  }

  .article-body h2 {
    font-size: 19px;
  }

  .about-photo {
    float: none;
    margin: 0 auto 1.5rem;
  }

  .site-nav__inner {
    gap: 16px;
    overflow-x: auto;
  }

  .site-nav button.cat-btn {
    white-space: nowrap;
    font-size: 13px;
  }

  .search-bar__inner {
    padding: 0 1rem;
  }
}

@media (max-width: 480px) {
  .articles-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* ============================================================
   FALLBACK MOBILE PDF (cards d'aperçu pour mobile uniquement)
   ============================================================ */

.pdf-mobile-cards {
  display: none; /* masqué par défaut sur desktop */
}

@media (max-width: 768px) {
  /* Sur mobile : on masque l'iframe et les onglets, on affiche les cards */
  .pdf-viewer-tabs {
    display: none !important;
  }
  .pdf-viewer-frame {
    display: none !important;
  }
  .pdf-mobile-cards {
    display: block;
    margin-top: 1rem;
  }
}

.pdf-mobile-card {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 16px;
  margin-bottom: 12px;
  background: var(--color-blanc);
  border: 1px solid var(--color-bord);
  border-radius: 8px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
  text-decoration: none !important;
  color: inherit;
  transition: all 0.2s;
}

.pdf-mobile-card:hover,
.pdf-mobile-card:active {
  border-color: var(--color-bleu);
  box-shadow: 0 3px 8px rgba(12, 35, 64, 0.12);
  transform: translateY(-1px);
}

.pdf-mobile-card__cover {
  flex: 0 0 80px;
  width: 80px;
  height: 110px;
  background: var(--color-ivoire);
  border-radius: 4px;
  overflow: hidden;
  border: 1px solid var(--color-bord);
}

.pdf-mobile-card__cover img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.pdf-mobile-card__body {
  flex: 1;
  min-width: 0;
}

.pdf-mobile-card__title {
  font-family: var(--font-serif);
  font-weight: 600;
  font-size: 16px;
  color: var(--color-bleu);
  margin: 0 0 4px 0;
  line-height: 1.3;
}

.pdf-mobile-card__meta {
  font-size: 12px;
  color: var(--color-texte-secondaire);
  margin: 0 0 10px 0;
}

.pdf-mobile-card__btn {
  display: inline-block;
  padding: 8px 16px;
  background: var(--color-bleu);
  color: var(--color-blanc) !important;
  border-radius: 4px;
  font-size: 13px;
  font-weight: 500;
  text-decoration: none !important;
}

.pdf-mobile-intro {
  display: none;
}

@media (max-width: 768px) {
  .pdf-mobile-intro {
    display: block;
    font-size: 13px;
    color: var(--color-texte-secondaire);
    background: var(--color-ivoire);
    padding: 12px 14px;
    border-radius: 4px;
    margin-bottom: 1rem;
    line-height: 1.5;
  }
}


/* Bouton flottant de soutien */

.floating-btn--support {
  background: var(--color-rouge);
}

.floating-btn--support:hover {
  background: var(--color-rouge-fonce);
}


/* ============================================================
   MENU LANGUES — mise en avant internationale
   ============================================================ */
.translate-widget {
  position: relative;
  display: inline-block;
}

.translate-toggle {
  background: linear-gradient(135deg, var(--color-bleu), #0b4fb3);
  color: var(--color-blanc);
  border: 2px solid rgba(255,255,255,0.35);
  border-radius: 999px;
  padding: 11px 18px;
  font-size: 14px;
  font-weight: 800;
  letter-spacing: 0.2px;
  box-shadow: 0 0 0 3px rgba(255,255,255,0.10), 0 8px 20px rgba(0,0,0,0.22);
  cursor: pointer;
  animation: languagePulse 2.8s ease-in-out infinite;
}

.translate-toggle:hover {
  background: var(--color-rouge);
  transform: translateY(-1px);
}

@keyframes languagePulse {
  0%, 100% { box-shadow: 0 0 0 3px rgba(255,255,255,0.10), 0 8px 20px rgba(0,0,0,0.22); }
  50% { box-shadow: 0 0 0 6px rgba(200,16,46,0.20), 0 10px 26px rgba(0,0,0,0.28); }
}

.translate-menu {
  position: absolute;
  right: 0;
  top: calc(100% + 10px);
  min-width: 230px;
  background: var(--color-blanc);
  border: 1px solid var(--color-bord);
  border-radius: 10px;
  box-shadow: 0 12px 35px rgba(0,0,0,0.22);
  padding: 8px;
  z-index: 10000;
  display: none;
}

.translate-menu.is-open {
  display: block;
}

.translate-menu a {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  color: var(--color-bleu);
  text-decoration: none;
  border-radius: 8px;
  font-weight: 700;
  font-size: 14px;
}

.translate-menu a:hover {
  background: var(--color-ivoire);
  color: var(--color-rouge);
}

.translate-menu__flag {
  font-size: 19px;
}


/* ARTICLE HERO I18N — visuels traduits des articles */
.article-hero-i18n {
  max-width: 1100px;
  margin: 34px auto 0;
  padding: 0 20px;
}
.article-hero-i18n img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 12px;
  border: 1px solid var(--color-bord);
  box-shadow: 0 14px 34px rgba(0,0,0,.18);
  background: #07111f;
}
.article-hero-i18n__caption {
  margin-top: 8px;
  text-align: center;
  font-size: .92rem;
  color: var(--color-texte-muted);
}


/* PHASE 11 IMAGE ROLLBACK
   Les visuels i18n générés par surimpression ont été retirés.
   Les cartes utilisent à nouveau les images originales en attendant une vraie recréation image par image. */

/* --- Alignement du bandeau d'intro international "foreign-warning-intro" --- */
/* Le style inline de ce bloc n'a pas de max-width : il débordait sur toute la */
/* largeur. On l'aligne sur la grille de cartes (.articles-grid = max 1240px, */
/* centré). !important cible uniquement largeur + marges latérales pour battre */
/* le margin inline, sans toucher aux marges haut/bas ni au reste du style. */
.foreign-warning-intro {
  max-width: var(--max-width) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box;
}
@media (min-width: 761px) {
  .foreign-warning-intro { width: calc(100% - 3rem); }
}

/* V20.3.6 — fallback for historical pages: the Press section has been withdrawn */
a[href$="/presse.html"],a[href="presse.html"],a[href$="/press.html"],a[href="press.html"],a[href$="/prensa.html"],a[href="prensa.html"],a[href*="/presse/"]{display:none!important}


/* === SOURCE: seo-pages.css === */

/* Delta-Sierra — pages éditoriales SEO longues (lot pilote 2026-08-02) */
.seo-page{background:var(--color-ivoire,#f7f4ed);color:var(--color-texte,#1d2633)}
.seo-hero{background:linear-gradient(135deg,#07182c 0%,#0b2747 62%,#173a5e 100%);color:#fff;padding:56px 20px 48px;border-bottom:4px solid #b98a3d}
.seo-hero__inner{max-width:1120px;margin:0 auto}
.seo-hero__eyebrow{margin:0 0 12px;text-transform:uppercase;letter-spacing:.13em;font-weight:800;font-size:.82rem;color:#e8c98a}
.seo-hero h1{font-family:var(--font-serif,Georgia,serif);font-size:clamp(2rem,5vw,3.45rem);line-height:1.08;margin:0 0 16px;max-width:980px}
.seo-hero__subtitle{font-size:clamp(1rem,2.2vw,1.28rem);line-height:1.55;max-width:900px;margin:0;color:#e8edf3}
.seo-main{max-width:1120px;margin:0 auto;padding:40px 20px 72px}
.book-lead{display:grid;grid-template-columns:minmax(220px,300px) minmax(0,1fr);gap:42px;align-items:start;margin-bottom:46px}
.book-cover{position:sticky;top:20px}
.book-cover img{display:block;width:100%;height:auto;max-height:520px;object-fit:contain;background:#07111f;border-radius:8px;border:1px solid rgba(11,39,71,.22);box-shadow:0 14px 36px rgba(0,0,0,.22)}
.book-card{background:#fff;border:1px solid rgba(11,39,71,.14);border-radius:14px;padding:28px;box-shadow:0 10px 28px rgba(11,39,71,.08)}
.book-card h2{font-family:var(--font-serif,Georgia,serif);color:#0b2747;margin-top:0;font-size:1.7rem}
.book-card p{line-height:1.72}
.book-meta{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 22px;padding:0;list-style:none}
.book-meta li{background:#edf3f8;color:#173a5e;border-radius:999px;padding:7px 12px;font-size:.9rem;font-weight:700}
.buy-grid{display:grid;gap:10px;margin:22px 0}
.buy-btn{display:block;text-decoration:none;text-align:center;font-weight:850;padding:14px 18px;border-radius:7px;border:1px solid #d97800;background:#ff9900;color:#141414;transition:transform .15s ease,box-shadow .15s ease}
.buy-btn:hover{transform:translateY(-1px);box-shadow:0 7px 18px rgba(217,120,0,.22)}
.buy-btn--secondary{background:#fff7e8;border-color:#d9a54c;color:#5c3a00}
.lang-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.lang-links a{display:inline-block;padding:8px 11px;border:1px solid #b9c6d3;border-radius:6px;text-decoration:none;color:#0b2747;background:#fff}
.seo-section{background:#fff;border:1px solid rgba(11,39,71,.12);border-radius:14px;padding:30px clamp(20px,4vw,42px);margin:0 0 24px;box-shadow:0 8px 24px rgba(11,39,71,.055)}
.seo-section h2{font-family:var(--font-serif,Georgia,serif);color:#0b2747;font-size:clamp(1.5rem,3.4vw,2.05rem);margin:0 0 18px;line-height:1.2}
.seo-section h3{color:#173a5e;margin-top:28px;font-size:1.18rem}
.seo-section p,.seo-section li{font-size:1.02rem;line-height:1.78}
.seo-section ul,.seo-section ol{padding-left:1.35rem}
.seo-section blockquote{margin:24px 0;padding:20px 24px;border-left:4px solid #b98a3d;background:#fbf7ee;color:#2a3440;font-family:var(--font-serif,Georgia,serif);font-size:1.05rem;line-height:1.75}
.key-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:20px}
.key-item{border:1px solid rgba(11,39,71,.14);border-radius:10px;padding:18px;background:#f7fafc}
.key-item strong{display:block;color:#0b2747;margin-bottom:8px}
.series-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.series-card{display:block;text-decoration:none;border:1px solid rgba(11,39,71,.14);border-radius:10px;padding:18px;background:#f7fafc;color:#263241}
.series-card strong{color:#0b2747;display:block;margin-bottom:6px}
.sources-list a{word-break:break-word}
.faq details{border-top:1px solid #d9e0e7;padding:16px 0}
.faq details:first-of-type{border-top:0}
.faq summary{cursor:pointer;font-weight:800;color:#0b2747}
.faq p{margin-bottom:0}
.breadcrumb{max-width:1120px;margin:0 auto;padding:14px 20px;font-size:.9rem;color:#5b6875}
.breadcrumb a{color:#0b4f86}
.notice{border-left:4px solid #b98a3d;background:#fff7e8;padding:16px 18px;border-radius:4px;line-height:1.65;color:#26313d}
@media(max-width:820px){.book-lead{grid-template-columns:1fr}.book-cover{position:static;max-width:310px;margin:0 auto}.key-grid{grid-template-columns:1fr}.series-grid{grid-template-columns:1fr}.seo-hero{padding-top:42px}.seo-main{padding-top:26px}}
@media(max-width:520px){.seo-section{padding:23px 18px}.book-card{padding:22px 18px}.seo-main{padding-left:13px;padding-right:13px}.seo-hero{padding-left:16px;padding-right:16px}}

/* Lot pilote 1B — enrichissements éditoriaux */
.character-grid,.case-grid,.edition-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:20px}
.character-card,.case-card,.edition-card{border:1px solid rgba(11,39,71,.14);border-radius:10px;padding:19px;background:#f7fafc}
.character-card h3,.case-card h3,.edition-card h3{margin:0 0 9px;color:#0b2747;font-size:1.08rem}
.character-card p,.case-card p,.edition-card p{margin:.35rem 0;line-height:1.62;font-size:.98rem}
.extract-block{margin:20px 0 0;padding:22px 24px;border-left:4px solid #b98a3d;background:#fbf7ee;border-radius:5px;font-family:var(--font-serif,Georgia,serif);line-height:1.8}
.extract-block p{font-size:1.05rem;margin:.7rem 0}
.extract-note{font-family:var(--font-sans,Arial,sans-serif);font-size:.89rem!important;color:#5b6875;margin-top:14px!important}
.data-pending{font-size:.91rem;color:#52616f;background:#f2f5f7;border-radius:7px;padding:12px 14px;margin-top:16px}
.source-note{font-size:.9rem;color:#5b6875}
@media(max-width:900px){.character-grid,.case-grid,.edition-grid{grid-template-columns:1fr}}

/* Lot pilote 1C — ouverture commerciale et éditoriale immédiatement visible */
.book-opening{background:linear-gradient(135deg,#07182c 0%,#0b2747 62%,#173a5e 100%);color:#fff;border-bottom:4px solid #b98a3d;padding:38px 20px 42px}
.book-opening__inner{max-width:1120px;margin:0 auto;display:grid;grid-template-columns:minmax(220px,290px) minmax(0,1fr);grid-template-areas:"cover copy" "cover actions";column-gap:42px;row-gap:20px;align-items:start}
.book-opening__cover{grid-area:cover;align-self:start}
.book-opening__cover img{display:block;width:100%;height:auto;max-height:510px;object-fit:contain;background:#07111f;border-radius:9px;border:1px solid rgba(255,255,255,.2);box-shadow:0 18px 42px rgba(0,0,0,.38)}
.book-opening__copy{grid-area:copy;min-width:0}
.book-opening__eyebrow{margin:0 0 10px;text-transform:uppercase;letter-spacing:.12em;font-weight:850;font-size:.79rem;color:#e8c98a}
.book-opening h1{font-family:var(--font-serif,Georgia,serif);font-size:clamp(2rem,4.3vw,3.25rem);line-height:1.07;margin:0 0 15px;color:#fff;max-width:820px}
.book-opening__lead{font-size:clamp(1rem,1.8vw,1.19rem);line-height:1.62;max-width:810px;margin:0;color:#eef2f6}
.book-opening__meta{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 0;padding:0;list-style:none}
.book-opening__meta li{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);color:#fff;border-radius:999px;padding:7px 11px;font-size:.86rem;font-weight:750}
.book-opening__benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:15px}
.book-opening__benefit{position:relative;padding:11px 12px 11px 31px;border-radius:7px;background:rgba(7,17,31,.32);border:1px solid rgba(232,201,138,.23);font-size:.9rem;font-weight:760;line-height:1.35;color:#f5f7f9}
.book-opening__benefit::before{content:"✓";position:absolute;left:11px;top:9px;color:#e8c98a;font-weight:900}
.book-opening__actions{grid-area:actions;min-width:0}
.book-opening__actions .buy-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));margin:0 0 12px}
.book-opening__actions .notice{margin:0;color:#2a3440}
.book-opening__actions .lang-links{margin-top:13px}
.book-opening__actions .lang-links a{background:rgba(255,255,255,.96)}
@media(max-width:760px){
  .book-opening{padding:25px 14px 30px}
  .book-opening__inner{grid-template-columns:132px minmax(0,1fr);grid-template-areas:"cover copy" "actions actions";column-gap:18px;row-gap:18px}
  .book-opening__cover img{max-height:205px}
  .book-opening__eyebrow{font-size:.67rem;letter-spacing:.075em;margin-bottom:7px}
  .book-opening h1{font-size:clamp(1.3rem,5.1vw,2.05rem);line-height:1.08;margin-bottom:9px}
  .book-opening__lead{font-size:.94rem;line-height:1.47}
  .book-opening__meta{margin-top:11px;gap:5px}
  .book-opening__meta li{font-size:.72rem;padding:5px 8px}
  .book-opening__benefits{grid-template-columns:1fr;margin-top:10px;gap:5px}
  .book-opening__benefit{padding:7px 8px 7px 25px;font-size:.77rem}
  .book-opening__benefit::before{left:8px;top:6px}
  .book-opening__actions .buy-grid{grid-template-columns:1fr}
}
@media(max-width:350px){
  .book-opening__inner{grid-template-columns:1fr;grid-template-areas:"cover" "copy" "actions"}
  .book-opening__cover{max-width:190px;margin:0 auto}
  .book-opening__cover img{max-height:none}
  .book-opening__copy{text-align:center}
  .book-opening__eyebrow{font-size:.7rem}
  .book-opening h1{font-size:1.78rem}
  .book-opening__lead{text-align:left}
  .book-opening__meta{justify-content:center}
  .book-opening__benefits{text-align:left}
}



/* Composant générique — galeries éditoriales de six aperçus pour tous les ouvrages */
.visual-gallery,.book-preview-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:24px}
.visual-gallery figure,.book-preview-gallery figure{margin:0;background:#07182c;border:1px solid rgba(11,39,71,.16);border-radius:12px;overflow:hidden;box-shadow:0 10px 28px rgba(11,39,71,.12)}
.visual-gallery a,.book-preview-gallery a{display:block;background:#07111f}
.visual-gallery img{display:block;width:100%;height:auto;aspect-ratio:1491/1055;object-fit:cover;transition:transform .18s ease}
.book-preview-gallery img{display:block;width:100%;height:auto;object-fit:contain;transition:transform .18s ease}
.visual-gallery a:hover img,.book-preview-gallery a:hover img{transform:scale(1.012)}
.visual-gallery figcaption,.book-preview-gallery figcaption{padding:15px 17px 17px;color:#edf2f6;font-size:.94rem;line-height:1.55}
.visual-gallery figcaption strong,.book-preview-gallery figcaption strong{display:block;color:#e8c98a;margin-bottom:5px;font-size:1rem}
.visual-note{font-size:.93rem;color:#52616f;margin-top:16px}
.collection-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}
.collection-links a{display:block;text-decoration:none;border:1px solid rgba(11,39,71,.14);border-radius:10px;padding:18px;background:#f7fafc;color:#263241}
.collection-links strong{display:block;color:#0b2747;margin-bottom:6px}
@media(max-width:760px){.visual-gallery,.book-preview-gallery,.collection-links{grid-template-columns:1fr}.visual-gallery figcaption,.book-preview-gallery figcaption{font-size:.92rem}}

/* Lot 2B — précision des aperçus et accès rapide */
.book-opening__jump{display:inline-block;margin:8px 0 2px;color:#fff;font-weight:800;text-decoration:underline;text-underline-offset:4px}
.book-opening__jump:hover{color:#e8c98a}
.visual-gallery__zoom{display:block;margin-top:10px;color:#e8c98a;font-weight:800;font-size:.86rem}
#apercus{scroll-margin-top:86px}

/* Lot 3A — emplacement générique préparé sans affichage avant réception des aperçus */
.book-preview-gallery[hidden]{display:none!important}

/* SERIES PILLARS 20260802F */
.series-opening{background:linear-gradient(135deg,#07111f,#102b4c 62%,#4c2b18);padding:42px 18px;color:#fff}.series-opening__inner{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:minmax(320px, .9fr) minmax(0,1.1fr);gap:42px;align-items:center}.series-opening__copy h1{font-family:var(--font-serif);font-size:clamp(2rem,4vw,3.7rem);line-height:1.06;margin:10px 0 18px;color:#fff}.series-opening__copy .book-opening__lead{color:#eef4fb}.series-cover-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;align-items:end}.series-cover-card{display:block;text-decoration:none;color:#fff;text-align:center}.series-cover-card img{width:100%;height:auto;aspect-ratio:2/3;object-fit:contain;background:#050b13;border-radius:7px;box-shadow:0 12px 28px rgba(0,0,0,.42);transition:transform .2s ease}.series-cover-card:hover img{transform:translateY(-5px)}.series-cover-card span{display:block;font-size:.82rem;margin-top:8px;color:#e9d5aa}.series-volume-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin:0 0 34px}.series-volume-card{background:#fff;border:1px solid rgba(12,35,64,.15);border-radius:14px;padding:25px;box-shadow:0 9px 24px rgba(12,35,64,.08)}.series-volume-card__number{text-transform:uppercase;letter-spacing:.12em;color:#9b6f2e;font-size:.78rem;font-weight:700;margin:0 0 8px}.series-volume-card h2{margin:0 0 12px;color:#0c2340;font-family:var(--font-serif);font-size:1.45rem}.series-volume-card__actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.series-hub-links{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin:14px auto 28px}.series-hub-links a{display:inline-flex;padding:11px 16px;border-radius:999px;background:#0c2340;color:#fff;text-decoration:none;font-weight:700}.series-hub-links a:last-child{background:#9b6f2e}
@media(max-width:820px){.series-opening__inner{grid-template-columns:1fr}.series-cover-grid{max-width:600px;margin:0 auto}.series-volume-grid{grid-template-columns:1fr}.series-opening__copy{text-align:center}.series-opening__copy .book-opening__benefits{justify-content:center}}
@media(max-width:480px){.series-opening{padding:28px 12px}.series-cover-grid{gap:6px}.series-cover-card span{font-size:.72rem}.series-volume-card{padding:19px}}


/* GENERAL PAGES 20260802G */
.author-opening{background:linear-gradient(135deg,#07182c 0%,#0b2747 64%,#51301a 100%);color:#fff;border-bottom:4px solid #b98a3d;padding:42px 20px}.author-opening__inner{max-width:1120px;margin:0 auto;display:grid;grid-template-columns:minmax(220px,300px) minmax(0,1fr);gap:42px;align-items:center}.author-opening__portrait img{display:block;width:100%;height:auto;max-height:480px;object-fit:cover;object-position:center 18%;border-radius:14px;border:1px solid rgba(255,255,255,.22);box-shadow:0 18px 44px rgba(0,0,0,.4)}.author-opening__copy h1,.press-opening h1,.channels-opening h1,.essays-opening h1{font-family:var(--font-serif,Georgia,serif);font-size:clamp(2.1rem,4.5vw,3.7rem);line-height:1.05;margin:8px 0 18px;color:#fff}.author-opening__actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}.author-opening__actions .buy-btn{min-width:210px}.profile-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.profile-card{background:#f7fafc;border:1px solid rgba(11,39,71,.14);border-radius:12px;padding:21px}.profile-card h3{margin:0 0 10px!important}.profile-card a{display:inline-block;margin-top:8px;color:#0b4f86;font-weight:800}.method-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-top:20px}.method-grid div{background:#07182c;color:#fff;border-radius:10px;padding:18px}.method-grid strong{display:block;color:#e8c98a;margin-bottom:6px}.method-grid span{line-height:1.55}.contact-line{background:#f7fafc;border:1px solid #d9e0e7;border-radius:10px;padding:18px}.contact-line span{color:#5b6875}.timeline-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.timeline-grid article{border-left:4px solid #b98a3d;background:#f7fafc;border-radius:8px;padding:20px}.timeline-grid article>span{display:block;text-transform:uppercase;letter-spacing:.1em;font-size:.76rem;font-weight:850;color:#9b6f2e}.timeline-grid h3{margin:8px 0!important}.press-opening{background:linear-gradient(135deg,#07182c,#102b4c 65%,#4a2a16);color:#fff;padding:42px 20px;border-bottom:4px solid #b98a3d}.press-opening__inner{max-width:1120px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) 210px;gap:40px;align-items:center}.press-opening img{width:210px;height:260px;object-fit:cover;object-position:center 18%;border-radius:13px;box-shadow:0 14px 34px rgba(0,0,0,.38)}.press-copy{background:#fbf7ee;border-left:4px solid #b98a3d;border-radius:8px;padding:22px 24px}.press-copy p:last-child{margin-bottom:0}.media-topic-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.media-topic-grid article{border:1px solid rgba(11,39,71,.14);border-radius:10px;padding:19px;background:#f7fafc}.media-topic-grid h3{margin:0 0 8px!important}.press-resource-grid,.profile-link-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.press-resource-grid a,.profile-link-list a{display:flex;flex-direction:column;text-decoration:none;border:1px solid rgba(11,39,71,.14);border-radius:10px;padding:18px;background:#f7fafc;color:#273341}.press-resource-grid strong,.profile-link-list strong{color:#0b2747;margin-bottom:5px}.press-resource-grid span,.profile-link-list span{color:#5b6875}.channels-opening{background:linear-gradient(135deg,#07182c,#102b4c 60%,#432218);color:#fff;border-bottom:4px solid #b98a3d;padding:42px 20px}.channels-opening__inner{max-width:1120px;margin:0 auto;display:grid;grid-template-columns:330px minmax(0,1fr);gap:42px;align-items:center}.channel-avatar-row{display:flex;align-items:center;justify-content:center}.channel-avatar-row img{width:128px;height:128px;object-fit:cover;border-radius:50%;border:4px solid #fff;box-shadow:0 10px 24px rgba(0,0,0,.35)}.channel-avatar-row img+img{margin-left:-36px}.channel-grid{display:grid;gap:24px;margin-bottom:28px}.channel-card{display:grid;grid-template-columns:190px minmax(0,1fr);gap:26px;background:#fff;border:1px solid rgba(11,39,71,.13);border-radius:14px;padding:26px;box-shadow:0 8px 24px rgba(11,39,71,.07)}.channel-card>img{width:190px;height:190px;border-radius:50%;object-fit:cover}.channel-card__eyebrow{margin:0;color:#9b6f2e;text-transform:uppercase;letter-spacing:.09em;font-size:.76rem;font-weight:850}.channel-card h2{font-family:var(--font-serif,Georgia,serif);font-size:1.75rem;color:#0b2747;margin:7px 0 12px}.channel-card li{line-height:1.6}.channel-card .buy-btn{max-width:420px;margin-top:18px}.essays-opening{background:linear-gradient(135deg,#07182c,#102b4c 62%,#51301a);color:#fff;border-bottom:4px solid #b98a3d;padding:42px 18px}.essays-opening__inner{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:minmax(380px,.9fr) minmax(0,1.1fr);gap:42px;align-items:center}.essay-cover-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.essay-cover-card{display:block;text-decoration:none;color:#fff;text-align:center}.essay-cover-card img{display:block;width:100%;height:auto;aspect-ratio:2/3;object-fit:contain;background:#050b13;border-radius:6px;box-shadow:0 9px 22px rgba(0,0,0,.4);transition:transform .18s ease}.essay-cover-card:hover img{transform:translateY(-4px)}.essay-cover-card span{display:block;font-size:.68rem;line-height:1.25;margin-top:6px;color:#ead7ad}.essay-cover-card:nth-child(n+5) span{margin-bottom:4px}
@media(max-width:900px){.author-opening__inner,.press-opening__inner,.channels-opening__inner,.essays-opening__inner{grid-template-columns:1fr}.author-opening__portrait{max-width:260px;margin:0 auto}.press-opening__inner{text-align:center}.press-opening img{margin:0 auto}.channel-avatar-row{margin-bottom:6px}.profile-card-grid,.media-topic-grid{grid-template-columns:1fr 1fr}.channel-card{grid-template-columns:150px minmax(0,1fr)}.channel-card>img{width:150px;height:150px}.essay-cover-grid{max-width:650px;margin:0 auto}}
@media(max-width:620px){.author-opening,.press-opening,.channels-opening,.essays-opening{padding:28px 14px}.author-opening__inner{gap:24px}.author-opening__copy{text-align:center}.author-opening__copy .book-opening__lead{text-align:left}.author-opening__actions{justify-content:center}.profile-card-grid,.method-grid,.timeline-grid,.media-topic-grid,.press-resource-grid,.profile-link-list{grid-template-columns:1fr}.channel-card{grid-template-columns:1fr;padding:21px}.channel-card>img{width:130px;height:130px;margin:0 auto}.channel-card__eyebrow,.channel-card h2{text-align:center}.channel-avatar-row img{width:100px;height:100px}.essay-cover-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.essay-cover-card span{display:none}.essays-opening h1{text-align:center}.essays-opening .book-opening__lead{text-align:left}}

/* LANGUAGE HUB 20260802G */
.language-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin:0 0 28px}.language-grid>a{display:block;text-decoration:none;background:#fff;border:1px solid rgba(11,39,71,.14);border-radius:13px;padding:22px 17px;color:#273341;box-shadow:0 8px 22px rgba(11,39,71,.06)}.language-grid>a:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(11,39,71,.11)}.language-grid h2{font-family:var(--font-serif,Georgia,serif);color:#0b2747;font-size:1.3rem;margin:12px 0 8px}.language-grid p{line-height:1.55;font-size:.94rem}.language-code{display:inline-flex;align-items:center;justify-content:center;width:54px;height:54px;border-radius:50%;background:#0b2747;color:#e8c98a;font-weight:900;letter-spacing:.04em}@media(max-width:900px){.language-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.language-grid{grid-template-columns:1fr}}

/* Bibliographic identity reconciliation and mobile refinements — 20260802H */
.cover-identity-note{margin:10px 0 13px;padding:9px 12px;border-left:3px solid #e8c98a;background:rgba(255,255,255,.08);color:#f2e8d4;border-radius:4px;font-size:.86rem;line-height:1.5}
.cover-card-note{margin:0 0 12px;color:#6a5739;font-size:.9rem;line-height:1.45;font-style:italic}
@media(max-width:480px){.book-opening__inner{grid-template-columns:1fr;grid-template-areas:"cover" "copy" "actions"}.book-opening__cover{max-width:205px;margin:0 auto}.book-opening__cover img{max-height:none}.book-opening__copy{text-align:center}.book-opening__lead,.cover-identity-note{text-align:left}.book-opening__meta{justify-content:center}.series-cover-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-width:430px}.series-cover-card span{display:block;font-size:.76rem}}


/* VIDEO LIBRARY 20260803I */
.video-opening,.video-hub-opening{background:linear-gradient(135deg,#07182c 0%,#102b4c 66%,#4b2d18 100%);color:#fff;border-bottom:4px solid #b98a3d;padding:40px 20px}.video-opening__inner{max-width:1160px;margin:0 auto;display:grid;grid-template-columns:minmax(320px,480px) minmax(0,1fr);gap:38px;align-items:center}.video-opening__media{position:relative}.video-opening__media img{display:block;width:100%;height:auto;border-radius:13px;box-shadow:0 18px 42px rgba(0,0,0,.42);background:#000}.video-play-link{display:flex;justify-content:center;margin-top:12px;padding:12px 16px;border-radius:9px;background:#b98a3d;color:#07182c;text-decoration:none;font-weight:900}.video-opening__copy h1,.video-hub-opening h1{font-family:var(--font-serif,Georgia,serif);font-size:clamp(2rem,4vw,3.35rem);line-height:1.08;margin:8px 0 17px;color:#fff}.video-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:19px}.video-facts div{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.14);border-radius:8px;padding:10px 12px}.video-facts strong,.video-facts span{display:block}.video-facts strong{font-size:.73rem;text-transform:uppercase;letter-spacing:.08em;color:#e8c98a}.video-facts span{margin-top:4px}.video-player-section{margin:0 0 28px}.video-embed{position:relative;width:100%;padding-top:56.25%;background:#050b13;border-radius:14px;overflow:hidden;box-shadow:0 12px 30px rgba(11,39,71,.18)}.video-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.chapter-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px;padding:0;list-style:none}.chapter-list li{margin:0}.chapter-list a{display:grid;grid-template-columns:62px minmax(0,1fr);gap:10px;align-items:start;text-decoration:none;background:#f7fafc;border:1px solid rgba(11,39,71,.12);border-radius:8px;padding:10px 12px;color:#273341}.chapter-list time{font-weight:900;color:#9b6f2e}.video-method{background:#fbf7ee}.video-related-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.video-related-links a{display:block;text-decoration:none;background:#f7fafc;border:1px solid rgba(11,39,71,.13);border-radius:10px;padding:16px;color:#273341}.video-related-links strong,.video-related-links span{display:block}.video-related-links strong{color:#0b2747;margin-bottom:7px}.video-related-links span{font-size:.9rem;line-height:1.48}.video-hub-cta{text-align:center;margin-top:20px}.video-hub-opening__inner{max-width:1040px;margin:0 auto;text-align:center}.video-hub-opening__inner .book-opening__lead{max-width:850px;margin-left:auto;margin-right:auto}.video-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-bottom:30px}.video-card{overflow:hidden;background:#fff;border:1px solid rgba(11,39,71,.14);border-radius:14px;box-shadow:0 9px 24px rgba(11,39,71,.08)}.video-card__thumb{display:block;position:relative;background:#050b13}.video-card__thumb img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}.video-card__thumb span{position:absolute;right:12px;bottom:12px;background:rgba(7,24,44,.92);color:#fff;border-radius:999px;padding:7px 11px;font-weight:800;font-size:.82rem}.video-card__body{padding:19px 20px 22px}.video-card__eyebrow{text-transform:uppercase;letter-spacing:.08em;color:#9b6f2e;font-weight:850;font-size:.73rem;margin:0 0 7px}.video-card h2{font-family:var(--font-serif,Georgia,serif);font-size:1.4rem;line-height:1.2;margin:0 0 10px}.video-card h2 a{text-decoration:none;color:#0b2747}.video-card p:last-child{margin-bottom:0}
@media(max-width:820px){.video-opening__inner{grid-template-columns:1fr}.video-opening__media{max-width:620px;margin:0 auto}.video-related-links{grid-template-columns:1fr}.video-card-grid{grid-template-columns:1fr}}
@media(max-width:560px){.video-opening,.video-hub-opening{padding:27px 13px}.video-opening__copy h1{text-align:center}.video-opening__copy .book-opening__eyebrow{text-align:center}.video-facts{grid-template-columns:1fr 1fr}.chapter-list{grid-template-columns:1fr}.video-card__body{padding:17px}.video-opening__lead{text-align:left}}

/* Complete video library 2026-08-03 */
.video-count{display:inline-flex;align-items:center;justify-content:center;min-width:2rem;height:2rem;border-radius:999px;background:#0b2747;color:#fff;font-size:.78rem;vertical-align:middle;margin-left:.4rem}.video-card h3{font-family:var(--font-serif,Georgia,serif);font-size:1.36rem;line-height:1.22;margin:0 0 10px}.video-card h3 a{text-decoration:none;color:#0b2747}.video-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:1000px){.video-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.video-card-grid{grid-template-columns:1fr}.video-facts{grid-template-columns:1fr}.video-card__thumb img{aspect-ratio:4/3}}


/* Editorial enrichment and cross-site context 20260803K */
.answer-essential{border-left:5px solid #b98a3d;background:linear-gradient(135deg,#fff,#fbf7ee)}
.answer-essential__eyebrow{margin:0 0 7px!important;text-transform:uppercase;letter-spacing:.1em;font-size:.76rem!important;font-weight:900;color:#9b6f2e}
.video-takeaway{background:#eef5f8;border-color:#b9ced9}
.search-questions ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;padding:0;list-style:none}
.search-questions li{margin:0}.search-questions a{display:block;padding:12px 14px;border:1px solid rgba(11,39,71,.13);border-radius:9px;background:#f7fafc;color:#0b2747;text-decoration:none;font-weight:750}
.associated-projects{border-top:4px solid #6a8d3c}
@media(max-width:680px){.search-questions ul{grid-template-columns:1fr}}


/* PLAN DE RUPTURE PRIORITY 20260803M */
.book-main-subtitle{font-family:var(--font-serif,Georgia,serif);font-size:clamp(1.05rem,2vw,1.35rem);line-height:1.35;color:#e8c98a;margin:0 0 15px;font-weight:700}
.plan-primary-actions{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 12px}.plan-primary-actions .buy-btn{margin:0;flex:1 1 230px;text-align:center}.plan-btn-free{background:#e8c98a!important;color:#07182c!important;border-color:#e8c98a!important}.plan-transparency{background:#fff;border-left:4px solid #b98a3d;border-radius:6px;padding:12px 14px;color:#263241!important;line-height:1.55}.plan-doc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:20px}.plan-doc-card{border:1px solid rgba(11,39,71,.15);background:#f7fafc;border-radius:12px;padding:20px;display:flex;flex-direction:column}.plan-doc-card--featured{background:#07182c;color:#fff;border-color:#b98a3d}.plan-doc-card--featured h3{color:#e8c98a}.plan-doc-card h3{font-family:var(--font-serif,Georgia,serif);color:#0b2747;margin:.15rem 0 .7rem}.plan-doc-card__tag{font-size:.78rem;font-weight:850;text-transform:uppercase;letter-spacing:.06em;color:#9b6f2e;margin:0}.plan-doc-card--featured .plan-doc-card__tag{color:#e8c98a}.plan-doc-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:auto;padding-top:12px}.plan-doc-actions a,.plan-doc-actions button{display:inline-flex;padding:9px 13px;border:0;border-radius:7px;background:#0b2747;color:#fff;text-decoration:none;font:inherit;font-weight:800;cursor:pointer}.plan-doc-card--featured .plan-doc-actions a,.plan-doc-card--featured .plan-doc-actions button{background:#e8c98a;color:#07182c}.plan-document-date{font-size:.9rem;color:#586574;margin-top:14px}.plan-reader{height:min(1000px,80vh);min-height:650px;border:1px solid rgba(11,39,71,.2);border-radius:12px;overflow:hidden;background:#31343a;box-shadow:0 12px 30px rgba(11,39,71,.16)}.plan-reader iframe{width:100%;height:100%;border:0;background:#fff}.plan-reader:fullscreen{height:100vh;width:100vw;border-radius:0}.plan-reader__actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.plan-reader__actions .buy-btn{margin:0}.plan-short-reader-section[hidden]{display:none}.plan-short-reader{height:min(780px,72vh);min-height:480px;border:1px solid rgba(11,39,71,.2);border-radius:12px;overflow:hidden;background:#31343a;box-shadow:0 12px 30px rgba(11,39,71,.14)}.plan-short-reader iframe{width:100%;height:100%;border:0;background:#fff}.plan-toc__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;margin-top:18px}.plan-toc__grid a{display:block;padding:13px 15px;border-radius:9px;border:1px solid rgba(11,39,71,.13);background:#f7fafc;color:#0b2747;text-decoration:none;font-weight:760}.plan-answer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:18px}.plan-answer-grid article{border:1px solid rgba(11,39,71,.14);border-radius:11px;padding:18px;background:#f7fafc}.plan-answer-grid h3{font-family:var(--font-serif,Georgia,serif);color:#0b2747;margin:0 0 9px}.plan-context-2027{border-left:5px solid #6a8d3c;background:#f4f8ee}.plan-sources ol{padding-left:1.25rem}.plan-sources li{margin:.8rem 0;line-height:1.65}.plan-biblio{background:#f7fafc;border:1px solid rgba(11,39,71,.14);border-radius:10px;padding:18px;overflow-wrap:anywhere}.plan-home-feature{max-width:1180px;margin:28px auto;padding:28px;border-radius:16px;background:linear-gradient(135deg,#07182c,#0b2747 68%,#4b2d18);color:#fff;display:grid;grid-template-columns:minmax(150px,220px) minmax(0,1fr);gap:28px;align-items:center;box-shadow:0 18px 42px rgba(11,39,71,.2)}.plan-home-feature img{width:100%;height:auto;max-height:300px;object-fit:contain;border-radius:8px}.plan-home-feature h2{font-family:var(--font-serif,Georgia,serif);font-size:clamp(1.7rem,3vw,2.55rem);margin:5px 0 12px;color:#fff}.plan-home-feature p{line-height:1.6;color:#edf2f6}.plan-home-feature__eyebrow{color:#e8c98a!important;text-transform:uppercase;letter-spacing:.09em;font-weight:900;font-size:.78rem}.plan-link-callout{margin:24px 0;padding:18px;border-left:4px solid #b98a3d;background:#fbf7ee;border-radius:7px}.plan-link-callout h2,.plan-link-callout h3{margin-top:0;color:#0b2747}.plan-link-callout .buy-btn{margin:6px 8px 0 0}.plan-press .buy-btn{display:inline-flex}.plan-citation a{overflow-wrap:anywhere}
@media(max-width:800px){.plan-doc-grid,.plan-answer-grid,.plan-toc__grid{grid-template-columns:1fr}.plan-reader{height:70vh;min-height:520px}.plan-home-feature{grid-template-columns:130px minmax(0,1fr);margin:18px 12px;padding:20px;gap:18px}}
@media(max-width:520px){.plan-primary-actions,.plan-reader__actions{display:grid;grid-template-columns:1fr}.plan-primary-actions .buy-btn,.plan-reader__actions .buy-btn{width:100%}.plan-reader{height:70vh;min-height:430px}.plan-home-feature{grid-template-columns:1fr;text-align:center}.plan-home-feature img{max-width:180px;margin:0 auto}.book-main-subtitle{text-align:left}.plan-opening .book-opening__copy{text-align:left}}


/* VIDEO ORDER CONTROLS 20260803K */
.video-library-controls{display:grid;grid-template-columns:repeat(2,minmax(220px,1fr)) auto;gap:14px;align-items:end;margin:22px 0 4px;padding:18px;border:1px solid rgba(11,39,71,.16);border-radius:12px;background:#f7fafc}
.video-library-controls label{display:grid;gap:7px;font-weight:800;color:#0b2747}.video-library-controls select{width:100%;padding:11px 12px;border:1px solid #aeb8c2;border-radius:7px;background:#fff;font:inherit}.video-visible-count{font-weight:800;color:#7d5520;padding:11px 0}.video-card[hidden]{display:none!important}
.video-order-intro{border-left:4px solid #b98a3d}
@media(max-width:760px){.video-library-controls{grid-template-columns:1fr}.video-visible-count{padding:0}}

/* Readability fix for the video-library introductory notice */
.video-hub-opening .notice{color:#26313d!important}

/* Readability fix for editorial notices placed on dark hero sections */
.book-opening .notice,.books-opening .notice,.essays-opening .notice{color:#26313d!important}


/* === SOURCE: site-fixes-v206.css === */

/* Delta-Sierra V20.6 — liens explicites, accessibilité et actions flottantes */
:root{--ds-link:#0b4f8a;--ds-link-hover:#b40000;--ds-focus:#f4a62a}
main a:not(.buy-btn):not(.cat-btn):not(.live-player-button):not(.news-control):not(.floating-btn),
.seo-main a:not(.buy-btn):not(.cat-btn):not(.floating-btn){
  color:var(--ds-link);text-decoration-thickness:.09em;text-underline-offset:.18em;
  transition:color .16s ease,background-color .16s ease,border-color .16s ease,transform .16s ease;
}
main a:not(.buy-btn):not(.cat-btn):not(.floating-btn):hover,
main a:not(.buy-btn):not(.cat-btn):not(.floating-btn):focus-visible,
.seo-main a:not(.buy-btn):not(.cat-btn):not(.floating-btn):hover,
.seo-main a:not(.buy-btn):not(.cat-btn):not(.floating-btn):focus-visible{color:var(--ds-link-hover);text-decoration-thickness:.14em}
a:focus-visible,button:focus-visible{outline:3px solid var(--ds-focus);outline-offset:3px}
.channel-actions a,.collection-links a,.video-collections a,.priority-card{position:relative}
.channel-actions a:hover,.channel-actions a:focus-visible,.collection-links a:hover,.collection-links a:focus-visible,.video-collections a:hover,.video-collections a:focus-visible{border-color:var(--ds-link-hover)!important;background:#fff8f5!important;color:var(--ds-link-hover)!important;transform:translateY(-2px)}
.floating-actions{position:fixed;right:16px;bottom:18px;z-index:999;display:flex;flex-direction:column;gap:9px;align-items:flex-end}
.floating-btn{display:flex;align-items:center;gap:8px;min-height:44px;padding:10px 13px;border-radius:999px;background:#0d2b4f;color:#fff!important;text-decoration:none!important;box-shadow:0 8px 24px rgba(0,0,0,.22);border:1px solid rgba(255,255,255,.22);font-weight:750}
.floating-btn:hover,.floating-btn:focus-visible{background:#b40000;transform:translateX(-2px)}
.floating-btn--support,.floating-btn--don{background:#a90018}
.floating-btn__icon{font-size:1.05rem}.floating-btn__label{font-size:.84rem}
@media(max-width:720px){.floating-actions{right:9px;bottom:10px}.floating-btn__label{display:none}.floating-btn{width:46px;height:46px;padding:0;justify-content:center}.floating-btn__icon{font-size:1.2rem}}

.video-catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.video-catalog-card{display:flex!important;flex-direction:column;color:#0b2b50!important;text-decoration:none!important;border:1px solid #d4dce5;border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 8px 22px rgba(10,35,65,.07)}.video-catalog-card img{width:100%;aspect-ratio:16/9;object-fit:cover}.video-catalog-card span{padding:15px;display:flex;flex-direction:column;gap:7px}.video-catalog-card:hover,.video-catalog-card:focus-visible{transform:translateY(-2px);border-color:#b40000;background:#fff7f2!important}.video-catalog-card small{color:#4d5d6f}.seo-section ul li{margin:.45em 0}@media(max-width:900px){.video-catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.video-catalog-grid{grid-template-columns:1fr}}


/* V20.6.1 — navigation uniforme, contrastes et interactions visibles */
.site-nav__inner{display:flex;align-items:center;justify-content:center;gap:2px;flex-wrap:wrap;overflow:visible}
.site-nav a,.nav-language-menu summary{transition:background-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease;border-radius:5px}
.site-nav a:hover,.site-nav a:focus-visible,.nav-language-menu summary:hover,.nav-language-menu summary:focus-visible{background:#0d2b4f!important;color:#fff!important;box-shadow:0 3px 10px rgba(13,43,79,.2);transform:translateY(-1px)}
.mars-nav-link{font-weight:850!important;color:#8d1d10!important}.mars-nav-link:hover,.mars-nav-link:focus-visible{background:#a63b1d!important;color:#fff!important}
.nav-language-menu{position:relative;margin-left:2px}.nav-language-menu summary{cursor:pointer;list-style:none;padding:10px 11px;font:inherit;color:inherit}.nav-language-menu summary::-webkit-details-marker{display:none}.nav-language-menu__panel{position:absolute;right:0;top:calc(100% + 5px);z-index:1200;display:grid;min-width:180px;padding:7px;background:#fff;border:1px solid #ccd5df;border-radius:10px;box-shadow:0 12px 34px rgba(0,0,0,.18)}.nav-language-menu:not([open]) .nav-language-menu__panel{display:none}.nav-language-menu__panel a{display:block;padding:9px 10px;color:#0b2b50!important;text-decoration:none!important}.nav-language-menu__panel a:hover,.nav-language-menu__panel a:focus-visible{background:#eef4fa!important;color:#a90018!important;transform:none}

/* Les liens qui ont visuellement la fonction d'un bouton doivent toujours rester lisibles. */
.series-hub-links{display:flex!important;justify-content:center;gap:12px!important;flex-wrap:wrap}.series-hub-links a,.english-mars-gateway__actions a,.live-inline-gateway>a,.home-priority-link a,.plan-primary-actions a,.plan-doc-actions a,.priority-jump a,.priority-visual-card__action,.live-wall-actions a,.live-wall-actions button,.live-wall__toolbar button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:11px 16px;border:2px solid #0d2b4f;border-radius:999px;background:#0d2b4f;color:#fff!important;text-decoration:none!important;font-weight:850;line-height:1.2;box-shadow:0 4px 12px rgba(13,43,79,.16);transition:transform .18s ease,background .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease}
.series-hub-links a:nth-child(2),.series-hub-links__mars,.plan-doc-card--featured .plan-doc-actions a{background:#dba83d;color:#061b34!important;border-color:#dba83d}.series-hub-links__mars{background:#a63b1d!important;border-color:#a63b1d!important;color:#fff!important}
.series-hub-links a:hover,.series-hub-links a:focus-visible,.english-mars-gateway__actions a:hover,.english-mars-gateway__actions a:focus-visible,.live-inline-gateway>a:hover,.live-inline-gateway>a:focus-visible,.home-priority-link a:hover,.home-priority-link a:focus-visible,.plan-primary-actions a:hover,.plan-primary-actions a:focus-visible,.plan-doc-actions a:hover,.plan-doc-actions a:focus-visible,.priority-jump a:hover,.priority-jump a:focus-visible,.priority-visual-card__action:hover,.priority-visual-card__action:focus-visible,.live-wall-actions a:hover,.live-wall-actions a:focus-visible,.live-wall-actions button:hover,.live-wall-actions button:focus-visible,.live-wall__toolbar button:hover,.live-wall__toolbar button:focus-visible{background:#b40000!important;border-color:#b40000!important;color:#fff!important;transform:translateY(-3px);box-shadow:0 9px 20px rgba(180,0,0,.22)}
.plan-doc-actions{display:flex;gap:9px;flex-wrap:wrap}.plan-doc-actions a{border-radius:7px!important;padding:9px 13px!important}.plan-doc-card--featured h3{color:#fff!important}.plan-doc-card--featured .plan-doc-card__tag{color:#f1c45e!important}

/* French home: Mars remains visible, but after the political and economic articles. */
.french-mars-gateway{margin-top:38px!important;margin-bottom:28px!important}.french-mars-gateway .english-mars-gateway__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}

/* Priority dossiers: magazine-style visual cards. */
.priority-hero{max-width:1180px;margin:24px auto!important;text-align:center;background:linear-gradient(135deg,#071f3a,#123f6f 62%,#6e2618);color:#fff!important;border:0!important;padding:44px clamp(22px,5vw,64px)!important}.priority-hero h1{color:#fff!important;font-size:clamp(2rem,4vw,3.4rem);margin:.2em 0}.priority-kicker{font-weight:900;letter-spacing:.16em;color:#f0c365!important}.priority-lead{max-width:880px;margin:0 auto 22px;font-size:1.08rem;line-height:1.75;color:#f4f7fa!important}.priority-jump{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.priority-group{max-width:1240px;margin:34px auto;padding:0 18px}.priority-group__heading{max-width:900px;margin:0 auto 24px;text-align:center}.priority-group__heading>p:first-child{font-weight:900;letter-spacing:.12em;color:#a86800}.priority-group__heading h2{font-size:clamp(1.8rem,3vw,2.7rem);color:#08294e}.priority-group__heading p:last-child{font-size:1.05rem;line-height:1.75}.priority-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.priority-grid--books{grid-template-columns:repeat(2,minmax(0,1fr));max-width:900px;margin:0 auto}.priority-visual-card{display:flex;flex-direction:column;overflow:hidden;border:1px solid #d5dce4;border-radius:16px;background:#fff;box-shadow:0 10px 28px rgba(8,41,78,.09);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.priority-visual-card:hover,.priority-visual-card:focus-within{transform:translateY(-6px);border-color:#a63b1d;box-shadow:0 18px 38px rgba(8,41,78,.16)}.priority-visual-card__media{display:block;overflow:hidden;background:#0d2b4f;aspect-ratio:4/3}.priority-visual-card__media img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.priority-visual-card:hover img,.priority-visual-card:focus-within img{transform:scale(1.045)}.priority-visual-card__body{display:flex;flex:1;flex-direction:column;padding:22px}.priority-visual-card__tag{margin:0 0 8px;font-weight:900;letter-spacing:.09em;font-size:.78rem;color:#a86800}.priority-visual-card h3{font-size:1.45rem;line-height:1.12;margin:.1em 0 .65em}.priority-visual-card h3 a{color:#08294e!important;text-decoration:none!important}.priority-visual-card h3 a:hover,.priority-visual-card h3 a:focus-visible{color:#b40000!important}.priority-visual-card__body>p:not(.priority-visual-card__tag){line-height:1.65;flex:1}.priority-visual-card__action{align-self:flex-start;margin-top:10px}

/* Full English video catalogue mirrors the French library. */
.en-video-library-intro{max-width:900px;margin:0 auto}.video-card{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.video-card:hover,.video-card:focus-within{transform:translateY(-4px);border-color:#b40000!important;box-shadow:0 12px 28px rgba(8,41,78,.16)}.video-card h3 a:hover,.video-card h3 a:focus-visible{color:#b40000!important}.video-card .buy-btn:hover,.video-card .buy-btn:focus-visible{background:#b40000!important;border-color:#b40000!important;color:#fff!important;transform:translateY(-2px)}

@media(max-width:940px){.priority-grid,.priority-grid--books{grid-template-columns:repeat(2,minmax(0,1fr))}.site-nav__inner{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap}.nav-language-menu__panel{position:fixed;right:12px;top:74px}}
@media(max-width:620px){.priority-grid,.priority-grid--books{grid-template-columns:1fr}.priority-hero{border-radius:0!important;margin-top:0!important}.series-hub-links a,.english-mars-gateway__actions a{width:100%}.nav-language-menu summary{white-space:nowrap}}

/* V20.6.2 — tous les boutons doivent être identifiables avant et pendant le survol. */
a.buy-btn,a.cat-btn,a.btn-soutien,button.buy-btn,button.cat-btn,
.article-card .preview-badge,.book-actions a,.card-actions a{
  transition:transform .18s ease,background-color .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease,filter .18s ease;
}
a.buy-btn,a.cat-btn,.book-actions a,.card-actions a{
  border:2px solid #0d2b4f!important;background:#0d2b4f!important;color:#fff!important;
  box-shadow:0 4px 12px rgba(13,43,79,.17);text-decoration:none!important;
}
a.buy-btn:hover,a.buy-btn:focus-visible,a.cat-btn:hover,a.cat-btn:focus-visible,
.book-actions a:hover,.book-actions a:focus-visible,.card-actions a:hover,.card-actions a:focus-visible{
  background:#b40000!important;border-color:#b40000!important;color:#fff!important;
  transform:translateY(-3px);box-shadow:0 9px 20px rgba(180,0,0,.24);
}
a.buy-btn--secondary{background:#d7a536!important;border-color:#d7a536!important;color:#061b34!important}
a.buy-btn--secondary:hover,a.buy-btn--secondary:focus-visible{background:#b40000!important;border-color:#b40000!important;color:#fff!important}
.btn-soutien:hover,.btn-soutien:focus-visible{background:#fff!important;color:#a90018!important;border-color:#fff!important;transform:translateY(-2px)}
.floating-btn--back{font:inherit;cursor:pointer}.floating-btn--back:hover,.floating-btn--back:focus-visible{background:#b40000;color:#fff}
.news-column__status{margin:10px 0 0;font-size:.78rem;line-height:1.4;color:#526375}.news-item.is-seed{border-left:4px solid #d39b2d}.news-item.is-seed::after{content:"source permanente";font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#7c5b10}.news-column[data-locale^="en"] .news-item.is-seed::after{content:"permanent source"}
.video-narrative-intro{border-left:5px solid #b8862f;background:#fffaf0}.video-deep-section p{font-size:1.02rem;line-height:1.78}.video-editorial-conclusion{background:#f4f7fa}


/* === SOURCE: site-fixes-v2065.css === */
/* Delta-Sierra V20.6.5 — cumulative visual, navigation and security corrections.
   This file deliberately retains the still-used V20.6.3 visual selectors,
   then applies the V20.6.4 language/security layer. */

/* Delta-Sierra V20.6.3 — harmonisation visible et indépendante du cache ancien */
.site-nav__inner{display:flex!important;align-items:center;justify-content:center;gap:4px;flex-wrap:wrap;padding:3px 8px}.site-nav a,.nav-language-menu summary{display:inline-flex;align-items:center;min-height:38px;padding:8px 10px;border-radius:7px;text-decoration:none!important;cursor:pointer;transition:background .18s,color .18s,transform .18s,box-shadow .18s}.site-nav a:hover,.site-nav a:focus-visible,.nav-language-menu summary:hover,.nav-language-menu summary:focus-visible{background:#0c2b4e!important;color:#fff!important;transform:translateY(-2px);box-shadow:0 5px 14px rgba(8,41,78,.2)}.mars-nav-link{font-weight:900!important;color:#9b2918!important}.mars-nav-link:hover,.mars-nav-link:focus-visible{background:#a52b1b!important;color:#fff!important}.nav-language-menu{position:relative}.nav-language-menu summary{list-style:none;white-space:nowrap}.nav-language-menu summary::-webkit-details-marker{display:none}.nav-language-menu__panel{position:absolute;right:0;top:calc(100% + 6px);z-index:5000;display:grid;min-width:190px;padding:8px;background:#fff;border:1px solid #ccd5e0;border-radius:12px;box-shadow:0 16px 38px rgba(0,0,0,.22)}.nav-language-menu:not([open]) .nav-language-menu__panel{display:none}.nav-language-menu__panel a{color:#0a2a4e!important;background:#fff!important}.nav-language-menu__panel a:hover,.nav-language-menu__panel a:focus-visible{background:#eef4fa!important;color:#b40000!important;transform:none}
.french-mars-gateway{display:block!important;max-width:1180px;margin:58px auto 42px!important;padding:clamp(30px,5vw,62px)!important;text-align:center;color:#fff;background:radial-gradient(circle at 80% 20%,rgba(185,73,32,.48),transparent 35%),linear-gradient(135deg,#06182d,#123a65 66%,#6e2318);border:1px solid rgba(255,255,255,.14);border-radius:26px;box-shadow:0 22px 54px rgba(7,30,57,.25)}.french-mars-gateway .english-mars-gateway__copy{max-width:920px;margin:auto}.french-mars-gateway h2{margin:.2em auto .45em;color:#fff!important;font-size:clamp(2rem,4vw,3.7rem);line-height:1.04}.french-mars-gateway p{color:#e6eef8!important;line-height:1.75;font-size:1.05rem}.french-mars-gateway .english-mars-gateway__eyebrow{color:#f5c76d!important;font-weight:950;letter-spacing:.15em}.french-mars-gateway .english-mars-gateway__actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:26px 0 16px}.french-mars-gateway .english-mars-gateway__actions a{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:12px 18px;border:2px solid rgba(255,255,255,.55);border-radius:999px;background:rgba(255,255,255,.08);color:#fff!important;text-decoration:none!important;font-weight:900;transition:.18s}.french-mars-gateway .english-mars-gateway__actions a:first-child{background:#c3182f;border-color:#c3182f}.french-mars-gateway .english-mars-gateway__actions a:hover,.french-mars-gateway .english-mars-gateway__actions a:focus-visible{background:#fff!important;border-color:#fff!important;color:#092b50!important;transform:translateY(-4px);box-shadow:0 10px 24px rgba(0,0,0,.25)}.french-mars-gateway__note{font-size:.9rem!important;opacity:.9}
/* Generic button affordance, including the plan brochures and book-series buttons. */
a.buy-btn,a.cat-btn,a.btn-soutien,.series-hub-links a,.plan-doc-actions a,.book-actions a,.card-actions a,.priority-showcase-card__action{position:relative;transition:background .18s,color .18s,border-color .18s,transform .18s,box-shadow .18s,filter .18s!important}.series-hub-links a,.plan-doc-actions a,a.buy-btn,a.cat-btn,.book-actions a,.card-actions a{border:2px solid #0c2b4e!important;background:#0c2b4e!important;color:#fff!important;text-decoration:none!important;box-shadow:0 5px 14px rgba(8,41,78,.18)}.series-hub-links a:hover,.series-hub-links a:focus-visible,.plan-doc-actions a:hover,.plan-doc-actions a:focus-visible,a.buy-btn:hover,a.buy-btn:focus-visible,a.cat-btn:hover,a.cat-btn:focus-visible,.book-actions a:hover,.book-actions a:focus-visible,.card-actions a:hover,.card-actions a:focus-visible{background:#b40000!important;border-color:#b40000!important;color:#fff!important;transform:translateY(-3px);box-shadow:0 11px 24px rgba(180,0,0,.25)}
.news-stream{min-height:240px!important}.news-empty{display:none!important}.news-item{display:block!important}.news-item.is-seed{background:#fffdf6;border-left:5px solid #d1a13d}.news-column:has(.news-item) .news-stream{background:linear-gradient(#eef3f8,#f8fafc)}.news-column__status{display:block!important;margin-top:9px;color:#4f6276;font-size:.78rem}.news-grid{align-items:start}
.video-tailored-dossier{border-top:6px solid #ad7420;background:linear-gradient(180deg,#fffaf0,#fff);box-shadow:0 10px 30px rgba(8,41,78,.08)}.video-tailored-dossier h2{font-size:clamp(1.7rem,3vw,2.5rem)}.video-tailored-dossier h3{margin-top:1.45em;color:#8d2c1d}.video-tailored-dossier p{font-size:1.04rem;line-height:1.82}.merged-journey-section{margin-top:38px;border-top:5px solid #a66b12}.merged-journey-section>section{margin-top:20px;padding:18px;background:#f8fafc;border:1px solid #dce3eb;border-radius:12px}
@media(max-width:950px){.site-nav__inner{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap}.nav-language-menu__panel{position:fixed;right:12px;top:76px}.french-mars-gateway{margin-inline:14px!important}}
@media(max-width:620px){.french-mars-gateway{border-radius:18px;padding:30px 18px!important}.french-mars-gateway .english-mars-gateway__actions a{width:100%}}


/* V20.6.4 layer retained below */
/* Delta-Sierra V20.6.4 — navigation, language switcher and security release */
.site-header__actions{display:flex;gap:12px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.site-language-switcher{position:relative;color:#0b2d52}.site-language-switcher summary{list-style:none;display:inline-flex;align-items:center;min-height:40px;padding:9px 14px;border:2px solid rgba(255,255,255,.72);border-radius:999px;background:#fff;color:#0b2d52;font-weight:900;cursor:pointer;box-shadow:0 4px 14px rgba(0,0,0,.12);transition:.18s}.site-language-switcher summary::-webkit-details-marker{display:none}.site-language-switcher summary:hover,.site-language-switcher summary:focus-visible{background:#f5c85b;color:#061d37;border-color:#f5c85b;transform:translateY(-2px);box-shadow:0 9px 20px rgba(0,0,0,.22)}.site-language-switcher__compact{display:none}.site-language-switcher__panel{position:absolute;right:0;top:calc(100% + 8px);z-index:9999;display:grid;min-width:270px;padding:9px;background:#fff;border:1px solid #cbd6e2;border-radius:14px;box-shadow:0 20px 45px rgba(0,0,0,.28)}.site-language-switcher:not([open]) .site-language-switcher__panel{display:none}.site-language-switcher__option{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 12px;border-radius:9px;color:#0b2d52!important;text-decoration:none!important;font-weight:800;transition:.16s}.site-language-switcher__option small{font-size:.72rem;font-weight:700;color:#6c7885}.site-language-switcher__option:hover,.site-language-switcher__option:focus-visible{background:#eaf1f8!important;color:#a60000!important;transform:translateX(3px)}.site-language-switcher__option.is-current{background:#0b2d52!important;color:#fff!important}.site-language-switcher__option.is-current small{color:#dbe7f3}.site-language-switcher__option.is-fallback{border-left:3px solid #d4a23b}.site-nav__inner{display:flex!important;align-items:center;justify-content:center;gap:4px;flex-wrap:wrap;padding:3px 8px}.site-nav a{display:inline-flex;align-items:center;min-height:38px;padding:8px 10px;border-radius:7px;text-decoration:none!important;cursor:pointer;transition:background .18s,color .18s,transform .18s,box-shadow .18s}.site-nav a:hover,.site-nav a:focus-visible{background:#0c2b4e!important;color:#fff!important;transform:translateY(-2px);box-shadow:0 5px 14px rgba(8,41,78,.2)}.mars-nav-link{font-weight:900!important;color:#9b2918!important}.mars-nav-link:hover,.mars-nav-link:focus-visible{background:#a52b1b!important;color:#fff!important}.video-individual-review{border-top:6px solid #ad7420;background:linear-gradient(180deg,#fffaf0,#fff);box-shadow:0 10px 30px rgba(8,41,78,.08)}.video-individual-review p{font-size:1.04rem;line-height:1.82}.news-stream{min-height:240px!important}.news-item{display:block!important}.news-item.is-seed{background:#fffdf6;border-left:5px solid #d1a13d}.news-column__status{display:block!important;margin-top:9px;color:#4f6276;font-size:.78rem}
@media(max-width:950px){.site-nav__inner{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap}.site-language-switcher__wide{display:none}.site-language-switcher__compact{display:inline}.site-language-switcher__panel{position:fixed;right:12px;top:74px}.site-header__actions{flex-wrap:nowrap}}
@media(max-width:560px){.site-header__title{font-size:.95rem}.site-language-switcher summary{padding:8px 11px}.btn-soutien{padding:9px 11px!important;font-size:.82rem!important}.site-language-switcher__panel{left:12px;right:12px;min-width:0}}


/* V20.6.8 — the language selector always displays the five requested flags. */
.site-language-switcher__wide,.site-language-switcher__compact{white-space:nowrap;letter-spacing:.08em;font-size:1.08rem;line-height:1}
@media(max-width:950px){.site-language-switcher__compact{display:inline-flex;align-items:center}.site-language-switcher summary{padding-left:12px;padding-right:12px}}
@media(max-width:560px){.site-language-switcher__compact{font-size:.96rem;letter-spacing:.03em}.site-language-switcher summary{padding-left:9px;padding-right:9px}}


/* === SOURCE: site-navigation-v2069.css === */
/* Delta-Sierra V20.6.9 — centralised navigation and accessible language selector */
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.site-language-switcher summary{min-width:154px;justify-content:center}
.site-language-switcher__flags{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}
.site-language-switcher__flag,.site-language-switcher__option-flag{display:block;width:20px;height:14px;object-fit:cover;border:1px solid rgba(8,41,78,.22);border-radius:2px;box-shadow:0 1px 2px rgba(0,0,0,.12)}
.site-language-switcher__option{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px}
.site-language-switcher__option-main{display:flex;align-items:center;gap:10px;min-width:0}
.site-language-switcher__option-name{overflow-wrap:anywhere}
.site-language-switcher__option small{max-width:155px;text-align:right;line-height:1.25}
.site-language-switcher__option.is-fallback small{color:#8a5b00}
.site-language-switcher__option.is-fallback{background:#fffaf0!important}
.site-language-switcher__option.is-fallback:hover,.site-language-switcher__option.is-fallback:focus-visible{background:#fff2cf!important}
.site-language-switcher summary:focus-visible,.site-language-switcher__option:focus-visible,.site-nav a:focus-visible,.btn-soutien:focus-visible{outline:3px solid #f5c85b!important;outline-offset:3px!important}
.site-nav a[aria-current="page"]{background:#0c2b4e!important;color:#fff!important;box-shadow:inset 0 -3px 0 #f5c85b}
.knowledge-gateways-v2069{max-width:1180px;margin:30px auto;padding:0 20px}
.knowledge-gateways-v2069>h2{text-align:center;color:#0b2d52;margin:0 0 18px}
.knowledge-gateways-v2069__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.knowledge-gateway-v2069{display:flex;flex-direction:column;min-height:245px;padding:24px;border:1px solid #d7e0e9;border-radius:16px;background:#fff;box-shadow:0 10px 28px rgba(8,41,78,.08)}
.knowledge-gateway-v2069__eyebrow{margin:0 0 8px;font-size:.76rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#9b2918}
.knowledge-gateway-v2069 h3{margin:0 0 10px;color:#0b2d52;font-size:1.28rem}
.knowledge-gateway-v2069 p{margin:0 0 18px;line-height:1.65;color:#3c4f61}
.knowledge-gateway-v2069 a{margin-top:auto;align-self:flex-start;font-weight:900;color:#9b2918;text-decoration:none}
.articles-section__heading{max-width:1180px;margin:0 auto 16px;padding:0 20px;display:flex;align-items:end;justify-content:space-between;gap:18px}
.articles-section__heading h2{margin:0;color:#0b2d52}
.articles-section__heading p{margin:4px 0 0;color:#516477}
.article-card[hidden]{display:none!important}
#articles-no-results{grid-column:1/-1}
@media(max-width:900px){.knowledge-gateways-v2069__grid{grid-template-columns:1fr}.site-language-switcher summary{min-width:0}.site-language-switcher__option{grid-template-columns:1fr}.site-language-switcher__option small{text-align:left;max-width:none;padding-left:30px}}
@media(max-width:560px){.site-language-switcher__flags{gap:3px}.site-language-switcher__flag{width:18px;height:12px}.site-language-switcher__panel{max-height:calc(100vh - 96px);overflow:auto}.articles-section__heading{align-items:flex-start;flex-direction:column}}


/* === SOURCE: france-portal-v207.css === */
:root{--ds-red:#941b1f;--ds-red-dark:#5e0f12;--ds-ink:#17202a;--ds-soft:#f5f2ee;--ds-gold:#b58734;--ds-blue:#173a5e;--ds-green:#1e6647;--ds-line:#d9d4ce}
.knowledge-page{background:#f8f7f4;color:var(--ds-ink)}
.knowledge-page main{min-height:70vh}
.knowledge-hero{background:linear-gradient(120deg,rgba(24,29,36,.95),rgba(94,15,18,.92));color:#fff;padding:clamp(3rem,7vw,6rem) 1.2rem;overflow:hidden}
.knowledge-shell{width:min(1180px,calc(100% - 2rem));margin:auto}
.knowledge-hero__grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr);gap:clamp(1.5rem,4vw,4rem);align-items:center}
.knowledge-kicker{font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#f2c878;font-size:.83rem}
.knowledge-hero h1{font-size:clamp(2.25rem,5vw,4.9rem);line-height:1.03;margin:.35rem 0 1rem;max-width:15ch}
.knowledge-lead{font-size:clamp(1.08rem,2vw,1.35rem);line-height:1.65;max-width:760px}
.knowledge-hero figure{margin:0;position:relative}.knowledge-hero figure:after{content:"";position:absolute;inset:10% -10% -10% 15%;border:1px solid rgba(255,255,255,.3);border-radius:30px;transform:rotate(4deg)}
.knowledge-hero img{position:relative;z-index:1;width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:28px;box-shadow:0 28px 70px rgba(0,0,0,.38)}
.knowledge-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.5rem}.knowledge-actions a{display:inline-flex;align-items:center;justify-content:center;padding:.85rem 1.15rem;border-radius:999px;background:#fff;color:#561014;text-decoration:none;font-weight:800}.knowledge-actions a.secondary{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.5)}
.knowledge-main{padding:2.2rem 0 5rem}.knowledge-toc{background:#fff;border:1px solid var(--ds-line);border-radius:18px;padding:1.25rem 1.4rem;box-shadow:0 10px 30px rgba(25,25,25,.05);margin-bottom:1.5rem}.knowledge-toc strong{display:block;margin-bottom:.65rem}.knowledge-toc ol{columns:2;gap:2rem;margin:.4rem 0;padding-left:1.2rem}.knowledge-toc a{color:var(--ds-blue)}
.knowledge-section{background:#fff;border:1px solid var(--ds-line);border-radius:22px;padding:clamp(1.35rem,3vw,2.4rem);margin:1.25rem 0;box-shadow:0 12px 35px rgba(35,25,20,.045)}
.knowledge-section h2{font-size:clamp(1.55rem,3vw,2.35rem);line-height:1.15;color:#401012;margin:.1rem 0 1rem}.knowledge-section h3{font-size:1.25rem;color:#283749;margin-top:1.6rem}.knowledge-section p,.knowledge-section li{line-height:1.75}.knowledge-section a{color:#8b1519;text-underline-offset:3px}
.evidence-note{border-left:5px solid var(--ds-gold);background:#fff8e9;padding:1rem 1.2rem;border-radius:0 14px 14px 0;margin:1rem 0}.evidence-note strong{display:block;margin-bottom:.3rem}
.level-grid,.metric-grid,.query-grid,.resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.level-card,.metric-card,.query-card,.resource-card{border:1px solid var(--ds-line);border-radius:16px;padding:1.15rem;background:#fff}.level-card[data-level="fact"]{border-top:5px solid var(--ds-blue)}.level-card[data-level="analysis"]{border-top:5px solid var(--ds-gold)}.level-card[data-level="proposal"]{border-top:5px solid var(--ds-red)}.level-card h3,.metric-card h3,.query-card h3,.resource-card h3{margin:.1rem 0 .55rem}.level-label{font-size:.76rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.metric-card{background:linear-gradient(145deg,#fff,#f6f3ef)}.metric-value{display:block;font-size:clamp(1.7rem,3vw,2.45rem);font-weight:900;color:var(--ds-red-dark);line-height:1.05}.metric-unit{display:block;font-size:.9rem;color:#5b6470;margin-top:.35rem}.metric-period{font-size:.78rem;color:#737b83}
.query-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.query-card{text-decoration:none;color:inherit;transition:.18s transform,.18s box-shadow}.query-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(30,30,30,.09)}
.data-table-wrap{overflow:auto;border:1px solid var(--ds-line);border-radius:14px}.data-table{width:100%;border-collapse:collapse;background:#fff;min-width:820px}.data-table th,.data-table td{padding:.8rem .85rem;border-bottom:1px solid #e9e5df;text-align:left;vertical-align:top}.data-table th{background:#2a3139;color:#fff;position:sticky;top:0}.data-table tr:nth-child(even) td{background:#faf8f5}.data-table small{display:block;color:#69727d;margin-top:.2rem}
.download-panel{display:flex;flex-wrap:wrap;gap:.75rem;padding:1rem;background:#eef3f8;border-radius:15px}.download-panel a{display:inline-flex;padding:.75rem 1rem;background:#173a5e;color:#fff;border-radius:10px;text-decoration:none;font-weight:800}
.timeline{position:relative;margin:1rem 0;padding-left:1.6rem}.timeline:before{content:"";position:absolute;left:.38rem;top:.4rem;bottom:.4rem;width:3px;background:linear-gradient(var(--ds-gold),var(--ds-red))}.timeline-entry{position:relative;padding:0 0 1.25rem 1rem}.timeline-entry:before{content:"";position:absolute;left:-1.5rem;top:.42rem;width:.78rem;height:.78rem;border-radius:50%;background:#fff;border:3px solid var(--ds-red)}.timeline-entry time{display:inline-block;font-weight:900;color:var(--ds-red-dark);margin-right:.4rem}.timeline-entry h3{display:inline;font-size:1.08rem}.timeline-entry p{margin:.35rem 0 0}
.source-list{font-size:.92rem}.source-list li{margin:.7rem 0;overflow-wrap:anywhere}.source-list a{font-weight:700}
.knowledge-visual{margin:1.25rem 0;text-align:center}.knowledge-visual img{max-width:100%;height:auto;border-radius:18px;border:1px solid var(--ds-line);background:#fff}
.portal-cta{background:linear-gradient(120deg,#631014,#a42a2e);color:#fff;border-radius:22px;padding:clamp(1.4rem,4vw,2.6rem);margin:1.4rem 0}.portal-cta h2{color:#fff}.portal-cta a{color:#fff;font-weight:900}
.status-badge{display:inline-flex;padding:.25rem .55rem;border-radius:999px;font-size:.75rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.status-official{background:#e8f0fb;color:#173a5e}.status-author{background:#f8e7e8;color:#781316}.status-method{background:#fff2d7;color:#704f0f}
@media(max-width:860px){.knowledge-hero__grid{grid-template-columns:1fr}.knowledge-hero figure{max-width:480px}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.level-grid,.resource-grid{grid-template-columns:1fr}.knowledge-toc ol{columns:1}}
@media(max-width:560px){.knowledge-shell{width:min(100% - 1rem,1180px)}.knowledge-hero{padding:2.4rem .5rem}.knowledge-section{border-radius:15px;padding:1.1rem}.metric-grid,.query-grid{grid-template-columns:1fr}.knowledge-actions a{width:100%}}


/* === SOURCE: france-dossiers-v2072.css === */

.article-hero-media{margin:1rem 0 0}
.article-hero-media img{width:100%;height:auto;display:block;border-radius:24px;box-shadow:0 26px 70px rgba(12,24,40,.22)}
.article-hero-media figcaption{font-size:.86rem;color:#66717c;margin-top:.55rem}
.glossary-box,.note-box,.warning-box,.method-box{border:1px solid var(--ds-line,#d9dee4);border-radius:18px;padding:1rem 1.1rem;margin:1rem 0;background:#fff}
.glossary-box{border-left:6px solid #153d69;background:linear-gradient(180deg,#fbfdff,#f2f7fd)}
.note-box{border-left:6px solid #9d1520;background:linear-gradient(180deg,#fffaf9,#fff2ef)}
.method-box{border-left:6px solid #7b6013;background:linear-gradient(180deg,#fffdf7,#fbf6e4)}
.warning-box{border-left:6px solid #345b2c;background:linear-gradient(180deg,#fbfff8,#eff9ea)}
.dossier-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.dossier-links article{border:1px solid var(--ds-line,#d9dee4);border-radius:16px;padding:1rem;background:#fff}
.definition-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.definition-list .resource-card{margin:0}
.story-steps{counter-reset:ds-steps;display:grid;gap:1rem;padding:0;list-style:none}
.story-steps li{border:1px solid var(--ds-line,#d9dee4);border-radius:16px;padding:1rem 1rem 1rem 4rem;position:relative;background:#fff}
.story-steps li:before{counter-increment:ds-steps;content:counter(ds-steps);position:absolute;left:1rem;top:1rem;width:2rem;height:2rem;border-radius:999px;background:#8f1111;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800}
.mini-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:1rem}
.mini-metrics .metric-card{padding:1rem}
.related-reading{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.related-reading article{border:1px solid var(--ds-line,#d9dee4);border-radius:16px;padding:1rem;background:#fff}
.inline-image-right{float:right;max-width:42%;margin:.3rem 0 1rem 1.25rem}
.inline-image-right img{width:100%;border-radius:20px;display:block;box-shadow:0 16px 38px rgba(0,0,0,.12)}
.inline-image-right figcaption{font-size:.82rem;color:#66717c;margin-top:.45rem}
.compare-table{width:100%;border-collapse:collapse;margin:1rem 0;background:#fff;border-radius:16px;overflow:hidden}
.compare-table th,.compare-table td{border:1px solid #dfe4ea;padding:.8rem;vertical-align:top;text-align:left}
.compare-table th{background:#f6f0ea}
.hero-landscape .knowledge-hero__grid{grid-template-columns:1.18fr .82fr}
.hero-landscape .knowledge-hero img{aspect-ratio:16/10;object-position:center}
@media (max-width:860px){.dossier-links,.related-reading,.definition-list,.mini-metrics{grid-template-columns:1fr}.inline-image-right{float:none;max-width:100%;margin:1rem 0}.hero-landscape .knowledge-hero__grid{grid-template-columns:1fr}}

.diagram-card{margin:1.2rem 0 0}.diagram-card img{display:block;width:100%;height:auto;border-radius:22px;box-shadow:0 20px 50px rgba(13,31,54,.16)}.diagram-card figcaption{font-size:.84rem;color:#66717c;margin-top:.5rem}.source-note{font-size:.9rem;color:#596678;border-top:1px solid #e2e6ea;padding-top:.8rem;margin-top:1rem}.fact-analysis-proposal{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.fact-analysis-proposal article{border-radius:18px;padding:1rem;background:#fff;border:1px solid #dde3e9}.fact-analysis-proposal article:nth-child(1){border-top:5px solid #173d69}.fact-analysis-proposal article:nth-child(2){border-top:5px solid #b98a4f}.fact-analysis-proposal article:nth-child(3){border-top:5px solid #8f1111}@media(max-width:860px){.fact-analysis-proposal{grid-template-columns:1fr}}


/* === SOURCE: legal-glossary-v2078.css === */

:root{--legal-term:#174c8c;--legal-term-hover:#9a1b27;--legal-tooltip-bg:#fff;--legal-tooltip-text:#122033;--legal-tooltip-line:#c9d7e8}
.legal-term{color:var(--legal-term);font-weight:700;text-decoration-line:underline;text-decoration-style:dotted;text-decoration-thickness:2px;text-underline-offset:.2em;cursor:help;border-radius:.25rem;outline:none;white-space:normal}
.legal-term::after{content:"i";display:inline-flex;align-items:center;justify-content:center;width:1.05em;height:1.05em;margin-left:.18em;border-radius:50%;background:currentColor;color:#fff;font-size:.68em;font-weight:900;line-height:1;vertical-align:.15em;text-decoration:none}
.legal-term:hover,.legal-term:focus-visible,.legal-term[aria-expanded="true"]{color:var(--legal-term-hover);background:rgba(23,76,140,.08);box-shadow:0 0 0 3px rgba(23,76,140,.14)}
.legal-glossary-hint{display:flex;gap:.7rem;align-items:flex-start;margin:1rem auto 1.25rem;padding:.85rem 1rem;border:1px solid #c9d7e8;border-left:5px solid #174c8c;border-radius:14px;background:linear-gradient(135deg,#f7fbff,#fff);color:#21344d;max-width:1180px;box-shadow:0 8px 24px rgba(24,55,90,.07)}
.legal-glossary-hint__icon{flex:0 0 auto;width:1.7rem;height:1.7rem;border-radius:50%;display:grid;place-items:center;background:#174c8c;color:#fff;font-weight:900}
.legal-glossary-hint p{margin:0;line-height:1.45}
.legal-glossary-hint button{margin-left:auto;border:0;background:transparent;color:#4e6076;font-size:1.1rem;cursor:pointer;padding:.1rem .35rem;border-radius:.35rem}
.legal-glossary-hint button:focus-visible{outline:3px solid rgba(23,76,140,.25)}
.legal-tooltip{position:fixed;z-index:100000;display:none;width:min(390px,calc(100vw - 24px));max-height:min(70vh,520px);overflow:auto;background:var(--legal-tooltip-bg);color:var(--legal-tooltip-text);border:1px solid var(--legal-tooltip-line);border-top:5px solid #174c8c;border-radius:16px;box-shadow:0 24px 70px rgba(4,23,45,.28);padding:1rem 1.05rem 1.05rem}
.legal-tooltip.is-open{display:block;animation:legalTooltipIn .16s ease-out}
@keyframes legalTooltipIn{from{opacity:0;transform:translateY(5px) scale(.985)}to{opacity:1;transform:none}}
.legal-tooltip__head{display:flex;align-items:flex-start;gap:.8rem;border-bottom:1px solid #e3e9f0;padding-bottom:.65rem;margin-bottom:.75rem}
.legal-tooltip__badge{flex:0 0 auto;width:2rem;height:2rem;border-radius:10px;background:linear-gradient(135deg,#174c8c,#652c8f);color:#fff;display:grid;place-items:center;font-weight:900}
.legal-tooltip h3{font-size:1.08rem;line-height:1.25;margin:0;color:#102b54}
.legal-tooltip__close{margin-left:auto;border:0;background:#eef3f8;color:#253c58;width:2rem;height:2rem;border-radius:50%;font-size:1.2rem;cursor:pointer}
.legal-tooltip__close:hover,.legal-tooltip__close:focus-visible{background:#dfe9f3;outline:3px solid rgba(23,76,140,.18)}
.legal-tooltip p{margin:.55rem 0;line-height:1.5;font-size:.94rem}
.legal-tooltip__row{border-left:3px solid #d7e2ef;padding-left:.7rem}
.legal-tooltip__label{display:block;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;font-weight:900;color:#61758c;margin-bottom:.1rem}
.legal-tooltip__more{display:inline-flex;align-items:center;gap:.35rem;margin-top:.5rem;padding:.55rem .75rem;border-radius:9px;background:#102b54;color:#fff;text-decoration:none;font-weight:800;font-size:.88rem}
.legal-tooltip__more:hover,.legal-tooltip__more:focus-visible{background:#8f1111;color:#fff;outline:3px solid rgba(143,17,17,.18)}
@media (max-width:700px){.legal-tooltip{left:12px!important;right:12px!important;bottom:12px!important;top:auto!important;width:auto;max-height:62vh;border-radius:18px}.legal-glossary-hint{margin-left:12px;margin-right:12px}.legal-term::after{width:1.15em;height:1.15em}}
@media (prefers-reduced-motion:reduce){.legal-tooltip.is-open{animation:none}}


/* === SOURCE: france-legal-v2079.css === */

.legal-roadmap{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:1rem;margin:1rem 0}
.legal-roadmap article{background:#fff;border:1px solid #dce3eb;border-radius:18px;padding:1rem;box-shadow:0 10px 24px rgba(8,31,61,.06)}
.legal-roadmap__num{width:2.2rem;height:2.2rem;border-radius:999px;background:#0d3d72;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-weight:800;margin-bottom:.5rem}
.ministry-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;margin:1rem 0}.ministry-grid article{border:1px solid #dce3eb;border-radius:16px;background:linear-gradient(180deg,#fff,#f6f9fc);padding:.9rem}.ministry-grid h3{margin:.1rem 0 .35rem;color:#102f59;font-size:1rem}
.formula-panel{background:linear-gradient(135deg,#eef6ff,#fff);border:1px solid #bad2eb;border-radius:18px;padding:1.15rem;margin:1rem 0}.formula{font-size:1.15rem;font-weight:800;color:#0b3767;background:#fff;border-radius:12px;padding:.8rem;overflow-wrap:anywhere}.symbol-table{width:100%;border-collapse:collapse;margin:1rem 0}.symbol-table th,.symbol-table td{border:1px solid #dce3eb;padding:.7rem;vertical-align:top}.symbol-table th{background:#edf4fb;text-align:left}
.calc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.calc-grid label{display:flex;flex-direction:column;gap:.25rem;font-weight:700}.calc-grid input{padding:.7rem;border:1px solid #b8c6d6;border-radius:10px;font:inherit}.calc-result{margin-top:1rem;background:#092f5b;color:#fff;padding:1rem;border-radius:16px}.calc-result strong{font-size:1.15rem}.consultation-table{width:100%;border-collapse:collapse}.consultation-table th,.consultation-table td{border:1px solid #dce3eb;padding:.65rem;vertical-align:top}.consultation-table th{background:#102f59;color:#fff}
.corpus-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.65rem}.corpus-stats article{border-radius:14px;padding:.8rem;background:#f5f8fc;border:1px solid #dce3eb;text-align:center}.corpus-stats strong{display:block;font-size:1.45rem;color:#0d3d72}
.legal-warning{border-left:6px solid #b27a00;background:#fff8df;border-radius:14px;padding:1rem;margin:1rem 0}.legal-success{border-left:6px solid #22824b;background:#eefaf2;border-radius:14px;padding:1rem;margin:1rem 0}
@media(max-width:860px){.ministry-grid,.calc-grid{grid-template-columns:1fr}.corpus-stats{grid-template-columns:repeat(2,1fr)}}


/* === SOURCE: france-property-v2086.css === */

/* Delta-Sierra V20.8.6 — Liberté patrimoniale, logement, bailleurs et autonomie */
.property-hero{background:linear-gradient(135deg,#f7fbff 0%,#f7f4ec 47%,#eef9f4 100%)}
.property-badge{display:inline-flex;align-items:center;gap:.42rem;padding:.43rem .76rem;border-radius:999px;background:#f0f6fb;border:1px solid #a9c2d8;color:#214d70;font-weight:850;font-size:.86rem}
.property-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1rem 0}.property-card{background:#fff;border:1px solid #d9e2e7;border-radius:18px;padding:1.05rem;box-shadow:0 7px 19px rgba(35,57,73,.05)}.property-card h3{margin:.1rem 0 .45rem;color:#214d70}.property-card .big{display:block;font-size:1.55rem;font-weight:900;color:#17624b}
.property-card.warn{background:#fff9ed;border-color:#e7c889}.property-card.risk{background:#fff5f5;border-color:#ddb1b1}.property-card.ok{background:#f2fbf6;border-color:#aad6bd}
.property-source-proposal{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1rem 0}.property-source-proposal>div{padding:1rem;border-radius:17px}.property-source-proposal .source{background:#f7f3ec;border:1px solid #ddd1be}.property-source-proposal .proposal{background:#eff9f5;border:1px solid #add4c2}.property-source-proposal h3{margin:.1rem 0 .5rem}
.property-scenario{border-left:5px solid #315f82;background:#f4f9fd;border-radius:0 15px 15px 0;padding:1rem 1.15rem;margin:1rem 0}.property-scenario strong{color:#214d70}.property-redline{border:1px solid #dfb0b0;background:#fff5f5;border-radius:16px;padding:1rem;margin:1rem 0}.property-redline strong{color:#8b2a2a}.property-note{background:#fff9ed;border:1px solid #ead09e;border-radius:16px;padding:1rem;margin:1rem 0}.property-note strong{color:#76521c}
.property-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem;margin:1rem 0}.property-steps div{background:#fff;border:1px solid #d7e2e7;border-radius:15px;padding:.9rem}.property-steps b{display:block;color:#17624b;margin-bottom:.25rem}
.property-pills{display:flex;gap:.45rem;flex-wrap:wrap;margin:.75rem 0}.property-pills span{padding:.45rem .7rem;border:1px solid #b9ceda;background:#f3f8fb;color:#254e68;border-radius:999px;font-weight:750}
.property-kpi{font-size:2rem;font-weight:900;color:#17624b;line-height:1.05}.property-caption{font-size:.9rem;color:#586a73}.property-quote{border-left:4px solid #17624b;padding:.75rem 1rem;background:#f5faf8;border-radius:0 12px 12px 0;margin:1rem 0;font-weight:650}
.property-mini{font-size:.94rem;color:#4e616a}.property-source-list li{margin:.55rem 0;overflow-wrap:anywhere}
.property-status{display:inline-block;border-radius:999px;padding:.25rem .55rem;font-size:.78rem;font-weight:800;background:#fff0d9;color:#785318;border:1px solid #e6c589}
@media(max-width:800px){.property-grid,.property-source-proposal{grid-template-columns:1fr}.property-steps{grid-template-columns:1fr}.property-kpi{font-size:1.7rem}}


/* === SOURCE: france-budget-constitution-v2088.css === */

:root{--v2088-ink:#152233;--v2088-navy:#263f61;--v2088-gold:#a96f19;--v2088-paper:#fbf8f0;--v2088-blue:#edf4fa;--v2088-red:#8d332e;--v2088-green:#315f52;--v2088-border:#d8d3c7}
.budget-spine{background:linear-gradient(120deg,#14243a,#29496f);color:#fff;border-bottom:4px solid #c18b35}.budget-spine__inner{max-width:1180px;margin:auto;padding:12px 20px;display:flex;gap:18px;align-items:center;justify-content:space-between;flex-wrap:wrap}.budget-spine strong{font-size:.96rem;letter-spacing:.02em}.budget-spine a{color:#fff;text-decoration:none;border-bottom:1px dotted rgba(255,255,255,.75)}.budget-spine__links{display:flex;gap:14px;flex-wrap:wrap;font-size:.9rem}
.constitution-hero{background:linear-gradient(135deg,#f7f1e4,#e8f1f8)}.constitution-badge{display:inline-block;padding:6px 10px;border-radius:999px;background:#263f61;color:#fff;font-size:.78rem;font-weight:800;letter-spacing:.04em}.constitution-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin:20px 0}.constitution-card{background:#fff;border:1px solid var(--v2088-border);border-radius:16px;padding:18px;box-shadow:0 8px 24px rgba(20,35,55,.06)}.constitution-card h3{margin-top:0;color:var(--v2088-navy)}.constitution-card--warning{border-left:5px solid var(--v2088-red)}.constitution-card--source{border-left:5px solid var(--v2088-gold)}.constitution-card--new{border-left:5px solid var(--v2088-green)}
.constitution-rule{padding:18px;border-radius:14px;background:#152233;color:white;margin:18px 0}.constitution-rule strong{color:#f0c676}.legal-draft{background:#f8f8f6;border:1px solid #d9d7cf;border-left:5px solid #263f61;border-radius:10px;padding:18px;margin:18px 0}.legal-draft h3{margin-top:0}.legal-draft p{margin:.7em 0}.legal-draft .article-number{font-weight:800;color:#263f61}.status-row{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.status-pill{font-size:.78rem;border-radius:999px;padding:5px 9px;font-weight:800}.status-pill.source{background:#f3e8ca;color:#6f4b12}.status-pill.proposal{background:#dfeee8;color:#224f42}.status-pill.caution{background:#f4dddd;color:#7b2925}
.accountability-table{width:100%;border-collapse:collapse;margin:18px 0;font-size:.92rem}.accountability-table th,.accountability-table td{border:1px solid #d7d7d2;padding:10px;vertical-align:top}.accountability-table th{background:#eaf1f7;text-align:left}.accountability-flow{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin:20px 0}.accountability-flow div{padding:14px;border-radius:12px;background:#fff;border:1px solid #d7d7d2}.accountability-flow b{display:block;color:#263f61;margin-bottom:4px}.source-note{font-size:.9rem;color:#4a5562;border-left:3px solid #b58a48;padding-left:12px;margin:10px 0}.method-box{background:#eef5f9;border:1px solid #ccdae4;border-radius:14px;padding:16px}.red-line{background:#fff2f0;border:1px solid #ebc5c0;border-radius:14px;padding:16px}.green-line{background:#eff7f2;border:1px solid #c7dfd0;border-radius:14px;padding:16px}.data-downloads{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}.data-downloads a{display:inline-block;padding:9px 12px;border-radius:10px;background:#263f61;color:white;text-decoration:none}
@media(max-width:720px){.budget-spine__inner{padding:10px 14px}.budget-spine__links{gap:9px}.accountability-table{font-size:.82rem}.accountability-table th,.accountability-table td{padding:7px}}


/* === SOURCE: france-budget-backtest-v2089.css === */

:root{--bt-ink:#142235;--bt-navy:#203c60;--bt-blue:#eaf3fb;--bt-gold:#b27a26;--bt-red:#9b3732;--bt-orange:#b86822;--bt-yellow:#a77d18;--bt-green:#2f6955;--bt-paper:#fbf8ef;--bt-line:#d8d9d7}
.backtest-hero{background:linear-gradient(135deg,#eef5fb,#fbf6e8)}.backtest-badge{display:inline-block;padding:6px 10px;border-radius:999px;background:var(--bt-navy);color:#fff;font-size:.78rem;font-weight:800;letter-spacing:.04em}.backtest-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:15px;margin:20px 0}.backtest-card{background:#fff;border:1px solid var(--bt-line);border-radius:16px;padding:17px;box-shadow:0 8px 24px rgba(15,40,60,.06)}.backtest-card h3{margin-top:0;color:var(--bt-navy)}.backtest-kpi{font-size:2rem;font-weight:900;color:var(--bt-navy);line-height:1}.backtest-kpi small{font-size:.8rem;font-weight:700;color:#536273}.traffic-row{display:grid;grid-template-columns:repeat(5,minmax(120px,1fr));gap:10px;margin:18px 0}.traffic{border-radius:12px;padding:13px;border:1px solid #ddd;background:#fff}.traffic b{display:block}.traffic.green{border-top:5px solid var(--bt-green)}.traffic.yellow{border-top:5px solid #d9ac2b}.traffic.orange{border-top:5px solid var(--bt-orange)}.traffic.red{border-top:5px solid var(--bt-red)}.traffic.exception{border-top:5px solid #6c4b8c}.backtest-table{width:100%;border-collapse:collapse;font-size:.88rem;margin:18px 0}.backtest-table th,.backtest-table td{border:1px solid #d8d9d7;padding:8px;vertical-align:top}.backtest-table th{background:#eaf2f8;text-align:left;position:sticky;top:0}.backtest-table .neg{font-weight:800;color:#8d332e}.method-warning{border-left:5px solid var(--bt-gold);background:#fff8e9;padding:16px;border-radius:10px}.evidence-box{border:1px solid #cfdbe5;background:#f2f7fb;border-radius:14px;padding:16px}.api-box{background:#101d2b;color:#e9f1f8;border-radius:14px;padding:18px;overflow:auto}.api-box code{white-space:pre-wrap}.model-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.model-card{border-radius:16px;padding:18px;border:1px solid #d8d9d7;background:#fff}.model-card.source{border-left:5px solid #b27a26}.model-card.swiss{border-left:5px solid #bc3434}.model-card.hybrid{border-left:5px solid #2f6955}.source-list p{margin:.55em 0}.download-row{display:flex;gap:10px;flex-wrap:wrap}.download-row a{padding:9px 12px;border-radius:10px;background:#203c60;color:#fff;text-decoration:none}.small-note{font-size:.88rem;color:#536273}.year-chip{display:inline-block;padding:3px 7px;border-radius:999px;background:#edf2f6;font-size:.78rem;margin:2px}.current-warning{border:1px solid #e3b9b2;background:#fff1ef;border-radius:14px;padding:16px}.chart-bars{display:flex;align-items:flex-end;gap:6px;height:180px;border-bottom:1px solid #c5cbd0;margin:20px 0 8px}.chart-bar{flex:1;min-width:4px;background:#6f8da8;position:relative;border-radius:4px 4px 0 0}.chart-bar.crisis{background:#9b3732}.chart-bar span{display:none;position:absolute;bottom:100%;left:50%;transform:translateX(-50%);font-size:.7rem;background:#fff;padding:2px 4px;border:1px solid #ccc;white-space:nowrap}.chart-bar:hover span{display:block}@media(max-width:760px){.traffic-row{grid-template-columns:1fr 1fr}.backtest-table{font-size:.78rem}.backtest-table th,.backtest-table td{padding:6px}.chart-bars{gap:3px}}


/* === SOURCE: site-quality-v20140.css === */

/* Delta-Sierra V20.14.0 — transversal quality layer. Keep as the final site-wide stylesheet. */
*{box-sizing:border-box}
img,svg,video,canvas{max-width:100%;height:auto}
.ds-table-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;margin:10px 0 16px;border-radius:8px}
.ds-table-scroll>table{margin:0;max-width:none}
.ds-disabled-link{opacity:.65;cursor:not-allowed}
.ds-open-data-links{display:flex!important;flex-wrap:wrap!important;gap:8px!important;align-items:center!important;margin:12px 0!important;padding:10px 12px!important;background:#f5f8fc!important;border:1px solid #d9e3f0!important;border-radius:8px!important}
.ds-open-data-links:before{content:'Données ouvertes et fichiers techniques';flex:0 0 100%;font-weight:800;color:#082a60;font-size:13px;line-height:1.3}
html[lang^="en"] .ds-open-data-links:before{content:'Open data and technical files'}
.ds-open-data-link{display:inline-flex!important;align-items:center!important;gap:5px!important;padding:7px 10px!important;border:1px solid #c5d4e8!important;border-radius:6px!important;background:#fff!important;color:#0a4b96!important;text-decoration:none!important;font-weight:750!important;font-size:12px!important;line-height:1.2!important}
.ds-open-data-expert{background:#f7f4fb!important;color:#65507b!important;border-style:dashed!important}
.ds-open-data-expert:after{content:'Expert';font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;padding:2px 5px;border-radius:999px;background:#ece3f5;color:#634879}
@media(max-width:760px){
 html,body{width:100%;max-width:100%;overflow-x:clip}
 body>*,main,section,article,header,footer,nav,aside,div{min-width:0}
 pre,code{max-width:100%;overflow-wrap:anywhere;word-break:break-word}
 pre{overflow:auto}
 .ds-table-scroll{width:100%}
 iframe{max-width:100%!important}
 [class*="grid"],[class*="columns"],[class*="row"]{min-width:0}
 .ds-open-data-links{display:grid!important;grid-template-columns:1fr!important}
 .ds-open-data-links:before{grid-column:1}
}
@media(max-width:760px){
 body main,body main>*,body section,body article,body aside,body nav,body header,body footer,body div{max-width:100%!important}
 body [style*="min-width"]{min-width:0!important}
 body [style*="width:"]{max-width:100%!important}
 body input,body select,body textarea,body button{max-width:100%!important}
 body .knowledge-shell,body .seo-container,body .container,body .article-container,body .page-container{width:min(100% - 24px,100%)!important;max-width:100%!important;margin-left:auto!important;margin-right:auto!important}
 body .knowledge-hero__grid,body [class$="-grid"],body [class*="-grid "]{min-width:0;max-width:100%}
}


/* === SOURCE: france-quality-v20140.css === */

/* Delta-Sierra V20.14.0 — France quality/completion layer. Loaded last on every /france/ HTML page. */
:root{--q-navy:#062652;--q-blue:#1458a6;--q-green:#16814d;--q-orange:#d78300;--q-violet:#7046c8;--q-rose:#d52d51;--q-line:#dbe3ee;--q-soft:#f6f8fb}
body.ds-france-quality{color:#17223a;background:#fff;font-family:Inter,Arial,sans-serif}
body.ds-france-quality main{font-size:16px;line-height:1.58}
body.ds-france-quality main p,body.ds-france-quality main li,body.ds-france-quality main td,body.ds-france-quality main label{font-size:max(13px,1em)!important;line-height:max(1.45,1.35em)}
body.ds-france-quality main .knowledge-section>p,body.ds-france-quality main .knowledge-section>ul>li,body.ds-france-quality main .knowledge-section>ol>li,body.ds-france-quality main .ds-redress-longform>p{font-size:max(15px,1em)!important;line-height:1.62!important}
body.ds-france-quality main small,body.ds-france-quality main figcaption,body.ds-france-quality main .eyebrow,body.ds-france-quality main [class*="kicker"],body.ds-france-quality main [class*="meta"]{font-size:max(11px,1em)!important;line-height:1.35!important}
body.ds-france-quality main a:not(.ds-redress-btn):not(.knowledge-actions a):not(.more-btn){font-size:max(12px,1em)}
body.ds-france-quality main h1{font-size:clamp(34px,3.3vw,48px);line-height:1.06;letter-spacing:-.025em;color:var(--q-navy)}
body.ds-france-quality main h2{font-size:clamp(21px,2vw,29px);line-height:1.18;color:var(--q-navy)}
body.ds-france-quality main h3{font-size:clamp(17px,1.45vw,21px);line-height:1.25;color:#123e78}
body.ds-france-quality main button,body.ds-france-quality main input,body.ds-france-quality main select{font-size:14px;min-height:40px}
/* Reference compositions: preserve art direction but never sacrifice readability. */
body.ds-france-quality .ds-target-hero{height:auto!important;min-height:310px!important}
body.ds-france-quality .ds-target-hero-text{font-size:13px!important;line-height:1.52!important}
body.ds-france-quality .ds-target-levers{height:auto!important;min-height:58px!important}
body.ds-france-quality .ds-target-levers b{font-size:11px!important} body.ds-france-quality .ds-target-levers small{font-size:10.5px!important}
body.ds-france-quality .ds-target-doors .door{height:auto!important;min-height:220px!important} body.ds-france-quality .ds-target-doors .door strong{font-size:15px!important} body.ds-france-quality .ds-target-doors .door small{font-size:12.5px!important;line-height:1.4!important}
body.ds-france-quality .dash-card{height:auto!important;min-height:250px!important;overflow:visible!important} body.ds-france-quality .dash-card h2{font-size:15px!important}
body.ds-france-quality .why-points p{font-size:12px!important} body.ds-france-quality .target-kpi small,body.ds-france-quality .target-kpi span{font-size:11px!important} body.ds-france-quality .target-kpi b{font-size:20px!important}
body.ds-france-quality .kpi-note,body.ds-france-quality .dash-method p{font-size:11.5px!important;height:auto!important;min-height:48px!important}
body.ds-france-quality .ds-target-bottom>article,body.ds-france-quality .ds-target-bottom>figure{height:auto!important;min-height:180px!important} body.ds-france-quality .goal-row b{font-size:10px!important} body.ds-france-quality .goal-row small{font-size:10.5px!important} body.ds-france-quality .bottom-more>a,body.ds-france-quality .bottom-resources p{font-size:11px!important}
body.ds-france-quality .metric-card{padding-left:58px!important;position:relative}
body.ds-france-quality .metric-card img,body.ds-france-quality .metric-card .metric-icon{left:12px!important;max-width:36px!important;max-height:36px!important}
/* Legacy pages are visually folded back into the France portal, without rewriting their content. */
body.ds-france-legacy-modernized .site-header{background:linear-gradient(90deg,#031b3d,#062d62)!important;border:0!important;color:#fff!important;box-shadow:0 2px 9px rgba(3,24,54,.18)}
body.ds-france-legacy-modernized .site-header__inner{max-width:1536px;margin:auto;min-height:64px;padding:8px 22px}
body.ds-france-legacy-modernized .site-header__brand{position:relative;padding-left:52px}
body.ds-france-legacy-modernized .site-header__brand:before{content:'△';position:absolute;left:0;top:-5px;color:#fff;font-size:42px;line-height:1;font-weight:900;transform:scaleX(1.18)}
body.ds-france-legacy-modernized .site-header__eyebrow{font-size:25px!important;line-height:1!important;letter-spacing:.02em!important;font-weight:900!important;color:#fff!important;margin:0!important;text-transform:none!important}
body.ds-france-legacy-modernized .site-header__title{font-size:11px!important;color:#fff!important;opacity:.94;margin:3px 0 0!important;font-weight:500!important}
body.ds-france-legacy-modernized .site-header__support{background:#c71f27!important;color:#fff!important;border-radius:6px!important;padding:10px 16px!important;font-weight:800!important}
body.ds-france-legacy-modernized .site-nav{background:#fff!important;border-bottom:1px solid #dfe4ea!important;box-shadow:0 2px 7px rgba(4,28,62,.07)!important}
body.ds-france-legacy-modernized .site-nav__inner{max-width:1536px;margin:auto;justify-content:flex-end;gap:4px}
body.ds-france-legacy-modernized .site-nav a{color:#111d35!important;font-size:13px!important;padding:11px 10px!important;text-decoration:none!important}
.ds-france-context{max-width:1536px;margin:0 auto;background:linear-gradient(90deg,#f7faff,#fff);border-bottom:1px solid #dae3ee;display:flex;gap:6px;flex-wrap:wrap;padding:7px 16px;justify-content:center}
.ds-france-context a{font-size:12.5px;color:#0b468e;text-decoration:none;font-weight:750;padding:5px 9px;border-radius:999px}.ds-france-context a:hover{background:#eaf2ff}
body.ds-france-legacy-modernized .knowledge-hero{background:linear-gradient(112deg,#f7fbff 0,#fff 52%,#fff7ea 100%)!important;border-bottom:1px solid #e2e7ed!important;padding-top:28px!important;padding-bottom:28px!important}
body.ds-france-legacy-modernized .knowledge-hero h1{font-size:clamp(38px,4vw,54px)!important;color:var(--q-navy)!important;letter-spacing:-.035em!important;max-width:920px}
body.ds-france-legacy-modernized .knowledge-hero p{font-size:16px!important;line-height:1.58!important;color:#24334d!important}
body.ds-france-legacy-modernized .knowledge-section{background:#fff;border:1px solid #e2e7ee;border-radius:10px;padding:20px 22px;margin:16px auto;box-shadow:0 3px 12px rgba(14,39,74,.045)}
body.ds-france-legacy-modernized .knowledge-section:nth-of-type(3n+1){border-top:4px solid #2e66b4} body.ds-france-legacy-modernized .knowledge-section:nth-of-type(3n+2){border-top:4px solid #2d9161} body.ds-france-legacy-modernized .knowledge-section:nth-of-type(3n){border-top:4px solid #d99a2b}
body.ds-france-legacy-modernized .knowledge-actions{display:flex!important;gap:9px!important;flex-wrap:wrap!important} body.ds-france-legacy-modernized .knowledge-actions a{display:inline-flex!important;padding:9px 12px!important;border-radius:6px!important;background:#0b3f83!important;color:#fff!important;text-decoration:none!important;font-size:13px!important;font-weight:800!important}
body.ds-france-legacy-modernized .diagram-card,body.ds-france-legacy-modernized .article-hero-media{background:#fff!important;border:1px solid #dbe3ee!important;border-radius:11px!important;box-shadow:0 4px 16px rgba(14,39,74,.07)!important;padding:10px!important}
/* Legal corpus — public interface: 6 useful columns + details; cards on mobile. */
body.ds-corpus-modern .knowledge-hero{background:linear-gradient(120deg,#f7fbff,#fffaf0)!important}
body.ds-corpus-modern .legal-corpus-toolbar{display:grid!important;grid-template-columns:2fr 1fr 1fr!important;gap:10px!important;padding:13px!important;background:#eff5ff!important;border:1px solid #cedbef!important;border-radius:9px!important}
body.ds-corpus-modern .ds-corpus-table{width:100%!important;border-collapse:separate!important;border-spacing:0!important;table-layout:fixed!important;background:#fff!important}
body.ds-corpus-modern .ds-corpus-table th{background:#092e64!important;color:#fff!important;padding:11px 9px!important;font-size:12px!important;line-height:1.3!important;vertical-align:bottom!important}
body.ds-corpus-modern .ds-corpus-table td{padding:12px 9px!important;border-bottom:1px solid #dfe5ed!important;vertical-align:top!important;font-size:13px!important;line-height:1.42!important;overflow-wrap:anywhere}
body.ds-corpus-modern .ds-corpus-table tr:nth-child(even) td{background:#f8faff}
body.ds-corpus-modern .measure-details{margin-top:8px;background:#f4f7fb;border:1px solid #d9e2ee;border-radius:6px;padding:6px 8px}
body.ds-corpus-modern .measure-details summary{cursor:pointer;color:#0a4c98;font-weight:800;font-size:12px}
body.ds-corpus-modern .measure-details dl{display:grid;grid-template-columns:130px 1fr;gap:4px 8px;margin:8px 0 2px} body.ds-corpus-modern .measure-details dt{font-weight:800;color:#45546b;font-size:11px} body.ds-corpus-modern .measure-details dd{margin:0;font-size:12px;color:#22314a}
body.ds-corpus-modern .ds-corpus-tech-link{opacity:.8}
@media(max-width:1023px){
 body.ds-france-legacy-modernized .knowledge-shell{width:min(100% - 28px,1100px)!important}
 .ds-france-context{justify-content:flex-start;overflow:auto;flex-wrap:nowrap}.ds-france-context a{white-space:nowrap}
 body.ds-france-quality .ds-target-dashboard{grid-template-columns:1fr!important}
 body.ds-france-quality .ds-target-bottom{grid-template-columns:1fr 1fr!important;margin-left:0!important;width:auto!important}
}
@media(max-width:760px){
 body.ds-france-quality main{font-size:16px}
 body.ds-france-quality main h1{font-size:clamp(30px,9vw,40px)!important}
 body.ds-france-quality main h2{font-size:23px!important}
 body.ds-france-legacy-modernized .site-header__inner{padding:8px 12px;min-height:60px} body.ds-france-legacy-modernized .site-header__actions{gap:6px} body.ds-france-legacy-modernized .site-header__support{font-size:11px!important;padding:8px 9px!important}
 body.ds-france-legacy-modernized .site-nav__inner{overflow:auto;justify-content:flex-start;white-space:nowrap;padding:0 5px} body.ds-france-legacy-modernized .site-nav a{font-size:12px!important;padding:10px 8px!important}
 body.ds-france-legacy-modernized .knowledge-hero{padding:22px 0!important} body.ds-france-legacy-modernized .knowledge-hero__grid{grid-template-columns:1fr!important}
 body.ds-france-legacy-modernized .knowledge-section{padding:16px 14px!important;margin:12px auto!important}
 body.ds-france-quality .ds-target-bottom{grid-template-columns:1fr!important}
 body.ds-corpus-modern .legal-corpus-toolbar{grid-template-columns:1fr!important}
 body.ds-corpus-modern .ds-table-scroll{overflow:visible!important}
 body.ds-corpus-modern .ds-corpus-table,body.ds-corpus-modern .ds-corpus-table tbody,body.ds-corpus-modern .ds-corpus-table tr,body.ds-corpus-modern .ds-corpus-table td{display:block!important;width:100%!important}
 body.ds-corpus-modern .ds-corpus-table thead{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
 body.ds-corpus-modern .ds-corpus-table tr{margin:0 0 14px!important;border:1px solid #d7e0ec!important;border-radius:10px!important;overflow:hidden!important;background:#fff!important;box-shadow:0 3px 12px rgba(12,39,75,.06)!important}
 body.ds-corpus-modern .ds-corpus-table td{display:grid!important;grid-template-columns:112px 1fr!important;gap:10px!important;border:0!important;border-bottom:1px solid #edf0f4!important;padding:10px 12px!important;background:#fff!important}
 body.ds-corpus-modern .ds-corpus-table td:before{content:attr(data-label);font-size:11px;font-weight:900;color:#0c417e;text-transform:none;line-height:1.25}
 body.ds-corpus-modern .ds-corpus-table td:last-child{border-bottom:0!important}
 body.ds-corpus-modern .measure-details{grid-column:1/-1}
 body.ds-corpus-modern .measure-details dl{grid-template-columns:1fr!important}
}


/* V20.14.0 final readability gate — no informative France text under 12px. */
body.ds-france-quality main p,body.ds-france-quality main li,body.ds-france-quality main td,body.ds-france-quality main th,body.ds-france-quality main label,body.ds-france-quality main summary,body.ds-france-quality main dd{font-size:max(13px,1em)!important;line-height:1.45!important}
body.ds-france-quality main a,body.ds-france-quality main span,body.ds-france-quality main strong,body.ds-france-quality main b,body.ds-france-quality main em,body.ds-france-quality main small,body.ds-france-quality main figcaption,body.ds-france-quality main dt{font-size:max(12px,1em)!important;line-height:1.35!important}
body.ds-france-quality main .dash-card,body.ds-france-quality main [class*="card"],body.ds-france-quality main [class*="panel"]{overflow:visible}

/* V20.14.0 absolute France readability floor for all non-heading text containers. */
body.ds-france-quality main *:not(h1):not(h2):not(h3):not(h4):not(h5):not(h6):not(svg):not(path):not(line):not(polyline):not(polygon):not(circle):not(rect){font-size:max(12px,1em)!important}
body.ds-france-quality main p,body.ds-france-quality main li,body.ds-france-quality main td,body.ds-france-quality main th,body.ds-france-quality main label,body.ds-france-quality main dd{font-size:max(13px,1em)!important}

/* V20.14.0 ID-scoped readability lock: beats inherited historical !important declarations. */
#ds-quality-root *:not(h1):not(h2):not(h3):not(h4):not(h5):not(h6):not(svg):not(path):not(line):not(polyline):not(polygon):not(circle):not(rect){font-size:max(12px,1em)!important}
#ds-quality-root p,#ds-quality-root li,#ds-quality-root td,#ds-quality-root th,#ds-quality-root label,#ds-quality-root dd{font-size:max(13px,1em)!important}

/* V20.14.0 browser-default guard for lightweight redirect/alias pages. */
html,body{margin:0}

/* V20.14.0 — MASTER READABILITY GEOMETRY
   The four France masters stay visually rich after enforcing readable type sizes.
   Fixed legacy heights are replaced by content-led geometry on desktop. */

/* Global image presentation for legacy illustrated cards: never crop pedagogical art. */
body.ds-france-quality .diagram-card img,
body.ds-france-quality .article-hero-media img{
  object-fit:contain!important;
  width:100%!important;
  height:auto!important;
  max-height:none!important;
}

/* 1 — DETTE / finances-data master */
body.ds-page-debt .ds-hero{
  height:auto!important;
  min-height:300px!important;
  overflow:visible!important;
}
body.ds-page-debt .ds-values{
  height:auto!important;
  min-height:190px!important;
  transform:none!important;
  margin:10px 0 32px!important;
  width:min(780px,100%)!important;
  align-items:stretch!important;
}
body.ds-page-debt .ds-value{
  height:auto!important;
  min-height:185px!important;
  padding:15px 12px!important;
  overflow:visible!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
}
body.ds-page-debt .ds-value p,
body.ds-page-debt .ds-value small{line-height:1.35!important}
body.ds-page-debt .ds-main,
body.ds-page-debt .ds-grid,
body.ds-page-debt .ds-card{overflow:visible!important}

/* 2 — ADEME / process-transformation master */
body.ds-page-ademe .ds-hero{
  height:auto!important;
  min-height:250px!important;
  overflow:visible!important;
  padding-bottom:18px!important;
}
body.ds-page-ademe .ds-method-steps,
body.ds-page-ademe .ds-method-steps.ds-steps{
  height:auto!important;
  min-height:275px!important;
  align-items:stretch!important;
  overflow:visible!important;
  margin-bottom:24px!important;
}
body.ds-page-ademe .ds-method-steps .ds-step{
  height:auto!important;
  min-height:275px!important;
  overflow:visible!important;
  padding-bottom:16px!important;
}
body.ds-page-ademe .ds-steps:not(.ds-method-steps){
  height:auto!important;
  min-height:330px!important;
  align-items:stretch!important;
  overflow:visible!important;
  margin-bottom:24px!important;
}
body.ds-page-ademe .ds-steps:not(.ds-method-steps) .ds-step{
  height:auto!important;
  min-height:330px!important;
  overflow:visible!important;
  padding-bottom:16px!important;
}
body.ds-page-ademe .ds-rightcol,
body.ds-page-ademe .ds-grid{align-items:start!important;overflow:visible!important}
body.ds-page-ademe .ds-resource-panel,
body.ds-page-ademe .ds-card{
  height:auto!important;
  min-height:0!important;
  overflow:visible!important;
}

/* 3 — LOI / DECRET / legal-procedure master */
body.ds-page-law .ds-law-hero{
  height:auto!important;
  min-height:250px!important;
  overflow:visible!important;
  padding-bottom:18px!important;
}
body.ds-page-law .ds-law-steps{
  height:auto!important;
  min-height:320px!important;
  align-items:stretch!important;
  overflow:visible!important;
  margin-bottom:18px!important;
}
body.ds-page-law .ds-law-step{
  height:auto!important;
  min-height:320px!important;
  overflow:visible!important;
  padding-bottom:16px!important;
}
body.ds-page-law .ds-law-grid{
  width:auto!important;
  max-width:100%!important;
  height:auto!important;
  min-height:320px!important;
  overflow:visible!important;
  align-items:stretch!important;
}
body.ds-page-law .ds-law-grid>.ds-card{
  height:auto!important;
  min-height:320px!important;
  overflow:visible!important;
}
body.ds-page-law .ds-resource-panel,
body.ds-page-law .ds-card{height:auto!important;overflow:visible!important}
body.ds-page-law .ds-law-legend{
  position:static!important;
  inset:auto!important;
  margin:14px 0 8px!important;
  height:auto!important;
  overflow:visible!important;
}

/* 4 — REDRESSER LA FRANCE / national-diagnostic master */
body.ds-page-redresser .ds-target-hero,
body.ds-redresser-candidate-v20120 .ds-target-hero{
  height:auto!important;
  min-height:380px!important;
  padding-bottom:105px!important;
  overflow:visible!important;
}
body.ds-page-redresser .ds-target-hero-copy,
body.ds-redresser-candidate-v20120 .ds-target-hero-copy{
  max-width:670px!important;
  padding-bottom:12px!important;
}
body.ds-page-redresser .ds-target-levers,
body.ds-redresser-candidate-v20120 .ds-target-levers{
  min-height:76px!important;
  height:auto!important;
  bottom:12px!important;
  align-items:stretch!important;
}
body.ds-page-redresser .ds-target-levers a,
body.ds-redresser-candidate-v20120 .ds-target-levers a{
  min-height:62px!important;
  height:auto!important;
  padding-top:8px!important;
  padding-bottom:8px!important;
}
body.ds-page-redresser .ds-target-dashboard,
body.ds-redresser-candidate-v20120 .ds-target-dashboard{
  align-items:stretch!important;
  overflow:visible!important;
}
body.ds-page-redresser .dash-card,
body.ds-redresser-candidate-v20120 .dash-card{
  height:auto!important;
  min-height:335px!important;
  overflow:visible!important;
}
body.ds-page-redresser .why-inner,
body.ds-redresser-candidate-v20120 .why-inner{
  height:auto!important;
  min-height:245px!important;
  grid-template-columns:145px minmax(0,1fr)!important;
  align-items:start!important;
  gap:14px!important;
  overflow:visible!important;
}
body.ds-page-redresser .why-map,
body.ds-redresser-candidate-v20120 .why-map{
  width:145px!important;
  height:auto!important;
  max-height:210px!important;
  object-fit:contain!important;
  align-self:center!important;
}
body.ds-page-redresser .why-points,
body.ds-redresser-candidate-v20120 .why-points{overflow:visible!important}
body.ds-page-redresser .why-points p,
body.ds-redresser-candidate-v20120 .why-points p{
  margin:7px 0!important;
  min-height:30px!important;
  align-items:flex-start!important;
}
body.ds-page-redresser .why-points p img,
body.ds-redresser-candidate-v20120 .why-points p img{
  width:28px!important;
  height:28px!important;
  object-fit:contain!important;
  flex:0 0 28px!important;
}
body.ds-page-redresser .kpi-row,
body.ds-redresser-candidate-v20120 .kpi-row{align-items:stretch!important}
body.ds-page-redresser .target-kpi,
body.ds-redresser-candidate-v20120 .target-kpi{
  height:auto!important;
  min-height:155px!important;
  overflow:visible!important;
}
body.ds-page-redresser .dash-method,
body.ds-redresser-candidate-v20120 .dash-method{overflow:visible!important}

/* The master geometry must remain fluid on smaller screens. */
@media(max-width:1100px){
  body.ds-page-debt .ds-values{width:100%!important;grid-template-columns:repeat(3,minmax(0,1fr))!important}
  body.ds-page-ademe .ds-method-steps,
  body.ds-page-ademe .ds-steps:not(.ds-method-steps),
  body.ds-page-law .ds-law-steps{min-height:0!important}
  body.ds-page-redresser .ds-target-hero,
  body.ds-redresser-candidate-v20120 .ds-target-hero{min-height:420px!important;padding-bottom:115px!important}
}
@media(max-width:760px){
  body.ds-page-debt .ds-values{grid-template-columns:1fr!important;min-height:0!important}
  body.ds-page-debt .ds-value{min-height:0!important}
  body.ds-page-ademe .ds-method-steps .ds-step,
  body.ds-page-ademe .ds-steps:not(.ds-method-steps) .ds-step,
  body.ds-page-law .ds-law-step,
  body.ds-page-law .ds-law-grid>.ds-card{min-height:0!important}
  body.ds-page-redresser .ds-target-hero,
  body.ds-redresser-candidate-v20120 .ds-target-hero{min-height:0!important;padding-bottom:18px!important}
  body.ds-page-redresser .ds-target-levers,
  body.ds-redresser-candidate-v20120 .ds-target-levers{position:static!important;margin-top:18px!important;grid-template-columns:1fr!important}
  body.ds-page-redresser .dash-card,
  body.ds-redresser-candidate-v20120 .dash-card{min-height:0!important}
  body.ds-page-redresser .why-inner,
  body.ds-redresser-candidate-v20120 .why-inner{grid-template-columns:110px minmax(0,1fr)!important;min-height:0!important}
  body.ds-page-redresser .why-map,
  body.ds-redresser-candidate-v20120 .why-map{width:110px!important;max-height:170px!important}
}

/* Final master refinements after visual inspection. */
body.ds-page-ademe .ds-status-official{
  white-space:normal!important;
  max-width:100%!important;
  display:inline-block!important;
  line-height:1.2!important;
}
@media(min-width:1101px){
  body.ds-page-law .ds-law-steps{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:10px 12px!important;
  }
  body.ds-page-law .ds-law-step{min-height:245px!important}
  body.ds-page-law .ds-law-step:nth-child(4)::after,
  body.ds-page-law .ds-law-step:nth-child(8)::after{display:none!important}
  body.ds-page-law .ds-law-step:not(:last-child)::after{top:105px!important}
}

/* Dashboard illustration: it is an infographic, never a photographic crop. */
body.ds-france-quality .knowledge-hero img[src*="public-finances-dashboard-2026"]{
  object-fit:contain!important;
  aspect-ratio:auto!important;
  height:auto!important;
  max-height:540px!important;
  background:#fff!important;
}
body.ds-france-quality .knowledge-hero img.ds-dashboard-art{
  object-fit:contain!important;
  aspect-ratio:auto!important;
  height:auto!important;
  max-height:540px!important;
  background:#fff!important;
}
#ds-quality-root .fiscal90-downloads a{color:#fff!important;text-decoration:none!important}

/* Redresser longform: icons get an explicit grid area instead of sitting over enlarged text. */
body.ds-page-redresser .ds-redress-section-levels .level-card,
body.ds-redresser-candidate-v20120 .ds-redress-section-levels .level-card{
  display:grid!important;
  grid-template-columns:54px minmax(0,1fr)!important;
  grid-template-areas:"label label" "icon title" "icon text"!important;
  column-gap:10px!important;
  row-gap:4px!important;
  padding:12px!important;
  min-height:180px!important;
}
body.ds-page-redresser .ds-redress-section-levels .level-label,
body.ds-redresser-candidate-v20120 .ds-redress-section-levels .level-label{grid-area:label!important}
body.ds-page-redresser .ds-redress-section-levels .level-icon,
body.ds-redresser-candidate-v20120 .ds-redress-section-levels .level-icon{
  grid-area:icon!important;
  position:static!important;
  width:48px!important;
  height:48px!important;
  margin:3px 0 0!important;
  align-self:start!important;
}
body.ds-page-redresser .ds-redress-section-levels h3,
body.ds-redresser-candidate-v20120 .ds-redress-section-levels h3{grid-area:title!important;margin:4px 0 0!important}
body.ds-page-redresser .ds-redress-section-levels p,
body.ds-redresser-candidate-v20120 .ds-redress-section-levels p{grid-area:text!important;margin:0!important}

body.ds-page-redresser .ds-redress-calendar-grid article,
body.ds-redresser-candidate-v20120 .ds-redress-calendar-grid article{
  position:relative!important;
  padding:13px 76px 13px 13px!important;
  min-height:190px!important;
  overflow:visible!important;
}
body.ds-page-redresser .ds-redress-calendar-grid img,
body.ds-redresser-candidate-v20120 .ds-redress-calendar-grid img{
  position:absolute!important;
  right:12px!important;
  top:12px!important;
  float:none!important;
  margin:0!important;
  width:52px!important;
  height:52px!important;
  max-width:52px!important;
  object-fit:contain!important;
}
@media(max-width:760px){
  body.ds-page-redresser .ds-redress-section-levels .level-card,
  body.ds-redresser-candidate-v20120 .ds-redress-section-levels .level-card{grid-template-columns:48px minmax(0,1fr)!important;min-height:0!important}
  body.ds-page-redresser .ds-redress-calendar-grid article,
  body.ds-redresser-candidate-v20120 .ds-redress-calendar-grid article{padding-right:68px!important;min-height:0!important}
}


/* === Delta-Sierra V20.15.0 — final France collision / intermediate-width hardening === */
/* Navigation must end exactly at its own box: the former 100vmax white shadow masked the first 10px of the sidebar. */
body.ds-france-quality .ds-nav{clip-path:none!important;box-shadow:0 1px 5px rgba(0,0,0,.08)!important}
@media(min-width:1024px){
 body.ds-france-quality .ds-side-title{font-size:12.25px!important;line-height:1.25!important;padding:9px 14px!important;min-height:34px!important;display:flex!important;align-items:center!important}
 body.ds-france-quality .ds-side-group h2{font-size:14.5px!important;line-height:1.25!important;margin-bottom:7px!important}
 body.ds-france-quality .ds-side-group a{font-size:12.25px!important;line-height:1.3!important;padding:5px 17px!important}
 body.ds-france-quality .ds-pdf strong,body.ds-france-quality .ds-pdf span,body.ds-france-quality .ds-pdf .pdf-btn{font-size:12px!important;line-height:1.35!important}
 body.ds-france-quality .ds-pdf .pdf-btn{padding-top:9px!important;padding-bottom:9px!important}
}
/* Quote images contain typography: never crop them with object-fit:cover. */
body.ds-france-quality .ds-quote img,
body.ds-france-quality .bottom-quote img,
body.ds-france-quality .ds-redress-quote img{object-fit:contain!important;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;display:block!important}
body.ds-france-quality .bottom-quote,
body.ds-france-quality .ds-redress-quote{align-self:start!important;height:auto!important;min-height:0!important;overflow:hidden!important;background:#f3f6fb!important}
body.ds-france-quality .bottom-quote{aspect-ratio:463/177!important}
body.ds-france-quality .ds-redress-quote{aspect-ratio:463/177!important;grid-row:auto!important}
/* National project row: preserve readable columns and stop the intermediate-width squeeze. */
body.ds-page-redresser .goal-row,body.ds-redresser-candidate-v20120 .goal-row{align-items:start!important}
body.ds-page-redresser .goal-row img,body.ds-redresser-candidate-v20120 .goal-row img{width:42px!important;height:42px!important;object-fit:contain!important}
body.ds-page-redresser .goal-row b,body.ds-redresser-candidate-v20120 .goal-row b{font-size:13px!important;line-height:1.22!important;margin:5px 0 4px!important}
body.ds-page-redresser .goal-row small,body.ds-redresser-candidate-v20120 .goal-row small{font-size:12px!important;line-height:1.32!important}
body.ds-page-redresser .bottom-global,body.ds-redresser-candidate-v20120 .bottom-global{overflow:visible!important}
@media(min-width:1024px) and (max-width:1279px){
 body.ds-page-redresser .goal-row,body.ds-redresser-candidate-v20120 .goal-row{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px 8px!important}
 body.ds-page-redresser .ds-target-bottom,body.ds-redresser-candidate-v20120 .ds-target-bottom{align-items:start!important}
}
@media(min-width:1280px){
 body.ds-page-redresser .ds-target-bottom,body.ds-redresser-candidate-v20120 .ds-target-bottom{align-items:start!important}
}
/* The long-form resources quote also keeps its complete typography and natural ratio. */
body.ds-page-redresser .ds-redress-section-resources,body.ds-redresser-candidate-v20120 .ds-redress-section-resources{align-items:start!important}
/* Debt master: remove the legacy 180px clipping row that allowed the reasons to escape beneath their card. */
body.ds-page-debt .ds-bottom-grid{height:auto!important;min-height:0!important;align-items:start!important}
body.ds-page-debt .ds-bottom-grid>.ds-card,body.ds-page-debt .ds-bottom-grid>figure{height:auto!important;min-height:0!important;overflow:visible!important;align-self:start!important}
body.ds-page-debt .ds-reasons{height:auto!important;min-height:0!important;align-items:stretch!important}
body.ds-page-debt .ds-reason strong{font-size:13px!important;line-height:1.25!important}
body.ds-page-debt .ds-reason p{font-size:12.5px!important;line-height:1.34!important;margin-top:6px!important}
body.ds-page-debt .ds-links a{font-size:12.5px!important;line-height:1.3!important;margin:7px 0!important}
body.ds-page-debt .ds-quote{aspect-ratio:463/177!important;min-height:0!important;overflow:hidden!important;background:#f3f6fb!important}
@media(min-width:1280px){
 body.ds-page-debt .ds-bottom-grid{grid-template-columns:minmax(0,1.65fr) minmax(230px,.58fr) minmax(330px,.95fr)!important}
}
@media(min-width:1024px) and (max-width:1279px){
 body.ds-page-debt .ds-bottom-grid{grid-template-columns:1fr 1fr!important;margin-left:0!important;width:auto!important}
 body.ds-page-debt .ds-bottom-grid>.ds-card:first-child{grid-column:1/-1!important}
 body.ds-page-debt .ds-reasons{grid-template-columns:repeat(5,minmax(0,1fr))!important}
}
/* Law/decree master: return to the approved eight-step single-line frieze on genuinely large screens, while keeping readable typography. */
@media(min-width:1440px){
 body.ds-page-law .ds-law-steps{grid-template-columns:repeat(8,minmax(0,1fr))!important;gap:8px!important;min-height:0!important;height:auto!important;align-items:stretch!important}
 body.ds-page-law .ds-law-step{min-height:236px!important;height:auto!important;padding:12px 8px 14px!important;overflow:visible!important}
 body.ds-page-law .ds-law-step .num{width:30px!important;height:30px!important;font-size:15px!important}
 body.ds-page-law .ds-law-step strong{display:block!important;min-height:50px!important;font-size:13px!important;line-height:1.18!important}
 body.ds-page-law .ds-law-step .icon{width:58px!important;height:56px!important;margin:7px auto!important;display:flex!important;align-items:center!important;justify-content:center!important}
 body.ds-page-law .ds-law-step .icon img{width:58px!important;height:56px!important;object-fit:contain!important}
 body.ds-page-law .ds-law-step p{font-size:12.5px!important;line-height:1.3!important;margin:6px 0 0!important}
}
/* Illustrated five-step reform diagram: use its compact natural ratio; never force it into a taller box. */
body.ds-france-quality .diagram-card img[src*="reform-without-breaking-services-"]{width:100%!important;height:auto!important;object-fit:contain!important;max-height:none!important}
/* === end V20.15.0 === */

/* V20.15.0 follow-up: quote figures follow the natural ratio of their embedded artwork. */
body.ds-france-quality .ds-target-bottom > figure.bottom-quote{aspect-ratio:auto!important;min-height:0!important;height:auto!important;width:auto!important;align-self:start!important}
body.ds-france-quality .ds-redress-quote{aspect-ratio:auto!important;min-height:0!important;height:auto!important;width:auto!important;align-self:start!important}

/* V20.15.0 — final intermediate-width containment */
@media (min-width:1101px) and (max-width:1439px){
  body.ds-page-law .ds-rightcol{grid-template-columns:minmax(0,1fr)!important;}
  body.ds-page-law .ds-law-grid{width:auto!important;max-width:100%!important;height:auto!important;min-height:0!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;overflow:visible!important;}
  body.ds-page-law .ds-law-grid>.ds-card{width:auto!important;height:auto!important;min-height:0!important;max-width:100%!important;overflow:visible!important;}
}
@media (max-width:1100px){
  body.knowledge-page .prototype-code,
  body.ds-france-quality .prototype-code{white-space:pre-wrap!important;overflow-wrap:anywhere!important;word-break:break-word!important;max-width:100%!important;width:auto!important;box-sizing:border-box!important;overflow-x:auto!important;}
}

/* V20.15.0 — final no-clip resource cards */
body.ds-france-quality .bottom-resources{min-width:0!important;max-width:100%!important;}
body.ds-france-quality .bottom-resources a,body.ds-france-quality .bottom-resources span{min-width:0;overflow-wrap:anywhere;word-break:normal;}


/* Delta-Sierra France — recherche interne & Index A-Z V20.16.0 */
.ds-france-search{position:relative;margin:9px 7px 13px;z-index:70}.ds-france-search-box{display:flex;align-items:center;gap:7px;background:#fff;border:1.5px solid #b9c7df;border-radius:10px;padding:7px 9px;box-shadow:0 2px 9px rgba(7,36,81,.06);transition:border-color .18s,box-shadow .18s}.ds-france-search-box:focus-within{border-color:#1556a8;box-shadow:0 0 0 3px rgba(35,105,193,.13),0 4px 14px rgba(7,36,81,.1)}.ds-france-search-icon{width:19px;height:19px;flex:0 0 19px;fill:none;stroke:#124d91;stroke-width:1.9;stroke-linecap:round}.ds-france-search input,.ds-france-search-strip input{min-width:0;width:100%;border:0!important;outline:0!important;background:transparent!important;color:#0d2854;font:600 12.5px/1.25 Arial,sans-serif;padding:0!important;box-shadow:none!important}.ds-france-search input::placeholder,.ds-france-search-strip input::placeholder{color:#5f708e;opacity:1}.ds-france-search-help{display:none;margin:5px 2px 0;padding:8px 9px;border-radius:8px;background:#f4f8ff;border:1px solid #d9e5f6;color:#344760;font-size:12.5px!important;line-height:1.45}.ds-france-search:hover .ds-france-search-help,.ds-france-search:focus-within .ds-france-search-help,.ds-france-search-strip:hover .ds-france-search-help,.ds-france-search-strip:focus-within .ds-france-search-help{display:block}.ds-france-az-link{display:flex!important;align-items:center;gap:6px;margin:7px 2px 0;padding:7px 8px!important;border-radius:7px;background:#edf4ff;color:#103f7a!important;text-decoration:none!important;font-size:12px!important;font-weight:700!important}.ds-france-az-link:hover,.ds-france-az-link:focus-visible{background:#dceaff;outline:2px solid #7aa8dd;outline-offset:1px}.ds-france-az-link svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8}.ds-france-search-results{position:absolute;left:0;top:calc(100% - 1px);width:min(430px,calc(100vw - 26px));max-height:520px;overflow:auto;background:#fff;border:1px solid #c9d7e9;border-radius:10px;box-shadow:0 18px 42px rgba(9,31,65,.22);padding:7px;z-index:9999}.ds-search-result{display:block;padding:9px 10px!important;border-radius:7px;text-decoration:none!important;color:#182a46!important;border-bottom:1px solid #edf1f6}.ds-search-result:last-of-type{border-bottom:0}.ds-search-result:hover,.ds-search-result:focus-visible,.ds-search-result.is-active{background:#eef5ff;outline:2px solid #90b7e5;outline-offset:-2px}.ds-search-result-top{display:flex;justify-content:space-between;gap:8px;align-items:flex-start}.ds-search-result b{font-size:14px;line-height:1.25;color:#0c3267}.ds-search-result em{flex:0 0 auto;font-style:normal;font-size:11px;background:#e7eef9;color:#385477;border-radius:999px;padding:2px 6px}.ds-search-result small{display:block;color:#7a5a1f;font-size:12px;margin:2px 0}.ds-search-result>span:last-child{display:block;color:#4e5e73;font-size:12.5px;line-height:1.4}.ds-search-result mark{background:#ffed9f;color:inherit;padding:0 1px}.ds-search-all{display:block;padding:10px!important;text-align:center;font-weight:800;font-size:12px!important;color:#124d91!important;text-decoration:none!important;background:#f6f9fd;border-radius:7px;margin-top:5px}.ds-search-empty{padding:13px;color:#47566b;font-size:12px;line-height:1.45}.ds-france-search-strip{position:relative;z-index:65;max-width:1180px;margin:8px auto 12px;padding:0 18px}.ds-france-search-strip-inner{display:flex;align-items:center;gap:8px;max-width:610px}.ds-france-search-strip .ds-france-search-box{flex:1}.ds-france-az-link-inline{margin:0!important;white-space:nowrap;padding:8px 11px!important}.ds-france-search-strip .ds-france-search-help{max-width:610px}.ds-france-search-strip .ds-france-search-results{left:18px;top:100%}.ds-france-search.is-discoverable .ds-france-search-box,.ds-france-search-strip.is-discoverable .ds-france-search-box{animation:dsSearchPulse 1.05s ease-in-out 3}@keyframes dsSearchPulse{0%,100%{border-color:#b9c7df;box-shadow:0 2px 9px rgba(7,36,81,.06)}50%{border-color:#2582dd;box-shadow:0 0 0 4px rgba(39,133,226,.16),0 0 20px rgba(39,133,226,.22)}}@media (prefers-reduced-motion:reduce){.ds-france-search.is-discoverable .ds-france-search-box,.ds-france-search-strip.is-discoverable .ds-france-search-box{animation:none!important}}
.ds-france-search-page-shell,.ds-france-az-shell{max-width:1120px}.ds-tool-hero{padding:26px 28px;margin-bottom:16px;border:1px solid #d7e1ef;border-radius:14px;background:linear-gradient(120deg,#f6f9ff 0%,#fff 48%,#fff6e6 100%);box-shadow:0 8px 24px rgba(11,39,76,.06)}.ds-tool-kicker{display:inline-block;margin-bottom:7px;padding:4px 9px;border-radius:999px;background:#e9f0ff;color:#144b90;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.ds-tool-hero h1{margin:0 0 8px;color:#0d2b5c;font-size:34px;line-height:1.05}.ds-tool-hero p{margin:0;color:#465a74;font-size:15px;line-height:1.55}.ds-full-search-box{display:flex;align-items:center;gap:10px;margin:18px 0 10px;padding:12px 14px;border:2px solid #a9bedc;border-radius:12px;background:#fff}.ds-full-search-box:focus-within{border-color:#155aa8;box-shadow:0 0 0 4px rgba(30,104,190,.12)}.ds-full-search-box svg{width:24px;height:24px;fill:none;stroke:#155aa8;stroke-width:2}.ds-full-search-box input{width:100%;border:0!important;outline:0!important;font:600 16px Arial,sans-serif;color:#172d4e;background:transparent!important;box-shadow:none!important}.ds-search-filters{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0 14px}.ds-search-filters button{border:1px solid #c7d6e9;background:#fff;color:#23446e;border-radius:999px;padding:7px 12px;font:700 12px Arial,sans-serif;cursor:pointer}.ds-search-filters button[aria-pressed=true]{background:#103e78;color:#fff;border-color:#103e78}.ds-full-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.ds-full-results .ds-search-result{border:1px solid #dbe3ee;background:#fff;box-shadow:0 3px 10px rgba(10,37,75,.04)}.ds-search-count{font-size:13px;color:#607089;margin:7px 0 12px}.ds-search-empty-page{grid-column:1/-1;border:1px solid #dbe3ee;border-radius:12px;background:#fff;padding:24px}.ds-az-controls{position:sticky;top:0;z-index:20;padding:10px 0;background:rgba(255,255,255,.96);backdrop-filter:blur(6px)}.ds-az-filter-box{display:flex;align-items:center;gap:8px;border:1.5px solid #b9cce4;border-radius:10px;background:#fff;padding:9px 12px}.ds-az-filter-box svg{width:19px;height:19px;fill:none;stroke:#155aa8;stroke-width:2}.ds-az-filter-box input{width:100%;border:0!important;outline:0!important;font:600 14px Arial,sans-serif;background:transparent!important;box-shadow:none!important}.ds-az-alphabet{display:flex;flex-wrap:wrap;gap:4px;margin:10px 0}.ds-az-alphabet a{display:inline-flex;min-width:31px;height:31px;align-items:center;justify-content:center;border-radius:7px;background:#f1f5fb;color:#184a83;text-decoration:none!important;font-size:12px;font-weight:800;border:1px solid #dce5f0}.ds-az-alphabet a:hover{background:#dfeeff}.ds-az-summary{font-size:12px;color:#64748b;margin:6px 0}.ds-az-group{scroll-margin-top:110px;margin:18px 0 25px}.ds-az-group h2{display:flex;align-items:center;gap:8px;border-bottom:3px solid #173f79;color:#0f315f;font-size:26px;padding-bottom:5px;margin:0 0 9px}.ds-az-group h2 small{font-size:12px;color:#6c7e96}.ds-az-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.ds-az-item{border:1px solid #dbe3ed;border-radius:10px;background:#fff;padding:11px 12px;box-shadow:0 3px 10px rgba(14,40,76,.04)}.ds-az-item-title{display:flex;justify-content:space-between;gap:8px;align-items:flex-start}.ds-az-item-title>a{font-weight:800;color:#153f79;text-decoration:none!important;font-size:14px}.ds-az-item-title em{font-style:normal;font-size:11px;border-radius:999px;padding:2px 6px;background:#f0f3f8;color:#556980}.ds-az-item p{margin:4px 0 0;color:#53647a;font-size:12.5px;line-height:1.45}.ds-az-item .ds-az-see{font-style:italic;color:#735f39}.ds-az-resources{margin:7px 0 0;padding-left:15px}.ds-az-resources a{font-size:12px;color:#1c58a1}.ds-az-item[hidden],.ds-az-group[hidden]{display:none!important}
@media(max-width:760px){.ds-france-search-results{position:fixed;left:10px!important;right:10px;top:74px!important;width:auto;max-height:calc(100vh - 100px)}.ds-france-search-strip{padding:0 10px}.ds-france-search-strip-inner{max-width:none}.ds-france-az-link-inline{font-size:12px!important}.ds-tool-hero{padding:20px 17px}.ds-tool-hero h1{font-size:29px}.ds-full-results,.ds-az-grid{grid-template-columns:1fr}.ds-az-controls{top:0}.ds-france-search-help{font-size:12px!important}}



/* === DELTA-SIERRA V20.18.0 — INTERACTIONS, INFOBULLES ET SITUATION DU PAYS === */
:root{--ds-hover-blue:#0b56a5;--ds-hover-pale:#eef6ff;--ds-focus-gold:#f0b72f;--ds-tooltip-navy:#071d45}
a[href]{transition:color .18s ease,background-color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease,filter .18s ease,opacity .18s ease}
a[href]:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,.legal-term:focus-visible{outline:3px solid var(--ds-focus-gold)!important;outline-offset:3px!important}
main p a[href],main li a[href],main td a[href],main th a[href],main small a[href],main .source-note a[href],main .source-list a[href],.bottom-more>a:not(.more-btn),.bottom-resources a[href]{text-decoration-thickness:1px;text-underline-offset:3px}
main p a[href]:hover,main li a[href]:hover,main td a[href]:hover,main th a[href]:hover,main small a[href]:hover,main .source-note a[href]:hover,main .source-list a[href]:hover,.bottom-more>a:not(.more-btn):hover,.bottom-resources a[href]:hover{color:var(--ds-hover-blue)!important;text-decoration:underline!important;text-decoration-thickness:2px!important;text-underline-offset:4px!important;background:rgba(15,93,180,.08);border-radius:4px;box-shadow:0 0 0 3px rgba(15,93,180,.08)}
.ds-sidebar .ds-side-group a:hover,.ds-sidebar .ds-situation-country-link:hover{background:linear-gradient(90deg,#e7f1ff,#f8fbff)!important;color:#092e63!important;box-shadow:inset 4px 0 #1b67bd!important;text-decoration:none!important;transform:translateX(2px)}
.ds-sidebar .ds-side-title:hover{filter:brightness(1.16);text-decoration:none!important}
.ds-situation-country-link{display:block;margin:9px 10px 7px;padding:10px 12px;border:1px solid #c9d8eb;border-radius:8px;background:linear-gradient(135deg,#eef5ff,#fff7df);color:#0b315f!important;font-weight:900;font-size:12.5px;line-height:1.2;text-decoration:none!important;box-shadow:0 2px 8px rgba(9,49,95,.08)}
.ds-situation-country-link:before{content:'⚑';margin-right:8px;color:#b33a33}.ds-situation-country-link.active{background:linear-gradient(90deg,#163b75,#2d56a0)!important;color:#fff!important;border-color:#163b75}
.more-btn,.pdf-btn,.dash-link,.budget-actions a,.knowledge-actions a,.property-pills a,.data-downloads a,.ds-support,.btn-soutien,.ds-france-az-link,.mars-az-link,.ds-floating-action{transition:transform .18s ease,box-shadow .18s ease,filter .18s ease,background-color .18s ease!important}
.more-btn:hover,.pdf-btn:hover,.dash-link:hover,.budget-actions a:hover,.knowledge-actions a:hover,.property-pills a:hover,.data-downloads a:hover,.ds-support:hover,.btn-soutien:hover,.ds-france-az-link:hover,.mars-az-link:hover,.ds-floating-action:hover{transform:translateY(-2px)!important;box-shadow:0 8px 18px rgba(7,29,69,.18)!important;filter:brightness(1.04)!important;text-decoration:none!important}
.budget-actions a{color:#fff!important}.budget-actions a:hover{background:#0b56a5!important;color:#fff!important}.budget-actions a.secondary{color:#18334b!important}.budget-actions a.secondary:hover{background:#e8f2ff!important;color:#092e63!important}
.bottom-more>a:not(.more-btn),.bottom-resources a{display:block;border-radius:5px;padding:4px 6px;margin-left:-6px;margin-right:-6px}.bottom-more>a:not(.more-btn):hover,.bottom-resources a:hover{background:#eef6ff!important;color:#093f85!important;text-decoration:underline!important}
.dash-link{font-size:12.5px!important;line-height:1.35!important;padding:7px 9px!important;border-radius:6px!important}.dash-link:hover{background:#eaf4ff!important;color:#083f86!important}
.ds-official-inline-source{display:inline-block;margin-left:.25rem;padding:.18rem .4rem;border-radius:5px;background:#edf6ff;color:#0a4c95!important;font-weight:800;text-decoration:none!important}.ds-official-inline-source:hover{background:#d9ebff!important;color:#062f68!important}
/* Accessible technical vocabulary tooltips. */
.legal-term{display:inline;position:relative;color:#0a4f9f;border-bottom:1.5px dotted #0a63ba;cursor:help;font-weight:650;text-decoration:none;white-space:normal}.legal-term:hover,.legal-term:focus{color:#062f68;background:#eaf4ff;border-radius:3px}.legal-tooltip{position:fixed;z-index:99990;width:min(390px,calc(100vw - 24px));max-height:min(560px,calc(100vh - 24px));overflow:auto;background:#fff;border:1px solid #b9c9dd;border-top:4px solid #165ca8;border-radius:12px;box-shadow:0 18px 48px rgba(5,25,55,.25);padding:0;opacity:0;visibility:hidden;transform:translateY(4px);transition:opacity .14s ease,transform .14s ease,visibility .14s}.legal-tooltip.is-open{opacity:1;visibility:visible;transform:none}.legal-tooltip__head{display:flex;align-items:flex-start;gap:10px;padding:12px 13px 9px;background:linear-gradient(135deg,#f0f6ff,#fff);border-bottom:1px solid #dce5ef}.legal-tooltip__badge{display:grid;place-items:center;flex:0 0 26px;width:26px;height:26px;border-radius:50%;background:#165ca8;color:#fff;font-weight:900}.legal-tooltip h3{margin:2px 0 0!important;font-size:16px!important;line-height:1.2!important;color:#071d45!important}.legal-tooltip__close{margin-left:auto;border:0;background:transparent;color:#5d6877;font-size:23px;line-height:1;min-width:32px;min-height:32px;cursor:pointer}.legal-tooltip__body{padding:11px 13px 13px}.legal-tooltip__row{margin:0 0 9px!important;font-size:13px!important;line-height:1.48!important;color:#29384b!important}.legal-tooltip__label{display:block;margin-bottom:2px;color:#0a4c95;font-size:11.5px;font-weight:900;letter-spacing:.03em;text-transform:uppercase}.legal-tooltip__more,.legal-tooltip__source{display:block!important;margin-top:8px!important;padding:8px 10px!important;border-radius:7px!important;font-size:12.5px!important;font-weight:850!important;text-decoration:none!important}.legal-tooltip__source{background:#eef7f0!important;color:#176038!important}.legal-tooltip__source:hover{background:#dff0e3!important;color:#0e4828!important}.legal-tooltip__more{background:#edf4ff!important;color:#0b4d9c!important}.legal-tooltip__more:hover{background:#dbeaff!important;color:#06346e!important}.legal-glossary-hint{display:flex;align-items:flex-start;gap:10px;margin:12px 0 18px;padding:11px 13px;border:1px solid #cddced;border-left:4px solid #1c64ae;border-radius:9px;background:#f5f9ff;color:#243a55}.legal-glossary-hint p{margin:0!important;font-size:12.5px!important;line-height:1.45!important}.legal-glossary-hint__icon{display:grid;place-items:center;flex:0 0 24px;width:24px;height:24px;border-radius:50%;background:#1c64ae;color:#fff;font-weight:900}.legal-glossary-hint button{margin-left:auto;border:0;background:transparent;font-size:20px;line-height:1;min-height:28px!important;min-width:28px;cursor:pointer;color:#42546a}
/* Situation du pays — diagnostic long-form. */
.ds-situation-main{padding-bottom:42px}.ds-situation-hero{background:linear-gradient(120deg,#fff 0%,#f7f3e9 55%,#e9f2fa 100%);border-bottom:1px solid #d9e1eb}.ds-situation-summary{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin:12px 0 14px}.ds-situation-summary article{min-height:178px;padding:13px 9px 12px;border:1px solid #d9e2ee;border-radius:10px;background:#fff;text-align:center;box-shadow:0 3px 10px rgba(15,44,80,.06)}.ds-situation-summary article:nth-child(1){background:#eef4ff}.ds-situation-summary article:nth-child(2){background:#f2f6ff}.ds-situation-summary article:nth-child(3){background:#fff4e9}.ds-situation-summary article:nth-child(4){background:#eef8ef}.ds-situation-summary article:nth-child(5){background:#f4efff}.ds-situation-summary article:nth-child(6){background:#fff0f3}.ds-situation-summary article:nth-child(7){background:#eef7fa}.ds-situation-summary img{width:48px!important;height:48px!important;object-fit:contain!important;margin:0 auto 8px!important}.ds-situation-summary strong{display:block;color:#0b315f;font-size:13.5px;line-height:1.18;margin-bottom:6px}.ds-situation-summary span{display:block;color:#4b596b;font-size:12px;line-height:1.35}.ds-situation-toc{display:flex;flex-wrap:wrap;gap:7px;margin:9px 0 18px;padding:11px;border:1px solid #d5dfeb;border-radius:9px;background:#f8fafc}.ds-situation-toc a{padding:7px 10px;border-radius:999px;background:#fff;border:1px solid #c9d8e8;color:#0b4b90!important;font-size:12.5px;font-weight:800;text-decoration:none!important}.ds-situation-toc a:hover{background:#e9f3ff!important;border-color:#7ca9d8!important;transform:translateY(-1px)}.ds-situation-preface,.ds-situation-sourcebox{margin:16px 0;padding:15px 17px;border-radius:10px;border:1px solid #d6e0eb;background:#f8fafc}.ds-situation-preface p,.ds-situation-sourcebox p{margin:.35rem 0!important}.ds-situation-sourcebox{border-left:5px solid #1d64ad;background:#f2f7fd}.ds-situation-sourcebox h3{margin-top:0!important}.ds-situation-section{position:relative;margin:22px 0;padding:20px 22px;border:1px solid #dfe5ec;border-radius:12px;background:#fff;box-shadow:0 4px 14px rgba(9,39,75,.055)}.ds-situation-section:nth-child(4n+1){border-top:5px solid #1d5fa7}.ds-situation-section:nth-child(4n+2){border-top:5px solid #c98723}.ds-situation-section:nth-child(4n+3){border-top:5px solid #38885a}.ds-situation-section:nth-child(4n){border-top:5px solid #7854b6}.ds-situation-section h3{font-size:clamp(20px,2vw,28px)!important;margin-top:0!important;color:#082c60!important}.ds-situation-section p,.ds-situation-section li{font-size:15.5px!important;line-height:1.66!important;color:#26364a}.ds-situation-section ul{padding-left:1.35rem}.ds-situation-section li{margin-bottom:.55rem}.ds-situation-section strong{color:#122f5c}.ds-situation-next{margin:28px 0 6px;padding:22px;border-radius:12px;background:linear-gradient(135deg,#0b2c5d,#164f8b);color:#fff}.ds-situation-next h2,.ds-situation-next p{color:#fff!important}.ds-situation-next>div{display:flex;flex-wrap:wrap;gap:10px}.ds-situation-next .more-btn{display:inline-block!important;background:#ffc632!important;color:#102245!important;padding:10px 14px!important;text-decoration:none!important}.ds-situation-next .more-btn.secondary{background:#fff!important;color:#0b3f80!important}
@media(max-width:1279px){.ds-situation-summary{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:760px){.ds-situation-summary{grid-template-columns:1fr 1fr}.ds-situation-summary article{min-height:0}.ds-situation-section{padding:16px 14px}.ds-situation-section p,.ds-situation-section li{font-size:15px!important}.ds-situation-toc{display:grid;grid-template-columns:1fr 1fr}.legal-tooltip{width:calc(100vw - 20px)}}
@media(prefers-reduced-motion:reduce){a[href],.legal-tooltip{transition:none!important}}

/* V20.18.0 — universal clickable feedback: every real anchor visibly reacts on pointer hover. */
a[href]:hover{filter:brightness(.94)}
a[href] img{transition:filter .18s ease,transform .18s ease}
a[href]:hover img{filter:brightness(.94)}
.ds-breadcrumb-label{color:#5b6574}
