/* 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;}
.testimonials-swiper p,
.testimonials-swiper-2 p{
overflow: hidden;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 4
}
.service-hover {
    position: absolute;
    z-index: 9;
    opacity: 0;
    transition: opacity 0.3s ease;
    text-align: center;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    color: white;
}

/* Show service-hover when parent with data-target is hovered */
[data-target]:hover .service-hover {
    opacity: 1;
}

/* Apply the overlay effect when parent is hovered */
[data-target]:hover .service-hover::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    z-index: -1; /* Make sure it's behind the text */
}
.mm-navbar {
	color: #ffffff;
}

/* HP Edits - Started <July 8, 2026> */

	/*fonts*/

	/*btns*/

/*Modal*/
/* Header */
	/**/
.snap-mobile-menu {
    background: white;
}

mm-burger {
    color: #374151;
}
.ry-menu .ry-nav li.primary .caret {
    border-color: #374151;
}

.ry-menu .ry-nav li.primary:hover .caret {
    border-color: var(--color-secondary-background);
}
.with-gradient:before {
    background-image: linear-gradient(to bottom, white, transparent, transparent);
}
.ry-menu .ry-nav li.dropdown .dropdown-menu li {
    background: var(--color-primary-background);
    color: var(--color-primary-text);
}

span.caret {
    border-color: #616161;
}

body[data-page-name="index"] #navigation {
	position: absolute;
}

span.caret {
    border-color: #616161;
}


.cta-btn {
    color: var(--color-primary-text);
	background: var(--color-primary-background);
    border-radius: 999px;
}

.mobile-menu-icon {
    color: white;
}

/* Button */
	/**/
element.style {
    border-radius: 0px;
}

a.cta-btn-circle.secondary {
    color: var(--color-primary-text);
}

.t-swiper-button-next, .t-swiper-button-prev, .brand-4-swiper-button-next, .brand-4-swiper-button-prev {
    color: var(--color-primary-text);
}

/* Hero */
	/**/
#hp-slider, #hp-slider .swiper-wrapper, .homepage-swiper .swiper-slide img {
    height: 100vh !important;
    object-fit: cover;
}
#hp-slider .swiper-pagination-bullet {
    background-color: white;
}
/* CTA */
	/**/
.cta-section.style-1.circle .span a {
    color: var(--color-primary-text);
}

.cta-section.style-1.circle img {
    background: var(--color-secondary-background);
    border-radius: 999px;
    padding: 30px;
    border: 6px solid white;
    box-shadow: 0 0 7px 3px #33333378;
    width: 200px;
    height: 200px;
}

/* Welcome */
	/**/
#welcome-wrap .text-wrapper h2 {
    text-align: left !important;
}

#welcome-wrap .ry-text p {
    text-align: left !important;
}

#welcome-wrap .ry-btn {
    margin-left: 0 !important;
    margin-right: auto !important;
}

.module-welcome.style-5 .ry-each.image-wrapper{
    border: none;
}

.module-welcome.style-5 .ry-each.image-wrapper .photo img {
    left: 5rem;
    object-fit: contain;
}

.module-welcome.style-5 .ry-flex{
    align-items: center;
} 

.module-welcome.style-5 .ry-each.image-wrapper .photo {
    padding-top: 40%;
}

#welcome-wrap :before {
    background-color: white;
}

.module-welcome.style-5 .ry-each.image-wrapper {
    max-width: none;
    width: 100rem;
}
@media (max-width: 768px) {
	#welcome-wrap .module-welcome.style-5 .text-wrapper * {
		text-align: center !important;
	}
	#welcome-wrap .module-welcome.style-5 .text-wrapper a {
		margin: 0 auto !important;
		float: none;
	}
}
/* Services */
	/**/
#section-hp-services::before, .ry-services.style2::before {
    background-color: #FFFBEB;
}

#services-12 > div:nth-child(odd), #services-12 > 
div:nth-child(even) {
    background-color: var(--color-primary-background);
}

#services-12 > div:nth-child(odd) > div > h4, 
#services-12 > div:nth-child(odd) > div > p {
    color: var(--color-primary-text);
}

#services-12 > div:nth-child(odd) > div > p, 
#services-12 > div:nth-child(even) > div > p {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 5;
}

#services-12 > div:nth-child(even) > div > a {
    color: var(--color-primary-text);
    background-color: var(--color-secondary-background);
}

#services-12 > div:nth-child(2n+1) > div > a {
    background-color: var(--color-secondary-background);
}

#services-12 > div:nth-child(even) .photo {
    border: 2px solid white;
}

#services-12 > div:nth-child(even) img{
    filter: none !important;
}

/* Meet the Team */
	/**/
/* Insurance */
	/**/
div#hp-insurance-1 {
    background-color: white;
}

div#hp-insurance-1 .swiper-backface-hidden .swiper-slide{
    background-color: #FFFBEB !important;
    border-radius: 1rem; 
    box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.05), 
                0 1px 2px -1px rgba(0, 0, 0, 0.05);
    border: 1px solid rgba(0, 0, 0, 0.04);
}

/* Brand */
	/**/
div#hp-brands-6{
    background-color: white;
}

.brands-swiper-4 img {
    mix-blend-mode: normal;
}

div#hp-brands-6 .swiper-backface-hidden .swiper-slide{
    background-color: #FFFBEB !important;
    border-radius: 1rem; 
    box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.05), 
                0 1px 2px -1px rgba(0, 0, 0, 0.05);
    border: 1px solid rgba(0, 0, 0, 0.04);
}

/* Request Appointment */
	/**/
.ry-section:nth-child(2n+1) {
    background-color: #FFFBEB !important;
}

/* Testimonials */
	/**/
.testimonials-swiper svg{
    color: rgb(253 224 71 / var(--tw-text-opacity, 1));
}

.ry-section:nth-child(2n) {
    background-color: #F3F0E4 !important;
}

/* Footer */
	/**/
#ry-footer-3::after {
    z-index: -1;
    background-image: url(https://s3.amazonaws.com/static.organiclead.com/Site-0e4be3e3-856c-4671-a4a6-102a1ff9cee7/images/ElliottEye_Footer_Background_Image.jpg);
}

/*Media Queries*/
	/**/
@media (max-width: 1080px) {
    .module-welcome.style-5 .ry-each.image-wrapper .photo{
        padding-top: 10%;
    }   
	.module-welcome.style-5 .ry-each.image-wrapper .photo img {
    left: 0;
	}
}

@media (max-width: 1440px) {
    ul.ry-nav {
        padding-left: 3rem !important;
    }
}

@media (max-width: 1023px) {
    #hp-slider, #hp-slider .swiper-wrapper, .homepage-swiper .swiper-slide img{
        height: 100% !important;
    }
    body[data-page-name="index"] #navigation {
    position: relative;
    }
}

/* End - HP Edits*/

.grid-gallery .gallery-wrapper-v2 {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	justify-content: center;
	gap:10px
}

.grid-gallery .gallery-wrapper-v2 .ry-each {
	width: calc(33% - 10px);
}
.grid-gallery .gallery-wrapper-v2 .ry-each:hover {
	cursor: pointer;
}

.grid-gallery .gallery-wrapper-v2 .ry-each .box-shadow {
	position: absolute;
	top: -10px;
	right: -10px;
	width: calc(100% - 10px);
	height: 100%;
}
.grid-gallery .gallery-wrapper-v2 .ry-each .photo {
	position: relative;
	max-height: 230px;
	height:100%;
}

.grid-gallery .gallery-wrapper-v2 .ry-each .photo img {
	width: 100%;
	height:100%;
	object-fit: cover;
	margin:0 !important;
	object-fit:cover
}
.fancybox-caption .fancybox-caption__body {
	text-align: center;
}

.fancybox-caption:after {
	opacity: 0;
}
@media (max-width: 1480px) {
	.grid-gallery .gallery-wrapper-v2 .ry-each {
		width: calc(33.33% - 10px);
	}
	.module-welcome.style-5 .ry-each.image-wrapper {
    max-width: 100%;
    }
}
@media (max-width: 680px) {
	.grid-gallery .gallery-wrapper-v2 .ry-each {
		width: 47%;
	}
}

div#contents ul.pagination li {
    list-style: none !important;
}

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

body[data-page-name="contact-us"] #ry-footer-3 {
	padding-top: 220px;
}

.list-3 ul p {
		margin: 0;
	}
@media (min-width: 620px) {
	.list-3 ul {
		column-count: 3;
	}
}


.slider-info {
	max-width:1080PX !important; 
	width:100%;;
	min-height:fit-content;
	bottom:20PX;
	left:50%;
	transform:translateX(-50%);
	position:absolute
}
.slider-info h2{
	text-align:center;
	text-transform:uppercase;
	font-size: clamp(2.1875rem, 1.6299rem + 2.2876vw, 4.375rem) !important;
	line-height:1.2
}
.homepage-swiper .with-gradient:before {
   background: linear-gradient(to TOP, #000000ab, rgb(0 0 0 / 37%), rgb(0 0 0 / 0%));
		height:30%;
		bottom:0;
		top:auto

    }

@media(max-width:767px) {
	.slider-info {
		position:relative;
		inset:unset;
		transform:unset;
		padding-bottom:35PX
	}
}

@media (max-width: 780px) {
   
    .cta-wrapper.full-width .cta-section.style-1 {
        width:80%;
        margin-inline:auto;
        margin-top:10PX
    }
    .cta-wrapper.full-width .cta-section.style-1 img {
        height:200px
    }
    .cta-wrapper.full-width {
        padding-block:30px
    }
    .cta-wrapper.full-width  .bg-primary-background {
        padding-block:20px
    }
}

@media (max-width: 480px) {
     .homepage-swiper .swiper-slide img {
        height: 35vh !important;
        object-position:top
    }
}


#navigation-style-15 {
  gap:10px;
}
#navigation-style-15 .group.text-white {
  text-wrap: nowrap
  
}
.slider-info-center-bottom .text-sm {
	min-height:fit-content
}
.slider-info-center-bottom {
	max-width:1080PX !important; 
	width:100%;
}

.snap-mobile-menu .gap-6 {
	gap: 10px;
}

.snap-mobile-menu .gap-4 {
	gap:6PX
}

.snap-mobile-menu {
    background:#fff
}
.snap-mobile-menu .snap-mobile-menu {
    padding-inline:0;
    gap:20px
}
.snap-mobile-menu img {
    filter:unset
}
.mm-navbar__title > span, .mm-menu ::before {
  color: #fff
}
.mm-btn--next::after, .mm-btn--prev::before {
  border-color: #fff
}
#section-hp-services::before, .module-19.style2::before, .ry-services.style2::before {
	opacity:1
}
#ry-footer-3  ul li .font-semibold {
	font-weight:normal
}

@media(min-width:768px) and (max-width:780px) {
	.slider-info-center-bottom .text-xl.md\:text-5xl.font-bold.mb-4 h2 {
		font-size:45px
	}
}
@media(max-width:1480px) {
	#navigation-style-4 { 
		padding-inline: 20px 
	}
}

@media(max-width:1280px) {
	#navigation-style-4  .max-w-\[300px\] {
		max-width: 210px;
		width: :1005
	}
	.cta-btn a, .cta-btn .flex {
		font-size: 14PX;
	}
	.cta-btn {
		width: fit-content;
		padding-inline: 15px;
	}
}

@media(max-width:1199px) {
  .cta-btn a, #navigation-style-4 .group.text-white *{
	  font-size: 14px;
  }

	.ry-menu .ry-nav li a{
		font-size: 16px
	}
	#navigation-style-4 .flex.gap-4 {
		gap:5px;
	}
	#navigation-style-4  .max-w-\[300px\] {
		max-width: 14.3vw;
		width: :1005
	}

}

@media(max-width:1080px) {
	#navigation-style-4, .ry-menu {
		display: none   !important  
	}
	.snap-mobile-menu {
		display: flex !important
  }
	.homepage-swiper .slider-info-center-bottom {
	top:unset;
	bottom: 30px;
	width:100%;
	max-width:700PX;
	height:fit-content;
	min-height:fit-content
	}
	
	.module-welcome.style-5 .ry-each.image-wrapper .photo{
	padding:0 !important;
	height:100% 
	}
	
	.module-welcome.style-5 .ry-each.image-wrapper .photo img {
	position:relative;
	height:100%;
	inset:0;
	max-width:500px;
	margin-inline:auto
	}
	.module-welcome.style-5 .ry-flex {
	gap:30px
	}
	  .ry-services.style2 *, .module-welcome *, #section-hp-team *, #hp-brands-6 *, .module-testimonials *, #hp-brands-5 *, #hp-insurance-1 * {
        text-align: center !important;
    }
	#section-hp-services, #section-hp-team, #hp-insurance-1, .module-testimonials.style-2{
		padding-block:80px
	}
	.module-testimonials .p-20 {
		padding-inline:30px
	}
	#ry-footer-3 .col-span-full:last-child .overflow-hidden  {
		padding-bottom:0
	}
	#ry-footer-3  ul li span {
	font-size:18px
}
#section-hp-services .max-w-7xl {
	width:90%
}
	#section-hp-services .max-w-7xl * {
		text-align:center
	}
}

@media (max-width: 1023px) {
    .homepage-swiper .slider-info-center-bottom {
    bottom: 0;
    background: var(--color-primary-background);
    padding: 40px 10px;
    position:relative;
    width:100%;
    max-width:100%;
    inset:unset;
    transform:unset
    }
    .homepage-swiper .button-wrapper {
    display: block;
    bottom: 40px;
    }
    .homepage-swiper .swiper-pagination-bullet-active {
    background: var(--color-secondary-background);
    }
    .homepage-swiper .swiper-slide img {
    height: 100% !important;SL
    }
    .slider-info-center-bottom * {
        text-align:center !important
    }
    .homepage-swiper .with-gradient:before {
        display:none
    }

    .ry-services.style2 *, .module-welcome *, #section-hp-team *, #hp-brands-6 *, .module-testimonials * {
        text-align:center
    }
}
@media (max-width: 767px) {
	.slider-info-center-bottom .text-xl.md\:text-5xl.font-bold.mb-4 h2 {
		font-size: 31PX;
		line-height: 1;
	}
	.slider-info-center-bottom .text-sm {
		font-size:18px !important
	}
	.homepage-swiper .swiper-slide img {
		height:37vh !important
	}
	.hp-testimonials-section * {
		text-align:center !important
	}

	.hp-testimonials-section  .items-center {
		justify-content:center
	}
}
@media(max-width:639px) {
    #section-hp-team .grid.gap-8 {
        display:flex;
        flex-direction:column;
    }
    #section-hp-team .grid img {
        height:300px;
        width:100%;
        object-position: center 20% !important
    }
}