/* Ficha de producto v2 de azure (mu-plugins/dio-pdp-v2.php) · 20/10/2026 · ticket de Isaac.
 * Solo reorganiza: colores, fuente y botones son los del tema (variables de Woodmart). Todo acotado a body.dio-pdp-v2.
 * Maquetación por las clases dio-pdp-* que pone crear-layout-v2.php en los contenedores de Elementor. */

body.dio-pdp-v2 {
	/* Colores del layout anterior, medidos en la v1 (20/10/2026). Pedido de Isaac: en azul SOLO el precio principal y
	   «Mais formas de pagamento» (los pinta el plugin de cuotas), y desde la 3.ª revisión el valor Pix con ese mismo azul. */
	--dio-titulo: #242424;
	--dio-escuro: #333;
	--dio-borda: #e3e9f2;
	--dio-fundo: #f6f8fc;
	--dio-texto: #777;
	--dio-raio: 12px;
}

/* Contenedores de Elementor sin el relleno por defecto */
body.dio-pdp-v2 .e-con[class*="dio-pdp-"] {
	--kit-widget-spacing: 0px;
	--padding-top: 0;
	--padding-right: 0;
	--padding-bottom: 0;
	--padding-left: 0;
	--gap: 0px;
	--row-gap: 0px;
	--column-gap: 0px;
}

/* ── Cabecera: avisos + breadcrumb / navegación ─────────────────────────────── */
body.dio-pdp-v2 .dio-pdp-migas {
	--flex-direction: row;
	--justify-content: space-between;
	--align-items: center;
	margin-bottom: 16px;
}
body.dio-pdp-v2 .dio-pdp-breadcrumb .wd-breadcrumbs,
body.dio-pdp-v2 .dio-pdp-breadcrumb .woocommerce-breadcrumb {
	font-size: 13px;
}

/* ── Galería | información ──────────────────────────────────────────────────── */
body.dio-pdp-v2 .e-con.dio-pdp-principal {
	--flex-direction: row;
	--align-items: flex-start;
	--gap: 0px 48px;
	--row-gap: 0px;
	--column-gap: 48px;
	margin-bottom: 40px;
}
body.dio-pdp-v2 .dio-pdp-galeria {
	--width: 50%;
	width: 50%;
	flex: 0 0 auto;
	position: sticky;
	top: 90px;
}
body.dio-pdp-v2 .dio-pdp-info {
	--width: auto;
	flex: 1 1 0;
	min-width: 0;
}

body.dio-pdp-v2 .dio-pdp-titulo .product_title {
	color: var(--dio-escuro);
	font-size: 32px;
	line-height: 1.2;
	font-weight: 700;
	margin-bottom: 6px;
}
body.dio-pdp-v2 .dio-pdp-titulo .product_title,
body.dio-pdp-v2 .dio-pdp-meta .product_meta,
body.dio-pdp-v2 .dio-pdp-pix {
	margin-top: 0;
}
body.dio-pdp-v2 .dio-pdp-meta .product_meta {
	font-size: 13px;
	margin-bottom: 14px;
}
body.dio-pdp-v2 .dio-pdp-marca,
body.dio-pdp-v2 .dio-pdp-rating {
	margin-bottom: 10px;
}
body.dio-pdp-v2 .dio-pdp-marca:empty,
body.dio-pdp-v2 .dio-pdp-rating:empty {
	display: none;
}

/* Fila de compra: precio | cantidad + botón */
body.dio-pdp-v2 .e-con.dio-pdp-compra {
	--flex-direction: row;
	--align-items: flex-start;
	--justify-content: space-between;
	--gap: 12px 24px;
	--row-gap: 12px;
	--column-gap: 24px;
	flex-wrap: wrap;
	padding-bottom: 6px;
}
body.dio-pdp-v2 .dio-pdp-precio {
	--width: auto;
	width: auto;
	flex: 0 1 auto;
}
body.dio-pdp-v2 .dio-pdp-carrinho {
	--width: auto;
	width: auto;
	flex: 1 1 300px;
	max-width: 420px;
}
body.dio-pdp-v2 .dio-pdp-precio-w .price {
	margin: 0;
}
body.dio-pdp-v2 .dio-pdp-precio-w * {
	--wcsp-card-price-font-size: 38px !important;
	--wcsp-descriptions-font-size: 14px !important;
}
body.dio-pdp-v2 .dio-pdp-precio-w .price .payment-price {
	line-height: 1.1;
	font-weight: 800;
	margin-bottom: 4px;
}
/* 4.ª revisión de Isaac (precio en oferta): el tachado entero a 20 px y con el gris del plugin de cuotas. Antes solo el número
   bajaba a 20 px dentro de un <del> de 34 px: la línea quedaba debajo del número, como un subrayado de enlace azul. */
body.dio-pdp-v2 .dio-pdp-precio-w .price .payment-price del {
	font-size: 20px;
	font-weight: 700; /* el número ya salía a 700 (plugin de cuotas); desde la 5.ª revisión el color, la opacidad y el peso los fija mu-plugins/dio-preco-tachado.php en todo el sitio */
	margin-right: 6px;
}
body.dio-pdp-v2 .dio-pdp-precio-w .price .payment-price del .woocommerce-Price-amount {
	font-size: inherit;
	color: inherit;
}
body.dio-pdp-v2 .dio-pdp-precio-w .payment-name {
	font-size: 14px;
}

body.dio-pdp-v2 .dio-pdp-pix {
	margin: 8px 0 0;
	font-size: 14px;
	color: var(--dio-texto);
}
/* 3.ª revisión de Isaac: el valor Pix con el mismo azul del precio principal (variable del plugin de cuotas) y +2 px */
body.dio-pdp-v2 .dio-pdp-pix-valor {
	font-size: 16px;
	font-weight: 700;
	color: var(--wcsp-card-price-color, #1a3281);
}
body.dio-pdp-v2 .dio-pdp-pix-off {
	display: inline-block;
	margin-left: 4px;
	padding: 1px 7px;
	border-radius: 20px;
	background: #f1f1f1;
	color: var(--dio-escuro);
	font-size: 12px;
	font-weight: 700;
}

body.dio-pdp-v2 .dio-pdp-carrinho-w .elementor-widget-container {
	display: flex;
	flex-direction: column;
}
body.dio-pdp-v2 .dio-pdp-carrinho-w .stock {
	order: 2;
	margin: 8px 0 0;
	font-size: 13px;
}
body.dio-pdp-v2 .dio-pdp-carrinho-w form.cart:not(.variations_form),
body.dio-pdp-v2 .dio-pdp-carrinho-w .woocommerce-variation-add-to-cart {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 0;
}
body.dio-pdp-v2 .dio-pdp-carrinho-w .quantity {
	flex: 0 0 auto;
	margin: 0;
	display: inline-flex;
	align-items: center;
	height: 48px;
	border: 1px solid var(--dio-borda);
	border-radius: 30px;
	padding: 0 4px;
	background: #fff;
}
body.dio-pdp-v2 .dio-pdp-carrinho-w .quantity :is(.minus, .plus) {
	width: 36px;
	min-width: 36px;
	height: 44px;
	border: 0;
	background: transparent;
	font-size: 18px;
}
body.dio-pdp-v2 .dio-pdp-carrinho-w .quantity .qty {
	width: 34px;
	height: 44px;
	border: 0;
	background: transparent;
	font-weight: 600;
}
body.dio-pdp-v2 .dio-pdp-carrinho-w .single_add_to_cart_button {
	flex: 1 1 auto;
	min-height: 48px;
	border-radius: 30px;
	padding: 0 22px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	white-space: nowrap;
}
body.dio-pdp-v2 .dio-pdp-carrinho-w .single_add_to_cart_button::before {
	content: "";
	width: 22px;
	height: 22px;
	flex: 0 0 22px;
	background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.5 3.5h2.6l2.3 11h11l2.1-7.5H6.2'/%3E%3Ccircle cx='9.5' cy='19' r='1.5'/%3E%3Ccircle cx='17' cy='19' r='1.5'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.5 3.5h2.6l2.3 11h11l2.1-7.5H6.2'/%3E%3Ccircle cx='9.5' cy='19' r='1.5'/%3E%3Ccircle cx='17' cy='19' r='1.5'/%3E%3C/svg%3E") center / contain no-repeat;
}

/* Variables: precio arriba, selectores y botón debajo, a lo ancho */
body.dio-pdp-v2 .dio-pdp-compra:has(.variations_form) {
	--flex-direction: column;
	flex-direction: column;
}
body.dio-pdp-v2 .dio-pdp-compra:has(.variations_form) .dio-pdp-carrinho {
	max-width: none;
	width: 100%;
	flex: 0 0 auto;
}

/* Beneficios */
body.dio-pdp-v2 .dio-pdp-beneficios {
	display: grid;
	grid-auto-flow: column;
	grid-auto-columns: auto;
	justify-content: space-between;
	margin: 20px 0 0;
	padding: 16px 0;
	list-style: none;
	border-top: 1px solid var(--dio-borda);
	border-bottom: 1px solid var(--dio-borda);
}
/* Con 2 beneficios (personalizadas: sin frete grátis) van a la izquierda, no a los extremos */
body.dio-pdp-v2 .dio-pdp-beneficios:not(:has(> li:nth-child(3))) {
	justify-content: start;
}
body.dio-pdp-v2 .dio-pdp-beneficios:not(:has(> li:nth-child(3))) .dio-pdp-beneficio {
	padding-right: 32px;
}
body.dio-pdp-v2 .dio-pdp-beneficio {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 0;
	padding: 2px 16px;
	border-left: 1px solid var(--dio-borda);
	line-height: 1.3;
}
body.dio-pdp-v2 .dio-pdp-beneficio:first-child {
	border-left: 0;
	padding-left: 0;
}
body.dio-pdp-v2 .dio-pdp-beneficio .dio-pdp-icono {
	flex: 0 0 28px;
	color: var(--dio-escuro);
}
body.dio-pdp-v2 .dio-pdp-beneficio strong {
	display: block;
	white-space: nowrap;
	color: var(--dio-escuro);
	font-size: 14px;
	font-weight: 700;
}
body.dio-pdp-v2 .dio-pdp-beneficio small {
	display: block;
	white-space: nowrap;
	color: var(--dio-texto);
	font-size: 13px;
}

/* Frete */
body.dio-pdp-v2 .dio-pdp-frete {
	padding: 18px 0;
	border-bottom: 1px solid var(--dio-borda);
}
body.dio-pdp-v2 .dio-pdp-frete #wc-shipping-sim {
	padding: 0;
	border-top: 0;
	font-size: 14px;
}
body.dio-pdp-v2 .dio-pdp-frete #wc-shipping-sim-results:empty {
	display: none;
}
body.dio-pdp-v2 .dio-pdp-frete #wc-shipping-sim-form-title {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 10px;
	color: var(--dio-texto);
	font-size: 14px;
}
body.dio-pdp-v2 .dio-pdp-frete #wc-shipping-sim-form-title::before {
	content: "";
	width: 26px;
	height: 26px;
	flex: 0 0 26px;
	background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 6h11v10H3zM14 9h4l3 3.5V16h-7'/%3E%3Ccircle cx='7' cy='17.5' r='1.8'/%3E%3Ccircle cx='17' cy='17.5' r='1.8'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 6h11v10H3zM14 9h4l3 3.5V16h-7'/%3E%3Ccircle cx='7' cy='17.5' r='1.8'/%3E%3Ccircle cx='17' cy='17.5' r='1.8'/%3E%3C/svg%3E") center / contain no-repeat;
}
body.dio-pdp-v2 .dio-pdp-frete #wc-shipping-sim-form-fields {
	display: flex;
	gap: 10px;
}
body.dio-pdp-v2 .dio-pdp-frete #wc-shipping-sim-form-fields .input-postcode {
	flex: 1 1 auto;
	width: auto;
	max-width: none;
	height: 46px;
	margin: 0;
	border-radius: 8px;
}
body.dio-pdp-v2 .dio-pdp-frete #wc-shipping-sim-form-fields .button.submit {
	flex: 0 0 auto;
	height: 46px;
	min-width: 130px;
	padding: 0 18px;
	border-radius: 8px;
	font-size: 13px;
}
body.dio-pdp-v2 .dio-pdp-frete #wc-shipping-sim-br-cep-finder {
	margin-top: 8px;
	font-size: 13px;
}

/* Favoritos | comparação | guia */
body.dio-pdp-v2 .dio-pdp-acoes {
	--flex-direction: row;
	--align-items: center;
	flex-wrap: wrap;
	padding: 14px 0 4px;
}
body.dio-pdp-v2 .dio-pdp-acoes > .elementor-element {
	--width: auto;
	width: auto;
	margin: 0;
}
body.dio-pdp-v2 .dio-pdp-acoes > .elementor-element + .elementor-element {
	margin-left: 18px;
	padding-left: 18px;
	border-left: 1px solid var(--dio-borda);
}
body.dio-pdp-v2 .dio-pdp-acoes .wd-action-btn > a {
	font-size: 14px;
	color: var(--dio-escuro);
}
body.dio-pdp-v2 .dio-pdp-resumo {
	margin-top: 14px;
	font-size: 14px;
}
body.dio-pdp-v2 .dio-pdp-resumo :last-child {
	margin-bottom: 0;
}

/* ── Tarjetas de abajo: FBT, pestañas, upsells ─────────────────────────────── */
body.dio-pdp-v2 .dio-pdp-tarjeta {
	border: 1px solid var(--dio-borda);
	border-radius: var(--dio-raio);
	padding: 20px 24px;
	margin: 0 0 28px;
	background: #fff;
}
body.dio-pdp-v2 .dio-pdp-fbt:not(:has(.wd-fbt)),
body.dio-pdp-v2 .dio-pdp-upsells:not(:has(.wd-product)) {
	display: none;
}

/* FBT */
body.dio-pdp-v2 .dio-pdp-fbt-cabecera {
	display: flex;
	align-items: center;
	gap: 14px;
	margin-bottom: 16px;
	color: var(--dio-titulo);
}
body.dio-pdp-v2 .dio-pdp-fbt-cabecera .wd-el-title {
	margin: 0;
	font-size: 18px;
	color: var(--dio-titulo);
	text-transform: none;
}
body.dio-pdp-v2 .dio-pdp-fbt-sub {
	margin: 2px 0 0;
	font-size: 13px;
	color: var(--dio-texto);
}
body.dio-pdp-v2 .wd-fbt .wd-product .product-wrapper {
	border: 1px solid var(--dio-borda);
	border-radius: 10px;
	overflow: hidden;
	background: #fff;
}
/* 4.ª revisión de Isaac: la foto entera, sin recortar (las del catálogo son cuadradas; antes 16:10 con cover cortaba arriba y abajo) */
body.dio-pdp-v2 .wd-fbt .wd-product .product-element-top {
	position: relative;
	aspect-ratio: 4 / 3;
	overflow: hidden;
	background: #fff;
}
/* El enlace llena el recuadro: si no, el <img> toma su alto natural (cuadrado) y el recuadro lo corta igual */
body.dio-pdp-v2 .wd-fbt .wd-product .product-image-link {
	display: block;
	height: 100%;
}
body.dio-pdp-v2 .wd-fbt .wd-product .product-image-link img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}
body.dio-pdp-v2 .wd-fbt .wd-product :is(.wd-buttons, .hover-img, .wcsp-installments-table, .payment-name) {
	display: none !important;
}
body.dio-pdp-v2 .wd-fbt .wd-product .product-element-bottom {
	padding: 10px 12px 12px;
}
body.dio-pdp-v2 :is(.wd-fbt, .upsells-carousel, .cross-sells) .wd-product .wd-entities-title {
	font-size: 13px;
	line-height: 1.35;
	font-weight: 600;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	min-height: 2.7em;
	margin-bottom: 4px;
}
body.dio-pdp-v2 :is(.wd-fbt, .upsells-carousel, .cross-sells) .wd-product * {
	--wcsp-card-price-font-size: 17px !important;
	--wcsp-loop-card-price-font-size: 17px !important;
	--wcsp-descriptions-font-size: 12px !important;
	--wcsp-loop-descriptions-font-size: 12px !important;
}
body.dio-pdp-v2 .wd-fbt .wd-product .price .payment-price {
	font-weight: 800;
}
body.dio-pdp-v2 .dio-fbt-check {
	pointer-events: auto;
	position: absolute;
	top: 8px;
	left: 8px;
	z-index: 3;
	width: 26px;
	height: 26px;
	min-height: 26px;
	padding: 0;
	border: 2px solid #fff;
	border-radius: 6px;
	background: rgba(255, 255, 255, .85);
	box-shadow: 0 1px 4px rgba(0, 0, 0, .18);
	cursor: pointer;
}
body.dio-pdp-v2 .dio-fbt-check[aria-pressed="true"] {
	background: var(--btn-accented-bgcolor, #00a349) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12.5 4.5 4.5L19 7.5'/%3E%3C/svg%3E") center / 16px no-repeat;
}
body.dio-pdp-v2 .dio-fbt-check--fixo {
	cursor: default;
	opacity: 1;
}
body.dio-pdp-v2 .dio-fbt-check:focus-visible {
	outline: 2px solid var(--dio-escuro);
	outline-offset: 2px;
}
body.dio-pdp-v2 .wd-fbt.dio-fbt-sin-lista .wd-fbt-products,
body.dio-pdp-v2 .wd-fbt .wd-fbt-desc {
	display: none;
}
body.dio-pdp-v2 .wd-fbt.wd-design-side {
	--wd-form-width: 270px;
	gap: 24px;
}
body.dio-pdp-v2 .wd-fbt.wd-design-side .wd-fbt-form {
	border: 1px solid var(--dio-borda);
	border-radius: 10px;
	background: #fff;
	padding: 18px 20px;
	align-self: center;
}
body.dio-pdp-v2 .wd-fbt .wd-fbt-purchase {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 2px;
	margin: 0;
	padding: 0;
	border: 0;
}
body.dio-pdp-v2 .dio-pdp-fbt-rotulo {
	font-size: 14px;
	color: var(--dio-texto);
}
body.dio-pdp-v2 .wd-fbt .wd-fbt-purchase > .price {
	font-size: 30px;
	line-height: 1.15;
	font-weight: 800;
}
body.dio-pdp-v2 .dio-pdp-fbt-parcelas {
	min-height: 1.4em;
	margin-bottom: 12px;
	font-size: 13px;
	color: var(--dio-texto);
}
body.dio-pdp-v2 .wd-fbt .wd-fbt-purchase-btn {
	min-height: 48px;
	border-radius: 8px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	text-transform: none;
	font-size: 14px;
}

/* Pestañas */
body.dio-pdp-v2 .dio-pdp-abas .wd-nav-tabs-wrapper {
	text-align: left;
	border-bottom: 1px solid var(--dio-borda);
	margin-bottom: 20px;
}
body.dio-pdp-v2 .dio-pdp-abas .wd-nav-tabs > li > a {
	text-transform: none;
	font-size: 15px;
	padding-top: 6px;
	padding-bottom: 12px;
}
body.dio-pdp-v2 .dio-pdp-abas .dio-pdp-abas-w {
	border-top: 0;
	margin-top: 0;
}
/* El primer ítem del acordeón (móvil) no es :first-child: antes está la barra de pestañas, oculta */
body.dio-pdp-v2 .dio-pdp-abas .wd-accordion-item:nth-child(1 of .wd-accordion-item),
body.dio-pdp-v2 .dio-pdp-abas .wd-accordion-item:nth-child(1 of .wd-accordion-item) .wd-accordion-title {
	border-top: 0;
}

/* Upsells («Você também pode gostar de…») y venta cruzada del carrito («Você pode se interessar por…») */
body.dio-pdp-v2 :is(.upsells-carousel, .cross-sells) .wd-el-title,
body.dio-pdp-v2 .cross-sells > h2 {
	font-size: 18px;
	color: var(--dio-titulo);
	text-transform: none;
	margin-bottom: 14px;
	text-align: left;
}
/* El carrusel de Woodmart toma las columnas de estas variables al iniciar (el arg. de cross-sells no llega) */
body.dio-pdp-v2 .cross-sells .wd-carousel {
	--wd-col-lg: 6 !important;
	--wd-col-md: 4 !important;
	--wd-col-sm: 2 !important;
	--wd-gap-lg: 16px !important;
	--wd-gap-sm: 10px !important;
}
body.dio-pdp-v2 :is(.upsells-carousel, .cross-sells) .wd-product .product-element-bottom {
	padding: 10px 12px 12px;
}
body.dio-pdp-v2 :is(.upsells-carousel, .cross-sells) .wd-product .price .payment-price {
	font-weight: 800;
}
body.dio-pdp-v2 :is(.upsells-carousel, .cross-sells) .wd-product :is(.payment-name.full_options, .wcsp-installments-table, .wd-product-cats, .wd-star-rating) {
	display: none !important;
}
/* Corazón de favoritos siempre visible en la tarjeta, como en la referencia */
body.dio-pdp-v2 :is(.upsells-carousel, .cross-sells) .wd-product .wd-buttons {
	opacity: 1;
	visibility: visible;
	transform: none;
}
body.dio-pdp-v2 :is(.upsells-carousel, .cross-sells) .wd-product .wd-buttons > :not(.wd-wishlist-btn) {
	display: none;
}
body.dio-pdp-v2 :is(.upsells-carousel, .cross-sells) .wd-product .wd-wishlist-btn > a {
	width: 34px;
	height: 34px;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 1px 6px rgba(0, 0, 0, .14);
}
body.dio-pdp-v2 :is(.upsells-carousel, .cross-sells) .wd-nav-arrows .wd-btn-arrow .wd-arrow-inner {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 1px 8px rgba(0, 0, 0, .14);
}

body.dio-pdp-v2 .dio-pdp-ler-mais {
	display: block;
	width: 100%;
	min-height: 44px;
	margin: 6px 0 4px;
	border: 1px solid var(--dio-borda);
	border-radius: 8px;
	background: #fff;
	color: var(--dio-escuro);
	font-weight: 700;
	text-transform: none;
}

/* ── Tablet ─────────────────────────────────────────────────────────────────── */
@media (max-width: 1024px) {
	body.dio-pdp-v2 .dio-pdp-principal {
		--column-gap: 28px;
		--gap: 0 28px;
	}
	body.dio-pdp-v2 .dio-pdp-titulo .product_title {
		font-size: 26px;
	}
}

/* ── Móvil ──────────────────────────────────────────────────────────────────── */
@media (max-width: 768px) {
	body.dio-pdp-v2 .dio-pdp-migas {
		display: none;
	}
	body.dio-pdp-v2 .e-con.dio-pdp-principal {
		--flex-direction: column;
		flex-direction: column;
		--gap: 18px 0px;
		--row-gap: 18px;
		--column-gap: 0px;
		margin-bottom: 24px;
	}
	body.dio-pdp-v2 .dio-pdp-galeria {
		--width: 100%;
		width: 100%;
		position: static;
	}
	body.dio-pdp-v2 .dio-pdp-info {
		width: 100%;
	}
	/* 1 foto grande por vista, con las miniaturas debajo (4.ª revisión de Isaac: la principal en destaque; antes eran
	   3 por vista, como la referencia, y la principal se veía chica) */
	body.dio-pdp-v2 .dio-pdp-galeria .wd-gallery-images .wd-carousel {
		--wd-col-sm: 1 !important;
		--wd-col-md: 1 !important;
		--wd-gap-sm: 8px;
	}
	/* Diapositivas cuadradas fijas: la galería nunca pinta sobre el título, venga lo que venga (video vertical, Safari) */
	body.dio-pdp-v2 .dio-pdp-galeria .wd-gallery-images {
		overflow: hidden;
		/* Alto final reservado desde el primer pintado: 1 foto cuadrada en el ancho útil (100vw − 2×15 px de margen).
		   Sin esto, en un celular lento el carrusel mide ~10 px hasta que carga el CSS/JS de Woodmart y después empuja
		   todo el bloque de compra (CLS 0,09 medido con Lighthouse con 3 por vista). */
		min-height: calc(100vw - 30px);
	}
	body.dio-pdp-v2 .dio-pdp-galeria .wd-gallery-images .wd-carousel-wrap {
		height: auto !important;
		align-items: stretch;
	}
	body.dio-pdp-v2 .dio-pdp-galeria .wd-gallery-images .wd-carousel-item {
		aspect-ratio: 1 / 1;
		height: auto !important;
		overflow: hidden;
		border-radius: 8px;
		cursor: zoom-in;
	}
	body.dio-pdp-v2 .dio-pdp-galeria .wd-gallery-images .wd-carousel-item :is(figure, figure > a) {
		display: block;
		height: 100%;
		margin: 0;
	}
	body.dio-pdp-v2 .dio-pdp-galeria .wd-gallery-images .wd-carousel-item :is(img, video) {
		width: 100%;
		height: 100%;
		object-fit: contain;
	}
	body.dio-pdp-v2 .dio-pdp-galeria .product-additional-galleries {
		display: none !important;
	}
	body.dio-pdp-v2 .dio-pdp-titulo .product_title {
		font-size: 23px;
	}
	body.dio-pdp-v2 .dio-pdp-precio-w .price .payment-price,
	body.dio-pdp-v2 .dio-pdp-precio-w .price > .woocommerce-Price-amount {
		font-size: 32px;
	}
	body.dio-pdp-v2 .dio-pdp-compra {
		--flex-direction: column;
		flex-direction: column;
	}
	body.dio-pdp-v2 .dio-pdp-carrinho {
		max-width: none;
		width: 100%;
		flex: 1 1 auto;
	}
	body.dio-pdp-v2 .dio-pdp-beneficio {
		gap: 7px;
		padding: 2px 8px;
	}
	body.dio-pdp-v2 .dio-pdp-beneficio .dio-pdp-icono {
		width: 22px;
		height: 22px;
		flex-basis: 22px;
	}
	body.dio-pdp-v2 .dio-pdp-beneficio strong {
		font-size: 12px;
	}
	body.dio-pdp-v2 .dio-pdp-beneficio small {
		font-size: 11.5px;
	}
	body.dio-pdp-v2 .dio-pdp-frete {
		margin-top: 16px;
		padding: 16px;
		border: 1px solid var(--dio-borda);
		border-radius: var(--dio-raio);
		background: var(--dio-fundo);
	}
	body.dio-pdp-v2 .dio-pdp-frete .button.submit {
		min-width: 110px;
	}
	body.dio-pdp-v2 .e-con.dio-pdp-acoes {
		flex-wrap: nowrap;
	}
	body.dio-pdp-v2 .dio-pdp-acoes > .elementor-element + .elementor-element {
		margin-left: 12px;
		padding-left: 12px;
	}
	body.dio-pdp-v2 .dio-pdp-acoes .wd-action-btn > a {
		font-size: 12.5px;
		white-space: nowrap;
	}
	body.dio-pdp-v2 .dio-pdp-guia:not(:has(a)) {
		display: none;
	}
	body.dio-pdp-v2 .dio-pdp-tarjeta {
		padding: 16px;
		margin-bottom: 20px;
	}
	/* En móvil las pestañas son acordeón: la barra de pestañas queda vacía y su borde sobraba */
	body.dio-pdp-v2 .dio-pdp-abas .wd-nav-tabs-wrapper {
		border-bottom: 0;
		margin-bottom: 0;
	}
	body.dio-pdp-v2 .dio-pdp-abas #tab-description.dio-recolhido {
		max-height: 520px;
		overflow: hidden;
		position: relative;
	}
	body.dio-pdp-v2 .dio-pdp-abas #tab-description.dio-recolhido::after {
		content: "";
		position: absolute;
		inset: auto 0 0;
		height: 120px;
		background: linear-gradient(rgba(255, 255, 255, 0), #fff 70%);
		pointer-events: none;
		z-index: 1;
	}
	body.dio-pdp-v2 .dio-pdp-abas #tab-description.dio-recolhido .dio-pdp-ler-mais {
		position: absolute;
		left: 0;
		right: 0;
		bottom: 4px;
		z-index: 2;
	}
	body.dio-pdp-v2 .wd-fbt .wd-fbt-form {
		margin-top: 14px;
		width: 100%;
	}
	/* Pestaña «ENTRAR NO CLUBE» de MandrakeCRM: a media pantalla tapaba el título al abrir la ficha. Abajo a la
	   izquierda, sobre la barra inferior del tema, y más angosta (invade ~9 px del borde en vez de ~22 px). */
	body.dio-pdp-v2.single-product #mcrm-widget-trigger {
		top: auto;
		bottom: 64px;
		transform: none;
		padding: 10px 5px;
		font-size: 11px;
	}
	body.dio-pdp-v2.single-product #mcrm-widget-trigger:hover {
		transform: scale(1.05);
	}
}

/* ── 5.ª revisión (JJ, 20/10/2026 noche): un solo estilo de precio tachado ─────────────────────────────────────────
   Medido en Chrome: el tachado tenía 4 estilos. Precio principal (4.ª revisión de Isaac): número y línea gris #6d6d6d,
   20 px, peso 600. Barra fija y tarjetas del FBT/upsells: línea gris pero el NÚMERO en azul (el plugin de cuotas pinta
   el importe con --wcsp-card-price-color). «Total dos produtos»: gris claro #bbb (del de WooCommerce, sin plugin de
   cuotas), 27 px. Ahora los 4 llevan el estilo del precio principal, con el tamaño proporcional al precio actual
   (~55 %, como 20/38 en el principal). El color, la opacidad (0,7, la del plugin de cuotas, que Isaac aprobó) y el
   peso van en mu-plugins/dio-preco-tachado.php para TODO el sitio (portada y catálogo también tenían el número azul). */
body.dio-pdp-v2 .wd-sticky-btn-cart .price .payment-price del,
body.dio-pdp-v2 :is(.wd-fbt, .upsells-carousel, .cross-sells) .wd-product .price .payment-price del,
body.dio-pdp-v2 .wd-fbt .wd-fbt-purchase > .price del {
	margin-right: 6px; /* color #6d6d6d, opacidad 0,7 y peso 700: mu-plugins/dio-preco-tachado.php (todo el sitio) */
}
body.dio-pdp-v2 .wd-sticky-btn-cart .price .payment-price del .woocommerce-Price-amount,
body.dio-pdp-v2 :is(.wd-fbt, .upsells-carousel, .cross-sells) .wd-product .price .payment-price del .woocommerce-Price-amount,
body.dio-pdp-v2 .wd-fbt .wd-fbt-purchase > .price del .woocommerce-Price-amount {
	font-size: inherit;
	font-weight: inherit;
	color: inherit;
}
body.dio-pdp-v2 .wd-sticky-btn-cart .price .payment-price del {
	font-size: 14px;
}
body.dio-pdp-v2 :is(.wd-fbt, .upsells-carousel, .cross-sells) .wd-product .price .payment-price del {
	font-size: 12px;
}
body.dio-pdp-v2 .wd-fbt .wd-fbt-purchase > .price del {
	font-size: 16px;
}

/* 5.ª revisión: el check de selección tapaba el badge «-10 %» del tema (los dos arriba a la izquierda). Pedido de JJ:
   el check pasa a la derecha y el badge queda donde lo pone el tema. */
body.dio-pdp-v2 .dio-fbt-check {
	left: auto;
	right: 8px;
}
