.listing{display:grid;grid-template-columns:1fr;gap:var(--space-8)}@media (min-width:1280px){.listing--with-map{grid-template-columns:minmax(0,1fr) minmax(320px,440px);gap:var(--space-10);align-items:start}}.listing__map{position:relative;min-height:320px;background:var(--color-bg-alt);border:1px solid var(--color-border);border-radius:var(--radius-xl);overflow:hidden;isolation:isolate;z-index:0}@media (min-width:1280px){.listing--with-map .listing__map{position:sticky;top:calc(var(--nav-height-lg) + var(--space-16));min-height:560px}}.listing__map iframe,.listing__map>div{width:100%;height:100%;min-height:320px;border:0}.hotels-grid{display:grid;grid-template-columns:1fr;gap:var(--space-6)}@media (min-width:768px){.hotels-grid{grid-template-columns:repeat(2,1fr);gap:var(--space-8)}}@media (min-width:1280px){.hotels-grid{grid-template-columns:repeat(3,1fr)}}.listing--with-map .hotels-grid{grid-template-columns:1fr}@media (min-width:768px){.listing--with-map .hotels-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:1280px){.listing--with-map .hotels-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:1600px){.listing--with-map .hotels-grid{grid-template-columns:repeat(3,1fr)}}.listing--map-open .listing__main{display:none}.listing--map-open .listing__map{min-height:70dvh}.listing-search{display:flex;align-items:center;gap:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border-mid);border-radius:var(--radius-md);padding:0 var(--space-4);min-height:52px;margin-bottom:var(--space-6)}.listing-search svg{width:20px;height:20px;color:var(--color-text-muted)}.listing-search input{flex:1;border:0;outline:0;background:#fff0;font-size:var(--text-body-m);padding-block:var(--space-3);color:var(--color-text)}.listing-search input::placeholder{color:var(--color-text-muted)}.listing-empty{padding:var(--space-16) var(--space-8);text-align:center;background:var(--color-bg-alt);border-radius:var(--radius-xl);color:var(--color-text-secondary)}.listing-empty__heading{font-family:var(--font-display);font-size:var(--text-display-s);font-weight:var(--weight-regular);color:var(--color-text);margin-bottom:var(--space-2)}.listing__main{display:flex;flex-direction:column;gap:var(--space-8);min-width:0}.listing__map-toggle{position:fixed;z-index:calc(var(--z-sticky) + 1);right:var(--space-4);bottom:calc(var(--space-4) + env(safe-area-inset-bottom, 0px));box-shadow:var(--shadow-md)}@media (min-width:1280px){.listing--with-map .listing__map-toggle{display:none}.listing--with-map .listing__map-container{display:block!important}}.listing__map-container{display:none;min-height:360px}.hotel-card__price-badge{position:absolute;bottom:var(--space-3);left:var(--space-3);display:inline-flex;flex-direction:column;padding:6px 12px;background:rgb(28 27 25 / .82);color:var(--color-text-inverse);border-radius:var(--radius-md);font-size:var(--text-caption);line-height:1.2;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.hotel-card__price-from{color:rgb(255 255 255 / .7);font-size:10px;letter-spacing:var(--tracking-widest);text-transform:uppercase}.hotel-card__price-value{color:var(--color-brand);font-weight:var(--weight-semibold);font-size:var(--text-body-m)}.hotel-card__amenities{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:0;padding:0;list-style:none}.hotel-card__amenity{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;font-size:var(--text-caption);color:var(--color-text-secondary);background:var(--color-bg-alt);border-radius:var(--radius-pill)}.hotel-card__amenity svg{color:var(--color-brand);flex-shrink:0}.hotel-card__desc{font-size:var(--text-body-s);color:var(--color-text-secondary);line-height:var(--lh-body);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin:0;max-width:none}.filter-bar.scrolled,.hl-filter-bar.scrolled{box-shadow:var(--shadow-sm)}.filter-bar>input[type="hidden"],.filter-bar input[type="hidden"]{display:none}.filter-bar__toggle{display:inline-flex;align-items:center;gap:var(--space-2);padding:10px var(--space-4);min-height:44px;font-family:var(--font-body);font-size:var(--text-body-s);font-weight:var(--weight-semibold);color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border-mid);border-radius:var(--radius-pill);cursor:pointer;align-self:flex-start}.filter-bar__toggle-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;background:var(--color-dark);color:var(--color-text-inverse);border-radius:var(--radius-pill);font-size:11px;font-weight:var(--weight-semibold)}.filter-bar__fields{display:flex;flex-direction:column;gap:var(--space-3);width:100%}.submit-button--fallback{display:none}@media (max-width:767px){.filter-bar__fields{position:absolute;inset-inline:var(--space-4);top:calc(100% + var(--space-2));background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--space-4);max-height:calc(100dvh - var(--nav-height) - 8rem);overflow-y:auto;z-index:calc(var(--z-sticky) + 1);display:none}.filter-bar__fields.is-open{display:flex}.submit-button--fallback{display:inline-flex;justify-content:center}.filter-bar__inner{position:relative}}@media (min-width:768px){.filter-bar__toggle{display:none}.filter-bar__fields{flex:1 1 auto;flex-direction:row;align-items:center;flex-wrap:wrap;gap:var(--space-4)}}.filter-group--field{flex-direction:column;align-items:stretch;gap:4px;overflow:visible;min-width:0}@media (min-width:768px){.filter-group--field{flex-direction:row;align-items:center;gap:var(--space-2);flex:1 1 200px;min-width:0;max-width:340px}.filter-group--field .filter-group__label{flex-shrink:0}.filter-group--field .select{flex:1 1 auto;min-width:0}}.filter-group--field .select{min-height:40px;font-size:var(--text-body-s)}.listing__map .leaflet-container{background:var(--color-bg-alt);font-family:var(--font-body)}.listing__map .leaflet-popup-content-wrapper{border-radius:var(--radius-md);box-shadow:var(--shadow-md)}.listing__map .leaflet-popup-content{font-family:var(--font-body);font-size:var(--text-body-s);color:var(--color-text);line-height:var(--lh-body);margin:var(--space-3) var(--space-4)}.listing__map .leaflet-popup-tip{box-shadow:var(--shadow-sm)}