body, body p, body div{font-family: Onest !important;font-weight: 400 !important; }
h1,h2,h3,h4,h5,h6{font-family: Onest, sans-serif !important;font-weight: 100 !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: 'Onest';z-index:99;}
.ry-btn {height: 60px;display: flex;align-items: center;justify-content: center;padding-left: 25px;padding-right: 25px;max-width: max-content;color: #FFFFFF !important;background: #7fae3f !important;font-size: 20px !important;white-space: nowrap;}
.ry-btn-primary:hover {background: #2d6aba !important;color: #FFFFFF !important;}
.ry-btn.ry-btn-secondary{color: #2d6aba !important;background: #fff !important;}
.ry-btn.ry-btn-secondary:hover {background: #7fae3f !important;color: #fff !important;box-shadow: unset !important;}
/*.cmsForm .has-error input {border: 1px solid #ff0069;}*/
.btn,.ry-btn,.ry-btn-primary {border-radius: 10px !important; font-size: 18px !important}
.btn-img {z-index: 999;}

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

@media (max-width: 1080px) {
	.ry-list-wrp .ry-list-item .ry-list-photo img {
		margin: auto;
	}
	.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;
	}
}

/* INTERIOR PAGE SIDEBAR AND FULL WIDTH */
body.default #ry-pg-body[data-interior-layout="Full Width"] > .ry-container > .ry-content > .ry-left {
    width: 100%;
    max-width: 100%;
    float: unset;
}

body.default #ry-pg-body[data-interior-layout="Full Width"] > .ry-container > .ry-content > .ry-right {
    display: none;
}

.title-open {
  border-radius: 10px 10px 0 0 !important;
}

.title-closed {
  border-radius: 10px !important;
}

/* Custom Homepage */

.module-66 .carousel .carousel-inner img {
    max-height: 1080px;
    height: 100vh;
    min-height: 600px;
    object-fit: cover;
}

.module-66 .bnr-textbox .sub-heading {
    text-transform: uppercase;
    color: #fff;
    letter-spacing: 15px;
    text-align: center;
}

.module-66 .carousel .carousel-control {display: none;}

.hp-section {padding: 80px 0;}

.hp-section .section-heading {margin-bottom: 40px;}

.section-heading h2 {
    font-size: 45px;
    text-transform: uppercase;
    letter-spacing: 3px;
	line-height: 50px;
}

.section-heading p {
    text-transform: uppercase;
    font-weight: 400 !important;
    color: #7fae3f;
    letter-spacing: 2px;
}


.hp-section.cta {background: #2d6aba;}

.hp-section.cta .section-heading h2 {color: #fff;}
.hp-section.cta .section-heading p {color: #b4e96d;}

.hp-section.cta .ry-each {transition: all 300ms ease-in-out;}

.hp-section.cta .ry-each:hover {transform: scale(1.03);}

.hp-section.cta .ry-each .title {
    position: absolute;
    top: 20px;
    padding: 0 30px;
	align-items: center;
}

.hp-section.cta .ry-each .title h3 {font-weight: 300 !important;}

.hp-section.cta .ry-each .icon {
    width: 40px;
    height: 40px;
    background: #82ae49;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transform: rotate(320deg);
}

.hp-section.cta .ry-each .icon svg {
    fill: #fff;
    width: 18px;
}


.hp-section.welcome {
    background: url(https://s3.amazonaws.com/static.organiclead.com/Site-4c029404-3d2a-4fbe-9527-47a757773861/HomepageAssets/welcome_bg.png);
    background-size: cover;
    padding: 160px 0;
}

.hp-section.welcome .main, .hp-section.doctor .main {
    width: 50%;
    float: right;
}

.hp-section.welcome::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 50%;
    height: 700px;
    background: url(https://s3.amazonaws.com/static.organiclead.com/Site-4c029404-3d2a-4fbe-9527-47a757773861/HomepageAssets/welcome_img.png) no-repeat;
    background-size: contain;
    background-position: bottom;
}

.services-description .description {
    overflow: hidden;
    display: none;
    border-radius: 20px;
    border: 1px solid #c4deff;
}

.services-options .option {
    align-items: center;
    gap: 40px;
    padding: 28px 40px;
    border: 1px solid #c4deff;
    border-radius: 20px;
	transition: all 300ms ease-in-out;
	cursor: pointer;
}

.option .title h3 {font-weight: 300 !important;}

.services-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
}

.services-options .option .arrow {width: 50px;}

.services-options .icon {width: 60px;}

.services-options .option .arrow {
    width: 30px;
    opacity: 0;
    transition: opacity 300ms ease-in-out;
}

.services-grid .col-lg-6 {width: unset;}
.services-options .option:not(:last-child) {margin-bottom: 15px;}
.services-options .option.active, .services-options .option:hover {background: #2d6aba;}
.services-options .option.active .icon img, .services-options .option:hover .icon img {filter: brightness(0) invert(1);}
.services-options .option.active h3, .services-options .option:hover h3 {color: #fff;}
.services-options .option .icon img, .services-options .option h3 {transition: all 300ms ease-in-out;}
.services-options .option.active .arrow, .services-options .option:hover .arrow {opacity: 1;}
.services-options .option .arrow svg {fill: #fff;}

.services-description .txt {
    padding: 40px 35px;
    align-items: center;
    gap: 40px;
}

.services-description .txt div:has(.ry-btn) {width: 148px;}

.hp-section.doctor {
    background: url(https://s3.amazonaws.com/static.organiclead.com/Site-4c029404-3d2a-4fbe-9527-47a757773861/HomepageAssets/doctor_bg.png) no-repeat;
    background-size: cover;
}

.hp-section.doctor::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 50%;
    height: 700px;
    background: url(https://s3.amazonaws.com/static.organiclead.com/Site-4c029404-3d2a-4fbe-9527-47a757773861/HomepageAssets/doctor_img.png) no-repeat;
    background-size: contain;
    background-position: bottom;
}

.associations {padding: 20px 0;}

.associations .ry-content {
    gap: 60px;
    align-items: center;
}

.associations .ry-content img {
    height: 170px;
    object-fit: contain;
    object-position: center;
    filter: grayscale(1);
}

.hp-section.reviews .section-heading {
    position: absolute;
    top: 50px;
}

.hp-section.reviews .ry-content .ry-each {
    width: 50%;
    background-color: #eef3e8;
    border-radius: 70px;
	background-size: cover;
	background-position: center;
}

.hp-section.reviews .ry-content .ry-each.reviews-slider {padding: 70px;}

.arrow.arrow.slick-arrow {
    display: flex !important;
    justify-content: center;
    align-items: center;
    width: 40px;
    aspect-ratio: 1;
    border: 1px solid #7fae3f;
    border-radius: 50%;
	color: #7fae3f;
}

.arrow.slick-arrow:hover {
    background: #7fae3f;
    cursor: pointer;
    color: #fff;
}

.reviews-slider .names {max-width: 300px;}

.name-arrows {
    padding-top: 60px;
    margin-top: 60px;
    border-top: 1px solid #e3e7de;
}

.name-arrows .arrows {
    width: 80px;
    display: flex;
    gap: 5px;
    align-items: center;
}

.slick-arrow svg {
    fill: #7fae3f;
    width: 18px;
}

.arrow.slick-arrow:hover svg {fill: #fff;}

.reviews .google-logo {
    width: 40px;
    height: 40px;
    padding: 5px;
    aspect-ratio: 1;
    background: #fff;
    border-radius: 50%;
}

.ry-stars svg {
    width: 18px;
    fill: #e3b25b;
}

.ry-stars {
    display: flex;
    gap: 3px;
    align-items: center;
}

.name-arrows .star {clear: both;}

.name-arrows .w-goolge-logo {
    align-items: center;
    gap: 20px;
}

.reviews .names p {
    color: #333;
    text-align: left;
}

.hp-section.reviews {
    background: linear-gradient(0deg,rgba(255, 255, 255, 1) 100%, rgba(244, 244, 244, 1) 100%);
    box-shadow: inset 10px 12px 20px #f0f0f0;
}

.contact.ry-el-bg img {display: none;}
.reviews-slider .slider {min-height: 300px;}
.hp-section.contact {
	background-size: cover;
	padding: 160px 0 600px;
}
.contact .social-inner-wrap {
	display: flex;
	gap: 5px;
}
.contact .social-inner-wrap li,
.module-44.custom .social-inner-wrap li {list-style: none;}

.contact .social-inner-wrap li a {
    display: flex;
    width: 40px;
    aspect-ratio: 1;
    align-items: center;
    justify-content: center;
    background: #ffffff59;
    border-radius: 50%;
}

.contact .social-inner-wrap li a svg {
    width: 18px;
    fill: #d3eeff;
}

.contact .social-icons-custom {
    margin-top: 30px;
    padding: 0;
}

.contact .section-heading h2 {color: #fff;}
.contact .section-heading p {color: #b4e96d;}
.contact .ry-form input[type="text"], .contact .ry-form textarea {
    background: transparent;
    border-color: #fff !important;
	color: #fff !important;
}

.contact .ry-form input[type="text"]::placeholder, .contact .ry-form textarea::placeholder {
    color: #fff !important;
}

.contact .ry-form .ry-btn {
    float: right;
    margin-top: 20px;
}

.module-44.custom .social-inner-wrap a {
    display: flex;
    width: 40px;
    aspect-ratio: 1;
    align-items: center;
    justify-content: center;
    background: #2d6aba;
    border-radius: 50%;
}

.module-44.custom .social-inner-wrap svg {
    width: 18px;
    fill: #fff;
}

.module-44.custom .social-inner-wrap li:not(:last-child) {margin-bottom: 15px;}

.module-44.custom .ry-flex .socials, .module-44.custom .ry-flex .hours {width: fit-content;}

.module-44 .website-info .icon {
    display: flex;
    width: 40px;
    height: 40px;
    align-items: center;
    justify-content: center;
    background: #2d6aba;
    border-radius: 50%;
}

.module-44 .website-info .icon svg {
    width: 18px;
    fill: #fff;
}

.module-44.custom .website-info .ry-flex {
    justify-content: flex-start;
    gap: 15px;
    align-items: center;
}

.module-44.custom .website-info .ry-flex:not(:last-child) {margin-bottom: 15px;}
.module-44.custom .ry-flex .ry-each a {font-weight: 700;}
.module-44.custom .office-hours li:last-child {
    margin-top: 20px;
    font-size: calc(13px + 1 * ((100vw - 500px) / 1100));
    color: #666666;
}
.module-44.custom {padding-top: 80px;}
.module-44.custom .ry-footer-copyright .ry-container {border-top: 1px solid #d8d8d8 !important;}
.module-44.custom .office-hours .span-2 {
    width: 150px;
    display: inline-block;
}
.module-44.custom .office-hours .span-3 {font-weight: 700;}

body.default .module-34 {padding-bottom: 20px;}

#ry-pg-body h2, #ry-pg-body h3, #payment-insurance .module-32-heading-2 h4, #ry-pg-body h4 {
    font-size: 25px;
    font-weight: 500 !important;
    letter-spacing: 0;
	margin-top: 0;
}

#ry-pg-body h3 {font-size: 23px;}

#payment-insurance .module-32-heading-2 h4, #ry-pg-body h4 {font-size: 20px;}

.ry-btn.btn-center {
    display: block;
    margin: 0 auto;
}

#ry-pg-body section:not(:last-child) {margin-bottom: 120px;}

#ry-pg-body section.bg-1, #ry-pg-body section.bg-2 {
    background: #ebf4ff;
    border-radius: 20px;
    padding-block: 90px;
}

#ry-pg-body section.image-left {gap: 5vw;}

#ry-pg-body section.bg-2 {background: #2d6aba;}
#ry-pg-body section.img-left .img {width: 600px;}
#ry-pg-body section.bg-2 h2, #ry-pg-body section.bg-2 p {color: #ffff;}
#ry-pg-banner .ry-bnr-wrp .ry-pg-title h1 {text-align: center;}

.brands-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 30px;
}

.brands-grid .ry-each {
    padding: 40px 1.6vw;
    border: 1px solid #d9d9d9;
}

.brands-grid .ry-each img {
    width: 150px;
    margin: 0 auto 30px;
    height: 90px;
    object-fit: contain;
    filter: grayscale(1);
}

.brands-grid .ry-each:nth-child(3n + 1):last-child {grid-column: 1/-1;}

.ry-accordion .ry-heading div {
    font-weight: 600 !important;
    line-height: 32px;
}

section.bg-2 a {color: #fff;}

.checklist ul {padding-left: 60px;}
.checklist li {
    list-style: none;
    padding: 10px 0;
}
.checklist li::before {
    content: '\f00c';
    font-family: fontawesome;
    color: #fff;
    width: 30px;
    aspect-ratio: 1;
    background: #519db5;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    position: absolute;
    left: -50px;
}

.btn-wrapper.ry-flex {
    justify-content: center;
    gap: 15px;
    margin-top: 40px;
}

.content-banner {
    background-size: cover;
    padding-block: 50px !important;
    border-radius: 30px;
    background-position: right;
}

.content-banner .logo {
    max-width: 260px;
    margin-bottom: 30px;
}

.content-banner .txt {max-width: 430px;}

.ry-btn.ry-btn-tertiary {background: #2d6aba !important;}
.ry-btn.ry-btn-tertiary:hover {background: #7fae3f !important;}
.contact-lenses-list {margin-top: 50px;}
.contact-lenses-list .ry-each {
    padding: 40px 3vw;
    border: 1px solid #ebebec;
    gap: 3vw;
    align-items: center;
}
.contact-lenses-list .ry-each .img {width: 370px;}
.contact-lenses-list .ry-each:not(:last-child) {margin-bottom: 30px;}
.default #payment-insurance  img {filter: brightness(0) !important;}
#ry-pg-body section.related-posts {padding: 0;}
section.related-posts .ry-flex {
	gap: 20px;
	margin-top: 30px;
}
section.related-posts .ry-flex .txt {
    background: #fff;
    padding: 10px 15px;
    height: 100%;
}
section.related-posts .ry-flex .txt h3 {
    margin: 0 !important;
    line-height: 18px !important;
}
section.related-posts .ry-flex .ry-each .txt a {
    font-size: 16px;
    font-weight: 600;
    line-height: 15px;
}
section.related-posts .ry-flex .ry-each {
    border-radius: 15px;
    overflow: hidden;
}

#ry-pg-body:has(.related-posts)::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    height: 800px;
    width: 100%;
    background: #ebf4ff;
    display: block;
    z-index: -1;
}
.services-description .txt div:has(.ry-btn) {
    width: 148px;
    min-width: 148px;
}

#ry-main > div:empty {display: none;}

.slick-dots li {list-style: none;}

.slick-dots {
    display: flex !important;
    gap: 3px;
    align-items: center;
    padding: 0;
}

.slick-dots button {
    color: transparent;
    border: none;
    border-radius: 50%;
    width: 12px;
    height: 12px;
    aspect-ratio: 1;
	background: #333;
}

.slick-dots .slick-active button {background: #7fae3f;}

table {
      width: 100%;
      border-collapse: collapse;
      text-align: center;
}
th, td {
	border: 1px solid #ccc;
	padding: 12px;
}
th {
	background-color: #2d6aba;
	color: #fff;
	text-align: center;
}
td:first-child {
	text-align: left;
	font-weight: bold;
	color: #2d6aba;
}
tr:nth-child(even) {
	background-color: #f9f9f9;
}

@media (max-width: 1536px) {
	.module-34-top-left, .module-34-top-right {width: calc(50% - 95px);}
	.module-34 .ry-header-logo img {max-width: 140px;}
}
@media (max-width: 1366px) {
	.module-34 .ry-header-logo img {
		max-width: 125px;
		transform: translateY(-30px);
	}
	.module-34-top-left, .module-34-top-right {width: calc(50% - 40px);}
}
@media (max-width: 1200px) {
	.hp-section.cta .ry-flex.col3 {align-items: center;}
	.hp-section.cta .ry-each {max-width: 500px;}
	#ry-pg-banner {padding-top: 120px;}
}

=
@media (max-width: 1024px) {
	.module-35-header-center {max-width: 160px !important;}
	.hp-section.welcome .main, .hp-section.doctor .main {
		width: 100%;
		float: none;
		position: relative;
		z-index: 2;
	}
	.hp-section.welcome, .hp-section.doctor {padding-bottom: 430px;}
	.reviews .ry-content.ry-flex {flex-wrap: wrap;}
	.hp-section.reviews .ry-content .ry-each {width: 100%;}
	.hp-section.reviews .ry-content .ry-each.ry-el-bg {background-size: cover;}
	.content-banner:before {
		content: '';
		position: absolute;
		inset: 0;
		background: #ffffff8a;
		border-radius: 20px;
	}
	section.related-posts .ry-flex {
		flex-wrap: wrap;
		justify-content: center;
	}
	section.related-posts .ry-flex .ry-each {width: calc(50% - 10px);}
	#ry-pg-body:has(.related-posts)::after {height: 180vh;}
	.services-description .txt {
		flex-direction: column;
		align-items: flex-start;
	}
	#menu_container .mm-listview li a {
		font-size: 18px;
		line-height: 1;
		letter-spacing: initial !important;
	}

	#menu_container, 
	.mm-panel, 
	.mm-panels {
		padding-top: 60px;
	}

	.mm-panel {
		padding-left: 0;
	}

	.mm-menu a {
		padding-top: 20px;
		padding-bottom: 20px;
		line-height: 1;
		font-size: 18px;
		/* padding-left: 0; */
		text-transform: uppercase;
	}

	a.mm-navbar__title {
		padding: 10px 0;
	}
}

@media (max-width: 768px) {
	.services-grid {grid-template-columns: 1fr;}
	.services-options .option .arrow {display: none;}
	.services-options .option {
		flex-direction: column;
		align-items: center;
	}
	.services-options .option h3 {
		text-align: center;
		font-size: 14px;
	}
	.services-options .icon {width: 40px;}
	.services-options .option {
		gap: 10px;
		padding: 10px;
		height: 150px;
		justify-content: center;
	}
	.services-grid .services-options {
		display: flex;
		gap: 5px;
	}
	.associations .ry-content {
		flex-wrap: wrap;
		row-gap: 20px;
	}
	.associations .ry-content .ry-each {width: calc(33.33% - 60px);}	
	.module-44 .ry-flex {align-items: center;}
	.module-44.custom .office-hours .span-2, .module-44.custom .office-hours .span-3 {
		display: block;
		text-align: center;
		width: 100%;
	}
	
	.module-44.custom .office-hours ul {padding: 0;}
	.module-44.custom .ry-flex .socials {width: 100%;}
	.module-44.custom .ry-flex .socials .social-inner-wrap {
		display: flex;
		gap: 5px;
		justify-content: center;
		margin-top: 30px;
	}
	.contact.hp-section .ry-content.ry-flex {
		flex-direction: column;
		gap: 15px;
	}
	.module-66 .carousel .carousel-inner img {
		max-height: 500px;
		min-height: 500px;
	}
	#ry-pg-body section.image-left {
		align-items: center;
		flex-direction: column;
	}
	#ry-pg-body section.bg-1 .img {max-width: 300px;}
	.contact-lenses-list .ry-each {flex-direction: column;}
	.hp-section.welcome {padding-bottom: 250px;}
}

@media (max-width: 767px) {
	.section-heading h2 {
		text-align: center;
		font-size: 30px;
		line-height: 40px;
	}
	.contact .social-inner-wrap {justify-content: center;}
	.contact .ry-form .ry-btn {
		float: none;
		margin: 20px auto 0;
	}
	.content-banner .logo {
		margin: 0 auto 30px;
		float: none;
	}
	.btn-wrapper {flex-direction: column;}
	.ry-btn {margin: 0 auto;}
	.services-description .txt div:has(.ry-btn), .hp-section.welcome::before, .hp-section.doctor::before {width: 100%;}
	.hp-section.welcome, .hp-section.doctor {padding-bottom: 330px;}
	.name-arrows {
		flex-direction: column;
		gap: 30px;
		align-items: center;
	}
	.name-arrows .w-goolge-logo {max-width: 168px;}
}
@media (max-width: 600px) {
	.hp-section.doctor {padding-bottom: 630px;}
	.hp-section.welcome {padding-bottom: 480px;}
	.hp-section.welcome::before, .hp-section.doctor::before {
		left: 50%;
		transform: translateX(-60%);
	}
}
@media (max-width: 500px) {
	.reviews .names p {
		color: #333;
		text-align: left;
	}
	section.related-posts .ry-flex .ry-each {width: 100%;}
	#ry-pg-body:has(.related-posts)::after {height: 300vh;}
	.associations .ry-content {display: block;}
	.associations .ry-content .ry-each {width: auto;}
	.associations .slick-dots {
		justify-content: center;
		margin-top: 10px;
	}
	.hp-section.reviews .ry-content .ry-each.reviews-slider {padding: 40px;}
}

@media (max-width: 425px) {
	.hp-section.doctor {padding-bottom: 480px;}
	.hp-section.welcome {padding-bottom: 350px;}

	.services-grid .services-options {
		flex-wrap: wrap;
		justify-content: center;
	}
	.services-options .option {width: calc(33.33% - 5px);}
	.contact-lenses-list .ry-each .img {width: 270px;}
} 

@media (max-width: 390px) {
	.hp-section.doctor {padding-bottom: 440px;}
	.hp-section.welcome {padding-bottom: 310px;}
}
