/* ============================================================
   TABLA DE CONTENIDOS
   ============================================================
   1.  GLOBAL / GENERALES
   2.  HEADER
   3.  HOME
   4.  PLP (Product Listing Page)
   5.  PDP (Product Detail Page)
       5.1  Bloque de Precio Personalizado
       5.2  Información de Envío
       5.3  Contador de Envío Express
       5.4  Características del Producto (ACF)
       5.5  Frequently Bought Together (FBT)
   6.  MINI CART
   7.  CART
   8.  CHECKOUT
   9.  FOOTER
   10. RESPONSIVE / MEDIA QUERIES
       10.1 Tablet (max-width: 1024px)
       10.2 Mobile (max-width: 768px)
       10.3 Small Mobile (max-width: 480px)
   ============================================================ */


/* ============================================================
   1. GLOBAL / GENERALES
   ============================================================ */

.grecaptcha-badge {
	display: none;
}

:root {
	--color-gray-600: #30373D;
	--color-gray-700: #30373D;
	--color-gray-800: #30373D;
	--color-gray-900: #30373D;
}

html {
	scroll-behavior: smooth;
}

@media (min-width: 1200px) {
	.container {
		padding-inline: 48px;
	}
}

/* ============================================================
   2. HEADER
   ============================================================ */

.whb-top-bar.whb-color-light .wd-header-text {
	color: #fff;
}

.whb-general-header-inner .wd-tools-element .wd-tools-text {
	color: #fff;
	text-transform: none;
	font-weight: normal;
	font-size: 13px;
}

.whb-main-header .whb-header-bottom-inner {
	height: auto;
	max-height: none;
}

.whb-main-header .wd-nav.wd-gap-m {
	--nav-gap: 0;
}

.whb-main-header .wd-nav {
	--nav-pd: 12px;
}

.whb-main-header .wd-nav>li:is(.wd-has-children, .menu-item-has-children)>a:after {
	display: none;
}

.custom-megamenu .wd-text-block>p:first-child {
	font-family: 'TWK Everett Mono';
	font-size: 10px;
	text-transform: uppercase;
	letter-spacing: .05em;
}

.custom-megamenu .wd-text-block ul {
	list-style: none;
	padding: 0;
	line-height: 1;
}

.custom-megamenu .wd-text-block li {
	margin-bottom: 6px;
}

.custom-megamenu .wd-text-block li a {
	display: inline-block;
	padding: 2px;
	border-radius: 2px;
}

.custom-megamenu .wd-text-block li a:hover {
	color: #0076F0;
	background-color: rgba(0, 118, 240, 0.1);
}

.wd-nav-header:hover .menu-item {
	opacity: .7;
	transition: opacity 0.2s ease;
}

.wd-nav-header .menu-item:hover {
	opacity: 1;
	transition: opacity 0.2s ease;
}

body .wd-header-cart.wd-design-2 .wd-cart-number {
	background-color: #F4C948;
	color: #65500F;
	font-weight: 600;
	font-size: 10px;
}

/* ============================================================
   3. HOME
   ============================================================ */

body .wd-product .product-wrapper {
	padding: 0;
	gap: 0;
}

.wd-product .product-wrapper .product-element-bottom {
	padding: 10px;
	gap: 0;
}

.wd-product .star-rating {
	display: none;
}

body .product-label {
	line-height: 1;
	padding: 4px 8px;
	font-size: 10px;
	font-weight: normal;
	border-radius: 3px;
	letter-spacing: .05em;
}

body .wd-product .wd-entities-title {
	line-height: 17px;
	margin-bottom: 10px;
	margin-top: 0;
}

body .wd-hover-with-fade.wd-fade-off .fade-in-block,
body .product-labels .product-label.onsale {
	display: none;
}

.product-element-bottom .product-labels {
	position: static;
	top: auto;
	left: auto;
	inset-inline-start: auto;
	max-width: 100%;
	margin-bottom: 6px !important;
	display: inline-flex;
	flex-direction: row;
	gap: 4px;
}

.product-element-bottom .wrap-price,
.wrapp-product-price {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.5rem;
}

body .wd-product.wd-hover-fw-button .wd-add-btn {
	margin-top: 16px;
}

body .wd-product .price {
	display: inline-flex;
	flex-direction: column;
	line-height: 1;
	gap: 4px;
}

body .wd-product .price del {
	font-size: 12px;
	opacity: .5;
}

body .wd-product .price ins {
	font-size: 18px;
	line-height: 1;
	display: inline-flex;
	align-items: center;
	gap: 6px;
}

body .wd-product .price ins .amount {
	font-weight: 600;
}

body .wd-product.wd-hover-fw-button .wrap-price {
	justify-content: start;
}

.wd-loop-discount-badge {
	font-size: 11px;
	color: #00AA45;
	background-color: rgb(0 170 69 / 15%);
	padding: 2px 4px;
	font-weight: 700;
	border-radius: 2px;
}

body .amount,
body .price del {
	color: #30373D;
	font-weight: normal;
}

.wd-product:not(.wd-hover-small) :is(.product-image-link, .hover-img) :is(picture, img) {
	aspect-ratio: 1;
	object-fit: contain;
}

body .wd-hover-with-fade.hover-ready:hover .product-wrapper {
	transform: none;
}

body .wd-hover-with-fade.hover-ready:hover .content-product-imagin {
	display: none;
}

.wd-slide-container.wd-padding-off {
	max-width: none;
}

.wd-products-with-bg:not(.products-bordered-grid) :is(.product-wrapper, .wd-cat-wrap),
body .wd-products-with-shadow:not(.products-bordered-grid) :is(.wd-cat-wrap, .product-wrapper) {
	box-shadow: 0 1px 3px 0 rgb(48 55 61 / 6%);
}

/* ============================================================
   4. PLP (Product Listing Page)
   ============================================================ */

body .wd-nav-product-cat:not(.wd-nav-mobile)>li>a {
	background-color: #fff;
	padding: 4px 20px 4px 4px;
	border-radius: 10px;
	overflow: hidden;
	box-shadow: 0 1px 3px 0 rgb(48 55 61 / 6%);
}

body .wd-nav-product-cat:not(.wd-nav-mobile)>li.wd-active>a {
	background-color: #2f7eff;
	color: #fff;
}

body .wd-nav-product-cat:not(.wd-nav-mobile)>li>a img {
	filter: brightness(0.95);
	border-radius: 7px;
	margin-inline-end: 10px;
}

ul.wd-nav-product-cat {
	display: grid;
	grid-auto-flow: column;
	margin-bottom: 20px;
	gap: 12px;
	scrollbar-width: none;
	overflow-x: auto;
	scroll-behavior: smooth;
	scroll-snap-type: x mandatory;
	scroll-snap-stop: always;
	padding-bottom: 4px;
	scrollbar-width: none;
	min-height: 52px;
}

ul.wd-nav-product-cat::-webkit-scrollbar {
	display: none;
}

/* Contenedor con flechas (JS añade .wd-nav-product-cat-carousel-active) */
.wd-nav-product-cat-carousel-active {
	position: relative;
}

.wd-nav-product-cat-carousel-prev,
.wd-nav-product-cat-carousel-next {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 2;
	width: 36px;
	height: 36px;
	min-height: auto;
	border: none;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 2px 8px rgb(0 0 0 / 12%);
	color: #30373D;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: opacity 0.2s ease, visibility 0.2s ease, box-shadow 0.2s ease;
	padding: 0;
}

.wd-nav-product-cat-carousel-prev:hover,
.wd-nav-product-cat-carousel-next:hover {
	box-shadow: 0 2px 12px rgb(0 0 0 / 18%);
}

.wd-nav-product-cat-carousel-prev {
	left: 0;
}

.wd-nav-product-cat-carousel-next {
	right: 0;
}

.wd-nav-product-cat-carousel-prev::before,
.wd-nav-product-cat-carousel-next::before {
	content: "";
	display: block;
	width: 14px;
	height: 14px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M11.8046 8.47135L5.80463 14.4713C5.74279 14.5335 5.66929 14.5828 5.58835 14.6165C5.50741 14.6502 5.42062 14.6676 5.33294 14.6677C5.24527 14.6679 5.15843 14.6507 5.07741 14.6172C4.99639 14.5837 4.92277 14.5345 4.86078 14.4725C4.79878 14.4105 4.74962 14.3369 4.71612 14.2559C4.68261 14.1749 4.66542 14.088 4.66553 14.0003C4.66563 13.9127 4.68303 13.8259 4.71673 13.7449C4.75043 13.664 4.79976 13.5905 4.86191 13.5287L10.3906 8L4.86191 2.47135C4.79976 2.4095 4.75043 2.336 4.71673 2.25506C4.68303 2.17412 4.66563 2.08733 4.66553 1.99965C4.66542 1.91198 4.68261 1.82515 4.71612 1.74412C4.74962 1.6631 4.79878 1.58949 4.86078 1.52749C4.92277 1.4655 4.99639 1.41634 5.07741 1.38284C5.15843 1.34934 5.24527 1.33215 5.33294 1.33226C5.42062 1.33237 5.50741 1.34977 5.58835 1.38347C5.66929 1.41717 5.74279 1.46651 5.80463 1.52866L11.8046 7.52866C11.8665 7.59054 11.9157 7.66402 11.9492 7.7449C11.9827 7.82577 11.9999 7.91246 11.9999 8C11.9999 8.08754 11.9827 8.17423 11.9492 8.25511C11.9157 8.33598 11.8665 8.40946 11.8046 8.47135Z' fill='%2330373D'/%3E%3C/svg%3E");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}

.wd-nav-product-cat-carousel-prev::before {
	transform: scaleX(-1);
}

.wd-nav-product-cat-carousel-next::before {
	transform: none;
}

.wd-nav-product-cat.wd-nav[class*="wd-style-underline"] .nav-link-text {
	text-transform: none;
	font-size: 13px;
	width: max-content;
	max-width: 120px;
}

.wd-nav-product-cat.wd-nav[class*="wd-style-underline"] .nav-link-text:after {
	display: none;
}

body h5.widget-title {
	margin-bottom: 16px;
	line-height: 1;
	font-size: 11px;
	letter-spacing: .05em;
	color: #777;
}

:is(.widget, .wd-widget, div[class^="vc_wp"]) :is(ul, ol) {
	--li-mb: 8px;
}

form.woocommerce-ordering-list a {
	color: #30373D;
}

body .woocommerce-ordering-list .selected-order {
	color: #2f7eff;
}

.widget.sidebar-widget {
	margin-bottom: 16px;
	padding-bottom: 16px;
	border-bottom: 1px solid #C3C4C6;
}

body .widget .wd-checkboxes-on li>a:before {
	width: 16px;
	height: 16px;
	border: 1px solid #C3C4C6;
	background-color: #D3D4D6;
	border-radius: 4px;
}

body .wd-filter-list a {
	padding-block: 2px;
	color: #30373D;
}

body .wd-add-btn-replace .add-to-cart-loop:hover:before,
body .wd-add-btn-replace .add-to-cart-loop:hover span {
	transform: none;
}

body .wd-add-btn-replace .add-to-cart-loop:before {
	display: none;
}

html .wd-product.wd-hover-fw-button:hover .wd-add-btn>a {
	transition: background-color 0.15s cubic-bezier(.86, 0, .07, 1), color 0.15s cubic-bezier(.86, 0, .07, 1);
	will-change: background-color, color;
}

html .wd-product.wd-hover-fw-button:hover .wd-add-btn>a,
html .wd-product.wd-hover-fw-button .wd-add-btn>a:hover {
	background-color: rgb(0 116 255) !important;
	color: #fff !important;
}

/* ============================================================
   5. PDP (Product Detail Page)
   ============================================================ */

.product-form p.stock {
	line-height: 1;
	margin-bottom: 10px;
	font-weight: normal;
	color: #30373D;
	opacity: .5;
}

.product-form p.stock::before {
	display: none;
}

.woocommerce-product-details__short-description ul {
	padding-left: 10px;
	line-height: 1.8;
}

.woocommerce-product-details__short-description li,
.woocommerce-product-details__short-description p {
	margin-bottom: 0;
}

.product-quick-links ul {
	list-style: none;
	margin: 20px 0 28px 0;
	display: flex;
	gap: 4px;
	padding: 4px;
	background-color: #F3F4F6;
	border-radius: 8px;
}

.product-quick-links ul li {
	margin-bottom: 0;
	flex: 1;
	text-align: center;
}

.product-quick-links ul a {
	line-height: 1;
	background-color: #fff;
	min-height: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 6px;
	box-shadow: 0 1px 3px 0 rgb(48 55 61 / 6%);
	color: inherit;
}

.product-quick-links ul a:not(.active) {
	background-color: transparent;
	box-shadow: none;
}

/* Enlace activo según scroll (shortcode [product_quick_links]) */
.product-quick-links ul a.active {
	font-weight: 600;
}

.product-info #llevalos-juntos,
.product-info #especificaciones,
.product-info #descripcion-larga {
	scroll-margin-top: calc(var(--wd-header-h) + 60px);
	/* altura del header + espacio extra, ajusta el valor */
}

/* ----------------------------------------------------------
   5.1 Bloque de Precio Personalizado
   ---------------------------------------------------------- */

/* Contenedor principal */
.bloque-precio-personalizado {
	display: flex;
	flex-direction: column;
}

/* Precio anterior (tachado) */
.bloque-precio-personalizado .precio-anterior {
	font-size: 13px;
	line-height: 1;
	opacity: .5;
	margin-bottom: 5px;
	color: #30373D;
}

/* Contenedor del precio actual y badge */
.bloque-precio-personalizado .precio-actual-wrapper {
	display: flex;
	align-items: center;
	gap: 8px;
}

/* Precio actual */
.bloque-precio-personalizado .precio-actual {
	font-size: 24px;
	line-height: 1;
	letter-spacing: -.03em;
}

.bloque-precio-personalizado .woocommerce-Price-currencySymbol {
	margin-right: .1em;
}

body .precio-actual .amount {
	font-weight: 600;
}

/* Badge de descuento */
.bloque-precio-personalizado .badge-descuento-precio {
	font-size: 11px;
	line-height: 1;
	color: #fff;
	background-color: #EB0029;
	padding: 3px 4px;
	font-weight: 700;
	border-radius: 3px;
}

/* Cuotas sin interés */
.bloque-precio-personalizado .cuotas-sin-interes {
	margin-top: 4px;
	width: 100%;
}

.bloque-precio-personalizado .cuotas-texto {
	color: #10B981;
	font-size: 18px;
	font-weight: 500;
	line-height: 1.4;
}

.bloque-precio-personalizado .cuotas-texto .woocommerce-Price-amount {
	color: #10B981;
	font-size: 18px;
	font-weight: 600;
}

/* ----------------------------------------------------------
   5.2 Información de Envío
   ---------------------------------------------------------- */

.info-envio-producto {
	padding: 0;
}

.info-envio-item {
	display: flex;
	align-items: center;
	gap: 6px;
	margin-bottom: 16px;
}

.info-envio-item:last-child {
	margin-bottom: 0;
}

.info-envio-icon {
	width: 32px;
	height: 32px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background-color: #f3f4f6;
	border-radius: 8px;
}

.info-envio-texto {
	font-size: 13px;
	line-height: 16px;
}

.info-envio-titulo strong {
	color: #00AA45;
	font-weight: 600;
}

.info-envio-titulo .disponible {
	color: #00AA45;
	font-weight: 600;
}

.info-envio-fecha,
.info-envio-titulo {
	margin: 0;
}

/* ----------------------------------------------------------
   5.3 Contador de Envío Express
   ---------------------------------------------------------- */

.product-form form.cart {
	gap: 8px;
}

.product-form form.cart div.quantity {
	display: none;
}

.product-cta {
	margin-bottom: 32px;
}

.envio-express-titulo {
	font-size: 10px;
	font-weight: 600;
	margin: 0 0 8px 0;
	text-transform: uppercase;
	letter-spacing: .05em;
	line-height: 1;
}

.envio-express-countdown {
	display: flex;
	align-items: center;
	background-color: rgb(0 170 69 / 10%);
	color: rgb(0 170 69);
	padding: 8px 12px;
	gap: 8px;
	border-radius: 8px;
	border: 1px solid;
}

.countdown-icon {
	width: 20px;
	height: 20px;
}

.countdown-icon svg {
	width: 100%;
	height: 100%;
}

.countdown-time {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex: 1;
}

.countdown-unit {
	display: flex;
	align-items: baseline;
	gap: 2px;
	font-weight: 600;
}

.countdown-number {
	font-size: 16px;
	line-height: 1;
	font-variant-numeric: tabular-nums;
	min-width: 1.2em;
}

.countdown-label {
	font-size: 10px;
	font-weight: 400;
	line-height: 1;
}

.countdown-separator {
	font-size: 16px;
	font-weight: 400;
	line-height: 1;
}

/* ----------------------------------------------------------
   5.4 Características del Producto (ACF)
   ---------------------------------------------------------- */

.caracteristicas-producto {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.caracteristica-item {
	display: flex;
	align-items: center;
	gap: 6px;
}

.caracteristica-icon {
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
}

.caracteristica-icon svg {
	width: 100%;
	height: 100%;
}

.caracteristica-texto {
	flex: 1;
}

.caracteristica-texto p {
	margin: 0;
	font-size: 13px;
	line-height: 1;
	color: #30373D;
}

/* ----------------------------------------------------------
   5.5 Frequently Bought Together (FBT)
   ---------------------------------------------------------- */

/* Anti-FOUC: ocultar FBT hasta que esté rediseñado */
.wd-fbt.wd-design-side:not(.wd-fbt-redesigned) {
	opacity: 0;
	visibility: hidden;
	transition: none;
}

.wd-fbt.wd-design-side.wd-fbt-redesigned {
	opacity: 1;
	visibility: visible;
	transition: opacity 0.3s ease;
	display: block;
}

/* Grid de productos */
.wd-fbt.wd-design-side .wd-fbt-products {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	gap: 8px;
}

body .wd-fbt.wd-design-side .wd-fbt-form {
	padding: 0;
	background: none;
	border-radius: 0;
}

@media screen and (max-width: 768px) {
	.wd-fbt.wd-design-side .wd-fbt-products {
		grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
	}
}

/* Card de producto */
.wd-fbt-card-redesign {
	position: relative;
	border: 1px solid #e5e5e5;
	border-radius: 8px;
	padding: 20px;
	background: #f3f4f6;
	cursor: pointer;
	margin: 0 !important;
	transition: all 0.25s ease-in;
}

.wd-fbt-card-redesign:first-child {
	border-color: transparent !important;
}

.wd-fbt-card-redesign:hover {
	border-color: rgb(48 55 61 / 35%);
}

.wd-fbt-card-redesign:has(input:checked) {
	border-color: rgb(48, 55, 61);
}

/* Checkbox */
.wd-fbt-card-redesign .wd-fbt-checkbox-corner {
	position: absolute;
	top: 5px;
	right: 8px;
	z-index: 10;
}

.wd-fbt-card-redesign .wd-fbt-checkbox-corner input[type="checkbox"] {
	appearance: none;
	-webkit-appearance: none;
	width: 16px;
	height: 16px;
	border: 2px solid #30373D;
	border-radius: 4px;
	background: #ffffff;
	cursor: pointer;
	position: relative;
	transition: all 0.3s ease;
	margin: 0;
}

.wd-fbt-card-redesign .wd-fbt-checkbox-corner input[type="checkbox"]:checked {
	background: #30373D;
	border-color: #30373D;
	background-image: url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzExNF81NzUpIj4KPHJlY3Qgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2IiByeD0iNCIgZmlsbD0iIzMwMzczRCIvPgo8cGF0aCBkPSJNMTIgMS4zMzMzM0MxMy40NzA3IDEuMzMzMzMgMTQuNjY2NyAyLjUyOTMzIDE0LjY2NjcgNFYxMkMxNC42NjY3IDEzLjQ3MDcgMTMuNDcwNyAxNC42NjY3IDEyIDE0LjY2NjdINEMyLjUyOTMzIDE0LjY2NjcgMS4zMzMzMyAxMy40NzA3IDEuMzMzMzMgMTJWNEMxLjMzMzMzIDIuNTI5MzMgMi41MjkzMyAxLjMzMzMzIDQgMS4zMzMzM0gxMlpNMTIgMEg0QzEuNzkwNjcgMCAwIDEuNzkwNjcgMCA0VjEyQzAgMTQuMjA5MyAxLjc5MDY3IDE2IDQgMTZIMTJDMTQuMjA5MyAxNiAxNiAxNC4yMDkzIDE2IDEyVjRDMTYgMS43OTA2NyAxNC4yMDkzIDAgMTIgMFoiIGZpbGw9IiMzMDM3M0QiLz4KPHBhdGggZD0iTTYuNjM3OTMgMTEuMzMzM0M2LjQ2OTI2IDExLjMzMzMgNi4zMDEyNiAxMS4yNjkzIDYuMTcxMjYgMTEuMTQyN0w0LjI2NjU5IDkuMjc1OTlDNC4wMDM5MyA5LjAxODY2IDMuOTk5OTMgOC41OTY2NiA0LjI1NzI2IDguMzMzMzJDNC41MTUyNiA4LjA2OTk5IDQuOTM3OTMgOC4wNjY2NiA1LjE5OTkzIDguMzIzMzJMNi42Mzc5MyA5LjczMzMyTDEwLjkzMjYgNS41MjM5OUMxMS4xOTU5IDUuMjY2NjYgMTEuNjE3OSA1LjI2OTMyIDExLjg3NTMgNS41MzMzMkMxMi4xMzMzIDUuNzk1OTkgMTIuMTI5MyA2LjIxODY2IDExLjg2NjYgNi40NzU5OUw3LjEwNDU5IDExLjE0MjdDNi45NzQ1OSAxMS4yNjkzIDYuODA2NTkgMTEuMzMzMyA2LjYzNzkzIDExLjMzMzNaIiBmaWxsPSJ3aGl0ZSIvPgo8L2c+CjxkZWZzPgo8Y2xpcFBhdGggaWQ9ImNsaXAwXzExNF81NzUiPgo8cmVjdCB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHJ4PSI0IiBmaWxsPSJ3aGl0ZSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPg==');
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	border: 0;
}

.wd-fbt-card-redesign .wd-fbt-checkbox-corner input[type="checkbox"]:checked::after {
	content: "";
	display: none;
}

.wd-fbt-card-redesign .wd-fbt-checkbox-corner input[type="checkbox"]:disabled {
	opacity: 0.6;
	cursor: not-allowed;
}

/* Imagen del producto */
.wd-fbt-card-image {
	flex: 0 0 auto;
	text-align: center;
	margin-bottom: 15px;
	padding-top: 20px;
}

.wd-fbt-card-image img {
	max-width: 100%;
	height: auto;
	max-height: 100px;
	object-fit: contain;
	mix-blend-mode: darken;
}

/* Título del producto */
.wd-fbt-card-title {
	text-align: center;
	margin-bottom: 4px;
}

.wd-fbt-card-title .title,
.wd-fbt-card-title .wd-entities-title {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	margin-bottom: 0;
}

.wd-fbt-card-title a {
	color: #1A1A1A;
	text-decoration: none;
	transition: color 0.2s ease;
}

.wd-fbt-card-title a:hover {
	color: #666;
}

/* Precio del producto */
.wd-fbt-card-price {
	text-align: center;
	margin-top: auto;
}

.wd-fbt-card-price ins {
	font-size: 13px;
}

.wd-fbt-card-price .price ins .amount {
	font-weight: 600;
}

.wd-fbt-card-price del {
	margin-right: 2px;
	opacity: .6;
}

/* Sección de compra FBT */
.wd-fbt-purchase.wd-fbt-purchase-redesign {
	background: #F9FAFB;
	border-radius: 8px;
	padding: 16px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	margin-top: 8px;
}

/* Contenedor independiente: precio + savings-badge + desc */
.wd-fbt-purchase-info {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.wd-fbt-purchase.wd-fbt-purchase-redesign .price {
	font-size: 20px;
	display: inline-flex;
	align-items: baseline;
	gap: 6px;
}

.wd-fbt-purchase.wd-fbt-purchase-redesign .price del {
	order: 1;
	font-size: 14px;
	opacity: .6;
}

.wd-fbt-purchase.wd-fbt-purchase-redesign .price ins .amount {
	font-weight: 600;
}

.wd-fbt-purchase-redesign .wd-fbt-desc {
	display: none;
}

.wd-fbt-purchase-redesign .wd-fbt-purchase-btn {
	background: #30373D;
	color: #ffffff;
}

.wd-fbt-savings-badge {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	color: #EB0029;
	font-size: 13px;
	font-weight: 600;
}

.wd-fbt-savings-badge .wd-fbt-savings-icon {
	display: inline-block;
	vertical-align: middle;
	flex-shrink: 0;
}

body .shop_attributes tbody {
	display: block;
	column-count: 2;
	margin: 0;
}

body .shop_attributes tr {
	margin-bottom: 4px;
	padding: 9.5px 12px;
	line-height: 1.4;
	border: 0;
	background-color: #F3F4F6;
	border-radius: 4px;
}

body .shop_attributes tr:nth-child(even) {
	background-color: #F9FAFB;
}

.product-large-descripcion :is(h1, h2, h3, h4, h5, h6) {
	margin-bottom: 12px;
	font-size: 16px;
	font-weight: 600;
}

.product-info .product-labels.labels-rectangular {
	position: relative;
	inset: initial;
	max-width: none;
	flex-direction: row;
	gap: 5px;
	margin-right: 8px;
}

.product-info .product-labels .product-label {
	border: 1px solid;
}

.product-info .product-labels .product-label.featured {
	background-color: rgb(255, 108, 12, 0.1);
	color: rgb(255, 108, 12);
}

.product-info .product-labels .product-label.label-term-envio-gratis {
	background-color: rgb(0 170 69 / 10%);
	color: rgb(0, 170, 69);
}

.product_meta.wd-layout-inline>span {
	font-size: 10.5px;
	letter-spacing: .05em;
	opacity: .7;
	margin-right: 8px;
}

.product-info .wd-product-brands {
	gap: 2px;
	line-height: 1;
	font-size: 10.5px;
	letter-spacing: .05em;
	opacity: .7;
}

.product-info .wd-product-brands a {
	color: inherit;
}

.woocommerce-product-gallery img {
	aspect-ratio: 1;
	object-fit: contain;
}

.woocommerce-breadcrumb {
	font-size: 10px;
	letter-spacing: .05em;
	text-transform: uppercase;
}

.wd-breadcrumbs .wd-delimiter {
	margin-inline: 4px;
}

@media screen and (max-width: 768px) {
	body .shop_attributes tbody {
		column-count: 1;
	}
}

/* ============================================================
   6. MINI CART
   ============================================================ */



/* ============================================================
   7. CART
   ============================================================ */

.cart-content-wrapper>.cart_totals .cart-totals-inner {
	border: 0;
	background-color: #fff;
	box-shadow: 0 1px 3px 0 rgb(48 55 61 / 6%);
}


/* Estilos del checkout en css/checkout.css (cargado solo en checkout).
   Trust badges también aquí como respaldo por si checkout.css no carga o hay caché. */
body.woocommerce-checkout .wd-checkout-col-review .wd-checkout-trust-badges {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
	gap: 1rem 0.75rem;
	margin-top: 1.5rem;
	padding-top: 1.5rem;
	border-top: 1px solid rgba(255, 255, 255, 0.25);
}
body.woocommerce-checkout .wd-checkout-col-review .wd-checkout-trust-badge {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	flex: 1;
	min-width: 70px;
	max-width: 120px;
}
body.woocommerce-checkout .wd-checkout-col-review .wd-checkout-trust-badge-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	margin-bottom: 0.5rem;
	color: rgba(255, 255, 255, 0.95);
	flex-shrink: 0;
}
body.woocommerce-checkout .wd-checkout-col-review .wd-checkout-trust-badge-icon svg {
	width: 28px;
	height: 28px;
	display: block;
}
body.woocommerce-checkout .wd-checkout-col-review .wd-checkout-trust-badge-text {
	display: flex;
	flex-direction: column;
	gap: 0.15em;
	font-weight: 700;
	font-size: 0.75rem;
	line-height: 1.2;
	color: #fff;
	letter-spacing: 0.01em;
}
body.woocommerce-checkout .wd-checkout-col-review .wd-checkout-trust-badge-line1,
body.woocommerce-checkout .wd-checkout-col-review .wd-checkout-trust-badge-line2 {
	display: block;
}

/* ============================================================
   9. FOOTER
   ============================================================ */

.footer-c1 ul {
	padding: 0;
	list-style: none;
	line-height: 1;
}

.footer-c2 .box-icon-with-bg .info-box-icon {
	padding: 8px;
	border-radius: 8px;
}

.footer-form .newsletter-title {
	font-size: 14px;
	font-weight: 600;
	line-height: 1;
	margin-bottom: 12px;
	color: #fff;
}

.footer-form input[type="email"] {
	background-color: rgb(255 255 255 / 5%);
	border: 1px solid rgb(255 255 255 / 10%);
	border-radius: 8px;
}

.row-suscription>p {
	margin-bottom: 0;
	position: relative;
	border-radius: 8px;
	overflow: hidden;
}

.footer-form div.wpcf7 input[type="submit"] {
	position: absolute;
	right: 0;
	top: 0;
	border-radius: 0 8px 8px 0;
}

.footer-form .accept-terms {
	font-size: 11px;
	line-height: 13px;
	margin-top: 8px;
}

.footer-form .accept-terms p,
.footer-form .accept-terms label,
.footer-form .accept-terms .wpcf7-list-item,
.footer-form .accept-terms input[type="checkbox"] {
	margin: 0;
}

.footer-form .accept-terms label {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	font-size: 10px;
}

.footer-form .wpcf7-not-valid-tip {
	color: #fff;
	opacity: .5;
	font-size: 12px;
	display: inline-block;
	margin-top: 3px;
}

.footer-links ul {
	list-style: none;
	padding: 0;
	line-height: 1;
	font-size: 12px;
	letter-spacing: .05em;
}

.footer-links p {
	margin-bottom: 16px;
	line-height: 1;
	font-size: 10px;
	letter-spacing: .05em;
	color: #fff;
	opacity: .5;
	text-transform: uppercase;
}

@media screen and (max-width: 768px) {

	.container.main-footer {
		padding: 0;
	}

}