/**
 * CRC Home Surveillance — Muse-accurate visual match
 * Reference: https://crcsecurity.com/home-surveillance.html
 * Scope: .elementor-405 only | Form c421a09 CSS-only | Header/footer untouched
 *
 * Muse tokens:
 *  - Heading blue: #0071BC (18–24px) / product cyan: #00B0D8 (18px)
 *  - CTA red: #D10303
 *  - Intro panel: #1D1D1D @ 0.86 + cyan glow
 *  - Live/About panels: #000 @ 0.86 / 0.44 + cyan glow
 *  - Body: Arial 14px / line-height 21px
 *  - Financing: #1996CB → #0B71B9
 */

html.crc-hs-page,
body.crc-hs-match,
body.crc-hs-match .elementor-405 {
	background: #ffffff !important;
	font-family: Arial, "Helvetica Neue", Helvetica, sans-serif !important;
}

.elementor-405 > .elementor-section.elementor-top-section > .elementor-container {
	max-width: 1140px !important;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
}

.elementor-405 img {
	max-width: 100%;
	height: auto;
}

/* ========== Hero (Muse #u4896 / #u4880-6) ========== */
.elementor-405 .elementor-element-hs_hero {
	min-height: 340px;
}

.elementor-405 .elementor-element-hs_hero > .elementor-container {
	max-width: 1140px !important;
	align-items: center;
	min-height: 340px;
}

.elementor-405 .elementor-element-hs_hero_inner > .elementor-container {
	max-width: 100% !important;
	align-items: center;
}

.elementor-405 .elementor-element-hs_hero_copy > .elementor-widget-wrap {
	background: rgba(0, 0, 0, 0.5) !important;
	padding: 20px 28px !important;
	text-align: center;
}

.elementor-405 .elementor-element-hs_hero_title .elementor-heading-title {
	color: #ffffff !important;
	font-family: Arial, Helvetica, sans-serif !important;
	font-size: 24px !important;
	font-weight: 700 !important;
	line-height: 36px !important;
	text-align: center;
	margin: 0 !important;
}

.elementor-405 .elementor-element-hs_hero_price .elementor-heading-title {
	color: #ffffff !important;
	font-family: Arial, Helvetica, sans-serif !important;
	font-size: 24px !important;
	font-weight: 400 !important;
	line-height: 36px !important;
	text-align: center;
	margin: 0 0 6px !important;
}

.elementor-405 .elementor-element-hs_hero_cam1 img {
	width: 123px !important;
	display: block;
	margin: 0 auto;
}

.elementor-405 .elementor-element-hs_hero_cam2 img {
	width: 105px !important;
	display: block;
	margin: 0 auto;
}

.elementor-405 .elementor-element-hs_hero_qq .elementor-button,
.elementor-405 .elementor-element-hs_qq_btn .elementor-button {
	background: #d10303 !important;
	border: 1px solid #d10303 !important;
	color: #ffffff !important;
	border-radius: 0 !important;
	font-family: Arial, Helvetica, sans-serif !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	padding: 8px 22px !important;
	min-height: 38px;
}

/* ========== Main 2-column content ========== */
.elementor-405 .elementor-element-hs_content {
	background: #ffffff !important;
}

.elementor-405 .elementor-element-hs_content > .elementor-container {
	max-width: 1140px !important;
	align-items: flex-start !important;
	gap: 18px;
}

.elementor-405 .elementor-element-hs_left,
.elementor-405 .elementor-element-hs_mid,
.elementor-405 .elementor-element-hs_right {
	align-self: flex-start !important;
}

/* Muse #u6466 intro dark panel */
.elementor-405 .elementor-element-hs_intro_panel {
	width: 100%;
	margin-bottom: 18px;
}

.elementor-405 .elementor-element-hs_intro_panel > .elementor-container {
	max-width: 100% !important;
}

.elementor-405 .elementor-element-hs_intro_col > .elementor-widget-wrap {
	position: relative;
	isolation: isolate;
	padding: 18px 16px 20px !important;
	background: transparent !important;
}

.elementor-405 .elementor-element-hs_intro_col > .elementor-widget-wrap::before {
	content: "";
	position: absolute;
	inset: 0;
	background-color: #1d1d1d;
	opacity: 0.86;
	box-shadow: 0 0 8px rgba(0, 176, 216, 0.5);
	z-index: 0;
	pointer-events: none;
}

.elementor-405 .elementor-element-hs_intro_col > .elementor-widget-wrap > * {
	position: relative;
	z-index: 1;
}

.elementor-405 .elementor-element-hs_body_txt,
.elementor-405 .elementor-element-hs_body_txt p {
	color: #ffffff !important;
	font-family: Arial, Helvetica, sans-serif !important;
	font-size: 14px !important;
	line-height: 21px !important;
	text-align: left !important;
}

.elementor-405 .elementor-element-hs_body_txt strong {
	color: #ffffff !important;
	font-weight: 700 !important;
}

.elementor-405 .elementor-element-hs_hw_row {
	margin-bottom: 12px;
	width: 100%;
}

.elementor-405 .elementor-element-hs_hw_row > .elementor-container {
	max-width: 100% !important;
	display: flex !important;
	justify-content: space-between;
	align-items: flex-end;
	gap: 6px;
}

.elementor-405 .elementor-element-hs_hw_row .elementor-column {
	flex: 1 1 0 !important;
	max-width: none !important;
}

.elementor-405 .elementor-element-hs_hw1 img,
.elementor-405 .elementor-element-hs_hw2 img,
.elementor-405 .elementor-element-hs_hw3 img,
.elementor-405 .elementor-element-hs_hw4 img,
.elementor-405 .elementor-element-hs_hw5 img {
	width: 78px !important;
	max-width: 100%;
	display: block;
	margin: 0 auto;
}

/* Why Choose + Remote Viewing */
.elementor-405 .elementor-element-hs_why_remote {
	margin: 8px 0 16px;
	width: 100%;
}

.elementor-405 .elementor-element-hs_why_remote > .elementor-container {
	max-width: 100% !important;
	gap: 18px;
	align-items: flex-start !important;
}

.elementor-405 .elementor-element-hs_why_hdr .elementor-heading-title {
	color: #0071bc !important;
	font-family: Arial, Helvetica, sans-serif !important;
	font-size: 24px !important;
	font-weight: 400 !important;
	line-height: 36px !important;
	text-align: left !important;
	margin: 0 0 8px !important;
}

.elementor-405 .elementor-element-hs_remote_hdr .elementor-heading-title,
.elementor-405 .elementor-element-hs_audio_hdr .elementor-heading-title,
.elementor-405 .elementor-element-hs_cnv_hdr .elementor-heading-title,
.elementor-405 .elementor-element-hs_pro_hdr .elementor-heading-title,
.elementor-405 .elementor-element-hs_ptz_hdr .elementor-heading-title,
.elementor-405 .elementor-element-hs_pvd_hdr .elementor-heading-title,
.elementor-405 .elementor-element-hs_face_hdr .elementor-heading-title {
	color: #0071bc !important;
	font-family: Arial, Helvetica, sans-serif !important;
	font-size: 18px !important;
	font-weight: 700 !important;
	line-height: 22px !important;
	margin: 0 0 10px !important;
}

.elementor-405 .elementor-element-hs_pro_subhdr .elementor-heading-title {
	color: #0071bc !important;
	font-size: 18px !important;
	font-weight: 700 !important;
	line-height: 22px !important;
	margin: 0 0 8px !important;
	text-align: center !important;
}

.elementor-405 .elementor-element-hs_why_list .elementor-icon-list-icon i,
.elementor-405 .elementor-element-hs_why_list .elementor-icon-list-icon svg {
	color: #d10303 !important;
	fill: #d10303 !important;
	font-size: 12px !important;
}

.elementor-405 .elementor-element-hs_why_list .elementor-icon-list-text {
	color: #000000 !important;
	font-family: Arial, Helvetica, sans-serif !important;
	font-size: 14px !important;
	line-height: 27px !important;
}

.elementor-405 .elementor-element-hs_remote_txt,
.elementor-405 .elementor-element-hs_remote_txt p,
.elementor-405 .elementor-element-hs_audio_txt,
.elementor-405 .elementor-element-hs_audio_txt p,
.elementor-405 .elementor-element-hs_cnv_txt,
.elementor-405 .elementor-element-hs_cnv_txt p,
.elementor-405 .elementor-element-hs_pro_txt,
.elementor-405 .elementor-element-hs_pro_txt p,
.elementor-405 .elementor-element-hs_ptz_txt,
.elementor-405 .elementor-element-hs_ptz_txt p,
.elementor-405 .elementor-element-hs_pvd_txt,
.elementor-405 .elementor-element-hs_pvd_txt p,
.elementor-405 .elementor-element-hs_face_txt,
.elementor-405 .elementor-element-hs_face_txt p {
	color: #000000 !important;
	font-family: Arial, Helvetica, sans-serif !important;
	font-size: 14px !important;
	line-height: 21px !important;
}

.elementor-405 .elementor-element-hs_audio_img img {
	width: 260px !important;
	max-width: 100%;
	display: block;
	margin: 8px auto;
}

.elementor-405 .elementor-element-hs_cnv_img img {
	width: 268px !important;
	max-width: 100%;
	display: block;
	margin: 0 auto 8px;
}

.elementor-405 .elementor-element-hs_van_img img {
	width: 298px !important;
	max-width: 100%;
	display: block;
	margin: 10px auto;
}

/* Mid column (CNV / Audio / Face) */
.elementor-405 .elementor-element-hs_mid > .elementor-widget-wrap {
	padding-top: 0 !important;
}

/* Right column — Installation + LIVE + Form stay at top (Muse right rail) */
.elementor-405 .elementor-element-hs_right > .elementor-widget-wrap {
	padding-top: 0 !important;
}

.elementor-405 .elementor-element-hs_pro_hdr {
	margin-top: 0 !important;
}

.elementor-405 .elementor-element-hs_pro_hdr .elementor-heading-title {
	margin-top: 0 !important;
}

/* Features were moved into left/mid columns — keep spacing */
.elementor-405 .elementor-element-hs_ptz_hdr,
.elementor-405 .elementor-element-hs_pvd_hdr,
.elementor-405 .elementor-element-hs_face_hdr {
	margin-top: 16px !important;
}

/* Service towns (left column bottom) */
.elementor-405 .elementor-element-hs_sa_txt,
.elementor-405 .elementor-element-hs_sa_txt p {
	color: #000000 !important;
	font-family: Arial, Helvetica, sans-serif !important;
	font-size: 12px !important;
	line-height: 18px !important;
	text-align: center !important;
}

.elementor-405 .elementor-element-hs_sa_txt strong {
	font-size: 14px !important;
	font-weight: 700 !important;
}

/* Live viewing panel Muse #u6517 */
.elementor-405 .elementor-element-hs_live_panel {
	margin: 14px 0 16px;
	width: 100%;
}

.elementor-405 .elementor-element-hs_live_panel > .elementor-container {
	max-width: 100% !important;
}

.elementor-405 .elementor-element-hs_live_col > .elementor-widget-wrap {
	position: relative;
	isolation: isolate;
	padding: 16px 12px !important;
	background: transparent !important;
}

.elementor-405 .elementor-element-hs_live_col > .elementor-widget-wrap::before {
	content: "";
	position: absolute;
	inset: 0;
	background-color: #000000;
	opacity: 0.86;
	box-shadow: 0 0 8px rgba(0, 176, 216, 0.5);
	z-index: 0;
	pointer-events: none;
}

.elementor-405 .elementor-element-hs_live_col > .elementor-widget-wrap > * {
	position: relative;
	z-index: 1;
}

.elementor-405 .elementor-element-hs_live_hdr .elementor-heading-title {
	color: #00b0d8 !important;
	font-family: Arial, Helvetica, sans-serif !important;
	font-size: 18px !important;
	font-weight: 400 !important;
	line-height: 27px !important;
	text-align: center !important;
	margin: 0 0 8px !important;
}

.elementor-405 .elementor-element-hs_remoteview_img img {
	width: 100%;
	max-width: 271px;
	display: block;
	margin: 0 auto;
}

/* Form Muse-style dark panel */
.elementor-405 .elementor-element-c421a09 {
	position: relative;
	isolation: isolate;
	padding: 18px 14px !important;
}

.elementor-405 .elementor-element-c421a09::before {
	content: "";
	position: absolute;
	inset: 0;
	background-color: #000000;
	opacity: 0.72;
	box-shadow: 0 0 8px rgba(0, 176, 216, 0.5);
	z-index: 0;
	pointer-events: none;
}

.elementor-405 .elementor-element-c421a09 .elementor-widget-container,
.elementor-405 .elementor-element-c421a09 .elementor-form {
	position: relative;
	z-index: 1;
}

.elementor-405 .elementor-element-c421a09 .elementor-field-type-html,
.elementor-405 .elementor-element-c421a09 .elementor-field-group label {
	color: #ffffff !important;
	font-family: Arial, Helvetica, sans-serif !important;
	font-size: 12px !important;
}

.elementor-405 .elementor-element-c421a09 .elementor-field-group input,
.elementor-405 .elementor-element-c421a09 .elementor-field-group textarea {
	background: #ffffff !important;
	border: 1px solid #cccccc !important;
	color: #000000 !important;
	font-family: Arial, Helvetica, sans-serif !important;
	font-size: 13px !important;
}

.elementor-405 .elementor-element-c421a09 .elementor-button[type="submit"] {
	background: #00b0d8 !important;
	border: none !important;
	width: 100%;
	font-family: Arial, Helvetica, sans-serif !important;
	font-weight: 700 !important;
	font-size: 13px !important;
	text-transform: uppercase;
	letter-spacing: 0.03em;
}

/* ========== Financing Muse #u15426 ========== */
.elementor-405 .elementor-element-hs_financing {
	background: linear-gradient(90deg, #1996cb 0%, #0b71b9 100%) !important;
	min-height: 87px;
}

.elementor-405 .elementor-element-hs_financing > .elementor-container {
	max-width: 1140px !important;
	align-items: center;
}

.elementor-405 .elementor-element-hs_fin_txt .elementor-heading-title {
	color: #ffffff !important;
	font-family: Arial, Helvetica, sans-serif !important;
	font-size: 24px !important;
	font-weight: 700 !important;
	line-height: 34px !important;
	text-transform: uppercase;
	margin: 0 !important;
}

.elementor-405 .elementor-element-hs_fin_btn .elementor-button {
	background: transparent !important;
	border: 1px solid #ffffff !important;
	color: #ffffff !important;
	border-radius: 0 !important;
	font-family: Arial, Helvetica, sans-serif !important;
	font-size: 14px !important;
	min-height: 40px;
	padding: 8px 20px !important;
}

/* ========== Products + About ========== */
.elementor-405 .elementor-element-hs_products {
	background: #ffffff !important;
}

.elementor-405 .elementor-element-hs_products > .elementor-container {
	max-width: 1140px !important;
	align-items: flex-start;
	gap: 24px;
}

.elementor-405 .elementor-element-hs_prod_col_left .elementor-widget-image-box {
	margin-bottom: 18px;
}

.elementor-405 .elementor-element-hs_prod_col_left .elementor-image-box-title {
	color: #00b0d8 !important;
	font-family: Arial, Helvetica, sans-serif !important;
	font-size: 18px !important;
	font-weight: 400 !important;
	line-height: 27px !important;
}

.elementor-405 .elementor-element-hs_prod_col_left .elementor-image-box-description {
	color: #000000 !important;
	font-family: Arial, Helvetica, sans-serif !important;
	font-size: 14px !important;
	line-height: 21px !important;
}

.elementor-405 .elementor-element-hs_prod_col_left .elementor-image-box-img img {
	width: 140px !important;
	max-width: 140px !important;
	height: 130px !important;
	object-fit: contain;
}

/* About Muse #u49847 — black @ 0.44 + cyan glow, white text */
.elementor-405 .elementor-element-hs_prod_col_right > .elementor-widget-wrap {
	position: relative;
	isolation: isolate;
	padding: 22px 18px !important;
	background: transparent !important;
}

.elementor-405 .elementor-element-hs_prod_col_right > .elementor-widget-wrap::before {
	content: "";
	position: absolute;
	inset: 0;
	background-color: #000000;
	opacity: 0.44;
	box-shadow: 0 0 8px rgba(0, 176, 216, 0.5);
	z-index: 0;
	pointer-events: none;
}

.elementor-405 .elementor-element-hs_prod_col_right > .elementor-widget-wrap > * {
	position: relative;
	z-index: 1;
}

.elementor-405 .elementor-element-hs_crc_logo img {
	width: 303px !important;
	max-width: 100%;
	display: block;
	margin: 0 auto 10px;
}

.elementor-405 .elementor-element-hs_crc_phone .elementor-heading-title {
	color: #00b0d8 !important;
	font-family: Arial, Helvetica, sans-serif !important;
	font-size: 22px !important;
	font-weight: 700 !important;
	text-align: center;
	margin: 0 0 12px !important;
}

.elementor-405 .elementor-element-hs_crc_about,
.elementor-405 .elementor-element-hs_crc_about p {
	color: #ffffff !important;
	font-family: Arial, Helvetica, sans-serif !important;
	font-size: 14px !important;
	line-height: 21px !important;
}

/* --- Responsive (layout only — desktop Muse design unchanged above 1024px) --- */
html.crc-hs-page,
body.crc-hs-match {
	overflow-x: hidden !important;
}

.elementor-405 {
	overflow-x: clip;
	width: 100%;
}

@media (max-width: 1024px) {
	.elementor-405 > .elementor-section.elementor-top-section > .elementor-container {
		max-width: 100% !important;
		width: 100% !important;
		padding-left: 15px !important;
		padding-right: 15px !important;
		box-sizing: border-box;
	}

	/* Hero: allow inner columns to wrap; keep same styles */
	.elementor-405 .elementor-element-hs_hero {
		min-height: 0 !important;
	}

	.elementor-405 .elementor-element-hs_hero > .elementor-container,
	.elementor-405 .elementor-element-hs_hero_inner > .elementor-container {
		flex-wrap: wrap !important;
		min-height: 0 !important;
	}

	.elementor-405 .elementor-element-hs_hero_inner > .elementor-container > .elementor-column {
		flex: 0 0 100% !important;
		width: 100% !important;
		max-width: 100% !important;
	}

	.elementor-405 .elementor-element-hs_hero_cam1 img,
	.elementor-405 .elementor-element-hs_hero_cam2 img {
		width: auto !important;
		max-width: min(123px, 40vw) !important;
		height: auto !important;
	}

	/* Main 3-column content → stack */
	.elementor-405 .elementor-element-hs_content > .elementor-container {
		flex-wrap: wrap !important;
	}

	.elementor-405 .elementor-element-hs_content > .elementor-container > .elementor-column,
	.elementor-405 .elementor-element-hs_left,
	.elementor-405 .elementor-element-hs_mid,
	.elementor-405 .elementor-element-hs_right {
		flex: 0 0 100% !important;
		width: 100% !important;
		max-width: 100% !important;
	}

	/* Hardware camera row: wrap */
	.elementor-405 .elementor-element-hs_hw_row > .elementor-container {
		flex-wrap: wrap !important;
		justify-content: center !important;
	}

	.elementor-405 .elementor-element-hs_hw_row .elementor-column {
		flex: 0 1 auto !important;
		max-width: 20% !important;
	}

	.elementor-405 .elementor-element-hs_hw1 img,
	.elementor-405 .elementor-element-hs_hw2 img,
	.elementor-405 .elementor-element-hs_hw3 img,
	.elementor-405 .elementor-element-hs_hw4 img,
	.elementor-405 .elementor-element-hs_hw5 img {
		width: auto !important;
		max-width: min(78px, 16vw) !important;
		height: auto !important;
	}

	/* Why / remote inner columns → stack */
	.elementor-405 .elementor-element-hs_why_remote > .elementor-container {
		flex-wrap: wrap !important;
	}

	.elementor-405 .elementor-element-hs_why_remote > .elementor-container > .elementor-column {
		flex: 0 0 100% !important;
		width: 100% !important;
		max-width: 100% !important;
	}

	/* Financing → stack */
	.elementor-405 .elementor-element-hs_financing {
		min-height: 0 !important;
	}

	.elementor-405 .elementor-element-hs_financing > .elementor-container {
		flex-wrap: wrap !important;
	}

	.elementor-405 .elementor-element-hs_financing > .elementor-container > .elementor-column {
		flex: 0 0 100% !important;
		width: 100% !important;
		max-width: 100% !important;
	}

	/* Products → stack */
	.elementor-405 .elementor-element-hs_products > .elementor-container {
		flex-wrap: wrap !important;
	}

	.elementor-405 .elementor-element-hs_products > .elementor-container > .elementor-column {
		flex: 0 0 100% !important;
		width: 100% !important;
		max-width: 100% !important;
	}

	.elementor-405 img {
		max-width: 100% !important;
		height: auto !important;
	}

	.elementor-405 .elementor-widget-image-box .elementor-image-box-img img,
	.elementor-405 .elementor-element-hs_prod_col_left .elementor-image-box-img img {
		width: auto !important;
		max-width: min(140px, 100%) !important;
		height: auto !important;
	}

	.elementor-405 .elementor-element-hs_crc_logo img {
		width: auto !important;
		max-width: min(303px, 100%) !important;
	}
}

@media (max-width: 767px) {
	.elementor-405 > .elementor-section.elementor-top-section > .elementor-container {
		padding-left: 12px !important;
		padding-right: 12px !important;
	}

	.elementor-405 .elementor-element-hs_hw_row .elementor-column {
		flex: 0 1 calc(33.33% - 6px) !important;
		max-width: calc(33.33% - 6px) !important;
	}

	.elementor-405 .elementor-widget-image-box .elementor-image-box-wrapper {
		flex-wrap: wrap !important;
	}

	.elementor-405 .elementor-element-c421a09 .elementor-field-group input,
	.elementor-405 .elementor-element-c421a09 .elementor-field-group textarea {
		font-size: 16px !important; /* iOS: avoid input zoom only */
	}
}

@media (max-width: 480px) {
	.elementor-405 > .elementor-section.elementor-top-section > .elementor-container {
		padding-left: 10px !important;
		padding-right: 10px !important;
	}

	.elementor-405 .elementor-element-hs_hw_row .elementor-column {
		flex: 0 1 calc(50% - 6px) !important;
		max-width: calc(50% - 6px) !important;
	}

	.elementor-405 .elementor-element-hs_hw1 img,
	.elementor-405 .elementor-element-hs_hw2 img,
	.elementor-405 .elementor-element-hs_hw3 img,
	.elementor-405 .elementor-element-hs_hw4 img,
	.elementor-405 .elementor-element-hs_hw5 img {
		max-width: min(78px, 28vw) !important;
	}
}
