/* Overrides for páginas públicas secundarias */
body {
  background: var(--bg) !important;
  color: var(--text) !important;
  font-family: var(--font) !important;
}
.header a:not(.btn-nav-login), .nav a:not(.btn-nav-login) { color: var(--text) !important; }
.header a:focus-visible, .nav a:focus-visible { outline-color: var(--blue); }
.card, .info-row, .empty {
  background: var(--card);
  border-color: var(--line);
  color: var(--text);
  box-shadow: var(--shadow-sm);
}
#contenido.container {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
.card h2, .card h3, .info-row strong, .cta strong, main.container h1, main.container h2 { color: var(--text) !important; }
.card p, .info-row p, .info-row a, .cta span, .empty, .footer { color: var(--muted) !important; }
.cta { background: var(--accent-soft); border-color: var(--line); }
.search {
  background: var(--surface);
  color: var(--text);
  border-color: var(--line);
  transition: border-color 180ms ease, box-shadow 180ms ease;
}
.search:focus { border-color: var(--blue); box-shadow: 0 0 0 4px rgba(21, 94, 239, .12); }
.product-body h3 { color: var(--text); }
.footer-links a { color: var(--muted) !important; }
.footer-links a:hover { color: var(--blue) !important; }
.card, .info-row, .product-card {
  transition: transform 200ms ease, box-shadow 200ms ease, border-color 200ms ease;
}
.card:focus-within, .info-row:focus-within, .product-card:focus-within {
  border-color: rgba(21, 94, 239, .3);
  box-shadow: var(--shadow-hover);
}
@media (hover: hover) and (pointer: fine) {
  .card:hover, .info-row:hover, .product-card:hover {
    transform: translateY(-3px);
    box-shadow: var(--shadow-hover);
  }
  .header a:not(.btn-nav-login):hover, .nav a:not(.btn-nav-login):hover { color: var(--blue) !important; }
}
.button, .btn-nav-login { transition: transform 0.2s ease, box-shadow 0.2s ease; }
.contact-grid, .catalog-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr)); gap: var(--space-6); }

@media (prefers-reduced-motion: reduce) {
  .card, .info-row, .product-card, .button, .btn-nav-login, .search { transition: none; }
  .card:hover, .info-row:hover, .product-card:hover { transform: none; }
}
