/* ============================================================
   NOÏA — LOT 2 (23 octobre 2026) : styles communes à tout le site
   - pied de page à quatre colonnes (colonne « Expertises ») ;
   - sous-titre du hero placé dans le H1 de l'accueil ;
   - liens visibles dans les paragraphes éditoriaux ;
   - bloc « Expertises mobilisées » des fiches projets ;
   - images dotées de width/height : ratio conservé sans déformation.
   ============================================================ */

/* Images : les attributs width/height donnent le ratio au navigateur avant le
   chargement (moins de sauts de mise en page). width/height: auto annule leur
   effet de taille ; :where() garde une spécificité nulle pour que toutes les
   règles existantes (largeur 100 %, object-fit, hauteur fixe) restent prioritaires. */
:where(img[width][height]) { width: auto; height: auto; }
:where(img[width][height][src]) { max-width: 100%; }

/* ---------- Pied de page : 4 colonnes ---------- */
.site-footer .footer-grid {
  grid-template-columns: minmax(0, 1.45fr) minmax(130px, .5fr) minmax(210px, .78fr) minmax(230px, .8fr);
  gap: clamp(32px, 4.4vw, 72px);
}
@media (max-width: 1180px) {
  .site-footer .footer-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .site-footer .footer-intro { grid-column: 1 / -1; }
}
@media (max-width: 760px) {
  .site-footer .footer-grid { grid-template-columns: 1fr 1fr; }
  .site-footer .footer-contact { grid-column: 1 / -1; }
}
@media (max-width: 520px) {
  .site-footer .footer-grid { grid-template-columns: 1fr; }
}
.site-footer .footer-expertises .footer-links a { line-height: 1.3; }

/* ---------- Accueil : sous-titre intégré au H1 ---------- */
.hero-v10-title > .hero-v10-subtitle {
  display: block;
  white-space: normal;
  text-transform: none !important;
  letter-spacing: -.03em;
}
@media (min-width: 761px) {
  .hero-v10-title > .hero-v10-subtitle { margin-top: .55rem; }
}

/* ---------- Liens dans les paragraphes éditoriaux ---------- */
:is(.manifesto-v3-body, .agency-v3-copy, .faq-v3-list, .seo-local-v3-body) p a:not([class]) {
  color: inherit;
  font-weight: 500;
  text-decoration: underline;
  text-decoration-color: rgba(201, 81, 53, .75);
  text-decoration-thickness: 1px;
  text-underline-offset: .22em;
  transition: color .2s ease, text-decoration-color .2s ease;
}
:is(.manifesto-v3-body, .agency-v3-copy, .faq-v3-list, .seo-local-v3-body) p a:not([class]):is(:hover, :focus-visible) {
  color: #C95135 !important;
  text-decoration-color: currentColor;
}

/* ---------- Fiches projets : expertises mobilisées ---------- */
.project-expertise {
  padding: clamp(64px, 7vw, 116px) clamp(18px, 2.5vw, 42px);
  background: var(--nt-bg, #F6F2EA);
  color: var(--nt-text, #211D1A);
  border-top: 1px solid var(--nt-line, rgba(33, 29, 26, .14));
}
.project-expertise__inner {
  display: grid;
  grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
  gap: clamp(32px, 6vw, 110px);
  width: min(1480px, 100%);
  margin: 0 auto;
  align-items: start;
}
.project-expertise .micro-label { margin-bottom: 1rem; }
.project-expertise__title {
  margin: 0;
  font-family: Roboto, Arial, sans-serif;
  font-size: clamp(36px, 3.8vw, 60px);
  font-weight: 500;
  line-height: .96;
  letter-spacing: -.05em;
  text-transform: uppercase;
  color: inherit;
}
.project-expertise__title em {
  font-family: Newsreader, Georgia, serif;
  font-weight: 400;
  font-style: italic;
  text-transform: none;
  letter-spacing: -.025em;
}
.project-expertise__links {
  margin: 0;
  padding: 0;
  list-style: none;
  border-top: 1px solid var(--nt-line, rgba(33, 29, 26, .16));
}
.project-expertise__links li { border-bottom: 1px solid var(--nt-line, rgba(33, 29, 26, .16)); }
.project-expertise__links a {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 18px;
  align-items: center;
  padding: clamp(16px, 1.7vw, 24px) 0;
  color: inherit !important;
  text-decoration: none;
  transition: color .25s ease, padding .35s cubic-bezier(.22, 1, .36, 1);
}
.project-expertise__links strong {
  display: block;
  font-family: Roboto, Arial, sans-serif;
  font-size: clamp(20px, 1.8vw, 28px);
  font-weight: 500;
  line-height: 1.08;
  letter-spacing: -.035em;
}
.project-expertise__links small {
  display: block;
  margin-top: 6px;
  font-size: 13px;
  line-height: 1.45;
  color: var(--nt-muted, #655B53) !important;
}
.project-expertise__links a > span[aria-hidden] { color: #C95135; font-size: 18px; }
.project-expertise__links a:is(:hover, :focus-visible) { color: #C95135 !important; padding-left: 8px; }
@media (max-width: 860px) {
  .project-expertise__inner { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
  .project-expertise__links a { transition: none !important; }
}
