@font-face {
    font-family: 'FiraGo';
    font-style: normal;
    font-weight: 100;
    font-display: auto;
    src: url('../fonts/FiraGO-Hair.ttf') format('truetype');
}

@font-face {
    font-family: 'FiraGo';
    font-style: normal;
    font-weight: 200;
    font-display: auto;
    src: url('../fonts/FiraGO-Thin.ttf') format('truetype');
}

@font-face {
    font-family: 'FiraGo';
    font-style: normal;
    font-weight: 300;
    font-display: auto;
    src: url('../fonts/FiraGO-Light.ttf') format('truetype');
}

@font-face {
    font-family: 'FiraGo';
    font-style: normal;
    font-weight: 400;
    font-display: auto;
    src: url('../fonts/FiraGO-Regular.ttf') format('truetype');
}

@font-face {
    font-family: 'FiraGo';
    font-style: normal;
    font-weight: 500;
    font-display: auto;
    src: url('../fonts/FiraGO-Medium.ttf') format('truetype');
}

@font-face {
    font-family: 'FiraGo';
    font-style: normal;
    font-weight: 600;
    font-display: auto;
    src: url('../fonts/FiraGO-SemiBold.ttf') format('truetype');
}

@font-face {
    font-family: 'FiraGo';
    font-style: normal;
    font-weight: 700;
    font-display: auto;
    src: url('../fonts/FiraGO-Bold.ttf') format('truetype');
}

@font-face {
    font-family: 'FiraGo';
    font-style: normal;
    font-weight: 800;
    font-display: auto;
    src: url('../fonts/FiraGO-ExtraBold.ttf') format('truetype');
}

@font-face {
    font-family: 'FiraGo';
    font-style: normal;
    font-weight: 900;
    font-display: auto;
    src: url('../fonts/FiraGO-Heavy.ttf') format('truetype');
}

:root {

    --primary: #0F172A;
    --secondary: #334155;
    --gold: #C9A14A;
    --gold-hover: #B98A28;

    --text: #1E293B;
    --gray: #64748B;

    --border: #E2E8F0;

    --bg: #F8FAFC;

    --white: #ffffff;

    --radius: 18px;

    --shadow: 0 15px 45px rgba(15, 23, 42, .08);

    --transition: .35s ease;

}



* {

    margin: 0;

    padding: 0;

    box-sizing: border-box;

}

html {

    scroll-behavior: smooth;

}

body {

    font-family: 'FiraGO', sans-serif;

    /* background: var(--bg); */

    color: var(--text);

    overflow-x: hidden;

    line-height: 1.7;

}

img {

    max-width: 100%;

    display: block;

}

a {

    text-decoration: none;

    transition: var(--transition);

}

.preloader {
    position: fixed;
    inset: 0;
    background: #fff;
    z-index: 99999;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: .6s;
}

.preloader.loaded {
    opacity: 0;
    visibility: hidden;
}

.loader-circle {
    width: 60px;
    height: 60px;
    border: 4px solid #eee;
    border-top: 4px solid #D5A243;
    border-radius: 50%;
    animation: spin 1s linear infinite;
}

@keyframes spin {

    to {
        transform: rotate(360deg);
    }

}

ul {

    padding: 0;

    margin: 0;

    list-style: none;

}

button {

    border: none;

    background: none;

}

input,

select,

textarea {

    box-shadow: none !important;

    outline: none !important;

}

.section-padding {

    padding: 120px 0;

}

.container {

    max-width: 1320px;

}



h1,
h2,
h3,
h4,
h5 {

    font-family: 'FiraGO', serif;

    font-weight: 700;

    color: var(--primary);

    margin-bottom: 0;
    font-feature-settings: 'case'on;

}

h1 {

    font-size: 72px;

    line-height: 1.1;

}

h2 {

    font-size: 46px;

}

h3 {

    font-size: 30px;

}

h4 {

    font-size: 24px;

}

h5 {

    font-size: 20px;

}

p {

    color: var(--gray);

    margin-bottom: 0;

}

.section-title {

    margin-top: 12px;

    margin-bottom: 15px;

}

.section-subtitle {

    display: inline-block;

    padding: 8px 18px;

    background: #FFF8EA;

    border-radius: 50px;

    color: var(--gold);

    font-weight: 600;

    font-size: 14px;

    letter-spacing: 1px;

    text-transform: uppercase;

}



.btn-main {

    display: inline-flex;

    align-items: center;

    justify-content: center;

    padding: 16px 34px;

    border-radius: 14px;

    background: var(--gold);

    color: #fff;

    font-weight: 600;

    transition: .35s;

}

.btn-main:hover {

    background: var(--gold-hover);

    transform: translateY(-3px);

    color: #fff;

    box-shadow: 0 15px 35px rgba(201, 161, 74, .35);

}

.btn-list {

    background: var(--gold);

    color: #fff;

    padding: 13px 26px;

    border-radius: 14px;

    font-weight: 600;

}

.btn-list:hover {

    background: var(--gold-hover);

    color: #fff;

}

.view-all {

    display: flex;

    align-items: center;

    gap: 10px;

    font-weight: 600;

    color: var(--primary);

}

.view-all i {

    transition: .35s;

}

.view-all:hover i {

    transform: translateX(6px);

}





.section-header {

    display: flex;

    justify-content: space-between;

    align-items: end;

    margin-bottom: 20px;

}



.property-card,

.agent-card,

.blog-card,

.city-card,

.testimonial-card {

    background: #fff;

    border-radius: 22px;

    overflow: hidden;

    box-shadow: var(--shadow);

    transition: .4s;

}

.property-card:hover,

.agent-card:hover,

.blog-card:hover,

.city-card:hover {

    transform: translateY(-10px);

    box-shadow: 0 30px 70px rgba(15, 23, 42, .12);

}


.property-image,

.agent-image,

.blog-card img {

    overflow: hidden;

}

.property-image img,

.agent-image img,

.blog-card img {

    transition: .6s;

}

.property-card:hover img,

.agent-card:hover img,

.blog-card:hover img {

    transform: scale(1.08);

}


/*=========================================
HEADER
=========================================*/

.main-header {

    position: fixed;

    top: 0;

    left: 0;

    width: 100%;

    z-index: 9999;

    padding: 18px 0;

    transition: .4s ease;

}

.main-header.scrolled {

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

    backdrop-filter: blur(18px);

    -webkit-backdrop-filter: blur(18px);

    box-shadow: 0 15px 45px rgba(15, 23, 42, .08);

    padding: 12px 0;

}

.navbar {

    padding: 0;

}

.navbar-brand {

    padding: 0;

}

.navbar-brand img {

    height: 48px;

    transition: .35s;

}

.navbar-nav {

    gap: 12px;

}

.navbar-nav .nav-link {

    position: relative;

    padding: 10px 14px !important;

    font-size: 15px;

    font-weight: 600;

    color: #fff;

    transition: .35s;
    font-feature-settings: 'case'on;

}

.main-header.scrolled .navbar-nav .nav-link {

    color: var(--primary);

}

.navbar-nav .nav-link::after {

    content: "";

    position: absolute;

    left: 50%;

    bottom: 0;

    width: 0;

    height: 2px;

    background: var(--gold);

    transition: .35s;

    transform: translateX(-50%);

}

.navbar-nav .nav-link:hover::after,

.navbar-nav .nav-link.active::after {

    width: 70%;

}

.navbar-nav .nav-link:hover {

    color: var(--gold);

}

.header-actions {

    display: flex;

    align-items: center;

    gap: 14px;

    margin-left: 25px;

}


.header-icon {

    width: 46px;

    height: 46px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

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

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

    color: #fff;

    font-size: 18px;

    transition: .35s;

    backdrop-filter: blur(12px);

}

.main-header.scrolled .header-icon {

    background: #fff;

    border: 1px solid var(--border);

    color: var(--primary);

}

.header-icon:hover {

    background: var(--gold);

    color: #fff;

    transform: translateY(-4px);

}

.language-btn {

    height: 46px;

    padding: 0 18px;

    border-radius: 50px;

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

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

    color: #fff;

    font-weight: 600;
    font-size: 15px;

    backdrop-filter: blur(12px);

}

.btn-list svg {
    margin-right: 10px;
}

.main-header.scrolled .language-btn {

    background: #fff;

    color: var(--primary);

    border: 1px solid var(--border);

}

.language-btn:hover {

    background: var(--gold);

    color: #fff;

}

.btn-list {

    height: 48px;

    display: flex;

    align-items: center;

    padding: 0 28px;

    border-radius: 50px;

    background: var(--gold);

    color: #fff;

    font-weight: 600;

    transition: .35s;
    font-feature-settings: 'case'on;
    font-size: 15px;

}

.btn-list:hover {

    background: var(--gold-hover);

    transform: translateY(-4px);

    box-shadow: 0 20px 35px rgba(201, 161, 74, .35);

    color: #fff;

}

.navbar-toggler {

    border: none;

    box-shadow: none !important;

    padding: 0;

}

.navbar-toggler i {

    font-size: 34px;

    color: #fff;

}

.main-header.scrolled .navbar-toggler i {

    color: var(--primary);

}

@media(max-width:1199px) {

    .navbar-collapse {

        margin-top: 25px;

        padding: 25px;

        background: #fff;

        border-radius: 20px;

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

    }

    .navbar-nav {

        gap: 5px;

    }

    .navbar-nav .nav-link {

        color: var(--primary) !important;

        padding: 12px 0 !important;

    }

    .header-actions {

        margin-top: 20px;

        margin-left: 0;

        justify-content: flex-start;

    }

}

.main-header .navbar-brand img {

    transition: .4s;

}

.main-header.scrolled .navbar-brand img {

    transform: scale(.92);

}

/*=========================================
HERO
=========================================*/

.hero-section {

    position: relative;

    /* min-height: 100vh; */

    display: flex;

    align-items: center;

    overflow: hidden;

    padding-top: 120px;
    padding-bottom: 120px;

}

.hero-bg {

    position: absolute;

    inset: 0;

    z-index: 1;

}

.hero-bg img {

    width: 100%;

    height: 100%;

    object-fit: cover;

    animation: heroZoom 18s linear infinite alternate;

}

.hero-overlay {

    position: absolute;

    inset: 0;

    background: linear-gradient(90deg,
            rgba(15, 23, 42, .82) 0%,
            rgba(15, 23, 42, .60) 45%,
            rgba(15, 23, 42, .30) 100%);

    z-index: 2;

}

.hero-section .container {

    position: relative;

    z-index: 3;

}

.hero-content {

    max-width: 670px;

    color: #fff;

}

.hero-badge {

    display: inline-flex;

    align-items: center;

    padding: 10px 20px;

    border-radius: 50px;

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

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

    backdrop-filter: blur(15px);

    font-size: 14px;

    font-weight: 600;

    letter-spacing: 1px;

    margin-bottom: 30px;

}

.hero-content h1 {

    font-size: 52px;

    line-height: 1.08;

    font-weight: 800;

    color: #fff;

    margin-bottom: 10px;

}

.hero-content h1 span {

    color: var(--gold);

}

.hero-content p {

    font-size: 16px;

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

    max-width: 600px;

    margin-bottom: 45px;

    line-height: 1.8;

}

.hero-stats {

    display: flex;

    gap: 24px;

    margin-top: -20px;

    flex-wrap: wrap;

}

.hero-stat {

    display: flex;

    align-items: center;

    gap: 18px;

    padding: 18px 22px;

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

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

    border-radius: 18px;

    backdrop-filter: blur(18px);

    min-width: 185px;

    transition: .35s;

}

.hero-stat:hover {

    transform: translateY(-8px);

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

}

.hero-stat .icon {

    width: 56px;

    height: 56px;

    border-radius: 16px;

    display: flex;

    align-items: center;

    justify-content: center;

    background: var(--gold);

    color: #fff;

    font-size: 22px;

}

.hero-stat strong {

    display: block;

    font-size: 26px;

    color: #fff;

}

.hero-stat small {

    display: block;

    font-size: 14px;

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

}

.featured-property {

    position: relative;

    background: #fff;

    border-radius: 28px;

    overflow: hidden;

    box-shadow: 0 35px 90px rgba(0, 0, 0, .25);

    transition: .45s;

}

.featured-property:hover {

    transform: translateY(-10px);

}

.featured-property img {

    width: 100%;

    height: 320px;

    object-fit: cover;

    transition: .6s;

}

.featured-property:hover img {

    transform: scale(1.08);

}

.property-body {

    padding: 30px;

}

.property-body h4 {

    font-size: 28px;

    margin-bottom: 12px;

}

.property-body h2 {

    font-size: 42px;

    margin: 18px 0;

    color: var(--gold);

}

.property-body p {

    display: flex;

    align-items: center;

    gap: 8px;

    margin-bottom: 12px;

}

.property-info {

    display: flex;

    justify-content: space-between;

    margin-top: 25px;

    padding-top: 20px;

    border-top: 1px solid var(--border);

}

.property-info span {

    display: flex;

    align-items: center;

    gap: 8px;

    font-size: 14px;

    font-weight: 600;

    color: var(--gray);

}

.property-info i {

    color: var(--gold);

}

.property-body a {

    display: inline-flex;

    align-items: center;

    gap: 12px;

    margin-top: 28px;

    font-weight: 700;

    color: var(--primary);

}

.property-body a i {

    transition: .35s;

}

.property-body a:hover i {

    transform: translateX(8px);

}

.vip-badge {

    position: absolute;

    top: 25px;

    left: 25px;

    background: var(--gold);

    color: #fff;

    padding: 10px 18px;

    border-radius: 50px;

    font-size: 13px;

    font-weight: 700;

    z-index: 5;

}

.wishlist {

    position: absolute;

    top: 22px;

    right: 22px;

    width: 48px;

    height: 48px;

    border-radius: 50%;

    display: flex;

    align-items: center;

    justify-content: center;

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

    color: var(--primary);

    z-index: 5;

    transition: .35s;

}

.wishlist:hover {

    background: #EF4444;

    color: #fff;

}

@keyframes heroZoom {

    0% {

        transform: scale(1);

    }

    100% {

        transform: scale(1.12);

    }

}

@media(max-width:991px) {

    .hero-section {

        padding: 80px 0 80px;

        min-height: auto;

    }

    .hero-content {

        text-align: center;

        margin-bottom: 60px;

        max-width: 100%;

    }

    .hero-content h1 {

        font-size: 48px;

    }

    .hero-content p {

        margin: auto auto 40px;

    }

    .hero-stats {

        justify-content: center;

    }

    .featured-property {

        max-width: 520px;

        margin: auto;

    }

}

@media(max-width:576px) {

    .hero-content h1 {

        font-size: 38px;

    }

    .hero-stat {

        width: 100%;

    }

    .property-info {

        flex-direction: column;

        gap: 12px;

    }

}

/*=========================================
SEARCH BOX
=========================================*/

.search-wrapper {

    position: relative;

    margin-top: -90px;

    z-index: 20;

}

.search-box {

    background: #fff;
    border-radius: 28px;
    padding: 30px;
    box-shadow: 0 30px 80px rgba(15, 23, 42, .10);
    border: 1px solid rgba(255, 255, 255, .8);
    position: relative;
    overflow: hidden;

}

.search-box::before {

    content: "";

    position: absolute;

    top: 0;

    left: 0;

    width: 100%;

    height: 5px;

    background: linear-gradient(90deg, var(--gold), #f7d37b, var(--gold));

}

.search-box label {

    display: block;

    margin-bottom: 5px;

    font-size: 14px;

    font-weight: 700;

    color: var(--primary);

    text-transform: uppercase;

    letter-spacing: .5px;

}

.search-box .form-control,
.search-box .form-select {

    height: 50px;

    border-radius: 16px;

    border: 1px solid var(--border);

    padding: 0 20px;

    font-size: 15px;

    background: #fff;

    transition: .35s;
    cursor: pointer;
}

.search-box .form-control:hover,
.search-box .form-select:hover {

    border-color: var(--gold);

}

.search-box .form-control:focus,
.search-box .form-select:focus {

    border-color: var(--gold);

    box-shadow: 0 0 0 4px rgba(201, 161, 74, .12) !important;

}

.search-box .form-range {

    margin-top: 18px;

    cursor: pointer;

}

.form-range::-webkit-slider-thumb {

    background: var(--gold);

    width: 20px;

    height: 20px;

}

.form-range::-moz-range-thumb {

    background: var(--gold);

    border: none;

    width: 20px;

    height: 20px;

}

.search-btn {

    height: 60px;

    width: 100%;

    border-radius: 16px;

    background: var(--gold);

    color: #fff;

    font-weight: 700;

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 10px;

    transition: .35s;

}

.search-btn:hover {

    background: var(--gold-hover);

    transform: translateY(-3px);

    box-shadow: 0 20px 40px rgba(201, 161, 74, .35);

}

.advanced-search {

    margin-top: 30px;

    display: flex;

    justify-content: flex-end;

}

.advanced-search button {

    display: inline-flex;

    align-items: center;

    gap: 10px;

    padding: 12px 22px;

    border-radius: 50px;

    background: #F8FAFC;

    border: 1px solid var(--border);

    font-weight: 600;

    color: var(--primary);

    transition: .35s;

}

.advanced-search button:hover {

    background: var(--gold);

    color: #fff;

    border-color: var(--gold);

}

.search-field {

    position: relative;

}

.search-field i {

    position: absolute;

    left: 18px;

    top: 50%;

    transform: translateY(-50%);

    color: var(--gray);

    font-size: 18px;

    pointer-events: none;

}

.search-field .form-control,
.search-field .form-select {

    padding-left: 52px;

}

@media(max-width:991px) {

    .search-wrapper {

        margin-top: 50px;

    }

    .search-box {

        padding: 30px;

    }

    .advanced-search {

        justify-content: center;

    }

}

@media(max-width:576px) {

    .search-box {

        padding: 22px;

        border-radius: 20px;

    }

    .search-btn {

        margin-top: 10px;

    }

}

/*=========================================
FEATURED PROPERTIES
=========================================*/

.featured-section {

    background: #fff;

    position: relative;

    overflow: hidden;

}

.featured-section::before {

    content: "";

    position: absolute;

    top: -180px;

    right: -180px;

    width: 420px;

    height: 420px;

    background: rgba(201, 161, 74, .06);

    border-radius: 50%;

}

.featured-section::after {

    content: "";

    position: absolute;

    bottom: -180px;

    left: -180px;

    width: 360px;

    height: 360px;

    background: rgba(15, 23, 42, .03);

    border-radius: 50%;

}

.featuredSwiper {

    padding: 10px 8px 70px;

    overflow: visible;

}

.featuredSwiper .swiper-slide {

    height: auto;

}

.property-card {

    background: #fff;

    border-radius: 24px;

    overflow: hidden;

    box-shadow: 0 20px 55px rgba(15, 23, 42, .08);

    transition: .4s;

    height: 100%;

    border: 1px solid #EEF2F7;

}

.property-card:hover {

    transform: translateY(-12px);

    box-shadow: 0 35px 80px rgba(15, 23, 42, .14);

}

.property-image {

    position: relative;

    overflow: hidden;

    height: 240px;

}

.property-image img {

    width: 100%;

    height: 100%;

    object-fit: cover;

    transition: .7s;

}

.property-card:hover .property-image img {

    transform: scale(1.1);

}

.badge-vip,

.badge-featured,

.badge-sale {

    position: absolute;

    top: 20px;

    left: 20px;

    padding: 8px 18px;

    border-radius: 50px;

    font-size: 12px;

    font-weight: 700;

    color: #fff;

    z-index: 5;

}

.badge-vip {

    background: #C9A14A;

}

.badge-featured {

    background: #0F172A;

}

.badge-sale {

    background: #EF4444;

}

.favorite-btn {

    position: absolute;

    right: 18px;

    top: 18px;

    width: 46px;

    height: 46px;

    border-radius: 50%;

    display: flex;

    align-items: center;

    justify-content: center;

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

    color: var(--primary);

    font-size: 18px;

    transition: .35s;

    z-index: 5;

}

.favorite-btn:hover {

    background: #EF4444;

    color: #fff;

    transform: scale(1.1);

}

.property-content {

    padding: 17px;

}

.property-content h3 {

    font-size: 22px;

    color: var(--gold);

    /* margin-bottom: 12px; */

}

.property-content h4 {

    font-size: 18px;

    margin-bottom: 5px;

}

.property-content p {

    display: flex;

    align-items: center;

    gap: 8px;

    margin-bottom: 6px;

    color: var(--gray);
    font-size: 13px;

}

.property-meta {

    display: flex;

    justify-content: space-between;

    padding: 6px 0;

    border-top: 1px solid #EDF2F7;

    border-bottom: 1px solid #EDF2F7;

    margin-bottom: 6px;
    font-size: 12px;

}

.property-meta span {

    display: flex;

    align-items: center;

    gap: 8px;

    font-size: 14px;

    font-weight: 600;

    color: #64748B;

}

.property-meta i {

    color: var(--gold);

    font-size: 16px;

}

.property-footer {

    display: flex;

    justify-content: space-between;

    align-items: center;

}

.agent {

    display: flex;

    align-items: center;

    gap: 14px;

}

.agent img {

    width: 42px;

    height: 42px;

    border-radius: 50%;

    object-fit: cover;

}

.agent strong {

    display: block;

    font-size: 15px;

    color: var(--primary);

}

.agent small {

    display: block;

    color: #64748B;

}

.property-link {

    width: 50px;

    height: 50px;

    border-radius: 50%;

    display: flex;

    align-items: center;

    justify-content: center;

    background: #F8FAFC;

    color: var(--primary);

    transition: .35s;

}

.property-link:hover {

    background: var(--gold);

    color: #fff;

    transform: rotate(-45deg);

}

.swiper-button-next,

.swiper-button-prev {

    width: 56px;

    height: 56px;

    border-radius: 50%;

    background: #fff;

    box-shadow: 0 15px 40px rgba(15, 23, 42, .08);

    color: var(--primary);

}

.swiper-button-next:after,

.swiper-button-prev:after {

    font-size: 18px;

    font-weight: 700;

}

.swiper-button-next:hover,

.swiper-button-prev:hover {

    background: var(--gold);

    color: #fff;

}

.swiper-pagination-bullet {

    width: 12px;

    height: 12px;

    background: #CBD5E1;

    opacity: 1;

}

.swiper-pagination-bullet-active {

    width: 34px;

    border-radius: 50px;

    background: var(--gold);

}

@media(max-width:991px) {

    .property-meta {

        flex-wrap: wrap;

        gap: 15px;

    }

    .property-content {

        padding: 22px;

    }

    .property-image {

        height: 240px;

    }

}

@media(max-width:576px) {

    .property-content h3 {

        font-size: 28px;

    }

    .property-content h4 {

        font-size: 21px;

    }

    .property-footer {

        flex-direction: column;

        align-items: flex-start;

        gap: 20px;

    }

    .property-link {

        width: 100%;

        border-radius: 14px;

    }

}

/*=========================================
LATEST PROPERTIES
=========================================*/

.latest-properties {

    background: var(--bg);

    position: relative;

    overflow: hidden;
    padding:60px 0px;

}

.latest-properties::before {

    content: "";

    position: absolute;

    top: -150px;

    left: -169px;

    width: 350px;

    height: 350px;

    border-radius: 50%;

    background: rgba(201, 161, 74, .05);

}

.latest-properties::after {

    content: "";

    position: absolute;

    bottom: -200px;

    right: -200px;

    width: 450px;

    height: 450px;

    border-radius: 50%;

    background: rgba(15, 23, 42, .03);

}

.property-filter {

    display: flex;

    justify-content: center;

    align-items: center;

    gap: 16px;

    margin-bottom: 60px;

    flex-wrap: wrap;

}

.property-filter button {

    height: 52px;

    padding: 0 28px;

    border-radius: 50px;

    background: #fff;

    border: 1px solid var(--border);

    font-weight: 600;

    font-size: 15px;

    color: var(--primary);

    transition: .35s;

    box-shadow: 0 8px 25px rgba(15, 23, 42, .04);

}

.property-filter button:hover {

    background: var(--gold);

    border-color: var(--gold);

    color: #fff;

    transform: translateY(-3px);

}

.property-filter button.active {

    background: var(--gold);

    border-color: var(--gold);

    color: #fff;

}

.latest-properties .property-card {

    height: 100%;

    transition: .4s;

}

.latest-properties .property-card:hover {

    transform: translateY(-12px);

}

.latest-properties .property-image {

    position: relative;

    overflow: hidden;

}

.latest-properties .property-image::after {

    content: "";

    position: absolute;

    left: 0;

    bottom: 0;

    width: 100%;

    height: 45%;

    background: linear-gradient(transparent,

            rgba(15, 23, 42, .55));

    opacity: 0;

    transition: .4s;

}

.latest-properties .property-card:hover .property-image::after {

    opacity: 1;

}

.property-overlay {

    position: absolute;

    left: 50%;

    top: 50%;

    transform: translate(-50%, -40%);

    opacity: 0;

    transition: .35s;

    z-index: 10;

}

.property-card:hover .property-overlay {

    opacity: 1;

    transform: translate(-50%, -50%);

}

.property-overlay a {

    display: flex;

    align-items: center;

    gap: 10px;

    padding: 14px 24px;

    background: #fff;

    border-radius: 50px;

    font-weight: 600;

    color: var(--primary);

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

    transition: .35s;
    font-size: 12px;

}

.property-overlay a:hover {

    background: var(--gold);

    color: #fff;

}

.btn-load {

    display: inline-flex;

    align-items: center;

    justify-content: center;

    padding: 18px 38px;

    border-radius: 50px;

    background: var(--primary);

    color: #fff;

    font-weight: 600;

    transition: .35s;

}

.btn-load:hover {

    background: var(--gold);

    color: #fff;

    transform: translateY(-4px);

    box-shadow: 0 20px 40px rgba(201, 161, 74, .30);

}

.badge-sale {

    background: #ef4444;

}

.badge-rent {

    background: #0ea5e9;

}

.badge-commercial {

    background: #7c3aed;

}

.badge-luxury {

    background: #C9A14A;

}

@media(max-width:991px) {

    .property-filter {

        gap: 10px;

        margin-bottom: 40px;

    }

    .property-filter button {

        padding: 0 22px;

        height: 46px;

    }

}

@media(max-width:576px) {

    .property-filter {

        justify-content: flex-start;

        overflow-x: auto;

        flex-wrap: nowrap;

        padding-bottom: 10px;

    }

    .property-filter::-webkit-scrollbar {

        display: none;

    }

    .property-filter button {

        flex: 0 0 auto;

    }

}

/*=========================================
WHY CHOOSE US
=========================================*/

.why-us {

    background: #fff;

    position: relative;

    overflow: hidden;

}

.why-us::before {

    content: "";

    position: absolute;

    right: -220px;

    top: -220px;

    width: 500px;

    height: 500px;

    background: rgba(201, 161, 74, .05);

    border-radius: 50%;

}

.why-us::after {

    content: "";

    position: absolute;

    left: -200px;

    bottom: -200px;

    width: 420px;

    height: 420px;

    background: rgba(15, 23, 42, .03);

    border-radius: 50%;

}

.why-images {

    position: relative;

    padding-right: 90px;

    padding-bottom: 80px;

}

.main-image {

    width: 100%;

    height: 390px;

    object-fit: cover;

    border-radius: 28px;

    box-shadow: 0 30px 80px rgba(15, 23, 42, .12);

}

.floating-image {

    position: absolute;

    right: 0;

    bottom: 0;

    width: 280px;

    height: 340px;

    object-fit: cover;

    border-radius: 24px;

    border: 8px solid #fff;

    box-shadow: 0 25px 60px rgba(15, 23, 42, .15);

}

.experience-box {

    position: absolute;

    left: -20px;

    top: 40px;

    background: #fff;

    padding: 28px 32px;

    border-radius: 24px;

    box-shadow: 0 20px 60px rgba(15, 23, 42, .12);

    text-align: center;

}

.experience-box h2 {

    font-size: 60px;

    color: var(--gold);

    line-height: 1;

    margin-bottom: 10px;

}

.experience-box span {

    font-size: 15px;

    font-weight: 600;

    color: var(--gray);

    line-height: 1.6;

    display: block;

}

.why-content {

    padding-left: 40px;

}

.why-content p {

    font-size: 17px;

    /* margin: 30px 0 45px; */
margin-top: 10px;
    line-height: 1.9;

}

.features-grid {

    display: grid;

    grid-template-columns: repeat(2, 1fr);

    gap: 28px;

    margin-bottom: 45px;

}

.feature-item {

    display: flex;

    align-items: flex-start;

    gap: 18px;

    padding: 25px;

    border-radius: 20px;

    background: #fff;

    border: 1px solid #EDF2F7;

    transition: .35s;

    box-shadow: 0 12px 30px rgba(15, 23, 42, .05);

}

.feature-item:hover {

    transform: translateY(-8px);

    box-shadow: 0 25px 55px rgba(15, 23, 42, .10);

    border-color: rgba(201, 161, 74, .3);

}

.feature-icon {

    width: 64px;

    height: 64px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 18px;

    background: linear-gradient(135deg, #D4AF37, #B98A28);

    color: #fff;

    font-size: 26px;

    flex-shrink: 0;

}

.feature-item h5 {

    font-size: 20px;

    margin-bottom: 10px;

}

.feature-item p {

    font-size: 15px;

    line-height: 1.7;

}

.why-content .btn-main {

    margin-top: 10px;


}
.btn-main {
    font-size: 13px;
}
.main-image,

.floating-image {

    transition: .6s;

}

.why-images:hover .main-image {

    transform: scale(1.03);

}

.why-images:hover .floating-image {

    transform: translateY(-10px);

}

@media(max-width:991px) {

    .why-content {

        padding-left: 0;

        margin-top: 60px;

    }

    .why-images {

        padding-right: 0;

        padding-bottom: 0;

    }

    .main-image {

        height: 400px;

    }

    .floating-image {

        display: none;

    }

    .experience-box {

        left: 20px;

        top: 20px;

    }

    .features-grid {

        grid-template-columns: 1fr;

    }

}

@media(max-width:576px) {

    .main-image {

        height: 380px;

        border-radius: 20px;

    }

    .experience-box {

        padding: 18px;

    }

    .experience-box h2 {

        font-size: 42px;

    }

    .feature-item {

        padding: 18px;

    }

    .feature-icon {

        width: 54px;

        height: 54px;

        font-size: 22px;

    }

}

/*=========================================
TOP AGENTS
=========================================*/

.agents-section {

    background: var(--bg);

    position: relative;

    overflow: hidden;

}

.agents-section::before {

    content: "";

    position: absolute;

    left: -220px;

    top: -220px;

    width: 500px;

    height: 500px;

    background: rgba(201, 161, 74, .05);

    border-radius: 50%;

}

.agents-section::after {

    content: "";

    position: absolute;

    right: -220px;

    bottom: -220px;

    width: 500px;

    height: 500px;

    background: rgba(15, 23, 42, .03);

    border-radius: 50%;

}

.agent-card {

    position: relative;

    background: #fff;

    border-radius: 26px;

    overflow: hidden;

    box-shadow: 0 18px 50px rgba(15, 23, 42, .08);

    transition: .45s;

    height: 100%;

    border: 1px solid #EDF2F7;

}

.agent-card:hover {

    transform: translateY(-12px);

    box-shadow: 0 35px 80px rgba(15, 23, 42, .14);

}

.agent-image {

    position: relative;

    height: 250px;

    overflow: hidden;

}

.agent-image img {

    width: 100%;

    height: 100%;

    object-fit: cover;

    transition: .7s;

}

.agent-card:hover img {

    transform: scale(1.08);

}

.agent-social {

    position: absolute;

    right: 20px;

    top: 20px;

    display: flex;

    flex-direction: column;

    gap: 12px;

    opacity: 0;

    transform: translateX(30px);

    transition: .4s;

}

.agent-card:hover .agent-social {

    opacity: 1;

    transform: translateX(0);

}

.agent-social a {

    width: 44px;

    height: 44px;

    border-radius: 50%;

    display: flex;

    align-items: center;

    justify-content: center;

    background: #fff;

    color: var(--primary);

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

    transition: .3s;

}

.agent-social a:hover {

    background: var(--gold);

    color: #fff;

}

.agent-rating {

    position: absolute;

    left: 20px;

    top: 20px;

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

    padding: 10px 18px;

    border-radius: 50px;

    font-size: 14px;

    font-weight: 700;

    display: flex;

    align-items: center;

    gap: 8px;

}

.agent-rating i {

    color: #FFC107;

}

.agent-content {

    padding: 30px;

    text-align: center;

}

.agent-content h4 {

    font-size: 24px;

    margin-bottom: 8px;

}

.agent-content span {

    display: block;

    font-size: 15px;

    color: var(--gold);

    font-weight: 600;

    margin-bottom: 20px;

}

.agent-content p {

    color: var(--gray);

    line-height: 1.8;

    margin-bottom: 28px;

}

.agent-stats {

    display: flex;

    justify-content: space-between;

    margin-bottom: 25px;

    padding: 18px 0;

    border-top: 1px solid #EDF2F7;

    border-bottom: 1px solid #EDF2F7;

}

.agent-stats div {

    text-align: center;

    flex: 1;

}

.agent-stats strong {

    display: block;

    font-size: 22px;

    color: var(--primary);

    margin-bottom: 6px;

}

.agent-stats small {

    color: #64748B;

    font-size: 13px;

}

.agent-buttons {

    display: flex;

    gap: 12px;

}

.agent-buttons a {

    flex: 1;

    height: 50px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 14px;

    font-weight: 600;

    transition: .35s;

}

.agent-buttons .btn-profile {

    background: var(--gold);

    color: #fff;

}

.agent-buttons .btn-profile:hover {

    background: var(--gold-hover);

    transform: translateY(-3px);

}

.agent-buttons .btn-call {

    background: #F8FAFC;

    color: var(--primary);

}

.agent-buttons .btn-call:hover {

    background: var(--primary);

    color: #fff;

}

.agent-buttons {

    display: flex;

    gap: 12px;

}

.agent-buttons a {

    flex: 1;

    height: 50px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 14px;

    font-weight: 600;

    transition: .35s;

}

.agent-buttons .btn-profile {

    background: var(--gold);

    color: #fff;

}

.agent-buttons .btn-profile:hover {

    background: var(--gold-hover);

    transform: translateY(-3px);

}

.agent-buttons .btn-call {

    background: #F8FAFC;

    color: var(--primary);

}

.agent-buttons .btn-call:hover {

    background: var(--primary);

    color: #fff;

}

.agent-card::before {

    content: "";

    position: absolute;

    left: 0;

    top: 0;

    width: 100%;

    height: 5px;

    background: linear-gradient(90deg, var(--gold), #E8C874, var(--gold));

    transform: scaleX(0);

    transform-origin: left;

    transition: .45s;

    z-index: 5;

}

.agent-card:hover::before {

    transform: scaleX(1);

}

@media(max-width:991px) {

    .agent-image {

        height: 300px;

    }

}

@media(max-width:576px) {

    .agent-content {

        padding: 22px;

    }

    .agent-buttons {

        flex-direction: column;

    }

    .agent-stats {

        gap: 10px;

    }

    .agent-stats strong {

        font-size: 18px;

    }

}

/*=========================================
EXPLORE BY LOCATION
=========================================*/

.locations-section {

    background: #fff;

    position: relative;

    overflow: hidden;

}

.locations-section::before {

    content: "";

    position: absolute;

    top: -220px;

    right: -220px;

    width: 520px;

    height: 520px;

    background: rgba(201, 161, 74, .05);

    border-radius: 50%;

}

.locations-section::after {

    content: "";

    position: absolute;

    bottom: -220px;

    left: -220px;

    width: 420px;

    height: 420px;

    background: rgba(15, 23, 42, .03);

    border-radius: 50%;

}

.location-grid {

    display: grid;

    grid-template-columns: 2fr 1fr 1fr;

    grid-auto-rows: 280px;

    gap: 30px;

}

.location-card.large {

    grid-row: span 2;

}

.location-card.tall {

    grid-row: span 2;

}

.location-card {

    position: relative;

    overflow: hidden;

    border-radius: 28px;

    cursor: pointer;

    box-shadow: 0 20px 60px rgba(15, 23, 42, .08);

}

.location-card img {

    width: 100%;

    height: 100%;

    object-fit: cover;

    transition: .8s;

}

.location-card:hover img {

    transform: scale(1.12);

}

.location-card::before {

    content: "";

    position: absolute;

    left: 0;

    top: 0;

    width: 100%;

    height: 100%;

    background: linear-gradient(180deg,

            rgba(0, 0, 0, .05),

            rgba(15, 23, 42, .78));

    z-index: 2;

    transition: .35s;

}

.location-card:hover::before {

    background: linear-gradient(180deg,

            rgba(0, 0, 0, .15),

            rgba(15, 23, 42, .90));

}


.location-content {

    position: absolute;

    left: 35px;

    right: 35px;

    bottom: 35px;

    z-index: 5;

    color: #fff;

}

.location-content h3 {

    font-size: 17px;

    margin-bottom: 5px;

    font-weight: 700;

}

.location-content p {

    font-size: 16px;

    opacity: .92;

    margin-bottom: 20px;

}

.location-count {

    display: inline-flex;

    align-items: center;

    gap: 10px;

    padding: 12px 20px;

    border-radius: 50px;

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

    backdrop-filter: blur(14px);

    font-size: 14px;

    font-weight: 700;

}

.location-count i {

    color: #FFD54F;

}

.location-arrow {

    position: absolute;

    right: 30px;

    top: 30px;

    width: 58px;

    height: 58px;

    border-radius: 50%;

    display: flex;

    align-items: center;

    justify-content: center;

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

    backdrop-filter: blur(12px);

    color: #fff;

    font-size: 22px;

    transition: .35s;

    z-index: 5;

}

.location-card:hover .location-arrow {

    background: var(--gold);

    transform: rotate(-45deg);

}

.location-tag {

    position: absolute;

    left: 30px;

    top: 30px;

    padding: 10px 18px;

    border-radius: 50px;

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

    font-size: 13px;

    font-weight: 700;

    color: var(--primary);

    z-index: 5;

}


.location-content {

    transition: .45s;

}

.location-card:hover .location-content {

    transform: translateY(-10px);

}

@media(max-width:991px) {

    .location-grid {

        grid-template-columns: 1fr;

        grid-auto-rows: 280px;

    }

    .location-card.large,

    .location-card.tall {

        grid-row: auto;

    }

}

@media(max-width:576px) {

    .location-content {

        left: 22px;

        right: 22px;

        bottom: 22px;

    }

    .location-content h3 {

        font-size: 26px;

    }

    .location-arrow {

        width: 48px;

        height: 48px;

        right: 20px;

        top: 20px;

    }

    .location-tag {

        left: 20px;

        top: 20px;

    }

}


/*=========================================
TESTIMONIALS
=========================================*/

.testimonials-section {

    background: var(--bg);

    position: relative;

    overflow: hidden;

}

.testimonials-section::before {

    content: "";

    position: absolute;

    top: -180px;

    left: -180px;

    width: 450px;

    height: 450px;

    background: rgba(201, 161, 74, .05);

    border-radius: 50%;

}

.testimonials-section::after {

    content: "";

    position: absolute;

    bottom: -180px;

    right: -180px;

    width: 420px;

    height: 420px;

    background: rgba(15, 23, 42, .03);

    border-radius: 50%;

}

.testimonialSwiper {

    padding: 10px 5px 70px;

    overflow: visible;

}

.testimonialSwiper .swiper-slide {

    height: auto;

}

.testimonial-card {

    background: #fff;

    border-radius: 28px;

    padding: 40px;

    height: 100%;

    border: 1px solid #EDF2F7;

    box-shadow: 0 20px 55px rgba(15, 23, 42, .07);

    transition: .4s;

    position: relative;

    overflow: hidden;

}

.testimonial-card:hover {

    transform: translateY(-10px);

    box-shadow: 0 35px 80px rgba(15, 23, 42, .12);

}

.quote-icon {

    width: 70px;

    height: 70px;

    border-radius: 50%;

    display: flex;

    align-items: center;

    justify-content: center;

    background: linear-gradient(135deg, #D4AF37, #C39A39);

    color: #fff;

    font-size: 30px;

    margin-bottom: 25px;

}

.testimonial-card p {

    font-size: 17px;

    line-height: 1.9;

    color: #64748B;

    margin-bottom: 35px;

    font-style: italic;

}

.client {

    display: flex;

    align-items: center;

    gap: 18px;

}

.client img {

    width: 72px;

    height: 72px;

    border-radius: 50%;

    object-fit: cover;

}

.client h5 {

    margin-bottom: 5px;

    font-size: 20px;

}

.client span {

    display: block;

    font-size: 14px;

    color: var(--gold);

    font-weight: 600;

}

.rating {

    margin-top: 10px;

    display: flex;

    gap: 4px;

}

.rating i {

    color: #FFC107;

    font-size: 15px;

}

.testimonial-card::before {

    content: "";

    position: absolute;

    left: 0;

    top: 0;

    width: 100%;

    height: 5px;

    background: linear-gradient(90deg,

            var(--gold),

            #E8C874,

            var(--gold));

    transform: scaleX(0);

    transition: .4s;

    transform-origin: left;

}

.testimonial-card:hover::before {

    transform: scaleX(1);

}

@media(max-width:576px) {

    .testimonial-card {

        padding: 25px;

    }

    .client {

        flex-direction: column;

        text-align: center;

    }

    .quote-icon {

        margin: auto auto 20px;

    }

}

/*=========================================
BLOG
=========================================*/

.blog-section {

    background: #fff;

    position: relative;

    overflow: hidden;

}

.blog-section::before {

    content: "";

    position: absolute;

    right: -180px;

    top: -180px;

    width: 450px;

    height: 450px;

    background: rgba(201, 161, 74, .05);

    border-radius: 50%;

}

.blog-section::after {

    content: "";

    position: absolute;

    left: -180px;

    bottom: -180px;

    width: 420px;

    height: 420px;

    background: rgba(15, 23, 42, .03);

    border-radius: 50%;

}

.blog-card {

    background: #fff;

    border-radius: 24px;

    overflow: hidden;

    box-shadow: 0 20px 55px rgba(15, 23, 42, .07);

    transition: .4s;

    height: 100%;

    border: 1px solid #EDF2F7;

}

.blog-card:hover {

    transform: translateY(-10px);

    box-shadow: 0 35px 80px rgba(15, 23, 42, .13);

}

.blog-image {

    position: relative;

    height: 270px;

    overflow: hidden;

}

.blog-image img {

    width: 100%;

    height: 100%;

    object-fit: cover;

    transition: .8s;

}

.blog-card:hover img {

    transform: scale(1.1);

}

.blog-category {

    position: absolute;

    left: 20px;

    top: 20px;

    padding: 10px 18px;

    background: var(--gold);

    color: #fff;

    font-size: 13px;

    font-weight: 700;

    border-radius: 50px;

}

.blog-content {

    padding: 30px;

}

.blog-date {

    display: flex;

    align-items: center;

    gap: 10px;

    font-size: 14px;

    margin-bottom: 15px;

    color: #64748B;

}

.blog-date i {

    color: var(--gold);

}

.blog-content h3 {

    font-size: 26px;

    line-height: 1.4;

    margin-bottom: 18px;

    transition: .3s;

}

.blog-card:hover h3 {

    color: var(--gold);

}

.blog-content p {

    line-height: 1.8;

    margin-bottom: 25px;

    color: #64748B;

}

.blog-link {

    display: inline-flex;

    align-items: center;

    gap: 10px;

    font-weight: 700;

    color: var(--primary);

    transition: .3s;

}

.blog-link i {

    transition: .3s;

}

.blog-link:hover {

    color: var(--gold);

}

.blog-link:hover i {

    transform: translateX(8px);

}

@media(max-width:576px) {

    .blog-content {

        padding: 22px;

    }

    .blog-content h3 {

        font-size: 22px;

    }

    .blog-image {

        height: 220px;

    }

}

/*=========================================
WHY SECTION
=========================================*/

.why-section {

    padding: 90px 0;

    background: #fff;

}

.why-content {

    height: 100%;

    display: flex;

    flex-direction: column;

    justify-content: center;

    padding-right: 20px;

}

.section-subtitle {

    display: inline-block;

    font-size: 12px;

    font-weight: 700;

    letter-spacing: 2px;

    text-transform: uppercase;

    color: #D5A243;

    margin-bottom: 18px;

}

.why-content h2 {

    font-size: 38px;

    line-height: 1.15;

    font-weight: 700;

    color: #101828;

    margin-bottom: 0px;

}

.why-content p {

    font-size: 14px;

    line-height: 1.8;

    color: #667085;

    margin-bottom: 10px;

    max-width: 500px;

}

.why-features {

    display: grid;

    grid-template-columns: repeat(2, 1fr);

    gap: 28px 20px;

    margin-bottom: 45px;

}

.feature-box {

    text-align: left;

}

.feature-icon {

    width: 58px;

    height: 58px;

    border-radius: 16px;

    background: #FFF8EC;

    display: flex;

    align-items: center;

    justify-content: center;

    color: #D5A243;

    font-size: 24px;

    margin-bottom: 14px;

}

.feature-box h6 {

    font-size: 17px;

    font-weight: 700;

    margin-bottom: 6px;

    color: #101828;

}

.feature-box small {

    font-size: 14px;

    color: #98A2B3;

}

.why-content .btn-main {

    display: inline-flex;

    align-items: center;

    gap: 12px;

    padding: 16px 30px;

    border-radius: 14px;

    background: #fff;

    border: 1px solid #E4E7EC;

    font-weight: 600;

    color: #101828;

    transition: .35s;

    width: max-content;

}

.why-content .btn-main:hover {

    background: #D5A243;

    color: #fff;

    border-color: #D5A243;

}

.video-card {

    position: relative;

    height: 100%;

    min-height: 620px;

    overflow: hidden;

    border-radius: 26px;

}

.video-card img {

    width: 100%;

    height: 100%;

    object-fit: cover;

    display: block;

}

.play-btn {

    position: absolute;

    left: 50%;

    top: 50%;

    transform: translate(-50%, -50%);

    width: 88px;

    height: 88px;

    border-radius: 50%;

    background: #fff;

    display: flex;

    align-items: center;

    justify-content: center;

    font-size: 34px;

    color: #D5A243;

    box-shadow: 0 25px 60px rgba(0, 0, 0, .18);

    transition: .35s;

}

.play-btn:hover {

    transform: translate(-50%, -50%) scale(1.08);

}

.video-caption {

    position: absolute;

    left: 30px;

    bottom: 28px;

    color: #fff;

}

.video-caption strong {

    display: block;

    font-size: 22px;

    margin-bottom: 4px;

}

.video-caption span {

    opacity: .9;

    font-size: 15px;

}

.map-card {

    position: relative;

    overflow: hidden;

    border-radius: 26px;

    height: 100%;

    min-height: 620px;

    background: #F8FAFC;

}

.map-card>img {

    width: 100%;

    height: 100%;

    object-fit: cover;

}

.map-info {

    position: absolute;

    left: 24px;

    bottom: 130px;

    width: 260px;

    background: #fff;

    padding: 28px;

    border-radius: 20px;

    box-shadow: 0 20px 60px rgba(0, 0, 0, .08);

}

.map-info small {

    font-size: 12px;

    letter-spacing: 2px;

    font-weight: 700;

    color: #D5A243;

    display: block;

    margin-bottom: 10px;

}

.map-info h4 {

    font-size: 30px;

    margin-bottom: 10px;

    color: #101828;

}

.map-info span {

    display: block;

    margin-bottom: 24px;

    color: #667085;

}

.map-btn {

    display: flex;

    justify-content: space-between;

    align-items: center;

    padding: 15px 22px;

    background: #0F172A;

    border-radius: 14px;

    color: #fff;

    font-weight: 600;

    transition: .35s;

}

.map-btn:hover {

    background: #D5A243;

}

.map-gallery {

    position: absolute;

    right: 24px;

    bottom: 24px;

    display: flex;

    gap: 10px;

}

.map-gallery img {

    width: 95px;

    height: 95px;

    object-fit: cover;

    border-radius: 16px;

    border: 4px solid #fff;

}


@media(max-width:991px) {

    .video-card,

    .map-card {

        min-height: 500px;

        margin-top: 35px;

    }

    .why-content {

        padding-right: 0;

    }

}

@media(max-width:576px) {

    .why-content h2 {

        font-size: 36px;

    }

    .why-features {

        grid-template-columns: 1fr;

    }

    .map-info {

        position: relative;

        left: auto;

        bottom: auto;

        margin: 20px;

        width: auto;

    }

    .map-gallery {

        display: none;

    }

}

/*======================================
INSIGHTS SECTION
======================================*/

.insights-section {

    background: #fff;

    padding: 90px 0;

}

.section-title-row {

    display: flex;

    justify-content: space-between;

    align-items: center;

    margin-bottom: 30px;

}

.section-title-row h2 {

    font-size: 34px;

    font-weight: 700;

    color: #111827;

    margin: 0;

}

.testimonial-box {

    background: #fff;

    border: 1px solid #EEF2F6;

    border-radius: 24px;

    padding: 40px;

    height: 100%;

    box-shadow: 0 12px 40px rgba(15, 23, 42, .05);

}

.quote-mark {

    font-size: 48px;

    color: #D5A243;

    margin-bottom: 25px;

}

.testimonial-box p {

    font-size: 17px;

    line-height: 1.9;

    color: #667085;

    margin-bottom: 35px;

}

.testimonial-user {

    display: flex;

    align-items: center;

    gap: 16px;

    margin-bottom: 35px;

}

.testimonial-user img {

    width: 64px;

    height: 64px;

    border-radius: 50%;

    object-fit: cover;

}

.testimonial-user strong {

    display: block;

    font-size: 18px;

}

.testimonial-user span {

    font-size: 14px;

    color: #98A2B3;

}

.testimonial-user {

    display: flex;

    align-items: center;

    gap: 16px;

    margin-bottom: 35px;

}

.testimonial-user img {

    width: 64px;

    height: 64px;

    border-radius: 50%;

    object-fit: cover;

}

.testimonial-user strong {

    display: block;

    font-size: 18px;

}

.testimonial-user span {

    font-size: 14px;

    color: #98A2B3;

}

.testimonial-dots {

    display: flex;

    justify-content: center;

    gap: 10px;

}

.testimonial-dots span {

    width: 8px;

    height: 8px;

    background: #D9D9D9;

    border-radius: 50%;

}

.testimonial-dots .active {

    width: 26px;

    border-radius: 20px;

    background: #D5A243;

}

.blog-wrapper {

    height: 100%;

}

.blog-list {

    display: flex;

    flex-direction: column;

    gap: 20px;

}

.mini-blog {

    display: flex;

    gap: 20px;

    background: #fff;

    border: 1px solid #EEF2F6;

    border-radius: 20px;

    padding: 18px;

    transition: .35s;

}

.mini-blog:hover {

    transform: translateY(-5px);

    box-shadow: 0 20px 45px rgba(15, 23, 42, .08);

}

.mini-blog img {

    width: 160px;

    height: 120px;

    border-radius: 16px;

    object-fit: cover;

    flex-shrink: 0;

}

.mini-blog span {

    font-size: 11px;

    font-weight: 700;

    letter-spacing: 1px;

    color: #D5A243;

    display: block;

    margin-bottom: 10px;

}

.mini-blog h5 {

    font-size: 20px;

    line-height: 1.45;

    margin-bottom: 10px;

}

.mini-blog small {

    color: #98A2B3;

}

.cta-card {

    height: 100%;

    background: #0F172A;

    color: #fff;

    padding: 42px;

    border-radius: 24px;

    display: flex;

    flex-direction: column;

    justify-content: space-between;

}

.cta-card h2 {

    font-size: 36px;

    line-height: 1.2;

    margin-bottom: 20px;

}

.cta-card p {

    opacity: .85;

    line-height: 1.8;

    margin-bottom: 35px;

}

.cta-btn {

    display: flex;

    justify-content: space-between;

    align-items: center;

    padding: 18px 24px;

    background: #D5A243;

    color: #fff;

    border-radius: 14px;

    font-weight: 600;

    margin-bottom: 40px;

    transition: .3s;

}

.cta-btn:hover {

    background: #C0902D;

}

.cta-users {

    display: flex;

    align-items: center;

}

.cta-users img {

    width: 42px;

    height: 42px;

    border-radius: 50%;

    border: 3px solid #0F172A;

    margin-right: -12px;

}

.cta-users span {

    margin-left: 20px;

    font-size: 14px;

    line-height: 1.6;

}

/*=========================================
NEWSLETTER
=========================================*/

.newsletter-section {

    padding: 80px 0;

    background: #fff;

}

.newsletter-box {

    background: #fff;

    border: 1px solid #EEF2F6;

    border-radius: 24px;

    padding: 40px 45px;

    display: flex;

    justify-content: space-between;

    align-items: center;

    gap: 50px;

    box-shadow: 0 15px 45px rgba(15, 23, 42, .05);

}

.newsletter-left {

    display: flex;

    align-items: flex-start;

    gap: 25px;

    flex: 1;

}

.newsletter-icon {

    width: 72px;

    height: 72px;

    border-radius: 18px;

    background: #FFF8EC;

    display: flex;

    align-items: center;

    justify-content: center;

    font-size: 30px;

    color: #D5A243;

    flex-shrink: 0;

}

.newsletter-left h3 {

    font-size: 34px;

    margin-bottom: 12px;

    font-weight: 700;

    color: #111827;

}

.newsletter-left p {

    font-size: 16px;

    line-height: 1.8;

    color: #667085;

    margin: 0;

    max-width: 620px;

}

.newsletter-form {

    display: flex;

    align-items: center;

    width: 520px;

    height: 66px;

    background: #F8FAFC;

    border-radius: 16px;

    overflow: hidden;

    border: 1px solid #E5E7EB;

    flex-shrink: 0;

}

.newsletter-form input {

    flex: 1;

    height: 100%;

    border: none;

    background: transparent;

    padding: 0 24px;

    font-size: 16px;

    outline: none;

}

.newsletter-form button {

    height: 100%;

    padding: 0 34px;

    border: none;

    background: #D5A243;

    color: #fff;

    font-weight: 600;

    transition: .3s;

}

.newsletter-form button:hover {

    background: #BF9136;

}

@media(max-width:991px) {

    .newsletter-box {

        flex-direction: column;

        align-items: flex-start;

        padding: 35px;

    }

    .newsletter-form {

        width: 100%;

    }

}

@media(max-width:576px) {

    .newsletter-left {

        flex-direction: column;

    }

    .newsletter-left h3 {

        font-size: 28px;

    }

    .newsletter-form {

        height: 58px;

    }

    .newsletter-form button {

        padding: 0 24px;

    }

}



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

.main-footer {

    background: #0F172A;

    padding: 40px 0 0;

    color: #fff;

}

.footer-logo {

    display: inline-block;

    margin-bottom: 30px;

}

.footer-logo img {

    height: 44px;

}

.footer-text {

    color: #94A3B8;

    line-height: 1.9;

    margin-bottom: 35px;

    max-width: 340px;

}

.main-footer h5 {

    font-size: 16px;

    margin-bottom: 28px;

    font-weight: 700;

    color: #fff;

}
.main-footer a {
    font-size: 14px;
}
.main-footer ul {

    margin: 0;

    padding: 0;

    list-style: none;

}

.main-footer li {

    margin-bottom: 16px;

}

.main-footer a {

    color: #94A3B8;

    transition: .3s;

}

.main-footer a:hover {

    color: #D5A243;

}

.footer-social {

    display: flex;

    gap: 14px;

}

.footer-social a {

    width: 44px;

    height: 44px;

    border-radius: 50%;

    background: #1E293B;

    display: flex;

    align-items: center;

    justify-content: center;

    font-size: 18px;

    transition: .35s;

}

.footer-social a:hover {

    background: #D5A243;

    color: #fff;

    transform: translateY(-4px);

}

.footer-bottom {

    margin-top: 40px;
    padding: 20px 0;
    border-top: 1px solid rgba(255, 255, 255, .08);
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px;

}

.footer-bottom p {

    margin: 0;

    color: #94A3B8;

}

.footer-bottom div {

    display: flex;

    gap: 30px;

}

.footer-bottom div a {

    color: #94A3B8;

    font-size: 15px;

}

@media(max-width:991px) {

    .main-footer {

        text-align: center;

    }

    .footer-text {

        margin: auto auto 30px;

    }

    .footer-social {

        justify-content: center;

        margin-bottom: 20px;

    }

    .footer-bottom {

        justify-content: center;

    }

}

@media(max-width:576px) {

    .footer-bottom div {

        flex-wrap: wrap;

        justify-content: center;

        gap: 16px;

    }

}

.advanced-toggle {

    margin-top: 30px;

    text-align: center;

}

.advanced-toggle button {

    border: none;

    background: none;

    font-weight: 600;

    color: #b78a2c;

    font-size: 16px;

}

.advanced-fields {

    display: none;

    margin-top: 35px;

    padding-top: 35px;

    border-top: 1px solid #eee;

}

.advanced-fields.show {

    display: block;

    animation: fadeDown .35s ease;

}

@keyframes fadeDown {

    from {

        opacity: 0;

        transform: translateY(-20px);

    }

    to {

        opacity: 1;

        transform: translateY(0);

    }

}

.search-btn {
    height: 50px;
    margin-top: 30px;
    margin-left: 10px;
    border-radius: 50px;
    font-size: 15px;
}

#advancedToggle {
    font-size: 15px;
    color: #fff;
}

.section-title {
    font-size: 25px;
}

.view-all {
    font-size: 14px;
}


.featured-section {
    padding: 60px 0px;
}

.price-header {

    display: flex;

    justify-content: space-between;

    align-items: center;

    margin-bottom: 6px;

}

.currency-switch {

    display: flex;

    background: #f4f4f4;

    border-radius: 30px;

    padding: 4px;

    gap: 4px;

}

.currency-btn {

    border: none;

    background: transparent;

    padding: 6px 14px;

    border-radius: 20px;

    font-size: 13px;

    font-weight: 600;

    cursor: pointer;

    transition: .3s;

}

.currency-btn.active {

    background: #D5A243;

    color: #fff;

}

.property-meta span {
    font-size: 13px;
}

.currency-btn {
    border: none;
    background: transparent;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    transition: .3s;
}

.btn-load {
    font-size: 13px;
}

.agents-section {
    padding: 60px 0px;
}

.location-content h3 {
    color:#fff;
}

.location-content p {
    color:#fff;   
}

.location-content p {
    font-size: 13px;
    margin-bottom: 5px;
}

.location-count {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 5px 10px;
    border-radius: 50px;
    background: rgba(255, 255, 255, .16);
    backdrop-filter: blur(14px);
    font-size: 12px;
    font-weight: 700;
}