/* @import url('https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&display=swap'); */
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,100..1000;1,9..40,100..1000&display=swap');
/********** Template CSS **********/
:root {
    /* --primary: #06A3DA; */
    /* --primary: #6fd46f; */
    --primary: #18242d;
    --secondary: #465459;
    --light: #EEF9FF;
    --white: #fff;
    --dark: #091E3E;
}

.bg-light {
    background-color: #f3f3f3 !important;
}



/*** Spinner ***/
.spinner {
    width: 40px;
    height: 40px;
    background: var(--primary);
    margin: 100px auto;
    -webkit-animation: sk-rotateplane 1.2s infinite ease-in-out;
    animation: sk-rotateplane 1.2s infinite ease-in-out;
}

@-webkit-keyframes sk-rotateplane {
    0% {
        -webkit-transform: perspective(120px)
    }
    50% {
        -webkit-transform: perspective(120px) rotateY(180deg)
    }
    100% {
        -webkit-transform: perspective(120px) rotateY(180deg) rotateX(180deg)
    }
}

@keyframes sk-rotateplane {
    0% {
        transform: perspective(120px) rotateX(0deg) rotateY(0deg);
        -webkit-transform: perspective(120px) rotateX(0deg) rotateY(0deg)
    }
    50% {
        transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg);
        -webkit-transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg)
    }
    100% {
        transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg);
        -webkit-transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg);
    }
}

#spinner {
    opacity: 0;
    visibility: hidden;
    transition: opacity .5s ease-out, visibility 0s linear .5s;
    z-index: 99999;
}

#spinner.show {
    transition: opacity .5s ease-out, visibility 0s linear 0s;
    visibility: visible;
    opacity: 1;
}
body {
    margin: 0;
    font-family: "DM Sans", sans-serif;
    font-size: 1.1rem !important;
    font-weight: 400;
    line-height: 1.5;
    color: #6b6a75;
    background-color: #fff;
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
    font-family: "DM Sans", sans-serif !important;
}


/*** Heading ***/
h1,
h2,
.fw-bold {
    font-weight: 800 !important;
}

h3,
h4,
.fw-semi-bold {
    font-weight: 700 !important;
}

h5,
h6,
.fw-medium {
    font-weight: 600 !important;
}


/*** Button ***/
.btn {
    font-family: "DM Sans", sans-serif;
    font-weight: 600;
    transition: .5s;
}

.btn-primary,
.btn-secondary {
    color: #FFFFFF;
    box-shadow: inset 0 0 0 50px transparent;
}

.btn-primary:hover {
    box-shadow: inset 0 0 0 0 var(--primary);
}

.btn-secondary:hover {
    box-shadow: inset 0 0 0 0 var(--secondary);
}

.btn-square {
    width: 36px;
    height: 36px;
}

.btn-sm-square {
    width: 30px;
    height: 30px;
}

.btn-lg-square {
    width: 48px;
    height: 48px;
}

.btn-square,
.btn-sm-square,
.btn-lg-square {
    padding-left: 0;
    padding-right: 0;
    text-align: center;
}


/*** Navbar ***/
.navbar-brand .default-logo{
    width: 90px;
}
.navbar-brand .sticky-logo{
    display: none;
}

.sticky-top .navbar-brand .sticky-logo{
    width: 90px;
    display: block;
}
.sticky-top .navbar-brand .default-logo{
    display: none;
}
.navbar-dark .navbar-nav .nav-link {
    font-family: "DM Sans", sans-serif;
    position: relative;
    margin-left: 25px;
    padding: 25px 0;
    color: #FFFFFF;
    font-size: 18px;
    font-weight: 600;
    outline: none;
    transition: .5s;
}
.navbar .navbar-nav ul{
    margin-bottom: 0;
    list-style: none;
    padding-left: 0;
}
.navbar button i{
    color: #fff !important;
}
.sticky-top button i{
    color: var(--primary) !important;
}


#searchModal .modal-content{
    background: rgb(9 30 62 / 90%) !important;
}
#searchModal button.btn.btn-primary{
    background: #8a989d !important;
}
#searchModal .border-primary {
    border-color: #8a989d !important;
}


@media (max-width: 992px){
     .navbar-brand .default-logo {
        width: 90px;
    }
    .dropdown-menu{
        margin-left: 25px;
    }

}
@media (min-width: 992px){
    .offcanvas-btn{
        display: none;
    }
    .offcanvas-search{
        display: none;
    }

}
.navbar .navbar-nav ul li{}
.navbar .navbar-nav ul li a{}
.sticky-top.navbar-dark .navbar-nav .nav-link {
    padding: 20px 0;
    color: var(--dark);
}

.navbar-dark .navbar-nav .nav-link:hover,
.navbar-dark .navbar-nav .nav-link.active {
    color: var(--white);
}
.sticky-top.navbar-dark .navbar-nav .nav-link:hover, .sticky-top.navbar-dark .navbar-nav .nav-link.active {
    color: var(--primary) !important;
}

.navbar-dark .navbar-brand h1 {
    color: #FFFFFF;
}

.navbar-dark .navbar-toggler {
    color: var(--primary) !important;
    border-color: var(--primary) !important;
}
.offcanvas-header img {
    height: 64px;
}
.offcanvas-start {
    width: 100% !important;
}




@media (max-width: 991.98px) {
    .sticky-top.navbar-dark {
        position: fixed;
        background: #FFFFFF;
        padding: .5rem 1rem !important;
    }
    .sticky-top .navbar-brand .sticky-logo {
        width: 90px;
        display: block;
    }
    .navbar-dark{
        padding: .5rem 1rem !important;
    }

    .navbar-dark .navbar-nav .nav-link,
    .navbar-dark .navbar-nav .nav-link.show,
    .sticky-top.navbar-dark .navbar-nav .nav-link {
        padding: 10px 0;
        color: var(--dark);
    }

    .navbar-dark .navbar-brand h1 {
        color: var(--primary);
    }
    .navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:focus {
        color: rgb(0 0 0 / 75%) !important;
    }
}

@media (min-width: 992px) {
    .navbar-dark {
        /* position: absolute; */
        background: rgba(24, 36, 48, 0.336);
        width: 100%;
        top: 0;
        left: 0;
        border-bottom: 1px solid rgba(256, 256, 256, .1);
        z-index: 999;
    }

    .sticky-top.navbar-dark {
        position: fixed;
        background: #FFFFFF;
    }

    .navbar-dark .navbar-nav .nav-link::before {
        position: absolute;
        content: "";
        width: 0;
        height: 2px;
        bottom: -1px;
        left: 50%;
        background: var(--white);
        transition: .5s;
    }

    .navbar-dark .navbar-nav .nav-link:hover::before,
    .navbar-dark .navbar-nav .nav-link.active::before {
        width: 100%;
        left: 0;
    }

    .navbar-dark .navbar-nav .nav-link.nav-contact::before {
        display: none;
    }

    .sticky-top.navbar-dark .navbar-brand h1 {
        color: var(--primary);
    }

}
@media (min-width: 300px){
    .navbar-dark {
        /* position: absolute; */
        background: rgb(24, 36, 48);
        width: 100%;
        top: 0;
        left: 0;
        border-top: 1px solid rgba(256, 256, 256, .1);
        z-index: 999;
    }
}


/*** Carousel ***/
.slider {
    position: relative;
    padding: 150px 0;
    background: url(../img/carousel-1.jpg) center center no-repeat;

}

.slider::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgb(24, 36, 45, .8);
}
.slider-btn{
    width: 50%;
}
.slider .carousel-inner{
    display: flex;
    align-items: center;
    height: 445px;
}
@media (max-width: 991px){
    .slider .carousel-inner{
        height: auto;
    }
}

.carousel-item {
    /* height: 445px; */
    align-items: center;
    display: flex;
}

.carousel-caption {
    position: static;
    display: flex;
    flex: 1;
}
.carousel-content {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 20px;
}
.carousel-content h5,
.carousel-content h1 {
    text-align: left;
}
.carousel-image {
    flex: 1;
    display: flex;
    justify-content: center;
    align-items: center;
}
.carousel-image img {
    max-width: 90%;
    height: auto;
}

@media (max-width: 992px) {
    .slider{
        padding: 85px 0 0 0;
    }
    .carousel-image{
        display: none;
    }
    .carousel-content{
        align-items: center;
    }

    .carousel-content h5,
.carousel-content h1 {
    text-align: center;
}
}


@media (max-width: 576px) {
    .carousel-caption h5 {
        font-size: 14px;
        font-weight: 500 !important;
        text-align: center;
    }

    .carousel-caption h1 {
        font-size: 30px;
        font-weight: 600 !important;
        text-align: center;
    }
    .slider {
        padding: 70px 0 0 0;
    }
    .carousel-item {
        min-height: auto;
        align-items: center;
    }

}

.carousel-control-prev,
.carousel-control-next {
    width: 10%;
}

.carousel-control-prev-icon,
.carousel-control-next-icon {
    width: 3rem;
    height: 3rem;
}


/*** Section Title ***/
.section-title::before {
    position: absolute;
    content: "";
    width: 150px;
    height: 5px;
    left: 0;
    bottom: 0;
    background: var(--secondary);
    border-radius: 2px;
}

.section-title.text-center::before {
    left: 50%;
    margin-left: -75px;
}

.section-title.section-title-sm::before {
    width: 90px;
    height: 3px;
}

.section-title::after {
    position: absolute;
    content: "";
    width: 6px;
    height: 5px;
    bottom: 0px;
    background: #FFFFFF;
    -webkit-animation: section-title-run 5s infinite linear;
    animation: section-title-run 5s infinite linear;
}

.section-title.section-title-sm::after {
    width: 4px;
    height: 3px;
}

.section-title.text-center::after {
    -webkit-animation: section-title-run-center 5s infinite linear;
    animation: section-title-run-center 5s infinite linear;
}

.section-title.section-title-sm::after {
    -webkit-animation: section-title-run-sm 5s infinite linear;
    animation: section-title-run-sm 5s infinite linear;
}

@-webkit-keyframes section-title-run {
    0% {left: 0; } 50% { left : 145px; } 100% { left: 0; }
}

@-webkit-keyframes section-title-run-center {
    0% { left: 50%; margin-left: -75px; } 50% { left : 50%; margin-left: 45px; } 100% { left: 50%; margin-left: -75px; }
}

@-webkit-keyframes section-title-run-sm {
    0% {left: 0; } 50% { left : 85px; } 100% { left: 0; }
}


/*** Service ***/
.service-item {
    position: relative;
    height: 300px;
    padding: 0 30px;
    transition: .5s;
}

.service-item .service-icon {
    margin-bottom: 30px;
    width: 60px;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--primary);
    border-radius: 2px;
    transform: rotate(-45deg);
}

.service-item .service-icon i {
    transform: rotate(45deg);
}

.service-item a.btn {
    position: absolute;
    width: 60px;
    bottom: -48px;
    left: 50%;
    margin-left: -30px;
    opacity: 0;
}

.service-item:hover a.btn {
    bottom: -24px;
    opacity: 1;
}


/*** Testimonial ***/
.testimonial-carousel .owl-dots {
    margin-top: 15px;
    display: flex;
    align-items: flex-end;
    justify-content: center;
}

.testimonial-carousel .owl-dot {
    position: relative;
    display: inline-block;
    margin: 0 5px;
    width: 15px;
    height: 15px;
    background: #DDDDDD;
    border-radius: 2px;
    transition: .5s;
}

.testimonial-carousel .owl-dot.active {
    width: 30px;
    background: var(--primary);
}

.testimonial-carousel .owl-item.center {
    position: relative;
    z-index: 1;
}

.testimonial-carousel .owl-item .testimonial-item {
    transition: .5s;
}

.testimonial-carousel .owl-item.center .testimonial-item {
    background: #FFFFFF !important;
    box-shadow: 0 0 30px #DDDDDD;
}


/*** Team ***/
.team-item {
    transition: .5s;
}

.team-social {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: .5s;
}

.team-social a.btn {
    position: relative;
    margin: 0 3px;
    margin-top: 100px;
    opacity: 0;
}

.team-item:hover {
    box-shadow: 0 0 30px #DDDDDD;
}

.team-item:hover .team-social {
    background: rgba(9, 30, 62, .7);
}

.team-item:hover .team-social a.btn:first-child {
    opacity: 1;
    margin-top: 0;
    transition: .3s 0s;
}

.team-item:hover .team-social a.btn:nth-child(2) {
    opacity: 1;
    margin-top: 0;
    transition: .3s .05s;
}

.team-item:hover .team-social a.btn:nth-child(3) {
    opacity: 1;
    margin-top: 0;
    transition: .3s .1s;
}

.team-item:hover .team-social a.btn:nth-child(4) {
    opacity: 1;
    margin-top: 0;
    transition: .3s .15s;
}

.team-item .team-img img,
.blog-item .blog-img img  {
    transition: .5s;
}

.team-item:hover .team-img img,
.blog-item:hover .blog-img img {
    transform: scale(1.15);
}


/*** Miscellaneous ***/
@media (min-width: 991.98px) {
    .facts {
        position: relative;
        margin-top: -75px;
        z-index: 1;
    }
}



/*--------------------------------------------------------------
# Concern
--------------------------------------------------------------*/
.our-concern .concern-item {
    background-color: #fff;
    box-shadow: 0px 5px 90px 0px rgba(0, 0, 0, 0.1);
    padding: 170px 32px 40px;
    transition: all ease-in-out 0.3s;
    border-radius: 5px;
    border-bottom: 5px solid var(--primary);
    height: 100%;
    border-color: var(--primary);
    position: relative;
  }
  .our-concern .concern-item img{
    position: absolute;
      height: 260px;
      top: -110px;
      left: 0px;
      right: 0px;
      margin-left: auto;
      margin-right: auto;
      border-radius: 5px;
      object-fit: cover;

  }
  .concern-col{
    margin: 150px 0px 0px;
  }


  .our-concern .concern-item h3 {
    font-weight: 700;
    margin: 10px 0 15px 0;
    font-size: 22px;
    transition: ease-in-out 0.3s;

  }
  .our-concern .concern-item h3 a{
    color: var(--primary) !important;
  }

  .our-concern .concern-item p {
    line-height: 24px;
    font-size: 14px;
    margin-bottom: 0;
  }
  .our-concern .concern-item .btn-explore{
    color: var(--white);
    background: var(--primary);
    padding: 6px 24px 6px 24px;
    display: inline-block;
    transition: 0.3s;
    border-radius: 50px;
    margin-top: 20px;
  }

  @media (min-width: 1365px) {
    .our-concern .concern-item:hover {
      transform: translateY(-10px);
      border-color: var(--primary);
      /* background: var(--accent-color); */
    }

    .our-concern .concern-item:hover h3 {
      color: var(--primary);
    }
  }






.back-to-top {
    position: fixed;
    display: none;
    right: 45px;
    bottom: 45px;
    z-index: 99;
}

.bg-header {
    background: linear-gradient(135deg, var(--bg-deep) 0%, var(--bg-mid) 100%);
    background-size: cover;
    /* padding: 30px 0 !important; */
}

.link-animated a {
    transition: .5s;
}

.link-animated a:hover {
    padding-left: 10px;
}

@media (min-width: 767.98px) {
    .footer-about {
        margin-bottom: -75px;
    }
}





/* coming soon */
.coming-soon {


    color: #131313;
    text-align: center;
    padding-bottom: 40px;
}
.coming-soon h1 {
    font-size: 3.5rem;
    font-weight: 700;
    letter-spacing: 1px;
    margin-bottom: 20px;
}
.coming-soon p {
    font-size: 1.2rem;
    max-width: 600px;
    margin: 0 auto;
}
.coming-soon .btn {
    margin-top: 30px;
    padding: 10px 25px;
    border-radius: 30px;
    font-size: 1rem;
    letter-spacing: 0.5px;
    background-color: #ff6f61;
    border: none;
}




/* project details */

.gslide-description.description-bottom {
    display: none !important;
}
.project-details .glightbox {
    cursor: pointer;
}

/* Property Overview Styling */
.property-box {
    background-color: #182430;
    color: #fff;
}

.property-box i {
    font-size: 20px;
    border: 1px solid #fff;
    padding: 5px 10px;
    color: #fff;
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.property-box p{
    font-size: 14px;
}
/* Contact Form Styling */
.contact-page .icon i{
    background: var(--primary);
    display: flex;
    align-items: center;
    justify-content: center;
    height: 60px;
    width: 60px;
    border-radius: 8px;
}
.contact-page h4{
    font-size: 20px;
}
.contact-box {
    background-color: #182430;
    color: #fff;
}

.form-control-dark {
    background-color: #182430;
    color: white;
    border: 1px solid #465660;
}

.form-control-dark::placeholder {
    color: #fff;
}


.contact .info-item {
    background-color: var(--surface-color);
    /* box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.1); */
    padding: 20px 15px 20px 15px;
    height: 100%;
    text-align: center;
    border: 1px solid #ddd;
    border-radius: 5px;
  }

  .contact .info-item i {
    font-size: 20px;
    color: #fff;
    width: 56px;
    height: 56px;
    font-size: 24px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 4px;
    transition: all 0.3s ease-in-out;
    border-radius: 50%;
    border: 2px dotted color-mix(in srgb, #fff, transparent 40%);
  }

  .contact .info-item h3 {
    font-size: 20px;
    color: #fff;
    font-size: 20px;
    font-weight: 700;
    margin: 10px 0;
  }

  .contact .info-item p {
    padding: 0;
    margin-bottom: 0;
    font-size: 16px;
    color: #fff;
  }
  .contact .info-items{
    background: var(--secondary);
    border-radius: 15px;
    padding: 5px 15px 25px 15px;
  }



/* Author Info Styling */
.author-box {
    background-color: #182430;
}

.author-box p {
    margin-bottom: 0.5rem;
}

.author-info {
    position: sticky;
    top: 120px;
    color: #fff;
    background: #465459 !important;
}
.author-info h3, h4{
    color: #fff;
}



/* Override Button Styles */
.btn-light {
    background-color: #FFFFFF;
    color: #fff;
    border-radius: 50px;
    padding: 8px 20px;
}

/* Image Gallery */
.gallery-section img {
    object-fit: cover;
}


.floor-plan img {
    max-width: 100%;
    height: auto;
}

.floor-plan .nav-pills .nav-link {
    border-radius: 30px;
    padding: 10px 20px;
    color: #091E3E;
}
.floor-plan .nav-pills .nav-link.active, .floor-plan .nav-pills .show > .floor-plan .nav-link{
    color: #fff;
    background-color: #6fd46f;
}

.floor-plan .tab-content {
    padding-top: 20px;
}


/* Style the play button */
.play-button-overlay {
    font-size: 4rem;
    color: rgba(255, 255, 255, 0.8);
    transition: transform 0.3s ease;
}

.video-thumbnail:hover .play-button-overlay {
    transform: scale(1.2); /* Scale up the icon on hover */
}

.play-button-overlay i {
    animation: pulse 2s infinite; /* Apply pulse animation */
}

/* Pulse animation */
@keyframes pulse {
    0% {
        transform: scale(1);
        opacity: 1;
    }
    50% {
        transform: scale(1.1);
        opacity: 0.7;
    }
    100% {
        transform: scale(1);
        opacity: 1;
    }
}




/* .granville-page */

/* Header Section */
.granville-page .bg-header {
    background: #edffed;
    color: #18242d;
}

/* Prime Location Section */
.granville-page .icon-primary {
    color: #3498db;
}

.granville-page .prime-location {
    padding: 3rem 1rem;
}

.granville-page .image-box {
    overflow: hidden;
    border-radius: 10px;
    transition: transform 0.3s;
}


/* Green & Spacious Living Section */
.granville-page .bg-green {
    background: linear-gradient(135deg, #6fd46f 100%, #6fd46f 100%);
    color: white;
}

.granville-page .green-living img {
    border-radius: 15px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2);
    transition: transform 0.3s;
}



/* Luxury Meets Sustainability Section */
.granville-page .feature-card {
    transition: transform 0.3s;
    background: #f7f9fa;
}

.granville-page .feature-card:hover {
    transform: translateY(-10px);
}

.granville-page .icon-wrapper {
    color: #e74c3c;
}

/* Modern Facilities Section */
.granville-page .facility-card {
    background: #fff;
    transition: transform 0.3s, box-shadow 0.3s;
    height: 100%;
}

.granville-page .facility-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
}

.granville-page .icon-green {
    color: #2ecc71;
}

.granville-page .icon-warning {
    color: #f39c12;
}

.granville-page .icon-info {
    color: #3498db;
}

.granville-page .cta-section .container{
    background: #182430;
    border-radius: 25px;
    padding: 60px 10px !important;
    color: #fff;
}

.granville-page .cta-section .btn-primary {
    background: var(--secondary);
    border: none;
    padding: 0.75rem 2rem;
    font-size: 1.25rem;
    transition: background 0.3s ease, transform 0.3s;
    color: #fff;
}



/* Responsive Styles */
@media (max-width: 768px) {
    .granville-page .prime-location,
    .granville-page .green-living,
    .granville-page .luxury-sustainability,
    .granville-page .modern-facilities,
    .granville-page .cta-section {
        padding: 2rem 1rem;
    }

    .granville-page h1, .granville-page h2 {
        font-size: 1.75rem;
    }
}




/* About Page Css */



.our-mission {
    background-color: var(--primary);
    overflow-x: hidden;

}

.our-mission .feature-card {
    padding: 70px 0;
    border-radius: 10px;
    z-index: 99;
}

.our-mission .feature-title {
    font-weight: bold;
    font-size: 1.5rem;
    margin-bottom: 20px;
    text-transform: uppercase;
}

.our-mission .feature-desc {
    font-size: 1.1rem;
    line-height: 1.7;
}

.our-mission .right-section {
    position: relative;
    background-color: var(--secondary);
    color: white;
    padding: 0;
}


.our-mission .right-section::before {
    content: "";
    position: absolute;
    top: 0;
    right: -1000%;
    bottom: 0;
    left: 100%;
    background-color: var(--secondary);
}

@media (max-width: 991.98px) {
    .our-mission .right-section::before {
        left: -1000px;

    }
    .our-mission .feature-card{
        text-align: center !important;
        padding: 60px 20px;
    }
}



.why-choose-us-section {

    padding: 2rem 0;
}
.why-choose-us-section .title {
    color: #333;
    font-weight: bold;
}
.why-choose-us-section .subtitle {
    color: #666;
    font-size: 1rem;
}
.why-choose-us-section .card-container {
    display: flex;
    justify-content: center;
    gap: 1.5rem;
    flex-wrap: wrap;
}
.why-choose-us-section .feature-card {
    box-shadow: 0px 0px 70px 0px rgba(255, 104, 83.99999999999999, 0.08);
    background-color: #FFFFFF;
    padding: 50px 40px 25px 40px;
    height: 100%;
    border-style: solid;
    border-width: 2px 2px 2px 2px;
    border-color: #FFFFFF;
    border-radius: 14px 14px 14px 14px;
    transition: .4s;

}
.why-choose-us-section .feature-card:hover {
    border-style: solid;
    border-width: 2px 2px 2px 2px;
    border-color: var(--primary);
}
.why-choose-us-section .feature-card.active {
    border-style: solid;
    border-width: 2px 2px 2px 2px;
    border-color: var(--primary);
}

.why-choose-us-section .feature-icon {
    font-size: 2.5rem;
    color: #333;
    margin-bottom: 10px;
    position: relative;
}
.why-choose-us-section .feature-number {
    position: absolute;
    top: -10px;
    right: -10px;
    background-color: #fff;
    border: 2px solid;
    border-radius: 50%;
    color: inherit;
    width: 30px;
    height: 30px;
    font-size: 0.9rem;
    display: flex;
    align-items: center;
    justify-content: center;
}
.why-choose-us-section .feature-title {
    font-size: 1.25rem;
    font-weight: bold;
    color: #333;
    padding: 12px;
}
.why-choose-us-section .feature-desc {
    color: #666;
    font-size: 0.95rem;
}
.why-choose-us-section .feature-card .feature-icon{
    display: flex;
    align-items: center;
    justify-content: center;
}

.why-choose-us-section .feature-card .feature-icon i{
    /* background: var(--primary); */
    border: 2px solid var(--primary);
    color: var(--primary);
    height: 80px;
    width: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 11px;
    padding-left: 10px;
}

.join-us-section{
    padding: 70px 0 !important;
}

.join-us-section .container{
    background: #182430;
    border-radius: 25px;
    padding: 60px 10px !important;
    color: #fff;
}


/* Custom slider css start */



       :root {
            /* Corporate Colors */
            --bg-deep: #182430;
            --bg-mid: #465459;
            --primary-gold: #D4AF37;
            --text-white: #ffffff;
            --text-gray: #c9c9c9;

            /* Gradient Colors */
            --soft-blue: rgba(137, 207, 240, 0.3);
            --soft-purple: rgba(177, 156, 217, 0.3);
            --soft-sea-green: rgba(152, 251, 152, 0.15);
        }


        /* Gold Gradient Text Effect */
        .text-gold {
            background: linear-gradient(to right, var(--primary-gold), #ffffff);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
        }

        /* --- Full Screen Slider --- */
        .real-estate-slider {
            height: 700px;
            /* min-height: 650px; */
            position: relative;
            background-color: var(--bg-deep);
        }

        .swiper {
            width: 100%;
            height: 100%;
        }

        .swiper-slide {
            position: relative;
            overflow: hidden;
            display: flex;
        }


        /* =========================================
            SLIDE GRADIENT STYLES (UPDATED)
           ========================================= */

        /* Slide 1: Diagonal Fade (Kept Original) */
        .swiper-slide.slide-1 {
            background-image: linear-gradient(135deg, var(--bg-deep) 0%, var(--bg-mid) 100%);
        }

        /* Slide 2: Radial Highlight (Soft Glassy Blue) */
        .swiper-slide.slide-2 {
            /* Radial glow from top left, soft blue tint blending into the deep background */
            background-image: radial-gradient(circle at top left, var(--soft-blue) 0%, var(--bg-deep) 70%);
        }

        /* Slide 3: Strong Horizontal Split (Soft Purple) */
        .swiper-slide.slide-3 {
            /* Horizontal fade from purple tint on the left to deep background on the right */
            background-image: linear-gradient(to right, var(--soft-purple) 0%, var(--bg-deep) 70%);
        }

        /* Slide 4: Vertical Depth Fade (Soft Sea Green) */
        .swiper-slide.slide-4 {
            /* Vertical fade from deep background at the top to sea green tint at the bottom */
            background-image: linear-gradient(to bottom, var(--bg-deep) 0%, var(--soft-sea-green) 100%);
        }

        /* Asset Placeholder Styles (Desktop Default) */
        .asset-placeholder {
            width: 100%;
            max-width: 450px;
            height: 80%;
            max-height: 600px;
            background: rgba(255, 255, 255, 0.05);
            border: 1px solid rgba(255, 255, 255, 0.1);
            border-radius: 8px;
            box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
            backdrop-filter: blur(2px);
            -webkit-backdrop-filter: blur(2px);
            display: flex;
            align-items: center;
            justify-content: center;
        }

        /* Ensure image fits inside the placeholder on desktop */
        .asset-placeholder img {
            max-width: 100%;
            max-height: 100%;
            object-fit: contain;
        }


        /* --- Content Animations --- */
        .animate-text {
            opacity: 0;
            transform: translateY(30px);
            transition: all 0.8s ease-out;
        }

        .swiper-slide-active .animate-text {
            opacity: 1;
            transform: translateY(0);
        }

        .delay-1 { transition-delay: 0.2s; }
        .delay-2 { transition-delay: 0.3s; }
        .delay-3 { transition-delay: 0.4s; }
        .delay-4 { transition-delay: 0.5s; }

        /* --- Specific Elements --- */
        .section-label {
            display: inline-flex;
            align-items: center;
            gap: 10px;
            font-size: 0.85rem;
            text-transform: uppercase;
            letter-spacing: 3px;
            color: var(--primary-gold);
            font-weight: 600;
            margin-bottom: 1.5rem;
        }

        .main-title {
            font-family: "DM Sans", sans-serif;
            font-size: 4rem;
            line-height: 1.1;
            font-weight: 700;
            margin-bottom: 2rem;
            color: white;
        }

        .description {
            font-size: 1.15rem;
            line-height: 1.8;
            color: var(--text-gray);
            margin-bottom: 3rem;
            max-width: 550px;
            font-weight: 300;
        }

        /* --- Buttons --- */
        .btn-classic {
            display: inline-block;
            padding: 18px 40px;
            background: transparent;
            border: 1px solid rgba(255,255,255,0.2);
            color: white;
            text-transform: uppercase;
            font-size: 0.8rem;
            letter-spacing: 2px;
            font-weight: 500;
            text-decoration: none;
            transition: all 0.3s ease;
            position: relative;
            z-index: 1;
            border-radius: 4px;
        }

        .btn-classic::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            width: 0;
            height: 100%;
            background: var(--primary-gold);
            z-index: -1;
            transition: width 0.3s ease;
        }

        .btn-classic:hover {
            border-color: var(--primary-gold);
            color: var(--bg-deep); /* Dark text on hover */
        }

        .btn-classic:hover::before {
            width: 100%;
        }

        /* --- Navigation --- */
        .slider-nav-container {
            position: absolute;
            bottom: 50px;
            left: 15%; /* Align with desktop content padding */
            z-index: 20;
            display: flex;
            align-items: center;
            gap: 20px;
        }

        .nav-btn {
            width: 50px;
            height: 50px;
            border: 1px solid rgba(255,255,255,0.15);
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            color: white;
            cursor: pointer;
            transition: all 0.3s;
            background: rgba(255,255,255,0.03);
        }

        .nav-btn:hover {
            background: var(--primary-gold);
            border-color: var(--primary-gold);
            color: var(--bg-deep);
        }

        /* Pagination Fraction */
        .fraction-pagination {
            font-family: "DM Sans", sans-serif;
            font-size: 1.5rem;
            color: white;
            min-width: 80px;
            text-align: center;
            font-style: italic;
        }

        .fraction-pagination span {
            color: var(--primary-gold);
            font-style: normal;
        }

        /* --- Progress Bar --- */
        .progress-container {
            position: absolute;
            bottom: 0;
            left: 0;
            width: 100%;
            height: 4px;
            background: rgba(255,255,255,0.1);
            z-index: 20;
        }

        .progress-bar-fill {
            height: 100%;
            background: var(--primary-gold);
            width: 0;
            transition: width 0.1s linear;
        }

        /* =========================================
            MOBILE RESPONSIVENESS
            ========================================= */
        @media (max-width: 991px) {

            .real-estate-slider .swiper-slide{
                padding-top: 50px;
                padding-bottom: 120px;
            }

            .real-estate-slider {
                        height: 550px;
                        /* min-height: auto; */
            }

            .main-title {
                font-size: 2.8rem;
                margin-bottom: 1.5rem;
            }

            .description {
                font-size: 1rem;
                margin-bottom: 2rem;
                max-width: 90%;
            }



            /* 2. Center Navigation */
            .slider-nav-container {
                left: 50%;
                transform: translateX(-50%);
                bottom: 40px;
                width: 100%;
                justify-content: center;
            }


            /* --- LOGIC FOR MOBILE BACKGROUND IMAGE --- */

            /* 1. Position the image column absolutely to cover the whole slide */
            .asset-col-bs {
                position: absolute;
                top: 0;
                left: 0;
                width: 100%;
                height: 100%;
                z-index: 0; /* Sit BEHIND the text */
                opacity: 0.15; /* Low opacity to blend with background color */
                pointer-events: none; /* Let clicks pass through to background */
                padding: 0 !important;
                display: flex !important; /* Force display flex even if hidden via bootstrap */
            }

            /* 2. Remove desktop-specific container styling */
            .asset-placeholder {
                width: 100%;
                height: 100%;
                max-width: none;
                max-height: none;
                background: transparent;
                border: none;
                box-shadow: none;
                backdrop-filter: none;
                -webkit-backdrop-filter: none;
            }

            /* 3. Force the image to cover the screen */
            .asset-placeholder img {
                width: 100%;
                height: 100%;
                object-fit: cover; /* This makes it act like background-size: cover */
                object-position: center;
            }


        }
