*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:'Poppins',sans-serif;
}

body{
background:#F8FAFC;
}

.custom-navbar{

background:rgba(15,23,42,.75);

backdrop-filter:blur(18px);

padding:18px 0;

transition:.4s;
}

.logo{

font-size:30px;

font-weight:800;

color:#fff!important;
}

.logo span{

color:#F59E0B;
}

.nav-link{

color:#fff!important;

margin-left:25px;

font-weight:500;

transition:.4s;
}

.nav-link:hover{

color:#F59E0B!important;
}

.hero{

height:100vh;

background:url('../images/hero.jpg');

background-size:cover;

background-position:center;

position:relative;
}

.overlay{

position:absolute;

width:100%;

height:100%;

background:rgba(0,0,0,.60);
}

.hero .container{

position:relative;

z-index:2;
}

.hero h1{

font-size:65px;

font-weight:800;

color:#fff;
}

.hero p{

font-size:20px;

color:#ddd;

margin-top:25px;

line-height:35px;
}

.sub-title{

color:#F59E0B;

font-weight:600;

letter-spacing:2px;

text-transform:uppercase;
}

.btn-warning{

padding:15px 35px;

font-weight:600;

border-radius:50px;
}

.navbar-toggler{
    border:1px solid rgba(255,255,255,.25);
    width:45px;
    height:45px;
    border-radius:10px;
    display:flex;
    align-items:center;
    justify-content:center;
}

.navbar-toggler i{
    color:#fff;
    font-size:22px;
}

.navbar-toggler:focus{
    box-shadow:none;
}

@media(max-width:991px){

    .custom-navbar{
        background:#0F172A;
    }

    .navbar-collapse{
        background:#0F172A;
        margin-top:15px;
        padding:20px;
        border-radius:15px;
    }

    .navbar-nav .nav-link{
        margin-left:0;
        padding:12px 0;
        border-bottom:1px solid rgba(255,255,255,.08);
    }

    .navbar-nav .nav-link:last-child{
        border-bottom:none;
    }

    .navbar .btn{
        width:100%;
        margin-top:15px;
    }
}

.search-section{
margin-top:-70px;
position:relative;
z-index:10;
}

.search-box{
background:#fff;
padding:35px;
border-radius:20px;
box-shadow:0 15px 45px rgba(0,0,0,.12);
}

.form-select{
height:55px;
border-radius:12px;
}

.btn-search{
height:55px;
background:#2563EB;
color:#fff;
border-radius:12px;
font-weight:600;
}

.btn-search:hover{
background:#0F172A;
color:#fff;
}

.section-title h2{

font-size:42px;

font-weight:700;

color:#0F172A;
}

.section-title p{

color:#666;

margin-top:10px;
}

.category-card{

background:#fff;

padding:35px 20px;

border-radius:20px;

text-align:center;

transition:.4s;

box-shadow:0 10px 30px rgba(0,0,0,.08);
}

.category-card:hover{

transform:translateY(-8px);

background:#2563EB;

color:#fff;
}

.category-card i{

font-size:40px;

margin-bottom:20px;
}

.property-card{

background:#fff;

border-radius:20px;

overflow:hidden;

box-shadow:0 10px 35px rgba(0,0,0,.08);

transition:.4s;
}

.property-card:hover{

transform:translateY(-8px);
}

.property-image{

position:relative;

overflow:hidden;
}

.property-image img{

width:100%;

height:250px;

object-fit:cover;

transition:.5s;
}

.property-card:hover img{

transform:scale(1.08);
}

.featured-badge{

position:absolute;

top:15px;

left:15px;

background:#F59E0B;

color:#fff;

padding:8px 18px;

border-radius:30px;

font-size:13px;
}

.property-content{

padding:25px;
}

.property-content h3{

color:#2563EB;

font-weight:700;
}

.property-info{

display:flex;

justify-content:space-between;

margin-top:20px;

font-size:14px;

color:#555;
}

.feature-box{
background:#fff;
padding:35px;
text-align:center;
border-radius:20px;
box-shadow:0 10px 30px rgba(0,0,0,.08);
transition:.4s;
height:100%;
}

.feature-box:hover{
background:#2563EB;
color:#fff;
transform:translateY(-8px);
}

.feature-box i{
font-size:45px;
color:#F59E0B;
margin-bottom:20px;
}

.feature-box:hover i{
color:#fff;
}

.counter-section{
background:#0F172A;
color:#fff;
padding:70px 0;
}

.counter-section h2{
font-size:45px;
font-weight:700;
color:#F59E0B;
}

.city-card{
position:relative;
overflow:hidden;
border-radius:20px;
}

.city-card img{
width:100%;
height:300px;
object-fit:cover;
transition:.5s;
}

.city-card:hover img{
transform:scale(1.08);
}

.city-overlay{
position:absolute;
bottom:0;
width:100%;
padding:30px;
background:linear-gradient(transparent,rgba(0,0,0,.9));
color:#fff;
}

.testimonial-card{
background:#fff;
padding:30px;
border-radius:20px;
text-align:center;
box-shadow:0 10px 30px rgba(0,0,0,.08);
}

.testimonial-card img{
width:90px;
height:90px;
border-radius:50%;
margin-bottom:20px;
}

.stars{
color:#F59E0B;
font-size:18px;
margin-bottom:15px;
}

.cta-section{
background:#2563EB;
padding:90px 0;
color:#fff;
text-align:center;
}

.cta-section h2{
font-size:45px;
font-weight:700;
margin-bottom:20px;
}

.footer{
background:#0F172A;
color:#fff;
padding:70px 0 20px;
}

.footer ul{
list-style:none;
padding:0;
}

.footer li{
margin:10px 0;
}

.footer a{
color:#ddd;
text-decoration:none;
}

.footer a:hover{
color:#F59E0B;
}

.footer hr{
border-color:rgba(255,255,255,.15);
margin:40px 0 20px;
}

/*==========================
Page Banner
===========================*/

.page-banner{

height:350px;

background:url('../images/banner.jpg');

background-size:cover;

background-position:center;

position:relative;

display:flex;

align-items:center;

justify-content:center;

}

.page-banner .overlay{

position:absolute;

left:0;

top:0;

width:100%;

height:100%;

background:rgba(15,23,42,.75);

}

.banner-content{

position:relative;

z-index:2;

text-align:center;

color:#fff;

}

.banner-content h1{

font-size:50px;

font-weight:700;

}

.breadcrumb{

background:none;

}

.breadcrumb a{

color:#F59E0B;

text-decoration:none;

}

/*==========================
Filter
===========================*/

.property-filter{

margin-top:-60px;

position:relative;

z-index:5;

}

.filter-box{

background:#fff;

padding:30px;

border-radius:18px;

box-shadow:0 10px 40px rgba(0,0,0,.10);

}

/*==========================
Badges
===========================*/

.property-badges{

position:absolute;

left:15px;

top:15px;

display:flex;

gap:10px;

}

.featured{

background:#F59E0B;

padding:6px 15px;

color:#fff;

border-radius:30px;

font-size:12px;

}

.sale{

background:#198754;

padding:6px 15px;

color:#fff;

border-radius:30px;

font-size:12px;

}

/*==========================
Wishlist
===========================*/

.wishlist{

position:absolute;

right:15px;

top:15px;

width:42px;

height:42px;

background:#fff;

border-radius:50%;

display:flex;

align-items:center;

justify-content:center;

cursor:pointer;

}

.wishlist:hover{

background:#2563EB;

color:#fff;

}

/*==========================
Agent
===========================*/

.agent{

display:flex;

align-items:center;

gap:10px;

}

.agent img{

width:40px;

height:40px;

border-radius:50%;

}

/*==========================
Pagination
===========================*/

.page-link{

padding:12px 18px;

margin:5px;

border-radius:10px;

}

.page-item.active .page-link{

background:#2563EB;

border-color:#2563EB;

}

.gallery{
margin-bottom:30px;
}

.main-image{
width:100%;
height:520px;
object-fit:cover;
border-radius:20px;
}

.thumb{
width:100%;
height:110px;
object-fit:cover;
cursor:pointer;
border-radius:12px;
transition:.3s;
}

.thumb:hover{
transform:scale(1.05);
}

.property-meta{
display:flex;
flex-wrap:wrap;
gap:20px;
margin-top:20px;
font-weight:500;
}

.amenity{
padding:15px;
background:#F8FAFC;
border-radius:10px;
}

.sidebar-card{
position:sticky;
top:100px;
background:#fff;
padding:30px;
border-radius:20px;
box-shadow:0 10px 35px rgba(0,0,0,.08);
}

.price{
color:#2563EB;
font-weight:700;
margin-bottom:25px;
}

.agent-box{
text-align:center;
margin-bottom:25px;
}

.agent-box img{
width:90px;
height:90px;
border-radius:50%;
margin-bottom:15px;
}

/* =========================================================
   OUR MANAGEMENT TEAM
========================================================= */

.management-section{
    width:100%;
    background:#ffffff;
    padding:80px 0;
}

.management-section .section-title{
    text-align:center;
    margin-bottom:50px;
}

.management-section .section-label{
    display:inline-block;
    color:#f59e0b;
    font-size:13px;
    font-weight:700;
    letter-spacing:2px;
    text-transform:uppercase;
    margin-bottom:12px;
}

.management-section .section-label::before{
    content:"";
    display:inline-block;
    width:35px;
    height:3px;
    background:#f59e0b;
    margin-right:10px;
    vertical-align:middle;
}

.management-section .section-title h2{
    color:#0f172a;
    font-size:42px;
    line-height:1.2;
    font-weight:700;
    margin:0 0 12px 0;
}

.management-section .section-title p{
    color:#64748b;
    font-size:16px;
    margin:0;
}


/* =========================================================
   TEAM CARD
========================================================= */

.management-section .team-card{
    width:100%;
    background:#ffffff;
    border:1px solid #e5e7eb;
    border-radius:18px;
    overflow:hidden;
    text-align:center;
    box-shadow:0 10px 30px rgba(15,23,42,0.08);
    transition:all 0.35s ease;
}

.management-section .team-card:hover{
    transform:translateY(-8px);
    box-shadow:0 20px 45px rgba(15,23,42,0.15);
}


/* =========================================================
   TEAM IMAGE - IMPORTANT
========================================================= */

.management-section .team-image{
    width:100%;
    height:270px;
    padding:10px;
    overflow:hidden;
    background:#f8fafc;
}

.management-section .team-image img{
    display:block !important;
    width:100% !important;
    height:250px !important;
    max-width:100% !important;
    max-height:250px !important;
    object-fit:cover !important;
    object-position:center top;
    border-radius:12px;
    margin:0 !important;
    padding:0 !important;
    transition:transform 0.5s ease;
}

.management-section .team-card:hover .team-image img{
    transform:scale(1.05);
}


/* =========================================================
   TEAM CONTENT
========================================================= */

.management-section .team-content{
    width:100%;
    padding:20px 15px 25px;
}

.management-section .team-content h4{
    color:#0f172a;
    font-size:18px;
    font-weight:700;
    margin:0 0 5px 0;
}

.management-section .team-content p{
    color:#64748b;
    font-size:14px;
    margin:0 0 16px 0;
}


/* =========================================================
   SOCIAL ICONS
========================================================= */

.management-section .team-social{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:8px;
}

.management-section .team-social a{
    width:34px;
    height:34px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#f1f5f9;
    color:#475569;
    border-radius:50%;
    text-decoration:none;
    font-size:14px;
    transition:all 0.3s ease;
}

.management-section .team-social a:hover{
    background:#2563eb;
    color:#ffffff;
    transform:translateY(-3px);
}


/* =========================================================
   TABLET
========================================================= */

@media(max-width:991px){

    .management-section{
        padding:65px 0;
    }

    .management-section .section-title h2{
        font-size:36px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media(max-width:767px){

    .management-section{
        padding:55px 0;
    }

    .management-section .section-title{
        margin-bottom:35px;
    }

    .management-section .section-title h2{
        font-size:30px;
    }

    .management-section .section-title p{
        font-size:14px;
        padding:0 15px;
    }

    .management-section .team-image{
        height:300px;
    }

    .management-section .team-image img{
        height:280px !important;
        max-height:280px !important;
    }

}