/* 101dalmatas.es — Accesibilidad (sandbox plugin)
   Cada bloque documenta el criterio WCAG que resuelve. */

/* 2.4.7 Foco visible — anillo de alto contraste con doble borde (visible sobre fondos claros y oscuros) */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
[tabindex]:focus-visible,
.elementor-button:focus-visible {
	outline: 3px solid #ffffff !important;
	outline-offset: 2px !important;
	box-shadow: 0 0 0 5px #8A0F14 !important;
	border-radius: 2px;
}
/* Fallback para navegadores sin :focus-visible */
a:focus,
button:focus,
input:focus,
select:focus,
textarea:focus,
[tabindex]:focus {
	outline: 3px solid #ffffff;
	outline-offset: 2px;
	box-shadow: 0 0 0 5px #8A0F14;
}

/* 2.4.1 Bloques de bypass — enlace "Ir al contenido" visible al recibir foco */
.skip-link.screen-reader-text:focus {
	position: fixed !important;
	left: 8px !important;
	top: 8px !important;
	width: auto !important;
	height: auto !important;
	clip: auto !important;
	clip-path: none !important;
	overflow: visible !important;
	background: #8A0F14;
	color: #fff;
	padding: 12px 18px;
	z-index: 999999;
	font-weight: 700;
	text-decoration: none;
	border-radius: 4px;
}

/* 1.4.13 / 2.5.5 — asegura un área mínima de toque en móvil para el conmutador de idioma e iconos sociales */
@media (max-width: 767px) {
	.gt-selected,
	.elementor-social-icons-wrapper .elementor-icon {
		min-height: 44px;
		min-width: 44px;
	}
}

/* 2.3.3 / 2.2.2 — respeta la preferencia de movimiento reducido del usuario */
@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		animation-duration: 0.001ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.001ms !important;
		scroll-behavior: auto !important;
	}
}

/* 1.4.3 Contraste — ajustes puntuales manteniendo el branding (ver informe para detalle de cada regla) */
.gt_float_switcher .gt-current-lang .gt-lang-code {
	color: #1A1A1A;
}

/* 3.3.2 — indicación visible de campo obligatorio en formularios (además de required) */
.a11y-required-mark {
	color: #8A0F14;
	font-weight: 700;
}
.a11y-required-legend {
	font-size: 0.85em;
	color: #4A4A4A;
	margin: 0 0 12px;
}

/* Mejora visual (no WCAG): la imagen de portada que enlaza al vídeo de YouTube
   crece ligeramente al pasar el ratón o recibir el foco, para dar pista visual
   de que es interactiva. Respeta prefers-reduced-motion (regla ya definida
   arriba desactiva la transición para quien lo haya pedido). */
.elementor-element-0c05b53 img {
	border-radius: 19px !important; /* Elementor's own frontend.min.css sets .elementor img{border-radius:0} y carga después */
	transition: transform 0.25s ease;
	will-change: transform;
}
.elementor-element-0c05b53:hover img,
.elementor-element-0c05b53 a:focus-visible img {
	transform: scale(1.04);
}
