/* 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 <February 04, 2026> */

/**/
	/*fonts*/

	/*btns*/
/*Modal*/
/* Header */
	/**/
body[data-page-name="index"] #navigation {
    position: absolute;
}
mm-burger {
    color: #374151;
}

.cta-icon {
    border-color: #37415180;
}
.custom-hp-bg.background-section, .custom-hp-bg.background-section img {
    position: fixed;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    z-index: 1;
object-fit: cover;
}

.snap-mobile-menu {
    background: white;
    box-shadow: 0 0 7px #3333334d;
}
/* Hero */
	/**/

.with-gradient:before {
background-image: linear-gradient(to bottom, white, transparent, transparent);
}
/* CTA */
	/**/
/* Welcome */
	/**/
.module-welcome.style-5 {
    background: none;
    padding: 12.6vh 0;
}
.module-welcome.style-5 .ry-flex {
    flex-direction: row-reverse;
}
.module-welcome.style-5 .ry-each.image-wrapper {
    border: none;
    max-width: 100%;
}

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

.module-welcome.style-5 .ry-each:not(.image-wrapper) {
    max-width: calc(100% - 660px);
}

.module-welcome.style-5 .text-wrapper {
    max-width: 100%;
}

.module-welcome.style-5 .ry-container {
    width: 100%;
}
.module-welcome.style-5 .ry-text .ry-btn {
    margin-left: 0;
}
/* Services */
	/**/
#section-hp-services {position: relative;z-index: 1;}

#section-hp-services::before {
    background: var(--color-primary-background);
    height: 40%;
    top: auto;
    bottom: 0;
}

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

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

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

#services-12 > div:nth-child(even) > div > a, #services-12 > div:nth-child(odd) > div > a {
    width: 50px;
    height: 50px;
    background: var(--color-secondary-background);
    font-size: 25px;
    color: var(--color-primary-text);
}
/* Meet the Team */
	/**/
.ry-section.ry-hp-team {
    background: none;
}
/* Insurance */
	/**/
/* Brand */
	/**/
/* Request Appointment */
	/**/
/* Testimonials */
	/**/
/* Footer */
	/**/
/*Media Queries*/
	/**/
@media (max-width:1025px){
    .module-welcome.style-5 .ry-text .ry-btn {
        margin-left: auto;
    }
}
@media (max-width:1024px) {
    .with-gradient:before {
        opacity: 0;
    }
    
    #hp-slider, #hp-slider .swiper-wrapper, .homepage-swiper .swiper-slide img {
        height: 100% !important;
    }

    .module-welcome.style-5 .ry-each.image-wrapper {
        max-width: 100%;
    }
    
    .module-welcome.style-5 .ry-each.image-wrapper .photo {
        padding-bottom: 100%;
    }
    
    .module-welcome.style-5 .ry-flex {
        flex-direction: column;
    }
    
    .module-welcome.style-5 .ry-each:not(.image-wrapper) {
        max-width: 100%;
        padding: 0;
    }
    body[data-page-name="index"] #navigation {
        position: relative;
    }
}

@media (width < 1080px) {
    #section-hp-services:before, .module-19.style2:before, .ry-services.style2::before {
        opacity: 1;
    }
}

/* End - HP Edits*/







/* REALESTATE UPDATES*/
 
.ry-heading h2 {
    margin: 0;
}

.ry-text p {
    margin: 10px 0;
    font-weight: 400 !important;
}

.inner-content.ry-form {
    margin-top: 1em;
    padding: 40px;
    border: 1px solid rgb(12 13 25 / 8%);
}

.inner-content.ry-form input {
    width: 100% !important;
    margin-bottom: 10px;
}

.inner-content.ry-form h3 {
    margin: 0;
}

.inner-content.ry-form textarea {
    width: 100%;
    height: 150px;
    padding: 15px;
}

.inner-content.ry-form input.primary-btn {
    background: #121212;
    max-width: 150px;
    color: #fff;
    padding: 12px 35px;
    margin: 10px 0 0;
}

.idx-results-widget .properties-grid.list-view .property-photo {
    width: 400px;
    height: 250px;
    background-position: center;
    background-size: cover;
}

.hidden-md, .hidden-lg {
    display: none;
}
@media (min-width: 992px) and (max-width:1199px) {
    .hidden-md {
        display: none !important
    }
}

@media (min-width: 1200px) {
    .hidden-lg {
        display: none !important
    }
}

#ry-pg-body.galer {padding: 0;}

/* thumbnails */
#ry-pg-body .thumbnails_wrapper {
  background: #fff !important;
  padding: 10px 0;
  margin-top: 5px;
}

.thumbnails_wrapper .thumbnails {
  list-style: none;
  padding: 0;
  margin: 0;
  width: 100%;
  display: flex;
  gap: 6px;
  overflow-x: auto;
  scrollbar-width: thin;
}

#ry-pg-body .tiksluscarousel ul li {
    height: 600px !important;
    background: #f5f3f3 !important;
}

#ry-pg-body .tiksluscarousel ul li.thumb {
  height: 70px !important;
  width: 100px !important;
  min-width: 100px;
  border-radius: 6px;
  overflow: hidden;
  cursor: pointer;
  transition: opacity 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
  border: 2px solid transparent;
	padding: 0;
}

#ry-pg-body .tiksluscarousel ul li.thumb:hover {
  opacity: 0.85;
  transform: translateY(-2px);
  box-shadow: 0 2px 8px rgba(0,0,0,0.15);
}

#ry-pg-body .tiksluscarousel ul li.thumb.active,
#ry-pg-body .tiksluscarousel ul li.thumb.selected {
  opacity: 1;
  border-color: #5a9235;
  box-shadow: 0 0 0 1px #5a9235;
}

#ry-pg-body .tiksluscarousel ul li.thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media (max-width: 1024px) {
  #ry-pg-body .thumbnails_wrapper .thumbnails {
    height: 55px;
    overflow-y: hidden;
    overflow-x: auto;
    gap: 4px;
  }
  
  #ry-pg-body .tiksluscarousel ul li.thumb {
    height: 50px !important;
    min-width: 75px;
    width: 75px !important;
  }
}

.thumbnails_wrapper .thumbnails li.thumb a{height: 100%;}

/* END REALESTATE UPDATES*/

#ry-pg-body {
	padding: 0 !important;
}

#ry-sidebar #searchfield input {
    border-right: 1px solid #c6cfd6 !important;
}