/* Correcciones puntuales: no altera configuracion ni comportamiento comercial. */
/* Fallback neutro: cada componente puede conservar un foco propio mas sutil. */
html body :is(a, button, input, select, textarea, [tabindex]):focus-visible {
  outline: 1px solid currentColor;
  outline-offset: 3px;
  box-shadow: none;
}
/* El buscador comunica el foco en el contenedor, sin dibujar un rectangulo interno. */
html body .hausar-global-search-input:focus-visible {
  outline: none;
  box-shadow: none;
}
html body .hausar-global-search-form {
  transition: background-color 180ms ease, box-shadow 180ms ease;
}
html body .hausar-global-search-form:focus-within {
  background: rgba(255, 255, 255, .15);
  box-shadow: 0 1px 6px rgba(0, 0, 0, .12), inset 0 0 0 1px rgba(255, 255, 255, .48);
}
.hausar-skip-link {
  position: fixed;
  top: 12px;
  left: 12px;
  z-index: 20000;
  padding: 12px 18px;
  background: #fff;
  color: #111;
  font: 600 16px/1.5 "Work Sans", sans-serif;
  transform: translateY(-200%);
}
.hausar-skip-link:focus { transform: none; color: #111; }
#contenido-principal { scroll-margin-top: 100px; }
.hausar-policy-link { text-decoration: underline !important; text-underline-offset: 3px; }
.hausar-footer .hausar-policy-link { color: #fff; }
.hausar-footer-bottom-layout { flex-wrap: wrap; gap: 20px; }
.hausar-footer-bottom .hausar-policy-link { font-size: 14px; line-height: 1.5; }
.hausar-contact-routing-head h2 { color: #141414; }
.hausar-contact-channel span,
.hausar-contact-route-card p { color: #666; }
.hausar-contact-route-card:is(:hover, :focus-visible) .hausar-contact-route-number { color: #fff; }
.dev-hero .dev-eyebrow { color: #fff; }
.dev-section:not(.dev-dark) h2,
.dev-benefit-grid h3 { color: #171717; }
.hausar-contact-field :is(input, select, textarea),
.dev-form :is(input, textarea) { border-color: #767676; }
.hausar-product-tech-button,
.hausar-product-tech-button:hover,
.hausar-product-tech-button:focus { background: #555; color: #fff; }
.ui-to-top,
.ui-to-top:hover,
.ui-to-top:focus { background: #242424; color: #fff; }
.ui-to-top:focus-visible { transform: translate3d(0, 0, 0); }
.dev-form :is(input, textarea)::placeholder { color: #626262; opacity: 1; }
.hausar-footer-form input::placeholder { color: #606060; opacity: 1; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto !important; }
  .hausar-skip-link { transition: none; }
  .hausar-global-search-form { transition: none; }
}
