.HomeReserveWidget-module__Bx1wIq__searchLayer{z-index:0;isolation:isolate;position:relative}
.Loader-module__66xOfG__loader{place-content:center;justify-items:center;gap:var(--space-2);color:var(--text-primary);text-align:center;display:grid}.Loader-module__66xOfG__spinner{width:var(--loader-size,var(--icon-size-lg));height:var(--loader-size,var(--icon-size-lg));margin-bottom:var(--space-2);color:var(--color-accent-500);stroke-width:var(--icon-stroke-small);animation:.85s linear infinite Loader-module__66xOfG__loader-spin}.Loader-module__66xOfG__label{font-size:var(--loader-label-size,var(--type-body-medium-size));font-weight:var(--font-weight-bold);line-height:var(--loader-label-line-height,var(--type-body-medium-line-height))}.Loader-module__66xOfG__description{max-width:38ch;color:var(--text-secondary);font-size:var(--type-body-small-size);line-height:var(--type-body-small-line-height)}.Loader-module__66xOfG__small{--loader-size:var(--icon-size-sm);--loader-label-size:var(--type-body-small-size);--loader-label-line-height:var(--type-body-small-line-height)}.Loader-module__66xOfG__large{--loader-size:var(--icon-size-xl);--loader-label-size:var(--type-h3-size);--loader-label-line-height:var(--type-h3-line-height)}@keyframes Loader-module__66xOfG__loader-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.Loader-module__66xOfG__spinner{animation:none}}
.ApartmentsMap-module__iSeoOa__mapShell{height:var(--apartments-map-height,520px);min-height:var(--apartments-map-height,520px);border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);background:var(--color-brand-100);position:relative;overflow:hidden}.ApartmentsMap-module__iSeoOa__mapShell.ApartmentsMap-module__iSeoOa__mapShellExpanded{z-index:1000;border:0;border-radius:0;width:100vw;height:100dvh;min-height:100dvh;position:fixed;inset:0}.ApartmentsMap-module__iSeoOa__mapShellExpanded .ApartmentsMap-module__iSeoOa__map,.ApartmentsMap-module__iSeoOa__mapShellExpanded .ApartmentsMap-module__iSeoOa__state{height:100%;min-height:100%}.ApartmentsMap-module__iSeoOa__map{width:100%;height:100%;min-height:inherit}.ApartmentsMap-module__iSeoOa__mapShell .ymaps3--control-button:has(.ymaps3--open-maps-button){display:none!important}.ApartmentsMap-module__iSeoOa__expandButton{z-index:5;border:1px solid var(--color-neutral-300);border-radius:var(--radius-sm);background:var(--color-white);width:40px;height:40px;box-shadow:0 4px 14px var(--color-neutral-800-alpha-25);color:var(--text-primary);cursor:pointer;place-items:center;padding:0;transition:background-color .16s,box-shadow .16s;display:grid;position:absolute;top:12px;right:12px}.ApartmentsMap-module__iSeoOa__expandButton:hover{background:var(--color-neutral-100);box-shadow:0 6px 18px var(--color-neutral-800-alpha-25)}.ApartmentsMap-module__iSeoOa__expandButton:focus-visible{outline:3px solid var(--color-accent-400);outline-offset:2px}.ApartmentsMap-module__iSeoOa__expandButton svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;width:20px;height:20px}.ApartmentsMap-module__iSeoOa__bookingDialog{z-index:2000;background:var(--color-neutral-50);width:100vw;height:100dvh;color:var(--text-primary);isolation:isolate;grid-template-rows:auto minmax(0,1fr);animation:.18s ease-out both ApartmentsMap-module__iSeoOa__booking-dialog-in;display:grid;position:fixed;inset:0}.ApartmentsMap-module__iSeoOa__bookingDialogHeader{z-index:1;border-bottom:1px solid var(--color-neutral-300);background:var(--color-white);min-height:72px;box-shadow:0 4px 16px var(--color-neutral-800-alpha-25);justify-content:space-between;align-items:center;gap:24px;padding:12px 24px;display:flex;position:relative}.ApartmentsMap-module__iSeoOa__bookingDialogHeading{min-width:0}.ApartmentsMap-module__iSeoOa__bookingDialogEyebrow{color:var(--text-muted);font-size:var(--type-body-caption-size);line-height:var(--type-body-caption-line-height);margin-bottom:2px;display:block}.ApartmentsMap-module__iSeoOa__bookingDialogTitle{color:var(--text-heading);font-size:var(--type-h3-size);font-weight:var(--font-weight-bold);line-height:var(--type-h3-line-height);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.ApartmentsMap-module__iSeoOa__bookingDialogClose{border-radius:var(--radius-full);background:var(--color-neutral-100);width:40px;height:40px;color:var(--text-secondary);cursor:pointer;font-family:var(--font-family-base);border:0;flex:0 0 40px;place-items:center;padding:0 0 2px;font-size:28px;line-height:1;transition:background-color .16s,color .16s;display:grid}.ApartmentsMap-module__iSeoOa__bookingDialogClose:hover{background:var(--color-neutral-200);color:var(--text-primary)}.ApartmentsMap-module__iSeoOa__bookingDialogClose:focus-visible{outline:3px solid var(--color-accent-400);outline-offset:2px}.ApartmentsMap-module__iSeoOa__bookingDialogContent{overscroll-behavior:contain;padding:24px;position:relative;overflow:auto}.ApartmentsMap-module__iSeoOa__bookingLoader{z-index:1;min-height:320px;padding:var(--space-5);background:var(--background-card);position:absolute;inset:0}.ApartmentsMap-module__iSeoOa__bookingWidget{width:100%;max-width:var(--container-xl);margin:0 auto}.ApartmentsMap-module__iSeoOa__state{height:100%;min-height:inherit;color:var(--text-muted);text-align:center;place-items:center;padding:24px;display:grid}.ApartmentsMap-module__iSeoOa__markerRoot{isolation:isolate;width:0;height:0;position:relative}.ApartmentsMap-module__iSeoOa__marker{border:2px solid var(--color-neutral-60);background:var(--color-accent-500);cursor:pointer;border-radius:50%;width:18px;height:18px;padding:0;transition:box-shadow .16s,transform .16s;display:block;transform:translate(-50%,-50%);box-shadow:0 8px 20px #10182047}.ApartmentsMap-module__iSeoOa__groupMarker{width:30px;height:30px;color:var(--color-white);font-family:var(--font-family-base);font-size:var(--type-body-caption-size);font-weight:var(--font-weight-bold);border-width:3px;place-items:center;line-height:1;display:grid}.ApartmentsMap-module__iSeoOa__groupMarkerExpanded{background:var(--color-neutral-600);border-width:2px;width:24px;height:24px;font-size:17px}.ApartmentsMap-module__iSeoOa__spiderLeg{z-index:-1;width:var(--spider-radius);border-radius:var(--radius-full);background:var(--color-neutral-500);opacity:.7;height:2px;transform:rotate(var(--spider-angle));transform-origin:0;animation:.18s ease-out both ApartmentsMap-module__iSeoOa__spider-leg-in;animation-delay:var(--spider-delay);position:absolute;top:-1px;left:0}.ApartmentsMap-module__iSeoOa__spiderItem{z-index:1;top:var(--spider-y);left:var(--spider-x);width:0;height:0;animation:.22s ease-out both ApartmentsMap-module__iSeoOa__spider-item-in;animation-delay:var(--spider-delay);position:absolute}.ApartmentsMap-module__iSeoOa__spiderItemSelected{z-index:4}.ApartmentsMap-module__iSeoOa__spiderMarker{width:20px;height:20px}.ApartmentsMap-module__iSeoOa__marker:hover,.ApartmentsMap-module__iSeoOa__markerActive{transform:translate(-50%,-50%)scale(1.2);box-shadow:0 10px 28px #ff4f5f73}.ApartmentsMap-module__iSeoOa__roomMarker{border:1px solid var(--color-neutral-300);border-radius:var(--radius-full);background:var(--color-white);width:auto;min-width:88px;max-width:288px;height:30px;color:var(--text-primary);transform-origin:12px;align-items:center;padding:3px 10px 3px 3px;display:flex;transform:translate(-12px,-50%)}.ApartmentsMap-module__iSeoOa__roomMarker:before{border:2px solid var(--color-neutral-60);background:var(--color-accent-500);content:"";border-radius:50%;flex:0 0 18px;width:18px;height:18px}.ApartmentsMap-module__iSeoOa__roomMarker:hover,.ApartmentsMap-module__iSeoOa__roomMarker.ApartmentsMap-module__iSeoOa__markerActive{transform:translate(-12px,-50%);box-shadow:0 10px 28px #ff4f5f59}.ApartmentsMap-module__iSeoOa__roomMarkerLabel{font-family:var(--font-family-base);font-size:var(--type-body-caption-size);font-weight:var(--font-weight-semibold);text-overflow:ellipsis;white-space:nowrap;margin-left:7px;line-height:1;overflow:hidden}.ApartmentsMap-module__iSeoOa__roomMarkerTitle{opacity:0;max-width:0;font-family:var(--font-family-base);font-size:var(--type-body-caption-size);font-weight:var(--font-weight-semibold);text-overflow:ellipsis;white-space:nowrap;border-left:1px solid #0000;margin-left:0;padding-left:0;line-height:1;transition:max-width .22s,margin-left .22s,padding-left .22s,border-color .22s,opacity .14s;overflow:hidden}.ApartmentsMap-module__iSeoOa__roomMarker:hover .ApartmentsMap-module__iSeoOa__roomMarkerTitle,.ApartmentsMap-module__iSeoOa__roomMarker:focus-visible .ApartmentsMap-module__iSeoOa__roomMarkerTitle,.ApartmentsMap-module__iSeoOa__roomMarker.ApartmentsMap-module__iSeoOa__markerActive .ApartmentsMap-module__iSeoOa__roomMarkerTitle{border-left-color:var(--color-neutral-300);opacity:1;max-width:180px;margin-left:8px;padding-left:8px}.ApartmentsMap-module__iSeoOa__markerCard{border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);background:var(--color-white);width:280px;min-width:0;max-width:calc(100vw - 32px);height:auto;box-shadow:0 16px 36px var(--color-neutral-800-alpha-25);color:var(--text-primary);text-align:left;transform-origin:25px 25px;margin:0;padding:16px;transition:box-shadow .16s;animation:.18s cubic-bezier(.2,.8,.2,1) both ApartmentsMap-module__iSeoOa__marker-card-in;display:block;position:relative;transform:translate(-25px,-25px)}.ApartmentsMap-module__iSeoOa__markerCardHeader{align-items:center;gap:8px;min-width:0;padding-right:30px;display:flex}.ApartmentsMap-module__iSeoOa__markerCardDot{border:2px solid var(--color-neutral-60);background:var(--color-accent-500);border-radius:50%;flex:0 0 18px;width:18px;height:18px}.ApartmentsMap-module__iSeoOa__markerCard:hover,.ApartmentsMap-module__iSeoOa__markerCard.ApartmentsMap-module__iSeoOa__markerActive{box-shadow:0 16px 40px var(--color-neutral-800-alpha-30);transform:translate(-25px,-25px)}.ApartmentsMap-module__iSeoOa__markerCard:focus-visible{outline:3px solid var(--color-accent-400);outline-offset:3px}.ApartmentsMap-module__iSeoOa__markerCardBody{gap:6px;min-width:0;margin-top:8px;display:grid}.ApartmentsMap-module__iSeoOa__markerCardTitle,.ApartmentsMap-module__iSeoOa__markerCardAddress,.ApartmentsMap-module__iSeoOa__markerCardDetails,.ApartmentsMap-module__iSeoOa__markerCardSleeping,.ApartmentsMap-module__iSeoOa__markerCardDescription{margin:0}.ApartmentsMap-module__iSeoOa__markerCardTitle,.ApartmentsMap-module__iSeoOa__markerCardAddress{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ApartmentsMap-module__iSeoOa__markerCardTitle{min-width:0;color:var(--text-primary);font-size:var(--type-card-title-small-size);font-weight:var(--font-weight-bold);line-height:var(--type-card-title-small-line-height);letter-spacing:var(--type-card-title-small-letter-spacing);flex:1}.ApartmentsMap-module__iSeoOa__markerCardAddress,.ApartmentsMap-module__iSeoOa__markerCardDetails,.ApartmentsMap-module__iSeoOa__markerCardSleeping{color:var(--text-secondary);font-size:var(--type-body-caption-size);line-height:var(--type-body-caption-line-height)}.ApartmentsMap-module__iSeoOa__markerCardDetails,.ApartmentsMap-module__iSeoOa__markerCardSleeping{font-weight:var(--font-weight-semibold)}.ApartmentsMap-module__iSeoOa__markerCardDescription{color:var(--text-secondary);font-size:var(--type-body-caption-size);line-height:var(--type-body-caption-line-height);white-space:normal}.ApartmentsMap-module__iSeoOa__markerCardClose{border-radius:var(--radius-full);background:var(--color-neutral-100);width:22px;height:22px;color:var(--text-secondary);font-family:var(--font-family-base);cursor:pointer;border:0;place-items:center;padding:0 0 2px;font-size:18px;line-height:1;display:grid;position:absolute;top:16px;right:16px}.ApartmentsMap-module__iSeoOa__markerCardBooking{border-radius:var(--radius-sm);background:var(--color-accent-500);width:100%;height:40px;color:var(--color-white);cursor:pointer;font-family:var(--font-family-base);font-size:14px;font-weight:var(--font-weight-semibold);border:0;justify-content:center;align-items:center;margin-top:4px;padding:0 12px;line-height:1;transition:background-color .16s,box-shadow .16s;display:flex;position:relative}.ApartmentsMap-module__iSeoOa__markerCardBooking:after{content:"";border-top:2px solid;border-right:2px solid;flex:0 0 6px;width:6px;height:6px;transition:transform .16s;position:absolute;right:14px;transform:rotate(45deg)}.ApartmentsMap-module__iSeoOa__markerCardBooking:hover{background:var(--color-accent-600);box-shadow:0 6px 16px #ff4f5f47}.ApartmentsMap-module__iSeoOa__markerCardBooking:hover:after{transform:translate(2px)rotate(45deg)}.ApartmentsMap-module__iSeoOa__markerCardClose:focus-visible,.ApartmentsMap-module__iSeoOa__markerCardBooking:focus-visible{outline:3px solid var(--color-accent-400);outline-offset:2px}@keyframes ApartmentsMap-module__iSeoOa__marker-card-in{0%{opacity:0;transform:translate(-25px,-21px)scale(.97)}to{opacity:1;transform:translate(-25px,-25px)scale(1)}}@keyframes ApartmentsMap-module__iSeoOa__booking-dialog-in{0%{opacity:0}to{opacity:1}}@keyframes ApartmentsMap-module__iSeoOa__spider-leg-in{0%{opacity:0;transform:rotate(var(--spider-angle)) scaleX(0)}to{opacity:.7;transform:rotate(var(--spider-angle)) scaleX(1)}}@keyframes ApartmentsMap-module__iSeoOa__spider-item-in{0%{opacity:0;transform:translate(calc(0px - var(--spider-x)), calc(0px - var(--spider-y))) scale(.65)}to{opacity:1;transform:translate(0)scale(1)}}@media (max-width:768px){.ApartmentsMap-module__iSeoOa__mapShell,.ApartmentsMap-module__iSeoOa__map,.ApartmentsMap-module__iSeoOa__state{height:var(--apartments-map-height-mobile,360px);min-height:var(--apartments-map-height-mobile,360px)}.ApartmentsMap-module__iSeoOa__bookingDialogHeader{gap:12px;min-height:64px;padding:10px 16px}.ApartmentsMap-module__iSeoOa__bookingDialogContent{padding:16px}}@media (prefers-reduced-motion:reduce){.ApartmentsMap-module__iSeoOa__markerCard,.ApartmentsMap-module__iSeoOa__bookingDialog,.ApartmentsMap-module__iSeoOa__spiderItem,.ApartmentsMap-module__iSeoOa__spiderLeg{animation:none}.ApartmentsMap-module__iSeoOa__marker{transition-duration:0s}}
.ApartmentCatalog-module__fhDtaq__filterForm{min-width:0}.ApartmentCatalog-module__fhDtaq__filterActions{width:100%;min-width:0;max-width:100%;min-height:var(--form-control-height,50px);align-self:end}.ApartmentCatalog-module__fhDtaq__filterActions>:first-child{min-width:124px}.ApartmentCatalog-module__fhDtaq__filterActions>:last-child:not(:first-child){min-width:120px;padding-inline:var(--space-3);flex:none}.ApartmentCatalog-module__fhDtaq__filterActions>*{white-space:nowrap}.ApartmentCatalog-module__fhDtaq__filterGrid{gap:var(--space-6);grid-template-columns:minmax(0,1.15fr) minmax(0,.95fr) minmax(0,1.15fr) minmax(0,.9fr) minmax(280px,.9fr);align-items:end;display:grid}.ApartmentCatalog-module__fhDtaq__filterControl{gap:var(--space-3);grid-template-columns:auto minmax(0,1fr);align-items:end;min-width:0;display:grid}.ApartmentCatalog-module__fhDtaq__filterIconFrame{min-height:var(--form-control-height,50px);place-items:center;display:grid}.ApartmentCatalog-module__fhDtaq__amenityFilterControl{min-width:0;min-height:var(--form-control-height,50px);gap:var(--space-3);grid-template-columns:auto minmax(0,1fr);align-items:center;display:grid}.ApartmentCatalog-module__fhDtaq__amenityFilterControl label{white-space:normal;align-items:center}.ApartmentCatalog-module__fhDtaq__amenityFilterControl input{margin-top:0}.ApartmentCatalog-module__fhDtaq__filterIcon{width:var(--icon-size-md);height:var(--icon-size-md);color:var(--color-accent-500);stroke-width:var(--icon-stroke-small);margin:0}.ApartmentCatalog-module__fhDtaq__catalogSection{min-height:480px}.ApartmentCatalog-module__fhDtaq__apartmentCard{grid-template-columns:minmax(280px,31%) minmax(0,1fr) 250px;min-width:0;min-height:260px;display:grid;overflow:hidden}.ApartmentCatalog-module__fhDtaq__cover{background:linear-gradient(145deg, var(--color-brand-100), var(--color-neutral-100));min-width:0;min-height:260px}.ApartmentCatalog-module__fhDtaq__cardContent{height:100%;padding:var(--space-5);justify-content:center}.ApartmentCatalog-module__fhDtaq__cardContentLink{min-width:0;color:inherit;text-decoration:none}.ApartmentCatalog-module__fhDtaq__cardContentLink:focus-visible{outline:3px solid var(--focus-ring-accent);outline-offset:-3px}.ApartmentCatalog-module__fhDtaq__address{align-items:flex-start;min-width:0}.ApartmentCatalog-module__fhDtaq__address svg{width:var(--icon-size-sm);height:var(--icon-size-sm);flex:0 0 var(--icon-size-sm);color:var(--color-accent-500);stroke-width:var(--icon-stroke-small);margin-top:1px}.ApartmentCatalog-module__fhDtaq__address p{color:var(--text-primary);font-weight:var(--font-weight-semibold);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ApartmentCatalog-module__fhDtaq__cardDetails{gap:var(--space-3) var(--space-5);margin:var(--space-2) 0;flex-wrap:wrap;display:flex}.ApartmentCatalog-module__fhDtaq__cardDetails dt{align-items:center;gap:var(--space-1);color:var(--text-primary);font-size:var(--type-body-small-size);font-weight:var(--font-weight-bold);line-height:var(--type-body-small-line-height);display:flex}.ApartmentCatalog-module__fhDtaq__cardDetails dt svg{width:var(--icon-size-sm);height:var(--icon-size-sm);flex:0 0 var(--icon-size-sm);stroke-width:var(--icon-stroke-small)}.ApartmentCatalog-module__fhDtaq__amenitiesLine{align-items:baseline;gap:var(--space-1) var(--space-2);flex-wrap:wrap;display:flex}.ApartmentCatalog-module__fhDtaq__amenitiesLine>span{line-height:1.7}.ApartmentCatalog-module__fhDtaq__detailsLink{align-items:center;gap:var(--space-1);color:var(--color-accent-700);font-size:var(--type-body-small-size);line-height:var(--type-body-small-line-height);font-weight:var(--font-weight-bold);text-underline-offset:4px;flex:none;text-decoration:underline;text-decoration-thickness:1px;display:inline-flex}.ApartmentCatalog-module__fhDtaq__cardContentLink:hover .ApartmentCatalog-module__fhDtaq__detailsLink{color:var(--color-accent-600);text-decoration-thickness:2px}.ApartmentCatalog-module__fhDtaq__detailsLink svg{width:var(--icon-size-xs);height:var(--icon-size-xs)}.ApartmentCatalog-module__fhDtaq__bookingAction{min-width:0;padding:var(--space-5);border-left:1px solid var(--divider-light);align-items:center;display:flex}@media (min-width:1200px){.ApartmentCatalog-module__fhDtaq__bookingAction button{padding-inline:var(--space-4);white-space:nowrap}.ApartmentCatalog-module__fhDtaq__bookingAction button svg{width:var(--icon-size-md);height:var(--icon-size-md);flex:0 0 var(--icon-size-md);stroke-width:var(--icon-stroke-default)}}.ApartmentCatalog-module__fhDtaq__emptyState{border-style:dashed;place-items:center;min-height:300px;display:grid}.ApartmentCatalog-module__fhDtaq__emptyState svg{width:var(--icon-size-xl);height:var(--icon-size-xl);color:var(--color-brand-400);stroke-width:var(--icon-stroke-small)}@media (max-width:1439px){.ApartmentCatalog-module__fhDtaq__filterGrid{gap:var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:899px){.ApartmentCatalog-module__fhDtaq__filterGrid{gap:var(--space-4);grid-template-columns:minmax(0,1fr)}.ApartmentCatalog-module__fhDtaq__amenityFilterControl label{white-space:normal;align-items:start}.ApartmentCatalog-module__fhDtaq__amenityFilterControl input{margin-top:1px}}@media (max-width:1199px){.ApartmentCatalog-module__fhDtaq__apartmentCard{grid-template-columns:minmax(240px,34%) minmax(0,1fr)}.ApartmentCatalog-module__fhDtaq__cover{grid-row:1/3}.ApartmentCatalog-module__fhDtaq__cardContent{padding-bottom:var(--space-3)}.ApartmentCatalog-module__fhDtaq__bookingAction{width:min(100%,280px);padding:0 var(--space-5) var(--space-5);border-left:0}}@media (max-width:767px){.ApartmentCatalog-module__fhDtaq__filterActions{max-width:100%}.ApartmentCatalog-module__fhDtaq__filterActions>*{width:auto}.ApartmentCatalog-module__fhDtaq__filterActions>:first-child{flex:auto}.ApartmentCatalog-module__fhDtaq__amenityFilterControl{min-height:40px}.ApartmentCatalog-module__fhDtaq__amenityFilterControl label{white-space:normal}.ApartmentCatalog-module__fhDtaq__apartmentCard{grid-template-columns:1fr}.ApartmentCatalog-module__fhDtaq__cover{grid-row:auto;min-height:230px}.ApartmentCatalog-module__fhDtaq__cardContent{padding:var(--space-4)}.ApartmentCatalog-module__fhDtaq__cardDetails{gap:var(--space-2);grid-template-columns:1fr;display:grid}.ApartmentCatalog-module__fhDtaq__bookingAction{width:100%;padding:var(--space-4);border-top:1px solid var(--divider-light)}}
