/* ╔══════════════════════════════════════════════════════════════════════
 * ║  WTI Cookies 2.1.0 — Aviso de cookies 2027
 * ║  2026-09-26 · Mini-Spec Welcome/docs/specs/2026-09-26_cookies-2027.md
 * ║  2.1.0: el marcador de contenido bloqueado llena la caja del mapa
 * ║  interactivo del tema (.wtic-blocked-ph--caja) mientras espera permiso.
 * ║  Maqueta aprobada: Welcome 2027/maqueta-cookies-2027.html
 * ║
 * ║  - Colores y letras del tema (panel Estilos, variables --wti-*), con
 * ║    los valores de la casa por si el tema no los declara.
 * ║  - «Rechazar» y «Aceptar» gemelos (mismo tamaño, color y fila): AEPD 2023.
 * ║  - Móvil: barra baja compacta; la página se sigue viendo y moviendo.
 * ║  - Reglas con #id y algunos !important: el kit de Elementor y la base del
 * ║    tema pintan todos los <button> y <a>; sin esto el aviso salía con
 * ║    colores y bordes ajenos (y el atributo [hidden] no ocultaba).
 * ║  - Sin fuentes externas: usa las que ya carga el tema.
 * ║  Nombre con versión a propósito (WP Rocket cachea los estáticos un año).
 * ╚══════════════════════════════════════════════════════════════════════ */

#wti-cookies-banner,
#wti-cookies-floating,
.wti-ck-velo,
.wti-ck-pol,
.wti-ck-estado,
.wtic-blocked-ph,
.wti-cookies-open-settings,
.wti-cookies-revoke {
	--ck-naranja: var(--wti-naranja, #F57C00);
	--ck-marron: var(--wti-marron, #7A5238);
	--ck-tinta: var(--wti-tinta, #1B1512);
	--ck-texto: #3A3430;
	--ck-gris: var(--wti-gris, #8A817B);
	--ck-gris-c: var(--wti-gris-claro, #A79C93);
	--ck-crema: var(--wti-crema, #F2E6D8);
	--ck-crema-borde: var(--wti-crema-borde, #FFF4E5);
	--ck-crema-fondo: var(--wti-crema-fondo, #FBF7F2);
	--ck-linea: var(--wti-linea, #E8E2DA);
	--ck-linea-s: var(--wti-linea-suave, #F0EAE2);
	--ck-titulos: var(--wti-titulos, "Oswald", "Archivo Narrow", Impact, sans-serif);
	--ck-sistema: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
	/* Pareja de botones: marrón (aprobado por Angel 2026-09-26) */
	--ck-par-fondo: var(--ck-marron);
	--ck-par-texto: #fff;
	--ck-par-fondo-h: var(--ck-tinta);
}

.wti-cookies-hidden { display: none !important; }
#wti-cookies-banner [hidden],
#wti-cookies-floating [hidden],
.wti-ck-velo[hidden] { display: none !important; }

/* ==========================================================================
   LA TARJETA / BARRA
   ========================================================================== */
#wti-cookies-banner {
	box-sizing: border-box;
	position: fixed;
	z-index: 999998;
	right: 26px;
	bottom: 26px;
	width: 460px;
	max-width: calc(100vw - 32px);
	max-height: calc(100vh - 52px);
	max-height: calc(100dvh - 52px);
	display: flex;
	flex-direction: column;
	overflow: hidden;
	background: #fff;
	color: var(--ck-tinta);
	border-radius: 18px;
	box-shadow: 0 1px 2px rgba(27, 21, 18, .06), 0 22px 50px -20px rgba(27, 21, 18, .45);
	font-family: var(--ck-sistema);
	font-size: 14px;
	line-height: 1.6;
	text-align: left;
	-webkit-font-smoothing: antialiased;
	animation: wti-ck-sube .45s cubic-bezier(.2, .8, .2, 1);
}
#wti-cookies-banner *,
#wti-cookies-banner *::before,
#wti-cookies-banner *::after { box-sizing: border-box; }
#wti-cookies-banner.wti-cookies-hidden { display: none !important; }
#wti-cookies-banner.wti-ck--pos-bottom-left { right: auto; left: 26px; }
#wti-cookies-banner.wti-ck--pos-bottom { right: auto; left: 50%; transform: translateX(-50%); animation-name: wti-ck-sube-centro; }
#wti-cookies-banner.wti-ck--pos-center { right: auto; bottom: auto; left: 50%; top: 50%; transform: translate(-50%, -50%); animation-name: none; }

@keyframes wti-ck-sube { from { opacity: 0; transform: translateY(22px); } to { opacity: 1; transform: none; } }
@keyframes wti-ck-sube-centro { from { opacity: 0; transform: translate(-50%, 22px); } to { opacity: 1; transform: translate(-50%, 0); } }

#wti-cookies-banner .wti-ck-asa { display: none; }

#wti-cookies-banner .wti-ck-cab {
	position: relative;
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 20px 22px 0;
	flex: none;
}
#wti-cookies-banner .wti-ck-ico {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: var(--ck-crema);
	color: var(--ck-marron);
	display: grid;
	place-items: center;
	flex: none;
}
#wti-cookies-banner .wti-ck-ico svg { width: 22px; height: 22px; display: block; }
#wti-cookies-banner .wti-ck-tit {
	margin: 0;
	padding: 0 36px 0 0;
	font: 500 19px/1.15 var(--ck-titulos);
	letter-spacing: .025em;
	text-transform: uppercase;
	color: var(--ck-tinta) !important;
	outline: none;
}
#wti-cookies-banner .wti-ck-x {
	position: absolute;
	right: 14px;
	top: 14px;
	width: 34px !important;
	height: 34px !important;
	min-height: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	border-radius: 50% !important;
	border: 1px solid var(--ck-linea) !important;
	background: #fff !important;
	color: var(--ck-tinta) !important;
	display: grid;
	place-items: center;
	cursor: pointer;
	box-shadow: none !important;
}
#wti-cookies-banner .wti-ck-x svg { width: 16px; height: 16px; display: block; }
#wti-cookies-banner .wti-ck-x:hover,
#wti-cookies-banner .wti-ck-x:focus-visible { border-color: var(--ck-naranja) !important; color: var(--ck-naranja) !important; }

#wti-cookies-banner .wti-ck-cuerpo {
	padding: 11px 22px 0;
	overflow-y: auto;
	min-height: 0;
	flex: 1 1 auto;
	overscroll-behavior: contain;
}
#wti-cookies-banner .wti-ck-msg,
#wti-cookies-banner .wti-ck-msg p {
	margin: 0;
	font-size: 14px;
	line-height: 1.6;
	color: var(--ck-texto);
}
#wti-cookies-banner .wti-ck-msg a { color: var(--ck-marron) !important; text-decoration: underline; }
#wti-cookies-banner.is-prefs .wti-ck-msg.is-largo:not(.is-abierto) {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/* Botones de texto: «Leer más», enlaces de la fila de abajo */
#wti-cookies-banner .wti-ck-mas,
#wti-cookies-banner .wti-ck-l {
	position: relative;
	display: inline-block;
	width: auto !important;
	height: auto !important;
	min-height: 0 !important;
	margin: 0;
	padding: 0 0 2px !important;
	background: none !important;
	border: 0 !important;
	border-bottom: 2px solid var(--ck-naranja) !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	font: 500 13px/1.3 var(--ck-titulos) !important;
	letter-spacing: .06em;
	text-transform: uppercase;
	text-decoration: none !important;
	color: var(--ck-marron) !important;
	cursor: pointer;
	white-space: nowrap;
}
#wti-cookies-banner .wti-ck-mas { margin-top: 4px; font-size: 12.5px !important; }
#wti-cookies-banner .wti-ck-mas:hover,
#wti-cookies-banner .wti-ck-l:hover,
#wti-cookies-banner .wti-ck-mas:focus-visible,
#wti-cookies-banner .wti-ck-l:focus-visible { color: var(--ck-naranja) !important; }

/* Pie: pareja de botones + enlaces */
#wti-cookies-banner .wti-ck-pie {
	flex: none;
	padding: 16px 22px 18px;
	display: flex;
	flex-direction: column;
	gap: 13px;
	background: #fff;
}
#wti-cookies-banner.is-prefs .wti-ck-pie { border-top: 1px solid var(--ck-linea); margin-top: 14px; padding-top: 14px; }
#wti-cookies-banner .wti-ck-par { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
#wti-cookies-banner .wti-ck-b,
.wti-ck-pol .wti-ck-b,
.wti-cookies-open-settings {
	-webkit-appearance: none;
	appearance: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: auto;
	height: 46px !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 16px !important;
	border-radius: 999px !important;
	border: 1.5px solid var(--ck-par-fondo) !important;
	background: var(--ck-par-fondo) !important;
	color: var(--ck-par-texto) !important;
	font: 500 15px/1 var(--ck-titulos) !important;
	letter-spacing: .07em;
	text-transform: uppercase;
	text-decoration: none !important;
	white-space: nowrap;
	cursor: pointer;
	box-shadow: none !important;
	transition: background .18s ease, color .18s ease, border-color .18s ease;
}
#wti-cookies-banner .wti-ck-b:hover,
#wti-cookies-banner .wti-ck-b:focus-visible,
.wti-ck-pol .wti-ck-b:hover,
.wti-ck-pol .wti-ck-b:focus-visible,
.wti-cookies-open-settings:hover,
.wti-cookies-open-settings:focus-visible {
	background: var(--ck-par-fondo-h) !important;
	border-color: var(--ck-par-fondo-h) !important;
	color: var(--ck-par-texto) !important;
}
#wti-cookies-banner .wti-ck-b--sec {
	width: 100%;
	background: #fff !important;
	color: var(--ck-tinta) !important;
	border-color: #D9CFC3 !important;
}
#wti-cookies-banner .wti-ck-b--sec:hover,
#wti-cookies-banner .wti-ck-b--sec:focus-visible {
	background: var(--ck-crema-fondo) !important;
	border-color: var(--ck-marron) !important;
	color: var(--ck-tinta) !important;
}
#wti-cookies-banner .wti-ck-b:focus-visible,
#wti-cookies-banner .wti-ck-l:focus-visible,
#wti-cookies-banner .wti-ck-mas:focus-visible,
#wti-cookies-banner .wti-ck-x:focus-visible,
#wti-cookies-floating:focus-visible,
.wti-ck-pol .wti-ck-b:focus-visible,
.wtic-blocked-ph button:focus-visible {
	outline: 3px solid rgba(245, 124, 0, .4) !important;
	outline-offset: 2px;
}
#wti-cookies-banner .wti-ck-enl {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 6px 28px;
}
#wti-cookies-banner .wti-ck-l + .wti-ck-l::before {
	content: "";
	position: absolute;
	left: -15px;
	top: .2em;
	width: 1px;
	height: .95em;
	background: #D9CFC3;
}

/* ==========================================================================
   PREFERENCIAS (segunda capa)
   ========================================================================== */
#wti-cookies-banner .wti-ck-cats {
	margin-top: 14px;
	border: 1px solid var(--ck-linea);
	border-radius: 14px;
	background: var(--ck-crema-fondo);
	overflow: hidden;
}
#wti-cookies-banner .wti-ck-cat { padding: 13px 15px 14px; }
#wti-cookies-banner .wti-ck-cat + .wti-ck-cat { border-top: 1px solid var(--ck-linea); }
#wti-cookies-banner .wti-ck-cat-fila { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
#wti-cookies-banner .wti-ck-cat-nom {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 6px 10px;
	font: 500 16px/1.2 var(--ck-titulos);
	letter-spacing: .03em;
	text-transform: uppercase;
	color: var(--ck-tinta);
}
#wti-cookies-banner .wti-ck-siempre {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	font: 600 10.5px/1 var(--ck-sistema);
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--ck-marron);
	background: var(--ck-crema);
	border-radius: 999px;
	padding: 5px 9px;
}
#wti-cookies-banner .wti-ck-siempre svg { width: 11px; height: 11px; }
#wti-cookies-banner .wti-ck-desc { margin: 6px 0 0; font-size: 13px; line-height: 1.55; color: var(--ck-texto); }
#wti-cookies-banner .wti-ck-desc.is-largo:not(.is-abierto) {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
#wti-cookies-banner .wti-ck-cat .wti-ck-mas { font-size: 11.5px !important; }
#wti-cookies-banner .wti-ck-serv { list-style: none; margin: 9px 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px; }
#wti-cookies-banner .wti-ck-serv li {
	margin: 0;
	font: 500 12px/1.3 var(--ck-sistema);
	color: var(--ck-marron);
	background: #fff;
	border: 1px solid var(--ck-linea);
	border-radius: 999px;
	padding: 4px 10px;
}
#wti-cookies-banner .wti-ck-nota {
	display: flex;
	gap: 10px;
	align-items: flex-start;
	margin: 12px 0 0;
	padding: 11px 13px;
	border-radius: 12px;
	background: #fff;
	border: 1px dashed var(--ck-linea);
	font-size: 12.5px;
	line-height: 1.5;
	color: var(--ck-texto);
}
#wti-cookies-banner .wti-ck-nota svg { width: 16px; height: 16px; flex: none; margin-top: 1px; color: var(--ck-marron); }

/* El interruptor de la casa: gris apagado, naranja encendido */
#wti-cookies-banner .wti-ck-sw { position: relative; display: inline-block; width: 46px; height: 27px; flex: none; margin: 0; cursor: pointer; }
#wti-cookies-banner .wti-ck-sw input {
	position: absolute;
	inset: 0;
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	opacity: 0;
	cursor: pointer;
	z-index: 1;
}
#wti-cookies-banner .wti-ck-sw span { position: absolute; inset: 0; border-radius: 99px; background: #D9D2CA; transition: background .2s; }
#wti-cookies-banner .wti-ck-sw span::after {
	content: "";
	position: absolute;
	top: 3px;
	left: 3px;
	width: 21px;
	height: 21px;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 1px 3px rgba(27, 21, 18, .3);
	transition: transform .22s cubic-bezier(.3, .7, .3, 1);
}
#wti-cookies-banner .wti-ck-sw input:checked + span { background: var(--ck-naranja); }
#wti-cookies-banner .wti-ck-sw input:checked + span::after { transform: translateX(19px); }
#wti-cookies-banner .wti-ck-sw input:disabled { cursor: not-allowed; }
#wti-cookies-banner .wti-ck-sw input:disabled + span { opacity: .45; }
#wti-cookies-banner .wti-ck-sw input:focus-visible + span { outline: 3px solid rgba(245, 124, 0, .4); outline-offset: 2px; }

/* Fondo suave detrás de las preferencias, solo en el móvil */
.wti-ck-velo { display: none; }

/* ==========================================================================
   MÓVIL: barra baja compacta
   ========================================================================== */
@media (max-width: 600px) {
	#wti-cookies-banner,
	#wti-cookies-banner.wti-ck--pos-bottom-left,
	#wti-cookies-banner.wti-ck--pos-bottom,
	#wti-cookies-banner.wti-ck--pos-center {
		left: 0;
		right: 0;
		top: auto;
		bottom: 0;
		width: 100%;
		max-width: none;
		max-height: 90vh;
		max-height: 90dvh;
		transform: none;
		border-radius: 22px 22px 0 0;
		box-shadow: 0 -1px 0 var(--ck-linea), 0 -18px 40px -18px rgba(27, 21, 18, .4);
		animation-name: wti-ck-sube;
		padding-bottom: env(safe-area-inset-bottom, 0);
	}
	#wti-cookies-banner .wti-ck-asa { display: block; width: 38px; height: 4px; border-radius: 4px; background: #D9CFC3; margin: 9px auto 0; flex: none; }
	#wti-cookies-banner .wti-ck-cab { padding: 12px 18px 0; }
	#wti-cookies-banner .wti-ck-tit { font-size: 17.5px; }
	#wti-cookies-banner .wti-ck-x { top: 8px; }
	#wti-cookies-banner .wti-ck-cuerpo { padding: 9px 18px 0; }
	#wti-cookies-banner .wti-ck-msg,
	#wti-cookies-banner .wti-ck-msg p { font-size: 13.5px; line-height: 1.55; }
	#wti-cookies-banner .wti-ck-msg.is-largo:not(.is-abierto) {
		display: -webkit-box;
		-webkit-line-clamp: 4;
		-webkit-box-orient: vertical;
		overflow: hidden;
	}
	#wti-cookies-banner.is-prefs .wti-ck-msg.is-largo:not(.is-abierto) { -webkit-line-clamp: 2; }
	#wti-cookies-banner .wti-ck-pie { padding: 14px 18px 16px; }
	#wti-cookies-banner .wti-ck-b { height: 44px !important; font-size: 14.5px !important; }
	.wti-ck-velo:not([hidden]) {
		display: block;
		position: fixed;
		inset: 0;
		z-index: 999997;
		background: rgba(27, 21, 18, .32);
		animation: wti-ck-velo .3s ease;
	}
}
@media (min-width: 601px) {
	#wti-cookies-banner .wti-ck-mas[data-action="more"] { display: none !important; }
	#wti-cookies-banner.is-prefs .wti-ck-mas[data-action="more"] { display: inline-block !important; }
	#wti-cookies-banner.is-prefs .wti-ck-mas[data-action="more"][hidden] { display: none !important; }
}
@keyframes wti-ck-velo { from { opacity: 0; } to { opacity: 1; } }

/* ==========================================================================
   BOTÓN PEQUEÑO PARA CAMBIAR DE IDEA
   ========================================================================== */
#wti-cookies-floating {
	-webkit-appearance: none;
	appearance: none;
	box-sizing: border-box;
	position: fixed;
	left: 22px;
	bottom: 22px;
	z-index: 999997;
	display: inline-flex;
	align-items: center;
	gap: 0;
	width: auto !important;
	height: 46px !important;
	min-width: 46px;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 11px !important;
	border-radius: 999px !important;
	background: #fff !important;
	border: 1px solid var(--ck-linea) !important;
	color: var(--ck-marron) !important;
	cursor: pointer;
	box-shadow: 0 10px 26px -12px rgba(27, 21, 18, .5) !important;
	transition: background .2s ease, border-color .2s ease, gap .25s ease, padding .25s ease;
	animation: wti-ck-pop .35s cubic-bezier(.3, 1.4, .5, 1);
}
#wti-cookies-floating.wti-cookies-hidden { display: none !important; }
#wti-cookies-floating svg { width: 22px; height: 22px; flex: none; display: block; }
#wti-cookies-floating .wti-ck-flot-txt {
	max-width: 0;
	opacity: 0;
	overflow: hidden;
	white-space: nowrap;
	font: 500 13px/1 var(--ck-titulos);
	letter-spacing: .06em;
	text-transform: uppercase;
	transition: max-width .28s ease, opacity .2s ease;
}
#wti-cookies-floating:hover,
#wti-cookies-floating:focus-visible {
	background: var(--ck-crema-borde) !important;
	border-color: var(--ck-naranja) !important;
	gap: 8px;
	padding-right: 16px !important;
}
#wti-cookies-floating:hover .wti-ck-flot-txt,
#wti-cookies-floating:focus-visible .wti-ck-flot-txt { max-width: 260px; opacity: 1; }
@keyframes wti-ck-pop { from { opacity: 0; transform: scale(.6); } to { opacity: 1; transform: none; } }
@media (max-width: 600px) {
	#wti-cookies-floating { left: 14px; bottom: 14px; height: 42px !important; min-width: 42px; padding: 0 10px !important; }
	#wti-cookies-floating svg { width: 20px; height: 20px; }
}
@media (hover: none) {
	#wti-cookies-floating:hover { gap: 0; padding-right: 10px !important; background: #fff !important; border-color: var(--ck-linea) !important; }
	#wti-cookies-floating:hover .wti-ck-flot-txt { max-width: 0; opacity: 0; }
}

/* ==========================================================================
   CONTENIDO BLOQUEADO (mapas, vídeos, publicaciones): «Ver mapa» / «Permitirlo siempre»
   ========================================================================== */
.wtic-blocked-ph {
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 220px;
	margin: 0;
	border-radius: 14px;
	background: var(--ck-crema-fondo);
	border: 1px solid var(--ck-linea);
	font-family: var(--ck-sistema);
	overflow: hidden;
}
.wtic-blocked-ph-inner { text-align: center; padding: 22px; max-width: 420px; }
/* 2.1.0: dentro de una caja con alto propio (el mapa interactivo del tema) */
.wtic-blocked-ph.wtic-blocked-ph--caja {
	position: absolute;
	inset: 0;
	z-index: 2;
	min-height: 0;
	height: 100%;
	border: 0;
	border-radius: 0;
}
.wtic-blocked-ph-icon {
	width: 48px;
	height: 48px;
	margin: 0 auto 12px;
	border-radius: 50%;
	background: var(--ck-crema);
	color: var(--ck-marron);
	display: grid;
	place-items: center;
}
.wtic-blocked-ph-icon svg { width: 24px; height: 24px; display: block; }
.wtic-blocked-ph-msg { margin: 0 0 14px !important; font-size: 14px; line-height: 1.55; color: var(--ck-texto); }
.wtic-blocked-ph-acc { display: flex; flex-direction: column; align-items: center; gap: 10px; }
.wtic-blocked-ph .wtic-blocked-ph-btn {
	-webkit-appearance: none;
	appearance: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 44px !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 24px !important;
	border-radius: 999px !important;
	border: 1.5px solid var(--ck-par-fondo) !important;
	background: var(--ck-par-fondo) !important;
	color: #fff !important;
	font: 500 14.5px/1 var(--ck-titulos) !important;
	letter-spacing: .07em;
	text-transform: uppercase;
	cursor: pointer;
	box-shadow: none !important;
	transition: background .18s ease, border-color .18s ease;
}
.wtic-blocked-ph .wtic-blocked-ph-btn:hover,
.wtic-blocked-ph .wtic-blocked-ph-btn:focus-visible { background: var(--ck-par-fondo-h) !important; border-color: var(--ck-par-fondo-h) !important; }
.wtic-blocked-ph .wtic-blocked-ph-siempre {
	-webkit-appearance: none;
	appearance: none;
	width: auto !important;
	height: auto !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 0 2px !important;
	background: none !important;
	border: 0 !important;
	border-bottom: 2px solid var(--ck-naranja) !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	font: 500 12.5px/1.3 var(--ck-titulos) !important;
	letter-spacing: .06em;
	text-transform: uppercase;
	color: var(--ck-marron) !important;
	cursor: pointer;
}
.wtic-blocked-ph .wtic-blocked-ph-siempre:hover { color: var(--ck-naranja) !important; }

/* ==========================================================================
   POLÍTICA DE COOKIES: tabla en el ordenador, fichas apiladas en el móvil.
   Se decide por el ancho del hueco (container query), no por la pantalla.
   ========================================================================== */
.wti-ck-pol {
	container: wti-ck-pol / inline-size;
	font-family: var(--ck-sistema);
	color: var(--ck-texto);
	margin: 18px 0 8px;
}
.wti-ck-pol .wti-ck-pol-cat + .wti-ck-pol-cat { margin-top: 30px; }
.wti-ck-pol .wti-ck-pol-tit {
	margin: 0 !important;
	display: flex;
	align-items: center;
	gap: 10px;
	font: 400 22px/1.2 var(--ck-titulos) !important;
	text-transform: uppercase;
	color: var(--ck-tinta) !important;
}
.wti-ck-pol .wti-ck-pol-tit::before { content: ""; width: 9px; height: 9px; background: var(--ck-naranja); flex: none; }
.wti-ck-pol .wti-ck-pol-desc { margin: 8px 0 14px !important; font-size: 15px; line-height: 1.65; color: var(--ck-texto); max-width: 760px; }
.wti-ck-pol table {
	width: 100%;
	margin: 0 !important;
	border-collapse: separate !important;
	border-spacing: 0;
	border: 1px solid var(--ck-linea) !important;
	border-radius: 14px;
	overflow: hidden;
	font-size: 14px;
	background: #fff;
	table-layout: auto;
}
.wti-ck-pol table th {
	background: var(--ck-crema-fondo) !important;
	text-align: left;
	font: 600 11px/1.3 var(--ck-sistema) !important;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: var(--ck-marron) !important;
	padding: 12px 16px !important;
	border: 0 !important;
	border-bottom: 1px solid var(--ck-linea) !important;
}
.wti-ck-pol table td {
	padding: 13px 16px !important;
	vertical-align: top;
	line-height: 1.55;
	border: 0 !important;
	border-top: 1px solid var(--ck-linea-s) !important;
	background: #fff !important;
	color: var(--ck-texto);
	overflow-wrap: break-word;
}
.wti-ck-pol table tr:first-child td { border-top: 0 !important; }
.wti-ck-pol td.wti-ck-pol-nom { font-weight: 600; color: var(--ck-tinta); width: 20%; }
.wti-ck-pol td.wti-ck-pol-prov { width: 22%; }
.wti-ck-pol td.wti-ck-pol-dur { width: 20%; }
.wti-ck-pol .wti-ck-pol-enlace { display: inline-block; margin-top: 3px; font-size: 12.5px; color: var(--ck-marron) !important; text-decoration: underline; }
.wti-ck-pol .wti-ck-pol-vacio { color: var(--ck-gris-c); }
.wti-ck-pol .wti-ck-pol-propia table { border-style: dashed !important; }

.wti-ck-pol .wti-ck-pol-acc {
	margin-top: 30px;
	border-radius: 16px;
	background: var(--ck-crema-fondo);
	border: 1px solid var(--ck-linea);
	padding: 18px 20px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 14px 22px;
}
.wti-ck-estado { display: inline-flex; align-items: center; gap: 8px; font: 600 13.5px/1.4 var(--ck-sistema); color: var(--ck-tinta); }
.wti-ck-estado i { width: 26px; height: 26px; border-radius: 50%; background: #fff; border: 1px solid var(--ck-linea); display: grid; place-items: center; color: var(--ck-marron); flex: none; font-style: normal; }
.wti-ck-estado svg { width: 14px; height: 14px; display: block; }
.wti-ck-pol .wti-ck-pol-bot { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 22px; margin-left: auto; }
.wti-ck-pol .wti-ck-pol-bot .wti-ck-b { height: 44px !important; padding: 0 22px !important; }
.wti-cookies-revoke {
	font: 500 13px/1.3 var(--ck-titulos);
	letter-spacing: .06em;
	text-transform: uppercase;
	color: var(--ck-marron) !important;
	text-decoration: none !important;
	border-bottom: 2px solid var(--ck-naranja);
	padding-bottom: 2px;
	cursor: pointer;
}
.wti-cookies-revoke:hover { color: var(--ck-naranja) !important; }

@container wti-ck-pol (max-width: 640px) {
	.wti-ck-pol .wti-ck-pol-tit { font-size: 20px !important; }
	.wti-ck-pol .wti-ck-pol-desc { font-size: 14px; }
	.wti-ck-pol table,
	.wti-ck-pol tbody,
	.wti-ck-pol tr,
	.wti-ck-pol td { display: block; width: auto !important; }
	.wti-ck-pol table { border: 0 !important; border-radius: 0; overflow: visible; background: transparent; }
	.wti-ck-pol thead { display: none; }
	.wti-ck-pol tr { background: #fff; border: 1px solid var(--ck-linea); border-radius: 14px; padding: 14px 16px; margin-top: 10px; }
	.wti-ck-pol .wti-ck-pol-propia tr { border-style: dashed; }
	.wti-ck-pol table td { padding: 0 !important; border: 0 !important; }
	.wti-ck-pol table td + td { margin-top: 10px; }
	.wti-ck-pol td.wti-ck-pol-nom { font: 600 15.5px/1.35 var(--ck-sistema); color: var(--ck-tinta); padding-bottom: 10px !important; border-bottom: 1px solid var(--ck-linea-s) !important; }
	.wti-ck-pol td[data-label]::before {
		content: attr(data-label);
		display: block;
		font: 600 10.5px/1.4 var(--ck-sistema);
		letter-spacing: .1em;
		text-transform: uppercase;
		color: var(--ck-marron);
		margin-bottom: 2px;
	}
	.wti-ck-pol .wti-ck-pol-acc { flex-direction: column; align-items: stretch; padding: 16px; }
	.wti-ck-pol .wti-ck-pol-bot { margin-left: 0; flex-direction: column; align-items: stretch; }
	.wti-ck-pol .wti-ck-pol-bot .wti-cookies-revoke { align-self: center; }
}

/* ==========================================================================
   Aviso bajo los formularios de Elementor (class-wti-cookies-forms.php)
   ========================================================================== */
.wti-cookies-form-notice {
	margin-top: 14px;
	padding: 12px 16px;
	background: var(--wti-crema-fondo, #FBF7F2);
	border-radius: 10px;
	border-left: 3px solid var(--wti-marron, #7A5238);
	font-size: 12.5px;
	line-height: 1.55;
	color: #3A3430;
}
.wti-cookies-form-notice a { color: var(--wti-marron, #7A5238); text-decoration: underline; }
.wti-cookies-form-error {
	margin-top: 12px;
	padding: 10px 14px;
	background: #FCE8E6;
	color: #A8261E;
	border-radius: 10px;
	font-size: 13px;
	font-weight: 500;
	border-left: 3px solid #A8261E;
}

@media print {
	#wti-cookies-banner,
	#wti-cookies-floating,
	.wti-ck-velo { display: none !important; }
}
@media (prefers-reduced-motion: reduce) {
	#wti-cookies-banner,
	#wti-cookies-floating,
	.wti-ck-velo { animation: none !important; transition: none !important; }
}
