/**
 * Clicky Walls Studio visual system for established Elementor sales pages.
 * Deliberately scoped by the server-side body class so existing site pages,
 * checkout and account surfaces cannot inherit these rules.
 */

.clickywalls-studio-sales-page {
	--cw-studio-night: #071316;
	--cw-studio-panel: #0b1b1f;
	--cw-studio-panel-2: #0e2429;
	--cw-studio-line: #1b3b41;
	--cw-studio-line-bright: #2f6570;
	--cw-studio-teal: #4dd9dc;
	--cw-studio-teal-2: #2ca7ad;
	--cw-studio-cream: #f0e8d8;
	--cw-studio-muted: #a9bdbe;
	--cw-studio-gold: #ffd166;
	--cw-studio-sandstone: #b88742;
	--cw-studio-sandstone-dark: #7f5829;
	--cw-studio-sandstone-light: #d2ad72;
	background:
		radial-gradient(circle at 10% 0%, rgba(77, 217, 220, 0.09), transparent 31rem),
		linear-gradient(180deg, #071316 0%, #040d0f 100%);
	color: var(--cw-studio-cream);
	font-family: "Geist", "Avenir Next", "Segoe UI", Arial, sans-serif;
}

.clickywalls-studio-sales-page .site-main,
.clickywalls-studio-sales-page main {
	background: transparent;
}

.clickywalls-studio-sales-page .elementor-location-header,
.clickywalls-studio-sales-page header {
	position: relative;
	z-index: 20;
}

.clickywalls-studio-sales-page .elementor[data-elementor-type="wp-page"] {
	isolation: isolate;
	padding: clamp(18px, 3vw, 44px) clamp(12px, 3vw, 36px) 64px;
	background:
		linear-gradient(rgba(7, 19, 22, 0.32), rgba(7, 19, 22, 0.92)),
		repeating-linear-gradient(90deg, transparent 0 39px, rgba(77, 217, 220, 0.025) 40px);
}

.clickywalls-studio-sales-page .elementor[data-elementor-type="wp-page"] > .e-con.e-parent {
	width: min(1180px, 100%);
	margin: 0 auto clamp(18px, 3vw, 34px);
	padding: clamp(18px, 3.5vw, 44px) !important;
	border: 1px solid var(--cw-studio-line-bright);
	border-radius: 14px;
	background:
		radial-gradient(circle at 100% 0%, rgba(77, 217, 220, 0.07), transparent 23rem),
		linear-gradient(145deg, rgba(14, 36, 41, 0.98), rgba(7, 19, 22, 0.98));
	box-shadow: 0 18px 44px rgba(0, 0, 0, 0.34), inset 0 1px rgba(255, 255, 255, 0.025);
	overflow: hidden;
}

.clickywalls-studio-sales-page .elementor[data-elementor-type="wp-page"] > .e-con.e-parent:first-child {
	position: relative;
	border-top: 3px solid var(--cw-studio-teal-2);
}

.clickywalls-studio-sales-page .elementor[data-elementor-type="wp-page"] > .e-con.e-parent:first-child::before {
	content: "CLICKY WALLS  /  OFFICIAL BUILD SET";
	position: absolute;
	top: 13px;
	left: clamp(18px, 3.5vw, 44px);
	color: var(--cw-studio-teal);
	font-size: 10px;
	font-weight: 800;
	letter-spacing: 0.16em;
	line-height: 1;
	pointer-events: none;
}

.clickywalls-studio-sales-page .elementor[data-elementor-type="wp-page"] > .e-con.e-parent:first-child > .e-con-inner,
.clickywalls-studio-sales-page .elementor[data-elementor-type="wp-page"] > .e-con.e-parent:first-child {
	padding-top: clamp(42px, 5vw, 60px) !important;
}

.clickywalls-studio-sales-page .elementor[data-elementor-type="wp-page"] .e-con.e-child {
	min-width: 0;
}

.clickywalls-studio-sales-page .elementor-heading-title,
.clickywalls-studio-sales-page h1,
.clickywalls-studio-sales-page h2,
.clickywalls-studio-sales-page h3 {
	margin-top: 0;
	color: var(--cw-studio-gold) !important;
	font-family: inherit !important;
	font-weight: 800 !important;
	letter-spacing: -0.025em;
	text-wrap: balance;
}

.clickywalls-studio-sales-page h1,
.clickywalls-studio-sales-page .elementor-heading-title.elementor-size-default {
	font-size: clamp(2rem, 5vw, 4.8rem) !important;
	line-height: 0.96 !important;
	text-shadow: 0 4px 22px rgba(0, 0, 0, 0.36);
}

.clickywalls-studio-sales-page h2 {
	font-size: clamp(1.45rem, 3vw, 2.35rem) !important;
	line-height: 1.08 !important;
}

.clickywalls-studio-sales-page .elementor-widget-text-editor,
.clickywalls-studio-sales-page .elementor-widget-text-editor p,
.clickywalls-studio-sales-page .elementor-widget-text-editor li {
	color: var(--cw-studio-cream) !important;
	font-size: clamp(1rem, 1.25vw, 1.13rem) !important;
	line-height: 1.72 !important;
}

.clickywalls-studio-sales-page .elementor-widget-text-editor p:first-child {
	color: #fff8e9 !important;
}

.clickywalls-studio-sales-page .elementor-widget-image img,
.clickywalls-studio-sales-page .swiper-slide-image,
.clickywalls-studio-sales-page .elementor-widget-video iframe,
.clickywalls-studio-sales-page .elementor-widget-video video {
	border: 1px solid var(--cw-studio-line-bright) !important;
	border-radius: 10px !important;
	background: #041012;
	box-shadow: 0 14px 34px rgba(0, 0, 0, 0.34) !important;
}

.clickywalls-studio-sales-page .elementor-widget-image img,
.clickywalls-studio-sales-page .swiper-slide-image {
	transition: border-color 160ms ease, transform 160ms ease, box-shadow 160ms ease;
}

.clickywalls-studio-sales-page .elementor-widget-image a:hover img,
.clickywalls-studio-sales-page .swiper-slide:hover .swiper-slide-image {
	border-color: var(--cw-studio-teal) !important;
	box-shadow: 0 16px 36px rgba(0, 0, 0, 0.44), 0 0 0 2px rgba(77, 217, 220, 0.1) !important;
	transform: translateY(-2px);
}

.clickywalls-studio-sales-page .elementor-widget-button .elementor-button,
.clickywalls-studio-sales-page a.elementor-button {
	min-height: 44px;
	padding: 12px 20px !important;
	border: 1px solid var(--cw-studio-sandstone) !important;
	border-radius: 8px !important;
	background: linear-gradient(180deg, #94662c, var(--cw-studio-sandstone-dark)) !important;
	box-shadow: 0 7px 18px rgba(0, 0, 0, 0.3), inset 0 1px rgba(255, 240, 215, 0.14) !important;
	color: #fff0d7 !important;
	font-family: inherit !important;
	font-size: 0.95rem !important;
	font-weight: 800 !important;
	letter-spacing: 0.02em;
	text-transform: none;
}

.clickywalls-studio-sales-page .elementor-widget-button .elementor-button:hover,
.clickywalls-studio-sales-page .elementor-widget-button .elementor-button:focus-visible,
.clickywalls-studio-sales-page a.elementor-button:hover,
.clickywalls-studio-sales-page a.elementor-button:focus-visible {
	border-color: var(--cw-studio-sandstone-light) !important;
	background: linear-gradient(180deg, #a97734, #8a602d) !important;
	color: #fff9ee !important;
	transform: translateY(-1px);
}

.clickywalls-studio-sales-page .elementor-button:focus-visible,
.clickywalls-studio-sales-page a:focus-visible,
.clickywalls-studio-sales-page button:focus-visible {
	outline: 3px solid var(--cw-studio-teal) !important;
	outline-offset: 3px;
}

.clickywalls-studio-sales-page .elementor-image-carousel-wrapper {
	padding: 4px 4px 26px;
}

.clickywalls-studio-sales-page .swiper-pagination-bullet {
	width: 9px;
	height: 9px;
	background: var(--cw-studio-muted) !important;
	opacity: 0.55;
}

.clickywalls-studio-sales-page .swiper-pagination-bullet-active {
	background: var(--cw-studio-teal) !important;
	opacity: 1;
}

.clickywalls-studio-sales-page .elementor-swiper-button {
	width: 42px;
	height: 42px;
	border: 1px solid var(--cw-studio-line-bright);
	border-radius: 999px;
	background: rgba(7, 19, 22, 0.9);
	color: var(--cw-studio-teal) !important;
}

.clickywalls-studio-sales-page .elementor-widget-video .elementor-wrapper {
	border-radius: 10px;
	overflow: hidden;
}

.clickywalls-studio-sales-page .elementor[data-elementor-type="wp-page"] a:not(.elementor-button) {
	color: var(--cw-studio-teal);
}

.clickywalls-studio-sales-page .elementor[data-elementor-type="wp-page"] a:not(.elementor-button):hover {
	color: #91f3f4;
}

@media (max-width: 767px) {
	.clickywalls-studio-sales-page .elementor[data-elementor-type="wp-page"] {
		padding: 12px 10px 42px;
	}

	.clickywalls-studio-sales-page .elementor[data-elementor-type="wp-page"] > .e-con.e-parent {
		margin-bottom: 14px;
		padding: 18px 14px !important;
		border-radius: 10px;
	}

	.clickywalls-studio-sales-page .elementor[data-elementor-type="wp-page"] > .e-con.e-parent:first-child {
		padding-top: 44px !important;
	}

	.clickywalls-studio-sales-page .elementor[data-elementor-type="wp-page"] > .e-con.e-parent:first-child::before {
		left: 14px;
		font-size: 9px;
	}

	.clickywalls-studio-sales-page .elementor-widget-button,
	.clickywalls-studio-sales-page .elementor-widget-button .elementor-button,
	.clickywalls-studio-sales-page a.elementor-button {
		width: 100%;
	}

	.clickywalls-studio-sales-page .elementor-widget-button .elementor-button,
	.clickywalls-studio-sales-page a.elementor-button {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-height: 48px;
	}

	.clickywalls-studio-sales-page .elementor-widget-video iframe,
	.clickywalls-studio-sales-page .elementor-widget-video video {
		min-height: 220px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.clickywalls-studio-sales-page *,
	.clickywalls-studio-sales-page *::before,
	.clickywalls-studio-sales-page *::after {
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
	}
}

