/* 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;
}
#in-services-style-2.squares .ry-each:before, #in-services-style-2.squares .ry-each img {border-radius: 0;}
.testimonials-swiper p,
.testimonials-swiper-2 p{
overflow: hidden;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 4
}


.brands-static-4 .brands-wrapper {
    display: flex;
    flex-direction: row;
    padding: 30px 0 0;
    justify-content: center;
    gap: 15px;
    flex-wrap: wrap;
}

.brands-static-4 .each-brand {
    width: min(250px, 100%);
    max-width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.cta-btn {
    border-radius: 8px;
}

.brands-static-4 .each-brand img {
    height: 13vh;
    object-fit: contain;
    max-width: 10rem;
}

/* HP Edits - Started <June 17, 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);
}

.cta-btn:first-child {
    background: var(--color-primary-background);
}
/* Hero */
	/**/
#hp-slider, #hp-slider .swiper-wrapper, .homepage-swiper .swiper-slide img {
	height: 100vh !important;
	object-fit: cover;
	object-position: 0% -200%;
}
#hp-slider .swiper-pagination-bullet {
    background-color: white;
}
/* CTA */
	/**/
/* Welcome */
	/**/
#welcome-wrap.style-1 .module-22 .ry-left img {
    border: none;
    border: 5px solid #33423e;
    border-radius: 50%;
}

#welcome-wrap.style-1 .module-22 .ry-right .content-wrap p {
    text-align: center !important;
}
/* Services */
	/**/
#section-hp-services .ry-card {
    box-shadow: 0 0 7px 3px #0000001c;
}

.ry-card .ry-icon {
    box-shadow: 0 10px 55px 5px rgba(137, 173, 255, 0.2);
}.ry-card .ry-icon img {
    filter: invert(0) !important;
}
.ry-card:hover .ry-icon img {
    filter: invert(0) !important;
}
/* Meet the Team */
	/**/
/* Insurance */
	/**/
#hp-insurance-1 .swiper-slide {
    background: none;
}

#hp-insurance-1 .overflow-hidden {
    padding: 0;
}

#hp-insurance-1 {
}
/* Brand */
	/**/

.brands-swiper-4 img {
    filter: invert(1);
}

.t-swiper-button-next, .t-swiper-button-prev, .brand-4-swiper-button-next, .brand-4-swiper-button-prev {
    color: var(--color-secondary-background);
    background-color: var(--color-secondary-text);
}
/* Request Appointment */
	/**/
/* Testimonials */
	/**/
.module-testimonials.style-2::before, .module-testimonials.style-3::after {
    opacity: 0;
}

.testimonials-swiper p, .testimonials-swiper-2 p {
    color: #666;
}

.module-testimonials.style-2 .comments-symbol {
    font-family: 'EB Garamond';
}
/* Footer */
	/**/
/*Media Queries*/
	/**/
@media (max-width:1024px){
    body[data-page-name="index"] #navigation {
        position: relative;
    }
    #hp-slider, #hp-slider .swiper-wrapper, .homepage-swiper .swiper-slide img {
        height: 100% !important;
    }
}
/* End - HP Edits*/

.gallery-row{
    display:flex;
    gap:20px;
}

.gallery-row .ry-each{
    width:50%;
}

.gallery-row  .twentytwenty-container{
    width:100%;
}

.gallery-row  .twentytwenty-container img{
    width:100%;
    display:block;
    margin:0
}

.gallery-row .twentytwenty-before-label,
.gallery-row .twentytwenty-after-label{
    opacity:1 !important;
    bottom:0 !important;
    top:auto !important;
}
.gallery-row .twentytwenty-horizontal .twentytwenty-before-label:before,
.gallery-row .twentytwenty-horizontal .twentytwenty-after-label:before {
     bottom:0 !important;
    top:auto !important;
    background:var(--color-secondary-background);
    letter-spacing:0;
    font-size:16px
}
.gallery-row .twentytwenty-horizontal .twentytwenty-before-label:before {
    left: 0px;;
}
.gallery-row .twentytwenty-horizontal .twentytwenty-after-label:before {
    right:0PX;
}
.gallery-row .twentytwenty-overlay:hover{
    background:unset
}

.gallery-row h3 {
	margin-bottom:0 !important;
	margin-top:20px
}

@media(max-width:600px) {
	.gallery-row{
   flex-direction:column
}

.gallery-row .ry-each{
    width:100%;
}
}

.member-plan {
  width: 100%;
  max-width: 100%;
  padding-inline: 0 !important
}
.member-plan h2 {
  margin-top: 0 !important;
  text-align: center !important;
	text-transform:uppercase
}

.member-plan .benefits .flex {
  display: flex;
}

.member-plan .benefits  {
  display: flex;
  gap: 30px
}

.member-plan .benefits > .ry-each {
  width: 48%;
  padding: 30px;
  background: #f9f9f9;
  border:solid 1px #0002
}

.member-plan .benefits > .ry-each h3 {
  margin-top: 0 !important;
  text-align: center !important;
  margin-bottom: 25px 
}
.member-plan .benefits > .ry-each h4 {
  margin-top: 0 !important;
}
.member-plan .benefits > .ry-each img {
  margin-block:0 !important
}

.member-plan .benefits .flex .ry-each  {
  border-top:solid 1px #0003;
  padding: 25px 0;
  display: flex;
  align-items: center;
  gap: 30px
}
.member-plan .benefits .flex .ry-each img {
  max-height: 85px:
  object-fit: contain
}
.member-plan .benefits .flex .ry-each:last-child {
  padding-bottom: 0
}
.member-plan .benefits .flex .ry-each a:not(:hover) {
  color: #062cff;
  text-decoration: unset !important;
  transition: all .3s ease
}
.member-plan .benefits .flex .ry-each > div {
  width: 70%;
}

.member-plan p {
  font-size: 17px;
  line-height: 1.6
}

.member-plan .ry-btn {
  border-radius: 0 !important;
  padding:10PX 30px;
  text-decoration: unset !important;
  height: 55px !important;
  display: flex;
  justify-content: center;
  align-items: center
}

.member-plan .ry-text {
  margin-top: 80px
}

.member-plan .ry-full {
  background:#eaf0f0;
  width: 100%;
  padding: 100px 0
}

.member-plan .ry-full h2 {
  text-transform: uppercase;
  margin-bottom:5px
}

.member-plan .ry-full .flex {
  justify-content: center;
  gap: 30px
}

.member-plan .ry-full .flex > div {
  padding: 30px;
  background: #f9f9f9;
  border: solid 1px #0002;
  display: flex;
  align-items: center;
  flex-direction: column;
  width: calc(33.33% - 15px)
}

.member-plan .ry-full .flex > div * {
  text-align: center !important;
}

.member-plan .ry-full .flex .title h3 {
  margin-top: 0;
  font-weight: 400;
  font-size: 30px;
  max-width: 190px;
  width: 100%;
  color: #323232 !important
}

.member-plan .ry-full .flex .price {
  border-block:solid 1px #0002;
  width: 100%;
  padding: 20px 0
}

.member-plan .ry-full .flex .price h2 {
   font-size: clamp(3.125rem, 2.4877rem + 2.6144vw, 5.625rem);
  color: #323232 !important;
  line-height: 1;
  margin-top: 0 !important;
}

.member-plan .ry-full .flex .price p {
  margin-block: 0
}

.member-plan .ry-full .flex .info ul p, .member-plan .ry-full .flex .info ul li {
  margin: 0;
  padding:0
}

.member-plan .ry-full .flex .info ul {
  column-count: 2;
  gap: 3vw;
     list-style: none;
    padding: 0;
}


.member-plan .ry-full .flex .info ul li {
    margin-bottom: 15px;
    padding-left: 25px;
    position: relative;
    line-height: 1.5;
}

.member-plan .ry-full .flex .info ul li::before {
	content: '✔'; 
	position: absolute;
	left: 0;
	font-size: 12px;
	background:var(--color-primary-background);
		width: 18px;
		height: 18px;
		border-radius: 50%;
		color: #fff;
		display: flex;
		align-items: center;
		justify-content: center;
		margin-top: 4px
}

.faq-section {
	padding:100PX 0
}
.faq-section #faq-accordion-style .bg-gray-200 {
    background: #eef3f3 !important;
    box-shadow: none !important;
    border:solid 1px #0002;
    border-radius: 0;
    margin:0
}

.faq-section #faq-accordion-style .bg-gray-200 button {
    padding-block: 15px;
    
}

.faq-section #faq-accordion-style .bg-gray-200 button h3 {
    font-weight: 400 !important;
    font-size: 18px;
    font-family: Lato, sans-serif;
    color: #333
}

.faq-section #faq-accordion-style .bg-gray-200 button[style="background: linear-gradient(90deg, rgba(45,58,120,1) 0%, rgba(253,173,179,1) 130%)"] {
    background: #eef3f3 !important;
    border-bottom:solid 1px #0002;
}

.faq-section #faq-accordion-style .p-8 {
    background: #fff
}

@media(max-width:1023px) {
	.member-plan .benefits .flex .ry-each {
		flex-direction:column;
		align-items:center;
		justify-content:center;
	}
	.member-plan .benefits .flex .ry-each * {
		text-align: center
	}
	.member-plan .benefits > .ry-each {
		padding-inline:20px
	}
	.member-plan .benefits > .ry-each .title {
		height:80px;
		min-height:fit-content
	}
	.member-plan .benefits .flex .ry-each > div {
		width:100%
	}

	.member-plan .ry-full .flex {
		flex-direction:column
	}
	.member-plan .ry-full .flex > div {
		max-width:500PX;
		width:100%;
		margin-inline:auto
	}
	.faq-section, .member-plan .ry-full {
    padding: 60PX 0;
}
}

@media(max-width:767px) {
	.member-plan .benefits {
		flex-direction:column
	}
	.member-plan .benefits > .ry-each {
		max-width:500PX;
		width:100%;
		margin-inline:auto
	}
}

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

div#navigation .bg-primary-background {
    background-color: #fff;
}


#GlobalNavThree {
    position: fixed;
    width: 100%;
    max-width: 100%;
    background: transparent !important;
}

div#TopBanner {
    width: 100%;
    max-width: 100%;
    position: relative;
    z-index: 9;
}

#GlobalNavThree #navigation {
    position: relative;
    width: 100%;
    max-width: 100%;
}

div#navigation-style-3 {
    position: relative;
    z-index: 9;
}
