/*==================================
PROPERTY HERO
==================================*/
.property-image{
    position:relative;
    overflow:hidden;
}

.property-badge{

    position:absolute;

    top:18px;

    left:18px;

    padding:8px 18px;

    border-radius:30px;

    font-size:14px;

    font-weight:700;

    color:#fff;

    text-transform:uppercase;

    letter-spacing:.5px;

    z-index:10;

}
.property-badge.new{
    background:#28a745;
}
.property-hero{

   
    min-height: 300px;      /* Reduced from 550-600px */

    padding: 120px 0 80px;  /* Top | Left/Right | Bottom */

    display: flex;

    align-items: center;

    justify-content: center;

    overflow: hidden;
    background:url("")
    center center/cover no-repeat;

}

.hero-overlay{

    position:absolute;

    inset:0;

  

}

.property-hero .container{

    position:relative;

    z-index:2;

}

.hero-subtitle{

    color:#C89B3C;

    font-size:15px;

    font-weight:700;

    letter-spacing:4px;

}

.property-hero h1{

    color:#fff;

    font-size:65px;

    font-weight:800;

    margin:20px 0;

}

.property-hero h1 span{

    color:#C89B3C;

}

.property-hero p{

    color:#fff;

    font-size:18px;

    max-width:760px;

    margin:auto;

    line-height:1.8;

}

/*==================================
PROPERTY TABS
==================================*/

.property-tabs{

    display:flex;

    flex-wrap:wrap;

    gap:15px;

    justify-content:center;

    margin-bottom:50px;

}

.tab-btn{

    border:none;

    background:#fff;

    color:#0A2A5E;

    font-weight:600;

    padding:14px 28px;

    border-radius:50px;

    transition:.35s;

    border:2px solid #e5e5e5;

    box-shadow:0 5px 20px rgba(0,0,0,.05);

}

.tab-btn:hover{

    background:#C89B3C;

    color:#fff;

    border-color:#C89B3C;

    transform:translateY(-4px);

}

.tab-btn.active{

    background:#C89B3C;

    color:#fff;

    border-color:#C89B3C;

}

.property-item{

    transition:.45s;

}

.property-item.hide{

    display:none;

}
/*==================================
PROPERTY FILTER ANIMATION
==================================*/

.property-item{

    transition:all .35s ease;

    opacity:1;

    transform:scale(1);

}


/*==================================
FOOTER
==================================*/

.footer-overlay{

   display: none;
}

.footer .container{

    position:relative;

    z-index:2;

}

/*==================================
HEADINGS
==================================*/

.footer h3,

.footer h4{

    color:#fff;

    font-weight:700;

    margin-bottom:28px;

    position:relative;

}

.footer h4::after{

    content:"";

    position:absolute;

    left:0;

    bottom:-10px;

    width:55px;

    height:3px;

    background:#C89B3C;

    border-radius:20px;

    transition:.4s;

}

.footer h4:hover::after{

    width:90px;

}

/*==================================
LOGO
==================================*/

.footer-logo{

    width:180px;

    height:90px;

    background:#fff;

    border-radius:18px;

    display:flex;

    justify-content:center;

    align-items:center;

    margin-bottom:25px;

    animation:logoFloat 4s ease-in-out infinite;

    box-shadow:0 15px 40px rgba(0,0,0,.20);

}

.footer-logo img{

    max-width:140px;

}

/*==================================
ABOUT
==================================*/

.footer-about p{

     color:#D6D9E0;

    line-height:1.9;

    font-size:15px;

}

/*==================================
LINKS
==================================*/

.footer-links ul{

    list-style:none;

    padding:0;

    margin:0;

}

.footer-links li{

    margin-bottom:15px;

}

.footer-links a{

    color:rgba(255,255,255,.82);

    text-decoration:none;

    transition:.35s;

    display:inline-flex;

    align-items:center;

}

.footer-links a::before{

    content:"›";

    color:#C89B3C;

    margin-right:10px;

    transition:.35s;

}

.footer-links a:hover{

    color:#fff;

    transform:translateX(8px);

}

.footer-links a:hover::before{

    margin-right:15px;

}

/*==================================
CONTACT
==================================*/

.footer-item{

    display:flex;

    align-items:center;

    gap:15px;

    margin-bottom:18px;

    color:rgba(255,255,255,.82);

}

.footer-item i{

    width:42px;

    height:42px;

    background:rgba(255,255,255,.10);

    border:1px solid rgba(255,255,255,.10);

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    color:#C89B3C;

    transition:.4s;

}

.footer-item:hover i{

    background:#C89B3C;

    color:#071B4B;

    transform:rotate(360deg);

}

/*==================================
SOCIAL
==================================*/

.footer-social{

    display:flex;

    gap:14px;

    margin-top:30px;

}

.footer-social a{

    width:46px;

    height:46px;

    border-radius:50%;

    background:rgba(255,255,255,.10);

    display:flex;

    justify-content:center;

    align-items:center;

    color:#fff;

    text-decoration:none;

    transition:.4s;

}

.footer-social a:hover{

    background:#C89B3C;

    color:#071B4B;

    transform:translateY(-6px);

    box-shadow:0 12px 25px rgba(200,155,60,.35);

}

/*==================================
COPYRIGHT
==================================*/

.footer-bottom{

    margin-top:18px;

    padding:25px 0;

    border-top:1px solid rgba(255,255,255,.10);

}

.footer-bottom p{

    margin:0;

    color:rgba(255,255,255,.75);

    font-size:15px;

}

.footer-bottom strong{

    color:#C89B3C;

}

/*==================================
ANIMATION
==================================*/

@keyframes logoFloat{

    0%{

        transform:translateY(0);

    }

    50%{

        transform:translateY(-8px);

    }

    100%{

        transform:translateY(0);

    }

}

/*==================================
RESPONSIVE
==================================*/

@media(max-width:991px){

.footer{

padding:70px 0 0;

text-align:center;

}

.footer h4::after{

left:50%;

transform:translateX(-50%);

}

.footer-item{

justify-content:center;

}

.footer-social{

justify-content:center;

}

.footer-logo{

margin:0 auto 25px;

}

.footer-bottom{

text-align:center;

}

}



/*==================================
FLOATING WHATSAPP
==================================*/

.whatsapp-float{

    position:fixed;

    right:25px;

    bottom:25px;

    width:65px;

    height:65px;

    background:#25D366;

    color:#fff;

    border-radius:50px;

    display:flex;

    align-items:center;

    justify-content:center;

    text-decoration:none;

    z-index:9999;

    box-shadow:0 12px 30px rgba(37,211,102,.45);

    transition:.35s;

    overflow:hidden;

}

.whatsapp-float i{

    font-size:34px;

    flex-shrink:0;

}

.whatsapp-float span{

    max-width:0;

    overflow:hidden;

    white-space:nowrap;

    font-size:16px;

    font-weight:600;

    transition:.35s;

    margin-left:0;

}

.whatsapp-float:hover{

    width:210px;

    justify-content:flex-start;

    padding-left:20px;

}

.whatsapp-float:hover span{

    max-width:140px;

    margin-left:12px;

}

.whatsapp-float:hover{

    color:#fff;

    transform:translateY(-6px);

}

.whatsapp-float::before{

    content:"";

    position:absolute;

    inset:0;

    border-radius:50px;

    animation:whatsappPulse 2s infinite;

    border:2px solid rgba(37,211,102,.5);

}

@keyframes whatsappPulse{

    0%{

        transform:scale(1);

        opacity:1;

    }

    100%{

        transform:scale(1.6);

        opacity:0;

    }

}

/* Mobile */

@media(max-width:768px){

.whatsapp-float{

width:60px;

height:60px;

right:15px;

bottom:15px;

}

.whatsapp-float:hover{

width:60px;

padding-left:0;

justify-content:center;

}

.whatsapp-float span{

display:none;

}

}

.propertyhero-video{

    position:absolute;

    inset:0;

    width:100%;

    height:100%;

    object-fit:cover;

    z-index:-2;

}

/*==================================
GALLERY SECTION
==================================*/

.gallery-section{

    padding:100px 0;

    background:#fff;

}

/*==================================
GALLERY FILTER TABS
==================================*/

.gallery-tabs{

    display:flex;

    flex-wrap:wrap;

    justify-content:center;

    gap:18px;

    margin-bottom:60px;

}

.gallery-tab-btn{

    border:none;

    outline:none;

    padding:16px 34px;

    border-radius:50px;

    background:#fff;

    color:var(--primary);

    font-size:18px;

    font-weight:600;

    cursor:pointer;

    transition:.4s;

    box-shadow:0 8px 25px rgba(0,0,0,.08);

}

.gallery-tab-btn:hover{

    transform:translateY(-5px);

    color:#fff;

    background:linear-gradient(135deg,#E6B325,#C48A00);

}

.gallery-tab-btn.active{

    color:#fff;

    background:linear-gradient(135deg,#F4C84A,#D59A18,#B87A00);

    box-shadow:0 12px 30px rgba(212,155,25,.35);

}

/*==================================
GALLERY CARD
==================================*/

.gallery-card{

    position:relative;

    overflow:hidden;

    border-radius:22px;

    box-shadow:0 18px 40px rgba(0,0,0,.12);

    transition:.5s;

}

.gallery-card img{

    width:100%;

    height:320px;

    object-fit:cover;

    transition:.7s;

}

.gallery-card:hover img{

    transform:scale(1.12);

}

/*==================================
OVERLAY
==================================*/

.gallery-card-overlay{

    position:absolute;

    inset:0;

    background:linear-gradient(

        rgba(10,42,94,.10),

        rgba(10,42,94,.92)

    );

    display:flex;

    justify-content:space-between;

    align-items:flex-end;

    padding:28px;

    opacity:0;

    transition:.45s;

}

.gallery-card:hover .gallery-card-overlay{

    opacity:1;

}

/*==================================
PLUS ICON
==================================*/

.gallery-card-overlay i{

    width:65px;

    height:65px;

    background:#fff;

    color:var(--secondary);

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:24px;

    transition:.4s;

}

.gallery-card:hover .gallery-card-overlay i{

    transform:rotate(180deg) scale(1.08);

    background:var(--secondary);

    color:#fff;

}

/*==================================
TEXT
==================================*/

.gallery-card-overlay h5{

    color:#fff;

    font-size:24px;

    font-weight:700;

    margin-bottom:4px;

}

.gallery-card-overlay span{

    color:#ddd;

    font-size:15px;

}

/*==================================
CARD HOVER
==================================*/

.gallery-card:hover{

    transform:translateY(-10px);

    box-shadow:0 28px 60px rgba(0,0,0,.22);

}

/*==================================
RESPONSIVE
==================================*/

@media(max-width:991px){

    .gallery-card img{

        height:280px;

    }

}

@media(max-width:768px){

    .gallery-tabs{

        overflow-x:auto;

        flex-wrap:nowrap;

        justify-content:flex-start;

        padding-bottom:10px;

        scrollbar-width:none;

    }

    .gallery-tabs::-webkit-scrollbar{

        display:none;

    }

    .gallery-tab-btn{

        white-space:nowrap;

        flex-shrink:0;

    }

    .gallery-card img{

        height:240px;

    }

}

/*=========================
Gallery Hero
==========================*/

.gallery-hero{

    position:relative;

   

    display:flex;

    align-items:center;

    overflow:hidden;

   background: transparent;
    overflow: hidden;
  padding-bottom:0;

    margin-bottom:0;

}

/* Slider */

#galleryHeroSlider{

    position:absolute;

    inset:0;

    z-index:1;

}

#galleryHeroSlider img{

    height:430px;

    object-fit:cover;

}

.gallery-overlay{

    position:absolute;

    inset:0;

   background: rgb(10 42 95 / 51%);

    z-index:2;

}

.gallery-hero .container{

    position:relative;

    z-index:5;

}

/* Left */

.gallery-hero .hero-subtitle{

    color:#d6a33c;

    letter-spacing:6px;

    font-size:15px;

    font-weight:600;

}

.gallery-hero h1{

    color:#fff;

    font-size:54px;

    font-weight:800;

    line-height:1.15;

    margin:18px 0;

}

.gallery-hero h1 span{

    color:#d6a33c;

}

.gallery-hero p{

    color:#f1f1f1;

    font-size:18px;

    line-height:1.8;

    max-width:520px;

    margin-bottom:30px;

}

/* Right */

.hero-image-box{

    display:flex;

    justify-content:center;

}

.diamond-border{

    width:290px;

    height:290px;

    border:2px dashed rgba(255,255,255,.45);

    transform:rotate(45deg);

    border-radius:28px;

    display:flex;

    justify-content:center;

    align-items:center;

}

.hero-side-image{

    width:220px;

    height:220px;

    object-fit:cover;

    border-radius:25px;

    border:8px solid #fff;

    transform:rotate(-45deg);

    box-shadow:0 25px 50px rgba(0,0,0,.3);

}