/**
 * Tu Detector Perú — estilos del tema (un solo archivo).
 * Escala: 1rem = 10px (html font-size 62.5% sobre 16px del navegador).
 * Ancho máximo del sitio: 1440px (variable en px).
 * Tipografía: rem por breakpoint (sin clamp).
 *
 * Orden: base del sitio (1–11) → WooCommerce (9) + ajustes globales de formularios
 *        → accesibilidad (10), pie (11) → iconos (12), editor (13) → MI CUENTA (14).
 */

/* =============================================================================
 * 1. VARIABLES / TOKENS
 * ============================================================================= */
:root {
	--tdp-font-heading: "Russo One", sans-serif;
	--tdp-font-body: "Poppins", sans-serif;

	--tdp-primary: #e51b20;
	--tdp-white: #ffffff;
	--tdp-bg-secondary: #000000;
	/* Fondo global: mismo patrón horizontal que el hero, más oscuro */
	--tdp-bg-page-gradient: linear-gradient(90deg,
			#000000 0%,
			#030303 40%,
			#060606 72%,
			#0a0a0a 100%);

	/* Mismo gradiente horizontal que .home-hero (jet-hero.css): evita costura con la barra de menú en portada. */
	--tdp-home-hero-bg: linear-gradient(90deg,
			#000000 0%,
			#0a0a0a 40%,
			#161616 72%,
			#242424 100%);

	--tdp-primary-dark: #b01217;
	--tdp-primary-ink: #7f0d11;
	--tdp-primary-soft: #fde8e9;
	--tdp-shadow-primary: rgba(229, 27, 32, 0.35);
	--tdp-shadow-primary-deep: rgba(229, 27, 32, 0.5);
	--tdp-glow-primary: rgba(229, 27, 32, 0.22);

	--tdp-surface: #ffffff;
	--tdp-surface-muted: #f5f5f5;
	--tdp-text: #111111;
	--tdp-text-muted: #5c5c5c;
	--tdp-text-on-dark: #ffffff;

	--tdp-red: #e51b20;
	--tdp-dark: #000000;
	--tdp-light: #f5f5f5;
	--tdp-accent: #e51b20;

	--tdp-max: 1440px;
	--tdp-gap: 2.4rem;
	--tdp-sidebar: 28rem;
	--tdp-sidebar-shop: 26rem;

	/* Títulos (móvil): escalados en rem con base 10px */
	--tdp-h1: 2.4rem;
	--tdp-h2: 2rem;
	--tdp-h3: 1.8rem;
	--tdp-h4: 1.6rem;
	--tdp-h5: 1.4rem;
	--tdp-h6: 1.2rem;

	--tdp-heading-line: 1.12;
	--tdp-heading-tracking: 0.02em;

	--tdp-site-title: 1.8rem;
	--tdp-hero-pad-y: 2.8rem;
	--tdp-hero-lead: 1.6rem;

	/* Ficha de producto — galería (radio; el ancho lo marca la columna 40% del grid) */
	--tdp-product-gallery-radius: 1.2rem;
}

@media (min-width: 768px) {
	:root {
		--tdp-h1: 3.6rem;
		--tdp-h2: 2.8rem;
		--tdp-h3: 2.2rem;
		--tdp-h4: 2rem;
		--tdp-h5: 1.8rem;
		--tdp-h6: 1.2rem;

		--tdp-site-title: 2rem;
		--tdp-hero-pad-y: 3.6rem;
		--tdp-hero-lead: 1.7rem;
	}
}

@media (min-width: 1200px) {
	:root {
		/* Valores finales: 48 / 32 / 24 / 20 / 18 / 12 px */
		--tdp-h1: 4.8rem;
		--tdp-h2: 3.2rem;
		--tdp-h3: 2.4rem;
		--tdp-h4: 2rem;
		--tdp-h5: 1.8rem;
		--tdp-h6: 1.2rem;

		--tdp-site-title: 2.2rem;
		--tdp-hero-pad-y: 4rem;
		--tdp-hero-lead: 1.8rem;
	}
}

/* =============================================================================
 * 2. RESET / BASE
 * ============================================================================= */
html {
	font-size: 62.5%;
	-webkit-text-size-adjust: 100%;
	min-height: 100%;
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

body {
	margin: 0;
	min-height: 100%;
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-size: 1.6rem;
	line-height: 1.65;
	color: rgba(255, 255, 255, 0.9);
	background: var(--tdp-bg-page-gradient);
	background-color: var(--tdp-bg-secondary);
}

/*
 * Portada Jet: .home-hero y .tdp-elegirnos usan 100vw + márgenes negativos (full-bleed).
 * 100vw no resta la barra de scroll y suele provocar scroll horizontal.
 */
body:has(.tdp-jet-home) {
	overflow-x: clip;
}

/* Navegadores sin :has() (portada = clases típicas de WP) */
@supports not selector(:has(*)) {

	body.home,
	body.front-page {
		overflow-x: clip;
	}
}

.site-container:has(.tdp-jet-home) {
	min-width: 0;
}

/* Móvil/tablet: prevenir que cualquier 100vw del home haga "zoom-out" en iOS Safari. */
@media (max-width: 991.98px) {
	html,
	body {
		max-width: 100vw;
		overflow-x: hidden;
	}

	body:has(.tdp-jet-home) .site-container,
	body.home .site-container,
	body.front-page .site-container {
		max-width: 100%;
		min-width: 0;
		overflow-x: clip;
	}
}

/* =============================================================================
 * 3. TIPOGRAFÍA (encabezados)
 * ============================================================================= */
h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: var(--tdp-font-heading), Arial, Helvetica, sans-serif;
	font-weight: 400;
	letter-spacing: var(--tdp-heading-tracking);
	line-height: var(--tdp-heading-line);
	margin: 0.65em 0 0.4em;
	color: var(--tdp-text-on-dark);
}

h1:first-child,
h2:first-child,
h3:first-child,
h4:first-child,
h5:first-child,
h6:first-child {
	margin-top: 0;
}

h1 {
	font-size: var(--tdp-h1);
}

h2 {
	font-size: var(--tdp-h2);
}

h3 {
	font-size: var(--tdp-h3);
}

h4 {
	font-size: var(--tdp-h4);
}

h5 {
	font-size: var(--tdp-h5);
}

h6 {
	font-size: var(--tdp-h6);
	text-transform: uppercase;
	letter-spacing: 0.06em;
	opacity: 0.92;
}

/* =============================================================================
 * 4. LAYOUT / CONTENEDORES
 * ============================================================================= */
.site-container {
	max-width: var(--tdp-max);
	margin: 0 auto;
	padding: 0 var(--tdp-gap);
}

@media (max-width: 991.98px) {
	.site-container {
		padding-left: 24px;
		padding-right: 24px;
	}
}

.site-container--with-sidebar {
	display: grid;
	grid-template-columns: 1fr var(--tdp-sidebar);
	gap: var(--tdp-gap);
	align-items: start;
}

@media (max-width: 900px) {
	.site-container--with-sidebar {
		grid-template-columns: 1fr;
	}
}

.site-container--woocommerce {
	display: grid;
	grid-template-columns: 1fr var(--tdp-sidebar-shop);
	gap: var(--tdp-gap);
	align-items: start;
}

@media (max-width: 900px) {
	.site-container--woocommerce {
		grid-template-columns: 1fr;
	}
}

/* Producto individual: una sola columna a --tdp-max (sin sidebar de tienda). */
body.single-product .site-container.site-container--woocommerce {
	padding: 3.2rem 2.4rem;
	grid-template-columns: 1fr;
	width: 100%;
	max-width: min(100%, var(--tdp-max));
	margin-left: auto;
	margin-right: auto;
	box-sizing: border-box;
}

body.single-product .site-main.site-main--shop {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

.site-main {
	min-width: 0;
}

/* =============================================================================
 * 4b. PÁGINA 404
 * ============================================================================= */
body.error404 .tdp-error-404 {
	min-width: 0;
}

body.error404 .tdp-error-404__hero {
	position: relative;
	overflow: clip;
	padding: clamp(3.2rem, 8vw, 6.4rem) 0 clamp(4rem, 10vw, 7.2rem);
	text-align: center;
}

body.error404 .tdp-error-404__glow {
	position: absolute;
	inset: -20% -10% auto;
	height: min(52rem, 90vw);
	left: 50%;
	transform: translateX(-50%);
	width: min(90rem, 160vw);
	max-width: none;
	background: none;
	pointer-events: none;
	z-index: 0;
}

body.error404 .tdp-error-404__grid-bg {
	position: absolute;
	inset: 0;
	opacity: 0.14;
	background-image:
		linear-gradient(rgba(255, 255, 255, 0.07) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255, 255, 255, 0.07) 1px, transparent 1px);
	background-size: 4.8rem 4.8rem;
	mask-image: linear-gradient(to bottom, black 0%, black 55%, transparent 100%);
	pointer-events: none;
	z-index: 0;
}

body.error404 .tdp-error-404__inner {
	position: relative;
	z-index: 1;
	max-width: 72rem;
	margin: 0 auto;
}

body.error404 .tdp-error-404__badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: clamp(6.4rem, 12vw, 8.8rem);
	height: clamp(6.4rem, 12vw, 8.8rem);
	margin: 0 auto 2rem;
	border-radius: 50%;
	border: 1px solid rgba(255, 255, 255, 0.14);
	background: rgba(0, 0, 0, 0.45);
	box-shadow: none;
	color: var(--tdp-primary);
}

body.error404 .tdp-error-404__badge .material-symbols-outlined {
	font-size: 3.75rem;
	font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
}

body.error404 .tdp-error-404__eyebrow {
	margin: 0 0 0.8rem;
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-size: 1.3rem;
	font-weight: 600;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.55);
}

body.error404 .tdp-error-404__code {
	margin: 0 0 0.4rem;
	font-family: var(--tdp-font-heading), Arial, Helvetica, sans-serif;
	font-size: 8rem;
	line-height: 0.9;
	letter-spacing: 0.04em;
	color: transparent;
	background: linear-gradient(165deg,
			rgba(255, 255, 255, 0.95) 0%,
			rgba(255, 255, 255, 0.35) 38%,
			var(--tdp-primary) 72%,
			var(--tdp-primary-dark) 100%);
	-webkit-background-clip: text;
	background-clip: text;
}

body.error404 .tdp-error-404__title {
	margin: 0 0 1.6rem;
	font-family: var(--tdp-font-heading), Arial, Helvetica, sans-serif;
	font-size: 2.85rem;
	font-weight: 400;
	line-height: 1.15;
	letter-spacing: var(--tdp-heading-tracking);
	color: rgba(255, 255, 255, 0.98);
}

body.error404 .tdp-error-404__lead {
	margin: 0 auto 2.8rem;
	max-width: 52rem;
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-size: 1.65rem;
	line-height: 1.65;
	color: rgba(255, 255, 255, 0.72);
}

body.error404 .tdp-error-404__actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 1.2rem 1.6rem;
	margin-bottom: 3.2rem;
}

body.error404 .tdp-error-404__btn {
	min-width: min(100%, 20rem);
	padding: 1.05rem 2rem;
	font-size: 1.5rem;
	border-radius: 999px;
	text-align: center;
	box-shadow: none;
}

body.error404 .tdp-error-404__btn.button--primary:hover,
body.error404 .tdp-error-404__btn.button--primary:focus,
body.error404 .tdp-error-404__btn.button--outline:hover,
body.error404 .tdp-error-404__btn.button--outline:focus {
	box-shadow: none;
}

body.error404 .tdp-error-404__search {
	margin: 0 auto 2.4rem;
	max-width: 56rem;
	text-align: left;
}

body.error404 .tdp-error-404__search-label {
	display: block;
	margin-bottom: 0.85rem;
	font-size: 1.3rem;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.5);
}

body.error404 .tdp-error-404__search-form {
	display: flex;
	flex-wrap: nowrap;
	align-items: stretch;
	gap: 0;
	border-radius: 999px;
	border: 1px solid rgba(255, 255, 255, 0.16);
	background: rgba(0, 0, 0, 0.5);
	box-shadow: none;
	overflow: hidden;
}

body.error404 .tdp-error-404__search-field {
	flex: 1 1 auto;
	min-width: 0;
	margin: 0;
	padding: 1.15rem 1.6rem 1.15rem 2rem;
	border: none;
	background: transparent;
	color: var(--tdp-white);
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-size: 1.6rem;
	outline: none;
}

body.error404 .tdp-error-404__search-field::placeholder {
	color: rgba(255, 255, 255, 0.38);
}

body.error404 .tdp-error-404__search-submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	flex: 0 0 auto;
	margin: 0;
	padding: 0 1.8rem;
	border: none;
	border-left: 1px solid rgba(255, 255, 255, 0.12);
	background: var(--tdp-primary);
	color: var(--tdp-white);
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-size: 1.5rem;
	font-weight: 600;
	cursor: pointer;
	transition: background 0.2s ease;
}

body.error404 .tdp-error-404__search-submit:hover,
body.error404 .tdp-error-404__search-submit:focus {
	background: var(--tdp-primary-dark);
	box-shadow: none;
	outline: none;
}

body.error404 .tdp-error-404__search-submit .material-symbols-outlined {
	font-size: 2.2rem;
	font-variation-settings: 'FILL' 0, 'wght' 500, 'GRAD' 0, 'opsz' 24;
}

@media (max-width: 520px) {
	body.error404 .tdp-error-404__search-submit-text {
		position: absolute;
		width: 1px;
		height: 1px;
		padding: 0;
		margin: -1px;
		overflow: hidden;
		clip: rect(0, 0, 0, 0);
		white-space: nowrap;
		border: 0;
	}

	body.error404 .tdp-error-404__search-submit {
		position: relative;
		padding: 0 1.4rem;
	}
}

body.error404 .tdp-error-404__hint {
	margin: 0;
	font-size: 1.45rem;
	color: rgba(255, 255, 255, 0.5);
}

body.error404 .tdp-error-404__hint a {
	color: rgba(255, 255, 255, 0.88);
	font-weight: 600;
	text-decoration: underline;
	text-decoration-color: var(--tdp-primary);
	text-underline-offset: 0.25em;
}

body.error404 .tdp-error-404__hint a:hover,
body.error404 .tdp-error-404__hint a:focus {
	color: var(--tdp-primary);
}

@media (prefers-reduced-motion: reduce) {
	body.error404 .tdp-error-404__glow {
		transform: translateX(-50%);
	}
}

/* =============================================================================
 * 5. CABECERA / NAVEGACIÓN
 * ============================================================================= */
.site-title {
	font-family: var(--tdp-font-heading), Arial, Helvetica, sans-serif;
	font-weight: 400;
	letter-spacing: var(--tdp-heading-tracking);
	line-height: var(--tdp-heading-line);
	color: var(--tdp-white);
	text-decoration: none;
	font-size: var(--tdp-site-title);
}

.site-title:hover,
.site-title:focus {
	color: var(--tdp-primary);
}

.site-header {
	background: var(--tdp-bg-secondary);
	color: var(--tdp-text-on-dark);
	padding: 1rem 0;
	box-shadow: 0 4px 24px var(--tdp-shadow-primary);
}

/* Cabecera maquetada — fondo unificado; sin sombra/borde inferior rojo del .site-header genérico */
.site-header.tdp-site-header {
	--tdp-header-bg: #000;
	--tdp-header-edge: rgba(255, 255, 255, 0.12);
	position: relative;
	z-index: 200;
	padding: 0;
	margin: 0;
	box-shadow: none !important;
	border-bottom: none !important;
	background: var(--tdp-header-bg);
	color: var(--tdp-text-on-dark);
}

.tdp-site-header__top {
	background: var(--tdp-header-bg);
	color: var(--tdp-text-on-dark);
	font-size: 1.3rem;
	line-height: 1.4;
	border-top: none;
	border-bottom: none;
}

.tdp-site-header__top-inner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 1rem 2rem;
	padding-top: 0.9rem;
	padding-bottom: 0.9rem;
}

.tdp-site-header__contact {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 1.6rem 2.4rem;
}

.tdp-site-header__contact-link {
	display: inline-flex;
	align-items: center;
	gap: 0.6rem;
	color: var(--tdp-white);
	text-decoration: none;
	font-weight: 500;
}

.tdp-site-header__contact-link:hover,
.tdp-site-header__contact-link:focus {
	color: var(--tdp-primary);
}

.tdp-site-header__contact-link--text {
	cursor: default;
	color: rgba(255, 255, 255, 0.9);
}

.tdp-site-header__contact-link i {
	font-size: 1.2rem;
	opacity: 0.95;
}

.tdp-site-header__contact-link--stores i {
	color: var(--tdp-white, #ffffff);
	font-size: 1.35rem;
	opacity: 1;
}

.tdp-site-header__promo {
	display: flex;
	align-items: center;
	gap: 0.6rem;
	margin: 0;
	font-weight: 500;
}

.tdp-site-header__promo-icon {
	color: var(--tdp-primary);
	font-size: 1.2rem;
}

.tdp-site-header__main {
	position: relative;
	z-index: 3;
	background: var(--tdp-header-bg);
	padding: 1.2rem 0;
	border-bottom: none;
}

.tdp-site-header__main-inner {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	align-items: center;
	gap: 1.6rem 2.4rem;
}

.tdp-site-header__brand {
	display: flex;
	align-items: center;
	min-width: 0;
	max-width: 100%;
	overflow: visible;
}

.tdp-site-header__logo-link {
	display: inline-flex;
	align-items: center;
	justify-content: flex-start;
	max-width: 100%;
	min-width: 0;
	overflow: visible;
	text-decoration: none;
	line-height: 0;
}

/* Logo completo visible (sin recorte): acotar por alto y ancho del hueco del grid. */
.tdp-site-header__brand .custom-logo-link img,
.tdp-site-header__brand img.custom-logo,
.tdp-site-header__brand img.tdp-site-header__logo-img {
	max-height: 6rem;
	max-width: 100%;
	width: auto;
	height: auto;
	object-fit: contain;
	object-position: left center;
	display: block;
}

.tdp-site-header__title-link {
	white-space: nowrap;
}

.tdp-site-header__search {
	position: relative;
	display: flex;
	align-items: stretch;
	width: 100%;
	max-width: 56rem;
	margin-left: auto;
	margin-right: auto;
}

/* Tarjeta única: campo + recomendaciones (borde neutro; acento rojo al enfocar). */
.tdp-site-header__search-shell {
	position: relative;
	width: 100%;
	border: 1px solid rgba(255, 255, 255, 0.16);
	border-radius: 8px;
	background: var(--tdp-header-bg);
	color-scheme: dark;
	overflow: hidden;
	transition:
		border-color 0.18s ease,
		box-shadow 0.18s ease;
}

/* No elevar z-index del shell: tapaba logo/botones de la misma fila del grid */
.tdp-site-header__search-shell--open {
	overflow: visible;
	box-shadow: 0 18px 44px rgba(0, 0, 0, 0.55);
}

.tdp-site-header__search-shell:focus-within {
	border-color: rgba(229, 27, 32, 0.75);
	box-shadow:
		0 0 0 1px rgba(229, 27, 32, 0.45),
		0 12px 32px rgba(0, 0, 0, 0.45);
}

.tdp-site-header__search-row {
	position: relative;
	display: flex;
	align-items: center;
	min-height: 4.8rem;
}

.tdp-site-header__search-icon {
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 4.4rem;
	color: rgba(255, 255, 255, 0.72);
	font-size: 1.55rem;
	pointer-events: none;
}

.tdp-site-header__search-field {
	flex: 1 1 auto;
	min-width: 0;
	width: 100%;
	border: none;
	border-radius: 0;
	background: transparent;
	color: #ffffff !important;
	font-size: 1.5rem;
	font-weight: 400;
	padding: 1rem 1.4rem 1rem 0;
	outline: none;
	box-shadow: none;
	-webkit-text-fill-color: #ffffff;
}

/* Placeholder legible sobre negro (Bootstrap / WebKit a veces dejan gris oscuro). */
.tdp-site-header__search-field::placeholder,
.tdp-site-header__search-field::-webkit-input-placeholder {
	color: rgba(255, 255, 255, 0.68) !important;
	font-weight: 400;
	opacity: 1 !important;
	-webkit-text-fill-color: rgba(255, 255, 255, 0.68);
}

.tdp-site-header__search-field::-moz-placeholder {
	color: rgba(255, 255, 255, 0.68) !important;
	opacity: 1 !important;
}

/* Lista tipo tarjeta: flota sobre el contenido debajo del header */
.tdp-site-header__live-results.tdp-site-header__live-results--card {
	position: absolute;
	left: 0;
	right: 0;
	top: calc(100% - 1px);
	z-index: 40;
	max-height: min(52vh, 36rem);
	overflow-y: auto;
	overflow-x: hidden;
	margin: 0;
	padding: 0;
	border: 1px solid var(--tdp-primary);
	border-top: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 0 0 8px 8px;
	background: #0d0d0d;
	box-shadow: 0 22px 50px rgba(0, 0, 0, 0.65);
	-webkit-overflow-scrolling: touch;
	scrollbar-width: thin;
	scrollbar-color: rgba(255, 255, 255, 0.35) rgba(255, 255, 255, 0.06);
}

.tdp-site-header__live-results--card::-webkit-scrollbar {
	width: 8px;
}

.tdp-site-header__live-results--card::-webkit-scrollbar-thumb {
	background: rgba(255, 255, 255, 0.28);
	border-radius: 999px;
}

.tdp-site-header__live-loading,
.tdp-site-header__live-empty {
	padding: 0.95rem 1rem;
	font-size: 1.35rem;
	font-weight: 400;
	color: rgba(255, 255, 255, 0.72);
	text-align: center;
}

.tdp-site-header__live-option {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	padding: 0.8rem 1rem;
	margin: 0;
	border-radius: 0;
	text-decoration: none;
	color: rgba(255, 255, 255, 0.96);
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	transition: background 0.15s ease;
}

.tdp-site-header__live-option+.tdp-site-header__live-option {
	border-top: 1px solid rgba(255, 255, 255, 0.06);
}

.tdp-site-header__live-option:hover,
.tdp-site-header__live-option:focus-visible {
	background: rgba(229, 27, 32, 0.18);
	outline: none;
}

.tdp-site-header__live-option.is-focused {
	background: rgba(229, 27, 32, 0.24);
}

.tdp-site-header__live-title {
	flex: 1 1 auto;
	min-width: 0;
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 1.35;
	text-align: left;
}

.tdp-site-header__live-mark {
	background: rgba(255, 224, 80, 0.92);
	color: #1a1a1a;
	padding: 0.05em 0.15em;
	border-radius: 2px;
	font-weight: 600;
}

.tdp-site-header__live-price {
	flex-shrink: 0;
	font-size: 1.35rem;
	color: var(--tdp-white);
	white-space: nowrap;
}

.tdp-site-header__live-price .woocommerce-Price-amount,
.tdp-site-header__live-price del,
.tdp-site-header__live-price ins {
	color: inherit;
	font-weight: inherit;
	text-decoration-color: rgba(255, 255, 255, 0.45);
}

/* Búsquedas populares */
.tdp-site-header__live-popular {
	padding: 0.75rem 1rem 1rem;
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
}

.tdp-site-header__live-popular-head {
	display: flex;
	align-items: center;
	gap: 0.55rem;
	margin: 0 0 0.75rem;
	font-size: 1.15rem;
	font-weight: 600;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.52);
}

.tdp-site-header__live-popular-head span {
	text-transform: uppercase;
}

.tdp-site-header__live-popular-head .fa-arrow-trend-up {
	font-size: 1.1rem;
	opacity: 0.9;
}

.tdp-site-header__live-popular-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem 0.55rem;
}

.tdp-site-header__live-tag {
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	padding: 0.45rem 0.95rem;
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-size: 1.3rem;
	font-weight: 600;
	line-height: 1.2;
	color: rgba(255, 255, 255, 0.9);
	background: rgba(255, 255, 255, 0.1);
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 999px;
	transition:
		background 0.15s ease,
		border-color 0.15s ease,
		color 0.15s ease;
}

.tdp-site-header__live-tag:hover,
.tdp-site-header__live-tag:focus-visible {
	background: rgba(229, 27, 32, 0.22);
	border-color: rgba(229, 27, 32, 0.55);
	color: var(--tdp-white);
	outline: none;
}

.tdp-site-header__tools {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: flex-end;
	gap: clamp(1.6rem, 3vw, 2.8rem);
}

.tdp-site-header__tool-wrap {
	position: relative;
	display: inline-flex;
	flex-direction: column;
	align-items: stretch;
	max-width: 16rem;
	min-width: 0;
}

.tdp-site-header__tool-wrap .tdp-site-header__tool {
	max-width: none;
}

/* Icono + dos líneas (mockup): superior fina / inferior destacada tipo display */
.tdp-site-header__tool {
	display: inline-flex;
	align-items: center;
	gap: 0.85rem;
	color: var(--tdp-white);
	text-decoration: none;
	line-height: 1.15;
	max-width: 16rem;
	min-width: 0;
}

.tdp-site-header__tool:hover .tdp-site-header__tool-line--sub,
.tdp-site-header__tool:focus .tdp-site-header__tool-line--sub,
.tdp-site-header__tool:hover .tdp-site-header__tool-line--lead,
.tdp-site-header__tool:focus .tdp-site-header__tool-line--lead {
	color: var(--tdp-primary);
}

.tdp-site-header__tool:hover .tdp-site-header__tool-icon,
.tdp-site-header__tool:focus .tdp-site-header__tool-icon {
	color: var(--tdp-primary);
}

.tdp-site-header__tool-icon-wrap {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.tdp-site-header__tool-badge {
	position: absolute;
	top: -0.5rem;
	right: -0.55rem;
	min-width: 1.8rem;
	height: 1.8rem;
	padding: 0 0.42rem;
	border-radius: 999px;
	background: var(--tdp-primary);
	color: var(--tdp-white);
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-size: 1.05rem;
	font-weight: 600;
	line-height: 1.8rem;
	text-align: center;
	box-sizing: border-box;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.45);
}

.tdp-site-header__tool-badge--empty {
	display: none;
}

.tdp-site-header__tool-icon {
	font-size: 1.8rem;
	flex-shrink: 0;
	line-height: 1;
	color: var(--tdp-white);
	font-weight: 400;
}

.tdp-site-header__tool-copy {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	gap: 0.15rem;
	min-width: 0;
	text-align: left;
}

.tdp-site-header__tool-line {
	display: block;
	max-width: 100%;
}

.tdp-site-header__tool-line--sub {
	font-family: var(--tdp-font-heading), Arial, Helvetica, sans-serif;
	font-size: 1.2rem;
	font-weight: 400;
	line-height: 1.2;
	color: rgba(255, 255, 255, 0.96);
	letter-spacing: var(--tdp-heading-tracking);
}

.tdp-site-header__tool-line--lead {
	font-family: var(--tdp-font-heading), Arial, Helvetica, sans-serif;
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 1.05;
	letter-spacing: var(--tdp-heading-tracking);
	text-transform: none;
	color: var(--tdp-white);
}

/* Mini lista favoritos (YITH): panel con scroll vertical a la derecha */
.tdp-site-header__wishlist-panel {
	position: absolute;
	left: auto;
	right: 0;
	top: calc(100% + 0.55rem);
	width: min(22rem, calc(100vw - 2rem));
	padding: 0;
	margin: 0;
	background: #0a0a0a;
	border: 1px solid rgba(255, 255, 255, 0.14);
	border-radius: 0.55rem;
	box-shadow: 0 18px 42px rgba(0, 0, 0, 0.55);
	z-index: 600;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity 0.18s ease, visibility 0.18s ease;
}

.tdp-site-header__tool-wrap--wishlist:hover .tdp-site-header__wishlist-panel,
.tdp-site-header__tool-wrap--wishlist:focus-within .tdp-site-header__wishlist-panel {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}

.tdp-site-header__wishlist-scroll {
	max-height: min(22rem, 52vh);
	overflow-y: auto;
	overflow-x: hidden;
	scrollbar-gutter: stable;
	scrollbar-width: thin;
	scrollbar-color: rgba(255, 255, 255, 0.38) rgba(255, 255, 255, 0.06);
}

.tdp-site-header__wishlist-scroll::-webkit-scrollbar {
	width: 8px;
}

.tdp-site-header__wishlist-scroll::-webkit-scrollbar-track {
	background: rgba(255, 255, 255, 0.06);
	border-radius: 999px;
}

.tdp-site-header__wishlist-scroll::-webkit-scrollbar-thumb {
	background: rgba(255, 255, 255, 0.32);
	border-radius: 999px;
}

.tdp-site-header__wishlist-list {
	list-style: none;
	margin: 0;
	padding: 0.45rem 0;
}

.tdp-site-header__wishlist-item {
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.tdp-site-header__wishlist-item:last-child {
	border-bottom: none;
}

.tdp-site-header__wishlist-link {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	padding: 0.65rem 0.85rem;
	text-decoration: none;
	color: rgba(255, 255, 255, 0.96);
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-weight: 400;
	font-size: 1.25rem;
	line-height: 1.25;
	transition: background 0.15s ease;
}

.tdp-site-header__wishlist-link:hover,
.tdp-site-header__wishlist-link:focus {
	background: rgba(229, 27, 32, 0.14);
	outline: none;
}

.tdp-site-header__wishlist-thumb {
	flex-shrink: 0;
	width: 4.2rem;
	height: 4.2rem;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	border-radius: 0.35rem;
	background: rgba(255, 255, 255, 0.06);
}

.tdp-site-header__wishlist-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.tdp-site-header__wishlist-meta {
	display: flex;
	flex-direction: column;
	gap: 0.2rem;
	min-width: 0;
	text-align: left;
}

.tdp-site-header__wishlist-title {
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}

.tdp-site-header__wishlist-price {
	font-size: 1.15rem;
	color: rgba(255, 255, 255, 0.82);
}

.tdp-site-header__wishlist-price .woocommerce-Price-amount {
	color: inherit;
}

.tdp-site-header__wishlist-empty {
	margin: 0;
	padding: 1rem 0.95rem;
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-weight: 400;
	font-size: 1.25rem;
	line-height: 1.35;
	color: rgba(255, 255, 255, 0.78);
}

.tdp-site-header__wishlist-footer {
	border-top: 1px solid rgba(255, 255, 255, 0.12);
	padding: 0.65rem 0.9rem;
	text-align: center;
}

.tdp-site-header__wishlist-all {
	display: inline-block;
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-weight: 400;
	font-size: 1.25rem;
	color: var(--tdp-primary);
	text-decoration: none;
}

.tdp-site-header__wishlist-all:hover,
.tdp-site-header__wishlist-all:focus {
	text-decoration: underline;
	outline: none;
}

@media (hover: none) {

	.tdp-site-header__tool-wrap--wishlist:hover .tdp-site-header__wishlist-panel,
	.tdp-site-header__tool-wrap--wishlist:focus-within .tdp-site-header__wishlist-panel {
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
	}

	.tdp-site-header__tool-wrap--wishlist.is-open .tdp-site-header__wishlist-panel {
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
	}
}

.tdp-site-header__cart-total-line {
	white-space: nowrap;
}

.tdp-site-header__cart-total-line .woocommerce-Price-amount,
.tdp-site-header__cart-total-line .amount {
	color: inherit;
}

.tdp-site-header__nav-toggle {
	display: none;
	align-items: center;
	justify-content: center;
	width: 4.4rem;
	height: 4.4rem;
	padding: 0;
	border: 1px solid rgba(255, 255, 255, 0.22);
	border-radius: 8px;
	background: transparent;
	color: var(--tdp-white);
	font-size: 1.65rem;
	line-height: 1;
	cursor: pointer;
	transition:
		border-color 0.18s ease,
		background 0.18s ease,
		color 0.18s ease;
}

.tdp-site-header__nav-toggle:hover,
.tdp-site-header__nav-toggle:focus-visible {
	border-color: rgba(229, 27, 32, 0.65);
	color: var(--tdp-primary);
	outline: none;
}

.tdp-site-header__nav-panel {
	display: contents;
}

.tdp-site-header__nav-close {
	display: none;
	align-items: center;
	justify-content: center;
	align-self: flex-end;
	width: 3.6rem;
	height: 3.6rem;
	margin: 0.35rem 0.35rem 0 0;
	padding: 0;
	border: none;
	border-radius: 8px;
	background: rgba(255, 255, 255, 0.06);
	color: rgba(255, 255, 255, 0.92);
	font-size: 1.5rem;
	cursor: pointer;
	transition: background 0.15s ease;
}

.tdp-site-header__nav-close:hover,
.tdp-site-header__nav-close:focus-visible {
	background: rgba(229, 27, 32, 0.25);
	color: var(--tdp-white);
	outline: none;
}

.tdp-site-header__nav-wrap {
	position: relative;
	z-index: 2;
	background: var(--tdp-header-bg);
	padding-bottom: 0;
	border-bottom: none;
	box-shadow: none;
}

.tdp-site-header__nav {
	padding: 0.4rem 0 1rem;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: thin;
	border-bottom: none;
	box-shadow: none;
}

.tdp-site-header__menu {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0.6rem 1.2rem;
	list-style: none;
	margin: 0;
	padding: 0;
	font-family: var(--tdp-font-heading), Arial, Helvetica, sans-serif;
	font-size: 1.3rem;
	font-weight: 400;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.tdp-site-header__menu>li {
	position: relative;
}

.tdp-site-header__menu>li>a {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	padding: 0.5rem 0.8rem;
	color: var(--tdp-white);
	text-decoration: none;
	white-space: nowrap;
}

.tdp-site-header__menu>li>a:hover,
.tdp-site-header__menu>li>a:focus {
	color: var(--tdp-primary);
}

.tdp-site-header__menu>.menu-item-has-children>a::after {
	content: "";
	width: 0;
	height: 0;
	border-left: 4px solid transparent;
	border-right: 4px solid transparent;
	border-top: 5px solid rgba(255, 255, 255, 0.85);
	margin-top: 0.2rem;
}

.tdp-site-header__menu .sub-menu {
	display: none;
	position: absolute;
	left: 0;
	top: 100%;
	min-width: 20rem;
	margin: 0;
	padding: 0.6rem 0;
	list-style: none;
	background: var(--tdp-header-bg);
	border: 1px solid var(--tdp-header-edge);
	border-radius: 0.6rem;
	box-shadow: 0 12px 32px rgba(0, 0, 0, 0.55);
	z-index: 10080;
	font-size: 1.3rem;
	text-transform: none;
	letter-spacing: 0.02em;
	font-weight: 400;
}

.tdp-site-header__menu .sub-menu .sub-menu {
	top: 0;
	left: 100%;
	margin-left: 0.35rem;
	margin-top: 0;
	z-index: 10081;
}

.tdp-site-header__menu li:hover>.sub-menu,
.tdp-site-header__menu li:focus-within>.sub-menu {
	display: block;
}

.tdp-site-header__menu .sub-menu a {
	display: block;
	padding: 0.55rem 1.2rem;
	color: rgba(255, 255, 255, 0.92);
	text-decoration: none;
}

.tdp-site-header__menu .sub-menu a:hover,
.tdp-site-header__menu .sub-menu a:focus {
	background: rgba(229, 27, 32, 0.15);
	color: var(--tdp-white);
}

.tdp-site-header__menu>li.tdp-nav-promo>a {
	background: var(--tdp-primary);
	color: var(--tdp-white);
	border-radius: 999px;
	padding-left: 1.4rem;
	padding-right: 1.4rem;
}

.tdp-site-header__menu>li.tdp-nav-promo>a:hover,
.tdp-site-header__menu>li.tdp-nav-promo>a:focus {
	filter: brightness(1.08);
	color: var(--tdp-white);
}

.tdp-site-header__menu>li.tdp-nav-promo.menu-item-has-children>a::after {
	border-top-color: rgba(255, 255, 255, 0.95);
}

/* <span class="promo"> o class="PROMO" dentro del enlace — botón píldora (rojo / blanco). */
.tdp-site-header__menu>li>a:has(> .promo),
.tdp-site-header__menu>li>a:has(> .PROMO) {
	padding: 0.45rem 0;
	background: transparent;
}

.tdp-site-header__menu>li>a .promo,
.tdp-site-header__menu>li>a .PROMO {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin: 0;
	padding: 0.8rem 1.6rem;
	background: var(--tdp-primary);
	color: #ffffff !important;
	border-radius: 8px;
	font-family: var(--tdp-font-heading), var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-size: 1.25rem;
	font-weight: 400;
	letter-spacing: 0.07em;
	line-height: 1.15;
	text-transform: uppercase;
	text-shadow: none;
	box-shadow: none;
	transition: filter 0.2s ease;
}

.tdp-site-header__menu>li>a:hover .promo,
.tdp-site-header__menu>li>a:focus-visible .promo,
.tdp-site-header__menu>li>a:hover .PROMO,
.tdp-site-header__menu>li>a:focus-visible .PROMO {
	filter: brightness(1.08);
	color: #ffffff !important;
	box-shadow: none;
}

@media (max-width: 991.98px) {

	/* Barra superior (contacto + promoción): no se muestra en móvil/tablet. */
	.tdp-site-header__top {
		display: none !important;
	}

	body.tdp-nav-drawer-open {
		overflow: hidden;
		touch-action: none;
	}

	.tdp-site-header__main-inner {
		display: grid;
		grid-template-columns: 1fr auto auto;
		grid-template-areas:
			"brand toggle tools"
			"search search search";
		align-items: center;
		gap: 0.85rem 1rem;
		justify-items: stretch;
	}

	.tdp-site-header__main-inner:not(:has(.tdp-site-header__nav-toggle)) {
		grid-template-columns: 1fr auto;
		grid-template-areas:
			"brand tools"
			"search search";
	}

	.tdp-site-header__brand {
		grid-area: brand;
		justify-self: start;
		min-width: 0;
		padding-right: 0.35rem;
	}

	.tdp-site-header__nav-toggle {
		grid-area: toggle;
		display: inline-flex;
		justify-self: end;
		margin-left: 0.25rem;
	}

	.tdp-site-header__tools {
		grid-area: tools;
		justify-self: end;
		justify-content: flex-end;
		width: auto;
		flex-wrap: nowrap;
		gap: 0;
		order: unset;
	}

	.tdp-site-header__tools .tdp-site-header__tool:not(.tdp-site-header__tool--cart),
	.tdp-site-header__tools .tdp-site-header__tool-wrap {
		display: none !important;
	}

	.tdp-site-header__tool--cart {
		max-width: none;
		flex: 0 0 auto;
		padding: 0.45rem 0.35rem;
		gap: 0;
	}

	.tdp-site-header__tool--cart .tdp-site-header__tool-copy {
		display: none;
	}

	.tdp-site-header__tool--cart .tdp-site-header__tool-icon {
		font-size: 1.85rem;
	}

	.tdp-site-header__search {
		grid-area: search;
		max-width: none;
		order: unset;
		width: 100%;
	}

	.tdp-site-header__search-row {
		min-height: 4.35rem;
	}

	.tdp-site-header__search-icon {
		width: 3.75rem;
		font-size: 1.4rem;
	}

	.tdp-site-header__search-field {
		font-size: 1.22rem;
		padding: 0.85rem 0.75rem 0.85rem 0;
	}

	.tdp-site-header__search-field::placeholder,
	.tdp-site-header__search-field::-webkit-input-placeholder {
		color: rgba(255, 255, 255, 0.72) !important;
		-webkit-text-fill-color: rgba(255, 255, 255, 0.72);
	}

	.tdp-site-header__search-field::-moz-placeholder {
		color: rgba(255, 255, 255, 0.72) !important;
	}

	.tdp-site-header__brand .custom-logo-link img,
	.tdp-site-header__brand img.custom-logo,
	.tdp-site-header__brand img.tdp-site-header__logo-img {
		max-height: 5.75rem;
		max-width: 100%;
		width: auto;
		height: auto;
		object-fit: contain;
		object-position: left center;
	}

	/* Menú móvil: overlay + panel lateral */
	.tdp-site-header__nav-wrap {
		position: fixed;
		inset: 0;
		z-index: 10060;
		display: flex;
		justify-content: flex-end;
		align-items: stretch;
		padding: 0;
		background: rgba(0, 0, 0, 0.55);
		visibility: hidden;
		opacity: 0;
		pointer-events: none;
		transition:
			opacity 0.22s ease,
			visibility 0.22s ease;
	}

	.tdp-site-header--menu-open .tdp-site-header__nav-wrap {
		visibility: visible;
		opacity: 1;
		pointer-events: auto;
	}

	.tdp-site-header__nav-panel {
		display: flex;
		flex-direction: column;
		/* Casi toda la pantalla: deja un borde del overlay para contexto visual */
		width: min(calc(100vw - 10px), 100%);
		max-width: 100%;
		height: 100%;
		margin: 0;
		background: #0a0a0a;
		border-left: 1px solid rgba(255, 255, 255, 0.1);
		box-shadow: -12px 0 40px rgba(0, 0, 0, 0.55);
		transform: translateX(100%);
		transition: transform 0.28s cubic-bezier(0.22, 1, 0.36, 1);
	}

	.tdp-site-header--menu-open .tdp-site-header__nav-panel {
		transform: translateX(0);
	}

	.tdp-site-header__nav-close {
		display: inline-flex;
		flex-shrink: 0;
	}

	.tdp-site-header__nav-wrap .site-container {
		flex: 1 1 auto;
		min-height: 0;
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
		padding: 0 1rem 1.5rem;
	}

	.tdp-site-header__nav {
		padding: 0.25rem 0 1rem;
		overflow-x: visible;
	}

	.tdp-site-header__menu {
		flex-direction: column;
		align-items: stretch;
		justify-content: flex-start;
		gap: 0;
		flex-wrap: nowrap;
		font-weight: 400;
		font-size: 1.4rem;
	}

	.tdp-site-header__menu>li>a {
		display: flex;
		align-items: center;
		justify-content: space-between;
		padding: 0.95rem 0.5rem;
		white-space: normal;
		border-bottom: 1px solid rgba(255, 255, 255, 0.08);
	}

	.tdp-site-header__menu>.menu-item-has-children>a::after {
		margin-top: 0;
		border-top-color: rgba(255, 255, 255, 0.55);
	}

	/* Cajón móvil: acordeón (submenús cerrados salvo clase .is-submenu-open; ver tdp-header-nav.js) */
	.tdp-site-header__menu--drawer li.menu-item-has-children {
		display: flex;
		flex-wrap: wrap;
		align-items: stretch;
		border-bottom: 1px solid rgba(255, 255, 255, 0.08);
	}

	.tdp-site-header__menu--drawer li.menu-item-has-children > a {
		flex: 1 1 auto;
		min-width: 0;
		border-bottom: none;
		justify-content: flex-start;
	}

	.tdp-site-header__menu--drawer li.menu-item-has-children > .tdp-drawer-nav__subtoggle {
		flex: 0 0 4.6rem;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		align-self: stretch;
		margin: 0;
		padding: 0;
		border: none;
		border-left: 1px solid rgba(255, 255, 255, 0.1);
		background: rgba(255, 255, 255, 0.05);
		color: rgba(255, 255, 255, 0.88);
		cursor: pointer;
		transition: background 0.15s ease, color 0.15s ease;
	}

	.tdp-site-header__menu--drawer li.menu-item-has-children > .tdp-drawer-nav__subtoggle:hover,
	.tdp-site-header__menu--drawer li.menu-item-has-children > .tdp-drawer-nav__subtoggle:focus-visible {
		background: rgba(229, 27, 32, 0.22);
		color: var(--tdp-white);
		outline: none;
	}

	.tdp-site-header__menu--drawer li.menu-item-has-children > .tdp-drawer-nav__subtoggle::after {
		content: "";
		display: block;
		width: 0.55em;
		height: 0.55em;
		margin-top: -0.2em;
		border-right: 2px solid currentColor;
		border-bottom: 2px solid currentColor;
		transform: rotate(45deg);
		transition: transform 0.2s ease, margin 0.2s ease;
	}

	.tdp-site-header__menu--drawer li.menu-item-has-children.is-submenu-open > .tdp-drawer-nav__subtoggle::after {
		margin-top: 0.15em;
		transform: rotate(-135deg);
	}

	.tdp-site-header__menu--drawer .menu-item-has-children > .sub-menu {
		display: none !important;
		flex: 0 0 100%;
		width: 100%;
	}

	.tdp-site-header__menu--drawer .menu-item-has-children.is-submenu-open > .sub-menu {
		display: block !important;
	}

	.tdp-site-header__menu--drawer > li > a {
		font-weight: 700;
		font-size: 1.48rem;
		letter-spacing: 0.055em;
	}

	.tdp-site-header__menu--drawer .sub-menu {
		position: static;
		min-width: 0;
		margin: 0;
		padding: 0.35rem 0 0.65rem 0.85rem;
		border: none;
		box-shadow: none;
		background: rgba(255, 255, 255, 0.04);
		border-radius: 0 0 6px 6px;
		font-size: 1.32rem;
		font-weight: 500;
		letter-spacing: 0.035em;
		text-transform: none;
	}

	.tdp-site-header__menu--drawer .sub-menu > li {
		border-bottom: 1px solid rgba(255, 255, 255, 0.06);
	}

	.tdp-site-header__menu--drawer .sub-menu > li:last-child {
		border-bottom: none;
	}

	.tdp-site-header__menu--drawer .sub-menu > li > a {
		color: rgba(255, 255, 255, 0.82);
		font-weight: 500;
		font-size: 1.3rem;
	}

	.tdp-site-header__menu--drawer .sub-menu .sub-menu {
		background: rgba(0, 0, 0, 0.35);
		padding-left: 1rem;
		margin: 0.3rem 0 0.45rem;
		border-radius: 6px;
	}

	.tdp-site-header__menu--drawer .sub-menu .sub-menu > li > a {
		font-size: 1.22rem;
		font-weight: 400;
		color: rgba(255, 255, 255, 0.74);
	}

	.tdp-site-header__menu--drawer .sub-menu .sub-menu .sub-menu > li > a {
		font-size: 1.14rem;
		color: rgba(255, 255, 255, 0.68);
	}

	.tdp-site-header__menu--drawer > .menu-item-has-children > a::after {
		content: none;
	}

	.tdp-site-header__menu:not(.tdp-site-header__menu--drawer) .sub-menu {
		position: static;
		display: block;
		min-width: 0;
		margin: 0;
		padding: 0 0 0.5rem 0.75rem;
		border: none;
		border-radius: 0;
		box-shadow: none;
		background: transparent;
		font-size: 1.35rem;
		font-weight: 400;
	}

	.tdp-site-header__menu:not(.tdp-site-header__menu--drawer) li:hover > .sub-menu,
	.tdp-site-header__menu:not(.tdp-site-header__menu--drawer) li:focus-within > .sub-menu {
		display: block;
	}

	.tdp-site-header__menu .sub-menu a {
		padding: 0.55rem 0.25rem;
		border-bottom: 1px solid rgba(255, 255, 255, 0.06);
	}

	.tdp-site-header__menu--drawer .sub-menu li.menu-item-has-children > a {
		border-bottom: none;
	}

	.tdp-site-header__menu--drawer .sub-menu a {
		border-bottom: none;
	}

	.tdp-site-header__menu>li.tdp-nav-promo>a {
		border-radius: 8px;
		margin-top: 0.6rem;
		justify-content: center;
		border-bottom: none;
	}
}

@media (min-width: 992px) {
	.tdp-site-header__nav-toggle {
		display: none !important;
	}

	.tdp-site-header__nav-panel {
		display: contents;
	}

	.tdp-site-header__nav-close {
		display: none !important;
	}

	.tdp-site-header__nav-wrap {
		position: relative !important;
		inset: auto !important;
		display: block !important;
		visibility: visible !important;
		opacity: 1 !important;
		pointer-events: auto !important;
		background: var(--tdp-header-bg) !important;
		transform: none !important;
		padding-top: 1rem !important;
		padding-bottom: 1rem !important;
		overflow: visible !important;
		box-shadow: none !important;
	}

	.tdp-site-header__nav-wrap .site-container {
		overflow: visible;
	}

	.tdp-site-header__nav {
		padding-top: 0;
		padding-bottom: 0;
		overflow-x: visible;
		overflow-y: visible;
	}

	.tdp-site-header__menu>li>a:has(> .promo),
	.tdp-site-header__menu>li>a:has(> .PROMO) {
		padding: 0;
	}

	.tdp-site-header__nav-panel {
		transform: none !important;
	}

	.tdp-site-header--menu-open .tdp-site-header__nav-panel {
		transform: none !important;
	}
}

@media (max-width: 575.98px) {
	.tdp-site-header__top-inner {
		flex-direction: column;
		align-items: flex-start;
	}

	.tdp-site-header__promo {
		width: 100%;
	}

	.tdp-site-header__tool-wrap {
		max-width: none;
		flex: 1 1 12rem;
	}

	.tdp-site-header__tool {
		max-width: none;
		flex: 1 1 12rem;
	}

	.tdp-site-header__wishlist-panel {
		left: 0;
		right: auto;
		width: min(22rem, calc(100vw - 2rem));
	}

	.tdp-site-header__tool-line--sub {
		font-size: 1.1rem;
	}

	.tdp-site-header__tool-line--lead {
		font-size: 1.35rem;
	}
}

/* =============================================================================
 * Página «Lista de deseos» (plantilla + YITH [yith_wcwl_wishlist])
 * ============================================================================= */
.tdp-wishlist-page {
	padding: 2rem 0 4rem;
	color: rgba(255, 255, 255, 0.9);
}

/* Título duplicado del plugin YITH: la plantilla de página ya muestra «Mis favoritos». */
.tdp-wishlist-page .wishlist-title-container {
	display: none !important;
}

/* Una sola columna a todo el ancho útil (--tdp-max), sin hueco de «sidebar» de tienda. */
.site-container.site-container--woocommerce.tdp-wishlist-page {
	grid-template-columns: 1fr;
	width: 100%;
	max-width: min(100%, var(--tdp-max));
	margin-left: auto;
	margin-right: auto;
	box-sizing: border-box;
}

.site-container.site-container--woocommerce.tdp-wishlist-page .site-main.site-main--shop {
	width: 100%;
	max-width: 100%;
	min-width: 0;
}

.tdp-wishlist-page .tdp-wishlist-page__article,
.tdp-wishlist-page .tdp-wishlist-page__content {
	width: 100%;
	max-width: 100%;
	min-width: 0;
}

.tdp-wishlist-page .yith-wcwl-form {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

.tdp-wishlist-page__content .tdp-wishlist-page__notice {
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-size: 1.45rem;
	font-weight: 400;
	line-height: 1.55;
	max-width: 52rem;
	margin: 0;
	color: rgba(255, 255, 255, 0.82);
}

.tdp-wishlist-page__content .tdp-wishlist-page__actions {
	margin-top: 1.35rem;
}

/* Lista con productos: mismo lenguaje visual que el estado vacío (panel oscuro sobre fondo negro) */
.tdp-wishlist-page .yith-wcwl-form:has(table.wishlist_table:not(:has(.tdp-wishlist-empty-cell))),
.tdp-wishlist-page .yith-wcwl-form:has(ul.wishlist_table:not(:has(.tdp-wishlist-empty-li))) {
	max-width: 100%;
	margin: 0;
	padding: clamp(1.4rem, 2.2vw, 2.2rem);
	background: #161616;
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: clamp(14px, 2vw, 22px);
	box-shadow: 0 20px 60px rgba(0, 0, 0, 0.45);
}

.tdp-wishlist-page .wishlist_table:not(:has(.tdp-wishlist-empty-cell)),
.tdp-wishlist-page .woocommerce table.shop_table.wishlist_table:not(:has(.tdp-wishlist-empty-cell)) {
	width: 100% !important;
	max-width: 100%;
	margin: 0;
	background: transparent;
	border: none;
	border-radius: 0;
	border-collapse: collapse;
	table-layout: auto;
}

.tdp-wishlist-page .wishlist_table:not(:has(.tdp-wishlist-empty-cell)) thead th {
	padding: 1rem 0.95rem;
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-size: 1.2rem;
	font-weight: 600;
	line-height: 1.3;
	text-align: left;
	vertical-align: middle;
	letter-spacing: 0.02em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.88);
	background: #222222;
	border: none;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.tdp-wishlist-page .wishlist_table:not(:has(.tdp-wishlist-empty-cell)) tbody tr {
	background: transparent !important;
}

.tdp-wishlist-page .wishlist_table:not(:has(.tdp-wishlist-empty-cell)) tbody tr:nth-child(odd),
.tdp-wishlist-page .wishlist_table:not(:has(.tdp-wishlist-empty-cell)) tbody tr:nth-child(even) {
	background: transparent !important;
}

.tdp-wishlist-page .wishlist_table:not(:has(.tdp-wishlist-empty-cell)) tbody td {
	padding: 1.1rem 0.95rem;
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-size: 1.32rem;
	line-height: 1.45;
	vertical-align: middle;
	color: rgba(255, 255, 255, 0.92) !important;
	background: #1a1a1a !important;
	border: none;
	border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.tdp-wishlist-page .wishlist_table:not(:has(.tdp-wishlist-empty-cell)) tbody tr:nth-child(even) td,
.tdp-wishlist-page .wishlist_table:not(:has(.tdp-wishlist-empty-cell)) tbody tr:nth-child(odd) td {
	background: #1a1a1a !important;
}

/* WooCommerce aplica fondos claros a `.shop_table.cart` — reforzar en contexto tienda. */
.woocommerce .tdp-wishlist-page table.shop_table.cart.wishlist_table:not(:has(.tdp-wishlist-empty-cell)) tbody td {
	background: #1a1a1a !important;
	color: rgba(255, 255, 255, 0.92) !important;
}

.tdp-wishlist-page .wishlist_table:not(:has(.tdp-wishlist-empty-cell)) tbody tr:last-child td {
	border-bottom: none;
}

.tdp-wishlist-page .wishlist_table:not(:has(.tdp-wishlist-empty-cell)) .product-thumbnail img {
	max-width: 6.4rem;
	height: auto;
	border-radius: 8px;
	vertical-align: middle;
	border: 1px solid rgba(255, 255, 255, 0.08);
}

.tdp-wishlist-page .wishlist_table:not(:has(.tdp-wishlist-empty-cell)) .product-name,
.tdp-wishlist-page .wishlist_table:not(:has(.tdp-wishlist-empty-cell)) .product-name a {
	color: #ffffff !important;
	text-decoration: none;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	font-size: 1.25rem;
}

.tdp-wishlist-page .wishlist_table:not(:has(.tdp-wishlist-empty-cell)) .product-name a:hover,
.tdp-wishlist-page .wishlist_table:not(:has(.tdp-wishlist-empty-cell)) .product-name a:focus {
	color: var(--tdp-primary);
}

.tdp-wishlist-page .wishlist_table:not(:has(.tdp-wishlist-empty-cell)) .product-price {
	color: rgba(255, 255, 255, 0.95) !important;
}

.tdp-wishlist-page .wishlist_table:not(:has(.tdp-wishlist-empty-cell)) .product-price del {
	opacity: 0.45;
	font-weight: 500;
	text-decoration: line-through;
	color: rgba(255, 255, 255, 0.55);
}

.tdp-wishlist-page .wishlist_table:not(:has(.tdp-wishlist-empty-cell)) .product-price ins {
	text-decoration: none;
	background: transparent;
	color: var(--tdp-primary);
	font-weight: 800;
}

.tdp-wishlist-page .wishlist_table:not(:has(.tdp-wishlist-empty-cell)) .product-price a {
	color: inherit;
	text-decoration: none;
}

.tdp-wishlist-page .wishlist_table:not(:has(.tdp-wishlist-empty-cell)) .woocommerce-Price-amount {
	color: inherit;
}

.tdp-wishlist-page .wishlist_table:not(:has(.tdp-wishlist-empty-cell)) .wishlist-in-stock {
	color: #3ddc84;
	letter-spacing: 0.02em;
}

.tdp-wishlist-page .wishlist_table:not(:has(.tdp-wishlist-empty-cell)) .wishlist-out-of-stock {
	color: #ff6b6b;
}

.tdp-wishlist-page .wishlist_table:not(:has(.tdp-wishlist-empty-cell)) .product-remove a,
.tdp-wishlist-page .wishlist_table:not(:has(.tdp-wishlist-empty-cell)) .product-remove a.remove_from_wishlist {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2.8rem;
	min-height: 2.8rem;
	padding: 0;
	font-size: 1.5rem;
	line-height: 1;
	color: var(--tdp-primary) !important;
	text-decoration: none !important;
	background: rgba(0, 0, 0, 0.35) !important;
	border: 1px solid rgba(255, 255, 255, 0.1) !important;
	border-radius: 50%;
	box-shadow: none !important;
}

.tdp-wishlist-page .wishlist_table:not(:has(.tdp-wishlist-empty-cell)) .product-remove a:hover,
.tdp-wishlist-page .wishlist_table:not(:has(.tdp-wishlist-empty-cell)) .product-remove a:focus {
	color: #ffffff !important;
	background: var(--tdp-primary) !important;
	border-color: var(--tdp-primary) !important;
}

.tdp-wishlist-page .wishlist_table:not(:has(.tdp-wishlist-empty-cell)) a.button,
.tdp-wishlist-page .wishlist_table:not(:has(.tdp-wishlist-empty-cell)) .add_to_cart.button,
.tdp-wishlist-page .wishlist_table:not(:has(.tdp-wishlist-empty-cell)) a.add_to_cart_button,
.tdp-wishlist-page .wishlist_table:not(:has(.tdp-wishlist-empty-cell)) a.add_to_cart {
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-size: 1.25rem;
	padding: 0;
	border-radius: 0;
	background: transparent !important;
	color: var(--tdp-primary) !important;
	border: none !important;
	text-decoration: underline !important;
	text-underline-offset: 0.25em;
	box-shadow: none !important;
}

.tdp-wishlist-page .wishlist_table:not(:has(.tdp-wishlist-empty-cell)) a.button:hover,
.tdp-wishlist-page .wishlist_table:not(:has(.tdp-wishlist-empty-cell)) .add_to_cart.button:hover,
.tdp-wishlist-page .wishlist_table:not(:has(.tdp-wishlist-empty-cell)) a.add_to_cart_button:hover,
.tdp-wishlist-page .wishlist_table:not(:has(.tdp-wishlist-empty-cell)) a.add_to_cart:hover {
	color: #ffffff !important;
	text-decoration: underline !important;
}

.tdp-wishlist-page .wishlist_table:not(:has(.tdp-wishlist-empty-cell)) .product-quantity input {
	background: #2a2a2a;
	border: 1px solid rgba(255, 255, 255, 0.15);
	color: #ffffff;
	border-radius: 6px;
}

.tdp-wishlist-page .wishlist_table:not(:has(.tdp-wishlist-empty-cell)) tr.wishlist-pagination td,
.tdp-wishlist-page .wishlist_table:not(:has(.tdp-wishlist-empty-cell)) tr.pagination-row td {
	background: transparent;
	border-bottom: none;
	padding-top: 1.25rem;
}

.tdp-wishlist-page .wishlist_table:not(:has(.tdp-wishlist-empty-cell)) .product-checkbox input {
	accent-color: var(--tdp-primary);
}

/* Pie del formulario y compartir (dentro del panel oscuro) */
.tdp-wishlist-page .yith-wcwl-form:has(table.wishlist_table:not(:has(.tdp-wishlist-empty-cell))) .yith_wcwl_wishlist_footer,
.tdp-wishlist-page .yith-wcwl-form:has(ul.wishlist_table:not(:has(.tdp-wishlist-empty-li))) .yith_wcwl_wishlist_footer {
	margin-top: 1.5rem;
	padding-top: 1.5rem;
	border-top: 1px solid rgba(255, 255, 255, 0.1);
	color: rgba(255, 255, 255, 0.88);
}

.tdp-wishlist-page .yith-wcwl-form:has(table.wishlist_table:not(:has(.tdp-wishlist-empty-cell))) .yith_wcwl_wishlist_bulk_action label,
.tdp-wishlist-page .yith-wcwl-form:has(table.wishlist_table:not(:has(.tdp-wishlist-empty-cell))) .yith_wcwl_wishlist_update,
.tdp-wishlist-page .yith-wcwl-form:has(ul.wishlist_table:not(:has(.tdp-wishlist-empty-li))) .yith_wcwl_wishlist_bulk_action label,
.tdp-wishlist-page .yith-wcwl-form:has(ul.wishlist_table:not(:has(.tdp-wishlist-empty-li))) .yith_wcwl_wishlist_update {
	color: rgba(255, 255, 255, 0.75);
	font-size: 1.3rem;
}

.tdp-wishlist-page .yith-wcwl-form:has(table.wishlist_table:not(:has(.tdp-wishlist-empty-cell))) .yith_wcwl_wishlist_bulk_action select,
.tdp-wishlist-page .yith-wcwl-form:has(table.wishlist_table:not(:has(.tdp-wishlist-empty-cell))) .yith_wcwl_wishlist_bulk_action input[type="submit"],
.tdp-wishlist-page .yith-wcwl-form:has(ul.wishlist_table:not(:has(.tdp-wishlist-empty-li))) .yith_wcwl_wishlist_bulk_action select,
.tdp-wishlist-page .yith-wcwl-form:has(ul.wishlist_table:not(:has(.tdp-wishlist-empty-li))) .yith_wcwl_wishlist_bulk_action input[type="submit"] {
	font-size: 1.25rem;
	border-radius: 8px;
	background: #2a2a2a;
	color: #ffffff;
	border: 1px solid rgba(255, 255, 255, 0.12);
}

.tdp-wishlist-page .yith-wcwl-share {
	margin-top: 1.25rem;
}

.tdp-wishlist-page .yith-wcwl-form:has(table.wishlist_table:not(:has(.tdp-wishlist-empty-cell))) .yith-wcwl-share-title,
.tdp-wishlist-page .yith-wcwl-form:has(ul.wishlist_table:not(:has(.tdp-wishlist-empty-li))) .yith-wcwl-share-title {
	margin: 0 0 1rem;
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-size: 1.35rem;
	color: #ffffff;
}

.tdp-wishlist-page .yith-wcwl-share ul {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.75rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.tdp-wishlist-page .yith-wcwl-share .share-button a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 3.6rem;
	height: 3.6rem;
	padding: 0;
	border-radius: 10px;
	text-decoration: none !important;
	border: 1px solid rgba(0, 0, 0, 0.08);
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
	transition:
		transform 0.15s ease,
		box-shadow 0.15s ease;
}

.tdp-wishlist-page .yith-wcwl-share .share-button a:hover {
	transform: translateY(-2px);
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
}

.tdp-wishlist-page .yith-wcwl-share .share-button a.facebook {
	background: #1877f2;
	color: #ffffff;
}

.tdp-wishlist-page .yith-wcwl-share .share-button a.twitter {
	background: #0f1419;
	color: #ffffff;
}

.tdp-wishlist-page .yith-wcwl-share .share-button a.pinterest {
	background: #e60023;
	color: #ffffff;
}

.tdp-wishlist-page .yith-wcwl-share .share-button a.email {
	background: #f4b400;
	color: #1a1a1a;
}

.tdp-wishlist-page .yith-wcwl-share .share-button a.whatsapp {
	background: #25d366;
	color: #ffffff;
}

.tdp-wishlist-page .yith-wcwl-share .share-button a i {
	font-size: 1.6rem;
	line-height: 1;
}

/* Vista móvil YITH (lista de ítems) */
.tdp-wishlist-page ul.wishlist_table.wishlist_view.mobile:not(:has(.tdp-wishlist-empty-li)) {
	margin: 0;
	padding: 0;
	list-style: none;
	background: transparent;
	border: none;
}

.tdp-wishlist-page ul.wishlist_table.wishlist_view.mobile:not(:has(.tdp-wishlist-empty-li))>li {
	margin-bottom: 1rem;
	padding: 1.2rem;
	background: #1a1a1a;
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 12px;
}

.tdp-wishlist-page ul.wishlist_table.wishlist_view.mobile:not(:has(.tdp-wishlist-empty-li)) .product-name a,
.tdp-wishlist-page ul.wishlist_table.wishlist_view.mobile:not(:has(.tdp-wishlist-empty-li)) .product-name h3 a {
	color: #ffffff;
	text-decoration: none;
	text-transform: uppercase;
	letter-spacing: 0.03em;
}

.tdp-wishlist-page ul.wishlist_table.wishlist_view.mobile:not(:has(.tdp-wishlist-empty-li)) .wishlist-in-stock {
	font-weight: 600;
	color: #1a9f4a;
}

.tdp-wishlist-page ul.wishlist_table.wishlist_view.mobile:not(:has(.tdp-wishlist-empty-li)) .remove_from_wishlist {
	color: var(--tdp-primary) !important;
	text-decoration: none !important;
}

.tdp-wishlist-page ul.wishlist_table.wishlist_view.mobile:not(:has(.tdp-wishlist-empty-li)) .item-details,
.tdp-wishlist-page ul.wishlist_table.wishlist_view.mobile:not(:has(.tdp-wishlist-empty-li)) .item-details-table {
	color: rgba(255, 255, 255, 0.85);
}

.tdp-wishlist-page ul.wishlist_table.wishlist_view.mobile:not(:has(.tdp-wishlist-empty-li)) a.button,
.tdp-wishlist-page ul.wishlist_table.wishlist_view.mobile:not(:has(.tdp-wishlist-empty-li)) .add_to_cart_button {
	background: transparent !important;
	color: var(--tdp-primary) !important;
	border: none !important;
	text-decoration: underline !important;
}

@media (max-width: 767.98px) {

	.tdp-wishlist-page .yith-wcwl-form:has(table.wishlist_table:not(:has(.tdp-wishlist-empty-cell))),
	.tdp-wishlist-page .yith-wcwl-form:has(ul.wishlist_table:not(:has(.tdp-wishlist-empty-li))) {
		padding: 1rem;
	}
}

/* Cabecera «Mis favoritos» (plantilla página lista de deseos) */
.tdp-wishlist-page__header .tdp-wishlist-page__title {
	font-family: var(--tdp-font-heading), Arial, Helvetica, sans-serif;
	font-size: 2.8rem;
	font-weight: 400;
	line-height: 1.1;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	margin: 0 0 0.8rem;
	color: var(--tdp-white);
}

.tdp-wishlist-page__title-line {
	display: block;
}

.tdp-wishlist-page__title-accent {
	color: var(--tdp-primary);
}

.tdp-wishlist-page__subtitle {
	margin: 0 0 2.4rem;
	max-width: 48rem;
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-size: 1.45rem;
	font-weight: 400;
	line-height: 1.45;
	color: rgba(255, 255, 255, 0.55);
}

.tdp-wishlist-page__subtitle--has-items {
	margin-bottom: 0.5rem;
	font-size: 1.65rem;
	font-weight: 600;
	color: rgba(255, 255, 255, 0.92);
}

.tdp-wishlist-page__lede--has-items {
	margin: 0 0 2rem;
	max-width: 48rem;
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-size: 1.35rem;
	font-weight: 400;
	line-height: 1.5;
	color: rgba(255, 255, 255, 0.52);
}

/* Tabla YITH vacía: quitar rejilla y mostrar solo el bloque diseñado */
.tdp-wishlist-page .wishlist_table:has(.tdp-wishlist-empty-cell) {
	display: block;
	width: 100%;
	background: transparent;
	border: none;
	border-radius: 0;
	box-shadow: none;
}

.tdp-wishlist-page .wishlist_table:has(.tdp-wishlist-empty-cell) thead {
	display: none !important;
}

.tdp-wishlist-page .wishlist_table:has(.tdp-wishlist-empty-cell) tbody {
	display: block;
}

.tdp-wishlist-page .wishlist_table:has(.tdp-wishlist-empty-cell) tbody tr.tdp-wishlist-empty-row {
	display: block;
}

.tdp-wishlist-page .wishlist_table:has(.tdp-wishlist-empty-cell) td.tdp-wishlist-empty-cell {
	display: block;
	width: 100% !important;
	padding: 0;
	border: 0;
	vertical-align: top;
	text-align: center;
	background: transparent;
}

/* Vista móvil YITH: lista vacía */
.tdp-wishlist-page ul.wishlist_table.wishlist_view.mobile:has(.tdp-wishlist-empty-li) {
	display: block;
	width: 100%;
	list-style: none;
	margin: 0;
	padding: 0;
	background: transparent;
	border: none;
	border-radius: 0;
}

.tdp-wishlist-page ul.wishlist_table:has(.tdp-wishlist-empty-li) .tdp-wishlist-empty-li {
	display: block;
	width: 100%;
	padding: 0;
	margin: 0;
	border: none;
	list-style: none;
}

/* Bloque estado vacío */
.tdp-wishlist-empty {
	width: 100%;
	max-width: 92rem;
	margin: 0 auto;
	text-align: center;
}

.tdp-wishlist-empty__panel {
	margin: 0 auto;
	padding: clamp(2.4rem, 4vw, 4rem) clamp(1.8rem, 4vw, 3.6rem) clamp(2.8rem, 4vw, 4.2rem);
	background: #161616;
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: clamp(16px, 2vw, 24px);
	box-shadow: 0 20px 60px rgba(0, 0, 0, 0.45);
}

.tdp-wishlist-empty__hero {
	margin-bottom: 2rem;
}

.tdp-wishlist-empty__hero-ring {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: clamp(7.2rem, 12vw, 9.6rem);
	height: clamp(7.2rem, 12vw, 9.6rem);
	border-radius: 50%;
	background: #222222;
	border: 1px solid rgba(255, 255, 255, 0.06);
}

.tdp-wishlist-empty__hero-icon {
	font-size: 4.2rem !important;
	font-variation-settings: "FILL" 0, "wght" 200, "GRAD" 0, "opsz" 48;
	color: rgba(255, 255, 255, 0.45);
	line-height: 1 !important;
}

.tdp-wishlist-empty__heading {
	font-family: var(--tdp-font-heading), Arial, Helvetica, sans-serif;
	font-size: 2.1rem;
	font-weight: 400;
	line-height: 1.2;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--tdp-white);
	margin: 0 0 1.2rem;
}

.tdp-wishlist-empty__heading-accent {
	color: var(--tdp-primary);
}

.tdp-wishlist-empty__lead {
	max-width: 52rem;
	margin: 0 auto 2.8rem;
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-size: 1.45rem;
	line-height: 1.65;
	color: rgba(255, 255, 255, 0.58);
}

.tdp-wishlist-empty__inline-heart {
	display: inline-block;
	vertical-align: -0.35em;
	margin: 0 0.25em;
	font-size: 1.6rem !important;
	font-variation-settings: "FILL" 0, "wght" 400, "GRAD" 0, "opsz" 24;
	color: rgba(255, 255, 255, 0.5);
	line-height: 1 !important;
}

.tdp-wishlist-empty__features {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.2rem;
	margin: 0 0 2.8rem;
	padding: 0;
	list-style: none;
	text-align: left;
}

@media (min-width: 720px) {
	.tdp-wishlist-empty__features {
		grid-template-columns: repeat(3, 1fr);
		gap: 1.4rem;
	}
}

.tdp-wishlist-empty__feature {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.6rem;
	padding: 1.6rem 1.4rem;
	background: #1c1c1c;
	border: 1px solid rgba(255, 255, 255, 0.07);
	border-radius: 14px;
	min-height: 100%;
}

.tdp-wishlist-empty__feature-icon {
	font-size: 2.4rem !important;
	line-height: 1 !important;
	font-variation-settings: "FILL" 0, "wght" 300, "GRAD" 0, "opsz" 48;
}

.tdp-wishlist-empty__feature-icon--heart {
	color: #ff5c8d;
}

.tdp-wishlist-empty__feature-icon--star {
	color: #e6c35c;
}

.tdp-wishlist-empty__feature-icon--bag {
	color: #4cd964;
}

.tdp-wishlist-empty__feature-title {
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-size: 1.45rem;
	color: var(--tdp-white);
}

.tdp-wishlist-empty__feature h3.tdp-wishlist-empty__feature-title {
	margin: 0;
}

.tdp-wishlist-empty__feature-text {
	font-size: 1.3rem;
	line-height: 1.45;
	color: rgba(255, 255, 255, 0.52);
}

/* KPI en fila (archivo tiendas, etc.) — tokens del tema. */
.tdp-kpi-row {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: clamp(1rem, 4vw, 2.5rem);
	margin: 0 0 2.5rem;
}

.tdp-kpi {
	min-width: 7rem;
	padding: 1rem 1.25rem;
	border-radius: 10px;
	text-align: center;
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(255, 255, 255, 0.08);
}

.tdp-kpi__value {
	display: block;
	font-family: var(--tdp-font-heading), Arial, Helvetica, sans-serif;
	font-size: var(--tdp-h4);
	font-weight: 400;
	color: var(--tdp-primary);
	line-height: 1.2;
}

.tdp-kpi__label {
	display: block;
	margin-top: 0.35rem;
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-size: var(--tdp-h6);
	font-weight: 500;
	color: rgba(255, 255, 255, 0.72);
}

/*
 * Archivo «tiendas»: hero y sección «por qué» reutilizan la tarjeta de
 * .tdp-wishlist-empty__feature* (mismo fondo, borde, tipografía de título/cuerpo).
 */
/* H1: misma tipografía de títulos que §3 (h1–h6): Russo One, --tdp-h1, etc. */
body.tdp-is-tiendas-archive .tdp-tiendas-hero h1 {
	margin: 0 0 0.65rem;
	text-align: center;
	text-transform: uppercase;
}

/* Migas Yoast bajo el H1 (archivo + ficha tiendas). Ajusta --tdp-bc-font-size en :root o aquí. */
body.tdp-is-tiendas-archive,
body.tdp-is-tienda-single {
	--tdp-bc-font-size: 0.875rem;
	--tdp-bc-line-height: 1.55;
	--tdp-bc-space-after: clamp(1rem, 2.4vw, 1.85rem);
}

body.tdp-is-tiendas-archive .tdp-tiendas-hero .tdp-tiendas-yoast-wrap {
	margin: 0 auto var(--tdp-bc-space-after);
	padding: 0;
	max-width: 100%;
	text-align: center;
}

body.tdp-is-tienda-single .tdp-tienda-single__hero .tdp-tiendas-yoast-wrap {
	margin: 0 0 var(--tdp-bc-space-after);
	padding: 0;
	text-align: left;
}

body.tdp-is-tiendas-archive .tdp-tiendas-yoast-breadcrumb,
body.tdp-is-tienda-single .tdp-tiendas-yoast-breadcrumb {
	font-family: var(--tdp-font-body), "Poppins", sans-serif;
	font-size: var(--tdp-bc-font-size);
	line-height: var(--tdp-bc-line-height);
	font-weight: 400;
	color: rgba(255, 255, 255, 0.62);
}

body.tdp-is-tiendas-archive .tdp-tiendas-yoast-breadcrumb a,
body.tdp-is-tienda-single .tdp-tiendas-yoast-breadcrumb a {
	color: rgba(255, 255, 255, 0.9);
	text-decoration: none;
	border-bottom: 1px solid transparent;
	transition: color 0.2s ease, border-color 0.2s ease;
}

body.tdp-is-tiendas-archive .tdp-tiendas-yoast-breadcrumb a:hover,
body.tdp-is-tiendas-archive .tdp-tiendas-yoast-breadcrumb a:focus-visible,
body.tdp-is-tienda-single .tdp-tiendas-yoast-breadcrumb a:hover,
body.tdp-is-tienda-single .tdp-tiendas-yoast-breadcrumb a:focus-visible {
	color: var(--tdp-primary, #e51b20);
	border-bottom-color: rgba(229, 27, 32, 0.45);
}

body.tdp-is-tiendas-archive .tdp-tiendas-yoast-breadcrumb span,
body.tdp-is-tienda-single .tdp-tiendas-yoast-breadcrumb span {
	color: rgba(255, 255, 255, 0.52);
}

body.tdp-is-tiendas-archive .tdp-tiendas-yoast-breadcrumb strong,
body.tdp-is-tienda-single .tdp-tiendas-yoast-breadcrumb strong {
	color: rgba(255, 255, 255, 0.78);
	font-weight: 500;
}

body.tdp-is-tiendas-archive .tdp-tiendas-bc__current,
body.tdp-is-tienda-single .tdp-tiendas-bc__current {
	color: rgba(255, 255, 255, 0.78);
	font-weight: 500;
}

body.tdp-is-tiendas-archive .tdp-tiendas-yoast-breadcrumb--fallback .tdp-tiendas-bc__item a,
body.tdp-is-tienda-single .tdp-tiendas-yoast-breadcrumb--fallback .tdp-tiendas-bc__item a {
	color: rgba(255, 255, 255, 0.9);
	text-decoration: none;
}

body.tdp-is-tiendas-archive .tdp-tiendas-yoast-breadcrumb--fallback .tdp-tiendas-bc__item a:hover,
body.tdp-is-tiendas-archive .tdp-tiendas-yoast-breadcrumb--fallback .tdp-tiendas-bc__item a:focus-visible,
body.tdp-is-tienda-single .tdp-tiendas-yoast-breadcrumb--fallback .tdp-tiendas-bc__item a:hover,
body.tdp-is-tienda-single .tdp-tiendas-yoast-breadcrumb--fallback .tdp-tiendas-bc__item a:focus-visible {
	color: var(--tdp-primary, #e51b20);
}

/* Archivo + ficha «tiendas»: mismo ancho y márgenes que .site-container (:root --tdp-max, --tdp-gap). */
body.tdp-is-tiendas-archive .tdp-tiendas-archive__inner,
body.tdp-is-tienda-single .tdp-tiendas-archive__inner {
	width: 100%;
	max-width: min(100%, var(--tdp-max));
	margin-left: auto;
	margin-right: auto;
	padding-left: var(--tdp-gap);
	padding-right: var(--tdp-gap);
	box-sizing: border-box;
}

@media (max-width: 991.98px) {
	body.tdp-is-tiendas-archive .tdp-tiendas-archive__inner,
	body.tdp-is-tienda-single .tdp-tiendas-archive__inner {
		padding-left: 24px;
		padding-right: 24px;
	}
}

body.tdp-is-tiendas-archive .tdp-tiendas-hero .tdp-wishlist-empty__features {
	max-width: 92rem;
	margin-inline: auto;
	margin-bottom: 0;
	display: grid;
	grid-template-columns: 1fr;
	gap: 1rem;
}

@media (min-width: 480px) {
	body.tdp-is-tiendas-archive .tdp-tiendas-hero .tdp-wishlist-empty__features {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (min-width: 1024px) {
	body.tdp-is-tiendas-archive .tdp-tiendas-hero .tdp-wishlist-empty__features {
		grid-template-columns: repeat(4, 1fr);
		gap: 1.2rem 1.4rem;
	}
}

/* Chips del hero (captura: fila horizontal, gris carbón, icono rojo + texto blanco). */
body.tdp-is-tiendas-archive .tdp-tiendas-hero .tdp-wishlist-empty__feature {
	flex-direction: row;
	align-items: center;
	justify-content: flex-start;
	text-align: left;
	background: #1a1a1a;
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 10px;
	padding: 1rem 1.15rem;
	gap: 0.85rem;
	min-height: 0;
	transition:
		border-color 0.2s ease,
		box-shadow 0.2s ease,
		transform 0.12s ease;
}

body.tdp-is-tiendas-archive .tdp-tiendas-hero .tdp-wishlist-empty__feature:hover {
	border-color: rgba(255, 255, 255, 0.14);
	box-shadow: 0 6px 22px rgba(0, 0, 0, 0.38);
	transform: translateY(-2px);
}

body.tdp-is-tiendas-archive .tdp-tiendas-hero .tdp-wishlist-empty__feature-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 2.2rem;
	margin: 0 !important;
	font-size: 1.45rem !important;
	line-height: 1 !important;
	color: var(--tdp-primary) !important;
	font-variation-settings: initial;
}

body.tdp-is-tiendas-archive .tdp-tiendas-hero .tdp-wishlist-empty__feature-icon .fa-solid,
body.tdp-is-tiendas-archive .tdp-tiendas-hero .tdp-wishlist-empty__feature-icon .fa-brands {
	font-size: inherit;
}

body.tdp-is-tiendas-archive .tdp-tiendas-hero .tdp-wishlist-empty__feature-title {
	flex: 1;
	min-width: 0;
	margin: 0;
	text-align: left;
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-size: 1.45rem;
	font-weight: 500;
	line-height: 1.35;
	color: var(--tdp-white);
}

body.tdp-is-tiendas-archive .tdp-tiendas-cta-book .home-cta__title {
	text-align: center;
}

body.tdp-is-tiendas-archive .tdp-tiendas-cta-book__actions {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0.85rem 1rem;
	margin-top: 0.25rem;
}

body.tdp-is-tiendas-archive .tdp-tiendas-cta-book__actions .button {
	min-width: min(100%, 20rem);
	border-radius: 10px;
}

body.tdp-is-tiendas-archive .tdp-tiendas-cta-book__actions .button.button--primary,
body.tdp-is-tiendas-archive .tdp-tiendas-cta-book__actions .button.button--primary:hover,
body.tdp-is-tiendas-archive .tdp-tiendas-cta-book__actions .button.button--primary:focus,
body.tdp-is-tiendas-archive .tdp-tiendas-cta-book__actions .button.button--primary:focus-visible {
	box-shadow: none;
}

body.tdp-is-tiendas-archive .tdp-tiendas-cta-book__actions .button.button--hero-light,
body.tdp-is-tiendas-archive .tdp-tiendas-cta-book__actions .button.button--hero-light:hover,
body.tdp-is-tiendas-archive .tdp-tiendas-cta-book__actions .button.button--hero-light:focus,
body.tdp-is-tiendas-archive .tdp-tiendas-cta-book__actions .button.button--hero-light:focus-visible {
	box-shadow: none;
}

body.tdp-is-tiendas-archive .tdp-tiendas-cta-book .home-cta__title {
	margin-bottom: 0.75rem;
}

/* H2 sección: escala y familia de §3 (sin .home-cta__title, que fuerza --tdp-h4). */
body.tdp-is-tiendas-archive .tdp-tiendas-why .tdp-tiendas-why__heading {
	text-align: center;
	margin: 0 0 2rem;
}

body.tdp-is-tiendas-archive .tdp-tiendas-why .tdp-wishlist-empty__feature {
	display: grid;
	grid-template-columns: minmax(0, 3fr) minmax(0, 7fr);
	grid-template-rows: auto auto;
	column-gap: 1.2rem;
	row-gap: 0.35rem;
	align-items: start;
	background: #1a1a1a;
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 10px;
	padding: 1.4rem 1.25rem;
	min-width: 0;
}

body.tdp-is-tiendas-archive .tdp-tiendas-why .tdp-wishlist-empty__feature-title {
	grid-column: 2;
	grid-row: 1;
	font-family: var(--tdp-font-heading), Arial, Helvetica, sans-serif;
	font-size: var(--tdp-h5);
	font-weight: 400;
	letter-spacing: var(--tdp-heading-tracking);
	line-height: var(--tdp-heading-line);
	color: var(--tdp-white);
	margin: 0 0 0.35rem;
	text-align: left;
	min-width: 0;
}

body.tdp-is-tiendas-archive .tdp-tiendas-why .tdp-wishlist-empty__feature-text {
	grid-column: 2;
	grid-row: 2;
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-size: 1.25rem;
	line-height: 1.45;
	color: #a0a0a0;
	margin: 0;
	text-align: left;
	min-width: 0;
}

body.tdp-is-tiendas-archive .tdp-tiendas-why .tdp-wishlist-empty__feature-icon {
	grid-column: 1;
	grid-row: 1 / -1;
	align-self: center;
	justify-self: center;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 4.4rem;
	height: 4.4rem;
	margin: 0;
	border-radius: 0.8rem;
	font-size: 1.8rem !important;
	line-height: 1 !important;
	color: var(--tdp-white) !important;
	background: rgba(229, 27, 32, 0.22);
	font-variation-settings: initial;
}

body.tdp-is-tiendas-archive .tdp-tiendas-why .tdp-wishlist-empty__feature-icon .fa-solid {
	font-size: inherit;
}

body.tdp-is-tiendas-archive .tdp-tiendas-why .tdp-wishlist-empty__feature-icon--accent-blue {
	background: rgba(52, 152, 219, 0.22);
}

body.tdp-is-tiendas-archive .tdp-tiendas-why .tdp-wishlist-empty__feature-icon--accent-green {
	background: rgba(46, 204, 113, 0.2);
}

body.tdp-is-tiendas-archive .tdp-tiendas-why .tdp-wishlist-empty__feature-icon--accent-amber {
	background: rgba(241, 196, 15, 0.2);
}

body.tdp-is-tiendas-archive .tdp-tiendas-why .tdp-wishlist-empty__feature-icon--accent-violet {
	background: rgba(155, 89, 182, 0.22);
}

body.tdp-is-tiendas-archive .tdp-tiendas-why .tdp-wishlist-empty__feature-icon--accent-orange {
	background: rgba(230, 126, 34, 0.22);
}

body.tdp-is-tiendas-archive .tdp-tiendas-banner .home-cta__title {
	color: var(--tdp-white);
}

.tdp-wishlist-empty__cta-wrap {
	margin: 0;
}

.tdp-wishlist-empty__cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.6rem;
	padding: 1.2rem 2.4rem;
	min-height: 4.8rem;
	font-family: var(--tdp-font-heading), Arial, Helvetica, sans-serif;
	font-size: 1.4rem;
	font-weight: 400;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	text-decoration: none;
	color: var(--tdp-white);
	background: var(--tdp-primary);
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 12px;
	box-shadow: 0 8px 28px var(--tdp-shadow-primary);
	transition:
		background 0.2s ease,
		color 0.2s ease,
		transform 0.2s ease,
		box-shadow 0.2s ease;
}

.tdp-wishlist-empty__cta:hover,
.tdp-wishlist-empty__cta:focus {
	color: var(--tdp-white);
	background: var(--tdp-primary-dark);
	box-shadow: 0 10px 32px var(--tdp-shadow-primary-deep);
	transform: translateY(-1px);
}

.tdp-wishlist-empty__cta-arrow {
	font-size: 1.8rem !important;
	line-height: 1 !important;
}

.site-header__inner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: var(--tdp-gap);
}

.site-description {
	margin: 0.25rem 0 0;
	font-size: 1.4rem;
	color: rgba(255, 255, 255, 0.82);
}

.site-nav .menu {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.site-nav a {
	color: var(--tdp-white);
	text-decoration: none;
	font-weight: 500;
}

.site-nav a:hover,
.site-nav a:focus {
	color: var(--tdp-primary);
}

/* =============================================================================
 * 6. ENTRADAS / CONTENIDO
 * ============================================================================= */
.entry-header .entry-title {
	font-size: var(--tdp-h2);
}

.entry-content,
.entry-summary {
	color: rgba(255, 255, 255, 0.88);
}

.entry-content a,
.entry-summary a {
	color: var(--tdp-primary);
}

.entry-title a {
	color: inherit;
	text-decoration: none;
}

.entry-title a:hover,
.entry-title a:focus {
	color: var(--tdp-primary);
}

.entry-content img,
.post-thumbnail img {
	max-width: 100%;
	height: auto;
}

.entry-content h1 {
	font-size: var(--tdp-h1);
}

.entry-content h2 {
	font-size: var(--tdp-h2);
}

.entry-content h3 {
	font-size: var(--tdp-h3);
}

.entry-content h4 {
	font-size: var(--tdp-h4);
}

.entry-content h5 {
	font-size: var(--tdp-h5);
}

.entry-content h6 {
	font-size: var(--tdp-h6);
}

/* =============================================================================
 * 7. INICIO (HOME)
 * =============================================================================
 * Hero Jet: layout en assets/css/home/jet-hero.css (encolado en portada).
 * Color de la última línea del H1 del hero → aquí (campo Jet hero_title_red o línea final en title_slider).
 */

.home-hero.tdp-hero .tdp-hero__headline .tdp-hero__line--accent {
	color: var(--tdp-primary);
	text-shadow: 0 2px 28px var(--tdp-shadow-primary-deep);
}

.home-sections__grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(22rem, 1fr));
	gap: var(--tdp-gap);
	margin-bottom: 2.5rem;
}

.home-card {
	background: rgba(255, 255, 255, 0.06);
	padding: 1.25rem;
	border-radius: 8px;
	border-left: 4px solid var(--tdp-primary);
	box-shadow: 0 2px 12px rgba(0, 0, 0, 0.35);
}

.home-card__title {
	font-size: var(--tdp-h5);
	color: var(--tdp-text-on-dark);
	margin: 0 0 0.35rem;
}

.home-cta {
	background: rgba(255, 255, 255, 0.06);
	padding: 2rem;
	border-radius: 8px;
	text-align: center;
	margin-top: 2rem;
	border: 1px solid rgba(255, 255, 255, 0.1);
}

.home-cta__title {
	font-size: var(--tdp-h4);
	color: var(--tdp-text-on-dark);
	margin: 0 0 0.5rem;
}

/* H2 Jet: dos últimas palabras en rojo (.tdp-jet-hl--accent) */
.home-card__title .tdp-jet-hl--light,
.home-cta__title .tdp-jet-hl--light,
body.tdp-is-tiendas-archive .tdp-tiendas-hero h1 .tdp-jet-hl--light {
	color: var(--tdp-text-on-dark);
}

.home-card__title .tdp-jet-hl--accent,
.home-cta__title .tdp-jet-hl--accent,
body.tdp-is-tiendas-archive .tdp-tiendas-hero h1 .tdp-jet-hl--accent {
	color: var(--tdp-primary);
	text-shadow: 0 2px 16px var(--tdp-glow-primary);
}

.tdp-jet-hl--light+.tdp-jet-hl--accent {
	margin-inline-start: 0.2em;
}

/* =============================================================================
 * 8. BOTONES
 * ============================================================================= */
.button {
	display: inline-block;
	padding: 0.65rem 1.25rem;
	border-radius: 6px;
	text-decoration: none;
	font-weight: 600;
	border: 2px solid transparent;
	transition:
		background-color 0.2s ease,
		color 0.2s ease,
		box-shadow 0.2s ease,
		border-color 0.2s ease,
		transform 0.12s ease;
}

.button--primary {
	background: var(--tdp-primary);
	color: var(--tdp-white);
	box-shadow: 0 4px 14px var(--tdp-shadow-primary);
}

.button--primary:hover,
.button--primary:focus {
	background: var(--tdp-primary-dark);
	box-shadow: 0 6px 20px var(--tdp-shadow-primary-deep);
	color: var(--tdp-white);
}

.button--outline {
	border-color: var(--tdp-primary);
	color: var(--tdp-primary);
	background: transparent;
}

.button--outline:hover,
.button--outline:focus {
	background: var(--tdp-primary);
	color: var(--tdp-white);
	border-color: var(--tdp-primary-dark);
}

/* Botón claro (secundario sobre fondo oscuro o acento). */
.button--hero-light {
	background: var(--tdp-white);
	color: var(--tdp-text);
	border-color: var(--tdp-white);
	box-shadow: 0 4px 18px rgba(0, 0, 0, 0.25);
}

.button--hero-light:hover,
.button--hero-light:focus {
	background: rgba(255, 255, 255, 0.92);
	color: var(--tdp-text);
	border-color: rgba(255, 255, 255, 0.92);
	box-shadow: 0 6px 22px rgba(229, 27, 32, 0.2);
}

/* Contorno claro sobre fondo de marca (p. ej. banner archivo tiendas). */
.button--outline-light {
	border-color: var(--tdp-white);
	color: var(--tdp-white);
	background: transparent;
	box-shadow: none;
}

.button--outline-light:hover,
.button--outline-light:focus {
	background: rgba(255, 255, 255, 0.12);
	color: var(--tdp-white);
	border-color: var(--tdp-white);
}

/* Tarjeta tiendas — rejilla de acciones: archive-tiendas.css (.tdp-tiendas-card__actions). */

body.tdp-is-tiendas-archive .tdp-tiendas-banner__actions {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0.85rem 1rem;
}

body.tdp-is-tiendas-archive .tdp-tiendas-banner__actions .button:active,
body.tdp-is-tiendas-archive .tdp-tiendas-cta-book__actions .button:active {
	transform: scale(0.98);
}

/* =============================================================================
 * 9. WOOCOMMERCE
 * ============================================================================= */
.woocommerce .site-main--shop ul.products {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(20rem, 1fr));
	gap: var(--tdp-gap);
	list-style: none;
	margin: 0;
	padding: 0;
}

/*
 * WooCommerce layout.css fuerza float + width ~22% en li.product (rejilla clásica).
 * Con display:grid en ul, ese % es del *track* (celda), no del listado: las tarjetas
 * quedan como franjas finas y los botones se salen (p. ej. productos relacionados).
 */
.woocommerce .site-main--shop ul.products li.product {
	float: none !important;
	width: 100% !important;
	max-width: 100%;
	min-width: 0;
	margin-left: 0 !important;
	margin-right: 0 !important;
	box-sizing: border-box;
}

.woocommerce .site-main--shop ul.products li.product.first,
.woocommerce .site-main--shop ul.products li.product.last {
	clear: none !important;
}

.woocommerce .site-main--shop ul.products li.product a.button,
.woocommerce .site-main--shop ul.products li.product a.add_to_cart_button,
.woocommerce .site-main--shop ul.products li.product .button {
	max-width: 100%;
	box-sizing: border-box;
}

.woocommerce .wc-product-card {
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 8px;
	padding: 1rem;
	background: rgba(255, 255, 255, 0.06);
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.35);
	color: rgba(255, 255, 255, 0.92);
}

.woocommerce .wc-product-card a {
	color: var(--tdp-text-on-dark);
}

.woocommerce .wc-product-card a:hover,
.woocommerce .wc-product-card a:focus {
	color: var(--tdp-primary);
}

/* -----------------------------------------------------------------------------
 * Carrito — WooCommerce Blocks (`woocommerce/cart`, wc-block-*)
 * -------------------------------------------------------------------------- */
.site-container.site-container--woocommerce.tdp-cart-page {
	grid-template-columns: 1fr;
	width: 100%;
	max-width: min(100%, var(--tdp-max));
	margin-left: auto;
	margin-right: auto;
	box-sizing: border-box;
}

.site-container.site-container--woocommerce.tdp-cart-page .site-main {
	width: 100%;
	max-width: 100%;
	min-width: 0;
}

body.woocommerce-cart .entry-content .wp-block-woocommerce-cart.alignwide,
body.woocommerce-cart .entry-content .wp-block-woocommerce-cart.alignfull,
body.woocommerce-cart .entry-content .wp-block-woocommerce-cart {
	max-width: min(100%, var(--tdp-max));
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	box-sizing: border-box;
}

body.woocommerce-cart .wp-block-woocommerce-cart {
	color: rgba(255, 255, 255, 0.92);
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
}

body.woocommerce-cart .wc-block-components-sidebar-layout.wc-block-cart {
	gap: clamp(1.6rem, 3vw, var(--tdp-gap));
	align-items: flex-start;
}

/*
 * Carrito y checkout en bloques: @container del plugin puede forzar 1 columna.
 * Grid + order: formulario / líneas a la izquierda (ancha), resumen a la derecha.
 * Importante: el 1er hijo suele ser un div aria-hidden (medición); en grid ocupaba la 1ª celda y todo parecía 1 columna.
 */
@media (min-width: 782px) {

	body.woocommerce-cart .wc-block-components-sidebar-layout.wc-block-cart>div[aria-hidden="true"]:first-child,
	body.woocommerce-checkout .wc-block-components-sidebar-layout:not(.wc-block-cart)>div[aria-hidden="true"]:first-child {
		display: contents !important;
	}

	body.woocommerce-cart .wc-block-components-sidebar-layout.wc-block-cart,
	body.woocommerce-checkout .wc-block-components-sidebar-layout:not(.wc-block-cart) {
		display: grid !important;
		grid-template-columns: minmax(0, 1.72fr) minmax(0, 1fr) !important;
		gap: clamp(1.6rem, 3vw, var(--tdp-gap));
		align-items: start;
	}

	body.woocommerce-cart .wc-block-components-sidebar-layout.wc-block-cart>.wc-block-components-main.wc-block-cart__main {
		order: 1;
	}

	body.woocommerce-cart .wc-block-components-sidebar-layout.wc-block-cart>.wc-block-components-sidebar.wc-block-cart__sidebar {
		order: 2;
	}

	body.woocommerce-checkout .wc-block-components-sidebar-layout:not(.wc-block-cart)>.wc-block-components-main,
	body.woocommerce-checkout .wc-block-components-sidebar-layout:not(.wc-block-cart)>.wc-block-checkout__main {
		order: 1;
	}

	body.woocommerce-checkout .wc-block-components-sidebar-layout:not(.wc-block-cart)>.wc-block-components-sidebar,
	body.woocommerce-checkout .wc-block-components-sidebar-layout:not(.wc-block-cart)>.wc-block-checkout__sidebar {
		order: 2;
	}

	body.woocommerce-cart .wc-block-components-sidebar-layout.wc-block-cart>*,
	body.woocommerce-checkout .wc-block-components-sidebar-layout:not(.wc-block-cart)>* {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		margin: 0 !important;
	}
}

body.woocommerce-cart .wc-block-cart {
	padding-top: 0.5rem;
}

@media (min-width: 700px) {
	body.woocommerce-cart .wc-block-cart__main {
		background: #161616;
		border: 1px solid rgba(255, 255, 255, 0.08);
		border-radius: clamp(14px, 2vw, 22px);
		padding: clamp(1.2rem, 2vw, 2rem);
		box-shadow: 0 20px 60px rgba(0, 0, 0, 0.4);
		box-sizing: border-box;
	}
}

body.woocommerce-cart .wc-block-cart__main .wc-block-cart-items {
	border-bottom-color: rgba(255, 255, 255, 0.12) !important;
}

body.woocommerce-cart .wc-block-cart__main .wc-block-cart-items th {
	color: rgba(255, 255, 255, 0.78) !important;
	font-weight: 600;
	letter-spacing: 0.05em;
}

body.woocommerce-cart .wc-block-cart__main .wc-block-cart-items td {
	border-top-color: rgba(255, 255, 255, 0.08) !important;
}

body.woocommerce-cart .wc-block-components-product-name {
	color: #ffffff !important;
	font-size: 1.35rem !important;
	font-weight: 700 !important;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	text-decoration: none;
}

body.woocommerce-cart .wc-block-components-product-name:hover,
body.woocommerce-cart .wc-block-components-product-name:focus {
	color: var(--tdp-primary) !important;
}

/* Precios en la tabla: contraste alto (el plugin usa tipografía pequeña / color heredado). */
body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__header-product,
body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__header-product span {
	visibility: visible !important;
	color: rgba(255, 255, 255, 0.78) !important;
}

body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__prices,
body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__prices .price,
body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__prices .wc-block-components-product-price {
	color: #ffffff !important;
	font-size: 1.35rem !important;
	font-weight: 700 !important;
	line-height: 1.45;
	opacity: 1 !important;
}

body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__prices .wc-block-formatted-money-amount,
body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__prices .wc-block-components-formatted-money-amount,
body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__prices .wc-block-components-product-price__value,
body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__total .wc-block-components-product-price,
body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__total .wc-block-formatted-money-amount,
body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__total .wc-block-components-formatted-money-amount,
body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__total .wc-block-components-product-price__value,
body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__prices del,
body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__prices ins,
body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__prices del .wc-block-formatted-money-amount,
body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__prices ins .wc-block-formatted-money-amount,
body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__total del,
body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__total ins {
	color: #ffffff !important;
	font-size: 1.4rem !important;
}

body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__total .wc-block-formatted-money-amount,
body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__total .wc-block-components-formatted-money-amount {
	font-size: 1.5rem !important;
}

/* .entry-content a usa el rojo corporativo; no debe teñir los importes. */
body.woocommerce-cart .entry-content table.wc-block-cart-items .wc-block-cart-item__prices a,
body.woocommerce-cart .entry-content table.wc-block-cart-items .wc-block-cart-item__total a {
	color: #ffffff !important;
	text-decoration: none;
}

body.woocommerce-cart .entry-content .wc-block-cart__sidebar .wc-block-components-totals-item__value a,
body.woocommerce-cart .entry-content .wc-block-cart__sidebar .wc-block-components-formatted-money-amount {
	color: #ffffff !important;
}

body.woocommerce-cart .wc-block-cart-item__prices,
body.woocommerce-cart .wc-block-cart-item__total .wc-block-components-product-price {
	color: #ffffff !important;
	font-size: 1.35rem;
}

body.woocommerce-cart .wc-block-cart-item__prices .wc-block-components-formatted-money-amount,
body.woocommerce-cart .wc-block-cart-item__total .wc-block-components-formatted-money-amount,
body.woocommerce-cart .wc-block-cart .wc-block-formatted-money-amount,
body.woocommerce-cart .wc-block-cart .wc-block-components-product-price__value,
body.woocommerce-cart .wc-block-cart .wc-block-components-totals-footer-item-tax-value {
	color: #ffffff !important;
	font-weight: 800 !important;
	font-size: 1.45rem;
}

body.woocommerce-cart .wc-block-cart-item__image img {
	border-radius: 8px;
	border: 1px solid rgba(255, 255, 255, 0.1);
	vertical-align: middle;
}

body.woocommerce-cart .wc-block-components-product-metadata,
body.woocommerce-cart .wc-block-components-product-metadata__description p {
	color: rgba(255, 255, 255, 0.55);
	font-size: 1.2rem;
	line-height: 1.45;
}

body.woocommerce-cart .wc-block-components-quantity-selector {
	border-color: rgba(255, 255, 255, 0.28) !important;
	color: #ffffff;
	background: rgba(0, 0, 0, 0.35);
	border-radius: 8px;
}

body.woocommerce-cart .wc-block-components-quantity-selector__input {
	color: #ffffff !important;
}

body.woocommerce-cart .wc-block-components-quantity-selector__button {
	color: #ffffff !important;
	opacity: 0.75;
}

body.woocommerce-cart .wc-block-components-quantity-selector__button:hover,
body.woocommerce-cart .wc-block-components-quantity-selector__button:focus {
	opacity: 1;
}

body.woocommerce-cart .wc-block-cart-item__remove-link {
	color: rgba(255, 255, 255, 0.55) !important;
}

body.woocommerce-cart .wc-block-cart-item__remove-link:hover,
body.woocommerce-cart .wc-block-cart-item__remove-link:focus {
	color: var(--tdp-primary) !important;
}

body.woocommerce-cart .wc-block-cart__sidebar {
	background: #161616;
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: clamp(14px, 2vw, 22px);
	padding: clamp(1.2rem, 2vw, 2rem);
	box-shadow: 0 20px 60px rgba(0, 0, 0, 0.45);
	box-sizing: border-box;
}

body.woocommerce-cart .wc-block-cart .wp-block-woocommerce-cart-order-summary-block {
	border-bottom-color: rgba(255, 255, 255, 0.1);
}

body.woocommerce-cart .wc-block-cart__totals-title {
	color: rgba(255, 255, 255, 0.92) !important;
	font-weight: 700 !important;
	font-size: 1.15rem !important;
	letter-spacing: 0.06em;
	padding: 0 0 1rem !important;
	margin: 0 !important;
	background: transparent !important;
	border: 0 !important;
}

body.woocommerce-cart .wc-block-components-totals-item__label {
	color: rgba(255, 255, 255, 0.72);
	font-weight: 500;
}

body.woocommerce-cart .wc-block-components-totals-item__value,
body.woocommerce-cart .wc-block-components-totals-item__value .wc-block-components-formatted-money-amount {
	color: #ffffff !important;
	font-weight: 700 !important;
}

body.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__label {
	font-size: 1.35rem !important;
	color: rgba(255, 255, 255, 0.88) !important;
}

body.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__value,
body.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-formatted-money-amount {
	color: #ffffff !important;
	font-weight: 800 !important;
	font-size: 1.85rem !important;
}

body.woocommerce-cart .wp-block-woocommerce-cart-order-summary-totals-block {
	border-top-color: rgba(255, 255, 255, 0.1);
}

body.woocommerce-cart .wc-block-cart__submit {
	margin-top: 0.5rem;
	display: flex;
	flex-direction: column;
	align-items: stretch;
	width: 100%;
}

body.woocommerce-cart .wc-block-cart__submit-container {
	display: flex;
	flex-direction: column;
	width: 100%;
	align-items: stretch;
}

/* Botón «Finalizar compra»: plano (sin sombras / degradados del bloque o del core). */
body.woocommerce-cart .wc-block-cart__submit-button.wc-block-components-button,
body.woocommerce-cart a.wc-block-components-button.wc-block-cart__submit-button,
body.woocommerce-cart .wc-block-cart__submit-button.contained,
body.woocommerce-cart .wc-block-cart__submit-button.wp-element-button {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	background-color: var(--tdp-primary) !important;
	background-image: none !important;
	color: #ffffff !important;
	border: 0 !important;
	border-radius: 8px;
	font-size: 1.35rem;
	padding: 1rem 1.5rem;
	box-shadow: none !important;
	text-shadow: none !important;
	filter: none !important;
	-webkit-appearance: none;
	appearance: none;
	text-decoration: none;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	transition: background-color 0.2s ease, color 0.2s ease;
}

body.woocommerce-cart .wc-block-cart__submit-button .wc-block-components-button__text {
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 100%;
	text-align: center;
}

body.woocommerce-cart .wc-block-cart__submit-button.contained:hover,
body.woocommerce-cart .wc-block-cart__submit-button.contained:focus,
body.woocommerce-cart .wc-block-cart__submit-button.contained:active,
body.woocommerce-cart .wc-block-cart__submit-button.wp-element-button:hover,
body.woocommerce-cart .wc-block-cart__submit-button.wp-element-button:focus,
body.woocommerce-cart .wc-block-cart__submit-button.wp-element-button:focus-visible,
body.woocommerce-cart .wc-block-cart__submit-button.wp-element-button:active,
body.woocommerce-cart a.wc-block-components-button.wc-block-cart__submit-button:hover,
body.woocommerce-cart a.wc-block-components-button.wc-block-cart__submit-button:focus,
body.woocommerce-cart a.wc-block-components-button.wc-block-cart__submit-button:focus-visible,
body.woocommerce-cart a.wc-block-components-button.wc-block-cart__submit-button:active {
	background-color: var(--tdp-primary-dark) !important;
	background-image: none !important;
	color: #ffffff !important;
	box-shadow: none !important;
	filter: none !important;
	outline: none;
}

body.woocommerce-cart .wc-block-cart__submit-button.contained:focus-visible,
body.woocommerce-cart .wc-block-cart__submit-button.wp-element-button:focus-visible,
body.woocommerce-cart a.wc-block-components-button.wc-block-cart__submit-button:focus-visible {
	outline: 2px solid rgba(255, 255, 255, 0.55);
	outline-offset: 3px;
	box-shadow: none !important;
}

body.woocommerce-cart .wc-block-components-totals-coupon__input input[type="text"],
body.woocommerce-cart .wc-block-components-text-input input[type="text"],
body.woocommerce-cart .wc-block-components-text-input input[type="number"],
body.woocommerce-cart .wc-block-components-text-input input[type="email"] {
	background: #2a2a2a !important;
	border: 1px solid rgba(255, 255, 255, 0.18) !important;
	color: #ffffff !important;
	border-radius: 6px;
}

body.woocommerce-cart .wc-block-components-totals-coupon__button .wc-block-components-button,
body.woocommerce-cart .wc-block-components-totals-coupon__button button {
	border-radius: 6px;
}

body.woocommerce-cart .wc-block-components-notice-banner {
	background: #222222 !important;
	border: 1px solid rgba(255, 255, 255, 0.14) !important;
	color: rgba(255, 255, 255, 0.92) !important;
}

body.woocommerce-cart .wc-block-components-notice-banner.is-error {
	background: rgba(60, 12, 14, 0.95) !important;
	border-color: rgba(229, 27, 32, 0.45) !important;
}

body.woocommerce-cart .wc-block-components-notice-banner>svg {
	background-color: var(--tdp-primary) !important;
}

body.woocommerce-cart .wc-block-components-notice-banner .wc-forward {
	color: rgba(255, 255, 255, 0.9) !important;
}

@media (max-width: 782px) {
	body.woocommerce-cart .wc-block-cart__submit-container--sticky {
		background: #121212 !important;
		border-top: 1px solid rgba(255, 255, 255, 0.12) !important;
		box-shadow: 0 -8px 32px rgba(0, 0, 0, 0.5) !important;
	}

	body.woocommerce-cart .wc-block-cart__submit-container--sticky::before {
		color: rgba(0, 0, 0, 0.5) !important;
	}
}

body.woocommerce-cart .is-medium table.wc-block-cart-items:not(.wc-block-mini-cart-items):not(:last-child) .wc-block-cart-items__row,
body.woocommerce-cart .is-mobile table.wc-block-cart-items:not(.wc-block-mini-cart-items):not(:last-child) .wc-block-cart-items__row,
body.woocommerce-cart .is-small table.wc-block-cart-items:not(.wc-block-mini-cart-items):not(:last-child) .wc-block-cart-items__row {
	border-bottom-color: rgba(255, 255, 255, 0.1);
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wp-block-heading {
	color: rgba(255, 255, 255, 0.92);
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block a {
	color: var(--tdp-primary);
}

/* -----------------------------------------------------------------------------
 * Finalizar compra — WooCommerce Blocks (`woocommerce/checkout`)
 * -------------------------------------------------------------------------- */
.site-container.site-container--woocommerce.tdp-checkout-page {
	grid-template-columns: 1fr;
	width: 100%;
	max-width: min(100%, var(--tdp-max));
	margin-left: auto;
	margin-right: auto;
	box-sizing: border-box;
}

.site-container.site-container--woocommerce.tdp-checkout-page .site-main {
	width: 100%;
	max-width: 100%;
	min-width: 0;
}

body.woocommerce-checkout .entry-content .wp-block-woocommerce-checkout.alignwide,
body.woocommerce-checkout .entry-content .wp-block-woocommerce-checkout.alignfull,
body.woocommerce-checkout .entry-content .wp-block-woocommerce-checkout {
	max-width: min(100%, var(--tdp-max));
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	box-sizing: border-box;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout {
	color: rgba(255, 255, 255, 0.92);
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	padding-top: 0.5rem;
}

body.woocommerce-checkout .wc-block-components-sidebar-layout {
	gap: clamp(1.6rem, 3vw, var(--tdp-gap));
	align-items: flex-start;
}

@media (min-width: 700px) {
	body.woocommerce-checkout .wc-block-checkout__main {
		background: #161616;
		border: 1px solid rgba(255, 255, 255, 0.08);
		border-radius: clamp(14px, 2vw, 22px);
		padding: clamp(1.2rem, 2vw, 2rem);
		box-shadow: 0 20px 60px rgba(0, 0, 0, 0.4);
		box-sizing: border-box;
	}

	body.woocommerce-checkout .wc-block-checkout__sidebar {
		background: #161616;
		border: 1px solid rgba(255, 255, 255, 0.08);
		border-radius: clamp(14px, 2vw, 22px);
		padding: clamp(1.2rem, 2vw, 2rem);
		box-shadow: 0 20px 60px rgba(0, 0, 0, 0.45);
		box-sizing: border-box;
	}
}

body.woocommerce-checkout .wc-block-components-checkout-step__title,
body.woocommerce-checkout .wc-block-components-checkout-step__description,
body.woocommerce-checkout .wc-block-components-checkout-step__heading-content,
body.woocommerce-checkout .wc-block-components-title {
	color: rgba(255, 255, 255, 0.92);
}

body.woocommerce-checkout .wc-block-components-checkout-step__description {
	color: rgba(255, 255, 255, 0.62);
}

body.woocommerce-checkout .wc-block-checkout__login-prompt {
	color: rgba(255, 255, 255, 0.65);
}

body.woocommerce-checkout .wc-block-checkout__login-prompt a {
	color: var(--tdp-primary);
}

body.woocommerce-checkout .wc-block-checkout__login-prompt a:hover,
body.woocommerce-checkout .wc-block-checkout__login-prompt a:focus {
	color: #ffffff;
}

body.woocommerce-checkout .wc-block-components-text-input input[type="text"],
body.woocommerce-checkout .wc-block-components-text-input input[type="email"],
body.woocommerce-checkout .wc-block-components-text-input input[type="tel"],
body.woocommerce-checkout .wc-block-components-text-input input[type="number"],
body.woocommerce-checkout .wc-block-components-text-input input[type="password"],
body.woocommerce-checkout .wc-block-components-text-input input[type="url"] {
	background-color: #2a2a2a !important;
	background-image: none !important;
	border: 1px solid rgba(255, 255, 255, 0.18) !important;
	color: #ffffff !important;
	border-radius: 6px;
	box-shadow: none !important;
}

body.woocommerce-checkout .wc-block-components-text-input label {
	color: rgba(255, 255, 255, 0.62) !important;
}

body.woocommerce-checkout .wc-blocks-components-select .wc-blocks-components-select__container {
	background: rgba(0, 0, 0, 0.35) !important;
	border: 1px solid rgba(255, 255, 255, 0.18);
	border-radius: 6px;
}

body.woocommerce-checkout .wc-blocks-components-select .wc-blocks-components-select__select {
	color: #ffffff !important;
	border-color: rgba(255, 255, 255, 0.25) !important;
	background: transparent !important;
}

body.woocommerce-checkout .wc-blocks-components-select .wc-blocks-components-select__label {
	color: rgba(255, 255, 255, 0.62) !important;
}

body.woocommerce-checkout .wc-blocks-components-select .wc-blocks-components-select__expand {
	fill: #ffffff !important;
}

body.woocommerce-checkout .wc-block-components-textarea {
	background: #2a2a2a !important;
	border: 1px solid rgba(255, 255, 255, 0.18) !important;
	color: #ffffff !important;
	box-shadow: none !important;
}

body.woocommerce-checkout .wc-block-components-address-card {
	background: rgba(0, 0, 0, 0.25);
	border-color: rgba(255, 255, 255, 0.12);
	color: rgba(255, 255, 255, 0.92);
}

body.woocommerce-checkout .wc-block-components-address-card address .wc-block-components-address-card__address-section--secondary {
	color: rgba(255, 255, 255, 0.55) !important;
}

body.woocommerce-checkout .wc-block-components-address-card__edit {
	color: var(--tdp-primary);
}

body.woocommerce-checkout .wc-block-components-radio-control__label,
body.woocommerce-checkout .wc-block-components-radio-control__secondary-label {
	color: rgba(255, 255, 255, 0.88);
}

body.woocommerce-checkout .wc-block-components-radio-control__description,
body.woocommerce-checkout .wc-block-components-radio-control__secondary-description {
	color: rgba(255, 255, 255, 0.55);
}

body.woocommerce-checkout .wc-block-checkout__payment-method .wc-block-components-radio-control__option {
	border-color: rgba(255, 255, 255, 0.1);
}

body.woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block {
	border-color: rgba(255, 255, 255, 0.12);
	color: rgba(255, 255, 255, 0.92);
}

body.woocommerce-checkout .wc-block-components-order-summary .wc-block-components-product-name,
body.woocommerce-checkout .wc-block-components-order-summary .wc-block-components-order-summary-item__quantity {
	color: rgba(255, 255, 255, 0.92) !important;
}

body.woocommerce-checkout .wc-block-components-order-summary-item__individual-prices,
body.woocommerce-checkout .wc-block-components-order-summary-item__total-price,
body.woocommerce-checkout .wc-block-components-order-summary .wc-block-components-formatted-money-amount,
body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-formatted-money-amount,
body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-product-price__value {
	color: #ffffff !important;
	font-weight: 700 !important;
}

body.woocommerce-checkout .wc-block-components-checkout-order-summary__title {
	color: rgba(255, 255, 255, 0.88);
	border-color: rgba(255, 255, 255, 0.1);
}

body.woocommerce-checkout .wc-block-components-totals-item__label {
	color: rgba(255, 255, 255, 0.72);
}

body.woocommerce-checkout .wc-block-components-totals-item__value,
body.woocommerce-checkout .wc-block-components-totals-item__value .wc-block-components-formatted-money-amount {
	color: #ffffff !important;
	font-weight: 700 !important;
}

body.woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__value,
body.woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-formatted-money-amount {
	color: #ffffff !important;
	font-weight: 800 !important;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-totals-block {
	border-top-color: rgba(255, 255, 255, 0.1);
}

body.woocommerce-checkout .wc-block-checkout__terms {
	color: rgba(255, 255, 255, 0.85);
}

body.woocommerce-checkout .wc-block-checkout__terms.wc-block-checkout__terms--with-separator {
	border-top-color: rgba(255, 255, 255, 0.1);
}

body.woocommerce-checkout .wc-block-checkout__terms a {
	color: var(--tdp-primary);
}

body.woocommerce-checkout .wc-block-components-checkout-return-to-cart-button {
	color: rgba(255, 255, 255, 0.75) !important;
	box-shadow: none !important;
}

body.woocommerce-checkout .wc-block-components-checkout-return-to-cart-button:hover,
body.woocommerce-checkout .wc-block-components-checkout-return-to-cart-button:focus {
	color: var(--tdp-primary) !important;
}

body.woocommerce-checkout .wc-block-components-checkout-place-order-button,
body.woocommerce-checkout button.wc-block-components-checkout-place-order-button {
	background-color: var(--tdp-primary) !important;
	background-image: none !important;
	color: #ffffff !important;
	border: 0 !important;
	border-radius: 8px;
	box-shadow: none !important;
	text-shadow: none !important;
	filter: none !important;
	font-size: 1.35rem;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	width: 100%;
	max-width: 100%;
	padding: 1rem 1.5rem;
	box-sizing: border-box;
}

body.woocommerce-checkout .wc-block-components-checkout-place-order-button:hover,
body.woocommerce-checkout .wc-block-components-checkout-place-order-button:focus,
body.woocommerce-checkout .wc-block-components-checkout-place-order-button:focus-visible,
body.woocommerce-checkout .wc-block-components-checkout-place-order-button:active,
body.woocommerce-checkout button.wc-block-components-checkout-place-order-button:hover,
body.woocommerce-checkout button.wc-block-components-checkout-place-order-button:focus,
body.woocommerce-checkout button.wc-block-components-checkout-place-order-button:focus-visible,
body.woocommerce-checkout button.wc-block-components-checkout-place-order-button:active {
	background-color: var(--tdp-primary-dark) !important;
	background-image: none !important;
	box-shadow: none !important;
	filter: none !important;
	outline: none;
}

body.woocommerce-checkout .wc-block-components-checkout-place-order-button:focus-visible,
body.woocommerce-checkout button.wc-block-components-checkout-place-order-button:focus-visible {
	outline: 2px solid rgba(255, 255, 255, 0.55);
	outline-offset: 3px;
}

body.woocommerce-checkout .wc-block-components-checkout-place-order-button .wc-block-components-button__text {
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 100%;
	text-align: center;
}

body.woocommerce-checkout .wc-block-components-totals-coupon__input input[type="text"] {
	background: #2a2a2a !important;
	border: 1px solid rgba(255, 255, 255, 0.18) !important;
	color: #ffffff !important;
	border-radius: 6px;
}

body.woocommerce-checkout .wc-block-components-express-payment--checkout .wc-block-components-express-payment__content {
	border-color: rgba(255, 255, 255, 0.12);
	background: rgba(0, 0, 0, 0.2);
	color: rgba(255, 255, 255, 0.88);
}

body.woocommerce-checkout .wc-block-components-express-payment--checkout .wc-block-components-express-payment__title {
	color: rgba(255, 255, 255, 0.75);
}

body.woocommerce-checkout .wc-block-components-notice-banner {
	background: #222222 !important;
	border: 1px solid rgba(255, 255, 255, 0.14) !important;
	color: rgba(255, 255, 255, 0.92) !important;
}

body.woocommerce-checkout .wc-block-components-notice-banner.is-error {
	background: rgba(60, 12, 14, 0.95) !important;
	border-color: rgba(229, 27, 32, 0.45) !important;
}

body.woocommerce-checkout .wc-block-components-notice-banner>svg {
	background-color: var(--tdp-primary) !important;
}

body.woocommerce-checkout .wc-block-components-validation-error {
	color: #ff8a8a !important;
}

.woocommerce-product-gallery {
	position: relative;
}

/* Ficha de producto — valoración en una sola línea (rating.php __linear) */
.tdp-single-product-rating {
	margin: 0.35rem 0 1.1rem;
}

body.single-product .tdp-single-product__summary .tdp-single-product-rating {
	margin: 0.25rem 0 1.25rem;
}

.tdp-single-product-rating__linear {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: center;
	gap: 0.5rem 1rem;
	min-width: 0;
	max-width: 100%;
	overflow-x: auto;
	overflow-y: hidden;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
	-ms-overflow-style: none;
}

.tdp-single-product-rating__linear::-webkit-scrollbar {
	display: none;
	height: 0;
}

.tdp-single-product-rating__linear .star-rating {
	float: none;
	flex: 0 0 auto;
	margin: 0;
	font-size: 1.2rem;
	width: 6.2em;
	height: 1.2em;
	line-height: 1;
	letter-spacing: 0.02em;
	/* Contorno de estrellas (WooCommerce ::before en el contenedor). */
	color: rgba(255, 255, 255, 0.28);
}

.tdp-single-product-rating__linear .star-rating::before {
	color: rgba(255, 255, 255, 0.28);
}

/*
 * Relleno: WooCommerce pinta las estrellas llenas en span::before; hereda `color` del <span>.
 * No usar color:transparent en el span (rompe el relleno). El texto “Rated…” va con padding-top + overflow en el core;
 * por si acaso, el strong queda fuera de vista sin tocar el color de las estrellas.
 */
body.single-product .tdp-single-product-rating .star-rating>span {
	color: #f4c430;
}

body.single-product .tdp-single-product-rating .star-rating>span::before {
	color: #f4c430;
}

body.single-product .tdp-single-product-rating .star-rating>span strong.rating,
body.single-product .tdp-single-product-rating .star-rating>span .rating {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.tdp-single-product-rating__average {
	flex: 0 0 auto;
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-size: 1.15rem;
	font-weight: 600;
	color: rgba(255, 255, 255, 0.95);
	letter-spacing: 0.02em;
	white-space: nowrap;
}

.tdp-single-product-rating__meta-item {
	display: inline-flex;
	flex: 0 0 auto;
	align-items: center;
	gap: 0.35rem;
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-size: 0.95rem;
	color: rgba(255, 255, 255, 0.7);
	white-space: nowrap;
}

.tdp-single-product-rating__meta-item--recommend {
	color: #6ecf8f;
}

.tdp-single-product-rating__icon {
	font-size: 1.15rem;
	line-height: 1;
	font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
}

/*
 * WooCommerce layout.css fuerza div.product div.summary { float; width:48% } y div.images 48%.
 * Nuestra ficha usa grid (.tdp-single-product__layout); hay que anular eso para usar todo el ancho del .site-container.
 */
body.single-product div.product.tdp-single-product {
	width: 100% !important;
	max-width: 100% !important;
	clear: both !important;
}

body.single-product div.product.tdp-single-product .tdp-single-product__layout {
	display: grid !important;
	width: 100% !important;
	max-width: 100% !important;
	float: none !important;
	clear: both !important;
	min-width: 0;
}

body.single-product div.product.tdp-single-product div.summary.entry-summary,
body.single-product div.product.tdp-single-product .tdp-single-product__summary {
	float: none !important;
	width: 100% !important;
	max-width: 100% !important;
	clear: none !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

body.single-product div.product.tdp-single-product .tdp-single-product__gallery {
	float: none !important;
	width: 100% !important;
	max-width: 100% !important;
	clear: none !important;
}

body.single-product div.product.tdp-single-product .woocommerce-tabs,
body.single-product div.product.tdp-single-product .related.products {
	clear: both !important;
	float: none !important;
	width: 100% !important;
	max-width: 100% !important;
}

/* Ficha de producto — layout y bloques (content-single-product + inc/tdp-single-product-layout) */
.tdp-single-product__layout {
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--tdp-gap);
	align-items: start;
	margin-bottom: 3.2rem;
}

@media (min-width: 900px) {

	/* 40% galería / 60% resumen (4fr:6fr tras el gap del grid) */
	.tdp-single-product__layout {
		grid-template-columns: minmax(0, 4fr) minmax(0, 6fr);
		align-items: start;
	}
}

/* Galería: todo el ancho de su columna */
.tdp-single-product__gallery {
	width: 100%;
	max-width: none;
	min-width: 0;
	justify-self: stretch;
}

.tdp-single-product__summary {
	min-width: 0;
}

.tdp-single-product__gallery .woocommerce-product-gallery {
	position: relative;
	width: 100%;
	max-width: 100%;
	overflow: visible;
	border-radius: var(--tdp-product-gallery-radius);
	border: 1px solid rgba(255, 255, 255, 0.1);
	background: rgba(255, 255, 255, 0.04);
	box-shadow: 0 8px 32px rgba(0, 0, 0, 0.45);
}

/*
 * Apilar etapa + miniaturas solo cuando NO hay FlexSlider (.flex-viewport).
 * Forzar flex en el contenedor .images rompe el layout del viewport de FlexSlider (productos variables).
 */
body.single-product .tdp-single-product__gallery .woocommerce-product-gallery.images:not(:has(.flex-viewport)) {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
}

body.single-product .tdp-single-product__gallery .woocommerce-product-gallery.images:has(.flex-viewport) {
	display: block !important;
}

body.single-product .tdp-single-product__gallery .woocommerce-product-gallery.images .woocommerce-product-gallery__wrapper,
body.single-product .tdp-single-product__gallery .woocommerce-product-gallery.images .flex-viewport {
	align-self: stretch !important;
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
}

.tdp-single-product__gallery .woocommerce-product-gallery__wrapper {
	width: 100%;
	max-width: 100%;
	border-radius: var(--tdp-product-gallery-radius);
	overflow: hidden;
	background: rgba(0, 0, 0, 0.25);
}

.tdp-single-product__gallery .flex-viewport {
	width: 100% !important;
	max-width: 100%;
}

.tdp-single-product__gallery .woocommerce-product-gallery__image {
	display: block;
	width: 100%;
	max-width: 100%;
}

.tdp-single-product__gallery .woocommerce-product-gallery__image img,
.tdp-single-product__gallery .woocommerce-product-gallery__image a {
	display: block;
	width: 100%;
	max-width: 100%;
}

.tdp-single-product__gallery .woocommerce-product-gallery__image img {
	height: auto;
	object-fit: contain;
}

/* Imagen principal: usar todo el ancho del visor (mock: sin bandas laterales) */
body.single-product .tdp-single-product__gallery div.images img,
body.single-product .tdp-single-product__gallery .woocommerce-product-gallery__image .wp-post-image,
body.single-product .tdp-single-product__gallery .woocommerce-product-gallery__image img {
	width: 100% !important;
	max-width: 100% !important;
	height: auto !important;
	display: block !important;
}

/*
 * WooCommerce (woocommerce.css): div.product div.images .woocommerce-product-gallery__image:nth-child(n+2){width:25%}
 * El bloque de galería ES un div.images (clase en product-image.php); eso deja slides 2+ al 25% y encoge toda la columna.
 */
body.single-product .tdp-single-product__gallery div.images .woocommerce-product-gallery__wrapper>.woocommerce-product-gallery__image,
body.single-product .tdp-single-product__gallery .woocommerce-product-gallery.images .woocommerce-product-gallery__wrapper>.woocommerce-product-gallery__image {
	width: 100% !important;
	max-width: 100% !important;
	display: block !important;
}

/* FlexSlider: el JS puede poner ancho fijo al viewport; forzar ancho de columna */
body.single-product .tdp-single-product__gallery .flex-viewport {
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
}

body.single-product .tdp-single-product__gallery .flexslider {
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	margin: 0 !important;
}

body.single-product .tdp-single-product__gallery .flexslider .slides,
body.single-product .tdp-single-product__gallery .flexslider .slides>li {
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
}

body.single-product .tdp-single-product__gallery .flexslider .slides>li .woocommerce-product-gallery__image {
	width: 100% !important;
	max-width: 100% !important;
	display: block !important;
}

/* Splide: envoltorio principal (flechas fuera del nodo .splide) */
body.single-product .tdp-single-product__gallery .tdp-splide-main-wrap {
	position: relative;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
}

/* Splide: etapa principal */
body.single-product .tdp-single-product__gallery .tdp-splide-main.splide {
	position: relative;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	border-radius: var(--tdp-product-gallery-radius);
	overflow: hidden;
	background: rgba(0, 0, 0, 0.25);
}

body.single-product .tdp-single-product__gallery .tdp-splide-main .splide__track {
	border-radius: inherit;
	cursor: grab;
}

body.single-product .tdp-single-product__gallery .tdp-splide-main .splide__track:active {
	cursor: grabbing;
}

/* No forzar opacity en todos los slides: Splide (fade) controla visibilidad. */
body.single-product .tdp-single-product__gallery .tdp-splide-main .splide__slide.is-active .woocommerce-product-gallery__image a {
	display: block !important;
	opacity: 1 !important;
}

body.single-product .tdp-single-product__gallery .tdp-splide-main .splide__slide .woocommerce-product-gallery__image img {
	position: relative;
	z-index: 1;
	width: 100%;
	height: auto;
	display: block;
}

body.single-product .tdp-single-product__gallery .tdp-splide-main .splide__slide.is-active .woocommerce-product-gallery__image img {
	opacity: 1 !important;
	visibility: visible !important;
}

/* Splide: solo dots bajo la imagen; navegación por arrastre/touch. */
body.single-product .tdp-single-product__gallery .tdp-splide-main .splide__pagination {
	position: static;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.65rem;
	margin: 1.2rem 0 0;
	padding: 0;
}

body.single-product .tdp-single-product__gallery .tdp-splide-main .splide__pagination li {
	display: inline-flex;
	margin: 0;
	line-height: 0;
}

body.single-product .tdp-single-product__gallery .tdp-splide-main .splide__pagination__page {
	width: 1rem;
	height: 1rem;
	margin: 0;
	padding: 0;
	border: none;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.45);
	opacity: 1;
	transform: none;
	cursor: pointer;
	transition: width 0.2s ease, background 0.2s ease;
}

body.single-product .tdp-single-product__gallery .tdp-splide-main .splide__pagination__page.is-active {
	width: 2.6rem;
	background: var(--tdp-primary);
	transform: none;
}

body.single-product .tdp-single-product__gallery .tdp-splide-main .splide__pagination__page:focus-visible {
	outline: 2px solid rgba(255, 255, 255, 0.85);
	outline-offset: 0.25rem;
}

/* FlexSlider (productos variables — WooCommerce) */
.tdp-single-product__gallery .flex-viewport {
	border-radius: var(--tdp-product-gallery-radius);
	overflow: hidden;
	background: rgba(0, 0, 0, 0.25);
}

/* Miniaturas: fila bajo la imagen, ancho del bloque, alineadas a la izquierda (mock) */
body.single-product .tdp-single-product__gallery ol.flex-control-nav,
body.single-product .tdp-single-product__gallery ul.flex-control-nav {
	display: flex !important;
	flex-wrap: wrap !important;
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
	gap: 0.8rem !important;
	justify-content: flex-start !important;
	align-items: flex-start !important;
	margin: 1.2rem 0 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

body.single-product .tdp-single-product__gallery .flex-control-nav li {
	flex: 0 0 calc(25% - 0.6rem);
	max-width: 14rem;
	min-width: 7rem;
	margin: 0 !important;
}

.tdp-single-product__gallery .flex-control-nav li {
	margin: 0;
}

body.single-product .tdp-single-product__gallery .flex-control-nav img {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	height: auto !important;
	aspect-ratio: 1;
	object-fit: cover;
	border-radius: 0.85rem;
	border: 2px solid rgba(255, 255, 255, 0.14);
	opacity: 0.6;
	transition: opacity 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
	cursor: pointer;
}

.tdp-single-product__gallery .flex-control-nav img:hover,
.tdp-single-product__gallery .flex-control-nav img:focus {
	opacity: 0.92;
	border-color: rgba(255, 255, 255, 0.4);
}

/* Activa: borde rojo + resplandor como mockup */
body.single-product .tdp-single-product__gallery .flex-control-nav .flex-active img,
.tdp-single-product__gallery .flex-control-nav .flex-active img {
	opacity: 1 !important;
	border-color: var(--tdp-primary) !important;
	box-shadow:
		0 0 0 1px rgba(0, 0, 0, 0.35),
		0 0 18px var(--tdp-shadow-primary),
		0 0 32px var(--tdp-glow-primary) !important;
}

.tdp-single-product__gallery .woocommerce-product-gallery__trigger {
	border-radius: 0.65rem;
	background: rgba(0, 0, 0, 0.5);
	border: 1px solid rgba(255, 255, 255, 0.2);
}

.tdp-single-product__summary .product_title {
	font-family: var(--tdp-font-heading), Arial, Helvetica, sans-serif;
	font-size: 2.85rem;
	line-height: var(--tdp-heading-line);
	letter-spacing: var(--tdp-heading-tracking);
	color: rgba(255, 255, 255, 0.98);
	margin: 0 0 0.35rem;
}

.tdp-single-product__summary .product_title:hover,
.tdp-single-product__summary .product_title:focus {
	color: var(--tdp-primary);
}

.tdp-single-product__badge {
	margin: 0 0 0.8rem;
}

.tdp-single-product__badge-inner {
	display: inline-flex;
	align-items: center;
	padding: 0.35rem 0.9rem;
	font-size: 1.1rem;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.95);
	background: linear-gradient(135deg, rgba(229, 27, 32, 0.35), rgba(229, 27, 32, 0.12));
	border: 1px solid rgba(229, 27, 32, 0.55);
	border-radius: 999px;
	box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.2);
}

.tdp-single-product__summary .woocommerce-product-details__short-description {
	margin: 1.25rem 0 1.6rem;
	font-size: 1.45rem;
	line-height: 1.6;
	color: rgba(255, 255, 255, 0.78);
}

.tdp-single-product__price-box {
	margin: 0 0 1.6rem;
	padding: 1.4rem 1.6rem;
	border-radius: 1rem;
	border: 1px solid rgba(255, 255, 255, 0.12);
	background: linear-gradient(160deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.02));
	box-shadow: 0 6px 24px rgba(0, 0, 0, 0.35);
}

.tdp-single-product__price-savings {
	font-size: 1.25rem;
	font-weight: 600;
	color: #6ecf8f;
	margin-bottom: 0.5rem;
}

.tdp-single-product__price-main {
	margin: 0;
}

.tdp-single-product__price-main .price {
	font-family: var(--tdp-font-heading), Arial, Helvetica, sans-serif;
	font-size: 2.6rem;
	font-weight: 400 !important;
	color: rgba(255, 255, 255, 0.98);
}

.tdp-single-product__price-main .price del,
.tdp-single-product__price-main .price ins,
.tdp-single-product__price-main .price bdi,
.tdp-single-product__price-main .price .woocommerce-Price-amount,
.tdp-single-product__price-main .price .amount {
	font-weight: 400 !important;
}

.tdp-single-product__price-main .price .woocommerce-Price-amount,
.tdp-single-product__price-main .price .amount {
	color: rgba(255, 255, 255, 0.98) !important;
}

.tdp-single-product__price-main .price del {
	font-size: 0.55em;
	opacity: 0.55;
	margin-right: 0.5rem;
}

.tdp-single-product__price-main .price del .woocommerce-Price-amount {
	color: rgba(255, 255, 255, 0.45) !important;
}

.tdp-single-product__price-main .price ins {
	text-decoration: none;
	color: var(--tdp-primary);
}

.tdp-single-product__price-main .price ins .woocommerce-Price-amount {
	color: var(--tdp-primary) !important;
}

.tdp-single-product__price-footnote {
	margin: 0.9rem 0 0;
	font-size: 1.15rem;
	color: rgba(255, 255, 255, 0.5);
}

.tdp-single-product__specs {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1rem;
	margin: 0 0 2rem;
	padding: 0;
	list-style: none;
}

@media (max-width: 639px) {
	.tdp-single-product__specs {
		grid-template-columns: 1fr;
	}
}

.tdp-single-product__spec {
	margin: 0;
	padding: 1rem 1.1rem;
	border-radius: 0.85rem;
	border: 1px solid rgba(229, 27, 32, 0.45);
	background: rgba(0, 0, 0, 0.35);
	box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.2);
	min-width: 0;
}

.tdp-single-product__spec-head {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	margin: 0 0 0.45rem;
	font-size: 1.1rem;
	font-weight: 600;
	color: rgba(255, 255, 255, 0.55);
	text-transform: uppercase;
	letter-spacing: 0.06em;
}

.tdp-single-product__spec-label {
	flex: 1;
	min-width: 0;
	line-height: 1.25;
}

.tdp-single-product__spec-icon {
	font-size: 1.35rem;
	color: var(--tdp-primary);
	font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
}

.tdp-single-product__spec-value {
	margin: 0;
	font-size: 1.4rem;
	font-weight: 600;
	color: rgba(255, 255, 255, 0.92);
	line-height: 1.35;
}

.tdp-single-product__purchase {
	margin-top: 0.4rem;
	padding: 1.6rem;
	border-radius: 1rem;
	border: 1px solid rgba(255, 255, 255, 0.12);
	background: rgba(0, 0, 0, 0.4);
	box-shadow: none;
}

.tdp-single-product__cart-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr);
	grid-template-areas:
		"tdp-cart-qty tdp-cart-total tdp-cart-wish"
		"tdp-cart-btn tdp-cart-btn tdp-cart-btn";
	column-gap: clamp(1rem, 2.5vw, 2rem);
	row-gap: 1.5rem;
	align-items: end;
}

.tdp-single-product__cart-qty {
	grid-area: tdp-cart-qty;
	justify-self: start;
	width: 100%;
	max-width: 22rem;
}

.tdp-single-product__cart-total {
	grid-area: tdp-cart-total;
	justify-self: center;
	text-align: center;
	width: 100%;
	max-width: 24rem;
}

.tdp-single-product__cart-wish {
	grid-area: tdp-cart-wish;
	justify-self: end;
	width: 100%;
	max-width: 20rem;
	text-align: right;
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 0.45rem;
	min-width: 0;
}

.tdp-single-product__cart-actions {
	grid-area: tdp-cart-btn;
}

/* Misma idea visual que `.tdp-jet-featured-item--recien-llegados .tdp-mv-card__price` (jet-home.css) */
body.single-product .tdp-single-product__purchase .tdp-single-product__cart-total-amount.tdp-mv-card__price {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	justify-content: center;
	gap: 0.45rem 0.85rem;
	width: 100%;
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-size: 1.65rem;
	font-weight: 800;
	color: #ffffff;
	line-height: 1.15;
	min-height: 4.8rem;
}

body.single-product .tdp-single-product__purchase .tdp-single-product__cart-total-amount.tdp-mv-card__price ins {
	text-decoration: none;
	font-size: inherit;
	font-weight: inherit;
	color: #ffffff;
}

body.single-product .tdp-single-product__purchase .tdp-single-product__cart-total-amount.tdp-mv-card__price del {
	font-size: 0.95rem;
	font-weight: 600;
	opacity: 1;
	text-decoration: line-through;
	color: #8a8a8a;
}

body.single-product .tdp-single-product__purchase .tdp-single-product__cart-total-amount.tdp-mv-card__price .woocommerce-Price-amount,
body.single-product .tdp-single-product__purchase .tdp-single-product__cart-total-amount.tdp-mv-card__price .amount {
	color: inherit !important;
	font-weight: inherit;
}

/* Wishlist: reutiliza reglas de tarjeta pero en flujo (no absolute sobre imagen) */
body.single-product .tdp-single-product__purchase .tdp-single-product__wish-slot.tdp-mv-card__wish-slot {
	position: static;
	top: auto;
	right: auto;
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	width: 100%;
	max-width: 100%;
}

/* Estado «en lista» + enlace «ver wishlist»: texto legible (no dentro del círculo 2.5rem) */
body.single-product .tdp-single-product__purchase .tdp-single-product__wish-slot .yith-wcwl-wishlistexistsbrowse {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 0.35rem;
	width: 100%;
	max-width: 100%;
	text-align: right;
}

body.single-product .tdp-single-product__purchase .tdp-single-product__wish-slot .yith-wcwl-wishlistexistsbrowse .feedback {
	display: inline-flex;
	align-items: center;
	justify-content: flex-end;
	gap: 0.4rem;
	flex-wrap: wrap;
	margin: 0;
	font-size: 1.05rem;
	font-weight: 600;
	color: rgba(255, 255, 255, 0.82);
	line-height: 1.3;
}

body.single-product .tdp-single-product__purchase .tdp-single-product__wish-slot .yith-wcwl-wishlistexistsbrowse a {
	width: auto !important;
	height: auto !important;
	min-height: 0 !important;
	padding: 0.25rem 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
	font-size: 1.05rem;
	font-weight: 600;
	color: rgba(255, 255, 255, 0.95) !important;
	text-decoration: underline;
	text-decoration-color: rgba(229, 27, 32, 0.85);
	text-underline-offset: 0.2em;
	white-space: normal;
	text-align: right;
	line-height: 1.35;
	max-width: 100%;
}

body.single-product .tdp-single-product__purchase .tdp-single-product__wish-slot .yith-wcwl-wishlistexistsbrowse a:hover,
body.single-product .tdp-single-product__purchase .tdp-single-product__wish-slot .yith-wcwl-wishlistexistsbrowse a:focus {
	color: #ffffff !important;
	text-decoration-color: var(--tdp-primary, #e51b20);
}

body.single-product .tdp-single-product__purchase .tdp-single-product__variable-wish-row {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 0.45rem;
	margin-top: 1.25rem;
	padding-top: 1.1rem;
	border-top: 1px solid rgba(255, 255, 255, 0.1);
	width: 100%;
	min-width: 0;
}

body.single-product .tdp-single-product__purchase .tdp-single-product__variable-wish-row .tdp-single-product__wish-slot.tdp-mv-card__wish-slot {
	align-items: flex-end;
}

@media (max-width: 767.98px) {
	.tdp-single-product__cart-grid {
		grid-template-columns: 1fr;
		grid-template-areas:
			"tdp-cart-qty"
			"tdp-cart-total"
			"tdp-cart-wish"
			"tdp-cart-btn";
	}

	.tdp-single-product__cart-qty,
	.tdp-single-product__cart-total,
	.tdp-single-product__cart-wish {
		justify-self: stretch;
		max-width: none;
		text-align: left;
		align-items: stretch;
	}

	.tdp-single-product__cart-total {
		text-align: left;
	}

	.tdp-single-product__cart-wish {
		align-items: flex-start;
		text-align: left;
	}

	body.single-product .tdp-single-product__purchase .tdp-single-product__wish-slot.tdp-mv-card__wish-slot,
	body.single-product .tdp-single-product__purchase .tdp-single-product__wish-slot .yith-wcwl-wishlistexistsbrowse {
		align-items: flex-start;
		text-align: left;
	}

	body.single-product .tdp-single-product__purchase .tdp-single-product__wish-slot .yith-wcwl-wishlistexistsbrowse .feedback {
		justify-content: flex-start;
	}

	body.single-product .tdp-single-product__purchase .tdp-single-product__wish-slot .yith-wcwl-wishlistexistsbrowse a {
		text-align: left;
	}

	.tdp-single-product__cart-total-amount {
		justify-content: flex-start;
	}

	body.single-product .tdp-single-product__purchase .tdp-single-product__cart-total-amount.tdp-mv-card__price {
		justify-content: flex-start;
	}

	body.single-product .tdp-single-product__purchase .tdp-single-product__variable-wish-row {
		align-items: flex-start;
	}
}

.tdp-single-product__field-label {
	display: block;
	font-size: 1.05rem;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.45);
	margin-bottom: 0.45rem;
}

/* Píldora cantidad − / número / + (mock) */
.tdp-single-product__qty-pill {
	display: inline-flex;
	align-items: stretch;
	width: 100%;
	max-width: 20rem;
	min-height: 4.8rem;
	border-radius: 0.85rem;
	border: 1px solid rgba(255, 255, 255, 0.18);
	background: rgba(255, 255, 255, 0.07);
	overflow: hidden;
	box-sizing: border-box;
}

.tdp-single-product__qty-pill .tdp-qty-btn {
	flex: 0 0 4.4rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin: 0;
	padding: 0;
	border: none;
	background: rgba(0, 0, 0, 0.45);
	color: rgba(255, 255, 255, 0.95);
	font-size: 2rem;
	font-weight: 500;
	line-height: 1;
	cursor: pointer;
	transition: background 0.15s ease, color 0.15s ease;
}

.tdp-single-product__qty-pill .tdp-qty-btn:hover,
.tdp-single-product__qty-pill .tdp-qty-btn:focus {
	background: rgba(229, 27, 32, 0.35);
	color: #fff;
	outline: none;
}

.tdp-single-product__qty-pill .qty {
	flex: 1 1 auto;
	min-width: 0;
	width: 4.8rem;
	min-height: 4.8rem;
	margin: 0 !important;
	border: none !important;
	background: transparent !important;
	color: #fff !important;
	font-size: 1.6rem;
	font-weight: 600;
	text-align: center;
	border-radius: 0 !important;
	box-shadow: none !important;
	-moz-appearance: textfield;
}

.tdp-single-product__qty-pill .qty::-webkit-outer-spin-button,
.tdp-single-product__qty-pill .qty::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

.tdp-single-product__add-to-cart {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.65rem;
	width: 100%;
	min-height: 5rem;
	font-size: 1.35rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	border-radius: 0.85rem !important;
	background: var(--tdp-primary) !important;
	color: #fff !important;
	border: none !important;
	box-shadow: none !important;
	transition: background 0.2s ease, transform 0.15s ease;
}

.tdp-single-product__add-to-cart:hover,
.tdp-single-product__add-to-cart:focus {
	background: var(--tdp-primary-dark) !important;
	box-shadow: none !important;
	color: #fff !important;
	transform: translateY(-1px);
}

.tdp-single-product__add-to-cart-icon {
	font-size: 2.2rem;
	line-height: 1;
	font-variation-settings: 'FILL' 0, 'wght' 500, 'GRAD' 0, 'opsz' 24;
}

.tdp-single-product__purchase .variations_form .variations {
	margin-bottom: 1.2rem;
}

.tdp-single-product__purchase .variations_form .single_add_to_cart_button {
	width: 100%;
	min-height: 5rem;
	margin-top: 0.8rem;
}

.tdp-single-product .woocommerce-tabs,
.tdp-single-product .tdp-cards-carousel {
	margin-top: 2.4rem;
}

/* Carrusel nativo de fichas (template-parts/product/tdp-cards-carousel.php) */
.tdp-single-product .tdp-cards-carousel>.tdp-cards-carousel__title {
	font-family: var(--tdp-font-heading), Arial, Helvetica, sans-serif;
	font-size: 2.1rem;
	letter-spacing: var(--tdp-heading-tracking);
	color: rgba(255, 255, 255, 0.98);
	margin: 0 0 1.35rem;
}

.tdp-single-product .tdp-cards-carousel__shell {
	margin: 0;
	padding: 0;
	border: none;
	background: transparent;
	box-shadow: none;
}

.tdp-single-product .tdp-cards-carousel {
	overflow-x: visible;
	overflow-y: visible;
	padding-bottom: 0.5rem;
}

.tdp-single-product .tdp-cards-carousel .tdp-mv-slider {
	margin-top: 0.5rem;
	overflow: visible;
}

.tdp-single-product .tdp-cards-carousel .tdp-mv-slider__dots {
	position: relative;
	z-index: 3;
	margin-top: clamp(1.1rem, 2.2vw, 1.6rem);
	margin-bottom: 0.25rem;
	padding: 0.35rem 0;
}

.tdp-single-product .tdp-cards-carousel .tdp-mv-slider__dot {
	background: rgba(255, 255, 255, 0.55);
	box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.35);
}

.tdp-single-product .tdp-cards-carousel .tdp-mv-slider__dot.is-active,
.tdp-single-product .tdp-cards-carousel .tdp-mv-slider__dot[aria-selected='true'] {
	background: var(--tdp-primary, #e51b20);
	box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.25);
}

/* Pestañas WooCommerce: canal oscuro tipo «segmented control» + enlace activo píldora roja */
body.single-product .tdp-single-product .woocommerce-tabs.wc-tabs-wrapper {
	margin-top: 2.4rem;
}

body.single-product .tdp-single-product .woocommerce-tabs ul.tabs.wc-tabs {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	gap: 0.4rem;
	margin: 0 0 1.6rem;
	padding: 0.5rem 0.55rem;
	list-style: none;
	overflow: visible;
	position: relative;
	border-radius: 999px;
	background: #0d0d0d;
	border: 1px solid rgba(255, 255, 255, 0.12);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

/* Anular línea/borde decorativo de WooCommerce en ul.tabs (::before / ::after) */
body.single-product .tdp-single-product .woocommerce-tabs ul.tabs::before,
body.single-product .tdp-single-product .woocommerce-tabs ul.tabs::after,
.woocommerce .tdp-single-product .woocommerce-tabs ul.tabs::before,
.woocommerce .tdp-single-product .woocommerce-tabs ul.tabs::after {
	display: none !important;
	content: none !important;
	border: none !important;
	width: 0 !important;
	height: 0 !important;
	position: static !important;
	bottom: auto !important;
	left: auto !important;
	z-index: auto !important;
}

body.single-product .tdp-single-product .woocommerce-tabs ul.tabs.wc-tabs>li {
	flex: 1 1 auto;
	min-width: 0;
	margin: 0;
	padding: 0;
	border: none;
	background: transparent;
	border-radius: 0;
	z-index: auto;
}

body.single-product .tdp-single-product .woocommerce-tabs ul.tabs.wc-tabs>li::before,
body.single-product .tdp-single-product .woocommerce-tabs ul.tabs.wc-tabs>li::after {
	display: none !important;
	content: none !important;
}

body.single-product .tdp-single-product .woocommerce-tabs ul.tabs.wc-tabs>li>a {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 4.4rem;
	margin: 0;
	padding: 0.65rem 1.4rem;
	border: none;
	border-radius: 999px;
	background: transparent;
	color: rgba(255, 255, 255, 0.5);
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-size: 1.4rem;
	font-weight: 600;
	text-decoration: none;
	text-align: center;
	transition:
		background 0.2s ease,
		color 0.2s ease,
		box-shadow 0.2s ease;
}

body.single-product .tdp-single-product .woocommerce-tabs ul.tabs.wc-tabs>li:not(.active)>a:hover,
body.single-product .tdp-single-product .woocommerce-tabs ul.tabs.wc-tabs>li:not(.active)>a:focus {
	text-decoration: none;
	color: rgba(255, 255, 255, 0.88);
	background-color: rgba(255, 255, 255, 0.06);
	outline: none;
}

body.single-product .tdp-single-product .woocommerce-tabs ul.tabs.wc-tabs>li.active {
	background: transparent;
	border: none;
}

body.single-product .tdp-single-product .woocommerce-tabs ul.tabs.wc-tabs>li.active>a {
	background: var(--tdp-primary);
	color: var(--tdp-white);
	box-shadow: 0 0.25rem 1rem var(--tdp-shadow-primary);
}

body.single-product .tdp-single-product .woocommerce-tabs .woocommerce-Tabs-panel.panel {
	margin: 0;
	padding: 0 0 1.6rem;
	border: none;
	color: rgba(255, 255, 255, 0.88);
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-size: 1.4rem;
	line-height: 1.65;
}

body.single-product .tdp-single-product .woocommerce-tabs .woocommerce-Tabs-panel.panel h2 {
	font-family: var(--tdp-font-heading), Arial, Helvetica, sans-serif;
	font-size: var(--tdp-h3);
	color: var(--tdp-white);
	margin-top: 0;
}

/* Pestaña Valoraciones: mismo enlace píldora que el resto (anula float/display de WooCommerce). */
body.single-product .tdp-single-product .woocommerce-tabs ul.tabs.wc-tabs>li.reviews_tab {
	float: none !important;
	display: flex !important;
	align-items: stretch;
	margin: 0 !important;
	padding: 0 !important;
	overflow: visible !important;
}

body.single-product .tdp-single-product .woocommerce-tabs ul.tabs.wc-tabs>li.reviews_tab>a {
	float: none !important;
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 4.4rem;
	margin: 0 !important;
	padding: 0.65rem 1.4rem !important;
	border: none !important;
	border-radius: 999px !important;
	background: transparent !important;
	color: rgba(255, 255, 255, 0.5) !important;
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif !important;
	font-size: 1.4rem !important;
	font-weight: 600 !important;
	line-height: 1.25 !important;
	text-decoration: none !important;
	text-align: center !important;
	min-width: 0 !important;
}

body.single-product .tdp-single-product .woocommerce-tabs ul.tabs.wc-tabs>li.reviews_tab:not(.active)>a:hover,
body.single-product .tdp-single-product .woocommerce-tabs ul.tabs.wc-tabs>li.reviews_tab:not(.active)>a:focus {
	color: rgba(255, 255, 255, 0.88) !important;
	background-color: rgba(255, 255, 255, 0.06) !important;
}

body.single-product .tdp-single-product .woocommerce-tabs ul.tabs.wc-tabs>li.reviews_tab.active>a {
	background: var(--tdp-primary) !important;
	color: var(--tdp-white) !important;
	box-shadow: 0 0.25rem 1rem var(--tdp-shadow-primary) !important;
}

/*
 * Pestañas en móvil: se transforman en acordeón.
 * Se ocultan los tabs nativos de WooCommerce y se muestran las cabeceras
 * `.tdp-product-acc__header` que inyecta `initTdpProductTabs()` en main.js.
 * En escritorio las cabeceras quedan ocultas y siguen funcionando los tabs.
 */
.woocommerce div.product p.price ins,
.woocommerce div.product span.price ins {
	font-weight: 400 !important;
}

body.single-product .tdp-single-product .woocommerce-tabs .tdp-product-acc__header {
	display: none;
}

@media (max-width: 767.98px) {
	body.single-product .tdp-single-product .woocommerce-tabs.wc-tabs-wrapper {
		margin-top: 1.6rem;
	}

	body.single-product .tdp-single-product .woocommerce-tabs ul.tabs.wc-tabs {
		display: none !important;
	}

	body.single-product .tdp-single-product .woocommerce-tabs .tdp-product-acc__header {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 1rem;
		width: 100%;
		margin: 0 0 0.75rem;
		padding: 1.1rem 1.4rem;
		border: 1px solid rgba(255, 255, 255, 0.14);
		border-radius: 1rem;
		background: #0d0d0d;
		color: rgba(255, 255, 255, 0.9);
		font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
		font-size: 1.4rem;
		font-weight: 600;
		line-height: 1.25;
		text-align: left;
		cursor: pointer;
		transition:
			background 0.2s ease,
			color 0.2s ease,
			border-color 0.2s ease;
	}

	body.single-product .tdp-single-product .woocommerce-tabs .tdp-product-acc__header:hover,
	body.single-product .tdp-single-product .woocommerce-tabs .tdp-product-acc__header:focus-visible {
		background: rgba(255, 255, 255, 0.06);
		color: #fff;
		outline: none;
	}

	body.single-product .tdp-single-product .woocommerce-tabs .tdp-product-acc__header[aria-expanded="true"] {
		background: var(--tdp-primary);
		color: #fff;
		border-color: var(--tdp-primary);
	}

	body.single-product .tdp-single-product .woocommerce-tabs .tdp-product-acc__title {
		flex: 1 1 auto;
		min-width: 0;
	}

	body.single-product .tdp-single-product .woocommerce-tabs .tdp-product-acc__chev {
		display: inline-block;
		width: 0.9rem;
		height: 0.9rem;
		border-right: 2px solid currentColor;
		border-bottom: 2px solid currentColor;
		transform: rotate(45deg);
		transform-origin: 60% 60%;
		transition: transform 0.25s ease;
		flex: 0 0 auto;
	}

	body.single-product .tdp-single-product .woocommerce-tabs .tdp-product-acc__header[aria-expanded="true"] .tdp-product-acc__chev {
		transform: rotate(-135deg);
	}

	body.single-product .tdp-single-product .woocommerce-tabs .woocommerce-Tabs-panel.tdp-product-acc__panel {
		display: none !important;
		margin: 0 0 1rem;
		padding: 1.2rem 1.4rem;
		border: 1px solid rgba(255, 255, 255, 0.1);
		border-radius: 1rem;
		background: rgba(0, 0, 0, 0.35);
	}

	body.single-product .tdp-single-product .woocommerce-tabs .woocommerce-Tabs-panel.tdp-product-acc__panel.tdp-acc-open {
		display: block !important;
	}
}

/* Panel valoraciones: tarjeta oscura alineada con .tdp-wc-tab-jet */
body.single-product .tdp-single-product .woocommerce-tabs .woocommerce-Tabs-panel--reviews {
	padding-bottom: 1.6rem;
}

body.single-product .tdp-single-product .woocommerce-tabs #reviews.woocommerce-Reviews {
	box-sizing: border-box;
	background: #0d0d0d;
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 2.4rem;
	padding: clamp(2rem, 4vw, 3.2rem) clamp(1.6rem, 3vw, 3rem);
	margin: 0;
	color: rgba(255, 255, 255, 0.88);
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-size: 1.4rem;
	line-height: 1.65;
}

body.single-product .tdp-single-product .woocommerce-tabs #reviews .woocommerce-Reviews-title {
	font-family: var(--tdp-font-heading), Arial, Helvetica, sans-serif;
	font-size: 1.8rem;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	color: var(--tdp-white);
	margin: 0 0 1.25rem;
	padding-bottom: 1rem;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

body.single-product .tdp-single-product .woocommerce-tabs #reviews .woocommerce-Reviews-title span {
	color: inherit;
}

body.single-product .tdp-single-product .woocommerce-tabs #reviews .woocommerce-Reviews-title small {
	float: none !important;
	display: inline-block;
	margin: 0 0 0 0.5rem;
	font-size: 1.25rem;
	font-weight: 400;
	text-transform: none;
	letter-spacing: normal;
	color: rgba(255, 255, 255, 0.55);
	vertical-align: middle;
}

body.single-product .tdp-single-product .woocommerce-tabs #reviews .woocommerce-noreviews {
	margin: 0 0 1.5rem;
	color: rgba(255, 255, 255, 0.55);
	font-size: 1.35rem;
}

body.single-product .tdp-single-product .woocommerce-tabs #reviews .woocommerce-verification-required {
	margin: 0;
	padding: 1.2rem 1.4rem;
	border-radius: 0.85rem;
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(255, 255, 255, 0.1);
	color: rgba(255, 255, 255, 0.75);
	font-size: 1.35rem;
}

body.single-product .tdp-single-product .woocommerce-tabs #reviews #comments ol.commentlist {
	list-style: none;
	margin: 0 0 1.5rem;
	padding: 0;
}

body.single-product .tdp-single-product .woocommerce-tabs #reviews #comments ol.commentlist li {
	margin: 0 0 1.25rem;
	padding: 0;
	border: none;
	background: transparent;
}

body.single-product .tdp-single-product .woocommerce-tabs #reviews #comments ol.commentlist li img.avatar {
	border-radius: 999px;
	border: 1px solid rgba(255, 255, 255, 0.12);
	background: rgba(255, 255, 255, 0.08);
}

body.single-product .tdp-single-product .woocommerce-tabs #reviews #comments ol.commentlist li .comment-text {
	margin-left: 4.2rem !important;
	padding: 1.2rem 1.35rem !important;
	border-radius: clamp(12px, 1.5vw, 16px) !important;
	background: #111111 !important;
	border: 1px solid rgba(255, 255, 255, 0.08) !important;
	box-shadow: 0 8px 28px rgba(0, 0, 0, 0.35);
	color: rgba(255, 255, 255, 0.88);
}

body.single-product .tdp-single-product .woocommerce-tabs #reviews #comments ol.commentlist li .meta {
	color: rgba(255, 255, 255, 0.5);
	font-size: 1.25rem;
}

body.single-product .tdp-single-product .woocommerce-tabs #reviews #comments .star-rating {
	color: #d4a012;
}

body.single-product .tdp-single-product .woocommerce-tabs #reviews .woocommerce-pagination {
	margin-top: 1rem;
}

body.single-product .tdp-single-product .woocommerce-tabs #reviews .woocommerce-pagination ul {
	border: none;
}

body.single-product .tdp-single-product .woocommerce-tabs #reviews .woocommerce-pagination a,
body.single-product .tdp-single-product .woocommerce-tabs #reviews .woocommerce-pagination span {
	color: rgba(255, 255, 255, 0.75);
	border-color: rgba(255, 255, 255, 0.15);
	background: rgba(255, 255, 255, 0.05);
}

body.single-product .tdp-single-product .woocommerce-tabs #reviews .woocommerce-pagination a:hover {
	color: var(--tdp-primary);
	border-color: var(--tdp-primary);
}

/* Formulario de valoración (#review_form / #respond) */
body.single-product .tdp-single-product .woocommerce-tabs #review_form_wrapper {
	margin-top: 2rem;
	padding-top: 2rem;
	border-top: 1px solid rgba(255, 255, 255, 0.1);
	clear: both;
}

body.single-product .tdp-single-product .woocommerce-tabs #review_form,
body.single-product .tdp-single-product .woocommerce-tabs #respond.comment-respond {
	margin: 0;
	padding: 0;
	border: none;
	background: transparent;
	max-width: 52rem;
}

body.single-product .tdp-single-product .woocommerce-tabs #respond .comment-reply-title {
	display: block;
	float: none !important;
	font-family: var(--tdp-font-heading), Arial, Helvetica, sans-serif;
	font-size: 1.6rem;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	color: var(--tdp-white);
	margin: 0 0 1.25rem;
	line-height: 1.3;
}

body.single-product .tdp-single-product .woocommerce-tabs #respond .comment-reply-title small {
	float: none !important;
	display: block;
	margin-top: 0.6rem;
	font-size: 1.25rem;
	font-weight: 400;
	text-transform: none;
	letter-spacing: normal;
}

body.single-product .tdp-single-product .woocommerce-tabs #respond .comment-reply-title small a {
	color: var(--tdp-primary);
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: 0.12em;
}

body.single-product .tdp-single-product .woocommerce-tabs #review_form .comment-form .comment-notes {
	margin: 0 0 1.35rem;
	font-size: 1.3rem;
	line-height: 1.55;
	color: rgba(255, 255, 255, 0.55);
}

body.single-product .tdp-single-product .woocommerce-tabs #review_form .comment-form>p {
	margin: 0 0 1.35rem;
}

body.single-product .tdp-single-product .woocommerce-tabs #review_form .comment-form label {
	display: block;
	margin-bottom: 0.45rem;
	font-weight: 600;
	font-size: 1.35rem;
	color: rgba(255, 255, 255, 0.92);
}

body.single-product .tdp-single-product .woocommerce-tabs #review_form .comment-form .required,
body.single-product .tdp-single-product .woocommerce-tabs #review_form .required-field-message .required {
	color: var(--tdp-primary);
	border: none;
	background: none;
}

body.single-product .tdp-single-product .woocommerce-tabs #review_form .comment-form-rating {
	margin-bottom: 1.25rem;
}

body.single-product .tdp-single-product .woocommerce-tabs #review_form .comment-form-rating label {
	margin-bottom: 0.65rem;
}

body.single-product .tdp-single-product .woocommerce-tabs #review_form p.stars {
	margin: 0.15rem 0 0;
	line-height: 1;
}

body.single-product .tdp-single-product .woocommerce-tabs #review_form p.stars a {
	font-size: 2.6rem;
	width: 1em;
	height: 1em;
}

body.single-product .tdp-single-product .woocommerce-tabs #review_form p.stars a::before {
	color: rgba(255, 255, 255, 0.22);
}

body.single-product .tdp-single-product .woocommerce-tabs #review_form p.stars:hover a::before {
	color: #d4a012;
}

body.single-product .tdp-single-product .woocommerce-tabs #review_form p.stars a:hover~a::before {
	color: rgba(255, 255, 255, 0.22);
}

body.single-product .tdp-single-product .woocommerce-tabs #review_form p.stars.selected a::before {
	color: #d4a012;
}

body.single-product .tdp-single-product .woocommerce-tabs #review_form p.stars.selected a.active~a::before {
	color: rgba(255, 255, 255, 0.22);
}

body.single-product .tdp-single-product .woocommerce-tabs #review_form input[type="text"],
body.single-product .tdp-single-product .woocommerce-tabs #review_form input[type="email"],
body.single-product .tdp-single-product .woocommerce-tabs #review_form textarea {
	width: 100% !important;
	max-width: 100%;
	box-sizing: border-box;
	padding: 1rem 1.2rem !important;
	border-radius: 0.85rem !important;
	border: 1px solid rgba(255, 255, 255, 0.15) !important;
	background: rgba(255, 255, 255, 0.06) !important;
	color: var(--tdp-white) !important;
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif !important;
	font-size: 1.4rem !important;
	line-height: 1.5;
}

body.single-product .tdp-single-product .woocommerce-tabs #review_form textarea {
	min-height: 12rem !important;
	height: auto !important;
	resize: vertical;
}

body.single-product .tdp-single-product .woocommerce-tabs #review_form input:focus,
body.single-product .tdp-single-product .woocommerce-tabs #review_form textarea:focus {
	outline: none !important;
	border-color: var(--tdp-primary) !important;
	box-shadow: 0 0 0 1px var(--tdp-primary);
}

body.single-product .tdp-single-product .woocommerce-tabs #review_form .comment-form-cookies-consent {
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	gap: 0.75rem;
	margin-bottom: 1.25rem !important;
}

body.single-product .tdp-single-product .woocommerce-tabs #review_form .comment-form-cookies-consent input[type="checkbox"] {
	flex-shrink: 0;
	width: 1.15rem;
	height: 1.15rem;
	margin-top: 0.25rem;
	accent-color: var(--tdp-primary);
	cursor: pointer;
}

body.single-product .tdp-single-product .woocommerce-tabs #review_form .comment-form-cookies-consent label {
	margin: 0;
	font-weight: 400;
	font-size: 1.3rem;
	line-height: 1.5;
	color: rgba(255, 255, 255, 0.68);
	cursor: pointer;
}

body.single-product .tdp-single-product .woocommerce-tabs #review_form .form-submit {
	margin-top: 0.5rem !important;
	margin-bottom: 0 !important;
}

body.single-product .tdp-single-product .woocommerce-tabs #review_form .form-submit input[type="submit"],
body.single-product .tdp-single-product .woocommerce-tabs #review_form input#submit.submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 4.8rem;
	padding: 1rem 2.4rem !important;
	border: none !important;
	border-radius: 0.85rem !important;
	background: var(--tdp-primary) !important;
	color: var(--tdp-white) !important;
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif !important;
	font-size: 1.45rem !important;
	font-weight: 600 !important;
	cursor: pointer;
	box-shadow: 0 0.35rem 1.2rem var(--tdp-shadow-primary);
	transition:
		background 0.2s ease,
		box-shadow 0.2s ease,
		transform 0.15s ease;
}

body.single-product .tdp-single-product .woocommerce-tabs #review_form .form-submit input[type="submit"]:hover,
body.single-product .tdp-single-product .woocommerce-tabs #review_form input#submit.submit:hover,
body.single-product .tdp-single-product .woocommerce-tabs #review_form .form-submit input[type="submit"]:focus,
body.single-product .tdp-single-product .woocommerce-tabs #review_form input#submit.submit:focus {
	background: var(--tdp-primary-dark) !important;
	color: var(--tdp-white) !important;
	box-shadow: 0 0.45rem 1.4rem var(--tdp-shadow-primary-deep);
	outline: none;
}

body.single-product .tdp-single-product .woocommerce-tabs #review_form .must-log-in a {
	color: var(--tdp-primary);
	font-weight: 600;
}

/* Contenido Jet Engine + pestaña Video dentro del panel WooCommerce */
body.single-product .tdp-single-product .woocommerce-tabs .tdp-wc-tab-jet,
body.single-product .tdp-single-product .woocommerce-tabs .tdp-wc-tab-video {
	box-sizing: border-box;
	background: #0d0d0d;
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 2.4rem;
	padding: clamp(2.4rem, 4vw, 4.8rem) clamp(2rem, 4vw, 4rem);
	color: rgba(255, 255, 255, 0.78);
	font-size: 1.45rem;
	line-height: 1.65;
}

body.single-product .tdp-single-product .woocommerce-tabs .tdp-wc-tab-video__embed {
	position: relative;
	width: 100%;
	aspect-ratio: 16 / 9;
	min-height: 12rem;
	background: rgba(0, 0, 0, 0.35);
	border-radius: 1.2rem;
	overflow: hidden;
}

body.single-product .tdp-single-product .woocommerce-tabs .tdp-wc-tab-video__embed>figure,
body.single-product .tdp-single-product .woocommerce-tabs .tdp-wc-tab-video__embed>div {
	margin: 0;
	height: 100%;
}

body.single-product .tdp-single-product .woocommerce-tabs .tdp-wc-tab-video__embed .wp-block-embed__wrapper {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
}

body.single-product .tdp-single-product .woocommerce-tabs .tdp-wc-tab-video__embed iframe {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	border: 0;
}

body.single-product .tdp-single-product .woocommerce-tabs .tdp-wc-tab-video--link .tdp-wc-tab-video__external {
	color: var(--tdp-primary);
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: 0.15em;
}

body.single-product .tdp-single-product .woocommerce-tabs .tdp-wc-tab-jet>*:first-child {
	margin-top: 0;
}

body.single-product .tdp-single-product .woocommerce-tabs .tdp-wc-tab-jet>*:last-child {
	margin-bottom: 0;
}

body.single-product .tdp-single-product .woocommerce-tabs .tdp-wc-tab-jet h2,
body.single-product .tdp-single-product .woocommerce-tabs .tdp-wc-tab-jet h3 {
	font-family: var(--tdp-font-heading), Arial, Helvetica, sans-serif;
	color: var(--tdp-white);
	letter-spacing: 0.03em;
	text-transform: uppercase;
	margin: 0 0 1.2rem;
	font-size: 1.8rem;
}

body.single-product .tdp-single-product .woocommerce-tabs .tdp-wc-tab-jet p {
	margin: 0 0 1.2rem;
}

body.single-product .tdp-single-product .woocommerce-tabs .tdp-wc-tab-jet a {
	color: var(--tdp-primary);
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: 0.15em;
}

body.single-product .tdp-single-product .woocommerce-tabs .tdp-wc-tab-jet a:hover,
body.single-product .tdp-single-product .woocommerce-tabs .tdp-wc-tab-jet a:focus {
	color: var(--tdp-primary-dark);
}

body.single-product .tdp-single-product .woocommerce-tabs .tdp-wc-tab-jet ul,
body.single-product .tdp-single-product .woocommerce-tabs .tdp-wc-tab-jet ol {
	margin: 0 0 1.2rem 1.2em;
	padding: 0;
}

body.single-product .tdp-single-product .woocommerce-tabs .tdp-wc-tab-jet .wp-block-columns {
	gap: 2rem;
	margin-bottom: 1.6rem;
}

@media (min-width: 782px) {
	body.single-product .tdp-single-product .woocommerce-tabs .tdp-wc-tab-jet .wp-block-columns {
		display: grid;
		grid-template-columns: 1fr 1fr;
	}
}

/*
 * Tablas WYSIWYG (pestañas Jet): carrusel como recién llegados + tarjeta tipo .tdp-mv-card / productos relacionados.
 */
body.single-product .tdp-wc-tab-jet .tdp-wc-tab-table-slider {
	margin: clamp(1.25rem, 2.5vw, 2rem) 0;
	width: 100%;
}

/* Una diapositiva = tabla ancha: scroll horizontal en el viewport (anula anchos fijos del carrusel inicio). */
body.single-product .tdp-wc-tab-jet .tdp-mv-slider--wc-tab-table .tdp-mv-slider__slide {
	flex: 0 0 auto !important;
	width: max-content !important;
	max-width: none !important;
	min-width: 100% !important;
	scroll-snap-align: none;
	scroll-snap-stop: normal;
}

body.single-product .tdp-wc-tab-jet .tdp-mv-slider--wc-tab-table .tdp-mv-slider__track {
	width: max-content;
	min-width: 100%;
}

body.single-product .tdp-wc-tab-jet .tdp-wc-tab-table-slide {
	box-sizing: border-box;
	width: 100%;
	min-width: min(100%, 36rem);
	max-width: 100%;
	border-radius: clamp(14px, 2vw, 20px);
	background: #111111;
	border: 1px solid rgba(255, 255, 255, 0.08);
	box-shadow: 0 12px 40px rgba(0, 0, 0, 0.45);
	overflow: auto;
	-webkit-overflow-scrolling: touch;
}

body.single-product .tdp-wc-tab-jet .tdp-wc-tab-table-slide table {
	width: 100%;
	min-width: 100%;
	border-collapse: collapse;
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-size: 1.35rem;
	line-height: 1.5;
	color: rgba(255, 255, 255, 0.92);
	margin: 0;
	background: transparent;
}

body.single-product .tdp-wc-tab-jet .tdp-wc-tab-table-slide caption {
	caption-side: top;
	padding: 1rem 1.25rem 0.75rem;
	font-family: var(--tdp-font-heading), Arial, Helvetica, sans-serif;
	font-size: 1.25rem;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--tdp-white);
	text-align: left;
}

body.single-product .tdp-wc-tab-jet .tdp-wc-tab-table-slide thead th {
	padding: 1rem 1.25rem;
	text-align: left;
	font-weight: 600;
	color: var(--tdp-white);
	background: rgba(255, 255, 255, 0.06);
	border-bottom: 2px solid var(--tdp-primary);
	box-shadow: 0 0 18px rgba(0, 0, 0, 0.2);
}

body.single-product .tdp-wc-tab-jet .tdp-wc-tab-table-slide tbody td,
body.single-product .tdp-wc-tab-jet .tdp-wc-tab-table-slide tbody th {
	padding: 0.85rem 1.25rem;
	vertical-align: top;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

body.single-product .tdp-wc-tab-jet .tdp-wc-tab-table-slide tbody tr:nth-child(even) td,
body.single-product .tdp-wc-tab-jet .tdp-wc-tab-table-slide tbody tr:nth-child(even) th {
	background: rgba(255, 255, 255, 0.03);
}

body.single-product .tdp-wc-tab-jet .tdp-wc-tab-table-slide tbody tr:hover td,
body.single-product .tdp-wc-tab-jet .tdp-wc-tab-table-slide tbody tr:hover th {
	background: rgba(255, 255, 255, 0.06);
}

body.single-product .tdp-wc-tab-jet .tdp-wc-tab-table-slide tfoot td,
body.single-product .tdp-wc-tab-jet .tdp-wc-tab-table-slide tfoot th {
	padding: 1rem 1.25rem;
	font-weight: 600;
	color: rgba(255, 255, 255, 0.95);
	border-top: 1px solid rgba(255, 255, 255, 0.12);
	background: rgba(255, 255, 255, 0.04);
}

body.single-product .tdp-wc-tab-jet .tdp-wc-tab-table-slide a {
	color: var(--tdp-primary);
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: 0.12em;
}

body.single-product .tdp-wc-tab-jet .tdp-wc-tab-table-slide a:hover,
body.single-product .tdp-wc-tab-jet .tdp-wc-tab-table-slide a:focus {
	color: var(--tdp-primary-dark);
}

/*
 * Ajustes globales WooCommerce (formularios en todo el sitio / checkout).
 * Independiente del bloque «Mi cuenta» (sección 14 al final del archivo).
 */
.woocommerce form.checkout_coupon,
.woocommerce form.login,
.woocommerce form.register {
	border: none !important;
	padding: 0 !important;
	margin: 0 !important;
	text-align: left !important;
	border-radius: 0 !important;
}

.woocommerce form .form-row .input-text,
.woocommerce form .form-row select {
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-weight: 400;
	letter-spacing: normal;
	padding: .5em;
	display: block;
	background-color: transparent !important;
	border: none !important;
	border-radius: none !important;
	color: #fff !important;
	box-sizing: none !important;
	width: 100%;
	margin: 0;
	line-height: normal;
	height: auto;
}

.woocommerce form .form-row::after,
.woocommerce form .form-row::before,
.woocommerce-page form .form-row::after,
.woocommerce-page form .form-row::before {
	content: none !important;
	display: none !important;
}

.woocommerce .woocommerce-form-login .woocommerce-form-login__submit {
	background-color: var(--tdp-accent) !important;
	padding: 1.6rem 2rem !important;
	border-radius: .8rem !important;
	margin-bottom: 1.6rem !important;
}

.woocommerce .woocommerce-form-login .woocommerce-form-login__submit:hover {
	background-color: var(--tdp-primary-dark) !important;
}

body.tdp-page-mi-cuenta .tdp-auth-btn-submit {
	background-color: var(--tdp-accent) !important;
	padding: 1.6rem 2rem !important;
	border-radius: .8rem !important;
	margin-bottom: 1.6rem !important;

}

body.tdp-page-mi-cuenta .tdp-auth-btn-submit:hover,
body.tdp-page-mi-cuenta .tdp-auth-btn-submit:focus {
	background-color: var(--tdp-accent) !important;
	padding: 1.6rem 2rem !important;
	border-radius: .8rem !important;
	margin-bottom: 1.6rem !important;
}

/* =============================================================================
 * 10. ACCESIBILIDAD
 * ============================================================================= */
.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	position: absolute !important;
	height: 1px;
	width: 1px;
	overflow: hidden;
}

.skip-link:focus {
	clip: auto !important;
	height: auto;
	width: auto;
	background: var(--tdp-white);
	color: var(--tdp-bg-secondary);
	padding: 0.5rem 1rem;
	z-index: 100000;
	outline: 2px solid var(--tdp-primary);
}

/* =============================================================================
 * 11. PIE DE PÁGINA
 * ============================================================================= */
.site-footer {
	background: var(--tdp-bg-secondary);
	color: var(--tdp-text-on-dark);
	padding: 2rem 0 1rem;
	box-shadow: 0 -6px 32px var(--tdp-shadow-primary);
}

.site-footer.site-footer--placeholder {
	padding: 0;
	margin-top: 0;
	min-height: 0;
	box-shadow: none;
}

.site-footer a {
	color: var(--tdp-white);
}

.site-footer a:hover,
.site-footer a:focus {
	color: var(--tdp-primary);
}

.site-footer__widgets {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(20rem, 1fr));
	gap: var(--tdp-gap);
	margin-bottom: 1.5rem;
}

.site-footer__copy {
	border-top: 1px solid rgba(255, 255, 255, 0.12);
	padding-top: 1rem;
	font-size: 1.4rem;
	color: rgba(255, 255, 255, 0.78);
}

/* Pie maquetado (cuatro columnas + barra legal) */
.site-footer.tdp-site-footer {
	padding: 0;
	box-shadow: none;
	background: #000000;
	color: rgba(255, 255, 255, 0.72);
}

.tdp-site-footer__accent {
	height: 0.6rem;
	background: var(--tdp-primary);
	width: 100%;
}

.tdp-site-footer__inner {
	padding-top: 4.8rem;
	padding-bottom: 4rem;
}

.tdp-site-footer__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 3.6rem 2.4rem;
	align-items: start;
}

@media (min-width: 768px) {
	.tdp-site-footer__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 1100px) {
	.tdp-site-footer__grid {
		grid-template-columns: 1.15fr repeat(3, minmax(0, 1fr));
		gap: 2.4rem 3.2rem;
	}
}

.tdp-site-footer__heading {
	display: block;
	font-family: var(--tdp-font-heading), Arial, Helvetica, sans-serif;
	font-size: 1.3rem;
	font-weight: 400;
	letter-spacing: var(--tdp-heading-tracking);
	text-transform: uppercase;
	color: #ffffff;
	margin: 0 0 1.6rem;
	line-height: 1.3;
}

.tdp-site-footer__lead {
	margin: 0 0 2rem;
	font-size: 1.4rem;
	line-height: 1.65;
	color: rgba(255, 255, 255, 0.68);
	max-width: 34rem;
}

.tdp-site-footer__brand {
	margin-bottom: 1.2rem;
}

.tdp-site-footer__logo.custom-logo-link,
.tdp-site-footer__logo a {
	display: inline-flex;
	flex-direction: column;
	align-items: flex-start;
	text-decoration: none;
	color: inherit;
}

.tdp-site-footer__logo img {
	max-height: 5.2rem;
	width: auto;
	height: auto;
	display: block;
}

.tdp-site-footer__logo--image img {
	max-height: 5.6rem;
	max-width: min(100%, 28rem);
	width: auto;
	height: auto;
}

.tdp-site-footer__logo--mark {
	align-items: flex-start;
	gap: 0.4rem;
}

.tdp-site-footer__logo-mark {
	position: relative;
	display: block;
	font-family: var(--tdp-font-heading), Arial, Helvetica, sans-serif;
	font-size: 4.2rem;
	line-height: 0.85;
	letter-spacing: -0.04em;
	height: 4.4rem;
}

.tdp-site-footer__logo-t {
	color: #ffffff;
	position: relative;
	z-index: 2;
}

.tdp-site-footer__logo-d {
	color: var(--tdp-primary);
	margin-left: -0.42em;
	position: relative;
	z-index: 1;
}

.tdp-site-footer__logo-text {
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-size: 1rem;
	font-weight: 600;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: #ffffff;
}

.tdp-site-footer__social {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	list-style: none;
	margin: 0;
	padding: 0;
	align-items: center;
}

.tdp-site-footer__social-link,
.tdp-site-footer__social a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 4rem;
	height: 4rem;
	border-radius: 50%;
	border: 1px solid rgba(255, 255, 255, 0.55);
	background: rgba(255, 255, 255, 0.08);
	color: #ffffff;
	text-decoration: none;
	font-size: 1.6rem;
	transition: border-color 0.2s ease, background-color 0.2s ease, color 0.2s ease;
}

.tdp-site-footer__social-link:hover,
.tdp-site-footer__social-link:focus,
.tdp-site-footer__social a:hover,
.tdp-site-footer__social a:focus {
	border-color: var(--tdp-primary);
	color: #ffffff;
	background: rgba(229, 27, 32, 0.15);
	outline: none;
}

.tdp-site-footer__nav {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0.85rem;
}

.tdp-site-footer__nav a {
	color: rgba(255, 255, 255, 0.7);
	text-decoration: none;
	font-size: 1.4rem;
	transition: color 0.2s ease;
}

.tdp-site-footer__nav a:hover,
.tdp-site-footer__nav a:focus {
	color: var(--tdp-primary);
	outline: none;
}

.tdp-site-footer__contact {
	list-style: none;
	margin: 0 0 2rem;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 1.2rem;
	font-size: 1.4rem;
	line-height: 1.5;
	color: rgba(255, 255, 255, 0.72);
}

.tdp-site-footer__contact li {
	display: flex;
	align-items: flex-start;
	gap: 1rem;
}

.tdp-site-footer__contact a {
	color: rgba(255, 255, 255, 0.72);
	text-decoration: none;
}

.tdp-site-footer__contact a:hover,
.tdp-site-footer__contact a:focus {
	color: var(--tdp-primary);
	outline: none;
}

.tdp-site-footer__contact-icon {
	flex: 0 0 auto;
	color: var(--tdp-primary);
	font-size: 1.5rem;
	line-height: 1.4;
	margin-top: 0.1rem;
}

.tdp-site-footer__hours {
	background: #1a1a1a;
	border-radius: 0.8rem;
	padding: 1.4rem 1.6rem;
	color: #ffffff;
	font-size: 1.4rem;
	line-height: 1.55;
}

.tdp-site-footer__hours p {
	margin: 0;
}

.tdp-site-footer__hours p+p {
	margin-top: 0.4rem;
}

.tdp-site-footer__sub {
	border-top: 1px solid rgba(255, 255, 255, 0.1);
	background: #000000;
	padding: 1.6rem 0 2rem;
}

.tdp-site-footer__sub-inner {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 1.2rem;
}

@media (min-width: 768px) {
	.tdp-site-footer__sub-inner {
		flex-direction: row;
		align-items: center;
		justify-content: space-between;
		gap: 2rem;
	}
}

.tdp-site-footer__copyright {
	margin: 0;
	font-size: 1.3rem;
	color: rgba(255, 255, 255, 0.55);
}

.tdp-site-footer__legal {
	display: flex;
	flex-wrap: wrap;
	gap: 0.8rem 1.6rem;
	font-size: 1.3rem;
}

.tdp-site-footer__legal a {
	color: rgba(255, 255, 255, 0.55);
	text-decoration: none;
	white-space: nowrap;
}

.tdp-site-footer__legal a:hover,
.tdp-site-footer__legal a:focus {
	color: var(--tdp-primary);
	outline: none;
}

/* =============================================================================
 * 12. ICONOS MATERIAL (Google Fonts)
 * ============================================================================= */
.material-symbols-outlined {
	font-variation-settings:
		"FILL" 0,
		"wght" 400,
		"GRAD" 0,
		"opsz" 24;
	vertical-align: middle;
}

/* =============================================================================
 * 13. EDITOR GUTENBERG (add_editor_style)
 * ============================================================================= */
.editor-styles-wrapper {
	font-size: 62.5%;
}

.editor-styles-wrapper .block-editor-block-list__layout {
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-size: 1.6rem;
}

.editor-styles-wrapper h1,
.editor-styles-wrapper h2,
.editor-styles-wrapper h3,
.editor-styles-wrapper h4,
.editor-styles-wrapper h5,
.editor-styles-wrapper h6 {
	font-family: var(--tdp-font-heading), Arial, Helvetica, sans-serif;
}

/* =============================================================================
 * 14. MI CUENTA — tarjeta auth (mockup: panel rojo + switch + formularios)
 * ============================================================================= */
/* Contenedor de página Mi cuenta: 1440px máx., sin columna lateral */
body.tdp-page-mi-cuenta .site-container--tdp-mi-cuenta-1280 {
	display: block;
	max-width: var(--tdp-max);
	width: 100%;
	margin-left: auto;
	margin-right: auto;
}

body.tdp-page-mi-cuenta .site-container--tdp-mi-cuenta-1280 .site-main {
	width: 100%;
	max-width: none;
}

/* Sin entry-header en plantilla: evitar título duplicado del bloque «Título» */
body.tdp-page-mi-cuenta .entry-content .wp-block-post-title {
	display: none !important;
}

body.tdp-page-mi-cuenta.woocommerce-account .woocommerce {
	max-width: 100%;
}

@media (max-width: 991.98px) {
	body.tdp-page-mi-cuenta .site-container--tdp-mi-cuenta-1280 .site-main {
		padding-top: 0;
		padding-bottom: 2rem;
	}

	body.tdp-page-mi-cuenta .tdp-auth-shell {
		padding-top: 0;
		padding-bottom: 3rem;
	}
}

body.tdp-page-mi-cuenta .tdp-auth-shell {
	padding: 2rem 0 4rem;
	max-width: none;
	width: 100%;
}

body.tdp-page-mi-cuenta .tdp-auth-card {
	display: flex;
	flex-direction: column;
	gap: 2.4rem;
	overflow: hidden;
	border-radius: 2rem;
	box-shadow: 0 1.2rem 4.8rem rgba(0, 0, 0, 0.45);
}

@media (min-width: 992px) {
	body.tdp-page-mi-cuenta .tdp-auth-card {
		flex-direction: row;
		align-items: stretch;
		min-height: 52rem;
	}
}

/* Panel izquierdo (rojo) */
body.tdp-page-mi-cuenta .tdp-auth-card__left {
	align-content: center;
	padding: 3.2rem 2.8rem;
	/* Degradado panel izquierdo: esquina sup. izq. → inf. der. (misma escala de rojos que el diseño) */
	background: linear-gradient(to bottom right,
			#e41b20 0%,
			#e01a1f 11%,
			#dc1a1e 22%,
			#d8191e 33%,
			#d4181d 44%,
			#d0181c 56%,
			#cc171b 67%,
			#c8161b 78%,
			#c4161a 89%,
			#c01519 100%);
	color: var(--tdp-white);
	border-radius: 2rem;
}

@media (min-width: 992px) {
	body.tdp-page-mi-cuenta .tdp-auth-card__left {
		padding: 4rem 3.6rem;
	}
}

body.tdp-page-mi-cuenta .tdp-auth-visual__badge {
	display: inline-block;
	margin-bottom: 2rem;
	padding: 0.5rem 1.2rem;
	border-radius: 10rem;
	background: rgba(0, 0, 0, 0.2);
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-size: 1.2rem;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

body.tdp-page-mi-cuenta .tdp-auth-visual__title {
	margin: 0 0 1.2rem;
	font-family: var(--tdp-font-heading), Arial, Helvetica, sans-serif;
	font-size: var(--tdp-h2);
	line-height: var(--tdp-heading-line);
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: var(--tdp-white);
}

body.tdp-page-mi-cuenta .tdp-auth-visual__desc {
	margin: 0 0 2.4rem;
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-size: 1.5rem;
	line-height: 1.65;
	color: rgba(255, 255, 255, 0.95);
}

body.tdp-page-mi-cuenta .tdp-auth-visual__desc p:last-child {
	margin-bottom: 0;
}

body.tdp-page-mi-cuenta .tdp-auth-visual__reasons-h {
	margin: 0 0 1.6rem;
	font-family: var(--tdp-font-heading), Arial, Helvetica, sans-serif;
	font-size: var(--tdp-h5);
	color: rgba(255, 255, 255, 0.98);
	text-transform: uppercase;
	letter-spacing: 0.03em;
}

body.tdp-page-mi-cuenta .tdp-auth-visual__reasons {
	display: flex;
	flex-direction: column;
	gap: 1.6rem;
}

body.tdp-page-mi-cuenta .tdp-auth-card__left .tdp-my-account-reason-card {
	padding: 0;
	border: none;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 1rem;
	align-items: start;
}

body.tdp-page-mi-cuenta .tdp-auth-card__left .tdp-my-account-reason-card__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 5.6rem;
	height: 5.6rem;
	margin: 0;
	border-radius: 1.2rem;
	background: rgba(255, 255, 255, 0.18);
	line-height: 0;
	align-self: start;
}

body.tdp-page-mi-cuenta .tdp-auth-card__left .tdp-my-account-reason-card__icon-img {
	max-height: 2.8rem;
	max-width: 2.8rem;
	width: auto;
	height: auto;
	object-fit: contain;
	filter: brightness(0) invert(1);
}

body.tdp-page-mi-cuenta .tdp-auth-card__left .tdp-my-account-reason-card__text {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	grid-column: 2;
	min-width: 0;
	align-self: start;
}

body.tdp-page-mi-cuenta .tdp-auth-card__left .tdp-my-account-reason-card__title {
	margin: 0;
	font-family: var(--tdp-font-heading), Arial, Helvetica, sans-serif;
	font-size: var(--tdp-h5);
	color: var(--tdp-white);
}

body.tdp-page-mi-cuenta .tdp-auth-card__left .tdp-my-account-reason-card__description {
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-size: 1.4rem;
	line-height: 1.6;
	color: rgba(255, 255, 255, 0.9);
}

body.tdp-page-mi-cuenta .tdp-auth-card__left .tdp-my-account-reason-card__description p:last-child {
	margin-bottom: 0;
}

body.tdp-page-mi-cuenta .tdp-auth-card__left .tdp-my-account-reason-card:not(:has(.tdp-my-account-reason-card__icon)) {
	grid-template-columns: 1fr;
}

body.tdp-page-mi-cuenta .tdp-auth-card__left .tdp-my-account-reason-card:not(:has(.tdp-my-account-reason-card__icon)) .tdp-my-account-reason-card__text {
	grid-column: 1;
}

/* Panel derecho: fondo página con degradado sutil; tarjeta interior en .tdp-auth-card__right-panel */
body.tdp-page-mi-cuenta .tdp-auth-card__right {
	display: flex;
	flex-direction: column;
	align-items: end;
}

/* Izquierda 45 / derecha 65 — debe ir después de las reglas base (antes flex:1 1 auto las pisaba) */
@media (max-width: 991.98px) {

	body.tdp-page-mi-cuenta .tdp-auth-card__left,
	body.tdp-page-mi-cuenta .tdp-auth-card__right {
		flex: 1 1 auto;
		width: 100%;
	}

	/* Formulario primero en móvil (tabs + campos arriba; panel promocional debajo). */
	body.tdp-page-mi-cuenta .tdp-auth-card__right {
		order: -1;
	}

	body.tdp-page-mi-cuenta .tdp-auth-card__left {
		order: 1;
	}

	/* El hgap de 1rem viene del .site-container; aquí solo respiro vertical. */
	body.tdp-page-mi-cuenta .tdp-auth-card__right-panel {
		padding: 1.6rem 2.4rem;
	}
}

@media (min-width: 992px) {
	body.tdp-page-mi-cuenta .tdp-auth-card__left {
		flex: 45 1 0%;
		min-width: 0;
	}

	body.tdp-page-mi-cuenta .tdp-auth-card__right {
		flex: 65 1 0%;
		min-width: 0;
	}
}

body.tdp-page-mi-cuenta .tdp-auth-card__right-panel {
	width: 100%;
	max-width: 52rem;
	border: 1px solid rgba(255, 255, 255, 0.14);
	border-radius: 1.6rem;
	background: linear-gradient(to bottom right,
			#222222 0%,
			#181818 50%,
			#121212 100%);
	box-shadow:
		0 0.4rem 2.4rem rgba(0, 0, 0, 0.55),
		inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

@media (min-width: 992px) {
	body.tdp-page-mi-cuenta .tdp-auth-card__right-panel {
		padding: 3.2rem 3rem 3.4rem;
	}
}

/* Switch tipo píldora (sobre la tarjeta interior) */
body.tdp-page-mi-cuenta .tdp-auth-switch {
	display: flex;
	margin-bottom: 2.8rem;
	padding: 1.2rem;
	border-radius: 1rem;
	background: #0d0d0d;
	border: 1px solid rgba(255, 255, 255, 0.08);
	gap: 1rem;
}

body.tdp-page-mi-cuenta .tdp-auth-switch__btn {
	flex: 1 1 50%;
	margin: 0;
	padding: 1rem 1.2rem;
	border: none;
	border-radius: 0.8rem;
	background: transparent;
	color: rgba(255, 255, 255, 0.45);
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-size: 1.4rem;
	font-weight: 600;
	cursor: pointer;
	transition:
		background 0.2s ease,
		color 0.2s ease,
		box-shadow 0.2s ease;
}

body.tdp-page-mi-cuenta .tdp-auth-switch__btn:hover,
body.tdp-page-mi-cuenta .tdp-auth-switch__btn:focus {
	background-color: var(--tdp-primary);
	color: rgba(255, 255, 255, 0.9);
	outline: none;
}

body.tdp-page-mi-cuenta .tdp-auth-switch__btn[aria-selected="true"] {
	background: var(--tdp-primary);
	color: var(--tdp-white);
	box-shadow: 0 0.4rem 1.4rem var(--tdp-shadow-primary);
}

body.tdp-page-mi-cuenta .tdp-auth-panel__title {
	margin: 0 0 0.6rem;
	font-family: var(--tdp-font-heading), Arial, Helvetica, sans-serif;
	font-size: var(--tdp-h3);
	line-height: var(--tdp-heading-line);
	text-transform: uppercase;
	letter-spacing: 0.03em;
	color: var(--tdp-white);
}

body.tdp-page-mi-cuenta .tdp-auth-panel__subtitle {
	margin: 0 0 2.4rem;
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-size: 1.4rem;
	color: rgba(255, 255, 255, 0.55);
}

body.tdp-page-mi-cuenta .tdp-auth-register-note {
	margin: 0 0 1.6rem;
	font-size: 1.4rem;
	color: rgba(255, 255, 255, 0.72);
}

body.tdp-page-mi-cuenta .tdp-auth-panel--recovery .tdp-auth-panel__intro {
	margin: 0 0 2.4rem;
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-size: 1.4rem;
	line-height: 1.65;
	color: rgba(255, 255, 255, 0.55);
}

body.tdp-page-mi-cuenta .tdp-auth-panel--recovery .lost_reset_password .clear {
	display: none !important;
}

body.tdp-page-mi-cuenta .tdp-auth-panel--recovery .lost_reset_password .form-row-first,
body.tdp-page-mi-cuenta .tdp-auth-panel--recovery .lost_reset_password .form-row-last {
	float: none !important;
	width: 100% !important;
}

body.tdp-page-mi-cuenta .tdp-auth-hint__link--anchor {
	display: inline;
	margin: 0;
	padding: 0;
	border: none;
	background: none;
	color: var(--tdp-primary);
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-size: inherit;
	font-weight: 600;
	text-decoration: underline;
	cursor: pointer;
}

body.tdp-page-mi-cuenta .tdp-auth-hint__link--anchor:hover,
body.tdp-page-mi-cuenta .tdp-auth-hint__link--anchor:focus {
	color: var(--tdp-primary-dark);
}

body.tdp-page-mi-cuenta .tdp-auth-panel--recovery .woocommerce-message {
	margin: 0 0 1.6rem;
	border-radius: 0.8rem;
	border-left-width: 4px;
	background: rgba(255, 255, 255, 0.08);
	color: rgba(255, 255, 255, 0.92);
}

/* Anular estilos por defecto de WooCommerce (form.login, .register, cupón) en el panel auth */
body.tdp-page-mi-cuenta .tdp-auth-card__right-panel .woocommerce form.woocommerce-form-login.login,
body.tdp-page-mi-cuenta .tdp-auth-card__right-panel .woocommerce form.woocommerce-form-register.register,
body.tdp-page-mi-cuenta .tdp-auth-card__right-panel .woocommerce form.lost_reset_password,
body.tdp-page-mi-cuenta .woocommerce form.checkout_coupon {
	border: none !important;
	padding: 0 !important;
	margin: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	text-align: left !important;
}

body.tdp-page-mi-cuenta .tdp-auth-card__right-panel .woocommerce form.woocommerce-form-login .form-row,
body.tdp-page-mi-cuenta .tdp-auth-card__right-panel .woocommerce form.woocommerce-form-register .form-row,
body.tdp-page-mi-cuenta .tdp-auth-card__right-panel .woocommerce form.lost_reset_password .form-row {
	padding: 0 !important;
}

body.tdp-page-mi-cuenta .tdp-auth-card__right-panel .woocommerce form.woocommerce-form-login .form-row label,
body.tdp-page-mi-cuenta .tdp-auth-card__right-panel .woocommerce form.woocommerce-form-register .form-row label,
body.tdp-page-mi-cuenta .tdp-auth-card__right-panel .woocommerce form.lost_reset_password .form-row label {
	line-height: 1.35 !important;
}

/* WooCommerce envuelve la contraseña en .password-input (flex column) — forzar fila y ocultar su botón */
body.tdp-page-mi-cuenta .tdp-field__control .password-input {
	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	justify-content: flex-start !important;
	position: static !important;
	flex: 1 1 auto !important;
	min-width: 0 !important;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
}

body.tdp-page-mi-cuenta .tdp-field__control .password-input input[type="password"],
body.tdp-page-mi-cuenta .tdp-field__control .password-input input[type="text"] {
	padding-right: 0.4rem !important;
}

body.tdp-page-mi-cuenta .tdp-field__control .show-password-input {
	display: none !important;
}

/* Input dentro del wrapper WC (por si el JS aún no lo quitó) */
body.tdp-page-mi-cuenta .tdp-field__control .password-input .input-text {
	flex: 1 1 auto;
	min-width: 0;
	margin: 0;
	padding: 1.2rem 0.8rem 1.2rem 0.4rem;
	border: none;
	border-radius: 0;
	background: transparent;
	color: var(--tdp-white);
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-size: 1.5rem;
	box-shadow: none;
}

body.tdp-page-mi-cuenta .tdp-field__control .password-input .input-text:focus {
	outline: none;
	box-shadow: none;
}

/* Botón enviar: sobre reglas .woocommerce .button (#fff / gris del plugin) */
body.tdp-page-mi-cuenta .tdp-auth-card__right-panel .woocommerce button.button.tdp-auth-btn-submit,
body.tdp-page-mi-cuenta .tdp-auth-card__right-panel .woocommerce #respond input#submit.tdp-auth-btn-submit {
	background: var(--tdp-primary) !important;
	background-color: var(--tdp-primary) !important;
	color: var(--tdp-white) !important;
	border: none !important;
	border-radius: 0.8rem !important;
	text-shadow: none !important;
	box-shadow: none !important;
	text-transform: none !important;
	font-weight: 700 !important;
}

body.tdp-page-mi-cuenta .tdp-auth-card__right-panel .woocommerce button.button.tdp-auth-btn-submit:hover,
body.tdp-page-mi-cuenta .tdp-auth-card__right-panel .woocommerce button.button.tdp-auth-btn-submit:focus,
body.tdp-page-mi-cuenta .tdp-auth-card__right-panel .woocommerce #respond input#submit.tdp-auth-btn-submit:hover,
body.tdp-page-mi-cuenta .tdp-auth-card__right-panel .woocommerce #respond input#submit.tdp-auth-btn-submit:focus {
	background: var(--tdp-primary-dark) !important;
	background-color: var(--tdp-primary-dark) !important;
	color: var(--tdp-white) !important;
}

/* Campos con iconos */
body.tdp-page-mi-cuenta .tdp-field__label {
	display: block;
	margin-bottom: 0.6rem;
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-size: 1.1rem;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

body.tdp-page-mi-cuenta .tdp-field__label .required {
	color: var(--tdp-primary);
}

body.tdp-page-mi-cuenta .tdp-field__control {
	display: flex;
	align-items: center;
	gap: 0;
	padding: 0 0.4rem 0 1rem;
	border: 1px solid rgba(255, 255, 255, 0.16);
	border-radius: 0.8rem;
	background: #252525;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

body.tdp-page-mi-cuenta .tdp-field__control:focus-within {
	border-color: var(--tdp-primary);
	box-shadow: 0 0 0 0.2rem var(--tdp-glow-primary);
}

/* Medidor / pista de WooCommerce van después del input: columna dentro de .tdp-field__input-wrap */
body.tdp-page-mi-cuenta .tdp-field__control--with-strength {
	align-items: flex-start;
}

body.tdp-page-mi-cuenta .tdp-field__control--with-strength>.tdp-field__icon {
	margin-top: 1.25rem;
}

body.tdp-page-mi-cuenta .tdp-field__control--with-strength>.tdp-field__toggle-pw {
	margin-top: 0.85rem;
}

body.tdp-page-mi-cuenta .tdp-field__input-wrap {
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
	gap: 0.7rem;
	min-width: 0;
	padding: 0.35rem 0;
}

body.tdp-page-mi-cuenta .tdp-field__input-wrap>.input-text {
	flex: none;
	width: 100%;
	box-sizing: border-box;
}

body.tdp-page-mi-cuenta .tdp-field__input-wrap .woocommerce-password-strength {
	box-sizing: border-box;
	width: 100%;
	margin: 0;
	padding: 0.7rem 0.9rem;
	border-radius: 0.5rem;
	font-size: 1.2rem;
	line-height: 1.45;
	font-weight: 600;
	text-align: left;
	border: 1px solid transparent;
}

body.tdp-page-mi-cuenta .tdp-field__input-wrap .woocommerce-password-strength.short,
body.tdp-page-mi-cuenta .tdp-field__input-wrap .woocommerce-password-strength.bad {
	background: rgba(229, 27, 32, 0.16);
	border-color: rgba(229, 27, 32, 0.35);
	color: #ffc9cb;
}

body.tdp-page-mi-cuenta .tdp-field__input-wrap .woocommerce-password-strength.good,
body.tdp-page-mi-cuenta .tdp-field__input-wrap .woocommerce-password-strength.strong {
	background: rgba(46, 204, 113, 0.14);
	border-color: rgba(46, 204, 113, 0.35);
	color: #a8e6c4;
}

body.tdp-page-mi-cuenta .tdp-field__input-wrap .woocommerce-password-strength.hint {
	background: rgba(255, 255, 255, 0.06);
	border-color: rgba(255, 255, 255, 0.1);
	color: rgba(255, 255, 255, 0.65);
}

body.tdp-page-mi-cuenta .tdp-field__input-wrap .woocommerce-password-hint {
	display: block;
	margin: 0;
	padding: 0 0.2rem;
	font-size: 1.2rem;
	line-height: 1.55;
	color: rgba(255, 255, 255, 0.48);
}

body.tdp-page-mi-cuenta .tdp-field__icon {
	display: flex;
	flex-shrink: 0;
	align-items: center;
	justify-content: center;
	width: 2.4rem;
	color: rgba(255, 255, 255, 0.45);
	font-size: 1.6rem;
}

body.tdp-page-mi-cuenta .tdp-field__control .input-text {
	flex: 1 1 auto;
	min-width: 0;
	margin: 0;
	padding: 1.2rem 0.8rem 1.2rem 0.4rem;
	border: none;
	border-radius: 0;
	background: transparent;
	color: var(--tdp-white);
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-size: 1.5rem;
	box-shadow: none;
}

body.tdp-page-mi-cuenta .tdp-field__control .input-text::placeholder {
	color: rgba(255, 255, 255, 0.35);
}

body.tdp-page-mi-cuenta .tdp-field__control .input-text:focus {
	outline: none;
	box-shadow: none;
}

body.tdp-page-mi-cuenta .tdp-field__toggle-pw {
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 4.4rem;
	height: 4.4rem;
	margin: 0;
	padding: 0;
	border: none;
	border-radius: 0.6rem;
	background: transparent;
	color: rgba(255, 255, 255, 0.45);
	font-size: 1.6rem;
	cursor: pointer;
	transition: color 0.2s ease;
}

body.tdp-page-mi-cuenta .tdp-field__toggle-pw:hover,
body.tdp-page-mi-cuenta .tdp-field__toggle-pw:focus {
	color: var(--tdp-primary);
	outline: none;
}

body.tdp-page-mi-cuenta .tdp-auth-login-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-start;
	gap: 1rem;
}

body.tdp-page-mi-cuenta .tdp-auth-login-meta .woocommerce-form-login__rememberme span {
	color: rgba(255, 255, 255, 0.55);
	font-size: 1.4rem;
}

body.tdp-page-mi-cuenta .tdp-auth-forgot {
	font-size: 1.3rem;
	font-weight: 500;
	color: var(--tdp-primary);
	text-decoration: none;
}

body.tdp-page-mi-cuenta .tdp-auth-forgot:hover,
body.tdp-page-mi-cuenta .tdp-auth-forgot:focus {
	color: var(--tdp-primary-dark);
}

body.tdp-page-mi-cuenta .tdp-auth-submit-row {
	margin: 2rem 0 0;
}

body.tdp-page-mi-cuenta .tdp-auth-btn-submit {
	display: block;
	width: 100%;
	margin: 0;
	padding: 1.4rem 2rem;
	border: none;
	border-radius: 0.8rem;
	background: var(--tdp-primary);
	color: var(--tdp-white) !important;
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-size: 1.6rem;
	text-align: center;
	cursor: pointer;
	transition: background 0.2s ease, box-shadow 0.2s ease;
}

body.tdp-page-mi-cuenta .tdp-auth-btn-submit:hover,
body.tdp-page-mi-cuenta .tdp-auth-btn-submit:focus {
	background: var(--tdp-primary-dark);
	color: var(--tdp-white) !important;
	box-shadow: 0 0.6rem 2rem var(--tdp-shadow-primary);
}

body.tdp-page-mi-cuenta .tdp-auth-hint {
	margin: 2rem 0 0;
	text-align: center;
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-size: 1.4rem;
	color: rgba(255, 255, 255, 0.55);
}

body.tdp-page-mi-cuenta .tdp-auth-hint__link {
	margin: 0;
	padding: 0;
	border: none;
	background: none;
	color: var(--tdp-primary);
	font-family: inherit;
	font-size: inherit;
	font-weight: 600;
	text-decoration: underline;
	cursor: pointer;
}

body.tdp-page-mi-cuenta .tdp-auth-hint__link:hover,
body.tdp-page-mi-cuenta .tdp-auth-hint__link:focus {
	color: var(--tdp-primary-dark);
}

body.tdp-page-mi-cuenta .tdp-auth-card__right-panel .woocommerce-form .form-row {
	margin: 0 0 1.6rem !important;
}

body.tdp-page-mi-cuenta .woocommerce-notices-wrapper .woocommerce-message,
body.tdp-page-mi-cuenta .woocommerce-notices-wrapper .woocommerce-error,
body.tdp-page-mi-cuenta .woocommerce-notices-wrapper .woocommerce-info {
	border-radius: 0.8rem;
	border-left-width: 4px;
	background: rgba(255, 255, 255, 0.08);
	color: rgba(255, 255, 255, 0.92);
}

body.tdp-page-mi-cuenta .woocommerce-notices-wrapper a {
	color: var(--tdp-primary);
}

/* -----------------------------------------------------------------------------
 * Mi cuenta — usuario logueado (cabecera, stats, nav, pedidos en tarjetas)
 * -------------------------------------------------------------------------- */
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-header {
	margin-bottom: 2rem;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-card {
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 1.2rem;
	background: linear-gradient(to bottom right, #1e1e1e 0%, #141414 50%, #101010 100%);
	box-shadow: 0 0.6rem 2.4rem rgba(0, 0, 0, 0.4);
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-header__profile {
	display: grid;
	grid-template-columns: auto 1fr auto;
	align-items: center;
	gap: 1.6rem 2rem;
	padding: 2rem 2.4rem;
	margin-bottom: 1.6rem;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-header__avatar-img {
	display: block;
	width: 7.2rem;
	height: 7.2rem;
	border-radius: 50%;
	object-fit: cover;
	border: 2px solid rgba(255, 255, 255, 0.12);
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-header__name {
	margin: 0 0 1rem;
	font-family: var(--tdp-font-heading), Arial, Helvetica, sans-serif;
	font-size: var(--tdp-h3);
	line-height: var(--tdp-heading-line);
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: var(--tdp-white);
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-header__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 0.8rem 1.6rem;
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-size: 1.3rem;
	color: rgba(255, 255, 255, 0.62);
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-header__meta-item {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-header__meta-item i,
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-header__meta-item .material-symbols-outlined {
	color: rgba(255, 255, 255, 0.4);
	font-size: 1.4rem;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-header__logout.button {
	margin: 0;
	padding: 1rem 1.8rem;
	border: none;
	border-radius: 0.8rem;
	background: var(--tdp-white);
	color: var(--tdp-bg-secondary);
	font-size: 1.4rem;
	text-decoration: none;
	white-space: nowrap;
	transition: background 0.2s ease, color 0.2s ease;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-header__logout.button:hover,
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-header__logout.button:focus {
	background: var(--tdp-primary-soft);
	color: var(--tdp-primary-dark);
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-stats {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 1.2rem;
}

@media (min-width: 768px) {
	body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-stats {
		grid-template-columns: repeat(4, 1fr);
	}
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-stat {
	padding: 1.6rem 1.2rem;
	text-align: center;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-stat__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 4.4rem;
	height: 4.4rem;
	margin: 0 auto 1rem;
	border-radius: 0.8rem;
	font-size: 1.8rem;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-stat__icon--orders {
	background: rgba(229, 27, 32, 0.2);
	color: var(--tdp-primary);
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-stat__icon--done {
	background: rgba(46, 204, 113, 0.18);
	color: #2ecc71;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-stat__icon--spent {
	background: rgba(52, 152, 219, 0.2);
	color: #3498db;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-stat__icon--addr {
	background: rgba(241, 196, 15, 0.18);
	color: #f1c40f;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-stat__value {
	margin: 0 0 0.4rem;
	font-family: var(--tdp-font-heading), Arial, Helvetica, sans-serif;
	font-size: 2rem;
	font-weight: 400;
	color: var(--tdp-white);
	line-height: 1.2;
	word-break: break-word;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-stat__value .woocommerce-Price-amount {
	color: inherit;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-stat__label {
	margin: 0;
	font-size: 1.2rem;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgba(255, 255, 255, 0.5);
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-layout {
	display: grid;
	gap: 2rem;
	align-items: start;
}

@media (min-width: 992px) {
	body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-layout {
		grid-template-columns: minmax(28rem, 42rem) minmax(0, 1fr);
		gap: 2.4rem;
	}
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-nav {
	padding: 0;
	width: 100%;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-nav__list {
	list-style: none;
	margin: 0;
	padding: 1.2rem;
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 1.2rem;
	background: linear-gradient(to bottom right, #1a1a1a 0%, #121212 100%);
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-nav__list>li {
	margin: 0;
	padding: 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-nav__list>li:last-child {
	border-bottom: none;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-nav__link {
	display: flex;
	align-items: center;
	gap: 1rem;
	margin: 1rem 0;
	padding: 1.2rem 1rem;
	color: rgba(255, 255, 255, 0.88);
	font-size: 1.4rem;
	font-weight: 600;
	text-decoration: none;
	border-radius: 0.8rem;
	transition: background 0.2s ease, color 0.2s ease;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-nav__link:hover,
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-nav__link:focus {
	background: rgba(255, 255, 255, 0.06);
	color: var(--tdp-white);
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .woocommerce-MyAccount-navigation-link.is-active .tdp-account-nav__link {
	background: var(--tdp-primary);
	color: var(--tdp-white);
	box-shadow: 0 0.4rem 1.4rem var(--tdp-shadow-primary);
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-nav__icon {
	display: flex;
	width: 2.4rem;
	justify-content: center;
	color: rgba(255, 255, 255, 0.45);
	font-size: 1.6rem;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .woocommerce-MyAccount-navigation-link.is-active .tdp-account-nav__icon {
	color: rgba(255, 255, 255, 0.95);
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-nav__label {
	flex: 1 1 auto;
	min-width: min(100%, 16rem);
	line-height: 1.35;
	overflow-wrap: break-word;
	word-break: normal;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-nav__badge {
	flex-shrink: 0;
	min-width: 2.4rem;
	height: 2.4rem;
	padding: 0 0.6rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 10rem;
	background: rgba(0, 0, 0, 0.35);
	color: var(--tdp-white);
	font-size: 1.2rem;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .woocommerce-MyAccount-navigation-link.is-active .tdp-account-nav__badge {
	background: rgba(0, 0, 0, 0.25);
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-content {
	min-width: 0;
}

/* WooCommerce layout asume nav 30% + contenido 68% en float; aquí usamos grid: ocupar todo el ancho de cada columna. */
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-layout .woocommerce-MyAccount-navigation,
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-layout .woocommerce-MyAccount-content {
	float: none;
	width: 100%;
	max-width: none;
	clear: none;
}

/* Lista de direcciones (edit-address sin slug) dentro de tarjeta */
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-addresses {
	padding: 2rem 2.4rem 2.4rem;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-addresses>p {
	margin: 0 0 2rem;
	color: rgba(255, 255, 255, 0.72);
	font-size: 1.4rem;
	line-height: 1.55;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-addresses .woocommerce-Addresses {
	width: 100%;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 2rem 2.4rem;
	align-items: start;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-addresses .woocommerce-Addresses::before,
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-addresses .woocommerce-Addresses::after {
	content: none;
	display: none;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-addresses .woocommerce-Addresses .woocommerce-Address,
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-addresses>.woocommerce-Address {
	float: none;
	width: 100%;
	max-width: 100%;
	margin: 0;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-addresses .woocommerce-Address-title {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	justify-content: space-between;
	gap: 0.8rem 1.2rem;
	margin-bottom: 1rem;
}

/* Anular clearfix WooCommerce (.addresses .title::before/::after { display:table }) — no hace falta con grid/flex */
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-addresses .addresses .title::before,
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-addresses .addresses .title::after,
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-addresses .woocommerce-Address-title.title::before,
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-addresses .woocommerce-Address-title.title::after {
	content: none;
	display: none;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-addresses .woocommerce-Address-title h2 {
	margin: 0;
	font-family: var(--tdp-font-heading), Arial, Helvetica, sans-serif;
	font-size: 1.8rem;
	color: var(--tdp-white);
	letter-spacing: 0.03em;
}

@media (max-width: 575.98px) {
	body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-addresses .woocommerce-Address-title h2 {
		font-size: 1.6rem;
	}
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-addresses .woocommerce-Address-title .edit {
	font-size: 1.3rem;
	font-weight: 600;
	text-decoration: none;
	color: var(--tdp-primary);
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-addresses .woocommerce-Address-title .edit:hover,
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-addresses .woocommerce-Address-title .edit:focus {
	text-decoration: underline;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-addresses address {
	margin: 0;
	font-style: normal;
	font-size: 1.4rem;
	line-height: 1.6;
	color: rgba(255, 255, 255, 0.65);
}

@media (max-width: 767.98px) {
	body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-addresses .woocommerce-Addresses {
		grid-template-columns: 1fr;
	}
}

/* Ver pedido (view-order) */
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-view-order {
	padding: 2rem 2.4rem 2.4rem;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-view-order>p:first-of-type {
	margin: 0 0 2rem;
	font-size: 1.4rem;
	line-height: 1.6;
	color: rgba(255, 255, 255, 0.78);
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-view-order mark.order-number,
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-view-order mark.order-date {
	background: transparent;
	color: var(--tdp-white);
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-view-order mark.order-status {
	background: transparent;
	color: var(--tdp-primary);
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-view-order .woocommerce-order-details__title,
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-view-order .woocommerce-column__title,
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-view-order>h2 {
	margin: 0 0 1.2rem;
	font-family: var(--tdp-font-heading), Arial, Helvetica, sans-serif;
	font-size: 1.8rem;
	line-height: 1.25;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: var(--tdp-white);
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-view-order .woocommerce-order-details {
	margin-bottom: 2.4rem;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-view-order .shop_table.order_details td,
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-view-order .shop_table.order_details th {
	border-color: rgba(255, 255, 255, 0.1);
	padding: 1rem 1.2rem;
	vertical-align: middle;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-view-order .shop_table.order_details .product-name a {
	color: var(--tdp-primary);
	font-weight: 600;
	text-decoration: none;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-view-order .shop_table.order_details .product-name a:hover,
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-view-order .shop_table.order_details .product-name a:focus {
	text-decoration: underline;
	color: #ff8a8e;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-view-order .shop_table.order_details .woocommerce-Price-amount {
	color: rgba(255, 255, 255, 0.92);
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-view-order .woocommerce-customer-details {
	margin-top: 2rem;
	padding-top: 2rem;
	border-top: 1px solid rgba(255, 255, 255, 0.1);
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-view-order .woocommerce-customer-details address {
	font-style: normal;
	color: rgba(255, 255, 255, 0.78);
	line-height: 1.65;
	font-size: 1.4rem;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-view-order .woocommerce-customer-details--phone,
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-view-order .woocommerce-customer-details--email {
	margin: 0.8rem 0 0;
	color: rgba(255, 255, 255, 0.88);
	font-size: 1.3rem;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-view-order .woocommerce-columns--addresses {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 2rem 2.4rem;
	align-items: start;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-view-order .woocommerce-columns--addresses::before,
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-view-order .woocommerce-columns--addresses::after {
	content: none;
	display: none;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-view-order .woocommerce-columns--addresses .woocommerce-column {
	float: none;
	width: 100%;
	max-width: 100%;
	margin: 0;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-view-order .woocommerce-OrderUpdates {
	list-style: none;
	margin: 0 0 2rem;
	padding: 0;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-view-order .woocommerce-OrderUpdate-inner {
	padding: 1.2rem 1.4rem;
	border-radius: 0.8rem;
	background: rgba(0, 0, 0, 0.28);
	border: 1px solid rgba(255, 255, 255, 0.08);
	margin-bottom: 1rem;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-view-order .woocommerce-OrderUpdate-meta {
	margin: 0 0 0.6rem;
	font-size: 1.2rem;
	color: rgba(255, 255, 255, 0.45);
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-view-order .woocommerce-OrderUpdate-description {
	margin: 0;
	font-size: 1.4rem;
	line-height: 1.55;
	color: rgba(255, 255, 255, 0.82);
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-view-order .order-actions-button,
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-view-order table .woocommerce-button.button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin: 0.4rem 0.8rem 0.4rem 0;
	padding: 0.9rem 1.6rem;
	border-radius: 0.8rem;
	background: var(--tdp-white);
	color: var(--tdp-bg-secondary);
	font-size: 1.3rem;
	border: none;
	text-decoration: none;
	cursor: pointer;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-view-order .order-actions-button:hover,
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-view-order .order-actions-button:focus,
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-view-order table .woocommerce-button.button:hover,
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-view-order table .woocommerce-button.button:focus {
	background: var(--tdp-primary-soft);
	color: var(--tdp-primary-dark);
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-view-order .woocommerce-table--order-downloads {
	margin-bottom: 2rem;
}

@media (max-width: 767.98px) {
	body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-view-order .woocommerce-columns--addresses {
		grid-template-columns: 1fr;
	}
}

/* Editar cuenta — tarjeta + rejilla (evita 47% float de WC en nombre/apellidos) */
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-edit {
	padding: 2rem 2.4rem 2.4rem;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-edit .edit-account {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0 1.6rem;
	align-items: start;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-edit .edit-account>.form-row-wide,
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-edit .edit-account>.clear,
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-edit .edit-account>fieldset,
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-edit .edit-account>.tdp-account-edit__submit {
	grid-column: 1 / -1;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-edit .edit-account .form-row {
	float: none;
	width: 100%;
	max-width: 100%;
	clear: both;
	margin-left: 0;
	margin-right: 0;
	display: flex;
	flex-direction: column;
	align-items: stretch;
	margin-bottom: 1.2rem;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-edit fieldset .form-row:last-child {
	margin-bottom: 0;
}

/* Mismo patrón que login: caja en .tdp-field__control; inputs transparentes (ver .tdp-field__control global). */
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-edit .tdp-field__control {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-edit fieldset .form-row {
	width: 100%;
}

/* Campos añadidos por plugins (sin .tdp-field__control del tema) */
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-edit .woocommerce-EditAccountForm .form-row:not(.tdp-field) select,
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-edit .woocommerce-EditAccountForm .form-row:not(.tdp-field)>input.input-text {
	width: 100%;
	box-sizing: border-box;
	min-height: 4.8rem;
	margin: 0;
	padding: 1.2rem 1rem;
	border: 1px solid rgba(255, 255, 255, 0.16);
	border-radius: 0.8rem;
	background: #252525;
	color: var(--tdp-white);
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-size: 1.5rem;
	line-height: 1.4;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-edit .woocommerce-EditAccountForm .form-row:not(.tdp-field)>input:focus {
	outline: none;
	border-color: var(--tdp-primary);
	box-shadow: 0 0 0 0.2rem var(--tdp-glow-primary);
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-edit fieldset {
	margin: 1.2rem 0 0;
	padding: 1.6rem 0 0;
	border: none;
	border-top: 1px solid rgba(255, 255, 255, 0.1);
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-edit fieldset legend {
	padding: 0 0 1rem;
	font-family: var(--tdp-font-heading), Arial, Helvetica, sans-serif;
	font-size: 1.5rem;
	color: var(--tdp-white);
	letter-spacing: 0.04em;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-edit #account_display_name_description {
	display: block;
	margin-top: 0.6rem;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-edit #account_display_name_description em {
	font-style: normal;
	font-size: 1.2rem;
	color: rgba(255, 255, 255, 0.45);
	line-height: 1.45;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-edit__submit {
	margin: 1.6rem 0 0;
	padding: 0;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-edit__submit .button {
	cursor: pointer;
	border: none;
}

@media (max-width: 575.98px) {
	body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-edit .edit-account {
		grid-template-columns: 1fr;
	}
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-page-title {
	margin: 0 0 2rem;
	font-family: var(--tdp-font-heading), Arial, Helvetica, sans-serif;
	font-size: var(--tdp-h2);
	line-height: var(--tdp-heading-line);
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-page-title__part {
	color: var(--tdp-white);
	margin-right: 0.4rem;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-page-title__accent {
	color: var(--tdp-primary);
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-orders {
	display: flex;
	flex-direction: column;
	gap: 2rem;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-order-card {
	padding: 2rem 2.4rem;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-order-card__head {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
	gap: 1.2rem 2rem;
	margin-bottom: 1.2rem;
	padding-bottom: 1.2rem;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-order-card__title {
	margin: 0 0 0.8rem;
	font-size: var(--tdp-h4);
	font-family: var(--tdp-font-heading), Arial, Helvetica, sans-serif;
	text-transform: uppercase;
	letter-spacing: 0.03em;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-order-card__title a {
	color: var(--tdp-white);
	text-decoration: none;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-order-card__title a:hover,
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-order-card__title a:focus {
	color: var(--tdp-primary);
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-order-card__status {
	display: inline-block;
	padding: 0.4rem 1rem;
	border-radius: 10rem;
	font-size: 1.2rem;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	background: rgba(255, 255, 255, 0.1);
	color: rgba(255, 255, 255, 0.85);
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-order-card__status--completed {
	background: rgba(46, 204, 113, 0.22);
	color: #2ecc71;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-order-card__status--processing {
	background: rgba(52, 152, 219, 0.22);
	color: #5dade2;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-order-card__status--on-hold {
	background: rgba(241, 196, 15, 0.2);
	color: #f4d03f;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-order-card__status--cancelled,
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-order-card__status--failed {
	background: rgba(229, 27, 32, 0.2);
	color: var(--tdp-primary);
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-order-card__total {
	font-family: var(--tdp-font-heading), Arial, Helvetica, sans-serif;
	font-size: 2rem;
	color: var(--tdp-primary);
	font-weight: 400;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-order-card__total .woocommerce-Price-amount {
	color: inherit;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-order-card__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem 2rem;
	margin-bottom: 1.6rem;
	font-size: 1.3rem;
	color: rgba(255, 255, 255, 0.55);
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-order-card__meta-item {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-order-card__meta-item i,
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-order-card__meta-item .material-symbols-outlined {
	color: rgba(255, 255, 255, 0.35);
	font-size: 1.4rem;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-order-card__items {
	list-style: none;
	margin: 0 0 1.6rem;
	padding: 0;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-order-card__line {
	display: grid;
	grid-template-columns: 5.6rem 1fr auto;
	gap: 1.2rem;
	align-items: center;
	padding: 1rem 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-order-card__line:last-child {
	border-bottom: none;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-order-card__thumb .tdp-order-card__img {
	display: block;
	width: 5.6rem;
	height: 5.6rem;
	object-fit: cover;
	border-radius: 0.8rem;
	border: 1px solid rgba(255, 255, 255, 0.1);
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-order-card__thumb-fallback {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 5.6rem;
	height: 5.6rem;
	border-radius: 0.8rem;
	background: rgba(255, 255, 255, 0.06);
	color: rgba(255, 255, 255, 0.25);
	font-size: 2rem;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-order-card__product-name {
	margin: 0 0 0.4rem;
	font-weight: 600;
	color: var(--tdp-white);
	font-size: 1.4rem;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-order-card__qty {
	margin: 0;
	font-size: 1.2rem;
	color: rgba(255, 255, 255, 0.45);
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-order-card__line-total {
	color: rgba(255, 255, 255, 0.92);
	font-size: 1.4rem;
	text-align: right;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-order-card__shipping {
	margin-bottom: 1.6rem;
	padding: 1.2rem 1.4rem;
	border-radius: 0.8rem;
	background: rgba(0, 0, 0, 0.25);
	border: 1px solid rgba(255, 255, 255, 0.06);
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-order-card__shipping-label {
	margin: 0 0 0.6rem;
	font-size: 1.2rem;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgba(255, 255, 255, 0.5);
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-order-card__shipping-text {
	margin: 0;
	font-size: 1.3rem;
	line-height: 1.55;
	color: rgba(255, 255, 255, 0.82);
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-order-card__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-order-card__action.button {
	padding: 0.9rem 1.6rem;
	border-radius: 0.8rem;
	background: var(--tdp-white);
	color: var(--tdp-bg-secondary);
	font-size: 1.3rem;
	border: none;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-order-card__action.button:hover,
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-order-card__action.button:focus {
	background: var(--tdp-primary-soft);
	color: var(--tdp-primary-dark);
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-content .woocommerce-message a.tdp-order-card__action.button,
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-content .woocommerce-info a.tdp-order-card__action.button {
	margin-inline-start: 0.6rem;
	vertical-align: middle;
	white-space: nowrap;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-pagination {
	margin-top: 2rem;
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-dashboard-intro {
	padding: 2rem 2.4rem;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-dashboard-intro__text {
	margin: 0 0 1.6rem;
	font-size: 1.5rem;
	line-height: 1.6;
	color: rgba(255, 255, 255, 0.75);
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-dashboard-intro__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-content .woocommerce-info,
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-content .woocommerce-message,
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-content .woocommerce-error {
	border-radius: 0.8rem;
	background: rgba(255, 255, 255, 0.08);
	color: rgba(255, 255, 255, 0.92);
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-content .shop_table,
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-content .woocommerce-table {
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 0.8rem;
	overflow: hidden;
	background: rgba(0, 0, 0, 0.2);
	color: rgba(255, 255, 255, 0.88);
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-content .shop_table th,
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-content .woocommerce-table th {
	background: rgba(255, 255, 255, 0.05);
	color: var(--tdp-white);
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-content form.woocommerce-EditAccountForm:not(.edit-account) input.input-text,
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-content .woocommerce-address-fields input.input-text,
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-content .woocommerce-address-fields select,
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-content form.woocommerce-EditAccountForm:not(.edit-account) select {
	background: #252525;
	border: 1px solid rgba(255, 255, 255, 0.14);
	border-radius: 0.6rem;
	color: var(--tdp-white);
	padding: 0.8rem 1rem;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-content label {
	color: rgba(255, 255, 255, 0.75);
}

/* Etiquetas: .tdp-field__label ya coincide con login; refuerzo sobre .tdp-account-edit */
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-edit label.tdp-field__label {
	color: rgba(255, 255, 255, 0.88);
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-edit label.tdp-field__label .required {
	color: var(--tdp-primary);
}

/* Editar dirección: mismos controles que login (.tdp-field__control + icono). */
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-address-edit {
	padding: 2rem 2.4rem 2.4rem;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-address-edit .woocommerce-EditAddressForm {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

/*
 * WooCommerce (.woocommerce-layout / .woocommerce form) fuerza .form-row-first / .form-row-last
 * a width:47% + float. Con flex/grid eso deja los campos en una franja estrecha a la izquierda.
 */
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-address-edit .woocommerce-EditAddressForm .form-row,
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-address-edit .woocommerce-address-fields .form-row {
	float: none;
	width: 100%;
	max-width: 100%;
	clear: both;
	margin-left: 0;
	margin-right: 0;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-address-edit .tdp-auth-panel__title {
	margin-bottom: 0.6rem;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-address-edit .tdp-auth-panel__subtitle {
	margin: 0 0 2rem;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-address-edit .woocommerce-address-fields__field-wrapper {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.4rem 1.6rem;
	align-items: start;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-address-edit .woocommerce-address-fields__field-wrapper .form-row-wide {
	grid-column: 1 / -1;
}

@media (max-width: 575.98px) {
	body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-address-edit .woocommerce-address-fields__field-wrapper {
		grid-template-columns: 1fr;
	}

	body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-address-edit .woocommerce-address-fields__field-wrapper .form-row-wide {
		grid-column: auto;
	}
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-address-edit .tdp-field.form-row {
	margin: 0 0 1.2rem;
	padding: 0;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-address-edit .tdp-field__control select,
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-address-edit .tdp-field__control input.input-text,
body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-address-edit .tdp-field__control textarea.input-text {
	background: transparent !important;
	border: none !important;
	border-radius: 0;
	box-shadow: none;
	color: var(--tdp-white);
	flex: 1 1 auto;
	min-width: 0;
	width: 100%;
	margin: 0;
	padding: 1.2rem 0.75rem;
	font-family: var(--tdp-font-body), Arial, Helvetica, sans-serif;
	font-size: 1.5rem;
	line-height: 1.4;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-address-edit .tdp-field__control textarea.input-text {
	min-height: 8rem;
	resize: vertical;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-address-edit .tdp-field--textarea .tdp-field__control {
	align-items: flex-start;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-address-edit .tdp-field__control {
	flex-wrap: wrap;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-address-edit .tdp-field__control--plain {
	padding-left: 1rem;
	padding-right: 1rem;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-address-edit .tdp-field__control .description {
	display: block;
	flex: 1 0 100%;
	width: 100%;
	margin: 0;
	padding: 0 0.4rem 0.2rem 0;
	font-size: 1.2rem;
	line-height: 1.45;
	color: rgba(255, 255, 255, 0.45);
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-address-edit .tdp-field__control .select2-container {
	flex: 1 1 auto;
	min-width: 0;
	align-self: center;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-address-edit .tdp-field__control .select2-container .select2-selection--single {
	background: transparent !important;
	border: none !important;
	height: auto !important;
	min-height: 4.4rem;
	padding: 0.8rem 0.4rem;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-address-edit .tdp-field__control .select2-container .select2-selection__rendered {
	color: var(--tdp-white) !important;
	line-height: 1.5 !important;
	padding-left: 0 !important;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-address-edit .tdp-field__control .select2-container .select2-selection__arrow {
	height: 100% !important;
	top: 0 !important;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-address-edit .tdp-field__control .select2-container .select2-selection__arrow b {
	border-color: rgba(255, 255, 255, 0.45) transparent transparent !important;
}

body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-address-edit .tdp-address-edit__submit {
	margin-top: 0.8rem;
	margin-bottom: 0;
}

@media (max-width: 767.98px) {
	body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-header__profile {
		grid-template-columns: 1fr;
		text-align: center;
		justify-items: center;
	}

	body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-account-header__meta {
		justify-content: center;
	}

	body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-order-card__line {
		grid-template-columns: 4.8rem 1fr;
		grid-template-rows: auto auto;
	}

	body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-order-card__thumb {
		grid-row: 1 / span 2;
		align-self: start;
	}

	body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-order-card__line-body {
		grid-column: 2;
		grid-row: 1;
	}

	body.tdp-page-mi-cuenta.tdp-mi-cuenta-logged-in .tdp-order-card__line-total {
		grid-column: 2;
		grid-row: 2;
		text-align: left;
	}
}

/* =============================================================================
 * Widget WhatsApp flotante (solo icono; texto en aria-label desde Personalizador)
 * ============================================================================= */
@keyframes tdp-wa-float-pulse {
	0% {
		box-shadow:
			0 12px 32px rgba(0, 0, 0, 0.38),
			0 0 0 0 rgba(37, 211, 102, 0.55);
		transform: scale(1);
	}
	45% {
		box-shadow:
			0 14px 36px rgba(0, 0, 0, 0.42),
			0 0 0 18px rgba(37, 211, 102, 0);
		transform: scale(1.06);
	}
	100% {
		box-shadow:
			0 12px 32px rgba(0, 0, 0, 0.38),
			0 0 0 0 rgba(37, 211, 102, 0);
		transform: scale(1);
	}
}

.tdp-wa-float {
	position: fixed;
	z-index: 99990;
	right: max(1rem, env(safe-area-inset-right, 0px));
	bottom: max(1.25rem, env(safe-area-inset-bottom, 0px));
	pointer-events: none;
}

.admin-bar .tdp-wa-float {
	bottom: max(2.75rem, calc(1.25rem + env(safe-area-inset-bottom, 0px)));
}

.tdp-wa-float__cta {
	pointer-events: auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: clamp(4.75rem, 12vw, 5.75rem);
	height: clamp(4.75rem, 12vw, 5.75rem);
	padding: 0;
	border-radius: 50%;
	background: #25d366;
	color: #fff;
	text-decoration: none;
	box-sizing: border-box;
	animation: tdp-wa-float-pulse 2.35s ease-in-out infinite;
	transition:
		transform 0.2s ease,
		box-shadow 0.2s ease,
		background-color 0.2s ease;
}

.tdp-wa-float__cta:hover,
.tdp-wa-float__cta:focus-visible {
	animation: none;
	transform: scale(1.07);
	box-shadow: 0 16px 40px rgba(0, 0, 0, 0.45);
	color: #fff;
	outline: 2px solid rgba(255, 255, 255, 0.5);
	outline-offset: 3px;
	background-color: #20bd5a;
}

.tdp-wa-float__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	font-size: 2.9rem;
	line-height: 1;
}

@media (prefers-reduced-motion: reduce) {
	.tdp-wa-float__cta {
		animation: none;
	}
}