/**
 * Producto individual WooCommerce bÃ¡sico.
 * Tema OZ â€” cargado solo en single product.
 */
body.single-product,
body.single-product .site,
body.single-product .site-main.site-main--woo-single {
	background: #000000;
}

body.single-product .site,
body.single-product .site-main.site-main--woo-single {
	width: 100%;
	max-width: none;
	margin-inline: 0;
	box-sizing: border-box;
}

.site-main.site-main--woo-single {
	padding-bottom: 2rem;
}

.oz-single-product {
	max-width: min(100%, 1600px);
	margin-inline: auto;
	padding: 48px clamp(1rem, 4vw, 40px) 60px;
	box-sizing: border-box}

/* El contenedor del producto va en FLOW (no grid): su único hijo es .ozc-single-product.
   La grilla galería+resumen vive en .ozc-single-product__inner. */
.oz-single-product div.product {
	display: flow-root;
	margin: 0;
	padding: 0;
	background: transparent;
	border-radius: 0;
	box-shadow: none;
	box-sizing: border-box}

/* Grilla real: galería (izq) + resumen (der) */
.oz-single-product .ozc-single-product,
.oz-single-product .ozc-single-product__inner {
	width: 100%;
}

.oz-single-product .ozc-single-product__inner {
	display: grid;
	/* Sección galería 560 · sección resumen 570 (capadas; se encogen en pantallas chicas).
	   Galería reducida para que la imagen no se vea demasiado grande. */
	grid-template-columns: minmax(0, 560px) minmax(0, 570px);
	gap: 32px;
	align-items: start;
	justify-content: center;
}

@media (max-width: 960px) {
	.oz-single-product .ozc-single-product__inner {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 991px) {
	.oz-single-product {
		padding: 1rem 0.75rem 1.75rem}

	.oz-single-product div.product {
		grid-template-columns: 1fr;
		gap: 1.5rem;
		padding: 1rem}
}

.oz-single-product .woocommerce-product-gallery,
.oz-single-product .entry-summary {
	width: auto;
	float: none;
	min-width: 0}

.oz-single-product .woocommerce-product-gallery {
	padding: 1.25rem;
	background: #ffffff;
	border: 1px solid #2a2a2a;
	border-radius: 12px;
	box-sizing: border-box}

.oz-single-product .entry-summary {
	display: flex;
	flex-direction: column;
	gap: 1rem}

.oz-single-product .entry-summary > * {
	margin-top: 0;
	margin-bottom: 0}

.oz-single-product .woocommerce-product-gallery__wrapper,
.oz-single-product .flex-viewport {
	border-radius: 12px;
	overflow: hidden}

.oz-single-product .woocommerce-product-gallery__image img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: 12px;
	transition: transform 0.25s ease;
	transform-origin: var(--oz-zoom-x, 50%) var(--oz-zoom-y, 50%);
	will-change: transform}

.oz-single-product .woocommerce-product-gallery__image:hover img,
.oz-single-product .woocommerce-product-gallery__image a:hover img,
.oz-single-product .woocommerce-product-gallery__image a:focus-visible img {
	transform: scale(1.05)}

.oz-single-product .flex-control-thumbs {
	display: flex;
	flex-wrap: wrap;
	gap: 0.625rem;
	margin: 0.875rem 0 0;
	padding: 0;
	list-style: none}

.oz-single-product .flex-control-thumbs li {
	margin: 0}

.oz-single-product .flex-control-thumbs img {
	border-radius: 8px;
	border: 1px solid transparent;
	opacity: 0.84;
	transition: opacity 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease}

.oz-single-product .flex-control-thumbs li:hover img,
.oz-single-product .flex-control-thumbs img.flex-active {
	opacity: 1;
	border-color: #b8cad8;
	box-shadow: 0 0 0 1px rgba(15, 61, 94, 0.08)}

.oz-single-product .product_title {
	font-family: var(--OZ-Font-Headings);
	font-size: clamp(1.5rem, 2.8vw, 1.75rem);
	font-weight: 700;
	line-height: 1.15;
	color: #ffffff}

.oz-single-product .price {
	color: #ffffff;
	font-weight: 700;
	font-size: 1.2rem}

.oz-single-product .woocommerce-product-details__short-description {
	color: #9ca3af;
	font-size: 0.98rem;
	line-height: 1.7}

.oz-single-product .woocommerce-product-details__short-description p {
	margin: 0 0 0.85rem}

.oz-single-product .woocommerce-product-details__short-description p:last-child {
	margin-bottom: 0}

.oz-single-product .woocommerce-product-details__short-description ul {
	margin: 0.25rem 0 0;
	padding-left: 1.2rem;
	color: #d1d5db}

.oz-single-product .ozc-single-product__summary {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	column-gap: 0.75rem;
	row-gap: 0;
	align-items: start}

.oz-single-product .ozc-single-product__summary > :not(.ozc-single-product__wa):not(.oz-wc-ficha-tecnica) {
	grid-column: 1 / -1}

.oz-single-product .ozc-single-product__breadcrumbs {
	margin-bottom: 0.55rem}

.oz-single-product .ozc-single-product__title {
	margin-bottom: 0.9rem}

.oz-single-product .ozc-single-product__excerpt {
	margin-bottom: 0;
	padding-bottom: 1.15rem}

.oz-single-product form.cart {
	margin: 1rem 0 0;
}

.oz-single-product form.cart table.variations {
	margin: 0 0 0.875rem;
	width: 100%;
}

.oz-single-product form.cart.variations_form {
	display: flex;
	flex-direction: column;
	gap: 0.875rem;
	align-items: stretch;
}

.oz-single-product form.cart:not(.variations_form):not(.grouped_form),
.oz-single-product form.cart.variations_form .woocommerce-variation-add-to-cart,
.oz-single-product form.cart:not(.grouped_form) > div:has(.quantity):has(.single_add_to_cart_button),
.oz-single-product form.cart:not(.grouped_form) > div:has(.quantity):has(button[type='submit'].single_add_to_cart_button) {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: center;
	gap: 0.75rem;
	width: 100%;
	box-sizing: border-box;
}

.oz-single-product .ozc-single-product__cta {
	display: contents;
}

.oz-single-product .ozc-single-product__summary form.cart,
.oz-single-product .entry-summary form.cart {
	order: 1;
	grid-column: 1 / -1;
}

.oz-single-product .ozc-single-product__summary .ozc-single-product__cta {
	margin-top: 1.15rem}

.oz-single-product .ozc-single-product__summary .ozc-single-product__wa {
	order: 2;
	grid-column: 1;
	width: 100%;
	margin-top: 0.8rem;
}

.oz-single-product .ozc-single-product__summary .oz-wc-ficha-tecnica,
.oz-single-product .entry-summary .oz-wc-ficha-tecnica {
	order: 3;
	grid-column: 2;
	width: 100%;
	margin-top: 0.8rem;
}

.oz-single-product .ozc-single-product__summary:has(.ozc-single-product__wa):not(:has(.oz-wc-ficha-tecnica)) .ozc-single-product__wa,
.oz-single-product .ozc-single-product__summary:not(:has(.ozc-single-product__wa)):has(.oz-wc-ficha-tecnica) .oz-wc-ficha-tecnica {
	grid-column: 1 / -1;
}

.oz-single-product .ozc-single-product__summary .ozc-single-product__meta {
	order: 4;
	margin-top: 0.7rem;
}

.oz-single-product form.cart .quantity,
.oz-single-product form.cart.variations_form .woocommerce-variation-add-to-cart .quantity {
	flex: 0 0 auto;
}

body.single-product .oz-single-product .ozc-single-product__cta form.cart .quantity {
	border-radius: 8px;
}

.oz-single-product form.cart .single_add_to_cart_button,
.oz-single-product form.cart .button.alt,
.oz-single-product form.cart button[type='submit'].single_add_to_cart_button {
	flex: 1 1 auto;
	min-width: 0;
	max-width: 100%;
	min-height: 44px;
	padding: 0 1.35rem;
	border-radius: 8px;
	border: 1px solid #f15a22;
	background: #f15a22;
	color: #ffffff;
	font-size: 0.95rem;
	font-weight: 600;
	line-height: 1.2;
	box-shadow: none;
	transition: background-color 0.24s ease, border-color 0.24s ease, box-shadow 0.24s ease;
}

.oz-single-product form.cart .single_add_to_cart_button:hover,
.oz-single-product form.cart .button.alt:hover {
	background: #d94a16;
	border-color: #d94a16;
	box-shadow: none;
}

.oz-single-product form.cart .quantity .oz-qty-stepper {
	display: inline-flex;
	align-items: center;
	height: 44px;
	max-width: none;
	border: 1px solid #141414;
	border-radius: 8px;
	overflow: hidden;
	background: #141414;
	box-shadow: none;
	padding: 0;
}

.oz-single-product form.cart .quantity .oz-qty-stepper__btn {
	width: 2.35rem;
	min-width: 2.35rem;
	height: 44px;
	border: 0;
	background: transparent;
	color: #ffffff;
	cursor: pointer;
	font-size: 1rem;
	line-height: 1;
	display: grid;
	place-items: center;
	transition: background-color 0.2s ease, color 0.2s ease;
}

.oz-single-product form.cart .quantity .oz-qty-stepper__btn:hover {
	background: rgba(255, 255, 255, 0.12);
	color: #ffffff;
}

.oz-single-product form.cart .quantity .oz-qty-stepper__input {
	width: 2.4rem;
	height: 44px;
	border: 0;
	padding: 0 0.3rem;
	text-align: center;
	background: transparent;
	color: #ffffff;
	font-size: 0.95rem;
	font-weight: 700;
	appearance: textfield;
	-moz-appearance: textfield;
}

.oz-single-product form.cart .quantity .oz-qty-stepper__input::-webkit-outer-spin-button,
.oz-single-product form.cart .quantity .oz-qty-stepper__input::-webkit-inner-spin-button {
	-webkit-appearance: none;
}

.oz-single-product .ozc-single-product__wa .ozc-product-card__wa-btn {
	width: 100%;
	min-height: 40px;
	padding: 0.55rem 1rem;
	border: 1px solid #b6e3c9;
	border-radius: 8px;
	background: #e8f8f0;
	color: #1f7a4f;
	font-size: 0.93rem;
	font-weight: 600;
	box-shadow: none;
	transition: background-color 0.24s ease, border-color 0.24s ease, color 0.24s ease;
}

.oz-single-product .ozc-single-product__wa .ozc-product-card__wa-btn:hover,
.oz-single-product .ozc-single-product__wa .ozc-product-card__wa-btn:focus-visible {
	background: #dff3e8;
	border-color: #9ed8b8;
	color: #176541;
}

.oz-single-product .oz-wc-ficha-tecnica {
	width: 100%;
}

body.single-product .oz-single-product .oz-wc-ficha-tecnica .oz-wc-ficha-tecnica__btn.button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	width: 100%;
	min-height: 40px;
	padding: 0.55rem 0.95rem;
	border-radius: 8px;
	border: 1px solid #c7d7e6;
	background: transparent;
	color: #f15a22;
	font-size: 0.85rem;
	font-weight: 600;
	text-decoration: none;
	line-height: 1.2;
	box-shadow: none;
	transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
	box-sizing: border-box;
}

body.single-product .oz-single-product .oz-wc-ficha-tecnica .oz-wc-ficha-tecnica__btn.button::before {
	content: "";
	width: 15px;
	height: 15px;
	display: inline-block;
	background-color: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 3a.75.75 0 0 1 .75.75v9.69l2.72-2.72a.75.75 0 1 1 1.06 1.06l-4 4a.75.75 0 0 1-1.06 0l-4-4a.75.75 0 1 1 1.06-1.06l2.72 2.72V3.75A.75.75 0 0 1 12 3Zm-6 13.5A.75.75 0 0 1 6.75 17v1.25c0 .414.336.75.75.75h9a.75.75 0 0 0 .75-.75V17a.75.75 0 0 1 1.5 0v1.25a2.25 2.25 0 0 1-2.25 2.25h-9a2.25 2.25 0 0 1-2.25-2.25V17a.75.75 0 0 1 .75-.75Z'/%3E%3C/svg%3E")
		no-repeat center / contain;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 3a.75.75 0 0 1 .75.75v9.69l2.72-2.72a.75.75 0 1 1 1.06 1.06l-4 4a.75.75 0 0 1-1.06 0l-4-4a.75.75 0 1 1 1.06-1.06l2.72 2.72V3.75A.75.75 0 0 1 12 3Zm-6 13.5A.75.75 0 0 1 6.75 17v1.25c0 .414.336.75.75.75h9a.75.75 0 0 0 .75-.75V17a.75.75 0 0 1 1.5 0v1.25a2.25 2.25 0 0 1-2.25 2.25h-9a2.25 2.25 0 0 1-2.25-2.25V17a.75.75 0 0 1 .75-.75Z'/%3E%3C/svg%3E")
		no-repeat center / contain}

body.single-product .oz-single-product .oz-wc-ficha-tecnica .oz-wc-ficha-tecnica__btn.button:hover,
body.single-product .oz-single-product .oz-wc-ficha-tecnica .oz-wc-ficha-tecnica__btn.button:focus-visible {
	background: #eef5fb;
	border-color: #a9c2d8;
	color: #ffffff;
}

@media (max-width: 991px) {
	.oz-single-product form.cart:not(.variations_form):not(.grouped_form),
	.oz-single-product form.cart.variations_form .woocommerce-variation-add-to-cart,
	.oz-single-product form.cart:not(.grouped_form) > div:has(.quantity):has(.single_add_to_cart_button),
	.oz-single-product form.cart:not(.grouped_form) > div:has(.quantity):has(button[type='submit'].single_add_to_cart_button) {
		gap: 0.625rem;
	}
}

@media (max-width: 575px) {
	.oz-single-product .ozc-single-product__summary {
		grid-template-columns: minmax(0, 1fr);
	}

	.oz-single-product .ozc-single-product__summary .ozc-single-product__wa,
	.oz-single-product .ozc-single-product__summary .oz-wc-ficha-tecnica {
		grid-column: 1 / -1;
	}

	.oz-single-product form.cart:not(.variations_form):not(.grouped_form),
	.oz-single-product form.cart.variations_form .woocommerce-variation-add-to-cart,
	.oz-single-product form.cart:not(.grouped_form) > div:has(.quantity):has(.single_add_to_cart_button),
	.oz-single-product form.cart:not(.grouped_form) > div:has(.quantity):has(button[type='submit'].single_add_to_cart_button) {
		flex-wrap: wrap;
	}

	.oz-single-product form.cart .quantity,
	.oz-single-product form.cart .single_add_to_cart_button,
	.oz-single-product form.cart .button.alt,
	.oz-single-product form.cart button[type='submit'].single_add_to_cart_button {
		width: 100%;
	}
}

.oz-single-product .product_meta {
	padding-top: 0;
	margin-top: 0;
	font-size: 0.95rem;
	line-height: 1.65;
	color: #9ca3af}

.oz-single-product .ozc-single-product__meta {
	padding-top: 0;
	border-top: 0}

.oz-single-product .woocommerce-tabs {
	grid-column: 1 / -1;
	margin-top: 2rem;
}

.oz-single-product .woocommerce-tabs ul.tabs {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	gap: 0 1.25rem;
	margin: 0;
	padding: 0;
	list-style: none;
	border: 0;
	border-bottom: 1px solid #2a2a2a;
}

.oz-single-product .woocommerce-tabs ul.tabs::before,
.oz-single-product .woocommerce-tabs ul.tabs::after {
	content: none !important;
	display: none !important;
}

.oz-single-product .woocommerce-tabs ul.tabs li {
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
}

.oz-single-product .woocommerce-tabs ul.tabs li a {
	display: inline-block;
	padding: 0.625rem 0.15rem 0.9rem;
	font-size: 0.98rem;
	font-weight: 600;
	line-height: 1.2;
	color: #9ca3af;
	text-decoration: none;
	border: 0;
	border-bottom: 2px solid transparent;
	margin-bottom: -1px;
	transition: color 0.2s ease, border-color 0.2s ease;
}

.oz-single-product .woocommerce-tabs ul.tabs li.active a,
.oz-single-product .woocommerce-tabs ul.tabs li a:hover,
.oz-single-product .woocommerce-tabs ul.tabs li a:focus-visible {
	color: #f15a22;
	border-bottom-color: #f15a22;
}

.oz-single-product .woocommerce-tabs .woocommerce-Tabs-panel {
	margin: 1rem 0 0;
	padding: 1.5rem;
	background: #141414;
	border: 1px solid #2a2a2a;
	border-radius: 12px;
	box-shadow: none;
	color: #d1d5db;
	font-size: 1rem;
	line-height: 1.65;
}

.oz-single-product .woocommerce-tabs .woocommerce-Tabs-panel > h2 {
	margin: 0 0 1rem;
	font-family: var(--OZ-Font-Headings);
	font-size: 1.35rem;
	font-weight: 700;
	line-height: 1.25;
	color: #ffffff;
}

.oz-single-product .woocommerce-tabs .woocommerce-Tabs-panel h3,
.oz-single-product .woocommerce-tabs .woocommerce-Tabs-panel h4 {
	margin: 1.5rem 0 0.75rem;
	font-size: 1.05rem;
	font-weight: 600;
	line-height: 1.35;
	color: #e5e7eb;
}

.oz-single-product .woocommerce-tabs .woocommerce-Tabs-panel p {
	margin: 0 0 1rem;
}

.oz-single-product .woocommerce-tabs .woocommerce-Tabs-panel p:last-child {
	margin-bottom: 0;
}

.oz-single-product .woocommerce-tabs .woocommerce-Tabs-panel ul,
.oz-single-product .woocommerce-tabs .woocommerce-Tabs-panel ol {
	margin: 0.25rem 0 1rem;
	padding-left: 1.25rem;
}

.oz-single-product .woocommerce-tabs .woocommerce-Tabs-panel li + li {
	margin-top: 0.45rem;
}

.oz-single-product .woocommerce-tabs .woocommerce-Tabs-panel strong,
.oz-single-product .woocommerce-tabs .woocommerce-Tabs-panel b {
	color: #e5e7eb;
	font-weight: 600;
}

.oz-single-product .woocommerce-tabs .woocommerce-Tabs-panel :is(table.woocommerce-product-attributes, table.shop_attributes) {
	width: 100%;
	font-size: 0.98rem;
	border-collapse: collapse;
}

.oz-single-product .woocommerce-tabs .woocommerce-Tabs-panel :is(table.woocommerce-product-attributes, table.shop_attributes) th,
.oz-single-product .woocommerce-tabs .woocommerce-Tabs-panel :is(table.woocommerce-product-attributes, table.shop_attributes) td {
	padding: 0.85rem 0.65rem;
	border-bottom: 1px solid #e5e7eb;
	vertical-align: top;
	color: #d1d5db;
}

.oz-single-product .woocommerce-tabs .woocommerce-Tabs-panel :is(table.woocommerce-product-attributes, table.shop_attributes) th {
	color: #e5e7eb;
	font-weight: 600;
}

.oz-single-product .related,
.oz-single-product .upsells {
	grid-column: 1 / -1;
	margin-top: 2.5rem;
}

.oz-single-product .related > h2,
.oz-single-product .upsells > h2 {
	font-family: var(--OZ-Font-Headings);
	font-size: clamp(1.35rem, 2.2vw, 1.6rem);
	font-weight: 700;
	line-height: 1.2;
	margin: 0 0 1.25rem;
	color: #ffffff;
}

.oz-single-product .related ul.products,
.oz-single-product .upsells ul.products {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 1.5rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.oz-single-product .related ul.products::before,
.oz-single-product .related ul.products::after,
.oz-single-product .upsells ul.products::before,
.oz-single-product .upsells ul.products::after {
	content: none !important;
	display: none !important}

.oz-single-product .related ul.products li.product .ozc-product-card--related,
.oz-single-product .upsells ul.products li.product .ozc-product-card--related {
	padding-bottom: 1rem;
}

.oz-single-product .related ul.products li.product .ozc-product-card--pack-herramientasperu,
.oz-single-product .upsells ul.products li.product .ozc-product-card--pack-herramientasperu {
	height: 100%;
}

.oz-single-product .related ul.products li.product .ozc-product-card--pack-herramientasperu .ozc-product-card__actions,
.oz-single-product .upsells ul.products li.product .ozc-product-card--pack-herramientasperu .ozc-product-card__actions {
	margin-top: auto;
	padding-top: 0.55rem;
}

@media (max-width: 1199px) {
	.oz-single-product .related ul.products,
	.oz-single-product .upsells ul.products {
		grid-template-columns: repeat(3, minmax(0, 1fr))}
}

@media (max-width: 991px) {
	.oz-single-product .related ul.products,
	.oz-single-product .upsells ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr))}
}

@media (max-width: 575px) {
	.oz-single-product .related ul.products,
	.oz-single-product .upsells ul.products {
		grid-template-columns: 1fr}
}

.oz-single-product .related ul.products li.product,
.oz-single-product .upsells ul.products li.product {
	float: none !important;
	width: auto !important;
	
	clear: none !important;
	
	border: 1px solid var(--OZ-Color-6);
	border-radius: 16px;
	background: var(--OZ-Color-5);
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
	height: 100%;
	text-align: left}

.oz-single-product .related ul.products li.product a.woocommerce-LoopProduct-link,
.oz-single-product .upsells ul.products li.product a.woocommerce-LoopProduct-link {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
	color: inherit;
	text-decoration: none}

.oz-single-product .related ul.products li.product img,
.oz-single-product .upsells ul.products li.product img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 1 / 1;
	object-fit: contain;
	border-radius: 12px;
	background: #fff}

.oz-single-product .related ul.products li.product .woocommerce-loop-product__title,
.oz-single-product .upsells ul.products li.product .woocommerce-loop-product__title {
	
	font-family: var(--OZ-Font-Headings);
	font-size: 1rem;
	line-height: 1.35;
	color: var(--OZ-Color-1)}

.oz-single-product .related ul.products li.product .price,
.oz-single-product .upsells ul.products li.product .price {
	
	font-size: 0.95rem;
	font-weight: 700;
	color: var(--OZ-Color-1)}

.oz-single-product .related ul.products li.product .button,
.oz-single-product .upsells ul.products li.product .button {
	
	align-self: flex-start;
	border-radius: 999px;
	
	line-height: 1.2;
	text-align: center}

/*
 * OZ Cotizador â€” mismas plantillas de card que en tienda (content-product del plugin).
 * En single no existe body.ozc-loops--replace; el <li> seguÃ­a con borde/fondo del tema
 * pensado para el loop nativo â†’ â€œdoble cajaâ€ sobre la card del plugin.
 */
.oz-single-product .related ul.products li.product:has(.ozc-product-card),
.oz-single-product .upsells ul.products li.product:has(.ozc-product-card) {
	
	border: 0;
	background: transparent;
	border-radius: 0;
	gap: 0;
	box-shadow: none}

.oz-single-product .related ul.products li.product .ozc-product-card,
.oz-single-product .upsells ul.products li.product .ozc-product-card {
	min-width: 0;
	width: 100%;
	align-self: stretch}

.oz-single-product .related .ozc-product-card__title,
.oz-single-product .upsells .ozc-product-card__title {
	font-family: var(--OZ-Font-Headings);
	font-size: clamp(0.9rem, 2.8vw, 1rem);
	line-height: 1.3}

.oz-single-product .related .ozc-product-card__category,
.oz-single-product .upsells .ozc-product-card__category {
	font-size: clamp(0.75rem, 2.2vw, 0.85rem)}

@media (max-width: 575px) {
	.oz-single-product .related .ozc-product-card__section,
	.oz-single-product .related .ozc-product-card__media,
	.oz-single-product .upsells .ozc-product-card__media {
		border-radius: 12px}

	.oz-single-product .related .ozc-product-card__btn,
	.oz-single-product .related .ozc-product-card__wa-btn,
	.oz-single-product .upsells .ozc-product-card__btn,
	.oz-single-product .upsells .ozc-product-card__wa-btn {
		min-height: 44px;
		font-size: 14px}
}

/* Ficha OZ Cotizador (.ozc-single-product): mÃ³vil / tablet estrecha â€” tÃ­tulo 26px; columna qty â†’ carrito â†’ WhatsApp */
@media (max-width: 991px) {
	.oz-single-product .ozc-single-product__title .product_title,
	.oz-single-product .ozc-single-product__title h1 {
		font-size: 26px !important;
		line-height: 1.2}

	.oz-single-product .ozc-single-product__cta form.cart:not(.variations_form):not(.grouped_form),
	.oz-single-product .ozc-single-product__cta form.cart.variations_form .woocommerce-variation-add-to-cart,
	.oz-single-product .ozc-single-product__cta form.cart:not(.grouped_form) > div:has(.quantity):has(.single_add_to_cart_button),
	.oz-single-product .ozc-single-product__cta form.cart:not(.grouped_form) > div:has(.quantity):has(button[type='submit'].single_add_to_cart_button) {
		flex-direction: column !important;
		flex-wrap: nowrap !important;
		align-items: stretch !important;
		gap: 12px}

	.oz-single-product .ozc-single-product__cta form.cart:not(.variations_form):not(.grouped_form) .quantity,
	.oz-single-product .ozc-single-product__cta form.cart.variations_form .woocommerce-variation-add-to-cart .quantity,
	.oz-single-product .ozc-single-product__cta form.cart:not(.grouped_form) > div:has(.quantity):has(.single_add_to_cart_button) .quantity,
	.oz-single-product .ozc-single-product__cta form.cart:not(.grouped_form) > div:has(.quantity):has(button[type='submit'].single_add_to_cart_button) .quantity {
		align-self: flex-start;
		flex: 0 0 auto !important}

	.oz-single-product .ozc-single-product__cta form.cart:not(.variations_form):not(.grouped_form) .single_add_to_cart_button,
	.oz-single-product .ozc-single-product__cta form.cart:not(.variations_form):not(.grouped_form) button[type='submit'].single_add_to_cart_button,
	.oz-single-product .ozc-single-product__cta form.cart.variations_form .woocommerce-variation-add-to-cart .single_add_to_cart_button,
	.oz-single-product .ozc-single-product__cta form.cart.variations_form .woocommerce-variation-add-to-cart button[type='submit'].single_add_to_cart_button,
	.oz-single-product .ozc-single-product__cta form.cart:not(.grouped_form) > div:has(.quantity):has(.single_add_to_cart_button) .single_add_to_cart_button,
	.oz-single-product .ozc-single-product__cta form.cart:not(.grouped_form) > div:has(.quantity):has(button[type='submit'].single_add_to_cart_button) .single_add_to_cart_button {
		width: 100% !important;
		flex: 0 0 auto !important;
		max-width: none !important}
	.oz-single-product .ozc-single-product__wa .ozc-product-card__wa-btn {
		width: 100%;
		box-sizing: border-box}
}

/* Ícono de carrito en el botón "Añadir al carrito" (diseño GRUPESAC) */
.oz-single-product form.cart .single_add_to_cart_button,
.oz-single-product form.cart .button.alt,
.oz-single-product form.cart button[type='submit'].single_add_to_cart_button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	color: #ffffff;
}
.oz-single-product form.cart .single_add_to_cart_button::before {
	content: "";
	width: 1.2rem;
	height: 1.2rem;
	flex-shrink: 0;
	background-color: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' d='M7 18c-1.1 0-1.99.9-1.99 2S5.9 22 7 22s2-.9 2-2-.9-2-2-2zM1 2v2h2l3.6 7.59-1.35 2.45c-.16.28-.25.61-.25.96 0 1.1.9 2 2 2h12v-2H7.42c-.14 0-.25-.11-.25-.25l.03-.12.9-1.63h7.45c.75 0 1.41-.41 1.75-1.03l3.58-6.49A1.003 1.003 0 0 0 20 4H5.21l-.94-2H1zm16 16c-1.1 0-1.99.9-1.99 2s.89 2 1.99 2 2-.9 2-2-.9-2-2-2z'/%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'%3E%3Cpath fill='%23000' d='M7 18c-1.1 0-1.99.9-1.99 2S5.9 22 7 22s2-.9 2-2-.9-2-2-2zM1 2v2h2l3.6 7.59-1.35 2.45c-.16.28-.25.61-.25.96 0 1.1.9 2 2 2h12v-2H7.42c-.14 0-.25-.11-.25-.25l.03-.12.9-1.63h7.45c.75 0 1.41-.41 1.75-1.03l3.58-6.49A1.003 1.003 0 0 0 20 4H5.21l-.94-2H1zm16 16c-1.1 0-1.99.9-1.99 2s.89 2 1.99 2 2-.9 2-2-.9-2-2-2z'/%3E%3C/svg%3E") center / contain no-repeat;
}

/* ==========================================================================
   BANNER "PRODUCTO" en la ficha (igual al de la tienda)
   ========================================================================== */
.site-main--woo-single .oz-shop-page-banner {
	background-color: #111111;
	background-image: url("/wp-content/uploads/2025/10/paralax_fondo_carpintero.webp");
	background-size: cover;
	background-position: center 25%;
	background-repeat: no-repeat;
	color: #ffffff;
	width: 100%;
	max-width: 100%;
	overflow: hidden;
	box-sizing: border-box;
}

.site-main--woo-single .oz-shop-page-banner__inner {
	max-width: var(--OZ-Container-PC, 1200px);
	margin-inline: auto;
	padding: 3rem clamp(1rem, 6vw, 100px);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	gap: 0.4rem;
	box-sizing: border-box;
}

.site-main--woo-single .oz-shop-page-banner__aside { order: 1; min-width: 0; }
.site-main--woo-single .oz-shop-page-banner__main { order: 2; min-width: 0; }

.site-main--woo-single .oz-shop-page-banner__title {
	color: #ffffff;
	font-weight: 700;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	font-size: clamp(1.5rem, 3vw, 2.1rem);
	margin: 0;
}

.site-main--woo-single .oz-shop-page-banner__crumbs { margin: 0; padding: 0; }

.site-main--woo-single .oz-shop-page-banner__wc-breadcrumb {
	/* crumb actual (texto plano) en naranja; enlaces en blanco */
	color: #f15a22;
	font-weight: 600;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0.25rem 0.35rem;
	margin: 0;
	font-size: 0.875rem;
}

.site-main--woo-single .oz-shop-page-banner__wc-breadcrumb a {
	color: rgba(255, 255, 255, 0.85);
	font-weight: 600;
	text-decoration: none;
}

.site-main--woo-single .oz-shop-page-banner__wc-breadcrumb a:hover {
	color: #ffffff;
	text-decoration: underline;
}

.site-main--woo-single .oz-shop-page-banner__crumb-sep { color: rgba(255, 255, 255, 0.4); }

/* La miga ya está en el banner: ocultar la del resumen para no duplicar */
.oz-single-product .ozc-single-product__breadcrumbs { display: none; }

/* ==========================================================================
   Extras de la ficha: líneas de confianza + métodos de pago
   ========================================================================== */
.oz-single-product .ozc-single-product__summary .oz-sp-trust {
	grid-column: 1 / -1;
	list-style: none;
	margin: 0.5rem 0 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

.oz-single-product .oz-sp-trust__item {
	display: flex;
	align-items: center;
	gap: 0.55rem;
	color: #d1d5db;
	font-size: 0.95rem;
	line-height: 1.4;
}

.oz-single-product .oz-sp-trust__item::before {
	content: "";
	width: 1.15rem;
	height: 1.15rem;
	flex-shrink: 0;
	background-color: #f15a22;
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
}

.oz-single-product .oz-sp-trust__item--ship::before {
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' d='M3 4a1 1 0 0 0-1 1v11a1 1 0 0 0 1 1h1a3 3 0 0 0 6 0h4a3 3 0 0 0 6 0h1a1 1 0 0 0 1-1v-4a1 1 0 0 0-.29-.71l-3-3A1 1 0 0 0 18 8h-2V5a1 1 0 0 0-1-1H3Zm13 6h1.59L20 12.41V13h-4v-3ZM7 17a1 1 0 1 1 0 .01ZM17 17a1 1 0 1 1 0 .01Z'/%3E%3C/svg%3E");
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' d='M3 4a1 1 0 0 0-1 1v11a1 1 0 0 0 1 1h1a3 3 0 0 0 6 0h4a3 3 0 0 0 6 0h1a1 1 0 0 0 1-1v-4a1 1 0 0 0-.29-.71l-3-3A1 1 0 0 0 18 8h-2V5a1 1 0 0 0-1-1H3Zm13 6h1.59L20 12.41V13h-4v-3ZM7 17a1 1 0 1 1 0 .01ZM17 17a1 1 0 1 1 0 .01Z'/%3E%3C/svg%3E");
}

.oz-single-product .oz-sp-trust__item--warranty::before {
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' d='M12 2 4 5v6c0 5 3.4 9.3 8 11 4.6-1.7 8-6 8-11V5l-8-3Zm-1 14-3-3 1.4-1.4L11 13.2l4.6-4.6L17 10l-6 6Z'/%3E%3C/svg%3E");
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' d='M12 2 4 5v6c0 5 3.4 9.3 8 11 4.6-1.7 8-6 8-11V5l-8-3Zm-1 14-3-3 1.4-1.4L11 13.2l4.6-4.6L17 10l-6 6Z'/%3E%3C/svg%3E");
}

.oz-single-product .oz-sp-trust__item--pickup::before {
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' d='M12 2a7 7 0 0 0-7 7c0 5 7 13 7 13s7-8 7-13a7 7 0 0 0-7-7Zm0 9.5A2.5 2.5 0 1 1 12 6a2.5 2.5 0 0 1 0 5.5Z'/%3E%3C/svg%3E");
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' d='M12 2a7 7 0 0 0-7 7c0 5 7 13 7 13s7-8 7-13a7 7 0 0 0-7-7Zm0 9.5A2.5 2.5 0 1 1 12 6a2.5 2.5 0 0 1 0 5.5Z'/%3E%3C/svg%3E");
}

.oz-single-product .ozc-single-product__summary .oz-sp-pagos {
	grid-column: 1 / -1;
	margin-top: 1rem;
}

.oz-single-product .oz-sp-pagos img {
	display: block;
	height: 28px;
	width: auto;
	max-width: 100%;
}

/* ==========================================================================
   Sección "Representamos la familia completa de Marcas Truper"
   ========================================================================== */
.grupesac-familia {
	background: #000000;
	padding: clamp(2.5rem, 6vw, 4rem) clamp(1rem, 6vw, 100px);
	text-align: center;
}
.grupesac-familia__inner { max-width: 1100px; margin: 0 auto; }
.grupesac-familia__title {
	margin: 0 0 0.75rem;
	font-size: clamp(1.4rem, 2.6vw, 1.95rem);
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.02em;
	color: #ffffff;
	line-height: 1.2;
}
.grupesac-familia__title span { color: #f15a22; }
.grupesac-familia__sub {
	margin: 0 auto 2rem;
	max-width: 640px;
	color: #9ca3af;
	font-size: 1rem;
	line-height: 1.6;
}
.grupesac-familia__brands {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: stretch;
	gap: clamp(1rem, 3vw, 2rem);
}
.grupesac-brand {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 200px;
	height: 92px;
	padding: 0 1.5rem;
	border-radius: 16px;
	font-weight: 900;
	font-size: 1.7rem;
	letter-spacing: 0.05em;
	box-sizing: border-box;
}
.grupesac-brand sup { font-size: 0.5em; vertical-align: super; }
.grupesac-brand--truper { background: #ff5a00; color: #111111; }
.grupesac-brand--pretul { background: #f7d022; color: #111111; }
.grupesac-brand--hermex { background: #1a0e0e; color: #e23b3b; border: 1px solid #e23b3b; }

@media (max-width: 600px) {
	.grupesac-brand { min-width: 150px; height: 74px; font-size: 1.35rem; }
}

/* ==========================================================================
   Sección "Categorías por rubro" (4 cards) al final de la ficha
   ========================================================================== */
.gs-rubro { background: #000000; padding: clamp(2rem, 5vw, 3.5rem) 0 0; }
.gs-rubro__title {
	text-align: center; margin: 0 0 2rem;
	font-weight: 800; text-transform: uppercase;
	font-size: clamp(1.4rem, 2.6vw, 1.95rem); letter-spacing: 0.02em; color: #ffffff;
}
.gs-rubro__title span { color: #f15a22; }
.gs-rubro__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 2px; }
.gs-rubro__card {
	position: relative; min-height: 430px; padding: 2.25rem 1.5rem;
	background: #0d0d0d; overflow: hidden;
}
.gs-rubro__info { position: relative; z-index: 2; padding-left: 0.9rem; border-left: 4px solid #f15a22; }
.gs-rubro__name {
	margin: 0 0 0.4rem; color: #ffffff; font-weight: 800;
	text-transform: uppercase; font-size: 1.05rem; line-height: 1.25;
}
.gs-rubro__brand { color: #9ca3af; font-size: 0.85rem; letter-spacing: 0.05em; }
.gs-rubro__media {
	position: absolute; right: -0.5rem; bottom: 0; width: 80%;
	display: flex; align-items: flex-end; justify-content: center;
}
.gs-rubro__media::before {
	content: ""; position: absolute; right: 8%; bottom: 10%;
	width: 60%; aspect-ratio: 1 / 1.15; background: #f15a22; border-radius: 24px; z-index: 1;
}
.gs-rubro__media img {
	position: relative; z-index: 2; width: 100%; height: auto;
	max-height: 300px; object-fit: contain;
}
@media (max-width: 1100px) { .gs-rubro__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px) { .gs-rubro__grid { grid-template-columns: 1fr; } .gs-rubro__card { min-height: 360px; } }

/* ══════════════════════════════════════════════════════════
   FICHA PRODUCTO — ajustes de orden y estilo (réplica imagen 2)
   ══════════════════════════════════════════════════════════ */

/* Sin precio (cotizador) y sin migas en la columna (ya van en el banner) */
.oz-single-product .ozc-single-product__price { display: none; }
.oz-single-product .ozc-single-product__breadcrumbs { display: none; }

/* Etiqueta de categoría sobre el título */
.oz-single-product .ozc-single-product__summary .ozc-single-product__category {
	order: 0;
	display: block;
	grid-column: 1 / -1;
	margin: 0 0 0.4rem;
	font-size: 0.85rem;
	font-weight: 400;
	color: #9aa0a6;
}

/* Orden: ...botones → confianza → etiquetas → métodos de pago */
.oz-single-product .ozc-single-product__summary .oz-sp-trust { order: 5; margin-top: 0.4rem; }
.oz-single-product .ozc-single-product__summary .ozc-single-product__meta { order: 6; margin-top: 0.6rem; }
.oz-single-product .ozc-single-product__summary .oz-sp-pagos { order: 7; margin-top: 0.6rem; }

/* En meta mostrar solo Etiquetas (la categoría ya va arriba; SKU oculto) */
.oz-single-product .ozc-single-product__meta .sku_wrapper,
.oz-single-product .ozc-single-product__meta .posted_in { display: none; }

/* Ficha (izquierda) + Consultar (derecha), mismo renglón */
.oz-single-product .ozc-single-product__summary .oz-wc-ficha-tecnica,
.oz-single-product .entry-summary .oz-wc-ficha-tecnica {
	order: 2;
	grid-column: 1;
}
.oz-single-product .ozc-single-product__summary .ozc-single-product__wa {
	order: 3;
	grid-column: 2;
}

/* Añadir al carrito tipo píldora */
.oz-single-product form.cart .single_add_to_cart_button,
.oz-single-product form.cart .button.alt,
.oz-single-product form.cart button[type='submit'].single_add_to_cart_button {
	border-radius: 999px;
}

/* Botones Ficha + Consultar: outline coherente en oscuro, píldora */
.oz-single-product .ozc-single-product__wa .ozc-product-card__wa-btn,
body.single-product .oz-single-product .oz-wc-ficha-tecnica .oz-wc-ficha-tecnica__btn.button {
	background: transparent;
	border: 1px solid rgba(255, 255, 255, 0.22);
	border-radius: 999px;
	color: #ffffff;
}
.oz-single-product .ozc-single-product__wa .ozc-product-card__wa-btn:hover,
.oz-single-product .ozc-single-product__wa .ozc-product-card__wa-btn:focus-visible,
body.single-product .oz-single-product .oz-wc-ficha-tecnica .oz-wc-ficha-tecnica__btn.button:hover,
body.single-product .oz-single-product .oz-wc-ficha-tecnica .oz-wc-ficha-tecnica__btn.button:focus-visible {
	background: rgba(255, 255, 255, 0.07);
	border-color: rgba(255, 255, 255, 0.40);
	color: #ffffff;
}

/* Icono de WhatsApp en el botón Consultar */
.oz-single-product .ozc-single-product__wa .ozc-product-card__wa-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
}
.oz-single-product .ozc-single-product__wa .ozc-product-card__wa-btn::before {
	content: "";
	width: 16px;
	height: 16px;
	flex-shrink: 0;
	background-color: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12.04 2c-5.46 0-9.9 4.44-9.9 9.9 0 1.74.46 3.44 1.32 4.94L2 22l5.3-1.38a9.9 9.9 0 0 0 4.74 1.2c5.46 0 9.9-4.44 9.9-9.9S17.5 2 12.04 2Zm5.8 14.16c-.24.68-1.4 1.3-1.94 1.34-.5.04-1.12.2-3.78-.8-3.18-1.26-5.2-4.5-5.36-4.7-.16-.2-1.28-1.7-1.28-3.24s.8-2.3 1.1-2.62c.28-.3.62-.38.82-.38.2 0 .4.01.58.01.18.01.44-.07.68.52.24.6.82 2.06.9 2.2.08.16.12.34.02.54-.1.2-.16.34-.3.52-.16.18-.32.4-.46.54-.16.16-.32.34-.14.66.18.32.8 1.32 1.72 2.14 1.18 1.06 2.18 1.38 2.5 1.54.32.16.5.14.68-.08.2-.22.78-.9.98-1.22.2-.32.4-.26.68-.16.28.1 1.76.84 2.06.99.3.16.5.24.58.36.08.14.08.78-.16 1.46Z'/%3E%3C/svg%3E") no-repeat center / contain;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12.04 2c-5.46 0-9.9 4.44-9.9 9.9 0 1.74.46 3.44 1.32 4.94L2 22l5.3-1.38a9.9 9.9 0 0 0 4.74 1.2c5.46 0 9.9-4.44 9.9-9.9S17.5 2 12.04 2Zm5.8 14.16c-.24.68-1.4 1.3-1.94 1.34-.5.04-1.12.2-3.78-.8-3.18-1.26-5.2-4.5-5.36-4.7-.16-.2-1.28-1.7-1.28-3.24s.8-2.3 1.1-2.62c.28-.3.62-.38.82-.38.2 0 .4.01.58.01.18.01.44-.07.68.52.24.6.82 2.06.9 2.2.08.16.12.34.02.54-.1.2-.16.34-.3.52-.16.18-.32.4-.46.54-.16.16-.32.34-.14.66.18.32.8 1.32 1.72 2.14 1.18 1.06 2.18 1.38 2.5 1.54.32.16.5.14.68-.08.2-.22.78-.9.98-1.22.2-.32.4-.26.68-.16.28.1 1.76.84 2.06.99.3.16.5.24.58.36.08.14.08.78-.16 1.46Z'/%3E%3C/svg%3E") no-repeat center / contain;
}

/* Tabs (sección inferior): mayúsculas y bold como la captura 3 */
.oz-single-product .woocommerce-tabs ul.tabs li a {
	text-transform: uppercase;
	font-weight: 800;
	font-size: 1.02rem;
	letter-spacing: 0.01em;
}

/* ── Tabs como la captura: centrados, separados y descripción sin caja ── */
.oz-single-product .woocommerce-tabs ul.tabs {
	justify-content: center;
	gap: 0 clamp(2rem, 6vw, 5rem);
}
.oz-single-product .woocommerce-tabs .woocommerce-Tabs-panel {
	background: transparent;
	border: 0;
	border-radius: 0;
	padding: 1.25rem 0 0;
}

/* ── Quitar la caja blanca del tab activo (estilo WooCommerce por defecto) ── */
.oz-single-product .woocommerce-tabs ul.tabs li,
.oz-single-product .woocommerce-tabs ul.tabs li.active {
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
}
.oz-single-product .woocommerce-tabs ul.tabs li::before,
.oz-single-product .woocommerce-tabs ul.tabs li::after {
	content: none !important;
	display: none !important;
	border: 0 !important;
	box-shadow: none !important;
}
.oz-single-product .woocommerce-tabs ul.tabs li a {
	background: transparent !important;
}
.oz-single-product .woocommerce-tabs ul.tabs li.active a {
	color: #f15a22 !important;
	border-bottom-color: #f15a22 !important;
}

/* Tabla de "Información adicional" en oscuro (sin fondos/bordes claros) */
.oz-single-product .woocommerce-tabs .shop_attributes,
.oz-single-product .woocommerce-tabs .shop_attributes th,
.oz-single-product .woocommerce-tabs .shop_attributes td {
	background: transparent !important;
	border-color: rgba(255, 255, 255, 0.12) !important;
	color: #d1d5db;
}
.oz-single-product .woocommerce-tabs .shop_attributes th { color: #ffffff; }

/* Ocultar el título duplicado dentro del panel (ya está en la pestaña) */
.oz-single-product .woocommerce-tabs #tab-additional_information > h2 {
	display: none;
}

/* ══════════════════════════════════════════════════════════
   Slider "Productos relacionados" (sin header): el plugin OZ-Sliders
   agrupa las flechas arriba-derecha con !important (espec. 0,5,0).
   Aquí las mandamos UNA A CADA LADO, naranjas, centradas verticalmente,
   con +clases de especificidad para vencer al plugin.
   ══════════════════════════════════════════════════════════ */
html body .ozs.oz-related-slider.ozs--nav-outside.ozs--wc-products {
	padding-top: 0 !important;
	padding-left: 60px !important;   /* hueco lateral para la flecha izquierda */
	padding-right: 60px !important;  /* hueco lateral para la flecha derecha */
	overflow: visible !important;
	box-sizing: border-box !important;
}
@media (max-width: 600px) {
	html body .ozs.oz-related-slider.ozs--nav-outside.ozs--wc-products {
		padding-left: 46px !important;
		padding-right: 46px !important;
	}
}
/* Contenedor del nav: cubrir todo el slider en vez de la caja arriba-derecha */
html body .ozs.oz-related-slider.ozs--nav-outside.ozs--wc-products > .ozs__nav {
	position: absolute !important;
	inset: 0 !important;
	top: 0 !important;
	right: 0 !important;
	left: 0 !important;
	bottom: 0 !important;
	display: block !important;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	pointer-events: none !important;
	z-index: 6 !important;
}
/* Botones: absolutos, centrados vertical, uno a cada lado, naranjas */
html body .ozs.oz-related-slider.ozs--nav-outside.ozs--wc-products > .ozs__nav .ozs__nav-btn {
	position: absolute !important;
	top: 50% !important;
	transform: translateY(-50%) !important;
	width: 44px !important;
	height: 44px !important;
	border: none !important;
	border-radius: 10px !important;
	background: #f15a22 !important;
	box-shadow: 0 6px 16px rgba(241, 90, 34, 0.30) !important;
	cursor: pointer;
	pointer-events: auto !important;
	z-index: 7 !important;
}
html body .ozs.oz-related-slider.ozs--nav-outside.ozs--wc-products > .ozs__nav .ozs__nav-btn:hover {
	background: #d94a16 !important;
}
html body .ozs.oz-related-slider.ozs--nav-outside.ozs--wc-products > .ozs__nav .ozs__nav-btn--prev {
	left: 8px !important;
	right: auto !important;
}
html body .ozs.oz-related-slider.ozs--nav-outside.ozs--wc-products > .ozs__nav .ozs__nav-btn--next {
	right: 8px !important;
	left: auto !important;
}
/* Icono: chevron blanco en la dirección correcta (← prev / → next) */
html body .ozs.oz-related-slider.ozs--nav-outside.ozs--wc-products > .ozs__nav .ozs__nav-btn::before {
	content: '' !important;
	display: block !important;
	width: 11px !important;
	height: 11px !important;
	margin: 0 auto !important;
	background: none !important;
	background-image: none !important;
	border: 0 !important;
	border-top: 2.5px solid #ffffff !important;
	border-right: 2.5px solid #ffffff !important;
}
html body .ozs.oz-related-slider.ozs--nav-outside.ozs--wc-products > .ozs__nav .ozs__nav-btn--prev::before {
	transform: rotate(-135deg) !important;
}
html body .ozs.oz-related-slider.ozs--nav-outside.ozs--wc-products > .ozs__nav .ozs__nav-btn--next::before {
	transform: rotate(45deg) !important;
}
/* Título "PRODUCTOS RELACIONADOS" centrado naranja */
.oz-related-title {
	text-align: center;
	color: #f15a22;
	text-transform: uppercase;
	font-weight: 800;
	font-size: clamp(1.4rem, 3vw, 2rem);
	letter-spacing: 0.02em;
	line-height: 1.1;
	margin: 2.2rem 0 1.4rem;
}

/* ── Responsive del slider de relacionados ──────────────────
   Columnas por CSS (!important) para que la PRIMERA carga sea
   correcta sin esperar al JS (que en móvil mide mal el 1er paint).
   El scroll del slider mide el ancho real, así que esto no lo rompe.
   ─────────────────────────────────────────────────────────── */
@media (max-width: 1200px) {
	html body .ozs.oz-related-slider.ozs--nav-outside.ozs--wc-products { --ozs-cols: 3 !important; }
}
@media (max-width: 900px) {
	html body .ozs.oz-related-slider.ozs--nav-outside.ozs--wc-products { --ozs-cols: 2 !important; --ozs-gap: 12px !important; }
}
@media (max-width: 600px) {
	html body .ozs.oz-related-slider.ozs--nav-outside.ozs--wc-products {
		--ozs-cols: 1 !important;
		--ozs-gap: 10px !important;
		padding-left: 44px !important;
		padding-right: 44px !important;
	}
	html body .ozs.oz-related-slider.ozs--nav-outside.ozs--wc-products > .ozs__nav .ozs__nav-btn {
		width: 38px !important;
		height: 38px !important;
	}
	html body .ozs.oz-related-slider.ozs--nav-outside.ozs--wc-products > .ozs__nav .ozs__nav-btn--prev { left: 3px !important; right: auto !important; }
	html body .ozs.oz-related-slider.ozs--nav-outside.ozs--wc-products > .ozs__nav .ozs__nav-btn--next { right: 3px !important; left: auto !important; }
	/* Título en una línea más compacta */
	.oz-related-title { font-size: 1.35rem; margin: 1.6rem 0 1rem; }
}

/* ============================================================
   FICHA DE PRODUCTO EN CLARO — fondo blanco + imagen cuadrada fija.
   Convierte el tema oscuro de la ficha a claro (acento naranja #f15a22).
   Bloque al final: gana por orden + !important. Scoped a single-product.
   ============================================================ */

/* —— Fondo blanco —— */
body.single-product,
body.single-product .site,
body.single-product .site-main.site-main--woo-single {
    background: #ffffff !important;
}

/* —— Imagen principal: CUADRADA y consistente en todos los productos.
   En PC (galería hasta 940px) queda ~900×900; object-fit:contain centra la
   imagen sin estirarla, sea cual sea su tamaño original. —— */
body.single-product .oz-single-product .woocommerce-product-gallery {
    border-color: #e5e7eb !important;
}
body.single-product .oz-single-product .woocommerce-product-gallery__image img {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 1 / 1 !important;
    object-fit: contain !important;
    max-height: 560px;
}

/* —— Títulos y precio en oscuro —— */
body.single-product .oz-single-product .product_title,
body.single-product .oz-single-product .price,
body.single-product .oz-single-product .woocommerce-tabs .woocommerce-Tabs-panel > h2,
body.single-product .oz-single-product .woocommerce-tabs .woocommerce-Tabs-panel h3,
body.single-product .oz-single-product .woocommerce-tabs .woocommerce-Tabs-panel h4,
body.single-product .oz-single-product .related > h2,
body.single-product .oz-single-product .upsells > h2 {
    color: #1f2937 !important;
}

/* —— Texto de cuerpo en gris oscuro —— */
body.single-product .oz-single-product .woocommerce-product-details__short-description,
body.single-product .oz-single-product .woocommerce-product-details__short-description ul,
body.single-product .oz-single-product .product_meta,
body.single-product .oz-single-product .woocommerce-tabs .woocommerce-Tabs-panel,
body.single-product .oz-single-product .woocommerce-tabs .woocommerce-Tabs-panel :is(table.woocommerce-product-attributes, table.shop_attributes) td {
    color: #4b5563 !important;
}
body.single-product .oz-single-product .woocommerce-tabs .woocommerce-Tabs-panel strong,
body.single-product .oz-single-product .woocommerce-tabs .woocommerce-Tabs-panel b,
body.single-product .oz-single-product .woocommerce-tabs .woocommerce-Tabs-panel :is(table.woocommerce-product-attributes, table.shop_attributes) th {
    color: #1f2937 !important;
}

/* —— Líneas de confianza: texto oscuro (íconos naranja se mantienen) —— */
body.single-product .oz-single-product .oz-sp-trust__item {
    color: #374151 !important;
}

/* —— Selector de cantidad: claro, borde NARANJA y misma curva (píldora)
   que los demás botones del producto —— */
/* El contenedor .quantity NO debe tener borde/fondo propios (WooCommerce o el
   tema le ponían un recuadro negro). Solo el stepper interno lleva el borde. */
body.single-product .oz-single-product form.cart .quantity,
body.single-product .oz-single-product .ozc-single-product__cta form.cart .quantity {
    border: 0 !important;
    background: transparent !important;
    border-radius: 999px !important;
    padding: 0 !important;
    box-shadow: none !important;
}
body.single-product .oz-single-product form.cart .quantity .oz-qty-stepper {
    background: #ffffff !important;
    border: 1px solid #f15a22 !important;
    border-radius: 999px !important;
    overflow: hidden !important;
}
body.single-product .oz-single-product form.cart .quantity .oz-qty-stepper__btn,
body.single-product .oz-single-product form.cart .quantity .oz-qty-stepper__input {
    color: #1f2937 !important;
}
/* Los botones +/- del stepper toman el naranja (acento) */
body.single-product .oz-single-product form.cart .quantity .oz-qty-stepper__btn {
    color: #f15a22 !important;
}
body.single-product .oz-single-product form.cart .quantity .oz-qty-stepper__btn:hover {
    background: rgba(241, 90, 34, 0.10) !important;
    color: #d94a16 !important;
}

/* —— Pestañas: panel claro, inactivas gris (activa naranja se mantiene) —— */
body.single-product .oz-single-product .woocommerce-tabs ul.tabs { border-bottom-color: #e5e7eb !important; }
body.single-product .oz-single-product .woocommerce-tabs ul.tabs li a { color: #6b7280 !important; }
body.single-product .oz-single-product .woocommerce-tabs .woocommerce-Tabs-panel {
    background: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    color: #4b5563 !important;
}

/* —— Galería: área CUADRADA real aunque FlexSlider fije medidas inline
   (productos con imagen pequeña, p. ej. 285px, quedaban anchos-bajos). —— */
@media (min-width: 992px) {
    body.single-product .oz-single-product .woocommerce-product-gallery__wrapper,
    body.single-product .oz-single-product .oz-wc-gallery .flex-viewport {
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 1 / 1 !important;
        max-height: 560px !important;
        overflow: hidden !important;
    }
    body.single-product .oz-single-product .woocommerce-product-gallery__image,
    body.single-product .oz-single-product .flex-viewport > .woocommerce-product-gallery__wrapper > .woocommerce-product-gallery__image {
        width: 100% !important;
        height: 100% !important;
    }
    body.single-product .oz-single-product .woocommerce-product-gallery__image img,
    body.single-product .oz-single-product .woocommerce-product-gallery img.wp-post-image {
        width: 100% !important;
        height: 100% !important;
        aspect-ratio: auto !important;
        object-fit: contain !important;
        max-height: 560px !important;
    }
}

/* —— Pestaña Descripción —— */
/* Más padding lateral (no pegado al borde) */
body.single-product .oz-single-product .woocommerce-tabs .woocommerce-Tabs-panel {
    padding: 1.5rem 2rem !important;
}
/* El texto trae saltos de línea <br> manuales que lo dejan en columna angosta:
   se ocultan para que fluya y use todo el ancho (el espacio entre líneas del
   código fuente se conserva como espacio normal). */
body.single-product .oz-single-product .woocommerce-tabs .woocommerce-Tabs-panel--description br {
    display: none !important;
}

/* Móvil: el selector de cantidad ajusta su ancho al contenido (− 1 +); antes el
   borde se estiraba a todo el ancho con el contenido pegado a la izquierda. */
@media (max-width: 991px) {
    body.single-product .oz-single-product form.cart .quantity,
    body.single-product .oz-single-product form.cart .quantity .oz-qty-stepper {
        width: auto !important;
        max-width: max-content !important;
    }
}

/* ============================================================
   FICHA EN CLARO — AJUSTES FINALES (igualar referencia imagen 2)
   1) Quitar el banner negro "PRODUCTO": la miga va arriba sobre
      fondo claro, como en la referencia (no hay franja oscura).
   2) Botones secundarios (Ficha técnica / Consultar) visibles
      en claro: outline naranja.
   3) Título "Productos relacionados" oscuro y a la izquierda.
   4) Miniaturas de galería en claro.
   Bloque al final: gana por orden + !important.
   ============================================================ */

/* —— 1) Ocultar banner "PRODUCTO" y mostrar la miga del resumen —— */
body.single-product .site-main--woo-single > .oz-shop-page-banner {
    display: none !important;
}

/* Reactivar la miga dentro del resumen (estaba oculta porque iba en el banner) */
body.single-product .oz-single-product .ozc-single-product__breadcrumbs {
    display: block !important;
    order: -1;
    grid-column: 1 / -1;
    margin: 0 0 0.75rem !important;
    font-size: 0.85rem;
    color: #6b7280;
}
body.single-product .oz-single-product .ozc-single-product__breadcrumbs .woocommerce-breadcrumb {
    color: #6b7280;
    font-size: 0.85rem;
    font-weight: 500;
}
body.single-product .oz-single-product .ozc-single-product__breadcrumbs .woocommerce-breadcrumb a {
    color: #6b7280;
    text-decoration: none;
}
body.single-product .oz-single-product .ozc-single-product__breadcrumbs .woocommerce-breadcrumb a:hover {
    color: #f15a22;
}

/* Quitar el espacio extra superior que dejaba el banner */
body.single-product .oz-single-product {
    padding-top: clamp(1.25rem, 3vw, 28px);
}

/* —— 2) Botones secundarios (Ficha técnica / Consultar por WhatsApp):
   outline naranja legible sobre blanco (antes blanco sobre blanco) —— */
body.single-product .oz-single-product .ozc-single-product__wa .ozc-product-card__wa-btn,
body.single-product .oz-single-product .oz-wc-ficha-tecnica .oz-wc-ficha-tecnica__btn.button {
    background: #ffffff !important;
    border: 1px solid #f15a22 !important;
    color: #f15a22 !important;
}
body.single-product .oz-single-product .ozc-single-product__wa .ozc-product-card__wa-btn:hover,
body.single-product .oz-single-product .ozc-single-product__wa .ozc-product-card__wa-btn:focus-visible,
body.single-product .oz-single-product .oz-wc-ficha-tecnica .oz-wc-ficha-tecnica__btn.button:hover,
body.single-product .oz-single-product .oz-wc-ficha-tecnica .oz-wc-ficha-tecnica__btn.button:focus-visible {
    background: rgba(241, 90, 34, 0.08) !important;
    border-color: #f15a22 !important;
    color: #d94a16 !important;
}

/* —— 3) Título "Productos relacionados": oscuro y alineado a la izquierda —— */
.oz-related-title {
    text-align: left !important;
    color: #1f2937 !important;
}

/* —— 4) Miniaturas de galería (FlexSlider) en claro —— */
body.single-product .oz-single-product .flex-control-thumbs img {
    border: 1px solid #e5e7eb !important;
    background: #ffffff;
}
body.single-product .oz-single-product .flex-control-thumbs li:hover img,
body.single-product .oz-single-product .flex-control-thumbs img.flex-active {
    border-color: #f15a22 !important;
    box-shadow: 0 0 0 1px rgba(241, 90, 34, 0.2) !important;
}

/* —— Tabla de especificaciones: filas con cebra suave (legibilidad en claro) —— */
body.single-product .oz-single-product .woocommerce-tabs .shop_attributes,
body.single-product .oz-single-product .woocommerce-tabs .shop_attributes th,
body.single-product .oz-single-product .woocommerce-tabs .shop_attributes td {
    border-color: #e5e7eb !important;
}
body.single-product .oz-single-product .woocommerce-tabs .shop_attributes tr:nth-child(even) {
    background: #f9fafb !important;
}

/* —— Fila de confianza (Envíos / Garantía / Recoger): horizontal con
   separadores como la referencia. En móvil vuelve a columna. —— */
@media (min-width: 768px) {
    body.single-product .oz-single-product .ozc-single-product__summary .oz-sp-trust {
        flex-direction: row !important;
        flex-wrap: wrap;
        align-items: center;
        gap: 0 1.25rem;
        margin-top: 0.85rem;
        padding-top: 0.85rem;
        border-top: 1px solid #e5e7eb;
    }
    body.single-product .oz-single-product .oz-sp-trust__item + .oz-sp-trust__item {
        padding-left: 1.25rem;
        border-left: 1px solid #e5e7eb;
    }
    body.single-product .oz-single-product .oz-sp-trust__item {
        font-size: 0.85rem;
    }
}

/* ══════════════════════════════════════════════════════════
   Slider relacionados — LOOP infinito SIN clones asomando.
   El loop crea clones; como este slider tiene padding lateral para
   las flechas (.ozs--nav-outside) y el viewport queda overflow:visible,
   los clones asomaban por los lados. Recortamos el viewport en horizontal
   con `clip` (no crea contenedor de scroll → NO rompe el scrollLeft/
   scrollTo del track, que es su hijo). En vertical queda visible para no
   cortar la sombra del hover. overflow-clip-margin:0 = recorte exacto.
   ══════════════════════════════════════════════════════════ */
html body .ozs.oz-related-slider.ozs--nav-outside.ozs--wc-products .ozs__viewport {
    overflow-x: clip !important;
    overflow-y: visible !important;
    overflow-clip-margin: 0 !important;
}

/* ══════════════════════════════════════════════════════════
   MÓVIL — Compactar el bloque de compra (cantidad / carrito /
   WhatsApp) que quedaba muy separado. Una sola columna y espacios
   parejos entre cada elemento.
   ══════════════════════════════════════════════════════════ */
@media (max-width: 767px) {
    /* Resumen en una sola columna: nada de hueco al lado del WhatsApp */
    body.single-product .oz-single-product .ozc-single-product__summary {
        grid-template-columns: 1fr !important;
    }
    body.single-product .oz-single-product .ozc-single-product__summary > * {
        grid-column: 1 / -1 !important;
    }

    /* Quitar huecos: el excerpt (bullets) no añade padding inferior grande
       y el form del carrito no suma su propio margin-top encima del __cta. */
    body.single-product .oz-single-product .ozc-single-product__excerpt {
        padding-bottom: 0 !important;
        margin-bottom: 0 !important;
    }
    body.single-product .oz-single-product .ozc-single-product__cta {
        margin-top: 0.75rem !important;
    }
    body.single-product .oz-single-product .ozc-single-product__cta form.cart,
    body.single-product .oz-single-product .ozc-single-product__summary form.cart {
        margin: 0 !important;
    }

    /* Espacios verticales parejos y compactos entre los bloques de compra */
    body.single-product .oz-single-product .ozc-single-product__summary .ozc-single-product__wa,
    body.single-product .oz-single-product .ozc-single-product__summary .oz-wc-ficha-tecnica {
        margin-top: 0.6rem !important;
    }
    body.single-product .oz-single-product .ozc-single-product__summary .oz-sp-trust {
        margin-top: 0.85rem !important;
        padding-top: 0.85rem !important;
    }

    /* El form (cantidad + carrito) apilado con poco espacio entre sus partes */
    body.single-product .oz-single-product .ozc-single-product__cta form.cart:not(.variations_form):not(.grouped_form),
    body.single-product .oz-single-product .ozc-single-product__cta form.cart:not(.grouped_form) > div:has(.quantity):has(.single_add_to_cart_button) {
        gap: 0.6rem !important;
    }

    /* La cantidad NO a ancho completo: ancho según su contenido (− 1 +) */
    body.single-product .oz-single-product form.cart .quantity,
    body.single-product .oz-single-product form.cart .quantity .oz-qty-stepper {
        width: auto !important;
        max-width: max-content !important;
        align-self: flex-start !important;
    }
}
