/* Detail layout based on the inspected DDproperty property page. */
.line-contact-panel { max-width:720px; margin:0 auto 48px; padding:32px; border:1px solid #D6DADF; border-radius:16px; background:#fff; text-align:center; }
.line-contact-panel .airea-team-monogram { margin:0 auto 16px; }
.line-contact-panel .tf-btn { min-height:48px; margin-top:12px; }
.rental-homzen-page .rental-line-footer { padding:40px 0 24px; background:#EBF3FA; color:#15283B; }
.rental-line-footer-main { display:grid; grid-template-columns:1fr auto auto; gap:32px; align-items:center; }
.rental-line-footer-main p { margin:16px 0 0; font-size:14px; }
.rental-line-footer-main nav { display:flex; gap:20px; flex-wrap:wrap; font-size:14px; }
.rental-homzen-page .rental-line-footer .tf-btn.primary { color:#fff; }
.rental-line-footer-bottom { display:flex; flex-wrap:wrap; gap:20px; border-top:1px solid #D6DADF; margin-top:32px; padding-top:20px; font-size:12px; }
.rental-line-footer-bottom span { margin-inline-end:auto; }
@media(max-width:767px) { .line-contact-panel { padding:24px 16px; } .rental-line-footer-main { grid-template-columns:1fr; gap:24px; } .rental-line-footer-main>.tf-btn { width:fit-content; } .rental-line-footer-bottom { gap:12px; } .rental-line-footer-bottom span { flex-basis:100%; } }
.property-breadcrumb { display:flex; gap:10px; flex-wrap:wrap; margin:24px 0; font-size:13px; color:#64748B; }
.property-breadcrumb a { color:#24394F; }
.property-mosaic { position:relative; display:grid; grid-template-columns:2fr 1fr 1fr; grid-template-rows:1fr 1fr; gap:4px; height:440px; border-radius:16px; overflow:hidden; background:#EBF3FA; }
.property-photo { border:0; padding:0; overflow:hidden; background:#EBF3FA; min-width:0; min-height:0; }
.property-photo-0 { grid-row:span 2; }
.property-photo img { display:block; width:100%; height:100%; object-fit:cover; }
.property-photo-empty { grid-column:1/-1; grid-row:1/-1; display:grid; place-items:center; }
.property-all-photos { position:absolute; bottom:20px; right:20px; min-height:44px; padding:10px 20px; border:1px solid #D6DADF; border-radius:24px; background:white; color:#15283B; font-weight:600; }
.property-layout { display:grid; grid-template-columns:minmax(0,1fr) 360px; gap:32px; margin:32px 0; align-items:start; }
.rental-homzen .property-main { max-height:none; min-width:0; height:auto; width:auto; background:transparent; border-radius:0; }
.rental-homzen .property-status { display:inline-block; padding:6px 12px; margin:0 0 12px; background:#EBF3FA; color:#023B86; border-radius:6px; font-size:14px; font-weight:600; line-height:1.6; }
.rental-homzen .property-overview h1 { font-size:28px; line-height:1.4; margin-bottom:4px; }
.rental-homzen .property-address { color:#64748B; margin-bottom:12px; font-size:15px; }
.rental-homzen .property-price { font-size:28px; color:#15283B; font-weight:700; margin:0; line-height:1.4; }
.property-price>span:not(.property-reference-pill) { font-size:18px; }
.property-reference-pill { display:inline-block; margin-left:12px; padding:4px 10px; border-radius:6px; background:#EBF3FA; color:#52657B; font-size:12px; font-weight:400; vertical-align:middle; }
.rental-homzen .property-price-per-area { font-size:14px; color:#64748B; margin:4px 0 0; }
.property-key-specs { display:flex; gap:40px; padding:20px 0; }
.property-key-specs div { display:flex; flex-direction:column; gap:4px; }
.property-key-specs strong { font-size:22px; color:#15283B; }
.property-key-specs span { font-size:13px; color:#64748B; }
.rental-homzen .property-reference-notice { border-block:1px solid #E2E8F0; padding:14px 0; color:#52657B; font-size:13px; margin:0; }
.property-section-nav { display:flex; gap:24px; flex-wrap:wrap; padding:16px 0; border-bottom:1px solid #D6DADF; }
.property-section-nav a,.property-section-nav button { display:flex; align-items:center; min-height:44px; color:#023B86; font-weight:600; font-size:14px; border:0; padding:0; background:transparent; }
.property-section { padding:28px 0; border-bottom:1px solid #D6DADF; scroll-margin-top:140px; }
.rental-homzen .property-section h2 { font-size:23px; margin-bottom:20px; }
.rental-homzen .property-section p { font-size:15px; line-height:1.8; margin-bottom:12px; }
.rental-homzen .property-details-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px 32px; margin:0; border:0; border-radius:0; overflow:visible; }
.property-details-grid div { display:block; }
.rental-homzen .property-details-grid dt { font-size:13px; color:#64748B; font-weight:400; margin-bottom:4px; padding:0; border:0; background:transparent; }
.rental-homzen .property-details-grid dd { color:#15283B; font-size:15px; margin:0; padding:0; border:0; }
.property-muted { color:#64748B; }
.property-agent { position:sticky; top:130px; border:1px solid #BFC8D2; border-radius:16px; padding:24px; background:white; }
.property-agent-person { display:flex; align-items:center; gap:12px; margin-bottom:20px; }
.rental-homzen .property-agent h2 { font-size:18px; margin:0 0 4px; }
.rental-homzen .property-agent-person p { font-size:12px; color:#64748B; margin:0; }
.property-agent>a { display:flex; align-items:center; justify-content:center; min-height:48px; border-radius:28px; margin-bottom:8px; padding:10px; font-weight:600; font-size:14px; }
.property-agent-line { background:#023B86; color:#fff; }
.property-agent-line:hover { background:#012D69; color:#fff; }
.property-agent-action { border:1px solid #D6DADF; color:#15283B; }
.rental-homzen .property-agent-note { font-size:12px; color:#64748B; margin:16px 0 0; line-height:1.7; }
.property-photo-dialog { position:fixed; inset:0; width:100vw; max-width:100vw; height:100dvh; max-height:100dvh; margin:0; padding:20px; background:#101820; color:#fff; border:0; }
.property-photo-dialog::backdrop { background:#101820; }
.property-viewer-toolbar { display:flex; justify-content:space-between; align-items:center; margin-bottom:16px; }
.property-photo-dialog button { min-width:48px; min-height:48px; background:#263746; color:#fff; border:0; border-radius:24px; padding:8px 16px; }
.property-viewer-stage { display:grid; grid-template-columns:48px minmax(0,1fr) 48px; align-items:center; gap:16px; height:calc(100dvh - 150px); }
.property-viewer-stage img { width:100%; height:100%; object-fit:contain; min-height:0; }
.property-viewer-stage button { font-size:30px; padding:0; }
.property-photo-dialog a { display:block; text-align:center; padding:12px; color:white; }
body.property-gallery-open { overflow:hidden; }
@media(max-width:991px) { .property-layout { grid-template-columns:minmax(0,1fr) 300px; gap:24px; } .property-mosaic { height:340px; } }
@media(max-width:767px) {
 .property-breadcrumb { margin:16px 0; font-size:12px; }
 .property-mosaic { display:block; height:auto; aspect-ratio:4/3; border-radius:12px; }
 .property-photo { width:100%; height:100%; }
 .property-photo-empty { height:100%; }
 .property-photo:not(.property-photo-0) { display:none; }
 .property-all-photos { bottom:12px; right:12px; padding:8px 14px; font-size:12px; }
 .property-layout { grid-template-columns:1fr; gap:24px; margin:24px 0; }
 .rental-homzen .property-overview h1 { font-size:23px; }
 .rental-homzen .property-price { font-size:25px; }
 .property-agent { position:static; padding:20px; }
 .rental-homzen .property-details-grid { gap:20px 16px; }
 .property-section-nav { gap:16px; }
 .property-photo-dialog { padding:12px; }
 .property-viewer-stage { gap:6px; grid-template-columns:40px minmax(0,1fr) 40px; }
 .property-viewer-stage button { min-width:40px; }
}
/* Airea cards follow the observed DDproperty photo-first card structure. */
.airea-listings { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px 24px; align-items:start; }
.airea-listing { display:flex; flex-direction:column; min-width:0; background:#fff; border:1px solid #D6DADF; border-radius:16px; overflow:hidden; }
.airea-listing-team { display:flex; align-items:center; gap:10px; padding:12px 16px; background:#EBF3FA; }
.airea-team-monogram { display:grid; place-items:center; width:40px; height:40px; border-radius:50%; background:#023B86; color:white; font-size:24px; font-weight:600; flex-shrink:0; }
.airea-listing-team strong { display:block; color:#172B43; font-size:14px; line-height:1.4; }
.airea-listing-team div>span { display:block; color:#52657B; font-size:12px; line-height:1.5; }
.airea-listing-photo { position:relative; display:block; aspect-ratio:4/3; background:#EEF2F6; overflow:hidden; }
.airea-listing-photo img { width:100%; height:100%; position:absolute; inset:0; object-fit:cover; }
.airea-no-photo { display:flex; align-items:center; justify-content:center; height:100%; padding:20px; color:#64748B; }
.airea-photo-badge,.airea-photo-count { position:absolute; bottom:16px; padding:4px 10px; border-radius:20px; font-size:12px; line-height:1.4; }
.airea-photo-badge { left:16px; background:#023B86; color:#fff; }
.airea-photo-count { right:16px; display:flex; align-items:center; gap:5px; background:rgba(15,23,42,.72); color:#fff; }
.airea-listing svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; flex-shrink:0; }
.airea-photo-count svg { width:14px; height:14px; }
.airea-listing-body { padding:0 16px 12px; min-width:0; }
.rental-homzen .airea-price-note { font-size:12px; color:#52657B; margin:0 0 10px; padding:9px 0; border-bottom:1px solid #EDF0F3; }
.airea-listing-summary { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:16px; align-items:start; }
.rental-homzen .airea-listing h3 { font-size:17px; font-weight:650; margin:0 0 6px; line-height:1.45; }
.airea-listing h3 a { color:#15283B; }
.rental-homzen .airea-listing-price { font-size:22px; font-weight:700; color:#15283B; margin:0; line-height:1.25; text-align:right; white-space:nowrap; font-variant-numeric:tabular-nums; }
.airea-listing-price span { font-size:14px; font-weight:500; }
.airea-listing-price .airea-price-missing { color:#023B86; font-size:15px; font-weight:600; }
.rental-homzen .airea-unit-price { margin:4px 0 0; color:#64748B; text-align:right; font-size:12px; line-height:1.5; }
.rental-homzen .airea-listing-location { color:#64748B; margin:0 0 8px; font-size:13px; line-height:1.5; }
.airea-listing-specs { display:flex; gap:6px 0; flex-wrap:wrap; list-style:none; padding:0; margin:8px 0; font-size:13px; color:#52657B; }
.airea-listing-specs li { display:flex; align-items:center; gap:5px; padding:0 10px; border-right:1px solid #E5E9EE; }
.airea-listing-specs li:first-child { padding-left:0; }
.airea-listing-specs li:last-child { border:0; }
.rental-homzen .airea-listing-reference { color:#64748B; font-size:12px; margin:0 0 10px; }
.airea-listing-actions { display:flex; align-items:center; gap:10px; padding-top:12px; border-top:1px solid #EDF0F3; }
.airea-listing-detail { display:inline-flex; align-items:center; min-height:44px; color:#15283B; font-size:14px; font-weight:600; margin-right:auto; }
.airea-enquiry-icon { display:grid; place-items:center; width:44px; height:44px; border:1px solid #D6DADF; border-radius:50%; color:#023B86; flex-shrink:0; }
.airea-card-line { display:flex; align-items:center; justify-content:center; min-height:44px; min-width:150px; padding:8px 24px; border-radius:24px; background:#023B86; color:#fff; font-size:14px; font-weight:600; }
.airea-card-line:hover { background:#012D69; color:#fff; }
.airea-listing a:focus-visible { outline:3px solid #557FAF; outline-offset:3px; }
@media(max-width:767px) {
 .airea-listings { grid-template-columns:1fr; gap:24px; }
 .airea-listing-summary { gap:10px; }
 .rental-homzen .airea-listing h3 { font-size:16px; }
 .rental-homzen .airea-listing-price { font-size:20px; }
 .airea-spec-label { display:none; }
 .airea-card-line { min-width:120px; padding:8px 16px; }
 .airea-listing-actions { gap:8px; }
}
.rental-homzen-page #header button.mobile-nav-toggler,
.rental-homzen-page #header button.close-btn { border: 0; background: transparent; color: #023B86; padding: 6px; min-width: 44px; min-height: 44px; }
.rental-homzen-page #header button.close-btn { color: #fff; }
.rental-homzen .mobile-contact { gap: 4px; padding: 4px 8px calc(4px + env(safe-area-inset-bottom)); }
.rental-homzen .mobile-contact a { display: flex; flex: 1; align-items: center; justify-content: center; min-height: 48px; padding: 8px; }
.rental-homzen-page .consent-banner { position: relative; inset: auto; width: calc(100% - 30px); max-width: 1290px; margin: 16px auto; padding: 16px 20px; box-shadow: none; z-index: auto; }
.rental-homzen-page .consent-banner p { margin-bottom: 12px; font-size: 14px; line-height: 1.7; }
.rental-homzen-page .consent-banner .actions { display: flex; gap: 12px; flex-wrap: wrap; }
.rental-homzen .contact-quick { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; margin-bottom: 24px; }
.rental-homzen .contact-quick span { color: #64748B; font-size: 14px; }
.rental-homzen .contact-aside > a { display: flex; width: fit-content; align-items: center; min-height: 44px; margin-bottom: 8px; }
@media(max-width:767px) { .rental-homzen-page .rental-homzen .rental-hero h1 { font-size: 25px; } .hero-title-line { display: block; } }
.rental-homzen-page #header { height: auto; padding-inline: 0; }
.rental-homzen-page #header .header-lower { position: relative; top: auto; bottom: auto; transform: none; width: 100%; }
.rental-homzen-page #header .header-lower > .row { margin-inline: 0; }
.rental-homzen-page #header .header-lower > .row > div { padding-inline: 24px; }
@media(max-width:767px) { .rental-homzen-page #header .header-lower > .row > div { padding-inline: 15px; } }
.rental-homzen-page .footer a { color: #023B86; }
.rental-homzen-page .footer a:hover { color: #012354; }
.rental-homzen-page .mobile-nav-toggler { display: flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; cursor: pointer; }
@media(min-width:992px) { .rental-homzen-page .mobile-nav-toggler { display:none; } }
.rental-homzen .rental-card-bottom a { display: inline-flex; align-items: center; min-height: 44px; padding: 8px 4px; }
.rental-homzen .rental-reference-id { color: #64748B; font-size: 12px; font-weight: 400; }
.rental-homzen .rental-location { color: #64748B; font-size: 14px; margin-bottom: 8px; }
.rental-homzen .airea-secondary-link { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 8px 12px; color: #fff; text-decoration: underline; text-underline-offset: 4px; }
.rental-homzen .rental-hero .slider-content { padding: 48px 24px 32px; }
.rental-homzen .rental-hero .heading { margin-bottom: 12px; }
.rental-homzen .airea-catalogue-search { margin-bottom: 24px; }
.rental-homzen .field-error { display: block; margin-top: 8px; color: #B91C1C; font-size: 14px; font-weight: 400; }
.rental-homzen [aria-invalid="true"] { border-color: #B91C1C; }
.rental-homzen-page .rental-homzen .rental-hero .overlay {
    background: linear-gradient(90deg, rgba(1,35,84,.28), rgba(1,35,84,.12) 55%, rgba(1,35,84,.3));
}
@media (max-width: 767px) {
    .rental-homzen .rental-hero .slider-content { padding: 24px 8px; }
    .rental-homzen .rental-hero .rental-eyebrow { margin-bottom: 12px; }
    .rental-homzen .rental-hero h1 { font-size: 26px; margin-bottom: 14px; }
    .rental-homzen .rental-hero .subtitle { margin-bottom: 16px; }
    .rental-homzen .rental-hero .actions { gap: 4px; }
    .rental-homzen .rental-hero-caption { font-size: 12px; line-height: 1.7; }
    .rental-homzen .airea-catalogue-search { gap: 12px; padding: 16px; }
    .rental-homzen .airea-catalogue-search label { min-width: 0; flex-basis: 100%; }
    .rental-homzen-page .rental-homzen .rental-hero-photo { object-position: 20% center; }
    .rental-homzen-page .rental-homzen .rental-hero .overlay { background: rgba(1,35,84,.56); opacity: 1; }
}

/* Shared UX rules applied after legacy component rules. */
.airea-extra-filters { margin:16px 0; padding:16px; border:1px solid #D6DADF; border-radius:12px; background:#fff; }
.airea-extra-filters summary { min-height:44px; cursor:pointer; color:#023B86; font-weight:600; }
.airea-extra-filter-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin-top:16px; }
.airea-extra-filter-grid label { min-width:0; font-size:.875rem; }
.airea-extra-filter-grid input,.airea-extra-filter-grid select { width:100%; min-height:44px; margin-top:8px; border:1px solid #D6DADF; border-radius:8px; padding:8px; font:inherit; }
.airea-extra-filters p { font-size:.875rem; color:#52657B; margin-top:16px; }
@media(max-width:767px) { .airea-extra-filter-grid { grid-template-columns:1fr; } }
.rental-property-terms h2 { font-size:1.375rem; line-height:1.5; }
.rental-property-terms dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.rental-property-terms dt { color:#52657B; font-size:.875rem; }
.rental-property-terms dd { margin:4px 0 0; font-size:1rem; overflow-wrap:anywhere; }
.rental-property-terms p { margin-top:20px; color:#52657B; line-height:1.7; }
@media(max-width:767px) { .rental-property-terms dl { grid-template-columns:1fr; } }
.native-catalogue-intro { padding-top:32px; padding-bottom:24px; }
.native-catalogue-intro h1 { font-size:clamp(1.75rem,3vw,2.5rem); line-height:1.5; }
.native-catalogue-intro p { margin-top:12px; line-height:1.8; }
.airea-catalogue-modes { display:flex; flex-wrap:wrap; gap:8px; margin:20px 0; }
.airea-catalogue-modes a { display:inline-flex; align-items:center; min-height:44px; padding:8px 16px; border:1px solid #D6DADF; border-radius:24px; color:#023B86; }
.airea-catalogue-modes a[aria-current] { background:#023B86; color:#fff; }
.airea-map-attribution { font-size:.875rem; padding:8px 16px; background:#fff; margin:0; }
.airea-map-attribution a { color:#023B86; text-decoration:underline; }
.airea-native-page .flat-map #map { z-index:0; }
.airea-native-page .box-filter-tab > .d-flex { flex-wrap:wrap; max-width:100%; }
.airea-native-page .box-filter-tab .nice-select { max-width:100%; }
.airea-native-page #header .nav-outer { flex:1; min-width:0; margin-inline:20px; }
.airea-native-page #header .navigation { display:flex; justify-content:center; flex-wrap:nowrap; gap:16px; }
.airea-native-page #header .navigation > li { margin:0; padding:0; }
.airea-native-page #header .navigation > li > a { white-space:nowrap; font-size:13px; padding-block:16px; }
.airea-native-page #header .header-account { flex-shrink:0; }
.airea-native-page #header .header-account .tf-btn { white-space:nowrap; padding-inline:20px; }
.airea-native-page .flat-map { position:relative; }
.airea-native-page .airea-map-attribution { position:absolute; top:8px; right:8px; max-width:calc(100% - 64px); z-index:1; border-radius:6px; }
.rental-homzen-page #header .header-account { align-items:center; gap:16px; }
.airea-agent-entry { display:inline-flex; align-items:center; min-height:44px; color:#023B86; font-weight:600; white-space:nowrap; }
.airea-mobile-agent-links { padding:16px; display:grid; gap:8px; }
.airea-mobile-agent-links a { display:flex; align-items:center; min-height:44px; color:#023B86; }
.agent-auth-intro { padding-top:32px; text-align:center; }
.agent-auth-intro h1 { font-size:clamp(1.75rem,3vw,2.5rem); line-height:1.5; }
.agent-auth-intro p { margin:12px auto 0; max-width:680px; line-height:1.8; }
.agent-auth-intro a { color:#023B86; text-decoration:underline; }
.airea-agent-page .auth-card { background:#EBF3FA!important; border-radius:16px; }
.airea-agent-page .auth-card .card-body { padding:24px!important; }
.airea-agent-page .auth-card input { min-height:48px; }
.airea-agent-page .auth-card input[type=checkbox] { min-height:0; }
.rental-homzen-page .rental-homzen .airea-property-search { display:block; padding:16px; background:#fff; border:1px solid #D6DADF; border-radius:16px; }
.airea-search-main { display:flex; align-items:center; gap:16px; }
.airea-search-rent { display:flex; align-items:center; justify-content:center; padding:12px 16px; min-height:48px; color:#023B86; font-weight:600; border-right:1px solid #D6DADF; }
.rental-homzen-page .rental-homzen .airea-search-main .airea-search-query { min-width:0; flex:1 1 0; margin:0; }
.airea-search-label { position:absolute; width:1px; height:1px; padding:0; margin:-1px; clip:rect(0,0,0,0); overflow:hidden; white-space:nowrap; }
.airea-search-input { display:flex; align-items:center; gap:10px; }
.airea-search-input svg { width:22px; height:22px; flex-shrink:0; fill:none; stroke:#52657B; stroke-width:1.7; }
.rental-homzen-page .rental-homzen .airea-search-input input { min-width:0; flex:1; margin:0; border:0; background:#fff!important; color:#15283B; padding:12px 8px; font-size:1rem; }
.airea-search-filters { display:flex; align-items:start; flex-wrap:wrap; gap:12px; padding-top:16px; margin-top:12px; border-top:1px solid #D6DADF; }
.airea-price-filter { position:relative; }
.airea-price-filter summary { display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:48px; padding:10px 16px; border:1px solid #D6DADF; border-radius:24px; color:#15283B; font-size:1rem; cursor:pointer; list-style:none; }
.airea-price-filter summary::-webkit-details-marker { display:none; }
.airea-price-filter summary:focus-visible { outline:3px solid #023B86; outline-offset:4px; }
.airea-price-filter[open] summary { border-color:#023B86; background:#EBF3FA; }
.airea-price-panel { padding:16px; margin-top:12px; max-width:280px; border:1px solid #D6DADF; border-radius:12px; background:#fff; }
.rental-homzen-page .rental-homzen .airea-price-panel label { min-width:0; margin:0; font-size:.875rem; }
.rental-homzen-page .rental-homzen .airea-price-panel p { font-size:.875rem; color:#52657B; margin:12px 0; }
.airea-price-panel button { min-height:44px; width:100%; background:#023B86; color:#fff; border:0; border-radius:8px; padding:10px 16px; }
.rental-homzen-page .rental-homzen .airea-bedroom-filter { min-width:0; flex:0 1 auto; margin:0; }
.airea-bedroom-filter select { min-height:48px; max-width:100%; border:1px solid #D6DADF; border-radius:24px; padding:10px 32px 10px 16px; background:#fff; color:#15283B; font:inherit; }
.airea-bedroom-filter select:focus-visible { outline:3px solid #023B86; outline-offset:4px; }
.rental-homzen-page .airea-property-search .catalogue-search-help { margin-top:12px; }
@media(max-width:767px) { .airea-search-main { gap:8px; flex-wrap:wrap; } .airea-search-rent { padding:8px; } .rental-homzen-page .airea-search-main > button { flex-basis:100%; } .airea-search-filters { gap:8px; } .airea-price-filter { max-width:100%; } }
.rental-homzen-page .rental-hero .airea-catalogue-search { max-width:960px; margin:28px auto 12px; background:#fff; color:#15283B; box-shadow:0 8px 24px #01235424; text-align:left; }
.rental-homzen-page .rental-hero .airea-catalogue-search .catalogue-search-help { color:#52657B; }
.airea-budget-shortcuts { display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin:12px 0 24px; font-size:.875rem; color:#52657B; }
.airea-budget-shortcuts a { display:inline-flex; align-items:center; min-height:44px; padding:8px 14px; border:1px solid #D6DADF; border-radius:24px; color:#023B86; background:#fff; }
.rental-hero .airea-budget-shortcuts { justify-content:center; color:#fff; }
.airea-listing-media { position:relative; }
.airea-listing-media > button { position:absolute; top:50%; transform:translateY(-50%); display:grid; place-items:center; min-width:44px; min-height:44px; padding:0; border:1px solid #D6DADF; border-radius:50%; background:#fff; color:#023B86; font-size:30px; line-height:1; box-shadow:0 2px 8px #15283B26; }
.airea-card-photo-prev { left:12px; }
.airea-card-photo-next { right:12px; }
.rental-homzen-page .airea-listing-summary { display:flex; flex-direction:column; gap:8px; }
.airea-listing-summary .airea-listing-pricing { order:-1; }
.rental-homzen-page .airea-listing-price,.rental-homzen-page .airea-unit-price { text-align:left; }
.rental-homzen-page .rental-homzen .consent-banner { position:static; inset:auto; width:100%; max-width:850px; margin:0 auto 24px; padding:24px; border:1px solid #D6DADF; border-radius:12px; background:#EBF3FA; box-shadow:none; z-index:auto; text-align:left; }
.rental-homzen-page .rental-homzen .consent-banner h2 { font-size:1.125rem; line-height:1.5; margin:0 0 12px; }
.rental-homzen-page .rental-homzen .consent-banner p { font-size:1rem; line-height:1.7; margin:0 0 16px; }
.rental-homzen-page .rental-homzen .consent-banner .consent-note { font-size:.875rem; color:#52657B; }
.rental-homzen-page .rental-homzen .consent-banner .actions { justify-content:flex-start; }
.rental-homzen-page .rental-homzen .consent-banner a { color:#023B86; text-decoration:underline; text-underline-offset:4px; }
.rental-homzen-page .preload { display:none!important; }
.rental-homzen .prose.content-page { max-width:1120px; padding:32px 0 48px; }
.content-breadcrumb { display:flex; flex-wrap:wrap; align-items:center; gap:12px; color:#52657B; font-size:.875rem; margin-bottom:24px; }
.content-breadcrumb a { display:inline-flex; align-items:center; min-height:44px; min-width:44px; color:#023B86; }
.rental-homzen .content-page-heading { max-width:800px; padding-bottom:28px; border-bottom:1px solid #D6DADF; margin-bottom:32px; }
.rental-homzen .content-page-heading h1 { font-size:clamp(1.75rem,3vw,2.5rem); line-height:1.45; margin:0; }
.content-page-layout { min-width:0; }
.content-page-layout.has-contents { display:grid; grid-template-columns:240px minmax(0,1fr); gap:48px; align-items:start; }
.content-article-body { min-width:0; max-width:800px; }
.rental-homzen .content-article-body p,.rental-homzen .content-article-body li { font-size:1rem; line-height:1.85; }
.rental-homzen .content-article-body .lead { font-size:1.125rem; font-weight:400; color:#24394F; margin-bottom:28px; }
.rental-homzen .content-article-body h2 { font-size:1.375rem; line-height:1.5; margin:32px 0 16px; scroll-margin-top:var(--airea-header-space,140px); }
.content-article-body a:not(.tf-btn) { color:#023B86; text-decoration:underline; text-underline-offset:4px; }
.content-toc { border:1px solid #D6DADF; border-radius:12px; padding:16px; background:#EBF3FA; position:sticky; top:var(--airea-header-space,140px); }
.rental-homzen .content-toc p { font-weight:600; margin-bottom:8px; }
.rental-homzen .content-toc ol { list-style:none; margin:0; padding:0; }
.rental-homzen .content-toc li { margin:0; }
.content-toc a { display:flex; align-items:center; min-height:44px; padding:8px 4px; font-size:.875rem; line-height:1.5; color:#023B86; }
.content-highlight,.content-service-card { padding:24px; border:1px solid #D6DADF; border-radius:12px; margin:24px 0; }
.content-highlight { background:#EBF3FA; }
.rental-homzen .content-highlight h2,.rental-homzen .content-service-card h2 { margin-top:0; }
.rental-homzen .content-highlight p:last-child { margin-bottom:0; }
.content-service-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.content-service-card { margin:0; display:flex; flex-direction:column; }
.content-service-card .content-link { margin-top:auto; }
.content-link,.content-related a { display:inline-flex; align-items:center; min-height:44px; padding:8px 0; }
.content-related,.content-policy-actions { display:flex; flex-wrap:wrap; gap:12px 24px; margin:32px 0 0; padding-top:24px; border-top:1px solid #D6DADF; }
.content-note { padding:16px; background:#EBF3FA; margin-top:24px; }
.rental-homzen .content-steps { list-style:decimal; padding-left:28px; }
.rental-faq-list details { border:1px solid #D6DADF; border-radius:12px; margin-bottom:12px; }
.rental-faq-list summary { padding:20px 24px; cursor:pointer; min-height:48px; color:#023B86; }
.rental-homzen .rental-faq-list summary h2 { display:inline; font-size:1.125rem; margin:0; }
.rental-faq-list details[open] summary { background:#EBF3FA; border-radius:12px 12px 0 0; }
.rental-faq-list details > div { padding:20px 24px; }
.rental-faq-list details > div p { margin:0 0 12px; }
.rental-faq-list summary:focus-visible { outline:3px solid #023B86; outline-offset:4px; }
.content-article-body table { width:100%; table-layout:fixed; border-collapse:collapse; margin:24px 0; font-size:1rem; }
.content-article-body caption { caption-side:top; color:#24394F; text-align:left; padding-bottom:12px; }
.content-article-body th,.content-article-body td { text-align:left; vertical-align:top; border:1px solid #D6DADF; padding:14px; line-height:1.7; overflow-wrap:anywhere; }
.content-article-body th { background:#EBF3FA; }
.content-article-body th:first-child { width:34%; }
@media(max-width:991px) { .content-page-layout.has-contents { grid-template-columns:1fr; gap:24px; } .content-toc { position:static; } }
@media(max-width:767px) { .content-service-grid { grid-template-columns:1fr; } .content-highlight,.content-service-card { padding:20px; } .rental-faq-list summary,.rental-faq-list details > div { padding:16px; } .content-article-body th,.content-article-body td { padding:10px; } }
.rental-homzen-page .airea-listing h3 a { display:flex; align-items:center; min-height:44px; }
.rental-homzen-page .pagination a { display:inline-flex; align-items:center; justify-content:center; min-height:48px; min-width:48px; padding:8px 16px; border:1px solid #D6DADF; border-radius:8px; }
.rental-homzen-page .pagination { align-items:center; }
.rental-homzen-page .text-button { min-height:44px; padding:8px; }
.rental-homzen-page .property-section-nav a,.rental-homzen-page .property-breadcrumb a { min-width:44px; }
.rental-homzen-page #catalogue-results { scroll-margin-top:var(--airea-header-space,140px); }
.line-message-guide { max-width:680px; margin:32px auto; padding:24px; border:1px solid #D6DADF; border-radius:12px; }
.line-message-guide h2 { font-size:1.25rem; margin-bottom:12px; }
.line-message-guide blockquote { margin:20px 0; padding:20px; background:#EBF3FA; border-left:3px solid #023B86; font-size:1rem; line-height:1.8; color:#15283B; }
.line-message-guide .property-copy-status { margin-top:12px; }
.rental-homzen-page .rental-skip { transition:none; }
html.airea-metrics-decided .consent-banner { display:none; }
.rental-homzen-page .consent-banner[hidden] { display:none!important; }
.property-all-photos { display:inline-flex; align-items:center; justify-content:center; gap:8px; }
.property-all-photos svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.5; }
.rental-homzen-page .airea-no-photo { color:#52657B; }
.rental-homzen-page .rental-homzen .rental-hero .overlay { background:rgba(1,35,84,.78); }
.rental-line-footer nav a,.rental-line-footer-bottom a { display:inline-flex; align-items:center; min-height:44px; }
.rental-homzen .property-section .property-missing-info { padding:16px; background:#EBF3FA; border-radius:8px; font-size:.875rem; color:#52657B; margin-top:24px; }
.rental-homzen-page .rental-homzen .rental-hero h1 { font-size:clamp(1.75rem,3.5vw,3rem); line-height:1.45; }
.rental-homzen-page .rental-homzen .rental-hero-caption { font-size:.8125rem; line-height:1.6; }
.rental-homzen-page .airea-listing-price { font-size:clamp(1.5rem,2vw,1.75rem); }
.rental-homzen-page .airea-listing-price span { font-size:.875rem; }
.rental-homzen-page .property-copy-row button { font-size:.875rem; }
.rental-homzen .catalogue-search-help { flex-basis:100%; font-size:.875rem; line-height:1.6; color:#52657B; margin:0; }
.rental-homzen-page { --airea-primary:#023B86; --airea-surface:#EBF3FA; --airea-text:#15283B; --airea-muted:#52657B; background:#fff; }
.rental-homzen-page #rental-main { font-size:1rem; line-height:1.7; }
.rental-homzen-page .rental-content-container { overflow-wrap:anywhere; }
.rental-homzen-page .tf-btn { min-height:48px; white-space:normal; line-height:1.5; }
.rental-homzen-page a,.rental-homzen-page button,.rental-homzen-page input { scroll-margin-block:var(--airea-header-space,140px) calc(var(--airea-contact-space,64px) + 16px); }
.rental-homzen-page .rental-homzen [hidden] { display:none!important; }
.rental-homzen-page .rental-homzen a:focus-visible,.rental-homzen-page .rental-homzen button:focus-visible,.rental-homzen-page .rental-homzen input:focus-visible { outline:3px solid #023B86; outline-offset:4px; }
.rental-homzen-page .rental-homzen .rental-hero { height:auto; max-height:none; }
.rental-homzen-page #header a[aria-current] { text-decoration:underline; text-underline-offset:6px; }
.rental-homzen-page .search a { display:inline-flex; align-items:center; min-height:44px; color:var(--airea-primary); }
.catalogue-summary { display:flex; flex-wrap:wrap; align-items:center; gap:12px; margin-bottom:24px; }
.catalogue-summary p { margin:0; }
.catalogue-filter { display:inline-flex; padding:6px 12px; border:1px solid #D6DADF; border-radius:20px; font-size:14px; color:#24394F; }
.empty-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:24px; }
.property-photo { position:relative; }
.airea-image-fallback { position:absolute; inset:0; display:grid; place-items:center; padding:20px; background:#EBF3FA; color:#475569; font-size:14px; line-height:1.6; text-align:center; }
.property-viewer-image { position:relative; min-width:0; width:100%; height:100%; }
.property-photo-feedback { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:16px; text-align:center; padding:12px; }
.property-photo-feedback p { color:#fff; margin:0; font-size:1rem; line-height:1.7; }
.property-copy-row { display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; margin:16px 0 8px; }
.property-copy-row button { min-height:44px; padding:8px 12px; border:1px solid #D6DADF; border-radius:8px; background:#fff; color:#023B86; font-size:14px; }
.rental-homzen .property-copy-status { color:#52657B; font-size:14px; line-height:1.6; margin:0 0 12px; }
.property-copy-status:empty { display:none; }
.rental-homzen .property-section p,.rental-homzen .property-details-grid dd { font-size:1rem; line-height:1.7; }
.rental-homzen .property-details-grid dt { font-size:.875rem; line-height:1.6; }
.rental-homzen .airea-price-note,.rental-homzen .airea-listing-reference { font-size:.8125rem; }
.rental-homzen .airea-listing-specs,.rental-homzen .airea-listing-location { font-size:.875rem; }
.rental-homzen .airea-listing h3,.rental-homzen .property-agent h2 { font-size:1.125rem; }
.rental-homzen .property-overview h1 { font-size:clamp(1.5rem,2.5vw,1.75rem); }
.rental-homzen .airea-listing-price { white-space:normal; overflow-wrap:normal; }
.property-breadcrumb a { display:inline-flex; align-items:center; min-height:44px; }
.property-section { scroll-margin-top:var(--airea-header-space,140px); }
@media(max-width:1199px) { .rental-homzen-page #header .nav-outer,.rental-homzen-page #header .header-account { display:none; } .rental-homzen-page #header .mobile-nav-toggler { display:flex; } }
@media(max-width:767px) {
 .rental-homzen-page { padding-bottom:calc(var(--airea-contact-space,64px) + 16px); }
 .rental-homzen-page .rental-homzen .search { padding:20px 16px; }
 .rental-homzen-page .rental-homzen .search label { min-width:0; flex-basis:100%; }
 .rental-homzen-page .rental-homzen .property-viewer-stage { grid-template-columns:44px minmax(0,1fr) 44px; }
 .rental-homzen-page .rental-homzen .property-viewer-stage button { min-width:44px; }
 .rental-homzen-page .rental-homzen .airea-listing-summary { grid-template-columns:1fr; }
 .rental-homzen-page .airea-listing-price,.rental-homzen-page .airea-unit-price { text-align:left; }
 .rental-homzen-page .property-section-nav { column-gap:20px; }
}
@media(prefers-reduced-motion:reduce) { .rental-homzen-page *,.rental-homzen-page *::before,.rental-homzen-page *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; } html { scroll-behavior:auto!important; } }

.airea-currency{padding:14px 0;color:#40576a;font-size:13px}.airea-currency form{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.airea-currency select,.airea-currency button{min-height:44px;border:1px solid #b9c8d3;border-radius:8px;background:#fff;color:#173c58;padding:8px 12px}.airea-currency p{font-size:12px;line-height:1.6;margin-top:8px}.airea-currency a{text-decoration:underline}.airea-original-price{font-size:12px;color:#526778}

/* Keep currency controls in the search surface, with no duplicate footer control. */
.rental-homzen-page .airea-search-panel{background:#fff;border:1px solid #d6dadf;border-radius:16px;padding:16px;color:#15283b;margin-bottom:24px;text-align:left}
.rental-homzen-page .rental-hero .airea-search-panel{max-width:960px;margin:28px auto 12px;box-shadow:0 8px 24px #01235424}
.rental-homzen-page .airea-search-panel .airea-property-search{padding:0;border:0;border-radius:0;box-shadow:none;margin:0;max-width:none}
.rental-homzen-page .airea-search-panel .airea-currency{border-top:1px solid #d6dadf;margin-top:12px;padding:12px 0 0;color:#40576a}
.rental-homzen-page .airea-currency form{gap:8px}.rental-homzen-page .airea-currency form label{margin:0;font-size:13px;line-height:1.5;color:#24394f}
.rental-homzen-page .airea-currency select,.rental-homzen-page .airea-currency button{font-size:13px;line-height:1.4}
.rental-homzen-page .airea-rate-details{font-size:12px;line-height:1.6;margin-top:8px;color:#40576a}
.rental-homzen-page .airea-rate-details summary{cursor:pointer;min-height:32px;display:list-item;margin-left:16px;list-style:disclosure-closed}
.rental-homzen-page .airea-rate-details[open] summary{list-style:disclosure-open}
.rental-homzen-page .airea-rate-details p{margin:4px 0 8px;color:#40576a;font-size:12px;line-height:1.6}
.rental-homzen-page .airea-rate-source{display:inline-block;color:#40576a;font-size:11px;line-height:1.6;text-decoration:underline}
.rental-homzen-page .airea-native-currency{margin-bottom:20px}.rental-homzen-page .airea-native-currency .airea-currency{border:1px solid #d6dadf;border-radius:12px;background:#fff;padding:12px 16px}
