/* Regal Commerce homepage — matches design/code.html */

:root {
	--rc-primary: #52050e;
	--rc-primary-container: #701d21;
	--rc-secondary: #895100;
	--rc-secondary-container: #fd9d1a;
	--rc-surface: #f8f9fa;
	--rc-surface-low: #f3f4f5;
	--rc-surface-container: #edeeef;
	--rc-on-surface: #191c1d;
	--rc-on-surface-variant: #554241;
	--rc-outline-variant: #dcc0bf;
	--rc-white: #ffffff;
	--rc-font-head: "Hanken Grotesk", "Outfit", sans-serif;
	--rc-font-body: "Plus Jakarta Sans", "Outfit", sans-serif;
}

.home .ps-regal-hero {
	position: relative;
	min-height: 520px;
	overflow: hidden;
}

.home .ps-regal-hero > .e-con-inner,
.home .ps-regal-hero {
	align-items: center;
}

.home .ps-regal-hero__copy {
	position: relative;
	z-index: 2;
}

.home .ps-regal-card {
	height: 100%;
	transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.home .ps-regal-card:hover {
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
}

.home .ps-regal-cat-grid > .e-con,
.home .ps-regal-cat-grid > .elementor-element {
	flex: 1 1 calc((100% - 72px) / 4);
	min-width: 0;
}

.home .ps-regal-solution-grid > .e-con,
.home .ps-regal-solution-grid > .elementor-element {
	flex: 1 1 calc((100% - 72px) / 4);
	min-width: 0;
}

.home .ps-regal-product-grid > .e-con,
.home .ps-regal-product-grid > .elementor-element {
	flex: 1 1 calc((100% - 72px) / 4);
	min-width: 0;
}

.home .ps-regal-why-grid > .e-con:first-child,
.home .ps-regal-why-grid > .elementor-element:first-child {
	flex: 1 1 55%;
}

.home .ps-regal-why-grid > .e-con:last-child,
.home .ps-regal-why-grid > .elementor-element:last-child {
	flex: 1 1 40%;
}

.home .ps-regal-card .elementor-widget-image img,
.home .ps-regal-product-card .elementor-widget-image img {
	width: 100%;
	height: auto;
	max-height: 220px;
	object-fit: contain;
	background: var(--rc-surface-container);
	border-radius: 8px;
}

.home .ps-regal-product-card {
	height: 100%;
	overflow: hidden;
}

.home .ps-regal-product-img-wrap {
	position: relative;
}

.home .ps-regal-product-img-wrap .elementor-widget-text-editor {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
}

.home .ps-regal-faq-item {
	border: 1px solid var(--rc-outline-variant);
	border-radius: 8px;
	background: var(--rc-white);
}

.home .ps-regal-gifts-banner {
	min-height: 360px;
	position: relative;
	overflow: hidden;
}

.home .ps-regal-final-cta {
	background: var(--rc-primary-container);
}

.home .ps-regal-trust img {
	max-width: 640px;
	width: 100%;
	height: auto;
	opacity: 0.85;
}

.home .elementor-widget-button .elementor-button {
	min-height: 48px;
	font-family: var(--rc-font-body);
	font-weight: 700;
	border-radius: 8px;
}

.home .ps-regal-hero .elementor-heading-title {
	font-family: var(--rc-font-head);
}

.home .ps-regal-section-head .elementor-heading-title {
	font-family: var(--rc-font-head);
}

@media (max-width: 1024px) {
	.home .ps-regal-cat-grid > .e-con,
	.home .ps-regal-cat-grid > .elementor-element,
	.home .ps-regal-solution-grid > .e-con,
	.home .ps-regal-solution-grid > .elementor-element,
	.home .ps-regal-product-grid > .e-con,
	.home .ps-regal-product-grid > .elementor-element {
		flex-basis: calc((100% - 24px) / 2);
	}
}

@media (max-width: 767px) {
	.home .ps-regal-hero {
		min-height: auto;
		padding-block: 48px !important;
	}

	.home .ps-regal-cat-grid > .e-con,
	.home .ps-regal-cat-grid > .elementor-element,
	.home .ps-regal-solution-grid > .e-con,
	.home .ps-regal-solution-grid > .elementor-element,
	.home .ps-regal-product-grid > .e-con,
	.home .ps-regal-product-grid > .elementor-element {
		flex-basis: 100%;
	}

	.home .ps-regal-why-grid > .e-con,
	.home .ps-regal-why-grid > .elementor-element {
		flex-basis: 100% !important;
	}

	.home .ps-regal-hero .elementor-widget-button,
	.home .ps-regal-final-cta .elementor-widget-button {
		width: 100% !important;
	}

	.home .ps-regal-hero .elementor-button,
	.home .ps-regal-final-cta .elementor-button {
		width: 100% !important;
		justify-content: center;
	}
}
