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

/* Nathan - Started <May 19, 2025> */

a#brand-page-btn {
    min-width: -webkit-fill-available !important;
    border: none !important;
    text-decoration: none !important;
}

div#inner-flex-brand-page div#hp-brands-6 {
    padding: 1em 1em 4em;
    margin-top: 2em;
}


div#logo-slider-block {
    padding: 2em 0;
}

.homepage-team-swiper-pagination  .swiper-pagination-bullet {
		background: #000;
		opacity: 0.5;
}

h1, h2, h3, h4, h5, h6 {
    line-height: 1.1;
}

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

a#page-btn {
    text-decoration: none;
    font-family: 'Montserrat';
    font-size: 16px;
    margin: 1.5em 0 0;
}

div#image-text h3 {
    margin: 0 0 10px 0;
}

div#header-app-btn a.ry-btn.ry-btn-primary {
    width: 100%;
    display: flex;
    height: 55px;
    align-items: center;
    max-width: 100%;
    text-align: center;
    justify-content: center;
    text-transform:uppercase;
    background:#56534c;
     border:none !important;
}

div#header-app-btn a.ry-btn.ry-btn-primary:hover {
  background:#e47b0f;
}

.mobile-dropdown:hover .mobile-dropdown-menu {
  display: block;
  width: 12rem;
  left: -100px;
}
ul.mobile-dropdown-menu li  {
    border-bottom:1px solid #fff;
}

.mobile-dropdown a {
    background: #56534c;
    color: #fff;
	border-radius:0;
	text-align:center;
}

.mobile-dropdown a:hover {
    background: #e47b0f;
}


div#rev-block img {
        border: 2px solid var(--color-primary-background);
        box-shadow: 0 0 7px rgb(51 51 51 / 55%);
        max-width: 90%;
}

div#rev-block {
    gap: 0 6em;
}

div#rev-block-container {
    max-width: 1400px;
    width: 90%;
    margin: 5em auto;
}


@media (min-width:768px) {
		div#hp-slider .slider-info {
		position:absolute;
		bottom:10%
	}
}


@media (min-width:1080px) {
    div#hp-slider .slider-info {
		position:absolute;
		bottom:5%
	}
}




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

    div#image-text .flex {
    flex-direction: column;
}

    div#image-text p, div#image-text h3 {
        text-align:center !important;
    }
}



.ry-menu .ry-nav li .third-level-container .third-level-dropdown {
    width: fit-content;
}
.ry-menu .ry-nav {
    margin-top: -50px;
}
.navigation-14 .cta-icon {
    color: var(--color-primary-background);
}
.ry-menu .ry-nav li.primary:hover .caret {
    border-color: var(--color-primary-background);
}

.ry-menu .ry-nav li.primary .caret {
    border-color: black;
}

.ry-menu .ry-nav li.primary:hover {
    color: var(--color-primary-background);
}
.module-welcome.style-5 .ry-each.image-wrapper {
    border: 2px solid var(--color-primary-background);
    box-shadow: 0 0 7px #3333336e;
}
.module-welcome.style-5 .ry-each.image-wrapper .photo {
    padding-top: 20%;
}
.module-welcome.style-5 .ry-container {
    width: 100%;
}
.with-gradient:before {
    background-image: linear-gradient(to bottom, white, transparent, black);
    opacity: 0.8;
}

.slider-info {
    min-height: fit-content;
}
.ry-services.style2 .ry-each .photo:before {
    background: white;
}

.ry-services.style2 .ry-each .photo img {
    z-index: 2;
    height: 40%;
    width: 40%;
    left: 30%;
    top: 10%;
    transition: all .3s;
}

.ry-services.style2 .ry-each .title div {
    color: var(--color-secondary-background);
}
.ry-services.style2 .ry-each .photo:after {
    opacity: 1;
}

.ry-services.style2 .ry-each .each-block:hover .title div {
    color: white;
}
.mobile-services .slick-dots button {
    background: white;
}
#hp-brands-6 .brands-swiper-4 .swiper-wrapper div {
    background: transparent;
}

#hp-brands-6 .brands-swiper-4 .swiper-wrapper div img {
    mix-blend-mode: normal;
    filter: invert(1);
}
#hp-brands-6::before {
    content: none;
}

#hp-brands-6 .ry-btn {
    min-width: 290px;
    margin: 0;
}

#hp-brands-6 .ry-btn:hover {
    background: white !important;
    color: var(--color-primary-background) !important;
}
#ry-footer::before {
    background-color: var(--color-secondary-background);
}


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


/* Google dropdown */
	/* Header */
		.dropbtn {
		  background-color: #04AA6D;
		  color: white;
		  padding: 16px;
		  font-size: 16px;
		  border: none;
		}

		/*.dropdown {
		  position: relative;
		  display: inline-block;
		}*/

		.dropdown-content {
		  display: none;
		  position: absolute;
		  background-color: var(--color-primary-background);
		  min-width: 160px;
		  box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
		  z-index: 1;
		  border-radius: 5px;
		  border: 1px solid var(--color-secondary-background);
		}

		 .dropdown-content a {
		  color: var(--color-primary-text);
		  padding: 12px 16px;
		  text-decoration: none;
		  display: block;
		  border-bottom: 1px solid var(--color-secondary-background);
		  text-align: center;
		}

		.dropdown-content a:hover {background-color: var(--color-secondary-background);}

		.dropdown:hover .header-social-btn .dropdown-content {display: block;}

		.dropdown:hover .header-social-btn .dropbtn {background-color: #3e8e41;}
	/* END - Header*/
/* END - Google dropdown */


@media (width < 1080px) {
	.with-gradient:before {
		opacity: 0;
	}
	
	div#hp-slider .with-gradient:before {
        opacity: 0.9 !important;
    }
	
	div.slider-info {
		padding-bottom: 0;
	}

	div#hp-slider .swiper-pagination-bullet {
		background: #fff;
		opacity: 0.7;
	}


	#hp-slider, #hp-slider .swiper-wrapper, .homepage-swiper .swiper-slide img {
		height: 100% !important;
	}

	.snap-mobile-menu img {
		filter: brightness(0) invert(1);
	}
    #section-hp-services:before, .module-19.style2:before, .ry-services.style2::before {
        opacity: 1;
    }
	.ry-services.style2 .each-block .photo:before {
		background: white;
		height: 100%;
	}
	.ry-services.style2 .each-block .photo img {
		z-index: 2;
		height: 50%;
		width: 50%;
		border-radius: 0;
		left: 25%;
		top: 7%;
	}

	.ry-services.style2 .each-block .title div {
		color: var(--color-secondary-background);
	}
}


@media (max-width: 768px) {
	
	div#hp-slider .custom-headline h1 {
		font-size: 33px;
		line-height: 1.2 !important;
	}
}

@media (max-width: 500px) {
	div#hp-slider .custom-headline h1 {
		font-size: 25px !important;
		line-height: 1.2 !important;
	}
	div.slider-info {
		padding: 2em 1em !important;
		background: #56534c !important;
	}

}



#navigation {
    background-color: #fff;
}

/*PAGE SLIDER*/

div.page-slider {
    overflow: hidden;
    margin-bottom: 1em;
	position:relative;
}

div.page-slider ol.carousel-indicators {
    display:none !important;
}


div.page-slider a.carousel-control.left {
    background: #e47b0f;
    height: 30px;
    position: absolute;
    width: 100%;
    max-width: 30px;
    left: 0;
    border-radius: 0;
    z-index: 9999;
	display:flex;
    align-items:center;
    justify-content:center;
}

div.page-slider a.carousel-control.right {
   background: #e47b0f;
   height: 30px;
   z-index: 9999;
   position: absolute;
   width: 50%;
   max-width: 30px;
   right: 0;
   border-radius: 0;
   z-index: 999;
	display:flex;
    align-items:center;
    justify-content:center;
}

div.page-slider a.carousel-control.left, div.page-slider a.carousel-control.right {
    top: 45%;
}

div.page-slider a.carousel-control.left:before {
     content: '';
     background: transparent;
     position:absolute;
     width: 10px;
     height: 10px;
     border: 1px solid #fff;
     transform: rotate(230deg);
     border-bottom: none;
     border-left: none;
     right: 8px;
}

div.page-slider a.carousel-control.right:before {
    content: '';
    background: transparent;
    position:absolute;
    width: 10px;
    height: 10px;
    border: 1px solid #fff;
    transform: rotate(42deg);
    border-bottom: none;
    border-left: none;
    left: 8px;
}

div.page-slider .swiper-backface-hidden .swiper-slide img {
    width:max-content !important;
   
}

div.page-slider .swiper-backface-hidden .swiper-slide {
    margin:0 !important;
    padding: 0 1em !important;
    display:flex;
	justify-content: center;
}

div#eyeglasses-slider .swiper-backface-hidden .swiper-slide img {
    width:100% !important;
    object-fit:cover;
    height: 600px; 
    max-width: 600px;
	margin:auto;
}

div#eyeglasses-slider .swiper-backface-hidden .swiper-slide {
    margin:0 !important;
    padding: 0 1em !important;
    display:flex;
	align-items:center;
	justify-content: center;
}


/*END PAGE SLIDER*/







div#lens-logo-flex .ry-each {
    width: 30%;
    background: #eee;
    height: 100px;
    display: flex;
    align-items: center;
    padding: 1em;
    justify-content: center;
}

div#lens-logo-flex .ry-each img {
    width: 90%;
    height: 90%;
    object-fit: contain;
}

div#lens-logo-flex {
		align-items: center;
		gap: 1em;
		margin: 3em auto 3em;
		flex-wrap: wrap;
		justify-content: flex-start;
}

div#lens-logo-flex img {
		max-width: 150px;
		margin: auto;
}

div#discount-value-flex {
    gap: 0 3em;
    margin-top: 5em;
}

div#slider-block, div#slider-content {
    width: 45%;
}

@media (max-width:1080px) {
    div#discount-value-flex {
        flex-direction:column !important;
    }

    div#slider-block, div#slider-content {
		width: 100% !important;
	}

    div#slider-block {
        max-width:600px;
        margin:auto;
    }

    div#discount-value-flex img {
        height:400px !important;
    }
}



@media (max-width:500px) {
		div#lens-logo-flex .ry-each {
		width: 45% !important;
	}

	div#lens-logo-flex {
    	justify-content: center;
    }
		
	div#lens-logo-flex img {
		max-width: 90%;
	}
	
	div#discount-value-flex img {
       height:300px !important;
 }
}





/*LOCATION DETAILS PAGE*/

div.location-banner .background-section, div.location-banner .background-section img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    margin: 0;
}

div.location-banner {
    padding: 8em 0;
    position: relative;
}

div.location-banner .top-location-info .ry-container {
    max-width: 1400px !important;
    width: 90%;
}

div#loc-info-flex {
    gap: 0 2em;
    align-items: center;
}

div#location-image img {
    margin: 0;
    border-radius: 20px;
}

div#location-with-info h2 {
    text-transform: uppercase !important;
    margin: 0;
}

div#location-with-info .ry-headline span {
    display: inline;
}

div#location-image {
    width: 45%;
    z-index: 1;
}

div#location-with-info {
    width: 50%;
    z-index: 1;
}

div.location-heading {
    padding: 2em 3em;
    background: #e3e7f1;
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
}

div.location-heading h4 {
    text-transform: uppercase !important;
    font-size: 34px !important;
}



img#stars {
    max-width: 120px;
    margin: 30px 0 10px;
}

div.location-info ul {
    padding-left: 28px;
    width: 100%;
}

div.location-info ul li {
    list-style: none;
    position: relative;
}

div.location-info p {
    color: #333;
    line-height: 1.4;
    margin: 0;
}

div.location-info li:before {
    content: '';
    position: absolute;
    left: -25px;
    top: 4px;
    width: 20px;
    height: 20px;
    background-size: contain;
    background-repeat: no-repeat;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 384 512'%3E%3C!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--%3E%3Cpath fill='%23e47b0f' d='M215.7 499.2C267 435 384 279.4 384 192C384 86 298 0 192 0S0 86 0 192c0 87.4 117 243 168.3 307.2c12.3 15.3 35.1 15.3 47.4 0zM192 128a64 64 0 1 1 0 128 64 64 0 1 1 0-128z'/%3E%3C/svg%3E");
}

div.location-info li:nth-child(2):before {
    top: 10px;
    width: 19px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3C!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--%3E%3Cpath fill='%23e47b0f' d='M256 0a256 256 0 1 1 0 512A256 256 0 1 1 256 0zM232 120l0 136c0 8 4 15.5 10.7 20l96 64c11 7.4 25.9 4.4 33.3-6.7s4.4-25.9-6.7-33.3L280 243.2 280 120c0-13.3-10.7-24-24-24s-24 10.7-24 24z'/%3E%3C/svg%3E");
}

div.loc-info-flex {
    display: flex;
    margin-top: 2em;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 10px;
}

.location-btn-wrap .ry-btn {
    width: 100%;
    max-width: 100%;
    padding: 17px 35px !important;
    display: block;
}

a.google-app-link {
    text-transform: uppercase;
    text-underline-offset: 4px !important;
}

.ry-text p {
    text-underline-offset: 4px;
}

div.location-info li:nth-child(2) {
    margin-top: 10px;
}

a#location-page-app-btn:before, a#location-page-phone-btn:before, a#fax-number:before {
    content: '';
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3C!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--%3E%3Cpath fill='%23ffffff' d='M128 0c17.7 0 32 14.3 32 32l0 32 128 0 0-32c0-17.7 14.3-32 32-32s32 14.3 32 32l0 32 48 0c26.5 0 48 21.5 48 48l0 48L0 160l0-48C0 85.5 21.5 64 48 64l48 0 0-32c0-17.7 14.3-32 32-32zM0 192l448 0 0 272c0 26.5-21.5 48-48 48L48 512c-26.5 0-48-21.5-48-48L0 192zm64 80l0 32c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16l0-32c0-8.8-7.2-16-16-16l-32 0c-8.8 0-16 7.2-16 16zm128 0l0 32c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16l0-32c0-8.8-7.2-16-16-16l-32 0c-8.8 0-16 7.2-16 16zm144-16c-8.8 0-16 7.2-16 16l0 32c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16l0-32c0-8.8-7.2-16-16-16l-32 0zM64 400l0 32c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16l0-32c0-8.8-7.2-16-16-16l-32 0c-8.8 0-16 7.2-16 16zm144-16c-8.8 0-16 7.2-16 16l0 32c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16l0-32c0-8.8-7.2-16-16-16l-32 0zm112 16l0 32c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16l0-32c0-8.8-7.2-16-16-16l-32 0c-8.8 0-16 7.2-16 16z'/%3E%3C/svg%3E");
    width: 18px;
    height: 18px;
    background-size: contain !important;
    background-repeat: no-repeat;
    margin-right: 8px;
}

a#location-page-app-btn, a#location-page-phone-btn {
   text-decoration:none;
   border:none !important;
   font-family: 'Montserrat';
   font-size: 16px;
}

a#location-page-app-btn {
    white-space: nowrap;
}

a#location-page-phone-btn:before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3C!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--%3E%3Cpath fill='%23ffffff' d='M164.9 24.6c-7.7-18.6-28-28.5-47.4-23.2l-88 24C12.1 30.2 0 46 0 64C0 311.4 200.6 512 448 512c18 0 33.8-12.1 38.6-29.5l24-88c5.3-19.4-4.6-39.7-23.2-47.4l-96-40c-16.3-6.8-35.2-2.1-46.3 11.6L304.7 368C234.3 334.7 177.3 277.7 144 207.3L193.3 167c13.7-11.2 18.4-30 11.6-46.3l-40-96z'/%3E%3C/svg%3E");
    left: 24%;
}

div.ry-social ul.custom-social-wrapper {
    padding-left: 0;
    margin: 0;
    width: auto;
}

div#location-with-info .ry-social {
    margin-top: 1em;
}

div#location-with-info .ry-social >div {
    display: flex;
    justify-content: flex-start;
    gap: 0 1em;
    align-items: center;
}

div#location-with-info .ry-social p {
    width: auto;
}




@media (max-width: 1360px) {

    div#location-with-info h2 {
        line-height: 1.2 !important;
        font-size: 30px !important;
    }

    div#location-with-info h2 {
        line-height: 1.2 !important;
        font-size: 30px !important;
    }
}

@media (max-width: 1080px) {
    div#location-image {
        max-width: 600px !important;
    }

    div.location-banner .top-location-info .ry-container {
        width: 90% !important;
    }

    div.location-banner {
        margin-top: 0;
        padding: 3em 0;
    }


    div#location-with-info, div#location-image {
        width: 100% !important;
    }

    a.google-app-link {
        text-underline-offset: 4px !important;
    }
	
	.custom-social-wrapper .social-inner-wrap li:before {
		display: none !important;
	}

	div#location-with-info .ry-social >div {
		justify-content: center;
	}
}

@media (max-width: 1080px) {
    div#loc-info-flex {
        flex-direction:column !important;
        gap: 2em 0;
    }

    div.loc-info-flex {
        flex-direction: column;
        gap: 1em 0 !important;
        justify-content: center;
        align-items: center;
    }

    div.location-info ul {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }

    div.location-banner {
        margin-top: 0;
    }

    div#location-image {
        max-width: 400px;
    }

    div#location-with-info h2 {
        text-align: center !important;
    }

    img#stars {
        margin: 30px auto 15px !important;
    }

    div.location-info ul {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        padding: 0;
    }

    .location-btn-wrap {
       width:100%;
       max-width:300px;
    }

    a.google-app-link {
        display: block;
    }

    div.location-info li p {
        text-align: center;
        margin: 2em 0 1em;
    }

    div.location-info li:before {
        right: 0;
        left: 0;
        text-align: center;
        margin: auto;
    }
}

@media (max-width: 767px) {


    div.location-heading:after {
        display: none !important;
    }

     .location-heading h2 {
        font-size: 27px !important;
        line-height: 1.2 !important;
    }



}

@media (max-width: 500px) {
    div.location-info p {
        font-size:16px !important;
    }
}




/* END LOCATION DETAILS PAGE*/




 div#blog-photo img {
  max-width: 300px;
  margin:auto;
  border-radius: 20px;
 }

@media(min-width:992px) {
    div#blog-photo {
		float: right;
		margin: 0 0 10px 20px;
		width: auto;
	}
}


@media (max-width:991px) {
 div#blog-photo {
    float: none;
    width: 100%;	
}
 
}
/* Header Text Banner */
.header-banner {
    background: #605d56;
    color: #e47b0f;
    padding: 15px 10px;
    z-index: 9999;
    position: relative;
    top: 0;
    margin-top: 0;
}
#navigation .holder{
    padding-top:0;
}

#navigation .holder .header-banner {
    margin-bottom:20px
}
