/* =====================================================
Template Name   : Guinée habitat
Description     : Guinée habitat
Author          : Guinée habitat
Version         : 1.2
=======================================================*/

/* ===================
fonts
====================== */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap');


:root {
    --container-max: 74rem;
    --radius-sm: 0.5rem;
    --radius-md: 0.75rem;
    --radius-lg: 1rem;
    --radius-xl: 1.25rem;
    --shadow-soft: 0 0.75rem 2.5rem rgba(0, 0, 0, 0.06);
    --shadow-soft-hover: 0 1rem 3rem rgba(0, 0, 0, 0.1);
    --space-2xs: clamp(0.375rem, 0.3rem + 0.2vw, 0.5rem);
    --space-xs: clamp(0.5rem, 0.4rem + 0.3vw, 0.75rem);
    --space-sm: clamp(0.75rem, 0.6rem + 0.45vw, 1rem);
    --space-md: clamp(1rem, 0.8rem + 0.6vw, 1.5rem);
    --space-lg: clamp(1.25rem, 1rem + 1vw, 2rem);
    --space-xl: clamp(1.75rem, 1.2rem + 1.6vw, 3rem);
    --space-2xl: clamp(2.5rem, 1.8rem + 2.2vw, 4.5rem);
    --space-3xl: clamp(3.5rem, 2.5rem + 3vw, 7.5rem);
    --fs-100: clamp(0.875rem, 0.84rem + 0.15vw, 1rem);
    --fs-200: clamp(0.92rem, 0.80rem + 0.2vw, 0.92rem);
    --fs-300: clamp(1rem, 0.92rem + 0.35vw, 1.2rem);
    --fs-400: clamp(1rem, 1rem + 0.6vw, 1rem);
    --fs-500: clamp(1.375rem, 1.1rem + 1vw, 2rem);
    --fs-600: clamp(1.55rem, 1.33rem + 0.22vw, 1.55rem);
    --fs-700: clamp(1.925rem, 1.6rem + 3vw, 3.25rem);
}

html {
    font-size: clamp(0.92rem, 0.25vw + 0.8125rem, 1.225rem);
}

body {
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
}


/* ===================
general css
====================== */

*,
*:before,
*:after {
    box-sizing: inherit;
}

* {
    scroll-behavior: inherit !important;
}

html,
body {
    height: auto;
    width: 100%;
    margin: 0;
    padding: 0;
    overflow-x: hidden;
    box-sizing: border-box;
}

body {
    font-family: 'Inter', system-ui, -apple-system, sans-serif;
    font-style: normal;
    font-size: var(--fs-200);
    font-weight: 400;
    color: #757F95;
    line-height: 1.8;
}

a {
    color: #0E2E50;
    display: inline-block;
}

a,
a:active,
a:focus,
a:hover {
    outline: none;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    text-decoration: none;
}

a:hover {
    color: #0049D0;
}

ul {
    margin: 0;
    padding: 0;
}

li {
    list-style: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    color: #0E2E50;
    margin: 0;
    font-weight: 600;
    font-family: 'Inter', system-ui, -apple-system, sans-serif;
    line-height: 1.2;
}

h1 {
    font-size: var(--fs-700);
}

h2 {
    font-size: var(--fs-600);
}

h3 {
    font-size: var(--fs-500);
}

h4 {
    font-size: var(--fs-400);
}

h5 {
    font-size: var(--fs-300);
}

h6 {
    font-size: var(--fs-200);
}

p {
    margin: 0;
}

.img,
img {
    max-width: 100%;
    -webkit-transition: all 0.3s ease-out 0s;
    -moz-transition: all 0.3s ease-out 0s;
    -ms-transition: all 0.3s ease-out 0s;
    -o-transition: all 0.3s ease-out 0s;
    transition: all 0.3s ease-out 0s;
    height: auto;
}

label {
    color: #999;
    cursor: pointer;
    font-weight: 400;
}

*::-moz-selection {
    background: #d6b161;
    color: #fff;
    text-shadow: none;
}

::-moz-selection {
    background: #555;
    color: #fff;
    text-shadow: none;
}

::selection {
    background: #555;
    color: #fff;
    text-shadow: none;
}

*::-moz-placeholder {
    color: #999;
    font-size: 1rem;
    opacity: 1;
}

*::placeholder {
    color: #999;
    font-size: 1rem;
    opacity: 1;
}

/* ===================
preloader
====================== */

.preloader {
    position: fixed;
    width: 100%;
    height: 100%;
    background: #C9A24D;
    top: 0;
    left: 0;
    z-index: 9999;
}

.loader {
    position: absolute;
    top: 46%;
    left: 0;
    right: 0;
    transform: translateY(-46%);
    text-align: center;
    margin: 0 auto;
    width: 3.125rem;
    height: 3.125rem;
}

.loader-box {
    width: 100%;
    height: 100%;
    background: #fff;
    animation: loader-animate .5s linear infinite;
    position: absolute;
    top: 0;
    left: 0;
    border-radius: 0.5rem;
}

.loader-shadow {
    width: 100%;
    height: 0.3125rem;
    background: #000;
    opacity: 0.1;
    position: absolute;
    top: 3.6875rem;
    left: 0;
    border-radius: 50%;
    animation: loader-shadow .5s linear infinite;
}


@keyframes loader {
    0% {
        left: -100px
    }

    100% {
        left: 110%;
    }
}

@keyframes loader-animate {
    17% {
        border-bottom-right-radius: 0.1875rem;
    }

    25% {
        transform: translateY(0.5625rem) rotate(22.5deg);
    }

    50% {
        transform: translateY(1.125rem) scale(1, .9) rotate(45deg);
        border-bottom-right-radius: 2.5rem;
    }

    75% {
        transform: translateY(0.5625rem) rotate(67.5deg);
    }

    100% {
        transform: translateY(0) rotate(90deg);
    }
}

@keyframes loader-shadow {
    50% {
        transform: scale(1.2, 1);
    }
}


/* ===================
theme default css
====================== */

.ovrflow-hidden {
    overflow: hidden;
}

.text-right {
    text-align: right;
}

.space-between {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.c-pd {
    padding-inline: clamp(1rem, 4vw, 7rem);
}

.s-pd {
    padding-inline: clamp(1rem, 6vw, 12rem);
}

.h-100 {
    height: 100%;
}

.h-100vh {
    height: 100vh;
}

.bg {
    background-color: #F3F6FA;
}


/* ===================
site title css
====================== */

.site-heading {
    margin-bottom: var(--space-xl);
    position: relative;
}

.site-title-tagline {
    text-transform: uppercase;
    letter-spacing: clamp(0.08em, 0.22vw, 0.28em);
    font-size: clamp(0.85rem, 0.78rem + 0.35vw, 1.1rem);
    font-weight: 700;
    color: #C9A24D;
    position: relative;
}

.site-title {
    font-weight: 700;
    font-size: clamp(1.6rem, 0.1rem + 1.4vw, 1.6rem);
    line-height: 1.15;
    color: rgb(14, 46, 80);
}


.site-title span {
    color: #C9A24D;
}

.site-heading p {
    margin-top: 0.9375rem;
}

.heading-divider {
    display: inline-block;
    position: relative;
    height: 0.1875rem;
    -webkit-border-radius: 1.875rem;
    -moz-border-radius: 1.875rem;
    border-radius: 1.875rem;
    background-color: #C9A24D;
    width: 5.625rem;
    overflow: hidden;
}

.heading-divider:after {
    content: '';
    position: absolute;
    left: 0;
    top: -1.1px;
    height: 0.4375rem;
    width: 0.5rem;
    background-color: #ffffff;
    -webkit-animation: heading-move 5s infinite linear;
    animation: heading-move 5s infinite linear;
}

@-webkit-keyframes heading-move {
    0% {
        transform: translateX(-1px);
    }

    50% {
        transform: translateX(5.3125rem);
    }

    100% {
        transform: translateX(-1px);
    }
}

@keyframes heading-move {
    0% {
        transform: translateX(-1px);
    }

    50% {
        transform: translateX(5.3125rem);
    }

    100% {
        transform: translateX(-1px);
    }
}


@media all and (max-width: 62rem) {
    .shadow-title {
        font-size: 6.25rem;
    }
}


/* ===================
margin & padding
====================== */

.pb-140 {
    padding-bottom: 8.75rem;
}

.pd-50 {
    padding: 3.125rem 0;
}

.py-120 {
    padding: 7.5rem 0;
}

.py-20 {
    padding: 1.25rem 0;
}

.py-30 {
    padding: 1.875rem 0;
}

.pt-120 {
    padding-top: 7.5rem;
}

.pb-120 {
    padding-bottom: 7.5rem;
}

.pt-0 {
    padding-top: 0;
}

.pt-10 {
    padding-top: 0.625rem;
}

.pt-20 {
    padding-top: 1.25rem;
}

.pt-30 {
    padding-top: 1.875rem;
}

.pt-40 {
    padding-top: 2.5rem;
}

.pt-50 {
    padding-top: 3.125rem;
}

.pt-60 {
    padding-top: 3.75rem;
}

.pt-70 {
    padding-top: 4.375rem;
}

.pt-80 {
    padding-top: 5rem;
}

.pt-90 {
    padding-top: 5.625rem;
}

.pt-100 {
    padding-top: 6.25rem;
}

.pb-0 {
    padding-bottom: 0;
}

.pb-10 {
    padding-bottom: 0.625rem;
}

.pb-20 {
    padding-bottom: 1.25rem;
}

.pb-30 {
    padding-bottom: 1.875rem;
}

.pb-40 {
    padding-bottom: 2.5rem;
}

.pb-50 {
    padding-bottom: 3.125rem;
}

.pb-60 {
    padding-bottom: 3.75rem;
}

.pb-70 {
    padding-bottom: 4.375rem;
}

.pb-80 {
    padding-bottom: 5rem;
}

.pb-90 {
    padding-bottom: 5.625rem;
}

.pb-100 {
    padding-bottom: 6.25rem;
}

.mt-0 {
    margin-top: 0;
}

.mt-10 {
    margin-top: 0.625rem;
}

.mt-20 {
    margin-top: 1.25rem;
}

.mt-30 {
    margin-top: 1.875rem;
}

.mt-40 {
    margin-top: 2.5rem;
}

.mt-50 {
    margin-top: 3.125rem;
}

.mt-60 {
    margin-top: 3.75rem;
}

.mt-70 {
    margin-top: 4.375rem;
}

.mt-80 {
    margin-top: 5rem;
}

.mt-90 {
    margin-top: 5.625rem;
}

.mt-100 {
    margin-top: 6.25rem;
}

.mb-0 {
    margin-bottom: 0;
}

.mb-10 {
    margin-bottom: 0.625rem;
}

.mb-20 {
    margin-bottom: 1.25rem;
}

.mb-30 {
    margin-bottom: 1.875rem;
}

.mb-40 {
    margin-bottom: 2.5rem;
}

.mb-50 {
    margin-bottom: 3.125rem;
}

.mb-60 {
    margin-bottom: 3.75rem;
}

.mb-70 {
    margin-bottom: 4.375rem;
}

.mb-80 {
    margin-bottom: 5rem;
}

.mb-90 {
    margin-bottom: 5.625rem;
}

.mb-100 {
    margin-bottom: 6.25rem;
}

.mr-300 {
    margin-right: 18.75rem;
}

.ml-300 {
    margin-left: 18.75rem;
}

.pos-rel {
    position: relative;
    z-index: 1;
}

/* ===================
theme button
====================== */

.theme-btn {
    font-size: clamp(0.95rem, 0.9rem + 0.2vw, 1.05rem);
    color: #ffffff;
    padding: clamp(0.75rem, 0.65rem + 0.3vw, 0.95rem) clamp(1rem, 0.8rem + 0.8vw, 1.4rem);
    transition: all 0.5s;

    position: relative;
    border-radius: var(--radius-md);
    font-weight: 500;
    cursor: pointer;
    text-align: center;
    overflow: hidden;
    border: none;
    background: #C9A24D;
    box-shadow: var(--shadow-soft);
    z-index: 1;
}

.theme-btn::before {
    content: "";
    height: 25rem;
    width: 25rem;
    background: #0E2E50;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%) scale(0);
    transition: 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    z-index: -1;
}

.theme-btn:hover {
    color: #fff;
}

.theme-btn:hover::before {
    transform: translateY(-50%) translateX(-50%) scale(1);
}

.theme-btn i {
    margin-left: 0.3125rem;
}

.theme-btn span {
    margin-right: 0.3125rem;
}

.theme-btn2 {
    background: #fff;
    color: #0E2E50;
}

.theme-btn2::before {
    background: #C9A24D;
}

.theme-btn2:hover {
    color: #fff;
}


/* ===================
container
====================== */

/*
@media (min-width: 75rem) {

  .container,
  .container-sm,
  .container-md,
  .container-lg,
  .container-xl {
    max-width: 74.0625rem;
  }
}
*/


/* ===================
scroll-top css
====================== */

#scroll-top {
    display: none;
    position: fixed;
    bottom: clamp(1rem, 2vw, 1.5rem);
    right: clamp(1rem, 3vw, 2rem);
    z-index: 99;
    font-size: clamp(1.1rem, 0.9rem + 0.6vw, 1.4rem);
    border: none;
    outline: none;
    border-radius: 0.5rem;
    color: #fff;
    background: #C9A24D;
    cursor: pointer;
    width: clamp(2.75rem, 2.4rem + 1vw, 3.25rem);
    height: clamp(2.75rem, 2.4rem + 1vw, 3.25rem);
    line-height: clamp(2.75rem, 2.4rem + 1vw, 3.25rem);
    text-align: center;
    transition: all .5s ease-in-out;
    z-index: 1;
}


@media all and (min-width: 48rem) and (max-width: 74.9375rem) {
    #scroll-top {
        bottom: 6.25rem;
    }
}


/* ===================
header top css
====================== */

.header-top {
    background: #0E2E50;
    padding: clamp(0.4rem, 0.3rem + 0.2vw, 0.6rem) 0;
    position: relative;
    border-bottom: 0.0625rem solid rgba(255, 255, 255, 0.1);
    z-index: 2;
}

.header-top-wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.header-top-contact ul {
    display: flex;
    align-items: center;
    gap: clamp(0.75rem, 0.35rem + 1vw, 1.5625rem);
}

.header-top-contact ul li {
    display: flex;
    align-items: center;
    gap: 0.625rem;
}

.header-top-contact-icon {
    width: clamp(2.4rem, 2.2rem + 0.8vw, 2.8125rem);
    height: clamp(2.4rem, 2.2rem + 0.8vw, 2.8125rem);
    line-height: clamp(2.2rem, 2rem + 0.8vw, 2.5625rem);
    background: #fff;
    border-radius: 50%;
    text-align: center;
}

.header-top-contact-icon img {
    width: 1.5rem;
}

.header-top-contact-info h6 {
    color: #fff;
    font-size: clamp(0.82rem, 0.52rem + 0.3vw, 0.82rem);
}

.header-top-contact ul li a {
    color: #fff;
    font-weight: 400;
    font-size: clamp(0.82rem, 0.5rem + 0.3vw, 0.82rem);
}

.header-top-contact ul li a i {
    color: #C9A24D;
    margin-right: 0.3125rem;
}

.header-top-right {
    display: flex;
    align-items: center;
    gap: 0.9375rem;
}

.header-top-link {
    color: #fff;
}

.header-top-link i {
    color: #C9A24D;
    margin-right: 0.3125rem;
}

.header-top-link:hover {
    color: #C9A24D;
}

.header-top-social span {
    color: #fff;
    margin-right: 0.625rem;
}

.header-top-social a {
    width: 2.25rem;
    height: 2.25rem;
    line-height: 2.25rem;
    color: #fff;
    font-size: 0.9rem;
    text-align: center;
    transition: all .5s ease-in-out;
}

.header-top-social a:hover {
    color: #C9A24D;
}

.header-phone {
    display: flex;
    align-items: center;
    gap: 0.9375rem
}

.header-phone-content span {
    display: block;
    margin-bottom: 0.8125rem;
    line-height: .6;
    color: #0E2E50;
    font-weight: 500
}

.header-phone-icon {
    width: clamp(2.75rem, 2.4rem + 1vw, 3.25rem);
    height: clamp(2.75rem, 2.4rem + 1vw, 3.25rem);
    line-height: clamp(2.75rem, 2.4rem + 1vw, 3.25rem);
    background: #C9A24D;
    border-radius: 3.125rem;
    text-align: center
}

.header-phone-icon img {
    width: 1.6875rem
}

.header-phone-number {
    font-size: 1.25rem;
    line-height: 1
}

.header-phone-number a {
    color: #C9A24D;
}


@media all and (max-width: 74.9375rem) {
    .header-top-account {
        display: none;
    }

    .header-top::before {
        width: 20rem;
    }

    .header-top-contact ul {
        gap: 0.625rem;
    }

    .header-top-social a {
        width: 2.125rem;
        height: 2.125rem;
        line-height: 2.3125rem;
        margin-left: 0;
    }

    .header-top-left {
        margin-right: 0.3125rem;
    }
}

@media all and (max-width: 62rem) {
    .header-top {
        display: none;
    }
}


/* ===================
nav menu css
====================== */

.main {
    margin-top: 0rem;
    background-color: #f9f9f9;
}

@media all and (min-width: 62rem) {
    .navbar .nav-item .nav-link {
        margin-right: clamp(0.75rem, 0.4rem + 1vw, 1.375rem);
        padding: clamp(1rem, 0.8rem + 1vw, 1.875rem) 0;
        font-size: clamp(0.9rem, 0.9rem + 0.25vw, 0.9rem);
        font-weight: 500;
        color: #0E2E50;

    }

    .navbar .nav-item:last-child .nav-link {
        margin-right: 0;
    }

    .navbar .nav-item .dropdown-menu {
        display: block;
        opacity: 0;
        visibility: hidden;
        transition: .3s;
        margin-top: 0;
        padding: 0.5rem;
        border: none;
        left: -15px;
        border-radius: var(--radius-md);
        background: #fff;
        width: 13.75rem;
    }

    .navbar .nav-item .dropdown-menu::before {
        content: "\f0d8";
        position: absolute;
        font-family: "Font Awesome 6 Pro";
        color: #fff;
        font-size: 3.125rem;
        font-weight: bold;
        left: 1.5625rem;
        top: -45px;
    }

    .navbar .nav-item .dropdown-menu li {
        border-bottom: 0.0625rem solid #eee;
    }

    .navbar .nav-item .dropdown-menu li:last-child {
        margin-bottom: 0;
        border-bottom: none;
    }

    .navbar .nav-item .dropdown-menu .dropdown-item {
        font-size: 0.9rem;
        font-weight: 500;
        padding: 0.625rem 0 0.625rem 1.25rem;
        color: #0E2E50;
        position: relative;

        transition: all .5s ease-in-out;
        z-index: 1;
    }

    .navbar .nav-item .dropdown-menu .dropdown-item:hover {
        background: transparent;
        color: #C9A24D;
        padding-left: 1.875rem;
    }

    .navbar .nav-item .dropdown-menu .dropdown-item::before {
        display: none;
        /*  content: "\f111";
          position: absolute;
          font-family: "Font Awesome 6 Pro";
          left: 0.75rem;
          top: 1.2812rem;
          color: #C9A24D;
          font-weight: bold;
          font-size: 0.375rem;
          transform: scale(0, 0);
          transition: all .5s ease-in-out;
          z-index: -1;*/
    }

    .navbar .nav-item .dropdown-menu .dropdown-item:hover::before {
        transform: scale(1, 1);
    }

    .navbar .nav-item .nav-link {
        position: relative;
    }

    .navbar .nav-item .nav-link.active,
    .navbar .nav-item:hover .nav-link {
        color: #C9A24D;
    }

    .navbar .nav-item:hover .dropdown-menu {
        transition: .3s;
        opacity: 1;
        visibility: visible;
        top: 100%;
        transform: rotateX(0deg);
    }

    .navbar .dropdown-menu-end {
        right: 0;
        left: auto;
    }

    .navbar .dropdown-menu.fade-down {
        top: 80%;
        transform: rotateX(-75deg);
        transform-origin: 0% 0%;
    }

    .navbar .dropdown-menu.fade-up {
        top: 140%;
    }

    .header-nav-right {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 0.9375rem;
        margin-left: 1.875rem;
    }

    .header-nav-link {
        position: relative;
        width: 2.8125rem;
        height: 2.8125rem;
        line-height: 2.8125rem;
        color: #0E2E50;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .header-nav-link:hover {
        color: #C9A24D;
    }

    .header-nav-link.search-box-outer {
        font-size: 1.125rem;
    }

    #main_nav {
        justify-content: flex-end;
    }

}


/*bootstrap nav*/
.navbar {
    background: #fff;
    padding-top: 0;
    padding-bottom: 0;
    z-index: 999;
}

.navbar.fixed-top {
    background: #fff;
    animation: slide-down 0.7s;
}

.navbar.fixed-top .nav-item .nav-link {
    color: #0E2E50;
}

.navbar.fixed-top .header-nav-link {
    color: #0E2E50;
}

.navbar.fixed-top .header-nav-link:hover {
    color: #C9A24D;
}

.navbar.fixed-top .nav-item .nav-link.active,
.navbar.fixed-top .nav-item:hover .nav-link {
    color: #C9A24D;
}


@keyframes slide-down {
    0% {
        transform: translateY(-100%);
    }

    100% {
        transform: translateY(0);
    }
}

.navbar .navbar-brand .logo-display {
    display: block;
}

.navbar .navbar-brand .logo-scrolled {
    display: none;
}

.navbar.fixed-top .navbar-brand .logo-display {
    display: none;
}

.navbar.fixed-top .navbar-brand .logo-scrolled {
    display: block;
}

button.navbar-toggler:focus {
    outline: none;
    box-shadow: none;
}

.navbar-toggler-btn-icon {
    display: inline-block;
    width: inherit;
    height: inherit;
}

.navbar-brand {
    margin-right: 0;
}

.navbar-brand img {
    width: clamp(7.75rem, 6.2rem + 1vw, 7.75rem);
}

/* dropdown toggler */
.dropdown-toggle::after {
    display: inline-block;
    margin-left: 0.3125rem;
    vertical-align: baseline;
    font-family: "Font Awesome 6 Pro";
    content: "\f107";
    font-weight: 600;
    border: none;
    font-size: 0.92rem;
}


@media all and (max-width: 74.9375rem) {
    .header-nav-right {
        gap: 0.3125rem;
        margin-left: 0.9375rem;
    }

    .navbar .nav-item .nav-link {
        margin-right: 0.9375rem;
    }
}


/* mobile menu */
.mobile-menu-right {
    display: none;
}

@media all and (max-width: 61.9375rem) {
    .navbar {
        top: 0;
        right: 0;
        left: 0;
        position: fixed;
    }

    .navbar-bg {
        height: 3.6875rem;
    }

    .navbar-bg::before {
        transform: translateY(0) skew(-15deg);
        left: -8px;
    }

    .navbar-brand {
        padding-left: 0.625rem;
    }

    .navbar-brand img {
        width: 8.125rem;
    }

    .navbar-collapse {
        max-height: 13.75rem;
        overflow: hidden;
        overflow-y: auto;
        padding: 0 1.25rem;
        background-color: #fff;
    }

    .dropdown-toggle::after {
        float: right;
    }

    .navbar .nav-item .nav-link {
        color: #0E2E50;
        font-weight: 700;
        transition: all .5s ease-in-out;
    }

    .navbar .nav-item .nav-link:hover {
        color: #C9A24D !important;
    }

    .navbar-toggler {
        padding: 0;
        border: none;
    }

    .mobile-menu-right {
        display: flex;
        align-items: center;
    }

    .mobile-menu-link {
        font-size: 1.25rem;
        color: #0E2E50;
        font-weight: 500;
        padding-right: 1.25rem;
        margin-bottom: 0;
        position: relative;
    }

    .mobile-menu-link:hover {
        color: #C9A24D;
    }

    .navbar-toggler-btn-icon {
        font-size: 1.5625rem;
        color: #0E2E50;
        font-weight: 500;
    }

    .navbar.fixed-top .mobile-menu-link {
        color: #0E2E50;
    }

    .navbar.fixed-top .navbar-toggler-btn-icon {
        color: #0E2E50;
    }

    .navbar .dropdown-menu {
        border-radius: 0.5rem;
    }
}


/* ======================
multi level dropdown menu
========================= */

.navbar .nav-item .dropdown-submenu {
    position: relative;
}

.navbar .nav-item .dropdown-submenu .dropdown-menu::before {
    display: none;
}

.navbar .nav-item .dropdown-submenu a::after {
    transform: rotate(-90deg);
    position: absolute;
    right: 0.9375rem;
    top: 0.75rem;
    font-weight: 600;
}

.navbar .nav-item .dropdown-submenu a:hover {
    background: transparent;
    color: #fff;
}

.navbar .nav-item .dropdown-submenu .dropdown-menu {
    top: 120%;
    left: 100%;
    opacity: 0;
    visibility: hidden;
}

.navbar .nav-item .dropdown-submenu:hover .dropdown-menu {
    top: 0;
    opacity: 1;
    visibility: visible;
}

@media all and (max-width: 61.9375rem) {
    .navbar .nav-item .dropdown-submenu .dropdown-menu {
        margin: 0 1.0625rem;
    }

    .navbar .nav-item .dropdown-submenu .dropdown-menu {
        opacity: unset;
        visibility: unset;
    }

    .navbar .nav-item .dropdown-submenu a::after {
        top: 0.25rem;
    }

    .navbar .nav-item .dropdown-submenu a:hover {
        color: #C9A24D;
    }
}


/* ===================
hero css
====================== */

.hero-section {
    position: relative;
}

.hero-single {
    padding-top: clamp(7rem, 12vh, 10rem);
    padding-bottom: clamp(6rem, 16vh, 12.5rem);
    background-position: center !important;
    background-size: cover !important;
    background-repeat: no-repeat !important;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    z-index: 1;
}

.hero-single::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    left: -0.5px;
    top: 0;
    background: rgba(0, 0, 0, .7);
    z-index: -1;
}

.hero-single .hero-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
}

.hero-single .hero-content .hero-title {
    color: #fff;
    font-size: clamp(2.2rem, 1.4rem + 4vw, 3.5rem);
    font-weight: 700;
    margin: clamp(0.75rem, 0.5rem + 1vw, 1.25rem) 0;
    line-height: 1.05;
    /**/
}

.hero-single .hero-content .hero-title span,
.user-profile-wrapper .estate_type {
    color: #C9A24D;
}


.hero-single .hero-content .hero-sub-title {
    color: #C9A24D;
    font-size: clamp(0.95rem, 0.8rem + 0.8vw, 1.35rem);
    letter-spacing: clamp(0.08em, 0.25vw, 0.28em);
    position: relative;
    font-weight: 700;
    text-transform: uppercase;
}

.hero-single .hero-content p {
    color: #fff;
    font-size: clamp(1rem, 0.92rem + 0.5vw, 1.3rem);
    line-height: 1.55;
    font-weight: 500;
    margin-bottom: 1.25rem;

}

.hero-single .hero-content .hero-btn {
    gap: 2rem;
    display: flex;
    margin-top: 1rem;
    justify-content: start;
}

.hero-slider.owl-theme .owl-nav {
    margin-top: 0;
}

.hero-slider.owl-theme .owl-nav [class*=owl-] {
    color: #C9A24D;
    font-size: 1.5625rem;
    margin: 0;
    padding: 0;
    background: #fff;
    display: inline-block;
    cursor: pointer;
    height: 3.4375rem;
    width: 3.4375rem;
    border-radius: 3.125rem;
    line-height: 3.4375rem;
    text-align: center;
    transition: all .5s ease-in-out;
}

.hero-slider.owl-theme .owl-nav [class*=owl-]:hover {
    background: #C9A24D;
    color: #fff;
}

.hero-slider.owl-theme .owl-nav .owl-prev {
    left: 2.5rem;
}

.hero-slider.owl-theme .owl-nav .owl-next {
    right: 2.5rem;
}

.hero-slider.owl-theme .owl-nav .owl-prev,
.hero-slider.owl-theme .owl-nav .owl-next {
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
}

@media all and (max-width: 74.9375rem) {

    .hero-single .hero-content .hero-title {
        font-size: 2.3125rem;
    }

    .hero-slider.owl-theme .owl-nav .owl-prev,
    .hero-slider.owl-theme .owl-nav .owl-next {
        top: unset;
        bottom: 7.8125rem !important;
    }

    .hero-slider.owl-theme .owl-nav .owl-prev {
        left: unset;
        right: 7.5rem;
    }

    .hero-slider.owl-theme .owl-nav .owl-next {
        right: 2.5rem;
    }

}

@media all and (max-width: 61.9375rem) {

    .hero-single .hero-content .hero-title {
        font-size: 1.75rem;
        line-height: 1.75;
    }

    .hero-single .hero-content .hero-btn {
        gap: 1.5rem;
    }

    .hero-single .hero-content .hero-btn .theme-btn {
        padding: 0.75rem 0.9375rem
    }

}

@media all and (max-width: 47.9375rem) {

    .hero-single .hero-content .hero-sub-title {
        font-size: 1.125rem;
    }

    .hero-single .hero-content .theme-btn {
        padding-left: 1.25rem;
    }

    .hero-img {
        display: none;
    }

}


/* =====================
search css
===================== */

.search-nav .nav-item {
    margin: 0.625rem;
}

.search-nav .nav-link {
    background: #fff;
    border-radius: 0.625rem;
    padding: 0.625rem 1.25rem;
    font-weight: 500;
    color: #0E2E50;
    position: relative;
    transition: none;
}

.search-nav .nav-link::before {
    content: "\f0d7";
    position: absolute;
    font-family: "Font Awesome 6 Pro", serif;
    left: 50%;
    bottom: -47px;
    font-size: 3.125rem;
    color: #C9A24D;
    font-weight: bold;
    transform: translateX(-50%);
    opacity: 0;
    visibility: hidden;
}

.search-nav .nav-link.active::before {
    opacity: 1;
    visibility: visible;
}

.search-nav .nav-link.active {
    background: #C9A24D;
}

.search-form {
    background: #fff;
    padding: clamp(1rem, 0.75rem + 1vw, 1.75rem);
    border-radius: var(--radius-xl);
    position: relative;

}

.search-form .form-group {
    position: relative;
}

.search-form .form-group i {
    position: absolute;
    left: 0.9375rem;
    top: 0.3rem;
}

.search-form .form-control {
    border-radius: var(--radius-md);
    padding: 0.475rem 1.125rem 0.475rem 1rem;
    box-shadow: none;
    color: #757F95;
}

.search-form .form-control::placeholder {
    color: #757F95;
}

.search-form .nice-select {
    width: 100%;
    /* height: 3.5rem;
     line-height: 3.4375rem;*/
    border-radius: var(--radius-md);
    padding-left: 2.5rem;
    font-size: 0.92rem;
    border-color: #CED4DA;
    color: #757F95;
}

.search-form .form-control:focus,
.search-form .nice-select:focus {
    border-color: #C9A24D;
}

.search-form .nice-select .list {
    width: 100%;
    border: none;
    border-radius: var(--radius-md);
    padding: 0.625rem;

}

.search-form .nice-select .option.focus,
.search-form .nice-select .option.selected.focus,
.search-form .nice-select .option:hover {
    background: #F6F6F6;
    color: #C9A24D;
    border-radius: 0.5rem;
}

.search-form .nice-select:after {
    width: 0.5rem;
    height: 0.5rem;
    margin-top: -5px;
    right: 0.9375rem;
}

.search-form .theme-btn {
    width: 100%;
}

.search-form .advanced-search {
    cursor: pointer;
}

.advanced-search-menu {
    position: absolute;
    background-color: #fff;
    border-radius: 1.25rem;
    display: none;
    min-height: 15.875rem;
    left: 0;
    top: 8.75rem;
    width: 100%;
    padding: 1.875rem 1.875rem 0.9375rem 1.875rem;
    border: 0.0625rem solid #0f172a14;
    z-index: 2;
}

.advanced-search-menu::before {
    content: "\f0d8";
    position: absolute;
    font-family: "Font Awesome 6 Pro", serif;
    font-size: 2.5rem;
    color: #fff;
    font-weight: bold;
    left: 50%;
    top: -68px;
    transform: translateX(-50%);
}

.advanced-search-menu .form-check {
    text-align: left;
    /* margin-bottom: 1.5625rem;*/
}

.advanced-search-menu .form-check-label {
    color: #757F95;
}

.advanced-search-menu .form-check-input {
    margin-top: 0.3875rem;
    box-shadow: none;
    border-color: #757F95;
}

.advanced-search-menu .form-check-input:focus {
    border-color: #C9A24D;
}


@media all and (max-width: 61.9375rem) {

    .search-form .form-group,
    .search-form .price-range-slider,
    .search-form .nice-select {
        margin-bottom: 1.5625rem;
    }

    .search-form .advanced-search {
        margin-bottom: 1.5625rem;
        padding: 0.625rem 0;
        font-size: 0.92rem;
    }

    .search-form .advanced-search i {
        margin-right: 0.625rem;
    }

    .advanced-search-menu {
        top: 107%;
    }

    .search-form .theme-btn::before {
        display: none;
    }

    .search-form .theme-btn:hover {
        background: #0E2E50;
        color: #fff;
    }

}


@media all and (max-width: 47.9375rem) {
    .search-nav .nav-link {
        padding: 0.5rem 1rem;
    }

    .advanced-search-menu {
        padding: 1.25rem;
    }
}


/* =====================
price range slider
===================== */

.ui-slider-handle {
    top: -0.4em !important;
    border-radius: 3.125rem;
    background: #fff !important;
    border: 0.25rem solid #C9A24D !important;
}

.ui-widget.ui-widget-content {
    background: #E6E9EC;
    border: none;
    border-radius: 3.125rem;
    height: 0.4em;
}

.ui-widget-header {
    background: #C9A24D;
}

.priceRange {
    background: transparent;
    border: none;
    font-weight: 500;
    outline: none;
}

.price-range-slider label {
    color: #6C7592;
}


/* =====================
play btn
===================== */

.play-btn {
    display: inline-block;
    padding: 0;
    height: 4.6875rem;
    width: 4.6875rem;
    line-height: 4.6875rem;
    font-size: 1.25rem;
    text-align: center;
    background: #C9A24D;
    color: #fff !important;
    position: absolute;
    border-radius: 50%;
    z-index: 1;
}

.play-btn i::after {
    content: "";
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    z-index: -1;
    background-color: #C9A24D;
    border-radius: 3.125rem;
    animation: ripple-wave 1s linear infinite;
    -webkit-transform: scale(1);
    transform: scale(1);
    transition: all 0.5s ease-in-out;
}

@keyframes ripple-wave {
    0% {
        opacity: 0.8;
        -webkit-transform: scale(0.9);
        transform: scale(0.9);
    }

    100% {
        opacity: 0;
        -webkit-transform: scale(2);
        transform: scale(2);
    }
}


/* ===================
category css
====================== */

.category-area {
    position: relative;
}

.category-item {
    text-align: center;
    background: #fff;
    margin-bottom: 1.5625rem;
    border-radius: var(--radius-md);

    transition: all .5s ease-in-out;
}

.category-item:hover {
    transform: translateY(-5px);
}

.category-item a {
    padding: clamp(1rem, 0.85rem + 0.5vw, 1.4rem);
    width: 100%;
    cursor: pointer;
}

.category-icon {
    font-size: clamp(1.25rem, 1rem + 0.2vw, 1.75rem);
    color: #C9A24D;
    line-height: 1;
}

.category-title {
    margin: 0.625rem 0;
}

.category-property {
    display: block;
    width: 2.8125rem;
    height: 2.8125rem;
    line-height: 2.75rem;
    background: #F3F6FA;
    color: #C9A24D;
    border-radius: 3.125rem;
    margin: 0 auto;
    font-weight: 500;
}


/* ===================
property listing css
====================== */

.property-listing {
    position: relative;
}

.listing-item {
    background: #fff;
    padding: clamp(0.85rem, 0.75rem + 0.4vw, 1.1rem);
    border-radius: var(--radius-md);
    position: relative;
    margin-bottom: var(--space-lg);
    box-shadow: var(--shadow-soft);
    transition: all .5s ease-in-out;
}

.listing-badge {
    position: absolute;
    right: 1.875rem;
    top: 1.875rem;
    background: #C9A24D;
    padding: 0.125rem 0.625rem;
    color: #fff;
    border-radius: 0.5rem 0.5rem 0.5rem 0.5rem;

    z-index: 1;
}

.listing-ref-grid {
    position: absolute;
    left: 1.875rem;
    top: 14.375rem;
    background: #C9A24D;
    padding: 0.125rem 0.625rem;
    color: #fff;
    border-radius: 0.5rem 0.5rem 0.5rem 0.5rem;

    z-index: 1;
}

.listing-ref-list {
    position: absolute;
    right: 0.9375rem;
    top: 15rem;
    background: #C9A24D;
    padding: 0.125rem 0.625rem;
    color: #fff;
    border-radius: 0.5rem 0.5rem 0.5rem 0.5rem;

    z-index: 1;
}

.listing-ref-sidebar {
    position: absolute;
    left: 1.875rem;
    top: 15.75rem;
    background: #C9A24D;
    padding: 0.125rem 0.625rem;
    color: #fff;
    border-radius: 0.5rem 0.5rem 0.5rem 0.5rem;

    z-index: 1;
}

.listing-img {
    overflow: hidden;
    border-radius: 0.625rem;
    position: relative;
}

.listing-item:hover .listing-img img {
    transform: scale(1.2);
}

.listing-img img {
    border-radius: 0.625rem;
}

.listing-title {
    margin: var(--space-sm) 0 var(--space-2xs) 0;
    font-size: clamp(1rem, 0.92rem + 0.35vw, 1rem);
}

.listing-title a:hover {
    color: #C9A24D;
}

.listing-sub-title i {
    margin-right: 0.5rem;
    color: #C9A24D;
}

.listing-price {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0.9375rem 0 1.25rem 0;
}

.listing-price-title {
    font-size: 0.92rem;
}

.listing-price-amount {
    font-size: clamp(1.1rem, 1rem + 0.5vw, 1.45rem);
    font-weight: 600;
    color: #C9A24D;
}

.listing-btns {
    display: flex;
    align-items: center;
    gap: clamp(0.5rem, 0.4rem + 0.2vw, 0.75rem);
    flex-wrap: wrap;
}

.listing-btns a {
    width: 2.5rem;
    height: 2.5rem;
    line-height: 2.5rem;
    text-align: center;
    color: #C9A24D;
    border-radius: 0.625rem;
    background: rgba(18, 197, 156, 0.1);
}

.listing-btns a:hover {
    background: #C9A24D;
    color: #fff;
}

.listing-feature-list {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.listing-feature-list i {
    margin-right: 0.5rem;
    color: #C9A24D;
}

.listing-bottom {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 0.9375rem;
    padding-top: 0.9375rem;
    border-top: 0.0625rem solid rgba(0, 0, 0, .07);
}

.listing-author {
    display: flex;
    align-items: center;
    gap: 0.625rem;
}

.listing-author-img {
    width: 2.8125rem;
}

.listing-author-img img {
    border-radius: 50%;
}

.listing-btn {
    padding: 0.3125rem 0.875rem;
    border: 0.125rem solid #C9A24D;
    color: #C9A24D;
    font-weight: 500;
    border-radius: 0.625rem;
}

.listing-btn:hover {
    background: #C9A24D;
    color: #fff;
}

.property-listing-slider .listing-item {
    margin: 0.9375rem;
    box-shadow: none;
    border: 0.125rem solid rgba(0, 0, 0, .05);
}

.property-listing-slider .owl-dots {
    text-align: center;
    margin-top: 1.875rem;
}

.property-listing-slider .owl-dots .owl-dot span {
    background: transparent;
    border: 0.125rem solid #C9A24D;
    margin: 0.3125rem;
    border-radius: 3.125rem;
    width: 0.75rem;
    height: 0.75rem;
    display: inline-block;
    transition: all .5s ease-in-out;
}

.property-listing-slider .owl-dots .owl-dot.active span {
    background: #C9A24D;
}

/* listing list */

.listing-list .listing-badge {
    right: unset;
    top: 0.9375rem;
    left: 0.9375rem;
}

/* listing sort */
.property-sort {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: #fff;
    margin-bottom: 1.5625rem;
    padding: 0.625rem 0.625rem 0.625rem 0.9375rem;
    border-radius: 0.625rem;

}

.property-sort-list-grid a {
    width: 2.1875rem;
    height: 2.1875rem;
    line-height: 2.0625rem;
    border-radius: 0.375rem;
    text-align: center;
    border: 0.0625rem solid #CED4DA;
    color: #0E2E50;
}

.property-sort-list-grid a.active {
    border-color: #C9A24D;
    color: #C9A24D;
}

.property-sort .nice-select {
    width: 100%;
    height: 2.875rem;
    line-height: 2.8125rem;
    border-radius: 0.5rem;
    padding-left: 1.25rem;
    font-size: 1rem;
    border-color: #CED4DA;
    color: #757F95;
}

.property-sort .form-control:focus,
.property-sort .nice-select:focus {
    border-color: #C9A24D;
}

.property-sort .nice-select .list {
    width: 100%;
    border: none;
    border-radius: var(--radius-md);
    padding: 0.625rem;

}

.property-sort .nice-select .option.focus,
.property-sort .nice-select .option.selected.focus,
.property-sort .nice-select .option:hover {
    background: #F6F6F6;
    color: #C9A24D;
    border-radius: 0.5rem;
}

.property-sort .nice-select:after {
    width: 0.5rem;
    height: 0.5rem;
    margin-top: -5px;
    right: 0.9375rem;
}


/* listing sidebar */

.listing-sidebar .form-group {
    margin-bottom: 1.25rem !important;
}

.listing-sidebar .form-check-input {
    margin-top: 0.4375rem;
    box-shadow: none;
}

.listing-sidebar .form-check-input:focus {
    border-color: #C9A24D;
}

.listing-sidebar .nice-select {
    margin-bottom: 1.25rem;
}


@media all and (min-width: 62rem) {
    .listing-list .listing-item {
        display: flex;
        gap: 1.875rem;
    }

    .listing-list .listing-img img {
        width: 23.75rem;
        height: 18.125rem;
    }

    .listing-list .listing-content {
        flex: 1;
    }
}

@media all and (max-width: 47.9375rem) {
    .property-sort {
        flex-direction: column;
        gap: 1.5625rem;
        padding: 1.25rem;
    }

    .property-sort-box {
        width: 100%;
    }
}


/* ===================
property single css
====================== */

.property-single-slider img {
    border-radius: 0.625rem;
}

.property-single-meta {
    display: flex;
    justify-content: space-between;
    padding: 0.9375rem 0;
}

.property-single-meta-left p {
    margin-top: 0.3125rem;
    margin-bottom: 0.625rem;
}

.property-single-meta-left span {
    background: #C9A24D;
    padding: 0.3125rem 0.625rem;
    color: #fff;
    border-radius: 0.4375rem;
}

.property-single-meta-right {
    text-align: right;
}

.property-single-price {
    font-size: 1.375rem;
    color: #C9A24D;
    font-weight: 700;
}

.property-single-rating i {
    color: #F6B500;
}

.property-single-meta-option {
    margin-top: 0.5rem;
}

.property-single-meta-option a {
    width: 2.1875rem;
    height: 2.1875rem;
    line-height: 2.1875rem;
    background: #C9A24D;
    color: #fff;
    text-align: center;
    margin-left: 0.3125rem;
    border-radius: 0.5rem;
}

.property-single-meta-option a:hover {
    background: #0E2E50;
}

.property-single-content {
    background: #fff;
    border-radius: var(--radius-md);
    padding: 0 clamp(1rem, 0.7rem + 1.2vw, 1.875rem) clamp(1rem, 0.7rem + 1.2vw, 1.875rem) clamp(1rem, 0.7rem + 1.2vw, 1.875rem);
    margin-top: var(--space-lg);
    box-shadow: var(--shadow-soft);
}

.property-single-content h4 {
    padding: 0.9375rem 0;
    margin-bottom: 0.9375rem;
    border-bottom: 0.0625rem solid rgba(0, 0, 0, .1);
}

.property-single-info-item i {
    margin: 0.3125rem 0.3125rem 0.3125rem 0;
    color: #C9A24D;
}

.property-single-floor-item i {
    margin-right: 0.3125rem;
    color: #C9A24D;
}

.property-single-floor-img {
    margin-top: 2.5rem;
}

.property-single-video .video-content {
    background-attachment: unset;
    border-radius: var(--radius-md);
}

.property-single-video .video-content::before {
    background-attachment: unset;
    border-radius: var(--radius-md);
}

.property-single-info iframe {
    border-radius: var(--radius-md);
}

.property-single-nearby-list {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.property-single-nearby-item h5 {
    margin-bottom: 0.9375rem;
}

.property-single-nearby-item h5 i {
    margin-right: 0.3125rem;
    color: #C9A24D;
}

.property-single-nearby-title {
    margin: 0.3125rem 0;
}

.property-single-nearby-info {
    display: flex;
    align-items: center;
    gap: 0.625rem;
}

.property-single-nearby-rate {
    background: #C9A24D;
    color: #fff;
    padding: 0.3125rem 0.3125rem;
    border-radius: 0.3125rem;
    line-height: 1;
    font-size: 0.92rem;
}

.property-single-sidebar .theme-btn::before {
    width: 25rem;
    height: 25rem;
}

.property-single-sidebar .booking-btn .theme-btn {
    width: 100%;
}

.property-single-agent-content {
    display: flex;
    align-items: center;
    gap: 0.9375rem;
}

.property-single-agent-img img {
    border-radius: 3.125rem;
    border: 0.1875rem solid #C9A24D;
    padding: 0.1875rem;
    width: 6.25rem;
}

.property-single-agent-info h5 {
    margin-bottom: 0.5rem;
    font-size: 1.25rem;
}

.property-single-agent-info li i {
    margin-right: 0.5rem;
    color: #C9A24D;
}

.property-single-agent-info li a:hover {
    color: #C9A24D;
}

.property-single-agent-form {
    margin-top: 1.875rem;
}

.property-single-agent-form .form-group {
    margin-top: 1.25rem;
}

.property-single-agent-form .form-control {
    padding: 0.9375rem 1.25rem;
    border-radius: 0.625rem;
    box-shadow: none;
}

.property-single-agent-form .form-control:focus {
    border-color: #C9A24D;
}

.property-single-agent-form .theme-btn {
    width: 100%;
}

.property-similar-slider .listing-item {
    box-shadow: none;
    margin-bottom: 0;
    border: 0.125rem solid rgba(0, 0, 0, .05);
}

.property-similar-slider .owl-dots {
    text-align: center;
    margin-top: 1.25rem;
}

.property-similar-slider .owl-dots .owl-dot span {
    background: transparent;
    border: 0.125rem solid #C9A24D;
    margin: 0.3125rem;
    border-radius: 3.125rem;
    width: 0.75rem;
    height: 0.75rem;
    display: inline-block;
    transition: all .5s ease-in-out;
}

.property-similar-slider .owl-dots .owl-dot.active span {
    background: #C9A24D;
}

.property-single-slider.owl-theme .owl-nav {
    margin-top: 0;
}

.property-single-slider.owl-theme .owl-nav .owl-prev,
.property-single-slider.owl-theme .owl-nav .owl-next {
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    color: #C9A24D;
    font-size: 1.5625rem;
    margin: 0;
    padding: 0;
    background: #fff;
    display: inline-block;
    cursor: pointer;
    height: 3.125rem;
    width: 3.125rem;
    line-height: 3.125rem;
    border-radius: 3.125rem;
    text-align: center;
    transition: all .5s ease-in-out;
}

.property-single-slider.owl-theme .owl-nav button:hover {
    background: #C9A24D;
    color: #fff;
}

.property-single-slider.owl-theme .owl-nav .owl-prev {
    left: 1.25rem;
}

.property-single-slider.owl-theme .owl-nav .owl-next {
    right: 1.25rem;
}

.property-single2 .property-single-content {
    box-shadow: none;
    border: 0.125rem solid rgba(0, 0, 0, .05);
}


@media all and (max-width: 47.9375rem) {
    .property-single-meta {
        flex-direction: column;
        gap: 1.875rem;
    }

    .property-single-meta-right {
        text-align: left;
    }

    .property-single-nearby-list {
        flex-direction: column;
        align-items: flex-start;
    }
}


/* ===================
location css
====================== */

.location-area .location-item {
    margin-bottom: 1.5625rem;
    border-radius: 0.9375rem;
    overflow: hidden;
    position: relative;
}

.location-area .location-item::after {
    transition: all 0.3s;
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 35%;
    /*height: 9.375rem;*/
    bottom: 0;
    left: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 15%, rgba(0, 0, 0, .6) 100%) !important;
}

.location-area .location-item img {
    border-radius: 0.9375rem;
    width: 100%;
    transition: all 0.5s;
}

.location-area .location-item:hover img {
    -webkit-transform: scale(1.1);;
    transform: scale(1.1);
}

.location-area .location-info {
    position: absolute;
    bottom: 1.25rem;
    left: 1.25rem;
    z-index: 1;
}

.location-area .location-info h3 {
    color: #fff;
}

.location-area .location-info span {
    color: #fff;
}

.location-area .location-btn {
    position: absolute;
    width: 3.4375rem;
    height: 3.4375rem;
    line-height: 3.4375rem;
    text-align: center;
    background: #C9A24D;
    color: #fff !important;
    border-radius: 3.125rem;
    opacity: 0;
    visibility: hidden;
    top: 50%;
    left: 50%;
    font-size: 1.375rem;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);

    transition: all .5s ease-in-out;
}

.location-area .location-item:hover .location-btn {
    visibility: visible;
    opacity: 1;
}


/* ===================
agency css
====================== */

.agency-item {
    text-align: center;
    background: #fff;
    padding: clamp(1rem, 0.8rem + 0.8vw, 1.5rem);
    border-radius: var(--radius-lg);
    margin-bottom: 1.5625rem;
    position: relative;
    overflow: hidden;

    z-index: 1;
}

.agency-item::before {
    content: "";
    position: absolute;
    left: 1.25rem;
    right: 1.25rem;
    top: 0;
    height: 5rem;
    border-radius: 0 0 6.25rem 6.25rem;
    background: #C9A24D;
    z-index: -1;
}

.agency-img {
    width: clamp(5.5rem, 4.8rem + 2vw, 6.875rem);
    /* height: clamp(5.5rem, 4.8rem + 2vw, 6.875rem);*/
    background: #fff;
    border-radius: 50%;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-items: center;
    border: 0.3125rem solid #C9A24D;
}

.agency-name {
    margin: 0.625rem 0;
}

.agency-name h4 {
    font-weight: 700;
}

.agency-name span {
    color: #C9A24D;
    font-weight: 500;
}

.agency-info {
    margin-bottom: 0.9375rem;
}

.agency-info div {
    position: relative;
    display: block;
    margin-left: 0 !important;
    left: 0 !important;
}

.agency-info li {
    margin: 0.3125rem 0;
}

.agency-info li a:hover {
    color: #C9A24D;
}

.agency-info li i {
    margin-right: 0.5rem;
    color: #C9A24D;
}

.agency-social {
    margin-bottom: 1.875rem;
}

.agency-social a {
    width: 2.1875rem;
    height: 2.1875rem;
    line-height: 1.9375rem;
    border: 0.125rem solid #C9A24D;
    border-radius: 0.625rem;
    margin: 0.3125rem;
    text-align: center;
}

.agency-social a:hover {
    background: #C9A24D;
    color: #fff;
}

.agency-item .theme-btn {
    padding: 0.5rem 1.25rem;
}


/* agency 2 */

.agency-list .agency-item {
    display: flex;
    gap: 1.875rem;
    text-align: left;
}

.agency-list .agency-img {
    margin: auto 0 auto 0.5rem;
    width: 12.5rem;
    height: 12.5rem;
}

.agency-list .agency-item::before {
    display: none;
}

.agency-list .agency-info p {
    margin-bottom: 0.625rem;
}

.agency-list .agency-content {
    flex: 1;
}

.agency-list .agency-bottom {
    display: flex;
    align-items: center;
    gap: 2.5rem;
}

.agency-list .agency-social {
    margin-bottom: 0;
}

.agency-list .agency-social a {
    margin-left: 0;
}


@media all and (max-width: 47.9375rem) {
    .agency-list .agency-item {
        flex-direction: column;
    }

    .agency-list .agency-bottom {
        flex-direction: column;
        align-items: flex-start;
        gap: 1.25rem;
    }

    .agency-list .agency-img {
        margin-left: 0;
    }
}


/* ===================
agency single css
====================== */

.agency-rating {
    margin-bottom: 0.625rem;
}

.agency-rating i {
    color: #F6B500;
}

.agency-single-wrapper {
    padding: 1.25rem;
    background: #fff;
    border-radius: var(--radius-md);

}

.agency-single-wrapper .nav-tabs .nav-link {
    font-weight: 500;
    color: #0E2E50;
    border: none;
}

.agency-single-wrapper .nav-tabs .nav-link:hover {
    color: #C9A24D;
}

.agency-single-wrapper .nav-tabs .nav-item.show .nav-link,
.agency-single-wrapper .nav-tabs .nav-link.active {
    color: #C9A24D;
    border-bottom: 0.125rem solid #C9A24D;
}

.agency-single-content {
    margin: 2.5rem 1.25rem 1.25rem 1.25rem;
}

.agency-single-content .listing-item {
    box-shadow: none;
    border: 0.125rem solid rgba(0, 0, 0, .05);
}

@media all and (max-width: 74.9375rem) {
    .agency-single-content {
        margin: 2.5rem 0 0 0;
    }
}


/* ===================
compare css
====================== */

.compare-area {
    position: relative;
}

.compare-item {
    text-align: center;
}

.compare-content {
    display: block;
    position: relative;
    padding: 0 0.75rem;
    min-height: 16.25rem;
}

.compare-blank {
    display: block;
    height: 16.2812rem;
}

.compare-remove-btn {
    position: absolute;
    top: 1.25rem;
    right: 1.25rem;
    background: #DD4B39;
    color: #ffffff;
    width: 1.5625rem;
    height: 1.5625rem;
    border-radius: 0.3125rem;
    line-height: 1.5625rem;
    transition: all ease 0.4s;
}

.compare-img {
    position: relative;
    width: 100%;
}

.compare-img img {
    border-radius: 0.625rem;
}

.compare-title {
    padding: 0.75rem 0;
}

.compare-title h4 {
    font-size: 1.25rem;
    margin: 0 0 0.125rem 0;
}

.compare-title span {
    color: #C9A24D;
    font-weight: 500;
}

.display-mb {
    display: none !important;
}

.compare-wrapper {
    overflow: hidden;
}

.compare-wrapper div[class*='col-'] {
    padding: 0;
    transition: 0.2s linear;
}

.compare-wrapper ul {
    margin: 0;
    padding: 0;
}

.compare-wrapper ul li {
    padding: 0.9375rem 0;
    list-style: none;
    text-align: center;
}

.compare-wrapper ul li:nth-child(odd) {
    background: #F4F4F4;
}

.check-icon,
.cross-icon {
    display: inline-block;
    position: relative;
    text-align: center;
    color: #C9A24D;
}

.cross-icon {
    color: #DD4B39;
}

.compare-wrapper ul li span:not(:first-child) {
    display: inline-block;
    margin-left: 0.625rem;
}

@media (max-width: 62rem) {
    .display-mb {
        display: inline-block !important;
        line-height: 0.9375rem;
    }

}


/* ===================
property book css
====================== */

.booking-widget {
    background: #fff;
    padding: 1.875rem;
    border-radius: var(--radius-md);
    margin-bottom: 1.875rem;

}

.booking-widget-title {
    margin-bottom: 1.25rem;
}

.booking-form .form-group {
    margin-bottom: 1.25rem;
}

.booking-form .form-group label {
    margin-bottom: 0.5rem;
}

.booking-form .form-group .form-control {
    padding: 0.9375rem 1.125rem;
    border-radius: 0.625rem;
    box-shadow: none;
}

.booking-form .form-group .form-control:focus {
    border-color: #C9A24D;
}

.booking-summary {
    padding: 1.25rem;
    border-radius: 0.625rem;

}

.booking-property-img img {
    border-radius: 0.625rem;
}

.booking-property-title {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 1.25rem;
    margin-bottom: 0.625rem;
}

.booking-property-title h5 {
    margin-bottom: 0.3125rem;
}

.booking-property-title p {
    margin-bottom: 0;
    font-size: 0.92rem;
}

.booking-property-title p i {
    color: #C9A24D;
    margin-right: 0.3125rem;
}

.book-edit-btn {
    width: 2rem;
    height: 2rem;
    line-height: 1.875rem;
    text-align: center;
    background: #C9A24D;
    border-radius: 0.5rem;
    color: #fff;
}

.book-edit-btn:hover {
    background: #0E2E50;
    color: #fff;
}

.booking-property-rate {
    font-size: 0.92rem;
}

.rate-text {
    color: #646a9b;
}

.rate-type {
    color: #C9A24D;
}

.booking-order-info {
    margin-top: 2.5rem;
}

.booking-order-info span {
    float: right;
}

.booking-order-info li {
    margin-bottom: 0.9375rem;
}

.booking-pay-info {
    margin-top: 1.875rem;
    padding-top: 1.25rem;
    border-top: 0.0625rem solid #eee;
}

.order-total {
    padding-top: 0.625rem;
    border-top: 0.0625rem solid #eee;
}

.order-total span {
    font-weight: bold;
}


/* ===================
checkout css
====================== */

.property-checkout .booking-pay-info {
    border-top: none;
    margin-top: 0.9375rem;
    padding-top: 0;
}

.property-checkout .booking-pay-info hr {
    border-top-color: #eee !important;
    opacity: 1;
}


/* ===================
booking confirm css
====================== */

.booking-confirm-content {
    padding: clamp(1.5rem, 1rem + 2vw, 3.125rem);
    text-align: center;
    border-radius: 0.625rem;

}

.booking-confirm-icon i {
    width: 4.375rem;
    height: 4.375rem;
    line-height: 4.375rem;
    background: #C9A24D;
    color: #fff;
    font-size: 2.1875rem;
    border-radius: 3.125rem;
    text-align: center;
}

.booking-confirm-content h3 {
    margin-top: 1.25rem;
}

.booking-confirm-content p {
    margin: 0.9375rem 0;
}

.booking-confirm-content .theme-btn {
    margin-top: 0.9375rem;
}

.booking-confirm .booking-summary {
    padding: 3.125rem;
    text-align: center;
    border-radius: 0.625rem;

}

.booking-confirm .booking-summary-content {
    padding: 5rem 0;
}

.booking-confirm .booking-summary-list {
    text-align: left;
}

.booking-confirm .booking-summary-list h6 {
    padding-bottom: 0.9375rem;
    margin-bottom: 0.9375rem;
    border-bottom: 0.0625rem solid rgba(0, 0, 0, .1);
}

.booking-confirm .booking-summary-list li span {
    float: right;
}


/* ===================
about css
====================== */

.about-area {
    position: relative;
    display: block;
}

.about-left {
    position: relative;
    margin: 0 clamp(1rem, 2vw, 2.5rem) 0 clamp(0.5rem, 1vw, 1.25rem);
}

.about-img img {
    border-radius: 0.625rem;
}

.about-img::before {
    content: "";
    position: absolute;
    width: 70%;
    height: 70%;
    background: #C9A24D;
    border-radius: 0 0 0 0.625rem;
    left: -20px;
    bottom: -20px;
    clip-path: polygon(0 0, 0 100%, 100% 100%);
    z-index: -1;
}

.about-shape {
    position: absolute;
    right: -20px;
    bottom: -20px;
    z-index: -1;
}

.about-experience {
    background: #C9A24D;
    position: absolute;
    border-radius: 0.625rem 0.625rem 0 0;
    left: 3.125rem;
    bottom: 0;
    padding: 1.25rem;
}

.about-experience h1 {
    /*    font-weight: 700;*/
    font-size: 2rem;
    color: #fff;
}

.about-experience .about-experience-text {
    color: #fff;
    font-weight: 500;
}

.about-right {
    position: relative;
    display: block;
}

.about-list-wrapper {
    position: relative;
    display: block;
    margin-top: 0.9375rem;
    margin-bottom: 2.1875rem;
}

.about-list {
    position: relative;
    display: block;
}

.about-list li {
    position: relative;
    display: flex;
    align-items: center;
    gap: 0.625rem;
    margin-top: 0.3125rem;
}

.about-list li .about-icon {
    position: relative;
    display: flex;
    align-items: center;
}

.about-list li .about-icon span {
    font-size: 1.25rem;
    color: #C9A24D;
}

.about-bottom {
    display: flex;
    align-items: center;
    gap: 1.5625rem;
}

.about-call {
    display: flex;
    align-items: center;
    gap: 0.625rem;
}

.about-call-icon {
    width: 3.4375rem;
    height: 3.4375rem;
    font-size: 1.5625rem;
    border-radius: 3.125rem;
    background: #0E2E50;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;

}

.about-call-content span {
    font-weight: 500;
    color: #0E2E50;
}

.about-call-number {
    font-size: 1rem;
}

.about-call-number a {
    color: #C9A24D;
}


@media all and (max-width: 61.9375rem) {
    .about-left {
        margin-bottom: 3.75rem;
    }

    .about-experience {
        bottom: -20px;
    }
}

@media all and (max-width: 48rem) {
    .about-bottom {
        align-items: flex-start;
        justify-content: flex-start;
        flex-direction: column;
    }

    html {
        font-size: clamp(1rem, 1vw + 0.5rem, 1.5rem);
    }

    .hero-single .hero-content .hero-title {
        margin: clamp(0.45rem, 0.3rem + 1vw, 0.85rem) 0;
    }

    .searchForm .theme-btn {
        font-size: clamp(1rem, 4vw, 1rem);
    }
}


/* ===================
service css
====================== */

.service-area {
    position: relative;
    display: block;
    overflow: hidden;
}

.service-item {
    position: relative;
    padding: clamp(1.25rem, 1rem + 1vw, 1.875rem) clamp(0.9rem, 0.8rem + 0.4vw, 1.15rem);
    margin-bottom: var(--space-lg);
    border-radius: var(--radius-lg);
    background: #fff;
    text-align: center;
    transition: all .5s ease-in-out;

    z-index: 1;
}

.service-content {
    position: relative;
}

.service-icon {
    display: flex;
    justify-content: center;
    align-items: center;
    width: clamp(4rem, 3.4rem + 1.8vw, 5rem);
    height: clamp(4rem, 3.4rem + 1.8vw, 5rem);
    background: #C9A24D;
    border-radius: 1.25rem;
    left: 50%;
    transform: translateX(-50%);
    margin-bottom: 0.9375rem;
    position: relative;
    transition: all .5s ease-in-out;
}

.service-icon i {
    color: #fff;
    font-size: 2.5rem;
    line-height: 1;
}

.service-icon img {
    width: 4.375rem;
}

.service-arrow {
    margin-top: 1.5625rem;
}

.service-title a {
    font-size: clamp(1.1rem, 1rem + 0.65vw, 1.45rem);
    font-weight: 700;
    margin-bottom: 0.625rem;
    color: #0E2E50;
}

.service-title a:hover {
    color: #C9A24D;
}

.service-arrow a {
    width: 3.125rem;
    height: 3.125rem;
    line-height: 2.625rem;
    border-radius: 0.9375rem;
    border: 0.1875rem solid #fff;
    background: #C9A24D;
    transform: rotate(45deg);
    color: #fff;
    font-size: 1.25rem;
    text-align: center;
    position: relative;
    transition: all .5s ease-in-out;
    z-index: 1;
}

.service-item:hover .service-arrow a {
    border-color: #C9A24D;
    background: #fff;
}

.service-item .service-arrow a i {
    transition: all .5s ease-in-out;
}

.service-item:hover .service-arrow a i {
    color: #C9A24D;
    transform: rotate(-45deg);
}


/* ====================
service single
==================== */

.service-single-wrapper .widget-title {
    font-weight: 700;
}

.service-single-list i {
    color: #C9A24D;
    margin-right: 0.625rem;
}

.service-download a {
    border: 0.125rem solid #C9A24D;
    padding: 0.625rem 1.25rem;
    color: #0E2E50;
    display: block;
    margin-bottom: 1.25rem;
    font-weight: 600;
    border-radius: 0.625rem;
    transition: all .5s ease-in-out;
}

.service-download a i {
    margin-right: 0.625rem;
}

.service-download a:hover {
    background-color: #C9A24D;
    color: #fff;
}

.service-details h3 {
    color: #0E2E50;
    font-weight: 700;
}

.service-details img {
    border-radius: 0.625rem;
}


/* ===================
skill css
====================== */

.skills-section {
    margin-top: 2.5rem;
}

.skill-left {
    position: relative;
}

.skill-left img {
    border-radius: 0.4375rem;
}

.skill-shape {
    position: absolute;
    z-index: -1;
    left: -22px;
    top: -1px;
    width: 100%;
    height: 100%;
}

.skill-img {
    position: relative;
    display: block;
    -webkit-mask-image: url(../img/shape/03.png);
    mask-image: url(../img/shape/03.png);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: 100% 100%;
    -webkit-mask-position: center center;
    mask-position: center center;
    overflow: hidden;
}

.progress-box {
    margin-bottom: 1.875rem;
    position: relative;
}

.progress-box:last-child {
    margin-bottom: 0;
}

.progress-box h5 {
    font-size: 1rem;
    text-transform: uppercase;
    font-weight: 700;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.9375rem;
}

.progress-box .progress {
    border: 0.0625rem solid #D5E0F5;
    height: 1rem;
    padding: 0.25rem;
    border-radius: 3.125rem;
    background-color: #fff;
}

.progress-box .progress .progress-bar {
    background: linear-gradient(to right, #fe6d1c 0%, #fd3d10 100%);
    border-radius: 3.125rem;
}

@media all and (max-width: 61.9375rem) {
    .skill-right .site-heading {
        font-size: 1.875rem;
    }

    .skill-img img {
        width: 100%;
    }

}


/* ===================
feature css
====================== */

.feature-area {
    position: relative;
}

.feature-item {
    padding: 3.125rem 1.25rem;
    position: relative;
    background: #0D408F;
    text-align: center;
    overflow: hidden;
    margin-bottom: 1.5625rem;
    border-radius: var(--radius-md);
    transition: all .5s ease-in-out;
    z-index: 1;
}

.feature-item::before {
    content: "";
    position: absolute;
    width: 12.5rem;
    height: 12.5rem;
    background: #C9A24D;
    border-radius: 50%;
    right: -100px;
    top: -100px;
    z-index: -1;
}

.feature-icon {
    font-size: 5rem;
    color: #fff;
    line-height: 1;
    margin-bottom: 0.9375rem;
}

.feature-title {
    color: #fff;
    margin-bottom: 0.625rem;
}

.feature-item p {
    color: #fff;
}


/* ===================
video css
====================== */

.video-content {
    position: relative;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    background-attachment: fixed;
    border-radius: 0;
}

.video-content::before {
    content: "";
    position: absolute;
    background: rgba(13, 38, 59, 0.6);
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    border-radius: 0;
}

.video-wrapper {
    position: relative;
    display: flex;
    justify-content: center;
    height: 28.125rem;
    z-index: 100;
}

.video-area .play-btn {
    display: inline-block;
    padding: 0;
    height: 4.6875rem;
    width: 4.6875rem;
    text-align: center;
    position: absolute;
    border-radius: 50%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}


@media all and (max-width: 47.9375rem) {
    .video-wrapper {
        height: 15.625rem;
    }

    .video-wrapper h1 {
        font-size: 1.75rem;
        margin-top: 1.5625rem;
    }
}


/* ===================
step/process css
====================== */

.process-single {
    position: relative;
}

.process-single .icon {
    height: 6.25rem;
    width: 6.25rem;
    line-height: 5.625rem;
    display: inline-block;
    position: relative;
    border-radius: 3.125rem;
    font-size: 3.4375rem;
    color: #fff;
    background: linear-gradient(to right, #fe6d1c 0%, #fd3d10 100%);
    padding: 0.3125rem;
    margin-bottom: 1.875rem;

}

.process-single .icon::before {
    content: "";
    position: absolute;
    left: -10px;
    right: -10px;
    top: -10px;
    bottom: -10px;
    border-radius: 50%;
    border: 0.125rem dashed #C9A24D;
}

.process-single .icon img {
    border-radius: 50%;
}

.process-single span {
    position: absolute;
    height: 2.1875rem;
    width: 2.1875rem;
    font-size: 0.92rem;
    background: linear-gradient(to right, #fe6d1c 0%, #fd3d10 100%);
    line-height: 2.1875rem;
    color: #ffffff;
    left: -8px;
    top: -13px;
    font-weight: 600;
    border-radius: 3.125rem;
}

.process-single h4 {
    margin-bottom: 0.625rem;
    font-weight: 700;
}

.process-single::before {
    content: "";
    position: absolute;
    background: url(../img/icon/arrow.png);
    background-repeat: no-repeat;
    width: 6.875rem;
    height: 6.875rem;
    right: -65px;
    top: 0;
}

@media only screen and (min-width: 48rem) and (max-width: 61.9375rem) {
    .process-single::before {
        display: none;
    }
}

@media (max-width: 47.9375rem) {
    .process-single::before {
        display: none;
    }

    .agency-wrapper button {
        width: 100%;
        margin: auto;
    }
}

.process-area .col-lg-3:last-child .process-single::before {
    display: none;
}


/* ===================
choose css
====================== */

.choose-area {
    position: relative;
}

.choose-item {
    padding: 2rem 1.25rem;
    background: #fff;
    text-align: center;
    overflow: hidden;
    margin-bottom: 1.5625rem;
    border-radius: 0.9375rem;
    transition: all .5s ease-in-out;
}

.choose-item:hover {
    transform: translateY(-5px);
}

.choose-icon {
    color: #C9A24D;
    font-size: 2.1rem;
    line-height: 1;
    margin-bottom: 0.9375rem;
}

.choose-title {
    margin-bottom: 0.625rem;
    font-size: 1rem;
}

/* ===================
testimonial css
====================== */

.testimonial-area {
    position: relative;
    background: url(../img/testimonial/bg.jpg) no-repeat fixed center;
    background-size: cover;
    z-index: 1;
}

.testimonial-area::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    background: rgba(13, 64, 143, .5);
    z-index: -1;
}

.testimonial-single {
    margin-top: 1.875rem;
    margin-bottom: 1.25rem;
    background: #fff;
    border-radius: 1.25rem;
    text-align: center;
    padding: 1.25rem 0.9375rem;
    position: relative;

}

.testimonial-quote p {
    color: #0E2E50;
}

.testimonial-author-info {
    margin: 3.125rem 0 0.625rem 0;
}

.testimonial-author-img {
    position: absolute;
    width: 5.625rem;
    padding: 0.3125rem;
    border-radius: 50%;
    border: 0.25rem solid #fff;
    left: 50%;
    top: -30px;
    transform: translateX(-50%);
}

.testimonial-author-img img {
    border-radius: 50%;
}

.testimonial-author-info h4 {
    font-size: 1.375rem;
    color: #0E2E50;
}

.testimonial-author-info p {
    color: #C9A24D;
    font-weight: 500;
}

.testimonial-quote-icon {
    position: absolute;
    right: 0.9375rem;
    top: 2.1875rem;
    width: 7.5rem;
    opacity: .1;
}

.testimonial-rate {
    color: #C9A24D;
    margin-top: 0.625rem;
}

.testimonial-area .owl-dots {
    text-align: center;
    margin-top: 1.875rem;
}

.testimonial-area .owl-dots .owl-dot span {
    background: transparent;
    margin: 0.3125rem;
    border: 0.125rem solid #C9A24D;
    border-radius: 3.125rem;
    width: 0.75rem;
    height: 0.75rem;
    display: inline-block;
    transition: all .5s ease-in-out;
}

.testimonial-area .owl-dots .owl-dot.active span {
    background: #C9A24D;
}


/* ===================
counter css
====================== */

.counter-area {
    position: relative;
    margin-top: -90px;
}

.counter-wrapper {
    padding: 3.125rem 1.25rem;
    position: relative;
    background: #0E2E50;
    border-radius: 1.25rem;
    z-index: 1;
}

.counter-box {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    gap: 0.9375rem;
    position: relative;
    z-index: 1;
}

.counter-box .icon {
    position: relative;
    font-size: 2.1875rem;
    width: 5rem;
    height: 5rem;
    line-height: 4.875rem;
    text-align: center;
    background: #C9A24D;
    border-radius: 1.875rem;
    color: #fff;
}

.counter-box .icon img {
    width: 4.0625rem;
}

.counter-box .counter {
    display: block;
    line-height: 1;
    color: #fff;
    font-size: 2.125rem;
    font-weight: 600;
}

.counter-box .title {
    color: #fff;
    margin-top: 0.625rem;
    font-size: 0.92rem;
    font-weight: 600;

}

@media all and (max-width: 61.9375rem) {
    .counter-area .counter-box {
        margin: 2.5rem 0;
    }
}


/* ===================
cta-area css
====================== */

.cta-area {
    position: relative;
    background-image: url(../img/cta/01.webp);
    background-position: center;
    background-size: cover;
    background-attachment: fixed;
    padding-top: 7.5rem;
    padding-bottom: 10.625rem;
    z-index: 1;
}

.cta-area::before {
    content: "";
    position: absolute;
    height: 100%;
    width: 100%;
    background: rgba(0, 0, 0, 0.5);
    left: 0;
    top: 0;
    z-index: -1;
}

.cta-text h1 {
    color: #fff;
    font-size: calc(1em + 1vw);
    font-weight: 800;

    margin-bottom: 0.9375rem;
}

.cta-text span {
    color: #C9A24D;
}

.cta-text p {
    color: #fff;
}


/* ========================
gallery css
=========================== */

.gallery-item {
    position: relative;
    width: 100%;
    margin-bottom: 1.5625rem;
}

.gallery-img {
    height: 100%;
}

.gallery-img img {
    width: 100%;
    border-radius: var(--radius-md);
}

.gallery-content {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}

.gallery-content::before {
    content: "";
    position: absolute;
    left: 0.625rem;
    top: 0.625rem;
    right: 0.625rem;
    bottom: 0.625rem;
    background: #C9A24D;
    border-radius: var(--radius-md);
    opacity: 0;
    visibility: hidden;
    transition: 0.3s;
}

.gallery-content:hover::before {
    opacity: 0.9;
    visibility: visible
}

.gallery-link {
    width: 3.125rem;
    height: 3.125rem;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    transition: 0.5s;
    border-radius: 3.125rem;
    opacity: 0;
    visibility: hidden;
    font-size: 1.5625rem;
    color: #C9A24D;
    margin-top: 3.125rem;
}

.gallery-link::before {
    content: "";
    position: absolute;
    left: -5px;
    right: -5px;
    top: -5px;
    bottom: -5px;
    border: 0.125rem dashed #fff;
    border-radius: 3.125rem;
}

.gallery-link:hover {
    color: #C9A24D;
}

.gallery-content:hover .gallery-link {
    opacity: 1;
    visibility: visible;
    margin-top: 0;
}


/* ===================
blog css
====================== */

.blog-item {
    margin-bottom: 1.5625rem;
    background-color: #fff;
    padding: 0.625rem;
    border-radius: 0.9375rem;

    transition: all .5s ease-in-out;
}

.blog-item-img {
    overflow: hidden;
    border-radius: 0.9375rem;
}

.blog-item-img img {
    border-radius: 0.9375rem;
}

.blog-item:hover .blog-item-img img {
    transform: scale(1.1);
}

.blog-item-info {
    padding: 0.9375rem;
}

.blog-item-meta ul {
    margin: 0;
    padding: 0;
    margin-bottom: 0.875rem;
    border-bottom: 0.0625rem solid #e6e8eb;
    padding-bottom: 1.125rem;
}

.blog-item-meta ul li {
    display: inline-block;
    margin-right: 0.9375rem;
    font-weight: 500;
    position: relative;
    color: #0E2E50;
}

.blog-item-meta ul li i, .listing-price-info i, .property-single-content h4 i {
    margin-right: 0.3125rem;
    color: #C9A24D;
}

.blog-item-meta a:hover {
    color: #C9A24D;
}

.blog-title {
    font-size: 1.375rem;
    margin-bottom: 0.9375rem;

}

.blog-item-info p {
    margin-bottom: 1rem;
}

.blog-btn {
    margin-top: 1.25rem;
    padding: 0.625rem 1.5625rem;
    border-radius: 0.5rem;
    font-weight: 500;
    border: 0.125rem solid #C9A24D;
    background: #C9A24D;
    color: #fff;
}

.blog-btn i {
    margin-left: 0.3125rem;
}

.blog-btn:hover {
    background: transparent;
    color: #C9A24D;
}

.blog-item-info h4 a {
    color: #0E2E50;
}

.blog-item-info h4 a:hover {
    color: #C9A24D;
}

@media all and (max-width: 61.9375rem) {
    .blog-item-info {
        padding: 1.4375rem 0.9375rem 1.875rem 0.9375rem;
    }
}


/* ===========================
blog single css
=========================== */

.blog-thumb-img {
    margin-bottom: 1.25rem;
}

.blog-single-content img {
    border-radius: 0.625rem;
    width: 100%;
}

.blog-meta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1.25rem;
}

.blog-meta .blog-meta-left ul {
    display: flex;
    align-items: center;
    gap: 1.25rem;
}

.blog-meta .blog-meta-left ul li {
    font-weight: 500;
}

.blog-meta i {
    margin-right: 0.3125rem;
    color: #C9A24D;
}

.blog-meta a {
    color: #66788a;
    font-weight: 500;
}

.blog-meta a:hover {
    color: #C9A24D;
}

.blog-details-title {
    font-size: 2.125rem;
    color: #0E2E50;
}

.blockqoute {
    background: #F3F6FA;
    border-left: 0.3125rem solid #C9A24D;
    padding: 1.875rem;
    font-size: 1.0625rem;
    font-style: italic;
    margin: 1.25rem 0;
    border-radius: 0;
}

.blockqoute-author {
    margin-top: 1.25rem;
    padding-left: 3.75rem;
    position: relative;
    color: #0E2E50;
}

.blockqoute-author::before {
    content: "";
    position: absolute;
    height: 0.125rem;
    width: 2.5rem;
    background: #C9A24D;
    left: 0;
    top: 0.625rem;
}

.blog-details-tags {
    display: flex;
    align-items: center;
    gap: 1.25rem;
}

.blog-details-tags h5 {
    color: #0E2E50;
    font-weight: 700;
}

.blog-details-tags ul {
    display: flex;
    align-items: center;
    gap: 0.9375rem;
}

.blog-details-tags ul a {
    background: #F3F6FA;
    color: #0E2E50;
    padding: 0.375rem 1.125rem;
    border-radius: 0.5rem;
    transition: all .5s ease-in-out;
}

.blog-details-tags ul a:hover {
    background: #C9A24D;
    color: #fff;
}

.blog-author {
    display: flex;
    justify-content: start;
    align-items: center;
    background: #F3F6FA;
    border-radius: 0.625rem;
    margin: 3.125rem 0;
    padding: 1.25rem;
}

.blog-author-img {
    width: 20rem;
    position: relative;
}

.blog-author-img::before {
    content: "";
    position: absolute;
    left: -10px;
    right: -10px;
    top: -10px;
    bottom: -10px;
    border-radius: 50%;
}

.blog-author-img img {
    border-radius: 0.625rem;
}

.author-name {
    font-size: 1.375rem;
    color: #C9A24D;
    margin: 0.5rem 0;
}

.author-info {
    padding: 0 1.25rem 0 1.875rem;
}

.author-social {
    margin-top: 0.625rem;
}

.author-social a {
    width: 2.1875rem;
    height: 2.1875rem;
    line-height: 2rem;
    text-align: center;
    border: 0.125rem solid #C9A24D;
    border-radius: 3.125rem;
    margin-right: 0.3125rem;
    color: #C9A24D;
    transition: all .5s ease-in-out;
}

.author-social a:hover {
    color: #fff;
    background: #C9A24D;
}

.blog-comments {
    margin-bottom: 3.125rem;
}

.blog-comments h3 {
    color: #0E2E50;
    font-weight: 700;
}

.blog-comments-wrapper {
    margin: 1.875rem 0;
}

.blog-comments-single {
    display: flex;
    justify-content: start;
    align-items: flex-start;
    margin-top: 3.125rem;
}

.blog-comments-img {
    margin-top: 0.1875rem;
}

.blog-comments-single img {
    border-radius: 50%;
    width: 7.5rem;
}

.blog-comments-content {
    padding: 0 0 0 1.25rem;
}

.blog-comments-content span {
    font-size: 0.92rem;
    color: #C9A24D;
    font-weight: 500;
}

.blog-comments-content a {
    font-weight: 600;
    margin-top: 0.3125rem;
    color: #C9A24D;
}

.blog-comments-content a:hover {
    color: #0E2E50;
}

.blog-comments-content h5 {
    color: #0E2E50;
    font-weight: 700;
    font-size: 1.25rem;
}

.blog-comments-reply {
    margin-left: 3.125rem;
}

.blog-comments-form {
    padding: 1.875rem;
    margin-top: 3.125rem;
    border-radius: 0.625rem;
    background: #F3F6FA;
}

.blog-comments-form h3 {
    margin-bottom: 1.25rem;
}

.blog-comments-form .form-group {
    margin-bottom: 1.25rem;
}

.blog-comments-form .form-control {
    padding: 0.75rem 1.25rem;
    border-radius: 0.625rem;
    box-shadow: none;
    transition: all .5s ease-in-out;
}

.blog-comments-form .form-control:focus {
    border-color: #C9A24D;
}


@media all and (max-width: 47.9375rem) {
    .blog-meta {
        flex-direction: column;
        font-size: 0.92rem;
    }

    .blog-meta .blog-meta-left ul {
        gap: 0.625rem;
    }

    .blog-details-tags {
        flex-direction: column;
        align-items: flex-start;
    }

    .blog-author {
        flex-direction: column;
        text-align: center;
        padding: 1.5625rem 0 0 0;
    }

    .blog-comments-single {
        flex-direction: column;
        text-align: center;
        padding: 1.875rem 0;

        margin-bottom: 1.875rem;
        border-radius: 0.625rem;
    }

    .blog-comments-img {
        width: 100%;
    }

    .blog-comments-content {
        padding: 1.25rem;
    }

    .blog-comments-reply {
        margin-left: 0;
    }
}


/* =========================
sidebar css
========================= */

.widget {
    background: #F3F6FA;
    padding: 1.875rem;
    margin-bottom: 1.875rem;
    border-radius: 0.625rem;
}

.widget .widget-title {
    padding-bottom: 0.625rem;
    margin-bottom: 1.875rem;
    position: relative;
    font-size: 1.5625rem;
    color: #0E2E50;
}

.widget .widget-title::before {
    position: absolute;
    content: '';
    width: 0.9375rem;
    border-bottom: 0.1875rem solid #C9A24D;
    bottom: 0;
    left: 0;
}

.widget .widget-title::after {
    position: absolute;
    content: '';
    width: 1.875rem;
    border-bottom: 0.1875rem solid #C9A24D;
    bottom: 0;
    left: 1.375rem;
}

.widget .blog-search-form .form-control {
    padding: 0.75rem 0.9375rem 0.75rem 0.9375rem;
    border-radius: 0.625rem;
    box-shadow: none;
}

.widget .blog-search-form {
    position: relative;
}

.widget .blog-search-form .form-control:focus {
    border-color: #C9A24D;
}

.widget .blog-search-form button {
    position: absolute;
    right: 0;
    top: 0;
    font-size: 1.125rem;
    padding: 0.5rem 1.125rem 0.375rem 1.125rem;
    background: transparent;
    border: none;
    color: #C9A24D;
}

.widget .category-list a {
    display: block;
    padding: 0.625rem 0;
    font-weight: 500;
    border-bottom: 0.0625rem solid #ced4da;
    transition: all .5s ease-in-out;
}

.widget .category-list a:last-child {
    margin-bottom: 0;
    border-bottom: none;
}

.widget .category-list a:hover {
    padding-left: 0.625rem;
    color: #C9A24D;
}

.widget .category-list a i {
    margin-right: 0.3125rem;
    color: #C9A24D;
}

.widget .category-list a span {
    float: right;
}

.widget .recent-post-single {
    display: flex;
    justify-content: start;
    align-items: center;
    margin-bottom: 1.25rem;
}

.widget .recent-post-img {
    margin-right: 1.25rem;
}

.widget .recent-post-img img {
    width: 7.5rem;
    border-radius: 0.4375rem;
}

.widget .recent-post-bio h6 {
    font-size: 1.125rem;
}

.widget .recent-post-bio span {
    font-size: 0.92rem;
    color: #C9A24D;
    font-weight: 500;
}

.widget .recent-post-bio span i {
    margin-right: 0.3125rem;
}

.widget .recent-post-bio h6 a:hover {
    color: #C9A24D;
}

.widget .social-share-link a {
    width: 2.1875rem;
    height: 2.1875rem;
    line-height: 1.875rem;
    border: 0.125rem solid #C9A24D;
    color: #C9A24D;
    text-align: center;
    margin-right: 0.3125rem;
    border-radius: 3.125rem;
    transition: all .5s ease-in-out;
}

.widget .social-share-link a:hover {
    background: #C9A24D;
    color: #fff;
}

.widget .tag-list a {
    background: #fff;
    color: #0E2E50;
    padding: 0.3125rem 0.9375rem;
    margin-bottom: 0.625rem;
    margin-right: 0.625rem;
    border-radius: 0.5rem;
    display: inline-block;
    transition: all .5s ease-in-out;
}

.widget .tag-list a:hover {
    background-color: #C9A24D;
    color: #fff;
}


/* =========================
partner css
========================= */

.partner-wrapper img {
    background: #fff;
    border-radius: var(--radius-md);
    padding: 1.25rem 1.5625rem;
}


/* ===================
contact us css
====================== */

.contact-wrapper {
    position: relative;
}

.contact-form {
    background: #fff;
    border-radius: 0.5rem;
    padding: 1.875rem 1.875rem;

}

.contact-form-header {
    margin-bottom: 1.875rem;
}

.contact-form-header h2 {
    font-size: 1.875rem;
    margin-bottom: 0.625rem;
    font-weight: 700;
    color: #0E2E50;
}

.contact-form .form-group {
    margin-bottom: 1.5625rem;
}

.contact-form .form-group .form-control {
    padding: 0.75rem 1.125rem;
    border-radius: 0.625rem;
    box-shadow: none;
    transition: all .5s ease-in-out;
}

.contact-form .form-group .form-control:focus {
    border-color: #C9A24D;
}

.contact-map {
    margin-bottom: -9px;
}

.contact-map iframe {
    width: 100%;
    height: 28.125rem;
}

.contact-content {
    margin-bottom: 3.125rem;
    background: #fff;
    border-radius: 0.5rem;
    padding: 1.25rem 1.875rem;
    position: relative;

}

.contact-content::before {
    content: "";
    position: absolute;
    left: 0;
    top: 1.875rem;
    bottom: 1.875rem;
    width: 0.1875rem;
    background: #C9A24D;
    border-radius: 3.125rem;
}

.contact-info {
    display: flex;
    align-items: center;
    gap: 0.9375rem;
    padding: 1.25rem 0;
}

.contact-info-icon i {
    font-size: 1.5625rem;
    color: #fff;
    width: 3.75rem;
    height: 3.75rem;
    line-height: 3.75rem;
    text-align: center;
    border-radius: 3.125rem;
    background: #C9A24D;
}

.contact-info h5 {
    font-size: 1.375rem;
    margin-bottom: 0.3125rem;
    color: #0E2E50;
}

.contact-info p {
    font-weight: 500;
}


@media all and (max-width: 48rem) {
    .contact-content {
        margin-bottom: 3.125rem;
    }
}


/* ===================
quote css
====================== */

.quote-area {
    position: relative;
    background-image: url('../img/quote/01.jpg');
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    background-attachment: fixed;
}

.quote-content {
    padding: 1.875rem;
    background: #fff;
    border-radius: 0.625rem;
}

.quote-content .quote-header h6 {
    display: inline-block;
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom: 0.625rem;
    color: #C9A24D;
    font-size: 1.125rem;
    letter-spacing: 0.125rem;
}

.quote-content .quote-header h2 {
    color: #0E2E50;
    font-size: 2.1875rem;
    margin-bottom: 1.875rem;
    margin-top: 0.625rem;
    font-weight: 700;
}

.quote-content .form-group {
    margin-bottom: 1.25rem
}

.quote-content .form-group .form-control {
    padding: 0.9375rem 1.375rem;
    font-size: 1rem;
    background: 0 0;
    border-radius: 0.5rem;
    background-color: #F3F7FA;
    border: none;
    box-shadow: none
}

.quote-content .form-group .form-select {
    padding: 0.9375rem 1.375rem;
    background-color: #F3F7FA;
    border: none;
    box-shadow: none;
    border-radius: 0.5rem;
}

.quote-content .theme-btn:hover {
    color: #fff;
}

@media all and (max-width: 74.9375rem) {
    .quote-content .quote-header h2 {
        font-size: 1.5625rem
    }
}

@media all and (max-width: 61.9375rem) {
    .quote-thum {
        margin-top: 2.5rem;
    }
}


/* ===================
team css
====================== */

.team-area {
    position: relative;
}

.team-item {
    margin-bottom: 4.375rem;
    position: relative;
    z-index: 1;
}

.team-img {
    border-radius: 0.625rem;
}

.team-img img {
    border-radius: 0.625rem;
}

.team-content {
    position: absolute;
    left: 1.25rem;
    right: 1.25rem;
    bottom: -45px;
    padding: 0.625rem 1.25rem;
    background: #fff;
    border-radius: 0.625rem;

}

.team-bio h5 {
    font-size: 0.92rem;
    margin-top: 0.3125rem;
    margin-bottom: 0.3125rem;

}

.team-bio h5 a {
    color: #0E2E50;
}

.team-bio span {
    color: #C9A24D;
    font-size: 1rem;
    font-weight: 500;

}

.team-bio h5 a:hover {
    color: #C9A24D;
}

.team-social-btn {
    position: absolute;
    right: 3.75rem;
    top: 4.0625rem;
}

.team-social-btn li {
    display: inline-block;
    position: absolute;
    bottom: 0;
    transition: .6s;
    list-style-type: none;
}

.team-social-btn li i {
    display: inline-block;
    width: 2.8125rem;
    height: 2.8125rem;
    line-height: 2.8125rem;
    background: #C9A24D;
    border-radius: 3.125rem;
    color: #fff;
    text-align: center;
    font-size: 1.25rem;
    transition: .6s;
    opacity: 0;
    visibility: hidden;

}

.team-social-btn li i:hover {
    background: #0E2E50;
    color: #fff;
}

.team-item li span i {
    opacity: 1;
    visibility: visible;
}

.team-item:hover li span i {
    background: #0E2E50;
    cursor: pointer;
}

.team-item:hover .team-social-btn li i {
    opacity: 1;
    visibility: visible;
}

.team-social-btn li:nth-child(1) {
    z-index: 1;
}

.team-social-btn li:nth-child(2) {
    bottom: 0;
}

.team-social-btn li:nth-child(3) {
    bottom: 0;
}

.team-social-btn li:nth-child(4) {
    bottom: 0;
}

.team-social-btn li:nth-child(5) {
    bottom: 0;
}

.team-item:hover li:nth-child(1) {
    z-index: 1;
}

.team-item:hover li:nth-child(2) {
    bottom: 3rem;
}

.team-item:hover li:nth-child(3) {
    bottom: 6rem;
}

.team-item:hover li:nth-child(4) {
    bottom: 9rem;
}

.team-item:hover li:nth-child(5) {
    bottom: 12rem;
}

.team-item:hover li:nth-child(6) {
    bottom: 15rem;
}

/* team 2 css */
.team-area2 .team-item {
    background: #fff;
    padding: 0.9375rem;
    border-radius: 1.25rem;
    margin-bottom: var(--space-lg);
    box-shadow: var(--shadow-soft);
}

.team-area2 .team-img img {
    border-radius: 1.25rem;
}

.team-area2 .team-content {
    position: relative;
    box-shadow: none;
    padding-bottom: 0;
    padding-left: 0.9375rem;
    left: 0;
    bottom: 0;
    right: 0;
}

.team-area2 .team-social-btn {
    top: 4.25rem;
}

/* team-single  */
.team-single.agency-list .agency-item {
    align-items: center;
}

.team-single .agency-img {
    border: none;
    width: 13.75rem;
    height: 13.75rem;
    margin: unset;
}

.team-single .agency-img img {
    border-radius: 0.625rem;
}

.team-img {
    width: 17.125rem;
    height: 22.813rem;
    overflow: hidden;
    padding: 0.5rem;
}

.team-img img {
    width: 100%;
    height: 100%;
    object-fit: cover; /* 🔥 garde le ratio, coupe si besoin */
    display: block;
}

@media all and (max-width: 47.9375rem) {
    .team-single.agency-list .agency-item {
        align-items: flex-start;
    }

    .team-single .agency-img {
        margin-top: 1.5625rem;
    }
    .team-img {
        width: 100%;
    }
}


/* ===================
pricing css
====================== */

.pricing-item {
    position: relative;
    background: #fff;
    overflow: hidden;
    padding: 2.5rem;
    margin-bottom: 1.5625rem;
    border-radius: 0.625rem;
    transition: all .9s ease-in-out;
    z-index: 1;
}

.pricing-item::before {
    content: "";
    position: absolute;
    background-image: url(../img/shape/02.png);
    background-repeat: no-repeat;
    background-size: cover;
    right: -10px;
    top: -10px;
    width: 12.5rem;
    height: 12.5rem;
    z-index: -1;
}

.pricing-item:hover {
    transform: translateY(-10px);
}

.pricing-header {
    position: relative;
    z-index: 1;
}

.pricing-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 5.625rem;
    height: 5.625rem;
    line-height: 1;
    border-radius: 3.125rem;
    background: #C9A24D;
    position: relative;

}

.pricing-icon::before {
    content: "";
    position: absolute;
    left: -7px;
    right: -7px;
    top: -7px;
    bottom: -7px;
    border: 0.125rem dashed #C9A24D;
    border-radius: 50%;
}

.pricing-icon i {
    font-size: 3.125rem;
    color: #fff;
}

.pricing-content {
    background: #E6F9F4;
    padding: 1.25rem 1.875rem;
    border-radius: 1.25rem;
    margin: 2.5rem 0 1.25rem 0;
}

.pricing-content h4 {
    margin-bottom: 0.625rem;
    color: #C9A24D;
}

.pricing-amount {
    color: #0E2E50;
    font-weight: 700;
}

.pricing-feature {
    margin-top: 1.25rem;
}

.pricing-feature ul {
    margin-top: 2.1875rem;
    margin-bottom: 2.1875rem;
}

.pricing-feature ul li {
    position: relative;
    margin: 0.625rem 0;
    padding-left: 1.5625rem;
}

.pricing-feature ul li::before {
    content: "";
    position: absolute;
    width: 0.8125rem;
    height: 0.8125rem;
    border: 0.1875rem solid #C9A24D;
    border-radius: 3.125rem;
    left: 0;
    top: 0.5rem;
}


/* ===================
faq css
====================== */

.faq-area .accordion-item {
    border: none;
    margin-bottom: 1.5625rem;
    background: #fff;
    border-radius: 0.5rem !important;

}

.faq-area .accordion-item span {
    width: 2.8125rem;
    height: 2.8125rem;
    margin-right: 0.9375rem;
}

.faq-area .accordion-item i {
    width: 2.8125rem;
    height: 2.8125rem;
    line-height: 2.8125rem;
    border-radius: 3.125rem;
    background: #C9A24D;
    text-align: center;
    color: #fff;
}

.faq-area .accordion-button:not(.collapsed) {
    color: #C9A24D;
    background: transparent;
    box-shadow: inset 0 -1px 0 rgb(0 0 0 / 13%);
}

.accordion-button {
    border-radius: 0 !important;
    background: transparent;
    font-weight: 700;
    font-size: 1.25rem;
    color: #0E2E50;
    box-shadow: none !important;
}

.accordion-button:not(.collapsed) {
    border-bottom: 0.0625rem dashed #C9A24D;
}

.accordion-button:not(.collapsed)::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}

@media all and (max-width: 61.9375rem) {
    .faq-right {
        margin-top: 3.125rem;
    }

    .accordion-button {
        font-size: 1rem;
    }
}


/* ===================
breadcrumb css
====================== */

.site-breadcrumb {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: cover !important;
    position: relative;
    padding-top: 6.25rem;
    padding-bottom: 6.25rem;
    z-index: 1;
}

.site-breadcrumb::before {
    content: "";
    position: absolute;
    background: rgba(0, 0, 0, 0.6);
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    z-index: -1;
}

.site-breadcrumb .breadcrumb-title {
    font-size: 2.5rem;
    color: #fff;
    font-weight: 700;
    margin-bottom: 0.625rem;
    text-transform: uppercase;
    padding-top: 0; /* desktop */
    background-size: cover;
    background-position: center;
}

.site-breadcrumb .breadcrumb-menu {
    position: relative;
    z-index: 1;
}

.site-breadcrumb .breadcrumb-menu li {
    position: relative;
    display: inline-block;
    margin-left: 1.5625rem;
    color: #fff;
    font-weight: 500;

}

.site-breadcrumb .breadcrumb-menu li a {
    color: #fff;
    transition: all 0.5s ease-in-out;
}

.site-breadcrumb .breadcrumb-menu li::before {
    position: absolute;
    content: '\f101';
    font-family: "Font Awesome 6 Pro", serif;
    right: -21px;
    top: 0.0625rem;
    text-align: center;
    font-size: 1rem;
    color: #fff;
}

.site-breadcrumb .breadcrumb-menu li:first-child {
    margin-left: 0;
}

.site-breadcrumb .breadcrumb-menu li:last-child:before {
    display: none;
}

.site-breadcrumb .breadcrumb-menu li a:hover {
    color: #C9A24D;
}

.site-breadcrumb .breadcrumb-menu li.active {
    color: #C9A24D;
}

@media (max-width: 61.9375rem) {
    .site-breadcrumb {
        padding-top: 12.5rem;
    }
}


/* ===================
pagination css
====================== */

.pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 2.5rem;
}

.pagination .page-link {
    border: none;
    background: #0E2E50;
    color: #fff;
    margin: 0 0.625rem;
    border-radius: 0.5rem !important;
    width: 2.5rem;
    height: 2.5rem;
    line-height: 1.75rem;
    text-align: center;
    transition: all .5s ease-in-out;
}

.pagination .page-link:hover,
.pagination .page-item.active .page-link {
    background: #C9A24D;
    color: #fff;
}


/* ===================
RTL css
====================== */

body.rtl-mode {
    direction: rtl;
}

body.rtl-mode .item-area {
    direction: ltr;
}

body.rtl-mode .price-wrapper {
    direction: rtl;
}

@media (min-width: 62rem) {
    body.rtl-mode .navbar-brand {
        margin-left: 3rem;
    }

    body.rtl-mode .navbar .nav-item .nav-link {
        margin-left: 3rem;
        margin-right: 0;
    }
}


/* ===================
auth css
====================== */

.login-form {
    padding: 1.875rem 2.5rem;
    background: #fff;
    border-radius: 0.4375rem;
    position: relative;

}

.login-form::before {
    content: "";
    position: absolute;
    top: 2.5rem;
    bottom: 2.5rem;
    left: 0;
    width: 0.1875rem;
    background: #C9A24D;
    border-radius: 0.625rem;
}

.login-form .login-header {
    text-align: center;
    margin-bottom: 1.875rem;
}

.login-form .login-header img {
    width: 12.5rem;
    margin-bottom: 0.625rem;
}

.login-form .login-header h3 {
    color: #C9A24D;
    margin-bottom: 0.3125rem;
    font-weight: 800;
}

.login-form .login-footer {
    margin-top: 1.5625rem;
}

.login-form .login-footer p {
    text-align: center;
}

.login-form .login-footer a {
    color: #C9A24D;
    transition: .5s;
}

.login-form .login-footer a:hover {
    color: #C9A24D;
}

.login-form .form-group {
    margin-bottom: 0.9375rem;
    position: relative;
}

.login-form .form-group i {
    position: absolute;
    bottom: 0.6875rem;
    left: 1.125rem;
}

.login-form label, .register-form label {
    color: #0E2E50;
    margin-bottom: 0.3125rem;
    font-size: clamp(0.92rem, 0.5rem + 0.42vw, 0.92rem);
}

.login-form .form-group .form-control, .send-agent-message .form-group .form-control {
    font-size: clamp(0.92rem, 0.5rem + 0.42vw, 0.92rem);
    border-radius: 0.625rem;
    padding: 0.5rem 1.125rem 0.5rem 0.5rem;
    box-shadow: none;
    transition: .5s;
}

form {
    font-size: clamp(0.92rem, 0.5rem + 0.42vw, 0.92rem);
}

input::placeholder,
textarea::placeholder {
    font-size: clamp(0.82rem, 0.5rem + 0.32vw, 0.82rem);
}

.login-form .form-group .form-control:focus {
    border-color: #C9A24D;
}

.login-form .form-check-input {
    box-shadow: none;
}

.login-form .forgot-pass {
    color: #C9A24D;
    transition: .5s;
}

.login-form .forgot-pass:hover {
    color: #C9A24D;
}

.login-form .theme-btn {
    width: 100%;
}

.login-form .theme-btn::before {
    width: 26.25rem;
    height: 26.25rem;
}

.login-form .theme-btn i {
    margin-right: 0.3125rem;
}

.login-form .form-check-input {
    margin-top: 0.3937rem;
}

.login-form .form-check-label a {
    color: #C9A24D;
    transition: .5s;
}

.login-form .form-check-label a:hover {
    color: #C9A24D;
}

.form-check-input:checked {
    background-color: #C9A24D;
    border-color: #C9A24D;
}

.login-divider {
    position: relative;
    margin: 0.9375rem 0;
    text-align: center;
}

.login-divider::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    border-bottom: 0.0625rem solid #E8E8E8;
}

.login-divider span {
    position: relative;
    background: #fff;
    padding: 0 1.25rem;
}

.social-login a {
    display: block;
    margin-bottom: 0.9375rem;
    padding: 0.625rem 1.25rem;
    border-radius: var(--radius-md);
    text-align: center;
}

.social-login a i {
    float: left;
}

.btn-fb {
    border: 0.0625rem solid #506DAB;
    color: #506DAB !important;
}

.btn-fb:hover {
    background: #506DAB;
    color: #fff !important;
}

.btn-gl {
    border: 0.0625rem solid #DD4B39;
    color: #DD4B39 !important;
}

.btn-gl:hover {
    background: #DD4B39;
    color: #fff !important;
}


@media only screen and (max-width: 61.9375rem) {
    .login-form {
        padding: 2.5rem 1.25rem;
    }
}


/* ===================
user profile css
====================== */

.header-account img {
    width: 3.75rem;
    border-radius: 50%;
    padding: 0.1875rem;
    border: 0.1875rem solid rgba(0, 0, 0, .1);
    cursor: pointer;
}

.header-account .dropdown-menu {
    border: none;
    min-width: 12.5rem;
    border-radius: 0.625rem;

}

.header-account .dropdown-menu li a i {
    margin-right: 0.3125rem;
}

.header-account .dropdown-menu .dropdown-item {
    padding: 0.5rem 1.25rem;
}

.header-account .dropdown-menu .dropdown-item:hover {
    background: transparent;
    color: #C9A24D;
    padding-left: 1.5625rem;
}

.mobile-menu-right {
    gap: 1.25rem;
}

.mobile-menu-right .header-account img {
    width: 2.1875rem;
    padding: 0;
    border: none;
}

.user-profile-sidebar {
    background: #fff;
    border-radius: 0.625rem;
    margin-bottom: 1.5625rem;
    padding: 1.25rem;

}

.user-profile-sidebar-top {
    text-align: center;
    margin-bottom: 0.9375rem;
    padding-bottom: 0.9375rem;
    border-bottom: 0.0625rem solid rgba(0, 0, 0, .1);
}

.user-profile-img {
    position: relative;
    width: 6.25rem;
    height: 6.25rem;
    margin: 0 auto 0.9375rem auto;
    border-radius: 50%;
    overflow: hidden;
}

.user-profile-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.profile-img-file, .agency-img-file {
    display: none;
}

@media (min-width: 37.5rem) {
    .user-profile-img {
        width: 6.25rem;
        height: 6.25rem;
    }

    .agency-wrapper button {
        width: 100%;
        margin: auto;
    }
}

.user-profile-img button {
    position: absolute;
    border-radius: 3.125rem;
    background: #C9A24D;
    color: #fff;
    width: 1.875rem;
    height: 1.875rem;
    line-height: 1.75rem;
    text-align: center;
    border: none;
    right: 0;
    bottom: 0;
}

.user-profile-sidebar-list li {
    margin: 0.3125rem 0;
}

.user-profile-sidebar-list li a {
    color: #0E2E50;
    padding: 0.375rem 0.375rem 0.375rem 0.9375rem;
    display: block;
    transition: all .5s ease-in-out;
}

.user-profile-sidebar-list li a:hover {
    padding-left: 1.25rem;
}

.user-profile-sidebar-list li a i {
    margin-right: 0.3125rem;
    color: #C9A24D;
}

.user-profile-sidebar-list .active i {
    color: #fff;
}

.user-profile-sidebar-list .active {
    background: #C9A24D;
    color: #fff;
    border-radius: 0.5rem;
}

.user-profile-card {
    background: #fff;
    padding: 0.9375rem 1.25rem;
    border-radius: 0.625rem;
    margin-bottom: var(--space-lg);
    box-shadow: var(--shadow-soft);
}

.user-profile-card-title {
    color: #0E2E50;
    padding-bottom: 0.9375rem;
    margin-bottom: 1.25rem;
    border-bottom: 0.0625rem solid rgba(0, 0, 0, .1);
}

.user-profile-card .text-success {
    color: #C9A24D !important;
}

.user-profile-card-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 0.9375rem;
    margin-bottom: 0.9375rem;
    border-bottom: 0.0625rem solid rgba(0, 0, 0, .1);
}

.user-profile-card-header .user-profile-card-title {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
}

.user-profile-card-header-right {
    display: flex;
    align-items: center;
    gap: 1.25rem;
}

.user-profile-search .form-group {
    position: relative;
}

.user-profile-search .form-control {
    padding: 0.625rem 0.75rem 0.625rem 2.1875rem;
    box-shadow: none;
    border-radius: 0.625rem;
}

.user-profile-search .form-control:focus {
    border-color: #C9A24D;
}

.user-profile-search i {
    position: absolute;
    left: 0.75rem;
    top: 0.5625rem;
}

.user-profile-card-header .theme-btn {
    padding: 0.5rem 0.9375rem;
}

.profile-info-list li {
    margin: 0.75rem 0;
    font-weight: bold;
}

.profile-info-list li span {
    float: right;
    font-weight: normal;
}

.user-profile-form .form-group {
    margin-bottom: 1.25rem;
}

.user-profile-form .form-group label {
    color: #0E2E50;
    margin-bottom: 0.3125rem;
}

.user-profile-form .form-control {
    height: 3.4375rem;
    border-radius: var(--radius-md);
    box-shadow: none;
}

.user-profile-form .form-control:focus {
    border-color: #C9A24D;
}

.user-profile-form .theme-btn {
    width: unset;
}

.user-profile-property {
    font-size: 0.82rem;
}

/* dashboard */
.dashboard-widget {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1.875rem 1.25rem;
    border-radius: 0.625rem;
    border-left: 0.3125rem solid transparent;
    margin-bottom: 1.875rem;
}

.dashboard-widget-info span {
    font-weight: 500;
}

.dashboard-widget-info h1 {
    font-size: 1.875rem;
    font-weight: 700;
    margin-bottom: 0.3125rem;
}

.dashboard-widget-icon {
    width: 4.0625rem;
    height: 4.0625rem;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2rem;
    border-radius: 3.125rem;
}

.dashboard-widget-color-1 {
    background: rgba(98, 89, 202, 0.2);
    color: #6259CA;
    border-left-color: #6259CA;
}

.dashboard-widget-color-1 h1 {
    color: #6259CA;
}

.dashboard-widget-color-1 .dashboard-widget-icon {
    background: #6259CA;
    color: #fff;
}

.dashboard-widget-color-2 {
    background: rgba(0, 230, 130, 0.2);
    color: #09AD95;
    border-left-color: #09AD95;
}

.dashboard-widget-color-2 h1 {
    color: #09AD95;
}

.dashboard-widget-color-2 .dashboard-widget-icon {
    background: #09AD95;
    color: #fff;
}

.dashboard-widget-color-3 {
    background: rgba(251, 107, 37, 0.2);
    color: #FB6B25;
    border-left-color: #FB6B25;
}

.dashboard-widget-color-3 h1 {
    color: #FB6B25;
}

.dashboard-widget-color-3 .dashboard-widget-icon {
    background: #FB6B25;
    color: #fff;
}

.user-notification-item {
    border-bottom: 0.0625rem solid rgba(0, 0, 0, .1);
    padding: 0.625rem 0;
}

.user-notification-item a {
    display: flex;
    gap: 0.9375rem;
}

.user-notification-item a:hover {
    color: #0E2E50;
}

.user-notification-item:first-child {
    padding-top: 0;
}

.user-notification-item:last-child {
    border-bottom: none;
    padding-bottom: 0;
}

.user-notification-icon {
    width: 1.875rem;
    height: 1.875rem;
    line-height: 1.875rem;
    border-radius: 3.125rem;
    background: #C9A24D;
    color: #fff;
    margin-top: 0.3125rem;
    text-align: center;
}

.user-notification-info {
    flex: 1;
}

.user-notification-info p {
    font-size: 0.92rem;
}

.user-notification-info span {
    font-size: 0.92rem;
}

.table-property-info a {
    display: flex;
    align-items: center;
    gap: 0.625rem;
}

.table-property-info h6 {
    transition: all .5s ease-in-out;
}

.table-property-info:hover h6 {
    color: #C9A24D;
}

.table-property-info img {
    width: 4.375rem;
    border-radius: 0.5rem;
}

.user-profile-card .table > :not(caption) > * > * {
    vertical-align: middle;
    padding: 0.8rem 0.8rem;
}


/* my property */
.user-profile-property .table-property-info img {
    width: 7.5rem;
}

.table-property-content h6 {
    font-size: 1rem;
}

.table-property-content p {
    font-size: 0.82rem;
    color: #0E2E50;
}

.table-property-content span {
    font-weight: 700;
    color: #0E2E50;
}

.user-profile-property .bg-success {
    background: #C9A24D !important;
}

.user-profile-property .table tbody tr td {
    padding: 1.5rem 0.8rem;
}


/* add property */
.add-property-form .form-group {
    margin-bottom: 0.9375rem;
}


.add-property-form .form-group label {
    margin-bottom: 0.3125rem;
    color: #757F95;
}

.add-property-form .form-control {
    border-radius: var(--radius-md);
    padding: 0.5rem 1.25rem;
    box-shadow: none;
    color: #757F95;
}

.add-property-form .form-control::placeholder {
    color: #757F95;
}

.add-property-form .nice-select {
    width: 100%;
    height: 2.5rem;
    /*  line-height: 2.5rem;*/
    border-radius: var(--radius-md);
    padding-left: 1.25rem;
    font-size: 1rem;
    border-color: #CED4DA;
    color: #757F95;
    margin-bottom: 0.9375rem;
}

.add-property-form .form-control:focus,
.add-property-form .nice-select:focus {
    border-color: #C9A24D;
}

.add-property-form .nice-select .list {
    width: 100%;
    border: none;
    border-radius: var(--radius-md);
    padding: 0.625rem;

}

.add-property-form .nice-select .option.focus,
.add-property-form .nice-select .option.selected.focus,
.add-property-form .nice-select .option:hover {
    background: #F6F6F6;
    color: #C9A24D;
    border-radius: 0.5rem;
}

.add-property-form .nice-select:after {
    width: 0.5rem;
    height: 0.5rem;
    margin-top: -5px;
    right: 0.9375rem;
}

.add-property-form .property-img-upload {
    width: 100%;
    height: 8.75rem;
    border: 0.125rem dashed rgba(0, 0, 0, .1);
    border-radius: 0.625rem;
    cursor: pointer;
}

.add-property-form .property-img-file {
    display: none;
}

.add-property-form .property-img-upload span {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    width: 100%;
}

.add-property-form .property-img-upload span i {
    margin-right: 0.3125rem;
}

.add-property-form .form-check {
    margin-bottom: 0.9375rem;
}

.add-property-form .form-check-input {
    margin-top: 0.4062rem;
    box-shadow: none;
}

.add-property-form .form-check-input:focus {
    border-color: #C9A24D;
}

.add-property-form .form-check label {
    color: #757F95;
}

/* profile favorite */
.profile-favorite .listing-item {
    box-shadow: none;
    border: 0.125rem solid rgba(0, 0, 0, .05);
}


/* profile message */
.profile-message-wrapper {
    display: flex;
}

.profile-message-inbox {
    max-width: 21.25rem;
    border: 0.0625rem solid #EDF1F9;
    border-radius: 0.625rem;
}

.profile-message-inbox {
    overflow: hidden;
}

.message-content {
    padding-left: 1.875rem;
    position: relative;
    overflow: hidden;
}

.message-content-info {
    max-height: 46.875rem;
    overflow-y: scroll;
    margin-right: -50px;
    padding-right: 3.125rem;
}

.profile-message-inbox,
.message-content {
    flex: 1;
}

.profile-message-inbox ul {
    max-height: 59.375rem;
    overflow-y: scroll;
    width: 22.3125rem;
    list-style: none;
    padding: 0;
    margin: 0;
}

.profile-message-inbox ul li.message-active {
    border-left: 0.1875rem solid #C9A24D;
}

.profile-message-inbox ul li {
    border-bottom: 0.0625rem solid #EDF1F9;
    transition: .2s;
    list-style: none;
}

.profile-message-inbox ul li:last-child {
    border-bottom: none;
}

.message-by-content h5 {
    margin-bottom: 0;
    font-size: 0.92rem;
    line-height: 1;
}

.profile-message-inbox ul li a {
    position: relative;
    display: block;
    padding: 1.875rem;
}

.profile-message-inbox .message-avatar {
    position: absolute;
    left: 1rem;
    top: 50%;
    transform: translateY(-50%);
}

.message-avatar img {
    display: inline-block;
    width: 3.375rem;
    height: 3.375rem;
    border-radius: 50%;
}

.message-avatar img {
    width: 3.125rem;
    height: 3.125rem;
}

.profile-message-inbox .message-by {
    margin-left: 3.125rem;
}

.message-by-content h5 i {
    background: #F98F14;
    padding: 0.1875rem 0.5rem;
    border-radius: 3.125rem;
    color: #fff;
    font-size: 0.92rem;
}

.message-by-content span {
    font-size: 0.92rem;
    position: absolute;
    top: 1.5938rem;
    right: 1.5625rem;
    float: right;
    color: #888888;
}

.profile-message-inbox .message-by p {
    height: 1.625rem;
    max-width: 12.8125rem;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    font-size: 0.92rem;
    margin: 0;
    padding: 0;
    color: #6B747D;
    line-height: 1.6875rem;
}

.message-item {
    display: block;
    position: relative;
    margin-bottom: 1.5625rem;
}

.message-item .message-avatar {
    position: absolute;
    left: 0;
    top: 0;
}

.message-item .message-avatar img {
    width: 3.125rem;
    height: 3.125rem;
    display: inline-block;
    border-radius: 50%;
}

.message-item .message-description {
    margin-left: 4.375rem;
    background: #F4F5F7;
    border-radius: var(--radius-md);
    padding: 1.25rem;
    position: relative;
}

.message-item .message-description::before {
    position: absolute;
    top: 0;
    left: -9px;
    content: "\f0d9";
    font-family: "Font Awesome 6 Pro", serif;
    font-weight: bold;
    font-size: 1.9375rem;
    color: #F4F5F7;
}

.message-item .message-description p {
    font-size: 0.9375rem;
    padding: 0;
    margin: 0;
    line-height: 1.6875rem;
}

.message-item.me .message-avatar {
    left: auto;
    right: 0;
    position: absolute;
    top: 0;
}

.message-item.me .message-description {
    color: #C9A24D;
    background-color: rgba(9, 195, 152, 0.1);
    margin-left: 0;
    margin-right: 4.375rem;
    border-radius: var(--radius-md);
    padding: 1.25rem;
    position: relative;
}

.message-item.me .message-description::before {
    content: "\f0da";
    left: auto;
    right: -11px;
    color: #E6F9F4;
}

.message-reply {
    margin-top: 0.9375rem;
    position: absolute;
    bottom: 0;
    left: 1.875rem;
    right: 0.9375rem;
}

.message-reply .form-control {
    padding: 0.9375rem 1.25rem;
    box-shadow: none;
    border-radius: 0.625rem;
}

.message-reply .form-control:focus {
    border-color: #C9A24D;
}

.message-reply .theme-btn {
    margin-top: 0.9375rem;
}

.message-status {
    width: 0.75rem;
    height: 0.75rem;
    background: #252629;
    display: flex;
    border-radius: 50%;
    border: 0.1875rem solid #ffffff;
    position: absolute;
    right: -5px;
    top: 50%;
}

.message-status.online {
    background: #C9A24D;
}

.message-status.offline {
    background: #DD4B39;
}

.message-status.busy {
    background: #F6B500;
}

.profile-message .header-account img {
    width: 2.8125rem;
}


@media all and (max-width: 61.9375rem) {
    .message-by-content span {
        right: 4.0625rem;
    }

    .message-reply {
        right: 0;
    }
}

@media all and (max-width: 47.9375rem) {
    .table-property-info a {
        display: block;
    }

    .table-property-info h6 {
        margin-top: 0.625rem;
    }

    .user-profile-card-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 1.25rem;
    }

    .user-profile-card-header-right {
        flex-direction: column-reverse;
        align-items: flex-start;
    }

    .profile-message .profile-message-wrapper {
        flex-direction: column;
        gap: 3.125rem;
    }

    .profile-message .user-profile-card-header {
        flex-direction: row;
        align-items: center;
        gap: 1.25rem;
    }

    .profile-message .message-content {
        padding-left: 0;
        padding-bottom: 12.5rem;
    }

    .message-reply {
        left: 0;
    }

    .site-breadcrumb .breadcrumb-title {

        padding-top: 3.3125rem; /* desktop */
    }

}


/* ===================
coming soon css
====================== */

.coming-soon {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    min-height: 100vh;
    width: 100%;
    top: 0;
    left: 0;
    position: relative;
}

.coming-soon .container {
    position: relative;
}

.coming-soon:before {
    position: absolute;
    content: '';
    background: rgba(0, 0, 0, .7);
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}

.coming-soon .newsletter-form {
    position: relative;
    margin-top: 1.875rem;
}

.coming-soon .newsletter-form .input-newsletter {
    height: 3.4375rem;
    display: block;
    width: 100%;
    border: none;
    border-radius: 3.125rem;
    font-size: 0.92rem;
    padding-top: 0;
    padding-right: 0;
    padding-bottom: 0;
    padding-left: 1.5625rem;
    box-shadow: none;
}

.coming-soon .newsletter-form button {
    position: absolute;
    right: 0.25rem;
    top: 0.25rem;
    bottom: 0.25rem;
    height: auto;
    border: none;
    border-radius: 3.125rem;
    background: #C9A24D;
    display: inline-block;
    color: #fff;
    padding-left: 1.875rem;
    padding-right: 1.875rem;
    font-weight: 500;
    transition: .5s;
}

.coming-soon .newsletter-form button:hover {
    background-color: #C9A24D;
    color: #fff;
}

.coming-social {
    margin-top: 1.875rem;
    text-align: center;
}

.coming-social a {
    color: #fff;
    margin: 0.3125rem;
    width: 2.5rem;
    height: 2.5rem;
    line-height: 2.25rem;
    text-align: center;
    border-radius: 3.125rem;
    border: 0.125rem solid #fff;
    display: inline-block;
    transition: .5s;
}

.coming-social a:hover {
    background: #C9A24D;
    border-color: #C9A24D;
}

.countdown-wrap {
    margin-top: 1.875rem;
}

.countdown-single {
    background: #C9A24D;
    padding: 1.25rem;
    margin: 0.625rem;
    position: relative;
    overflow: hidden;
    border-radius: 3.125rem;
}

.countdown-single h2 {
    color: #fff;
}

.countdown-single h5 {
    color: #fff;
}


/* ===================
error css
====================== */

.error-wrapper {
    text-align: center;
}

.error-wrapper h1 {
    font-size: 15.625rem;
    letter-spacing: 0.3125rem;
    font-weight: bold;
    color: #C9A24D;
    line-height: 1;
}

.error-wrapper h1 span {
    color: #0E2E50;
}

.error-wrapper h2 {
    margin-top: 1.875rem;
    margin-bottom: 0.625rem;
}

.error-wrapper img {
    width: 100%;
}

.error-wrapper .theme-btn {
    margin-top: 1.875rem;
}


@media all and (max-width: 47.9375rem) {
    .error-wrapper h1 {
        font-size: 10rem;
    }
}


/* ===================
terms/privacy css
====================== */

.terms-content:not(:last-child) {
    margin-bottom: 3.375rem;
}

.terms-content:first-child {
    margin-top: -3px;
}

.terms-content .terms-list {
    margin-top: 2.3125rem;
}

.terms-content h3 {
    margin-bottom: 1.4375rem;
    position: relative;
    font-weight: 700;
}

.terms-content p:not(:last-child) {
    margin-bottom: 1.625rem;
}

.terms-list li:not(:last-child) {
    margin-bottom: 1rem;
}


/* ===================
footer css
====================== */

.footer-area {
    background: #00122D;
    position: relative;
    overflow: hidden;
    z-index: 1;
}

.footer-widget-box {
    margin-bottom: 1.25rem;
}

.footer-widget {
    position: relative;
    z-index: 1;
}

.footer-logo img {
    width: clamp(7.75rem, 6.2rem + 1vw, 7.75rem);
    margin-bottom: 0.8125rem;
}

.copyright {
    padding: 1.25rem 0;
    background: #011635;
}

.copyright .footer-menu {
    margin: 0;
    padding: 0;
    text-align: right;
}

.copyright .footer-menu li {
    display: inline-block;
    margin-left: 1.5625rem;
    font-size: 1rem;
}

.copyright .footer-menu li a {
    color: #f5faff;
    transition: all .5s ease-in-out;
}

.copyright .footer-menu li a:hover {
    color: #C9A24D;
}

.copyright .copyright-text {
    color: #f5faff;
    margin-bottom: 0;
    font-size: clamp(0.72rem, 0.5rem + 0.22vw, 0.72rem);
}

.copyright .copyright-text a {
    color: #C9A24D;
    font-weight: 500;
}

.footer-widget-title {
    color: #fff;
    position: relative;
    padding-bottom: 1.25rem;
    margin-bottom: 1.375rem;
    font-size: 1.1rem;
    z-index: 1;
}

.footer-widget-title::before {
    position: absolute;
    content: '';
    z-index: -1;
    width: 1.875rem;
    height: 0.1875rem;
    background-color: #C9A24D;
    bottom: 0;
    left: 0;
}

.footer-widget-title::after {
    position: absolute;
    content: '';
    z-index: -1;
    width: 0.625rem;
    height: 0.1875rem;
    background-color: #C9A24D;
    bottom: 0;
    left: 2.1875rem;
}

.footer-list {
    display: flex;
    flex-direction: column;
    gap: .8rem;
    font-size: clamp(0.80rem, 0.5rem + 0.3vw, 0.80rem);
}

.footer-list li a {
    color: #fff;
    transition: all .5s ease-in-out;
}

.footer-list li a i {
    margin-right: 0.3125rem;
    color: #C9A24D;
    font-weight: 400;
    font-size: 0.92rem;
}

.footer-list li a:hover {
    padding-left: 0.625rem;
    color: #C9A24D;
}

.footer-widget-box p {
    color: #fff;
    padding-right: 1.125rem;
    margin-bottom: 1.25rem;
    font-size: clamp(0.80rem, 0.5rem + 0.3vw, 0.80rem);
}

.footer-social {
    display: flex;
    gap: 0.9375rem;
    justify-content: end;
}

.footer-social li a i {
    height: 2.375rem;
    width: 2.375rem;
    line-height: 2.375rem;
    text-align: center;
    border-radius: 0.5rem;
    background: #fff;
    color: #C9A24D;
    transition: all .5s ease-in-out;
}

.footer-social li a i:hover {
    background: #C9A24D;
    color: #fff;
}

.footer-contact li {
    position: relative;
    display: flex;
    justify-content: start;
    align-items: center;
    color: #f5faff;
    font-size: clamp(0.80rem, 0.5rem + 0.3vw, 0.80rem);
    margin-bottom: 0.9375rem;
}

.footer-contact li a {
    color: #f5faff;
    -webkit-transition: 0.3s;
    transition: 0.3s;
}

.footer-contact li i {
    width: 1.5rem;
    height: 1.5rem;
    line-height: 1.5rem;
    font-size: 1rem;
    margin-right: 0.9375rem;
    border-radius: 0.5rem;
    background: #C9A24D;
    text-align: center;
    -webkit-transition: 0.3s;
    transition: 0.3s;
    color: #fff;
}

.subscribe-form .form-control {
    padding: 0.875rem 1.25rem;
    border-radius: 0.625rem;
    box-shadow: none;
    border: none;
}

.subscribe-form .theme-btn {
    margin-top: 1.25rem;
    width: 100%;
}


@media all and (max-width: 74.9375rem) {
    .footer-widget-box {
        margin-bottom: 3.125rem;
    }
}

@media all and (max-width: 61.9375rem) {

    .footer-area::before {
        display: none;
    }

    .footer-widget-wrapper {
        padding-bottom: 0;
    }

    .copyright .footer-menu {
        float: left;
        margin-top: 1.25rem;
        text-align: left;
    }

    .copyright .footer-menu li {
        margin-left: 0;
        margin-right: 0.9375rem;
    }

}

@media all and (max-width: 47.9375rem) {
    .footer-widget-wrapper {
        padding-bottom: 0;
    }

    .footer-social {
        justify-content: flex-start;
        margin-top: 1.25rem;
    }
}


/* ======================
home 2
====================== */

.home-2 .main {
    margin-top: -6rem;
}

.home-2 .navbar {
    background: transparent;
}

.home-2 .navbar.fixed-top {
    background: #fff;
}

.home-2 .hero-single {
    padding-top: 13.75rem;
}

.home-2 .property-listing-slider .listing-item {
    border: none;
    box-shadow: none;
}


@media all and (min-width: 62rem) {
    .home-2 .navbar .nav-item .nav-link {
        color: #fff;
    }

    .home-2 .navbar.fixed-top .nav-item .nav-link {
        color: #0E2E50;
    }

    .home-2 .navbar .nav-item .nav-link.active,
    .home-2 .navbar .nav-item .nav-link:hover {
        color: #C9A24D;
    }
}

@media (max-width: 61.9375rem) {
    .home-2 .navbar-toggler-btn-icon {
        color: #fff;
    }
}


/* ======================
home 3
====================== */

.home-3 .hero-single {
    padding-bottom: 13.75rem;
}

.home-3 .search-area {
    margin-top: -140px;
    position: relative;
    z-index: 1;
}

.home-3 .cta-area {
    padding-top: 5rem;
    padding-bottom: 5rem;
}


/* ======================
home 4
====================== */

.home-4 .search-wrapper {
    margin-top: 4.375rem;
}

.home-4 .search-wrapper .tab-content {
    background: #fff;
    border-radius: 0 0.9375rem 0.9375rem 0.9375rem;
}

.home-4 .search-nav .nav-item {
    margin: 0 0.625rem 0 0;
}

.home-4 .search-form {
    box-shadow: none;
}

.home-4 .search-nav .nav-link {
    background: #C9A24D;
    color: #fff;
    border-radius: 0.75rem 0.75rem 0 0;
}

.home-4 .search-nav .nav-link.active {
    background: #fff;
    color: #C9A24D;
}

.home-4 .search-nav .nav-link::before {
    display: none;
}

.home-4 .cta-area {
    padding-top: 5rem;
    padding-bottom: 5rem;
}


/* ======================
home 5
====================== */

.home-5 .hero-single {
    padding-top: 7.5rem;
    padding-bottom: 7.5rem;
}

.home-5 .search-form .nice-select,
.home-5 .search-form .form-group {
    margin-bottom: 1.25rem;
}

.home-5 .search-wrapper .tab-content {
    background: #fff;
    border-radius: 0.9375rem;
}

@media all and (max-width: 61.9375rem) {
    .home-5 .search-wrapper {
        margin-top: 4.375rem;
    }
}


/* ======================
property map listing
====================== */

.property-map-box {
    width: 50%;
    height: 93%;
    position: fixed;
}

.property-map-box #property-map-listing {
    width: 100%;
    height: 100%;
}

.property-map-box {
    left: 0;
}

.gm-style img {
    max-width: 100%;
}

.cluster-visible {
    color: #fff !important;
}

.infoBox {
    margin-left: -140px;
    margin-bottom: 9.0625rem;
    width: 16.25rem !important;
}

.infoBox > img:first-child {
    position: absolute !important;
    right: 1.25rem !important;
    top: 1.25rem !important;
    width: 1.25rem;
    height: 1.25rem;
    display: block;
    cursor: pointer;
    border-radius: 0.3125rem;
    z-index: 9999;
}

.property-map-item {
    background: #fff;
    padding: 0.75rem;
    border-radius: var(--radius-md);
}

.property-map-item .listing-img {
    width: 100%;
}

.property-map-item .listing-title {
    font-size: 1.25rem;
}

.property-map-item .listing-sub-title {
    font-size: 0.92rem;
    margin-bottom: 0.9375rem;
}

.property-map-item .listing-feature-list {
    font-size: 0.92rem;
}

.property-map-item .listing-price {
    font-size: 1.25rem;
    color: #C9A24D;
    font-weight: 600;
    margin-bottom: 0.3125rem;
}

.property-map-item-arrow {
    position: absolute;
    width: 1.5625rem;
    height: 1.5625rem;
    background: #fff;
    border-radius: 0.3125rem;
    bottom: -8px;
    left: 50%;
    transform: translateX(-50%) rotate(45deg);
}

.property-map-listing {
    margin-right: 1.25rem;
}

.property-map-listing .search-form {
    z-index: 2;
}

.property-map-listing .advanced-search-menu {
    margin-top: 7.8125rem;
}

.classical-map .property-map-box {
    margin-top: 0;
    position: relative !important;
    height: 31.25rem !important;
    width: 100% !important;
}


@media all and (max-width: 61.9375rem) {
    .property-map-box {
        margin-top: 3.125rem;
        position: relative !important;
        height: 31.25rem !important;
        width: 100% !important;
    }

    .property-map-listing .advanced-search-menu {
        margin-top: -9.375rem;
    }

    .property-map-listing {
        margin-right: 0;
    }

    .main {
        margin-top: 3.75rem;
    }
}

/* ===================
Pour gérer le débordement de la liste déroulante pour sélectionner les quartier.
Une liste avec beaucoup de données
====================== */
.list {
    max-height: 18.75rem;
    overflow-y: scroll !important;
}

.dropdown-menu.show {
    max-height: 11.9375rem;
    max-width: 22.8125rem;
    width: 22.8125rem !important;
    display: block !important;
    position: absolute;
}

.dropdown-menu.show li a span.text {
    display: inline-block !important;
    width: 90%;
    margin: 0 0.9375rem 0 0.625rem;
}

.dropdown-menu.show li a span small {
    position: relative;
    float: right !important;
}

input:not([type="checkbox"]):not([type="radio"]):not([type="text"]):not([type="number"]), select, textarea {
    width: 100%;
    border-radius: .375rem;
}

.form-control {
    font-size: clamp(0.92rem, 0.5rem + 0.42vw, 0.92rem);
}

.form-control:not(.form-control-sm) {
    height: inherit;
}

/* ====== Variables (optionnel mais clean) ====== */
:root {
    --primary: #1f4e5f; /* bleu pétrole */
    --accent: #C9A24D; /* doré sable */
    --text: #0f172a;
    --muted: #64748b;
    --border: rgba(15, 23, 42, 0.08);
    --card: #ffffff;
}

/* ====== CARD ====== */
.listing-item {
    position: relative;
    background: var(--card);
    border: 0.0625rem solid var(--border);
    border-radius: 1.125rem;
    overflow: hidden;
    transition: transform .15s ease, box-shadow .15s ease;
}

.listing-item:hover {
    transform: translateY(-2px);
}

/* ====== IMAGE ====== */
.listing-img {
    border-radius: 1rem;
    overflow: hidden;
    margin: 0.875rem 0.875rem 0 0.875rem;
}

.listing-img img {
    width: 100%;
    height: 13.75rem;
    object-fit: cover;
    display: block;
}

/* ====== BADGES ====== */
.listing-badge {
    position: absolute;
    top: 1.375rem;
    right: 1.625rem;
    background: var(--accent);
    color: #fff;
    font-weight: 700;
    font-size: 0.92rem;
    padding: 0.5rem 0.75rem;
    border-radius: var(--radius-md);
    letter-spacing: 0.0125rem;
    z-index: 2;
}

.listing-ref-grid {
    position: absolute;
    top: 12.875rem; /* ajuste selon hauteur img */
    left: 2.95rem;
    background: rgba(15, 23, 42, 0.70);
    color: #fff;
    font-weight: 700;
    font-size: 0.5125rem;
    padding: 0.375rem 0.625rem;
    border-radius: var(--radius-md);
    z-index: 2;
    backdrop-filter: blur(0.375rem);
}

/* ====== CONTENT ====== */
.listing-content {
    padding: 1rem 1.125rem 1.125rem 1.125rem;
}

/* Titre: 2 lignes max + premium */
.listing-title {
    margin: 0.625rem 0 0.5rem 0;
    font-size: 1.125rem;
    line-height: 1.25;
    font-weight: 800;
    color: var(--text);
}

.listing-title a {
    color: inherit;
    text-decoration: none;
}

.listing-title {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* Localisation */
.listing-sub-title {
    margin: 0 0 0.75rem 0;
    font-size: 0.92rem;
    color: var(--muted);
    letter-spacing: 0.0125rem;
}

.listing-sub-title i {
    color: var(--accent);
    margin-right: 0.5rem;
}

/* ====== PRICE ROW ====== */
.listing-price {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.75rem;
    padding: 0.75rem 0;
    border-top: 0.0625rem solid var(--border);
    border-bottom: 0.0625rem solid var(--border);
}

.listing-price-title {
    font-size: 0.7812rem;
    color: var(--muted);
}

.listing-price-title i {
    color: var(--accent);
    margin-right: 0.5rem;
}

/* Prix: plus “haut de gamme” */
.listing-price-amount {
    margin: 0.375rem 0 0 0;
    font-size: 1.25rem;
    font-weight: 900;
    color: var(--accent);
    letter-spacing: 0.0125rem;
}

/* Boutons icônes à droite */
.listing-btns a {
    width: 2.5rem;
    height: 2.5rem;
    border-radius: var(--radius-md);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(31, 78, 95, 0.08); /* primary soft */
    border: 0.0625rem solid rgba(31, 78, 95, 0.10);
    color: var(--primary);
    margin-left: 0.5rem;
    transition: background .15s ease, transform .15s ease;
}

.listing-btns a:hover {
    background: rgba(31, 78, 95, 0.14);
    transform: translateY(-1px);
}

/* ====== FEATURES ====== */
.listing-feature {
    padding: 0.75rem 0 0.625rem 0;
}

.listing-feature-list {
    display: flex;
    gap: 0.875rem;
    flex-wrap: wrap;
    margin: 0;
    padding: 0;
    list-style: none;
}

.listing-feature-list li {
    font-size: 0.92rem;
    color: var(--muted);
}

.listing-feature-list i {
    color: var(--accent);
    margin-right: 0.5rem;
}

/* ====== BOTTOM ====== */
.listing-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.875rem;
    padding-top: 0.625rem;
}

.listing-author {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    min-width: 0;
}

.listing-author-img img {
    width: 2.125rem;
    height: 2.125rem;
    border-radius: 50%;
    object-fit: cover;
    border: 0.125rem solid rgba(201, 162, 77, 0.35);
}

.listing-author h5 {
    margin: 0;
    font-size: 0.72rem;
    font-weight: 800;
    color: var(--text);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 10rem;
}

/* Bouton details: plus “clickable” */
.listing-btn {
    background: var(--primary);
    color: #fff !important;
    border: 0.0625rem solid var(--primary);
    border-radius: var(--radius-md);
    padding: 0.625rem 0.875rem;
    font-weight: 800;
    font-size: 0.8438rem;
    text-decoration: none;
    transition: filter .15s ease, transform .15s ease;
}

.listing-btn:hover {
    filter: brightness(.95);
    transform: translateY(-1px);
}

.listing-price-amount {
    white-space: nowrap;
    font-size: 1.25rem;
    font-weight: 900;
    line-height: 1.1;
}

/* si tu as mis GNF sur une autre ligne via <br>, enlève-le côté HTML.
   Sinon, tu peux forcer visuellement : */
.listing-price-amount {
    display: inline-flex;
    align-items: baseline;
    gap: 0.375rem;
}

.listing-content {
    padding: 0.875rem 1rem 1rem;
}

.listing-price {
    padding: 0.625rem 0;
}

.listing-feature {
    padding: 0.625rem 0 0.5rem;
}

.listing-btn {
    padding: 0.5625rem 0.75rem;
    font-size: 0.92rem;
    border-radius: var(--radius-md);
    min-width: 8.75rem;
    text-align: center;
}

.listing-btn {
    background: transparent;
    color: var(--primary) !important;
    border: 0.0625rem solid rgba(31, 78, 95, 0.35);
}

.listing-btn:hover {
    background: rgba(31, 78, 95, 0.08);
}

.listing-title {
    font-size: 1.0938rem;
    font-weight: 800;
    line-height: 1.28;
    letter-spacing: -0.2px;
    margin-bottom: 0.375rem;
}

.listing-badge {
    padding: 0.4375rem 0.625rem;
    border-radius: 62.4375rem;
    font-size: 0.92rem;
}

.listing-ref-grid {
    background: rgba(15, 23, 42, 0.55);
    border: 0.0625rem solid rgba(255, 255, 255, 0.15);
    border-radius: 62.4375rem;
    z-index: 1;
}

.listing-price-amount {
    white-space: nowrap;
}

.listing-price-amount .currency {
    font-size: 0.75rem;
    font-weight: 700;
    opacity: .85;
    margin-left: 0.375rem;
}

/* 2) Badge Achat/Location plus fin */
.listing-badge {
    padding: 0.375rem 0.625rem;
    font-size: 0.7812rem;
    font-weight: 800;
    border-radius: 62.4375rem;
    z-index: 1;
}

/* 3) Titre un peu plus "luxe" */
.listing-title {
    font-size: 1rem;
    line-height: 1.25;
    letter-spacing: -0.3px;
}

.listing-title a:hover {
    color: var(--primary);
}

/* 4) Localisation : plus discret + propre */
.listing-sub-title {
    font-size: 0.82rem;
    color: #76859a; /* un poil plus doux que muted */
}

.listing-sub-title i {
    color: var(--accent);
    opacity: .95;
}

/* 5) Boutons icônes : même taille et meilleur contraste */
.listing-btns a {
    width: 2.625rem;
    height: 2.625rem;
    border-radius: 0.875rem;
    background: rgba(15, 23, 42, 0.04);
    border: 0.0625rem solid rgba(15, 23, 42, 0.08);
    color: #20324a;
}

.listing-btns a:hover {
    background: rgba(31, 78, 95, 0.10);
    border-color: rgba(31, 78, 95, 0.18);
    color: var(--primary);
}

/* 6) CTA : neutre mais brandé (outline primary) */
.listing-btn {
    border-color: rgba(31, 78, 95, 0.35);
    color: var(--primary) !important;
    background: transparent;
    /*  font-weight: 800;*/
}

.listing-btn:hover {
    background: rgba(31, 78, 95, 0.08);
    border-color: rgba(31, 78, 95, 0.55);
}

/* Bonus: features un peu plus lisibles */
.listing-feature-list li {
    font-weight: 600;
    color: #6b7c93;
}

.listing-img, .listing-title a {
    cursor: pointer;
}

.section-subtitle {
    color: #C9A24D;
    letter-spacing: .25em;
    font-size: 0.92rem;
    font-weight: 700;
}

.section-title {
    font-size: clamp(1.75rem, 4vw, 2.375rem);
    font-weight: 800;
    letter-spacing: -0.5px;
    color: #0f2a44; /* bleu nuit */
}

.listing-img img {
    filter: saturate(1.05) contrast(1.05);
}

.listing-content {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.listing-bottom {
    margin-top: auto;
}

/* ===== Sidebar card ===== */
.listing-sidebar .search-form {
    background: #fff;
    border: 0.0625rem solid var(--border);
    border-radius: 1.125rem;
    padding: 1.125rem;
}

.listing-sidebar h4 {
    font-size: 1.25rem;
    font-weight: 900;
    color: var(--text);
    margin-bottom: 0.875rem !important;
}

.listing-sidebar h5 {
    font-size: 0.92rem;
    font-weight: 900;
    color: var(--text);
    margin-top: 1.125rem !important;
}

/* ===== Inputs ===== */
.listing-sidebar .form-control {
    height: 2.875rem;
    border-radius: 0.875rem;
    border: 0.0625rem solid var(--border);
    background: #fff;
    padding-left: 2.75rem; /* place pour l’icône */
    /* font-weight: 500;*/
    color: var(--text);
    box-shadow: none;
}

.listing-sidebar .form-control::placeholder {
    color: #94a3b8;
    font-weight: 500;
}

.listing-sidebar .form-group {
    position: relative;
}

.listing-sidebar .form-group > i {
    position: absolute;
    left: 1rem;
    top: 0;
    transform: translateY(33%);
    color: var(--accent);
    opacity: .95;
    pointer-events: none;
}

/* Focus premium */
.listing-sidebar .form-control:focus {
    border-color: rgba(31, 78, 95, 0.45);
}

/* ===== Nice-select ===== */
.listing-sidebar .nice-select {
    height: 2.875rem;
    line-height: 2.75rem;
    border-radius: 0.875rem;
    border: 0.0625rem solid var(--border);
    background: #fff;
    padding-left: 2.75rem; /* icône */
    /*font-weight: 500;*/
    color: #334155;
    width: 100%;
}

.listing-sidebar .nice-select:after {
    right: 0.875rem;
}

.listing-sidebar .nice-select.open,
.listing-sidebar .nice-select:focus {
    border-color: rgba(31, 78, 95, 0.45);
}

.listing-sidebar .nice-select .list {
    border-radius: 0.875rem;
    border: 0.0625rem solid var(--border);
    overflow: hidden;
}

.listing-sidebar .nice-select .option {
    font-weight: 500;
}

.listing-sidebar .nice-select .option.selected,
.listing-sidebar .nice-select .option:hover {
    background: rgba(201, 162, 77, 0.14);
}

/* ===== Price range slider (jQuery UI) ===== */
.listing-sidebar .price-range-slider label {
    font-weight: 500;
    color: var(--muted);
    font-size: 0.75rem;
}

.listing-sidebar .priceRange {
    border: none;
    font-weight: 900;
    color: var(--text);
    background: transparent;
    padding: 0;
}

/* Slider track */
.listing-sidebar .ui-widget.ui-widget-content {
    border: none;
    background: rgba(15, 23, 42, 0.08);
    height: 0.375rem;
    border-radius: 62.4375rem;
}

.listing-sidebar .ui-slider-range {
    background: var(--accent);
    border-radius: 62.4375rem;
}

.listing-sidebar .ui-slider-handle {
    width: 1rem;
    height: 1rem;
    border-radius: 50%;
    top: -5px;
    border: 0.1875rem solid var(--accent);
    background: #fff;
}

/* ===== Checkboxes amenities ===== */
.listing-sidebar .form-check {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    margin-bottom: 0.625rem;
}

.listing-sidebar .form-check-label {
    color: #64748b;
}

.listing-sidebar .form-check-input {
    width: 1.125rem;
    height: 1.125rem;
    border: 0.0625rem solid var(--border);
    border-radius: 0.375rem;
    box-shadow: none;
}

.listing-sidebar .form-check-input:checked {
    background-color: var(--primary);
    border-color: var(--primary);
}

/* ===== Sidebar CTA button ===== */
.listing-sidebar .theme-btn {
    width: 100%;
    border-radius: 0.875rem;
    padding: 0.75rem 0.875rem;
    font-weight: 900;
    background: var(--primary);
    border: 0.0625rem solid var(--primary);
    color: #fff;
}

.listing-sidebar .theme-btn:hover {
    filter: brightness(.96);
}

/* ===== Top sort bar ===== */
.property-sort {
    background: #fff;
    border: 0.0625rem solid var(--border);
    border-radius: 1.125rem;
    padding: 0.875rem 1rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
}

.property-sort h5 {
    margin: 0;
    font-size: 1rem;
    font-weight: 900;
    color: var(--text);
}

/* Grid/list icons */
.property-sort-list-grid a {
    width: 2.625rem;
    height: 2.625rem;
    border-radius: 0.875rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(15, 23, 42, 0.04);
    border: 0.0625rem solid rgba(15, 23, 42, 0.08);
    color: #20324a;
}

.property-sort-list-grid a.active {
    border-color: rgba(201, 162, 77, 0.50);
    background: rgba(201, 162, 77, 0.12);
    color: #7a5a12;
}

/* Sort dropdown box */
.property-sort-box .nice-select {
    height: 2.625rem;
    line-height: 2.5rem;
    border-radius: 0.875rem;
    border: 0.0625rem solid var(--border);
    font-weight: 800;
}

/* Aligne checkbox + label */
.listing-sidebar .form-check {
    display: flex;
    align-items: center;
    gap: 0.625rem; /* espace propre entre checkbox et texte */
}

/* Neutralise les marges Bootstrap */
.listing-sidebar .form-check-input {
    margin-top: 0;
}

/* Label propre */
.listing-sidebar .form-check-label {
    line-height: 1.4;
    cursor: pointer;
}

.property-single-meta-option a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.625rem; /* ajuste si besoin */
    height: 1.625rem;
    line-height: 1;
}

.property-single-meta-option a i {
    line-height: 1;
}

/* === PAGE DETAIL : sidebar gauche === */
.property-single-sidebar h4 {
    font-weight: 700; /* garde du punch */
}

.property-single-sidebar,
.property-single-sidebar p,
.property-single-sidebar a,
.property-single-sidebar .form-control {
    font-weight: 500; /* moins gras partout */
}

/* Liste tel/mail : icône + texte bien alignés */
.property-single-agent-info ul li a {
    display: inline-flex;
    align-items: center;
    gap: 0.625rem;
}

/* Bouton Send Message : icône centrée */
.property-single-agent-form .theme-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.625rem;
}

.property-single-agent-form .theme-btn span,
.property-single-agent-form .theme-btn i {
    line-height: 1;
}

/* ====== BLOG CARDS (ACCUEIL) : alignements icônes ====== */

/* 1) Ligne meta (By..., date) : icône + texte centrés verticalement */
.blog-item-meta ul {
    margin: 0;
    padding: 0;
    list-style: none;
    display: grid; /* 2 lignes propres */
    gap: 0.5rem;
}

.blog-item-meta ul li a {
    display: inline-flex;
    align-items: center;
    gap: 0.625rem;
    line-height: 1.2;
}

/* icônes : même largeur => tout s’aligne */
.blog-item-meta ul li a i {
    width: 1.125rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
}

/* 2) Bouton Read More : texte + flèche centrés */
.blog-item .theme-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.625rem;
}

.blog-item .theme-btn i {
    line-height: 1;
}

.blog-item-meta ul {
    display: flex;
    flex-wrap: wrap;
    gap: 1.125rem;
}

.blog-item .blog-title {
    font-size: 1.25rem; /* au lieu de 22–24 */
    line-height: 1.35;
    font-weight: 600; /* pas 700 */
    margin-bottom: 0.75rem;
}

.blog-item .blog-title a {
    color: #0f1b2d;
}

.blog-item-meta {
    margin-bottom: 0.875rem;
}

.blog-item-meta a {
    font-size: 0.92rem;
    font-weight: 400;
    color: #6b7280; /* gris doux */
}

.blog-item-meta i {
    color: var(--accent);
    font-size: 0.92rem;
}

.blog-item p {
    font-size: 0.92rem;
    line-height: 1.65;
    color: #6b7280;
    margin-bottom: 1.375rem;
}

.blog-item .theme-btn {
    padding: 0.625rem 1.125rem;
    font-size: 0.92rem;
    font-weight: 500;
    border-radius: 62.4375rem; /* pill */
}

.blog-item .theme-btn:hover {
    transform: translateY(-1px);
}

.blog-item-info {
    padding: 1.375rem 1.375rem 1.625rem;
}

.hero-section, .property-map-listing {
    z-index: 20;
}

.footer-area .list {
    overflow-y: unset !important;
}

.blog-thumb-img {
    text-align: center;
}

.blog-thumb-img img {
    display: inline-block;
    max-width: 100%;
    height: auto;
}

.blog-meta .share {
    margin-left: auto;
}

.category-title {
    font-size: clamp(0.875rem, 2.5vw, 1.125rem);
    margin: 0.625rem 0;
}

.site-title-tagline {
    display: block;
    font-size: clamp(0.75rem, 2.5vw, 0.875rem);
    letter-spacing: 0.125rem;
    margin-bottom: 0.625rem;
}

.team-bio h5 a {
    font-size: clamp(1rem, 1.5vw, 1rem);
    line-height: 1.2;
}

.team-bio span {
    font-size: clamp(0.8125rem, 1vw, 0.8125rem);
}

.team-bio h5 a {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

@media (max-width: 62rem) {
    .team-bio h5 a {
        font-size: 1.125rem;
    }

    .team-bio span {
        font-size: 0.92rem;
    }
}

@media (max-width: 36rem) {
    .team-bio h5 a {
        font-size: 1rem;
    }

    .team-bio span {
        font-size: 0.92rem;
    }
}

.testimonial-author-info h4 {
    font-size: clamp(1rem, 1vw, 1rem);
    line-height: 1.3;
    margin-bottom: 0.25rem;
}

.testimonial-author-info p {
    font-size: clamp(0.8125rem, 3vw, 0.9375rem);
    opacity: 0.8;
}

.testimonial-content {
    font-size: clamp(0.875rem, 3.5vw, 1rem);
    line-height: 1.6;
}

.testimonial-content,
.testimonial-author-info h4 {
    word-break: break-word;
    text-align: center;
}

.testimonial-single {
    padding: 1.25rem 1rem;
}

.blog-title a {
    font-size: clamp(1rem, 4vw, 1.25rem);
    line-height: 1.35;
    display: block;
}

.blog-item-meta {
    font-size: clamp(0.75rem, 3vw, 0.875rem);
}

.theme-btn {
    font-size: clamp(0.8125rem, 3vw, 0.875rem);
    padding: 0.5rem 0.875rem;
}

.blog-title a {
    word-break: break-word;
}

.blog-title a {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

@media (max-width: 36rem) {
    .blog-item-info {
        padding: 1rem;
    }
}

.hero-single {
    min-height: 85vh;
    display: flex;
    align-items: center; /* centre verticalement */
    justify-content: center; /* centre horizontalement */
    /* padding: 5rem 0.9375rem; !* sécurité mobile *!*/
    padding: 0.9375rem;
}

.hero-content {
    width: 100%;
    text-align: center;
}

.listing-price {
    display: flex;
    justify-content: space-between;
    align-items: center;
}


@media (max-width: 48rem) {
    .hero-single {
        min-height: 60svh;
        padding: 2.25rem 0 3.75rem;
    }

    .listing-price {
        flex-direction: column;
        align-items: stretch;
    }

    .container {
        --bs-gutter-x: 0;
        padding-right: var(--bs-gutter-x, 0);
        padding-left: var(--bs-gutter-x, 0);
    }
}

/* Mobile */
@media (max-width: 61.9375rem) {
    .hero {
        flex-direction: column;
    }

    .hero-content {
        width: 100%;
    }

    .hero-title {
        font-size: 1.75rem;
        line-height: 1.1;
    }

    .hero-tabs {
        display: flex;
        width: 100%;
    }

    .hero-tabs button {
        flex: 1;
    }

    .search-box {
        width: 100%;
    }

    .main {
        margin-top: 3.75rem;
    }
}

.hero-title {
    font-size: clamp(1.5rem, 6vw, 2.3rem);
    line-height: 1.2;
}

.hero-content p {
    font-size: clamp(0.875rem, 4vw, 1.125rem);
    max-width: 37.5rem;
    margin: 0 auto 1.5rem;
}

@media (max-width: 48rem) {
    .site-breadcrumb {
        padding: 2.1875rem 0;
    }

    .breadcrumb-menu {
        font-size: 0.92rem;
    }

    .contact-info {
        align-items: center;
        padding: 0.9375rem;
    }

}

.site-breadcrumb .breadcrumb-title {
    font-size: clamp(1.375rem, 5vw, 2.5rem);
    margin-bottom: 0.625rem;
    text-align: center;
}

.breadcrumb-menu {
    margin-top: 0.3125rem;
    padding: 0;
}

.site-breadcrumb .container {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
}

.contact-info {
    display: flex;
    gap: 0.9375rem;
    align-items: flex-start;
    margin-bottom: 1.25rem;
}

.counter-box .counter {
    font-size: clamp(1.75rem, 6vw, 2.125rem);
    line-height: 1.1;
}

@media (max-width: 36rem) {
    .counter-box {
        text-align: center;
        padding: 1.25rem 0.625rem;
    }
}

.counter-box span.counter {
    display: block;
}

.property-single-content h4 {
    font-size: clamp(1rem, 4vw, 1.25rem);
}

.property-single-agent-info h5 {
    font-size: clamp(0.875rem, 3.5vw, 1.125rem);
}

.property-single-agent-info ul li a {
    font-size: clamp(0.75rem, 3vw, 0.875rem);
}

.nice-search-wrapper {
    padding: 0.5rem;
    border-bottom: 0.0625rem solid #eee;
}

.nice-search {
    width: 100%;
    padding: 0.5rem 0.625rem;
    border: 0.0625rem solid #ddd;
    border-radius: 0.5rem;
    font-size: 0.92rem;
    outline: none;
}


.estate-watermark {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(-20deg);
    padding: 1.125rem 2.5rem;

    font-size: 1.625rem;
    font-weight: 800;
    letter-spacing: 0.25rem;
    text-transform: uppercase;

    border-radius: 0.5rem;
    z-index: 0;
    pointer-events: none;

    opacity: 0.85;
    backdrop-filter: blur(0.125rem);
}

/* VENDU */
.estate-watermark.status-sold {
    background: rgba(201, 160, 65, 0.85); /* doré */
    color: #1e1e1e;
    border: 0.125rem solid rgba(255, 255, 255, 0.4);
}

.listing-img img {
    transition: all 0.3s ease;
}

.listing-img:has(.status-sold) img {
    filter: grayscale(40%) brightness(0.9);
}

.property-detail-media {
    position: relative;
    overflow: hidden;
    border-radius: 0.875rem; /* adapte à ton style */
}

.property-detail-media.is-sold .property-detail-watermark {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    pointer-events: none;
    background: rgba(10, 10, 10, 0.25); /* voile léger */
}

.property-detail-media.is-sold .property-detail-watermark span {
    display: inline-block;
    padding: 0.875rem 2.375rem;
    border-radius: 0.875rem;
    font-size: 1.5em;
    font-weight: 800;
    letter-spacing: 0.1875rem;
    text-transform: uppercase;
    transform: rotate(-18deg);
    background: rgba(197, 160, 74, 0.85); /* doré + transparence */
    color: #fff;
    z-index: 10;
    text-align: center;
}

.annonce {
    padding: 1.875rem;
}

.searchForm .theme-btn {
    font-size: clamp(0.8125rem, 3vw, 0.875rem);
    padding: 1rem 0.875rem;
}

.register-form .nice-select {
    float: none !important;
    text-align: center !important;
    height: 3.0625rem;
}

.register-form .theme-btn, .login-form .theme-btn {
    padding: 0.75rem 0.875rem;
}

.nice-select {
    width: 100%;
}

.nice-select .list {
    width: 100%;
    min-width: 100%;
}

.property-single-bloc-left {
    background: #fff;
    padding: 0.9375rem 1.875rem 1.875rem 1.875rem;
}

.property-single-info-item i {
    margin: 0;
}

#propertiesBody tr {
    background: white;
    border-radius: var(--radius-md);
    transition: all .2s ease;
}

#propertiesBody tr:hover {
    transform: translateY(-2px);

}

#propertiesBody tr {
    display: block;
    margin-bottom: 1rem;
}

#propertiesBody td {
    border: none !important;
}

.table-property-info {
    display: flex;
    gap: 1rem;
    align-items: center;
}

.table-property-info img {
    width: 6.875rem;
    height: 5rem;
    object-fit: cover;
    border-radius: 0.625rem;
}

.table-property-content h6 {
    font-size: 0.82rem;
    font-weight: 600;
    margin-bottom: 0.25rem;
}

.table-property-content p {
    font-size: 0.82rem;
    color: #777;
    margin-bottom: 0.375rem;
}

.table-property-content span.date-pub {
    font-size: 0.82rem;
}

.listing-price-amount {
    font-size: 0.92rem;
    font-weight: 700;
    color: #c89b3c; /* ton gold branding */
}

.badge-active {
    background: rgba(72, 187, 120, .15);
    color: #2f855a;
    padding: 0.375rem 0.625rem;
    border-radius: 1.25rem;
    font-size: 0.75rem;
}

.action-btn {
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 0.5rem;
    border: 0.0625rem solid #eee;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: .2s;
}

.action-btn:hover {
    background: #f8f9fa;
}

#propertiesBody td {
    padding: 1.125rem 1.25rem;
}

#propertiesBody tr {
    cursor: pointer;
}

.property-meta {
    font-size: 0.92rem;
    color: #999;
}

@media (max-width: 48rem) {

    #propertiesBody tr {
        display: block;
    }

    #propertiesBody td {
        display: block;
        width: 100%;
    }

}

.user-profile-card-header-right form button {
    text-align: center !important;
    padding: 0.625rem !important;
    width: 7.8125rem;
}

/* Conteneur global du header (gauche + droite) */
.property-single-meta {
    gap: 1.125rem;
    align-items: flex-start;
    padding: 0.875rem 1rem !important;
    border: 0.0625rem solid #eef0f3;
    border-radius: 0.875rem;
    background: #fff;
}

/* Colonne gauche : meilleur rythme */
.property-single-meta-left {
    flex: 1;
    min-width: 0; /* évite débordement du titre */
}

/* Titre */
.property-single-meta-left h4 {
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.2;
    margin: 0 0 0.375rem 0;
}

/* Ligne localisation (le <p> sous le titre) */
.property-single-meta-left p {
    margin: 0 0 0.625rem 0;
    color: #6b7280;
    font-size: 0.92rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

/* Badge "Achat" */
.property-single-meta-left span {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.625rem;
    border-radius: 62.4375rem;
    background: rgba(200, 155, 60, .14);
    color: #9a6b08;
    font-weight: 600;
    font-size: 0.75rem;
}

/* Bloc droite : prix au-dessus, actions en dessous */
.property-single-meta-right {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 0.625rem;
    min-width: 13.75rem;
}

/* Prix */
.property-single-meta-right h4,
.property-single-meta-right .price,
.property-single-meta-right .property-price {
    font-size: 1.25rem;
    font-weight: 800;
    color: #c89b3c;
    margin: 0;
}

/* Barre d'actions (icônes) */
.property-single-meta-option {
    display: flex;
    gap: 0.625rem;
    padding: 0.5rem;
    border-radius: var(--radius-md);
    /*background: #f7f8fa;
  border: 0.0625rem solid #eef0f3;*/
}

/* Boutons actions (les <a>) */

.property-single-meta-option a:hover {
    transform: translateY(-1px);
}

@media (max-width: 48rem) {
    .property-single-meta {
        flex-direction: column;
    }

    .property-single-meta-right {
        width: 100%;
        align-items: flex-start;
    }

    .property-single-meta-option {
        width: 100%;
        justify-content: center;
    }
}

.property-single-meta-left h4 {
    /* white-space: nowrap;*/
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Chaque slide */
.property-single-slider .owl-item,
.property-single-slider .item {
    height: 28.75rem;
}

.property-single-slider img {
    width: 100%;
    height: 100%;
    object-fit: cover; /* important */
    display: block;
}

/* Responsive */
@media (max-width: 62rem) {
    .property-single-slider .owl-item,
    .property-single-slider .item {
        height: 22.5rem;
    }
}

@media (max-width: 36rem) {
    .property-single-slider .owl-item,
    .property-single-slider .item {
        height: 16.25rem;
    }
}

.property-single-slider img {
    transition: transform .35s ease;
}

.property-single-slider:hover img {
    transform: scale(1.03);
}

/* Positionnement de base des nav */
.property-single-slider .owl-nav {
    position: absolute;
    inset: 0;
    pointer-events: none; /* pour ne pas bloquer le drag */
}

.property-single-slider .owl-nav button {
    pointer-events: auto;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 2.75rem;
    height: 2.75rem;
    border-radius: 62.4375rem;
    background: rgba(255, 255, 255, .92) !important;
    border: 0.0625rem solid rgba(0, 0, 0, .06) !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: .2s ease;
}

/* gauche / droite */
.property-single-slider .owl-nav .owl-prev {
    left: 0.875rem;
}

.property-single-slider .owl-nav .owl-next {
    right: 0.875rem;
}

.property-single-slider .owl-nav button:hover {
    transform: translateY(-50%) scale(1.05);
}

/* Couleur des icônes des flèches (si texte ou <span>) */
.property-single-slider .owl-nav button span,
.property-single-slider .owl-nav button i,
.property-single-slider .owl-nav button svg {
    color: #111827 !important;
    fill: currentColor !important;
    font-size: 1.125rem;
}

.property-single-slider::before,
.property-single-slider::after {
    content: none !important;
}

/* IMPORTANT: autorise la colonne gauche à rétrécir */
.property-single-meta-left {
    min-width: 0;
    flex: 1 1 auto;
}

.property-single-content {
    background: #fff;
    border: 0.0625rem solid #eef0f3;
    border-radius: 1rem;
    padding: 1.25rem;
    margin-top: 1.25rem;
}

.property-single-content h4 {
    font-size: 1.125rem;
    font-weight: 700;
    margin-bottom: 0.9375rem;
    display: flex;
    align-items: center;
    gap: 0.625rem;
    padding-bottom: 0.625rem;
    border-bottom: 0.0625rem solid #eef0f3;
}

.property-single-content:nth-of-type(1) {
    background: #fafbfc;
}

.property-single-description {
    font-size: 0.9375rem;
    line-height: 1.8;
    color: #4b5563;
}

.property-single-content:nth-of-type(2) .row {
    row-gap: 0.875rem;
}

.property-single-info-item {
    background: #f9fafb;
    border-radius: var(--radius-md);
    padding: 0.75rem 0.875rem;
    border: 0.0625rem solid #eef0f3;
    display: flex;
    align-items: center;
    gap: 0.625rem;
    transition: .2s;
}

.property-single-info-item:hover {
    background: #fff;
}

.property-single-content:nth-of-type(3) .property-single-info-item {
    background: rgba(200, 155, 60, .1);
    border: none;
    border-radius: 62.4375rem;
    padding: 0.5rem 0.875rem;
}

.property-single-content:nth-of-type(3) .property-single-info-item i {
    color: #c89b3c;
}

.property-single-content:nth-of-type(1) h4::before {
    content: "📝";
}

.property-single-content:nth-of-type(2) h4::before {
    content: "🏠";
}

.property-single-content:nth-of-type(3) h4::before {
    content: "⚙️";
}

.property-single-content:nth-of-type(4) h4::before {
    content: "✔";
}

@media (max-width: 36rem) {

    .property-single-content {
        padding: 0.9375rem;
    }

    .property-single-info-item {
        font-size: 0.92rem;
    }

    .property-single-bloc-left {
        padding: 0.3125rem;
    }
}

.property-single-content {
    padding: 1rem 1.125rem; /* moins épais */
    margin-top: 1rem; /* moins d'espace entre sections */
}

.property-single-content h4 {
    margin-bottom: 0.75rem;
    padding-bottom: 0.5rem;
}

.property-single-info-item {
    padding: 0.625rem 0.75rem; /* moins gonflé */
    font-size: 0.92rem;
}

.property-single-content:nth-of-type(2) .row {
    row-gap: 0.625rem;
}

/* Équipements */
.property-single-content:nth-of-type(3) .property-single-info-item {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    padding: 0.625rem 0.875rem;
    border: 0.0625rem solid #eef0f3;
    border-radius: var(--radius-md);
    background: #fff;
}

/* Icône ronde gold */
.property-single-content:nth-of-type(3) .row {
    row-gap: 0.75rem;
}

.property-single-content:nth-of-type(4) .row {
    row-gap: 0.75rem;
}

/* Base équipements (section 3) */
.property-single-content:nth-of-type(4) .property-single-info-item {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    padding: 0.625rem 0.875rem;
    border: 0.0625rem solid #eef0f3;
    border-radius: var(--radius-md);
    background: #fff;
}

/* Icône */
.property-single-content:nth-of-type(4) .property-single-info-item::before {
    width: 1.625rem;
    height: 1.625rem;
    border-radius: 62.4375rem;
    background: rgba(200, 155, 60, .18);
    color: #c89b3c;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.92rem;
    font-weight: 700;
    flex: 0 0 1.625rem;
    content: "✓"; /* fallback */
}

.property-single-sidebar .property-single-content {
    background: #fff;
    border: 0.0625rem solid #eef0f3;
    border-radius: 1.125rem;
    padding: 1.125rem 1.125rem 1rem;
}

.property-single-agent-form .form-group {
    margin-bottom: 0.75rem;
}

.property-single-agent-form .form-control {
    height: 3rem;
    border-radius: 0.875rem;
    border: 0.0625rem solid #e7ebf0;
    background: #fbfcfd;
    box-shadow: none;
    padding: 0.75rem 0.875rem;
    font-size: 0.92rem;
    transition: .2s ease;
}

.property-single-agent-form textarea.form-control {
    height: 8.75rem;
    resize: vertical;
    padding-top: 0.75rem;
}

.property-single-agent-form .form-control:focus {
    background: #fff;
    border-color: rgba(200, 155, 60, .55);
}

/* Bordure rouge pour nice-select si select est invalid */
select.is-invalid + .nice-select {
    border: 0.0625rem solid #a94442 !important;
    box-shadow: none !important;
}

/* Optionnel : icône rouge */
select.is-invalid + .nice-select:after {
    border-color: #a94442 !important;
}

.complete-profile .nice-select {
    height: 3.25rem;
    width: 100%;
}

#success_message, #success_reset_password, #success_forgot, #reply_success_message, #sub_reply_success_message, #success_newsletter, #success_newsletter_scroll {
    background: #a1cda1;
    border: 0;
    cursor: pointer;
    height: 2.5rem;
    line-height: 2.5rem;
    display: none;
    text-align: center;
    border-radius: .275rem;
    color: #fff;
    font-family: 'Quicksand', sans-serif;
    font-size: 0.92rem;
    font-weight: normal;
    margin: 0.625rem;
}

.user-profile-form .form-control, .theme-btn {
    padding: .75rem .75rem;
}

.user-profile-form .nice-select {
    height: 3rem;
    border-radius: var(--radius-md);
    font-size: 1rem;
}

.required {
    color: #a94442;
    margin-left: 0.1875rem;
    font-weight: bold;
}

.invalid-feedback {
    font-size: .7em;
}

#registerForm .form-check {
    margin-bottom: 1rem;
}

#error_login, #error_forgot, #error_reset_password, #error_newsletter, #error_newsletter_scroll {
    border-radius: 0.25rem;
    display: none;
    text-align: center;
    min-height: 2.3125rem;
    line-height: 1.5rem;
    margin: 0.625rem;
    padding: 0.5rem;
    color: #a94442;
    background-color: #f2dede;
    border-color: #ebccd1;
    font-size: 0.92rem;
}

h4.modal-header-title, h4.modal-header-title2 {
    font-size: 1.7em;
    text-align: center;
    /* margin: 1rem 0 1em;*/
    font-weight: 800;
}

.category-card {
    background: #fff;
    border-radius: 1.25rem;
    transition: all 0.25s ease;
    border: 0.0625rem solid #f1f1f1;
    min-height: 8.75rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.category-card:hover {
    transform: translateY(-6px);
}

.category-icon i {
    font-size: 2.1rem;
    color: #c9a14a;
    line-height: 1;
}

.category-title {
    font-size: 0.80rem;
    /* font-weight: 600;*/
    color: #173a67;
    margin-bottom: 0.3125rem;
}

.category-property {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;

    background: #f3f5f9;
    color: #c9a14a;
    /* font-weight: 600; */
    font-size: 0.61rem;
}

.purpose-card-btn {
    transition: all 0.25s ease;
    border: 0.0625rem solid #ececec !important;
    min-height: 13.75rem;
}

.purpose-card-btn:hover {
    transform: translateY(-4px);
    border-color: #c9a14a !important;
}

.purpose-icon {
    font-size: 2.75rem;
    line-height: 1;
}

/* ====== Page add terrain  ====== */
.selection-summary-card {
    background: linear-gradient(135deg, #ffffff 0%, #f8fafc 100%);
    border: 0.0625rem solid #edf0f5;
    border-radius: 1.25rem;
    padding: 1.375rem 1.5rem;
}

.summary-topline {
    font-size: 0.92rem;
    text-transform: uppercase;
    letter-spacing: 0.0938rem;
    color: #c9a14a;
    font-weight: 700;
}

.summary-pill {
    display: inline-flex;
    align-items: center;
    padding: 0.625rem 1rem;
    border-radius: 62.4375rem;
    background: #173a67;
    color: #fff;
    font-size: 0.65rem;
    font-weight: 600;
}

.form-section-card {
    /*background: #fff;
    border: 0.0625rem solid #edf0f5;
    border-radius: 1.25rem;*/
    padding: 0 0 1.75rem 0;
    /*box-shadow: 0 0.625rem 1.875rem rgba(0, 0, 0, 0.04);*/
}

.section-title {
    font-size: 1.375rem;
    font-weight: 700;
    color: #173a67;
    margin-bottom: 1.5rem;
    position: relative;
}

.section-title::after {
    content: "";
    display: block;
    width: 3.75rem;
    height: 0.1875rem;
    background: #c9a14a;
    border-radius: 62.4375rem;
    margin-top: 0.625rem;
}

.property-hero-card {
    background: linear-gradient(135deg, #ffffff 0%, #f8fafc 100%);
    border: 0.0625rem solid #edf0f5;
    border-radius: 1.5rem;
    padding: 1.75rem;
}

.property-hero-top {
    display: flex;
    justify-content: space-between;
    gap: 1.5rem;
    align-items: flex-start;
    flex-wrap: wrap;
}

.property-title {
    font-size: 1.25rem;
    font-weight: 800;
    color: #173a67;
    line-height: 1.2;
}

.property-location {
    color: #6b7280;
    font-size: 0.92rem;
}

.property-location i, .swiper-slide i {
    color: #fb221c;
    font-weight: bold;
}

.property-price-box {
    min-width: 15rem;
    background: #fff;
    border: 0.0625rem solid #edf0f5;
    border-radius: 1.25rem;
    padding: 1.125rem 1.25rem;
}

.property-price-label {
    font-size: 0.92rem;
    text-transform: uppercase;
    letter-spacing: 0.0938rem;
    color: #c9a14a;
    font-weight: 700;
    margin-bottom: 0.375rem;
}

.property-price-value {
    font-size: 1.75rem;
    font-weight: 800;
    color: #173a67;
}

.property-price-value span {
    font-size: 1rem;
    font-weight: 700;
}

.property-surface {
    color: #4b5563;
    font-weight: 600;
}

.property-description-content p {
    color: #4b5563;
    line-height: 1.8;
    margin-bottom: 0;
}

.property-info-chip {
    background: #eef4ff;
    border: 0.0625rem solid #12386b;;
    border-radius: 1rem;
    padding: 0.875rem 1rem;
    color: #173a67;
    font-weight: 600;
    height: 100%;
}

.summary-pill-light {
    background: #eef4ff;
    color: #173a67;
}

.summary-pill-sold {
    background: #b02a37;
    color: #fff;
}


.similar-listings-card {
    /*    background: #fff;
        border: 0.0625rem solid #edf0f5;*/
    border-radius: 1.5rem;
    padding: 1.75rem;
    /* box-shadow: 0 0.625rem 1.875rem rgba(0, 0, 0, 0.04);*/
}

.property-gallery {
    margin-bottom: 1.875rem;
}

.property-main-image img {
    width: 100%;
    border-radius: 1rem;
    height: 26.25rem;
    object-fit: cover;
}

.property-thumbnails {
    display: flex;
    gap: 0.625rem;
    margin-top: 0.625rem;
}

.property-thumbnails img {
    width: 6.25rem;
    height: 4.375rem;
    object-fit: cover;
    border-radius: 0.625rem;
    cursor: pointer;
    opacity: 0.7;
    border: 0.125rem solid transparent;
}

.property-thumbnails img.active {
    opacity: 1;
    border: 0.125rem solid #c9a14a;
}

.price-sticky-box {
    position: sticky;
    top: 6.875rem;
    background: white;
    padding: 1.25rem;
    border-radius: 1.125rem;
    border: 0.0625rem solid #12386b;;
}

.sticky-price {
    font-size: 1.1rem;
    font-weight: 800;
    color: #173a67;
}

.sticky-surface {
    font-weight: 600;
    color: #6b7280;
}

.add-property-form .disabled .nice-select, #profileForm .disabled {
    background-color: #e9ecef;
    opacity: 1;
}

.carousel-item {
    .lg-item > img {
        height: 37.5rem;
    }
}

.property-gallery-carousel {
    position: relative;
    overflow: hidden;
    border-radius: 1.125rem;
    background: #f5f7fb;
}

.property-gallery-carousel .carousel-inner {
    border-radius: 1.125rem;
}

.property-gallery-carousel .carousel-item {
    width: 100%;
    background: #eef1f6;
}

.property-gallery-carousel .carousel-item a {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 32.5rem;
    margin: 0;
    text-decoration: none;
    background: #eef1f6;
}

.property-gallery-frame {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
    background: #eef1f6;
    display: flex;
    align-items: center;
    justify-content: center;
}

.property-gallery-image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    margin: 0;
}

.property-image-watermark {
    position: absolute;
    right: 1.125rem;
    bottom: 1.125rem;
    z-index: 2;
    background: rgba(0, 0, 0, 0.42);
    color: #fff;
    font-size: 0.92rem;
    font-weight: 600;
    padding: 0.375rem 0.75rem;
    border-radius: 62.4375rem;
    pointer-events: none;
    user-select: none;
}

.property-gallery-carousel .carousel-control-prev,
.property-gallery-carousel .carousel-control-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 3.5rem;
    height: 3.5rem;
    opacity: 1;
    z-index: 5;
}

.property-gallery-carousel .carousel-control-prev {
    left: 1rem;
}

.property-gallery-carousel .carousel-control-next {
    right: 1rem;
}

.property-gallery-carousel .carousel-control-prev-icon,
.property-gallery-carousel .carousel-control-next-icon {
    width: 3.5rem;
    height: 3.5rem;
    background-size: 1.375rem 1.375rem;
    background-color: rgba(0, 0, 0, 0.30);
    border-radius: 50%;
}

.property-gallery-thumbs .property-thumb-btn {
    display: block;
    width: 100%;
    padding: 0;
    border: 0.125rem solid transparent;
    border-radius: 0.875rem;
    overflow: hidden;
    background: transparent;
    transition: all .2s ease;
}

.property-gallery-thumbs .property-thumb-btn.active {
    border-color: #caa74e;
}

.property-thumb-image {
    display: block;
    width: 100%;
    height: 5.9375rem;
    object-fit: cover;
}

@media (max-width: 61.9375rem) {
    .property-gallery-carousel .carousel-item a {
        height: 25rem;
    }

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

    .property-gallery-carousel .carousel-control-prev {
        left: 0.625rem;
    }

    .property-gallery-carousel .carousel-control-next {
        right: 0.625rem;
    }

    .property-gallery-carousel .carousel-control-prev-icon,
    .property-gallery-carousel .carousel-control-next-icon {
        width: 3rem;
        height: 3rem;
        background-size: 1.25rem 1.25rem;
    }
}

@media (max-width: 35.9375rem) {
    .property-gallery-carousel .carousel-item a {
        height: 16.875rem;
    }

    .property-thumb-image {
        height: 4.5rem;
    }
}

.property-gallery-thumbs .row {
    display: flex;
    justify-content: center;
    gap: 0.75rem;
    flex-wrap: wrap;
}

.property-gallery-thumbs .col-4,
.property-gallery-thumbs .col-md-3 {
    flex: 0 0 auto;
    width: auto;
}

.property-gallery-carousel {
    position: relative;
    overflow: hidden;
    border-radius: 1.5rem;
    background: #f5f7fb;
}

.property-gallery-top-actions {
    position: absolute;
    top: 1.125rem;
    right: 1.125rem;
    z-index: 10;
    display: flex;
    gap: 0.75rem;
}

.gallery-action-btn {
    width: 3.375rem;
    height: 3.375rem;
    border: 0;
    border-radius: 50%;
    background: rgba(90, 90, 90, 0.78);
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.375rem;
    cursor: pointer;
    transition: transform .2s ease, background .2s ease;
}

.gallery-action-btn:hover {
    transform: scale(1.05);
    background: rgba(60, 60, 60, 0.9);
}

.property-gallery-counter {
    position: absolute;
    left: 1rem;
    bottom: 1rem;
    z-index: 10;
    display: inline-flex;
    align-items: center;
    gap: 0.625rem;
    padding: 0.5rem 1rem;
    border-radius: 1rem;
    background: rgba(33, 28, 95, 0.92);
    color: #fff;
    font-weight: 600;
    /* font-size: 1.2rem;*/
}

.property-gallery-counter i {
    font-size: 1.5rem;
}

.gh-breadcrumb {
    font-size: 0.7125rem;
}

/* ====== Aside annonceur page détail  ====== */
.announcer-card {
    background: #fff;
    border-radius: 1.5rem;
    padding: 1.75rem;
    border: 0.0625rem solid #edf0f5;
}

.announcer-card-top {
    display: flex;
    align-items: center;
    gap: 1.125rem;
    margin-bottom: 1.5rem;
}

.announcer-avatar {
    width: 3.75rem;
    height: 3.75rem;
    border-radius: 50%;
    overflow: hidden;
    flex: 0 0 3.75rem;
    border: 0.1875rem solid #d4af50;
    background: #f8f9fb;
}

.announcer-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.announcer-logo {
    width: 3.75rem;
    /*  height: 3.75rem;*/
    /*  border-radius: 50%;*/
    overflow: hidden;
    flex: 0 0 3.75rem;
    /* border: 0.1875rem solid #d4af50;*/
    background: #f8f9fb;
}

.announcer-logo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.announcer-name {
    font-size: 0.9rem;
    line-height: 1.2;
    margin-bottom: 0.375rem;
    color: #12386b;
    font-weight: 700;
}

.announcer-subtitle {
    margin-bottom: 0.5rem;
    color: #6b7280;
    font-size: 0.9rem;
}

.announcer-email-mask {
    margin: 0;
    color: #374151;
    font-size: .875rem;
    line-height: 1.25rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.announcer-actions {
    display: flex;
    flex-direction: column;
    gap: 0.875rem;
}

.announcer-btn {
    width: 100%;
    min-height: 3.625rem;
    border-radius: 1rem;
    padding: 0.875rem 1.125rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.625rem;
    font-size: .875rem;
    line-height: 1.25rem;
    text-decoration: none;
    transition: all .2s ease;
    border: none;
    cursor: pointer;
}

.announcer-btn i {
    font-size: .875rem;
}

.announcer-btn-primary {
    background: #12386b;
    color: #fff;
}

.announcer-btn-primary:hover {
    background: #0f315c;
    color: #fff;
}

.announcer-btn-outline {
    background: #fff;
    color: #12386b;
    border: 0.125rem solid #12386b;
}

.announcer-btn-outline:hover {
    background: #f5f8fc;
    color: #12386b;
}

.announcer-btn-light {
    background: #f8fafc;
    color: #12386b;
    border: 0.0625rem solid #12386b;
}

.announcer-btn-light:hover {
    background: #eef3f9;
    color: #12386b;
}

.contact-agent-modal {
    border-radius: 1.375rem;
    border: none;
    overflow: hidden;
}

.contact-agent-mini {
    display: flex;
    align-items: center;
    gap: 0.875rem;
}

.contact-agent-mini-avatar {
    width: 3.625rem;
    height: 3.625rem;
    border-radius: 50%;
    overflow: hidden;
    border: 0.125rem solid #d4af50;
    background: #f8f9fb;
    flex: 0 0 3.625rem;
}

.contact-agent-mini-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* ====== STEPPER Page add terrain  ====== */
.form-step.d-none {
    display: none !important;
}

.estate-stepper-dots {
    display: flex;
    gap: 0.625rem;
    justify-content: center;
    align-items: center;
}

.estate-step-dot {
    width: 2.375rem;
    height: 2.375rem;
    border-radius: 50%;
    border: 0.0625rem solid #d8d8d8;
    background: #f3f3f3;
    color: #666;
    font-weight: 700;
    cursor: default;
}

.estate-step-dot.is-active {
    background: #173a67;
    color: #fff;
    border-color: #173a67;
}

.estate-step-dot.is-done {
    background: #bdbdbd;
    color: #fff;
    border-color: #bdbdbd;
}

.pad-lft {
    padding-left: 0.9375rem;
}

.agency-wrapper button {
    width: 25%;
    margin: auto;
}

.py-50 {
    padding: 3.125rem 0;
}

.login-form p, .register-form p {
    font-size: clamp(0.82rem, 0.5rem + 0.32vw, 0.82rem);
}


/* ====== Responsive petites cartes ====== */
@media (max-width: 30rem) {
    .listing-img img {
        height: 12.5rem;
    }

    .listing-price-amount {
        font-size: 1.125rem;
    }

    .property-single-agent-info ul li {
        line-height: 1.6;
    }

    .agency-wrapper button {
        width: 100%;
        margin: auto;
    }
}


/* ===================
fluid responsive enhancements
====================== */

.container,
.container-sm,
.container-md,
.container-lg,
.container-xl,
.container-xxl {
    width: min(100% - 2rem, var(--container-max));
}

img,
video,
iframe {
    max-width: 100%;
    height: auto;
}

.listing-item,
.category-item,
.service-item,
.agency-item,
.booking-widget,
.property-single-content,
.search-form,
.agency-single-wrapper,
.compare-wrapper,
.booking-summary,
.booking-confirm-content {
    overflow-wrap: break-word;
}

.hero-single .hero-content,
.about-bottom,
.listing-bottom,
.property-single-meta,
.booking-property-title,
.header-top-wrapper,
.header-top-right,
.header-phone,
.header-nav-right {
    gap: clamp(0.75rem, 0.5rem + 0.8vw, 1.5rem);
}

@media all and (max-width: 62rem) {
    .hero-single .hero-content .hero-btn,
    .about-bottom,
    .listing-bottom,
    .property-single-meta,
    .booking-property-title,
    .agency-list .agency-bottom {
        flex-direction: column;
        align-items: flex-start;
    }
}

@media all and (max-width: 48rem) {
    .listing-feature-list,
    .header-top-wrapper,
    .header-top-contact ul,
    .header-top-right,
    .agency-list .agency-item,
    .property-single-nearby-list {
        flex-direction: column;
        align-items: flex-start;
    }

    .hero-single .hero-content .hero-btn {
        width: 100%;
    }

    .hero-single .hero-content .hero-btn .theme-btn,
    .theme-btn {
        width: auto;
        max-width: 100%;
    }

    .logo-size, .logo-size img{
        max-width: 10rem;
        max-height: 10rem;
    }

}

.listing-feature-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem 1rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.listing-feature-list li {
    display: grid;
    grid-template-columns: 1.25rem minmax(0, 1fr);
    align-items: center;
    column-gap: 0.5rem;
    width: 100%;
    min-width: 0;
    font-size: 0.82rem;
    color: #6b7c93;
}

.listing-feature-list li i {
    width: 1.25rem;
    min-width: 1.25rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #c9a24d;
}

.listing-feature-list li span {
    display: block;
    min-width: 0;
    line-height: 1.4;
}

.listing-feature-list li:last-child {
    grid-column: 1 / -1;
}

@media (max-width: 768px) {
    .listing-feature-list {
        grid-template-columns: 1fr;
    }
}

.max-w-48 {
    max-width: 12rem;
}

.max-w-50 {
    max-width: 14rem;
}

.px-4 {
    padding-left: 1rem;
    padding-right: 1rem;
}

.align-items-center {
    align-items: center !important;
    text-align: center;
}
.logo-size{
    max-width: 20rem;
    max-height: 20rem;
    margin: auto;
}

/*CSS pour faire la modale latérale droite*/
body.advanced-search-open {
    overflow: hidden;
    touch-action: none;
}

.advanced-search-wrapper {
    display: flex;
    align-items: center;
    height: 100%;
}

.advanced-search {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;
    background: transparent;
    border: 0;
    padding: 12px 0;
    color: #6b7693;
    font-size: 1.1rem;
    font-weight: 500;
}

.advanced-search-overlay {
    position: fixed;
    top: var(--drawer-top, 0px);
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(15, 23, 42, 0.45);
    opacity: 0;
    visibility: hidden;
    transition: opacity .25s ease, visibility .25s ease;
    z-index: 9998;
}

.advanced-search-overlay.is-open {
    opacity: 1;
    visibility: visible;
}

.advanced-search-drawer {
    position: fixed;
    top: var(--drawer-top, 0px);
    right: 0;
    width: min(760px, 100%);
    height: calc(100vh - var(--drawer-top, 0px));
    background: #fff;
    box-shadow: -10px 0 30px rgba(0, 0, 0, 0.12);
    transform: translateX(100%);
    transition: transform .3s ease;
    z-index: 9999;

    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.advanced-search-drawer.is-open {
    transform: translateX(0);
}

.advanced-search-drawer__header {
    position: sticky;
    top: 0;
    z-index: 30;

    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;

    padding: 22px 28px;
    background: #fff;
    border-bottom: 1px solid #e9edf5;
    flex-shrink: 0;
}

.advanced-search-drawer__header h4 {
    margin: 0;
    font-size: clamp(1.7rem, 1.4rem + 0.8vw, 2.5rem);
    font-weight: 700;
    color: #22304f;
    line-height: 1.2;
}

.advanced-search-drawer__close {
    width: 46px;
    height: 46px;
    min-width: 46px;
    border: 0;
    border-radius: 12px;
    background: #f4f6fa;
    color: #73809c;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    font-size: 1.15rem;
    cursor: pointer;
    flex-shrink: 0;
    transition: background .2s ease, color .2s ease;
}

.advanced-search-drawer__close:hover {
    background: #e9edf5;
    color: #22304f;
}

.advanced-search-drawer__body {
    flex: 1;
    overflow-y: auto;
    padding: 24px 28px 20px;
}

.advanced-search-drawer__footer {
    position: sticky;
    bottom: 0;
    z-index: 30;

    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;

    padding: 18px 28px;
    background: #fff;
    border-top: 1px solid #e9edf5;
    flex-shrink: 0;
}

.advanced-search-reset {
    min-height: 52px;
    padding: 0 22px;
    border: 1px solid #d9dfeb;
    border-radius: 12px;
    background: #fff;
    color: #6b7693;
    font-weight: 600;
    cursor: pointer;
    transition: all .2s ease;
}

.advanced-search-reset:hover {
    border-color: #bfc8d8;
    color: #22304f;
}

.advanced-search-submit {
    min-height: 52px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.advanced-section {
    padding-top: 8px;
}

.advanced-section + .advanced-section {
    margin-top: 10px;
}

.advanced-section h5 {
    font-size: clamp(1.25rem, 1.1rem + 0.5vw, 1.9rem);
    font-weight: 700;
    color: #22304f;
    margin-bottom: 20px;
}

.advanced-search-drawer .form-group {
    position: relative;
}

.advanced-search-drawer .form-group i {
    pointer-events: none;
}

.advanced-search-drawer .form-check {
    margin-bottom: 16px;
}

.advanced-search-drawer .form-check-input {
    margin-top: .2rem;
}

.advanced-search-drawer .form-check-label {
    font-size: 1rem;
    color: #6b7693;
    cursor: pointer;
    line-height: 1.4;
}

body.advanced-search-open {
    overflow: hidden;
}

@media (max-width: 991.98px) {
    .advanced-search-overlay {
        top: 0 !important;
    }

    .advanced-search-drawer {
        top: 0 !important;
        right: 0;
        width: 100%;
        height: 100vh !important;
        max-height: 100vh;
        border-radius: 0;
    }

    .advanced-search-drawer__header,
    .advanced-search-drawer__body,
    .advanced-search-drawer__footer {
        padding-left: 18px;
        padding-right: 18px;
    }

    .advanced-search-drawer__header {
        padding-top: 16px;
        padding-bottom: 16px;
    }

    .advanced-search-drawer__header h4 {
        font-size: 1.4rem;
    }

    .advanced-search-drawer__close {
        width: 40px;
        height: 40px;
        min-width: 40px;
        font-size: 1rem;
    }

    .advanced-search-drawer__footer {
        justify-content: space-between;
    }

    .advanced-search-reset,
    .advanced-search-submit {
        flex: 1;
        justify-content: center;
    }
}

@media (max-width: 991.98px) {
    body.advanced-search-open .header {
        display: none !important;
    }

    .advanced-search-overlay {
        top: 0 !important;
        z-index: 99998 !important;
    }

    .advanced-search-drawer {
        top: 0 !important;
        width: 100%;
        height: 100vh !important;
        z-index: 99999 !important;
    }

    .advanced-search-drawer__header {
        position: sticky;
        top: 0;
        z-index: 100000;
        background: #fff;
    }
}

/*CSS masquer le bloc de recherche par défaut*/

@media (max-width: 991.98px) {
    .mobile-search-toggle {
        margin-bottom: 16px;
    }

    .mobile-search-toggle-btn {
        width: 100%;
        min-height: 52px;
        border: 1px solid #d9dfeb;
        border-radius: 14px;
        background: #fff;
        color: #22304f;
        font-weight: 600;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        cursor: pointer;
        padding: 0 18px;
    }

    .mobile-search-panel {
        display: none;
    }

    .mobile-search-panel.is-open {
        display: block;
        margin-bottom: 20px;
    }
}

@media (min-width: 992px) {
    .mobile-search-panel {
        display: block !important;
    }
}

.search-form #achat_keywords, .search-form #location_keywords {
    padding: 0.475rem 1.125rem 0.475rem 2.5rem;
}

.advanced-search-drawer__footer .theme-btn, .search-form .theme-btn {
    padding: 0.5rem;
}

/*CSS erreur index soumettre un form*/
.search-error-text {
    display: block;
    margin-top: 8px;
    color: #ef4444;
    font-size: 0.8rem;
    line-height: 1.4;
}

.form-group.has-error select,
.form-group.has-error input,
.form-group.has-error textarea {
    border-color: #ef4444 !important;
}

.form-group.has-error .nice-select {
    border: 1px solid #ef4444 !important;
}

.form-group.has-error i {
    color: #ef4444 !important;
}

.form-group.has-error .nice-select {
    border: 1px solid #ef4444 !important;
}

.listing-img a {
    display: block;
    width: 100%;
}

/*CSS mobile : affiche le sous-menu quand on ajoute une classe*/
@media (max-width: 991.98px) {
    .mobile-dropdown .dropdown-menu {
        display: none;
        position: static;
        float: none;
        width: 100%;
        margin: 0;
        padding: 6px 0 0 0;
        border: 0;
        box-shadow: none;
        background: transparent;
    }

    .mobile-dropdown.is-open .dropdown-menu {
        display: block;
    }

    .mobile-dropdown > .nav-link {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        padding: 12px 0;
        font-size: 1.05rem;
        font-weight: 600;
        line-height: 1.3;
    }

    .mobile-dropdown > .nav-link::after {
        margin-left: auto;
        transition: transform .2s ease;
    }

    .mobile-dropdown.is-open > .nav-link::after {
        transform: rotate(180deg);
    }

    .mobile-dropdown .dropdown-item {
        display: block;
        padding: 10px 0 10px 32px;
        font-size: 0.98rem;
        font-weight: 500;
        color: #22304f;
        line-height: 1.4;
        background: transparent;
    }

    .mobile-dropdown .dropdown-item:hover,
    .mobile-dropdown .dropdown-item:focus {
        background: transparent;
        color: #caa847;
    }

    .mobile-account-label,
    .mobile-dropdown-label {
        display: inline-flex;
        align-items: center;
        gap: 8px;
    }
}

@media (max-width: 61.9375rem) {
    .navbar-toggler.is-menu-open {
        position: fixed;
        top: 20px;
        right: 18px;
        z-index: 99999;

        width: 42px;
        height: 42px;

        background: #0E2E50;
        color: #fff;

        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 0;
        border: none;
    }

    .navbar-toggler.is-menu-open i {
        font-size: 18px;
        color: #fff;
    }
}

.navbar-toggler.is-menu-open {
    display: flex;
    align-items: center;
    justify-content: center;
}

.navbar-toggler.is-menu-open i {
    display: flex;
    align-items: center;
    justify-content: center;

    line-height: 1;
    height: 100%;
    width: 100%;
}

.send-agent-message .form-control.is-invalid {
    border-color: #ff4d4f;
}

.send-agent-message .invalid-feedback {
    color: #ff4d4f;
    font-size: 14px;
    margin-top: 6px;
}

.send-agent-message .form-alert {
    font-size: 14px;
}

.send-agent-message .form-alert-error {
    color: #ff4d4f;
}

.send-agent-message .form-alert-success {
    color: #198754;
}

/* ===== FIX MESSAGERIE ===== */

/* wrapper global */
.profile-message-wrapper {
    display: flex;
    gap: 1.875rem;
    align-items: stretch;
}

/* colonne gauche */
.profile-message-inbox {
    flex: 0 0 22.3125rem;
    max-width: 22.3125rem;
    border: 0.0625rem solid #EDF1F9;
    border-radius: 0.625rem;
    overflow: hidden;
    background: #fff;
}

.profile-message-inbox ul {
    width: 100%;
    max-height: 46.875rem;
    overflow-y: auto;
    list-style: none;
    padding: 0;
    margin: 0;
}

/* lien conversation */
.profile-message-inbox ul li a {
    position: relative;
    display: block;
    padding: 1.5rem 1.25rem 1.5rem 5.25rem;
    min-height: 6.25rem;
}

/* avatar colonne gauche */
.profile-message-inbox .message-avatar {
    position: absolute;
    left: 1.25rem;
    top: 1.5rem;
    transform: none;
}

/* contenu texte colonne gauche */
.profile-message-inbox .message-by {
    margin-left: 0;
}

/* ligne nom + date */
.message-by-content {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.75rem;
    position: static;
}

.message-by-content h5 {
    margin: 0;
    font-size: 0.92rem;
    line-height: 1.35;
    flex: 1 1 auto;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.message-by-content span {
    position: static;
    float: none;
    flex: 0 0 auto;
    white-space: nowrap;
    font-size: 0.85rem;
    color: #888888;
    line-height: 1.35;
    margin: 0;
}

/* aperçu dernier message */
.profile-message-inbox .message-by p {
    height: auto;
    max-width: none;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    font-size: 0.92rem;
    margin: 0.35rem 0 0;
    padding: 0;
    color: #6B747D;
    line-height: 1.5;
}

/* colonne droite */
.message-content {
    flex: 1 1 auto;
    min-width: 0;
    padding-left: 0;
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    min-height: 46.875rem;
    max-height: 46.875rem;
}

/* liste des messages */
.message-content-info {
    flex: 1 1 auto;
    min-height: 0;
    max-height: none;
    overflow-y: auto;
    margin-right: 0;
    padding-right: 0.75rem;
    padding-bottom: 1rem;
}

/* bulles */
.message-item {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    position: relative;
    margin-bottom: 1.5625rem;
}

.message-item .message-avatar {
    position: static;
    flex: 0 0 3.125rem;
}

.message-item .message-description {
    margin-left: 0;
    max-width: min(75%, 32.5rem);
    background: #F4F5F7;
    border-radius: var(--radius-md);
    padding: 1.25rem;
    position: relative;
    word-break: break-word;
}

.message-item.me {
    justify-content: flex-end;
}

.message-item.me .message-avatar {
    order: 2;
    position: static;
    flex: 0 0 3.125rem;
}

.message-item.me .message-description {
    order: 1;
    margin-right: 0;
    margin-left: auto;
    max-width: min(75%, 32.5rem);
}

/* zone de réponse */
.message-reply {
    position: static;
    bottom: auto;
    left: auto;
    right: auto;
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 0.0625rem solid #EDF1F9;
    background: #fff;
    flex: 0 0 auto;
}

.message-reply form {
    display: flex;
    flex-direction: column;
    gap: 0.9375rem;
}

.message-reply .form-control {
    width: 100%;
    min-height: 7.5rem;
    resize: vertical;
    padding: 0.9375rem 1.25rem;
    box-shadow: none;
    border-radius: 0.625rem;
}

.message-reply .theme-btn {
    margin-top: 0;
    align-self: flex-start;
    min-width: 11.25rem;
}

/* responsive */
@media all and (max-width: 61.9375rem) {
    .profile-message-wrapper {
        flex-direction: column;
    }

    .profile-message-inbox {
        flex: 1 1 auto;
        max-width: 100%;
    }

    .message-content {
        min-height: auto;
        max-height: none;
    }

    .message-content-info {
        max-height: 31.25rem;
    }
}

@media all and (max-width: 47.9375rem) {
    .profile-message-inbox ul li a {
        padding: 1.25rem 1rem 1.25rem 4.75rem;
    }

    .profile-message-inbox .message-avatar {
        left: 1rem;
        top: 1.25rem;
    }

    .message-by-content {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.25rem;
    }

    .message-by-content h5,
    .message-by-content span {
        white-space: normal;
    }

    .message-item .message-description,
    .message-item.me .message-description {
        max-width: 85%;
    }

    .message-reply .theme-btn {
        width: 100%;
        min-width: 0;
    }
}

.user-profile-card .section-title {
    font-size: 1rem;
    font-weight: 600;
    color: #173a67;
    margin-bottom: 0.5rem;
    position: relative;
}

.editEstateForm .theme-btn
{
    margin: 5px;
}
#propertiesTbody .btn-outline-secondary
{
    border-color: #fff;
}

.search-form .ma-loupe {
    padding: 0.475rem 1.125rem 0.475rem 3rem;
}
.testimonial-author-info h5{
    font-size: 0.92rem;

}
.slide-geography{
    position: relative;
    text-align: center;
}

.accordion-header {
    font-size: 1rem;
}