/**
 * Lecture : polices d’accessibilité + mise en page qui ne coupe jamais le texte.
 * Éditoriale (Inter/Georgia), sans-serif (Arial) et OpenDyslexic.
 */

/* -------------------------------------------------------------------------
   Hygiène globale — titres, grilles, pastilles
   ------------------------------------------------------------------------- */
.kicker{
  line-height:1.35;
  overflow-wrap:anywhere;
}
.pill,
.choice,
.topic-chip,
.search-shortcuts a,
.read,
.feature .read{
  white-space:normal;
  line-height:1.25;
  max-width:100%;
  height:auto;
}
.choices{align-items:stretch}
.choice{text-align:center}
.panel{
  max-height:min(42rem,calc(100dvh - 96px));
  overflow:auto;
  overscroll-behavior:contain;
}
.search-input{
  overflow-wrap:anywhere;
  min-width:0;
}

.header-inner,
.home-hero-grid,
.desk,
.section-title-row,
.section-head,
.atlas-row,
.archive-row,
.feature-top,
.feature-bottom,
.hero-meta,
.footer-grid,
.footer-bottom,
.about-grid,
.about-topics,
.margin-notes,
.article-hero-inner,
.author-card,
.archive-toolbar-inner,
.page-hero-grid{
  min-width:0;
}
.header-inner > *,
.home-hero-grid > *,
.desk > *,
.atlas-row > *,
.archive-row > *,
.latest-grid > *,
.notes-grid > *,
.footer-grid > *{
  min-width:0;
}

h1,h2,h3,h4,
.atlas-name,
.archive-title,
.article-title,
.section-title,
.feature h3,
.mini-card h3,
.story-card h3,
.note-card strong,
.hero-manifesto strong,
.page-hero h1,
.about-title,
.search-page h1,
.not-found h1{
  overflow-wrap:anywhere;
  word-break:break-word;
}
.hero-question h2,
.hero-main h1,
.hero-main h1 em,
.hero-a,.hero-b,.hero-c,
.section-title-row h2,
.section-title{
  overflow-wrap:break-word;
  word-break:normal;
  hyphens:none;
  overflow:visible;
}

.section-title-row,
.feature-top,
.feature-bottom,
.hero-meta,
.footer-bottom,
.archive-toolbar-inner,
.author-card,
.article-nextprev,
.story-bottom{
  flex-wrap:wrap;
}

.atlas-row{
  grid-template-columns:4.5rem minmax(0,1fr) minmax(0,1fr) 2.75rem;
  align-items:center;
  padding-block:18px;
}
.archive-row{
  grid-template-columns:4.4rem minmax(0,9.4rem) minmax(0,1fr) minmax(0,10.5rem) 2.1rem;
}
.hero-main,
.hero-question,
.feature,
.story-card,
.mini-card,
.notes-intro,
.note-card{
  overflow:visible;
}
.story-card .shape.has-thumb{overflow:hidden}

.header-inner{
  min-height:72px;
  height:auto;
  padding-block:12px;
}
.site-header{overflow:visible}

@media (max-width:820px){
  .atlas-row{grid-template-columns:2.6rem minmax(0,1fr) 1.75rem}
  .archive-row{grid-template-columns:2.9rem minmax(0,1fr) 1.9rem}
}

/* -------------------------------------------------------------------------
   Application des polices (titres Georgia / Inter inclus)
   ------------------------------------------------------------------------- */
html[data-font="easy"]{
  --reading-font:Arial,Verdana,Helvetica,sans-serif;
  font-family:var(--reading-font);
}
html[data-font="dyslexia"]{
  --reading-font:"OpenDyslexic",Verdana,sans-serif;
  --article-leading:1.9;
  font-family:var(--reading-font);
}

html[data-font="easy"] body,
html[data-font="dyslexia"] body{
  font-family:inherit;
}
html[data-font="easy"] *:not(code):not(pre):not(kbd):not(svg):not(path),
html[data-font="dyslexia"] *:not(code):not(pre):not(kbd):not(svg):not(path){
  font-family:inherit !important;
}

/* OpenDyslexic n’a que Regular / Bold : éviter le faux-gras 850–950. */
html[data-font="dyslexia"] h1,
html[data-font="dyslexia"] h2,
html[data-font="dyslexia"] h3,
html[data-font="dyslexia"] h4,
html[data-font="dyslexia"] .kicker,
html[data-font="dyslexia"] .pill,
html[data-font="dyslexia"] .desktop-nav a,
html[data-font="dyslexia"] .drawer-nav a,
html[data-font="dyslexia"] .section-title,
html[data-font="dyslexia"] .article-title,
html[data-font="dyslexia"] .atlas-name,
html[data-font="dyslexia"] .hero-main h1,
html[data-font="dyslexia"] .about-title,
html[data-font="dyslexia"] .page-hero h1{
  font-weight:400;
}
html[data-font="dyslexia"] strong,
html[data-font="dyslexia"] b,
html[data-font="dyslexia"] .filter.active{
  font-weight:700;
}
html[data-font="dyslexia"] em,
html[data-font="dyslexia"] i,
html[data-font="dyslexia"] .hero-main h1 em,
html[data-font="dyslexia"] blockquote{
  font-style:italic;
}

/* Espacement : sur le texte, pas sur tout le chrome. */
html[data-font="dyslexia"] .article-body,
html[data-font="dyslexia"] .prose,
html[data-font="dyslexia"] .lead,
html[data-font="dyslexia"] .hero-main .lead,
html[data-font="dyslexia"] .article-deck{
  letter-spacing:.02em;
  word-spacing:.06em;
  line-height:1.9;
}
html[data-font="dyslexia"] .kicker,
html[data-font="dyslexia"] .article-category,
html[data-font="dyslexia"] .mini-card .num,
html[data-font="dyslexia"] .feature-top,
html[data-font="dyslexia"] .marquee-track{
  letter-spacing:.06em;
}

/* -------------------------------------------------------------------------
   Modes lecture (sans-serif, OpenDyslexic, 112 %, 124 %) : interlignes et tailles
   ------------------------------------------------------------------------- */
html[data-font="easy"] h1,
html[data-font="easy"] h2,
html[data-font="easy"] h3,
html[data-font="dyslexia"] h1,
html[data-font="dyslexia"] h2,
html[data-font="dyslexia"] h3,
html[data-text-size="large"] h1,
html[data-text-size="large"] h2,
html[data-text-size="large"] h3,
html[data-text-size="xlarge"] h1,
html[data-text-size="xlarge"] h2,
html[data-text-size="xlarge"] h3{
  line-height:1.18;
  letter-spacing:0;
}

html[data-font="easy"] .hero-main,
html[data-font="dyslexia"] .hero-main,
html[data-text-size="large"] .hero-main,
html[data-text-size="xlarge"] .hero-main{
  min-height:0;
  overflow:visible;
}
html[data-font="easy"] .hero-main h1,
html[data-font="dyslexia"] .hero-main h1,
html[data-text-size="large"] .hero-main h1,
html[data-text-size="xlarge"] .hero-main h1,
html[data-font="easy"] .hero-a,
html[data-font="dyslexia"] .hero-a,
html[data-text-size="large"] .hero-a,
html[data-text-size="xlarge"] .hero-a,
html[data-font="easy"] .hero-c,
html[data-font="dyslexia"] .hero-c,
html[data-text-size="large"] .hero-c,
html[data-text-size="xlarge"] .hero-c{
  max-width:none;
  margin-left:0;
  line-height:1.12;
  letter-spacing:0;
  word-break:normal;
}
html[data-font="easy"] .home-hero,
html[data-font="dyslexia"] .home-hero,
html[data-text-size="large"] .home-hero,
html[data-text-size="xlarge"] .home-hero{
  height:auto;
  max-height:none;
}
html[data-font="easy"] .hero-ornaments,
html[data-font="dyslexia"] .hero-ornaments,
html[data-text-size="large"] .hero-ornaments,
html[data-text-size="xlarge"] .hero-ornaments{
  display:none;
}
html[data-font="easy"] .hero-lockup,
html[data-font="dyslexia"] .hero-lockup,
html[data-text-size="large"] .hero-lockup,
html[data-text-size="xlarge"] .hero-lockup{
  grid-template-columns:1fr;
  grid-template-rows:auto;
}
html[data-font="easy"] .hero-lockup h1,
html[data-font="dyslexia"] .hero-lockup h1,
html[data-text-size="large"] .hero-lockup h1,
html[data-text-size="xlarge"] .hero-lockup h1{
  grid-column:1;
  grid-row:auto;
}
html[data-font="easy"] .hero-main .lead,
html[data-font="dyslexia"] .hero-main .lead,
html[data-text-size="large"] .hero-main .lead,
html[data-text-size="xlarge"] .hero-main .lead{
  grid-column:1;
  grid-row:auto;
  max-width:none;
  margin-top:18px;
}
html[data-font="dyslexia"] .hero-tittle:after,
html[data-font="easy"] .hero-tittle:after{display:none}

html[data-font="dyslexia"] .hero-main h1,
html[data-font="dyslexia"] .hero-a,
html[data-font="dyslexia"] .hero-c{
  font-size:clamp(2.1rem,6.2vw,4.8rem);
}
html[data-font="dyslexia"] .hero-b{
  font-size:clamp(1.7rem,5vw,3.6rem);
}
html[data-font="easy"] .hero-main h1,
html[data-text-size="large"] .hero-main h1,
html[data-font="easy"] .hero-a,
html[data-text-size="large"] .hero-a,
html[data-font="easy"] .hero-c,
html[data-text-size="large"] .hero-c{
  font-size:clamp(2.6rem,7vw,6.4rem);
}
html[data-text-size="xlarge"] .hero-main h1,
html[data-font="dyslexia"][data-text-size="large"] .hero-main h1,
html[data-text-size="xlarge"] .hero-a,
html[data-font="dyslexia"][data-text-size="large"] .hero-a,
html[data-text-size="xlarge"] .hero-c,
html[data-font="dyslexia"][data-text-size="large"] .hero-c{
  font-size:clamp(2.2rem,6.4vw,5.4rem);
}
html[data-font="dyslexia"][data-text-size="xlarge"] .hero-main h1,
html[data-font="dyslexia"][data-text-size="xlarge"] .hero-a,
html[data-font="dyslexia"][data-text-size="xlarge"] .hero-c{
  font-size:clamp(1.9rem,5.8vw,4.2rem);
}

html[data-font="easy"] .hero-question,
html[data-font="dyslexia"] .hero-question,
html[data-text-size="large"] .hero-question,
html[data-text-size="xlarge"] .hero-question{
  min-height:0;
  overflow:visible;
}
html[data-font="dyslexia"] .hero-question h2{
  font-size:clamp(1.7rem,3.4vw,3.1rem);
  line-height:1.2;
  letter-spacing:0;
}
html[data-font="easy"] .hero-question h2,
html[data-text-size="large"] .hero-question h2,
html[data-text-size="xlarge"] .hero-question h2{
  line-height:1.15;
  letter-spacing:0;
}

html[data-font="dyslexia"] .hero-manifesto strong{
  font-size:clamp(1.35rem,2.4vw,1.9rem);
  line-height:1.2;
  font-weight:700;
}
html[data-font="dyslexia"] .hero-topic-list li{
  line-height:1.3;
  padding:8px 12px;
}

html[data-font="easy"] .section-title,
html[data-font="easy"] .section-title-row h2,
html[data-font="dyslexia"] .section-title,
html[data-font="dyslexia"] .section-title-row h2,
html[data-text-size="large"] .section-title,
html[data-text-size="large"] .section-title-row h2,
html[data-text-size="xlarge"] .section-title,
html[data-text-size="xlarge"] .section-title-row h2{
  line-height:1.12;
  letter-spacing:0;
}
html[data-font="dyslexia"] .section-title,
html[data-font="dyslexia"] .section-title-row h2{
  font-size:clamp(2rem,4.2vw,3.6rem);
}
html[data-font="dyslexia"] .section-title-row p{
  max-width:none;
}

html[data-font="easy"] .feature,
html[data-font="dyslexia"] .feature,
html[data-text-size="large"] .feature,
html[data-text-size="xlarge"] .feature{
  min-height:0;
  overflow:visible;
}
html[data-font="dyslexia"] .feature h3{
  font-size:clamp(1.8rem,4vw,3.4rem);
  line-height:1.16;
  letter-spacing:0;
  margin:24px 0 18px;
}
html[data-font="easy"] .feature h3,
html[data-text-size="large"] .feature h3,
html[data-text-size="xlarge"] .feature h3{
  line-height:1.12;
  letter-spacing:0;
}
html[data-font="dyslexia"] .feature-top{
  text-transform:none;
  letter-spacing:.04em;
  gap:12px;
}

html[data-font="dyslexia"] .mini-card{
  min-height:0;
  align-items:start;
}
html[data-font="dyslexia"] .mini-card h3,
html[data-font="easy"] .mini-card h3,
html[data-text-size="large"] .mini-card h3,
html[data-text-size="xlarge"] .mini-card h3{
  font-size:clamp(1.15rem,2vw,1.55rem);
  line-height:1.2;
  letter-spacing:0;
}

html[data-font="dyslexia"] .story-card,
html[data-font="easy"] .story-card,
html[data-text-size="large"] .story-card,
html[data-text-size="xlarge"] .story-card{
  min-height:0;
  overflow:visible;
}
html[data-font="dyslexia"] .story-card h3{
  font-size:clamp(1.25rem,2.4vw,1.9rem);
  line-height:1.2;
  letter-spacing:0;
  margin:28px 0 12px;
}
html[data-font="easy"] .story-card h3,
html[data-text-size="large"] .story-card h3,
html[data-text-size="xlarge"] .story-card h3{
  line-height:1.15;
  letter-spacing:0;
}

html[data-font="dyslexia"] .atlas-name{
  font-size:clamp(1.15rem,2.2vw,2rem);
  letter-spacing:0;
  line-height:1.2;
}
html[data-font="easy"] .atlas-name,
html[data-text-size="large"] .atlas-name,
html[data-text-size="xlarge"] .atlas-name{
  letter-spacing:0;
  line-height:1.15;
}
html[data-font="dyslexia"] .atlas-desc{
  line-height:1.4;
}

html[data-font="dyslexia"] .note-card,
html[data-font="easy"] .note-card,
html[data-text-size="large"] .note-card,
html[data-text-size="xlarge"] .note-card{
  min-height:0;
}
html[data-font="dyslexia"] .note-card strong{
  font-size:clamp(1.05rem,1.8vw,1.35rem);
  line-height:1.25;
  font-weight:700;
}

html[data-font="dyslexia"] .article-title,
html[data-font="dyslexia"] .page-hero h1,
html[data-font="dyslexia"] .search-page h1,
html[data-font="dyslexia"] .not-found h1,
html[data-font="dyslexia"] .about-title,
html[data-font="dyslexia"] .category-hero h1{
  font-size:clamp(2rem,6vw,4.2rem);
  line-height:1.15;
  letter-spacing:0;
  max-width:100%;
}
html[data-font="easy"] .article-title,
html[data-font="easy"] .page-hero h1,
html[data-font="easy"] .about-title,
html[data-font="easy"] .category-hero h1,
html[data-text-size="large"] .article-title,
html[data-text-size="large"] .page-hero h1,
html[data-text-size="xlarge"] .article-title,
html[data-text-size="xlarge"] .page-hero h1{
  line-height:1.1;
  letter-spacing:0;
}

html[data-font="dyslexia"] .archive-feature h2,
html[data-font="easy"] .archive-feature h2{
  line-height:1.15;
  letter-spacing:0;
}
html[data-font="dyslexia"] .archive-feature h2{
  font-size:clamp(1.8rem,4vw,3.2rem);
}
html[data-font="dyslexia"] .archive-title,
html[data-font="easy"] .archive-title,
html[data-text-size="large"] .archive-title,
html[data-text-size="xlarge"] .archive-title{
  line-height:1.2;
  letter-spacing:0;
}
html[data-font="dyslexia"] .archive-excerpt,
html[data-font="easy"] .archive-excerpt,
html[data-text-size="large"] .archive-excerpt,
html[data-text-size="xlarge"] .archive-excerpt{
  -webkit-line-clamp:4;
  line-clamp:4;
}
html[data-font="dyslexia"] .archive-meta{
  text-align:left;
  overflow-wrap:anywhere;
}

html[data-font="dyslexia"] .article-body h2,
html[data-font="dyslexia"] .prose h2,
html[data-font="dyslexia"] .article-body h3,
html[data-font="dyslexia"] .prose h3{
  line-height:1.22;
  letter-spacing:0;
}
html[data-font="dyslexia"] .article-body h2,
html[data-font="dyslexia"] .prose h2{
  font-size:clamp(1.6rem,3vw,2.4rem);
}
html[data-font="dyslexia"] .search-input{
  font-size:clamp(1.25rem,3vw,2.15rem);
  letter-spacing:0;
  font-weight:400;
}
html[data-font="easy"] .search-input{
  letter-spacing:0;
}

html[data-font="dyslexia"] .about-intro,
html[data-font="easy"] .about-intro{
  letter-spacing:0;
  line-height:1.35;
}
html[data-font="dyslexia"] .about-intro{
  font-size:clamp(1.15rem,2.2vw,1.7rem);
}
html[data-font="dyslexia"] .about-manifesto{
  font-size:clamp(1.4rem,3vw,2.4rem);
  line-height:1.25;
  letter-spacing:0;
}
html[data-font="dyslexia"] .about-card,
html[data-font="easy"] .about-card{
  min-height:0;
}

html[data-font="dyslexia"] .category-hero-box,
html[data-font="easy"] .category-hero-box,
html[data-text-size="large"] .category-hero-box,
html[data-text-size="xlarge"] .category-hero-box{
  min-height:0;
  overflow:visible;
}
html[data-font="dyslexia"] .category-tile h3,
html[data-font="easy"] .category-tile h3{
  line-height:1.2;
}

html[data-font="dyslexia"] .site-header .icon-button{
  font-size:.8rem;
  line-height:1;
}
html[data-font="dyslexia"] .footer-col a,
html[data-font="easy"] .footer-col a{
  overflow-wrap:anywhere;
}
html[data-font="dyslexia"] .footer-bottom,
html[data-font="easy"] .footer-bottom,
html[data-text-size="large"] .footer-bottom,
html[data-text-size="xlarge"] .footer-bottom{
  align-items:flex-start;
  gap:12px;
}
html[data-font="dyslexia"] .desktop-nav{
  flex-wrap:wrap;
  justify-content:center;
  row-gap:4px;
}
html[data-font="dyslexia"] .desktop-nav a,
html[data-font="easy"] .desktop-nav a{
  line-height:1.25;
  padding:7px 10px;
}
html[data-font="dyslexia"] .desktop-nav a{
  font-size:.78rem;
}
html[data-font="dyslexia"] .drawer-nav a{
  font-size:1.15rem;
  letter-spacing:0;
  font-weight:400;
  gap:12px;
  align-items:flex-start;
}
html[data-font="dyslexia"] .drawer-nav a span{
  overflow-wrap:anywhere;
}

html[data-font="dyslexia"] .panel-title{
  font-size:clamp(1.35rem,3vw,1.7rem);
  line-height:1.2;
}
html[data-font="dyslexia"] .filter,
html[data-font="easy"] .filter{
  white-space:normal;
}

html[data-font="dyslexia"] .related-card strong,
html[data-font="dyslexia"] .nextprev-card strong{
  line-height:1.2;
  letter-spacing:0;
}
html[data-font="dyslexia"] .pagination .page-numbers{
  min-width:2.8rem;
  padding:.45rem .7rem;
}

html[data-spacing="wide"] body{line-height:1.7}
html[data-spacing="wide"] .article-body,
html[data-spacing="wide"] .prose{line-height:2.05}
html[data-font="dyslexia"][data-spacing="wide"]{--article-leading:2.1}
html[data-spacing="wide"] .article-body,
html[data-spacing="wide"] .prose{line-height:2.05}
html[data-spacing="wide"] .hero-main .lead,
html[data-spacing="wide"] .article-deck,
html[data-spacing="wide"] .story-card p,
html[data-spacing="wide"] .feature p{line-height:1.75}

@media (max-width:820px){
  html[data-font="dyslexia"] .hero-main h1{
    font-size:clamp(1.85rem,11vw,3.1rem);
  }
  html[data-font="dyslexia"] .article-title,
  html[data-font="dyslexia"] .page-hero h1,
  html[data-font="dyslexia"] .about-title,
  html[data-font="dyslexia"] .category-hero h1{
    font-size:clamp(1.85rem,12vw,3.2rem);
  }
  html[data-font="dyslexia"] .notes-grid{grid-template-columns:1fr}
  html[data-font="dyslexia"] .header-inner{padding-block:10px}
}
@media (max-width:520px){
  html[data-font="dyslexia"] .filter,
  html[data-font="easy"] .filter{
    white-space:nowrap;
  }
}

html[data-font="dyslexia"] .legal-page .page-hero h1,
html[data-font="easy"] .legal-page .page-hero h1,
html[data-text-size="large"] .legal-page .page-hero h1,
html[data-text-size="xlarge"] .legal-page .page-hero h1{
  font-size:clamp(1.7rem,6vw,3.1rem);
  line-height:1.2;
  letter-spacing:0;
  max-width:100%;
}
html[data-font="dyslexia"] .legal-page .prose h2,
html[data-font="easy"] .legal-page .prose h2{
  font-size:clamp(1.15rem,3vw,1.55rem);
  line-height:1.3;
}
html[data-font="dyslexia"] .legal-page .wp-block-table td,
html[data-font="dyslexia"] .legal-page .wp-block-table th,
html[data-font="easy"] .legal-page .wp-block-table td,
html[data-font="easy"] .legal-page .wp-block-table th,
html[data-text-size="large"] .legal-page .wp-block-table td,
html[data-text-size="xlarge"] .legal-page .wp-block-table td{
  overflow-wrap:normal !important;
  word-break:normal !important;
  hyphens:none !important;
}

.legal-page table th,
.legal-page table td{
  overflow-wrap:normal !important;
  word-break:normal !important;
  hyphens:none !important;
}
@media (max-width:1100px){
  .legal-page table th,
  .legal-page table td{
    overflow-wrap:break-word !important;
    white-space:normal !important;
  }
}
