/* Les Fuseaux d'Enghien — styles pour Cassiopeia */

@font-face {
  font-family: 'Chelsea Market';
  src: url('/images/fonts/chelsea-market.woff2') format('woff2');
  font-display: swap;
}

:root {
  --lfe-gris: #7a7a7a;
  --lfe-bleu: #033497;
}

.lfe-titre,
.page-header h1 {
  font-family: 'Chelsea Market', Arial, sans-serif;
  color: var(--lfe-gris);
  font-weight: bold;
  margin-top: 2rem;
}

.lfe-bandeau {
  min-height: 420px;
  background-size: cover;
  background-position: center bottom;
  background-attachment: fixed;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: .5rem;
  margin-bottom: 2rem;
}
.lfe-bandeau-court { min-height: 260px; }
.lfe-accroche {
  font-family: Monaco, 'DejaVu Sans Mono', 'Lucida Console', monospace;
  font-size: 1.9rem;
  line-height: 1.4;
  color: #555;
  text-align: center;
  background: rgba(255, 255, 255, .8);
  padding: 1rem 2rem;
  border-radius: .5rem;
}
@media (max-width: 768px) {
  .lfe-bandeau { background-attachment: scroll; min-height: 280px; }
  .lfe-accroche { font-size: 1.4rem; }
}

.lfe-encadre {
  border-left: 4px solid var(--lfe-bleu);
  background: #f5f7fb;
  padding: 1rem 1.5rem;
  margin: 2rem 0;
}
.lfe-appel { font-size: 1.2rem; color: var(--lfe-bleu); }

.lfe-video, .lfe-agenda { position: relative; width: 100%; }
.lfe-video { aspect-ratio: 16 / 9; }
.lfe-agenda { height: 600px; }
.lfe-video iframe, .lfe-agenda iframe {
  position: absolute; inset: 0; width: 100%; height: 100%; border: 0;
}

.lfe-albums {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 1rem;
  margin: 1rem 0 2rem;
}
.lfe-album {
  display: block; text-decoration: none; text-align: center;
  border-radius: .5rem; overflow: hidden; background: #f5f5f5;
}
.lfe-album img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; display: block; }
.lfe-album span { display: block; padding: .6rem; font-family: 'Chelsea Market', Arial, sans-serif; color: var(--lfe-gris); }
.lfe-album:hover img { opacity: .85; }

.lfe-footer { text-align: center; font-size: .95rem; }
.lfe-footer img { display: inline-block; }
/* En-tête : fond blanc, logo et menu centrés */
.container-header {
  background-color: #fff;
  background-image: none;
  box-shadow: none;
  border-bottom: 1px solid #e5e5e5;
}
.container-header .grid-child {
  justify-content: center;
}
.container-header .navbar-brand {
  margin-inline: auto;
  text-align: center;
}
.container-header .brand-logo img {
  max-height: 180px;
  width: auto;
}
/* Menu centré, texte gris (au lieu de blanc) */
.container-header .container-nav {
  justify-content: center;
}
.container-header .mod-menu a,
.container-header .metismenu a,
.container-header .metismenu button,
.container-header .site-description {
  color: #7a7a7a;
}
.container-header .mod-menu a:hover,
.container-header .metismenu a:hover {
  color: #033497;
}
/* Bouton menu sur mobile (☰) visible sur fond blanc */
.container-header .navbar-toggler {
  color: #7a7a7a;
  border-color: #7a7a7a;
}