@charset "UTF-8";
/*
 * TeDotamos: plantilla V1 (diseño TeDotamos 2026).
 * Todo va bajo body.tdt-tpl-v1 para no afectar a la plantilla default.
 * --tdt-primary y --tdt-dark vienen de Apariencia → TeDotamos → Plantilla V1.
 */

/* ------------------------------------------------------------------ base */

body.tdt-tpl-v1 {
	--tdt-primary: #f57c00;
	--tdt-dark: #1b1d22;
	--tdt-text: #1f2329;
	--tdt-muted: #6b7280;
	--tdt-border: #e6e8ec;
	--tdt-soft: #f5f6f8;
	--tdt-radius: 10px;
	--tdt-shadow: 0 10px 30px rgba(17, 24, 39, .08);
	--tdt-container: 1320px;

	font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
	color: var(--tdt-text);
	background: #fff;
}

body.tdt-tpl-v1 h1,
body.tdt-tpl-v1 h2,
body.tdt-tpl-v1 h3,
body.tdt-tpl-v1 h4,
body.tdt-tpl-v1 h5,
body.tdt-tpl-v1 h6,
body.tdt-tpl-v1 button,
body.tdt-tpl-v1 input,
body.tdt-tpl-v1 select,
body.tdt-tpl-v1 textarea {
	font-family: inherit;
}

body.tdt-tpl-v1 .tdt-icon {
	width: 1.25em;
	height: 1.25em;
	flex: 0 0 auto;
	vertical-align: middle;
}

body.tdt-tpl-v1 .tdt-container {
	max-width: var(--tdt-container);
	margin: 0 auto;
	padding: 0 20px;
}

body.tdt-tpl-v1 .tdt-accent {
	color: var(--tdt-primary);
}

body.tdt-tpl-v1 .tdt-kicker {
	margin: 0 0 12px;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--tdt-primary);
}

/* Botones propios y de WooCommerce */
body.tdt-tpl-v1 .tdt-home *,
body.tdt-tpl-v1 .tdt-home *::before,
body.tdt-tpl-v1 .tdt-home *::after {
	box-sizing: border-box;
}

body.tdt-tpl-v1 .tdt-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 12px 22px;
	border: 1.5px solid transparent;
	border-radius: 6px;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.2;
	text-decoration: none;
	transition: background-color .2s, color .2s, border-color .2s, transform .2s;
	cursor: pointer;
}

body.tdt-tpl-v1 .tdt-btn:hover {
	transform: translateY(-1px);
}

body.tdt-tpl-v1 .tdt-btn--primary {
	background: var(--tdt-primary);
	color: #fff;
}

body.tdt-tpl-v1 .tdt-btn--primary:hover {
	background: color-mix(in srgb, var(--tdt-primary) 85%, #000);
	color: #fff;
}

body.tdt-tpl-v1 .tdt-btn--ghost {
	border-color: currentColor;
	color: #fff;
}

body.tdt-tpl-v1 .tdt-btn--ghost:hover {
	background: #fff;
	color: var(--tdt-dark);
}

body.tdt-tpl-v1 .tdt-btn--dark {
	background: var(--tdt-dark);
	color: #fff;
}

body.tdt-tpl-v1 .tdt-btn--block {
	display: flex;
	width: 100%;
}

body.tdt-tpl-v1 .button,
body.tdt-tpl-v1 button.button,
body.tdt-tpl-v1 input.button,
body.tdt-tpl-v1 .woocommerce a.button,
body.tdt-tpl-v1 .woocommerce button.button {
	border-radius: 6px;
	font-weight: 600;
}

/* ------------------------------------------------------------------ barra superior */

body.tdt-tpl-v1 .tdt-topbar {
	background: var(--tdt-dark);
	color: #fff;
	font-size: 13px;
}

body.tdt-tpl-v1 .tdt-topbar__items {
	display: flex;
	justify-content: space-between;
	margin: 0;
	padding: 0;
	list-style: none;
}

body.tdt-tpl-v1 .tdt-topbar__items li {
	flex: 1;
	display: flex;
	justify-content: center;
	padding: 10px 12px;
}

body.tdt-tpl-v1 .tdt-topbar__items li + li {
	border-left: 1px solid rgba(255, 255, 255, .15);
}

body.tdt-tpl-v1 .tdt-topbar__items li > *,
body.tdt-tpl-v1 .tdt-topbar__items a {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	color: #fff;
}

body.tdt-tpl-v1 .tdt-topbar__items a:hover {
	color: var(--tdt-primary);
}

body.tdt-tpl-v1 .tdt-topbar .tdt-icon {
	width: 18px;
	height: 18px;
	color: var(--tdt-primary);
}

/* ------------------------------------------------------------------ header (Martfury layout 1) */

body.tdt-tpl-v1 #site-header,
body.tdt-tpl-v1 #site-header .header-main {
	background: #fff;
	color: var(--tdt-text);
}

body.tdt-tpl-v1 #site-header .header-main {
	padding: 18px 0;
	border-bottom: 1px solid var(--tdt-border);
}

body.tdt-tpl-v1 #site-header .header-main a,
body.tdt-tpl-v1 #site-header .extras-menu > li > a,
body.tdt-tpl-v1 #site-header .extras-menu .extra-icon,
body.tdt-tpl-v1 #site-header .extras-menu i {
	color: var(--tdt-text);
}

body.tdt-tpl-v1 #site-header .extras-menu > li > a:hover {
	color: var(--tdt-primary);
}

body.tdt-tpl-v1 #site-header .extras-menu .mini-item-counter {
	background: var(--tdt-primary);
	color: #fff;
}

/* Buscador: campo con borde y botón de color */
body.tdt-tpl-v1 #site-header .products-search .psearch-content {
	border: 1.5px solid var(--tdt-border);
	border-radius: 8px;
	background: #fff;
	overflow: hidden;
}

body.tdt-tpl-v1 #site-header .products-search .psearch-content:focus-within {
	border-color: var(--tdt-primary);
}

body.tdt-tpl-v1 #site-header .header-main .products-search .product-cat {
	display: none;
}

body.tdt-tpl-v1 #site-header .products-search .search-field {
	border: 0;
	font-size: 14px;
}

body.tdt-tpl-v1 #site-header .products-search .search-submit {
	background: var(--tdt-primary);
	color: #fff;
	border-radius: 0;
}

/* Barra de menú */
body.tdt-tpl-v1 #site-header .main-menu {
	background: var(--tdt-soft);
	border-bottom: 1px solid var(--tdt-border);
}

body.tdt-tpl-v1 #site-header .main-menu .primary-nav > ul > li > a {
	color: var(--tdt-text);
	font-size: 14px;
	font-weight: 500;
}

body.tdt-tpl-v1 #site-header .main-menu .primary-nav > ul > li.current-menu-item > a,
body.tdt-tpl-v1 #site-header .main-menu .primary-nav > ul > li > a:hover {
	color: var(--tdt-primary);
}

body.tdt-tpl-v1 #site-header .main-menu .products-cats-menu .cats-menu-title,
body.tdt-tpl-v1 #site-header .main-menu .products-cats-menu .cats-menu-title .text,
body.tdt-tpl-v1 #site-header .main-menu .products-cats-menu .cats-menu-title i {
	background: transparent;
	color: var(--tdt-primary);
	font-weight: 600;
}

body.tdt-tpl-v1 #site-header .main-menu .header-bar,
body.tdt-tpl-v1 #site-header .main-menu .header-bar a {
	color: var(--tdt-text);
}

/* ------------------------------------------------------------------ catálogo: tarjetas de producto */

body.tdt-tpl-v1 ul.products li.product .product-inner {
	height: 100%;
	padding: 14px;
	border: 1px solid var(--tdt-border);
	border-radius: var(--tdt-radius);
	background: #fff;
	transition: box-shadow .2s, transform .2s;
}

body.tdt-tpl-v1 ul.products li.product .product-inner:hover {
	box-shadow: var(--tdt-shadow);
	transform: translateY(-2px);
}

body.tdt-tpl-v1 ul.products li.product h2 a,
body.tdt-tpl-v1 ul.products li.product .woo-loop-product__title a {
	color: var(--tdt-text);
	font-weight: 600;
}

body.tdt-tpl-v1 ul.products li.product .price {
	color: var(--tdt-text);
	font-weight: 700;
}

body.tdt-tpl-v1 ul.products li.product .price ins {
	color: var(--tdt-primary);
}

/* ------------------------------------------------------------------ footer */

body.tdt-tpl-v1 #colophon,
body.tdt-tpl-v1 #colophon .footer-layout,
body.tdt-tpl-v1 #colophon .footer-newsletter {
	background: var(--tdt-dark);
	color: #c4c8d0;
}

body.tdt-tpl-v1 #colophon h1,
body.tdt-tpl-v1 #colophon h2,
body.tdt-tpl-v1 #colophon h3,
body.tdt-tpl-v1 #colophon h4,
body.tdt-tpl-v1 #colophon .widget-title {
	color: #fff;
}

body.tdt-tpl-v1 #colophon a {
	color: #c4c8d0;
}

body.tdt-tpl-v1 #colophon a:hover {
	color: var(--tdt-primary);
}

body.tdt-tpl-v1 #colophon .footer-newsletter,
body.tdt-tpl-v1 #colophon .footer-info,
body.tdt-tpl-v1 #colophon .footer-widgets,
body.tdt-tpl-v1 #colophon .footer-bottom {
	border-color: rgba(255, 255, 255, .1);
}

/* Textos del footer que traen un color oscuro escrito en el widget (style="color:#333"):
   sobre el fondo oscuro de V1 no se leían. !important porque compiten con estilos en línea. */
body.tdt-tpl-v1 #colophon .ps-footer__address,
body.tdt-tpl-v1 #colophon .ps-footer__address strong,
body.tdt-tpl-v1 #colophon .ps-footer--contact p {
	color: #c4c8d0 !important;
}

body.tdt-tpl-v1 #colophon .ps-footer--contact a {
	color: #ffffff !important;
}

body.tdt-tpl-v1 #colophon .ps-footer--contact a:hover {
	color: var(--tdt-primary) !important;
}

body.tdt-tpl-v1 #colophon .footer-copyright {
	color: #e6e8ec;
	font-size: 15px;
	line-height: 1.6;
}

/* ------------------------------------------------------------------ portada */

body.tdt-v1-home .site-content > .container-fluid {
	padding: 0;
}

body.tdt-v1-home .site-content > .container-fluid > .row {
	margin: 0;
}

body.tdt-tpl-v1 .tdt-home {
	padding-bottom: 40px;
}

body.tdt-tpl-v1 .tdt-section {
	margin-top: 48px;
}

body.tdt-tpl-v1 .tdt-section__head {
	display: flex;
	/* Si título y enlace no caben juntos (móvil), el enlace baja a la línea de abajo en lugar de
	   apretar el título o salirse de la pantalla. */
	flex-wrap: wrap;
	align-items: baseline;
	justify-content: space-between;
	gap: 6px 16px;
	margin-bottom: 20px;
}

body.tdt-tpl-v1 .tdt-section__head h2 {
	min-width: 0;
}

body.tdt-tpl-v1 .tdt-section__head h2 {
	margin: 0;
	font-size: 26px;
	font-weight: 700;
}

body.tdt-tpl-v1 .tdt-section__head a {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 14px;
	font-weight: 500;
	color: var(--tdt-text);
	white-space: nowrap;
}

body.tdt-tpl-v1 .tdt-section__head a:hover {
	color: var(--tdt-primary);
}

/* Hero */
body.tdt-tpl-v1 .tdt-hero {
	position: relative;
	overflow: hidden;
	background: linear-gradient(110deg, #111317 0%, #23262d 55%, #2d3037 100%);
	color: #fff;
}

body.tdt-tpl-v1 .tdt-hero.has-image {
	background:
		linear-gradient(90deg, rgba(10, 11, 14, .92) 0%, rgba(10, 11, 14, .75) 40%, rgba(10, 11, 14, .15) 75%),
		var(--tdt-hero-image) center right / cover no-repeat;
}

body.tdt-tpl-v1 .tdt-hero__inner {
	position: relative;
	display: flex;
	align-items: center;
	min-height: 440px;
	padding-top: 56px;
	padding-bottom: 56px;
}

body.tdt-tpl-v1 .tdt-hero__content {
	max-width: 620px;
}

body.tdt-tpl-v1 .tdt-hero__title {
	margin: 0 0 18px;
	font-size: clamp(34px, 5vw, 56px);
	font-weight: 800;
	line-height: 1.05;
	letter-spacing: -.02em;
	color: #fff;
}

body.tdt-tpl-v1 .tdt-hero__title .tdt-accent {
	display: block;
}

body.tdt-tpl-v1 .tdt-hero__text {
	margin: 0 0 28px;
	font-size: 17px;
	line-height: 1.6;
	color: rgba(255, 255, 255, .85);
}

body.tdt-tpl-v1 .tdt-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
}

body.tdt-tpl-v1 .tdt-hero__side {
	position: absolute;
	right: 20px;
	top: 50%;
	max-width: 230px;
	margin: 0;
	transform: translateY(-50%) rotate(-8deg);
	font-size: 22px;
	font-style: italic;
	font-weight: 700;
	line-height: 1.3;
	color: #fff;
	text-shadow: 0 2px 12px rgba(0, 0, 0, .5);
}

body.tdt-tpl-v1 .tdt-hero__side::after {
	content: "";
	display: block;
	width: 70%;
	height: 4px;
	margin-top: 8px;
	border-radius: 4px;
	background: var(--tdt-primary);
}

/* Descuentos por volumen */
body.tdt-tpl-v1 .tdt-volume-wrap {
	margin-top: -36px;
	position: relative;
	z-index: 2;
}

body.tdt-tpl-v1 .tdt-volume {
	display: grid;
	grid-template-columns: minmax(220px, 1fr) 3fr;
	gap: 28px;
	padding: 24px;
	border: 1px solid var(--tdt-border);
	border-radius: var(--tdt-radius);
	background: var(--tdt-soft);
	box-shadow: var(--tdt-shadow);
}

body.tdt-tpl-v1 .tdt-volume__intro {
	display: flex;
	align-items: center;
	gap: 14px;
	padding-right: 24px;
	border-right: 1px solid var(--tdt-border);
}

body.tdt-tpl-v1 .tdt-volume__intro h2 {
	margin: 0;
	font-size: 22px;
	font-weight: 700;
	line-height: 1.25;
}

body.tdt-tpl-v1 .tdt-volume__intro h2 .tdt-accent {
	display: block;
}

body.tdt-tpl-v1 .tdt-volume__badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	border-radius: 50%;
	background: var(--tdt-primary);
	color: #fff;
}

body.tdt-tpl-v1 .tdt-volume__badge .tdt-icon {
	width: 26px;
	height: 26px;
}

body.tdt-tpl-v1 .tdt-volume__segments {
	display: flex;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 14px;
}

body.tdt-tpl-v1 .tdt-volume__segments > div {
	display: grid;
	grid-template-columns: auto 1fr;
	column-gap: 10px;
	align-items: center;
}

body.tdt-tpl-v1 .tdt-volume__segments .tdt-icon {
	grid-row: span 2;
	width: 30px;
	height: 30px;
	color: var(--tdt-primary);
}

body.tdt-tpl-v1 .tdt-volume__segments strong {
	font-size: 16px;
	color: var(--tdt-primary);
}

body.tdt-tpl-v1 .tdt-volume__segments span {
	font-size: 13px;
	font-weight: 500;
}

body.tdt-tpl-v1 .tdt-table-scroll {
	overflow-x: auto;
}

body.tdt-tpl-v1 .tdt-volume__table {
	width: 100%;
	margin: 0;
	border-collapse: collapse;
	background: #fff;
	font-size: 14px;
}

body.tdt-tpl-v1 .tdt-volume__table th,
body.tdt-tpl-v1 .tdt-volume__table td {
	padding: 8px 14px;
	border: 0;
	border-bottom: 1px solid var(--tdt-border);
	text-align: left;
}

body.tdt-tpl-v1 .tdt-volume__table th {
	background: #eceef2;
	font-size: 12px;
	font-weight: 600;
	color: var(--tdt-text);
}

/* Beneficios */
body.tdt-tpl-v1 .tdt-benefits {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
	margin: 0;
	padding: 20px 0;
	list-style: none;
	border-top: 1px solid var(--tdt-border);
	border-bottom: 1px solid var(--tdt-border);
}

body.tdt-tpl-v1 .tdt-benefits li {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 6px;
	padding: 8px 16px;
	text-align: center;
}

body.tdt-tpl-v1 .tdt-benefits li + li {
	border-left: 1px solid var(--tdt-border);
}

body.tdt-tpl-v1 .tdt-benefits .tdt-icon {
	width: 34px;
	height: 34px;
	margin-bottom: 4px;
	color: var(--tdt-text);
}

body.tdt-tpl-v1 .tdt-benefits strong {
	font-size: 15px;
}

body.tdt-tpl-v1 .tdt-benefits span {
	font-size: 13px;
	line-height: 1.5;
	color: var(--tdt-muted);
}

/* Categorías */
body.tdt-tpl-v1 .tdt-cats {
	display: grid;
	/* auto-fit: con pocas categorías (p. ej. 4) las tarjetas se estiran y ocupan todo el ancho */
	grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
	gap: 16px;
	margin: 0;
	padding: 0;
	list-style: none;
}

/* La tarjeta es el <li> completo (imagen, texto y subcategorías): la grilla estira todas las
   filas por igual, así que todas las tarjetas quedan del mismo alto. */
body.tdt-tpl-v1 .tdt-cats > li {
	display: flex;
	flex-direction: column;
	overflow: hidden;
	border: 1px solid var(--tdt-border);
	border-radius: var(--tdt-radius);
	background: var(--tdt-soft);
	transition: box-shadow .2s, transform .2s;
}

body.tdt-tpl-v1 .tdt-cats > li:hover {
	box-shadow: var(--tdt-shadow);
	transform: translateY(-2px);
}

/* Solo el enlace principal (no los de las subcategorías) */
body.tdt-tpl-v1 .tdt-cats > li > a {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	color: var(--tdt-text);
}

body.tdt-tpl-v1 .tdt-cats__img {
	display: block;
	aspect-ratio: 4 / 3;
	background: #fff;
}

body.tdt-tpl-v1 .tdt-cats__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

body.tdt-tpl-v1 .tdt-cats__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: 4px;
	padding: 12px 14px 14px;
}

body.tdt-tpl-v1 .tdt-cats__body strong {
	font-size: 15px;
}

body.tdt-tpl-v1 .tdt-cats__body span {
	font-size: 12.5px;
	line-height: 1.45;
	color: var(--tdt-muted);
}

body.tdt-tpl-v1 .tdt-cats__arrow {
	margin-top: auto;
	padding-top: 8px;
	width: 22px;
	height: 22px;
	box-sizing: content-box;
}

body.tdt-tpl-v1 .tdt-cats > li > a:hover .tdt-cats__arrow {
	color: var(--tdt-primary);
}

/* Productos */
body.tdt-tpl-v1 .tdt-products {
	display: grid;
	/* auto-fit: con pocos productos las tarjetas se estiran y ocupan todo el ancho */
	grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
	gap: 16px;
	margin: 0;
	padding: 0;
	list-style: none;
}

body.tdt-tpl-v1 .tdt-product {
	position: relative;
	display: flex;
	flex-direction: column;
	padding: 14px;
	border: 1px solid var(--tdt-border);
	border-radius: var(--tdt-radius);
	background: #fff;
	transition: box-shadow .2s;
}

body.tdt-tpl-v1 .tdt-product:hover {
	box-shadow: var(--tdt-shadow);
}

body.tdt-tpl-v1 .tdt-product__img {
	display: block;
	aspect-ratio: 1;
	max-height: 240px; /* con pocas tarjetas anchas, la foto no crece de más */
	width: 100%;
	margin-bottom: 12px;
}

body.tdt-tpl-v1 .tdt-product__img img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

body.tdt-tpl-v1 .tdt-product__title {
	margin: 0 0 4px;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.35;
}

body.tdt-tpl-v1 .tdt-product__title a {
	color: var(--tdt-text);
}

body.tdt-tpl-v1 .tdt-product__sku {
	font-size: 12px;
	color: var(--tdt-muted);
}

body.tdt-tpl-v1 .tdt-product__price {
	margin: 6px 0 12px;
	font-weight: 700;
}

body.tdt-tpl-v1 .tdt-product .tdt-btn {
	margin-top: auto;
	padding: 9px 14px;
	font-size: 14px;
}

/* Etiquetas de la tarjeta ("Oferta" / "-30 %" y "+5%" / "+10%" de la subcategoría de Ofertas) */
body.tdt-tpl-v1 .tdt-badges {
	position: absolute;
	top: 10px;
	left: 10px;
	z-index: 1;
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

body.tdt-tpl-v1 .tdt-badges .tdt-badge {
	position: static;
}

body.tdt-tpl-v1 .tdt-badge {
	position: absolute;
	top: 10px;
	left: 10px;
	z-index: 1;
	padding: 3px 10px;
	border-radius: 999px;
	background: var(--tdt-primary);
	color: #fff;
	font-size: 12px;
	font-weight: 600;
}

body.tdt-tpl-v1 .tdt-badge--extra {
	background: var(--tdt-dark);
}

/* Cotización inteligente */
body.tdt-tpl-v1 .tdt-quote {
	display: grid;
	grid-template-columns: 1.3fr 1fr;
	align-items: center;
	gap: 40px;
	padding: 36px;
	border-radius: var(--tdt-radius);
	background: var(--tdt-soft);
}

body.tdt-tpl-v1 .tdt-quote__intro h2 {
	margin: 0 0 10px;
	font-size: 32px;
	font-weight: 800;
}

body.tdt-tpl-v1 .tdt-quote__intro p {
	font-size: 16px;
	color: var(--tdt-muted);
}

body.tdt-tpl-v1 .tdt-checks {
	margin: 16px 0 0;
	padding: 0;
	list-style: none;
}

body.tdt-tpl-v1 .tdt-checks li {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 6px;
	font-size: 14px;
}

body.tdt-tpl-v1 .tdt-checks .tdt-icon {
	color: var(--tdt-primary);
}

body.tdt-tpl-v1 .tdt-quote__form {
	display: flex;
	flex-direction: column;
	gap: 12px;
	padding: 24px;
	border-radius: 14px;
	background: #fff;
	box-shadow: var(--tdt-shadow);
}

body.tdt-tpl-v1 .tdt-quote__form-title {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0 0 4px;
	font-size: 16px;
	font-weight: 700;
}

body.tdt-tpl-v1 .tdt-quote__form-title .tdt-icon {
	color: #25d366;
}

body.tdt-tpl-v1 .tdt-quote__form label {
	display: flex;
	flex-direction: column;
	gap: 4px;
	margin: 0;
	font-size: 13px;
	font-weight: 500;
}

body.tdt-tpl-v1 .tdt-quote__form input,
body.tdt-tpl-v1 .tdt-quote__form select {
	width: 100%;
	height: 42px;
	background: #fff;
	padding: 0 12px;
	border: 1.5px solid var(--tdt-border);
	border-radius: 6px;
}

body.tdt-tpl-v1 .tdt-quote__form input:focus,
body.tdt-tpl-v1 .tdt-quote__form select:focus {
	border-color: var(--tdt-primary);
	outline: none;
}

/* Marcas */
body.tdt-tpl-v1 .tdt-brands {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}

body.tdt-tpl-v1 .tdt-brands a,
body.tdt-tpl-v1 .tdt-brands span {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 88px;
	padding: 12px 16px;
	border: 1px solid var(--tdt-border);
	border-radius: 8px;
	background: #fff;
	color: var(--tdt-text);
	font-weight: 700;
	text-align: center;
}

body.tdt-tpl-v1 .tdt-brands img {
	max-width: 100%;
	max-height: 60px;
	width: auto;
	height: auto;
	object-fit: contain;
	transition: transform .2s;
}

body.tdt-tpl-v1 .tdt-brands a:hover img {
	transform: scale(1.05);
}

body.tdt-tpl-v1 .tdt-brands a:hover img {
	filter: none;
	opacity: 1;
}

/* Banner de cotización */
body.tdt-tpl-v1 .tdt-cta {
	display: grid;
	grid-template-columns: auto 1fr auto;
	align-items: center;
	gap: 28px;
	padding: 28px 32px;
	border-radius: var(--tdt-radius);
	background: var(--tdt-dark);
	color: #fff;
}

body.tdt-tpl-v1 .tdt-cta__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 84px;
	height: 84px;
	border-radius: 50%;
	background: var(--tdt-primary);
}

body.tdt-tpl-v1 .tdt-cta__icon .tdt-icon {
	width: 40px;
	height: 40px;
}

body.tdt-tpl-v1 .tdt-cta__text h2 {
	margin: 0 0 6px;
	font-size: 26px;
	font-weight: 800;
	color: #fff;
}

body.tdt-tpl-v1 .tdt-cta__text p {
	margin: 0 0 14px;
	color: rgba(255, 255, 255, .8);
}

body.tdt-tpl-v1 .tdt-cta__features {
	display: flex;
	margin: 0;
	padding: 0;
	list-style: none;
}

body.tdt-tpl-v1 .tdt-cta__features li {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	max-width: 130px;
	padding: 0 20px;
	font-size: 13px;
	font-weight: 600;
	text-align: center;
}

body.tdt-tpl-v1 .tdt-cta__features li + li {
	border-left: 1px solid rgba(255, 255, 255, .15);
}

body.tdt-tpl-v1 .tdt-cta__features .tdt-icon {
	width: 30px;
	height: 30px;
	color: var(--tdt-primary);
}

/* Botones extra */
body.tdt-tpl-v1 .tdt-btn--whatsapp {
	background: #25d366;
	color: #fff;
}

body.tdt-tpl-v1 .tdt-btn--whatsapp:hover {
	background: #1ebe5a;
	color: #fff;
}

body.tdt-tpl-v1 .tdt-btn--outline {
	border-color: var(--tdt-border);
	background: #fff;
	color: var(--tdt-text);
}

body.tdt-tpl-v1 .tdt-btn--outline:hover {
	border-color: var(--tdt-primary);
	color: var(--tdt-primary);
}

/* ------------------------------------------------------------------ barra de menú V1 */

body.tdt-tpl-v1 .tdt-nav ul {
	display: flex;
	align-items: center;
	gap: 6px 28px;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
	list-style: none;
}

body.tdt-tpl-v1 .tdt-nav a {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 14px 0;
	color: var(--tdt-text);
	font-size: 14px;
	font-weight: 600;
}

body.tdt-tpl-v1 .tdt-nav a:hover {
	color: var(--tdt-primary);
}

body.tdt-tpl-v1 .tdt-nav__hotline a {
	color: var(--tdt-primary);
}

body.tdt-tpl-v1 .tdt-nav__hotline .tdt-icon {
	width: 18px;
	height: 18px;
}

/* ------------------------------------------------------------------ portada: ajustes */

body.tdt-tpl-v1 .tdt-section__head h2 {
	display: inline-flex;
	align-items: center;
	gap: 8px;
}

body.tdt-tpl-v1 .tdt-volume__note {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 12px 0 0;
	padding: 10px 14px;
	border-radius: 6px;
	background: color-mix(in srgb, var(--tdt-primary) 10%, #fff);
	font-size: 14px;
	font-weight: 600;
}

body.tdt-tpl-v1 .tdt-volume__note .tdt-icon {
	color: var(--tdt-primary);
}

body.tdt-tpl-v1 .tdt-cell-link {
	display: inline-flex;
	padding: 3px 12px;
	border-radius: 999px;
	background: #25d366;
	color: #fff;
	font-size: 13px;
	font-weight: 600;
}

body.tdt-tpl-v1 .tdt-cell-link:hover {
	background: #1ebe5a;
	color: #fff;
}

body.tdt-tpl-v1 .tdt-quote__intro .tdt-btn--whatsapp {
	margin-top: 18px;
}

body.tdt-tpl-v1 .tdt-quote.has-bot {
	grid-template-columns: 1.2fr .8fr 1fr;
	gap: 28px;
}

body.tdt-tpl-v1 .tdt-quote__bot {
	display: flex;
	justify-content: center;
}

/* Página de categorías */
body.tdt-v1-home .site-content,
body.tdt-v1-page .site-content {
	padding-top: 0;
}

body.tdt-v1-page .site-content > .container {
	width: 100%;
	max-width: none;
	padding: 0;
}

body.tdt-v1-page .site-content > .container > .row {
	margin: 0;
}

body.tdt-v1-page .page-header {
	display: none;
}

body.tdt-tpl-v1 .tdt-page-hero .tdt-hero__inner {
	min-height: 300px;
	padding-top: 44px;
	padding-bottom: 44px;
}

body.tdt-tpl-v1 .tdt-page-hero .tdt-hero__text p {
	margin: 0;
	color: inherit;
}

body.tdt-tpl-v1 .tdt-page-head {
	padding: 40px 0;
	background: var(--tdt-soft);
	border-bottom: 1px solid var(--tdt-border);
}

body.tdt-tpl-v1 .tdt-page-head h1 {
	margin: 0 0 10px;
	font-size: clamp(28px, 4vw, 40px);
	font-weight: 800;
}

body.tdt-tpl-v1 .tdt-page-head__text {
	max-width: 760px;
	margin-bottom: 18px;
	color: var(--tdt-muted);
}

/* Portada: "Categorías principales" en 3 columnas (6 categorías = 3 + 3). */
body.tdt-v1-home .tdt-cats {
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
}

body.tdt-v1-home .tdt-cats__img {
	aspect-ratio: 16 / 9;
}

@media (max-width: 991px) {
	body.tdt-v1-home .tdt-cats {
		grid-template-columns: repeat(2, 1fr);
	}
}

/* Página de categorías: mosaico. Cada tarjeta mide lo que necesitan sus subcategorías (no se
   estiran a la más alta de la fila) y se apilan en columnas, como en Pinterest. En la portada
   las tarjetas no tienen subcategorías y se mantiene la grilla de alturas iguales. */
body.tdt-tpl-v1 .tdt-categories-page .tdt-cats {
	display: block;
	columns: 5 200px; /* hasta 5 columnas de ≥ 200 px; en pantallas chicas bajan solas */
	column-gap: 16px;
}

body.tdt-tpl-v1 .tdt-categories-page .tdt-cats > li {
	display: flex;
	width: 100%;
	margin: 0 0 16px;
	break-inside: avoid;
	-webkit-column-break-inside: avoid;
	page-break-inside: avoid;
}

/* Sin el "subir al pasar el mouse": en columnas el desplazamiento corta la sombra. */
body.tdt-tpl-v1 .tdt-categories-page .tdt-cats > li:hover {
	transform: none;
}

body.tdt-tpl-v1 .tdt-categories-page .tdt-cats > li > a {
	flex: 0 0 auto;
}

body.tdt-tpl-v1 .tdt-cats__children {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin: 0;
	padding: 0 14px 14px;
	list-style: none;
}

body.tdt-tpl-v1 .tdt-cats__children li {
	display: flex;
	margin: 0;
}

body.tdt-tpl-v1 .tdt-cats__children a {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	min-height: 30px;
	padding: 4px 10px;
	line-height: 1.3;
	border: 1px solid var(--tdt-border);
	border-radius: 999px;
	background: #fff;
	color: var(--tdt-text);
	font-size: 12.5px;
}

body.tdt-tpl-v1 .tdt-cats__children a:hover {
	border-color: var(--tdt-primary);
	color: var(--tdt-primary);
}

body.tdt-tpl-v1 .tdt-cats__children span {
	color: var(--tdt-muted);
}

/* ------------------------------------------------------------------ bot animado */

body.tdt-tpl-v1 .tdt-bot {
	width: 100%;
	max-width: 260px;
	height: auto;
	overflow: visible;
}

.tdt-bot__shadow {
	fill: rgba(17, 24, 39, .12);
	animation: tdt-bot-shadow 3s ease-in-out infinite;
	transform-origin: 92px 198px;
}

.tdt-bot__body {
	animation: tdt-bot-float 3s ease-in-out infinite;
}

.tdt-bot__antenna,
.tdt-bot__arm,
.tdt-bot__mouth {
	fill: none;
	stroke: var(--tdt-dark);
	stroke-width: 5;
	stroke-linecap: round;
}

.tdt-bot__mouth {
	stroke: #fff;
	stroke-width: 3;
}

.tdt-bot__led {
	fill: var(--tdt-primary);
	animation: tdt-bot-led 1.2s ease-in-out infinite;
}

.tdt-bot__head,
.tdt-bot__torso {
	fill: var(--tdt-dark);
}

.tdt-bot__face {
	fill: #2e323a;
}

.tdt-bot__eye {
	fill: var(--tdt-primary);
	transform-box: fill-box;
	transform-origin: center;
	animation: tdt-bot-blink 4s infinite;
}

.tdt-bot__core {
	fill: var(--tdt-primary);
}

.tdt-bot__bubble path {
	fill: #fff;
	stroke: var(--tdt-border);
	stroke-width: 2;
}

.tdt-bot__dot {
	fill: var(--tdt-primary);
	animation: tdt-bot-dot 1.2s ease-in-out infinite;
}

.tdt-bot__dot:nth-of-type(2) {
	animation-delay: .15s;
}

.tdt-bot__dot:nth-of-type(3) {
	animation-delay: .3s;
}

.tdt-bot__paper {
	fill: #fff;
	stroke: var(--tdt-border);
	stroke-width: 2;
}

.tdt-bot__clip {
	fill: var(--tdt-dark);
}

/* Las líneas se "escriben" una tras otra y luego aparece el check; ciclo de 6 s */
.tdt-bot__line {
	stroke: #c9cdd4;
	stroke-width: 5;
	stroke-linecap: round;
	stroke-dasharray: 60;
	stroke-dashoffset: 60;
	animation: tdt-bot-write 6s ease-in-out infinite;
}

.tdt-bot__line:nth-of-type(2) {
	animation-delay: .5s;
}

.tdt-bot__line:nth-of-type(3) {
	animation-delay: 1s;
}

.tdt-bot__line:nth-of-type(4) {
	animation-delay: 1.5s;
}

.tdt-bot__check {
	fill: none;
	stroke: #25d366;
	stroke-width: 5;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-dasharray: 34;
	stroke-dashoffset: 34;
	animation: tdt-bot-check 6s ease-in-out infinite;
}

@keyframes tdt-bot-float {
	0%, 100% { transform: translateY(0); }
	50% { transform: translateY(-6px); }
}

@keyframes tdt-bot-shadow {
	0%, 100% { transform: scaleX(1); }
	50% { transform: scaleX(.85); }
}

@keyframes tdt-bot-led {
	0%, 100% { opacity: 1; }
	50% { opacity: .3; }
}

@keyframes tdt-bot-blink {
	0%, 92%, 100% { transform: scaleY(1); }
	95% { transform: scaleY(.1); }
}

@keyframes tdt-bot-dot {
	0%, 100% { transform: translateY(0); opacity: .5; }
	40% { transform: translateY(-5px); opacity: 1; }
}

@keyframes tdt-bot-write {
	0% { stroke-dashoffset: 60; }
	15%, 85% { stroke-dashoffset: 0; }
	100% { stroke-dashoffset: 60; }
}

@keyframes tdt-bot-check {
	0%, 40% { stroke-dashoffset: 34; }
	50%, 85% { stroke-dashoffset: 0; }
	100% { stroke-dashoffset: 34; }
}

@media (prefers-reduced-motion: reduce) {
	.tdt-bot * {
		animation: none !important;
	}

	.tdt-bot__line,
	.tdt-bot__check {
		stroke-dashoffset: 0;
	}
}

/* ------------------------------------------------------------------ catálogo (tienda y categorías)
 * Las páginas de Martfury (header, migas, catálogo, footer) usan .martfury-container a todo el
 * ancho; aquí se alinean con el contenedor de la portada (.tdt-container) y se pasan a tarjetas
 * blancas como el resto de V1. Algunas reglas llevan !important porque compiten con las de
 * css/tedotamos.css, que también usan !important.
 * ------------------------------------------------------------------ */

body.tdt-tpl-v1 .martfury-container {
	max-width: var(--tdt-container);
	margin-right: auto;
	margin-left: auto;
	padding-right: 20px;
	padding-left: 20px;
}

/* Migas de pan */
body.tdt-tpl-v1 .page-header-catalog,
body.tdt-tpl-v1 .page-header-catalog .page-breadcrumbs {
	background: #fff;
}

body.tdt-tpl-v1 .page-header-catalog {
	padding: 0;
	border-bottom: 1px solid var(--tdt-border);
}

body.tdt-tpl-v1 .page-header-catalog .breadcrumbs {
	padding: 14px 0;
	color: var(--tdt-muted);
	font-size: 13px;
}

body.tdt-tpl-v1 .page-header-catalog .breadcrumbs a {
	color: var(--tdt-text);
	font-weight: 500;
}

body.tdt-tpl-v1 .page-header-catalog .breadcrumbs a:hover {
	color: var(--tdt-primary);
}

body.tdt-tpl-v1.mf-catalog-page .site-content {
	padding-top: 28px;
}

/* Barra lateral: cada widget es una tarjeta */
body.tdt-tpl-v1 .catalog-sidebar {
	background: transparent;
}

body.tdt-tpl-v1 .catalog-sidebar .widget {
	margin: 0 0 16px;
	padding: 18px;
	border: 1px solid var(--tdt-border);
	border-radius: var(--tdt-radius);
	background: #fff;
}

body.tdt-tpl-v1 .catalog-sidebar .widget-title {
	margin: 0 0 14px;
	padding: 0 0 10px;
	border-bottom: 1px solid var(--tdt-border);
	color: var(--tdt-text);
	font-size: 15px;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: 0;
	text-transform: none;
}

body.tdt-tpl-v1 .catalog-sidebar .product-categories a {
	color: var(--tdt-text);
	font-size: 14px;
}

body.tdt-tpl-v1 .catalog-sidebar .product-categories a:hover,
body.tdt-tpl-v1 .catalog-sidebar .product-categories .current-cat > a,
body.tdt-tpl-v1 .catalog-sidebar .product-categories .mf-current-tax > a {
	color: var(--tdt-primary);
}

/* Martfury posiciona el rango de precio en absoluto dentro de una caja de 20 px: se salía. */
body.tdt-tpl-v1 .catalog-sidebar .price_slider_amount {
	height: auto;
}

body.tdt-tpl-v1 .catalog-sidebar .price_slider_amount .price_label {
	position: static;
	margin-top: 12px;
	color: var(--tdt-text);
	font-size: 14px;
	font-weight: 600;
	line-height: 1.5;
}

body.tdt-tpl-v1 .catalog-sidebar .price_slider .ui-slider-range,
body.tdt-tpl-v1 .catalog-sidebar .price_slider .ui-slider-handle {
	background: var(--tdt-primary);
	border-color: var(--tdt-primary);
}

/* Barra de "productos encontrados / ordenar / vista" */
body.tdt-tpl-v1 #mf-catalog-toolbar {
	margin-bottom: 16px;
	padding: 10px 16px;
	border: 1px solid var(--tdt-border);
	border-radius: var(--tdt-radius);
	background: #fff;
}

body.tdt-tpl-v1 #mf-catalog-toolbar .products-found {
	color: var(--tdt-muted);
	font-size: 14px;
}

body.tdt-tpl-v1 #mf-catalog-toolbar .products-found strong {
	color: var(--tdt-text);
}

body.tdt-tpl-v1 #mf-catalog-toolbar .woocommerce-ordering > li {
	border: 1.5px solid var(--tdt-border);
	border-radius: 6px;
}

body.tdt-tpl-v1 #mf-catalog-toolbar .mf-shop-view.current,
body.tdt-tpl-v1 #mf-catalog-toolbar .mf-shop-view:hover {
	color: var(--tdt-primary);
}

/* Descripción de la categoría (contenido editable) */
body.tdt-tpl-v1 .woocommerce-products-header .term-description {
	margin-bottom: 16px;
	border-radius: var(--tdt-radius);
}

/* Tarjetas de producto */
body.tdt-tpl-v1.woocommerce ul.products li.product {
	padding: 8px;
}

body.tdt-tpl-v1.woocommerce ul.products li.product .product-inner {
	/* css/tedotamos.css usa una grilla (auto 1fr) que estiraba la foto al igualar el alto de la
	   fila y bajaba el precio; en columna flexible la foto queda fija y solo crece el contenido. */
	display: flex;
	flex-direction: column;
	padding: 14px !important; /* tedotamos.css pone padding-inline: 0 !important en móvil */
	border: 1px solid var(--tdt-border);
	border-radius: var(--tdt-radius);
	background: #fff;
}

body.tdt-tpl-v1.woocommerce ul.products li.product .mf-product-thumbnail {
	flex: 0 0 auto;
}

body.tdt-tpl-v1.woocommerce ul.products li.product .mf-product-details {
	flex: 1 1 auto;
}

body.tdt-tpl-v1.woocommerce ul.products li.product a img {
	height: 200px; /* css/tedotamos.css la deja en 300 px */
	object-fit: contain;
}

body.tdt-tpl-v1.woocommerce ul.products li.product .ribbons .ribbon {
	padding: 3px 10px;
	border-radius: 999px !important;
	background: var(--tdt-primary) !important;
	color: #fff;
	font-size: 12px;
	font-weight: 600;
	line-height: 1.4;
	animation: none;
	/* El círculo de 6rem de "Oferta" (tedotamos.css) pasa a pastilla, igual que "+10%". */
	width: auto;
	aspect-ratio: auto;
}

/* Siempre dos líneas (rebajado arriba; tachado + "IVA incluido" abajo) para que el precio
   quede a la misma altura en todas las tarjetas, sea largo o corto. */
body.tdt-tpl-v1.woocommerce ul.products li.product .price {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 0 8px;
	color: var(--tdt-text);
	font-size: 18px;
	font-weight: 800;
	line-height: 1.35;
}

body.tdt-tpl-v1.woocommerce ul.products li.product .price ins {
	order: 0;
	flex: 0 0 100%;
	color: var(--tdt-primary);
	text-decoration: none;
}

body.tdt-tpl-v1.woocommerce ul.products li.product .price del {
	order: 1;
	color: var(--tdt-muted);
	font-size: 13px;
	font-weight: 500;
}

body.tdt-tpl-v1.woocommerce ul.products li.product .price .woocommerce-price-suffix {
	order: 2;
	color: var(--tdt-muted);
	font-size: 12px;
	font-weight: 500;
}

body.tdt-tpl-v1.woocommerce ul.products li.product .woo-loop-product__title {
	margin-top: 8px;
	font-size: 14px;
	font-weight: 600;
}

body.tdt-tpl-v1.woocommerce ul.products li.product .woo-loop-product__title a {
	color: var(--tdt-text);
}

body.tdt-tpl-v1.woocommerce ul.products li.product .woo-loop-product__title a:hover {
	color: var(--tdt-primary);
}

body.tdt-tpl-v1.woocommerce ul.products li.product .meta-brand {
	margin-top: 4px;
	color: var(--tdt-muted);
	font-size: 12.5px;
}

body.tdt-tpl-v1.woocommerce ul.products li.product .meta-brand a {
	color: var(--tdt-primary);
	font-weight: 600;
}

body.tdt-tpl-v1.woocommerce ul.products li.product .mf-product-price-box .button {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 40px;
	padding: 0 12px;
	border-radius: 6px !important;
	background: var(--tdt-primary);
	color: #fff;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.2;
}

body.tdt-tpl-v1.woocommerce ul.products li.product .mf-product-price-box .button:hover {
	background: color-mix(in srgb, var(--tdt-primary) 85%, #000);
}

/* En móvil tedotamos.css cambia el texto del botón por "Añadir" / "Seleccionar" a 16 px. */
body.tdt-tpl-v1.woocommerce ul.products li.product .add_to_cart_button .add-to-cart-text::before {
	font-size: 14px;
}

@media (max-width: 767px) {
	body.tdt-tpl-v1.woocommerce ul.products li.product {
		padding: 5px;
	}

	body.tdt-tpl-v1.woocommerce ul.products li.product .product-inner {
		padding: 10px !important;
	}

	body.tdt-tpl-v1.woocommerce ul.products li.product a img {
		height: 150px;
	}

	body.tdt-tpl-v1.woocommerce ul.products li.product .price {
		font-size: 16px;
	}
}

/* "+5%" / "+10%" (subcategoría de Ofertas): oscuro para distinguirla del naranja de la oferta */
body.tdt-tpl-v1.woocommerce ul.products li.product .ribbons .ribbon.tdt-offer-extra {
	background: var(--tdt-dark) !important;
	color: #fff;
}

/* Paginación */
body.tdt-tpl-v1 .woocommerce-pagination ul.page-numbers {
	border: 0;
}

body.tdt-tpl-v1 .woocommerce-pagination ul.page-numbers li {
	border: 0;
}

body.tdt-tpl-v1 .woocommerce-pagination .page-numbers a,
body.tdt-tpl-v1 .woocommerce-pagination .page-numbers span {
	min-width: 38px;
	height: 38px;
	margin: 0 3px;
	border: 1px solid var(--tdt-border);
	border-radius: 6px;
	color: var(--tdt-text);
	font-weight: 600;
	line-height: 36px;
}

body.tdt-tpl-v1 .woocommerce-pagination .page-numbers span.current,
body.tdt-tpl-v1 .woocommerce-pagination .page-numbers a:hover {
	border-color: var(--tdt-primary);
	background: var(--tdt-primary);
	color: #fff;
}

/* ------------------------------------------------------------------ plugin "Descuentos por Volumen"
 * Tabla "Más descuento por cantidad" de la ficha del producto (.dpv-tiers). El plugin trae su
 * propio estilo neutro; aquí se adapta a V1 sin tocar el plugin (sigue siendo genérico).
 * ------------------------------------------------------------------ */

body.tdt-tpl-v1 .dpv-tiers {
	margin: 16px 0 22px;
	padding: 0;
	overflow: hidden;
	border: 1px solid var(--tdt-border);
	border-radius: var(--tdt-radius);
	background: #fff;
	box-shadow: 0 4px 14px rgba(17, 24, 39, .05);
	font-size: 14px;
}

body.tdt-tpl-v1 .dpv-tiers__title {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	padding: 12px 16px;
	background: var(--tdt-dark);
	color: #fff;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: .01em;
}

body.tdt-tpl-v1 .dpv-tiers__title::before {
	content: "%";
	display: inline-flex;
	flex: 0 0 auto;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: var(--tdt-primary);
	color: #fff;
	font-size: 12px;
	font-weight: 800;
}

body.tdt-tpl-v1 .dpv-tiers table {
	width: 100%;
	margin: 0;
	border: 0;
	border-collapse: collapse;
}

body.tdt-tpl-v1 .dpv-tiers th,
body.tdt-tpl-v1 .dpv-tiers td {
	padding: 10px 16px;
	border: 0;
	text-align: left;
	vertical-align: middle;
}

body.tdt-tpl-v1 .dpv-tiers th {
	padding-top: 8px;
	padding-bottom: 8px;
	background: var(--tdt-soft);
	color: var(--tdt-muted);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .06em;
	text-transform: uppercase;
	opacity: 1;
}

body.tdt-tpl-v1 .dpv-tiers td {
	border-top: 1px solid var(--tdt-border);
	color: var(--tdt-text);
	font-weight: 500;
}

/* Columna de descuento como etiqueta */
body.tdt-tpl-v1 .dpv-tiers td strong {
	display: inline-block;
	padding: 3px 12px;
	border-radius: 999px;
	background: color-mix(in srgb, var(--tdt-primary) 14%, #fff);
	color: var(--tdt-primary);
	font-weight: 700;
	white-space: nowrap;
}

/* Precio por unidad */
body.tdt-tpl-v1 .dpv-tiers td:nth-child(3),
body.tdt-tpl-v1 .dpv-tiers td:nth-child(3) .amount {
	color: var(--tdt-text);
	font-weight: 700;
	white-space: nowrap;
}

/* El último tramo (mayor descuento) resaltado */
body.tdt-tpl-v1 .dpv-tiers tbody tr:last-child td {
	background: color-mix(in srgb, var(--tdt-primary) 6%, #fff);
}

body.tdt-tpl-v1 .dpv-tiers tbody tr:last-child td strong {
	background: var(--tdt-primary);
	color: #fff;
}

body.tdt-tpl-v1 .dpv-tiers__contact {
	margin: 0;
	padding: 10px 16px;
	border-top: 1px solid var(--tdt-border);
	background: var(--tdt-soft);
	color: var(--tdt-muted);
	font-size: 13px;
	font-weight: 600;
}

body.tdt-tpl-v1 .dpv-tiers__contact a {
	color: var(--tdt-primary);
	text-decoration: underline;
	text-underline-offset: 2px;
}

body.tdt-tpl-v1 .dpv-tiers__contact a:hover {
	color: var(--tdt-dark);
}

/* ------------------------------------------------------------------ responsive */

@media (max-width: 1199px) {
	body.tdt-tpl-v1 .tdt-hero__side {
		display: none;
	}

	body.tdt-tpl-v1 .tdt-cta {
		grid-template-columns: auto 1fr;
	}

	body.tdt-tpl-v1 .tdt-cta__features {
		grid-column: 1 / -1;
		justify-content: center;
	}
}

@media (max-width: 991px) {
	body.tdt-tpl-v1 .tdt-volume,
	body.tdt-tpl-v1 .tdt-quote,
	body.tdt-tpl-v1 .tdt-quote.has-bot {
		grid-template-columns: 1fr;
	}

	body.tdt-tpl-v1 .tdt-quote__bot .tdt-bot {
		max-width: 200px;
	}

	body.tdt-tpl-v1 .tdt-volume__intro {
		padding: 0 0 16px;
		border-right: 0;
		border-bottom: 1px solid var(--tdt-border);
	}

	body.tdt-tpl-v1 .tdt-benefits li:nth-child(n) {
		border-left: 0;
	}
}

@media (max-width: 767px) {
	body.tdt-tpl-v1 .tdt-topbar__items li:not(:first-child) {
		display: none;
	}

	body.tdt-tpl-v1 .tdt-hero__inner {
		min-height: 0;
		padding-top: 40px;
		padding-bottom: 72px;
	}

	body.tdt-tpl-v1 .tdt-section {
		margin-top: 36px;
	}

	body.tdt-tpl-v1 .tdt-section__head h2 {
		font-size: 21px;
	}

	body.tdt-tpl-v1 .tdt-volume__segments {
		flex-direction: column;
	}

	body.tdt-tpl-v1 .tdt-cats,
	body.tdt-tpl-v1 .tdt-products {
		grid-template-columns: repeat(2, 1fr);
		gap: 10px;
	}

	body.tdt-tpl-v1 .tdt-quote {
		padding: 22px;
	}

	body.tdt-tpl-v1 .tdt-cta {
		grid-template-columns: 1fr;
		justify-items: center;
		text-align: center;
	}

	body.tdt-tpl-v1 .tdt-cta__features li {
		padding: 0 10px;
	}
}
