/* Ficha de producto 2.1: composición centrada y compra variable legible. */
.apn-store-main { max-width: 1460px; padding-top: 28px; }
.apn-product-breadcrumbs { max-width: 1300px; margin: 0 auto 20px; }
.apn-product-breadcrumbs .woocommerce-breadcrumb { margin: 0; color: #7b867e; font-size: 11px; }
.apn-product-breadcrumbs .woocommerce-breadcrumb a { color: #5e7164; }

.woocommerce div.product {
	grid-template-columns: minmax(0, 680px) minmax(360px, 470px);
	justify-content: center;
	align-items: start;
	gap: clamp(42px, 7vw, 112px);
	max-width: 1300px;
}

.woocommerce div.product div.images.woocommerce-product-gallery {
	display: grid;
	grid-template-columns: 72px minmax(0, 1fr);
	gap: 13px;
	width: 100%;
}

.woocommerce div.product div.images .woocommerce-product-gallery__wrapper {
	grid-column: 2;
	grid-row: 1;
}

/* Con una sola imagen no se reserva una columna vacía para miniaturas. */
.woocommerce div.product div.images.woocommerce-product-gallery:not(:has(.flex-control-thumbs)) {
	display: block;
}

.woocommerce div.product div.images.woocommerce-product-gallery:not(:has(.flex-control-thumbs)) .woocommerce-product-gallery__wrapper {
	display: block;
}

.woocommerce div.product div.images.woocommerce-product-gallery:has(.flex-control-thumbs li:only-child) {
	display: block;
}

.woocommerce div.product div.images.woocommerce-product-gallery:has(.flex-control-thumbs li:only-child) .woocommerce-product-gallery__wrapper {
	display: block;
}

.woocommerce div.product div.images.woocommerce-product-gallery:has(.flex-control-thumbs li:only-child) .flex-control-thumbs {
	display: none;
}

.woocommerce div.product div.images .flex-control-thumbs {
	grid-column: 1;
	grid-row: 1;
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	gap: 9px;
	max-height: 560px;
	margin: 0;
	overflow-y: auto;
	scrollbar-width: thin;
}

.woocommerce div.product div.images .flex-control-thumbs li {
	flex: 0 0 63px;
	width: 63px;
	margin: 0;
	border: 1px solid var(--apn-line);
	border-radius: 3px;
	background: #f7f8f5;
	overflow: hidden;
}

.woocommerce div.product div.images .flex-control-thumbs img {
	width: 100%;
	height: 61px;
	object-fit: contain;
	opacity: .72;
}

.woocommerce div.product div.images .flex-control-thumbs img.flex-active,
.woocommerce div.product div.images .flex-control-thumbs li:hover img { opacity: 1; }

.woocommerce div.product .woocommerce-product-gallery__image {
	min-height: 570px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-color: #e8ede7;
	background: #fafbf9;
}

.woocommerce div.product .woocommerce-product-gallery__image img {
	width: 100%;
	max-height: 640px;
	padding: 20px;
	object-fit: contain;
}

.woocommerce div.product .summary { max-width: 470px; padding-top: 15px; }
.apn-summary-context { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; min-height: 21px; }
.apn-summary-context strong { color: var(--apn-green); font-size: 11px; font-weight: 800; letter-spacing: .035em; text-transform: uppercase; }
.apn-summary-context span { padding-left: 9px; border-left: 1px solid var(--apn-line); color: #718076; font-size: 10px; }
.woocommerce div.product .product_title { margin-top: 7px; font-size: clamp(33px, 3.2vw, 47px); line-height: 1.04; }
.woocommerce div.product .woocommerce-product-rating { min-height: 24px; margin-bottom: 19px; }
.woocommerce div.product .woocommerce-review-link { color: var(--apn-muted); font-size: 11px; }
.woocommerce div.product p.price,
.woocommerce div.product span.price { margin-bottom: 20px; font-size: 27px; }
.woocommerce div.product .woocommerce-product-details__short-description { margin: 0 0 21px; padding: 15px 0; border-top: 1px solid var(--apn-line); border-bottom: 1px solid var(--apn-line); color: #526056; font-size: 13px; line-height: 1.65; }
.woocommerce div.product .woocommerce-product-details__short-description p { margin: 0; }

.apn-variation-hint { display: grid; gap: 4px; margin: 0 0 15px; padding: 13px 14px; border-left: 3px solid var(--apn-orange); background: #f9f4ef; }
.apn-variation-hint strong { color: var(--apn-ink); font-size: 11px; }
.apn-variation-hint span { color: #627067; font-size: 11px; line-height: 1.45; }
.woocommerce div.product form.cart { display: block; margin: 0 0 16px; }
.woocommerce div.product form.variations_form.cart { padding: 18px; border: 1px solid var(--apn-line); border-radius: 4px; background: #fff; }
.woocommerce div.product form.cart table.variations { margin: 0 0 14px; border: 0; }
.woocommerce div.product form.cart table.variations th,
.woocommerce div.product form.cart table.variations td { display: block; width: 100%; padding: 0; text-align: left; }
.woocommerce div.product form.cart table.variations th { padding: 0 0 7px; color: var(--apn-ink); font-size: 11px; }
.woocommerce div.product form.cart table.variations td { position: relative; padding: 0 0 14px; }
.woocommerce div.product form.cart table.variations select { width: 100%; min-height: 44px; padding: 0 34px 0 12px; border: 1px solid #cbd4cb; border-radius: 3px; background: #fbfcfa; color: var(--apn-ink); font: 600 12px "Manrope", sans-serif; }
.woocommerce div.product form.cart .reset_variations { display: inline-block; margin-top: 8px; color: var(--apn-green); font-size: 10px; font-weight: 700; }
.woocommerce div.product .single_variation_wrap { padding-top: 3px; }
.woocommerce div.product .woocommerce-variation-price { margin: 1px 0 10px; }
.woocommerce div.product .woocommerce-variation-price .price { margin: 0; font-size: 22px; }
.woocommerce div.product .woocommerce-variation-description { margin-bottom: 10px; color: var(--apn-muted); font-size: 11px; line-height: 1.5; }
.woocommerce div.product .woocommerce-variation-add-to-cart { display: flex; align-items: stretch; gap: 10px; }
.woocommerce div.product .woocommerce-variation-add-to-cart .quantity { margin: 0; }
.woocommerce div.product form.cart:not(.variations_form) { display: flex; align-items: stretch; gap: 10px; }
.woocommerce div.product form.cart .single_add_to_cart_button { min-height: 49px; }
.woocommerce div.product .single_variation_wrap .single_add_to_cart_button { flex: 1; }
.woocommerce div.product .stock { margin: 0 0 11px; }

.apn-purchase-notes { margin-top: 20px; }
.apn-purchase-notes p { grid-template-columns: 138px 1fr; padding: 13px 0; }
.woocommerce div.product .product_meta { margin-top: 18px; padding-top: 16px; border-top: 1px solid var(--apn-line); }
.woocommerce div.product > .woocommerce-tabs { max-width: 1300px; margin-top: 72px; }
.woocommerce div.product > .related.products,
.woocommerce div.product > .upsells.products { max-width: 1300px; margin-top: 70px; }

.apn-demo-product-note { margin: 0 0 14px; padding: 9px 11px; border: 1px dashed #d58968; border-radius: 3px; background: #fffaf7; color: #94523a; font-size: 10px; font-weight: 700; line-height: 1.45; }

@media (max-width: 850px) {
	.apn-product-breadcrumbs { margin-bottom: 15px; }
	.woocommerce div.product { grid-template-columns: minmax(0, 1fr); max-width: 680px; }
	.woocommerce div.product .summary { max-width: none; }
}

@media (max-width: 560px) {
	.woocommerce div.product div.images.woocommerce-product-gallery { grid-template-columns: 1fr; }
	.woocommerce div.product div.images .woocommerce-product-gallery__wrapper { grid-column: 1; grid-row: 1; }
	.woocommerce div.product div.images .flex-control-thumbs { grid-column: 1; grid-row: 2; flex-direction: row; max-width: 100%; max-height: none; overflow-x: auto; overflow-y: hidden; }
	.woocommerce div.product .woocommerce-product-gallery__image { min-height: 335px; }
	.woocommerce div.product div.images .flex-control-thumbs li { flex-basis: 54px; width: 54px; }
	.woocommerce div.product div.images .flex-control-thumbs img { height: 52px; }
	.woocommerce div.product form.variations_form.cart { padding: 15px; }
	.woocommerce div.product .woocommerce-variation-add-to-cart { flex-wrap: wrap; }
	.woocommerce div.product .woocommerce-variation-add-to-cart .single_add_to_cart_button { width: calc(100% - 60px); }
}
