/*
 * Egbe Ile Ire Aye — shared site chrome for the standalone pages under public/.
 *
 * The event flyers are hand-authored, self-contained HTML with their own
 * bespoke palettes and their own `* { margin:0; padding:0 }` resets. So every
 * rule here is class-scoped under `egbe-` and states its own box metrics
 * rather than relying on UA defaults. Nothing in this file styles a bare
 * element selector, so it cannot leak into a flyer's own layout.
 *
 * Used by public/events/*.html. Keep the disclaimer wording in sync with
 * src/components/landing/Footer.tsx, which is the React equivalent.
 */

.egbe-masthead,
.egbe-sitefooter {
  --egbe-gold: #c8a84b;
  --egbe-ink: #120b04;
  --egbe-cream: #faf5e4;
  --egbe-muted: rgba(250, 245, 228, 0.72);
  box-sizing: border-box;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  /* Flyers style bare `header`/`footer` selectors. Neutralise the inheritable
     ones so a host page's typography cannot bleed into the shared chrome. */
  letter-spacing: normal;
  text-transform: none;
  font-style: normal;
  opacity: 1;
}

.egbe-masthead *,
.egbe-sitefooter * {
  box-sizing: border-box;
}

/* ── MASTHEAD ─────────────────────────────────────────────── */

.egbe-masthead {
  display: block;
  background: var(--egbe-ink);
  border-bottom: 1px solid rgba(200, 168, 75, 0.35);
  padding: 14px 20px;
}

.egbe-masthead__inner {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  max-width: 900px;
  margin: 0 auto;
  text-decoration: none;
  color: var(--egbe-cream);
}

.egbe-masthead__logo {
  display: block;
  width: 46px;
  height: 46px;
  border-radius: 50%;
  object-fit: cover;
  background: #fff;
  border: 2px solid var(--egbe-gold);
  flex: none;
}

.egbe-masthead__text {
  display: block;
  line-height: 1.25;
}

.egbe-masthead__name {
  display: block;
  font-family: 'Cinzel', 'Cormorant Garamond', Georgia, serif;
  font-size: 1.05rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  color: var(--egbe-gold);
  margin: 0;
}

.egbe-masthead__tag {
  display: block;
  font-size: 0.72rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--egbe-muted);
  margin: 2px 0 0;
}

/* ── FOOTER ───────────────────────────────────────────────── */

.egbe-sitefooter {
  display: block;
  background: var(--egbe-ink);
  border-top: 1px solid rgba(200, 168, 75, 0.35);
  color: var(--egbe-cream);
  padding: 40px 20px 28px;
  margin: 0;
  text-align: left;
  font-size: 0.88rem;
  line-height: 1.65;
}

.egbe-sitefooter__inner {
  max-width: 900px;
  margin: 0 auto;
}

.egbe-sitefooter__brand {
  display: flex;
  align-items: center;
  gap: 14px;
  margin: 0 0 22px;
}

.egbe-sitefooter__logo {
  display: block;
  width: 58px;
  height: 58px;
  border-radius: 50%;
  object-fit: cover;
  background: #fff;
  border: 2px solid var(--egbe-gold);
  flex: none;
}

.egbe-sitefooter__name {
  font-family: 'Cinzel', 'Cormorant Garamond', Georgia, serif;
  font-size: 1.15rem;
  font-weight: 700;
  color: var(--egbe-gold);
  margin: 0;
  letter-spacing: 0.04em;
}

.egbe-sitefooter__mission {
  color: var(--egbe-muted);
  margin: 4px 0 0;
  max-width: 46ch;
  font-size: 0.84rem;
}

.egbe-sitefooter__cols {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 26px;
  padding: 22px 0;
  border-top: 1px solid rgba(200, 168, 75, 0.22);
  border-bottom: 1px solid rgba(200, 168, 75, 0.22);
}

.egbe-sitefooter__heading {
  font-family: 'Cinzel', 'Cormorant Garamond', Georgia, serif;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--egbe-gold);
  margin: 0 0 10px;
}

.egbe-sitefooter__list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.egbe-sitefooter__list li {
  margin: 0 0 6px;
  padding: 0;
  color: var(--egbe-muted);
}

.egbe-sitefooter a {
  color: var(--egbe-cream);
  text-decoration: underline;
  text-underline-offset: 3px;
}

.egbe-sitefooter a:hover,
.egbe-sitefooter a:focus-visible {
  color: var(--egbe-gold);
}

.egbe-sitefooter__legal {
  padding: 20px 0 0;
  color: var(--egbe-muted);
  font-size: 0.76rem;
  line-height: 1.6;
}

.egbe-sitefooter__legal p {
  margin: 0 0 9px;
}

.egbe-sitefooter__legal strong {
  color: rgba(250, 245, 228, 0.92);
}

.egbe-sitefooter__copyright {
  margin: 16px 0 0;
  padding: 14px 0 0;
  border-top: 1px solid rgba(200, 168, 75, 0.22);
  color: var(--egbe-muted);
  font-size: 0.76rem;
  text-align: center;
}

@media (max-width: 640px) {
  .egbe-sitefooter__cols {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .egbe-masthead__inner {
    gap: 10px;
  }

  .egbe-masthead__name {
    font-size: 0.95rem;
  }
}

@media print {
  .egbe-masthead,
  .egbe-sitefooter {
    background: #fff;
    color: #000;
  }
}
