/* ==========================================================================
   cassiopeia_grognard — footer.css
   Pied de page : mêmes règles sur toutes les pages.
   Les valeurs viennent de variables.css.
   ========================================================================== */

/* --- Pied de page : grille, colonnes, signature ------------------------- */

.container-footer {
  border-top: 3px solid var(--sc-footer-bordure);
}

.container-footer .grid-child {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--sc-gap-md) var(--sc-gap-lg);
  align-items: start;
}

@media (min-width: 768px) {
  .container-footer .grid-child {
    grid-template-columns: 2fr 1fr 1fr;
  }
}

.container-footer .grid-child > .mod-custom:has(.sc-footer-signature) {
  grid-column: 1 / -1;
}

.container-footer .sc-footer-col h4 {
  margin: 0 0 0.6rem;
  padding-bottom: 0.35rem;
  font-family: var(--font-titre);
  font-size: var(--sc-footer-titre-taille);
  letter-spacing: 0.04em;
  color: var(--sc-footer-titre);
  border-bottom: 1px solid color-mix(in srgb, var(--sc-footer-titre) 20%, transparent);
}

.container-footer .sc-footer-col p,
.container-footer .sc-footer-col a {
  display: block;
  margin: 0;
  font-family: var(--font-corps);
  font-size: var(--sc-footer-taille);
  line-height: 1.9;
  color: var(--sc-footer-texte);
  text-decoration: none;
}

.container-footer .sc-footer-col a:hover {
  color: var(--sc-footer-lien-survol);
}

.container-footer .sc-footer-signature {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 0.4rem 1rem;
  padding-top: 0.75rem;
  border-top: 1px solid color-mix(in srgb, var(--sc-footer-titre) 12%, transparent);
}

.container-footer .sc-footer-copy {
  font-family: var(--font-corps);
  font-size: var(--sc-footer-copy-taille);
  color: var(--sc-footer-texte-discret);
}

/* Ajustement : espace symétrique autour de la signature. */
.container-footer .grid-child {
  padding-bottom: 0;
}

.container-footer .sc-footer-signature {
  padding-block: var(--sc-gap-sm);
}

/* Logo de la signature : même règle .sc-logo, taille propre au pied de page */
.container-footer {
  --sc-logo-taille: var(--sc-footer-logo-taille);
}

/* Aligne le pied de page sur le logo de l'en-tête : sous cette largeur, le column-gap
   de la grille de l'en-tête (1rem) décale le logo vers la droite. */
@media (min-width: 992px) and (max-width: 1320px) {
  .container-footer .grid-child {
    padding-left: calc(0.5em + 1rem);
  }
}

.container-footer :is(h1, h2, h3, h4, h5, h6) {
  color: var(--sc-footer-titre);
}
