:root {
	--mogo-site-red: #e40421;
	--mogo-site-ink: #111827;
	--mogo-site-soft: #f6f7f9;
}

/* Homepage carousel controls. The script hides the impossible direction. */
.mogo-product-carousel { position: relative !important; }
.mogo-product-carousel .mogo-carousel-arrow {
	position: absolute !important;
	z-index: 12 !important;
	top: 50% !important;
	display: grid !important;
	width: 48px !important;
	height: 48px !important;
	place-items: center !important;
	padding: 0 !important;
	border: 1px solid rgba(255, 255, 255, .72) !important;
	border-radius: 50% !important;
	background: rgba(17, 24, 39, .72) !important;
	color: #fff !important;
	font-size: 39px !important;
	line-height: 1 !important;
	box-shadow: 0 10px 28px rgba(15, 23, 42, .22) !important;
	transform: translateY(-50%) !important;
	cursor: pointer !important;
	backdrop-filter: blur(8px) !important;
}
.mogo-product-carousel .mogo-carousel-arrow:hover { background: var(--mogo-site-red) !important; }
.mogo-product-carousel .mogo-carousel-arrow--prev { left: 18px !important; }
.mogo-product-carousel .mogo-carousel-arrow--next { right: 18px !important; }
.mogo-product-carousel .mogo-carousel-arrow[hidden] { display: none !important; }

/* Homepage service copy. */
.elementor-element-f73fcb1 .elementor-image-box-title {
	color: var(--mogo-site-red) !important;
	font-size: clamp(22px, 1.8vw, 28px) !important;
	font-weight: 850 !important;
	line-height: 1.25 !important;
	text-transform: uppercase !important;
}
.elementor-element-f73fcb1 .mogo-home-service-subtitle {
	margin: 12px 0 8px !important;
	color: var(--mogo-site-ink) !important;
	font-size: 21px !important;
	font-weight: 800 !important;
	line-height: 1.45 !important;
}
.elementor-element-f73fcb1 .mogo-home-service-policy {
	margin: 0 !important;
	color: #667085 !important;
	font-size: 17px !important;
	line-height: 1.6 !important;
}

/* Homepage secondary carousel: white Explore MOGO Products action. */
.elementor-element-94aea55 .swiper-slide:nth-child(2) a,
.elementor-element-94aea55 a[href*="product"],
.elementor-element-f0f4e46 .swiper-slide:nth-child(2) a,
.mogo-explore-products-white {
	border: 1px solid rgba(17, 24, 39, .14) !important;
	background: #fff !important;
	color: var(--mogo-site-ink) !important;
	box-shadow: 0 8px 24px rgba(15, 23, 42, .12) !important;
}

/* Homepage story CTA stays red; only the secondary carousel CTA is white. */
body.home .mogo-home-story__actions > a:first-child,
body.home .mogo-home-story__actions > a:first-child:hover,
body.home .mogo-home-story__actions > a:first-child:focus-visible {
	border-color: var(--mogo-site-red) !important;
	background: var(--mogo-site-red) !important;
	color: #fff !important;
}

.mogo-contact-anchor {
	display: flex !important;
	width: 100% !important;
	align-items: center !important;
	gap: inherit !important;
	color: inherit !important;
	text-decoration: none !important;
}
.mogo-contact-anchor:hover { color: var(--mogo-site-red) !important; }

/* Product cards: subtle grouping on the shop and stronger feedback on hover. */
body.woocommerce-shop ul.products li.product,
body.tax-product_cat ul.products li.product,
body.single-product .related.products ul.products li.product {
	box-sizing: border-box !important;
	overflow: hidden !important;
	padding: 18px !important;
	border: 1px solid #e6e9ee !important;
	border-radius: 18px !important;
	background: var(--mogo-site-soft) !important;
	box-shadow: 0 8px 24px rgba(15, 23, 42, .04) !important;
	transition: transform .22s ease, background .22s ease, border-color .22s ease, box-shadow .22s ease !important;
}
body.woocommerce-shop ul.products li.product:hover,
body.tax-product_cat ul.products li.product:hover,
body.single-product .related.products ul.products li.product:hover {
	border-color: #cfd5de !important;
	background: #eef1f5 !important;
	box-shadow: 0 16px 36px rgba(15, 23, 42, .11) !important;
	transform: translateY(-4px) !important;
}

/* Restore the Products mega menu hidden by legacy Snippet 18. */
@media (min-width: 1025px) {
	header .e-n-menu-heading > .e-n-menu-item:nth-child(2) > .e-n-menu-content,
	.elementor-location-header .e-n-menu-heading > .e-n-menu-item:nth-child(2) > .e-n-menu-content {
		display: block !important;
		visibility: hidden !important;
		opacity: 0 !important;
		pointer-events: none !important;
		transition: opacity .16s ease, visibility .16s ease !important;
	}
	header .e-n-menu-heading > .e-n-menu-item:nth-child(2):hover > .e-n-menu-content,
	header .e-n-menu-heading > .e-n-menu-item:nth-child(2):focus-within > .e-n-menu-content,
	.elementor-location-header .e-n-menu-heading > .e-n-menu-item:nth-child(2):hover > .e-n-menu-content,
	.elementor-location-header .e-n-menu-heading > .e-n-menu-item:nth-child(2):focus-within > .e-n-menu-content {
		visibility: visible !important;
		opacity: 1 !important;
		pointer-events: auto !important;
	}
	/* Product-grid sizing remains controlled by Elementor. */
}

@media (max-width: 767px) {
	.mogo-product-carousel .mogo-carousel-arrow { width: 42px !important; height: 42px !important; }
	.mogo-product-carousel .mogo-carousel-arrow--prev { left: 8px !important; }
	.mogo-product-carousel .mogo-carousel-arrow--next { right: 8px !important; }
}
