.property-page { background: var(--paper, #f7f8f4); }
.property-page .btn{padding:6px 7px 6px 21px;border-radius:999px;min-height:54px;justify-content:space-between}
.property-page .btn:after{width:40px;height:40px}
.property-main { padding: 30px 0 90px; }
.property-main{padding:0 0 90px}
.property-detail-hero{min-height:340px;margin-bottom:35px}
.property-detail-hero .property-heading{width:100%;margin:10px 0 0;align-items:end}
.property-detail-hero .property-heading h1{max-width:850px;margin:0 0 14px;color:#fffdf7;font-size:clamp(31px,3.5vw,51px);font-weight:700;line-height:1.15}
.property-detail-hero .property-location{color:#dce2e7}
.property-detail-hero .property-heading-price strong{color:#f5d293}
.property-detail-hero .property-heading-price span{color:#d5dce0}
.property-detail-hero .property-status{background:#e4c581;color:#39251e}
.property-detail-hero .property-kind{background:#fff9e926;color:#fff9e9;border:1px solid #fff9e960}
.property-detail-hero .property-featured{background:#fff9e9;color:#573b24}
@media(max-width:700px){.property-detail-hero{margin-bottom:25px}.property-detail-hero .property-heading{align-items:flex-start;gap:14px}.property-detail-hero .property-heading h1{font-size:clamp(29px,7.5vw,43px)}.property-detail-hero .property-heading-price{text-align:left}}
.property-breadcrumb { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-bottom: 30px; color: var(--muted); font-size: 13px; }
.property-breadcrumb > span:not(:last-child) { color: #a3afa5; }
.property-breadcrumb a:hover { color: var(--green); text-decoration: underline; text-underline-offset: 4px; }
.property-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 32px; margin-bottom: 30px; }
.property-title-block { max-width: 810px; min-width: 0; }
.property-detail-badges { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; margin-bottom: 16px; }
.property-detail-badges > span { display: inline-flex; align-items: center; padding: 7px 12px; border-radius: 6px; font-size: 12px; line-height: 1.4; font-weight: 600; }
.property-status { background: var(--green); color: #fff; }
.property-kind { background: #e8eee7; color: var(--green); }
.property-featured { color: #846335; background: #f0e6d7; }
.property-heading h1 { font-size: clamp(27px, 2.8vw, 40px); line-height: 1.3; letter-spacing: -.045em; font-weight: 600; color: var(--ink); margin: 0 0 15px; overflow-wrap: anywhere; }
.property-location { display: flex; align-items: center; gap: 8px; font-size: 14px; color: var(--muted); line-height: 1.6; margin: 0; }
.property-location .icon { width: 18px; height: 18px; flex-shrink: 0; color: var(--accent); }
.property-heading-price { text-align: right; flex-shrink: 0; padding-bottom: 3px; }
.property-heading-price strong { display: block; font-size: clamp(25px, 2.3vw, 32px); font-weight: 700; letter-spacing: -.04em; line-height: 1.3; color: var(--green); white-space: nowrap; }
.property-heading-price span { display: block; color: var(--muted); font-size: 12px; margin-top: 9px; }
.property-layout { display: grid; grid-template-columns: minmax(0, 1fr) 340px; align-items: start; gap: 30px; }
.property-content { min-width: 0; }
.property-gallery { margin-bottom: 25px; }
.gallery-stage { position: relative; background: #e3e8df; border-radius: 16px; overflow: hidden; aspect-ratio: 1.62; }
.gallery-open { display: block; position: relative; width: 100%; height: 100%; padding: 0; border: 0; background: none; color: #fff; cursor: zoom-in; font: inherit; }
.gallery-open > img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.gallery-open:hover > img { transform: scale(1.025); }
.gallery-expand { position: absolute; bottom: 17px; right: 17px; display: flex; align-items: center; gap: 8px; padding: 10px 13px; background: #fff; color: var(--ink); border-radius: 7px; font-size: 12px; font-weight: 600; box-shadow: 0 3px 14px #12271812; }
.gallery-expand .icon { width: 16px; height: 16px; }
.gallery-placeholder { position: absolute; top: 17px; left: 17px; padding: 7px 10px; background: #ffffffed; color: #3d4b40; border-radius: 5px; font-size: 11px; font-weight: 600; pointer-events: none; }
.gallery-placeholder[hidden], .property-lightbox [hidden] { display: none; }
.gallery-counter { position: absolute; bottom: 20px; left: 18px; background: #142b23c9; color: #fff; padding: 7px 11px; border-radius: 5px; font-size: 12px; font-weight: 600; pointer-events: none; }
.gallery-arrow { position: absolute; top: 50%; transform: translateY(-50%); display: grid; place-items: center; width: 42px; height: 42px; border: 0; border-radius: 50%; background: #fffffff0; color: var(--green); cursor: pointer; box-shadow: 0 3px 12px #142b2320; }
.gallery-prev { left: 16px; }
.gallery-next { right: 16px; }
.gallery-thumbnails { display: flex; gap: 10px; overflow-x: auto; padding: 12px 1px 2px; scrollbar-width: thin; }
.gallery-thumbnail { flex: 0 0 100px; height: 72px; padding: 3px; border: 2px solid transparent; border-radius: 9px; background: none; cursor: pointer; opacity: .65; transition: opacity .2s, border-color .2s; }
.gallery-thumbnail img { display: block; width: 100%; height: 100%; object-fit: cover; border-radius: 5px; }
.gallery-thumbnail.is-selected { border-color: var(--green); opacity: 1; }
.gallery-thumbnail:hover { opacity: 1; }
.gallery-note { color: var(--muted); font-size: 12px; line-height: 1.6; margin: 11px 0 0; }
.property-quick-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); background: #fff; border: 1px solid var(--line); border-radius: 12px; padding: 22px 4px; margin-bottom: 25px; }
.property-quick-facts > div { display: flex; align-items: center; gap: 12px; padding: 0 20px; min-width: 0; }
.property-quick-facts > div + div { border-left: 1px solid var(--line); }
.property-quick-facts .icon { flex-shrink: 0; width: 25px; height: 25px; color: var(--accent); }
.property-quick-facts span { font-size: 11px; line-height: 1.5; color: var(--muted); }
.property-quick-facts strong { display: block; color: var(--ink); font-size: 14px; line-height: 1.5; font-weight: 600; margin-top: 3px; overflow-wrap: anywhere; }
.property-panel { background: #fff; padding: 30px; border: 1px solid var(--line); border-radius: 16px; margin-bottom: 25px; }
.property-section-heading { margin-bottom: 24px; }
.property-section-heading .eyebrow { font-size: 10px; }
.property-section-heading h2 { color: var(--ink); font-size: 23px; letter-spacing: -.03em; line-height: 1.3; font-weight: 600; margin: 8px 0 0; }
.property-specifications { display: grid; grid-template-columns: 1fr 1fr; gap: 0 30px; margin: 0; }
.property-specifications > div { display: flex; align-items: start; justify-content: space-between; gap: 20px; padding: 14px 0; border-bottom: 1px solid #edf0e9; font-size: 13px; line-height: 1.6; }
.property-specifications dt { color: var(--muted); flex-shrink: 0; }
.property-specifications dd { margin: 0; text-align: right; font-weight: 600; color: var(--ink); overflow-wrap: anywhere; }
.property-description { font-size: 15px; line-height: 1.95; color: #4d5e53; overflow-wrap: anywhere; }
.property-description p{margin:0 0 16px}.property-description h2,.property-description h3,.property-description h4{margin:23px 0 10px;color:#283e32;line-height:1.35}.property-description h2{font-size:24px}.property-description h3{font-size:20px}.property-description h4{font-size:17px}.property-description ul,.property-description ol{margin:14px 0;padding-left:25px}.property-description li{margin:5px 0}.property-description blockquote{margin:18px 0;padding:12px 19px;border-left:3px solid #bba06d;background:#f8f5ed}.property-description a{color:#8e6d3e;text-decoration:underline;text-underline-offset:3px}.property-description hr{margin:23px 0;border:0;border-top:1px solid #d9ded5}.property-description table{display:block;width:100%;overflow-x:auto;border-collapse:collapse;margin:20px 0}.property-description th,.property-description td{padding:11px 13px;border:1px solid #d8e0d6;min-width:90px;text-align:left}.property-description th{background:#f2f5f0;color:#314d3a}.property-description pre{overflow:auto;white-space:pre-wrap;padding:16px;border-radius:9px;background:#f1f4ef;font-size:13px;line-height:1.6}
.property-feature-title { font-size: 15px; font-weight: 600; color: var(--ink); margin: 28px 0 15px; }
.property-features { margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 10px; list-style: none; }
.property-features li { display: inline-flex; align-items: center; gap: 8px; padding: 10px 13px; background: #f2f5ee; color: #36513f; font-size: 12px; font-weight: 500; border-radius: 6px; }
.property-features .icon { width: 16px; height: 16px; }
.property-area-panel { display: flex; align-items: flex-start; gap: 20px; background: #e9eee5; border: 1px solid #dce4d6; padding: 30px; border-radius: 16px; }
.property-area-icon { flex-shrink: 0; display: grid; place-items: center; background: #fff; color: var(--green); width: 52px; height: 52px; border-radius: 12px; }
.property-area-panel .eyebrow { font-size: 10px; }
.property-area-panel h2 { font-size: 23px; font-weight: 600; letter-spacing: -.035em; margin: 6px 0 10px; }
.property-area-panel p { font-size: 14px; line-height: 1.7; color: #53634f; margin: 0 0 18px; }
.property-back-link { display: inline-flex; align-items: center; gap: 7px; font-size: 14px; color: var(--green); font-weight: 600; margin-top: 28px; }
.property-back-link:hover { text-decoration: underline; text-underline-offset: 4px; }
.property-sidebar { position: sticky; top: 112px; }
.property-contact-card { padding: 28px; border: 1px solid var(--line); border-radius: 16px; background: #fff; box-shadow: 0 12px 30px #193b2410; }
.property-contact-card > .eyebrow { font-size: 10px; letter-spacing: .1em; }
.property-contact-card h2 { font-size: 24px; line-height: 1.35; letter-spacing: -.045em; margin: 14px 0; font-weight: 600; color: var(--ink); }
.property-contact-card > p { font-size: 13px; line-height: 1.85; color: var(--muted); margin: 0; }
.property-advisor { display: flex; align-items: center; gap: 12px; margin: 25px 0 22px; padding-top: 23px; border-top: 1px solid var(--line); }
.property-advisor-mark { display: grid; place-items: center; width: 45px; height: 45px; background: #eaf0e5; border: 1px solid #d5e0cf; color: var(--green); font-size: 16px; font-weight: 700; border-radius: 10px; }
.property-advisor strong { display: block; font-size: 13px; color: var(--ink); }
.property-advisor div > span { display: block; color: var(--muted); font-size: 11px; margin-top: 5px; }
.property-contact-card > .btn { display: flex; width: 100%; margin-top: 10px; font-size: 13px; padding-inline: 12px; }
.property-contact-note { display: flex; align-items: flex-start; gap: 9px; padding-top: 22px; color: var(--muted); font-size: 12px; line-height: 1.75; }
.property-contact-note .icon { flex-shrink: 0; width: 17px; height: 17px; margin-top: 2px; color: var(--accent); }
.property-help-note { display: flex; align-items: flex-start; gap: 12px; margin: 20px 10px 0; }
.property-help-note .icon { flex-shrink: 0; width: 19px; height: 19px; color: #829277; margin-top: 2px; }
.property-help-note p { margin: 0; font-size: 12px; line-height: 1.8; color: var(--muted); }
.property-lightbox { width: 100vw; height: 100dvh; max-width: none; max-height: none; padding: 0; border: 0; background: #14241df7; color: #fff; }
.property-lightbox::backdrop { background: #14241d; }
.lightbox-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 20px; height: 80px; padding: 16px 30px; border-bottom: 1px solid #ffffff1a; }
.lightbox-toolbar > span { max-width: 80%; font-size: 14px; line-height: 1.5; font-weight: 500; }
.lightbox-close, .lightbox-arrow { display: grid; place-items: center; width: 46px; height: 46px; padding: 0; border: 1px solid #ffffff40; border-radius: 50%; background: #ffffff10; color: #fff; cursor: pointer; }
.lightbox-close:hover, .lightbox-arrow:hover { background: #ffffff25; }
.lightbox-stage { position: relative; height: calc(100% - 80px); display: flex; align-items: center; justify-content: center; padding: 28px 80px; }
.lightbox-stage figure { height: 100%; max-width: 1400px; width: 100%; display: flex; flex-direction: column; align-items: center; margin: 0; }
.lightbox-stage img { max-width: 100%; height: calc(100% - 40px); object-fit: contain; }
.lightbox-stage figcaption { display: flex; align-items: center; gap: 18px; margin-top: 15px; font-size: 12px; color: #dbe2d5; }
.lightbox-arrow { position: absolute; top: calc(50% - 23px); }
.lightbox-prev { left: 20px; }
.lightbox-next { right: 20px; }
.property-mobile-contact { display: none; }
.property-not-found { padding-block: 100px; text-align: center; }
.property-not-found h1 { font-size: clamp(26px, 5vw, 42px); color: var(--ink); line-height: 1.3; }
.property-not-found p { color: var(--muted); max-width: 580px; line-height: 1.8; margin: 0 auto 30px; }
@media (max-width: 1100px) {
 .property-layout { grid-template-columns: minmax(0, 1fr) 300px; gap: 22px; }
 .property-heading { align-items: start; }
 .property-heading-price { padding-top: 45px; }
 .property-contact-card { padding: 23px; }
 .property-specifications { grid-template-columns: 1fr; }
 .property-quick-facts > div { padding-inline: 12px; gap: 8px; }
 .property-quick-facts .icon { width: 20px; height: 20px; }
 .property-quick-facts strong { font-size: 12px; }
}
@media (max-width: 800px) {
 .property-main { padding-top: 24px; }
 .property-heading { display: block; }
 .property-heading-price { padding: 20px 0 0; text-align: left; display: flex; align-items: center; justify-content: space-between; gap: 15px; }
 .property-heading-price span { margin: 0; }
 .property-layout { grid-template-columns: 1fr; }
 .property-sidebar { position: static; max-width: none; }
 .property-contact-card { padding: 28px; }
 .property-contact-card h2 { max-width: 380px; }
 .property-contact-card > p { max-width: 550px; }
 .property-quick-facts strong { font-size: 14px; }
 .property-quick-facts > div { padding-inline: 20px; gap: 12px; }
 .property-specifications { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 540px) {
 .property-main { padding-top: 18px; padding-bottom: 55px; }
 .property-breadcrumb { font-size: 12px; gap: 9px; margin-bottom: 22px; }
 .property-detail-badges { gap: 6px; margin-bottom: 13px; }
 .property-detail-badges > span { padding: 6px 10px; font-size: 11px; }
 .property-heading h1 { font-size: 27px; line-height: 1.35; letter-spacing: -.045em; margin-bottom: 12px; }
 .property-location { font-size: 13px; }
 .property-heading-price { display: block; padding-top: 18px; }
 .property-heading-price strong { font-size: 28px; }
 .property-heading-price span { margin-top: 5px; }
 .property-heading { margin-bottom: 24px; }
 .gallery-stage { aspect-ratio: 1.28; border-radius: 12px; }
 .gallery-placeholder { top: 12px; left: 12px; font-size: 10px; }
 .gallery-counter { left: 12px; bottom: 13px; font-size: 11px; }
 .gallery-expand { right: 12px; bottom: 12px; padding: 9px 10px; font-size: 11px; }
 .gallery-arrow { width: 36px; height: 36px; }
 .gallery-prev { left: 11px; }
 .gallery-next { right: 11px; }
 .gallery-note { font-size: 11px; line-height: 1.7; }
 .gallery-thumbnail { flex-basis: 80px; height: 60px; }
 .property-gallery { margin-bottom: 20px; }
 .property-quick-facts { padding: 18px 0; margin-bottom: 20px; }
 .property-quick-facts > div { padding-inline: 10px; display: block; }
 .property-quick-facts .icon { width: 22px; height: 22px; margin-bottom: 8px; }
 .property-quick-facts span { display: block; font-size: 10px; }
 .property-quick-facts strong { font-size: 12px; margin-top: 5px; }
 .property-panel { padding: 23px 20px; border-radius: 12px; margin-bottom: 20px; }
 .property-section-heading { margin-bottom: 18px; }
 .property-section-heading h2 { font-size: 21px; }
 .property-specifications { display: block; }
 .property-specifications > div { font-size: 13px; gap: 14px; }
 .property-specifications dd { max-width: 57%; }
 .property-description { font-size: 14px; line-height: 1.9; }
 .property-features { gap: 8px; }
 .property-features li { padding: 9px 11px; font-size: 11px; }
 .property-area-panel { padding: 22px 20px; gap: 14px; border-radius: 12px; }
 .property-area-icon { width: 38px; height: 38px; border-radius: 9px; }
 .property-area-icon .icon { width: 20px; height: 20px; }
 .property-area-panel h2 { font-size: 20px; }
 .property-area-panel p { font-size: 13px; }
 .property-area-panel .btn { font-size: 12px; padding-inline: 12px; }
 .property-back-link { font-size: 13px; }
 .property-contact-card { padding: 24px; border-radius: 12px; }
 .property-contact-card > .btn { font-size: 14px; }
 .lightbox-toolbar { height: 78px; padding: 14px 18px; }
 .lightbox-toolbar > span { font-size: 12px; max-width: calc(100% - 55px); }
 .lightbox-close { width: 40px; height: 40px; flex-shrink: 0; }
 .lightbox-stage { height: calc(100% - 78px); padding: 35px 14px 75px; }
 .lightbox-arrow { top: auto; bottom: 24px; width: 40px; height: 40px; }
 .lightbox-prev { left: calc(50% - 52px); }
 .lightbox-next { right: calc(50% - 52px); }
 .property-mobile-contact { display: flex; position: fixed; left: 0; bottom: 0; right: 0; z-index: 45; padding: 11px 16px calc(11px + env(safe-area-inset-bottom)); background: #fffffff5; box-shadow: 0 -5px 25px #17302612; border-top: 1px solid var(--line); gap: 10px; backdrop-filter: blur(14px); }
 .property-mobile-contact .btn { flex: 1; padding-inline: 10px; min-height: 46px; font-size: 13px; gap: 8px; }
 .property-page { padding-bottom: 72px; }
 .property-page .whatsapp-float, .property-page .floating-whatsapp { display: none; }
}
@media (prefers-reduced-motion: reduce) { .gallery-open > img, .gallery-thumbnail { transition: none; } }

/* Shared warm palette */
.property-kind{background:#f4e6c5;color:#593a28}
.property-featured{background:#f6e9c9;color:#745126}
.gallery-stage{background:#eadbbc}
.property-panel,.property-contact-card,.property-quick-facts{background:#fffdf8}
.property-specifications>div{border-color:#eee1c8}
.property-features li{background:#f6ead0;color:#4d3525}
.property-area-panel{background:#f3e5c0;border-color:#e4d3a8}
.property-area-panel p{color:#5b5145}
.property-advisor-mark{background:#f5e7c5;border-color:#e4d2a5}
.property-help-note .icon{color:#9b753a}
.property-page .property-main{padding-top:0}
.property-lightbox,.property-lightbox::backdrop{background:#241817f7}

/* Keep the gallery compact so listing facts remain close to the first image. */
.property-detail-hero+.container .gallery-stage{aspect-ratio:2.05;max-height:430px}
.property-detail-hero+.container .gallery-thumbnails{gap:8px;padding-top:9px}
.property-detail-hero+.container .gallery-thumbnail{flex-basis:88px;height:62px}
.property-detail-hero+.container .property-gallery{margin-bottom:17px}
@media(max-width:800px){.property-detail-hero+.container .gallery-stage{aspect-ratio:1.8;max-height:390px}}
@media(max-width:540px){.property-detail-hero+.container .gallery-stage{aspect-ratio:1.65;max-height:300px}.property-detail-hero+.container .gallery-thumbnail{flex-basis:72px;height:54px}}

/* Gallery frame and advisor column. */
.gallery-thumbnails-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:16px;padding-top:14px;border-top:1px solid #eadcc7;color:#6b4b32;font-size:10px;font-weight:800;letter-spacing:.1em}
.gallery-thumbnails-head small{color:#8f7b67;font-size:10px;font-weight:700;letter-spacing:0}
.property-detail-hero+.container .gallery-thumbnails{padding-top:9px;padding-bottom:5px}
.property-detail-hero+.container .gallery-thumbnail{background:#fffaf0;border-color:#eadcc7;opacity:.8}
.property-detail-hero+.container .gallery-thumbnail.is-selected{border-color:#9c743d;opacity:1;box-shadow:0 3px 10px #3b22221e}

/* Compact puzzle gallery: one lead photo with four supporting tiles. */
.gallery-mosaic.has-mosaic{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:8px;height:350px}
.property-detail-hero+.container .gallery-mosaic.has-mosaic .gallery-stage{width:100%;height:100%;max-height:none;aspect-ratio:auto;border-radius:14px}
.gallery-mosaic-side{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:8px;min-width:0;min-height:0}
.gallery-mosaic-tile{position:relative;display:block;min-width:0;min-height:0;padding:0;overflow:hidden;border:0;border-radius:11px;background:#eadbbc;cursor:zoom-in}
.gallery-mosaic-tile img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.gallery-mosaic-tile:hover img{transform:scale(1.06)}
.gallery-mosaic-tile>span{position:absolute;inset:0;display:grid;place-items:center;padding:8px;background:#261814a8;color:#fff9ec;font-size:13px;font-weight:750;text-align:center}
.gallery-mosaic-tile:focus-visible{outline:3px solid #c99e5a;outline-offset:2px}
@media(max-width:800px){.gallery-mosaic.has-mosaic{height:300px;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr)}}
@media(max-width:600px){.gallery-mosaic.has-mosaic{display:block;height:auto}.property-detail-hero+.container .gallery-mosaic.has-mosaic .gallery-stage{height:auto;aspect-ratio:1.65}.gallery-mosaic-side{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:72px;gap:6px;margin-top:6px}.gallery-mosaic-tile{border-radius:7px}.gallery-mosaic-tile>span{font-size:10px}}
@media(prefers-reduced-motion:reduce){.gallery-mosaic-tile img{transition:none}}

/* Region information card */
.property-area-panel{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(230px,.85fr);gap:0;align-items:stretch;overflow:hidden;padding:0;border:1px solid #e4d5bb;border-radius:18px;background:#fffaf1;box-shadow:0 12px 30px #3b22220d}
.property-area-copy{min-width:0;padding:31px 34px 32px}
.property-area-panel .property-area-icon{display:grid;place-items:center;width:42px;height:42px;margin-bottom:18px;border:1px solid #e7d2a9;border-radius:12px;background:#f4e6cb;color:#67452c}
.property-area-panel .property-area-icon .icon{width:22px;height:22px}
.property-area-panel .eyebrow{color:#9d713b;font-size:10px;font-weight:800;letter-spacing:.13em}
.property-area-panel h2{margin:7px 0 10px;color:#3b2222;font-size:clamp(24px,2.4vw,31px);font-weight:750;line-height:1.2;letter-spacing:-.05em}
.property-area-panel h2 span{color:#9a713e}
.property-area-neighborhood{display:inline-flex;align-items:center;gap:5px;margin:0 0 8px;color:#76563b;font-size:11px;font-weight:700}
.property-area-neighborhood .icon{width:14px;height:14px}
.property-area-panel p{max-width:455px;margin:10px 0 20px;color:#65594e;font-size:12px;line-height:1.75}
.property-area-panel .btn{min-height:45px;font-size:12px}
.property-area-visual{position:relative;display:block;min-height:280px;overflow:hidden;background:repeating-linear-gradient(28deg,transparent 0 42px,#ffffff0d 43px 46px,transparent 47px 88px),repeating-linear-gradient(111deg,transparent 0 50px,#e9c68d1b 51px 53px,transparent 54px 100px),radial-gradient(circle at 58% 40%,#866242 0,#4c3028 47%,#2a1c1c 100%);color:#fff6e6}
.property-area-visual::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 38%,#211617ba 100%)}
.property-area-visual-orbit{position:absolute;top:39%;left:53%;width:140px;height:140px;border:1px solid #f4dba95c;border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 29px #f4dba913,0 0 0 58px #f4dba908}
.property-area-visual-pin{position:absolute;top:39%;left:53%;display:grid;place-items:center;width:52px;height:52px;border:1px solid #fff4d4aa;border-radius:50%;background:#e5c47e;color:#3b2222;box-shadow:0 10px 25px #130d0b7a;transform:translate(-50%,-50%);transition:transform .25s ease}
.property-area-visual-pin .icon{width:25px;height:25px}
.property-area-visual:hover .property-area-visual-pin{transform:translate(-50%,-50%) scale(1.08)}
.property-area-visual-caption{position:absolute;left:22px;right:55px;bottom:21px;display:block}
.property-area-visual-caption small{display:block;margin-bottom:5px;color:#e8cc96;font-size:9px;font-weight:800;letter-spacing:.13em}
.property-area-visual-caption strong{display:block;font-size:15px;font-weight:750;line-height:1.35}
.property-area-visual-arrow{position:absolute;right:19px;bottom:19px;display:grid;place-items:center;width:36px;height:36px;border:1px solid #fff9e67d;border-radius:50%}
.property-area-visual-arrow .icon{width:17px;height:17px}
@media(max-width:700px){.property-area-panel{grid-template-columns:1fr}.property-area-copy{padding:26px}.property-area-visual{min-height:185px}.property-area-visual-orbit,.property-area-visual-pin{top:44%}.property-area-panel h2{font-size:26px}}
@media(max-width:540px){.property-area-panel{border-radius:13px}.property-area-copy{padding:22px}.property-area-panel .property-area-icon{margin-bottom:13px}.property-area-panel p{font-size:12px}.property-area-visual{min-height:170px}.property-area-visual-caption{left:18px;bottom:17px}.property-area-visual-arrow{right:15px;bottom:15px}}
@media(prefers-reduced-motion:reduce){.property-area-visual-pin{transition:none}}

/* Clear price and reference card in the listing header */
.property-detail-hero .property-heading-price{width:310px;flex:none;padding:20px 22px 0;border:1px solid #f5e3bd;border-radius:17px;background:#fffaf0f2;box-shadow:0 18px 42px #140e0c4a;text-align:left;backdrop-filter:blur(14px)}
.property-detail-hero .property-heading-price .price-label{display:block;margin:0 0 5px;color:#8a6535;font-size:10px;font-weight:800;letter-spacing:.14em;line-height:1.5}
.property-detail-hero .property-heading-price>strong{display:block;color:#39241e;font-size:clamp(30px,2.6vw,38px);font-weight:800;line-height:1.2;letter-spacing:-.055em;white-space:normal;overflow-wrap:anywhere}
.property-detail-hero .property-heading-price .reference-line{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:17px -22px 0;padding:12px 22px;border-top:1px solid #e9d5af;color:#5b4333}
.property-detail-hero .property-heading-price .reference-line small{font-size:10px;font-weight:750;letter-spacing:.08em}
.property-detail-hero .property-heading-price .reference-line b{font-size:13px;font-weight:800;letter-spacing:.035em;white-space:nowrap}
@media(max-width:800px){.property-detail-hero .property-heading-price{width:min(100%,350px);margin-top:20px}}
@media(max-width:540px){.property-detail-hero .property-heading-price{width:100%;padding:17px 18px 0;border-radius:14px}.property-detail-hero .property-heading-price>strong{font-size:32px}.property-detail-hero .property-heading-price .reference-line{margin:15px -18px 0;padding:11px 18px}}
