/* ============================================================
   Alb's Events — Footer
   Fond sombre, structure claire : marque + nav + contact, puis
   barre légale. Police : Satoshi. Accent : #e28e2a
   ============================================================ */

.ftr {
  --ftr-bg:     #15140f;
  --ftr-text:   #f4f1ea;
  --ftr-text-2: #9a948a;
  --ftr-line:   rgba(244,241,234,0.12);
  --ftr-accent: #e28e2a;
  background: var(--ftr-bg);
  color: var(--ftr-text);
  padding: clamp(3.5rem, 7vh, 5rem) clamp(1.5rem, 6vw, 2.5rem) 1.75rem;
}
.ftr-inner { max-width: 78rem; margin: 0 auto; }

.ftr-top {
  display: grid;
  grid-template-columns: 1.6fr 1fr 1fr 1fr;
  gap: clamp(2.5rem, 5vw, 4rem);
  padding-bottom: clamp(2.5rem, 5vh, 3.5rem);
  border-bottom: 1px solid var(--ftr-line);
}

.ftr-logo { height: 1.9rem; width: auto; filter: brightness(0) invert(1); }
.ftr-tagline { margin: 1.1rem 0 0; max-width: 30ch; font-size: 0.92rem; line-height: 1.6; color: var(--ftr-text-2); }
.ftr-cta {
  display: inline-flex; align-items: center; gap: 0.5rem; margin-top: 1.5rem;
  padding: 0.7rem 1.25rem; border-radius: 999px;
  background: var(--ftr-accent); color: #15140f; font-size: 0.85rem; font-weight: 700;
  text-decoration: none; transition: transform 0.2s, background-color 0.2s;
}
.ftr-cta svg { width: 1rem; height: 1rem; }
.ftr-cta:hover { background: #f0a850; transform: translateY(-1px); }

.ftr-col { display: flex; flex-direction: column; gap: 0.85rem; }
.ftr-col h3 {
  margin: 0 0 0.3rem; font-size: 0.74rem; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase;
  color: var(--ftr-text-2);
}
.ftr-link {
  color: var(--ftr-text); font-size: 0.92rem; text-decoration: none; opacity: 0.88;
  transition: opacity 0.2s, color 0.2s;
}
.ftr-link:hover { opacity: 1; color: var(--ftr-accent); }

.ftr-bottom {
  display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; flex-wrap: wrap;
  padding-top: 1.5rem;
}
.ftr-copy { margin: 0; font-size: 0.82rem; color: var(--ftr-text-2); }
.ftr-copy a { color: var(--ftr-text-2); text-decoration: underline; text-decoration-color: var(--ftr-line); }
.ftr-copy a:hover { color: var(--ftr-text); }

.ftr-social { display: flex; align-items: center; gap: 0.6rem; }
.ftr-social-link {
  display: flex; align-items: center; justify-content: center;
  width: 2.2rem; height: 2.2rem; border-radius: 50%;
  background: rgba(244,241,234,0.08);
  transition: background-color 0.2s, transform 0.2s;
}
.ftr-social-link:hover { background: var(--ftr-accent); transform: translateY(-2px); }
.ftr-social-link img { width: 0.9rem; height: 0.9rem; filter: brightness(0) invert(1); }

@media (max-width: 900px) {
  .ftr-top { grid-template-columns: 1fr 1fr; row-gap: 2.5rem; }
  .ftr-brand { grid-column: 1 / -1; }
}
@media (max-width: 560px) {
  .ftr-top { grid-template-columns: 1fr; }
  .ftr-bottom { flex-direction: column; align-items: flex-start; gap: 1rem; }
}
