/* footer-overrides-f4448cd9.css — extracted from inline styles */
/* ── Footer: black background ── */
.footer-wrapper { background-color: #000 !important; }
.logos-wrap { background-color: #000 !important; }

/* ── Footer: column heading left-border accent ── */
.footer-title {
  border-left: 3px solid #e8590c !important;
  padding-left: 12px !important;
}

/* ── Footer: nav link hover → orange ── */
.footer .nav-link.white:hover,
.footer .nav-link:hover {
  color: #e8590c !important;
  transition: color 0.25s ease;
}

/* ── Footer: normalise all payment icons to 28px height ── */
.logos-wrap .logo-box {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 4px 8px !important;
  height: auto !important;
  min-width: 64px !important;
}
.logos-wrap .payment-logo {
  height: 32px !important;
  width: 64px !important;
  object-fit: contain !important;
  object-position: center !important;
}
/* Apple Pay and Google Pay have large internal border frames — boost their size */
.logos-wrap .payment-logo.custom-logo {
  height: 44px !important;
  width: 88px !important;
}

/* ── Footer: uniform spacing ── */
/* Standardised to 90px to match all other sections */
.footer-wrapper {
  padding-top: 90px !important;
}
/* Match section standard */
.footer-middle {
  padding-bottom: 90px !important;
}
/* Tighten payment icons row padding */
.logos-wrap {
  padding-top: 28px !important;
  padding-bottom: 28px !important;
}
/* Ensure CONTACT column items have consistent vertical rhythm */
.footer .social-media-flex {
  margin-bottom: 28px !important;
}
.footer .footer-contact-item,
.footer .nav-menu-list-item .footer-address {
  margin-bottom: 28px !important;
}

/* ── Footer: visible email address ── */
.footer-email-address {
  display: block;
  font-size: 13px;
  color: #888;
  letter-spacing: 0.05em;
  margin-top: 4px;
  font-family: inherit;
}

/* ── Open/Closed badge ── */
.hours-status-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  margin-top: 6px;
  color: #888;
}
.hours-status-badge .status-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #888;
  flex-shrink: 0;
}
.hours-status-badge.open .status-dot { background: #4caf50; }
.hours-status-badge.open .status-text { color: #4caf50; }
.hours-status-badge.closed .status-dot { background: #888; }
.hours-status-badge.closed .status-text { color: #888; }
/* ── Mobile: single-column footer stack ── */
@media screen and (max-width: 767px) {
  .footer-pages-grid {
    display: flex !important;
    flex-direction: column !important;
  }
}