/* =========================================================================
   SQUELETTE « journal-deux-col »
   Journal a deux colonnes asymetriques : tribune large + marge etroite.
   Tout le style tient dans ce fichier. Zero requete externe.
   Prefixe de classes : ssa- (quotidien). Ne pas melanger avec un autre prefixe.
   ========================================================================= */

/* -------------------------------------------------------------------------
   1. VARIABLES : LE SEUL BLOC A TOUCHER POUR RHABILLER
   ------------------------------------------------------------------------- */
:root {
  /* --- Palette --- */
  --ssa-fond: #dcd8c9;            /* fond de page, gris lilas de papier froid */
  --ssa-papier: #f7f1e2;          /* fond des colonnes et des blocs */
  --ssa-encre: #153e47;           /* texte principal */
  --ssa-encre-douce: #455653;     /* texte secondaire, legendes, meta */
  --ssa-accent: #285866;          /* violet d'imprimerie : liens, rubriques */
  --ssa-signal: #9b3f2e;          /* rouge de tampon : urgence, chiffres cles */
  --ssa-filet: #c6bca7;           /* trait fin */
  --ssa-filet-fort: #153e47;      /* trait gras et filets doubles */
  --ssa-surlignage: #e6e2cf;      /* aplat leger derriere une rubrique */

  /* --- Polices (piles systeme, aucun fichier a charger) --- */
  --ssa-titre-police: "Palatino Linotype", Palatino, "Book Antiqua", "URW Palladio L", "Iowan Old Style", Georgia, serif;
  --ssa-texte-police: "Times New Roman", Times, "Liberation Serif", "Nimbus Roman No9 L", serif;
  --ssa-rubrique-police: "Arial Narrow", "Liberation Sans Narrow", "Helvetica Neue", Helvetica, Arial, sans-serif;

  /* --- Rythme et mesures --- */
  --ssa-largeur-page: 74rem;      /* largeur maxi de l'edition */
  --ssa-largeur-marge: 20rem;     /* largeur de la colonne laterale */
  --ssa-mesure: 38em;             /* longueur de ligne confortable en lecture */
  --ssa-gouttiere: 2.5rem;        /* espace entre tribune et marge */
  --ssa-pas: 1.15rem;             /* unite d'espacement verticale */
  --ssa-marge-page: clamp(1rem, 4vw, 2.75rem);

  /* --- Typographie --- */
  --ssa-corps: 1.0625rem;
  --ssa-interligne: 1.62;
  --ssa-capitales: 0.115em;       /* interlettrage des capitales de rubrique */

  /* --- Traits --- */
  --ssa-trait-fin: 1px solid var(--ssa-filet);
  --ssa-trait-gras: 3px solid var(--ssa-filet-fort);
  --ssa-trait-double: 4px double var(--ssa-filet-fort);
}

/* -------------------------------------------------------------------------
   2. BASES
   ------------------------------------------------------------------------- */
*, *::before, *::after { box-sizing: border-box; }

html { -webkit-text-size-adjust: 100%; }

body {
  margin: 0;
  background: var(--ssa-fond);
  color: var(--ssa-encre);
  font-family: var(--ssa-texte-police);
  font-size: var(--ssa-corps);
  line-height: var(--ssa-interligne);
  overflow-wrap: break-word;
}

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

a { color: var(--ssa-accent); text-decoration-thickness: 1px; text-underline-offset: 0.14em; }
a:hover { color: var(--ssa-signal); }

:focus-visible {
  outline: 3px solid var(--ssa-accent);
  outline-offset: 2px;
}

h1, h2, h3, h4 {
  font-family: var(--ssa-titre-police);
  font-weight: 700;
  line-height: 1.12;
  margin: 0 0 calc(var(--ssa-pas) * 0.6);
  letter-spacing: -0.008em;
}

p, ul, ol, figure, table, blockquote { margin: 0 0 var(--ssa-pas); }

/* Lien d'evitement pour le clavier */
.ssa-evitement {
  position: absolute;
  left: -9999px;
  top: 0;
  background: var(--ssa-encre);
  color: var(--ssa-papier);
  padding: 0.6rem 1rem;
  font-family: var(--ssa-rubrique-police);
  text-transform: uppercase;
  letter-spacing: var(--ssa-capitales);
  z-index: 50;
}
.ssa-evitement:focus { left: 0; color: var(--ssa-papier); }

/* -------------------------------------------------------------------------
   3. EDITION : le conteneur general
   ------------------------------------------------------------------------- */
.ssa-edition {
  max-width: var(--ssa-largeur-page);
  margin: 0 auto;
  padding: 0 var(--ssa-marge-page) calc(var(--ssa-pas) * 3);
  background: var(--ssa-papier);
  border-inline: var(--ssa-trait-fin);
}

/* -------------------------------------------------------------------------
   4. MANCHETTE : le bandeau de tete du quotidien
   ------------------------------------------------------------------------- */
.ssa-manchette {
  border-block-end: var(--ssa-trait-double);
  padding-block: calc(var(--ssa-pas) * 1.4) calc(var(--ssa-pas) * 0.7);
}

.ssa-manchette__ligne {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem 1.25rem;
  align-items: baseline;
  justify-content: space-between;
  font-family: var(--ssa-rubrique-police);
  font-size: 0.78rem;
  text-transform: uppercase;
  letter-spacing: var(--ssa-capitales);
  color: var(--ssa-encre-douce);
  padding-block-end: 0.55rem;
  border-block-end: var(--ssa-trait-fin);
  margin-block-end: calc(var(--ssa-pas) * 0.9);
}

.ssa-manchette__titre {
  font-size: clamp(2.35rem, 7.5vw, 4.6rem);
  letter-spacing: -0.022em;
  margin: 0;
  text-align: center;
}
/* Variante reduite : pages interieures, ou le titre du journal cede la place au h1 */
.ssa-manchette__titre--ssa-reduit { font-size: clamp(1.55rem, 4vw, 2.6rem); font-weight: 700; }
.ssa-manchette__titre a { color: inherit; text-decoration: none; }
.ssa-manchette__titre a:hover { color: var(--ssa-accent); }

.ssa-manchette__devise {
  font-family: var(--ssa-rubrique-police);
  text-transform: uppercase;
  letter-spacing: 0.22em;
  font-size: 0.72rem;
  color: var(--ssa-encre-douce);
  text-align: center;
  margin: 0.45rem 0 0;
}

/* Oreilles : les deux encoches d'information de part et d'autre du titre */
.ssa-oreilles {
  display: grid;
  gap: 0.4rem 1rem;
  grid-template-columns: 1fr;
  margin-block-start: calc(var(--ssa-pas) * 0.8);
  font-family: var(--ssa-rubrique-police);
  font-size: 0.76rem;
  text-transform: uppercase;
  letter-spacing: var(--ssa-capitales);
  color: var(--ssa-encre-douce);
}
.ssa-oreille { border-block-start: var(--ssa-trait-fin); padding-block-start: 0.4rem; }
.ssa-oreille b { color: var(--ssa-encre); font-weight: 700; }

/* -------------------------------------------------------------------------
   5. SOMMAIRE DE NAVIGATION
   ------------------------------------------------------------------------- */
.ssa-sommaire {
  border-block-end: var(--ssa-trait-gras);
  padding-block: 0.55rem;
}
.ssa-sommaire ul {
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem 1.5rem;
  list-style: none;
  margin: 0;
  padding: 0;
  font-family: var(--ssa-rubrique-police);
  font-size: 0.85rem;
  text-transform: uppercase;
  letter-spacing: var(--ssa-capitales);
}
.ssa-sommaire a { color: var(--ssa-encre); text-decoration: none; padding-block: 0.15rem; }
.ssa-sommaire a:hover { color: var(--ssa-signal); text-decoration: underline; }
.ssa-sommaire [aria-current="page"] {
  color: var(--ssa-signal);
  box-shadow: inset 0 -3px 0 var(--ssa-signal);
}

/* -------------------------------------------------------------------------
   6. GRILLE ASYMETRIQUE : tribune (large) + marge (etroite)
   ------------------------------------------------------------------------- */
.ssa-grille {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: calc(var(--ssa-pas) * 1.8);
  padding-block-start: calc(var(--ssa-pas) * 1.5);
}

.ssa-tribune { min-width: 0; }
.ssa-marge { min-width: 0; }

@media (min-width: 62rem) {
  .ssa-grille {
    grid-template-columns: minmax(0, 1fr) var(--ssa-largeur-marge);
    gap: var(--ssa-gouttiere);
  }
  .ssa-marge {
    border-inline-start: var(--ssa-trait-fin);
    padding-inline-start: calc(var(--ssa-gouttiere) / 2);
  }
}

/* -------------------------------------------------------------------------
   7. PLOMB : etiquette de rubrique en capitales
   ------------------------------------------------------------------------- */
.ssa-plomb {
  display: inline-block;
  font-family: var(--ssa-rubrique-police);
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: var(--ssa-capitales);
  color: var(--ssa-accent);
  text-decoration: none;
}
.ssa-plomb--ssa-signal { color: var(--ssa-signal); }
.ssa-plomb--ssa-pave {
  background: var(--ssa-surlignage);
  color: var(--ssa-encre);
  padding: 0.15rem 0.45rem;
}

.ssa-datation {
  font-family: var(--ssa-rubrique-police);
  font-size: 0.78rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--ssa-encre-douce);
}

.ssa-ligne-service {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 0.35rem 0.75rem;
  margin-block-end: 0.4rem;
}
.ssa-ligne-service::after { content: ""; }

/* -------------------------------------------------------------------------
   8. LA UNE : l'article de tete
   ------------------------------------------------------------------------- */
.ssa-une { padding-block-end: calc(var(--ssa-pas) * 1.2); border-block-end: var(--ssa-trait-gras); }

.ssa-une__titre {
  font-size: clamp(1.85rem, 5.2vw, 3.15rem);
  margin-block: 0.25rem 0.6rem;
}
.ssa-une__titre a { color: inherit; text-decoration: none; }
.ssa-une__titre a:hover { color: var(--ssa-accent); text-decoration: underline; }

.ssa-une__chapeau {
  font-size: 1.15rem;
  color: var(--ssa-encre-douce);
  max-width: var(--ssa-mesure);
}

.ssa-une__visuel { margin-block: var(--ssa-pas); }
.ssa-une__visuel img { width: 100%; border: var(--ssa-trait-fin); }

.ssa-legende {
  font-family: var(--ssa-rubrique-police);
  font-size: 0.78rem;
  color: var(--ssa-encre-douce);
  padding-block-start: 0.35rem;
  border-block-start: var(--ssa-trait-fin);
  margin-block-start: 0.35rem;
}

@media (min-width: 48rem) {
  .ssa-une__chapeau { columns: 2; column-gap: var(--ssa-gouttiere); column-rule: var(--ssa-trait-fin); max-width: none; }
}

/* -------------------------------------------------------------------------
   9. FIL : la liste dense d'articles de la tribune
   ------------------------------------------------------------------------- */
.ssa-tete-bloc {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  gap: 0.5rem 1rem;
  border-block-end: var(--ssa-trait-gras);
  padding-block-end: 0.35rem;
  margin-block: calc(var(--ssa-pas) * 1.6) var(--ssa-pas);
}
.ssa-tete-bloc h2 {
  font-family: var(--ssa-rubrique-police);
  font-size: 1rem;
  text-transform: uppercase;
  letter-spacing: var(--ssa-capitales);
  margin: 0;
}

.ssa-fil { list-style: none; margin: 0; padding: 0; }

.ssa-depeche {
  display: grid;
  gap: 0.35rem 1.1rem;
  padding-block: var(--ssa-pas);
  border-block-end: var(--ssa-trait-fin);
}
.ssa-depeche:last-child { border-block-end: 0; }

.ssa-depeche--ssa-illustree { grid-template-columns: 7.5rem minmax(0, 1fr); }
.ssa-depeche--ssa-illustree .ssa-depeche__vignette { grid-row: span 3; }
.ssa-depeche__vignette img { width: 100%; border: var(--ssa-trait-fin); }

.ssa-depeche__titre { font-size: 1.28rem; margin: 0 0 0.25rem; }
.ssa-depeche__titre a { color: inherit; text-decoration: none; }
.ssa-depeche__titre a:hover { color: var(--ssa-accent); text-decoration: underline; }

.ssa-depeche__amorce { margin: 0 0 0.4rem; color: var(--ssa-encre-douce); max-width: var(--ssa-mesure); }

.ssa-suite {
  font-family: var(--ssa-rubrique-police);
  font-size: 0.8rem;
  text-transform: uppercase;
  letter-spacing: var(--ssa-capitales);
  text-decoration: none;
  border-block-end: 1px solid currentColor;
}
.ssa-suite::after { content: " \203A"; }

@media (max-width: 34rem) {
  .ssa-depeche--ssa-illustree { grid-template-columns: minmax(0, 1fr); }
  .ssa-depeche--ssa-illustree .ssa-depeche__vignette { grid-row: auto; max-width: 10rem; }
}

/* -------------------------------------------------------------------------
   10. CAHIERS : les blocs de la colonne laterale
   ------------------------------------------------------------------------- */
.ssa-cahier { margin-block-end: calc(var(--ssa-pas) * 1.8); }

.ssa-cahier__titre {
  font-family: var(--ssa-rubrique-police);
  font-size: 0.85rem;
  text-transform: uppercase;
  letter-spacing: var(--ssa-capitales);
  margin: 0 0 0.6rem;
  padding-block-end: 0.3rem;
  border-block-end: var(--ssa-trait-double);
}

.ssa-cahier__note {
  font-family: var(--ssa-rubrique-police);
  font-size: 0.76rem;
  color: var(--ssa-encre-douce);
  margin-block-start: 0.6rem;
}

/* Entrefilets : les breves numerotees */
.ssa-entrefilets { list-style: none; margin: 0; padding: 0; counter-reset: bref; }
.ssa-entrefilet {
  padding-block: 0.7rem;
  border-block-end: var(--ssa-trait-fin);
  display: grid;
  grid-template-columns: 1.6rem minmax(0, 1fr);
  gap: 0.15rem 0.6rem;
}
.ssa-entrefilet:last-child { border-block-end: 0; }
.ssa-entrefilet::before {
  counter-increment: bref;
  content: counter(bref, decimal-leading-zero);
  font-family: var(--ssa-rubrique-police);
  font-size: 0.9rem;
  font-weight: 700;
  color: var(--ssa-signal);
  grid-row: span 2;
  padding-block-start: 0.15rem;
}
.ssa-entrefilet h3 { font-size: 1.02rem; margin: 0; }
.ssa-entrefilet h3 a { color: inherit; text-decoration: none; }
.ssa-entrefilet h3 a:hover { color: var(--ssa-accent); text-decoration: underline; }
.ssa-entrefilet p { margin: 0.2rem 0 0; font-size: 0.95rem; color: var(--ssa-encre-douce); }

/* Chiffres : les donnees mises en exergue */
.ssa-chiffres { list-style: none; margin: 0; padding: 0; }
.ssa-chiffre { padding-block: 0.7rem; border-block-end: var(--ssa-trait-fin); }
.ssa-chiffre:last-child { border-block-end: 0; }
.ssa-chiffre__valeur {
  display: block;
  font-family: var(--ssa-titre-police);
  font-size: 2.15rem;
  line-height: 1;
  color: var(--ssa-signal);
}
.ssa-chiffre__libelle {
  display: block;
  font-family: var(--ssa-rubrique-police);
  font-size: 0.8rem;
  color: var(--ssa-encre-douce);
  margin-block-start: 0.2rem;
}

/* Encadre : bloc encercle d'un filet */
.ssa-encadre {
  border: var(--ssa-trait-fin);
  border-block-start: var(--ssa-trait-gras);
  background: var(--ssa-fond);
  padding: calc(var(--ssa-pas) * 0.9);
}
.ssa-encadre p:last-child { margin-block-end: 0; }

/* Agenda : liste datee */
.ssa-agenda { list-style: none; margin: 0; padding: 0; }
.ssa-agenda li {
  display: grid;
  grid-template-columns: 5.2rem minmax(0, 1fr);
  gap: 0.5rem;
  padding-block: 0.55rem;
  border-block-end: var(--ssa-trait-fin);
  font-size: 0.95rem;
}
.ssa-agenda li:last-child { border-block-end: 0; }
.ssa-agenda time {
  font-family: var(--ssa-rubrique-police);
  font-size: 0.8rem;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--ssa-encre-douce);
  padding-block-start: 0.18rem;
}

/* Liste de renvois simple */
.ssa-renvois { list-style: none; margin: 0; padding: 0; }
.ssa-renvois li { padding-block: 0.45rem; border-block-end: var(--ssa-trait-fin); }
.ssa-renvois li:last-child { border-block-end: 0; }
.ssa-renvois a { text-decoration: none; }
.ssa-renvois a:hover { text-decoration: underline; }

/* -------------------------------------------------------------------------
   11. PAGE DE FOND : le corps d'article
   ------------------------------------------------------------------------- */
.ssa-chemin {
  font-family: var(--ssa-rubrique-police);
  font-size: 0.78rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--ssa-encre-douce);
  margin-block-end: 0.8rem;
}
.ssa-chemin ol { list-style: none; display: flex; flex-wrap: wrap; gap: 0.3rem 0.5rem; margin: 0; padding: 0; }
.ssa-chemin li + li::before { content: "\203A\00a0"; color: var(--ssa-filet); }

.ssa-titraille { border-block-end: var(--ssa-trait-double); padding-block-end: var(--ssa-pas); margin-block-end: var(--ssa-pas); }
.ssa-titraille h1 { font-size: clamp(1.95rem, 5.4vw, 3.2rem); margin-block: 0.3rem 0.55rem; }

.ssa-chapeau {
  font-size: 1.2rem;
  color: var(--ssa-encre-douce);
  max-width: var(--ssa-mesure);
  margin-block-end: var(--ssa-pas);
}

.ssa-signature {
  display: flex;
  flex-wrap: wrap;
  gap: 0.3rem 1rem;
  font-family: var(--ssa-rubrique-police);
  font-size: 0.8rem;
  text-transform: uppercase;
  letter-spacing: var(--ssa-capitales);
  color: var(--ssa-encre-douce);
}
.ssa-signature b { color: var(--ssa-encre); }

.ssa-corps { max-width: var(--ssa-mesure); }
.ssa-corps h2 {
  font-size: 1.5rem;
  margin-block: calc(var(--ssa-pas) * 1.5) 0.5rem;
  padding-block-start: 0.5rem;
  border-block-start: var(--ssa-trait-fin);
}
.ssa-corps h3 {
  font-family: var(--ssa-rubrique-police);
  font-size: 1.02rem;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  margin-block: var(--ssa-pas) 0.35rem;
}
.ssa-corps ul, .ssa-corps ol { padding-inline-start: 1.3rem; }
.ssa-corps li { margin-block-end: 0.35rem; }

/* Lettrine : a poser sur le premier paragraphe */
.ssa-lettrine::first-letter {
  float: left;
  font-family: var(--ssa-titre-police);
  font-size: 3.6em;
  line-height: 0.8;
  padding-inline-end: 0.07em;
  padding-block-start: 0.04em;
  color: var(--ssa-accent);
}

.ssa-exergue {
  border-inline-start: 4px solid var(--ssa-signal);
  padding: 0.2rem 0 0.2rem 1rem;
  margin-block: calc(var(--ssa-pas) * 1.2);
  font-family: var(--ssa-titre-police);
  font-size: 1.3rem;
  line-height: 1.32;
}
.ssa-exergue cite {
  display: block;
  font-family: var(--ssa-rubrique-police);
  font-style: normal;
  font-size: 0.8rem;
  text-transform: uppercase;
  letter-spacing: var(--ssa-capitales);
  color: var(--ssa-encre-douce);
  margin-block-start: 0.5rem;
}

.ssa-figure { margin-block: calc(var(--ssa-pas) * 1.3); max-width: 100%; }
.ssa-figure img { width: 100%; border: var(--ssa-trait-fin); }
.ssa-figure figcaption { font-family: var(--ssa-rubrique-police); font-size: 0.78rem; color: var(--ssa-encre-douce); padding-block-start: 0.35rem; border-block-start: var(--ssa-trait-fin); margin-block-start: 0.35rem; }

/* Tableau : toujours dans .ssa-defilant */
.ssa-defilant { overflow-x: auto; margin-block-end: var(--ssa-pas); border-block: var(--ssa-trait-fin); }
.ssa-defilant table { border-collapse: collapse; width: 100%; min-width: 32rem; margin: 0; font-size: 0.97rem; }
.ssa-defilant caption {
  font-family: var(--ssa-rubrique-police);
  font-size: 0.78rem;
  text-transform: uppercase;
  letter-spacing: var(--ssa-capitales);
  text-align: left;
  padding-block: 0.5rem;
  color: var(--ssa-encre-douce);
}
.ssa-defilant th, .ssa-defilant td { text-align: left; padding: 0.5rem 0.75rem; border-block-end: var(--ssa-trait-fin); vertical-align: top; }
.ssa-defilant thead th {
  font-family: var(--ssa-rubrique-police);
  font-size: 0.8rem;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  border-block-end: var(--ssa-trait-gras);
}
.ssa-defilant tbody tr:last-child td { border-block-end: 0; }

.ssa-pied-article {
  border-block-start: var(--ssa-trait-double);
  margin-block-start: calc(var(--ssa-pas) * 1.6);
  padding-block-start: var(--ssa-pas);
}
.ssa-etiquettes { display: flex; flex-wrap: wrap; gap: 0.4rem; list-style: none; margin: 0 0 var(--ssa-pas); padding: 0; }
.ssa-etiquettes a {
  display: inline-block;
  font-family: var(--ssa-rubrique-police);
  font-size: 0.76rem;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  text-decoration: none;
  border: var(--ssa-trait-fin);
  padding: 0.18rem 0.5rem;
  color: var(--ssa-encre);
}
.ssa-etiquettes a:hover { border-color: var(--ssa-signal); color: var(--ssa-signal); }

/* -------------------------------------------------------------------------
   12. PAGE DE RUBRIQUE
   ------------------------------------------------------------------------- */
.ssa-ouverture {
  border-block-end: var(--ssa-trait-double);
  padding-block: calc(var(--ssa-pas) * 0.6) var(--ssa-pas);
  margin-block-end: var(--ssa-pas);
}
.ssa-ouverture h1 { font-size: clamp(1.9rem, 5vw, 3rem); margin-block: 0.3rem 0.5rem; }
.ssa-ouverture p { max-width: var(--ssa-mesure); color: var(--ssa-encre-douce); margin: 0; }

.ssa-filtres {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem 0.6rem;
  list-style: none;
  margin: var(--ssa-pas) 0 0;
  padding: 0;
  font-family: var(--ssa-rubrique-police);
  font-size: 0.78rem;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}
.ssa-filtres a { text-decoration: none; border: var(--ssa-trait-fin); padding: 0.2rem 0.55rem; color: var(--ssa-encre); }
.ssa-filtres a:hover { border-color: var(--ssa-accent); color: var(--ssa-accent); }
.ssa-filtres [aria-current="true"] { background: var(--ssa-encre); color: var(--ssa-papier); border-color: var(--ssa-encre); }

.ssa-pagination {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.4rem;
  list-style: none;
  margin: calc(var(--ssa-pas) * 1.5) 0 0;
  padding-block-start: var(--ssa-pas);
  border-block-start: var(--ssa-trait-gras);
  font-family: var(--ssa-rubrique-police);
  font-size: 0.85rem;
}
.ssa-pagination a, .ssa-pagination span { display: inline-block; padding: 0.3rem 0.65rem; border: var(--ssa-trait-fin); text-decoration: none; color: var(--ssa-encre); }
.ssa-pagination [aria-current="page"] { background: var(--ssa-encre); color: var(--ssa-papier); border-color: var(--ssa-encre); }

/* -------------------------------------------------------------------------
   13. OURS : le pied de journal
   ------------------------------------------------------------------------- */
.ssa-ours {
  border-block-start: var(--ssa-trait-double);
  margin-block-start: calc(var(--ssa-pas) * 2);
  padding-block-start: calc(var(--ssa-pas) * 1.2);
  font-size: 0.95rem;
}
.ssa-ours__grille {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--ssa-pas) var(--ssa-gouttiere);
}
@media (min-width: 48rem) {
  .ssa-ours__grille { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
.ssa-ours h2 {
  font-family: var(--ssa-rubrique-police);
  font-size: 0.82rem;
  text-transform: uppercase;
  letter-spacing: var(--ssa-capitales);
  margin: 0 0 0.5rem;
  padding-block-end: 0.25rem;
  border-block-end: var(--ssa-trait-fin);
}
.ssa-ours ul { list-style: none; margin: 0; padding: 0; }
.ssa-ours li { padding-block: 0.2rem; }
.ssa-ours p { color: var(--ssa-encre-douce); }
.ssa-ours__mention {
  border-block-start: var(--ssa-trait-fin);
  margin-block-start: var(--ssa-pas);
  padding-block-start: 0.6rem;
  font-family: var(--ssa-rubrique-police);
  font-size: 0.76rem;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--ssa-encre-douce);
  display: flex;
  flex-wrap: wrap;
  gap: 0.3rem 1.2rem;
  justify-content: space-between;
}

/* -------------------------------------------------------------------------
   14. UTILITAIRES (peu nombreux, volontairement)
   ------------------------------------------------------------------------- */
.ssa-invisible {
  position: absolute;
  width: 1px; height: 1px;
  margin: -1px; padding: 0; border: 0;
  clip-path: inset(50%);
  overflow: hidden;
  white-space: nowrap;
}
.ssa-serre { margin-block-end: 0; }
.ssa-intro { max-width: var(--ssa-mesure); color: var(--ssa-encre-douce); }

@media (prefers-reduced-motion: reduce) {
  * { animation: none !important; transition: none !important; }
}

@media print {
  body { background: #fff; }
  .ssa-edition { border: 0; max-width: none; }
  .ssa-sommaire, .ssa-pagination { display: none; }
}

/* ATHENS / SECOND STREET ALMANAC — Hudson press, September 2026.
   The journal skeleton supplies the asymmetric reading architecture.
   Site compositions below replace its generic news-list hierarchy. */
:root {
  color-scheme: light;
  --ssa-brick: #9b3f2e;
  --ssa-river: #285866;
  --ssa-brass: #a27835;
  --ssa-dark: #153e47;
  --ssa-pale: #f7f1e2;
  --ssa-faded: #d8e0d6;
  --ssa-inset: #ebe3d0;
  --ssa-title: Georgia, "Times New Roman", serif;
  --ssa-label: "Arial Narrow", "Liberation Sans Narrow", Arial, sans-serif;
  --ssa-titre-police: Georgia, "Times New Roman", serif;
  --ssa-texte-police: Georgia, "Times New Roman", serif;
  --ssa-rubrique-police: "Arial Narrow", "Liberation Sans Narrow", Arial, sans-serif;
  --ssa-largeur-page: 88rem;
  --ssa-largeur-marge: 16.5rem;
  --ssa-marge-page: clamp(1.1rem,3.2vw,3.2rem);
  --ssa-gouttiere: 2.6rem;
  --ssa-mesure: 64ch;
  --ssa-corps: 1.025rem;
  --ssa-interligne: 1.65;
  --ssa-pas: 1.2rem;
  --ssa-trait-double: 5px double var(--ssa-encre);
}
html {scroll-behavior:smooth; scroll-padding-top:2rem;}
body {background:var(--ssa-fond);}
::selection {background:var(--ssa-brass); color:var(--ssa-pale);}
h1,h2,h3 {letter-spacing:-.035em;text-wrap:balance;}
picture {display:block;}
a {transition:color .16s ease; }
.ssa-edition {padding-bottom:0; border-top:6px solid var(--ssa-brick);}
.ssa-manchette {padding-top:1rem;padding-bottom:1rem;border-bottom:var(--ssa-trait-double);}
.ssa-manchette__ligne {font-size:.63rem;margin-bottom:.9rem;padding-bottom:.6rem;letter-spacing:.15em;}
.ssa-marque {display:grid;grid-template-columns:4rem minmax(0,1fr) 9.5rem;align-items:center;gap:1rem;}
.ssa-sceau {display:block;border:2px solid var(--ssa-brick);border-radius:50%;aspect-ratio:1;line-height:3.7rem;text-align:center;font:italic 2rem/3.7rem var(--ssa-title);color:var(--ssa-brick);transform:rotate(-9deg);}
.ssa-manchette__titre {font-size:clamp(2.2rem,4vw,3.7rem);text-align:left;letter-spacing:-.06em;line-height:1;}
.ssa-manchette__titre i {font-weight:400;}
.ssa-manchette__devise {font-size:.61rem;letter-spacing:.12em;text-align:left;margin-top:.6rem;}
.ssa-numero {border-left:var(--ssa-trait-fin);padding-left:1rem;margin:0;font:.64rem/1.7 var(--ssa-label);text-transform:uppercase;letter-spacing:.11em;}
.ssa-numero b {display:block;font:italic 1.12rem/1.3 var(--ssa-title);letter-spacing:0;text-transform:none;}
.ssa-sommaire {padding:.25rem 0;border-bottom:1px solid var(--ssa-encre);}
.ssa-sommaire ul {justify-content:space-between;gap:1rem;}
.ssa-sommaire a {display:block;min-height:42px;padding:.65rem 0;font-size:.7rem;letter-spacing:.075em;}
/* NAV DEUX ETATS CANON (seuil 52rem) :
   a) >=52rem : declencheur masque, liste en BARRE HORIZONTALE (desktop) ;
   b) <52rem : declencheur visible, liste REPLIEE (details ferme par defaut). */
/* NAV DEUX ETATS CANON (seuil 52rem), sans details-contient-nav :
   a) >=52rem : .ssa-repli (declencheur) masque, .ssa-sommaire en BARRE HORIZONTALE ;
   b) <52rem : .ssa-sommaire masque, .ssa-repli visible avec liste REPLIEE (details ferme). */
@media (min-width:52rem){
 .ssa-nav{border-bottom:1px solid var(--ssa-encre);}
 .ssa-repli{display:none!important;}
 .ssa-sommaire{display:block!important;border-bottom:0;}
 .ssa-sommaire ul{display:flex!important;}
}
@media (max-width:51.99rem){
 .ssa-nav{border-bottom:1px solid var(--ssa-encre);}
 .ssa-nav>.ssa-sommaire{display:none!important;}
 .ssa-repli{display:block;}
 .ssa-navdeclencheur{display:block;cursor:pointer;list-style:none;padding:.85rem 0;}
 .ssa-navdeclencheur::-webkit-details-marker{display:none;}
 .ssa-sommaire--repli ul{display:block;}
 .ssa-sommaire--repli li{border-top:var(--ssa-trait-fin);}
 .ssa-sommaire--repli a{display:block;padding:.8rem 0;}
}
.ssa-plomb {font-size:.63rem;letter-spacing:.14em;color:var(--ssa-brick);margin:0 0 .7rem;}
.ssa-front {display:grid;grid-template-columns: minmax(0,.83fr) minmax(0,1.17fr);gap:2.8rem;padding:1.65rem 0 1.3rem;align-items:center;}
.ssa-front__type {min-width:0;position:relative;padding-left:1.15rem;border-left:4px solid var(--ssa-brick);}
.ssa-front h1 {font-size:clamp(2.8rem,4.7vw,4.65rem);line-height:.98;letter-spacing:-.055em;margin:.8rem 0 1rem;}
.ssa-front h1 i {font-weight:400;}
.ssa-front__deck {font-size:1.08rem;line-height:1.55;max-width:31ch;margin-bottom:1.1rem;}
.ssa-front__photo {position:relative;margin:0;min-width:0;padding-bottom:1rem;}
.ssa-front__photo img {width:100%;height:285px;object-fit:cover;object-position:center 54%;}
.ssa-front__photo:after {content:"";position:absolute;right:0;bottom:.35rem;width:38%;border-bottom:3px solid var(--ssa-brass);}
.ssa-front__photo figcaption {font:.6rem/1.5 var(--ssa-label);margin-top:.45rem;color:var(--ssa-encre-douce);}
.ssa-front__note {display:flex;align-items:center;gap:.7rem;font:.61rem/1.4 var(--ssa-label);text-transform:uppercase;letter-spacing:.1em;margin:1.2rem 0 0;}
.ssa-front__note:before {content:"";width:2rem;border-top:1px solid var(--ssa-brass);}
.ssa-button {display:inline-flex;align-items:center;justify-content:space-between;gap:1.5rem;min-height:44px;padding:.75rem 1rem;background:var(--ssa-brick);color:var(--ssa-pale);font:700 .68rem/1.4 var(--ssa-label);letter-spacing:.08em;text-transform:uppercase;text-decoration:none;border:1px solid var(--ssa-brick);}
.ssa-button:hover {background:var(--ssa-dark);border-color:var(--ssa-dark);color:var(--ssa-pale);}
.ssa-button span {font-size:1.35rem;line-height:1;}
.ssa-oreilles {grid-template-columns:repeat(4,minmax(0,1fr));gap:1.15rem;margin:0;padding:1rem 0 1.2rem;border-block:var(--ssa-trait-double);}
.ssa-oreille {position:relative;border:0;padding:0;display:grid;grid-template-columns:4.6rem minmax(0,1fr);gap:.75rem;align-items:center;text-transform:none;letter-spacing:0;text-decoration:none;color:var(--ssa-encre);}
.ssa-oreille img {width:100%;height:78px;object-fit:cover;}
.ssa-oreille__titre {font:700 1.04rem/1.14 var(--ssa-title);}
.ssa-oreille__numero {font:.62rem/1.3 var(--ssa-label);display:block;color:var(--ssa-brick);letter-spacing:.13em;margin-bottom:.4rem;}
.ssa-oreille b {font-size:.8rem;color:var(--ssa-brick);margin-left:.2rem;}
/* DENSITE CANON : chapeau de bande + legendes de cartes (faits existants, aucun ajout). */
.ssa-chapeau-bande{font-size:.92rem;line-height:1.6;color:var(--ssa-encre-douce);margin:.35rem 0 0;max-width:62ch;}
.ssa-depeche__vignette{margin:0;}
.ssa-depeche__vignette figcaption{font:.62rem/1.5 var(--ssa-label);text-transform:uppercase;letter-spacing:.08em;color:var(--ssa-encre-douce);margin-top:.45rem;}
.ssa-oreille__media{display:block;}
.ssa-oreille__texte{display:block;min-width:0;}
.ssa-oreille__legende{display:block;font:.78rem/1.55 var(--ssa-texte-police);color:var(--ssa-encre-douce);margin-top:.3rem;}
.ssa-renvois figure{margin:0 0 .7rem;}
.ssa-renvois figcaption{font:.62rem/1.5 var(--ssa-label);text-transform:uppercase;letter-spacing:.08em;color:var(--ssa-encre-douce);margin-top:.45rem;}
.ssa-renvois img{width:100%;aspect-ratio:2.1;object-fit:cover;}
.ssa-fil--festival>.ssa-depeche:first-child{border-bottom:3px solid var(--ssa-encre);}
.ssa-fil--community{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1.5rem;}
.ssa-fil--community>.ssa-depeche:first-child{grid-column:1/-1;}
.ssa-fil--visit{background:var(--ssa-inset);padding:0 1.2rem;border:1px solid var(--ssa-filet);}
@media (max-width:47.99rem){
 .ssa-fil--community{grid-template-columns:1fr;}
 .ssa-fil--visit{padding:0 .9rem;}
}
.ssa-grille {padding-top:2rem;align-items:start;}
.ssa-tribune {min-width:0;}
.ssa-marge {font-size:.9rem;}
.ssa-cahier {margin-bottom:2.8rem;}
.ssa-tete-bloc {margin:0 0 1.25rem;padding:.75rem 0;border-top:3px solid var(--ssa-encre);border-bottom:var(--ssa-trait-fin);align-items:center;flex-wrap:nowrap;}
.ssa-tete-bloc h2 {font:700 clamp(1.7rem,2.6vw,2.4rem)/1.05 var(--ssa-title);text-transform:none;letter-spacing:-.04em;}
.ssa-tete-bloc .ssa-plomb {margin-bottom:.35rem;}
.ssa-cote {flex:none;font:italic 2.8rem/1 var(--ssa-title);color:var(--ssa-brass);}
.ssa-fil {display:block;}
.ssa-depeche {grid-template-columns:32% minmax(0,1fr);gap:1.2rem;padding:1.15rem 0;border-bottom:var(--ssa-trait-fin);align-items:start;}
.ssa-depeche__vignette {display:block;overflow:hidden;}
.ssa-depeche__vignette img {width:100%;aspect-ratio:1.15;object-fit:cover;border:0;}
.ssa-depeche h3 {font-size:1.52rem;line-height:1.1;margin:0 0 .7rem;}
.ssa-depeche h3 a {color:var(--ssa-encre);text-decoration:none;}
.ssa-depeche h3 a:hover {color:var(--ssa-brick);text-decoration:underline;}
.ssa-depeche .ssa-plomb {font-size:.57rem;margin:0 0 .5rem;}
.ssa-depeche p:not(.ssa-plomb) {font-size:.89rem;line-height:1.6;color:var(--ssa-encre-douce);margin-bottom:.7rem;}
.ssa-suite {display:inline-block;font-size:.6rem;font-weight:700;letter-spacing:.085em;min-height:25px;padding-bottom:.25rem;border-color:var(--ssa-brass);}
.ssa-suite:after {content:none;}
.ssa-suite span {margin-left:.5rem;}
/* Festival: one broadsheet lead, followed by a two-column pair. */
.ssa-festival {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1.5rem;}
.ssa-festival>.ssa-depeche:first-child {grid-column:1/-1;grid-template-columns:49% minmax(0,1fr);border-bottom:3px solid var(--ssa-encre);padding-top:0;padding-bottom:1.5rem;margin-bottom:.4rem;}
.ssa-festival>.ssa-depeche:first-child h3 {font-size:2rem;}
.ssa-festival>.ssa-depeche:first-child img {aspect-ratio:1.45;}
.ssa-festival>.ssa-depeche:not(:first-child) {grid-template-columns:1fr;border-bottom:0;}
.ssa-festival>.ssa-depeche:not(:first-child) img {aspect-ratio:1.65;}
.ssa-festival>.ssa-depeche:not(:first-child) h3 {font-size:1.6rem;}
/* Planning: compact illustrated service ledger, not a second news list. */
.ssa-pratique {background:var(--ssa-inset);padding:1.15rem 1.35rem 1.35rem;border:1px solid var(--ssa-filet);}
.ssa-pratique .ssa-tete-bloc {border-top:0;padding-top:0;}
.ssa-pratique__grille {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:1.6rem;list-style:none;margin:0;padding:0;}
.ssa-pratique__grille .ssa-depeche {grid-template-columns:34% minmax(0,1fr);gap:.8rem;border-color:var(--ssa-filet);padding:1rem 0;}
.ssa-pratique__grille h3 {font-size:1.25rem;}
.ssa-pratique__grille img {aspect-ratio:.9;}
.ssa-pratique__grille .ssa-plomb {display:none;}
.ssa-pratique__grille p:not(.ssa-plomb) {font-size:.79rem;line-height:1.55;}
.ssa-pratique__grille .ssa-suite {font-size:.54rem;}
/* Community: magazine spreads and paired picture columns. */
.ssa-communaute {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1.5rem;}
.ssa-communaute>.ssa-depeche {display:block;padding:1.2rem 0;}
.ssa-communaute>.ssa-depeche .ssa-depeche__vignette {margin-bottom:1rem;}
.ssa-communaute>.ssa-depeche img {aspect-ratio:1.55;}
.ssa-communaute>.ssa-depeche:first-child,.ssa-communaute>.ssa-depeche:last-child {grid-column:1/-1;display:grid;grid-template-columns:42% minmax(0,1fr);gap:1.5rem;}
.ssa-communaute>.ssa-depeche:last-child {border-top:3px solid var(--ssa-brass);background:var(--ssa-inset);padding:1.25rem;margin-top:1rem;}
.ssa-communaute>.ssa-depeche:first-child h3 {font-size:1.85rem;}
.ssa-communaute>.ssa-depeche:first-child img,.ssa-communaute>.ssa-depeche:last-child img {aspect-ratio:1.15;}
/* The narrow notebook has three distinct types of information. */
.ssa-marge .ssa-cahier {padding-bottom:1.5rem;margin-bottom:1.75rem;border-bottom:var(--ssa-trait-double);}
.ssa-marge .ssa-cahier>picture img {width:100%;aspect-ratio:1.2;object-fit:cover;margin-bottom:.8rem;}
.ssa-marge h2 {font-size:1.8rem;line-height:1.04;max-width:13ch;}
.ssa-marge h3 {font-size:1.12rem;line-height:1.15;}
.ssa-marge .ssa-legende {font-size:.6rem;margin-top:-.4rem;margin-bottom:1rem;border:0;}
.ssa-entrefilets li {display:grid;grid-template-columns:1.5rem minmax(0,1fr);column-gap:.6rem;padding:.85rem 0;border-top:var(--ssa-trait-fin);counter-increment:note;}
.ssa-entrefilets {counter-reset:note;}
.ssa-entrefilets li:before {content:counter(note,decimal-leading-zero);font:italic 1.05rem/1.3 var(--ssa-title);color:var(--ssa-brick);grid-row:span 2;}
.ssa-entrefilets h3 {margin-bottom:.4rem;}
.ssa-entrefilets a {color:var(--ssa-encre);text-decoration:none;}
.ssa-entrefilets a:hover {text-decoration:underline;}
.ssa-entrefilets p {font-size:.79rem;line-height:1.55;color:var(--ssa-encre-douce);margin:0;}
.ssa-encadre {background:var(--ssa-inset);border:var(--ssa-trait-fin);border-top:4px solid var(--ssa-brass);padding:1.2rem;margin-bottom:1.7rem;}
.ssa-encadre h2 {font-size:1.6rem;}
.ssa-encadre ul {padding-left:1rem;margin:1rem 0 0;}
.ssa-encadre li {padding:.35rem 0;font-size:.83rem;}
.ssa-compas {display:grid;grid-template-columns:1fr 1fr;border-block:var(--ssa-trait-double);padding:1rem 0;margin-bottom:2rem;}
.ssa-compas div+div {border-left:var(--ssa-trait-fin);padding-left:1rem;}
.ssa-compas b {display:block;font:italic 2.6rem/1 var(--ssa-title);color:var(--ssa-brick);}
.ssa-compas span {font:.58rem/1.5 var(--ssa-label);text-transform:uppercase;letter-spacing:.08em;}
/* Curated spread: left-hand editorial note and four illustrated references. */
.ssa-selection {display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:3rem;background:var(--ssa-dark);color:var(--ssa-pale);padding:2.4rem;margin:1rem 0 3rem;border-top:5px solid var(--ssa-brass);}
.ssa-selection h2 {font-size:2.5rem;line-height:1.03;max-width:12ch;color:var(--ssa-pale);}
.ssa-selection .ssa-plomb {color:#f0e3bd;}
.ssa-selection__intro {min-width:0;}
.ssa-selection__intro>p:not(.ssa-plomb) {color:#f5f0e5;font-size:.95rem;line-height:1.75;}
.ssa-selection h2 {margin:0 0 .8rem;}
.ssa-selection__figure {margin:1.1rem 0 0;}
.ssa-selection__figure img {width:100%;aspect-ratio:1.55;object-fit:cover;}
.ssa-selection__figure figcaption {font:.68rem/1.6 var(--ssa-rubrique-police);color:#f5f0e5;margin-top:.55rem;}
.ssa-selection__figure a {display:block;}
.ssa-selection .ssa-renvois figcaption {color:#f5f0e5;}
.ssa-renvois {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.4rem 1.8rem;list-style:none;margin:0;padding:0;}
.ssa-renvois li {border-top:1px solid #758b89;padding-top:1rem;}
.ssa-renvois h3 {font-size:1.35rem;margin:.8rem 0 .55rem;}
.ssa-renvois a {color:var(--ssa-pale);}
.ssa-renvois a:hover {color:#edc984;}
.ssa-renvois p {font-size:.8rem;line-height:1.6;color:#f5f0e5;margin:0;}
.ssa-renvois img {width:100%;aspect-ratio:2.25;object-fit:cover;}
/* Interior pages retain the newspaper reading measure, not the home grids. */
.ssa-chemin {font-size:.62rem;letter-spacing:.035em;text-transform:none;margin:.15rem 0 1.5rem;}
.ssa-chemin li+li:before {color:var(--ssa-brass);}
.ssa-titraille {padding-bottom:1.2rem;margin-bottom:1.4rem;}
.ssa-titraille h1 {font-size:clamp(2.2rem,3.65vw,3.55rem);line-height:1.04;max-width:26ch;margin:.7rem 0 1.1rem;}
.ssa-chapeau {font-size:1.16rem;line-height:1.6;max-width:62ch;}
.ssa-signature {font-size:.6rem;line-height:1.6;letter-spacing:.065em;margin:.9rem 0 0;}
.ssa-figure {margin:0 0 2rem;}
.ssa-figure img {aspect-ratio:2;object-fit:cover;width:100%;border:0;}
.ssa-figure figcaption {font-size:.65rem;line-height:1.6;border:0;margin-top:.5rem;}
.ssa-corps {font-size:1.08rem;line-height:1.85;padding-right:1rem;}
.ssa-corps>p:first-child::first-letter {float:left;font:4.1em/.8 var(--ssa-title);padding:.12em .1em 0 0;color:var(--ssa-brick);}
.ssa-corps h2 {font-size:1.75rem;line-height:1.2;padding-top:1.1rem;margin:2rem 0 1rem;}
.ssa-corps h3 {font-family:var(--ssa-title);font-size:1.35rem;text-transform:none;letter-spacing:-.02em;}
.ssa-corps li::marker {color:var(--ssa-brick);}
.ssa-corps blockquote {border-left:4px solid var(--ssa-brass);margin:1.5rem 0;padding:.1rem 0 .1rem 1.25rem;}
.ssa-defilant {max-width:100%;}
.ssa-pied-article {margin-top:3rem;}
.ssa-pied-article .ssa-tete-bloc {border-top:0;}
.ssa-ours {background:var(--ssa-inset);padding:2rem 0 1rem;margin-top:2rem;border-top:var(--ssa-trait-double);}
.ssa-ours__grille {grid-template-columns:1.25fr .8fr 1fr;gap:3.5rem;padding:0 1.5rem;}
.ssa-ours h2 {font-size:.72rem;line-height:1.5;letter-spacing:.12em;border-color:var(--ssa-filet);padding-bottom:.7rem;}
.ssa-ours p,.ssa-ours li {font-size:.85rem;line-height:1.7;color:var(--ssa-encre-douce);}
.ssa-ours a {color:var(--ssa-encre);}
.ssa-ours__mention {font-size:.59rem;padding:1rem 1.5rem 0;letter-spacing:.1em;}
.ssa-error {padding:5rem 0;min-height:45vh;}
/* Breakpoints follow the skeleton: 62rem reading split; 48rem broad modules. */
@media (min-width:62rem) {
 .ssa-marge {padding-left:1.4rem;}
}
@media (max-width:75rem) {
 :root {--ssa-largeur-marge:14rem;--ssa-gouttiere:1.8rem;}
 .ssa-front {gap:1.8rem;}
 .ssa-pratique__grille {grid-template-columns:1fr;}
 .ssa-pratique__grille .ssa-depeche {grid-template-columns:29% minmax(0,1fr);}
 .ssa-pratique__grille img {aspect-ratio:1.5;}
 .ssa-pratique__grille h3 {font-size:1.45rem;}
 .ssa-selection {gap:2rem;}
}
@media (max-width:61.99rem) {
 .ssa-marge {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.6rem;border-top:var(--ssa-trait-double);padding-top:1.5rem;}
 .ssa-marge .ssa-cahier {margin:0;}
 .ssa-marge .ssa-cahier>picture img {aspect-ratio:1.8;}
 .ssa-pratique__grille {grid-template-columns:repeat(2,minmax(0,1fr));}
 .ssa-pratique__grille .ssa-depeche {grid-template-columns:33% minmax(0,1fr);}
 .ssa-pratique__grille img {aspect-ratio:1;}
 .ssa-pratique__grille h3 {font-size:1.2rem;}
 .ssa-numero {display:none;}
 .ssa-marque {grid-template-columns:3.3rem minmax(0,1fr);}
 .ssa-sceau {font-size:1.7rem;line-height:3rem;}
 .ssa-manchette__titre {font-size:clamp(2rem,4.3vw,3.2rem);}
 .ssa-front h1 {font-size:clamp(2.5rem,5vw,3.8rem);}
 .ssa-oreille {grid-template-columns:1fr;gap:.7rem;}
 .ssa-oreille img {height:90px;}
 .ssa-oreille__titre {font-size:1rem;}
}
@media (max-width:47.99rem) {
 .ssa-manchette {padding:.7rem 0 .8rem;}
 .ssa-manchette__ligne {font-size:.54rem;letter-spacing:.06em;margin-bottom:.8rem;gap:.4rem;}
 .ssa-manchette__ligne span:nth-child(2) {display:none;}
 .ssa-marque {grid-template-columns:2.8rem minmax(0,1fr);gap:.6rem;}
 .ssa-sceau {font-size:1.4rem;line-height:2.5rem;}
 .ssa-manchette__titre {font-size:clamp(1.75rem,5.6vw,2.65rem);letter-spacing:-.065em;}
 .ssa-manchette__devise {font-size:.48rem;letter-spacing:.035em;}
 .ssa-repli {display:block;font:.68rem/1.5 var(--ssa-label);letter-spacing:.08em;text-transform:uppercase;border-bottom:var(--ssa-trait-fin);}
 .ssa-repli summary {padding:.85rem 0;cursor:pointer;list-style:none;}
 .ssa-repli summary::-webkit-details-marker {display:none;}
 .ssa-repli summary span {float:right;font-size:1.2rem;line-height:1;}
 .ssa-repli ul {list-style:none;margin:0;padding:0 0 .8rem;}
 .ssa-repli a {display:block;padding:.7rem 0;color:var(--ssa-encre);text-decoration:none;border-top:var(--ssa-trait-fin);}
 .ssa-repli [aria-current] {color:var(--ssa-brick);}
 .ssa-front {grid-template-columns:1fr;gap:1.15rem;padding:1.45rem 0;}
 .ssa-front__type {padding-left:.9rem;}
 .ssa-front h1 {font-size:clamp(2.7rem,9.7vw,4.4rem);max-width:12ch;}
 .ssa-front__deck {font-size:.98rem;margin-bottom:1rem;max-width:30ch;}
 .ssa-front__note {margin-top:.8rem;font-size:.55rem;}
 .ssa-front__photo img {height:215px;object-position:center;}
 .ssa-front__photo figcaption {font-size:.57rem;}
 .ssa-oreilles {grid-template-columns:repeat(2,minmax(0,1fr));gap:1.15rem;}
 .ssa-oreille {grid-template-columns:1fr;}
 .ssa-oreille img {height:98px;}
 .ssa-oreille__titre {font-size:1.05rem;}
 .ssa-oreille__numero {font-size:.58rem;}
 .ssa-grille {padding-top:1.6rem;}
 .ssa-cahier {margin-bottom:2.2rem;}
 .ssa-tete-bloc {gap:.75rem;margin-bottom:1.2rem;}
 .ssa-tete-bloc h2 {font-size:1.85rem;}
 .ssa-cote {font-size:2.35rem;}
 .ssa-depeche {grid-template-columns:32% minmax(0,1fr);gap:1rem;}
 .ssa-depeche h3 {font-size:1.4rem;}
 .ssa-depeche p:not(.ssa-plomb) {font-size:.85rem;}
 .ssa-festival {grid-template-columns:1fr;}
 .ssa-festival>.ssa-depeche:first-child {grid-template-columns:1fr;gap:1rem;}
 .ssa-festival>.ssa-depeche:first-child h3 {font-size:1.95rem;}
 .ssa-festival>.ssa-depeche:not(:first-child) {grid-template-columns:32% minmax(0,1fr);gap:1rem;border-bottom:var(--ssa-trait-fin);}
 .ssa-festival>.ssa-depeche:not(:first-child) img {aspect-ratio:.85;}
 .ssa-festival>.ssa-depeche:not(:first-child) h3 {font-size:1.35rem;}
 .ssa-pratique {padding:1.15rem 1rem;}
 .ssa-pratique__grille {grid-template-columns:1fr;}
 .ssa-pratique__grille .ssa-depeche {grid-template-columns:34% minmax(0,1fr);}
 .ssa-pratique__grille h3 {font-size:1.3rem;}
 .ssa-pratique__grille img {aspect-ratio:.95;}
 .ssa-communaute {grid-template-columns:1fr;}
 .ssa-communaute>.ssa-depeche {display:grid;grid-template-columns:32% minmax(0,1fr);gap:1rem;}
 .ssa-communaute>.ssa-depeche img {aspect-ratio:.88;}
 .ssa-communaute>.ssa-depeche:first-child,.ssa-communaute>.ssa-depeche:last-child {grid-template-columns:1fr;gap:1rem;}
 .ssa-communaute>.ssa-depeche:first-child img,.ssa-communaute>.ssa-depeche:last-child img {aspect-ratio:1.65;}
 .ssa-communaute>.ssa-depeche .ssa-depeche__vignette {margin-bottom:0;}
 .ssa-marge {grid-template-columns:1fr;}
 .ssa-marge h2 {max-width:none;}
 .ssa-marge .ssa-cahier {padding-bottom:1.5rem;}
 .ssa-marge .ssa-cahier>picture img {aspect-ratio:1.8;}
 .ssa-selection {grid-template-columns:1fr;gap:1rem;padding:1.5rem 1.1rem;margin-top:1.5rem;margin-bottom:2rem;}
 .ssa-selection h2 {font-size:2.25rem;max-width:15ch;}
 .ssa-renvois {grid-template-columns:1fr;gap:1.4rem;}
 .ssa-renvois img {aspect-ratio:2;}
 .ssa-renvois h3 {font-size:1.6rem;}
 .ssa-renvois p {font-size:.88rem;}
 .ssa-chemin {font-size:.59rem;margin-bottom:1.25rem;}
 .ssa-titraille h1 {font-size:clamp(2rem,7.8vw,3rem);margin:.7rem 0 1rem;}
 .ssa-chapeau {font-size:1.05rem;}
 .ssa-signature {font-size:.57rem;}
 .ssa-figure img {aspect-ratio:1.5;}
 .ssa-corps {font-size:1.035rem;padding-right:0;max-width:none;}
 .ssa-corps h2 {font-size:1.6rem;}
 .ssa-ours__grille {grid-template-columns:1fr;gap:1.7rem;padding:0 1rem;}
 .ssa-ours__mention {padding-inline:1rem;}
}
@media print {
 .ssa-selection,.ssa-oreilles {display:none;}
 .ssa-edition {padding:0;border:0;}
 .ssa-grille {display:block;}
 .ssa-corps {max-width:none;}
 .ssa-front__photo img,.ssa-figure img {max-height:12rem;width:auto;}
 a {color:inherit;}
}
