:root {
    --theme-color: #960018;
    --theme-color2: #960018;
    --title-font: "Manrope", Arial, Helvetica, sans-serif;
    --body-font: "Manrope", Arial, Helvetica, sans-serif;
    --title-color: #241619;
    --body-color: #675b5d;
    --smoke-color: #fbf8f6;
    --smoke-color2: #f3ece8;
    --border-color: #eaded8;
    --cs-wine: #960018;
    --cs-wine-dark: #7a0013;
    --cs-gold: #eaded8;
    --cs-paper: #fbf8f6;
    --cs-line: #eaded8;
}

body {
    color: var(--title-color);
    background: #fff;
}

a:hover,
.main-menu a:hover,
.property-code,
.sub-title,
.sec-text a {
    color: var(--cs-wine);
}

.cs-logo {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    color: var(--title-color);
    font-weight: 800;
}

.cs-logo img {
    width: 158px;
    max-height: 58px;
    object-fit: contain;
}

.header-layout1 .sticky-wrapper,
.header-layout1 .menu-area,
.th-header .sticky-wrapper.sticky {
    background: rgba(255, 255, 255, .96);
    border-bottom: 1px solid var(--cs-line);
}

.header-layout1.header-inner .header-top,
.header-layout1.header-inner .sticky-wrapper,
.header-layout1.header-inner .menu-area,
.header-layout1.header-inner .sticky-wrapper.sticky {
    background: rgba(251, 247, 242, .99) !important;
    border-bottom: 1px solid var(--cs-line) !important;
    box-shadow: 0 10px 30px rgba(58, 20, 27, .08);
}

.header-layout1.header-inner .header-top {
    color: var(--title-color);
}

.header-layout1.header-inner .header-links li,
.header-layout1.header-inner .header-links a,
.header-layout1.header-inner .main-menu > ul > li > a,
.header-layout1.header-inner .th-menu-toggle,
.header-layout1.header-inner .header-button .icon-btn,
.header-layout1.header-inner .sidemenu-bar span {
    color: var(--title-color) !important;
}

.header-layout1.header-inner .main-menu > ul > li > a:hover,
.header-layout1.header-inner .sticky-wrapper.sticky .main-menu > ul > li > a:hover,
.header-layout1.header-inner .header-links a:hover {
    color: var(--cs-wine) !important;
}

.header-layout1.header-inner .cs-social-link {
    color: var(--title-color) !important;
    border-color: rgba(58, 20, 27, .16);
}

.header-layout1.header-inner .cs-social-link:hover {
    background: rgba(150, 0, 24, .08);
}

.header-layout1.header-inner .cs-social-instagram:hover {
    color: #E4405F !important;
}

.header-layout1.header-inner .cs-social-youtube:hover {
    color: #FF0000 !important;
}

.header-layout1.header-inner .cs-social-reviews:hover {
    color: #8a6d3b !important;
}

.header-top {
    background: var(--cs-wine-dark);
    color: #fff;
}

.header-links li,
.header-links a {
    color: rgba(255, 255, 255, .92);
}

.main-menu > ul > li > a {
    color: var(--title-color);
    font-weight: 700;
}

.th-btn,
.button,
.cs-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 46px;
    padding: 0 22px;
    border: 1px solid var(--cs-wine);
    border-radius: 4px;
    background: var(--cs-wine);
    color: #fff;
    font-weight: 800;
    line-height: 1;
    cursor: pointer;
}

.th-btn:hover,
.button:hover,
.cs-btn:hover {
    border-color: var(--cs-wine-dark);
    background: var(--cs-wine-dark);
    color: #fff;
}

.button.secondary,
.cs-btn.secondary {
    border-color: var(--cs-wine);
    background: var(--cs-wine);
    color: #fff;
}

.button.ghost,
.cs-btn.ghost {
    border-color: var(--cs-line);
    background: transparent;
    color: var(--title-color);
}

.button.gold,
.cs-btn.gold {
    border-color: var(--cs-wine);
    background: var(--cs-wine);
    color: #fff;
}

.cs-hero {
    position: relative;
    min-height: 680px;
    display: flex;
    align-items: center;
    overflow: hidden;
    background:
        linear-gradient(90deg, rgba(73, 0, 15, .92), rgba(122, 0, 19, .64), rgba(122, 0, 19, .12)),
        url("../img/hero/hero_bg_1_1.jpg") center/cover no-repeat;
}

.cs-hero .hero-title {
    max-width: 760px;
    color: #fff;
    font-size: clamp(44px, 7vw, 84px);
    line-height: .98;
    margin-bottom: 18px;
}

.cs-hero .hero-text {
    max-width: 660px;
    color: rgba(255,255,255,.9);
    font-size: clamp(18px, 2vw, 22px);
}

.cs-search-wrap {
    position: relative;
    z-index: 5;
    margin-top: -68px;
}

.cs-search-form {
    display: grid;
    grid-template-columns: 1fr 1.15fr 1.45fr 1fr 1fr 1fr auto;
    gap: 10px;
    padding: 18px;
    border: 1px solid var(--cs-line);
    border-radius: 6px;
    background: #fff;
    box-shadow: 0 20px 54px rgba(72, 31, 38, .14);
}

.input,
.select,
.textarea,
.form-control,
.form-select {
    width: 100%;
    min-height: 46px;
    border: 1px solid var(--cs-line);
    border-radius: 4px;
    background: #fff;
    color: var(--title-color);
    outline: none;
}

.input,
.select,
.textarea {
    padding: 0 13px;
}

.textarea {
    min-height: 110px;
    padding-top: 12px;
    resize: vertical;
}

.input:focus,
.select:focus,
.textarea:focus {
    border-color: var(--cs-wine);
    box-shadow: 0 0 0 3px rgba(150, 0, 24, .12);
}

.cs-section {
    padding: 72px 0;
}

.cs-section.alt,
.space.bg-smoke {
    background: var(--cs-paper);
}

.cs-section-head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 28px;
}

.cs-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
}

.property-card,
.cs-card,
.popular-list-1.cs-property-card {
    height: 100%;
    overflow: hidden;
    border: 1px solid var(--cs-line);
    border-radius: 6px;
    background: #fff;
    box-shadow: 0 12px 34px rgba(50, 24, 29, .08);
}

.property-card:hover,
.cs-card:hover,
.popular-list-1.cs-property-card:hover {
    transform: translateY(-3px);
    transition: transform .18s ease, box-shadow .18s ease;
    box-shadow: 0 18px 44px rgba(50, 24, 29, .12);
}

.property-media-wrap,
.cs-property-thumb {
    position: relative;
    display: block;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    background: var(--cs-paper);
}

.property-media,
.cs-property-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.property-media.placeholder,
.gallery-placeholder {
    display: grid;
    place-items: center;
    color: var(--body-color);
    font-weight: 800;
}

.tag,
.media-tag,
.cs-tag {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 0 10px;
    border-radius: 99px;
    background: rgba(122, 0, 19, .92);
    color: #fff;
    font-size: 12px;
    font-weight: 800;
}

.media-tag {
    position: absolute;
    left: 12px;
    top: 12px;
}

.property-card-body,
.cs-card-body {
    display: grid;
    gap: 12px;
    padding: 18px;
}

.property-card h3,
.cs-card h3 {
    margin: 0;
    font-size: 20px;
    line-height: 1.25;
}

.property-code {
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .05em;
    text-transform: uppercase;
}

.muted {
    color: var(--body-color);
}

.price {
    color: var(--cs-wine);
    font-size: 22px;
    font-weight: 900;
}

.facts {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.fact {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 6px 9px;
    border-radius: 4px;
    background: var(--cs-paper);
    color: var(--body-color);
    font-size: 13px;
}

.card-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
}

.card-actions .wide {
    grid-column: 1 / -1;
}

.listing-layout {
    display: grid;
    grid-template-columns: 315px minmax(0, 1fr);
    gap: 28px;
    align-items: start;
}

.filter-panel,
.lead-panel {
    position: sticky;
    top: 98px;
    padding: 22px;
    border: 1px solid var(--cs-line);
    border-radius: 6px;
    background: #fff;
    box-shadow: 0 12px 34px rgba(50, 24, 29, .08);
}

.filter-panel form,
.lead-panel form,
.cs-form {
    display: grid;
    gap: 12px;
}

.results-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 22px;
}

.breadcumb-wrapper.cs-page-title {
    background:
        linear-gradient(90deg, rgba(73, 0, 15, .88), rgba(73, 0, 15, .55)),
        url("../img/bg/breadcrumb-bg.jpg") center/cover no-repeat;
}

.breadcumb-title,
.breadcumb-menu li,
.breadcumb-menu li a {
    color: #fff;
}

.detail-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.45fr) 380px;
    gap: 30px;
    padding-top: 48px;
    padding-bottom: 72px;
}

.gallery {
    display: grid;
    gap: 12px;
}

.gallery-main {
    width: 100%;
    aspect-ratio: 16 / 10;
    object-fit: cover;
    border-radius: 6px;
    background: var(--cs-paper);
}

.gallery-thumbs {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 10px;
}

.gallery-thumbs img {
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    border: 2px solid transparent;
    border-radius: 4px;
    cursor: pointer;
}

.gallery-thumbs img:hover {
    border-color: var(--cs-wine);
}

.feature-grid,
.client-area-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}

.feature-box,
.client-area-card {
    padding: 18px;
    border: 1px solid var(--cs-line);
    border-radius: 6px;
    background: var(--cs-paper);
}

.map-box {
    height: 340px;
    overflow: hidden;
    border: 1px solid var(--cs-line);
    border-radius: 6px;
}

.quick-modal {
    position: fixed;
    inset: 0;
    z-index: 10000;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 20px;
    background: rgba(34, 10, 15, .68);
}

.quick-modal.is-open {
    display: flex;
}

.quick-dialog {
    width: min(920px, 100%);
    max-height: calc(100vh - 40px);
    overflow: auto;
    border-radius: 6px;
    background: #fff;
}

.quick-content {
    display: grid;
    grid-template-columns: 1.1fr .9fr;
}

.quick-content img {
    width: 100%;
    height: 100%;
    min-height: 380px;
    object-fit: cover;
    background: var(--cs-paper);
}

.quick-body {
    display: grid;
    gap: 13px;
    padding: 26px;
}

.quick-close {
    justify-self: end;
}

.cs-cta {
    padding: 38px;
    border-radius: 6px;
    color: #fff;
    background:
        linear-gradient(135deg, rgba(122,0,19,.96), rgba(150,0,24,.88)),
        url("../img/bg/download-bg-1.jpg") center/cover no-repeat;
}

.cs-cta h2,
.cs-cta .sub-title {
    color: #fff;
}

.footer-wrapper.cs-footer {
    background: #2a1116;
}

.cs-piller-home .hero-1 {
    min-height: auto;
}

.cs-piller-home .hero-inner {
    position: relative;
}

.cs-piller-home .hero-inner::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(21, 7, 10, .86), rgba(35, 12, 16, .44));
    z-index: 0;
}

.cs-piller-home .hero-inner .container {
    position: relative;
    z-index: 1;
}

.cs-piller-home .hero-title {
    color: #fff;
}

.cs-piller-home .logo-animation {
    color: var(--cs-wine);
}

.cs-piller-home .search-area form {
    margin: 0;
}

.cs-piller-home .search-area .th-btn {
    cursor: pointer;
}

.cs-piller-home .popular-list-1 .thumb-wrapper {
    position: relative;
}

.cs-piller-home .popular-list-1 .thumb-wrapper .th-slider,
.cs-piller-home .popular-list-1 .thumb-wrapper .swiper-wrapper,
.cs-piller-home .popular-list-1 .thumb-wrapper .swiper-slide {
    height: 100%;
}

.cs-piller-home .popular-list-1 .thumb-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.cs-piller-home .popular-list-1 .actions-style-2-wrapper .actions.style-2 {
    gap: 8px;
}

.cs-piller-home .cs-card-action {
    border: 0;
}

.cs-piller-home .cs-card-action span {
    pointer-events: none;
}

.cs-piller-home .popular-list-1 .property-bottom {
    gap: 12px;
}

.cs-piller-home .property-featured img {
    width: 18px;
}

.cs-quick-modal-template .quick-dialog {
    border-radius: 20px;
    overflow: hidden;
}

.cs-quick-modal-template .quick-content {
    grid-template-columns: minmax(0, 1.1fr) minmax(330px, .9fr);
}

.cs-quick-modal-template .quick-content img {
    min-height: 480px;
}

.cs-quick-modal-template .quick-body {
    padding: 34px;
}

.cs-piller-footer .about-logo img,
.cs-piller-footer .cs-footer-logo {
    width: 170px;
    max-height: 74px;
    object-fit: contain;
}

.cs-piller-footer .about-logo {
    background: #fff;
    display: inline-flex;
    padding: 8px;
    border-radius: 6px;
}

.cs-blog-card {
    height: 100%;
}

@media (max-width: 767px) {
    .cs-quick-modal-template .quick-content {
        grid-template-columns: 1fr;
    }

    .cs-quick-modal-template .quick-content img {
        min-height: 280px;
    }
}

.footer-wrapper.cs-footer,
.footer-wrapper.cs-footer a,
.footer-wrapper.cs-footer p,
.footer-wrapper.cs-footer .widget_title {
    color: rgba(255,255,255,.9);
}

.footer-wrapper.cs-footer .widget_title {
    color: #fff;
}

.cs-footer-logo {
    width: 178px;
    max-height: 70px;
    object-fit: contain;
    background: #fff;
    border-radius: 4px;
    padding: 6px;
}

.cs-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.cs-form-grid .full {
    grid-column: 1 / -1;
}

.cs-upload-box {
    min-height: 150px;
    display: grid;
    place-items: center;
    text-align: center;
    border: 1px dashed var(--cs-wine);
    border-radius: 6px;
    background: #fff;
}

@media (max-width: 1199px) {
    .cs-search-form {
        grid-template-columns: repeat(3, 1fr);
    }
    .cs-search-form .button {
        grid-column: 1 / -1;
    }
}

@media (max-width: 991px) {
    .listing-layout,
    .detail-layout {
        grid-template-columns: 1fr;
    }
    .filter-panel,
    .lead-panel {
        position: static;
    }
    .cs-grid,
    .feature-grid,
    .client-area-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    .cs-hero {
        min-height: 590px;
    }
    .cs-search-form,
    .cs-grid,
    .feature-grid,
    .client-area-grid,
    .cs-form-grid,
    .card-actions,
    .quick-content {
        grid-template-columns: 1fr;
    }
    .cs-section-head,
    .results-header {
        align-items: flex-start;
        flex-direction: column;
    }
    .gallery-thumbs {
        grid-template-columns: repeat(3, 1fr);
    }
    .quick-content img {
        min-height: 250px;
    }
}

/* Revisao visual 2: paleta premium sem dourado, menu claro no scroll e Manrope global. */
:root {
    --theme-color: #960018;
    --theme-color2: #960018;
    --title-color: #241619;
    --body-color: #5f5355;
    --smoke-color: #fbf7f2;
    --smoke-color2: #f4ece5;
    --border-color: #e6d8cf;
    --cs-wine: #960018;
    --cs-wine-dark: #6f0012;
    --cs-gold: #eaded8;
    --cs-ivory: #fbf7f2;
    --cs-champagne: #f4ece5;
    --cs-cream: #efe2d8;
    --cs-paper: #fbf7f2;
    --cs-line: #e6d8cf;
    --cs-shadow: 0 22px 60px rgba(58, 20, 27, .14);
}

html,
body,
button,
input,
select,
textarea,
.main-menu a,
.hero-title,
.sec-title,
.box-title,
.breadcumb-title,
.widget_title {
    font-family: Manrope, Arial, Helvetica, sans-serif !important;
    letter-spacing: 0;
}

.text-theme,
.title2.text-theme,
.sub-title,
.property-code,
a:hover,
.main-menu a:hover {
    color: var(--cs-wine) !important;
}

.th-header.header-layout1 {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    z-index: 99;
}

.header-layout1 .sticky-wrapper,
.header-layout1 .menu-area {
    background: transparent !important;
    border-bottom: 1px solid rgba(255, 255, 255, .18);
    box-shadow: none;
    transition: background .25s ease, border-color .25s ease, box-shadow .25s ease, color .25s ease;
}

.header-layout1 .sticky-wrapper.sticky {
    background: rgba(251, 247, 242, .98) !important;
    border-bottom: 1px solid var(--cs-line);
    box-shadow: 0 16px 42px rgba(58, 20, 27, .1);
    backdrop-filter: blur(14px);
}

.header-layout1 .sticky-wrapper.sticky .menu-area {
    background: transparent !important;
    border-bottom: 0;
}

.header-top {
    background: rgba(111, 0, 18, .74) !important;
    color: #fff;
    backdrop-filter: blur(10px);
}

.header-layout1 .main-menu > ul > li > a,
.header-layout1 .th-menu-toggle,
.header-layout1 .header-button .icon-btn,
.header-layout1 .sidemenu-bar span {
    color: #fff !important;
}

.header-layout1 .sticky-wrapper.sticky .main-menu > ul > li > a,
.header-layout1 .sticky-wrapper.sticky .th-menu-toggle,
.header-layout1 .sticky-wrapper.sticky .header-button .icon-btn {
    color: var(--title-color) !important;
}

.header-layout1 .main-menu > ul > li > a:hover,
.header-layout1 .sticky-wrapper.sticky .main-menu > ul > li > a:hover {
    color: var(--cs-wine) !important;
}

.header-layout1.header-home .sticky-wrapper,
.header-layout1.header-home .menu-area {
    background: transparent !important;
}

.header-layout1.header-home .sticky-wrapper.sticky {
    background: rgba(251, 247, 242, .98) !important;
}

.header-layout1.header-home .sticky-wrapper.sticky .main-menu > ul > li > a,
.header-layout1.header-home .sticky-wrapper.sticky .th-menu-toggle,
.header-layout1.header-home .sticky-wrapper.sticky .header-button .icon-btn {
    color: var(--title-color) !important;
}

.header-layout1.header-home .sticky-wrapper.sticky .cs-logo .cs-logo-img-light {
    display: none;
}

.header-layout1.header-home .sticky-wrapper.sticky .cs-logo .cs-logo-img-dark {
    display: block;
}

.main-menu ul.sub-menu,
.main-menu ul.mega-menu {
    background: var(--cs-ivory) !important;
    border: 1px solid var(--cs-line);
    box-shadow: var(--cs-shadow);
}

.main-menu ul.sub-menu li a,
.main-menu ul.mega-menu li a {
    color: var(--title-color) !important;
}

.main-menu ul.sub-menu li a:hover,
.main-menu ul.mega-menu li a:hover {
    color: var(--cs-wine) !important;
}

.button.secondary,
.button.gold,
.cs-btn.secondary,
.cs-btn.gold,
.th-btn.style2,
.th-btn.style3,
.th-btn.bg-theme {
    border-color: var(--cs-wine) !important;
    background: var(--cs-wine) !important;
    color: #fff !important;
}

.button.secondary:hover,
.button.gold:hover,
.cs-btn.secondary:hover,
.cs-btn.gold:hover,
.th-btn.style2:hover,
.th-btn.style3:hover,
.th-btn.bg-theme:hover {
    border-color: var(--cs-wine-dark) !important;
    background: var(--cs-wine-dark) !important;
    color: #fff !important;
}

.button.ghost,
.cs-btn.ghost {
    border-color: var(--cs-line);
    background: transparent;
    color: var(--title-color);
}

.search-area .search-wrap,
.cs-search-form,
.filter-panel,
.lead-panel,
.quick-dialog,
.property-card,
.cs-card,
.popular-list-1,
.client-area-card {
    background: var(--cs-ivory) !important;
    border-color: var(--cs-line) !important;
    box-shadow: var(--cs-shadow);
}

.form-control,
.form-select,
.input,
.select,
.textarea,
.nice-select {
    background-color: #fffaf6 !important;
    border-color: var(--cs-line) !important;
    color: var(--title-color) !important;
}

.form-control::placeholder,
.input::placeholder,
.textarea::placeholder {
    color: #796b6d;
    opacity: 1;
}

.nice-select .option {
    color: var(--title-color);
}

.nice-select .option:hover,
.nice-select .option.focus,
.nice-select .option.selected.focus {
    background-color: var(--cs-champagne);
}

.search-area .nav-tabs.custom .nav-link {
    color: var(--title-color) !important;
}

.search-area .nav-tabs.custom .nav-link.active {
    background: var(--cs-wine) !important;
    color: #fff !important;
}

.popular-badge,
.tag,
.media-tag,
.cs-tag {
    background: var(--cs-wine) !important;
    color: #fff !important;
}

.popular-badge p,
.popular-badge i {
    color: #fff !important;
}

.price,
.property-bottom .box-title,
.popular-list-1 .box-title a,
.price_label,
.price_label span {
    color: var(--title-color) !important;
}

.fact,
.feature-box,
.client-area-card,
.lgpd-option {
    background: var(--cs-champagne) !important;
    border-color: var(--cs-line) !important;
    color: var(--title-color);
}

.cs-upload-box {
    border-color: var(--cs-wine) !important;
    background: #fffaf6 !important;
}

.cs-piller-footer .about-logo,
.cs-footer-logo {
    background: var(--cs-ivory) !important;
}

@media (max-width: 991px) {
    .header-layout1 .sticky-wrapper,
    .header-layout1 .menu-area {
        background: rgba(251, 247, 242, .98) !important;
    }

    .header-layout1 .main-menu > ul > li > a,
    .header-layout1 .th-menu-toggle {
        color: var(--title-color) !important;
    }
}

/* Fase 6.2A: refinamento visual do hero, header e conversao. */
:root {
    --cs-primary: #6f0012;
    --cs-secondary-light: #f4ece5;
}

.cs-logo {
    position: relative;
}

.cs-logo .cs-logo-img {
    width: 158px;
    max-height: 58px;
    object-fit: contain;
    transition: opacity .2s ease, filter .2s ease;
}

.cs-logo .cs-logo-img-dark {
    display: none;
}

.header-layout1 .sticky-wrapper.sticky .cs-logo .cs-logo-img-light {
    display: none;
}

.header-layout1 .sticky-wrapper.sticky .cs-logo .cs-logo-img-dark {
    display: block;
}

@media (max-width: 991px) {
    .cs-logo .cs-logo-img-light {
        display: none;
    }

    .cs-logo .cs-logo-img-dark {
        display: block;
    }
}

.header-layout1 .sticky-wrapper.sticky .header-logo .cs-logo img {
    filter: drop-shadow(0 1px 2px rgba(58, 20, 27, .16));
}

.hero-real-estate-code {
    max-width: 620px;
    margin: 16px 0 0;
    color: rgba(255, 255, 255, .9);
    font-size: 15px;
    font-weight: 700;
}

.cs-header-social {
    display: flex;
    align-items: center;
    gap: 12px;
}

.cs-header-social li {
    margin: 0 !important;
}

.cs-social-link {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border: 1px solid rgba(255, 255, 255, .22);
    border-radius: 999px;
    color: #fff !important;
    transition: all .25s ease;
}

.cs-social-link:hover {
    transform: scale(1.08);
    background: rgba(255, 255, 255, .12);
}

.cs-social-instagram:hover {
    color: #E4405F !important;
    border-color: rgba(228, 64, 95, .45);
}

.cs-social-youtube:hover {
    color: #FF0000 !important;
    border-color: rgba(255, 0, 0, .45);
}

.cs-social-reviews:hover {
    color: #d8c3a5 !important;
    border-color: rgba(216, 195, 165, .55);
}

#feature-sec {
    position: relative;
    isolation: isolate;
    background:
        linear-gradient(rgba(0, 0, 0, .45), rgba(0, 0, 0, .45)),
        var(--cs-feature-bg, url("../img/property-values/property-values-2-1.jpg")) center/cover no-repeat !important;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
}

#feature-sec::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background: rgba(0, 0, 0, .45);
}

#feature-sec .sec-title,
#feature-sec .box-title,
#feature-sec .sub-title {
    color: #fff !important;
}

#feature-sec .sec-text,
#feature-sec .box-text,
#feature-sec p {
    color: rgba(255, 255, 255, .9) !important;
}

#feature-sec .wow,
#feature-sec .fadeinup {
    visibility: visible !important;
    opacity: 1 !important;
    animation-name: none !important;
}

#feature-sec .about-1-item {
    height: 100%;
    padding: 24px;
    border: 1px solid rgba(255, 255, 255, .22);
    border-radius: 18px;
    background: rgba(251, 247, 242, .12) !important;
    box-shadow: 0 20px 48px rgba(0, 0, 0, .2);
    backdrop-filter: blur(8px);
}

#feature-sec .about-1-item .icon {
    background: rgba(251, 247, 242, .94);
    border-radius: 16px;
}

#feature-sec .th-btn,
#feature-sec .button {
    background: var(--cs-wine) !important;
    border-color: var(--cs-wine) !important;
    color: #fff !important;
}

@media (max-width: 991px) {
    .cs-logo img {
        width: 142px;
        max-height: 54px;
    }
}

.cs-property-premium {
    background: #fbf7f2;
    padding: 150px 0 80px;
}

.cs-property-breadcrumb {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
    margin-bottom: 22px;
    color: rgba(61, 18, 30, .68);
    font-size: 14px;
}

.cs-property-breadcrumb a {
    color: var(--cs-wine);
    font-weight: 700;
}

.cs-property-title-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 24px;
    align-items: end;
    margin-bottom: 26px;
}

.cs-property-title-row h1 {
    max-width: 980px;
    margin-bottom: 10px;
    color: var(--cs-primary);
    font-size: clamp(34px, 4vw, 62px);
    line-height: 1.04;
}

.cs-property-title-row p {
    margin: 0;
    color: rgba(61, 18, 30, .72);
    font-weight: 700;
}

.cs-share-actions {
    display: flex;
    gap: 10px;
}

.cs-share-actions a,
.cs-share-actions button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border: 1px solid rgba(111, 15, 39, .18);
    border-radius: 999px;
    background: #fff;
    color: var(--cs-wine);
    box-shadow: 0 12px 30px rgba(61, 18, 30, .08);
}

.cs-share-actions a:hover,
.cs-share-actions button:hover,
.cs-share-actions button.is-copied {
    background: var(--cs-wine);
    color: #fff;
    transform: translateY(-2px);
}

.cs-premium-gallery {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(260px, .78fr);
    gap: 10px;
    min-height: 520px;
    overflow: hidden;
    border-radius: 28px;
    background: #e8ded3;
    box-shadow: 0 34px 80px rgba(61, 18, 30, .16);
}

.cs-gallery-main,
.cs-gallery-side button {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    padding: 0;
    overflow: hidden;
    border: 0;
    background: #23141a;
    cursor: zoom-in;
}

.cs-gallery-main img,
.cs-gallery-side img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .5s ease, filter .5s ease;
}

.cs-gallery-main:hover img,
.cs-gallery-side button:hover img {
    transform: scale(1.035);
    filter: saturate(1.04);
}

.cs-gallery-side {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

.cs-gallery-all {
    position: absolute;
    right: 22px;
    bottom: 22px;
    display: inline-flex;
    gap: 10px;
    align-items: center;
    border: 0;
    border-radius: 999px;
    padding: 13px 18px;
    background: rgba(255, 255, 255, .94);
    color: var(--cs-primary);
    font-weight: 800;
    box-shadow: 0 18px 42px rgba(0, 0, 0, .18);
}

.cs-gallery-all span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 28px;
    height: 28px;
    border-radius: 999px;
    background: var(--cs-wine);
    color: #fff;
    font-size: 13px;
}

.cs-gallery-placeholder {
    display: grid;
    min-height: 420px;
    place-items: center;
    color: var(--cs-primary);
    font-weight: 800;
}

.cs-property-content-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 36px;
    margin-top: 38px;
    align-items: start;
}

.cs-property-summary,
.cs-property-section,
.cs-financing-box,
.cs-final-cta,
.cs-owner-cta {
    border: 1px solid rgba(111, 15, 39, .1);
    border-radius: 24px;
    background: #fff;
    padding: 30px;
    box-shadow: 0 18px 48px rgba(61, 18, 30, .07);
}

.cs-property-summary {
    display: flex;
    justify-content: space-between;
    gap: 24px;
    align-items: center;
}

.cs-price-block span {
    display: block;
    color: rgba(61, 18, 30, .62);
    font-size: 14px;
    font-weight: 800;
    text-transform: uppercase;
}

.cs-price-block strong {
    display: block;
    color: var(--cs-wine);
    font-size: clamp(30px, 4vw, 44px);
    line-height: 1.1;
}

.cs-trust-seals {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: flex-end;
}

.cs-trust-seals span {
    display: inline-flex;
    gap: 8px;
    align-items: center;
    border-radius: 999px;
    padding: 9px 13px;
    background: #f5eee7;
    color: var(--cs-primary);
    font-size: 13px;
    font-weight: 800;
}

.cs-trust-seals i {
    color: var(--cs-wine);
}

.cs-property-highlights {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 14px;
    margin: 18px 0;
}

.cs-property-highlights div {
    min-height: 132px;
    border: 1px solid rgba(111, 15, 39, .1);
    border-radius: 20px;
    padding: 20px;
    background: #fff;
    box-shadow: 0 16px 38px rgba(61, 18, 30, .06);
}

.cs-property-highlights i {
    display: inline-flex;
    width: 40px;
    height: 40px;
    align-items: center;
    justify-content: center;
    margin-bottom: 18px;
    border-radius: 14px;
    background: #f5eee7;
    color: var(--cs-wine);
}

.cs-property-highlights strong {
    display: block;
    color: var(--cs-primary);
    font-size: 22px;
    line-height: 1.1;
}

.cs-property-highlights span {
    color: rgba(61, 18, 30, .62);
    font-weight: 700;
}

.cs-property-section,
.cs-financing-box,
.cs-final-cta,
.cs-owner-cta {
    margin-top: 20px;
}

.cs-property-section h2,
.cs-financing-box h2,
.cs-final-cta h2,
.cs-owner-cta h2,
.cs-conversion-card h2 {
    color: var(--cs-primary);
    font-size: clamp(26px, 3vw, 38px);
    line-height: 1.12;
}

.cs-rich-text {
    color: rgba(36, 31, 32, .82);
    font-size: 17px;
    line-height: 1.85;
}

.cs-premium-facts {
    gap: 10px;
}

.cs-financing-box {
    display: grid;
    grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
    gap: 24px;
    align-items: center;
}

.cs-financing-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.cs-financing-grid label {
    color: rgba(61, 18, 30, .64);
    font-size: 13px;
    font-weight: 800;
}

.cs-financing-grid input {
    width: 100%;
    height: 50px;
    margin-top: 6px;
    border: 1px solid rgba(111, 15, 39, .12);
    border-radius: 14px;
    padding: 0 14px;
    background: #fbf7f2;
    color: var(--cs-primary);
    font-weight: 800;
}

.cs-financing-box .th-btn {
    grid-column: 1 / -1;
    justify-self: start;
}

.cs-conversion-panel {
    position: sticky;
    top: 118px;
}

.cs-conversion-card {
    border: 1px solid rgba(111, 15, 39, .12);
    border-radius: 26px;
    background: #fff;
    padding: 26px;
    box-shadow: 0 28px 70px rgba(61, 18, 30, .14);
}

.cs-conversion-card .th-btn {
    width: 100%;
    margin-bottom: 10px;
    justify-content: center;
}

.cs-conversion-card form {
    display: grid;
    gap: 12px;
    margin-top: 18px;
}

.cs-conversion-card .input,
.cs-conversion-card .textarea {
    border-radius: 14px;
}

.cs-conversion-card .textarea {
    min-height: 104px;
}

.cs-final-cta {
    background: var(--cs-primary);
    color: #fff;
}

.cs-final-cta h2,
.cs-final-cta p {
    color: #fff;
}

.cs-final-cta > div,
.cs-owner-cta {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: center;
    justify-content: space-between;
}

.cs-owner-cta {
    background: #f5eee7;
}

.cs-owner-cta p {
    margin-bottom: 0;
}

.cs-related-properties .cs-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.cs-lightbox {
    position: fixed;
    inset: 0;
    z-index: 99999;
    display: none;
    align-items: center;
    justify-content: center;
    background: rgba(10, 7, 8, .94);
    padding: 32px;
}

.cs-lightbox.is-open {
    display: flex;
}

.cs-lightbox-open {
    overflow: hidden;
}

.cs-lightbox figure {
    position: relative;
    width: min(1180px, 88vw);
    margin: 0;
}

.cs-lightbox img {
    width: 100%;
    max-height: 82vh;
    object-fit: contain;
    cursor: zoom-in;
}

.cs-lightbox img:hover {
    transform: scale(1.02);
}

.cs-lightbox figcaption {
    margin-top: 12px;
    color: #fff;
    text-align: center;
    font-weight: 800;
}

.cs-lightbox-close,
.cs-lightbox-nav {
    position: absolute;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, .22);
    border-radius: 999px;
    background: rgba(255, 255, 255, .12);
    color: #fff;
    backdrop-filter: blur(10px);
}

.cs-lightbox-close {
    top: 24px;
    right: 24px;
    width: 48px;
    height: 48px;
}

.cs-lightbox-nav {
    top: 50%;
    width: 58px;
    height: 58px;
    transform: translateY(-50%);
}

.cs-lightbox-nav.prev {
    left: 28px;
}

.cs-lightbox-nav.next {
    right: 28px;
}

.cs-mobile-conversion-bar {
    position: fixed;
    right: 12px;
    bottom: 12px;
    left: 12px;
    z-index: 9990;
    display: none;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
    border: 1px solid rgba(111, 15, 39, .12);
    border-radius: 18px;
    padding: 8px;
    background: rgba(251, 247, 242, .96);
    box-shadow: 0 18px 48px rgba(61, 18, 30, .18);
    backdrop-filter: blur(14px);
    box-sizing: border-box;
}

.cs-mobile-conversion-bar a {
    display: inline-flex;
    min-width: 0;
    min-height: 48px;
    align-items: center;
    justify-content: center;
    gap: 5px;
    border-radius: 13px;
    background: var(--cs-wine);
    color: #fff;
    overflow: hidden;
    font-size: 10px;
    font-weight: 900;
    white-space: nowrap;
}

.cs-mobile-conversion-bar a:nth-child(2),
.cs-mobile-conversion-bar a:nth-child(3) {
    background: #fff;
    color: var(--cs-primary);
}

@media (max-width: 1199px) {
    .cs-property-content-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .cs-conversion-panel {
        position: static;
    }

    .cs-property-highlights {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .cs-related-properties .cs-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    .cs-property-premium {
        padding: 118px 0 96px;
    }

    .cs-property-title-row {
        grid-template-columns: 1fr;
    }

    .cs-share-actions {
        justify-content: flex-start;
    }

    .cs-premium-gallery {
        grid-template-columns: 1fr;
        min-height: auto;
        border-radius: 20px;
    }

    .cs-gallery-main {
        aspect-ratio: 4 / 3;
    }

    .cs-gallery-side {
        grid-template-columns: repeat(4, 1fr);
        min-height: 86px;
    }

    .cs-gallery-side button {
        min-height: 86px;
    }

    .cs-gallery-all {
        right: 12px;
        bottom: 12px;
        left: 12px;
        justify-content: center;
        padding: 10px 13px;
        max-width: none;
        font-size: 12px;
        white-space: nowrap;
    }

    .cs-property-summary,
    .cs-financing-box,
    .cs-final-cta,
    .cs-owner-cta {
        display: block;
    }

    .cs-trust-seals {
        justify-content: flex-start;
        margin-top: 16px;
    }

    .cs-property-highlights,
    .cs-financing-grid,
    .cs-related-properties .cs-grid {
        grid-template-columns: 1fr 1fr;
    }

    .cs-property-summary,
    .cs-property-section,
    .cs-financing-box,
    .cs-final-cta,
    .cs-owner-cta,
    .cs-conversion-card {
        border-radius: 20px;
        padding: 22px;
    }

    .cs-financing-box .th-btn,
    .cs-final-cta .th-btn,
    .cs-owner-cta .th-btn {
        width: 100%;
        justify-content: center;
        margin-top: 10px;
    }

    .cs-lightbox {
        padding: 16px;
    }

    .cs-lightbox figure {
        width: 100%;
    }

    .cs-lightbox-nav {
        width: 46px;
        height: 46px;
    }

    .cs-lightbox-nav.prev {
        left: 10px;
    }

    .cs-lightbox-nav.next {
        right: 10px;
    }

    .cs-mobile-conversion-bar {
        display: grid;
    }
}

@media (max-width: 430px) {
    .cs-gallery-side {
        grid-template-columns: repeat(2, 1fr);
    }

    .cs-property-highlights,
    .cs-financing-grid {
        grid-template-columns: 1fr;
    }
}
