/* CSS updates/changes by Devs */


.slider-4 .box > div { width: 262px; }
#menu-item-643, #menu-item-625{display:none;}
#footer-menu .menu-item-624, #footer-menu .menu-item-643, #footer-menu .menu-item-625{display:none;}

.paginate {margin-top: 55px; font-size: 22px; text-align: center;}

.page-id-854 .sitemap-cls, .page-id-3 .privacy-policy-cls { color: var(--Yellow); }

/*ul#primary-menu > li > ul > li.current-menu-item > a { color: var(--Yellow); }*/


ul#footer-menu{}
ul#footer-menu > li.current-menu-item > a,
ul#footer-menu > li.current-menu-parent > a,
ul#footer-menu > li > ul > li.current-menu-item > a { color: var(--Yellow); }

.services {
    & .section-head { text-align: center; }

    & .accordion-services {
        & .accordion-head { overflow: hidden;
            & .bg { position: absolute; z-index: -1; inset: 0;
                &::before { content: ''; position: absolute; z-index: 5; inset: 0; background: linear-gradient(180deg, rgba(0, 22, 84, 0.00) 0%, #0126AC 100%); }
                & img { object-fit: cover; width: 100%; height: 100%; }
            }
        }
    }
}

.copyright { display: flex; flex-wrap: wrap; justify-content: center; align-items: center;
	@media only screen and (max-width: 767px) {
		& div { width: 100%;
			& span:first-child { display: none; }
		}
	}
}

ul#menu-menu-1 ul { margin-top: 0; }

.before-after .section-body .ba-text { display: none; }
#resizer::after { cursor: pointer; }

.jobber-inline-work-request iframe { max-width: 100%; width: 522px; margin-inline: auto; display: block; }

/*.review-lists {
	& .content {
		& p { display: -webkit-box; -webkit-line-clamp: 5; -webkit-box-orient: vertical; overflow: hidden; height: 135px; }
	}
}*/

.yourpath-list { justify-content: center; margin-inline: 0; gap: 30px;
	& .box { width: 335px; padding-inline: 0; }
	& .number { line-height: 1; }
	
	@media only screen and (min-width: 992px) and (max-width: 1199px) {
		& .box { width: 285px; }
	}
	@media only screen and (min-width: 768px) and (max-width: 991px) {
		& .box { width: 210px; }
	}
	@media only screen and (max-width: 767px) {
		& .box { width: 280px; }
		& .text { --text-48: 30px; }
	}
}

.sticky-btn { position: fixed; z-index: 69; left: 10px; bottom: 60px; width: 320px; max-width: calc(100% - 20px;);
	& .open { width: 40px; height: 40px; transition: var(--transition-default); position: absolute; z-index: 5; bottom: 0; cursor: pointer;
		&:hover { filter: drop-shadow(0px 0px 10px rgba(var(--Yellow-rgb), 0.5)); }
		.sticky-open & { opacity: 0; z-index: -1; }
	}
	& .close { width: 40px; height: 40px; background: var(--Blue); border-radius: 50%; position: relative; z-index: 5; cursor: pointer;
		&:hover { filter: drop-shadow(0px 0px 5px rgba(var(--Blue-rgb), 0.5)); }
		&::before,
		&::after { content: ''; background: var(--Yellow); width: 70%; height: 2px; position: absolute; z-index: 5; left: 50%; top: 50%; transform-origin: 0 50%; }
		&::before { transform: rotate(45deg) translateX(-50%); }
		&::after { transform: rotate(-45deg) translateX(-50%); }
	}
	& .btn-group { display: flex; flex-wrap: wrap; flex-direction: column; gap: 15px; transition: var(--transition-default); position: absolute; z-index: 5; bottom: 0; right: calc(100% + 10px); width: 100%; background: rgba(var(--Yellow-rgb), 0.75); border: 1px solid var(--Blue); border-radius: 8px; padding: 10px;
		& a { width: 100%; }
		.sticky-open & { right: 0; }
	}
	
	@media only screen and (min-width: 768px) {
		& .btn-group a { font-size: 25px; }
	}
}

.media-iframe iframe { aspect-ratio: 16 / 9; height: auto; }

.section[data-layout="content_media"] .row {
	@media only screen and (max-width: 991px) {
		& { gap: 30px; }
		& > * { width: 100%; }
	}
}

.before-after-group { display: flex; flex-wrap: wrap; gap: 30px;
	& .ba-box { width: calc(50% - 15px); }
	
	& .resizer::after { content: ''; background: url('../images/logo-small.png') 50% 50% / 100% auto no-repeat; aspect-ratio: 1 / 1; height: auto; width: 100px; transform: translateX(-50%); margin: 0; }
	
	@media only screen and (min-width: 768px) and (max-width: 991px) {
		& .resizer::after { width: 70px; }
	}
	@media only screen and (max-width: 767px) {
		& .resizer::after { width: 60px; }
		
		& .ba-box { width: 100%; }
	}
	@media only screen and (max-width: 575px) {
		& .resizer::after { width: 50px; }
	}
	@media only screen and (max-width: 480px) {
		& .resizer::after { width: 40px; }
	}
}

.in-service-area {
	& .section-bg img {
		@media only screen and (min-width: 1200px) and (max-width: 1699px) {
			& { object-position: 70% 50%; }
		}
		@media only screen and (min-width: 768px) and (max-width: 1199px) {
			& { object-position: 80% 50%; }
		}
		@media only screen and (max-width: 767px) {
			& { object-position: 85% 50%; }
		}
	}
}

.section:has(.head-body-split) { margin: 0; padding: var(--Space100) 0; 
	&:not(.cross-yellow-section) { color: var(--White); }
	&::before { content: ''; background: var(--BlueDark); position: absolute; z-index: -1; left: 50%; top: 0; transform: translateX(-50%); width: 100vw; height: 100%; }
	&:not(.cross-yellow-section) .head h2 span { color: var(--Yellow); }
}

.popup { display: none;
    & .popup-inner { background: var(--Blue); border-radius: 40px; max-width: /*1438px*/1200px; width: 100%; margin-inline: auto; padding: 50px; position: relative; z-index: 5;
		& .popup-inner-close { position: absolute; z-index: 5; right: -10px; top: -10px; padding: 0; margin: 0; border: 0; cursor: pointer; filter: drop-shadow(0 6px 10px rgba(0, 0, 0, 0.15)) drop-shadow(0 3px 2px rgba(0, 0, 0, 0.30)); display: none;
			& svg { width: 100%; height: auto; }
			@media only screen and (max-width: 767px) {
				& { width: 50px; }
			}
		}
		
		& .popup-wrap { overflow: auto; max-height: calc(100vh - 100px - 100px); position: relative; z-index: 10; }
		
        & .head { text-align: center;
            & h2 { color: var(--Yellow); }
            & h5 { color: var(--BlueLight); font-family: var(--FF-LibreFranklin); font-size: 24px; font-weight: 500; font-style: italic; margin-top: 10px; }
        }

        & .body { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 30px 0; margin-top: 50px;
            & .img { width: 41.35%; border-radius: 40px; overflow: hidden; box-shadow: 0px 376px 105px 0px rgba(0, 33, 125, 0.00), 0px 241px 96px 0px rgba(0, 33, 125, 0.02), 0px 135px 81px 0px rgba(0, 33, 125, 0.08), 0px 60px 60px 0px rgba(0, 33, 125, 0.13), 0px 15px 33px 0px rgba(0, 33, 125, 0.15); position: relative; z-index: 5; align-self: flex-start;
                &::before { content: ''; background: linear-gradient(180deg, rgba(1, 38, 172, 0.00) 0%, rgba(243, 217, 73, 0.75) 100%); position: absolute; z-index: 5; inset: auto 0 0 0; width: 100%; height: 50%; opacity: 0.75; }
                & img { width: 100%; }
            }
            & .content { width: 53.9%; color: var(--White); font-size: 20px; }
			
			@media only screen and (max-width: 991px) {
				& { margin-top: 30px; }
				& .img { width: 100%; display: none; }
				& .content { width: 100%; font-size: 18px; }
			}
        }
		
		@media only screen and (max-width: 575px) {
			& { padding-inline: 30px; }
		}
    }
}
.popup:has(.popup-inner-close) .fancybox-close-small { background: var(--Yellow); border: 3px solid var(--BlueDark); color: var(--BlueDark); border-radius: 50%; opacity: 1; padding: 8px; width: 70px; height: 70px; top: 35px; right: 35px;
	
	@media only screen and (max-width: 767px) {
		& { width: 50px; height: 50px; top: 30px; right: 30px; }
	}
}

.fancybox-content { background: transparent; }

.team-boxes a { display: block; cursor: default;
	& .img { position: relative; z-index: 5;
		&::before { content: 'SEE BIO'; background: linear-gradient(180deg, rgba(1, 38, 172, 0.00) 0%, rgba(243, 217, 73, 0.75) 100%), linear-gradient(180deg, rgba(0, 22, 84, 0.00) 0%, rgba(1, 38, 172, 0.75) 100%); position: absolute; z-index: 5; inset: auto 0 0 0; width: 100%; height: 50%; color: var(--Yellow); display: flex; align-items: flex-end; justify-content: center; text-align: center; font-family: var(--FF-Lalezar); font-size: 24px; text-transform: uppercase; border-radius: 0 0 40px 40px; padding-bottom: 10px; opacity: 0; }
	}
	& .img:hover { cursor: pointer;
		&::before { opacity: 1; }
	}
	
	& .content > * { transition: var(--transition-default); }
	& .content:hover { cursor: pointer;
		& > * { color: var(--Yellow); }
	}
}

.banner-home {
	& h1 { display: flex; flex-wrap: wrap;
		& span { order: 2; margin: 0 0 5px 0; }
		& img { order: 1; }
	}
}

.ftr-address { padding-bottom: 30px; font-size: 24px; }

.text-holder:has(.revwid-container) { width: 100%; }

/* ## for print ## */
@media print {
}

/* no CSS beyond this point */