.entry-footer, footer, header {
	display: none;
}

.site-title, .post, .page {
	margin: 0;
}
main {
    min-height: 153px;
}

:root {
	--font1 : 'Satoshi', sans-serif;
	--color1 : #283B62;	
	--color2 : #F2F5FA;
	--Thin: 100;
	--ExtraLight: 200;
	--Light: 300;
	--Regular: 400;
	--Medium: 500;
	--SemiBold: 600;
	--Bold: 700;
	--ExtraBold: 800;
	--Black: 900;
}

body, button, input, select, optgroup, textarea, h1, h2, h3, h4, h5, h6, p, li {
	font-family: var(--font1);
}

h2, h3 {
	color: var(--color1);	
}

.no-bgn h2 {
	color: inherit;	
}

h3 {
	font-size: 24px;
	line-height: 32px;
	font-weight: 900;
}

.entry-content {
	margin: 0;
}

.grid-container {
	max-width: 76.5rem;
}

.site-header {
    position: fixed;
    width: 100%;
    padding-top: 15px;
    padding-bottom: 15px;
    z-index: 9;
}

.hero-section {
    height: 100vh;
    background-size: cover;
    background-position: top center;
	padding-top: 100px;
	padding-bottom: 100px;
}

.middle-center {
	display: flex;
    justify-content: center;
    align-items: center;
}

.bottom-left {
    display: flex;
    align-items: flex-end;
}

.hero-section h1 {
    font-size: 48px;
    line-height: 72px;
    text-transform: uppercase;
    font-weight: 900;
    color: white;
    margin-bottom: 20px;
	text-shadow: 5px 4px 8px black;
}

.hero-section.bottom-left h1 {
    font-size: 64px;
}

p {
	font-size: 18px;
	line-height: 30px;
}

.hero-section p  {
	color: white;
}

h1 {
	margin: 0;
}

.btn {
    background-color: var(--color1) !important;
    color: white !important;
    text-transform: uppercase;
    font-size: 14px;
    line-height: 20px !important;
    font-weight: 700;
    padding: 15px;
    text-align: center;
    max-width: fit-content;
    display: inline-flex;
    column-gap: 10px;
    align-items: center;
}

.btn:hover {
	color: white;
	opacity: 0.7;
}

a:visited {
    color: inherit;
}

.phone-link {
    color: white;
    text-transform: uppercase;
    font-size: 16px;
    line-height: 24px;
    font-weight: 700;
    padding: 15px;
	display: inline-block;
}

.btn.menu-item {
	font-size: 14px;
	line-height: 18px;
	font-weight: 700;
	padding: 0;
}

.main-navigation a {
    display: block;
    text-decoration: none;
    font-weight: 400;
    text-transform: uppercase;
    color: white;
    font-size: 14px;
    line-height: 18px;
	padding: 10px;
}

.sub-menu a {
	color: black;
}

.site-header.scrolled .main-navigation a {
	color: black;
}

.site-header.scrolled .btn.menu-item a {
	color: white;
}

.main-navigation ul {
	justify-content: flex-end;
}

.mobile-menu {
	display: none;
}

.mobile-menu.active, .mobile-menu.active .menu-main-container {
	display: block;
}

.mobile-menu.active .menu-main-container .menu {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 20px;
}

.site-header.scrolled {
    background-color: var(--color2);
	box-shadow: 0 2px 10px 2px #00000061;
}

.site-header .custom-logo {
     transition: all ease 0.6s;
}

.site-header.scrolled .custom-logo {
    max-width: 90px;
    transition: all ease 0.6s;
	filter: brightness(0) invert(0);
}

.site-footer {
	background-color: var(--color2);
}


.site-footer {
    background-color: var(--color1);
    color: white;
}


.site-footer div, .site-footer p, .site-footer a, .site-footer li {
	color: white;
}

.site-footer .footer-copyright, .site-footer .footer-copyright a {
    font-size: 12px;
    border-top: 1px solid #ffffff10;
    padding: 10px 0;
    text-align: center;
}

.custom-logo {
	max-width: 288px;
	filter: brightness(0) invert(1);
}

.site-footer .footer-branding {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.site-footer .wrapper {
	padding-top: 80px;
	padding-bottom: 80px;
}

.footer-info h3	{
    font-size: 24px;
    font-weight: 900;
    line-height: 32px;
}

.footer-form h2 {
    font-size: 40px;
    line-height: 54px;
    font-weight: 900;
    text-transform: uppercase;
	margin-bottom: 20px;
}

.btn-white {
    width: 100%;
    font-size: 16px;
    line-height: 24px !important;
    font-weight: 900;
    padding: 17px !important;
}

.footer-fld {
    min-height: 60px;
    padding: 18px 24px !important;
    font-size: 16px;
    line-height: 24px;
    font-weight: 500;
    background-color: #ffffff10;
    border: 0 !important;
    border-radius: 0 !important;
}

.wpcf7 form .wpcf7-response-output {
	margin: auto;
}

.btn-white:hover {
	cursor: pointer;
	opacity: 0.8;
}

.site-footer p, .site-footer div, .site-footer a, .site-footer li {
	font-size: 16px;
	line-height: 24px;
	font-weight: 400;
	margin-bottom: 0;
	
}

.site-footer .phone-wrapper a {
	display: block;
}

.footer-info {
    display: flex;
    flex-direction: column;
    row-gap: 20px;
}

.two-column-text-and-image-section {
    background-size: 50%;
    background-repeat: no-repeat;
    background-position: center right;
    display: flex;
    align-items: center;
}

.two-column-text-and-image-section {
    background-size: 50%;
    background-repeat: no-repeat;
    background-position: center right;
}

.two-column-text-and-image-section .image-wrapper {
	overflow: hidden;
}

.two-column-text-and-image-section .image-wrapper {
	height: 400px !important;
	position: relative;
}

.two-column-text-and-image-section .image-wrapper img {
    min-width: fit-content;
    width: 100%;
    min-height: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
}

.overline {
    font-size: 16px;
    line-height: 24px;
    text-transform: uppercase;
    letter-spacing: 4px;
	margin-bottom: 20px;
}

.two-column-text-and-image-section h2 {
	margin-bottom: 20px;
}

h2 {
	font-size: 34px;
	line-height: 40px;
	font-weight: 900;	
}

.two-column-text-and-image-section .content-holder {
    margin: auto 4%;
}

section.rev .item-wrapper {
	display: flex;
    flex-direction: row-reverse;
}

.two-column-text-and-image-section.rev {
	background-position: center left;
}

.blurb-section {
    padding-top: 30px;
    padding-bottom: 30px;
    display: flex;
    align-items: center;
}

.blurb-section .icon {
	margin-bottom: 20px;
	width: fit-content;
}

.sub-menu {
    flex-direction: column;
    background-color: var(--color2);
}

.sub-menu li a:hover {
	background-color: white;
	transition: all ease 0.6s;
}

.mobile-menu .menu-item {
	text-align: center;
}

.mobile-menu .sub-menu {
    background-color: inherit;
    list-style: none;
    font-size: 12px;
    line-height: 14px;
    margin: 0;
    border-bottom: 1px solid var(--color2);
	padding-bottom: 5px;
}

.mobile-menu .sub-menu li, .mobile-menu .sub-menu li a {
    padding: 2px 5px;
	color: black;
}

.mobile-menu a {
	color: black;
}

.main-navigation.toggled ul {
    display: flex;
}

.background-wrapper {
   position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    z-index: -1;
}


.background-wrapper .item-wrapper {
    height: 100%;
}

section {
	position: relative;
}

.background-wrapper .cell {
    background-size: cover;
}

.content-cta-fb-section {
	padding-top: 60px;
	padding-bottom: 60px
}

.content-cta-fb-section .item {
    color: white;
    display: flex;
    flex-direction: column;
}

.content-cta-fb-section .blurb-item {
    display: flex;
    flex-direction: column;
    width: 48%;
    align-items: center;
    row-gap: 20px;
    padding: 20px;
    background-color: white;
    justify-content: center;
    height: 200px;
    min-height: fit-content;
    margin-bottom: 20px;
}

.content-cta-fb-section .blurb-wrapper .blurb-item:last-child {
    height: 420px;
    position: absolute;
    top: 0;
    right: 0;
}

.max-width {
    max-width: 480px;
    margin: auto;
    height: fit-content;
    width: 100%;
}

.content-cta-fb-section .blurb-wrapper {
	position: relative;
}

.testimonials-section .testimonials .item-wrapper {
    background-color: var(--color2);
    margin: 12px;
    padding: 32px;
}

.testimonials-section .description {
	font-size: 14px;
	line-height: 24px;
	margin-bottom: 23px;
}

.testimonials-section .name {
	font-size: 14px;
	line-height: 18px;
	font-weight: 700;
}

.testimonials-section .designation {
	font-size: 12px;
	line-height: 16px;
	font-weight: 500;
	color: #1D1D1D;
	opacity: 30%;
}

.testimonials-section .ratings-wrapper {
	color: #F2D230;
	font-size: 18px;
	margin-bottom: 17px;
}

.testimonials-section {
    padding-top: 80px;
    padding-bottom: 80px;
    background-size: cover;
    background-position: center;
}

.testimonials-section .content-wrapper {
	margin-bottom: 60px;
}

.testimonials-section .testimonials-full .item-wrapper {
    padding-left: 40px;
    padding-right: 40px;
    text-align: center;
}


.testimonials-section .testimonials-full .slick-arrow {
    font-size: 25px;
    color: var(--color1);
    position: absolute;
    top: 50%;
    margin: auto;
	z-index: 1;
}

.testimonials-section .testimonials-full .slick-arrow:hover {
    cursor: pointer;
	opacity: 0.7;
}


.testimonials-section .testimonials-full .fa-chevron-right {
    right: 0;
}

.contact-section {
	padding-top: 60px;
	padding-bottom: 60px;
}

h4 {
	font-size: 16px;
	line-height: 20px;
	font-weight: 900;
}

.contact-section a, .contact-section div {
	font-size: 14px;
	line-height: 18px;
	color: #1D1D1D;
	font-weight: 500;
}

.contact-section .designation {
	color: #1D1D1D;
	opacity: 50%;
	font-weight: 500;
}

.contact-section .phone-wrapper {
    display: flex;
    flex-direction: column;
}

.contact-section .contact-wrapper {
    display: flex;
    align-items: center;
    column-gap: 10px;
    max-width: 230px;
}

.contact-section .item {
    display: flex;
    flex-direction: column;
    justify-content: center;
    row-gap: 30px;
}

.contact-section a:hover {
	opacity: 0.7;
}

.hero-section.middle-left {
     display: flex;
    align-items: center;
}
.overlay {
    position: absolute;
    width: 100%;
    height: 100%;
    background-image: linear-gradient(to bottom, rgb(255 255 255 / 54%), rgb(255 255 255 / 0%));
}

.hero-section .grid-container {
    z-index: 1;
}

.image-grid-section {
	padding: 30px;
}

.image-grid-section .item {
    display: flex;
    flex-wrap: wrap;
    column-gap: 30px;
    row-gap: 30px;
}

.image-grid-section .image-wrapper {
    width: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.image-grid-section .image-1, .image-grid-section .image-3 {
	height: 464px;
}

.image-grid-section .image-2, .image-grid-section .image-5 {
	height: 376px;
}

.image-grid-section .image-4, .image-grid-section .image-6 {
	height: 288px;
}

.form-section {
	padding-top: 60px;
	padding-bottom: 60px;
}

.form-section p {
	margin-bottom: 0;
}

.form-section .send-btn p {
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
    margin-top: 24px;
}

.form-section .form-label p {
    font-size: 14px;
    line-height: 17px;
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom: 9px;
}

.form-section .form-fld {
    padding: 15px;
    min-height: 52px;
}

.form-section .form-fld::placeholder {
	text-transform: uppercase;
   font-size: 14px;
    line-height: 17px;
    font-weight: 500;
	opacity: 40%;
}

.form-section .item-wrapper {
    background-color: #FAFAFA;
    padding: 40px 3% 30px;
}

.editor-section {
	padding-top: 60px;
	padding-bottom: 60px;
	min-height: auto;
}

.blurb-section .item {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
}

.page-link-section .image-wrapper {
    height: 180px;
    min-height: 180px;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    overflow: hidden;
    align-content: center;
}

.page-link-section .btn {
    width: 100%;
    max-width: none;
    margin: auto;
    text-align: center;
    justify-content: center;
}

.page-link-section .image-wrapper .image {
    width: 100%;
    height: auto;
    text-align: center;
    margin: auto;
}

.link-section {
	padding-top: 60px;
	padding-bottom: 60px;
	min-height: auto;
}

.link-section .item:last-child {
	width: 100%;
}

.link-section .item:last-child .btn {
    width: fit-content;
    min-width: fit-content;
    margin: auto !important;
    display: block;
    border-radius: 8px;
    background-color: var(--color2) !important;
    border: 2px solid var(--color1);
    color: var(--color1) !important;
}

.link-section .btn {
	width: 100%;
	min-width: 100%;
}

.carousel-section .carousel-full .image-wrapper {
    width: auto;
    height: 480px;
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;
}

.carousel-section .carousel-col .image-wrapper {
    height: 200px;
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
}

.carousel-section .carousel-col .image-wrapper img {
    height: 100%;
    width: 100%;
    padding: 0 15px;
}

.carousel-section {
	position: relative;
	height: auto;
	min-height: auto;
	padding-top: 40px;
	padding-bottom: 40px;
}


.carousel-section .modal-wrapper {
	display: none;
}


.carousel-section .slick-arrow {
    position: absolute;
    top: 50%;
    z-index: 1;
    font-size: 24px;
    color: var(--color1);
}

.carousel-section .slick-arrow:hover {
	opacity: 0.8;
	cursor: pointer;
}

.carousel-section .fa-chevron-right {
	right: 0;	
}

.carousel-section .carousel-full .image-wrapper .image {
    height: 100%;
    width: auto;
}

.carousel-full {
	margin-bottom: 30px;
}

@media only screen and (min-width: 1024px) {
	.hide-desktop {
		display: none;
	}
	.content-cta-fb-section .no-bgn {
		background-image: none !important;
	}	
}

@media only screen and (max-width: 1023px) {
	.content-cta-fb-section .bgn-mobile {
		 background: none !important;
	}
	.hero-section h1 {
		font-size: 40px !important;
		line-height: normal;
	}
	.main-navigation ul, .site-branding {
		display: flex;
    	justify-content: center;
	}
	.site-footer .footer-branding {
		height: auto;
	}
	.site-footer .grid-x {
		text-align: center;
	}
	.site-footer .wpcf7 {
    	max-width: 370px;
    	margin: auto;
	}
	.footer-form h2 {
    	font-size: 24px;
    	font-weight: 900;
    	line-height: 32px;
	}
	.hide-tablet {
		display: none;
	}	
	.two-column-text-and-image-section {
		background-image: none !important;
	}
	.two-column-text-and-image-section .wrapper {
		 padding: 0;
	}
	.site-footer .wrapper {
		padding-bottom: 0;
	}
	.two-column-text-and-image-section .content-holder {
		text-align: center;
	}
	.content-cta-fb-section .item {
		text-align: center;
		margin: 0 !important;
        width: 100%;
	}
	.content-cta-fb-section .no-bgn, .cta-item-wrapper {
		padding: 15px;
	}	
	.content-cta-fb-section .no-bgn {
    	padding-top: 30px;
        padding-bottom: 30px;
        margin: 0;
        background-repeat: no-repeat;
        background-size: cover;
		width: 100%;
	}
	.content-cta-fb-section, .content-cta-fb-section .wrapper {
		padding: 0 !important;
	}
	.content-cta-fb-section .item-wrapper {
		margin-left: 0;
		margin-right: 0;
	}
	.contact-section .item {
        text-align: center;
        display: flex;
        align-items: center;
        row-gap: 30px;
        margin-bottom: 30px;
    }
	.image-grid-section .image-wrapper {
		height: 288px;
	}
}

@media only screen and (max-width: 767px) {
	.carousel-section .carousel-col {
		display: none;
	}
	.hero-section {
		height: auto;
	}
	.hero-section h1, .hero-section p {
		text-align: center;
	}
	.hero-section .btn, .hero-section .phone-link {
    	max-width: fit-content;
    	margin: auto;
	}
	.site-header {
    	position: relative;
		background-color: var(--color2);
	}
	.hero-section .item {
		display: flex;
		justify-content: center;
        flex-direction: column;
	}
	.fb-widget-wrapper {
		display: none !important;
	}
	.hide-mobile {
		display: none;
	}	
	section {
		padding: 30px 15px !important;
	}
	.blurb-section .item {
    	display: flex;
    	flex-direction: column;
    	align-items: center;
    	text-align: center;
	}
	.two-column-text-and-image-section .image-wrapper {
    	height: 200px !important;
	}
	.testimonials-section .content-wrapper {
		margin-bottom: 30px;
	}	
}

@media only screen and (max-width: 639px) {	
	.menu-main-container {
		display: none;
	}
	.menu-toggle, .main-navigation.toggled ul {
		display: block;
	}
	.blurb-section .item {
        border-bottom: 1px solid #e3e3e3;
        padding-bottom: 30px;
    }
	.blurb-section .item:last-child {
        border-bottom: 0;
        padding-bottom: 0;
    }		
}


@media only screen and (min-width: 1440px) {
	section {
		min-height: 540px;
	}
	.hero-section {
		height: 100vh;
	}
}

@media only screen and (max-width: 1439px) {
	section {
		min-height: 400px;
	}
}

@media only screen and (min-width: 640px) {	
	.mobile-menu {
		display: none !important;
	}
}
.yt-video {
    position: absolute;
    top: 50%;
    left: 50%;
    min-height: 100%;
    min-width: 120%;
    z-index: -1;
    aspect-ratio: 16 / 9;
    pointer-events: none;
    user-select: none;
    transform: translateY(-50%) translateX(-50%);
}

.hero-section {
    overflow: hidden;
    position: relative;
}

.animated {
	visibility: hidden;
	animation-duration: 0.8s;
}

.animated.slideInUp {
	visibility: visible;
}

.image-overlay {
    max-width: 800px;
    width: 100%;
    height: auto;
    position: absolute;
    bottom: 0;
    opacity: 0.1;
}

.rev .image-overlay {
    right: 0;
}

@media only screen and (max-width: 1023px) {
	.image-overlay {
		display: none;
	}
}

@media only screen and (max-width: 767px) {
	.custom-logo {
   		max-width: 100%;
    	filter: brightness(0) invert(0);
	}
}

.footer-branding .custom-logo {
   	filter: brightness(0) invert(1);
}

.w-bgn {
    background-size: cover;
    background-position: center;
}

.contact-section .form-wrapper {
	background-color: #FAFAFA;
    padding: 40px 3% 30px;
}

.contact-section .form-wrapper h3 {
	text-align: center;
}

.affiliates-section {
	padding-top: 60px;
	padding-bottom: 60px;
	min-height: auto;
}

.affiliates-section .aff-logo {
    width: auto;
    height: auto;
}

.affiliates-section .aff-wrapper {
    max-width: 300px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-left: 20px;
    padding-right: 20px;
    min-height: 70px;
    max-height: 70px;
}

.affiliates-section .affiliates {
	margin-top: 40px;
}

.two-column-text-and-image-section .content-wrapper {
	padding-top: 60px;
	padding-bottom: 60px;
}

.section-loader .section-image {
    width: 100%;
    height: auto;
}