/* 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;}

div#faq-accordion-style h3.text-white{
    font-weight:400;
    font-size:1.2em;
    transition:all .3s ease
}

.ry-frame {
  margin-top: 20px;
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 56.25%; }
  .ry-frame iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

/*location page*/
.contact-template.style-3 .hours-wrapper {
    display: flex;
    padding: 0px 2vw 30px;
    background: #f5f5f5;
}

.contact-template.style-3 .hours-wrapper ul {
    padding: 0;
    margin: 0;
    list-style: none;
}

.contact-template.style-3 .hours-wrapper .text-wrap {
    width: 100% !important;
    max-width: 100% !important;
    align-items: flex-start !important;
}


.contact-template.style-3 .hours-wrapper ul li {
    display: flex;
    align-items: center;
    font-size: 18px !important;
    font-weight: 500;
    flex-wrap: wrap;
	justify-content: space-between;
    margin:0
}

.contact-template.style-3 .inner-flex .ry-each .inner-group .hours-wrapper .ry-text .span-1 {
    display:inline-block
}

.contact-template.style-3  .hours-wrapper ul li p {
   max-width:380px;
    width:100%;
    padding:0;
    margin:0;
    display:flex;
    justify-content:space-between;
    font-size:16px !important
}


.contact-template.style-3 .hours-wrapper .ry-text {
    width:100%;
}

@media screen and (max-width: 1080PX) {
    .contact-template.style-3 .inner-flex .ry-each .inner-group .text-wrapper{
        flex-direction:column;
        gap:10px
    }
  .hours-wrapper .text-wrap {
        align-items: center;
        justify-content: center;
    }
    
 .hours-wrapper ul li {
        flex-direction: column;
        margin-bottom: 30px;
    }

    .contact-template.style-3 .icon {
        margin-bottom:10px
    }
    .contact-template.style-3 .hours-wrapper {
    display: flex;
    padding: 0px 30px 30px;
    }
    .contact-template.style-3 .inner-flex .ry-each {
        width:100%
    }
    .contact-template.style-3 .inner-flex .ry-each .inner-group .map-ratio #mapCustom1, .contact-template.style-3 .inner-flex .ry-each .inner-group .map-ratio #mapCustom2, .contact-template.style-3 .inner-flex .ry-each .inner-group .map-ratio #mapCustom3 {
        padding-bottom:350px
	}
	.contact-template.style-3 .contact-details .headline{
		height:fit-content;
	}
	.contact-template.style-3 .inner-flex .ry-each .headline h3 {
		margin-bottom: 20px !important;
		padding:0
	}
	.contact-template.style-3 .hours-wrapper{
		justify-content:center;
	}
	    .contact-template.style-3 .inner-flex .ry-each .inner-group .text-wrap {
        align-items:center !important;
    }

        .contact-template.style-3 .inner-flex {
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }
        .contact-template.style-3 .inner-flex {
        flex-direction: row !important;
        align-items: center;
        justify-content: center;
        gap:30px
    }
        .contact-template.style-3 .inner-flex .ry-each {
       max-width:440px;
            width:100%;
    }
    .contact-template.style-3 .inner-flex .ry-each .inner-group .text-wrap {
        width:100%
    }
    
}



@media screen and (max-width: 774px) {
    .contact-template.style-3 .inner-flex .ry-each .inner-group .text-wrapper{
        flex-direction:column;
        gap:10px
    }
  .hours-wrapper .text-wrap {
        align-items: center;
        justify-content: center;
    }
    
 .hours-wrapper ul li {
        flex-direction: column;
        margin-bottom: 30px;
    }

    .contact-template.style-3 .icon {
        margin-bottom:10px
    }
    .contact-template.style-3 .hours-wrapper {
    display: flex;
    padding: 0px 30px 30px;
    }
    .contact-template.style-3 .inner-flex .ry-each {
        width:100%
    }
    .contact-template.style-3 .inner-flex .ry-each .inner-group .map-ratio #mapCustom1, .contact-template.style-3 .inner-flex .ry-each .inner-group .map-ratio #mapCustom2, .contact-template.style-3 .inner-flex .ry-each .inner-group .map-ratio #mapCustom3 {
        padding-bottom:350px
	}
	.contact-template.style-3 .contact-details .headline{
		height:fit-content;
	}
	.contact-template.style-3 .inner-flex .ry-each .headline h3 {
		margin-bottom: 20px !important;
		padding:0
	}
	.contact-template.style-3 .hours-wrapper{
		justify-content:center;
	}
	    .contact-template.style-3 .inner-flex .ry-each .inner-group .text-wrap {
        align-items:center !important;
    }
}

[data-page-name="contact-us"] div#footer-map, [data-page-name="locations"] div#footer-map{
    display: none;
}


.contact-template.style-3 .ry-form-box-wrapper {
    margin-bottom:8vw
}

/*FRAMES*/
#brands-inner .frame-wrapper > div {
  display:flex;
  justify-content:center;
  align-items:center
}

/**Updated CSS**/

@media (min-width: 1081px) {
	.homepage-video-slider {
        margin-top: 0px;
        height: 100vh;
        overflow: hidden;
    }
	.slider-info-center-bottom {
		bottom: 4%;
	}
	.homepage-swiper {
		margin-top: 0px;
		height: calc(0px + 100vh) !important;
		overflow: hidden;
		max-height: 100%;
	}
	.homepage-swiper .swiper-slide img {
		height: calc(0px + 100vh) !important;
		object-position: center top;
	}
	.slider-info {
		min-height: 1px;
	}
}


@media (max-width: 1080px) {
	.homepage-video-slider::before {
		opacity: 0; 
	}
	.slider-info {
		min-height: 1px;
	}
	.homepage-swiper, .homepage-swiper .swiper-slide img {
		height: 100% !important;
	}
}

@media (max-width: 1080px) { 

	.homepage-swiper .slider-info,
	.homepage-video-slider .slider-info {
		position: relative;
		top: 0;
		transform: unset;
		left: 0;
		background: var(--color-secondary-background);
		padding: 2em 1em 1em;
	}
	.homepage-swiper {
		padding-top: 95px;
	}
	.homepage-swiper .slider-info .ry-btn-primary {
		border: 1px solid white;
	}
	.homepage-swiper .slider-info div {
		display: flex;
		align-items: center;
		justify-content: center;
	}
}

#ry-pg-body :is(.navigation-3) .bg-primary-background,
#page :is(.navigation-3) .bg-primary-background {
    background: transparent;
}

#ry-pg-body :is(.navigation-3) .cta-btn:hover,
#page :is(.navigation-3) .cta-btn:hover{
    background: #fff;
}


#welcome-wrap.style-1:before, .module-welcome.style-5:before, .module-welcome.style-6:before {
	background-position: center bottom;
}



#ry-footer ul {
    line-height: 2;
}
.footer-contents ul li, .footer-contents a, .footer-contents h4, .footer-contents p {
    color: #141414;
}
#ry-footer-3::after {
	display: none;
}
#ry-footer-3::before {
	opacity: 1;
}
#ry-footer-3 .footer-contents {
    background: #fff;
	border: 6px solid var(--color-primary-background);
}
#ry-footer-3 .footer-contents::before {display: none;}
div#hp-insurance-1, div#hp-brands-5 {
    background: #f9fafe;
}
@media (max-width:700px) { 
	#ry-footer-3 .footer-contents {
		max-width: 90% !important;
		width: 100% !important;
		padding: 3em 1em !important;
	}

	div#ry-footer-3 {
		padding: 0;
	}

	#ry-footer-3 .footer-contents {
		text-align: center !important;
	}
}


#ry-footer ul {
    line-height: 2;
}
.footer-contents ul li, .footer-contents a, .footer-contents h4, .footer-contents span {
    color: #141414;
}
#ry-footer-3::after {
	display: none;
}
#ry-footer-3::before {
	opacity: 1;
}
#ry-footer-3 .footer-contents {
    background: #fff;
	border: 6px solid var(--color-primary-background);
}
#ry-footer-3 .footer-contents::before {display: none;}
div#hp-insurance-1, div#hp-brands-5 {
    background: #f9fafe;
}
@media (max-width:700px) { 
	#ry-footer-3 .footer-contents {
		max-width: 90% !important;
		width: 100% !important;
		padding: 3em 1em !important;
	}

	div#ry-footer-3 {
		padding: 0;
	}

	#ry-footer-3 .footer-contents {
		text-align: center !important;
	}
}

.with-gradient:before {
	background-image: linear-gradient(transparent, transparent, transparent, #00000099);
}


.footer-privacy strong {
    color:rgb(185 28 28 / 1) !important;
}

.testimonials-swiper-4 .swiper-slide p,
#hp-testimonials-5 .text-base p,
.testimonials-swiper-2 .swiper-slide .text-base p{
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 5;
    line-clamp: 5;
    -webkit-box-orient: vertical;
}

div#navigation {
	background-color: #fff;	
}

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

body[data-page-name="frames"] #hp-brands-5::before {
	display: none;
}

div#section-hp-services {
    background: #f2f8fc;
}
a.mm-navbar__title span{
    color:#FFF;
    text-transform:uppercase;
    letter-spacing:1px
}

.ry-hp-team {
    background: #576981 !important;
}
.module-testimonials .max-w-5xl.bg-primary-background {
    background: url(https://s3.amazonaws.com/static.organiclead.com/Site-420ad687-94d2-4778-97b9-b743d8457e3f/Assets/testimonial_background.jpg);
    background-size: cover;
}

#contents .mt-10.flex.lg\:flex-row.justify-between.flex-col.lg\:gap-14.gap-16 {
	margin-top:0 !important
}
@media(min-width:1200px){
    [x-data="randomBanners"] {
		height:300px;
	}
	[x-data="randomBanners"] img{
		object-position:center !important
	}
	[x-data="randomBanners"] .text-xl {
		padding-top:90px
	}
}
@media(max-width:991px) {
	.homepage-swiper .swiper-slide img, .homepage-swiper .swiper-wrapper {
		height:100% !important
	}

	.homepage-swiper .slider-info, .homepage-video-slider .slider-info {
		max-width:100% !important;
	}
	.homepage-swiper .slider-info {
		padding-bottom:50px
	}

	.homepage-swiper .slider-info p {
		overflow:hidden !important
	}
	.homepage-swiper .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet-active {
		background:lightgray
	}
	.homepage-swiper .slider-info div {
		overflow:hidden
	}
	
	.homepage-swiper .swiper-button-next, .homepage-swiper .swiper-button-prev {
		display:none
	}
}

@media(max-width:768px) {
	.snap-mobile-menu img {
		max-width:200px;
		width:100%;
	}
}
@media(max-width:767px) {
	.homepage-swiper h2 {
		font-size:31px;
		line-height:1.1
	}
	.homepage-swiper DIV {
		font-size:16px 
	}
}

@media(max-width:480px) {
	.homepage-swiper .slider-info {
		padding:20px 15px 50px
	}
	.homepage-swiper .swiper-slide img {
		height:30vh !important
	}
	.snap-mobile-menu img {
		max-width:160px;
		width:100%;
	}
	.snap-mobile-menu .gap-6 {
		gap:15px !important
	}
}

/*----- QA UPDATE -----*/
body[data-page-name="contact-us"] #map-wrapper {
    display: none;
}
body[data-page-name="contact-us"] #footer-map {
	display: none;
}
body[data-page-name="contact-us"] div#ry-footer-3 {
    margin-top: 12vw;
}

body[data-page-name="contact-us"] #ry-footer-3::before {
	margin-top: 10vw;
}

.homepage-swiper  .slider-info {
    max-width:90%
}

@media(max-width:1080px) {
    .homepage-swiper .slider-info  h2 {
        font-size: clamp(1.9375rem, 1.6196rem + 1.3043vw, 2.5rem);
    }
	#map-wrapper {
		height:450px !important
	}
}

#ry-footer-3::before, .module-testimonials.style-2::before, .module-testimonials.style-3::after {
	background: #242424;
}

/** Welcome Style Start **/

#welcome-wrap.style-1:before, .module-welcome.style-5:before, .module-welcome.style-6:before {
	background-position: center bottom;
}

/** Services Style **/
#services-12 .slick-arrow {
	height: 50px;
	width: 50px;
	background: #343434;
		border-radius: 8px;
		display: flex !important;
		justify-content: center;
		align-items: center;
		font-size: 0;
		line-height: 0;
		position: absolute;
		top: 50%;
		display: block;
		padding: 0;
		-webkit-transform: translate(0, -50%);
		-ms-transform: translate(0, -50%);
		transform: translate(0, -50%);
		cursor: pointer;
		border: none;
		outline: none;
		z-index: 9;
		}

#services-12 .slick-arrow.slick-prev:before,
#services-12 .slick-arrow.slick-next:before {
	display: block;
	content: url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" fill="%23fff" class="bi bi-chevron-left" viewBox="0 0 16 16"%3E%3Cpath fill-rule="evenodd" d="M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z"/%3E%3C/svg%3E');
	height: 25px;
	width: 25px;
}

#services-12 .slick-arrow.slick-next:before {
	content: url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" fill="%23fff" class="bi bi-chevron-right" viewBox="0 0 16 16"%3E%3Cpath fill-rule="evenodd" d="M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z"/%3E%3C/svg%3E');
}

#services-12 .slick-prev:hover:before,
#services-12 .slick-prev:focus:before,
#services-12 .slick-next:hover:before,
#services-12 .slick-next:focus:before {
	opacity: 1;
}
#services-12 .slick-prev.slick-disabled:before,
#services-12 .slick-next.slick-disabled:before {
	opacity: 0.25;
}

#services-12 .slick-prev:before,
#services-12 .slick-next:before {
	font-size: 20px;
	line-height: 1;
	opacity: 1;
	color: #790000;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

#services-12 .slick-prev {
	left: -25px;
}

#services-12 .slick-next {
	right: -25px;
}

#services-12  .slick-track {
	display: flex;
	gap: 18px;
	padding: 50px 0 50px;
}

#services-12 .hp-service {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	padding: 28px 2vw;
	position: relative;
	background: var(--color-primary-background);
		min-height: 560px;
}
#services-12 .hp-service:nth-child(even) {
	background: #252525;
		}
#services-12 .hp-service:nth-child(odd) *,#services-12 .hp-service:nth-child(even) * {
	color: #fff;
}
#services-12 .hp-service:nth-child(even) img {
	filter: brightness(0) invert(1) !important;
}

#services-12 p {
	font-size: 18px;
	line-height: 1.5;
	text-align: center;
	overflow: hidden;
	display: -webkit-box;
	-webkit-line-clamp: 5;
	line-clamp: 5;
	-webkit-box-orient: vertical;
	transition: 0.2s;
	min-height: 140px;
	color: #383838;
}

#services-12 .custom-btn {
	z-index: 999 !important;
}

#services-12 .rounded-full {
	width: 45px;
	height: 45px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	color: #333 !important;
}
#services-12 .hp-service .rounded-full i {
	font-size: 20px;
	color: #333 !important;
}

#services-12 .rounded-full {
	transition: 0.3s;
	background: #fff;
		}
#services-12 .rounded-full {
	transition: 0.3s;
}
#services-12 .hp-service .text-3xl.font-semibold.py-6.px-2.mx-auto.text-center {
	min-height: 130px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: clamp(1.1875rem, 1.15rem + 0.1875vw, 1.375rem);
}
#services-12 .hp-service .text-3xl.font-semibold.py-6.px-2.mx-auto.text-center h4 {
	line-height: 130%;
}
div#services-12 {
	padding: 0;
}
#services-12 > div:nth-child(even) {
	background: transparent;;
}
#services-12 .hp-service h4 {
	opacity: 1;
}
#services-12 img {
	filter: brightness(0) invert(1) !important;
}

#section-hp-services::before {
	background: url(https://s3.amazonaws.com/static.organiclead.com/Site-420ad687-94d2-4778-97b9-b743d8457e3f/Assets/services_background.jpg);
	background-position: center bottom;
	background-size: cover;
	background-repeat: no-repeat;
}
#services-12 > div:nth-child(odd) {
	background: transparent;
}

@media (max-width:600px) {
	#services-12 .slick-track {
		padding: 0 !important;
	}

	#services-12 .hp-service .text-3xl.font-semibold.py-6.px-2.mx-auto.text-center {
		min-height: auto !important;
		padding: 0 0 10px 0 !important;
	}

	#services-12 p {
		padding:  0 10px  !important;
		font-size: 16px  !important;
	}
}

#section-hp-services ul.slick-dots {
    display: flex;
    justify-content: center;
    gap: 5px;
	padding: 20px 0;
}

#section-hp-services ul.slick-dots li button {
    color: transparent;
    width: 12px;
    height: 12px;
    background: #0f3d49;
    border-radius: 50px;
    opacity: .5;
	transition: .2s;
}

#section-hp-services ul.slick-dots li.slick-active button {
    width: 32px;
    transition: .2s;
    background: var(--color-primary-background);
	opacity: 1;
}
#services-12 .hp-service .custom-btn a {
	transition: .2s;
}
#services-12 .hp-service:hover .custom-btn a {
    position: relative;
    width: max-content;
    display: flex;
    gap: 10px;
    transition: .2s;
    padding: 0 20px;
    background: #f8f2fc;
    box-shadow: 10px 10px 30px rgb(0 0 0 / 20%);
}
#services-12 .hp-service .custom-btn a:before {
	content: "";
	font-size: 16px;
	transition: .2s;
}
#services-12 .hp-service:hover .custom-btn a:before {
    content: "Read More";
    transition: .2s;
}

div#section-hp-services {
    background: #f2f8fc;
}

@media (max-width: 500px) {
	div#section-hp-services .ser-title h4 {
    font-size: 16px;
}
	div#section-hp-services .ser-title {
		left: 20px !important;
	}
}
/** Services End **/

.homepage-team-swiper-2:before {
	display: none;
}

#ry-footer::before {
	background: #252525 !important;
}

div#map-flex .ry-each {
	width: 50%;
	padding: 10px 5px;
	background: #fff;
}

div#map-flex .ry-each iframe {
	height: 750px !important;
}

@media (max-width:1600px) {
	div#map-flex .ry-each iframe {
		height: 600px !important;
	} 
}

@media (max-width:991px) {
	div#map-flex .ry-each iframe {
		height: 400px !important;
	} 
}

@media (max-width:700px) {
	div#map-flex {
		flex-direction:column !important;
		margin-bottom:30px !important;
	}

	div#map-flex .ry-each {
		width:100% !important;
		padding: 10px;
	}
}

#ry-footer select {
    width: 100%;
    max-width: 180px;
    text-align: left;
    padding: 10px 20px;
    color: #fff !important;
}

/** Fixed Responsiveness **/

@media (max-width: 1080px) {
	div#navigation-style-3 {
		display: none;
	}
	.hidden.lg\:flex.justify-center.gap-6.items-center.max-w-7xl.mx-auto.ry-menu {
		display: none;
	}
	#section-hp-services::before {
		opacity: 1;
	}
	.module-welcome.style-5 .text-wrapper * {
		text-align: center;
	}
	.module-welcome.style-5 .ry-each .ry-text .ry-btn {
		margin-left: auto !important;
	}
	#ry-footer h4 {
		font-size: 1.3rem !important;
	}
	#ry-footer .md\:col-span-6 {
		width: 100%;
		max-width: 260px;
	}
	#ry-footer .grid.grid-cols-12 {
		place-items: center;
	}
	#ry-footer .flex.justify-between.flex-col.xl\:flex-row * {
		text-align: center;
	}
	#ry-footer p.flex.flex-col.md\:flex-row.items-center.gap-x-2 {
		justify-content: center;
	}
	.snap-mobile-menu.flex.lg\:hidden {
		display: flex;
		background: white;
	}
	.homepage-swiper .slider-info {
		max-width: 100% !important;
		padding: 3em 1em 3em;
	}
}

@media (max-width: 1023px) { 
	.homepage-swiper {
		padding-top: 0;
	}
}

body[data-page-name="eyeglasses-and-contacts"] .p-4.bg-gray-200.rounded-lg {
    display: flex;
    justify-content: center;
    align-items: center;
}

body[data-page-name="contact-us"] div#map-flex {
    display: none;
}
#iframemap {
    position: relative;
    padding-bottom: 500px;
}
.contact-template.style-3 {
    padding-top: 4.333vw;
}
.contact-template.style-3 .contact-details {
    margin-bottom: 3.33vw;
}


[type="checkbox"] {
    border-radius: 4px;
    margin-right: 5px;
}

@media (max-width: 991px) {
	.group-team img {
		height: 50vh;
		object-fit: cover;
	}
}

@media (max-width: 767px) {
	.group-team img {
		height: 36vh;
		object-fit: cover;
	}
}