/* Ficha de producto: disposición y módulos relacionados, sin modificar los
   controles de compra, envío, variantes o galería nativos. */
#single-product .ih-product-layout {
	display: grid;
	grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr);
	grid-template-areas:
		"gallery info"
		"description info";
	grid-template-rows: max-content 1fr;
	column-gap: clamp(1.25rem, 3vw, 3rem);
	align-items: start;
}

#single-product .ih-product-gallery { grid-area: gallery; min-width: 0; margin-bottom: .75rem !important; }
#single-product .ih-product-info { grid-area: info; min-width: 0; }
#single-product .ih-product-description { grid-area: description; min-width: 0; }
#single-product .ih-product-description [data-store^="product-description-"] {
	width: 100% !important;
	max-width: none;
	margin-top: .25rem;
}
#single-product .ih-product-layout .product-images { width: 100%; }
#single-product .ih-product-secondary {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(190px, .85fr);
	gap: 1rem;
	margin: .85rem 0 1rem;
}
#single-product .ih-product-secondary-column { min-width: 0; }
#single-product .ih-product-secondary-trust { font-size: .9rem; }

.ih-product-discovery {
	min-width: 0;
	margin-top: .75rem;
}
.ih-product-discovery #related-products,
.ih-product-discovery #complementary-products,
.ih-product-discovery > .recently-viewed-section {
	min-width: 0;
	padding-top: .75rem;
	padding-bottom: 1rem;
}
.ih-product-discovery #related-products h2,
.ih-product-discovery #complementary-products h2,
.ih-product-discovery > .recently-viewed-section h2 {
	margin-bottom: .75rem;
	font-size: 1.2rem;
	line-height: 1.25;
}
.ih-product-discovery #related-products .container,
.ih-product-discovery #complementary-products .container,
.ih-product-discovery .recently-viewed-section .container {
	width: 100%;
	max-width: none;
	padding-right: 0;
	padding-left: 0;
}
.ih-product-discovery #related-products .product-item,
.ih-product-discovery #complementary-products .product-item,
.ih-product-discovery #related-products .item-product,
.ih-product-discovery #complementary-products .item-product {
	display: flex;
	flex-direction: column;
	width: 100%;
	max-width: 260px;
	min-width: 0;
	margin: 0;
}
.ih-product-discovery #related-products .swiper-slide.product-item,
.ih-product-discovery #complementary-products .swiper-slide.product-item,
.ih-product-discovery #related-products .swiper-slide.item-product,
.ih-product-discovery #complementary-products .swiper-slide.item-product {
	flex: 0 0 260px;
	width: 260px;
	max-width: 260px;
}
.ih-product-discovery #related-products .product-item-image-container,
.ih-product-discovery #complementary-products .product-item-image-container,
.ih-product-discovery #related-products .item-product-image-container,
.ih-product-discovery #complementary-products .item-product-image-container {
	width: 100%;
	height: auto;
	padding-top: 0;
	aspect-ratio: 1 / 1;
}
.ih-product-discovery #related-products .product-item-image,
.ih-product-discovery #complementary-products .product-item-image,
.ih-product-discovery #related-products .item-product-image,
.ih-product-discovery #complementary-products .item-product-image {
	object-fit: cover;
	object-position: center;
}
.ih-product-discovery #related-products .grid-1 .product-item-information,
.ih-product-discovery #complementary-products .grid-1 .product-item-information,
.ih-product-discovery #related-products .grid-1 .item-product-information,
.ih-product-discovery #complementary-products .grid-1 .item-product-information {
	width: 100%;
	padding: .65rem .75rem .75rem;
}
.ih-product-discovery .recently-viewed-list {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
}
.ih-product-discovery .recently-viewed-item {
	flex: 0 1 240px;
	width: min(100%, 260px);
	max-width: 260px;
	scroll-snap-align: start;
}
.ih-product-discovery .recently-viewed-item-image {
	width: 100%;
	height: auto;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	object-position: center;
}
.ih-product-discovery .recently-viewed-item-name { min-height: 2.7em; }

@media (min-width: 1024px) {
	.ih-product-discovery:has(> .ih-product-related-group):has(> .ih-product-complementary-group) {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		column-gap: clamp(1rem, 2vw, 1.5rem);
		align-items: start;
	}
	.ih-product-discovery:has(> .ih-product-related-group):has(> .ih-product-complementary-group) > .ih-product-related-group { grid-column: 1; }
	.ih-product-discovery:has(> .ih-product-related-group):has(> .ih-product-complementary-group) > .ih-product-complementary-group { grid-column: 2 / span 2; }
	.ih-product-discovery:has(> .ih-product-related-group):has(> .ih-product-complementary-group) > .recently-viewed-section { grid-column: 1 / -1; }
}

@media (max-width: 767px) {
	#single-product .ih-product-layout {
		grid-template-columns: minmax(0, 1fr);
		grid-template-areas:
			"gallery"
			"info"
			"description";
		grid-template-rows: auto;
	}
	#single-product .ih-product-gallery { margin-bottom: .5rem !important; }
	#single-product .ih-product-secondary {
		grid-template-columns: minmax(0, 1fr);
		gap: .5rem;
		margin: .75rem 0 1rem;
	}
	.ih-product-discovery .recently-viewed-list {
		flex-wrap: nowrap;
		overflow-x: auto;
		padding-bottom: .5rem;
		scroll-snap-type: x mandatory;
		-webkit-overflow-scrolling: touch;
	}
	.ih-product-discovery .recently-viewed-item {
		flex: 0 0 clamp(220px, 72vw, 260px);
	}
	.ih-product-discovery #related-products .swiper-slide.product-item,
	.ih-product-discovery #complementary-products .swiper-slide.product-item,
	.ih-product-discovery #related-products .swiper-slide.item-product,
	.ih-product-discovery #complementary-products .swiper-slide.item-product {
		flex-basis: min(72vw, 260px);
		width: min(72vw, 260px);
	}
}

/* Compact spacing between the information and discovery sections. */
#single-product .ih-product-disclosure { margin-bottom: .5rem !important; }
#single-product .ih-product-description .user-content { font-size: 14px; line-height: 1.55; text-align: left; }
#single-product .ih-product-description .user-content p { margin-bottom: .8rem; }
.ih-product-discovery { margin-top: 0; }
.ih-product-discovery #related-products h2,
.ih-product-discovery #complementary-products h2,
.ih-product-discovery > .recently-viewed-section h2 { margin-top: 0 !important; }
.ih-product-discovery .recently-viewed-item { border: 1px solid #e1e2df; border-radius: 8px; overflow: hidden; background: #fff; }
.ih-product-discovery .recently-viewed-item-image { border-radius: 0; margin-bottom: 0; }
.ih-product-discovery .recently-viewed-item-name { margin: .65rem .75rem 0; font-weight: 600; }
.ih-product-discovery .recently-viewed-item-price { margin: .35rem .75rem .75rem; font-size: 12px; color: #52613d; }
#single-product .ih-product-layout { row-gap: 0; }

.ih-product-discovery > .ih-product-related-group,
.ih-product-discovery > .ih-product-complementary-group { min-width: 0; }
