/*
 * Footer — pied de page (footer.php), commun à toutes les pages du site.
 * Historiquement dans home.css et chargé uniquement sur is_front_page() :
 * sur une autre page, le footer se retrouvait donc sans styles — notamment
 * sans la contrainte de taille sur le logo (.bcc-footer__brand-row img),
 * qui prenait alors ses dimensions intrinsèques (27006×5594, le SVG source)
 * et gonflait la page sur des milliers de pixels. Extrait ici pour être
 * chargé sur tout le site — voir bcc_enqueue_assets() dans functions.php.
 */

.bcc-footer { background: var(--ink); color: rgba(255,255,255,0.75); }
.bcc-footer__grid {
  max-width: 1280px;
  margin: 0 auto;
  padding: 4.5rem 2rem 2.5rem;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 3rem;
}
.bcc-footer__brand-row { display: flex; align-items: center; gap: .6rem; margin-bottom: 1.2rem; }
.bcc-footer__brand-row img { height: 30px; width: auto; display: block; opacity: .95; }
.bcc-footer__tagline { font-size: .85rem; color: rgba(255,255,255,0.5); line-height: 1.7; margin-bottom: .75rem; max-width: 34ch; }
.bcc-footer__location { font-family: var(--mono); font-size: .66rem; letter-spacing: .1em; text-transform: uppercase; color: rgba(255,255,255,0.4); }
.bcc-footer__address { display: block; margin-top: .6rem; font-size: .78rem; color: rgba(255,255,255,0.45); }

.bcc-footer__cols { display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; }
.bcc-footer__col-title { font-family: var(--mono); font-size: .66rem; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: var(--sage); margin-bottom: 1.1rem; }
.bcc-footer__link { display: block; font-size: .86rem; color: rgba(255,255,255,0.55); margin-bottom: .55rem; }

.bcc-footer__social-title { font-family: var(--mono); font-size: .66rem; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: var(--sage); margin-bottom: .9rem; }
.bcc-footer__social-lead { font-size: .85rem; color: rgba(255,255,255,0.5); margin-bottom: 1.2rem; line-height: 1.6; max-width: 32ch; }
.bcc-footer__social-links { display: flex; flex-direction: column; align-items: flex-start; gap: .6rem; }

.bcc-footer__bottom {
  max-width: 1280px;
  margin: 0 auto;
  padding: 1.5rem 2rem;
  border-top: 1px solid rgba(255,255,255,0.08);
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 1rem;
  font-size: .75rem;
  color: rgba(255,255,255,0.3);
}
.bcc-footer__legal { display: flex; gap: 1.5rem; }
.bcc-footer__legal a { color: rgba(255,255,255,0.3); }

/* Sous 640px, on resserre nettement le rythme vertical (le footer empile 3
   blocs pleine largeur au lieu de 3 colonnes) pour qu'il reste raisonnable
   en hauteur. "Nos métiers" / "Maison" restent côte à côte à toutes les
   largeurs — cf. .bcc-footer__cols plus bas, pas de repli 1 colonne. */
@media (max-width: 640px) {
  .bcc-footer__grid { padding: 3rem 1.25rem 1.5rem; gap: 2rem; }

  .bcc-footer__brand-row { margin-bottom: .9rem; }
  .bcc-footer__tagline   { margin-bottom: .5rem; }

  .bcc-footer__cols { grid-template-columns: 1fr 1fr; gap: 1.5rem 1.25rem; }
  .bcc-footer__col-title,
  .bcc-footer__social-title { margin-bottom: .7rem; }
  .bcc-footer__link { margin-bottom: .4rem; }

  .bcc-footer__social-lead { margin-bottom: .9rem; }

  .bcc-footer__bottom { padding: 1.15rem 1.25rem; gap: .5rem 1.25rem; }
}
