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

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


/* Nathan - Started <October 17, 2024> */


/* Header */

.ry-menu .ry-nav li:hover {
    color: var(--color-primary-background);
}


/* Hero */

.with-gradient:before {
    background: linear-gradient(to top, black, transparent);
    height: 50%;
    top: auto;
    bottom: 0;
    opacity: .5;
}

.slider-info {
    min-height: fit-content;
}

.slider-info-center-center {
    top: 80%;
}



/* Welcome */

.module-welcome.style-4 .ry-flex .ry-each.image-wrapper {
    width: 60%;
    padding-bottom: 38%;
    z-index: 3;
}

div#welcome-wrap:before {
  background:url(https://www.royacdn.com/unsafe/smart/Site-71f86dc1-f208-464b-b2b6-af5b81417773/assets/welcome_ornaments.png);
  position:absolute;
  margin:auto;
  width:960px;
  height:830px;
  background-size:contain;
  background-repeat:no-repeat;
  content:'';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
	z-index: 3;
  
}
	
.module-welcome.style-4 .ry-flex .ry-each .text-wrapper h2 {
	font-size:45px;
	line-height: 1.1;
}

.module-welcome.style-4 .ry-flex .ry-each:not(.image-wrapper) {
  padding:4em;
  box-shadow: 1px -1px 8px 7px rgb(51 51 51 / 6%);
  z-index: 300;
  background: #fff;
}


.module-welcome.style-4 .ry-flex .ry-each .ry-text p {
    margin: 10px 0;
    text-align: left;
    color: #555555;
}	


/* Services */
.module-19.style2 .services-frame .frame a {
    color: var(--clr-secondary);
}

/* Meet the Team */
.homepage-team-swiper-2:before {
  background-image: var(--bg-team);
	pointer-events:none;
}

a#team-btn {
  white-space: nowrap;
	z-index: 999;
}

div#team-slider-btn {
  float: right;
  margin-top: 1em;
  justify-content: space-between;
  align-items: center;
  /* width: 50%; */
  background: transparent;
}

div#section-hp-team {
  padding-bottom: 10em;
}

@media (min-width:1199px) {
div.homepage-team-swiper-pagination {
  left: 5em !important;
  z-index: 1;
  position: relative;
  text-align: center;
  top: -2em !important;
  max-width: 500px;
  margin: auto;
}

div.team-bio {
  height:120px;
}
}

@media (max-width:1080px) {
		
	.mm-btn--next:after, .mm-btn--prev:before {
	  border-left: 1px solid #fff !important;
	  border-top: 1px solid #fff !important;

	}
	
	.module-19 .ry-section-title h2 {
	  margin-bottom: 0 !important;
	}

	.mm-navbars--top {
	  border-bottom: 1px solid var(--color-primary-text);
	}
	
	a#team-btn {
		margin:1em 0 !important;
	}
	
}



@media (max-width: 1024px) {
  .homepage-team-swiper-2:before {
    opacity:0.3;
  }

div.homepage-team-swiper-pagination {
  text-align: center;
}

}
@media (max-width: 600px) {

	div#section-hp-team p {
	  -webkit-line-clamp: initial !important;
	  line-clamp:initial !important;
	  -webkit-box-orient: vertical;
	}
	.page-video iframe {
	  height: 300px;
	}

}

/* Testimonials */
.module-testimonials.style-2::before, .module-testimonials.style-3::after {
    height: 100%;
    background: var(--bg-testimonial-overlay);
}

.module-testimonials.style-2 .comments-icon {
    display: none;
}

.module-testimonials .ry-section-title span {
  color: #fff;
  display: block;
  margin-top: 15px;
}

.module-testimonials .ry-section-title h2 {
  color:#fff;
}


/* Footer */
#ry-footer::before {
    background-image: none;
    background-color: var(--color-secondary-background);
}


/*Media Queries*/



	
	
/* Fonts - Global Edits */
.ry-btn-white {
	color: var(--clr-secondary) !important;
	background: var(--clr-white) !important;
	border: 1px solid var(--clr-white) !important;
}
.ry-btn-white:hover{
	color: var(--clr-white) !important;
	background: transparent !important;
	border: 1px solid var(--clr-white) !important;
}
	
.link, a.link {
  background: transparent;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  color: transparent !important;
}

body#ry-pg-body p {
  font-size: 1.1rem !important;
  line-height: 1.7rem !important;
}


@font-face {
    font-family: Satoshi;
    src: url(https://s3.amazonaws.com/static.organiclead.com/Site-71f86dc1-f208-464b-b2b6-af5b81417773/fonts/Satoshi_Regular.woff) format('woff');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: Satoshi;
    src: url(https://s3.amazonaws.com/static.organiclead.com/Site-71f86dc1-f208-464b-b2b6-af5b81417773/fonts/Satoshi_Light.woff) format('woff');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}	

.with-overlay:before {
  background: url(https://www.royacdn.com/unsafe/smart/Site-71f86dc1-f208-464b-b2b6-af5b81417773/assets/welcome_and_services_bg.jpg);
  position: absolute;
  content: '';
  width: 100%;
  height: 2400px;
  top: 20%;
  z-index: 1;
  pointer-events: none;
  background-size: cover;
} 
}

.module-19 .card-holder {
  z-index: 2;
}

.serv-btn {
  padding: 12px 35px;
}
	
body#ry-pg-body #navigation {
  background: #fff !important;
}

.page-anchor {
    display: block;
    position: relative;
    top: -120px;
    visibility: hidden;
}

.ry-btn.join-btn {max-width: unset;}

.ry-btn.join-btn::before {
    content: '\F133';
    font-family: 'bootstrap-icons';
    font-size: 25px;
    display: inline-block;
    margin-right: 10px;
    transform: translateY(7px);
}
	
@media (min-width:1082px) {
	div#footer-info-1 {
	  position: relative;
	  top: 2.5em;
	}
}



:root {
	--clr-white: #ffffff;
	--clr-primary: #54c7c1;
	--clr-secondary: #1c110a;
	--font-title: clamp(1rem, 15vw, 60px);
	--font-subtitle: clamp(1rem, 6vw, 30px);
	--bg-team: url(https://www.royacdn.com/unsafe/smart/Site-71f86dc1-f208-464b-b2b6-af5b81417773/assets/teeth_3d_img1.png);
	--bg-testimonial-overlay: url(https://www.royacdn.com/unsafe/smart/Site-71f86dc1-f208-464b-b2b6-af5b81417773/assets/reviews_bg.jpg) center / cover no-repeat;
}
	
	.contact-template.style-2 {
    margin: 60px 0 230px;
	}
	
	body[data-page-name="contact-us"] .footer-map {
		display: none;
	}
	
	
/* Base styles for both arrows */
.slick-prev, .slick-next {
    background-color: #54c7c1; 
    color: #fff; 
    border-radius: 50%;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    transition: background-color 0.3s ease;
	position: absolute;
	top: 50%;
}


.slick-prev {
    left: 0;
}

.slick-next {
    right: 0;
}

.slick-prev:hover, .slick-next:hover {
    background-color: #0056b3;
}

.slick-prev:before, .slick-next:before {
    font-size: 16px;
    line-height: 1;
}

