/* Mobile-only alignment: centered Casa Mayor wordmark and centered footer. */
@media (max-width: 650px) {
  .topbar { position: relative !important; display: flex !important; align-items: center !important; justify-content: center !important; padding: 0 18px !important; }
  .topbar .identity { position: absolute !important; left: 50% !important; top: 50% !important; transform: translate(-50%, -50%) !important; margin: 0 !important; width: 170px !important; min-width: 0 !important; height: 100% !important; display: flex !important; align-items: center !important; justify-content: center !important; }
  .topbar .identity .brand-wordmark { width: 165px !important; max-width: 100% !important; }
  .topbar .identity::before { left: 32px !important; }
  .topbar .identity::after { right: 32px !important; }
  .topbar .hamburger { position: absolute !important; right: 19px !important; top: 50% !important; transform: translateY(-50%) !important; margin: 0 !important; z-index: 5 !important; }
  .topbar nav:not(.open) { display: none !important; }
  .topbar nav.open { position: absolute !important; left: 0 !important; right: 0 !important; width: 100% !important; }
  .site-footer, .site-footer .footer-shell { text-align: center !important; }
  .site-footer .footer-intro { grid-template-columns: minmax(0, 1fr) !important; justify-items: center !important; text-align: center !important; }
  .site-footer .footer-intro-copy, .site-footer .footer-intro-action { width: 100% !important; text-align: center !important; }
  .site-footer .footer-intro-action p { margin-left: auto !important; margin-right: auto !important; }
  .site-footer .footer-directory { grid-template-columns: minmax(0, 1fr) !important; justify-items: center !important; gap: 34px !important; }
  .site-footer .footer-brand { grid-column: auto !important; display: flex !important; flex-direction: column !important; align-items: center !important; }
  .site-footer .footer-brand a { display: inline-flex !important; justify-content: center !important; }
  .site-footer .footer-brand p { text-align: center !important; }
  .site-footer .footer-directory nav { width: 100% !important; align-items: center !important; text-align: center !important; gap: 12px !important; }
  .site-footer .footer-directory nav h3 { text-align: center !important; }
  .site-footer .footer-retailer { text-align: center !important; }
  .site-footer .footer-legal { display: flex !important; flex-direction: column !important; align-items: center !important; justify-content: center !important; text-align: center !important; gap: 18px !important; }
  .site-footer .footer-valentia { justify-content: center !important; }
}

/* Crisp vector Valentia360 attribution: consistent size and no raster scaling */
.site-footer .footer-valentia img { width: 180px !important; max-width: 180px !important; height: auto !important; image-rendering: auto !important; mix-blend-mode: normal !important; }
/* Final mobile layout: viewport-centered wordmark, independent of menu width. */
@media (max-width: 650px) {
  .topbar { position: relative !important; justify-content: center !important; }
  .topbar > a.identity { position: absolute !important; inset: 0 auto auto 50% !important; transform: translateX(-50%) !important; height: 100% !important; width: 180px !important; min-width: 0 !important; display: flex !important; justify-content: center !important; align-items: center !important; z-index: 2 !important; }
  .topbar .identity .brand-wordmark { width: 174px !important; max-height: 36px !important; }
  .topbar .identity .brand-cheese-mark { left: 50% !important; transform: translateX(-50%) !important; }
  .topbar .identity::before { left: 35px !important; }
  .topbar .identity::after { right: 35px !important; }
  .topbar > .hamburger { position: absolute !important; right: 18px !important; top: 50% !important; transform: translateY(-50%) !important; z-index: 6 !important; color: #203c2b !important; }
  .site-footer .footer-shell { text-align: center !important; }
  .site-footer .footer-directory { display: grid !important; grid-template-columns: minmax(0,1fr) !important; justify-items: center !important; gap: 35px !important; }
  .site-footer .footer-brand { grid-column: 1 / -1 !important; width: 100% !important; align-items: center !important; justify-content: center !important; text-align: center !important; }
  .site-footer .footer-brand p { margin-left: auto !important; margin-right: auto !important; text-align: center !important; }
  .site-footer .footer-directory nav { width: 100% !important; align-items: center !important; justify-content: center !important; text-align: center !important; }
  .site-footer .footer-directory nav h3, .site-footer .footer-directory nav a { text-align: center !important; }
  .site-footer .footer-retailer { text-align: center !important; }
  .site-footer .footer-retailer .retailer-badge { display: block !important; margin: 0 auto 12px !important; }
  .site-footer .footer-legal { align-items: center !important; justify-content: center !important; text-align: center !important; }
  .site-footer .footer-valentia { margin-left: auto !important; margin-right: auto !important; }
}
