/**
 * Royal Computers — homepage visual foundation (page ID 2751).
 * Product cards: product-cards.css | Filters for sale grid below.
 */

body.page-id-2751 {
	--rc-home-bg: #f3f5f9;
	--rc-home-surface: #ffffff;
	--rc-home-dark: #0f141d;
	--rc-home-accent: #2563eb;
	--rc-home-text: #1a1f2b;
	--rc-home-muted: #5c6578;
	--rc-home-border: #e2e8f0;
	--rc-home-radius-lg: 16px;
	--rc-home-shadow-sm: 0 1px 2px rgba(15, 20, 29, 0.05);
	--rc-home-shadow-md: 0 8px 22px rgba(15, 20, 29, 0.08);
	--rc-home-container: min(100% - 2rem, 1320px);
	background-color: var(--rc-home-bg);
	color: var(--rc-home-text);
}

body.page-id-2751 .site-main,
body.page-id-2751 .electronic-store-single-page {
	overflow-x: clip;
}

body.page-id-2751 .entry-content {
	max-width: none;
}

body.page-id-2751 .elementor-2751 {
	color: var(--rc-home-text);
}

/* Typography */
body.page-id-2751 .elementor-2751 .elementor-heading-title {
	color: var(--rc-home-text);
	font-weight: 700;
	letter-spacing: -0.02em;
	line-height: 1.2;
}

body.page-id-2751 .elementor-2751 .elementor-widget-heading .elementor-heading-title.elementor-size-default {
	font-size: clamp(1.375rem, 2.2vw, 1.875rem);
}

body.page-id-2751 .elementor-2751 .elementor-widget-text-editor,
body.page-id-2751 .elementor-2751 .elementor-widget-text-editor p {
	color: var(--rc-home-muted);
	line-height: 1.65;
}

/* Hero */
body.page-id-2751 .elementor-2751 .elementor-element-f2a9190 {
	--padding-top: 0;
	--padding-bottom: 0;
	margin: 0;
	width: 100%;
	max-width: none;
}

body.page-id-2751 .elementor-2751 .elementor-element-f2a9190 > .e-con-inner {
	width: 100%;
	max-width: none;
	padding: 0;
}

body.page-id-2751 .elementor-2751 .elementor-element-e19261f .elementor-wrapper {
	width: 100%;
	min-height: clamp(240px, 38vw, 480px);
	max-height: 520px;
	aspect-ratio: 21 / 9;
}

body.page-id-2751 .elementor-2751 .elementor-element-e19261f .elementor-custom-embed-image-overlay img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* Section rhythm */
body.page-id-2751 .elementor-2751 .e-con-boxed > .e-con-inner {
	max-width: var(--rc-home-container);
	margin-inline: auto;
}

body.page-id-2751 .elementor-2751 .elementor-element-4b6946c {
	--padding-top: clamp(1.25rem, 2.5vw, 2rem);
	--padding-bottom: 0.25rem;
}

body.page-id-2751 .elementor-2751 .elementor-element-020c66b {
	--padding-top: 0;
	--padding-bottom: clamp(1rem, 2vw, 1.75rem);
}

/* Promo boxes */
body.page-id-2751 .elementor-2751 .wpr-promo-box {
	border: 1px solid var(--rc-home-border);
	border-radius: var(--rc-home-radius-lg);
	overflow: hidden;
	box-shadow: var(--rc-home-shadow-sm);
}

/* Sale products grid — layout only; cards in product-cards.css */
body.page-id-2751 .elementor-2751 .elementor-element-2c11a93 .elementor-widget-container {
	padding-top: 0;
}

body.page-id-2751 .elementor-2751 .elementor-element-2c11a93 .wpr-grid-filters {
	margin-bottom: 28px;
	padding: 0.75rem 0.85rem;
	border: 1px solid var(--rc-home-border);
	border-radius: 12px;
	background: var(--rc-home-surface);
	box-shadow: var(--rc-home-shadow-sm);
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

body.page-id-2751 .elementor-2751 .elementor-element-2c11a93 .wpr-grid-filters > li > span {
	min-height: 40px;
	padding: 0 1rem;
	border: 1px solid var(--rc-home-border);
	border-radius: 999px;
	font-size: 0.9375rem;
	font-weight: 600;
}

body.page-id-2751 .elementor-2751 .elementor-element-2c11a93 .wpr-grid-filters > li > span.wpr-active-filter,
body.page-id-2751 .elementor-2751 .elementor-element-2c11a93 .wpr-grid-filters > li > span:hover {
	color: var(--rc-home-accent);
	border-color: rgba(37, 99, 235, 0.35);
	background: #eff6ff;
}

body.page-id-2751 .elementor-2751 .eael-woo-product-carousel-container {
	padding-block: 0.25rem 0.5rem;
}

/* Trust blocks */
body.page-id-2751 .elementor-2751 .elementor-widget-image-box .elementor-image-box-wrapper {
	background: var(--rc-home-surface);
	border: 1px solid var(--rc-home-border);
	border-radius: 14px;
	padding: 1.25rem 1rem;
	box-shadow: var(--rc-home-shadow-sm);
}

@media (max-width: 768px) {
	body.page-id-2751 .elementor-2751 .elementor-element-e19261f .elementor-wrapper {
		min-height: clamp(200px, 52vw, 320px);
		max-height: 360px;
	}
}
