/* Fidélité à la maquette : geology (home Géologie, article de géologie, home Œnotourisme, fiche balade).
   Réutilise les composants ; règles de page de la maquette reprises par @import (couche pages). */
@import url(../page-geologie.css);
@import url(../page-oenotourisme.css);
@layer pages {
  /* --- Photo d'en-tête : jamais agrandie au-delà de sa taille native (alignée sur la colonne du texte) --- */
  .article-photo-native{margin:0 0 var(--space-6)}
  .article-photo-native img{display:block;width:100%;height:auto;max-width:100%}
  .article-head:has(.article-photo-native) .article-head__top{padding-bottom:var(--space-6)}

  /* --- Repères de l'article (une phrase, chiffre, en bref) --- */
  .fid-lead-solo{margin:0 0 var(--space-7)}
  .fid-bullets{margin:0 0 var(--space-7)}
  .fid-bullets .fact-grid__title{margin-top:0}
  .fid-bullets__list{border-top:1px solid var(--c-taupe)}
  .fid-bullets__list ul{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 var(--gutter)}
  .fid-bullets__list li{padding:var(--space-4) 0;border-bottom:1px solid var(--c-line);font-size:var(--text-m);line-height:1.5}
  @media (max-width:1100px){.fid-bullets__list ul{grid-template-columns:repeat(2,minmax(0,1fr))}}
  @media (max-width:600px){.fid-bullets__list ul{grid-template-columns:1fr}}

  /* Sans sommaire (corps sans h2), le texte part de la marge gauche */
  @media (min-width:1101px){.article-layout:not(:has(.toc)) .prose{grid-column:1 / span 8}}

  /* --- Galerie --- */
  .fid-gallery{padding-top:var(--section-gap)}
  .fid-gallery .section__head{margin-bottom:48px}

  /* --- Corps migré d'eZ : figures, légendes, alignements, tableaux --- */
  .prose figure.ez-embed{margin:36px 0;max-width:100%}
  .prose figure.ez-embed img{display:block;width:auto;height:auto;max-width:100%}
  .prose figure.ez-align-center{margin-left:auto;margin-right:auto;text-align:center}
  .prose figure.ez-align-center img{margin-inline:auto}
  .prose figure.ez-align-left{float:left;margin:6px 28px 20px 0;max-width:min(50%,420px)}
  .prose figure.ez-align-right{float:right;margin:6px 0 20px 28px;max-width:min(50%,420px)}
  .prose figure.ez-size-small img{max-width:min(100%,240px)}
  .prose figure.ez-size-medium img{max-width:min(100%,420px)}
  /* Légende migrée : paragraphe en italique juste après une figure */
  .prose figure.ez-embed + p:has(> em:first-child){margin:calc(-1 * var(--space-4)) 0 var(--space-6);font-size:var(--text-s);line-height:1.5;color:var(--c-ink-soft);max-width:46em;text-align:left!important}
  .prose figure.ez-embed + p:has(> em:first-child) em{font-style:normal}
  .prose h2+*{clear:none}
  .prose h2,.prose h3,.prose .callout,.prose table{clear:both}
  .prose table{border-collapse:collapse;width:100%;max-width:none;margin:36px 0;font-size:var(--text-m);line-height:1.55;display:block;overflow-x:auto}
  .prose table.ez-table-list{border-top:1px solid var(--c-ink);border-bottom:1px solid var(--c-ink)}
  .prose table.ez-table-list td,.prose table.ez-table-list th{padding:14px 16px 14px 0;border-top:1px solid var(--c-line);vertical-align:top;text-align:left}
  .prose table.ez-table-default{display:table;table-layout:auto}
  .prose table.ez-table-default td{vertical-align:top;padding:0 var(--space-4) 0 0}
  .prose table th{font-weight:600}
  .prose table p{margin:0 0 10px;max-width:none}
  .prose table figure.ez-embed{margin:0 0 var(--space-3)}
  .prose table figure.ez-embed + p:has(> em:first-child){margin:0}
  .prose hr{border:0;border-top:1px solid var(--c-line);margin:var(--space-6) 0}
  .prose sup{line-height:0}
  .prose .pullquote__label a{text-decoration:underline;text-underline-offset:3px}
  .prose h3{font-size:clamp(24px,2.4vw,30px);font-weight:600;line-height:1.2;margin:var(--space-7) 0 var(--space-4);padding-top:var(--space-5);border-top:1px solid var(--c-taupe)}
  .prose h2+h3{margin-top:var(--space-6)}
  .prose h2{scroll-margin-top:72px}
  @media (max-width:820px){
    .prose figure.ez-align-left,.prose figure.ez-align-right{float:none;margin:24px 0;max-width:100%}
  }

  /* --- Homes de rubrique --- */
  .fid-feature figure img{width:100%;max-width:750px;height:auto;aspect-ratio:3/2;object-fit:cover}
  .fid-figures{--grid-cols-s:3;--grid-gap-x:var(--space-5);--grid-gap-y:var(--space-5)}
  .fid-cards .card__text{font-size:var(--text-s);line-height:1.5;color:var(--c-ink-soft);max-width:34em}
  .fid-cards .card__kicker{font-size:var(--text-xs);color:var(--c-ink-soft)}
  .fid-rock-text{margin:0 0 var(--space-4);max-width:40em;font-size:var(--text-m);line-height:1.55}
  .fid-rock-links{list-style:none;padding:0;margin:0;display:grid;gap:var(--space-2)}
  .fid-rock-links a{text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--c-taupe)}
}
@layer pages{.id-band + .subnav{margin-top:0}}

/* --- Home Œnotourisme (étape 12) : menu secondaire à deux niveaux et dispositions de section.
   Composants existants réutilisés (card, grid--feature, gallery--captioned, list-ruled…) ;
   ici seulement le menu et les réglages de variables qui, dans la maquette, sont en style inline. --- */
@layer pages {
  .geo-nav{background:var(--c-white);border-top:1px solid var(--c-line);border-bottom:1px solid var(--c-line);margin-top:var(--section-gap)}
  .geo-nav__groups{list-style:none;margin:0;padding:var(--space-5) 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:var(--space-5) var(--space-6)}
  .geo-nav__label{margin:0 0 var(--space-3);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--c-taupe-deep)}
  .geo-nav__links{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:var(--space-2)}
  .geo-nav__links a{display:inline-flex;align-items:baseline;gap:6px;padding:8px 14px;border:1px solid var(--c-line);font-size:var(--text-s);line-height:1.2;overflow-wrap:anywhere}
  .geo-nav__links a:hover{border-color:var(--c-brand);color:var(--c-brand-strong);text-decoration:none}
  .geo-nav__links small{font-size:var(--text-xs);color:var(--c-ink-soft)}
  @media (max-width:600px){
    .geo-nav__groups{grid-template-columns:1fr;gap:var(--space-4)}
    .geo-nav__links a{min-height:44px;align-items:center}
  }
  .geo-nav + .geo-section{padding-top:var(--section-gap)}

  /* Réglages repris des styles inline de la maquette */
  .geo-story{--card-ratio:16/10;--card-title-size:clamp(28px,2.8vw,40px);--card-text-size:18px;--card-text-gap:var(--space-3);--card-text-max:30em}
  .geo-story--solo{display:grid;grid-template-columns:minmax(0,1fr);max-width:760px}
  .geo-story--pair{grid-template-columns:repeat(2,minmax(0,1fr))}
  @media (max-width:600px){.geo-story--pair{grid-template-columns:minmax(0,1fr)}}
  .geo-feature{--feature-a:7}
  .geo-feature .card--story{--card-ratio:16/10;--card-title-size:clamp(28px,2.8vw,40px);--card-text-size:18px;--card-text-gap:var(--space-3);--card-text-max:30em}
  .geo-feature .card--story .card__media{aspect-ratio:16/10}
  .geo-feature .card--story .card__media img{height:100%;object-fit:cover}
  .geo-feature .card--thumb{--card-title-size:22px;--card-text-size:16px}
  .geo-regions{--grid-gap-xs:var(--space-5);--card-ratio:4/3}
  .geo-rows{--card-ratio:16/9;--card-media-max:720px;--card-media-w:minmax(0,1fr);--story-title-size:clamp(26px,2.6vw,38px);--card-text-size:18px;--card-text-max:30em;--story-kicker-ink:var(--c-ink-soft)}
  .geo-family{margin-bottom:var(--space-3)}
}
@layer pages{.id-band + .geo-nav{margin-top:0}}

/* --- Home Géologie (étape 13) : lien vers la page d'un thème, rangée de liens sous les cartes --- */
@layer pages {
  .geo-more{margin:var(--space-3) 0 0;font-size:var(--text-s)}
  .geo-more a{text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--c-taupe)}
  .geo-section .link-row{max-width:none}
  .geo-section .link-row .cluster{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-5)}
}
