body, body p, body div{font-family: Geist !important;font-weight: 300 !important; }
h1,h2,h3,h4,h5,h6{font-family: ivypresto-display !important;font-weight: 400 !important;}
b, strong {font-weight: bold !important;}
@media (max-width: 991px) {}
@media only screen and (max-width: 768px){
	.swiper-slide {width: 100% !important;}
	.testimonials-wrapper .testimonials-block .carousel-control {display: none;}
	.carousel-control.left, .carousel-control.right {background-image: unset; background-image: unset;background-repeat: unset;}
	.carousel-control, .carousel-control:hover, .carousel-control:focus {color: #FFFFFF;}}
#services-box a{ margin:0 auto;}
#articles .ry-btn-primary, 
#articles .ry-btn-primary:after {color: #FFFFFF;}
#articles .ry-btn-primary:hover, 
#articles .ry-btn-primary:hover:after {color: #FFFFFF;}

.ry-btn:after {display:none;}
.btn, .ry-btn, .ry-btn-primary, .ry-btn-secondary {font-family: 'Geist';z-index:99;}
.ry-btn-primary:hover {background: #0f1f4d !important;color: #FFFFFF !important;}
.ry-btn.ry-btn-secondary{color: #FFFFFF !important;background: #c5a059 !important;}
.ry-btn.ry-btn-secondary:hover {background: #0f1f4d !important;color: #FFFFFF !important;box-shadow: unset !important;}
/*.cmsForm .has-error input {border: 1px solid #ff0069;}*/

.btn-img {z-index: 999;}

.btn, .ry-btn, .ry-btn-primary {
    font-size: 18px !important;
    text-transform: uppercase;
    color: #fff !important;
    background: var(--color-primary);
}


.ry-btn:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 100%;
    background: transparent;
    z-index: 1;
    -webkit-transform: rotate3d(0, 0, 1, -45deg) translate3d(0, -3em, 0);
    transform: rotate3d(0, 0, 1, -45deg) translate3d(0, -3em, 0);
    -webkit-transform-origin: 0% 100%;
    -ms-transform-origin: 0% 100%;
    transform-origin: unset;
    -webkit-transition: -webkit-transform 0.3s, opacity 0.3s, background-color 0.3s;
    transition: transform 0.6s, opacity 0.3s, background-color 0.6s;
    transform: scale(0);
}


.ry-btn:hover::before {
    z-index: -1;
    opacity: 1;
    background: var(--color-secondary);
    -webkit-transform: rotate3d(0, 0, 1, 0deg);
    -webkit-transition-timing-function: cubic-bezier(0.2, 1, 0.3, 1);
    transition-timing-function: cubic-bezier(0.2, 1, 0.3, 1);
    width: 100%;
    transform: scale(1);
}

.ry-btn {
    overflow: hidden;
}


#ry-pg-banner .ry-bnr-wrp .ry-pg-title h1 {
    text-transform:initial !important;
    color: #fff !important;
    text-align: center;
}

a#welcome-btn {
    margin-top: 2em;
    padding: 15px 35px;
}

@media (min-width:1081px) {
    li.mobile-app-link.primary {
		display: none !important;
	}	
}

.ry-anchor-hidden { display: block; position: relative; top: -200px; visibility: hidden;}
.full-link, .full-link a { position: absolute; inset: 0; color: transparent;}
.full-link:hover a { color: transparent; }
#ry-pg-body .owl-carousel .owl-item img {filter: unset;}
.HOLDsp-slides-container {height: calc(100vh - 120px) !important;}
li.third-level-container:not(.third-level a):after {
    content: '\f105';
    font-family: fontawesome;
    color: #fff;
    position: relative;
    top: 12px;
    right: 12px;
}

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

.ry-form input:not(input[type="checkbox"], input[type="radio"])
	height: 50px !important;
}


.ry-btn {
    height: 55px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-left: 30px;
    padding-right: 30px;
    max-width: max-content;
    color: #FFFFFF !important;
    background: #164268!important;
    font-size: 20px !important;
	text-transform: uppercase;
}

.ry-heading h4 {
    font-size: 22px;
    color: var(--color-secondary);
    line-height: 1.2;
    text-align: center;
    font-weight: 300 !important;
    text-transform: uppercase;
    letter-spacing: 5px;
    font-family: var(--font-default) !important;
}

.ry-heading h2 {
    color: #fff !important;
    font-size: 90px;
    letter-spacing: 1px;
    font-style: normal !important;
    line-height: 1.1;
}

body.home.fixed-header .ry-btn:not(.header-btn-wrap a.ry-btn.ry-btn-primary) {
    background: transparent !important;
    border: 1px solid var(--color-secondary);
    letter-spacing: 3px;
    font-size: 16px !important;
    padding: 22px 36px !important;
}



/* TESTIMONIALS */


.hp-testimonials  .star-wrapper {
    display: flex;
    gap: 0 2px;
    justify-content: center;
    margin: 2em 0 0.5em;
}

.hp-testimonials  .star-wrapper svg {
    width: 20px;
    fill: var(--color-secondary);
}

.hp-testimonials {
    background: url(https://www.royacdn.com/unsafe/smart/Site-8fee57b8-890c-4eed-9611-dc0efddccfb4/homepage_assets/testimonials_bg.jpg);
    background-size: cover;
    padding: 35em 0 48em;
    margin-bottom: -56em;
}

.hp-testimonials div#hp-rev-text {
    width: 100%;
    position: relative;
    z-index: 9999;
}

.hp-testimonials  .ry-text p strong {
    font-size: 40px;
    color: #9b7328;
    font-weight: 300 !important;
    font-style: italic;
    font-family: 'ivypresto-display';
    text-align: center;
    display: block;
    margin-bottom: 1em;
}

.hp-testimonials  .comment {
    background: #f3f1e7;
    padding: 5em;
}

div#hp-rev-slider-block {
    width: 100%;
    position: relative;
    right: 0px;
    z-index: 1;
}

.hp-testimonials  .comment:before {
    background: transparent;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
	content:'';
	z-index:1;
	width:95%;
	height:95%;
	border: 2px solid #9b7328;
	
}
.hp-testimonials  button.slick-prev.slick-arrow,
.hp-testimonials  button.slick-next.slick-arrow {
    opacity: 0;
}

.hp-testimonials  .comment p, .hp-testimonials  .comment h5 {
    text-align: center;
    font-family: var(--title-default) !important;
}

.hp-testimonials  .comment h5 {
    text-transform: uppercase;
}

.hp-testimonials  .comment p {
    font-weight: 400 !important;
    color: #333;
    line-height: 1.5;
}


.hp-testimonials  div#hp-rev-text {
    /* width: 40%; */
    position: relative;
    z-index: 9999;
}

.hp-testimonials  .slick-track {
    display: flex;
    gap: 0 2em;
}

.hp-testimonials  a#hp-rev-btn {
    margin: 2em auto 0;
}

div#hp-rev-flex-info {
    align-items: center;
    flex-direction: column;
}

.hp-testimonials  ul.slick-dots {
    display: flex !important;
    justify-content: center;
    gap: 0 5px;
    padding: 0;
    margin-top: 1em;
}

.hp-testimonials ul.slick-dots li {
    list-style: none;
    width: 12px;
    height: 12px;
    background: #ffffff;
    border-radius: 100%;
    color: transparent !important;
    opacity:0.3;
}

.hp-testimonials ul.slick-dots li.slick-active {
     opacity:1;
}

.hp-testimonials .ry-text {
    height: 220px;
    /*margin-bottom: 6em;*/
}

.hp-testimonials .ry-text p strong {
    margin-bottom: 0.8em;
}

.hp-testimonials .ry-text p:not(strong) {
    line-height: 1.4;
    font-size: 18px;
}

.hp-testimonials  span.span-2 {
    display: none !important;
}

.hp-testimonials div#hp-rev-text .ry-text {
  height: auto !important;
  margin-bottom: 1em;
}





@media(min-width:1200px) and (max-width:1660px) {
    div.hp-testimonials {
		padding-top: 31em;
	}
}


@media (max-width:1660px) {
	
	.hp-testimonials .ry-text p strong {
		font-size: 30px !important;
	   }
	
	.hp-testimonials .comment {
		padding: 2em;
	}
}



@media (max-width:1199px) {
	div#hp-rev-flex-info {
			flex-direction: column;
	}
	
	div.hp-testimonials  .ry-container {
		 width:100%;
		 max-width:100% !important;
	 }

	.hp-testimonials {
			padding: 4em 0;
			margin-bottom: 0 !important;
	}

	.hp-testimonials div#hp-rev-text, div#hp-rev-slider-block {
			width: 100%;
	}

}


@media (max-width:991px) {
	
	.hp-testimonials .ry-text {
		height: auto !important;
	}
		
}



/* END HOMEPAGE TESTIMONIALS */






/* RESPONSIVE */

@media (max-width: 1080px) {
	.ry-list-wrp .ry-list-item .ry-list-photo img {
		margin: auto;
	}

	.mobile-container .flex-wrap .flex-item.right-nav .mobile-button a {
    background: var(--color-primary) !important;
}


	.ry-list-wrp .ry-list-item .ry-box-right * {
		text-align: center;
	}

	.ry-list-wrp .ry-list-item .ry-box-right .col-xs-12 {
		display: flex;
		align-items: center;
		justify-content: center;
		margin-top: 30px;
		margin-bottom: 20px;
	}
}






/*RESPONSIVE*/


@media (max-width:1600px) {	

	.module-66 .bnr-textbox .ry-heading h1, .ry-heading h2 {
		font-size: 60px;
	}
	
	div.module-team.style-1:after {
		width: 330px;
		height: 650px;
		top: 15%;
	}
	
}


@media (max-width:1300px) and (min-width:1200px) {
	
    .footer.style-3 .footer-top .hour-list ul li .span-1 {
		min-width: 120px;
	}

	.footer.style-3 .footer-top .ry-content .ry-flex {
		gap: 0 1em;
	}

	div#footer-hours {
		justify-content: flex-end;
		gap: 0 !important;
		top: 27px !important;
	}

}


@media (max-width:1199px) {
	
	.ry-heading h2, .ry-heading h4 {
				text-align: center !important;

	}
	.mobile-container {
		background: #071022 !important;
	}

	.mobile-container .flex-wrap .flex-item.right-nav .mobile-button a {
		background: transparent !important;
		border: 1px solid var(--color-secondary) !important;
		color: var(--color-secondary) !important;
	}

	.mobile-container .mobile-nav button .hamburger-inner,
	.mobile-container .mobile-nav button .hamburger-inner:before, .mobile-container .mobile-nav button .hamburger-inner:after {
		background: var(--color-secondary);
	}

	nav#mobile_menu, div#menu_container {
			background: #071022 !important;
	}	

}



@media (max-width:1080px) {
	
	div.ry-section-hero:after {
		background: transparent;
		display: none;
	}
	

	.module-66 .carousel .carousel-inner {
		padding-bottom: 0;
		background-image: none !important;
		height: auto !important;
	}


	.module-43 .ry-right .ry-menu .nav-menu li .dropdown-menu li:hover {
		background: var(--color-primary) !important;
	}

	.module-67 {
		padding: 4em 0;
		border-top: 1px solid hsl(0deg 6.67% 2.94% / 8%);
	}

	.module-66 .ry-el-bg img {
		display: block !important;
		object-fit: cover;
		height: auto !important;
		object-position: top center;
		visibility: visible !important;
	}
	
	div.module-66 {
		height: auto;
	}

	.module-66 .carousel-inner:before {
		display: none;
	}

	.module-66 .ry-el-bg {
		height: auto !important;
		background-image: none !important;
	}

	.module-66 .bnr-textbox .ry-heading h1 {
		font-size: 35px;
	}

	.module-66 .bnr-textbox .ry-heading h4 {
		font-size: 18px;
		line-height: 25px;
		margin-bottom: 1em;
		color: #333;
		font-weight: 400 !important;
	}

	.ry-heading h2 {
		font-size: 35px;
		
	}

	.ry-heading h4 {
		font-size: 18px;
		font-weight: 400 !important;
		margin-bottom: 10px;
		
	}

	div#serv-right {
		max-width: 100% !important;
		top: 0 !important;
		width: 100% !important;
		margin-bottom: 2em;
	}

	.ry-services.style2:before {
		height: 100%;
		top: 0;
		background-position: top center;
	}

	div#serv-content-flex {
		flex-direction: column;
	}

	div#serv-content-flex .serv-left {
		display: none;
	}
}


@media (max-width:767px) {
	body.home.fixed-header .ry-btn:not(.header-btn-wrap a.ry-btn.ry-btn-primary) {
    	padding: 15px 25px !important;
	}
}

@media (max-width:500px) {
	
	.module-66 .ry-el-bg img {
		height: 300px !important;
		object-position: bottom !important;
	}
}


@media (min-width:2560px) {
    .ry-section-hero {
		height: 1500px;
		margin-bottom: -38em;
		z-index: 300;
		background-image: url(https://www.royacdn.com/unsafe/smart/Site-8fee57b8-890c-4eed-9611-dc0efddccfb4/homepage_assets/hf_bg.png);
		background-size: cover;
		background-position: bottom;
	}


	#welcome-wrap.style-1 {
		padding: 35em 0 35em;
		margin-bottom: -15em;
	}

	.ry-services.style2, div#hp-services {padding: 69em 0 85em;margin-bottom: -16em;margin-top: -41em;}

	.ry-services.style2:before {
		background-position: bottom;
	}

	#hp-services .grid {
		margin: 7em auto 0;
	}

	.module-team.style-1 {
		padding: 33em 0 30em;
	}

	div#hp-eyewear {
		margin-top: -32em;
		padding: 48em 0;
		margin-bottom: -40em;
	}

	.hp-testimonials {
		padding: 50em 0;
		margin-bottom: -62em;
	}

	.ry-section-hero img#blinkimg3 {
		right: 17.5%;
	}

	.ry-section-hero img#blinkimg1 {
		left: 2%;
		top: -87px;
	}
}


/* END RESPONSIVE*/

	
	
/*HOMEPAGE TEAM*/

div.module-team.style-1 h2 {
    color: #fff !important;
    text-align: center;
}


.hp-bio p {text-align: center;color: #fff;}
.module-team.style-1 ol.carousel-indicators {
    margin-left: 0 !important;
    right: 0 !important;
    text-align: center !important;
    gap: 0 6px !important;
    bottom: 3% !important;
    display: flex !important;
    left: 0 !important;
    justify-content: flex-end;
}

.module-team.style-1 .carousel-indicators li {
    border: 1px solid var(--color-primary) !important;
    width: 15px !important;
    height: 15px !important;
    margin: 0 !important;
    background: transparent;
}

.module-team.style-1 .carousel-indicators .active {
    background-color: var(--color-primary);
}

div.module-team.style-1 .carousel-fade .carousel-control {
    display: none;
}

div.module-team.style-1 .ry-container {
    max-width: 1500px;
    width: 80%;
}

.module-team.style-1 .ry-flex .ry-each .photo {
    filter: none !important;
}



.module-team.style-1 .ry-flex {
    gap: 0 5%;
    margin-top: 10em;
}


.module-team.style-1 .ry-flex div#bio-image {
    width: 30% !important;
}

.module-team.style-1 .ry-flex div#bio-text h4 {
    text-align: center;
    margin-bottom: 10px;
}

.module-team.style-1 .ry-flex div#bio-text h3 {
    color: #eb9929;
    font-size: 35px;
    margin: 15px 0;
}

a#hp-team-btn {
    background: var(--color-secondary);
    margin: 2.5em auto 0 !important;
    float: none;
    display: block;
    max-width: 210px;
}

	
a#hp-team-btn:hover {
    background: #000 !important;
}

@media (max-width:1199px) {
	
	.module-team.style-1 ol.carousel-indicators {
		justify-content: center !important;
		bottom:-5% !important;
	}

	div.module-team.style-1 .ry-flex div#bio-image {
		margin-top: 1a0;
	}
}
	
	
/* END HOMEPAGE TEAM */







/* BLINKING LIGHT */


.blink-wrap {
    position: absolute;
    top: 50.5%;
    display: flex;
    justify-content: space-between;
	    width: 100%;
	pointer-events: none;
}

img#blinkimg2 {
    top: 4.5em;
    right: -7em;
}

.blink-wrap img {
    max-width: 250px;
    z-index: 99999;
    position: relative;
}

img#blinkimg3 {
    top: -20em;
    right: 0;
}


@-webkit-keyframes heartbeat {
    from {
        -webkit-transform: scale(1);
        transform: scale(1);
        -webkit-transform-origin: center center;
        transform-origin: center center;
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out
    }

    10% {
        -webkit-transform: scale(.91);
        transform: scale(.91);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }

    17% {
        -webkit-transform: scale(.98);
        transform: scale(.98);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out
    }

    33% {
        -webkit-transform: scale(.87);
        transform: scale(.87);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }

    45% {
        -webkit-transform: scale(1);
        transform: scale(1);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out
    }
}

@keyframes heartbeat {
    from {
        -webkit-transform: scale(1);
        transform: scale(1);
        -webkit-transform-origin: center center;
        transform-origin: center center;
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out
    }

    10% {
        -webkit-transform: scale(0);
        transform: scale(0);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }

    17% {
        -webkit-transform: scale(.45);
        transform: scale(.45);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out
    }

    33% {
        -webkit-transform: scale(.8);
        transform: scale(.8);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }

    45% {
        -webkit-transform: scale(1);
        transform: scale(1);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out
    }
}

.heartbeat {
    -webkit-animation: .1s ease-out infinite both heartbeat;
    animation: 1s ease-out infinite both heartbeat
}	


/* END BLINKING LIGHT */



:root {
    --color-primary: #0f1f4d;
    --color-secondary: #c5a059;
    --font-default: Geist;
    --font-title: ivypresto-display;
    
}
	
.contact-template.style-2 .ry-flex .contact-details .inner-flex {
    padding: 40px;

}

	
	@media (max-width: 1680px) {
		ul li {
			font-size: calc(16px + 2 * ((100vw - 500px) / 940)) !important;
			line-height: 1.6;
			font-family: Geist !important;
			font-weight: 300 !important;
		}


		.team-inner-page.style3 .ry-each .each-container .details .team-full-description{
			font-size: calc(16px + 2 * ((100vw - 500px) / 940)) !important;
			line-height: 1.6;
			font-family: Geist !important;
			font-weight: 300 !important;
		}
	}
	
	
	.team-inner-page.style3 .btn-excerpt{
    display:none !important;
}