/* Property detail: editorial layout, native gallery, native share and direct contact. */
.property-premium { color:#171916; background:#fff; font-family:'DM Sans',Arial,sans-serif; }
.property-premium .wrapper { display:block; height:auto; min-height:100%; overflow:clip; }
.pd-page { background:#fff; visibility:visible; padding-bottom:0; }
.pd-page * { box-sizing:border-box; }
.pd-page [hidden] { display:none!important; }
.pd-page a { color:inherit; text-decoration:none; }
.pd-page h1,.pd-page h2,.pd-page h3,.pd-page p { margin:0; padding:0; border:0; }
.pd-page h1,.pd-page h2,.pd-page h3 { font-family:'Manrope',Arial,sans-serif; color:#171916; }
.pd-page h1 { font-size:37px; line-height:1.28; font-weight:550; letter-spacing:-1.6px; overflow-wrap:anywhere; }
.pd-page h2 { font-size:28px; line-height:1.3; font-weight:550; letter-spacing:-1px; }
.pd-page h3 { font-size:17px; font-weight:600; line-height:1.5; }
.pd-page button,.pd-page input,.pd-page textarea { font:inherit; }
.pd-page button { cursor:pointer; }
.pd-page a:focus-visible,.pd-page button:focus-visible,.pd-page input:focus-visible,.pd-page textarea:focus-visible { outline:3px solid #9a7500!important; outline-offset:4px; }
.pd-container { width:min(1240px,90%); margin:0 auto; }
.pd-icon-library { width:0; height:0; position:absolute; overflow:hidden; }
.pd-icon { height:20px; width:20px; flex-shrink:0; vertical-align:middle; fill:none; stroke:currentColor; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; }
.pd-eyebrow { display:flex; align-items:center; gap:15px; font-size:9px; font-weight:700; letter-spacing:1.65px; line-height:1.7; color:#725200; margin-bottom:15px; }
.pd-purpose { background:#ffdf36; color:#171916; padding:6px 10px; font-size:9px; letter-spacing:1px; }
.pd-breadcrumbs { margin:0; padding:26px 0 30px; }
.pd-breadcrumbs ol { display:flex; flex-wrap:wrap; gap:8px 11px; list-style:none; margin:0; padding:0; font-size:10px; color:#5b6354; }
.pd-breadcrumbs li { display:flex; align-items:center; gap:11px; line-height:1.7; }
.pd-breadcrumbs li+li:before { content:'/'; color:#777f70; }
.pd-breadcrumbs a:hover { text-decoration:underline; color:#725200; }
.pd-breadcrumbs [aria-current] { color:#171916; }
.pd-heading { display:flex; gap:35px; align-items:flex-start; justify-content:space-between; padding:0 0 31px; }
.pd-heading>div:first-child { max-width:920px; }
.pd-address { display:flex; align-items:center; gap:8px; font-size:12px; color:#525b4a; line-height:1.7; margin-top:16px!important; }
.pd-address .pd-icon { width:16px; height:16px; color:#725200; }
.pd-heading-actions { display:flex; align-items:center; gap:10px; padding-top:5px; }
.pd-button { display:inline-flex; gap:11px; align-items:center; justify-content:center; padding:14px 19px; min-height:45px; border:1px solid transparent; border-radius:0; font-size:12px!important; font-weight:600; line-height:1.5; transition:background .2s,border-color .2s,transform .2s; text-decoration:none; }
.pd-button:hover { transform:translateY(-2px); }
.pd-button:disabled { opacity:.6; cursor:wait; transform:none; }
.pd-button-gold { color:#11160d!important; background:linear-gradient(110deg,#ffd700,#ffeb7a,#ffd700); border-color:#dfba00; }
.pd-button-gold:hover { background:#ffeb7a; }
.pd-button-dark { background:#161b12; color:#fff!important; }
.pd-button-outline { background:transparent; color:#1c2316; border-color:#cfd5c6; }
.pd-button-outline:hover { background:#f0f2e9; border-color:#8b967c; }
.pd-button>span:last-child { margin-left:auto; font-size:17px; }
.pd-icon-button { display:inline-grid; place-items:center; border:1px solid #d7dccf; color:inherit; background:transparent; width:44px; height:44px; padding:10px; }
.pd-icon-button:hover { background:#ffdf36; color:#151a10; }
.pd-gallery { display:grid; grid-template-columns:2fr 1fr 1fr; grid-template-rows:220px 220px; gap:8px; overflow:hidden; background:#f1f2eb; }
.pd-photo { position:relative; border:0; padding:0; background:#e9ede2; overflow:hidden; width:100%; height:100%; }
.pd-photo:first-child { grid-column:1; grid-row:1/3; }
.pd-photo img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .7s; }
.pd-photo:hover img { transform:scale(1.035); filter:brightness(.94); }
.pd-photo:after { content:'↗'; display:grid; place-items:center; position:absolute; right:15px; bottom:15px; width:34px; height:34px; font-size:21px; background:#ffdf36; color:#11160d; opacity:0; transform:translateY(8px); transition:opacity .25s,transform .25s; }
.pd-photo:hover:after,.pd-photo:focus-visible:after { opacity:1; transform:none; }
.pd-gallery-count-1 { grid-template-columns:1fr; grid-template-rows:448px; }
.pd-gallery-count-1 .pd-photo:first-child { grid-row:1; }
.pd-gallery-count-2 { grid-template-columns:1fr 1fr; grid-template-rows:448px; }
.pd-gallery-count-2 .pd-photo:first-child { grid-row:1; }
.pd-gallery-count-3 { grid-template-columns:2fr 1fr; }
.pd-gallery-count-4 .pd-photo-4 { grid-column:2/4; }
.pd-gallery-caption { display:flex; justify-content:space-between; align-items:center; gap:20px; padding:17px 0 23px; }
.pd-gallery-caption>span { font-size:9px; letter-spacing:1.4px; color:#565f4c; }
.pd-gallery-caption b { font-weight:500; color:#171916; border-left:1px solid #d4dace; margin-left:15px; padding-left:15px; }
.pd-gallery-all { background:#fff; border-color:#d2d8c9; padding:9px 15px; min-height:38px; font-size:11px!important; }
.pd-gallery-all .pd-icon { height:15px; width:15px; }
.pd-section-nav { position:sticky; top:0; z-index:20; display:flex; gap:30px; overflow-x:auto; scrollbar-width:none; border-top:1px solid #e0e5d8; border-bottom:1px solid #e0e5d8; background:#fffffff5; backdrop-filter:blur(16px); }
.pd-section-nav a { padding:19px 0; white-space:nowrap; font-size:12px; color:#57614d; border-bottom:2px solid transparent; }
.pd-section-nav a.is-active,.pd-section-nav a:hover { border-color:#e0b600; color:#151a10; }
.pd-layout { display:grid; grid-template-columns:minmax(0,1fr) 340px; gap:65px; padding-top:40px; align-items:start; }
.pd-main { min-width:0; }
.pd-section { padding:40px 0; border-bottom:1px solid #e1e6d9; scroll-margin-top:85px; }
.pd-section:first-child { padding-top:0; }
.pd-section-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; margin-bottom:26px; }
.pd-section-heading .pd-eyebrow { margin-bottom:12px; }
.pd-listing-date { color:#59644e; font-size:10px; white-space:nowrap; }
.pd-key-facts { display:grid; grid-template-columns:repeat(4,1fr); border:1px solid #dfe5d6; padding:23px 0; margin-bottom:34px; }
.pd-key-facts>div { display:grid; grid-template-columns:1fr; gap:8px; text-align:center; justify-items:center; padding:0 12px; border-left:1px solid #e0e5d8; }
.pd-key-facts>div:first-child { border-left:0; }
.pd-key-facts .pd-icon { color:#725200; width:23px; height:23px; }
.pd-key-facts strong { font-size:21px; font-family:'Manrope',Arial,sans-serif; font-weight:600; white-space:nowrap; }
.pd-key-facts small { font-size:10px; font-weight:400; }
.pd-key-facts span { font-size:10px; color:#56614b; }
.pd-page .pd-subheading { font-size:16px; margin-bottom:19px; }
.pd-description { color:#3f4935; font-size:13px; line-height:1.9; overflow-wrap:anywhere; }
.pd-description img { max-width:100%; height:auto; }
.pd-description p { margin:0 0 16px; color:inherit; }
.pd-description a { text-decoration:underline; }
.pd-description.is-collapsed { max-height:300px; overflow:hidden; mask-image:linear-gradient(#000 80%,transparent); }
.pd-text-button { display:inline-flex; gap:18px; align-items:center; border:0; border-bottom:1px solid #b99726; background:none; padding:13px 0 8px; color:#3c482f; font-size:12px!important; font-weight:600; }
.pd-text-link { color:#3b482f!important; font-size:11px; display:inline-flex; align-items:center; gap:10px; padding-bottom:5px; border-bottom:1px solid #b99726; }
.pd-detail-grid { display:grid; grid-template-columns:1fr 1fr; column-gap:32px; margin:25px 0 0; }
.pd-detail-grid>div { border-bottom:1px solid #e5e9df; padding:17px 0; min-width:0; }
.pd-detail-grid dt,.pd-detail-grid dd { float:none; width:auto; margin:0; text-align:left; }
.pd-detail-grid dt { font-size:10px; color:#59654c; font-weight:400; margin-bottom:7px; }
.pd-detail-grid dd { font-size:13px; color:#222b19; font-weight:500; line-height:1.7; overflow-wrap:anywhere; }
.pd-reference { font-size:10px!important; }
.pd-amenities { list-style:none; padding:0; margin:26px 0 0; display:grid; grid-template-columns:1fr 1fr; gap:17px; }
.pd-amenities li { display:flex; align-items:center; gap:11px; color:#354129; font-size:12px; line-height:1.7; }
.pd-amenities li>span { width:25px; height:25px; display:grid; place-items:center; color:#725200; background:#fff5bd; flex-shrink:0; }
.pd-floor-plans { display:flex; flex-wrap:wrap; gap:20px; margin-top:25px; }
.pd-floor-plans a { display:flex; flex-direction:column; border:1px solid #dfe5d5; padding:15px; width:calc(50% - 10px); }
.pd-floor-plans img { width:100%; height:240px; object-fit:contain; }
.pd-floor-plans span { font-size:11px; color:#536145; margin-top:15px; }
.pd-video { width:100%; aspect-ratio:16/9; border:0; margin-top:25px; background:#111; }
.pd-location-address { font-size:12px; color:#526044; margin:0 0 21px!important; }
.pd-map { background:#f1f4eb; border:1px solid #dfe5d5; min-height:310px; display:grid; place-items:center; }
.pd-map-intro { padding:33px; text-align:center; }
.pd-map-intro>.pd-icon { width:31px; height:31px; color:#856000; margin-bottom:16px; }
.pd-map-intro h3 { font-size:21px; font-weight:500; }
.pd-map-intro p { font-size:12px; color:#57664a; margin-top:10px; }
.pd-map-intro .pd-button { margin-top:23px; font-size:11px!important; }
.pd-map iframe { width:100%; height:360px; border:0; display:block; }
.pd-section-intro { font-size:12px; line-height:1.9; color:#55634a; margin:15px 0 26px!important; }
.pd-finance { display:grid; grid-template-columns:1.1fr 1fr; border:1px solid #dfe5d6; }
.pd-finance-inputs { display:grid; gap:18px 15px; grid-template-columns:1fr 1fr; padding:25px; align-content:center; }
.pd-finance label,.pd-dialog label { display:block; color:#445236; font-size:11px; font-weight:500; margin:0; }
.pd-page input:not([type=checkbox]),.pd-page textarea { display:block; width:100%; background:#fff; color:#19230f; border:1px solid #cfd8c3; border-radius:0; box-shadow:none; padding:12px!important; height:auto; font-size:13px; margin:9px 0 0; }
.pd-page textarea { resize:vertical; }
.pd-finance-result { background:#141b0f; padding:28px 23px; display:flex; flex-direction:column; justify-content:center; color:white; }
.pd-finance-result>span { font-size:8px; letter-spacing:1.4px; line-height:1.7; color:#ffea75; }
.pd-finance-result output { padding:15px 0 2px; font-family:'Manrope',Arial,sans-serif; font-weight:600; font-size:30px; color:white; letter-spacing:-1px; }
.pd-finance-result>small { color:#d6dfcc; font-size:10px; }
.pd-finance-result dl { margin:21px 0 0; padding-top:16px; border-top:1px solid #4c5a3d; }
.pd-finance-result dl>div { display:flex; gap:15px; justify-content:space-between; margin-top:8px; }
.pd-finance-result dt,.pd-finance-result dd { width:auto; float:none; margin:0; font-size:10px; font-weight:400; line-height:1.8; color:#edf2e7; }
.pd-fine-print { font-size:10px; color:#536347; line-height:1.9; margin-top:17px!important; }
.pd-fine-print a { text-decoration:underline; }
.pd-sidebar { position:sticky; top:85px; }
.pd-contact-card { padding:31px 27px; background:#131a0f; color:white; border-top:3px solid #ffdf36; }
.pd-contact-card .pd-eyebrow { font-size:8px; color:#ffe45c; letter-spacing:1.35px; margin-bottom:15px; }
.pd-price { font-family:'Manrope',Arial,sans-serif; font-size:32px; font-weight:600; letter-spacing:-1px; line-height:1.35; }
.pd-price small { font-size:12px; font-weight:400; letter-spacing:0; color:#dce5d3; }
.pd-price-type { font-size:10px; color:#e3eadc; line-height:1.8; margin-top:10px!important; }
.pd-card-rule { height:1px; margin:25px 0; background:#4a583b; }
.pd-agent { display:flex; align-items:center; gap:15px; margin-bottom:25px; }
.pd-agent img { width:61px; height:66px; object-fit:cover; background:#e3e8dc; }
.pd-agent span { font-size:8px; letter-spacing:1.4px; color:#ffe45c; }
.pd-page .pd-agent h3 { font-size:14px; color:#fff; font-weight:600; margin:5px 0; line-height:1.6; }
.pd-agent p { font-size:10px; line-height:1.7; color:#e3eadc; }
.pd-contact-card .pd-button { width:100%; margin-bottom:11px; font-size:11px!important; }
.pd-contact-card .pd-button-outline { color:white; border-color:#7c8c6a; }
.pd-contact-card .pd-button-outline:hover { color:#15200c; background:#ffea75; }
.pd-contact-card .pd-button-dark { background:#27351c; border-color:#7c8c6a; }
.pd-agent-profile { display:block; text-align:center; color:#ffea75!important; font-size:10px; padding:8px 0; }
.pd-contact-note { font-size:10px; line-height:1.8; text-align:center; color:#e2e9d9; margin-top:18px!important; }
.pd-help-note { display:flex; gap:13px; padding:21px 5px; }
.pd-help-note>span { font-size:23px; color:#725200; }
.pd-help-note strong { font-size:11px; font-weight:600; }
.pd-help-note p { font-size:10px; line-height:1.8; color:#536347; margin-top:6px; }
.pd-related { margin-top:35px; padding:45px 0 85px; }
.pd-related .pd-section-heading p { margin-top:14px; font-size:12px; color:#526346; line-height:1.8; }
.pd-related-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:27px; }
.pd-related-image { height:220px; position:relative; overflow:hidden; background:#eef2e8; }
.pd-related-image img { width:100%; height:100%; object-fit:cover; transition:transform .6s; }
.pd-related-card:hover img { transform:scale(1.04); }
.pd-related-image>span { position:absolute; left:15px; top:15px; background:#fffce8; color:#28351a; font-size:8px; letter-spacing:1px; padding:7px 10px; }
.pd-related-image>b { position:absolute; right:15px; bottom:15px; width:30px; height:30px; background:#ffdf36; color:#141b0e; display:grid; place-items:center; font-size:21px; font-weight:400; }
.pd-related-price { font-family:'Manrope',Arial,sans-serif; font-size:23px; font-weight:600; margin:20px 0 10px; letter-spacing:-.7px; }
.pd-related-price small { font-size:11px; font-weight:400; color:#526346; }
.pd-page .pd-related-card h3 { font-size:14px; color:#17230e; font-weight:600; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.pd-related-card p { color:#536347; font-size:11px; margin-top:8px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.pd-related-facts { display:flex; gap:20px; padding:16px 0; margin-top:15px; border-top:1px solid #dce4d2; border-bottom:1px solid #dce4d2; color:#536347; font-size:10px; }
.pd-dialog,.pd-lightbox { border:0; padding:0; background:#fff; color:#171916; }
.pd-dialog:not([open]),.pd-lightbox:not([open]) { display:none; }
.pd-dialog { width:min(560px,calc(100vw - 32px)); max-height:90vh; max-height:90dvh; margin:auto; padding:32px; box-shadow:0 30px 100px #0005; }
.pd-dialog::backdrop,.pd-lightbox::backdrop { background:#090e0bd9; backdrop-filter:blur(5px); }
.pd-dialog.is-fallback { position:fixed; z-index:1100; inset:50% auto auto 50%; transform:translate(-50%,-50%); }
.pd-dialog-header { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; margin-bottom:20px; }
.pd-dialog .pd-eyebrow { font-size:8px; margin-bottom:9px; }
.pd-dialog h2 { font-size:27px; letter-spacing:-1px; }
.pd-dialog .pd-icon-button { width:32px; height:32px; padding:7px; flex-shrink:0; }
.pd-dialog>p { font-size:12px; color:#536347; line-height:1.8; margin-bottom:20px; }
.pd-dialog .pd-share-label { margin-top:26px; }
.pd-share-copy { display:flex; gap:8px; align-items:center; margin:0 0 22px; }
.pd-share-copy input { min-width:0; flex:1; }
.pd-share-copy .pd-button { padding:12px; margin-top:9px; font-size:11px!important; flex-shrink:0; }
.pd-share-copy .pd-icon { width:15px; height:15px; }
.pd-share-status,.pd-form-status { min-height:21px; font-size:12px; line-height:1.8; margin-top:18px!important; }
.pd-form-pair { display:grid; grid-template-columns:1fr 1fr; gap:15px; }
.pd-dialog form>label,.pd-form-pair { margin-top:18px; }
.pd-dialog form>.pd-button { margin-top:20px; width:100%; }
.pd-modal-open { overflow:hidden; }
.pd-lightbox[open] { position:fixed; display:flex; flex-direction:column; width:100vw; max-width:none; height:100vh; height:100dvh; max-height:none; inset:0; background:#0d110b; color:#fff; margin:0; z-index:1100; }
.pd-lightbox-toolbar { display:flex; justify-content:space-between; align-items:center; padding:16px 30px; font-size:12px; letter-spacing:1px; }
.pd-lightbox .pd-icon-button { color:white; border-color:#627052; }
.pd-lightbox .pd-icon-button:hover { color:#111; }
.pd-lightbox-stage { flex:1; min-height:0; display:flex; align-items:center; justify-content:space-between; gap:20px; padding:10px 30px; }
.pd-lightbox-stage img { min-width:0; max-width:calc(100% - 130px); width:auto; height:100%; max-height:100%; object-fit:contain; }
.pd-lightbox-stage>button { width:42px; height:42px; flex-shrink:0; color:white; background:transparent; border:1px solid #7d8c6a; font-size:25px; }
.pd-lightbox-stage>button:hover { color:#111; background:#ffdf36; }
.pd-thumbnails { display:flex; justify-content:flex-start; gap:10px; overflow:auto; padding:18px 30px; margin:0 auto; max-width:100%; }
.pd-thumbnails button { padding:0; width:80px; height:56px; border:2px solid transparent; background:#2b3722; flex-shrink:0; opacity:.65; }
.pd-thumbnails button.is-active { border-color:#ffdf36; opacity:1; }
.pd-thumbnails img { width:100%; height:100%; object-fit:cover; }
.pd-lightbox button:focus-visible,.pd-contact-card a:focus-visible,.pd-contact-card button:focus-visible { outline-color:#ffea75!important; }
.pd-mobile-contact { display:none; }
.pd-unavailable { padding:100px 0; min-height:60vh; }
.pd-unavailable h1 { max-width:700px; }
.pd-unavailable p { font-size:14px; line-height:1.8; margin:25px 0; max-width:600px; }
@media(max-width:1100px) {
 .pd-layout { grid-template-columns:minmax(0,1fr) 300px; gap:35px; }
 .pd-page h1 { font-size:32px; }
 .pd-page h2 { font-size:25px; }
 .pd-gallery { grid-template-rows:190px 190px; }
 .pd-gallery-count-1,.pd-gallery-count-2 { grid-template-rows:388px; }
 .pd-key-facts { padding:20px 0; }
 .pd-key-facts strong { font-size:17px; }
 .pd-key-facts>div { padding:0 7px; }
 .pd-finance { grid-template-columns:1fr; }
 .pd-finance-result { padding:25px; }
 .pd-finance-result output { font-size:34px; }
 .pd-contact-card { padding:25px 20px; }
 .pd-price { font-size:29px; }
 .pd-section-nav { gap:25px; }
}
@media(max-width:767px) {
 .pd-container { width:90%; }
 .pd-breadcrumbs { padding:20px 0; }
 .pd-breadcrumbs ol { font-size:9px; gap:6px 9px; }
 .pd-heading { flex-direction:column; gap:18px; padding-bottom:23px; }
 .pd-page h1 { font-size:28px; letter-spacing:-1px; line-height:1.3; }
 .pd-heading .pd-eyebrow { font-size:8px; letter-spacing:1px; gap:10px; }
 .pd-heading-actions { padding-top:0; }
 .pd-heading-actions .pd-button { padding:9px 15px; min-height:38px; font-size:11px!important; }
 .pd-print-button { display:none; }
 .pd-address { font-size:11px; margin-top:13px!important; }
 .pd-gallery { grid-template-columns:1fr 1fr; grid-template-rows:290px 105px; gap:5px; }
 .pd-photo:first-child { grid-column:1/3; grid-row:1; }
 .pd-photo-4,.pd-photo-5 { display:none; }
 .pd-gallery-count-1 { grid-template-rows:310px; }
 .pd-gallery-count-2 { grid-template-columns:1fr 1fr; }
 .pd-gallery-count-2 .pd-photo:nth-child(2) { grid-column:1/3; }
 .pd-gallery-caption { padding:14px 0 20px; gap:10px; }
 .pd-gallery-caption>span { font-size:7px; letter-spacing:.6px; }
 .pd-gallery-caption b { margin-left:7px; padding-left:7px; }
 .pd-gallery-all { font-size:10px!important; padding:8px 10px; gap:7px; }
 .pd-section-nav { gap:24px; }
 .pd-section-nav a { padding:16px 0; font-size:11px; }
 .pd-layout { display:flex; flex-direction:column; gap:0; padding-top:28px; }
 .pd-main { width:100%; }
 .pd-sidebar { position:static; width:100%; padding:32px 0 0; }
 .pd-section { padding:33px 0; scroll-margin-top:75px; }
 .pd-section-heading { flex-wrap:wrap; gap:12px; margin-bottom:23px; }
 .pd-page h2 { font-size:26px; letter-spacing:-1px; }
 .pd-listing-date { font-size:9px; }
 .pd-key-facts { grid-template-columns:1fr 1fr; padding:0; gap:0; margin-bottom:30px; }
 .pd-key-facts>div { padding:19px 10px; }
 .pd-key-facts>div:nth-child(3),.pd-key-facts>div:nth-child(4) { border-top:1px solid #dfe5d6; }
 .pd-key-facts>div:nth-child(3) { border-left:0; }
 .pd-key-facts strong { font-size:20px; }
 .pd-description { font-size:12px; line-height:1.95; }
 .pd-detail-grid { column-gap:22px; margin-top:18px; }
 .pd-detail-grid dd { font-size:12px; }
 .pd-amenities { gap:16px 15px; }
 .pd-amenities li { font-size:11px; }
 .pd-floor-plans a { width:100%; }
 .pd-finance-inputs { padding:22px; gap:17px 13px; }
 .pd-finance-result { padding:25px; }
 .pd-contact-card { padding:30px 25px; }
 .pd-price { font-size:34px; }
 .pd-agent img { width:66px; height:72px; }
 .pd-page .pd-agent h3 { font-size:16px; }
 .pd-contact-card .pd-button { padding:15px; font-size:12px!important; }
 .pd-related { padding:32px 0 55px; margin-top:0; }
 .pd-related-grid { display:flex; overflow:auto; gap:19px; scroll-snap-type:x mandatory; padding-bottom:15px; }
 .pd-related-card { flex:0 0 85%; min-width:0; scroll-snap-align:start; }
 .pd-related-image { height:215px; }
 .pd-mobile-contact { position:fixed; display:flex; justify-content:space-between; align-items:center; gap:15px; bottom:0; left:0; right:0; z-index:40; padding:12px 5% calc(12px + env(safe-area-inset-bottom)); border-top:1px solid #cbd5be; background:#fffffff5; backdrop-filter:blur(15px); box-shadow:0 -5px 30px #131a0f0a; }
 .pd-mobile-contact>div>span { display:block; font-size:8px; letter-spacing:1px; color:#5b684e; }
 .pd-mobile-contact strong { display:block; font-family:'Manrope',Arial,sans-serif; font-size:21px; font-weight:650; margin-top:4px; letter-spacing:-.5px; }
 .pd-mobile-contact small { font-size:10px; font-weight:400; }
 .pd-mobile-contact .pd-button { min-width:118px; padding:12px 15px; }
 .property-premium { padding-bottom:86px; }
 .pd-dialog { padding:25px 22px; max-height:88dvh; }
 .pd-dialog h2 { font-size:24px; }
 .pd-dialog-header { gap:14px; }
 .pd-dialog .pd-fine-print { font-size:9px; }
 .pd-form-pair { grid-template-columns:1fr; gap:18px; }
 .pd-share-copy { flex-wrap:wrap; }
 .pd-share-copy input { flex-basis:100%; }
 .pd-share-copy .pd-button { width:100%; margin:0; }
 .pd-lightbox-toolbar { padding:12px 17px; }
 .pd-lightbox-stage { padding:10px; gap:6px; }
 .pd-lightbox-stage>button { width:31px; height:36px; font-size:22px; }
 .pd-lightbox-stage img { max-width:calc(100% - 74px); }
 .pd-thumbnails { padding:15px; gap:8px; }
 .pd-thumbnails button { width:65px; height:48px; }
 .pd-unavailable { padding:65px 0; }
}
@media(prefers-reduced-motion:reduce) { .pd-page *, .pd-page *:before,.pd-page *:after { animation:none!important; transition:none!important; scroll-behavior:auto!important; } }
@media print {
 .property-premium .navigation,.property-premium #page-footer,.property-premium .seo_footer_container,.pd-heading-actions,.pd-section-nav,.pd-mobile-contact,.pd-dialog,.pd-lightbox,.pd-gallery-all,.pd-help-note,.pd-contact-card .pd-button,.pd-agent-profile,#pd-finance,#pd-map,.pd-related { display:none!important; }
 .property-premium { padding:0; background:white; }
 .pd-container { width:100%; }
 .pd-heading { padding-top:15px; }
 .pd-layout { display:block; }
 .pd-sidebar { position:static; }
 .pd-contact-card { background:white; color:black; border:1px solid #ccc; margin-top:25px; }
 .pd-contact-card p,.pd-contact-card h3,.pd-contact-card span { color:black!important; }
 .pd-section { break-inside:avoid; padding:20px 0; }
 .pd-description.is-collapsed { max-height:none; overflow:visible; mask-image:none; }
 .pd-gallery { height:250px; grid-template-rows:121px 121px; }
}
