.listing-detail-page{margin:0 auto;box-sizing:border-box;width:100%}.apartment-preview__banner{background:linear-gradient(135deg,var(--surface-warning-bg) 0,var(--surface-warning-bg-strong) 100%);border:2px solid var(--status-warning);border-radius:12px;padding:16px 20px;margin-bottom:24px;box-shadow:0 4px 6px var(--overlay-black-010)}.apartment-preview__banner-content{display:flex;align-items:flex-start;gap:12px}.apartment-preview__banner-icon{flex-shrink:0}.apartment-preview__banner-title{display:block;color:var(--status-warning-text);margin-bottom:4px}.apartment-preview__banner-message{margin:0;color:var(--status-warning-text-strong)}.apartment-detail__back{display:flex;align-items:center;gap:8px;margin-bottom:24px}.apartment-detail__back-link{display:inline-flex;align-items:center;color:var(--muted);text-decoration:none;transition:color .2s ease}.apartment-detail__back-link:hover{color:var(--accent)}.apartment-detail__gallery{margin-bottom:24px;border-radius:12px;overflow:hidden;border:1px solid var(--border);background:var(--card);position:relative}.apartment-detail__gallery .image-slider{width:100%;aspect-ratio:2/1;height:auto!important;min-height:0;border-radius:12px}.apartment-detail__gallery-badges{position:absolute;top:14px;left:14px;z-index:4;display:flex;flex-wrap:wrap;align-items:center;gap:8px;pointer-events:none}.apartment-detail__gallery-badge{padding:8px 14px;border-radius:8px;font-weight:600;letter-spacing:.01em;box-shadow:0 2px 12px rgba(0,0,0,.45);-webkit-backdrop-filter:none;backdrop-filter:none}.apartment-detail__gallery-badge--recommended{color:#fff;background:#171a21;border:1px solid #fbb724;text-shadow:0 1px 2px rgba(0,0,0,.55)}.apartment-detail__gallery-badge--new{color:#fff;background:#1da68a;border:1px solid color-mix(in srgb,#1da68a 70%,#000);text-shadow:0 1px 2px rgba(0,0,0,.45)}:root[data-theme=light] .apartment-detail__gallery-badge--recommended{color:#171a21;background:#fbb724;border-color:#c98a12;text-shadow:none}.apartment-detail__title-section{margin-bottom:28px;padding-bottom:24px;border-bottom:1px solid var(--border)}.apartment-detail__title-address{margin:8px 0 0;color:var(--muted);overflow-wrap:break-word;word-break:break-word}.apartment-detail__title-address-line{margin-top:8px;display:flex;align-items:flex-start;gap:8px}.apartment-detail__title-address-line .apartment-detail__title-address{margin:0}.apartment-detail__title{margin:0;color:var(--text)}.apartment-detail__title-line{display:flex;align-items:flex-start;gap:8px}.apartment-detail__translation-toggle-btn{min-width:220px}.apartment-detail__translation-revert-btn.icon-btn{width:28px;height:28px;border-radius:8px;flex-shrink:0}.apartment-detail__rating{margin-top:8px;display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px}.apartment-detail__average-rating{display:inline-flex;align-items:center;gap:6px;color:var(--text)}.apartment-detail__rating-one{display:inline-flex;align-items:center;gap:8px}.apartment-detail__star-single{color:var(--status-warning-badge,var(--warn,var(--status-warning-yellow)))}.apartment-detail__views{align-items:center;gap:6px}.apartment-detail__views,.apartment-detail__views-icon{display:inline-flex;color:var(--muted)}.apartment-detail__views-icon svg{width:14px;height:14px}.apartment-detail__grid{display:grid;grid-template-columns:1fr 370px;gap:24px;width:100%;max-width:1400px;margin:0 auto;box-sizing:border-box}.apartment-detail__main{display:flex;flex-direction:column;gap:24px;min-width:0;max-width:100%}.apartment-detail__main .card{padding:20px;background:var(--card);border:1px solid var(--border);border-radius:16px;box-shadow:0 2px 8px var(--overlay-black-006)}.apartment-detail__main .card h2,.apartment-detail__main .card h3{margin:0 0 12px;color:var(--text);padding-bottom:12px;border-bottom:1px dashed var(--border-muted-strong)}.apartment-detail__booking.card{min-width:0}.apartment-detail__booking-head{display:flex;align-items:center;gap:10px;margin-bottom:12px}.apartment-detail__booking.card .apartment-detail__booking-head h2{margin:0;padding-bottom:0;border-bottom:none}.apartment-detail__booking-legend-btn{flex-shrink:0;width:28px;height:28px;min-width:28px;min-height:28px;padding:0;border-radius:50%;font-style:italic;color:var(--muted)}.apartment-detail__booking-legend-btn:hover{color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent)}.apartment-detail__booking-legend-modal-title{margin:0 0 16px;color:var(--text)}.availability-calendar__legend--modal{margin-bottom:0;padding-bottom:0;border-bottom:none}.apartment-detail__booking-calendar-wrap{margin-top:4px}.apartment-detail__booking-loading{min-height:120px;display:flex;align-items:center;justify-content:center;padding:24px;color:var(--muted)}.apartment-detail__booking-loading p{margin:0}.apartment-detail__booking-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:18px}.apartment-detail__booking-actions .apartment-detail__booking-btn{flex:1 1;min-width:140px}.apartment-detail__booking-btn{margin-top:18px;width:100%}.apartment-detail__do-opinion-subtitle{margin:0;color:var(--muted)}.apartment-detail__do-opinion-divider{margin:14px 0 18px;border-bottom:1px dashed color-mix(in srgb,var(--border) 82%,transparent);width:100%}.apartment-detail__do-opinion h3{margin:0 0 10px;color:var(--text)}.apartment-detail__do-opinion-subtext{margin:0 0 10px;color:var(--muted)}.apartment-detail__do-opinion-pending{margin:0 0 14px;color:var(--muted)}.apartment-detail__do-opinion-baseline{margin-bottom:10px;padding:18px 20px;border-radius:12px;border:1px solid var(--border);background:color-mix(in srgb,var(--muted-bg) 50%,transparent)}.apartment-detail__do-opinion-source-grid{display:grid;grid-template-columns:1fr;gap:14px}.apartment-detail__do-opinion-source-grid--dual{grid-template-columns:1fr 1fr;gap:10px}.apartment-detail__do-opinion-baseline--external{border-style:dashed;background:color-mix(in srgb,var(--accent) 8%,var(--muted-bg))}.apartment-detail__do-opinion-baseline-title{color:var(--muted);margin-bottom:10px}.apartment-detail__do-opinion-metrics{display:grid;grid-template-columns:repeat(2,1fr);gap:12px 16px}.apartment-detail__do-opinion-cohort{margin:10px 0 0;color:var(--muted)}.apartment-detail__do-opinion-band,.apartment-detail__do-opinion-listing-equiv{margin:4px 0 0;color:var(--muted)}.apartment-detail__do-opinion-disclaimer{margin:14px 0 0;color:var(--muted)}.apartment-detail__do-opinion-result-row{display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:start;margin-top:4px}.apartment-detail__do-opinion-block{display:flex;flex-direction:column;gap:8px}.apartment-detail__do-opinion-value{color:var(--text)}.apartment-detail__do-opinion-value-wrap{display:flex;align-items:baseline;flex-wrap:wrap;gap:2px 4px}.apartment-detail__do-opinion-compare{width:100%;color:var(--muted);text-decoration:line-through}.apartment-detail__do-opinion-value--down{color:var(--success)}.apartment-detail__do-opinion-value--up{color:var(--danger)}.apartment-detail__do-opinion-value--fair{color:var(--warning,var(--listing-card-recommended-bg))}.apartment-detail__do-opinion-unit{color:var(--muted)}.apartment-detail__do-opinion-label{display:inline-flex;align-items:center;gap:6px;color:var(--muted)}.apartment-detail__do-opinion-info-btn{width:16px;height:16px;min-width:16px;padding:0;border:0;border-radius:50%}.apartment-detail__do-opinion-info-btn .icon-btn__icon{width:16px;height:16px}.apartment-detail__do-opinion-info-glyph{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;color:inherit;font-style:italic}.apartment-detail__do-opinion-badge{display:inline-flex;align-items:center;justify-content:center;margin-top:8px;padding:7px 14px;border-radius:999px;border:1px solid color-mix(in srgb,var(--border) 75%,transparent);background:color-mix(in srgb,var(--muted-bg) 70%,transparent);color:var(--text)}.apartment-detail__do-opinion-badge--below{border-color:color-mix(in srgb,var(--success,var(--status-success)) 45%,transparent);background:color-mix(in srgb,var(--success,var(--status-success)) 20%,transparent);color:var(--success,var(--status-success))}.apartment-detail__do-opinion-badge--above{border-color:color-mix(in srgb,var(--danger,var(--status-danger)) 45%,transparent);background:color-mix(in srgb,var(--danger,var(--status-danger)) 20%,transparent);color:var(--danger,var(--status-danger))}.apartment-detail__do-opinion-badge--fair{border-color:color-mix(in srgb,var(--warning,var(--listing-card-recommended-bg)) 45%,transparent);background:color-mix(in srgb,var(--warning,var(--listing-card-recommended-bg)) 20%,transparent);color:var(--warning,var(--listing-card-recommended-bg))}.apartment-detail__do-opinion-benchmark-delta{margin:4px 0 0;color:var(--muted)}.apartment-detail__do-opinion-benchmark-delta-value--down{color:var(--success,var(--status-success))}.apartment-detail__do-opinion-benchmark-delta-value--up{color:var(--danger,var(--status-danger))}.apartment-detail__do-opinion-benchmark-delta-value--fair{color:var(--warning,var(--listing-card-recommended-bg))}@media (max-width:1024px){.apartment-detail__do-opinion-result-row,.apartment-detail__do-opinion-source-grid--dual{grid-template-columns:1fr}}.apartment-detail__description.card{min-width:0;overflow-wrap:break-word}.apartment-detail__description.card h2{padding-bottom:0;border-bottom:none;margin-bottom:16px;color:var(--text)}.apartment-detail__description-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:16px}.apartment-detail__description-head h2{margin-bottom:0}.apartment-detail__description-text{margin:0;color:var(--text);overflow-wrap:break-word;word-wrap:break-word;word-break:break-word;max-width:100%}.apartment-detail__description-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:16px;padding-top:0;border-top:none}.apartment-detail__description-actions .icon-btn.apartment-detail__action-btn{width:28px;height:28px;border-radius:8px}.apartment-detail__description-actions .icon-btn.apartment-detail__action-btn .icon-btn__icon{width:12px;height:12px}.apartment-detail__action-icon--favorite-selected{filter:invert(22%) sepia(97%) saturate(2192%) hue-rotate(338deg) brightness(95%) contrast(95%)!important}.apartment-detail__description-actions .icon-btn.apartment-detail__action-btn--in-comparison{color:var(--accent);border-color:var(--accent);background:color-mix(in srgb,var(--accent) 25%,var(--overlay-black-045))}.apartment-detail__description-actions .icon-btn.apartment-detail__action-btn--favorite{color:var(--status-danger-strong);border-color:var(--status-danger-strong);background:color-mix(in srgb,var(--status-danger-strong) 25%,var(--overlay-black-045))}.apartment-detail__main .placeholder{color:var(--muted);margin:0}.details-groups{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.details-group{display:flex;gap:12px;align-items:flex-start}.details-group__label{min-width:140px;color:var(--muted);flex-shrink:0}.details-group__value{flex:1 1;color:var(--text)}.amenities-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}.amenity-item{display:flex;align-items:center;gap:8px;color:var(--text)}.amenity-item__name{flex:1 1}.apartment-detail__sidebar{width:100%}.apartment-detail__sidebar-sticky{position:sticky;top:20px;display:flex;flex-direction:column;gap:20px;width:100%;align-self:flex-start;transition:top .3s ease}body.site-header-visible .apartment-detail__sidebar-sticky{top:76px}.apartment-detail__contact.card,.apartment-detail__sidebar-summary.card{padding:20px;background:var(--card);border:1px solid var(--border);border-radius:16px;box-shadow:0 2px 8px var(--overlay-black-006)}.apartment-detail__sidebar-summary.card{display:flex;flex-direction:column;gap:0}.sidebar-summary__head{display:grid;grid-template-columns:1fr auto;gap:12px 20px;align-items:start;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid var(--border)}.sidebar-summary__title{margin:0;color:var(--text);min-width:0}.sidebar-summary__title-wrap{display:flex;align-items:flex-start;gap:8px;min-width:0}.sidebar-summary__price{display:flex;flex-direction:column;gap:2px;align-items:flex-end;text-align:right;flex-shrink:0}.sidebar-summary__price-amount{color:var(--accent)}.sidebar-summary__price-period{color:var(--muted)}.sidebar-summary__price-row{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.sidebar-summary__price-amount-row{gap:6px}.sidebar-summary__price-amount-row,.sidebar-summary__price-negotiable{display:inline-flex;align-items:center}.sidebar-summary__price-compare{color:var(--muted);text-decoration:line-through}.sidebar-summary__price-amount--down{color:var(--success)}.sidebar-summary__price-amount--up{color:var(--danger)}.sidebar-summary__row-availability-location{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 14px;margin-bottom:14px}.sidebar-summary__row-availability-location .sidebar-summary__location{margin:0;min-width:0}.sidebar-summary__row-availability-location .sidebar-summary__location-text{overflow-wrap:break-word;word-break:break-word}.sidebar-summary__row-availability-location .sidebar-summary__availability{flex-shrink:0;margin-left:auto}.sidebar-summary__row-sep{color:var(--muted);-webkit-user-select:none;user-select:none}.sidebar-summary__availability{padding:6px 12px;border-radius:8px;display:inline-block;width:fit-content}.sidebar-summary__availability--available{background:var(--status-success-bg-strong);color:var(--success,var(--status-success))}.sidebar-summary__availability--unavailable{background:var(--status-danger-bg-strong);color:var(--status-danger)}.sidebar-summary__location{display:inline-flex;align-items:center;gap:6px}.sidebar-summary__body{margin-bottom:4px;display:flex;flex-direction:column;gap:12px}.sidebar-summary__body .sidebar-summary__specs{margin-bottom:0;padding-bottom:12px;border-bottom:1px solid var(--border)}.sidebar-summary__body .sidebar-summary__badges{margin-bottom:0}.sidebar-summary__icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--muted)}.sidebar-summary__location-text{color:var(--muted)}.sidebar-summary__specs{display:flex;flex-wrap:wrap;gap:12px 20px;color:var(--text)}.sidebar-summary__spec{display:inline-flex;align-items:center;gap:6px}.sidebar-summary__spec .sidebar-summary__icon{opacity:.85}.sidebar-summary__spec--muted{color:var(--muted)}.sidebar-summary__badges{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.apartment-badge{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:6px}.apartment-badge__icon{flex-shrink:0;opacity:.9}.apartment-badge__icon--pets{opacity:1;min-width:18px;min-height:18px}.apartment-badge__text{white-space:nowrap}.apartment-badge--default{background:var(--accent);color:var(--text-on-accent,white)}.apartment-badge--secondary{background:var(--muted-bg,color-mix(in srgb,var(--text) 12%,transparent));color:var(--text)}.apartment-badge--allowed{background:color-mix(in srgb,var(--success,var(--status-success)) 18%,transparent);border:1px solid color-mix(in srgb,var(--success,var(--status-success)) 45%,transparent);color:var(--success,var(--status-success))}.sidebar-summary__pricing{margin-top:18px;padding-top:16px;border-top:1px solid var(--border)}.sidebar-summary__pricing-title{color:var(--text);margin:0 0 10px}.sidebar-summary__pricing-list.details-groups{margin:0;gap:6px}.sidebar-summary__pricing-list .details-group{justify-content:space-between;align-items:baseline;gap:12px}.sidebar-summary__pricing-list .details-group__label{color:var(--muted);flex-shrink:0}.sidebar-summary__pricing-list .details-group__value{color:var(--text);margin-left:auto;text-align:right;min-width:0;overflow-wrap:break-word;word-break:break-word}.apartment-detail__contact.card{display:flex;flex-direction:column;gap:0}.apartment-detail__contact-title{margin:0 0 16px;color:var(--text)}.apartment-detail__contact .owner-card{display:flex;align-items:flex-start;gap:14px}.contact-details{display:flex;flex-direction:column;gap:6px;width:100%}.apartment-detail__contact .contact-details .contact-details__row{display:flex;align-items:baseline;justify-content:space-between;gap:12px;width:100%;min-width:0;min-height:unset;height:auto;padding:8px 0;margin:0;border:none;background:none;cursor:pointer;font:inherit;text-align:left;color:inherit;border-radius:6px;transition:background .15s ease}.apartment-detail__contact .contact-details .contact-details__row:hover{background:var(--muted-bg,var(--overlay-white-005))}.contact-details__label{flex-shrink:0;color:var(--muted)}.contact-details__value{flex-shrink:0;color:var(--text);text-align:right;min-width:0;overflow-wrap:break-word;word-break:break-word}.contact-details__empty{margin:0;color:var(--muted)}.apartment-detail__contact h3{margin:0 0 12px;color:var(--text)}.apartment-detail__error{text-align:center;padding:48px 24px}.apartment-detail__error h2{margin:0 0 12px;color:var(--text)}.apartment-detail__error p{margin:0 0 20px;color:var(--muted)}.apartment-detail__loading{padding:48px 24px;text-align:center;color:var(--muted)}.apartment-detail__availability{padding:8px 16px;border-radius:12px;margin-bottom:12px;display:inline-block}.apartment-detail__availability--available{background:var(--status-success-bg-soft);color:var(--success,var(--status-success))}.apartment-detail__availability--unavailable{background:var(--status-danger-bg-soft);color:var(--status-danger)}.amenity-item__icon{flex-shrink:0}.amenity-item__icon .amenity-item__img{width:20px;height:20px;display:block;object-fit:contain}.listing-detail-page__recommended{margin-top:40px}.apartment-detail__similar-listings-wrapper{margin-top:48px;padding-top:32px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:32px}.apartment-detail__similar-listings-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.apartment-detail__similar-listings-head h3{margin:0;color:var(--text)}.apartment-detail__similar-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.apartment-detail__map .card h3{margin-top:0}.apartment-detail__map .listings-map-view--detail-embed .listings-map-view__map-wrap{height:400px;min-height:400px}.apartment-detail__map-embed{width:100%;min-height:400px;margin-bottom:12px;border-radius:8px;overflow:hidden;background:var(--bg)}.apartment-detail__map-embed iframe{display:block}.apartment-detail__map-poi-panel{display:flex;flex-wrap:wrap;gap:8px 16px;padding:12px 0;margin-bottom:8px}.apartment-detail__map-embed-wrap{position:relative;z-index:1;overflow:hidden;isolation:isolate}.apartment-detail__map-legend{position:absolute;bottom:12px;left:12px;display:flex;flex-wrap:wrap;gap:12px 20px;padding:10px 14px;background:var(--card);border:1px solid var(--border);border-radius:8px;color:var(--text);z-index:1000}.apartment-detail__map-legend-item{display:flex;align-items:center;gap:6px}.apartment-detail__map-legend-pin{display:inline-block;width:14px;height:20px;background:var(--primary);border:2px solid var(--card);border-radius:50% 50% 50% 0;transform:rotate(-45deg);box-shadow:0 1px 3px var(--overlay-black-030)}.apartment-detail__map-legend-dot{display:inline-block;width:8px;height:8px;border-radius:50%;border:1px solid var(--card);box-shadow:0 1px 2px var(--overlay-black-020)}.apartment-detail__map-loading{padding:24px;text-align:center;color:var(--text-muted,var(--text-muted-strong))}.apartment-detail__map-loading--overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:var(--bg);z-index:1}.listing-marker{background:none;border:none}.listing-marker .listing-marker__pin{display:block;width:32px;height:32px;margin-left:-16px;margin-top:-32px;background:var(--accent,var(--accent-sky));border:3px solid var(--absolute-white);border-radius:50% 50% 50% 0;transform:rotate(-45deg);box-shadow:0 2px 8px var(--overlay-black-035)}.apartment-detail__map-link{display:inline-block;color:var(--accent);text-decoration:none}.apartment-detail__map-link:hover{text-decoration:underline}.apartment-detail__reviews-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px dashed var(--border-muted-strong);width:100%;box-sizing:border-box}.apartment-detail__main .apartment-detail__reviews .apartment-detail__reviews-header h3{margin:0;padding-bottom:0;border-bottom:none;display:inline-flex;align-items:center;flex-wrap:wrap;gap:6px}.apartment-detail__reviews-marker{margin-left:4px}.review-button--write{flex-shrink:0}.apartment-detail__reviews-list{min-height:80px}.reviews-list{display:flex;flex-direction:column;gap:16px}.review-card{background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:16px}.review-card__head{display:flex;align-items:center;gap:12px;margin-bottom:12px}.review-card__avatar{width:40px;height:40px;border-radius:50%;background:color-mix(in srgb,var(--card) 88%,var(--absolute-black) 12%);color:var(--text);display:flex;align-items:center;justify-content:center;border:1px solid var(--border);flex-shrink:0}.review-card__avatar-img{width:100%;height:100%;border-radius:50%;object-fit:cover}.review-card__avatar-placeholder{width:100%;height:100%;border-radius:50%;display:flex;align-items:center;justify-content:center}.review-card__meta{flex:1 1;min-width:0}.review-card__author-link,.review-card__author-text{color:var(--text)}.review-card__author-link:hover{color:var(--accent)}.review-card__date{color:var(--muted);margin-top:2px}.review-card__head-actions{gap:8px;margin-left:auto}.review-card__head-actions,.review-card__rating{display:inline-flex;align-items:center;flex-shrink:0}.review-card__rating{gap:2px;color:var(--status-warning-badge)}.review-card__report-btn.icon-btn{width:28px;height:28px;border-radius:8px}.review-card__report-btn.icon-btn .icon-btn__icon{width:14px;height:14px}.review-card__rating-star,.review-form__star-img{display:block}.review-card__title{margin:0 0 8px;color:var(--text)}.review-card__body{color:var(--text);opacity:.9;margin:0}.reviews-empty{color:var(--muted);margin:0}.review-form--modal{padding:0;border:none;background:transparent}.review-form__title{color:var(--text);margin:0 0 16px}.review-form__form{display:flex;flex-direction:column;gap:16px}.review-form__field{display:flex;flex-direction:column;gap:6px}.review-form__label{color:var(--text)}.review-form__required{color:var(--danger)}.review-form__stars{display:flex;gap:4px;align-items:center}.review-form__star{background:none;border:none;color:var(--muted);cursor:pointer;padding:4px;transition:color .2s}.review-form__star--active{color:var(--warn)}.review-form__textarea{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--card);color:var(--text);font-family:inherit;box-sizing:border-box}.review-form__textarea:focus{outline:none;border-color:var(--accent)}.review-form__textarea{resize:vertical;min-height:100px}.review-form__message--error{color:var(--danger)}.review-form__actions{display:flex;justify-content:flex-end;align-items:center;flex-wrap:wrap;gap:12px;margin-top:8px;width:100%}.review-form__delete{margin-right:auto}.apartment-detail__contact--owner .owner-card{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px}.owner-card__avatar{width:48px;height:48px;border-radius:50%;background:var(--accent);color:var(--text-on-accent);display:flex;align-items:center;justify-content:center;flex-shrink:0}.owner-card__avatar-img{width:100%;height:100%;border-radius:50%;object-fit:cover}.owner-card__info{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:2px}.owner-card__name-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px 8px}.owner-card__name-inline{display:inline-flex;align-items:center;gap:6px;min-width:0;flex:1 1}.owner-card__presence{flex-shrink:0}.owner-card__name-link,.owner-card__name-text{color:var(--text)}.owner-card__name-link:hover{color:var(--accent)}.owner-card__badge{display:inline-block;color:var(--muted)}.owner-card__member-since{color:var(--muted);margin:4px 0 0}.contact-login-cta{display:flex;flex-direction:column;align-items:center;gap:12px;padding:20px 0 4px;text-align:center}.contact-login-cta__icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent)}.contact-login-cta__text{margin:0;color:var(--text);max-width:280px}.contact-login-cta__btn{width:100%;justify-content:center}.owner-card__login-cta{color:var(--muted);margin:0 0 12px}.apartment-detail__specs-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px;padding-bottom:12px;border-bottom:1px dashed var(--border-muted-strong)}.apartment-detail__main .apartment-detail__specs .apartment-detail__specs-header h3{margin:0;padding-bottom:0;border-bottom:none}.apartment-detail__specs .icon-btn.apartment-detail__specs-toggle{width:28px;height:28px;border-radius:8px;flex-shrink:0}.apartment-detail__specs .icon-btn.apartment-detail__specs-toggle .icon-btn__icon{width:12px;height:12px;transition:transform .2s ease}.apartment-detail__specs .icon-btn.apartment-detail__specs-toggle[aria-expanded=true] .icon-btn__icon{transform:rotate(180deg)}.apartment-detail__specs-amenities-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}@media (max-width:768px){.apartment-detail__specs-amenities-row{grid-template-columns:1fr}}.apartment-detail__specs .specs-main{display:flex;flex-direction:column;gap:12px;margin-bottom:16px;padding-bottom:16px;border-bottom:1px dashed var(--border-muted-soft)}.apartment-detail__specs .specs-rest.spec-details-two-cols{display:grid;grid-template-columns:1fr 1fr;gap:12px 24px}@media (max-width:480px){.apartment-detail__specs .specs-rest.spec-details-two-cols{grid-template-columns:1fr}}.apartment-detail__specs .specs-sections{display:grid;grid-template-columns:1fr;gap:12px}.specs-section{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px}.specs-section__icon{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;color:var(--muted)}.specs-section__icon svg{width:16px;height:16px;display:block}.specs-section__label{color:var(--muted);flex-shrink:0}.specs-section__value{color:var(--text)}.floor-plans-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.floor-plans-tab{padding:8px 16px;border:1px solid var(--border);border-radius:8px;background:var(--bg);color:var(--text);cursor:pointer;transition:border-color .2s,background .2s}.floor-plans-tab:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent)}.floor-plans-tab--active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 15%,transparent);color:var(--accent)}.contact-details-divider{height:1px;background:var(--border);margin:16px 0;width:100%}.apartment-detail__amenities-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 12px;min-width:0}.apartment-detail__amenities-title .need-to-do-marker__wrap{margin-left:4px}.apartment-detail__amenities-title .apartment-detail__amenities-toggle{margin-left:auto;width:28px;height:28px;border-radius:8px;flex-shrink:0}.apartment-detail__amenities-title .apartment-detail__amenities-toggle .icon-btn__icon{width:12px;height:12px;transition:transform .2s ease}.apartment-detail__amenities-title .apartment-detail__amenities-toggle[aria-expanded=true] .icon-btn__icon{transform:rotate(180deg)}.apartment-detail__amenities .amenities-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.energy-scale{margin-bottom:16px}.energy-scale__bar{display:flex;align-items:flex-end;width:100%;height:32px;border-radius:6px;overflow:visible;margin-bottom:8px;gap:1px}.energy-scale__segment{flex:1 1;min-width:0;height:8px;border-radius:3px;transition:height .2s,box-shadow .2s}.energy-scale__segment--active{height:12px;box-shadow:0 0 0 2px var(--text);z-index:1}.energy-scale__labels{display:flex;width:100%;justify-content:space-between;color:var(--muted)}.energy-scale__label{flex:1 1;text-align:center;min-width:0}.energy-scale__label--active{color:var(--text)}.energy-details{display:grid;grid-template-columns:repeat(2,1fr);gap:8px 20px}.energy-detail__label{color:var(--muted);margin-right:6px}.energy-detail__value{color:var(--text)}.energy-detail__unit{color:var(--muted);white-space:nowrap}.floor-plans-list{display:flex;flex-direction:column;gap:16px}.floor-plan-item__label{margin-bottom:8px;color:var(--text)}.floor-plan-item__img{width:100%;max-height:400px;object-fit:contain;border-radius:8px;border:1px solid var(--border)}.floor-plan-item__placeholder{min-height:200px;display:flex;align-items:center;justify-content:center;background:var(--bg);border:1px solid var(--border);border-radius:8px;color:var(--muted)}@media (max-width:1024px){.apartment-detail__grid{grid-template-columns:1fr;gap:24px}.apartment-detail__main{order:2}.apartment-detail__sidebar{order:1}.apartment-detail__sidebar-sticky{position:static}}@media (max-width:768px){.apartment-detail__back{margin-bottom:16px}.apartment-detail__gallery{margin-bottom:16px;border-radius:10px}.apartment-detail__title-section{margin-bottom:20px;padding-bottom:16px}.apartment-detail__translation-toggle-btn{width:100%;min-width:0}.apartment-detail__contact.card,.apartment-detail__main .card,.apartment-detail__sidebar-summary.card{padding:16px}.sidebar-summary__head{grid-template-columns:1fr;gap:10px}.sidebar-summary__price{align-items:flex-start;text-align:left}.details-group{flex-direction:column;gap:4px}.details-group__label{min-width:0}.amenities-grid,.specs-sections{grid-template-columns:1fr}.apartment-detail__map-embed{min-height:320px}.apartment-detail__map-legend{left:10px;right:10px;bottom:10px;max-width:calc(100% - 20px)}.apartment-detail__do-opinion-metrics,.energy-details{grid-template-columns:1fr}.apartment-detail__booking-actions{flex-direction:column;align-items:stretch}.apartment-detail__booking-actions .apartment-detail__booking-btn{width:100%;min-width:0;min-height:var(--layout-touch-min)}.apartment-detail__booking-btn{min-height:var(--layout-touch-min)}.apartment-detail__description-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(var(--layout-touch-min),1fr));gap:10px}.apartment-detail__description-actions .icon-btn.apartment-detail__action-btn{width:100%;height:var(--layout-touch-min);min-height:var(--layout-touch-min);min-width:var(--layout-touch-min)}.apartment-detail__description-actions .icon-btn.apartment-detail__action-btn .icon-btn__icon{width:16px;height:16px}.apartment-detail__price-history-table-wrap{-webkit-overflow-scrolling:touch;margin:0 calc(var(--layout-page-padding-x) * -1);padding:0 var(--layout-page-padding-x)}.apartment-detail__price-history-table{min-width:480px}.apartment-detail__price-history-table td,.apartment-detail__price-history-table th{font-size:var(--ui-font-size-sm);white-space:nowrap}}@media (max-width:480px){.apartment-detail__title{overflow-wrap:anywhere}.apartment-detail__gallery-badge{padding:6px 10px}.apartment-detail__price-history-table{min-width:420px}.apartment-detail__amenities .amenities-grid,.apartment-detail__do-opinion-metrics,.energy-details{grid-template-columns:1fr}.apartment-detail__map-embed{min-height:280px}.apartment-detail__map-legend{left:8px;right:8px;bottom:8px;max-width:calc(100% - 16px);gap:8px 12px;padding:8px 10px}.apartment-detail__do-opinion-info-btn{width:var(--layout-touch-min);height:var(--layout-touch-min);min-width:var(--layout-touch-min);min-height:var(--layout-touch-min)}}.apartment-detail__price-history h3{margin:0 0 12px}.apartment-detail__price-history-login,.apartment-detail__price-history-muted{margin:0;color:var(--muted)}.apartment-detail__price-history-error{margin:0;color:var(--danger)}.apartment-detail__price-history-table-wrap{overflow-x:auto}.apartment-detail__price-history-table{width:100%;border-collapse:collapse}.apartment-detail__price-history-table td,.apartment-detail__price-history-table th{padding:8px 10px;text-align:left;border-bottom:1px solid var(--border)}.apartment-detail__price-history-table th{color:var(--muted)}.apartment-detail__price-history--locked{position:relative}.apartment-detail__price-history-table-wrap--blurred{filter:blur(4px);opacity:.55;-webkit-user-select:none;user-select:none;pointer-events:none}.apartment-detail__price-history-table--placeholder td{color:var(--muted)}.apartment-detail__price-history-locked-under-blur{margin-top:10px;padding:10px;border-radius:10px;border:1px dashed var(--border)}.apartment-detail__price-history-locked-cta{margin-top:12px;display:flex;align-items:center;justify-content:space-between;gap:12px}.apartment-detail__price-history-login-subtle{margin:0;color:var(--muted)}