/* CARQUBIT V80: mejoras progresivas, sin modificar header/footer aprobados. */
:root { --cq-focus:#ef5123; }
html { scroll-behavior:smooth; scroll-padding-top:90px; }
body { -webkit-text-size-adjust:100%; }
:where(a,button,input,select,textarea,[tabindex]):focus-visible { outline:3px solid var(--cq-focus)!important; outline-offset:3px!important; }
:where(button,input,select,textarea) { font:inherit; }
:where(button,.btn,.cq-primary) { cursor:pointer; }
:where(.cq-catalog-public,.cq-detail-public) p { line-height:1.6; }
:where(.cq-catalog-public,.cq-detail-public) .catalog-filters label { line-height:1.45; }
:where(.cq-catalog-public,.cq-detail-public) img { max-width:100%; }
:where(.cq-catalog-public,.cq-detail-public) .grid > * { min-width:0; }
:where(.cq-catalog-public,.cq-detail-public) .results-count { font-size:0.95rem; }
@media (max-width:600px) {
  .cq-catalog-public .grid { gap:12px; }
  .cq-catalog-public .grid > * { min-width:0; }
  .cq-catalog-public .catalog-filters input,
  .cq-catalog-public .catalog-filters select { min-height:44px; }
  .cq-catalog-public .catalog-filters button { min-height:44px; }
}
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto!important; }
  *,*::before,*::after { animation-duration:0.01ms!important; animation-iteration-count:1!important; transition-duration:0.01ms!important; }
}
