.elementor-kit-7{--e-global-color-primary:#FCFCFC;--e-global-color-secondary:#F5F5F5;--e-global-color-text:#E5E5E5;--e-global-color-accent:#767676;--e-global-color-fac6337:#2E2E2E;--e-global-color-d97c2ad:#E32B2D;--e-global-color-a9689f9:#0E60B5;--e-global-color-75968f5:#8AC6FF;--e-global-color-9354858:#652F85;--e-global-color-def97a7:#969696;--e-global-color-4b0591f:#FFFFFF;--e-global-color-6dede60:#000000;--e-global-color-75881ba:#02244E;--e-global-color-004e702:#F8FAFC;--e-global-color-e0ec223:#EDF5FF;--e-global-typography-primary-font-family:"Inter";--e-global-typography-primary-font-size:16px;--e-global-typography-primary-font-weight:400;--e-global-typography-primary-line-height:1.6em;--e-global-typography-secondary-font-family:"Inter";--e-global-typography-secondary-font-size:16px;--e-global-typography-secondary-font-weight:400;--e-global-typography-secondary-line-height:1.6em;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-size:16px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.6em;--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-size:16px;--e-global-typography-accent-font-weight:400;--e-global-typography-accent-line-height:1.6em;color:var( --e-global-color-fac6337 );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-7 button,.elementor-kit-7 input[type="button"],.elementor-kit-7 input[type="submit"],.elementor-kit-7 .elementor-button{background-color:var( --e-global-color-75881ba );font-family:"Montserrat", Sans-serif;font-size:16px;font-weight:600;text-decoration:none;color:var( --e-global-color-4b0591f );border-radius:4px 4px 4px 4px;padding:16px 36px 16px 36px;}.elementor-kit-7 button:hover,.elementor-kit-7 button:focus,.elementor-kit-7 input[type="button"]:hover,.elementor-kit-7 input[type="button"]:focus,.elementor-kit-7 input[type="submit"]:hover,.elementor-kit-7 input[type="submit"]:focus,.elementor-kit-7 .elementor-button:hover,.elementor-kit-7 .elementor-button:focus{background-color:#1B5C96;color:#FFFFFF;}.elementor-kit-7 e-page-transition{background-color:#FFBC7D;}.elementor-kit-7 p{margin-block-end:20px;}.elementor-kit-7 a{color:var( --e-global-color-75881ba );text-decoration:underline;}.elementor-kit-7 a:hover{color:#1B5C96;}.elementor-kit-7 h1{color:var( --e-global-color-75881ba );font-size:56px;font-weight:700;}.elementor-kit-7 h2{color:var( --e-global-color-75881ba );font-size:48px;font-weight:700;line-height:1.2em;}.elementor-kit-7 h3{color:var( --e-global-color-75881ba );font-size:39px;font-weight:700;line-height:1.2em;}.elementor-kit-7 h4{color:var( --e-global-color-75881ba );font-size:31px;font-weight:700;line-height:1.2em;}.elementor-kit-7 h5{color:var( --e-global-color-75881ba );font-size:25px;font-weight:500;line-height:1.2em;}.elementor-kit-7 h6{color:var( --e-global-color-75881ba );font-size:20px;font-weight:700;line-height:1.2em;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1260px;}.e-con{--container-max-width:1260px;--container-default-padding-top:80px;--container-default-padding-right:20px;--container-default-padding-bottom:80px;--container-default-padding-left:20px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.elementor-lightbox{background-color:#FFFFFF;--lightbox-ui-color:#000000;--lightbox-ui-color-hover:#000000;--lightbox-text-color:#000000;}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-7{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-7{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}:root { --logo-navy:#02244E; --gray-01:#FCFCFC; --gray-02:#F5F5F5; --gray-03:#e5e5e5; --gray-04:#898989; --gray-05:#2E2E2E; --life-safety:#E32B2D; --critical-power:#0E60B5; --energy-storage:#8AC6FF; --energy-management:#652F85; --specialty:#969696; --white:#ffffff; --centered_content_width_desktop:1260px; --gray-bg:#F8FAFC; }
/* Start custom CSS *//*----------------------------------------
Typography
-----------------------------------------*/

blockquote {
    padding-left: 16px;
    margin-left: 0;
    border-left: solid 2px var(--logo-navy);
}

.text-lg {
    font-size: 18px;
    line-height: 1.6;
}

.text-sm {
    font-size: 14px;
    line-height: 1.6;
}

.text-xs {
    font-size: 12px;
    line-height: 1.6;
}

.menu-title {
    color: var(--gray-04);
    font-size: 14px;
    font-weight: 600;
    line-height: 1.6;
}


/*----------------------------------------
Button Variations 
-----------------------------------------*/

/* Button White*/
.classic-btn-white .elementor-button {
    color: var(--logo-navy);
    background-color: var(--white);

}

.classic-btn-white .elementor-button:hover,
.classic-btn-white .elementor-button:active {
    color: var(--logo-navy);
    background-color: #F5F5F5;
}

/* Button Red*/
.classic-btn-red .elementor-button {
    color: var(--white);
    background-color: var(--life-safety);

}

.classic-btn-red .elementor-button:hover,
.classic-btn-red .elementor-button:active {
    color: var(--white);
    background-color: #B52225;
}

/* Button Blue*/
.classic-btn-blue .elementor-button {
    color: var(--white);
    background-color: var(--critical-power);

}

.classic-btn-blue .elementor-button:hover,
.classic-btn-blue .elementor-button:active {
    color: var(--white);
    background-color: #164A78;
}

/* Button Light Blue*/
.classic-btn-light-blue .elementor-button {
    color: var(--logo-navy);
    background-color: var(--energy-storage);

}

.classic-btn-light-blue .elementor-button:hover,
.classic-btn-light-blue .elementor-button:active {
    color: var(--logo-navy);
    background-color: #75C6ED;
}

/* Button Purple*/
.classic-btn-purple .elementor-button {
    color: var(--white);
    background-color: var(--energy-management);

}

.classic-btn-purple .elementor-button:hover,
.classic-btn-purple .elementor-button:active {
    color: var(--white);
    background-color: #50256C;
}

/* Button Outline*/
.classic-btn-outline .elementor-button {
    border: solid 1px var(--logo-navy);
    color: var(--logo-navy);
    background-color: var(--white);

}

.classic-btn-outline .elementor-button:hover,
.classic-btn-outline .elementor-button:active {
    color: var(--logo-navy);
    background-color: var(--gray-02);
}

/* Button Arrow Link*/
.classic-btn-arrow-link .elementor-button,
.classic-btn-arrow-link .elementor-button:hover,
.classic-btn-arrow-link .elementor-button:active {
	padding: 0;
	background-color: transparent !important;
	color: var(--logo-navy);
	fill: var(--logo-navy);
}
.classic-btn-arrow-link .elementor-button:hover,
.classic-btn-arrow-link .elementor-button:active,
.classic-btn-arrow-link .elementor-button:focus,
.classic-btn-arrow-link .elementor-button:focus-visible {
	color: #1B5C96;
	fill: #1B5C96;
}


/* Pill Gradient*/
.pill-gradient {
    background: radial-gradient(69.85% 126.9% at 100% 50%, #8AC6FF 0%, #02244E 100%);
    background-repeat: no-repeat;
    
}

/* Button Sizes*/
.classic-btn-sm .elementor-button {
    font-size: 12px;
    line-height: 1.6;
    padding: 8px 24px;
}

/*----------------------------------------
Lists
-----------------------------------------*/

ol li::marker,
ul li::marker {
    color: var(--logo-navy, #00263d);
}

ul {
    font-size: 18px;
    line-height: 1.5;
    margin: 20px 0;
}

ul li {
    margin: 20px 0;
}

ul ul,
ul ol {
    margin-top: 0;
}

ol {
    font-size: 18px;
    line-height: 1.5;
    margin: 20px 0;
    counter-reset: item;
}

ol li {
    margin: 20px 0;
}

ol ul,
ol ol {
    margin-top: 0;
}

/*----------------------------------------
Header
-----------------------------------------*/

/* Elementor dropdown container bg reset*/
.site-header-menu .e-n-menu-content>.e-con {
    background: transparent;
}
/* Elementor does not include dropdown menu open parent styles*/
.site-header-menu .e-n-menu-title:has(.e-n-menu-dropdown-icon[aria-expanded="true"]) {
	background-color: var(--gray-02);
	color: var(--logo-navy);
}

/* Elementor menu widget does not include vertical layout option*/
.header-menu-list ul.e-n-menu-heading {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}
.header-menu-list ul.e-n-menu-heading li .e-n-menu-title-container {
    white-space: normal;
    overflow-wrap: anywhere;
    word-break: normal;
    max-width: 100%;
}
.header-menu-list ul li a {
    text-decoration: none;
}
.header-menu-list ul li .e-current a {
    color: #1B5C96 !important;
}

/*----------------------------------------
Footer
-----------------------------------------*/

/* Elementor menu widget does not include vertical layout option*/
.footer-menu-list ul.e-n-menu-heading {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}
.footer-menu-list ul.e-n-menu-heading li .e-n-menu-title-container {
    white-space: normal;
    overflow-wrap: anywhere;
    word-break: normal;
    max-width: 100%;
}
.footer-menu-list ul li a {
    text-decoration: none;
}
.footer-menu-list ul li .e-current a {
    color: #1B5C96 !important;
}

.footer-technical-menu-list ul li a {
    text-decoration: none;
}

/*----------------------------------------
Blog
-----------------------------------------*/
.post-bucket-title a {
    text-decoration: none;
    transition: all .3s;
}
.post-bucket-title a:hover,
.post-bucket-title a:active,
.post-bucket-title a:focus {
    color: #1B5C96 !important;
}

/* Pagination */
.elementor-kit-7 .elementor-pagination {
    
}

.elementor-kit-7 .elementor-pagination .page-numbers {
    font-weight: 600;
    text-decoration: none;
    padding: 8px 24px;
    border-radius: 4px;
    font-size: 12px;
    line-height: 1.2;
    border: solid 1px var(--logo-navy);
}


.elementor-kit-7 .elementor-pagination .page-numbers:hover,
.elementor-kit-7 .elementor-pagination .page-numbers:active,
.elementor-kit-7 .elementor-pagination .page-numbers:focus,
.elementor-kit-7 .elementor-pagination .page-numbers.current {
    color: #ffffff;
     background-color: var(--logo-navy);
}

/*----------------------------------------
Widgets
-----------------------------------------*/

/* Accordion */

.mep-accordion .e-n-accordion-item:not(:last-child) {
    border-bottom: solid 1px var(--gray-03);
}
.mep-accordion .e-n-accordion-item-title {
    padding: 30px !important;
}


/* List - Revit */
.revit-links a {
    text-decoration: none;
}
.revit-links a:hover {
    color: #1B5C96;
}
.revit-links a:hover svg {
    fill: #1B5C96 !important;
}





/* =========================================================
   MEP Product Gallery
   Elementor Pro Media Carousel — Slideshow Skin

   Add this class to the widget:
   mep-product-gallery
   ========================================================= */

.mep-product-gallery {
	--mep-gallery-bg: #f8fafc;
	--mep-gallery-radius: 8px;
	--mep-gallery-gap: 10px;
	--mep-aspect-ratio: 16 / 9;
	--mep-thumbnail-radius: 6px;
	--mep-arrow-size: 44px;
	--mep-arrow-gap: 6px;
	--mep-arrow-offset: 20px;
	--mep-arrow-bg: #ffffff;
	--mep-arrow-color: #02244e;
	--mep-arrow-hover-bg: #02244e;
	--mep-arrow-hover-color: #ffffff;
}


/* =========================================================
   Widget and carousel wrappers
   ========================================================= */

.mep-product-gallery .elementor-widget-container {
	overflow: visible !important;
}

.mep-product-gallery .elementor-carousel-wrapper {
	overflow: visible !important;
}

.mep-product-gallery .elementor-slideshow__header,
.mep-product-gallery .elementor-slideshow__footer {
	display: none !important;
}


/* =========================================================
   Main gallery
   ========================================================= */

.mep-product-gallery .elementor-main-swiper {
	position: relative !important;
	width: 100% !important;
	aspect-ratio: var(--mep-aspect-ratio) !important;
	height: auto !important;
	margin: 0 0 var(--mep-gallery-gap) !important;
	padding: 0 !important;
	overflow: hidden !important;
	border-radius: var(--mep-gallery-radius) !important;
	background: var(--mep-gallery-bg) !important;
}

.mep-product-gallery .elementor-main-swiper > .swiper-wrapper,
.mep-product-gallery .elementor-main-swiper .swiper-wrapper {
	height: 100% !important;
	min-height: 0 !important;
}

.mep-product-gallery .elementor-main-swiper .swiper-slide {
	height: 100% !important;
	min-height: 0 !important;
	overflow: hidden !important;
	border-radius: var(--mep-gallery-radius) !important;
	background: var(--mep-gallery-bg) !important;
}

.mep-product-gallery .elementor-main-swiper .swiper-slide-inner {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	min-height: 0 !important;
}

.mep-product-gallery .elementor-main-swiper .elementor-carousel-image {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	min-height: 0 !important;
	padding: 0 !important;
	background-color: var(--mep-gallery-bg) !important;
	background-position: center !important;
	background-repeat: no-repeat !important;
	background-size: cover !important;
}

.mep-product-gallery .elementor-main-swiper .elementor-carousel-image::before {
	display: none !important;
	content: none !important;
}

.mep-product-gallery .elementor-main-swiper img {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	padding: 0 !important;
	object-fit: cover !important;
	object-position: center !important;
}


/* =========================================================
   Navigation arrows
   ========================================================= */

.mep-product-gallery .elementor-main-swiper .elementor-swiper-button,
.mep-product-gallery .elementor-main-swiper .swiper-button-prev,
.mep-product-gallery .elementor-main-swiper .swiper-button-next {
	position: absolute !important;
	top: auto !important;
	bottom: var(--mep-arrow-offset) !important;
	z-index: 10 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: var(--mep-arrow-size) !important;
	height: var(--mep-arrow-size) !important;
	min-width: var(--mep-arrow-size) !important;
	min-height: var(--mep-arrow-size) !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 50% !important;
	background: var(--mep-arrow-bg) !important;
	color: var(--mep-arrow-color) !important;
	font-size: 16px !important;
	line-height: 1 !important;
	box-shadow: none !important;
	transform: none !important;
	cursor: pointer !important;
	transition:
		background-color 180ms ease,
		color 180ms ease,
		transform 180ms ease !important;
}

.mep-product-gallery .elementor-main-swiper .elementor-swiper-button-prev,
.mep-product-gallery .elementor-main-swiper .swiper-button-prev {
	right: calc(
		var(--mep-arrow-offset) +
		var(--mep-arrow-size) +
		var(--mep-arrow-gap)
	) !important;
	left: auto !important;
}

.mep-product-gallery .elementor-main-swiper .elementor-swiper-button-next,
.mep-product-gallery .elementor-main-swiper .swiper-button-next {
	right: var(--mep-arrow-offset) !important;
	left: auto !important;
}

.mep-product-gallery .elementor-main-swiper .elementor-swiper-button i,
.mep-product-gallery .elementor-main-swiper .elementor-swiper-button svg {
	width: 16px !important;
	height: 16px !important;
	margin: 0 !important;
	color: currentColor !important;
	fill: currentColor !important;
	font-size: 16px !important;
	line-height: 1 !important;
}

.mep-product-gallery .elementor-main-swiper .swiper-button-prev::after,
.mep-product-gallery .elementor-main-swiper .swiper-button-next::after {
	color: currentColor !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	line-height: 1 !important;
}

.mep-product-gallery .elementor-main-swiper .elementor-swiper-button:hover,
.mep-product-gallery .elementor-main-swiper .elementor-swiper-button:focus-visible,
.mep-product-gallery .elementor-main-swiper .swiper-button-prev:hover,
.mep-product-gallery .elementor-main-swiper .swiper-button-next:hover,
.mep-product-gallery .elementor-main-swiper .swiper-button-prev:focus-visible,
.mep-product-gallery .elementor-main-swiper .swiper-button-next:focus-visible {
	background: var(--mep-arrow-hover-bg) !important;
	color: var(--mep-arrow-hover-color) !important;
	transform: translateY(-2px) !important;
}

.mep-product-gallery .elementor-main-swiper .elementor-swiper-button:focus-visible,
.mep-product-gallery .elementor-main-swiper .swiper-button-prev:focus-visible,
.mep-product-gallery .elementor-main-swiper .swiper-button-next:focus-visible {
	outline: 2px solid currentColor !important;
	outline-offset: 3px !important;
}

.mep-product-gallery .elementor-main-swiper .swiper-button-disabled,
.mep-product-gallery .elementor-main-swiper .elementor-swiper-button.swiper-button-disabled {
	opacity: 0.45 !important;
	cursor: not-allowed !important;
	pointer-events: none !important;
}

@media (max-width: 767px) {
  .mep-product-gallery .elementor-main-swiper .elementor-swiper-button {
    display: none !important;
  }
}

/* =========================================================
   Thumbnail gallery
   ========================================================= */

.mep-product-gallery .elementor-thumbnails-swiper {
	position: relative !important;
	width: 100% !important;
	height: auto !important;
	aspect-ratio: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
	border-radius: 0 !important;
	background: transparent !important;
}

.mep-product-gallery .elementor-thumbnails-swiper > .swiper-wrapper,
.mep-product-gallery .elementor-thumbnails-swiper .swiper-wrapper {
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	align-items: flex-start !important;
}

.mep-product-gallery .elementor-thumbnails-swiper .swiper-slide {
	aspect-ratio: var(--mep-aspect-ratio) !important;
	height: auto !important;
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
	border: 0 !important;
	border-radius: var(--mep-thumbnail-radius) !important;
	background: var(--mep-gallery-bg) !important;
	opacity: 0.75 !important;
	cursor: pointer !important;
	transition:
		opacity 180ms ease,
		transform 180ms ease,
		box-shadow 180ms ease !important;
}

.mep-product-gallery .elementor-thumbnails-swiper .swiper-slide-inner {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	min-height: 0 !important;
	max-height: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

.mep-product-gallery .elementor-thumbnails-swiper .elementor-carousel-image {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	min-height: 0 !important;
	max-height: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	background-color: var(--mep-gallery-bg) !important;
	background-position: center !important;
	background-repeat: no-repeat !important;
	background-size: cover !important;
}

.mep-product-gallery .elementor-thumbnails-swiper .elementor-carousel-image::before {
	display: none !important;
	content: none !important;
}

.mep-product-gallery .elementor-thumbnails-swiper img {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	max-height: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	object-fit: cover !important;
	object-position: center !important;
}

.mep-product-gallery .elementor-thumbnails-swiper .swiper-slide:hover {
	opacity: 1 !important;
	transform: translateY(-2px) !important;
}

.mep-product-gallery .elementor-thumbnails-swiper .swiper-slide-thumb-active {
	opacity: 1 !important;
	box-shadow: inset 0 0 0 2px #02244e !important;
}

.mep-product-gallery .elementor-thumbnails-swiper .swiper-slide:not(.swiper-slide-thumb-active) {
	opacity: 0.75 !important;
}


/* =========================================================
   Remove unwanted carousel UI
   ========================================================= */

.mep-product-gallery .swiper-pagination,
.mep-product-gallery .elementor-swiper-button.elementor-lightbox-prevent-close {
	display: none !important;
}

.mep-product-gallery .elementor-carousel-image-overlay {
	display: none !important;
}


/* =========================================================
   Tablet
   ========================================================= */

@media (max-width: 1024px) {
	.mep-product-gallery {
		--mep-arrow-offset: 16px;
	}
}


/* =========================================================
   Mobile
   ========================================================= */

@media (max-width: 767px) {
	.mep-product-gallery {
		--mep-gallery-gap: 8px;
		--mep-arrow-size: 40px;
		--mep-arrow-gap: 6px;
		--mep-arrow-offset: 12px;
	}
}/* End custom CSS */