/**
 * Theme Name:     GeneratePress Child
 * Author:         Tom Usborne
 * Template:       generatepress
 * Text Domain:	   generatepress-child
 * Description:    GeneratePress is a lightweight WordPress theme built with a focus on speed and usability. Performance is important to us, which is why a fresh GeneratePress install adds less than 10kb (gzipped) to your page size. We take full advantage of the block editor (Gutenberg), which gives you more control over creating your content. If you use page builders, GeneratePress is the right theme for you. It is completely compatible with all major page builders, including Beaver Builder and Elementor. Thanks to our emphasis on WordPress coding standards, we can boast full compatibility with all well-coded plugins, including WooCommerce. GeneratePress is fully responsive, uses valid HTML/CSS, and is translated into over 25 languages by our amazing community of users. A few of our many features include 60+ color controls, powerful dynamic typography, 5 navigation locations, 5 sidebar layouts, dropdown menus (click or hover), and 9 widget areas. Learn more and check out our powerful premium version at https://generatepress.com
 */

/*-----------------------------------------STARTER STYLES---------------------------------------  */
* {
	box-sizing: border-box;
}

/* body {
    background-image: url(/wp-content/uploads/2025/07/erik-mclean-4kCCcfGdgiU-unsplash_original.webp) !important;
    background-position: center center !important;
     background-repeat: no-repeat;
    background-size: 100vh 500px !important;
	z-index:9;
	background-attachment: fixed !important;
}*/

body:before {
	content: '';
	height: 100vh;
	left: 0;
	position: fixed;
	right: 0;
	top: 0;
	z-index: -2;
	background: url(/wp-content/uploads/2025/07/erik-mclean-4kCCcfGdgiU-unsplash_original.webp) !important;
	background-position: center center !important;
	background-repeat: no-repeat;
	background-size: cover !important;
}


h1 {
	font-size: clamp(40px, 5vw, 50px) !important;
	font-weight: 400 !important;
	 line-height: clamp(44px, 6vw, 55px) !important;
}

h2 {
	font-size: clamp(30px, 4.5vw, 45px) !important;
/* 	font-weight: 700 !important; */
	 line-height: clamp(37px, 6vw, 55px) !important;
}

h3 {
	font-size: clamp(22px, 4.5vw, 45px) !important;
/* 	font-weight: 700 !important; */
	 line-height: clamp(30px, 6vw, 55px) !important;
}

p {
	font-size: clamp(14px, 2vw, 17.5px) !important;
/* 	font-weight: 400; */
	margin: 0;
}

.a-style-1 a {
	color: #20294A;
}

.a-style-1 a:hover {
	color: #20294A !important;
/* 	text-decoration: underline !important; */
}

.a-style-2 a {
	color: #9f3432;
}

/* .a-style-2 a:hover {
	text-decoration: underline !important;
} */

.a-style-3 a {
	color: #e6e6e6;
}

a:hover {
	text-decoration: underline !important;
}

.FS-60 h2 {
	font-size: clamp(40px, 6vw, 60px) !important;
	font-weight: 700 !important;
	line-height: clamp(44px, 6.6vw, 66px) !important;
}

.FS-60-2 h2 {
	font-size: clamp(30px, 6vw, 60px) !important;
	font-weight: 400 !important;
	line-height: clamp(37px, 7.4vw, 74px) !important;
}

.FS-45 h2 {
	font-size: clamp(30px, 4.5vw, 45px) !important;
	line-height: clamp(37px, 6vw, 55px) !important;
}

.FS-40 h2 {
	font-size: clamp(22px, 4vw, 40px) !important;
	font-weight: 400 !important;
	line-height: clamp(28px, 5vw, 50px) !important;
}

.FS-38 h2 {
	font-size: clamp(30px, 3.8vw, 37.5px) !important;
	font-weight: 700;
	line-height: clamp(37px, 4.6vw, 46px) !important;
}

.FS-30 h2 {
	font-size: clamp(30px, 3vw, 30px) !important;
	line-height: clamp(37px, 3.7vw, 37px) !important;
}

.FS-25 h2 {
	font-size: clamp(20px, 2.5vw, 25px) !important;
	line-height: clamp(25px, 3.1vw, 31px) !important;
}

.FS-32 a {
	font-size: clamp(18px, 3.2vw, 32px) !important;
	font-weight: 400 !important;
	line-height: clamp(22px, 4vw, 40px) !important;
}

.FS-29 p {
	font-size: clamp(23px, 3vw, 29px) !important;
	font-weight: 400;
	line-height: clamp(28px, 3.5vw, 35px) !important;
}

.FS-28 h3 {
	font-size: clamp(18px, 3vw, 27.5px) !important;
	font-weight: 700 !important;
	line-height: clamp(22px, 3.4vw, 34px) !important;
}

.FS-23 p {
	font-size: clamp(22.5px, 2.3vw, 22.5px) !important;
/* 	font-weight: 700 !important; */
	line-height: clamp(28px, 2.8vw, 28px) !important;
}

.FS-21 p,
.FS-21 a,
.FS-21 span{
	font-size: clamp(14px, 2.1vw, 21px) !important;
/* 	font-weight: 400 !important; */
	line-height: clamp(16px, 2.6vw, 26px) !important;
}

.FS-18 a,
.FS-18 span{
	font-size: clamp(14px, 2vw, 17.5px) !important;
/* 	font-weight: 400; */
	line-height: 18px !important;
}

.menu-item a {
	font-size: 18px !important;
}

.FSS-18 p{
	font-size: 18px !important;
}

.FS-15 a{
	font-size: clamp(14px, 2vw, 15px) !important;
	line-height: clamp(18px, 2.8vw, 28px) !important;
}

.FS-16 p{
	font-size: clamp(14px, 2vw, 16px) !important;
/* 	font-weight: 400; */
	line-height: 20px !important;
}

.FS-14 a,
.FS-14 span,
.FS-14 p{
	font-size: 14px !important;
	line-height: 20px !important;
}

.FSS-13 p {
	font-size: 13px !important;
}

.FS-10 p{
	font-size: 10px !important;
	line-height: 19px !important;
}

.FS-12 p, 
.FS-12 span{
	font-size: 12px !important;
	line-height: 18px !important;
}

.FS-12 a:hover {
	text-decoration: none !important;
}

.box-shadow {
	box-shadow: 0px 4px 12px 1.28px rgba(0, 0, 0, 0.3);
}

.text-shadow {
	text-shadow: 1px 2px 3px rgba(0, 0, 0, 0.9);
}

.btn-style a:hover{
	background-color: #861b19 !important;
	text-decoration: none !important;
}

.btn-style-2 a:hover{
	background-color: #071031 !important;
	text-decoration: none !important;
}

.btn-style-3 a:hover{
	background-color: #008b9f !important;
	text-decoration: none !important;
}

/* -------------------------------------------HEADER STYLES--------------------------------------- */
@media (min-width: 820px) {
	.elementor-nav-menu--layout-horizontal .elementor-nav-menu>li {
		justify-content: center;
	}

	.elementor-nav-menu a {
		justify-content: left;
		border: none !important;
		
	}
	
/* 	div#page {
    z-index: -1;
    position: relative;
} */
}

@media (max-width: 820px) {
	.menu-items {
		position: absolute !important;
		right: 10px !important;
		top: 10px !important;
/* 		background-color: #fff; */
	}
	
	li.menu-item {
		background-color: #20294A;
	}
	
	li.menu-item a {
		color: #fff !important;
	}
	
	.elementor-nav-menu .sub-arrow .e-font-icon-svg {
		fill: #fff;
	}
	
	li.current-menu-item>a{
		background-color: #fff !important;
		color: #20294A !important;
	}
	
	li.current-menu-item svg {
		fill: #20294A !important;
	}
	
	ul#menu-2-3ad3535 {
    	padding-left: 15px;
		background-color: #20294A;
		height: 100vh;
		}
	
	.elementor-66 .elementor-element.elementor-element-3ad3535 .elementor-nav-menu--dropdown li {
/* 		border-width: 1px 0px 0px 0px; */
		border-color: #fff !important;			
	}
	
	.elementor-66 .elementor-element.elementor-element-3ad3535 .elementor-nav-menu--dropdown li:not(:last-child) {
/* 		border-width: 1px 0px 1px 0px; */
	}
	
	.elementor-nav-menu--toggle:has(.elementor-menu-toggle.elementor-active) {
		background-color: #20294A;
		position: fixed;
	}
}

.header-content a:hover {
	text-decoration: none !important;
}

/*-----------------------------------------MOBILE HEADER STYLES--------------------------------------*/
/* Hide the dropdown menu by default - positioned off-screen to the right */
@media (max-width: 820px) {
	.elementor-nav-menu--dropdown {
		position: fixed !important;
		top:0 !important;
		right: -100% !important; /* Start completely off-screen to the right */
		width: 600px !important; /* Set a fixed width for the sliding menu */
		/* height: 100vh !important;  */
		background: #20294A !important; /* White background */
		box-shadow: -5px 0 15px rgba(0, 0, 0, 0.1) !important; 
		z-index: 9999 !important;
		overflow-y: auto !important; /* Allow scrolling if content is too long */
		padding: 20px !important;
		transition: right 0.3s ease-in-out !important; /* Smooth slide animation */
		transform: none !important; /* Remove any existing transforms */
		opacity: 1 !important; /* Keep opacity at 1 */
	}

	/* When menu is active/visible - slide in from right */
	.elementor-nav-menu--dropdown[aria-hidden="false"] {
		right: 0 !important; /* Slide into view */
	}

	/* Style the menu items in the sliding panel */
	.elementor-nav-menu--dropdown .elementor-nav-menu {
		flex-direction: column !important;
		width: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
		padding-top: 10% !important;
        height: 100vh;
	}

	.elementor-nav-menu--dropdown .menu-item {
		width: 100% !important;
		/* border-bottom: 1px solid #f0f0f0 !important; */
		margin-bottom: 0 !important;
	}

	.elementor-nav-menu--dropdown .elementor-item {
		/* padding: 15px 0 !important; */
		/* display: block !important; */
		/* width: 100% !important; */
		/* color: #333 !important; */
		/* text-decoration: none !important; */
		/* font-size: 16px !important; */
		/* border: none !important; */
	}

	.elementor-nav-menu--dropdown .elementor-item:hover {
		/* color: #007cba !important;  */
		/* background: transparent !important; */
	}

	/* Style submenus within the sliding panel */
	.elementor-nav-menu--dropdown .sub-menu {
		position: static !important;
		/* display: block !important; */
		/* background: #f8f8f8 !important; */
		margin: 10px 0 !important;
		padding: 10px 15px !important;
		/* border-radius: 5px !important; */
		/* box-shadow: none !important; */
	}

	.elementor-nav-menu--dropdown .sub-menu .elementor-sub-item {
		/* padding: 8px 0 !important; */
		font-size: 14px !important;
		/* color: #666 !important; */
	}

	.elementor-nav-menu--dropdown .sub-menu .elementor-sub-item:hover {
		/* color: #007cba !important; */
	}

	/* Overlay background when menu is open */
	.elementor-nav-menu--dropdown[aria-hidden="false"]::before {
		content: '';
		position: fixed;
		top: 0;
		left: 0;
		right: 600px; /* Leave space for the sliding menu */
		bottom: 0;
		background: rgba(0, 0, 0, 0.5);
		z-index: -1;
	}

	/* Style the menu toggle button */
	.elementor-menu-toggle {
		z-index: 10000 !important; /* Keep toggle button above the sliding menu */
	}
}

/* Responsive adjustments */
@media (max-width: 767px) {
    .elementor-nav-menu--dropdown {
        width: 350px !important; /* Slightly narrower on mobile */
    }
    
    .elementor-nav-menu--dropdown[aria-hidden="false"]::before {
        right: 350px !important;
    }
	
	.elementor-nav-menu--dropdown .elementor-nav-menu {
		padding-top: 15% !important;
	}
}

@media (max-width: 480px) {
    .elementor-nav-menu--dropdown {
        width: 320px !important; /* Even narrower on small mobile */
    }
    
    .elementor-nav-menu--dropdown[aria-hidden="false"]::before {
        right: 320px !important;
    }
}

@media (min-width: 768px) {
    .elementor-menu-toggle.elementor-active {
		margin-top: 30px !important;
	}
}


/*----------------------------------------HOME PAGE STYLES--------------------------------*/

.img-height {
	height: 100% !important;
}
	
.elementor-swiper-button {
    border: 2px solid #c5bfbf !important;
    border-radius: 50%;
    padding: 5px;
    background-color: #fff;
/* 	display: none !important; */
}

.slider-style .elementor-swiper-button {
	display: none !important;
}

.elementor-swiper-button.elementor-swiper-button-next svg{
	margin-left: 3px !important;
}

.elementor-swiper-button.elementor-swiper-button-prev svg{
	margin-right: 3px !important;
}

.slider-style:hover .elementor-swiper-button {
	display: flex !important;
}

.gallery-container {
    height: 100% !important;
    overflow: visible !important;
    position: relative !important;
}

.gallery-container-int {
    border: 2px solid #dbdfdf;
    border-radius: 2px;
    z-index: 1 !important;
    position: relative;
}


.e-con-full.gallery-container.e-flex.e-con.e-child::after {
    background: #777;
    box-shadow: 0 15px 10px #777;
    content: '';
    height: 10px;
    position: absolute;
    bottom: 15px;
    width: 50%;
    max-width: 300px;
    z-index: 0;
	right: 10px;
    transform: rotate(3deg);
}

.e-con-full.gallery-container.e-flex.e-con.e-child:before {
    background: #777;
    box-shadow: 0 15px 10px #777;
    content: '';
    height: 10px;
    position: absolute;
    top: unset;
	bottom: 15px;
    width: 50%;
    max-width: 300px;
    z-index: 0;
	left: 10px;
    transform: rotate(-3deg);
}

.gallery-container-2 {
    overflow: visible !important;
}

.gallery-container-2::before,
.gallery-container-2::after {
    background: #777;
    box-shadow: 0 15px 10px #777;
    content: '';
    height: 10px;
    position: absolute;
    bottom: 15px;
    width: 30%;
    max-width: 300px;
    z-index: -1;
}


.gallery-container-2::before{
    left: 10px;
    transform: rotate(-3deg);
}

.gallery-container-2::after{
    right: 10px;
    transform: rotate(3deg);
}

.abs-img-cont {
	height: 100% !important;
}

.strong-style strong {
	color: #20294A;
	font-size: clamp(16px, 2.5vw, 21px) !important;
	font-weight: 700 !important;
	line-height: clamp(21px, 2.5vw, 29px) !important;
}

.strong-style-2 strong {
	font-size: clamp(16px, 2.5vw, 21px) !important;
	font-weight: 700 !important;
	line-height: clamp(21px, 2.5vw, 29px) !important;
}

.pointer {
	cursor: pointer;
}

.gallery-img img {
    min-height: 20.5vw !important;
    object-fit: cover !important;
}

@media (max-width: 767px) {
	.gallery-img img {
    min-height: 61.5vw !important;
}
}

/*-------------------------------------------FOOTER STYLES------------------------------------------------*/
.footer-menu .elementor-nav-menu--main .elementor-nav-menu ul {
	bottom: 100% !important;
	top: unset !important;
}

a.elementor-sub-item:hover {
    text-decoration: none !important;
}
/*---------------------------------------------READ MORE STYLES--------------------------------------------*/
.read-more-content {
    display: none;
}

span.read-more-toggle,
span.toggle-readmore,
a.toggle-readmore{
    color: #4090cd;
    cursor: pointer;
    text-decoration: none;
	font-size: 14px !important;
}

a.toggle-readmore {
	float: left;
}

.read-more-toggle:hover,
.toggle-readmore:hover{
    color: #4090cd !important;
}

a.toggle-readmore:hover{
    color: #4090cd !important;
}

span.no-FS {
	font-size: 18px !important;	
}

a.less-link {
    color: #4090cd !important;
    cursor: pointer;
    text-decoration: underline;
    display: none;
	font-size: 14px !important;
	text-align: left;
	padding-left: 20px;
}

a.less-link:hover {
    color: #4090cd !important;
    text-decoration: underline;
}

a.no-pad {
	padding: 0px;
}

/*--------------------------------------------FORM STYLES-----------------------------------------------*/
.ff-default .ff-el-form-control {
	font-family: 'Open Sans', sans-serif !important;
}

.form-input .ff-el-form-control{
    border: 2px solid #ddd !important;
    border-radius: 3px !important;
    color: #333333 !important;
    font-size: 14px !important;
    padding: 12px !important;
}

.form-input .ff-el-form-control:focus{
	border: 2px solid #000 !important;
}

.fluentform .ff-el-group {
	margin-bottom: 23px !important;
}

.ff-default .ff_btn_style {
	font-family: 'Open Sans', sans-serif !important;
	font-size: 18px !important;
	line-height: normal !important;
}

.fluentform .ff-el-group.form-btn {
	margin-bottom: 0px !important;
}

.form-btn button {
	background-color: #20294a !important;
	padding: 20px 50px !important;
	border-radius: 12px !important;
	opacity: unset !important;
	box-shadow: 0px 4px 12px 1.28px rgba(0, 0, 0, 0.3);
}


.form-btn button:hover {
	background-color: #071031 !important;
	opacity: unset !important;
}

.fluentform .text-danger {
    color: red !important;
    font-weight: bold !important;
}

/*---------------------------------------GALLERY POPUP SLIDER STYLES-----------------------------------------------*/
/* Popup Modal Styles */
.popup-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0,0.65);
    z-index: 9999;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 20px;
    box-sizing: border-box;
}

.popup-overlay.active {
    display: flex;
}

.popup-content {
    position: relative;
    width: 90%;
    max-width: 1144px;
    height: auto;
    max-height: 100vh;
    background: white;
    border-radius: 8px;
/*     overflow: hidden; */
       -moz-box-shadow: 5px 5px 4px rgba(0,0,0,0.75);
    -webkit-box-shadow: 5px 5px 4px rgba(0, 0, 0, 0.75);
    box-shadow: 5px 5px 4px rgba(0, 0, 0, 0.75);
}

/* Close Button */
/* .popup-close {
    position: absolute;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
    background: rgba(0, 0, 0, 0.7);
    border: none;
    color: white;
    font-size: 14px;
    cursor: pointer;
    z-index: 10001;
    padding: 8px 16px;
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 500;
    transition: background-color 0.3s ease;
}

.popup-close:hover {
    background: rgba(0, 0, 0, 0.9);
} */

/* Slick Slider Customization */
.popup-slider {
    background: transparent;
    width: 100%;
    height: 100%;
}

.popup-slider .slick-slide {
    text-align: center;
    outline: none;
}

.popup-slider .slick-slide img {
    width: 100%;
    height: 764px;
    max-height: 80vh;
    object-fit: cover;
    display: block;
}

/* Custom Arrow Styles */
.popup-slider .slick-prev,
.popup-slider .slick-next {
    width: 40px;
    height: 40px;
    z-index: 10000;
    background: rgba(0, 0, 0, 0.5);
    border-radius: 50%;
    top: 50%;
    transform: translateY(-50%);
}

.popup-slider .slick-prev {
    left: 20px;
}

.popup-slider .slick-next {
    right: 20px;
}

.popup-slider .slick-prev:before,
.popup-slider .slick-next:before {
    font-size: 20px;
    color: white;
    line-height: 1;
}

.popup-slider .slick-prev:hover,
.popup-slider .slick-next:hover {
    background: rgba(0, 0, 0, 0.8);
}

/* Dots Customization */
.popup-slider .slick-dots {
    bottom: 60px;
    z-index: 10001;
}

/* .popup-slider .slick-dots li {
    margin: 0 3px;
} */

.popup-slider .slick-dots li button:before {
    color: rgba(255, 255, 255, 0.6);
    font-size: 10px;
    width: 10px;
    height: 10px;
    border-radius: 50%;
}

.popup-slider .slick-dots li.slick-active button:before {
    color: white;
}

/* Counter */
/* .slide-counter {
    position: absolute;
    bottom: 20px;
    right: 20px;
    color: white;
    font-size: 12px;
    z-index: 10001;
    background: rgba(0, 0, 0, 0.7);
    padding: 4px 8px;
    border-radius: 12px;
    font-weight: 500;
} */

/* Responsive */
@media (max-width: 768px) {
    .popup-content {
        width: 95%;
        max-width: none;
        margin: 10px;
    }
    
    .popup-slider .slick-slide img {
        height: 60vh;
        max-height: 60vh;
    }
    
    .popup-slider .slick-prev {
        left: 10px;
        width: 35px;
        height: 35px;
    }
    
    .popup-slider .slick-next {
        right: 10px;
        width: 35px;
        height: 35px;
    }
    
    .popup-slider .slick-prev:before,
    .popup-slider .slick-next:before {
        font-size: 18px;
    }
    
    .slide-counter {
        bottom: 15px;
        right: 15px;
        font-size: 11px;
    }
    
    .popup-close {
        bottom: 15px;
        padding: 6px 12px;
        font-size: 12px;
    }
}

@media (max-width: 480px) {
    .popup-overlay {
        padding: 10px;
    }
    
    .popup-slider .slick-slide img {
        height: 50vh;
        max-height: 50vh;
    }
}


/**************************************/
.popup-overlay .popup-slider {
    background: #f7f7f7 url('/wp-content/uploads/2025/07/lightbox-content-bg-dark-cadac86b032baee3a9d4d003ec4960772526047533fe366488ee4eefdb9ab41b.jpg') repeat;
    background-position: left bottom;
    width: 100%;
    height: 100%;
    border: 10px solid transparent;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
}
.popup-overlay .slick-slide img{
        border: 2px solid #dbdfdf;
}

.popup-overlay .slide-counter {
     background: #f7f7f7 url('/wp-content/uploads/2025/07/lightbox-content-bg-dark-cadac86b032baee3a9d4d003ec4960772526047533fe366488ee4eefdb9ab41b.jpg') repeat;
    background-position: left bottom;
    width: 100%;
    height: 100%;
    border-bottom: 10px solid transparent;
    text-align: center;
    color: #fff;
    font-weight: bold;
    font-size:15px;
    line-height:19px;
        font-family: 'Open Sans', sans-serif;
}
.popup-overlay .slick-dotted.slick-slider{
    margin:unset !important;
}

.popup-overlay div#fancybox-footer {
    background: #dcdbdb;
    -moz-border-radius-bottomleft: 5px;
    -moz-border-radius-bottomright: 5px;
    -webkit-border-bottom-left-radius: 5px;
    -webkit-border-bottom-right-radius: 5px;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
    border-top: 1px solid #b3b2b2;
    -moz-box-shadow: 5px 5px 4px rgba(0,0,0,0.75);
    -webkit-box-shadow: 5px 5px 4px rgba(0, 0, 0, 0.75);
    box-shadow: 5px 5px 4px rgba(0, 0, 0, 0.75);
    height: 43px;
    display: none;
    padding: 0 12px;
    position: relative;
    z-index: 1103;
}

.popup-overlay a#fancybox-close {
    background: url(/wp-content/uploads/2025/07/lightbox-close-7a40f1f94d566d47371fca7ae06514bfed299cae94a311e75fdf441c0dc7eec3.gif) no-repeat left center;
    color: #525252;
    cursor: pointer;
    float: left;
    font-size: 15px;
    line-height: 36px;
    padding-left: 32px;
    text-transform: lowercase;
}
.popup-overlay ul.slick-dots {
    display:none !important;
}
a#fancybox-left,a#fancybox-right  {
    position: absolute;
    bottom: 0px;
    height: 100%;
    width: 35%;
    cursor: pointer;
    outline: none;
    background: transparent url(/wp-content/uploads/2025/07/blank-6e8ddbcd39cdd88619bd7ad9a69323b8a52b7fd13728152c49f9ce73671b705e.gif);
    z-index: 1102;
    /* display:none; */
}
#fancybox-left:hover, #fancybox-right:hover
 {
    visibility: visible;
}
a#fancybox-left{
    left: -38px;
}
a#fancybox-right {
    right: -38px;
}

span#fancybox-left-ico {
        background-image: url(/wp-content/uploads/2025/07/lightbox-arrows-19829aea47fbd9764e4a1ec1e7111b0b0845c6fa85fa1cb9ae9282a9ced807f5.png);
    background-position: 0 -63px;
}
#fancybox-left-ico, #fancybox-right-ico {
    position: absolute;
    top: 50%;
    left: -9999px;
    width: 63px;
    height: 63px;
    margin-top: -31px;
    cursor: pointer;
    z-index: 1102;
    display: block;
}
#fancybox-left:hover span {
    left: 20px;
}
#fancybox-right:hover span {
    left: auto;
    right: 20px;
}
#fancybox-right-ico {
    background-image: url(/wp-content/uploads/2025/07/lightbox-arrows-19829aea47fbd9764e4a1ec1e7111b0b0845c6fa85fa1cb9ae9282a9ced807f5.png);
    background-position: 0 0;
}
.popup-overlay .slick-arrow{
    display:none !important;
}

a#fancybox-close:hover {
    text-decoration:none !important;
}

.water-heater .popup-content {
	max-width: 818px !important;
}

@media (min-width: 767px) {
	.water-gallery .gallery-container {
		max-height: 22.1vw !important;
	}
}

/*--------------------------------------------------POPUP STYLES----------------------------------------*/
#elementor-popup-modal-1154 .dialog-message {
	width: 228px !important;
	    background: #fff !important;
    border: 2px solid #b2b2b2 !important;
    border-radius: 5px !important;
}

#elementor-popup-modal-1154 .dialog-widget-content {
    border-radius: 5px !important;
}

.elementor-popup-modal .dialog-close-button svg {
	fill: #fff !important;
}

.elementor-popup-modal .dialog-close-button {
	top: -8px !important;
    right: -8px !important;
    background-color: black !important;
    padding: 12px !important;
    border-radius: 50% !important;
}

/*-----------------------------------------------HELPFUL LINKS---------------------------------------------*/
.img-shadow img{
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3) !important;
	width: 220px !important;
}

.line-height-1 span {
	line-height: 22px !important;
}

.red-strong strong {
	color: #9f3432 !important;
}

/*-----------------------------------------------CONTACT POPUP STYLES-----------------------------------------*/

#elementor-popup-modal-1755 .dialog-widget-content{
	width: 60vw !important;
	border-radius: 50px 30px 30px 50px!important;
}

#elementor-popup-modal-1755 .dialog-message{
	width: 60vw !important;
	border-radius: 30px !important;
}

@media(max-width: 1024px) {
	#elementor-popup-modal-1755 .dialog-widget-content,
	#elementor-popup-modal-1755 .dialog-message{
		width: 90vw !important;
	}
}

.FS-custom p {
	font-size: 23px !important;
}

@media(max-width: 767px) {
	.FS-custom p {
		font-size: 18px !important;
	}
}

.contac-form-2 .form-input .ff-el-form-control {
    border: 2px solid #ddd !important;
    border-radius: 7px !important;
    color: #20294A !important;
    font-size: 14px !important;
    padding: 12px !important;
    background: #edebeb;
}

form.fluent_form_5 .ff-btn-submit:not(.ff_btn_no_style) {
    background-color: #9F3432 !important;
    width: 100%;
	border-radius: 12px !important;
	opacity: unset !important;
	box-shadow: 0px 4px 12px 1.28px rgba(0, 0, 0, 0.3);
}

form.fluent_form_5 .ff-btn-submit:not(.ff_btn_no_style):hover {
	background-color: #861B19 !important;
	opacity: unset !important;
}

#elementor-popup-modal-1755 .dialog-close-button {
    top: 4% !important;
    right: 94% !important;
    background-color: unset !important;
    padding: 0px !important;
    border-radius: unset !important;
    font-size: 30px;
}

@media (max-width: 767px) {
	#elementor-popup-modal-1755 .dialog-close-button {
		top: 2% !important;
		right: 5% !important;
	}
}

/*----------------------------------------------------------EXTRA STYLES-----------------------------------------------*/
.financing-module {
	font-family: "Questrial", sans-serif;
	font-size: 14px;
	line-height: 17px;
	color: #333;
}

@media (max-width: 767px) {
	.financing-module {
		width: 90vw !important;
	}
}

.ff-el-group:has(.ff-el-recaptcha) {
	display: flex;
	justify-content: center;
}


/*********************** New css ********************/
.h-18 h2{
    font-size:16px !important;
    line-height:22px !important
}
.h-18 a{
    font-size:16px !important;
    line-height:22px !important
}
@media(max-width:1047px) and (min-width:1024px)
{
    .menu-item a {
    font-size: 16px !important;
}
 
}
@media(max-width:1024px) and (min-width:821px)
{
    .menu-item a {
    font-size: 14px !important;
}
    .header-content-left{
        width:18% !important;
    }
     .header-content-right{
        width:82% !important;
    }
    .h-18 h2{
    font-size:16px !important;
    line-height:22px !important
}
}
@media(max-width:887px) and (min-width:821px)
{
    .menu-item a {
    font-size: 14px !important;
        padding:8px !important;
}
}
@media(min-width:821px){
  .elementor-location-header {
     position:sticky !important;
    top:0px !important;
    z-index:999 !important;
    width: 100% !important;
    box-shadow: rgba(9, 30, 66, 0.25) 0px 4px 8px -2px, rgba(9, 30, 66, 0.08) 0px 0px 0px 1px !important; 
}
}
@media(max-width:820px){
  .mobile-header .top-header{
      position:fixed !important;
    top:0px !important;
    z-index:999 !important;
    width: 100% !important;
    box-shadow: rgba(9, 30, 66, 0.25) 0px 4px 8px -2px, rgba(9, 30, 66, 0.08) 0px 0px 0px 1px !important; 
}
}
@media(max-width:767px)
{
    .h-18 h2{
    font-size:14px !important;
    line-height:18px !important
}
.h-18 a{
    font-size:14px !important;
    line-height:18px !important
}
}

@media (max-width: 820px) {
    .elementor-nav-menu--dropdown[aria-hidden="false"] {
        left: 0 !important;
        /* height: 100vh !important; */
    }
    .elementor-menu-toggle.elementor-active {
        top: -18px !important;
    position: absolute;
}
    .elementor-nav-menu--dropdown[aria-hidden="false"]::before {
    right: 0px !important;
    left: 600px !important;
}
}
@media (max-width: 767px) {
    .elementor-nav-menu--dropdown[aria-hidden="false"]::before {
        right: 0px !important;
        left: 350px !important;
    }
    
}
@media (max-width: 820px) {
    .elementor-nav-menu--dropdown {
        box-shadow:unset !important;
    }
}
@media (max-width: 820px) {
    .elementor-nav-menu--dropdown .menu-item a {
        padding: 15px 10px !important;
    }
      .elementor-nav-menu--dropdown .menu-item {
        border-bottom: 1px solid #f0f0f0 !important;
    }
    .elementor-nav-menu--dropdown .menu-item:last-child{
        border: unset !important;
    }
}
    @media (max-width: 820px) {
    .elementor-nav-menu--dropdown {
        top:0px !important;
    }
    	.elementor-nav-menu--dropdown .elementor-nav-menu {
        height: 100vh !important;
	}
}
        @media (min-width: 768px) {
    .elementor-menu-toggle.elementor-active {
        margin-top: unset !important;
    }
}
        @media (max-width: 480px) {
    .elementor-nav-menu--dropdown[aria-hidden="false"]::before {
        right: 0px !important;
        left: 320px !important;
    }
}
.service-mobile-btn a{
    width:100% !important;
}

@media (max-width: 820px) {
    .service-mobile-btn-container{
    position:fixed !important;
    bottom:0px;
     z-index:999 !important;
    width: 100% !important;
}
}
@media (max-width: 820px) {
    .elementor-nav-menu--dropdown .sub-menu {
        width: 100% !important;
    }
}