/* Public product surfaces: source discovery, reading and contact. */
.codat-public { --public-header-height: 76px; background: #fff; color: var(--cd-text); font-size: var(--cd-type-ui); }
.codat-public h1,.codat-public h2,.codat-public h3 { font-family: var(--cd-heading); letter-spacing: -.025em; }
.codat-public .btn { font: 600 .875rem var(--cd-font); padding: .7rem 1rem; min-height: 44px; border-radius: var(--cd-radius-sm); transform: none; }
.codat-public .btn-primary { background: var(--cd-ink); border-color: var(--cd-ink); }
.codat-public .btn-primary:hover { background: var(--cd-ink-deep); }
.codat-public .text-warning { color: var(--cd-warning) !important; }
.codat-public .form-control,.codat-public .form-select { font-size: var(--cd-type-field); border-radius: var(--cd-radius-sm); min-height: 44px; border-color: #bacbd5; }
.codat-public .form-control::placeholder { color: #647585; opacity: 1; }
.codat-public .form-control:focus,.codat-public .form-select:focus { border-color: var(--cd-ink); box-shadow: 0 0 0 3px var(--cd-ink-soft); }
.codat-public .vhm-action-bar { z-index: 1025; }
.cd-public-header { background: #fff; border-bottom: 1px solid var(--cd-line); z-index: 1030; }
.cd-public-header .navbar { min-height: var(--public-header-height); padding: 0; box-shadow: none; }
.cd-public-header .container { position: relative; }
.cd-public-header .cd-public-brand { display: flex; gap: .5rem; align-items: center; font: 700 1.2rem var(--cd-heading); color: var(--cd-ink); margin-right: 2rem; }
.cd-public-brand img { width: 44px; height: 54px; object-fit: contain; }
.cd-public-header .navbar-nav { gap: 1rem; }
.cd-public-header .nav-link { font-size: .8125rem; font-weight: 600; text-transform: none; padding: 1.5rem .375rem; color: var(--cd-ink); border-bottom: 2px solid transparent; }
.cd-public-header .nav-link:hover,.cd-public-header .nav-link[aria-current] { color: var(--cd-copper); border-color: var(--cd-copper); }
.cd-header-actions { display: flex; align-items: center; gap: 1.25rem; }
.cd-account-link { display: flex; align-items: center; gap: .375rem; color: var(--cd-ink); text-decoration: none; font-size: .8125rem; white-space: nowrap; }
.cd-public-header .has-megamenu { position: static; }
.cd-public-header .megamenu { display: none; position: absolute; left: 0; width: 100%; top: 100%; margin: 0; background: #fff; color: var(--cd-ink); border: 1px solid var(--cd-line); border-top: 0; border-radius: 0 0 var(--cd-radius) var(--cd-radius); box-shadow: var(--cd-elevation); padding: 1.5rem 0; }
.cd-public-header .megamenu a { color: var(--cd-ink); }
.codat-public .breadcrumb a { color: var(--cd-muted); text-decoration: none; }
.codat-public .breadcrumb a:hover { color: var(--cd-ink); text-decoration: underline; }
.codat-public :is(#sidebar-news-list,#seo-sidebar-news-list) a { color: var(--cd-ink); text-decoration: none; }
.codat-public :is(#sidebar-news-list,#seo-sidebar-news-list) a:hover { color: var(--cd-copper); text-decoration: underline; }
.cd-navigation-loading { display: none; position: fixed; inset: 0; z-index: 999999; background: var(--cd-white); align-items: center; justify-content: center; }
.cd-loading-enabled .cd-navigation-loading { display: flex; }
.cd-loading-enabled .cd-navigation-loading[hidden] { display: none; }
.cd-navigation-loading img { height: 80px; width: auto; object-fit: contain; animation: cd-loading-logo 1.5s infinite ease-in-out; }
@keyframes cd-loading-logo { 0%,100% { transform: scale(.95); opacity: .4; } 50% { transform: scale(1.05); opacity: 1; } }
@media (prefers-reduced-motion: reduce) { .cd-navigation-loading img { animation: none; opacity: 1; } }
.cd-public-header .has-megamenu:has(.megamenu :focus-visible) > .megamenu,.cd-public-header .has-megamenu.show-menu > .megamenu { display: block; opacity: 1; visibility: visible; }
@media (min-width: 992px) {
  .cd-public-header .has-megamenu:hover > .megamenu { display: block; }
  .cd-public-header .megamenu-item-block:focus-within .megamenu-list,.cd-public-header .show-sub-mobile .megamenu-list { max-height: 600px; opacity: 1; margin-top: .625rem; }
}
.cd-public-header .navbar-toggler,.btn-close-sidebar { border: 1px solid var(--cd-line); border-radius: var(--cd-radius-sm); color: var(--cd-ink); background: #fff; width: 44px; height: 44px; padding: .5rem; flex-shrink: 0; }
.btn-close-sidebar { display: inline-flex; align-items: center; justify-content: center; }
.cd-mobile-menu-heading { display: flex; align-items: center; justify-content: space-between; gap: 1rem; width: 100%; flex-shrink: 0; }
.cd-mobile-menu-heading strong { min-width: 0; overflow-wrap: anywhere; }
.cd-home-hero { background: var(--cd-ink-deep); color: #fff; }
.cd-home-hero-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 3.5rem; align-items: center; padding-block: 3.5rem; }
.cd-home-intro h1, .cd-home-intro .cd-home-title { font-size: var(--cd-type-display) !important; line-height: 1.18; font-weight: 700; color: #fff !important; margin: 0 0 1.25rem; max-width: 16ch; text-shadow: none !important; text-transform: none !important; animation: none !important; }
.cd-home-intro h3 { font-size: 1.25rem !important; color: #d4e2eb !important; text-shadow: none !important; animation: none !important; }
.cd-home-intro p { color: #c6d8e5 !important; font-size: 1rem !important; line-height: 1.8; max-width: 48ch !important; margin-bottom: 1.75rem; animation: none !important; }
.cd-home-intro > .btn { background: #fff !important; color: var(--cd-ink) !important; border-radius: var(--cd-radius-sm) !important; box-shadow: none !important; animation: none !important; }
.cd-hero-actions { display: flex; align-items: center; gap: 1.5rem; flex-wrap: wrap; }
.cd-hero-link { color: #dac098; font-weight: 600; font-size: .875rem; }
.cd-home-media { position: relative; min-width: 0; height: 360px; overflow: hidden; border-radius: var(--cd-radius); background: #e7eef3; }
.cd-home-media > .carousel { position: absolute; inset: 0; }
.cd-home-media img { width: 100%; height: 100%; object-fit: cover; }
.cd-home-media img:is([src$="/logo.png"],[src$="/brand-mark-v1.webp"]) { object-fit: contain; padding: 2rem; }
.cd-featured-listing { display: grid; grid-template-rows: minmax(0,1fr) auto; height: 100%; text-decoration: none; color: var(--cd-ink); background: #fff; }
.cd-featured-listing > div { padding: 1.125rem 1.5rem; }
.cd-featured-listing span { font-size: .8125rem; color: var(--cd-muted); }
.cd-featured-listing h2 { font-size: 1.25rem; margin: .25rem 0 .5rem; }
.cd-featured-listing p { margin: 0; font-size: .875rem; font-weight: 600; }
.cd-hero-empty { display: flex; flex-direction: column; align-items: center; justify-content: center; height: 100%; gap: 1rem; color: var(--cd-ink); }
.cd-hero-empty img { width: 100px; height: 130px; object-fit: contain; }
.cd-hero-empty p { font-size: .875rem; }
.codat-public .floating-search-bar { margin-top: 0 !important; padding-top: 1.5rem; padding-bottom: 1.5rem; position: relative; z-index: 2; }
.codat-public .floating-search-bar > div { max-width: none !important; border: 1px solid var(--cd-line); box-shadow: none !important; border-radius: var(--cd-radius) !important; }
.codat-public #searchTab { justify-content: flex-start !important; width: auto !important; gap: .5rem !important; border-bottom: 1px solid var(--cd-line) !important; }
.codat-public #searchTab .nav-item { flex: 0 1 auto !important; }
.codat-public #searchTab .nav-link { border-radius: var(--cd-radius-sm) !important; padding: .625rem 1.25rem !important; color: var(--cd-muted); min-height: 44px; font-size: .9375rem !important; }
.codat-public #searchTab .nav-link.active { background: var(--cd-ink) !important; color: #fff !important; }
.codat-public #float-search-area label { text-transform: none; color: var(--cd-muted); }
.codat-public #float-search-area .form-select { padding: .5rem 1.75rem .5rem .5rem !important; }
.codat-public #float-kygui-area .btn { background: var(--cd-ink) !important; min-height: 44px; }
.codat-public #section-1-boxes { background: #fff !important; padding-top: 1rem !important; padding-bottom: 2rem !important; }
.codat-public #listing-section-title { text-overflow: clip; white-space: normal; font-size: var(--cd-type-section-title) !important; line-height: 1.35; }
.property-horizontal-scroll { display: flex; overflow-x: auto; gap: 1.25rem; padding-bottom: 1rem; scroll-snap-type: x proximity; overscroll-behavior-x: contain; scrollbar-width: thin; scrollbar-color: #a5b7c4 transparent; }
.property-scroll-item { flex: 0 0 calc((100% - 3.75rem)/4); scroll-snap-align: start; }
.codat-public #public-content .result-card { border: 1px solid var(--cd-line) !important; border-radius: var(--cd-radius) !important; background: #fff; box-shadow: none !important; transform: none !important; overflow: hidden; transition: border-color var(--cd-duration); cursor: pointer; }
.codat-public #public-content .result-card:hover { border-color: #91a9ba !important; }
.cd-property-visual { position: relative; }
.codat-public #public-content .result-card .card-img-top { width: 100%; height: 200px !important; aspect-ratio: 4/3; object-fit: cover; }
.codat-public #public-content .result-card img:is([src$="/logo.png"],[src$="/brand-mark-v1.webp"]) { object-fit: contain; padding: 2rem; background: var(--cd-ground); }
.cd-listing-type { position: absolute; top: .75rem; left: .75rem; background: rgba(255,255,255,.96); color: var(--cd-ink); padding: .3rem .5rem; border-radius: .25rem; font-size: .6875rem; font-weight: 600; }
.codat-public #public-content .result-card .card-body { padding: 1.125rem !important; display: block !important; gap: 0 !important; }
.codat-public #public-content .result-card .card-body h6,.cd-property-title { font: 700 .9375rem var(--cd-font); color: var(--cd-ink); margin-bottom: .5rem; line-height: 1.4; text-wrap: wrap; }
.cd-property-title a { color: inherit; text-decoration: none; }
.cd-property-location { font-size: .8125rem; line-height: 1.5; color: var(--cd-muted); margin-bottom: .75rem; overflow-wrap: anywhere; }
.cd-property-price { color: var(--cd-ink); font: 700 1.375rem var(--cd-font); margin-bottom: .875rem; font-variant-numeric: tabular-nums; }
.cd-property-price small { color: var(--cd-muted); font-size: .75rem; font-weight: 400; margin-left: .25rem; }
.cd-property-specs { display: grid; grid-template-columns: 1fr 1fr; gap: .625rem .75rem; margin: 0; padding-top: .875rem; border-top: 1px solid var(--cd-line); }
.cd-property-specs dt { font-size: .6875rem; color: var(--cd-muted); font-weight: 400; margin-bottom: .125rem; }
.cd-property-specs dd { font-size: .8125rem; font-weight: 500; margin: 0; overflow-wrap: anywhere; }
.codat-public #public-content .cd-property-card .card-footer { padding: 0 1.125rem 1.125rem; display: flex; gap: .5rem; border: 0; background: #fff; }
.codat-public #homepage-sections .cd-property-card .card-footer .btn { margin: 0 !important; width: auto !important; display: inline-flex !important; }
.codat-public #public-content .cd-property-card .card-footer .btn { flex: 1; font-size: .75rem; padding: .625rem .5rem; white-space: nowrap; }
.codat-public #public-content .cd-property-card .card-footer { margin-top: auto; }
.codat-public #public-content .cd-property-card .card-footer > .d-flex { width: 100%; align-items: stretch; }
.codat-public #public-content .cd-property-card .card-footer .btn { display: inline-flex !important; align-items: center; justify-content: center; width: auto !important; min-width: 0; line-height: 1.4; }
.cd-home-request { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); grid-template-areas: "map form"; gap: var(--cd-content-gap); padding-block: 2.5rem; border-top: 1px solid var(--cd-line); align-items: stretch; }
.cd-home-request-form { grid-area: form; min-width: 0; }
.cd-location-card { grid-area: map; min-width: 0; display: flex; flex-direction: column; border: 1px solid var(--cd-line); border-radius: var(--cd-radius); overflow: hidden; background: var(--cd-ground); }
.cd-location-viewport { flex: 1; min-height: 300px; position: relative; }
.cd-location-viewport iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.cd-map-empty { min-height: 300px; height: 100%; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; padding: var(--cd-space-6); }
.cd-map-empty > .bi { font-size: 2rem; margin-bottom: var(--cd-space-4); }
.cd-map-caption { display: flex; flex-wrap: wrap; gap: .5rem 1rem; align-items: center; padding: var(--cd-space-4); font-size: .8125rem; }
.cd-map-caption > a { margin-left: auto; min-height: 44px; display: inline-flex; align-items: center; }
.cd-map-caption > small { flex-basis: 100%; color: var(--cd-muted); }
.cd-home-request .premium-form-card { border: 1px solid var(--cd-line); border-radius: var(--cd-radius); background: var(--cd-ground); box-shadow: none; backdrop-filter: none; }
.cd-home-request .modern-input-group { border-radius: var(--cd-radius-sm); background: #fff; border: 1px solid #b7c8d3; box-shadow: none; }
.cd-home-request .modern-input-group .form-control { border: 0; }
.cd-home-request .input-group-text { background: #fff; border: 0; }
.cd-listing-intro { padding-block: 2rem; background: var(--cd-ink-soft); border-bottom: 1px solid var(--cd-line); }
.cd-listing-intro .breadcrumb { font-size: .8125rem; margin-bottom: 1.25rem; }
.cd-listing-intro .breadcrumb a { color: var(--cd-muted); text-decoration: none; }
.cd-listing-intro-grid { display: grid; grid-template-columns: 1fr; gap: 2rem; align-items: center; }
.cd-listing-intro-grid:has(.cd-listing-promotion) { grid-template-columns: 1fr 1fr; }
.cd-listing-intro h1 { font-size: var(--cd-type-page-title); color: var(--cd-ink); margin-bottom: 1rem; line-height: 1.25; }
.cd-listing-intro p { max-width: 54ch; color: var(--cd-muted); line-height: 1.75; }
.cd-text-link { color: var(--cd-ink); font-weight: 600; font-size: .875rem; }
.cd-listing-promotion { border-radius: var(--cd-radius); overflow: hidden; background: #fff; }
.cd-listing-promotion .carousel-item { min-height: 220px; }
.cd-promotion-image { height: 240px; width: 100%; object-fit: cover; }
.cd-promotion-text { position: relative; background: #fff; padding: 1rem 1.5rem; }
.cd-promotion-text h2 { font-size: var(--cd-type-card-title); }
.cd-promotion-text p { font-size: .8125rem; margin-bottom: .5rem; }
.cd-promotion-text a { color: var(--cd-ink); font-size: .8125rem; }
.cd-listing-page #public-content > section.bg-light { background: #fff !important; padding-top: 1rem !important; }
.cd-listing-page #grid-properties-container { --bs-gutter-x: 1.5rem; }
.cd-listing-page #public-content .col-lg-4 > .sticky-top { top: calc(var(--public-header-height) + 1.25rem) !important; }
.cd-listing-page #public-content .col-lg-4 .bg-white { box-shadow: none !important; border: 1px solid var(--cd-line); border-radius: var(--cd-radius) !important; }
.cd-article-page #public-content .col-lg-4 > .sticky-top { top: calc(var(--public-header-height) + 1.25rem) !important; }
.cd-article-page #public-content h1 { font-size: var(--cd-type-page-title) !important; line-height: 1.3; text-transform: none !important; }
.cd-article-page #public-content .col-lg-8 > .bg-white { box-shadow: none !important; border-radius: 0 !important; }
.cd-property-page #public-content > .bg-light { background: #fff !important; }
.cd-property-page #public-content nav.breadcrumb { box-shadow: none !important; }
.cd-property-page #public-content .col-lg-4 > .sticky-top { top: calc(var(--public-header-height) + 1rem) !important; }
.cd-property-page .prop-hero-section { margin-top: 0; min-height: 240px; }
.cd-property-page .prop-gallery-wrapper { height: clamp(260px,34vw,440px); border-radius: var(--cd-radius); box-shadow: none !important; }
.cd-property-page #public-content h1 { font-size: var(--cd-type-page-title) !important; line-height: 1.4; }
.cd-property-page .hero-overlay { background: rgba(16,40,61,.65); }
.cd-entity-hero { height: 380px !important; min-height: 0 !important; }
.cd-entity-hero-empty { height: 240px !important; }
.cd-entity-hero .cd-entity-copy { background: transparent !important; padding: 1.5rem !important; }
.cd-entity-hero h1 { font-size: var(--cd-type-page-title) !important; text-shadow: 0 1px 4px rgba(0,0,0,.35) !important; }
.cd-entity-hero p { font-size: .9375rem !important; text-shadow: 0 1px 3px rgba(0,0,0,.35) !important; }
.codat-public #public-content .btn-jump-to-form { background: var(--cd-ink) !important; box-shadow: none !important; animation: none !important; transform: none !important; }
.codat-public #public-news-wrapper { padding-block: 3rem !important; background: var(--cd-ground) !important; }
.codat-public #public-section-title { text-align: left !important; margin-inline: 0 !important; width: auto !important; font-size: var(--cd-type-section-title) !important; }
.codat-public .section-title::after { display: none; }
.codat-public #news-search-form { max-width: 560px !important; margin-inline: 0 !important; }
.codat-public .news-card { border: 1px solid var(--cd-line) !important; border-radius: var(--cd-radius) !important; box-shadow: none !important; overflow: hidden; }
.codat-public .news-card .card-title { font-size: var(--cd-type-card-title); line-height: 1.45; }
.codat-public #public-interface > footer { background: var(--cd-ink-deep) !important; padding-top: 2.5rem !important; }
.codat-public footer .text-white-50 { color: #b7cbd9 !important; }
.codat-public footer h6 { color: #dac098 !important; font-size: .8125rem; text-transform: none !important; margin-bottom: 1rem !important; }
.codat-public footer #ft_hotline { color: #dac098 !important; }
.codat-public .cd-builder-inverse :is(h2,h3,h4) { color: var(--cd-gold) !important; }
.codat-public .cd-builder-inverse .text-white-50 { color: var(--cd-ink-soft) !important; }
.codat-public footer .navbar-brand { font-size: 1.25rem !important; margin-bottom: .75rem !important; }
.codat-public footer .navbar-brand img { height: 48px !important; }
.codat-public footer .text-center { text-align: left !important; }
.codat-public .modal-footer { flex-wrap: wrap; gap: .375rem; }
.codat-public .modal-body { max-height: 78dvh; overflow-y: auto; }
.cd-booking-dates { display: grid; grid-template-columns: 36px minmax(0,1fr) 36px; gap: .375rem; align-items: center; }
.codat-public .cd-date-nav { width: 36px; min-height: 44px; padding: .25rem; }
.cd-booking-dates .horizontal-date-scroll { min-width: 0; padding: 4px; scroll-snap-type: x mandatory; scroll-padding-inline: 4px; }
.cd-booking-dates .booking-date-card { font: inherit; flex: 0 0 calc((100% - 10px)/2); min-width: 0; padding: .625rem .25rem; scroll-snap-align: start; }
#publicDetailModal .modal-header { align-items: start; gap: .75rem; padding: 1rem 1.25rem; border-bottom: 1px solid var(--cd-line) !important; }
#publicDetailModal .modal-title { font-size: 1rem; line-height: 1.5; }
#publicDetailModal .btn-close { flex-shrink: 0; margin: .125rem 0 0; }
#publicDetailModal .modal-footer { padding: 1rem 1.25rem !important; border-top: 1px solid var(--cd-line) !important; }
#publicDetailModal .modal-footer .btn { flex: 1 1 14rem; white-space: normal; }
#publicDetailBody .cd-property-preview-heading { text-align: left !important; }
#publicDetailBody .cd-property-preview-heading h5 { font-size: var(--cd-type-card-title); line-height: 1.5; text-wrap: wrap; }
#publicDetailBody .cd-property-preview-grid > div > div { border: 1px solid var(--cd-line) !important; border-radius: var(--cd-radius) !important; box-shadow: none !important; }
#publicDetailBody .cd-property-preview-grid .position-absolute { display: none; }
.codat-public #public-hero-section.cd-home-hero { height: auto; min-height: 0; padding-bottom: 0; }
.codat-public #hero-slider-container.cd-home-media { height: 360px; }
.codat-public #dynamic-hero-text.cd-home-intro { padding-top: 0 !important; }
.cd-property-page #public-hero-section:has(#hero-slider-container > .bg-light) { display: none; }
.codat-public .co-assistant-widget { z-index: 1020; }
.codat-public .co-assistant[data-safe-zone=header] .co-greeting { display: none; }
@media (max-width: 1199px) {
  .cd-public-header .navbar-nav { gap: .375rem; }
  .cd-public-header .cd-public-brand { font-size: 1.05rem; margin-right: 1rem; }
  .cd-header-actions { gap: .75rem; }
  .cd-account-link span { display: none; }
  .cd-home-hero-grid { gap: 2rem; padding-block: 2.5rem; }
  .property-scroll-item { flex-basis: calc((100% - 2.5rem)/3); }
}
@media (max-width: 991px) {
  .codat-public { --public-header-height: 64px; }
  .cd-public-brand img { width: 32px; height: 42px; }
  .cd-public-header .mobile-sidebar { display: flex !important; flex-direction: column; align-items: stretch; position: fixed; top: 0; bottom: 0; left: auto; right: 0; width: min(330px,90vw); height: 100dvh; padding: max(1.25rem,env(safe-area-inset-top)) 1.25rem max(1.25rem,env(safe-area-inset-bottom)); background: #fff; overscroll-behavior-y: contain; transform: translateX(100%); visibility: hidden; overflow-y: auto; z-index: 1045; transition: transform var(--cd-duration),visibility var(--cd-duration); box-shadow: none; }
  .cd-public-header:has(.active-sidebar) { z-index: 1045; }
  .cd-public-header .cd-mobile-menu-heading { position: sticky; top: 0; background: #fff; z-index: 2; }
  .cd-public-header .mobile-sidebar.active-sidebar { transform: translateX(0); visibility: visible; }
  .cd-public-header .sidebar-backdrop { position: fixed; inset: 0; background: rgba(16,40,61,.45); z-index: 1044; }
  .cd-public-header .navbar-nav { margin: 1.5rem 0 !important; width: 100%; flex-shrink: 0; }
  .cd-public-header .nav-link { padding: .875rem .5rem; font-size: .9375rem; border-bottom: 1px solid var(--cd-line); }
  .cd-public-header .megamenu { position: static; box-shadow: none; border: 0; padding: .75rem 0; display: none; }
  .cd-public-header .has-megamenu:focus-within > .megamenu { display: none; }
  .cd-public-header .has-megamenu.show-menu > .megamenu { display: block; }
  .cd-public-header .megamenu .container { padding: 0 .75rem; }
  .cd-header-actions { width: 100%; justify-content: flex-start; margin-top: auto; padding-top: 1rem; flex-shrink: 0; flex-wrap: wrap; }
  .cd-account-link span { display: inline; }
  .cd-home-hero-grid { grid-template-columns: 1fr 1fr; gap: 1.5rem; }
  .cd-home-intro h1, .cd-home-intro .cd-home-title { font-size: var(--cd-type-display) !important; }
  .cd-home-media { height: 320px; }
  .codat-public #hero-slider-container.cd-home-media { height: 320px; }
  .cd-listing-intro-grid:has(.cd-listing-promotion) { grid-template-columns: 1fr; }
  .cd-listing-promotion { max-width: 600px; }
  .cd-home-request { gap: 2rem; }
  .cd-article-page #public-content .col-lg-4 > .sticky-top,.cd-property-page #public-content .col-lg-4 > .sticky-top,.cd-listing-page #public-content .col-lg-4 > .sticky-top { position: static !important; }
}
@media (max-width: 575px) {
  .cd-home-hero-grid { grid-template-columns: 1fr; gap: 1.75rem; padding-block: 2rem; }
  .cd-home-intro h1, .cd-home-intro .cd-home-title { font-size: var(--cd-type-display) !important; max-width: 16ch; }
  .cd-home-intro p { font-size: .9375rem !important; margin-bottom: 1.25rem; }
  .cd-hero-actions { gap: 1rem; }
  .cd-home-media { height: 260px; }
  .codat-public #hero-slider-container.cd-home-media { height: 260px; }
  .cd-featured-listing > div { padding: .875rem 1rem; }
  .cd-featured-listing h2 { font-size: 1rem; }
  .codat-public .floating-search-bar { padding-block: 1rem; }
  .codat-public #searchTab .nav-link { padding: .5rem .75rem !important; font-size: .875rem !important; }
  .codat-public #float-search-area { display: grid; grid-template-columns: 1fr 1fr; gap: .75rem; }
  .codat-public #float-search-area > div { width: auto; padding: 0 !important; margin: 0 !important; border: 0 !important; }
  .codat-public #float-search-area > div:nth-child(3) { grid-column: 1/-1; }
  .codat-public #float-search-area > div:last-child { grid-column: 1/-1; }
  .codat-public #float-search-area .form-select { font-size: 1rem !important; border: 1px solid #bacbd5 !important; background-color: #fff; }
  .codat-public #listing-section-title { font-size: var(--cd-type-section-title) !important; }
  .codat-public #listing-section-more-link { font-size: .75rem !important; }
  .property-scroll-item { flex-basis: 84%; }
  .codat-public .result-card .card-img-top { height: 200px !important; }
  .cd-home-request { grid-template-columns: 1fr; grid-template-areas: "form" "map"; gap: 1rem; padding-block: 2rem; }
  .cd-listing-intro { padding-block: 1.5rem; }
  .cd-listing-intro h1 { font-size: var(--cd-type-page-title); }
  .cd-promotion-image { height: 190px; }
  .cd-entity-hero { height: 320px !important; }
  .cd-entity-hero-empty { height: 240px !important; }
  .cd-entity-hero .cd-entity-copy .container { padding: 0; }
  .cd-article-page #public-content h1 { font-size: var(--cd-type-page-title) !important; }
  .codat-public #public-section-title { font-size: var(--cd-type-section-title) !important; }
  .codat-public #public-news-wrapper { padding-block: 2rem !important; }
}

/* One continuous neutral scrim; no colored panel behind entity titles. */
.cd-entity-shade{background:linear-gradient(to top,rgba(0,0,0,.72),rgba(0,0,0,.55));z-index:1}
.cd-entity-placeholder{background:#262626}

.codat-public button.btn-jump-to-form { border: 0; font-family: inherit; cursor: pointer; }

/* Footer contact fields share one renderer and remain hidden when unconfigured. */
.codat-public #ft_email_row[hidden],.codat-public #ft_address_row[hidden] { display: none !important; }
.codat-public #ft_email,.codat-public #ft_address { overflow-wrap: anywhere; min-width: 0; }
.codat-public #ft_email_row i,.codat-public #ft_address_row i { flex-shrink: 0; }
.codat-public #ft_email:focus-visible,.codat-public #ft_email:hover { color: #fff !important; text-decoration: underline !important; }

