/* ==========================================================================
   Shop + single product (WooCommerce blocks) – templates:
   single-product.html, single-product-<gift-slug>.html, archive-product.html,
   product-search-results.html ; patterns: product-uses, product-feature*, bogo-banner
   ========================================================================== */

/* --- Single product: hero ------------------------------------------------ */
.ssc-pdp { margin: 0; }
.ssc-pdp-hero { position: relative; padding: 9vw 5vw 4.5vw; isolation: isolate; }
.ssc-pdp-hero::before { content: ""; position: absolute; inset: 0; z-index: -1; background: url(../../images/Image-5.png) bottom center / cover no-repeat; opacity: .2; }
.ssc-pdp-hero > * { max-width: 1140px; margin-left: auto; margin-right: auto; }
.ssc-pdp-hero__cols { gap: 20px; margin: 0; align-items: stretch; }
.ssc-pdp-hero__cols > .wp-block-column { padding: 10px; box-sizing: border-box; }
.ssc-pdp-gallery .wp-block-woocommerce-product-image-gallery, .ssc-pdp-gallery .wc-block-product-gallery, .ssc-pdp-gallery .woocommerce-product-gallery { margin: 0; width: 100% !important; max-width: none; float: none; }
.ssc-pdp-gallery .woocommerce-product-gallery__trigger, .ssc-pdp-gallery .zoomImg { display: none !important; }
.ssc-pdp-gallery .woocommerce-product-gallery { opacity: 1 !important; }
.ssc-pdp-gallery .woocommerce-product-gallery__wrapper { margin: 0; }
.ssc-pdp-gallery img { display: block; width: 100%; height: auto; }
.ssc-pdp-info.ssc-stack { padding: 0; }
.ssc-pdp-info.ssc-stack > .ssc-pdp-title { margin-block-start: -15px; margin-block-end: 0; font-family: var(--wp--preset--font-family--pt-serif); font-size: 40px; line-height: 52px; font-weight: 400; text-transform: none; color: var(--wp--preset--color--green); }
.ssc-pdp-divider { margin: 0; width: 100%; }
.ssc-pdp-divider.ssc-pdp-divider { min-height: 0; }
.ssc-pdp-summary .wc-block-components-product-summary { font-family: var(--wp--preset--font-family--poppins); font-size: 14px; line-height: 24px; }
.ssc-pdp-summary { margin: 0; font-family: var(--wp--preset--font-family--poppins); font-size: 14px; line-height: 24px; }
.ssc-pdp-summary > p:not([class]) { display: inline; margin: 0; }
.ssc-pdp-summary > p[class] { margin: 0 0 14.4px; }
.ssc-pdp-summary a, .ssc-pdp-feature__text a, .ssc-pdp-howto__text a { color: var(--wp--preset--color--gold); }
.ssc-pdp-image { margin: 0; }
.ssc-pdp-image img { display: block; width: 100%; height: auto; }
.ssc-pdp-summary ul { margin: 0; padding-left: 40px; font-family: var(--wp--preset--font-family--poppins); font-size: 14px; line-height: 24px; }
.ssc-pdp-summary ul li { margin: 0; }
.ssc-pdp-info.ssc-stack > .ssc-pdp-price { margin: 0; text-align: right; }
.ssc-pdp-price .wc-block-components-product-price { margin: 0 0 14.4px; text-align: right; }
.ssc-pdp-price, .ssc-pdp-price .wc-block-components-product-price, .ssc-pdp-price .woocommerce-Price-amount,
.ssc-pdp-price .wc-block-components-product-price__value { font-family: var(--wp--preset--font-family--pt-serif, 'PT Serif', Arial); font-size: 40px; line-height: 52px; font-weight: 400; color: var(--wp--preset--color--gold); }

/* add to cart (classic markup rendered by woocommerce/add-to-cart-form) */
.ssc-pdp.ssc-main .ssc-pdp-info .wc-block-add-to-cart-form, .ssc-pdp.ssc-main .ssc-pdp-info .wc-block-add-to-cart-form form.cart { margin: 0; width: 100%; font-family: var(--wp--preset--font-family--poppins); font-size: 14px; line-height: 24px; }
.ssc-pdp.ssc-main .ssc-pdp-info .wc-block-add-to-cart-form form.cart { display: block; }
.ssc-pdp.ssc-main .ssc-pdp-info .wc-block-add-to-cart-form table.variations { display: table; width: 100%; margin: 0 0 14.4px; border: 0; border-collapse: separate; border-spacing: 0; font-size: 14.4px; line-height: 21.6px; }
.ssc-pdp.ssc-main .ssc-pdp-info .wc-block-add-to-cart-form table.variations th, .ssc-pdp.ssc-main .ssc-pdp-info .wc-block-add-to-cart-form table.variations td { background: rgba(128,128,128,.07); border: 0; padding: 15px; text-align: left; vertical-align: top; font-weight: 400; font-family: var(--wp--preset--font-family--system); line-height: 28.8px; }
.ssc-pdp.ssc-main .ssc-pdp-info .wc-block-add-to-cart-form table.variations th { width: 19.07%; font-weight: 700; text-align: center; }
.ssc-pdp.ssc-main .ssc-pdp-info .wc-block-add-to-cart-form table.variations td { padding-left: 0; }
.ssc-pdp.ssc-main .ssc-pdp-info .wc-block-add-to-cart-form table.variations th label { font-family: var(--wp--preset--font-family--poppins); font-size: 14px; line-height: 24px; color: var(--wp--preset--color--ink); font-weight: 400; margin: 0; }
.ssc-pdp.ssc-main .ssc-pdp-info .wc-block-add-to-cart-form table.variations td select { font-family: var(--wp--preset--font-family--poppins); font-size: 14px; line-height: 24px; color: var(--wp--preset--color--ink); border: 0; border-radius: 10px; background-color: transparent; padding: 8px 42px 8px 16px; margin: 0; width: 100%; height: 40px; }
.ssc-pdp.ssc-main .ssc-pdp-info .wc-block-add-to-cart-form .reset_variations { font-size: 11.952px; color: var(--wp--preset--color--gold); }
.ssc-pdp.ssc-main .ssc-pdp-info .wc-block-add-to-cart-form .woocommerce-variation-add-to-cart, .ssc-pdp.ssc-main .ssc-pdp-info .wc-block-add-to-cart-form form.cart:not(.variations_form) { display: flex; width: 100%; gap: 0; }
.ssc-pdp.ssc-main .ssc-pdp-info .wc-block-add-to-cart-form .quantity { margin: 0; }
.ssc-pdp.ssc-main .ssc-pdp-info .wc-block-add-to-cart-form .quantity input.qty { box-sizing: border-box; width: 51px; height: 43px; padding: 10px; margin: 0; border: 1px solid #666; border-radius: 3px; background: #fff; color: #000; font-family: var(--wp--preset--font-family--poppins); font-size: 14px; line-height: 24px; text-align: center; }
.ssc-pdp.ssc-main .ssc-pdp-info .wc-block-add-to-cart-form .single_add_to_cart_button { flex: 1 1 auto; box-sizing: border-box; height: 43px; margin: 0; padding: 8.652px 14px; border: 0; border-radius: 3px; background: var(--wp--preset--color--green); color: #fff; font-family: var(--wp--preset--font-family--poppins); font-size: 14px; line-height: 24px; font-weight: 400; cursor: pointer; }
.ssc-pdp.ssc-main .ssc-pdp-info .wc-block-add-to-cart-form .single_add_to_cart_button:hover { background: var(--wp--preset--color--ink); color: #fff; }

wc-order-attribution-inputs { display: none; }
.ssc-pdp-info .wc-block-add-to-cart-form { display: flex; flex-direction: column; }
.ssc-pdp-info .wdp_bulk_table_content { display: block; }
.ssc-pdp-info .wdp_bulk_table_content:not(:has(*)) { display: none; }
.ssc-pdp.ssc-main .ssc-pdp-info .wc-block-add-to-cart-form .woocommerce-variation { margin: 0; }

/* --- Single product: feature / how-to ------------------------------------ */
.ssc-pdp-feature, .ssc-pdp-howto { padding: 4.5vw 5vw; }
.ssc-pdp-howto__cols { gap: 0 !important; }
.ssc-pdp-feature__cols, .ssc-pdp-howto__cols { gap: 20px; margin: 0; max-width: 1140px; margin-left: auto; margin-right: auto; }
.ssc-pdp-feature .ssc-pdp-feature__cols.ssc-pdp-feature__cols > .ssc-pdp-feature__img { flex: 0 0 46.4%; }
.ssc-pdp-feature .ssc-pdp-feature__cols.ssc-pdp-feature__cols > .ssc-pdp-feature__text { flex: 1 1 0; }
.ssc-pdp-feature__img img { width: 100%; height: auto; display: block; }
.ssc-pdp-howto .ssc-pdp-howto__cols.ssc-pdp-howto__cols > .wp-block-column { flex: 0 0 50%; }
.ssc-pdp-feature__text, .ssc-pdp-howto__text { box-sizing: border-box; padding: 24px 4.5vw; text-align: center; font-family: var(--wp--preset--font-family--poppins); font-size: 14px; line-height: 24px; }
.ssc-pdp-feature__text > *, .ssc-pdp-howto__text > * { margin-block-start: 0; }
.ssc-pdp.ssc-main .ssc-pdp-feature__text .wp-block-post-content > h2, .ssc-pdp-howto__text h2 { margin: 8px 0 16px; color: #333; font-size: 40px; line-height: 52px; }
.ssc-pdp.ssc-main .ssc-pdp-feature__text .wp-block-post-content > p, .ssc-pdp-howto__text p { margin: 0 0 14.4px; }
.ssc-pdp-howto__text p:empty { display: none; }
.ssc-pdp-howto { background: url(../../images/How-To-Use-Hero.webp) center right / cover no-repeat; }

/* --- BOGO banner pattern -------------------------------------------------- */
.ssc-bogo { position: relative; isolation: isolate; padding: 1%; background: url(../../images/Image-9.png) center / cover no-repeat; }
.ssc-bogo::before { content: ""; position: absolute; inset: 0; z-index: -1; background: var(--wp--preset--color--green); opacity: .84; }
.ssc-bogo__cols { align-items: center; margin: 0; gap: 20px; }
.ssc-bogo__title { font-family: var(--wp--preset--font-family--pt-serif); font-size: 40px; line-height: 1.3; margin: 0; }
.ssc-bogo__btn .wp-block-button { width: 40%; }
.ssc-bogo__btn .wp-block-button__link { width: 100%; text-align: center; }
.ssc-bogo__img img { width: 50%; display: block; margin: 0 auto; }

/* --- Shop archive ---------------------------------------------------------- */
.ssc-shop { padding: 0; font-family: var(--wp--preset--font-family--system); font-size: 16px; line-height: 24px; }
.ssc-shop .wc-block-breadcrumbs, .ssc-shop .woocommerce-breadcrumb { font-size: 14.72px; line-height: 22.08px; color: #767676; margin: 0 0 14.72px; }
.ssc-shop .woocommerce-breadcrumb a { color: #767676; }
.ssc-shop .ssc-shop-title { margin: 8px 0 16px; font-family: var(--wp--preset--font-family--pt-serif); font-size: 40px; line-height: 52px; font-weight: 400; text-transform: none; color: #333; }
.ssc-shop .ssc-shop-bar { margin: 0 0 16px; align-items: flex-start; }
.ssc-shop .wc-block-product-results-count, .ssc-shop .woocommerce-result-count { font-family: var(--wp--preset--font-family--system); font-size: 16px; line-height: 24px; margin: 0; }
.ssc-shop .woocommerce-ordering { margin: 0; }
.ssc-shop .woocommerce-ordering select, .ssc-shop .wc-block-catalog-sorting select { font-family: var(--wp--preset--font-family--system); font-size: 16px; line-height: 24px; padding: 8px 16px; background: #fff; color: #000; border: 1px solid #666; border-radius: 3px; width: 235px; height: 38px; }
.ssc-shop ul.wc-block-product-template { grid-template-columns: repeat(4, 22.05%); column-gap: 3.8%; row-gap: 41.87px; margin: 0 0 16px; padding: 0 0 47.87px; }
.ssc-shop .wc-block-product { margin: 0; padding: 0; }
.ssc-shop .wc-block-components-product-image { margin: 0 0 16px; }
.ssc-shop .ssc-shop-item-title.ssc-shop-item-title { margin: 0; padding: 8px 0; font-size: 16px; line-height: 20.8px; text-align: left; color: var(--wp--preset--color--gold); }
.ssc-shop .ssc-shop-item-title a { color: var(--wp--preset--color--gold); text-decoration: none; }
.ssc-shop .ssc-shop-item-price { margin: 0; font-family: var(--wp--preset--font-family--system); font-size: 13.712px; line-height: 20.57px; color: #958e09; text-align: left; }
.ssc-shop .ssc-shop-item-price .wc-block-components-product-price { text-align: left; }
.ssc-shop .ssc-shop-item-btn { display: block; margin: 22.856px 0 0; text-align: left; }
.ssc-shop .ssc-shop-item-btn .wp-block-button__link { display: inline-block; background: #e9e6ed; color: #515151; border: 0; border-radius: 3px; font-family: var(--wp--preset--font-family--system); font-size: 16px; line-height: 16px; padding: 9.888px 16px; font-weight: 700; text-align: left; width: auto; }
.ssc-shop .ssc-shop-item-btn .wp-block-button__link:hover { background: #cfc9d6; color: #333; }
.ssc-shop .ssc-shop-grid .wp-block-query-pagination { margin-top: 16px; }

/* --- Responsive ------------------------------------------------------------ */
@media (max-width: 1024px) {
	.ssc-pdp-feature .ssc-pdp-feature__cols.ssc-pdp-feature__cols { flex-wrap: wrap !important; gap: 20px; }
	.ssc-pdp-feature .ssc-pdp-feature__cols.ssc-pdp-feature__cols > .wp-block-column { flex: 0 0 100%; }
	.ssc-pdp-feature__text { padding: 31px 4.5vw; }
	.ssc-pdp-howto__text { padding: 14px 4.5vw; }
	.ssc-pdp .ssc-uses .ssc-uses__text { width: 55%; }
}
@media (max-width: 940px) {
	.ssc-pdp .ssc-uses .ssc-uses__cols { box-sizing: border-box; padding: 10px; }
}
@media (max-width: 767px) {
	.ssc-pdp-hero__cols.ssc-pdp-hero__cols, .ssc-pdp-howto__cols.ssc-pdp-howto__cols { flex-direction: column; flex-wrap: wrap; }
	.ssc-pdp-hero__cols.ssc-pdp-hero__cols { gap: 20px; }
	.ssc-pdp-hero__cols > .wp-block-column, .ssc-pdp .ssc-pdp-howto .ssc-pdp-howto__cols.ssc-pdp-howto__cols > .wp-block-column { flex: 0 0 auto; width: 100%; }
	.ssc-pdp-feature__text { padding: 15px 4.5vw; }
	.ssc-pdp-howto__text { padding: 15px 4.5vw; }
	.ssc-pdp-howto__empty { min-height: 30px; }
	.ssc-pdp .ssc-uses { padding: 9vw 5vw; }
	.ssc-pdp .ssc-uses h2 { font-size: 40px; }
	.ssc-pdp .ssc-uses .ssc-uses__text { width: 85%; }
	.ssc-pdp .ssc-uses .ssc-uses__cols { flex-wrap: wrap; }
	.ssc-pdp .ssc-uses .ssc-use { padding: 10px; }
	.ssc-pdp .ssc-uses .ssc-uses__cols > .wp-block-column { flex-basis: 50% !important; }
}

/* --- Shop archive: tablet / mobile grid (the 4-column desktop grid was squeezing on phones) --- */
@media (max-width: 1024px) {
	.ssc-shop.ssc-shop { padding: 0 24px; }
	.ssc-shop ul.wc-block-product-template { grid-template-columns: repeat(3, 1fr); column-gap: 20px; }
}
@media (max-width: 767px) {
	.ssc-shop.ssc-shop { padding: 0 16px; }
	.ssc-shop ul.wc-block-product-template { grid-template-columns: repeat(2, 1fr); column-gap: 14px; row-gap: 28px; padding-bottom: 24px; }
	.ssc-shop .ssc-shop-bar { flex-direction: column; align-items: stretch; gap: 10px; }
	.ssc-shop .woocommerce-ordering select, .ssc-shop .wc-block-catalog-sorting select { width: 100%; }
	.ssc-shop .ssc-shop-item-btn, .ssc-shop .ssc-shop-item-btn .wp-block-button__link { width: 100%; box-sizing: border-box; text-align: center; }
	.ssc-shop .ssc-shop-item-btn .wp-block-button__link { padding: 10px 8px; font-size: 14px; }
	.ssc-shop .ssc-shop-item-title.ssc-shop-item-title { font-size: 15px; line-height: 20px; }
}

/* The how-to text sat on top of the powder photo on phones and was unreadable: veil the photo. */
@media (max-width: 1024px) {
	.ssc-pdp-howto { background-image: linear-gradient(rgba(255, 255, 255, .93), rgba(255, 255, 255, .93)), url(../../images/How-To-Use-Hero.webp); background-position: center; }
}
