.public-site-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 70px;
  /* Sin --safe-top, en la PWA instalada (standalone) el header quedaba
     tapado por los íconos del status bar — este header es el único que no
     lo tenía de los headers del sitio. */
  padding: calc(12px + var(--safe-top)) 0 22px;
  border-bottom: 1px solid rgba(242, 241, 233, 0.12);
}

.public-site-header__brand {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: inherit;
  font-size: 2.7rem;
  line-height: 1;
  text-decoration: none;
}

.public-site-header__actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
}

.public-site-footer .locale-switch-slot {
  display: inline-flex;
  width: auto;
}

/* "Palco VIP" es un <a> y "Mi cuenta" un <button>: con display por defecto los
   navegadores les arman cajas distintas y se veían de distinto tamaño aunque
   compartan clase. inline-flex + min-height los iguala. */
.public-site-header__action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  box-sizing: border-box;
  border: 1px solid rgba(229, 184, 78, 0.6);
  border-radius: 9px;
  background: transparent;
  color: #e5b84e;
  padding: 0 14px;
  font: 750 0.86rem/1 inherit;
  text-decoration: none;
  cursor: pointer;
}

.public-site-header__action--palco {
  border-color: #dc4b4b;
  background: #c93636;
  color: #fff7ed;
}

.public-site-header__action--palco:hover {
  border-color: #ff7777;
  background: #dd4141;
}

.public-site-footer {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 24px;
  padding: 38px 0;
  border-top: 1px solid rgba(242, 241, 233, 0.12);
  color: rgba(242, 241, 233, 0.52);
  font-size: 0.8rem;
  text-align: center;
}

.public-site-footer__brand { display: grid; gap: 10px; }
.public-site-footer strong { color: #f2f1e9; font: 800 1rem/1 var(--font); }
.public-site-footer__brand p { margin: 0; color: #e5b84e; font: 800 0.86rem/1.35 var(--font); }
.public-site-footer nav { display: flex; flex-wrap: wrap; justify-content: center; gap: 18px; }
.public-site-footer a { color: rgba(242, 241, 233, 0.62); text-decoration: none; }
.public-site-footer a:hover { color: #e5b84e; }

@media (max-width: 420px) {
  .public-site-header__actions { gap: 7px; }
  .public-site-header__action { min-height: 34px; padding: 0 10px; font-size: 0.78rem; }
  .public-site-footer .locale-switch-btn { padding: 6px 7px; font-size: 0.68rem; }
}
