/**
 * Homepage integration (section styles themselves are in global.css, from the prototype).
 * The page content is constrained by Blocksy; .gb-home breaks out to full width so each
 * section's background spans the viewport and its .gb-wrap centres the content at 1180px.
 */

.home .site-main .entry-content > .gb-home,
.home .gb-home {
	width: 100vw;
	max-width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	margin-top: 0;
	margin-bottom: 0;
}

.home .gb-home > * {
	margin-block: 0;
}

.home .gb-home .gb-hero__howlink {
	color: var(--gb-on-dark-muted);
	border-bottom-color: rgba(255, 255, 255, 0.25);
}

.home .gb-home .gb-hero__visual {
	color: inherit;
	text-decoration: none;
}

.home .gb-home .gb-help__title {
	font-size: var(--gb-fs-30);
}

.home .gb-home .gb-help {
	margin-top: 24px;
}

.home .gb-home .gb-faq__more {
	margin-top: 20px;
}

/* Featured hampers: the Shop 3 card grid, three across */
.home .gb-home .gb-home-products {
	margin-top: 28px;
}

.home .gb-home .gb-home-products .woocommerce {
	width: 100%;
}

@media (min-width: 901px) {
	.home .gb-home .gb-home-products [data-products].products {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}
/* Tablets: two per row (prototype .gb-cats at ≤900px); phones stay one per row. */
@media (min-width: 561px) and (max-width: 900px) {
	.home .gb-home .gb-home-products [data-products].products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 20px;
	}
}

/* No page title / content spacing around the homepage */
.home .site-main > .ct-container-full,
.home .site-main article {
	padding-top: 0;
	padding-bottom: 0;
}

.home .gb-home .gb-hero__caption .gb-price {
	white-space: nowrap;
}

/* Featured hampers (prototype index.html cards): no list indent, 20px names. */
.home .gb-home .gb-home-products [data-products].products { margin: 0; padding: 0; }
.home .gb-home .gb-home-products [data-products] > li.product .woocommerce-loop-product__title { font-size: var(--gb-fs-20); }
/* Featured hampers as the prototype homepage cards: no free shipping tag, a short line instead of the category. */
.home .gb-home .gb-home-products [data-products] > li.product > .free-shipping-badge { display: none; }
.home .gb-home .gb-home-products [data-products] > li.product > .entry-meta.has-tagline { font-size: var(--gb-fs-14); color: var(--gb-muted); }
.home .gb-home .gb-home-products .gb-card-tagline { display: block; font-size: var(--gb-fs-14); line-height: 1.55; color: var(--gb-muted); }
.home .gb-home .gb-home-products [data-products] > li.product > .entry-meta.has-tagline,
.home .gb-home .gb-home-products .gb-card-tagline { text-transform: none; letter-spacing: 0; font-weight: 400; }
/* Phones: featured hampers one per row at full width (prototype), card body as on desktop
   (description left, price right) rather than the shop grid's stacked two-up cards. */
@media (max-width: 560px) {
	.home .gb-home .gb-home-products [data-products].products { grid-template-columns: minmax(0, 1fr); gap: 20px; }
}
@media (max-width: 760px) {
	.home .gb-home .gb-home-products [data-products] > li.product { grid-template-rows: auto auto auto 1fr; padding-bottom: 18px; }
	.home .gb-home .gb-home-products [data-products] > li.product .woocommerce-loop-product__title { padding: 16px 18px 0; font-size: var(--gb-fs-20); }
	.home .gb-home .gb-home-products [data-products] > li.product > .entry-meta { grid-column: 1; padding: 5px 0 0 18px; }
	.home .gb-home .gb-home-products [data-products] > li.product > .price { grid-column: 2; padding: 5px 18px 0 0; }
	.home .gb-home .gb-home-products [data-products] > li.product > .ct-woo-card-actions { grid-row: 4; padding: 0 18px; }
	.home .gb-home .gb-home-products [data-products] .gb-cat__cta { margin-bottom: 18px; }
	.home .gb-home .gb-home-products [data-products] .gb-quickadd { min-height: 44px; font-size: var(--gb-fs-14); }
}
