/** GLOBAL CSS **/
:root {
    --color-primary: #e5c826;
    --color-secondary: #064f7e;
    --color-tertiary: #0ebee5;
	--background-transparent: transparent;
    --filter-color-primary: brightness(0) invert(20%) sepia(4%) saturate(3511%) hue-rotate(181deg) brightness(89%) contrast(79%);
    --filter-color-secondary: brightness(0) invert(77%) sepia(52%) saturate(282%) hue-rotate(162deg) brightness(96%) contrast(90%);
	
	--color-text-white: #fff;
	--color-text-dark: #000;
}

*:not(.carousel *):not(.ry-accordion *):not(#accordion *):not([data-aos-duration]):not(.slick-track):not(#ry-section-header *):not(.fancybox-slide *),
::before,
::after {
    transition: 0.3s ease-in-out all;
}
html, body {
	overflow-x: hidden !important;
}
html {
    scroll-behavior: smooth;
}

/* //Removed excess margin on bottom on forms alert */
.alert li:last-child {
    margin-bottom: 0 !important;
}

/* //Add Underline on all hyperlink */
body.default #ry-pg-body a:not(.ry-btn):not(.fa):hover {
    text-decoration: underline !important;
}
.ry-full-link, .ry-full-link a {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    z-index: 9;
    opacity: 0;
}
.ry-btn.ry-btn-tertiary {
    background: var(--color-tertiary) !important;
	color: var(--color-text-white) !important;
}
.ry-btn.ry-btn-tertiary:hover {
    background: var(--color-secondary) !important;
}
.ry-btn-wrap {
    margin-top: 1.5rem;
    display: flex;
	gap: 10px;
}
.ry-section-background, .ry-section-background img {
	position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
	object-fit: cover;
}
body .ry-headline h2 {
	font-size: clamp(1.875rem, 1.5245rem + 1.4379vw, 3.25rem);
	line-height: 1.1;
	text-transform: uppercase;
	font-weight: 600;
	color: var(--color-secondary);
	font-family: "Oswald";
}
body .ry-headline h3 {
	font-size: clamp(1.625rem, 1.402rem + 0.915vw, 2.5rem);
	line-height: 1.1;
	text-transform: uppercase;
	font-weight: 600;
	color: var(--color-tertiary);
	font-family: "Oswald";
}
	
body .ry-headline h4 {
	font-size: 22;
	letter-spacing: 3px;
	line-height: 1.1;
	text-transform: uppercase;
	color: #000000;
	font-family: "Montserrat";
	font-weight: 600;
}
.ry-headline {
    margin-bottom: 1.5vw;
}
.ry-section-padding {
	padding: 4rem 0;	
}
@media (min-width: 1081px) {
	.ry-section-padding {
		padding: 6rem 0;	
	}
}

/** END GLOBAL CSS **/

/** HERO SECTION **/
.module-25 .ry-hero-copy .ry-btn-wrap {
    justify-content: center;
}
/** END HERO SECTION **/
	
/** HP WELCOME **/
.ry-welcome-custom {
    padding: 4rem 0;
}
.ry-welcome-custom .ry-flex {
    gap: 6rem;
    align-items: center;
}
.ry-welcome-custom .ry-flex .ry-each.ry-img-wrap {
    width: max-content;
}
@media (min-width: 1081px) {
	.ry-welcome-custom {
		padding: 6rem 0 18rem;
	}
}
@media (max-width: 1080px) {
	.ry-welcome-custom .ry-flex {
		gap: 4rem;
		flex-direction: column;
	}
	.ry-welcome-custom .ry-flex .ry-each.ry-img-wrap {
		margin: 0 auto;
		float: none;
	}
	.ry-welcome-custom .ry-flex .ry-text-wrap * {
		text-align: center
	}
}
/** END HP WELCOME **/

/** HP QUALITY **/
.ry-quality-eye-care {
    position: relative;
	top: -9rem;
}
.ry-quality-eye-care .ry-content {
    position: relative;
    max-width: 1280px;
    margin: 0 auto;
    float: none;
    border-radius: 50px;
    filter: drop-shadow(-5px 8.66px 20px rgba(1,55,89,0.23));
    background-image: linear-gradient(180deg, #fefefe 0%, #d6f2fa 100%);
    padding: 4rem 6rem;
    
}
.ry-quality-eye-care .ry-left-img, .ry-quality-eye-care .ry-right-img {
    position: absolute;
    top: 10px;
    width: max-content;
    z-index: 2
}
.ry-quality-eye-care .ry-left-img {
    left: -180px;
}
.ry-quality-eye-care .ry-right-img {
    right: -180px;
}
@media (max-width: 1480px) {
	.ry-quality-eye-care .ry-left-img, .ry-quality-eye-care .ry-right-img {
		max-width: 400px;
	}
	.ry-quality-eye-care .ry-left-img {
		left: -100px;
	}
	.ry-quality-eye-care .ry-right-img {
		right: -100px;
	}
}
/** END HP QUALITY **/

/** HP OUR LOCATIONS **/
.ry-hp-location {
    position: relative;
    padding: 24rem 0 8rem;
    margin-top: -19rem;
}
.ry-hp-location .ry-container {
    max-width: 1280px;
    width: 90%;
}
.ry-hp-location .ry-headline h2 {color: #fff;}
.ry-hp-location .ry-flex {
    gap: 7.5rem;
    margin-top: 4rem;
}
.ry-hp-location .ry-flex .ry-each {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.ry-hp-location .ry-flex .ry-each .ry-marker-icon {
    width: max-content;
    position: absolute;
    top: -48px;
    z-index: 2;
}
.ry-hp-location .ry-flex .ry-each .ry-img-wrap {
    position: relative;
    border-radius: 50px;
    overflow: hidden;
}
.ry-hp-location .ry-flex .ry-each .ry-img-wrap .ry-on-hover {
    position: absolute;
    bottom: -100px;
    left: 0;
    width: 100%;
    padding: 20px;
    background: #fff;
    height: 100px;
    display: grid;
    place-content: center;
    transition: all ease 0.8s;
}
.ry-hp-location .ry-flex .ry-each .ry-img-wrap .ry-on-hover img {
    aspect-ratio: 16/9;
    object-fit: contain;
    max-width: 300px;
}
.ry-hp-location .ry-flex .ry-each:first-child .ry-img-wrap .ry-on-hover img {
    max-width: 200px;
}
.ry-hp-location .ry-flex .ry-each:hover .ry-img-wrap .ry-on-hover {
    bottom: 0;
}
.ry-hp-location .ry-flex .ry-each .ry-img-wrap:before {
    content: '';
    position: absolute;
    top: -100%;
    width: 100%;
    height: 100%;
    background: #0ebee5a1;
    transition: all ease 0.6s;
}
.ry-hp-location .ry-flex .ry-each:hover .ry-img-wrap:before {
    top: 0;
}
.ry-hp-location-name {
    width: 100%;
    padding: 15px;
}
.ry-hp-location-name h3 {
    font-size: clamp(1.625rem, 1.402rem + 0.915vw, 2.5rem);
    text-transform: uppercase;
    color: #ffffff;
    font-weight: 600;
    font-family: "Oswald";
    text-align: center;
}
/** END HP OUR LOCATIONS **/

/** HP SERVICES **/
.ry-services-custom .ry-tab-container .nav-tabs {
    display: flex;
    justify-content: center;
    gap: 10px;
	border: none;
}
.ry-services-custom .ry-tab-container .nav-tabs li a {
    border-radius: 29px;
    background-color: transparent;
    border: 1px solid #ddbd23;
    font-size: 18px;
    color: #252525;
    font-family: "Montserrat";
    text-align: center;
    padding: 15px 30px;
    outline: none;
}
.ry-services-custom .ry-tab-container .nav-tabs li.active a {
    background-color: #ddbd23;
}
.ry-services-custom .ry-tab-container .slick-list {
    padding: 3rem 0 0 0 !important;
}
.ry-tab-container .tab-content {
    border: none;
}
.ry-services-custom .ry-tab-container .slick-track {
    display: flex;
    gap: 20px;
}

/*.ry-services-custom .slick-slide {
    margin: 0 10px;
}

.ry-services-custom .slick-list {
    margin: 0 -10px;
}*/
	
.ry-services-custom .slick-track .ry-each {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
}

.ry-services-custom .slick-track .ry-each .ry-services-img img {
    width: 272px;
    height: 272px;
    border-radius: 50%;
    overflow: hidden;
    position: relative;
}
.ry-services-custom .slick-track .ry-each .ry-services-title {
    padding: 0 20px;
}
.ry-services-custom .slick-track .ry-each .ry-services-title h4 {
    text-align: center;
    font-size: 20px;
    text-transform: uppercase;
    color: #252525;
    font-weight: 500;
    font-family: "Montserrat";
    line-height: 1.1
}
.ry-services-custom .slick-track .ry-each:hover .ry-services-title h4 {
    font-weight: 800;
    color: var(--color-secondary);
}
/*.ry-services-custom .slick-track .ry-each.slick-current.slick-center .ry-services-title h4 {
    font-weight: 800;
    color: var(--color-secondary);
}
.ry-services-custom .slick-track .ry-each.slick-current.slick-center .ry-services-img:before {
    content: '';
    position: absolute;
    top: -35px;
    left: -18px;
    width: 308px;
    height: 308px;
    background: url(https://s3.amazonaws.com/static.organiclead.com/Site-38e030de-8a38-40c8-846d-764e5ad97128/HP_Assets/service_hover.png) center center no-repeat;
    background-size: contain;
}*/
.ry-services-custom .slick-track {
  animation-direction: reverse;
}
.ry-services-custom .slick-track .ry-each:hover:before {
    content: '';
    position: absolute;
    top: -35px;
    left: -18px;
    width: 308px;
    height: 308px;
    background: url(https://s3.amazonaws.com/static.organiclead.com/Site-38e030de-8a38-40c8-846d-764e5ad97128/HP_Assets/service_hover.png) center center no-repeat;
    background-size: contain;
}
@media (max-width: 1480px) {
	.ry-services-custom .slick-track .ry-each .ry-services-img img {
		margin: 0 auto;
	}
	.ry-services-custom .slick-track .ry-each:hover::before {
		left: 16px;
	}	
}
/** END HP SERVICES **/

/** HP OUR STORY **/
.ry-hp-our-story {
    position: relative;
    padding: 10rem 0;
}
.ry-hp-our-story .ry-container {
    max-width: 1280px;
    width: 90%;
}
.ry-hp-our-story .ry-flex-small-circles {
    display: flex;
    gap: 12px;
    margin-top: 2rem;
    height: 560px;
    max-width: 1080px;
    margin: 2rem auto 0;
    float: none;
}
.ry-hp-our-story .ry-flex-small-circles .ry-each {
    display: flex;
    flex-direction: column;
    position: relative;
    width: 168px;
    height: 168px;
	z-index: 9;
	cursor: pointer;
}
.ry-hp-our-story .ry-flex-small-circles .ry-each .ry-circle-img-wrap:before {
    content: '';
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    inset: 0;
    background: #e5c8268a;
    border-radius: 50%;
    opacity: 0
}
.ry-hp-our-story .ry-flex-small-circles .ry-each:hover .ry-circle-img-wrap:before {
    opacity: 1;
}
.ry-hp-our-story .ry-flex-small-circles .ry-each .ry-circle-img-wrap {
    border: 10px solid #bfd6dd;
    border-radius: 50%;
	position: relative;
}
.ry-hp-our-story .ry-flex-small-circles .ry-each .ry-year-wrap {
    position: absolute;
    bottom: 40px;
    width: 100%;
}
.ry-hp-our-story .ry-flex-small-circles .ry-each .ry-year-wrap h4 {
    font-size: clamp(1.375rem, 1.3113rem + 0.2614vw, 1.625rem);
    text-transform: uppercase;
    color: #ffffff;
    font-weight: 600;
    font-family: "Oswald";
    text-align: center;
    width: 100%;
}
.ry-hp-our-story .ry-flex-small-circles .ry-each:first-child, 
.ry-hp-our-story .ry-flex-small-circles .ry-each:last-child {
    align-self: flex-end;
}
.ry-hp-our-story .ry-flex-small-circles .ry-each:nth-child(2), 
.ry-hp-our-story .ry-flex-small-circles .ry-each:nth-child(6) {
    align-self: flex-end;
    bottom: 12rem;
}
.ry-hp-our-story .ry-flex-small-circles .ry-each:nth-child(3), 
.ry-hp-our-story .ry-flex-small-circles .ry-each:nth-child(5) {
    top: 4rem;
}
.ry-hp-our-story .ry-flex-small-circles .ry-each:nth-child(2) {
    left: -5rem
} 
.ry-hp-our-story .ry-flex-small-circles .ry-each:nth-child(6) {
    right: -5rem
}
.ry-hp-our-story .ry-flex-small-circles .ry-each:nth-child(3) {
    left: -4rem
} 
.ry-hp-our-story .ry-flex-small-circles .ry-each:nth-child(5) {
    right: -4rem
}
.ry-flex-small-circles:before {
    content: '';
    position: absolute;
    top: 60px;
    left: 50%;
    transform: translateX(-50%);
    width: 916px;
    height: 470px;
    background: url(https://s3.amazonaws.com/static.organiclead.com/Site-38e030de-8a38-40c8-846d-764e5ad97128/HP_Assets/arc_line.png) center center no-repeat;
    background-size: contain;
}

.ry-center-big-circle {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: -21rem;
}
.ry-center-big-circle .ry-each-center {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 12px
}
.ry-center-big-circle .ry-each-center .ry-img-wrap {
    max-width: 352px;
    width: 100%;
    margin: 0 auto;
}
.ry-center-big-circle .ry-each-center:not(.active) {
    display: none;
}
.ry-center-big-circle .ry-year-center-wrap h3 {
    font-size: clamp(1.875rem, 1.5882rem + 1.1765vw, 3rem);
    text-transform: uppercase;
    color: var(--color-secondary);
    font-weight: 600;
    font-family: "Oswald";
    text-align: center;
}

.ry-center-big-circle .ry-year-desc {
    max-width: 566px;
    margin: 0 auto;
}
.ry-center-big-circle .ry-year-desc p {
    font-size: 18px;
    line-height: 1.4;
}
.ry-center-big-circle .ry-year-desc p a {
    margin: 1rem auto 0;
}
/** END HP OUR STORY **/

/** HP BRANDS & INSURANCE **/
div#top-brands .ry-headline h3 {
    font-size: clamp(1.625rem, 1.5294rem + 0.3922vw, 2rem) !important;
    text-transform: uppercase;
    color: var(--color-tertiary);
    font-weight: 600;
    font-family: "Oswald";
}
.ry-top-headline {
    padding-top: 6rem;
}
.ry-top-headline .ry-flex {
    align-items: center;
}
.ry-top-headline .ry-brands-insurance-btn-tab {
    display: flex;
    gap: 10px;
}
.ry-top-headline .ry-brands-insurance-btn-tab br {
    display: none;
}
div#ry-hp-brands {
    padding-top: 1rem;
    border-bottom: 2px solid #dcdcdc;
}
div#hp-brands-and-insurance .featured-carousel .work .img {
    display: flex;
    align-items: center;
    justify-content: center;
}
div#hp-brands-and-insurance .featured-carousel .owl-stage-outer {
    margin-left: 60px;
}
/** END HP BRANDS & INSURANC **/

/** HP TESTIMONIALS **/
.ry-hp-testimonial-custom {
    position: relative;
    padding: 12rem 0;
}
.ry-hp-testimonial-custom .ry-content .ry-testi-wrapper {
    max-width: 960px;
    float: right;
}
.ry-hp-testimonial-custom .ry-content .ry-testi-wrapper .ry-flex {
    gap: 4rem;
}
.ry-hp-testimonial-custom .ry-content .ry-each {
    display: flex;
    flex-direction: column;
	justify-content: center;
    align-items: center;
    gap: 10px;
    border-radius: 50px;
    background-color: #ffffff;
    padding: 4rem;
}
.ry-hp-testimonial-custom .ry-content .ry-each .ry-google-circle {
    width: 82px;
    height: 82px;
    background: #fff;
    border-radius: 50%;
    display: grid;
    place-content: center;
	position: absolute;
    top: -41px;
}
.ry-hp-testimonial-custom .ry-content .ry-each .ry-google-circle img {
    max-width: 39px;
}
.ry-hp-testimonial-custom .ry-google-location-name h2 {
    font-size: clamp(1.625rem, 1.402rem + 0.915vw, 2.5rem);
    text-transform: uppercase;
    color: #064f7e;
    font-weight: 600;
    font-family: "Oswald";
}
.ry-hp-testimonial-custom .ry-headline h2 {
    color: #fff;
    margin-bottom: 10px
}
.ry-hp-testimonial-custom .ry-content .ry-testi-wrapper .ry-headline div span {
    margin: 0 1px;
}
.ry-hp-testimonial-custom .ry-content .ry-testi-wrapper .ry-headline div span:before {
    color: #ddbd23;
}
.ry-hp-testimonial-custom .ry-content .ry-each .ry-btn-wrap {
    justify-content: center;
    flex-direction: column;
    align-items: center;
}
.ry-hp-testimonial-custom .ry-content .ry-each .ry-btn-wrap br {
    display: none
}
/** END HP TESTIMONIALS **/

/** HP APPOINTMENT **/
.ry-hp-appointment-custom .ry-container {
    max-width: 960px;
    width: 90%;
}
.ry-hp-appointment-custom .ry-content .ry-headline h2,
.ry-hp-appointment-custom .ry-content .ry-text p {
    color: #fff
}
.ry-hp-appointment-custom .ry-content .ry-btn-wrap {
    justify-content: center
}
/** END HP APPOINTMENT **/

/** PLACE YOUR MOBILE AND UP CSS HERE **/

@media (max-width: 1080px) {
	.ry-btn-wrap {
		justify-content: center;
	}
	.ry-hp-testimonial-custom {
		padding: 4rem 0;
	}
	.ry-hp-testimonial-custom .ry-content .ry-testi-wrapper {
		width: 100%;
		float: none;
	}
	.ry-hp-testimonial-custom .ry-content .ry-testi-wrapper .ry-flex {
		align-items: center;
		flex-direction: column;
		justify-content: center;
		margin-top: 2rem;
	}
}

@media (min-width: 1200px) {

    /** PLACE YOUR DESKTOP AND UP CSS HERE **/
    
}