/* 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;}
.ry-menu .ry-nav li .dropdown-toggle {padding: 30px 0;}
ul#quick-links li a {display: block;width: 100%;}
#in-services-3 ul li a {margin-left: 0px;margin-top:30px}
*/
[x-cloak] { display: none !important; }
.promotions img { min-width: 22rem; max-width:22rem;}
#in-services-style-2.squares .ry-each:before, #in-services-style-2.squares .ry-each img {border-radius: 0;}
.mobile-menu-icon a{display: flex;height: 100%;width: 100%;justify-content: center;align-items: center;}
body.fancybox-active .ry-sticky-menu.fixed {z-index: 9999;}
.testimonials-swiper p,
.testimonials-swiper-2 p{
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 4
}

.service-hover {
	position: absolute;
	z-index: 9;
	opacity: 0;
	transition: opacity 0.3s ease;
	text-align: center;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	color: white;
}

div#ry-sidebar div#accordion-collapse a {
    color: #fff;
}

div#ry-sidebar div#accordion-collapse a:hover {
    color: #85b93e;
}

div#contents p {
    font-size: 19px;
    line-height: 1.5;
	color: #333 !important;
}

.sticky-icons ul {
	padding: 0
}
.sticky-icons ul li {
	list-style: unset;
}
/* Show service-hover when parent with data-target is hovered */
[data-target]:hover .service-hover {
	opacity: 1;
}

/* Apply the overlay effect when parent is hovered */
[data-target]:hover .service-hover::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
	z-index: -1; /* Make sure it's behind the text */
}
.mm-navbar {
	color: #ffffff;
}



#ry-pg-body :is(.navigation-3) {
	position: relative !important;
}

.mm-navbar__title > span {
	color: #fff;
	text-transform: uppercase;
}

@media (min-width: 1024px) {
	.navigation-3.fixed > .block.lg\:absolute.inset-0 {
		position: relative;
	}
}

@media (max-width: 1440px) {
	div#navigation-style-4.container {
		max-width: 1280px;
	}
}

div#navigation-style-4 {
	max-width: 1600px;
	width: 90%;
	padding: 1em 0 !important;
}

body#ry-pg-body div#navigation {
	position: static;
}

.module-testimonials h6, .module-testimonials p, .module-testimonials h2 {
	text-align: center !important;
}

img.rev-icon {
	max-width: 70px;
	height: auto;
	width:100%;
}


@media (max-width: 1080px) { 
	.ry-mnu .ry-nav {
		font-size: 14px !important;
	}

	div.module-testimonials h6, .module-testimonials p, .module-testimonials h2 {
		text-align: center !important;
	}


	 div#team-inner-block {
    flex-direction: column;
    padding: 3em 0 !important;
  }

	div#team-inner-block .flex {
		max-width: 100%;
	}
	
	.inner-team-verbiage {
  padding-top: 5em;
}

}

@media (max-width: 1200px) { 
	div#navigation-style-4 {
		max-width: 90%;
	}
	.ry-menu .ry-nav {
		gap: 20px !important;
	}
	div#navigation-style-4 .cursor-pointer img {
		max-width: 200px;
	}
}

@media (max-width:991px) {

	.main-title h2 {
		line-height: 1.2;
		font-size: 30px !important;
	}

	.sub-title h4 {
		font-size: 20px !important;
	}

	div#section-hp-services .grid h4 {
		font-size: clamp(1.125rem, 1.0197rem + 0.5263vw, 1.375rem);
		line-height: 1.3;
	}

	div#footer-map {
		height: 400px !important;
	}

	div#rev-flex h3 {
		font-size: 22px !important;
	}
	.homepage-video-slider #the-video #ry-video-slider {
		padding-top:95px
	}
}

@media (max-width:768px) {

	img#hp-rev-image {
		height: auto !important;
		border-top-left-radius: 20px;
		border-top-right-radius: 20px;
	}

	div#hp-rev-image-block {
		width: 100% !important;
	}

	div#hp-rev-image-flex {
		display: block !important;
		border-radius: 20px;
	}

	div#rev-flex {
		width: 100%;
	}
}

@media (max-width:767px) {

	.snap-mobile-menu .gap-6 {
		gap: 0 10px;
	}

	.homepage-swiper .slider-info {
		max-width: 100%;
		text-align: center;
		position:static !important;
	}

	.homepage-swiper .slider-info .mb-4 {
		margin-bottom:0 !important;
	}

	.homepage-swiper .homepage-swiper {
		margin-top: 0em;
	}

	.homepage-swiper .swiper-slide {
		padding-top:6em
	}

	.homepage-swiper .swiper-slide img {
		height: 100% !important;
	}
	.homepage-swiper .slider-info {
		padding-bottom: 40px;
	}
}

@media (max-width: 500px) {

	.snap-mobile-menu img { 
		max-height: unset;
		max-width:190px;
		width:100%
	}

	.snap-mobile-menu .gap-6 {
		gap: 0 10px;
	}
}

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: 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;
	}
}

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

@media (max-width: 1023px) {
	.homepage-swiper .swiper-slide img {
		height: 100% !important;
	}
	.slider-info {
		width: 100% !important;
		max-width: 100% !important;
	}
	.slider-info {
		width: 100%;
		max-width: 100%;
	}
	.homepage-swiper h2 {
		text-align: center !important;
	}
	#navigation-style-3,
	.navigation-3 .hidden.lg\:flex,
	.homepage-video-slider::before {
		display: none !important;
	}
	
	div#ry-sidebar {
		max-width: 400px;
		margin: auto;
	}
}

@media (min-width: 1024px) {
	.homepage-video-slider {
		max-height: 100vh;
		overflow: hidden;
	}
	.homepage-video-slider::before {
		background: linear-gradient(to bottom, white 14%, transparent, transparent);
		opacity: 1;
	}
}


/*body[data-page-name="contact-us"] div#footer-map {
	display: none !important;
}*/

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

.slider-info-center-bottom {
	max-width: 100% !important;
}

.module-19.style2 .services-frame .frame {
	border-top-left-radius: 5vw;
	border-bottom-right-radius: 5vw;
}
.module-19.style2 .services-frame .frame .service-img-holder .service-img {
	background: white;
}
.module-19.style2 .services-frame .frame .service-name a {
	font-size: 28px;
}
.module-19.style2 .services-frame .frame .service-name a:after{
	font-size: 20px;
}
.module-19.style2 .services-frame .frame:nth-child(even) {
	background: #333;
}
.module-19.style2 .services-frame .frame .service-name a:after {
	background: #ffffff;
	color: #333;
}

.module-19.style2 .ry-container {
	position: relative;
	z-index: 9;
}
#section-hp-services::before, .module-19.style2::before, .ry-services.style2::before {
	background-position: center bottom;
	opacity: 1 !important;
}
.module-19 .ry-generic .content-wrap p {
	color: #000;
}
@media (min-width: 1025px) {
	.module-19.style2 .ry-container .sub-title h4, .module-19.style2 .ry-container .main-title h2 {
		text-align: left !important;
	}
}
@media (min-width: 1081px) {
	.module-19 .card-holder .ry-left .ry-generic .title-wrap .sub-title, .module-19 .card-holder .ry-left .ry-generic .title-wrap .main-title, .module-19 .ry-generic .content-wrap p {
		text-align: left;
	}
	.module-19 .ry-generic .btn-wrap .ry-btn {
		margin-left: unset;
	}
	.module-welcome.style-5 .ry-container .ry-flex {
		flex-direction: row-reverse;
		gap: 80px;
	}
}

.homepage-team-swiper {
	max-width: 1280px;
}

#section-hp-team .swiper-wrapper {
	max-width: max-content;
	margin-left: auto;
	margin-right: auto;
}

#section-hp-team h6 {
	font-size: 26px;
	margin-bottom: 10px;
}


body[data-page-name="index"] div#hp-insurance-1 {
	background: #f9f9f9;
}
body[data-page-name="index"] div#hp-insurance-1 .swiper-slide {
	background: transparent;
	padding-bottom: 30px;
}

div#hp-insurance-1 .swiper-slide img {
	filter: unset;
	mix-blend-mode: unset;
	aspect-ratio: 3 / 1;
	height: 80px;
}

@media (min-width: 992px) {
	.custom-hidden {
		display: none !important;
	}
}

/*body#page div#navigation.navigation-4:not(.bg-White99) .ry-nav.text-black {
color: #fff;
}
body#page div#navigation.navigation-4:not(.bg-White99) .ry-nav.text-black .caret {
border-color: white;
}

body#page div#navigation.navigation-4:not(.bg-White99) .cursor-pointer img {
filter: brightness(0) invert(1);
}*/

.ry-hp-team-8::before {
	height: 38%;
	background: #18314a;
}

.hp-team-style-8 .sub-title h4 {
	text-align: unset;
}

#hp-brands-3::after {
	content: "";
	position: absolute;
	bottom: unset;
	height: 50%;
	background: linear-gradient(to bottom, #f9f9f9, transparent);
	inset: 0;
}
#hp-brands-3::before {
	opacity: .85;
}

.with-gradient:before {
	display: none;
	background: linear-gradient(to top, #f9f9f9, transparent);
	height: 40%;
	top: unset;
	bottom: 0;
}

body[data-page-name="frames"] #hp-brands-3::before,
body[data-page-name="frames"] #hp-brands-3::after {
	display: none !important;
}

body[data-page-name="frames"] #hp-brands-3 {
	padding-top: 0 !important;
}

body#page div#hp-brands-6 {
	background: #564d3f;
	position: relative;
	z-index: 33;
	padding-top: 300px;
}
body#page div#hp-brands-6 .ry-container {
	max-width: 1280px;
	width: 90%;
	background: #ede5da;
	border-radius: 40px;
	padding: 100px 60px 20%;
	box-shadow: 0 0 80px rgb(0 0 0 / 20%);
	margin-top: -300px;
	position: relative;
	border: 4px solid #a4846c;
	overflow: hidden;
}

body#page div#hp-brands-6 .ry-container:before {
	content: "";
	position: absolute;
	inset: 0;
	height: 0;
	padding-bottom: 80%;
	background: url(https://s3.amazonaws.com/static.organiclead.com/Site-77912322-10f9-44da-a229-37aee1d6d80a/Assets/brands_box_bg.jpg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center bottom;
	top: unset;
}

body#page div#hp-brands-6 .ry-container .swiper-slide {
	background: transparent;
}

body#page div#hp-brands-6 .ry-container .swiper-slide img {
	max-height: 80px;
}

body#page div#hp-brands-6:before {
	content: "";
	position: absolute;
	display: block;
	background: url(https://s3.amazonaws.com/static.organiclead.com/Site-77912322-10f9-44da-a229-37aee1d6d80a/Assets/brands_bg_v2.jpg);
	background-size: cover;
	z-index: 0;
	inset: 0;
	height: calc(100% - 300px);
	top: unset;
	background-position: bottom;
}

.module-testimonials h6, .module-testimonials p, .module-testimonials h2 {
	text-align: center !important;
}

.module-testimonials.style-2::before, .module-testimonials.style-3::after {
	height: 50%;
	background: url(https://s3.amazonaws.com/static.organiclead.com/Site-f8468d40-01ef-473b-87bb-f2c57cc63ad4/Assets/final_testimonial_bg.png);
	background-position: center bottom;
	top: unset;
	border-top-left-radius: 4vw;
	border-top-right-radius: 4vw;
	background-size: cover;
	border-top: 10px solid #202020; display: none;
}
.module-testimonials.style-2 .comments-holder {
	/*border-radius: 50px;
	box-shadow: 0 20px 50px rgb(0 0 0 / 30%);
	background: url(https://s3.amazonaws.com/static.organiclead.com/Site-f8468d40-01ef-473b-87bb-f2c57cc63ad4/Assets/testimonial_box_bg.jpg);
	background-size: cover;*/
	background: transparent;
}
/*.module-testimonials.style-2 .comments-holder .testimonials-swiper-2 *,
.module-testimonials.style-2 .main-title h2, .module-testimonials.style-2 .sub-title h4{
color: #ffffff;
}*/
.module-testimonials.style-2 .comments-holder .testimonials-swiper-2 .text-yellow-300 {
	fill: #cbab6e;
}
.module-testimonials.style-2 {
	background: url(https://www.royacdn.com/unsafe/smart/Site-1e1cfedf-29bf-44d1-a7dc-b86ca34d7340/HP_UPDATED_ASSETS/bg_testimonials.jpg);
	background-size: cover;
	background-position: center top;
	padding: 8em 0 !important;
}

div.hp-review-block {
    margin: 3em auto 0;
}

.module-testimonials.style-2 .ry-container {
    max-width: 1400px;
    width: 90%;
}

.module-testimonials.style-2 h2, .module-testimonials.style-2 h4 {
    color: #fff;
}

.module-testimonials.style-2 .swiper-pagination-bullet-active {
	background-color: var(--color-secondary-background);
		}

body[data-page-name="index"] div#hp-insurance-1 .block.md\:text-xl.md\:text-center.leading-6.text-gray-500 {
	display: none;
}

body[data-page-name="frames"] div#hp-brands-6 {
	padding-top: 0;
}

div#section-hp-services .col-xs-12.flex-1.w-2\/3.text-center.absolute {
	top: 85%;
}
div#section-hp-services .relative.group:hover .text-3xl.font-semibold.leading-none {
	background: transparent;
}
div#section-hp-services .text-3xl.font-semibold.leading-none {
	border: none;
	color: #fff;
}
div#section-hp-services .relative.group img.object-cover {
	filter: unset;
	opacity: 1;
}
div#section-hp-services .relative.group:hover img.object-cover {
	filter: grayscale(1);
}

div#section-hp-services .flex-shrink-0.relative.group .group-img {
	height: 0;
	padding-bottom: 100%;
	position: relative;
}
div#section-hp-services .flex-shrink-0.relative.group .group-img img {
	position: absolute;
	height: 100% !important;
	width: 100%;
	object-fit: cover;
}

div#section-hp-services .sub-title h4, div#section-hp-services .main-title h2 {
	color: #ffffff;
}
div#section-hp-services .add-border {
	position: relative;
}
div#section-hp-services .add-border:before {
	content: "";
	position: absolute;
	inset: 0;
	border: 10px solid white;
	left: -8%;
	right: -8%;
	top: 24%;
	bottom: 24%;
	opacity: .6;
}

@media (max-width: 1080px) {
	div#section-hp-services .add-border:before {
		border: 8px solid white;
		left: -8px;
		right: -8px;
	}
	div#section-hp-services .grid h4 {
		font-size: clamp(1.125rem, 1.0197rem + 0.5263vw, 1.375rem);
	}
	div#section-hp-services .col-xs-12.flex-1.w-2\/3.text-center.absolute {
		left: 0;
		transform: translate(0, -50%);
		width: 100%;
	}
}
@media (max-width: 767px) {
	div#section-hp-services .flex-shrink-0.relative.group .group-img {
		padding-bottom: 150%;
	}
	div#section-hp-services .grid h4 {
		font-size: 14px;
		text-align: center;
		line-height: 1.1;
	}
}
#ry-footer-3 .footer-contents::before {
	background-color: #363636;
	opacity: 1;
}
#ry-footer-3::after {
	background-color: var(--color-secondary-background);
		}



.custom-flex .row-flex {
	display: flex;
	gap: 3vw;
	margin-top: 20px;
}
.custom-flex .row-flex:nth-child(odd) {
	flex-direction: row-reverse;
}
.custom-flex .row-flex img {
	aspect-ratio: unset !important;
	margin-top: 0 !important;
	max-height: unset !important;
	width: 100%;
	object-fit: contain;
}
.custom-flex .row-flex h2, .custom-flex .row-flex h3 {
	margin-top: 0px !important;
}
.custom-flex .row-flex .ry-each:last-child {
	width: 100% !important;
	/*max-width: calc(100% - 500px) !important;*/
}
.custom-flex .row-flex .ry-each:first-child {
	width: 100%;
}

.custom-flex .module-1.row-flex h4 {
    font-size: 25px;
}
.custom-flex .module-1.row-flex {
    flex-direction: row;
	gap: 40px;
}
.custom-flex .module-1.row-flex .ry-each:first-child {
    width: 40% !important;
    max-width: 100% !important;
}
.custom-flex .module-1.row-flex .ry-each:last-child {
	width: 100% !important;
	max-width: 100% !important;
}
.custom-flex .module-1.row-flex h4 {
    margin-top: 0;
}
.custom-flex .module-1.row-flex .ry-each img {
    width: 100% !important;
    height: auto !important;
    object-fit: contain !important;
}

.custom-flex .row-flex.flex-col {
    flex-direction: column;
    gap: 30px;
}
.custom-flex .row-flex.flex-col .ry-each:last-child {
    max-width: 100% !important;
    margin-bottom: 0;
}
.custom-flex .row-flex.flex-col .ry-each:last-child img {
    margin-bottom: 0;
}

@media (max-width: 991px) {
	.custom-flex .row-flex {
		flex-direction: column !important;
		align-items: center;
		justify-content: center;
	}
	.custom-flex .row-flex *, .custom-flex * {
		text-align: center;
	}
	.custom-flex ul p {
		text-align: left;
	}
	
	.custom-flex .module-1.row-flex .ry-each:first-child {
		width: 100% !important;
	}

		custom-flex .module-1 img {
			max-width:400px !important;
		}


	.custom-flex .module-1.row-flex .ry-each img {
		max-width: 400px;
		margin: auto;
	}

	.custom-flex .module-1.row-flex {
		gap: 2em 0 !important;
	}

	
}

/* parent container */
.gallery-slider{
	width:100%;
	max-width:1200px;
	margin:auto;
}

/* slider size */
.gallery-slider .swiper{
	width:100%;
	height:650px;
}

/* slide */
.gallery-slider .swiper-slide{
	width:100% !important;
	height:100%;
}

/* images */
.gallery-slider .swiper-slide img{
	width:100%;
	height:100%;
	object-fit:contain;
	display:block;
	object-position: top center;
}

/* arrows */
.gallery-slider .swiper-button-next,
.gallery-slider .swiper-button-prev{
	color:#000;
	background:#fff;
	width:45px;
	height:45px;
	border-radius:50%;
	box-shadow:0 4px 10px rgba(0,0,0,0.15);
}

.gallery-slider .swiper-button-next:after,
.gallery-slider .swiper-button-prev:after{
	font-size:18px;
}

/* pagination */
.gallery-slider .swiper-pagination{
	bottom:10px !important;
}

.gallery-slider .swiper-pagination-bullet{
	width:10px;
	height:10px;
	background:#ccc;
	opacity:1;
}

.gallery-slider .swiper-pagination-bullet-active{
	background:#000;
}

/* responsive */
@media (max-width:768px){

	.gallery-slider .swiper{
		height:300px;
	}

	.gallery-slider .swiper-button-next,
	.gallery-slider .swiper-button-prev{
		width:35px;
		height:35px;
	}

}
.snap-mobile-menu {
	background: #fff; 
}
.snap-mobile-menu img {
	filter: unset !important;
}



/*UPDATES*/

@font-face {
    font-family: Boska;
    src: url(https://s3.amazonaws.com/static.organiclead.com/Site-1e1cfedf-29bf-44d1-a7dc-b86ca34d7340/fonts/Boska_Regular.woff) format('woff');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}


@font-face {
    font-family: Boska;
    src: url(https://s3.amazonaws.com/static.organiclead.com/Site-1e1cfedf-29bf-44d1-a7dc-b86ca34d7340/fonts/Boska_Light.woff) format('woff');
    font-weight: light;
    font-style: normal;
    font-display: swap;
}


@font-face {
    font-family: Boska;
    src: url(https://s3.amazonaws.com/static.organiclead.com/Site-1e1cfedf-29bf-44d1-a7dc-b86ca34d7340/fonts/Boska_Italic.woff) format('woff');
    font-weight: 400;
    font-style: italic;
    font-display: swap;
}

.default #header-wrap {
  position: static !important;
}

div#blog-grid-top p,
div#blog-grid-bottom p  {
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    line-clamp: 4;
    -webkit-box-orient: vertical;
}


.ry-btn {
	text-transform: capitalize;
}

#ry-sidebar h5 {
  text-align: center;
  font-size: 25px;
}
#ry-sidebar p {
  text-align: center;
}

div#blog-grid-top a, div#blog-grid-bottom a {
    text-decoration:none !important;
}

div#contents h2, div#contents h3, div#contents h4 {
    margin: 0 0 15px 0 !important;
    width: 100%;
}

.ry-heading h2 {
  color: var(--color-primary-background);
  text-transform: initial;
  font-size: 65px;
  line-height: 1;
}
.ry-heading h4 {
  font-size: 30px;
  color: #333333;
  font-style: italic;
  font-family: "Boska";
  font-weight: 500 !important;
}
.ry-text p {
  font-size: 19px;
  line-height: 30px;
  color: var(--color-secondary-background);
}

.top-menu-block {
  background: #000;
}
.ry-menu .ry-nav {
  display: flex;
  align-content: center;
  justify-content: space-between;
}
.ry-menu .ry-nav li.primary a {
  letter-spacing: 2px;
  color: #fff;
  font-size: 16px;
}

.ry-menu .ry-nav li.dropdown .dropdown-menu a {
    padding: 12px 25px;
}
#top-menu {
    max-width: 1600px;
    margin: auto;
    width: 90%;
    padding: 10px 0 20px 0;
}
#navigation {
  position: relative;
	    background: #fff;
}

div#navigation-style-4 .cta-btn.ry-btn-secondary:hover {
    background: var(--color-secondary-background) !important;
    border-color: var(--color-secondary-background) !important;
}

div#navigation-style-4 .cta-btn.ry-btn-secondary:hover a {
    color: #fff;
}

div#navigation-style-4 .cta-btn.ry-btn-primary:hover {
    background-color: var(--color-secondary-background) !important;
    border-color: var(--color-secondary-background) !important;
}

div#navigation-style-4 .cta-btn.ry-btn-primary:hover a {
    color: #fff !important;
}

div#navigation-style-4 .cta-btn.ry-btn-primary:hover i {
    filter: none;
}

#header-wrap {
  width: 100%;
  position: fixed;
}

.homepage-swiper h1 {
    color: var(--color-primary-background);
    font-size: 100px;
    line-height: 1;
}

.homepage-swiper h4 {
    font-size: 50px;
	    line-height: 1;
    font-size: 75px;
    color: #ffffff;
    font-style: italic;
    font-family: "Boska";
}

.cta-btn.ry-btn-primary, .cta-btn.ry-btn-secondary {
    border-radius: 10px !important;
}

div#navigation-style-4 .cta-btn.ry-btn-primary {
    background: transparent;
    border: 1px solid var(--color-secondary-background) !important;
}

#welcome-section {
  padding: 8em 0 3em;
	background: #fff;
}

#welcome-section .ry-content.flex {
  justify-content: space-between;
  max-width: 1300px;
  margin: auto;
  float: none;
}


div#welcome-section .ry-heading h4 {
  text-align: right;
  margin-top: 10px;
}


#welcome-section .ry-text {
  width: 55%;
}

div.hp-team-verbiage-sec {
    position: relative;
    top: -13em;
}

div.hp-team-verbiage-sec .ry-text {
    max-width: 980px;
    margin: 3em auto 0;
}

div.hp-team-verbiage-sec .ry-heading h2 {
    text-transform: initial !important;
}

div#team-block .ry-heading {
    margin-bottom: 2em;
}


#section-hp-services span {
  display: block;
  font-size: 20px;
  color: var(--color-secondary-background);
  font-family: poppins;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-weight: 400;
  opacity: 0.5;
}

.serv-heading-block {
    border: 1px solid hsl(0deg 0% 40% / 27.06%);
    padding: 20px 30px;
    border-radius: 10px;
    position: absolute;
    bottom: 10%;
    left: 0;
    background: #fff;
    max-width: 500px;
    margin: auto;
    right: 0;
    box-shadow: -1px 3px 11px 1px rgb(0 0 0 / 15%);
	width: 90%;
	cursor: pointer;
	transition: all ease 0.6s;
}
.serv-heading-block:hover {
    background: var(--color-secondary-background);
}

.serv-heading-block:hover .hp-services-title h4, .serv-heading-block:hover .hp-services-title span {
    color: #fff !important;
}

.serv-heading-block .ry-icon {
    position: absolute;
    top: 27%;
    background: #fff;
    width: 50px;
    height: 50px;
    border-radius: 100%;
    display: flex;
    align-content: center;
    justify-content: center;
    border: 1px solid hsl(0deg 0% 40% / 56%);
	right: 5%;
}

.serv-heading-block .ry-icon i {
    position: absolute;
    top: 17%;
    font-size: 25px;
    right: 9px;
}
.hp-services-title h4 {
    font-size: 33px;
    line-height: 1.3;
    font-weight: 600;
    color: var(--color-secondary-background);
}
#section-hp-services .ry-each {
  position: relative;
}

div.team-bio-block {
    padding: 3em 3em 0 3em;
    align-items: center;
    gap: 0 5%;
    background-image: url(https://www.royacdn.com/unsafe/smart/Site-1e1cfedf-29bf-44d1-a7dc-b86ca34d7340/HP_UPDATED_ASSETS/staff_bg.png);
    background-size: cover;
    border-radius: 20px;
    position: relative;
    top: -22em;
    background-position: center;
    background-repeat: no-repeat;
    border: 1px solid hsl(0deg 0% 100% / 56%);
}

div#team-block div#with-image {
    width: 50%;
}

div#team-block div#with-text {
    width: 50%;
}

div#team-inner-block .ry-text p {
    color: #fff;
}

div#team-inner-block .ry-heading h4, div#team-inner-block .ry-heading h2 {
    color: #fff;
}

a#hp-team-btn {
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    border: 1px solid #fff;
    margin: 2em 0 0;
}

div#team-block {
    align-items: center;
    max-width: 90%;
    justify-content: space-between;
    margin: auto;
    gap: 0 5%;
}

.hp-services-block {
    border-bottom-right-radius: 150px;
    padding-bottom: 25em;
    background: #fff;
}

div#team-inner-block {
    position: relative;
}

div.section-hp-team:after {
    width: 100%;
    height: 150px;
    content: '';
    position: absolute;
    bottom: 0;
}

div.section-hp-team {
    background: url(https://www.royacdn.com/unsafe/smart/Site-1e1cfedf-29bf-44d1-a7dc-b86ca34d7340/HP_UPDATED_ASSETS/bg_blackleaf.jpg);
    background-size: cover;
    background-repeat: no-repeat;
}

div#hp-serv-section {
    background: #212121;
}

div.custom-info-section .ry-container {
    max-width: 1400px;
	    width: 90%;
}

.custom-info-block {
    background: #1f1f1f;
}

div.custom-info-section {
  background: url(https://www.royacdn.com/unsafe/smart/Site-1e1cfedf-29bf-44d1-a7dc-b86ca34d7340/HP_UPDATED_ASSETS/bg_doctordeets.png);
  border-top-left-radius: 150px;
  padding: 8em 0;
  background-size: cover;
  background-position: center;
}

div.custom-info-section div#with-image-content {
    gap: 0 7%;
    align-items: center;
    justify-content: space-between;
}

div.custom-info-section div#with-image-content div#with-text {
    width: 50%;
}

div.custom-info-section .ry-heading {
    margin-bottom: 15px;
}

a#hp-bio-btn {
    padding: 12px 30px;
    display: block;
    margin: 2em 0 0;
    background: transparent;
    color: #333;
    border: 1px solid #000;
}

div.custom-info-section div#with-image {
    width: 40%;
}

div#hp-image-text-flex {
    flex-direction: column;
    gap: 8em 0;
}

div.hp-affiliations {
    margin: 5em 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0 2em;
    border-top: 1px solid hsl(0deg 0% 0% / 27%);
    padding: 1em 0;
    border-bottom: 1px solid hsl(0deg 0% 0% / 27%);
}

div.hp-affiliations h2 {
    font-size: 40px;
    line-height: 1;
    color: #333333;
    font-weight: 500 !important;
}

div#affiliations-logo-block {
    gap: 0 4em;
    justify-content: space-between;
    align-items: center;
    width: 80%;
}

div#affiliations-logo-block img {
    max-width: 80%;
    height: 150px;
    object-fit: contain;
    margin: auto;
    width: 100%;
}

div#hp-image-text-flex  div#with-image-content:nth-child(even) {
    flex-direction:row-reverse;
}

div#hp-image-text-flex div#with-image, div#hp-image-text-flex div#with-text {
    width: 50%;
}

div#hp-image-text-flex div#with-image img.img-responsive {
    width: 100%;
}

div.homepage-gallery {
    height: 800px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-image: url(https://www.royacdn.com/unsafe/smart/Site-1e1cfedf-29bf-44d1-a7dc-b86ca34d7340/HP_UPDATED_ASSETS/img_gallery.jpg);
	background-size: cover;
}

div.homepage-gallery .ry-heading h2 {
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 12px;
    font-size: 170px;
}

a#hp-gallery-btn {
    padding: 12px 25px;
    background: transparent;
    border: 1px solid #fff;
    margin-top: 2em;
    display: block;
}


div.homepage-faq {
  padding: 10em 0;
  border-bottom-right-radius: 150px;
  background-image: url(https://www.royacdn.com/unsafe/smart/Site-1e1cfedf-29bf-44d1-a7dc-b86ca34d7340/HP_UPDATED_ASSETS/bg_FAQ.png);
  background-size: cover;
  background-position: bottom center;
}


div.homepage-faq .ry-container {
  max-width: 1400px;
  width: 90%;
}
#faqs-flex {
  gap: 0 2%;
}
#faqs-flex .ry-heading {
  width: 20%;
}
#faqs-flex #faq-accordion {
  width: 80%;
  border: 1px solid #66666629;
}
#faqs-flex #faq-accordion .accordion-title {
  background: #fff;
  padding: 10px 30px;
  cursor: pointer;
}
#faqs-flex #faq-accordion .accordion-title h5 {
  font-size: 18px;
  font-family: Onest;
}
div.homepage-faq .accordion-content {
  background: #fff;

}

div.faq-section-wrap {
  background: #212121;
}
#accordion-content {
  background: #fff;
  border-top: 1px solid #66666629;
  border-bottom: 1px solid #66666629;
}

div.hp-newpatients {
  background: url(https://www.royacdn.com/unsafe/smart/Site-1e1cfedf-29bf-44d1-a7dc-b86ca34d7340/HP_UPDATED_ASSETS/bg_appt_cta.jpg);
  padding: 10em 0;
  background-size: cover;
  background-position: bottom center;
}
div.hp-newpatients .carousel-inner img {
  width: 100%;
  max-width: 1200px;
  margin: auto;
}

.hp-patient-slide-item .ry-heading {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) !important;
	width:100%;
}
.hp-patient-slide-item {
  position: relative;
}
.hp-patient-slide-item .ry-heading p, .hp-patient-slide-item .ry-heading h2 {
  color: #fff;
  max-width: 650px;
  line-height: 1.5;
	margin: auto;
}
#hp-new-patients {
  padding: 12px 25px;
  margin-top: 2em;
  display: block;
  background: transparent;
  border: 1px solid;
}

a#hp-new-patients:hover {
    background:var(--color-primary-background);
    border-color:var(--color-primary-background);
}

div.hp-newpatients .swiper-button-next i, div.hp-newpatients .swiper-button-prev i {
  fill: #fff;
  color:#fff;
  font-size:20px;
  position: relative;
  top:1px;
  font-weight:bold;
}

div.hp-newpatients .swiper-button-next, div.hp-newpatients .swiper-button-prev {
  background: transparent;
  width: 60px;
  height: 60px;
  border: 1px solid #fff;
}

.hp-newpatients .gallery-slider .swiper {
  height: auto;
}
.hp-patient-slide-item .ry-heading p {
  font-size: 19px;
}

#appointment-section h2 span {
  color: var(--color-secondary-background);
}
#hp-aapointment-btn {
  padding: 12px 25px;
  margin: 2em auto 0;
  display: block;
  color: var(--color-secondary-background);
}
#appointment-section h2 {
  font-size: 150px !important;
  text-transform: uppercase;
  font-weight: 400;
  line-height: 1.1;
}
#appointment-section {
  margin-top: 8em;
}
#hp-aapointment-btn:hover {
  color: #fff;
}

#footer-info-flex {
  justify-content: space-between;
  color: #fff;
}
#ry-footer-3 .ry-container {
  max-width: 1400px;
  width: 90%;
}
#ry-footer-3 {
  padding: 5em 0 1em;
}

.footer-copy-text p {
  color: #fff;
}

.footer-copy-text p {
  color: #fff;
  font-size: 15px;
}
.footer-copy-text {
  display: flex;
  align-content: center;
  justify-content: space-between;
  padding: 10px 0;
}

div.footer-logo-social i {
  background: transparent !important;
  border: 1px solid #fff;
  height: 45px;
  width: 45px;
}

div.footer-logo-social i:hover {
  background: var(--color-primary-background) !important;
  border-color: var(--color-primary-background) !important;
}
#footer-info-flex  #with-hours ul li span {
  font-size: 16px;
}


div.footer-copy-right {
  border-top: 1px solid #ffffff73;
  padding-top: 10px;
  margin-top: 5em;
}

@media (min-width:1081px) and (max-width:1600px) {
    .ry-heading h2 {
		font-size: 50px !important;
	}

	div.homepage-gallery .ry-heading h2,
	div#appointment-section h2 {
        font-size: 120px !important;
    }

	div.homepage-gallery {
		height: 600px !important;
	}
}

@media (max-width:1400px) {
    div#contents {
		max-width: 90% !important;
		margin: auto !important;
	}
}

@media (min-width:768px) and (max-width:1080px) {
	
	div#affiliations-logo-block img {
		max-width: 90%;
	}

	div#affiliations-logo-block {
		gap: 0 2em;
	}
}


@media (max-width:1080px) {
  .snap-mobile-menu.flex.lg\:hidden {
    display: flex !important;
    visibility: visible !important;
  }
  div.top-menu-block {
    display: none;
  }
  #navigation-style-4 {
    display: none;
  }
  
  div.homepage-swiper h4 {
    font-size: 35px;
  }
  div.homepage-swiper h1 {
    font-size: 45px;
	  margin-bottom: 10px;
  }
  
  #welcome-section .ry-content.flex {
    flex-direction: column;
  }
  #welcome-section .ry-text {
    width: 100%;
	max-width: 750px;
    margin: auto;
  }
  
  #welcome-section .ry-text p {
    text-align: center !important;
  }
  
  #welcome-section .ry-heading h2,
  #welcome-section .ry-heading h4 {
    text-align: center !important;
  }
  
  #welcome-section .ry-heading {
    margin-bottom: 1.5em;
  }
  
  #welcome-section {
      padding: 4em 1em !important;
  }
  
  .ry-heading h2 {
    font-size: 35px !important;
	  text-align:center !important;
  }
  
  .ry-heading h4 {
     font-size: 25px !important;
	text-align:center !important;
	 line-height: 1.3 !important; 
  }
	
	.hp-services-title h4 {
	  font-size: 25px;
	}
	.serv-heading-block .ry-icon {
	  width: 40px;
	  height: 40px;
	}
	.serv-heading-block .ry-icon i {
	  font-size: 18px;
	}
	
	#section-hp-services span {
	  font-size: 18px !important;
	  letter-spacing: 0 !important;
	}
	
	
	#section-hp-services {
	  padding: 1em 0 0;
	}
	
	div#team-block {
	  flex-direction: column;
	  gap: 3em 0 !important;
	}

	  div.team-bio-block {
	  top: 0 !important;
	}

	.hp-services-block {
	  padding-bottom: 2em;
	  border-radius: 0;
	}
	
	div.team-bio-block {
	  padding: 0 !important;
	  background-image: none;
	  border: none;
	}
	
	div.hp-team-verbiage-sec {
	  top: 0;
	}
	
	div#team-block div#with-image {
	  width: 100%;
	}
	div#team-block div#with-image .img-responsive {
	  margin: auto;
	  object-fit: cover;
	  width: 250px;
	  height: 250px;
	  background: var(--color-secondary-text);
	  border-radius: 10px;
	  object-position: top;
	}
	div#team-block div#with-text {
	  width: 100%;
	  max-width: 700px;
	}
	div#team-block div#with-text h2, div#team-block div#with-text h4, div#team-block div#with-text p {
	  text-align: center;
	}


	#hp-team-btn {
	  margin: 2em auto 0 !important;
	  float: none !important;
	}
	
	div.custom-info-section div#with-image-content, div#hp-image-text-flex div#with-image-content:nth-child(2n) {
	  flex-direction: column;
	  gap: 2em 0;
	}
	div.custom-info-section div#with-image-content div#with-text,
	div.custom-info-section div#with-image {
	  width: 100% !important;
	}

	div.custom-info-section div#with-image-content div#with-text p {
	  text-align: center;
	}
	
	div.custom-info-section {
	  padding: 3em 1em !important;
	}
	
	div.custom-info-section div#with-image img {
	  max-width: 350px; 
	  margin:auto;
		width: 100%;
	}
	
	#hp-bio-btn {
	  margin: 2em auto 0 !important;
	}
	
	div.custom-info-section div#with-image-content div#with-text {
	  max-width: 750px;
	}
	
	div#hp-image-text-flex {
	  gap: 4em 0 !important;
	}
	
	div.homepage-gallery {
		height: 400px;
		background-image: url(https://www.royacdn.com/unsafe/smart/Site-1e1cfedf-29bf-44d1-a7dc-b86ca34d7340/HP_UPDATED_ASSETS/img_gallery.jpg);
		background-position: 80%;
		
	}
	
	#faqs-flex {
	  flex-direction: column;
	}
	
	#faqs-flex {
	  flex-direction: column;
	  gap: 2em 0 !important;
	}
	#faq-accordion, #faqs-flex .ry-heading {
	  width: 100% !important;
	}
	
	div.homepage-faq {
	  padding: 4em 0 !important;
	  border-radius: 0 !important;
	}
	
	.module-testimonials.style-2 {
	  padding: 4em 0 !important;
	}
	
	div.hp-newpatients {
	  padding: 4em 0 !important;
	}
	
	#appointment-section h2 {
	  font-size: 45px !important;
	}
	
	#appointment-section {
	  margin-top: 4em !important;
	}
	
	div.hp-newpatients .swiper-button-next, div.hp-newpatients .swiper-button-prev {
	  width: 30px;
	  height: 30px;
	}
	div.hp-newpatients .swiper-button-next i, div.hp-newpatients .swiper-button-prev i {
	  font-size: 12px;
	}
	
	.hp-patient-slide-item .ry-heading {
	  width: 100% !important;
	  transform: none !important;
	  position: static;
	  background: #000;
	  padding: 2em 1em 2em!important;
	}
	
	.hp-patient-slide-item .ry-heading p, .hp-patient-slide-item .ry-heading h2 {
	  margin: auto !important;
	}
	
	#footer-info-flex {
	  flex-direction: column !important;
	  gap: 2em 0 !important;
	  text-align: center !important;
	}
	
	div.footer-logo-social img {
	  max-width: 250px;
	  margin: auto;
	}
	
	div#ry-footer-3 h4 {
	  text-align: center !important;
	}
	
	#with-contact-info .group {
	  flex-direction: column;
	  justify-content: center;
	  text-align: Center;
	}
	
	#with-contact-info .lg\:text-left {
	  text-align: center !important;
	}
	
	#with-contact-info .group .bi.bi-geo-alt-fill {
	  margin: auto;
	}
	
	#with-hours ul li {
	  display: flex;
	  flex-direction: row;
	  max-width: 250px;
	  margin: auto;
	  line-height: 1.8;
	}
	
	.footer-copy-text {
	  flex-direction: column;
	  gap: 10px 0;
	}
	
	.footer-copy-text p {
	  text-align: center !important;
	}
	
	div.footer-copy-right {
	  margin-top: 3em !important;
	}
}


@media (max-width:991px) {
	a#page-btn {
		margin: auto;
	}
}



@media (max-width:767px) {

	div#affiliations-logo-block {
		width: 100%;
	}

	div.hp-affiliations {
		flex-direction: column !important;
		padding: 3em 0 !important;
	}

	div#affiliations-logo-block {
		flex-wrap: wrap;
		width: 100% !important;
		gap: 3em 0 !important;
	}

	div#affiliations-logo-block img {
		height: 60px;
		max-width: 134px !important;
	}

	div.aff-logo-wrap {
		width: 48% !important;
	}

}

@media (max-width:500px) {
	#hp-services-block {
  	   flex-direction: column;
	  gap: 2em 0;
	}
	
	div.hp-newpatients .swiper-button-next, div.hp-newpatients .swiper-button-prev {
	  display: flex !important;
	}
}

body[data-page-name="contact-us"] div#footer-map {
    display: none;
}
/*END UPDATES*/