/* ------------------------------------------------------------------
   Accesibilidad WCAG 2.1 AA — Variavista, 31/08/2026
   Correcciones del requerimiento de Red.es sobre el acuerdo
   KD/0000952350. Cada bloque indica el criterio y la medición previa.
   ------------------------------------------------------------------ */

/* 1.4.3 Contraste minimo.
   El boton "Aceptar" del banner de cookies servia texto blanco sobre un
   degradado naranja claro: relacion medida 1,27 frente al 4,5 exigido.
   Se le pone el mismo texto oscuro que ya usan sus botones hermanos. */
.cmplz-cookiebanner .cmplz-btn.cmplz-accept,
.cmplz-cookiebanner .cmplz-btn.cmplz-accept:hover,
.cmplz-cookiebanner .cmplz-btn.cmplz-accept:focus {
  color: #1a171b !important;
}

/* 1.4.3 La nota "powered by" del widget de resenas iba en #777777 sobre
   #f8f8f8: relacion 4,22. */
.wp-google-powered.wp-google-powered,
.rpi .wp-google-powered,
.grw-header .wp-google-powered {
  color: #595959 !important;
}
/* Las letras de colores de "Google" son el logotipo de la marca, que la
   propia norma excluye del requisito de contraste, y se dejan como estan. */

/* 1.4.3 La puntuacion numerica en naranja daba 2,20. */
.rpi-stars,
.rpi-rating,
.wp-google-rating {
  color: #8a4500 !important;
}

/* 2.5.8 Tamano del area en la que se puede hacer clic.
   Los puntos del carrusel de resenas median 8x8 y 7x7 px. El plugin fija
   ese tamano con !important, asi que se invierte el planteamiento: el
   boton pasa a medir 24x24 y transparente, y el punto que se ve lo dibuja
   un pseudo-elemento centrado. Se conserva el aspecto y el area que
   recibe la pulsacion cumple el minimo. */
.rpi-dots .rpi-dot,
.grw-dots .rpi-dot,
.rpi-dot {
  position: relative !important;
  width: 24px !important;
  height: 24px !important;
  min-width: 24px !important;
  min-height: 24px !important;
  padding: 0 !important;
  border: 0 !important;
  background-color: transparent !important;
  transform: none !important;   /* el plugin encogia los puntos con scale() */
  opacity: 1 !important;
}
.rpi-dots .rpi-dot::after,
.grw-dots .rpi-dot::after,
.rpi-dot::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: #999999;
  opacity: 0.4;
}
.rpi-dots .rpi-dot.active::after,
.rpi-dot.active::after {
  background-color: #8a4500;   /* el naranja original no llegaba al contraste */
  opacity: 1;
}


/* 2.5.8 El plugin encoge los puntos con scale() desde selectores mas
   especificos (.active 0,95 · .s2 0,85 · .s3 0,65), lo que dejaba el area
   real en 23x23 y 20x20. Se anula con la misma especificidad. */
.rpi-dots .rpi-dot.active,
.rpi-dots .rpi-dot.s1,
.rpi-dots .rpi-dot.s2,
.rpi-dots .rpi-dot.s3,
.grw-dots .rpi-dot.active,
.grw-dots .rpi-dot.s2,
.grw-dots .rpi-dot.s3 {
  transform: none !important;
  width: 24px !important;
  height: 24px !important;
  opacity: 1 !important;
}
/* El tamano relativo que daba el scale se conserva en el punto visible. */
.rpi-dot.s2::after { width: 7px; height: 7px; }
.rpi-dot.s3::after { width: 6px; height: 6px; }

/* 2.5.8 Flechas del carrusel y aspa de cierre del banner de cookies
   (medida previa: 20x20 px). */
.rpi-ltgt,
.grw-prev,
.grw-next,
.cmplz-cookiebanner .cmplz-close {
  min-width: 24px;
  min-height: 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

/* 2.5.8 Enlaces de navegacion y de pie de pagina: altura suficiente y
   separacion entre ellos. No se tocan los enlaces que van dentro de un
   parrafo, que la propia norma exceptua por ir en linea con el texto. */
.elementor-nav-menu a,
.cmplz-links a,
footer .menu a,
.sr-footer a,
.sr-servicios-footer-list a,
.sr-servicios-footer-list li > a,
.wp-google-name,
.wp-google-name a,
.grw-header-inner .wp-google-name,
.rpi-flx > a {
  display: inline-block;
  min-height: 24px;
  padding-block: 3px;
  line-height: 1.5;
}

/* Los enlaces del pie van uno debajo de otro: ademas del alto minimo,
   se les da separacion para que sus areas no se toquen. */
.sr-servicios-footer-list li {
  margin-block: 2px;
}

/* 2.4.7 El foco del teclado tiene que verse. */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
[tabindex]:focus-visible {
  outline: 3px solid #1a5fb4;
  outline-offset: 2px;
}

/* 1.4.3 Contraste sobre la foto del encabezado.
   El pase de imagenes del hero ya lleva un velo azul al 50 %, pero en los
   fotogramas con una zona muy iluminada el subtitulo (texto blanco de
   19 px) se quedaba en 1,73 sobre el 4,5 exigido, medido sobre los
   pixeles reales de la pagina. Se refuerza el velo hasta que el peor
   fotograma del pase supera el umbral con margen, sin apagar la foto. */
.elementor-element-3df4f04a::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.60);
  pointer-events: none;
  z-index: 1;
}
.elementor-element-3df4f04a > .e-con-inner {
  position: relative;
  z-index: 2;
}
