/* Photo-led catalogue with a single responsive set of booking filters. */
.villa-search-intro{max-width:1440px;margin:0 auto;padding:38px 32px 28px;color:var(--text,#282f3d)}
.villa-search-intro .search-eyebrow{font-size:.68rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--brand-gold-text,#997b4d);margin:0 0 10px}
.villa-search-intro h1{font-family:Georgia,serif;font-size:clamp(2rem,3.2vw,3rem);font-weight:400;line-height:1.15;letter-spacing:-.03em;margin:0 0 12px;max-width:24ch}
.villa-search-intro p{margin:0;color:var(--text-muted,#616d83);font-size:.95rem}
.villa-search-container{max-width:1440px!important;width:100%;padding:0 32px!important}
.villa-search-layout{display:grid;grid-template-columns:258px minmax(0,1fr);gap:30px;align-items:start;margin-bottom:32px}
.villa-search-sidebar{background:var(--bg,#fbfaf8);color:var(--text,#282f3d);border:1px solid var(--border,#e0e3ea);border-radius:17px;padding:20px;position:sticky;top:calc(var(--header-height,80px) + 12px);max-height:calc(100dvh - var(--header-height,80px) - 30px);overflow:auto;scrollbar-width:thin}
.villa-search-sidebar-head{display:flex;align-items:center;gap:10px;margin-bottom:16px}.villa-search-sidebar-head h2{font:400 1.5rem Georgia,serif;margin:0 auto 0 0}
.villa-search-reset,.villa-search-close{border:0;background:transparent;color:var(--text-muted,#616d83);font-size:.75rem;padding:6px;min-height:44px;cursor:pointer}.villa-search-reset{text-decoration:underline}.villa-search-close{display:none}
.villa-search-sidebar .engine-name-search{display:grid;gap:6px;margin:0 0 16px;padding:0;max-width:none;justify-content:stretch;align-items:stretch}
.villa-search-sidebar .engine-name-search>span{font-size:.75rem}.villa-search-sidebar .engine-name-search #villa-search{max-width:none;width:100%;min-height:44px;background:var(--bg,#fbfaf8);border:1px solid var(--border,#e0e3ea);border-radius:8px;padding:10px;font-size:.875rem;margin:0}
.villa-search-sidebar .engine-bar{display:flex;flex-direction:column;gap:12px;padding:0;margin:0 0 16px;max-width:none;min-width:0;border:0;border-radius:0;box-shadow:none;background:transparent;backdrop-filter:none;transform:none;z-index:auto}
.villa-search-sidebar .engine-bar::before,.villa-search-sidebar .engine-bar::after{display:none}
.villa-search-sidebar .engine-bar__field{width:100%;min-height:56px;border:1px solid var(--border,#e0e3ea);border-radius:8px;padding:9px 10px;background:var(--bg,#fbfaf8);box-shadow:none}
.villa-search-sidebar:has(.engine-panel.is-open){z-index:2001}
.villa-search-sidebar .engine-bar__label{color:var(--text-muted,#616d83);font-size:.68rem;letter-spacing:.04em}.villa-search-sidebar .engine-bar__value{color:var(--text,#282f3d);font-size:.875rem;max-width:100%}
.villa-search-sidebar .engine-bar__go{display:flex;align-items:center;justify-content:center;gap:8px;min-height:46px;border:0;border-radius:8px;padding:10px;background:var(--brand-blue-very-dark,#202c40);color:#fff;box-shadow:none;font-size:.875rem;transform:none}
.villa-search-sidebar .engine-panel{position:fixed!important;z-index:2000;min-width:0;max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);overflow:auto;box-shadow:0 12px 45px #15253a29}
.villa-search-sidebar .engine-panel[data-sidebar-inline]{display:block;position:static!important;width:100%!important;opacity:1;visibility:visible;pointer-events:auto;transform:none;padding:0;border:0;border-radius:0;box-shadow:none;background:transparent;overflow:visible;max-height:none}
.villa-search-sidebar [data-sidebar-inline] .engine-panel__head,.villa-search-sidebar [data-sidebar-inline] .engine-dates__note{display:none}
.villa-search-sidebar .engine-dates__inputs{gap:8px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.villa-search-sidebar .engine-dates__inputs label{min-width:0;color:var(--text,#282f3d);font-size:.7rem}.villa-search-sidebar .engine-dates__inputs input{width:100%;min-width:0;max-width:100%;padding:9px 5px;min-height:44px;font-size:.8rem;background:var(--bg,#fbfaf8);color:var(--text,#282f3d);border-color:var(--border,#e0e3ea)}
.villa-search-sidebar .engine-where__chip{white-space:normal;text-align:left;min-height:44px}.villa-search-sidebar .engine-where__row{flex-wrap:wrap}
.villa-search-sidebar .stay-search-controls{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;margin:0;padding:18px 0;border:0;border-top:1px solid var(--border,#e0e3ea);border-radius:0;background:transparent}
.villa-search-sidebar .stay-search-controls label{min-width:0;font-size:.75rem}.villa-search-sidebar .stay-search-controls input,.villa-search-sidebar .stay-search-controls select,.villa-search-bedrooms select{font-size:.875rem;min-height:44px;border:1px solid var(--border,#e0e3ea);background:var(--bg,#fbfaf8);color:var(--text,#282f3d);border-radius:8px;padding:9px;width:100%}
.villa-search-sidebar #stay-clear{font-size:.75rem;min-height:44px;line-height:1.4}
.villa-search-bedrooms{display:grid;gap:6px;font-size:.75rem;font-weight:600;margin:0;padding:0 0 18px}
.villa-search-collection-fold{border-top:1px solid var(--border,#e0e3ea);padding:14px 0 0}.villa-search-collection-fold>summary{font-size:.85rem;font-weight:600;cursor:pointer;min-height:44px;display:flex;align-items:center}
.villa-search-sidebar .engine-collections{margin:0;padding:0;max-width:none}.villa-search-sidebar .engine-collections__head{display:none}.villa-search-sidebar .engine-collections__scroll{display:grid;grid-template-columns:1fr;gap:7px;overflow:visible;padding:0;mask-image:none;-webkit-mask-image:none}
.villa-search-sidebar .engine-collection{min-width:0;width:100%;padding:9px;min-height:52px}.villa-search-sidebar .engine-collection__body{min-width:0}.villa-search-sidebar .engine-collection__desc{white-space:normal;font-size:.7rem}.villa-search-sidebar .engine-collection__label{font-size:.8rem;white-space:normal}.villa-search-sidebar .engine-collection__icon{width:30px;height:30px;flex-shrink:0}.villa-search-sidebar .engine-collection__count{font-size:.7rem}
.villa-search-results{min-width:0}.villa-search-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 20px}.villa-search-count{font-size:.95rem;margin:0 auto 0 0;color:var(--text,#282f3d)}
.villa-search-sort{display:grid;gap:4px;font-size:.7rem;color:var(--text-muted,#616d83);max-width:210px}.villa-search-sort select{min-height:44px;border:1px solid var(--border,#e0e3ea);border-radius:8px;padding:8px 10px;background:var(--bg,#fbfaf8);color:var(--text,#282f3d);font-size:.8rem;width:100%}
.villa-search-toolbar .engine-actions{margin:0!important;gap:8px!important;justify-content:flex-start!important}.villa-search-toolbar .view-toggle{margin:0}.villa-search-toolbar .view-toggle .pill{min-height:44px;padding:8px 12px;font-size:.8rem}.villa-search-toolbar .mps-currency-toggle,.villa-search-toolbar .mps-voucher-trigger{font-size:.8rem}
.villa-search-results .engine-selected{margin:0 0 14px;padding:9px 12px;max-width:none}.villa-search-extra-filters{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 14px}.villa-search-extra-filters:empty{display:none}.villa-search-extra-filters button{min-height:44px;white-space:normal;line-height:1.4;cursor:pointer}
.villa-search-results .availability-summary[hidden]{display:none!important}.villa-search-results .availability-summary{margin:0 0 18px;font-size:.85rem}.villa-search-results .availability-summary:empty{display:none}
.villa-search-results #villa-grid:not(.villa-grid--list),.villa-search-results #villa-grid-skeleton{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.villa-search-results .villa-card{min-width:0;border-radius:17px;overflow:hidden;box-shadow:0 5px 18px #1a2b4007;border:1px solid var(--border,#e0e3ea)}
.villa-search-results #villa-grid:not(.villa-grid--list) .villa-media{aspect-ratio:16/11;min-height:0}.villa-search-results .villa-body{padding:20px;gap:10px}.villa-search-results .villa-title{font-family:Georgia,serif;font-size:1.4rem;font-weight:400;line-height:1.25}.villa-search-results .villa-stats{font-size:.78rem;line-height:1.7}
.villa-search-results .villa-chips,.villa-search-results .villa-tier-badge,.villa-search-results .villa-family-badge{display:none}.villa-search-results .villa-footer{margin-top:4px;padding-top:14px}.villa-search-results .stay-price>strong{font-size:1.35rem}.villa-search-results .villa-bestfor{font-size:.75rem}
.villa-search-results .villa-grid--list .villa-card{grid-template-columns:minmax(230px,42%) minmax(0,1fr)}.villa-search-results .villa-grid--list .villa-body{padding:22px}.villa-search-results .mps-map-wrap{grid-template-columns:minmax(0,1.2fr) minmax(290px,1fr)}
.villa-search-mobile-toggle{display:none}.villa-search-filter-dialog{padding:0;border:0;background:var(--bg,#fbfaf8);color:var(--text,#282f3d);border-radius:16px;width:min(92vw,500px);max-width:none;max-height:92dvh;overflow:visible}.villa-search-filter-dialog::backdrop{background:#1425378f;backdrop-filter:blur(3px)}
.villa-search-sidebar [hidden],.villa-search-toolbar [hidden],body.engine-active .engine-quick[hidden]{display:none!important}
@media(max-width:1049px){.villa-search-layout{grid-template-columns:1fr}.villa-search-mobile-toggle{display:inline-flex;align-items:center;min-height:46px;border:1px solid var(--border,#e0e3ea);border-radius:9px;background:var(--bg,#fbfaf8);color:var(--text,#282f3d);padding:10px 17px;margin-bottom:18px;font:inherit;cursor:pointer}.villa-search-filter-dialog .villa-search-sidebar{position:static;max-height:92dvh;overflow:auto;border:0;border-radius:16px;padding:22px}.villa-search-close{display:block}.villa-search-filter-dialog .engine-panel:not([data-sidebar-inline]){left:16px!important;right:auto!important;max-width:calc(100vw - 32px)}.villa-search-sidebar .engine-dates__inputs input,.villa-search-sidebar .stay-search-controls input,.villa-search-sidebar .stay-search-controls select{font-size:16px}.villa-search-sort{margin-left:auto}}
@media(max-width:900px){.villa-search-results .mps-map-wrap{grid-template-columns:1fr}.villa-search-intro{padding:30px 22px 23px}.villa-search-container{padding:0 22px!important}}
@media(max-width:650px){.villa-search-intro{padding:25px 16px 22px}.villa-search-intro h1{font-size:2rem}.villa-search-intro p{font-size:.875rem}.villa-search-container{padding:0 16px!important}.villa-search-toolbar{gap:10px}.villa-search-count{width:100%;margin:0}.villa-search-sort{margin:0;max-width:none;flex:1}.villa-search-toolbar .engine-actions{width:100%;flex-wrap:wrap}.villa-search-results #villa-grid:not(.villa-grid--list),.villa-search-results #villa-grid-skeleton{grid-template-columns:1fr;gap:20px}.villa-search-results .villa-body{padding:20px}.villa-search-results .villa-title{font-size:1.4rem}.villa-search-results .villa-grid--list .villa-card{display:block}.villa-search-results .villa-grid--list .villa-media{height:auto;min-height:0;aspect-ratio:16/11}}

.guest-proof{padding:15px 16px;border:1px solid var(--border,#e6dfd2);border-left:3px solid var(--brand-gold,#b9a27f);border-radius:0 12px 12px 0;background:var(--bg-elev,#f8f5ef);color:var(--text,#282f3d);margin:4px 0}
.guest-proof-heading{display:flex;align-items:center;gap:6px;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted,#73644c)}
.guest-proof-heading>span{font-size:1.15rem;line-height:1;color:var(--brand-gold-text,#997b4d)}
.guest-proof-themes{margin:7px 0 8px!important;font-size:.84rem;font-weight:600;line-height:1.5}.guest-proof-themes>span{color:var(--brand-gold-text,#997b4d);padding:0 3px}
.guest-proof blockquote{border:0;margin:0 0 10px;padding:0;font:italic .9rem/1.5 Georgia,serif;color:var(--text,#3b414c)}.guest-proof cite{display:inline;font:400 .65rem/1.4 system-ui,sans-serif;color:var(--text-muted,#616d83);margin-left:7px;white-space:nowrap}
.guest-proof-foot{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:5px 12px;font-size:.65rem;color:var(--text-muted,#616d83)}.guest-proof-foot a{display:inline-flex;align-items:center;min-height:44px;margin:-12px -3px;padding:6px 3px;color:var(--text,#354766);text-underline-offset:3px}
.has-guest-proof .villa-bestfor{display:none!important}.mps-map-card .guest-proof{margin:9px 0 2px;padding:10px 12px}.mps-map-card .guest-proof blockquote{display:none}.mps-map-card .guest-proof-themes{font-size:.75rem}
body.engine-active .villa-search-sidebar .engine-bar{box-shadow:none!important;border:0!important;background:transparent!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
body.engine-active .villa-search-sidebar .engine-bar__field{box-shadow:none;background:var(--bg,#fbfaf8);border:1px solid var(--border,#e0e3ea)!important;border-radius:10px}
body.engine-active .villa-search-sidebar .engine-bar__go{box-shadow:none;min-height:46px!important;background:var(--brand-blue-very-dark,#202c40)!important;border-radius:10px}
.villa-search-sidebar .engine-bar__label{letter-spacing:.06em!important}.villa-search-sidebar .engine-bar__value{font-weight:500!important}
.villa-search-results .villa-family-badge,.villa-search-results .villa-tier-badge{display:none!important}.villa-search-results .villa-tagline:empty{display:none}.villa-search-results .villa-card .villa-title{min-height:0}
.villa-search-results .villa-body{gap:12px}.villa-search-results .villa-stats{font-size:.8rem}.villa-search-results .villa-footer{font-variant-numeric:tabular-nums}
