/* Le journal (refonte du 31/10/2026) : un vrai sommaire plutôt qu'une grille unique, et des articles qui se lisent.
   Le détail qui signe la rubrique : la carte postale, avec le timbre du pays à sa main. La couleur et les rondeurs sont
   celles du site ; le rythme vient des tailles d'images et d'une section marine. */

/* ---------- La carte postale ---------- */
.jc { display: flex; flex-direction: column; gap: 6px; min-width: 0; color: var(--marine); text-decoration: none; }
.jc__img { position: relative; display: block; aspect-ratio: 4 / 3; margin-bottom: 8px; border-radius: var(--r-img); overflow: hidden; background: var(--menthe-pale); }
.jc__img img { width: 100%; height: 100%; object-fit: cover; }
.jc__dessin { object-fit: contain !important; padding: 18%; }
.jc__rub { display: block; font-size: .875rem; font-weight: 700; color: #A86A0C; }
.jc__titre { font: 700 1.1875rem/1.25 var(--titre); letter-spacing: -.01em; text-wrap: pretty; background: linear-gradient(var(--ambre), var(--ambre)) 0 100% / 0 3px no-repeat; transition: background-size .3s var(--ease); width: fit-content; }
.jc:hover .jc__titre { background-size: 100% 3px; }
.jc:focus-visible { outline: 3px solid var(--ambre-fonce); outline-offset: 6px; border-radius: var(--r-outil); }
.jc__meta { display: flex; flex-wrap: wrap; gap: 2px 14px; margin: 0; font-size: .875rem; color: var(--gris); }

/* Le timbre : un petit rectangle dentelé, un peu de travers, le pays écrit à la main. */
.timbre { position: absolute; right: 12px; top: 12px; z-index: 1; padding: 5px; rotate: 3deg; background: var(--blanc);
  /* Deux couches : le milieu plein, et une trame de petits trous qui ne se voit que sur le bord. */
  -webkit-mask: linear-gradient(#000 0 0) center / calc(100% - 7px) calc(100% - 7px) no-repeat, radial-gradient(circle 2.5px, #0000 96%, #000) -4px -4px / 8px 8px;
  mask: linear-gradient(#000 0 0) center / calc(100% - 7px) calc(100% - 7px) no-repeat, radial-gradient(circle 2.5px, #0000 96%, #000) -4px -4px / 8px 8px; }
.timbre span { display: block; padding: 3px 8px 1px; border: 1px solid var(--menthe); font: 600 1.1875rem/1 var(--main); color: var(--marine); white-space: nowrap; }

.jg { display: grid; gap: 34px 22px; }
@media (min-width: 640px) { .jg { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1040px) { .jg { grid-template-columns: repeat(4, 1fr); } .jg--3 { grid-template-columns: repeat(3, 1fr); } }

/* ---------- La première page ---------- */
.j-tete { padding: 34px 0 0; background: linear-gradient(var(--menthe-pale) 0, var(--menthe-pale) 300px, var(--blanc) 300px); }
.j-tete .wrap { display: grid; gap: 10px 48px; }
.j-tete__txt .main { margin: 0 0 6px; }
.j-tete__chapo { margin: 0; font-size: 1.0625rem; max-width: 36em; }
.j-tete--court { padding-bottom: 8px; background: var(--menthe-pale); }
.j-tete--court .wrap { gap: 4px; padding-bottom: 20px; }
.j-tete__nombre { margin: 0; color: var(--gris); font-size: 1.0625rem; }
.art__fil { font-size: .9375rem; color: var(--gris); margin: 0 0 10px; }
.art__fil a { color: inherit; }

/* La une. */
.ju { display: grid; gap: 22px; margin-top: 22px; grid-column: 1 / -1; }
.ju__grand { position: relative; display: block; color: var(--marine); text-decoration: none; }
.ju__photo { position: relative; display: block; aspect-ratio: 16 / 10; border-radius: var(--r-carte); overflow: hidden; background: var(--menthe); }
.ju__photo img { width: 100%; height: 100%; object-fit: cover; }
.ju__panneau { display: grid; gap: 8px; margin: -56px 12px 0; position: relative; padding: 20px 22px; border-radius: 22px; background: var(--blanc); box-shadow: var(--ombre); }
.ju__panneau b { font: 800 clamp(1.5rem, 2.8vw, 2.125rem)/1.12 var(--titre); letter-spacing: -.015em; text-wrap: balance; }
.ju__chapo { color: var(--gris); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.ju__suite { display: grid; gap: 14px; align-content: start; }
.ju__ligne { display: grid; grid-template-columns: 112px minmax(0, 1fr); gap: 14px; align-items: center; padding: 8px; margin: -8px; border-radius: 16px; color: var(--marine); text-decoration: none; transition: background .15s; }
.ju__ligne:hover { background: var(--peche-pale); }
.ju__ligne b { display: block; font: 700 1.0625rem/1.25 var(--titre); margin: 2px 0 4px; }
.ju__mini { display: block; aspect-ratio: 1; border-radius: 14px; overflow: hidden; background: var(--menthe-pale); }
.ju__mini img { width: 100%; height: 100%; object-fit: cover; }

/* Les rubriques : les mêmes tuiles dessinées que les causes des missions. */
.j-rub { padding: 34px 0 6px; }
.j-rub--court { padding-top: 18px; }
.jrs { display: flex; gap: 10px; overflow-x: auto; scrollbar-width: none; margin-inline: calc(-1 * var(--gouttiere)); padding: 4px var(--gouttiere); }
.jrs::-webkit-scrollbar { display: none; }
.jr { flex: 0 0 auto; display: flex; align-items: center; gap: 10px; padding: 8px 16px 8px 10px; border: 1.5px solid var(--trait); border-radius: 18px; color: var(--marine); text-decoration: none; transition: border-color .15s, background .15s; }
.jr img { width: 44px; height: 44px; }
.jr b { display: block; font: 700 1rem/1.15 var(--titre); white-space: nowrap; }
.jr small { font-size: .8438rem; color: var(--gris); }
.jr:hover { border-color: var(--marine); }
.jr.est-actif { background: var(--peche); border-color: var(--ambre-fonce); }

/* Les sections. */
.j-sec { padding-block: 44px; }
.j-sec__tete { display: flex; flex-wrap: wrap; align-items: end; justify-content: space-between; gap: 8px 24px; margin-bottom: 24px; }
.j-sec__tete p { margin: 6px 0 0; color: var(--gris); font-size: 1.0625rem; }
.j-sec--marine { background: var(--marine); color: var(--blanc); margin-block: 20px; padding-block: 56px; }
.j-sec--marine .j-sec__tete p, .j-sec--marine .jc__meta { color: rgba(255, 255, 255, .78); }
.j-sec--marine .jc { color: var(--blanc); }
.j-sec--marine .jc__rub { color: var(--ambre); }
.j-sec--marine .lien-fort { color: var(--blanc); }

/* ---------- L'article ---------- */
.a-tete { padding-top: 22px; }
.a-tete__photo { position: relative; aspect-ratio: 21 / 9; border-radius: var(--r-carte); overflow: hidden; background: var(--menthe); }
.a-tete__photo img { width: 100%; height: 100%; object-fit: cover; }
.a-tete__photo .timbre { top: 18px; right: 18px; padding: 6px; }
.a-tete__photo .timbre span { font-size: 1.5rem; padding: 4px 12px 2px; }
.a-tete__panneau { position: relative; display: grid; gap: 4px; max-width: 900px; margin: -86px auto 0; padding: 26px 34px 24px; border-radius: var(--r-carte); background: var(--blanc); box-shadow: var(--ombre); }
.a-tete__panneau--seul { margin-top: 10px; }
.a-tete__panneau h1 { max-width: none; }
.a-tete__panneau .art__chapo { margin: 10px 0 8px; max-width: none; font-size: 1.1875rem; line-height: 1.5; }

.a-corps { display: grid; gap: 22px; padding-block: 36px 52px; }
.a-prose { min-width: 0; max-width: 44rem; font-size: 1.125rem; line-height: 1.72; }
.a-prose p { margin: 0 0 1.05em; }
.a-prose h2 { margin: 1.9em 0 .55em; font: 800 clamp(1.5rem, 2.6vw, 1.875rem)/1.16 var(--titre); letter-spacing: -.015em; scroll-margin-top: 110px; text-wrap: balance; }
.a-prose > h2:first-child { margin-top: 0; }
.a-prose h3 { margin: 1.6em 0 .4em; font: 700 1.25rem/1.25 var(--titre); }
.a-prose a { font-weight: 600; text-decoration-color: var(--ambre-fonce); text-decoration-thickness: 2px; text-underline-offset: 3px; }
.a-prose ul, .a-prose ol { padding-left: 1.2em; margin: 0 0 1.1em; }
.a-prose li { margin-bottom: .4em; }
.a-prose blockquote { margin: 1.4em 0; padding: 18px 22px; border-radius: 18px; background: var(--peche-pale); }
.a-prose img { border-radius: var(--r-img); height: auto; }
.a-prose .carte a { font-weight: inherit; text-decoration: none; }

/* Le sommaire : un chemin pointillé, comme l'orbite du logo. On voit où on en est. */
.a-sommaire { padding: 14px 18px; border-radius: 18px; background: var(--menthe-pale); }
.a-sommaire summary { font: 700 1.0625rem var(--titre); cursor: pointer; }
.a-sommaire ol { list-style: none; margin: 12px 0 2px; padding: 0 0 0 16px; position: relative; display: grid; gap: 8px; }
.a-sommaire ol::before { content: ""; position: absolute; left: 3px; top: 8px; bottom: 8px; border-left: 2px dashed var(--brume); }
.a-sommaire li { position: relative; }
.a-sommaire li::before { content: ""; position: absolute; left: -17px; top: .38em; width: 10px; height: 10px; border-radius: 50%; background: var(--blanc); border: 2px solid var(--brume); transition: background .15s, border-color .15s; }
.a-sommaire a { display: block; font-size: .9375rem; line-height: 1.3; color: var(--gris); text-decoration: none; }
.a-sommaire a:hover { color: var(--marine); }
.a-sommaire li.est-passe::before { background: var(--brume); }
.a-sommaire li.est-actif::before { background: var(--ambre); border-color: var(--ambre-fonce); }
.a-sommaire li.est-actif a { color: var(--marine); font-weight: 700; }

.a-partage { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 14px; margin-top: 14px; font-size: .9375rem; color: var(--gris); }
.a-partage a, .a-partage button { padding: 0; border: 0; background: none; font: 600 .9375rem var(--texte); color: var(--marine); text-decoration: underline; text-decoration-color: var(--ambre-fonce); text-underline-offset: 3px; cursor: pointer; }

.a-etroit { max-width: 860px; }

/* La fin d'article : l'invitation, sans encart perdu dans la marge. */
.a-fin { padding-block: 8px 48px; }
.a-fin__in { display: grid; gap: 14px; align-items: center; padding: 26px; border-radius: var(--r-carte); background: var(--marine); color: var(--blanc); }
.a-fin__in img { width: 72px; height: 72px; }
.a-fin__in .main { margin: 0 0 2px; color: var(--ambre); }
.a-fin__in p { margin: 0; }
.a-fin--pf .a-fin__in { background: var(--pf-nuit); }
.a-fin--pf .main { color: #E8DDFA; }
.prose .pf-carte a { font-weight: inherit; }

@media (min-width: 760px) {
  .a-fin__in { grid-template-columns: auto 1fr auto; gap: 24px; padding: 26px 34px; }
}
@media (min-width: 1040px) {
  .j-tete { background: linear-gradient(var(--menthe-pale) 0, var(--menthe-pale) 300px, var(--blanc) 300px); }
  .j-tete .wrap { grid-template-columns: minmax(0, 1fr) minmax(0, 26em); align-items: end; }
  .j-tete--court .wrap { display: block; }
  .ju { grid-template-columns: minmax(0, 1.75fr) minmax(0, 1fr); gap: 36px; align-items: start; margin-top: 26px; }
  .ju__panneau { position: absolute; left: 18px; right: 18px; bottom: 18px; margin: 0; max-width: 620px; }
  .ju__photo { aspect-ratio: 16 / 11; }
  /* La suite de la une, sur un panneau blanc qui chevauche le bandeau comme la grande photo. */
  .ju__suite { gap: 16px; padding: 22px; border-radius: var(--r-carte); background: var(--blanc); box-shadow: var(--ombre); }
  .ju__ligne { margin: 0; padding: 6px; }
  .jrs { flex-wrap: wrap; overflow: visible; margin-inline: 0; padding-inline: 0; }
  .a-corps { grid-template-columns: 270px minmax(0, 44rem); gap: 64px; justify-content: center; align-items: start; }
  .a-corps--seul { grid-template-columns: minmax(0, 44rem); }
  .a-corps--seul .a-cote { order: 2; }
  .a-cote { position: sticky; top: 100px; max-height: calc(100vh - 120px); overflow-y: auto; scrollbar-width: thin; }
  .a-sommaire summary { list-style: none; cursor: default; pointer-events: none; }
  .a-sommaire summary::-webkit-details-marker { display: none; }
}
@media (max-width: 1039px) {
  .a-tete { padding-top: 12px; }
  .a-tete__panneau { margin: -34px 8px 0; padding: 20px; }
  .a-tete__photo { aspect-ratio: 16 / 10; }
  .a-cote { order: -1; }
}
@media (max-width: 639px) {
  .a-prose { font-size: 1.0625rem; }
  .j-tete { background: linear-gradient(var(--menthe-pale) 0, var(--menthe-pale) 240px, var(--blanc) 240px); }
  .ju__panneau { margin-inline: 8px; padding: 16px 18px; }
}

/* Passe de finition (31/10/2026) : la même discipline que la liste des missions. */
.jc__titre { font-size: 1.125rem; }
.jr { border: 0; border-radius: 12px; padding: 6px 12px 8px 4px; box-shadow: inset 0 -3px 0 transparent; }
.jr:hover { background: var(--menthe-pale); }
.jr.est-actif { background: transparent; box-shadow: inset 0 -3px 0 var(--ambre-fonce); }
.jr small { display: none; }
.ju__panneau, .ju__suite { box-shadow: 0 16px 40px -24px rgba(8, 56, 89, .4), 0 0 0 1px rgba(8, 56, 89, .05); }
.a-tete__panneau { box-shadow: 0 16px 40px -24px rgba(8, 56, 89, .4), 0 0 0 1px rgba(8, 56, 89, .05); }
.a-corps { padding-bottom: 40px; }

/* Le sommaire : la ligne pointillée reste, sans les boules ; le passage en cours se lit à sa couleur. */
.a-sommaire li::before { display: none; }
.a-sommaire li.est-actif a::before { content: ""; position: absolute; left: -18px; top: 0; bottom: 0; width: 3px; border-radius: 2px; background: var(--ambre-fonce); }

/* Sur téléphone, le journal se lit comme une liste : la photo à gauche, le titre à droite. */
@media (max-width: 639px) {
  .j-tete { padding-top: 18px; }
  .j-tete .wrap { gap: 2px; }
  .j-tete__txt .main { font-size: 1.25rem; margin-bottom: 2px; }
  .j-tete h1 { font-size: 1.75rem; }
  .j-tete__chapo { display: none; }
  .ju { margin-top: 12px; gap: 14px; }
  .ju__photo { aspect-ratio: 3 / 2; border-radius: var(--r-img); }
  .ju__panneau { margin: -34px 10px 0; padding: 14px 16px; border-radius: 16px; }
  .ju__panneau b { font-size: 1.3125rem; }
  .ju__chapo { display: none; }
  .ju__suite { gap: 10px; }
  .ju__ligne { grid-template-columns: 96px minmax(0, 1fr); gap: 12px; margin: 0; padding: 0; }
  .ju__ligne b { font-size: 1rem; }
  .j-rub { padding: 20px 0 0; }
  .jr img { width: 34px; height: 34px; }
  .j-sec { padding-block: 28px; }
  .j-sec--marine { padding-block: 32px; margin-block: 12px; }
  .j-sec__tete { margin-bottom: 14px; }
  .j-sec__tete h2 { font-size: 1.5rem; }
  .j-sec__tete p { font-size: .9688rem; margin-top: 2px; }
  .jg { gap: 14px; }
  .jc { display: grid; grid-template-columns: 112px minmax(0, 1fr); column-gap: 12px; row-gap: 2px; align-content: start; }
  .jc__img { grid-row: 1 / span 3; aspect-ratio: 1; margin: 0; border-radius: 14px; }
  .jc .timbre { display: none; }
  .jc__rub { font-size: .8125rem; }
  .jc__titre { font-size: 1rem; line-height: 1.22; }
  .jc__meta { font-size: .8125rem; }
  .jc__meta time { white-space: nowrap; }
  .a-fin { padding-block: 4px 28px; }
  .a-fin__in { padding: 20px; }
  .a-fin__in img { width: 52px; height: 52px; }
  .a-prose h2 { margin-top: 1.5em; }
  .a-tete__panneau h1 { font-size: 1.625rem; }
  .a-tete__panneau .art__chapo { font-size: 1.0625rem; }
  .a-corps { padding-top: 22px; }
}

/* ---------- Le caractère éditorial (31/10/2026) ----------
   Une seule grande décision : les titres du journal passent en Fraunces, une serif chaude et ronde, à côté de la Figtree
   du texte. Les titres deviennent grands, les rubriques se lisent en texte, la page alterne grilles et mosaïques. */
@font-face { font-family: Fraunces; font-style: normal; font-weight: 300 700; font-display: swap; src: url(/sites/fp/fonts/Fraunces-normal-latin.woff2) format('woff2'); }
@font-face { font-family: Fraunces; font-style: italic; font-weight: 400 500; font-display: swap; src: url(/sites/fp/fonts/Fraunces-italic-latin.woff2) format('woff2'); }
:root { --serif: Fraunces, Georgia, "Times New Roman", serif; }

/* La tête du journal. */
.j-mast { padding: 34px 0 8px; }
.j-mast__tete { display: grid; gap: 8px 56px; padding-bottom: 20px; }
.j-mast__tete .main { margin: 0 0 4px; color: #A86A0C; }
.j-mast h1, .j-tete--court h1 { margin: 0; font: 500 clamp(2.5rem, 6vw, 4.5rem)/1.02 var(--serif); letter-spacing: -.025em; color: var(--marine); text-wrap: balance; font-variation-settings: "opsz" 144; }
.j-mast__chapo { margin: 0; align-self: end; max-width: 30em; font-size: 1.0625rem; color: var(--gris); }
.j-tete--court { padding: 30px 0 0; background: none; }
.j-tete--court .wrap { display: block; padding-bottom: 0; }
.j-tete__nombre { margin: 8px 0 14px; }
.j-sec--suite { padding-top: 26px; }

/* Les rubriques, en texte, entre deux filets. */
.jrs { gap: 2px; align-items: center; margin-inline: calc(-1 * var(--gouttiere)); padding: 8px var(--gouttiere); border-block: 1px solid var(--trait); }
.jr { display: block; padding: 8px 14px; border-radius: 10px; font-weight: 600; font-size: .9688rem; box-shadow: none; white-space: nowrap; }
.jr:hover { background: var(--menthe-pale); }
.jr.est-actif { background: var(--peche); box-shadow: inset 0 0 0 1.5px var(--ambre-fonce); }

/* Le grand article : la une et les mosaïques. */
.jb { display: block; min-width: 0; color: var(--marine); text-decoration: none; }
.jb__photo { position: relative; display: block; aspect-ratio: 3 / 2; margin-bottom: 16px; border-radius: var(--r-img); overflow: hidden; background: var(--menthe-pale); }
.jb__photo img { width: 100%; height: 100%; object-fit: cover; }
.jb__titre { display: block; margin: 4px 0 8px; font: 500 clamp(1.625rem, 2.6vw, 2.125rem)/1.12 var(--serif); letter-spacing: -.015em; text-wrap: balance; font-variation-settings: "opsz" 72; }
.jb--une .jb__titre { font-size: clamp(1.875rem, 3.6vw, 3rem); line-height: 1.06; font-variation-settings: "opsz" 144; }
.jb__chapo { display: block; max-width: 40em; margin-bottom: 8px; font-size: 1.0625rem; color: var(--gris); }
.jb:hover .jb__titre { text-decoration: underline; text-decoration-thickness: 2px; text-decoration-color: var(--ambre-fonce); text-underline-offset: 5px; }
.jb:focus-visible, .jl:focus-visible { outline: 3px solid var(--ambre-fonce); outline-offset: 4px; border-radius: 10px; }

.ju { display: grid; gap: 26px; margin-top: 26px; grid-column: auto; }
.ju__suite { display: grid; align-content: start; gap: 0; padding: 0; background: none; box-shadow: none; border-radius: 0; }
.jm { display: grid; gap: 26px; }
.jm__suite { display: grid; align-content: start; }

/* Une ligne de sommaire : le texte d'abord. */
.jl { display: grid; grid-template-columns: minmax(0, 1fr) 96px; gap: 16px; align-items: start; padding: 16px 0; border-top: 1px solid var(--trait); color: inherit; text-decoration: none; }
.ju__suite .jl:first-child, .jm__suite .jl:first-child { border-top: 0; padding-top: 0; }
.jl b { display: block; margin: 2px 0 6px; font: 500 1.25rem/1.2 var(--serif); letter-spacing: -.01em; font-variation-settings: "opsz" 36; }
.jl:hover b { text-decoration: underline; text-decoration-thickness: 2px; text-decoration-color: var(--ambre-fonce); text-underline-offset: 4px; }
.jl__mini { display: block; aspect-ratio: 1; border-radius: 12px; overflow: hidden; background: var(--menthe-pale); }
.jl__mini img { width: 100%; height: 100%; object-fit: cover; }

.jc__titre { font: 500 1.25rem/1.18 var(--serif); letter-spacing: -.01em; font-variation-settings: "opsz" 36; }
.jc__img { aspect-ratio: 4 / 5; }
.j-sec__tete h2 { margin: 0; font: 500 clamp(1.75rem, 3.2vw, 2.5rem)/1.08 var(--serif); letter-spacing: -.02em; font-variation-settings: "opsz" 144; }
.j-sec { padding-block: 52px; }
.j-sec--marine { margin-block: 12px; padding-block: 60px; }
.j-sec--marine h2, .j-sec--marine .jb { color: var(--blanc); }
.j-sec--marine .jb__chapo { color: rgba(255, 255, 255, .78); }
.j-sec--marine .jl { border-color: rgba(255, 255, 255, .16); color: var(--blanc); }
.j-sec--marine .jc__meta { color: rgba(255, 255, 255, .72); }
.j-sec--marine .jc__rub { color: var(--ambre); }
.j-sec--peche { background: var(--peche-pale); }
.j-sec--peche .jl { border-color: #F2DDB6; }

/* L'article : le titre, puis la photo, puis le texte. */
.a-tete { padding-top: 34px; }
.a-tete__txt { max-width: 900px; margin: 0 auto 26px; }
.a-tete__txt h1 { margin: 4px 0 0; font: 500 clamp(2.125rem, 5vw, 3.75rem)/1.06 var(--serif); letter-spacing: -.022em; text-wrap: balance; font-variation-settings: "opsz" 144; }
.a-tete__txt .art__chapo { margin: 16px 0 12px; max-width: none; font: 400 clamp(1.1875rem, 2vw, 1.4375rem)/1.42 var(--serif); color: #2F5570; font-variation-settings: "opsz" 24; }
.a-tete__photo { aspect-ratio: 2 / 1; border-radius: var(--r-img); }
.a-prose h2 { font: 500 clamp(1.625rem, 2.8vw, 2.125rem)/1.14 var(--serif); letter-spacing: -.015em; font-variation-settings: "opsz" 72; }
.a-prose h3 { font: 600 1.3125rem/1.25 var(--serif); font-variation-settings: "opsz" 36; }
.a-prose > p:first-child::first-letter { float: left; margin: .06em .1em 0 0; font: 500 3.5em/.84 var(--serif); color: var(--marine); font-variation-settings: "opsz" 144; }
.a-prose blockquote { margin: 1.6em 0; padding: 0; border-radius: 0; background: none; font: italic 400 1.375rem/1.4 var(--serif); color: var(--marine); }
.a-sommaire li.est-actif a::before { display: none; }

@media (min-width: 1040px) {
  .j-mast__tete { grid-template-columns: minmax(0, 1fr) minmax(0, 26em); }
  .jrs { margin-inline: 0; padding-inline: 0; }
  .ju { grid-template-columns: minmax(0, 1.7fr) minmax(0, 1fr); gap: 44px; align-items: start; padding-top: 2px; }
  .ju__suite { padding: 0; box-shadow: none; }
  .jm { grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: 44px; align-items: start; }
  .jm--inverse .jb { order: 2; }
  .a-corps { grid-template-columns: 250px minmax(0, 44rem); gap: 56px; }
}
@media (max-width: 639px) {
  .j-mast { padding-top: 20px; }
  .j-mast__tete { padding-bottom: 10px; }
  .j-mast__tete .main { font-size: 1.25rem; }
  .j-mast__chapo { display: none; }
  .ju { margin-top: 16px; gap: 18px; }
  .jb__photo { margin-bottom: 10px; }
  .jb--une .jb__titre, .jb__titre { font-size: 1.625rem; }
  .jb__chapo { font-size: 1rem; }
  .j-sec { padding-block: 30px; }
  .j-sec--marine { padding-block: 34px; }
  .jl { grid-template-columns: minmax(0, 1fr) 84px; gap: 12px; padding: 12px 0; }
  .jl b { font-size: 1.125rem; }
  .jc__img { aspect-ratio: 1; }
  .jc__titre { font-size: 1.0625rem; line-height: 1.2; }
  .a-tete { padding-top: 18px; }
  .a-tete__txt { margin-bottom: 16px; }
  .a-tete__photo { aspect-ratio: 3 / 2; }
  .a-prose > p:first-child::first-letter { font-size: 3em; }
}
