/* Before adding any unnecessary CSS rules, please check out the Snap documentation at https://bit.ly/3PqSii8. */
/* Override Styles */

@import url("https://use.typekit.net/tpc0zjy.css");

@font-face {
	font-family: "futura-pt", sans-serif;
	font-weight: 400;
	font-style: normal;
}



@font-face {
	font-family: "futura-pt", sans-serif;
	font-weight: 400;
	font-style: italic;
}

@font-face {
	font-family: "futura-pt", sans-serif;
	font-weight: 500;
	font-style: normal;
}

@font-face {
	font-family: "futura-pt", sans-serif;
	font-weight: 600;
	font-style: normal;
}

@font-face {
	font-family: "futura-pt", sans-serif;
	font-weight: 700;
	font-style: normal;
}

.service-style-1 h2 {
	margin: 10px 0;
}

.overlink a, .overlink {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
	z-index: 9;
}

body#ry-pg-body div#hp-map {
    display: none;
}

#in-services-style-2.squares .ry-each:before, #in-services-style-2.squares .ry-each img {border-radius: 0;}
.testimonials-swiper p,
.testimonials-swiper-2 p{
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 4
}

#ry-pg-body #navigation {
	position: relative;
}
#ry-pg-body #navigatio.fixed {
	position: fixed;
}

.cta-btn.ry-btn-secondary:not(:hover) span.cta-icon img {
	filter: brightness(0) invert(0.24);
}

.slider-info-center-bottom, .slider-info-left-center, .slider-info-left-bottom {
	min-height: 1px;
	width: 100% !important;
	max-width: 1600px !important;
	left: 0;
	right: 0;
	margin: auto;
}

.homepage-swiper h2 {
	font-size: clamp(1.75rem, 1.125rem + 3.125vw, 4.875rem);
	color: #4e5367;
}
.slider-info-left-center div + div {
	line-height: 150%;
	font-size: clamp(1.125rem, 1.0625rem + 0.3125vw, 1.4375rem);
}

.homepage-swiper .swiper-slide img {
	object-position: center top;
}



@media (max-width: 1080px) {
	.homepage-swiper .swiper-slide img {
		height: 100% !important;
	}
	div#hp-slider {
		padding-top: 100px;
	}
}

@media (max-width: 500px) {
	.module-testimonials div .ry-btn {
		font-size: 11px !important;
	}

	.homepage-swiper .with-gradient, .homepage-swiper .swiper-slide img {
		height: auto !important;
		margin-top: 0px;
	}
}

@media (min-width: 1081px) {
	.slider-info-left-center *,
	.slider-info-left-bottom *{
		text-align: left !important;
	}
	.slider-info-left-center a.ry-btn.ry-btn-primary,
	.slider-info-left-bottom a.ry-btn.ry-btn-primary {
		margin-top: 30px;
		margin-left: unset;
	}
	.slider-info-left-center div {
		width: 100%;
		max-width: 620px;
	}
	.slider-info-left-center div + div {
		max-width: 460px;
		color: #333;
	}
}



.ry-btn.ry-btn-primary:not(:hover) {
	color: #242424;
	font-weight: 300;
}

.swiper-wrap .swiper-button-next, .swiper-wrap .swiper-button-prev {
	background-image: none;
	text-align: center;
}
.swiper-wrap .swiper-button-next:before, .swiper-wrap .swiper-button-prev:before {
	content: "\F135";
	position: absolute;
	font-size: 30px;
	color: #000;
	font-family: 'bootstrap-icons';
	margin: auto;
}
.swiper-wrap .swiper-button-prev:before {
	content: "\F12C";
}
.swiper.services-swiper .swiper-slide .ser-info .ry-content * {
	font-weight: 300 !important;
	font-size: 18px;
	text-align: center;
	margin-top: 10px;
	overflow: hidden;
	display: -webkit-box;
	-webkit-line-clamp: 5;
	line-clamp: 5;
	-webkit-box-orient: vertical;
	color: #757575;
}
.swiper.services-swiper .swiper-slide .img {
	background: radial-gradient(#ffffff, #e3f3f9);
	width: 200px;
	height: 200px;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 200px;
	margin: 0 auto 30px;
	position: relative;
	border: 6px solid rgb(255 255 255 / 80%);
}
.swiper.services-swiper .swiper-slide {
	background: transparent;
	padding: 50px 0 0;
	border-radius: 40px;
}
.swiper.services-swiper .swiper-slide h4 a {
	min-height: 62px;
	height: 100%;
	display: flex;
	align-items: flex-start;
	justify-content: center;
	color: #ffffff;
	padding: 0 12%;
}
.swiper.services-swiper .swiper-slide .img:before/*, .swiper.services-swiper .swiper-slide .img:after*/ {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: 200px;
	border: 2px solid #fdd80f;
	z-index: -1;
	opacity: 0;
	transition: .3s;
}
.swiper.services-swiper .swiper-slide:hover .img:before {
	opacity: 1;
	top: -20px;
	left: -20px;
	right: -20px;
	bottom: -20px;
	transition: .2s;
}
/*.swiper.services-swiper .swiper-slide:hover .img:after {
opacity: .5;
top: 20px;
left: 20px;
right: -20px;
bottom: -20px;
transition: .2s;
background: #fad127;
}*/
.services-bg {
	position: relative;
	z-index: 9;
	background: url(https://s3.amazonaws.com/static.organiclead.com/Site-775a0ef8-0aa5-40ab-a51d-c730ae51992b/Assets/services_bg.jpg);
	background-size: cover;
	background-position: center center;
}
.services-bg .custom-services {
	padding-bottom: 3rem;
}
.services-bg:before, .services-bg:after {
	content: "";
	position: absolute;
	inset: 0;
	bottom: unset;
	height: 0;
	padding-bottom: 18%;
	background: url(https://s3.amazonaws.com/static.organiclead.com/Site-775a0ef8-0aa5-40ab-a51d-c730ae51992b/Assets/new_shape_top.png);
	background-size: contain;
	background-position: center bottom;
	background-repeat: no-repeat;
	top: 0%;
	transform: translateY(-99%);
}

.services-bg:after {
	content: "";
	position: absolute;
	inset: 0;
	bottom: unset;
	height: 0;
	padding-bottom: 18%;
	background: url(https://s3.amazonaws.com/static.organiclead.com/Site-775a0ef8-0aa5-40ab-a51d-c730ae51992b/Assets/new_shape_bottom.png);
	background-size: contain;
	background-position: center top;
	background-repeat: no-repeat;
	top: 100%;
	transform: translateY(-1%);
}
.services-bg .custom-services:before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(to bottom, #2dbdec, transparent, transparent, #2dbdec);
	width: 100vw;
}
.swiper-container.swiper-wrap {
	max-width: 1600px;
}

div#section-hp-team .swiper.homepage-team-swiper h6 {
	letter-spacing: 2px;
	font-size: clamp(1.25rem, 1.2037rem + 0.2469vw, 1.5rem);
}

@media (max-width: 1500px) {
	div#section-hp-team .swiper.homepage-team-swiper h6 {
		letter-spacing: 0px;
		font-size: 20px;
	}
}

@media (max-width: 1024px) {
	div#section-hp-team .mx-auto .md\:text-center.text-gray-500>p {
		text-align: center !important;
	}
	.homepage-team-swiper .text-gray-800 {
		font-size: 20px;
	}
	.homepage-team-swiper .text-gray-600 {
		font-size: 16px;
	}
}

.module-testimonials {
	background: url(https://s3.amazonaws.com/static.organiclead.com/Site-775a0ef8-0aa5-40ab-a51d-c730ae51992b/Assets/testimonial_bg.jpg);
	background-size: cover;
	background-position: center top;
}

.testimonials-swiper-4 .mt-3.sm\:mt-6.text-base.md\:text-xl.text-center p {
	overflow: hidden;
	display: -webkit-box;
	-webkit-line-clamp: 5;
	line-clamp: 5;
	-webkit-box-orient: vertical;
}

@media (max-width: 1600px) and (min-width: 1081px) {
	.slider-info-center-bottom, .slider-info-left-center, .slider-info-left-bottom {
		padding-left: 5% !important;
	}
}

@media (max-width: 1080px) {
	div#navigation-style-4 {
		display: none;
	}
	.snap-mobile-menu {
		display: flex !important;
		background: white;
	}
	.ry-container-1600 #footer-each-wrap {
		max-width: 540px;
	}
	.\32xl\:grid-cols-7 {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
	.module-67 .ry-container>.ry-flex {
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}
	.module-67 .ry-container .ry-content {
		max-width: 680px;
	}
	.module-67 .welcome-img.welcome-right {
		align-self: flex-end;
		max-width: 250px;
		margin-top: -25%;
	}
	.module-67 .welcome-img.welcome-left {
		align-self: flex-start;
		max-width: 250px;
		margin-bottom: -25%;
	}
	
	.slider-info h2 {
		font-size: 30px !important;
		letter-spacing: 1px !important;
	}

	.slider-info-left-center div + div {
		font-size:18px !important;
		text-align:center !important;
	}



	.swiper-cube .swiper-cube-shadow:before {
		display: none;
	}
}


@media (max-width: 767px) {
	.homepage-swiper h2 {
		text-align: center;
		color: #fff;
		line-height: 110% !important;
		font-size: clamp(2rem, 1.4379rem + 2.9979vw, 2.875rem) !important;
	}
}

@media (max-width: 1080px) and (min-width: 768px) {
	.slider-info-center-bottom, .slider-info-left-center, .slider-info-left-bottom {
		max-width: 500px !important;
		margin-right: auto;
		margin-left: unset;
		padding-left: 5% !important;
	}
	.homepage-swiper .swiper-slide img {
		object-position: 70% top;
		height: calc(0px + 65vh) !important;
	}

}

@media (max-width: 767px) {
	.\32xl\:grid-cols-7 {
		grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
	}
}

@media (min-width: 1081px) {
	#navigation-style-4 {
		max-width: 1600px !important;
		width: 90% !important;
	}
}

.ry-btn {
	height: auto;
}

.ry-menu .ry-nav li.dropdown .dropdown-menu li.active a {
	color: #fff !important;
}


/** Services Start **/
.hp-services {
	padding: 120px 0 120px;
	background: url(https://s3.amazonaws.com/static.organiclead.com/Site-0d22f870-b0d1-4662-9a83-9eb17bac7016/Assets/services_bg_2.jpg);
	background-size: cover;
}

.hp-services .hp-headline {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	padding-bottom: 60px;
}

.hp-services .hp-headline .title-wrapper {
	width: max-content;
}

.hp-services .hp-headline .btn-wrapper {
	max-width: max-content;
}
._services-grid.xl {
	display: grid;
	grid-template-columns: 24.50% 73.80%;
	justify-content: space-between;
}

._services-grid.xl._services-grid-row {
	grid-template-columns: 100%;
}

._services-grid.xl._services-grid-row .flex-right.one-row {
    padding-top: 2%;
}
._services-grid.xl._services-grid-row .flex-right.one-row .two-col-block.second {
	gap: 2%;
}

._services-grid .each-service .title {
	position: absolute;
	z-index: 2;
}

._services-grid .each-service .title h3 {
	font-size: 36px;
	letter-spacing: 0px;
	text-transform: uppercase;
	color: #4a5260;
	font-weight: 300 !important;
	text-align: center;
	line-height: 1.2;
}

._services-grid .each-service .title h3 span {
	font-weight: 900 !important;
	display: block;
}

._services-grid .flex-right {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}


._services-grid.xl .two-col-block {
	display: flex;
	justify-content: space-between;
}

._services-grid .each-service img {
	object-fit: cover;
	border-radius: 20px;
	width: 100%;
}

._services-grid.xl .two-col-block .each-service.square {
	width: 33.33%;
	height: auto;
	object-fit: cover;
}

._services-grid.xl .two-col-block .each-service.rect {
	width: 64.0125%;
	height: auto;
}

._services-grid .each-service {
	position: relative;
	overflow: hidden;
	border-radius: 20px;
	cursor: pointer;
}

._services-grid.md .each-service .title,
._services-grid .each-service.first .title {
	top: 10%;
	width: 100%;
}

._services-grid.xl .each-service.second .title {
	bottom: 10%;
	width: 100%;
}

._services-grid.xl .each-service.third .title {
	top: 50%;
	transform: translateY(-50%);
	left: 8%;
width: 100%;}

._services-grid.xl .each-service.third .title h3 {
	text-align: left;
}

._services-grid.xl .each-service.fourth .title {
	top: 50%;
	transform: translateY(-50%);
	left: -10%;
	width: 100%;
}

._services-grid.xl .each-service.fourth .title h3 {
	text-align: right;
	width: 100%;
}

._services-grid.xl .each-service.fifth .title {
	bottom: 10%;
	width: 100%;
}

._services-grid .each-service .wrapper:before {
	content: " ";
	position: absolute;
	width: 0;
	height: 0;
	opacity: 0;
	background: rgb(250 209 40 / 50%);
	inset: 0;
	z-index: 1;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	border-radius: 50%;
	transition: 300ms ease-in-out;
	border-radius: 20px;
}

._services-grid .each-service:hover .wrapper:before {
	width: 100%;
	height: 100%;
	opacity: 1;
	border-radius: 20px;
	transition: 300ms ease-in-out;
}

.slick__hp-fservices .each-service .wrapper {
    max-width: 390px;
    margin:  0 auto;
}

.slick__hp-fservices .slick-slide {
    display: flex;
    align-items: center;
    justify-content: center;
}

.fservices-slick-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
}

.fservices-slick-btn button {
	width: 40px;
	height: 40px;
	background: #fad127;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
}

.fservices-slick-btn button svg {
	height: 16px;
	width: 16px;
	fill: #fff;
}

._services-grid.md {
	display: flex;
	flex-direction: column;
	gap: 30px;
}

._services-grid .overlink, ._services-grid .overlink a {
	position: absolute;
	width: 100%;
	height: 100%;
	z-index: 9;
	opacity: 0;
}

._services-grid.md {
	display: none;
}

@media screen and (max-width: 1281px) {
    /* Fix the typo and properly hide both xl variants */
    div._services-grid.xl,
    ._services-grid.xl._services-grid-row {
        display: none;
    }
    
    div._services-grid.md {
        display: flex;
    }
}

/* If you want to keep .xl visible and make it responsive instead: */
@media screen and (max-width: 1281px) {
    ._services-grid.xl {
        grid-template-columns: 100%;
        gap: 20px;
    }
    
    ._services-grid.xl .two-col-block {
        flex-direction: column;
        gap: 20px;
    }
    
    ._services-grid.xl .two-col-block .each-service.square,
    ._services-grid.xl .two-col-block .each-service.rect {
        width: 100%;
    }
    
    ._services-grid .each-service .title h3 {
        font-size: 24px;
    }
    
    /* Center all title positions on mobile */
    ._services-grid.xl .each-service.third .title,
    ._services-grid.xl .each-service.fourth .title {
        left: 0;
        text-align: center;
    }
    
    ._services-grid.xl .each-service.third .title h3,
    ._services-grid.xl .each-service.fourth .title h3 {
        text-align: center;
    }
}

/** HP TESTIMONIAL **/
.ry-hp-testimonial {
    background: #dff4e9;
    padding: 4em 0;
}
.ry-hp-testimonial .ry-section-headline {
    margin-bottom: 4vw;
}
.ry-hp-testimonial .testimonials-swiper .swiper-slide {
    padding: 4em;
    gap: 2em;
    border-radius: 20px;
}
.ry-hp-testimonial .testimonials-swiper .swiper-slide .ry-quote-wrap img {
    max-width: 61px;
    width: 100%;
}
.ry-hp-testimonial .testimonials-swiper .swiper-slide:nth-child(odd) {
    background: #fff;
}
.ry-hp-testimonial .testimonials-swiper .swiper-slide:nth-child(even) {
	background: #176a2b;
}
.ry-hp-testimonial .testimonials-swiper .swiper-slide:nth-child(even) * {
    color: #fff
}
.ry-hp-testimonial .testimonials-swiper .swiper-slide svg {
    width: 18px;
}
.ry-hp-testimonial .testimonials-swiper .swiper-slide:nth-child(odd) .ry-g-icon img {
    filter: brightness(0.5);
}
.ry-hp-testimonial .ry-section-headline:before {
    top: 50%;
    right: 0;
    left: unset;
    width: 100%;
    max-width: 32%;
}
.ry-hp-testimonial .ry-section-headline {
    padding-bottom: 0;
}
.ry-hp-testimonial .testimonials-swiper .swiper-slide:nth-child(even) .ry-quote-wrap img {
    filter: brightness(0) invert(1);
}
.ry-hp-testimonial .main-title.mb-20 h2 {
    color: #151515 !important;
}

@media (max-width: 1080px) { 
	.ry-hp-testimonial .ry-section-headline:before {
		display: none;
	}
	.testimonials-swiper {
		padding: 0 2em;
	}
	.ry-quote-wrap img {
		margin: 0 auto;
	}
	.ry-hp-testimonial .testimonials-swiper .swiper-slide p {
		text-align: center;
	}
	.ry-hp-testimonial .testimonials-swiper .swiper-slide .flex-col {
		flex-direction: column;
	}
	.ry-testi-name .flex {
		justify-content: center;
	}
	.ry-hp-testimonial .testimonials-swiper .swiper-slide .flex.items-center {
		justify-content: center;
	}
	.ry-hp-appointment .flex {
		flex-direction: column;
	}
}

@media (max-width: 768px) { 
	.testimonials-swiper {
		padding: 0 2em;
	}
	.ry-quote-wrap img {
		margin: 0 auto;
	}
	.ry-hp-testimonial .testimonials-swiper .swiper-slide p {
		text-align: center;
	}
	.ry-hp-testimonial .testimonials-swiper .swiper-slide .flex-col {
		flex-direction: column;
	}
	.ry-testi-name .flex {
		justify-content: center;
	}
	.ry-hp-testimonial .testimonials-swiper .swiper-slide .flex.items-center {
		justify-content: center;
	}
}

@media (min-width: 1081px) {
	.ry-hp-testimonial .testimonials-swiper .swiper-slide {
		max-width: 800px;
		width: 100%;
	}
}

/** END HP TESTIMONIAL **/

/** Footer Start **/

.ry-container-1600 {
    width: min(90%, 1600px);
	float: unset;
	margin: 0 auto;
}

.ry-container-1600 #footer-each-wrap {
    padding: 5% 0;
}

#ry-footer ul {
    line-height: 2;
}

#ry-footer, .module-testimonials.style-2::before, .module-testimonials.style-3::after {
	background: #041118;
}

@media (max-width:1280px) { 
	div#ry-footer img {
		max-width: 200px;
	}

	div#footer-disc p, div#footer-disc span.text-xs.md\:text-base {
		font-size: 15px !important;
		text-align: center !important;
		line-height: 25px;
	}

	#ry-footer ul {
		margin: auto;
	}
}

@media (max-width:700px) {
	div#footer-info-each {
		width: 100% !important;
	}

	div#footer-disc span.text-xs.md\:text-base {
		margin-bottom: 10px;
	}
}
@media (max-width: 1599px) {
	#ry-footer ul {
		flex-direction: row;
	}
	.ry-container-1600 #footer-each-wrap {
		padding-bottom: 3rem;
	}
}

@media (min-width: 1024px) {
    .\32xl\:grid-cols-7 {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
	div#footer-info-each:nth-child(1) {
		grid-column: 1 / -1;
	}
	div#footer-info-each:nth-child(6) {
		grid-column: 1 / -1;
	}
}

@media (min-width: 1600px) {
    .\32xl\:grid-cols-7 {
        grid-template-columns: repeat(6, minmax(0, 1fr));
    }
	div#footer-info-each:nth-child(1) {
		grid-column: span 2 / span 2 !important;
	}
	div#footer-info-each:nth-child(6) {
		grid-column: none !important;
	}
}




@media (min-width:992px) and (max-width:1281px) {
    div.hp-services .slick-track {
		gap: 0 20px;
		display: flex;
	}
}



@media (max-width:1080px) {

	div.slider-info {
		position: static;
		transform: initial !important;
		max-width: 100% !important;
		min-height: auto;
		color: var(--color-secondary-text);
		background-color: var(--color-secondary-background);
		padding: 2em 1em !important;
	}
	
	div#section-hp-team div#team-inner-block img {
		max-width: 250px;
	}
	
	div#team-inner-block {
		flex-direction: column;
	}

	div#team-inner-block > div > div {
		rtant;
		width: 100%;
		margin-bottom: 0 !important;
	}

	div#team-inner-block >div {
		width: 100% !important;
		padding: 0 !important;
	}



	div#hp-slider {
		height: auto !important;
	}

	div.slider-info h2 {
		text-align:center !important;
		font-size: 30px !important;
		color:#fff;
	}

	div.slider-info-left-center div + div {
		text-align:center !important;
	}

	.swiper-cube .swiper-cube-shadow:before {
		display: none;
	}
	
	.ry-container-1600 #footer-each-wrap {
		max-width: 100% !important;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}
	
	.ry-container-1600 #footer-each-wrap {
		padding-bottom: 1rem;
	}
	
	div#footer-map {
		height: 400px !important;
	}

	div#footer-info-each {
		width: 100% !important;
	}

	.ry-container-1600 #footer-each-wrap >div >div, .ry-container-1600 #footer-each-wrap  a {
		text-align: center;
	}

	
	._services-grid .each-service .title h3 {
		font-size: 23px !important;
	}

	.ry-container-1600 #footer-each-wrap >div >div ul li {
		text-align: center;
		justify-content: center;
		align-items: center;
	}

	div#ry-footer img {
		max-width: 250px;
		margin-bottom: 10px;
	}


}

@media (max-width:500px) {
	 div.module-67 .ry-container #about {
		padding: 0 !important;
	} 
	
	body[data-page-name="index"] div h2 {
		font-size: 28px !important;
		letter-spacing: 1px !important;
	}

	.ry-hp-testimonial .main-title {
		margin-bottom: 1em !important;
	}


}


@media (min-width:1081px) {
    div#navigation {
		background-color: #021118;
	}

	.ry-menu .ry-nav a {
		color: #fff !important;
		font-size: 18px !important;
	}

	.ry-menu .ry-nav li.primary .caret {
		border-color: #fff !important;
	}


	#navigation-style-4 + div + div {
		flex-direction: column !important;
	}

	div.cta-btn.ry-btn-primary {
		background: var(--color-primary-background);
		letter-spacing: 0 !important;
	}

	.cta-btn.ry-btn-transparent a {
		color: #000 !important;
		letter-spacing: 0 !important!important;
	}

	div#header-menu-cta {
		flex-direction: row-reverse !important;
		justify-content: space-between !important;
		gap: 0 2em !important;
		align-items: center !important;
	}

	.ry-menu .ry-nav {
		gap: 0 6% !important;
	}
}


.ry-hp-testimonial .testimonials-swiper .swiper-slide svg, .ry-hp-testimonial .testimonials-swiper .swiper-slide:nth-child(even) svg {
    color: var(--color-primary-background) !important;
    fill: var(--color-primary-background) !important;
}

html, body {
    max-width: 100%;
    overflow-x: hidden;
}