/* Full photographs, arranged independently from the collection's copy and CTA. */
.vlc-catalog-collage {
	position: relative;
	width: 100%;
	height: 100%;
	min-width: 0;
	background: #fff;
	isolation: isolate;
}
.vlc-catalog-collage__item {
	position: absolute;
	display: block;
	min-width: 0;
	min-height: 48px;
	mix-blend-mode: multiply;
}
.vlc-catalog-collage__item img,
.vlc-garden-family__media .vlc-catalog-collage__item img {
	display: block;
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: contain;
	object-position: center bottom;
}
.vlc-catalog-collage__item--1 { z-index: 2; left: 0; bottom: 0; width: 55%; height: 100%; }
.vlc-catalog-collage__item--2 { z-index: 1; right: 0; bottom: 12%; width: 46%; height: 86%; }
.vlc-catalog-collage__item--3 { z-index: 3; left: 39%; bottom: 0; width: 36%; height: 57%; }
.vlc-catalog-collage[data-items="2"] .vlc-catalog-collage__item--1 { left: 1%; width: 59%; }
.vlc-catalog-collage[data-items="2"] .vlc-catalog-collage__item--2 { right: 0; bottom: 1%; width: 50%; height: 91%; }
.vlc-catalog-collage[data-items="1"] .vlc-catalog-collage__item--1 { left: 6%; width: 88%; height: 100%; }
.vlc-catalog-collage a:focus-visible { z-index: 5; outline: 3px solid #426b30; outline-offset: 3px; border-radius: 4px; }
.vlc-garden-family__media:has(.vlc-catalog-collage) { height: 170px; }
.vlc-site .vlc-product-card .vlc-product-card__media[data-photo-pending] { background: #f3f4ed; }
.vlc-site .vlc-product-photo-pending { color: #244220; font-size: 16px; font-weight: 600; }

.vlc-catalog-collage--archive { height: clamp(220px, 23vw, 310px); max-width: 520px; justify-self: center; }
.vlc-catalog-collage--archive::before { content: ""; position: absolute; inset: 18% 2% 2% 4%; border-radius: 52% 48% 46% 54%; background: #edf1e6; transform: rotate(-5deg); }
.vlc-site .vlc-shop-header:has(> .vlc-catalog-collage) .vlc-shop-title { margin-bottom: 16px; font-size: clamp(40px, 5vw, 68px); line-height: 1.08; font-weight: 500; letter-spacing: -0.035em; }
.vlc-site .vlc-shop-header:has(> .vlc-catalog-collage) .vlc-shop-desc { max-width: 43ch; color: #435548; font-size: 18px; line-height: 1.6; }
.vlc-site .vlc-shop-search { border: 1px solid #a9b7a6; border-radius: 10px; padding: 4px; background: #fff; }
.vlc-site .vlc-shop-search input { min-width: 0; border: 0; background: #fff; }
.vlc-site .vlc-filter-chip { border: 1px solid #c0cbbd; border-radius: 6px; min-height: 44px; padding-inline: 12px; color: #244220; }
.vlc-site .vlc-filter-chip.is-active { border-color: #244220; background: #244220; color: #fff; }
.vlc-site .vlc-shop-header:has(> .vlc-catalog-collage) {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(260px, 0.95fr);
	align-items: center;
	gap: 12px 28px;
	padding-block: 24px 16px;
}
.vlc-shop-header:has(> .vlc-catalog-collage) > .vlc-shop-header__intro { grid-column: 1; grid-row: 1; min-width: 0; }
.vlc-shop-header:has(> .vlc-catalog-collage) > .vlc-catalog-collage { grid-column: 2; grid-row: 1; }
.vlc-shop-header:has(> .vlc-catalog-collage) > .vlc-shop-search { grid-column: 1 / -1; grid-row: 2; width: 100%; max-width: none; margin-block: 4px 0; }
.vlc-site-search { padding-block: 24px 48px; }
.vlc-search-results { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 32px; }
.vlc-search-results article { padding-block: 24px; border-bottom: 1px solid #c0cbbd; }
.vlc-search-results h2 { margin: 0 0 12px; font-size: 26px; line-height: 1.3; }
.vlc-search-results p { color: #435548; font-size: 16px; line-height: 1.6; }
.vlc-search-results__link { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; color: #244220; font-size: 16px; font-weight: 600; }

@media (max-width: 767px) {
	.vlc-search-results { grid-template-columns: minmax(0, 1fr); }
	.vlc-site .vlc-shop-header:has(> .vlc-catalog-collage) .vlc-shop-desc { font-size: 16px; }
	.vlc-garden-family__media:has(.vlc-catalog-collage) { height: 130px; }
	.vlc-site .vlc-shop-header:has(> .vlc-catalog-collage) { grid-template-columns: minmax(0, 1fr); gap: 12px; padding-block: 18px 14px; }
	.vlc-shop-header:has(> .vlc-catalog-collage) > .vlc-catalog-collage { grid-column: 1; grid-row: 2; }
	.vlc-shop-header:has(> .vlc-catalog-collage) > .vlc-shop-search { grid-row: 3; }
	.vlc-catalog-collage--archive { height: clamp(185px, 47vw, 250px); max-width: 470px; }
}
