/* End custom CSS */

.elementor-3042 .elementor-element.elementor-element-655ded79 {
	--display: flex;
	--padding-top: 10px;
	--padding-bottom: 10px;
	--padding-left: 20px;
	--padding-right: 20px;
}

.elementor-3042 .elementor-element.elementor-element-655ded79:not(.elementor-motion-effects-element-type-background), .elementor-3042 .elementor-element.elementor-element-655ded79 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
	background-color: #fff;
}

.elementor-3042 .elementor-element.elementor-element-4f65a890 .elementor-icon-list-item:not(:last-child):after {
	content: "";
	height: 60%;
	border-color: #ddd;
}

.elementor-3042 .elementor-element.elementor-element-4f65a890 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child):after {
	border-block-start-style: solid;
	border-block-start-width: 1px;
}

.elementor-3042 .elementor-element.elementor-element-4f65a890 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:not(:last-child):after {
	border-inline-start-style: solid;
}

.elementor-3042 .elementor-element.elementor-element-4f65a890 .elementor-inline-items .elementor-icon-list-item:not(:last-child):after {
	border-inline-start-width: 1px;
}

.elementor-3042 .elementor-element.elementor-element-4f65a890 .elementor-icon-list-icon i {
	transition: color .3s;
}

.elementor-3042 .elementor-element.elementor-element-4f65a890 .elementor-icon-list-icon svg {
	transition: fill .3s;
}

.elementor-3042 .elementor-element.elementor-element-4f65a890 {
	--e-icon-list-icon-size: 14px;
	--icon-vertical-offset: 0px;
}

.elementor-3042 .elementor-element.elementor-element-4f65a890 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-3042 .elementor-element.elementor-element-4f65a890 .elementor-icon-list-item > a {
	font-size: 15px;
	font-weight: 400;
	letter-spacing: .5px;
}

.elementor-3042 .elementor-element.elementor-element-4f65a890 .elementor-icon-list-text {
	color: #000;
	transition: color .3s;
}

.elementor-3042 .elementor-element.elementor-element-13e40b07 {
	--display: flex;
	--min-height: 600px;
	--flex-direction: column;
	--container-widget-width: calc(( 1 - var(--container-widget-flex-grow) ) * 100%);
	--container-widget-height: initial;
	--container-widget-flex-grow: 0;
	--container-widget-align-self: initial;
	--flex-wrap-mobile: wrap;
	--justify-content: center;
	--align-items: center;
	--overlay-opacity: .6;
	--padding-top: 50px;
	--padding-bottom: 50px;
	--padding-left: 20px;
	--padding-right: 20px;
}

.elementor-3042 .elementor-element.elementor-element-13e40b07:not(.elementor-motion-effects-element-type-background), .elementor-3042 .elementor-element.elementor-element-13e40b07 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
	background-image: url("https://www.safewareinc.com/nitropack_static/XXRNCyGLGejrThGyuCvavkJppbIGsJSm/assets/images/optimized/rev-ed02423/www.safewareinc.com/wp-content/uploads/2024/04/law-enforcement-banner-2.jpg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}

.elementor-3042 .elementor-element.elementor-element-13e40b07:not(.elementor-motion-effects-element-type-background).nitro-lazy, .elementor-3042 .elementor-element.elementor-element-13e40b07 > .elementor-motion-effects-container > .elementor-motion-effects-layer.nitro-lazy {
	background-image: none !important;
}

.elementor-3042 .elementor-element.elementor-element-13e40b07::before, .elementor-3042 .elementor-element.elementor-element-13e40b07 > .elementor-background-video-container::before, .elementor-3042 .elementor-element.elementor-element-13e40b07 > .e-con-inner > .elementor-background-video-container::before, .elementor-3042 .elementor-element.elementor-element-13e40b07 > .elementor-background-slideshow::before, .elementor-3042 .elementor-element.elementor-element-13e40b07 > .e-con-inner > .elementor-background-slideshow::before, .elementor-3042 .elementor-element.elementor-element-13e40b07 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before {
	background-color: #000;
	--background-overlay: "";
}

.elementor-3042 .elementor-element.elementor-element-146f7f9f {
	--display: flex;
	--margin-top: 20px;
	--margin-bottom: 20px;
	--margin-left: 0px;
	--margin-right: 0px;
	--padding-top: 0px;
	--padding-bottom: 0px;
	--padding-left: 0px;
	--padding-right: 0px;
}

.elementor-3042 .elementor-element.elementor-element-10227cf4 {
	width: var(--container-widget-width, 70%);
	max-width: 70%;
	--container-widget-width: 70%;
	--container-widget-flex-grow: 0;
	text-align: start;
}

.elementor-3042 .elementor-element.elementor-element-10227cf4 > .elementor-widget-container {
	margin: 0px 0px -13px 0px;
	padding: 0px 0px 0px 0px;
}

.elementor-3042 .elementor-element.elementor-element-10227cf4 .elementor-heading-title {
	font-family: "Oswald", Sans-serif;
	font-size: 80px;
	font-weight: 400;
	text-transform: none;
	font-style: normal;
	line-height: 90px;
	color: var(--e-global-color-astglobalcolor5);
}

.elementor-3042 .elementor-element.elementor-element-a53ddef {
	width: var(--container-widget-width, 70%);
	max-width: 70%;
	--container-widget-width: 70%;
	--container-widget-flex-grow: 0;
	font-size: 18px;
	line-height: 29px;
	color: #fff;
}

.elementor-3042 .elementor-element.elementor-element-a53ddef > .elementor-widget-container {
	margin: -8px 0px 0px 0px;
	padding: 20px 0px 0px 0px;
	border-style: solid;
	border-width: 0px 0px 0px 0px;
	border-color: #e7e7e7;
	border-radius: 0px 0px 0px 0px;
}

.elementor-3042 .elementor-element.elementor-element-d48301d {
	--display: flex;
	--flex-direction: column;
	--container-widget-width: 100%;
	--container-widget-height: initial;
	--container-widget-flex-grow: 0;
	--container-widget-align-self: initial;
	--flex-wrap-mobile: wrap;
	--padding-top: 75px;
	--padding-bottom: 0px;
	--padding-left: 20px;
	--padding-right: 20px;
}

.elementor-3042 .elementor-element.elementor-element-acdf08b > .elementor-widget-container {
	padding: 0px 0px 8px 0px;
	border-style: solid;
	border-width: 0px 0px 2px 0px;
}

.elementor-3042 .elementor-element.elementor-element-acdf08b .elementor-heading-title {
	font-weight: 400;
	line-height: 1.5em;
	letter-spacing: 1.25px;
}

.elementor-3042 .elementor-element.elementor-element-80755df {
	--display: flex;
	--flex-direction: column;
	--container-widget-width: 100%;
	--container-widget-height: initial;
	--container-widget-flex-grow: 0;
	--container-widget-align-self: initial;
	--flex-wrap-mobile: wrap;
	--padding-top: 10px;
	--padding-bottom: 75px;
	--padding-left: 20px;
	--padding-right: 20px;
}

.elementor-3042 .elementor-element.elementor-element-e900de8 {
	--display: grid;
	--e-con-grid-template-columns: repeat(4, 1fr);
	--e-con-grid-template-rows: repeat(1, 1fr);
	--grid-auto-flow: row;
}

.elementor-3042 .elementor-element.elementor-element-65ae20b {
	--display: flex;
}

.elementor-3042 .elementor-element.elementor-element-6a28170 {
	text-align: center;
}

.elementor-3042 .elementor-element.elementor-element-9f2d738 {
	--display: flex;
}

.elementor-3042 .elementor-element.elementor-element-abb1943 {
	text-align: center;
}

.elementor-3042 .elementor-element.elementor-element-5752afa {
	--display: flex;
}

.elementor-3042 .elementor-element.elementor-element-ee61065 {
	text-align: center;
}

.elementor-3042 .elementor-element.elementor-element-567f93c {
	--display: flex;
}

.elementor-3042 .elementor-element.elementor-element-aa0aa8f {
	text-align: center;
}

.elementor-3042 .elementor-element.elementor-element-1339e07 {
	--display: flex;
}

.elementor-3042 .elementor-element.elementor-element-78e3fcd {
	text-align: center;
}

.elementor-3042 .elementor-element.elementor-element-196362a {
	--display: flex;
}

.elementor-3042 .elementor-element.elementor-element-3fcf2e1 {
	text-align: center;
}

.elementor-3042 .elementor-element.elementor-element-1fa77e6 {
	--display: flex;
}

.elementor-3042 .elementor-element.elementor-element-74af60f {
	text-align: center;
}

.elementor-3042 .elementor-element.elementor-element-24a6810 {
	--display: flex;
	--flex-direction: column;
	--container-widget-width: 100%;
	--container-widget-height: initial;
	--container-widget-flex-grow: 0;
	--container-widget-align-self: initial;
	--flex-wrap-mobile: wrap;
	--padding-top: 25px;
	--padding-bottom: 0px;
	--padding-left: 20px;
	--padding-right: 20px;
}

.elementor-3042 .elementor-element.elementor-element-12f5b3b > .elementor-widget-container {
	padding: 0px 0px 8px 0px;
	border-style: solid;
	border-width: 0px 0px 2px 0px;
}

.elementor-3042 .elementor-element.elementor-element-12f5b3b .elementor-heading-title {
	font-weight: 400;
	line-height: 1.5em;
	letter-spacing: 1.25px;
}

.elementor-3042 .elementor-element.elementor-element-8efbac2 {
	--display: flex;
	--flex-direction: column;
	--container-widget-width: 100%;
	--container-widget-height: initial;
	--container-widget-flex-grow: 0;
	--container-widget-align-self: initial;
	--flex-wrap-mobile: wrap;
	--padding-top: 10px;
	--padding-bottom: 75px;
	--padding-left: 20px;
	--padding-right: 20px;
}

.elementor-3042 .elementor-element.elementor-element-4c2da68 {
	--display: grid;
	--e-con-grid-template-columns: repeat(4, 1fr);
	--e-con-grid-template-rows: repeat(1, 1fr);
	--grid-auto-flow: row;
}

.elementor-3042 .elementor-element.elementor-element-9e0710b {
	--display: flex;
}

.elementor-3042 .elementor-element.elementor-element-4c93a72 {
	text-align: center;
}

.elementor-3042 .elementor-element.elementor-element-f951555 {
	--display: flex;
	--flex-direction: column;
	--container-widget-width: 100%;
	--container-widget-height: initial;
	--container-widget-flex-grow: 0;
	--container-widget-align-self: initial;
	--flex-wrap-mobile: wrap;
}

body.elementor-page-3042:not(.elementor-motion-effects-element-type-background), body.elementor-page-3042 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
	background-color: #fff;
}

@media (max-width:1372px) {
	.elementor-3042 .elementor-element.elementor-element-146f7f9f {
		--padding-top: 0px;
		--padding-bottom: 0px;
		--padding-left: 0px;
		--padding-right: 0px;
	}
	
	.elementor-3042 .elementor-element.elementor-element-10227cf4 {
		--container-widget-width: 60%;
		--container-widget-flex-grow: 0;
		width: var(--container-widget-width, 60%);
		max-width: 60%;
	}
	
	.elementor-3042 .elementor-element.elementor-element-a53ddef {
		--container-widget-width: 60%;
		--container-widget-flex-grow: 0;
		width: var(--container-widget-width, 60%);
		max-width: 60%;
	}
	
	.elementor-3042 .elementor-element.elementor-element-e900de8 {
		--grid-auto-flow: row;
	}
	
	.elementor-3042 .elementor-element.elementor-element-4c2da68 {
		--grid-auto-flow: row;
	}
}

@media (max-width:1024px) {
	.elementor-3042 .elementor-element.elementor-element-13e40b07 {
		--min-height: 400px;
	}
	
	.elementor-3042 .elementor-element.elementor-element-146f7f9f {
		--padding-top: 0px;
		--padding-bottom: 0px;
		--padding-left: 0px;
		--padding-right: 0px;
	}
	
	.elementor-3042 .elementor-element.elementor-element-10227cf4 {
		width: 100%;
		max-width: 100%;
	}
	
	.elementor-3042 .elementor-element.elementor-element-a53ddef {
		width: 100%;
		max-width: 100%;
	}
	
	.elementor-3042 .elementor-element.elementor-element-e900de8 {
		--grid-auto-flow: row;
	}
	
	.elementor-3042 .elementor-element.elementor-element-4c2da68 {
		--grid-auto-flow: row;
	}
}

@media (max-width:767px) {
	.elementor-3042 .elementor-element.elementor-element-146f7f9f {
		--padding-top: 0px;
		--padding-bottom: 0px;
		--padding-left: 0px;
		--padding-right: 0px;
	}
	
	.elementor-3042 .elementor-element.elementor-element-e900de8 {
		--e-con-grid-template-columns: repeat(1, 1fr);
		--grid-auto-flow: row;
	}
	
	.elementor-3042 .elementor-element.elementor-element-4c2da68 {
		--e-con-grid-template-columns: repeat(1, 1fr);
		--grid-auto-flow: row;
	}
}

/* Start custom CSS for container, class: .elementor-element-f951555 */

/* ---------- Global catalog card styles ---------- */

/* Image borders */
.catalog-card img {
	border: 5px solid #fff;
	/* Inner white border */
	box-shadow: 0 0 0 1px #000;
	/* Outer black border */
	transition: transform .3s ease;
}

/* Base heading style */
.catalog-card h3 {
	font-family: "DM Sans", sans-serif !important;
	font-size: 16px !important;
	font-weight: 400 !important;
	line-height: 1.5 !important;
	margin: 0 !important;
	padding: 0 !important;
	color: #414042 !important;
	transition: color .3s ease;
	letter-spacing: 1px !important;
}

/* Inherit-safe reset (in case wrapper links affect color) */
.catalog-card h3, .catalog-card h3 * {
	color: #414042 !important;
}

/* Hover color on the card itself */
.catalog-card:hover h3, .catalog-card:hover h3 * {
	color: #439b5f !important;
}
