.listing-page{background:#f6f9fc}.listing-hero{position:relative;isolation:isolate;color:white;background:#08334f;overflow:hidden}.listing-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#063553f5,#075482c9 55%,#082b4b33),url('/assets/home/mediterranean-1536.webp') center 52%/cover}.listing-hero>.container{padding-block:28px 38px}.listing-breadcrumb{display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:15px;color:#d3e6f2;margin-bottom:18px}.listing-breadcrumb a{text-decoration:underline;text-underline-offset:4px}.listing-hero h1{font-size:clamp(29px,3.7vw,44px);letter-spacing:-.035em;margin-bottom:14px}.listing-hero p{font-size:17px;max-width:720px;margin:0;line-height:1.7}.listing-container{padding-block:25px 45px}.listing-category-strip{display:flex;gap:12px;overflow-x:auto;padding-bottom:20px;margin-bottom:5px}.listing-category{display:flex;gap:12px;align-items:center;border:1px solid #d5e0e9;border-radius:10px;background:white;padding:15px 20px;min-width:160px;flex-shrink:0;box-shadow:0 4px 14px #17394e05;font-size:16px;font-weight:650;line-height:1.35}.listing-category svg{color:#b17c2e;width:27px;height:27px}.listing-category small{display:block;font-size:15px;color:#526e83;font-weight:400;margin-top:5px}.listing-category.is-selected{background:#082d49;border-color:#082d49;color:white}.listing-category.is-selected svg{color:#edbd72}.listing-category.is-selected small{color:#d0e0ec}.listing-layout{display:grid;grid-template-columns:285px minmax(0,1fr);gap:28px;align-items:start}.listing-filter-panel{border:1px solid #d9e4ed;border-radius:12px;background:white;box-shadow:0 5px 20px #15384e06;overflow:hidden}.listing-filter-panel>summary{display:flex;align-items:center;gap:10px;padding:20px;font-size:20px;font-weight:750;cursor:pointer;border-bottom:1px solid #e0e8ef;list-style:none}.listing-filter-panel>summary::-webkit-details-marker{display:none}.listing-filter-panel>summary>span{margin-left:auto;font-size:22px}.listing-filter-panel[open]>summary>span{transform:rotate(180deg)}.listing-page .listing-filters{display:flex;flex-direction:column;gap:20px;border:0;border-radius:0;padding:20px;background:white;margin:0}.listing-filters .listing-clear{font-size:15px;align-self:flex-end}.listing-page .listing-filters label{font-size:15px;font-weight:600;color:#263f53;line-height:1.45;display:grid;gap:8px}.listing-page .listing-filters select,.listing-page .listing-filters input,.listing-sort-label select{font-size:15px;min-height:48px;padding:10px 12px;border:1px solid #c5d5e1;border-radius:7px;background:#fff;color:#183950;width:100%;min-width:0;font-weight:400}.listing-two-inputs{display:grid;grid-template-columns:1fr 1fr;gap:10px}.listing-filter-note{font-size:15px;line-height:1.6;color:#526a7e;margin:-5px 0 0}.listing-location-group{padding:16px 0 0;border:0;border-top:1px solid #e0e8ef;margin:0;display:grid;gap:16px;min-width:0}.listing-location-group legend{font-size:17px;font-weight:700;padding:0 10px 0 0}.listing-advanced{border-block:1px solid #e0e8ef;padding-block:15px;display:grid;gap:16px}.listing-advanced>summary{font-weight:700;cursor:pointer;list-style:none}.listing-advanced>summary span{float:right}.listing-advanced[open]>summary{margin-bottom:20px}.listing-advanced label,.listing-advanced .listing-two-inputs{margin-top:16px}.listing-filters>.button{min-height:50px;font-size:16px}.listing-results{min-width:0}.listing-results-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px}.listing-results-toolbar .section-heading{margin:0;flex:1}.listing-results-toolbar h2{font-size:21px;letter-spacing:-.02em;margin:0}.listing-sort-label{display:flex;align-items:center;gap:12px;font-size:15px;color:#456176}.listing-sort-label select{width:210px}.listing-results-toolbar form{display:contents}.js-public #listing-sort-form button{display:none}.listing-active-filters{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 20px}.listing-active-filters a{padding:7px 11px;border:1px solid #b8cddc;border-radius:7px;font-size:15px;background:#ecf3f8;display:flex;align-items:center;gap:12px;overflow-wrap:anywhere}.listing-active-filters a>span:first-child{font-size:19px;line-height:1;color:#5c7385}.listing-page .listing-property-grid{grid-template-columns:1fr;gap:20px}.listing-property-grid .property-card{display:grid;grid-template-columns:32% minmax(0,1fr);border-color:#d9e4ec;box-shadow:0 5px 18px #12385106;transition:border-color .2s,box-shadow .2s}.listing-property-grid .property-card:hover{border-color:#b3cadb;box-shadow:0 8px 25px #143e5412}.listing-property-grid .property-card-media{aspect-ratio:auto;min-height:250px;height:100%}.listing-property-grid .property-card-media>a{position:absolute;inset:0}.listing-property-grid .property-card-media img{height:100%;object-fit:cover}.listing-property-grid .image-placeholder{height:100%}.listing-property-grid .property-card-body{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 20px;align-content:center;padding:23px;min-width:0}.listing-property-grid .property-card-body>small{font-size:15px;grid-column:1/-1;color:#526d80}.listing-property-grid .property-card h3{font-size:20px;line-height:1.4;margin:0;min-height:0;grid-column:1;display:block;overflow:visible;overflow-wrap:anywhere}.listing-property-grid .property-location{font-size:15px;margin:0;grid-column:1}.listing-property-grid .property-price{font-size:22px;line-height:1.4;margin:0;grid-column:2;grid-row:2/4;align-self:start;text-align:right;max-width:220px;overflow-wrap:anywhere}.listing-property-grid .property-specs{grid-column:1/-1;font-size:15px;gap:15px;margin-top:6px}.listing-property-grid .property-specs svg{width:18px;height:18px}.listing-excerpt{grid-column:1/-1;font-size:17px;line-height:1.65;color:#4b667b;margin:7px 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.listing-detail-link{grid-column:1/-1;justify-self:end;font-size:15px;min-height:44px;margin-top:5px}.listing-property-grid .property-photo-badges{gap:5px}.listing-property-grid .property-badge{font-size:15px;padding:5px 8px}.listing-empty{padding:45px 25px;border:1px dashed #bacfdd;border-radius:12px;background:white;text-align:center;margin-top:20px}.listing-empty>div{display:inline-grid;place-items:center;background:#eef4f8;color:#467794;width:70px;height:70px;border-radius:50%;margin-bottom:20px}.listing-empty h3{font-size:22px}.listing-empty p{font-size:17px;color:#506c80;line-height:1.7}.listing-results .pagination{flex-wrap:wrap;justify-content:center;gap:9px}.listing-results .pagination .button{font-size:15px;min-width:44px;padding:10px 13px}.listing-page .contact-band{margin-top:0}.listing-page .public-error{font-size:17px;line-height:1.65}.listing-filters select:disabled{background:#f2f5f8;color:#6b7e8d}
@media(max-width:1200px){.listing-layout{grid-template-columns:260px minmax(0,1fr);gap:20px}.listing-property-grid .property-card{grid-template-columns:36% minmax(0,1fr)}.listing-property-grid .property-card-body{grid-template-columns:1fr;padding:20px}.listing-property-grid .property-price{grid-column:1;grid-row:auto;text-align:left;max-width:none}.listing-property-grid .property-card h3,.listing-property-grid .property-location{grid-column:1}}
@media(max-width:900px){.listing-layout{grid-template-columns:1fr;gap:22px}.listing-filter-panel>summary{font-size:19px;padding:17px 20px}.listing-page .listing-filters{display:grid;grid-template-columns:1fr 1fr;gap:20px}.listing-filters .listing-clear,.listing-filters .listing-location-group,.listing-filters .listing-filter-note,.listing-filters .listing-advanced,.listing-filters>.button{grid-column:1/-1}.listing-filters .listing-clear{justify-self:end}.listing-location-group{grid-template-columns:repeat(3,minmax(0,1fr))}.listing-property-grid .property-card{grid-template-columns:35% minmax(0,1fr)}.listing-property-grid .property-card-body{grid-template-columns:minmax(0,1fr) auto}.listing-property-grid .property-price{grid-column:2;grid-row:2/4;text-align:right;max-width:220px}.listing-hero>.container{padding-block:23px 30px}}
@media(max-width:600px){.listing-page .listing-filters{grid-template-columns:1fr}.listing-location-group{grid-template-columns:1fr}.listing-property-grid .property-card{grid-template-columns:1fr}.listing-property-grid .property-card-media{aspect-ratio:1.55;min-height:0}.listing-property-grid .property-card-body{grid-template-columns:1fr;gap:10px;padding:20px}.listing-property-grid .property-price{grid-column:1;grid-row:auto;text-align:left;max-width:none;font-size:23px}.listing-property-grid .property-card h3{font-size:21px}.listing-detail-link{justify-self:stretch;width:100%}.listing-results-toolbar{align-items:flex-start}.listing-sort-label{width:100%;justify-content:space-between}.listing-sort-label select{width:65%;max-width:260px}.listing-category{min-width:145px;padding:13px 16px}.listing-hero h1{font-size:31px}.listing-breadcrumb{font-size:15px;gap:8px}.listing-active-filters a{max-width:100%}.listing-empty{padding:30px 18px}.listing-results .pagination .button{padding:9px}}
/* Native, accessible multiple-choice filters. */
.listing-checkbox-section{border-top:1px solid #e0e8ef;padding-top:18px;min-width:0;grid-column:1/-1}.listing-checkbox-section>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;list-style:none;font-size:17px;font-weight:750;color:#16364e}.listing-checkbox-section>summary::-webkit-details-marker{display:none}.listing-checkbox-section>summary>span{font-size:19px}.listing-checkbox-section:not([open])>summary>span{transform:rotate(180deg)}.listing-checkbox-section[open]>summary{margin-bottom:14px}.listing-all-check{font:inherit;font-size:15px;border:1px solid #b5c9d8;background:#f2f7fb;color:#173b56;border-radius:7px;min-height:40px;padding:7px 13px;margin-bottom:12px}.listing-all-check.is-all{background:#0b304d;color:#fff;border-color:#0b304d}.listing-check-list{display:grid;gap:3px}.listing-page .listing-filters label.listing-check{display:flex;align-items:center;gap:10px;min-height:43px;padding:6px 2px;cursor:pointer;font-size:15px;font-weight:400;color:#2a455b;line-height:1.45}.listing-page .listing-filters .listing-check input{appearance:auto;accent-color:#0a304d;width:20px;height:20px;min-height:20px;padding:0;margin:0;flex:0 0 20px;cursor:pointer}.listing-check>span{min-width:0;overflow-wrap:anywhere}.listing-check small{margin-left:auto;color:#5a7489;font-size:15px;padding-left:5px}.listing-check:has(input:checked)>span{font-weight:700;color:#092c46}.listing-region-checks{max-height:360px;overflow-y:auto;padding-right:5px;scrollbar-width:thin}.listing-feature-checks{max-height:330px;overflow-y:auto;padding-right:5px;scrollbar-width:thin}.listing-page .listing-region-checks label[data-location-indent="0"]{background:#f1f6fa;border-radius:6px;padding-left:6px;font-weight:700}.listing-page .listing-region-checks label[data-location-indent="1"]{padding-left:12px;font-weight:600}.listing-page .listing-region-checks label[data-location-indent="2"]{padding-left:24px}.listing-region-search{margin-bottom:12px}.listing-room-options{display:flex;flex-wrap:wrap;gap:8px}.listing-page .listing-filters label.listing-room-chip{position:relative;padding:0;min-height:42px;display:inline-flex;flex:0 0 auto}.listing-page .listing-filters .listing-room-chip input{position:absolute;width:100%;height:100%;inset:0;opacity:0;z-index:1;cursor:pointer}.listing-room-chip>span{display:inline-flex;align-items:center;justify-content:center;min-width:55px;min-height:42px;padding:8px 11px;border:1px solid #c4d4e0;background:#fff;border-radius:7px;font-size:15px}.listing-room-chip:has(input:checked)>span{background:#0b304d;color:white!important;border-color:#0b304d}.listing-room-chip:has(input:focus-visible)>span{outline:3px solid #bf8a38;outline-offset:3px}.listing-region-search input{font-size:15px}.listing-check[hidden]{display:none!important}
@media(max-width:900px){.listing-checkbox-section{grid-column:auto}.listing-region-checks{max-height:300px}.listing-feature-checks{max-height:280px}}
@media(max-width:600px){.listing-checkbox-section{grid-column:1/-1}}
/* Roomier filter column and consistent disclosure cards. */
.listing-layout{grid-template-columns:335px minmax(0,1fr);gap:28px}
.listing-filter-panel{border-color:#cbdce8;box-shadow:0 8px 28px #12354b0a;border-radius:15px}
.listing-filter-panel>summary{background:linear-gradient(115deg,#082a45,#104568);color:#fff;border-bottom:0;padding:21px 22px;min-height:72px}
.listing-filter-panel>summary>svg{color:#e8bb76;width:24px;height:24px}
.listing-filter-panel>summary>span{display:grid;place-items:center;width:32px;height:32px;border:1px solid #a7c2d080;border-radius:9px;background:#ffffff12;line-height:1}
.listing-page .listing-filters{padding:18px;gap:14px}
.listing-filters .listing-clear{padding:5px 3px;margin-bottom:2px}
.listing-page .listing-filter-section{border:1px solid #d0dfe9;border-radius:11px;padding:0;overflow:hidden;background:white;display:block;grid-column:1/-1}
.listing-filter-section>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:59px;padding:15px 16px;margin:0!important;background:#f5f8fb;font-size:17px;font-weight:700;line-height:1.45;color:#12354e;list-style:none;cursor:pointer;transition:background .18s}
.listing-filter-section>summary:hover{background:#eaf2f8}
.listing-filter-section[open]{border-color:#b5ccd9}
.listing-filter-section[open]>summary{background:linear-gradient(100deg,#edf4f9,#f9fbfd);border-bottom:1px solid #d9e5ed;box-shadow:inset 3px 0 #c99c51}
.listing-filter-section>summary>span,.listing-filter-section:not([open])>summary>span,.listing-filter-section[open]>summary>span{display:grid;place-items:center;flex:0 0 28px;width:28px;height:28px;border:1px solid #b9cedd;border-radius:8px;background:white;color:#164563;font-size:0;transform:none;float:none}
.listing-filter-section>summary>span::before{content:"+";font-size:21px;font-weight:400;line-height:1}
.listing-filter-section[open]>summary>span::before{content:"−"}
.listing-filter-section>summary:focus-visible{outline-offset:-4px}
.listing-filter-section>div{padding:16px}
.listing-filter-section .listing-price-body,.listing-filter-section .listing-technical-body{display:grid;gap:16px}
.listing-filter-section .listing-price-body .listing-filter-note{margin:0}
.listing-filter-section .listing-technical-body label,.listing-filter-section .listing-technical-body .listing-two-inputs{margin-top:0}
.listing-filter-section .listing-all-check{margin-bottom:10px}
@media(max-width:1200px){.listing-layout{grid-template-columns:305px minmax(0,1fr);gap:22px}}
@media(max-width:900px){.listing-layout{grid-template-columns:1fr;gap:22px}.listing-page .listing-filters{grid-template-columns:1fr 1fr;padding:16px;gap:14px}.listing-page .listing-filter-section{grid-column:auto}.listing-filter-panel>summary{min-height:66px;padding:17px 20px}.listing-filter-section>div{padding:15px}}
@media(max-width:600px){.listing-page .listing-filters{grid-template-columns:1fr;padding:13px;gap:13px}.listing-page .listing-filter-section{grid-column:1/-1}.listing-filter-section>summary{padding:14px 15px;min-height:58px}.listing-filter-section>div{padding:15px}.listing-filter-panel>summary{font-size:19px}}
.listing-filter-section:not([open])>div{display:none!important}.listing-filter-panel:not([open])>.listing-filters{display:none!important}
/* Property amenities shown below the card description. */
.listing-card-features{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:7px;list-style:none;padding:0;margin:4px 0 7px;min-width:0}
.listing-card-features>li{display:inline-flex;align-items:center;max-width:100%;padding:5px 10px;background:#edf3f8;border:1px solid #dce7ef;border-radius:7px;color:#29485f;font-size:15px;font-weight:600;line-height:1.45;overflow-wrap:anywhere}
.listing-card-features>.listing-card-feature-more{padding:0;background:#fff;border-color:#b7ccdc}
.listing-card-feature-more>a{display:inline-flex;padding:5px 11px;min-height:34px;align-items:center;color:#174f73}
.listing-card-feature-more>a:hover{background:#e7f0f7;border-radius:6px}
@media(max-width:600px){.listing-card-features{gap:7px;margin-block:5px}.listing-card-features>li{font-size:15px;padding:5px 9px}.listing-card-features>.listing-card-feature-more{padding:0}}
/* Keep complete feature chips on exactly one row. */
.listing-card-features{flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;max-width:100%;width:100%;white-space:nowrap;scrollbar-width:thin}
.listing-card-features.is-fitted{overflow:hidden}
.listing-card-features>li{flex:0 0 auto;white-space:nowrap;max-width:none;overflow-wrap:normal}
.listing-card-features>li[hidden]{display:none!important}
/* Give the listing cover more room without changing the home cards. */
.listing-property-grid .property-card{grid-template-columns:38% minmax(0,1fr)}
.listing-property-grid .property-card-media{min-height:280px}
@media(max-width:1200px){.listing-property-grid .property-card{grid-template-columns:40% minmax(0,1fr)}}
@media(max-width:900px){.listing-property-grid .property-card{grid-template-columns:38% minmax(0,1fr)}.listing-property-grid .property-card-body{grid-template-columns:1fr}.listing-property-grid .property-price{grid-column:1;grid-row:auto;text-align:left;max-width:none}}
@media(max-width:600px){.listing-property-grid .property-card{grid-template-columns:1fr}.listing-property-grid .property-card-media{min-height:0;aspect-ratio:1.45}}

/* Restore previous mobile font sizes; desktop stays unchanged. */
@media(max-width:900px){.listing-breadcrumb{font-size:16px;}.listing-hero h1{font-size:clamp(30px,3.7vw,45px);}.listing-hero p{font-size:18px;}.listing-category{font-size:17px;}.listing-category small{font-size:16px;}.listing-filter-panel>summary{font-size:21px;}.listing-filter-panel>summary>span{font-size:23px;}.listing-filters .listing-clear{font-size:16px;}.listing-page .listing-filters label{font-size:16px;}.listing-page .listing-filters select,.listing-page .listing-filters input,.listing-sort-label select{font-size:16px;}.listing-filter-note{font-size:16px;}.listing-location-group legend{font-size:18px;}.listing-filters>.button{font-size:17px;}.listing-results-toolbar h2{font-size:22px;}.listing-sort-label{font-size:16px;}.listing-active-filters a{font-size:16px;}.listing-active-filters a>span:first-child{font-size:20px;}.listing-property-grid .property-card-body>small{font-size:16px;}.listing-property-grid .property-card h3{font-size:21px;}.listing-property-grid .property-location{font-size:16px;}.listing-property-grid .property-price{font-size:23px;}.listing-property-grid .property-specs{font-size:16px;}.listing-excerpt{font-size:18px;}.listing-detail-link{font-size:16px;}.listing-property-grid .property-badge{font-size:16px;}.listing-empty h3{font-size:23px;}.listing-empty p{font-size:18px;}.listing-results .pagination .button{font-size:16px;}.listing-page .public-error{font-size:18px;}@media(max-width:900px){.listing-filter-panel>summary{font-size:20px;}}@media(max-width:600px){.listing-property-grid .property-price{font-size:24px;}.listing-property-grid .property-card h3{font-size:22px;}.listing-hero h1{font-size:32px;}.listing-breadcrumb{font-size:16px;}}.listing-checkbox-section>summary{font-size:18px;}.listing-checkbox-section>summary>span{font-size:20px;}.listing-all-check{font-size:16px;}.listing-page .listing-filters label.listing-check{font-size:16px;}.listing-check small{font-size:16px;}.listing-room-chip>span{font-size:16px;}.listing-region-search input{font-size:16px;}.listing-filter-section>summary{font-size:18px;}.listing-filter-section>summary>span,.listing-filter-section:not([open])>summary>span,.listing-filter-section[open]>summary>span{font-size:0;}.listing-filter-section>summary>span::before{font-size:22px;}@media(max-width:600px){.listing-filter-panel>summary{font-size:20px;}}.listing-card-features>li{font-size:16px;}@media(max-width:600px){.listing-card-features>li{font-size:16px;}}}
/* Mobile specs: rooms/area first, bathroom/balcony directly beneath. */
@media(max-width:900px){
.listing-property-grid .property-specs{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px 14px;align-items:start}
.listing-property-grid .property-specs>span{min-width:0;overflow-wrap:anywhere;align-items:flex-start;line-height:1.55}
.listing-property-grid .property-specs>span:not([data-count-kind]){grid-row:1}
.listing-property-grid .property-specs>span[data-count-kind="bathrooms"]{grid-column:1;grid-row:2}
.listing-property-grid .property-specs>span[data-count-kind="balconies"]{grid-column:2;grid-row:2}
.listing-property-grid .property-specs svg{margin-top:3px}
}
