/*--------------------------------------------------------------
# INDEX PAGE - SPS INFO SECTION
--------------------------------------------------------------*/
.sps-info .spsinfo-card {
border: 1px solid #ddd;
padding: 20px;
transition: all 0.3s ease;
}
.sps-info .spsinfo-card:hover {
border: 1px solid #ddd;
border-left: 3px solid var(--accent-color);
box-shadow: 0 0 20px rgba(241, 241, 241, 0.1);
}
.sps-info .spsinfo-icon {
color: var(--accent-color);
font-size: 24px;
margin-right: 15px;
}
.sps-info .spsinfo-cardtitle {
font-weight: 500;
}
.sps-info .spsinfo-card:hover .spsinfo-cardtitle{
font-weight: 700;
}
.sps-info .spsinfo-title {
font-size: 1.5rem;
font-weight: 500;
margin-bottom: 30px;
text-align: center;
letter-spacing:1px;
}
.sps-info .spsinfo-title:hover{
color:var(--accent-color);
}
.sps-info .spsinfo-desc {
font-size: 0.825rem;
text-align: center;
margin-bottom: 30px;
}
.sps-info .images-wrapper img {
max-width: 65%;
max-height: 100%;
/* border-radius: 10px; */
}
/*--------------------------------------------------------------
# INDEX PAGE - SPS PROPERTY SECTION
--------------------------------------------------------------*/
.sps-property .spsproperty-title {
font-size: 1.5rem;
font-weight: 500;
text-align: center;
letter-spacing: 1px;
}
.sps-property .spsproperty-title:hover{
color:var(--accent-color);
}
.sps-property .property-card{
border-bottom:3px solid #ccc;
}
.sps-property .property-card:hover{
border-bottom:3px solid var(--accent-color);
}
.sps-property .property-card .carousel-item img {
height: 200px;
object-fit: cover;
}
.sps-property .property-card  .property-tag {
z-index: 10;
font-size: 0.75rem;
/* border-radius: 0.25rem; */
letter-spacing: 0.5px;
}
.sps-property .property-card h5 , .sps-property .property-card p{
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.sps-property .property-card h5{
font-size:14px;
}
.sps-property .property-card p{
font-size:12px;
}
.sps-property .property-card .price {
color: #212529;
font-weight: bold;
font-size: 1rem;
font-family:"Montserrat",  sans-serif;
}
.sps-property .property-card .meta span {
margin-right: 1rem;
}
.sps-property .property-card .carousel-indicators [data-bs-target] {
width: 5px;
height: 5px;
border-radius: 50%;
}
/*--------------------------------------------------------------
# INDEX PAGE - SPS TESTIMONIALS SECTION
--------------------------------------------------------------*/
.sps-testimonials {
position: relative;
padding: 60px 0;
z-index: 1;
}
.sps-testimonials::before {
content: "";
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 60%;
background-color: #f1f1f1;
z-index: -1;
}
.sps-testimonials .spstestimonials-title {
font-size: 1.5rem;
font-weight: 500;
margin-bottom: 30px;
text-align: center;
letter-spacing:1px;
}
.sps-testimonials .spstestimonials-title:hover{
color:var(--accent-color);
}
.sps-testimonials .testimonial-card {
background-color: #ffffff;
border-radius: 5px;
box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
border-bottom: 4px solid #ddd;
padding: 25px;
transition: all 0.3s ease-in-out;
height: 100%;
}
.sps-testimonials .testimonial-card:hover{
border-bottom: 4px solid var(--accent-color);
}
.sps-testimonials .testimonial-card .testimonial-quote {
color: var(--accent-color);
font-size: 24px;
margin-bottom: 10px;
}
.sps-testimonials .testimonial-card .testimonial-text {
font-size: 14px;
color: #555;
}
.sps-testimonials .testimonial-card .testimonial-footer {
display: flex;
align-items: center;
margin-top: 20px;
}
.sps-testimonials .testimonial-card .testimonial-avatar {
width: 40px;
height: 40px;
border-radius: 50%;
background-color: #ddd;
/* background-image:url('https://images.unsplash.com/photo-1600585154340-be6161a56a0c?auto=format&fit=crop&w=800&q=80');
background-size: cover; */
margin-right: 15px;
}
.sps-testimonials .testimonial-card .testimonial-name {
font-weight: bold;
font-size: 15px;
margin-bottom: 2px;
}
.sps-testimonials .testimonial-card .testimonial-role {
font-size: 12px;
color: #888;
}
@media (max-width: 767px) {
.sps-testimonials .testimonial-card .testimonial-title {
font-size: 1.5rem;
margin-bottom: 30px;
}
.sps-testimonials {
padding: 60px 0;
}
.sps-testimonials::before {
height: 70%;
}
}
/*--------------------------------------------------------------
# PROPERTY PAGE  - SPS PROPERTY SECTION
--------------------------------------------------------------*/
.sps-property .search-form-wrapper {
max-width: 400px;
margin: 0 auto;
border: 1px solid #ddd;
border-radius: 5px;
overflow: hidden;
}
.sps-property .search-form-wrapper .form-header {
background-color: #ddd;
text-align: center;
padding: 0.5rem;
font-weight: 700;
font-size: 1rem;
font-family: "Montserrat", sans-serif !important;
}
.sps-property .search-form-wrapper .btn-selector{
border:1px solid #ccc;
height:20px;
width:20px;
display: flex;
align-items: center;
justify-content: center;
}
.sps-property .search-form-wrapper .btn-selector:hover{
border:1px solid var(--accent-color);
background-color: var(--accent-color);
color:#fff;
}
.sps-property .search-form-wrapper .btn-search {
background-color: var(--accent-color);
color: #fff;
font-size: 14px;
font-weight: bold;
}
.sps-property .search-form-wrapper .btn-search:hover {
background-color: var(--accent-color);
color: #fff;
}
.sps-property .search-form-wrapper label {
font-size: 14px;
width:50%;
}
/* Dual Range Slider Styling */
.sps-property .search-form-wrapper .range-container {
position: relative;
height: 10px;
}
.sps-property .search-form-wrapper .range-container input[type="range"] {
position: absolute;
width: 100%;
pointer-events: none;
-webkit-appearance: none;
height: 2px;
background: #ccc;
}
.sps-property .search-form-wrapper input[type="range"]::-webkit-slider-thumb {
pointer-events: auto;
-webkit-appearance: none;
height: 16px;
width: 16px;
border-radius: 50%;
background: var(--accent-color);
border: none;
margin-top: -6px;
}
.sps-property .search-form-wrapper input[type="range"]::-moz-range-thumb {
pointer-events: auto;
height: 16px;
width: 16px;
border-radius: 50%;
background: var(--accent-color);
border: none;
}
.sps-property .search-form-wrapper .slider-track {
position: absolute;
height: 4px;
background-color: var(--accent-color);
/* top: 50%; */
transform: translateY(-50%);
z-index: 1;
}
.sps-property .search-form-wrapper .range-labels {
display: flex;
justify-content: space-between;
font-size: 0.875rem;
margin-top: -10px;
}
.sps-property .search-form-wrapper select.form-select {
font-size: 12px;
}
.sps-property .search-form-wrapper select.form-select:focus {
outline: none !important;
box-shadow: none !important;
border-color: #ced4da !important; /* default Bootstrap border */
}
/*--------------------------------------------------------------
# PROPERTY INFO PAGE - SPS PROPERTY INFO SECTION
--------------------------------------------------------------*/
.sps-propertyinfo .sps-propertyinfodesc .feature-icon {
font-size: 1.5rem;
color: #333;
}
.sps-propertyinfo .sps-propertyinfodesc .feature-label {
font-weight: 600;
margin-bottom: 0;
}
.sps-propertyinfo .sps-propertyinfodesc .feature-value {
color: #6c757d;
font-size: 0.9rem;
}
.sps-propertyinfo .sps-propertyinfodesc .desc-content {
display: -webkit-box;
-webkit-line-clamp: 5;
-webkit-box-orient: vertical;
overflow: hidden;
transition: all 0.3s ease;
max-height: 7.5em; 
text-align: justify;
}

.sps-propertyinfo .sps-propertyinfodesc .desc-content.expanded {
-webkit-line-clamp: unset;
max-height: none;
}
.sps-propertyinfo .printFile{
width: 50px; 
height: 50px; 
bottom: 50px !important; 
background: var(--accent-color); 
z-index: 1030; 
color: #ffffff;
}
.sps-propertyinfo .btn-backsearch{
border:1px solid var(--accent-color);
border-radius:5px;
}
.sps-propertyinfo .btn-backsearch:hover{
color:#fff !important;
background-color: var(--accent-color);
}
.sps-propertyinfo .sps-propertyinfophotos .gallery-img {
width: 100%;
height: 100%;
object-fit: cover;
border-radius: 3px;
}
.sps-propertyinfo .sps-propertyinfophotos  .img-size {
height: 120px ;
}
.sps-propertyinfo .sps-propertyinfophotos .overlay-more {
position: absolute;
inset: 0;
background: rgba(0, 0, 0, 0.3);
color: #fff;
font-size: 1.25rem;
font-weight: bold;
display: flex;
align-items: center;
justify-content: center;
border-radius: 3px;
width: 80%;
margin: 0 auto;
}
@media (min-width:768px){
    .sps-propertyinfo .sps-propertyinfodesc .prop-name{
        width:50%;
    }
}
@media (max-width:440px){
    .sps-propertyinfo .sps-propertyinfophotos  .img-size {
    height: 80px ;
}
}
/*--------------------------------------------------------------
# REAL ESTATE SERVICES PAGE - SPS REAL ESTATE SECTION
--------------------------------------------------------------*/
.real-estate .nav-pills .nav-link {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
text-align: center;
position: relative;
font-size:12px;
font-family:"Montserrat",  sans-serif;
border:1px solid var(--accent-color);
padding:5px;
font-weight:600;
}
.real-estate .nav-pills .nav-link.active {
background-color: var(--accent-color);
color: #fff !important;
font-weight:700;
}
.real-estate .nav-pills .nav-link.active::after {
content: "▼";
font-size: 0.8rem;
color: #fff;
margin-top: 4px;
position: absolute;
top: 18px;
color: var(--accent-color);
}
.real-estate .btn-listinghome{
color:#555;
border:1px solid var(--accent-color);
font-size:12px;
}
.real-estate .btn-listinghome:hover{
background-color: var(--accent-color);
color:white;
font-weight:600;
}
.real-estate .card-img-top {
height: 150px;
object-fit: cover;
}
.real-estate .icon-container {
position: relative;
}

.real-estate .icon-container img {
transition: opacity 0.3s ease;
}

.real-estate .default-icon {
display: block;
}

.real-estate .hover-icon {
display: none;
}

.real-estate .card:hover .default-icon {
display: none;
}

.real-estate .card:hover .hover-icon {
display: block;
}
.real-estate .real-estate-title{
font-size: 1.5rem;
font-weight: 500;
margin-bottom: 30px;
text-align: center;
letter-spacing: 1px;
}
.real-estate .real-estate-title:hover{
color:var(--accent-color);
}
.real-estate .card{
border-bottom:3px solid #cccccc;
}
.real-estate .card:hover{
border-bottom:3px solid var(--accent-color);
}
.real-estate .card .card-text{
font-size: 1rem;
font-weight: 500;
margin-bottom: 30px;
text-align: center;
font-family:"Montserrat",  sans-serif;
}
.real-estate .card:hover .card-text{
color:var(--accent-color);
/* font-weight:700; */
}
.real-estate .card p{
text-align:center;
}
.real-estate .card .profile-teamcard {
position: relative;
transition: border 0.3s ease;
border-radius: 8px;
}
.real-estate .card .profile-teamcard:hover {
border-bottom: 3px solid var(--accent-color);
}
.real-estate .card .circle-teamcursor {
position: absolute;
width: 24px;
height: 24px;
border: 2px solid var(--accent-color);
border-radius: 50%;
pointer-events: none;
transform: translate(-50%, -50%);
display: none;
z-index: 10;
}
.real-estate .card .circle-teamdot {
width: 6px;
height: 6px;
background: var(--accent-color);
border-radius: 50%;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}
.real-estate .card .social-teamicons a {
color: #ccc;
margin-right: 8px;
}
.real-estate .card .social-teamicons a:hover {
color: var(--accent-color);
border-radius: 50%;
}

@media screen and (max-width: 440px) {
.real-estate .nav-pills .nav-link.active::after {
display: none;
}
}
/*--------------------------------------------------------------
# CONTACT US PAGE - SPS CONTACT SECTION
--------------------------------------------------------------*/
.contact-info .contactinfo-title {
font-size: 1.5rem;
font-weight: 500;
margin-bottom: 30px;
text-align: center;
letter-spacing: 1px;
}
.contact-info .contactinfo-title:hover{
color:var(--accent-color);
}
.contact-info .contactinfo-desc {
font-size: 0.825rem;
text-align: center;
margin-bottom: 30px;
}
/*--------------------------------------------------------------
# PRIVACY-POLICY PAGE - SPS PRIVACY POLICY SECTION
--------------------------------------------------------------*/
.privacy-policy ul{
left:15px;
}
/*--------------------------------------------------------------
# REAL ESTATE SERVICES PAGE - SPS PROJECTS SECTION
--------------------------------------------------------------*/
.ip-projects .cards{
border-bottom: 3px solid #ddd !important;
}
.ip-projects .cards p{
display: -webkit-box;
-webkit-line-clamp: 2; 
-webkit-box-orient: vertical;
overflow: hidden;
text-overflow: ellipsis;
}
.ip-projects .cards:hover{
border-bottom: 3px solid var(--accent-color) !important;    
}
.ip-projects .cards:hover h5{
color:var(--accent-color);
font-weight: 600;
}