.psg-active {
	background: var(--psg-bg);
	color: var(--psg-text);
}

.psg-active .hero-section {
	display: none;
}

.psg-active .site-main > .ct-container > section {
	display: grid;
	grid-template-columns: var(--psg-left) minmax(0, 1fr) var(--psg-right);
	column-gap: clamp(20px, 2.2vw, 38px);
	align-items: start;
}

.psg-active .woocommerce-products-header {
	display: none;
}

.psg-active .psg-hero {
	grid-column: 1 / -1;
	grid-row: 1;
	margin: 0 0 clamp(34px, 5vw, 66px);
	padding: clamp(42px, 6vw, 76px) clamp(22px, 5vw, 70px) 28px;
	text-align: center;
	border-bottom: 1px solid var(--psg-border);
}

.psg-eyebrow {
	margin: 0 0 12px;
	color: var(--psg-accent);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .18em;
	text-transform: uppercase;
}

.psg-hero h1 {
	max-width: 880px;
	margin: 0 auto;
	color: var(--psg-text);
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(38px, 5vw, 68px);
	font-weight: 500;
	line-height: 1.05;
	letter-spacing: -.025em;
}

.psg-intro {
	max-width: 650px;
	margin: 18px auto 26px;
	color: #5e5b54;
	color: color-mix(in srgb, var(--psg-text) 72%, transparent);
	font-size: clamp(15px, 1.4vw, 18px);
	line-height: 1.7;
}

.psg-search {
	position: relative;
	display: flex;
	max-width: 620px;
	margin: 0 auto;
	border: 1px solid var(--psg-border);
	border-radius: 999px;
	background: #fff;
	box-shadow: 0 14px 45px rgba(36, 35, 31, .06);
}

.psg-search input[type="search"] {
	flex: 1;
	min-width: 0;
	height: 56px;
	padding: 0 22px;
	border: 0;
	background: transparent;
	color: var(--psg-text);
	font-size: 15px;
	outline: none;
}

.psg-search input[type="search"]:focus {
	box-shadow: inset 0 0 0 2px var(--psg-accent);
	border-radius: 999px;
}

.psg-search button {
	width: 58px;
	border: 0;
	border-radius: 999px;
	background: transparent;
	color: var(--psg-text);
	font-size: 25px;
	cursor: pointer;
}

.psg-trust {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 8px 28px;
	margin: 24px 0 0;
	padding: 18px 0 0;
	border-top: 1px solid var(--psg-border);
	list-style: none;
	color: #625f58;
	color: color-mix(in srgb, var(--psg-text) 70%, transparent);
	font-size: 12px;
	font-weight: 650;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.psg-trust li:not(:last-child)::after {
	content: "·";
	margin-left: 28px;
	color: var(--psg-accent);
}

.psg-active .woocommerce-notices-wrapper,
.psg-active .woo-listing-top,
.psg-active ul.products,
.psg-active .ct-pagination {
	grid-column: 2;
}

.psg-active .woocommerce-notices-wrapper {
	grid-row: 2;
	width: 100%;
}

.psg-active .woo-listing-top {
	grid-row: 3;
}

.psg-active .woocommerce-result-count {
	align-self: center;
	margin: 0 0 24px;
	color: #767169;
	color: color-mix(in srgb, var(--psg-text) 54%, transparent);
	font-size: 11px;
	font-weight: 650;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.psg-active .woocommerce-ordering {
	justify-self: end;
	margin: 0 0 24px;
}

.psg-active .woocommerce-ordering select {
	min-width: 170px;
	border-color: var(--psg-border);
	border-radius: 999px;
	background-color: transparent;
	color: var(--psg-text);
}

.psg-rail {
	position: sticky;
	top: calc(var(--admin-bar, 0px) + 28px);
	padding: 0;
}

.psg-left-rail {
	grid-column: 1;
	grid-row: 3 / span 3;
}

.psg-right-rail {
	grid-column: 3;
	grid-row: 3 / span 3;
}

.psg-rail h2,
.psg-mobile-explore h2 {
	margin: 0 0 18px;
	color: var(--psg-text);
	font-size: 12px;
	font-weight: 750;
	letter-spacing: .14em;
	text-transform: uppercase;
}

.psg-rail ul,
.psg-mobile-explore ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.psg-rail li {
	border-top: 1px solid var(--psg-border);
}

.psg-rail li:last-child {
	border-bottom: 1px solid var(--psg-border);
}

.psg-rail a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	padding: 12px 2px;
	color: #55524c;
	color: color-mix(in srgb, var(--psg-text) 78%, transparent);
	font-size: 13px;
	text-decoration: none;
}

.psg-rail a:hover,
.psg-rail a:focus {
	color: var(--psg-accent);
}

.psg-rail small {
	min-width: 25px;
	padding: 2px 7px;
	border-radius: 999px;
	background: color-mix(in srgb, var(--psg-accent) 10%, transparent);
	text-align: center;
}

.psg-mobile-explore {
	display: none;
	grid-column: 1 / -1;
}

.psg-active ul.products {
	grid-row: 4;
	display: grid !important;
	grid-template-columns: repeat(var(--psg-desktop-columns), minmax(0, 1fr));
	gap: calc(var(--psg-gap) * 1.35) var(--psg-gap);
	width: 100%;
	margin: 0 !important;
}

.psg-active ul.products::before,
.psg-active ul.products::after {
	display: none !important;
}

.psg-active ul.products li.product {
	float: none !important;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
}

.psg-active ul.products li.product .ct-media-container {
	overflow: hidden;
	width: 100%;
	aspect-ratio: var(--psg-ratio);
	border-radius: var(--psg-radius);
	background: var(--psg-image-bg);
}

.psg-active ul.products li.product .ct-media-container img {
	width: 100%;
	height: 100%;
	margin: 0 !important;
	transition: transform .35s ease;
}

/* Standard WooCommerce thumbnail fallback if Blocksy changes its media wrapper. */
.psg-active ul.products li.product img.attachment-woocommerce_thumbnail {
	display: block;
	width: 100%;
	aspect-ratio: var(--psg-ratio);
	margin: 0 !important;
	border-radius: var(--psg-radius);
	background: var(--psg-image-bg);
}

.psg-active ul.products li.product:hover .ct-media-container img {
	transform: scale(1.018);
}

.psg-active ul.products li.product .woocommerce-loop-product__title {
	margin: 18px 0 7px;
	color: var(--psg-text);
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(18px, 1.4vw, 22px);
	font-weight: 500;
	line-height: 1.25;
	letter-spacing: -.015em;
}

.psg-active ul.products li.product .price {
	margin: 0 0 15px;
	color: var(--psg-text);
	font-size: 14px;
	font-weight: 700;
}

.psg-active ul.products li.product .button {
	min-height: 42px;
	padding: 11px 18px;
	border: 1px solid var(--psg-text);
	border-radius: 999px;
	background: var(--psg-text);
	color: var(--psg-bg);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .04em;
}

.psg-active ul.products li.product .button:hover,
.psg-active ul.products li.product .button:focus {
	border-color: var(--psg-accent);
	background: var(--psg-accent);
	color: #fff;
}

.psg-active .ct-pagination {
	grid-row: 5;
	margin-top: 50px;
}

@media (max-width: 1260px) {
	.psg-active .site-main > .ct-container > section {
		grid-template-columns: var(--psg-left) minmax(0, 1fr);
	}

	.psg-right-rail {
		display: none;
	}

	.psg-active ul.products {
		grid-template-columns: repeat(var(--psg-tablet-columns), minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	.psg-active .site-main > .ct-container > section {
		display: block;
	}

	.psg-active .psg-hero {
		margin-bottom: 24px;
		padding: 34px 4px 20px;
	}

	.psg-hero h1 {
		font-size: clamp(34px, 11vw, 48px);
	}

	.psg-trust {
		display: block;
		text-align: center;
	}

	.psg-trust li {
		margin: 8px 0;
	}

	.psg-trust li::after {
		display: none;
	}

	.psg-rail {
		display: none !important;
	}

	.psg-mobile-explore {
		display: block;
		margin: 0 0 24px;
	}

	.psg-mobile-explore details {
		border: 1px solid var(--psg-border);
		border-radius: 6px;
		background: #fff;
	}

	.psg-mobile-explore summary {
		padding: 15px 18px;
		color: var(--psg-text);
		font-size: 13px;
		font-weight: 750;
		letter-spacing: .08em;
		text-transform: uppercase;
		cursor: pointer;
	}

	.psg-mobile-explore__content {
		display: grid;
		gap: 24px;
		padding: 4px 18px 20px;
	}

	.psg-mobile-explore a {
		display: flex;
		justify-content: space-between;
		padding: 8px 0;
		color: var(--psg-text);
		text-decoration: none;
	}

	.psg-active .woocommerce-result-count,
	.psg-active .woocommerce-ordering {
		display: block !important;
		float: none;
		margin: 0 0 16px;
	}

	.psg-active .woocommerce-ordering {
		width: 100% !important;
	}

	.psg-active .woocommerce-ordering select {
		width: 100% !important;
		min-width: 0 !important;
		height: 44px;
		padding: 0 44px 0 18px !important;
		color: var(--psg-text) !important;
	}

	.psg-active ul.products {
		grid-template-columns: repeat(var(--psg-mobile-columns), minmax(0, 1fr));
	}
}

@media (prefers-reduced-motion: reduce) {
	.psg-active ul.products li.product .ct-media-container img {
		transition: none;
	}

	.psg-active ul.products li.product:hover .ct-media-container img {
		transform: none;
	}
}
