.bb-house,
.bb-houses-grid,
.bb-houses-ribbon,
.bb-houses-more,
.bb-switch,
.bb-quick-links,
.bb-brand-map,
.bb-listing-house {
    font-family: Inter, sans-serif;
    --bb-primary: var(--e-global-color-lprimary1, #e20c24);
    --bb-text: var(--e-global-color-lcolor1, #14141a);
    --bb-muted: #6b7280;
    --bb-border: #e5e7eb;
    --bb-surface: #f5f6f8;
    --bb-radius: var(--e-global-lborder-radius, 10px);
    color: var(--bb-text);
}

.bb-house {
    padding: 32px 0 72px;
}

.bb-house__container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 16px;
}

.bb-house__breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 24px;
    color: var(--bb-muted);
    font-size: 14px;
}

.bb-house__breadcrumbs a {
    color: inherit;
    text-decoration: none;
}

.bb-house__breadcrumbs a:hover {
    color: var(--bb-primary);
}

.bb-house__page-title {
    margin: 0 0 32px;
}

/* Top: gallery + summary */
.bb-house__top {
    display: grid;
    grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr);
    gap: 32px;
    align-items: start;
}

.bb-house__gallery-main {
    overflow: hidden;
    aspect-ratio: 4 / 3;
    border-radius: var(--bb-radius);
    background: var(--bb-surface);
}

.bb-house__gallery-main img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.bb-house__thumbs {
    display: flex;
    gap: 8px;
    margin-top: 8px;
    overflow-x: auto;
}

.bb-house__thumb {
    flex: 0 0 auto;
    width: 84px;
    height: 64px;
    padding: 0;
    overflow: hidden;
    border: 2px solid transparent;
    border-radius: 6px;
    background: none;
    cursor: pointer;
    opacity: .7;
}

.bb-house__thumb.is-active,
.bb-house__thumb:hover {
    border-color: var(--bb-primary);
    opacity: 1;
}

.bb-house__thumb img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.bb-house__summary {
    position: sticky;
    top: 100px;
    padding: 28px;
    border: 1px solid var(--bb-border);
    border-radius: var(--bb-radius);
    background: #fff;
}

.bb-house__title {
    margin: 12px 0 8px;
    font-size: 32px;
    line-height: 1.2;
}

.bb-house__address {
    color: var(--bb-muted);
}

.bb-house__price {
    display: flex;
    flex-direction: column;
    margin: 20px 0;
    padding: 16px 0;
    border-top: 1px solid var(--bb-border);
    border-bottom: 1px solid var(--bb-border);
}

.bb-house__price-label {
    color: var(--bb-muted);
    font-size: 14px;
}

.bb-house__price-value {
    color: var(--bb-primary);
    font-size: 28px;
    font-weight: 700;
}

.bb-house__facts {
    margin: 0 0 24px;
}

.bb-house__fact {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    padding: 6px 0;
}

.bb-house__fact dt {
    color: var(--bb-muted);
}

.bb-house__fact dd {
    margin: 0;
    font-weight: 600;
    text-align: right;
}

/* Sections */
.bb-house__section {
    margin-top: 56px;
}

.bb-house__heading {
    margin: 0 0 24px;
    font-size: 26px;
}


/* Stage badge */
.bb-stage {
    display: inline-block;
    padding: 4px 10px;
    border-radius: 999px;
    background: var(--bb-primary);
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .02em;
    line-height: 1.4;
    text-transform: uppercase;
}

.bb-stage--done,
.bb-stage--keys {
    background: #3a3a40;
}

/* Construction progress */
.bb-progress {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    margin: 0;
    padding: 0;
    list-style: none;
}

.bb-progress__step {
    position: relative;
    padding-top: 28px;
    color: var(--bb-muted);
    font-size: 14px;
    text-align: center;
}

.bb-progress__step::before {
    content: "";
    position: absolute;
    top: 9px;
    left: 0;
    right: 0;
    height: 3px;
    background: var(--bb-border);
}

.bb-progress__step:first-child::before {
    left: 50%;
}

.bb-progress__step:last-child::before {
    right: 50%;
}

.bb-progress__step--done::before,
.bb-progress__step--current::before {
    background: var(--bb-primary);
}

.bb-progress__step--current::before {
    background: linear-gradient(to right, var(--bb-primary) 50%, var(--bb-border) 50%);
}

.bb-progress__step--current:first-child::before {
    background: var(--bb-border);
}

.bb-progress__step--current:last-child::before {
    background: var(--bb-primary);
}

.bb-progress__dot {
    position: absolute;
    top: 2px;
    left: 50%;
    z-index: 1;
    width: 17px;
    height: 17px;
    margin-left: -8px;
    border: 3px solid var(--bb-border);
    border-radius: 50%;
    background: #fff;
}

.bb-progress__step--done .bb-progress__dot {
    border-color: var(--bb-primary);
    background: var(--bb-primary);
}

.bb-progress__step--current .bb-progress__dot {
    border-color: var(--bb-primary);
    box-shadow: 0 0 0 5px color-mix(in srgb, var(--bb-primary) 20%, transparent);
}

.bb-progress__step--current {
    color: var(--bb-text);
    font-weight: 700;
}

/* Rooms filter */
.bb-filter {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 20px;
}

.bb-filter__chip {
    padding: 8px 16px;
    border: 1px solid var(--bb-border);
    border-radius: 999px;
    background: #fff;
    color: var(--bb-text);
    font: inherit;
    cursor: pointer;
}

.bb-filter__chip.is-active,
.bb-filter__chip:hover {
    border-color: var(--bb-primary);
    background: var(--bb-primary);
    color: #fff;
}

/* Apartments list */
.bb-flats {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.bb-flat {
    display: grid;
    grid-template-columns: 120px minmax(0, 1fr) auto;
    gap: 20px;
    align-items: center;
    padding: 12px;
    border: 1px solid var(--bb-border);
    border-radius: var(--bb-radius);
    background: #fff;
    color: inherit;
    text-decoration: none;
    transition: border-color .15s, box-shadow .15s;
}

.bb-flat[hidden] {
    display: none;
}

.bb-flat:hover {
    border-color: var(--bb-primary);
    box-shadow: 0 6px 20px rgba(0, 0, 0, .06);
}

.bb-flat__image {
    overflow: hidden;
    height: 84px;
    border-radius: 6px;
    background: var(--bb-surface);
}

.bb-flat__image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.bb-flat__info {
    display: flex;
    flex-direction: column;
    gap: 6px;
    min-width: 0;
}

.bb-flat__title {
    font-weight: 600;
}

.bb-flat__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 16px;
    color: var(--bb-muted);
    font-size: 14px;
}

.bb-flat__price {
    padding-right: 8px;
    font-size: 20px;
    font-weight: 700;
    white-space: nowrap;
}

/* Buttons */
.bb-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 14px 24px;
    border-radius: var(--bb-radius);
    background: var(--bb-primary);
    color: #fff !important;
    font-weight: 600;
    text-decoration: none;
    white-space: nowrap;
    transition: filter .15s;
}

.bb-button:hover {
    filter: brightness(.92);
}

.bb-button--wide {
    width: 100%;
}

/* House cards */
.bb-houses-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
}

.bb-houses-grid--cols-1 { grid-template-columns: minmax(0, 1fr); }
.bb-houses-grid--cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.bb-houses-grid--cols-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }

.bb-house-card {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid var(--bb-border);
    border-radius: var(--bb-radius);
    background: #fff;
    color: inherit;
    text-decoration: none;
    transition: box-shadow .2s, transform .2s;
}

.bb-house-card:hover {
    box-shadow: 0 12px 32px rgba(0, 0, 0, .08);
    transform: translateY(-2px);
}

.bb-house-card__image {
    position: relative;
    aspect-ratio: 4 / 3;
    background: var(--bb-surface);
}

.bb-house-card__image img {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.bb-house-card__image .bb-stage {
    position: absolute;
    top: 14px;
    left: 14px;
}

.bb-house-card__body {
    display: flex;
    flex: 1;
    flex-direction: column;
    gap: 6px;
    padding: 18px 20px 20px;
}

.bb-house-card__title {
    margin: 0;
    font-size: 20px;
    line-height: 1.3;
}

.bb-house-card__address,
.bb-house-card__deadline {
    color: var(--bb-muted);
    font-size: 14px;
}

.bb-house-card__footer {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 12px;
    margin-top: auto;
    padding-top: 14px;
}

.bb-house-card__price {
    color: var(--bb-primary);
    font-size: 18px;
    font-weight: 700;
}

.bb-house-card__count {
    color: var(--bb-primary);
    font-size: 14px;
    font-weight: 600;
    white-space: nowrap;
}

.bb-houses-more {
    margin-top: 40px;
    text-align: center;
}

.bb-houses-empty {
    color: var(--bb-muted);
}

/* «Этот дом» on the apartment page */
.bb-listing-house {
    display: flex;
    gap: 20px;
    align-items: center;
    padding: 16px;
    border: 1px solid var(--bb-border);
    border-radius: var(--bb-radius);
    background: var(--bb-surface);
}

.bb-listing-house__image {
    flex: 0 0 120px;
    overflow: hidden;
    height: 90px;
    border-radius: 6px;
}

.bb-listing-house__image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.bb-listing-house__body {
    flex: 1;
    min-width: 0;
}

.bb-listing-house__label {
    color: var(--bb-muted);
    font-size: 13px;
}

.bb-listing-house__title {
    display: block;
    margin: 2px 0 8px;
    color: var(--bb-text);
    font-size: 20px;
    font-weight: 700;
    text-decoration: none;
}

.bb-listing-house__title:hover {
    color: var(--bb-primary);
}

.bb-listing-house__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 14px;
    align-items: center;
    color: var(--bb-muted);
    font-size: 14px;
}

@media (max-width: 1024px) {
    .bb-houses-grid,
    .bb-houses-grid--cols-4 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .bb-house__top {
        grid-template-columns: minmax(0, 1fr);
    }

    .bb-house__summary {
        position: static;
    }
}

@media (max-width: 767px) {
    .bb-houses-grid,
    .bb-houses-grid--cols-2,
    .bb-houses-grid--cols-4 {
        grid-template-columns: minmax(0, 1fr);
    }

    .bb-house__title {
        font-size: 26px;
    }

    .bb-progress {
        grid-template-columns: minmax(0, 1fr);
        gap: 14px;
    }

    .bb-progress__step {
        padding: 0 0 0 32px;
        text-align: left;
    }

    .bb-progress__step::before {
        top: 0;
        bottom: -14px;
        left: 8px !important;
        right: auto !important;
        width: 3px;
        height: auto;
    }

    .bb-progress__step:last-child::before {
        display: none;
    }

    .bb-progress__step--current::before {
        background: var(--bb-border);
    }

    .bb-progress__dot {
        top: 1px;
        left: 0;
        margin-left: 0;
    }

    .bb-flat {
        grid-template-columns: 88px minmax(0, 1fr);
        gap: 12px;
    }

    .bb-flat__image {
        height: 72px;
    }

    .bb-flat__price {
        grid-column: 2;
        font-size: 18px;
    }

    .bb-listing-house {
        flex-wrap: wrap;
    }

    .bb-listing-house .bb-button {
        width: 100%;
    }
}

.bb-map-popup {
    display: flex;
    flex-direction: column;
    gap: 4px;
    width: 220px;
    color: #14141a;
    text-decoration: none;
}

.bb-map-popup__image {
    width: 100%;
    height: 120px;
    margin-bottom: 4px;
    border-radius: 6px;
    object-fit: cover;
}

.bb-map-popup__title {
    font-weight: 600;
}

.bb-map-popup__price {
    font-weight: 700;
}

/* Cards / map switch */
.bb-switch__tabs {
    display: flex;
    justify-content: center;
    gap: 8px;
    margin-bottom: 24px;
}

.bb-switch__panel[hidden] {
    display: none;
}

.bb-map-houses {
    overflow: hidden;
    border-radius: var(--bb-radius);
}

/* Quick links under the search form */
.bb-quick-links {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px;
}

.bb-quick-links__item {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 14px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .92);
    color: #14141a;
    font-size: 14px;
    font-weight: 500;
    text-decoration: none;
    transition: background .15s;
}

.bb-quick-links__item:hover {
    background: #fff;
    color: var(--bb-primary);
}

.bb-quick-links__count {
    color: var(--bb-muted);
    font-size: 13px;
}

/* Yandex Maps */
.bb-ymap {
    min-height: 320px;
}

.bb-ymap--search {
    position: absolute;
    inset: 0;
    z-index: 0;
    min-height: 0;
}

.bb-ymap-count {
    position: absolute;
    top: 12px;
    left: 50%;
    z-index: 2;
    padding: 6px 14px;
    border-radius: 999px;
    background: #fff;
    box-shadow: 0 2px 10px rgba(0, 0, 0, .15);
    font-size: 14px;
    pointer-events: none;
    transform: translateX(-50%);
}

.bb-ymap-popup {
    display: flex;
    flex-direction: column;
    gap: 4px;
    width: 220px;
    color: #14141a;
    text-decoration: none;
}

.bb-ymap-popup__image {
    width: 100%;
    height: 120px;
    margin-bottom: 4px;
    border-radius: 6px;
    object-fit: cover;
}

.bb-ymap-popup__title {
    font-weight: 600;
}

.bb-ymap-popup__price {
    font-weight: 700;
}

/* «О доме» */
.bb-house-about {
    display: grid;
    grid-template-columns: 240px minmax(0, 1fr);
    gap: 32px;
    padding: 40px;
    border-radius: var(--bb-radius);
    background: var(--bb-surface);
}

.bb-house-about__heading {
    margin: 0;
}

.bb-house-about__heading::after {
    content: "";
    display: block;
    width: 40px;
    height: 3px;
    margin-top: 14px;
    background: var(--bb-primary);
}

.bb-house-about__text {
    max-width: 70ch;
    color: #4b5563;
    line-height: 1.7;
}

.bb-house-about__text p {
    margin: 0 0 16px;
}

.bb-house-about__text p:first-child {
    color: var(--bb-text);
    font-size: 18px;
}

.bb-house-about__text p:last-child {
    margin-bottom: 0;
}

/* Brand map */
.bb-brand-map {
    z-index: 0;
    overflow: hidden;
    border-radius: var(--bb-radius);
    background: #efece6;
}

.bb-brand-map .leaflet-tile-pane {
    filter: saturate(.35) sepia(.14) brightness(1.03);
}

.bb-brand-pin {
    background: none;
    border: 0;
    filter: drop-shadow(0 3px 5px rgba(0, 0, 0, .3));
}

.bb-price-pin-wrap {
    width: 0 !important;
    height: 0 !important;
    background: none;
    border: 0;
}

.bb-price-pin {
    position: absolute;
    bottom: 7px;
    left: 0;
    padding: 6px 10px;
    border-radius: 8px;
    background: var(--bb-primary, #E20C24);
    box-shadow: 0 3px 8px rgba(0, 0, 0, .3);
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.2;
    transform: translateX(-50%);
    white-space: nowrap;
    cursor: pointer;
}

.bb-price-pin::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -6px;
    border: 6px solid transparent;
    border-top-color: inherit;
    border-bottom: 0;
    border-top-color: var(--bb-primary, #E20C24);
}

.is-active .bb-price-pin {
    background: #14141a;
}

.is-active .bb-price-pin::after {
    border-top-color: #14141a;
}

.bb-brand-map .leaflet-popup-content-wrapper {
    overflow: hidden;
    padding: 0;
    border-radius: 12px;
    /* The theme forces a transparent popup */
    background: #fff !important;
    box-shadow: 0 6px 24px rgba(0, 0, 0, .25) !important;
}

.bb-brand-map .leaflet-popup-tip {
    background: #fff !important;
}

.bb-brand-map .leaflet-popup {
    opacity: 1 !important;
}

.bb-brand-map .leaflet-popup-content {
    width: auto !important;
    margin: 0;
    font-family: Inter, sans-serif;
}

.bb-brand-map .leaflet-popup-close-button {
    z-index: 1;
    top: 6px !important;
    right: 6px !important;
    width: 24px !important;
    height: 24px !important;
    border-radius: 50%;
    background: rgba(255, 255, 255, .9) !important;
    color: #14141a !important;
    line-height: 22px !important;
}

/* Yandex balloon: the card fills it edge to edge */
.bb-brand-map [class*="balloon__content"] {
    margin-right: 0 !important;
    padding: 0 !important;
    font-family: Inter, sans-serif;
}

.bb-brand-map [class*="balloon__layout"] {
    overflow: hidden;
    border-radius: 12px;
}

.bb-brand-map [class*="balloon__close"] {
    position: absolute;
    z-index: 2;
    top: 6px;
    right: 6px;
}

.bb-brand-map [class*="balloon__close-button"] {
    position: static;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .9) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2 2l8 8M10 2l-8 8' stroke='%2314141a' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E") center / 12px no-repeat;
    opacity: 1;
    cursor: pointer;
}

.bb-map-card {
    width: 250px;
    color: #14141a;
}

.bb-map-card--office {
    padding: 16px 30px 16px 16px;
}

.bb-map-card__image {
    display: block;
    width: 100%;
    height: 120px;
    object-fit: cover;
}

.bb-map-card__body {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: 12px 14px 14px;
}

.bb-map-card__stage {
    color: var(--bb-primary, #E20C24);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .03em;
    text-transform: uppercase;
}

.bb-map-card__title {
    font-size: 15px;
    font-weight: 700;
}

.bb-map-card__meta {
    color: #6b7280;
    font-size: 13px;
}

.bb-map-card__price {
    margin-top: 2px;
    font-size: 14px;
    font-weight: 700;
}

.bb-brand-map a.bb-map-card__link {
    margin-top: 4px;
    color: var(--bb-primary, #E20C24);
    font-weight: 600;
    text-decoration: none;
}

.bb-brand-map a.bb-map-card__route {
    display: flex;
    margin-top: 12px;
    padding: 10px 14px;
    background: var(--bb-primary, #E20C24);
    font-size: 13px;
}

.bb-house__catalog-map {
    margin-bottom: 32px;
}

.bb-house-location__bar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 12px 24px;
    margin-bottom: 16px;
}

/* Ribbon of house cards */
.bb-houses-ribbon {
    position: relative;
}

.bb-houses-ribbon__track {
    display: flex;
    gap: 24px;
    padding: 4px 2px 8px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
}

.bb-houses-ribbon__track::-webkit-scrollbar {
    display: none;
}

.bb-houses-ribbon__track > .bb-house-card {
    flex: 0 0 calc((100% - 48px) / 3);
    scroll-snap-align: start;
}

.bb-houses-ribbon__arrow {
    position: absolute;
    top: 38%;
    z-index: 2;
    width: 44px;
    height: 44px;
    padding: 0;
    border: 1px solid var(--bb-border);
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 4px 14px rgba(0, 0, 0, .15);
    color: var(--bb-text);
    font-size: 26px;
    line-height: 38px;
    cursor: pointer;
}

.bb-houses-ribbon__arrow[hidden] {
    display: none;
}

.bb-houses-ribbon__arrow:hover {
    border-color: var(--bb-primary);
    color: var(--bb-primary);
}

.bb-houses-ribbon__arrow--prev {
    left: -22px;
}

.bb-houses-ribbon__arrow--next {
    right: -22px;
}

/* The «Сдача в этом году» section disappears when there are no such houses */
.e-con:has(> .e-con-inner .bb-soon-empty),
.e-con:has(> .elementor-widget-shortcode .bb-soon-empty) {
    display: none;
}

/* Search page: «Найдено: 13», no «sale» hints on the cards */
.myhome-search-map-v2-results__count-label {
    display: none;
}

.myhome-search-map-v2-results__count::before {
    content: "Найдено: ";
}

.myhome-listing-card__labels,
.myhome-listing-card-user {
    display: none !important;
}

@media (max-width: 1024px) {
    .bb-houses-ribbon__track > .bb-house-card {
        flex-basis: calc((100% - 24px) / 2);
    }

    .bb-houses-ribbon__arrow--prev {
        left: 4px;
    }

    .bb-houses-ribbon__arrow--next {
        right: 4px;
    }
}

@media (max-width: 767px) {
    .bb-house-about {
        grid-template-columns: minmax(0, 1fr);
        gap: 20px;
        padding: 24px 20px;
    }

    .bb-houses-ribbon__track {
        gap: 14px;
    }

    .bb-houses-ribbon__track > .bb-house-card {
        flex-basis: 84%;
    }

    .bb-houses-ribbon__arrow {
        display: none;
    }

    .bb-switch__tabs .bb-filter__chip {
        flex: 1;
    }

    .bb-price-pin {
        padding: 4px 8px;
        font-size: 12px;
    }

    .bb-map-card {
        width: 210px;
    }

    .bb-map-card__image {
        height: 90px;
    }

    .bb-quick-links {
        flex-wrap: nowrap;
        justify-content: flex-start;
        overflow-x: auto;
        scrollbar-width: none;
    }

    .bb-quick-links__item {
        flex: 0 0 auto;
    }

    /* Compact search form: both prices in one row */
    .myhome-search-form .myhome-range-field {
        flex-flow: row nowrap !important;
        align-items: center;
        gap: 8px;
    }

    .myhome-search-form .myhome-range-field .myhome-search-form-field {
        flex: 1 1 0 !important;
        width: auto !important;
        min-width: 0;
        margin: 0 !important;
    }

    /* Footer address: the icon sits inline right before the text, like the phone and e-mail */
    .myhome-address .myhome-small-data {
        display: block;
        text-align: inherit;
    }

    .myhome-address .myhome-small-data__icon {
        display: inline-block !important;
        margin-right: 8px;
        vertical-align: -3px;
    }

    .myhome-address .myhome-small-data__value {
        display: inline;
    }

    /* Sorting fits the phone screen */
    .myhome-search-map-v2-results__header {
        flex-wrap: wrap;
    }

    .myhome-search-map-v2-results__actions {
        max-width: 100%;
        min-width: 0;
    }

    .myhome-search-map-v2-results__actions select,
    .myhome-search-map-v2-results__actions .myhome-select {
        max-width: 100%;
        min-width: 0;
    }
}

/* Apartment page: design variants (one apartment, a style switcher for each room) */
.bb-designs {
    --bb-primary: var(--e-global-color-lprimary1, #e20c24);
    --bb-text: var(--e-global-color-lcolor1, #14141a);
    --bb-muted: #6b7280;
    --bb-border: #e5e7eb;
    --bb-surface: #f5f6f8;
    --bb-radius: var(--e-global-lborder-radius, 10px);
    margin: 8px 0 32px;
    color: var(--bb-text);
    font-family: Inter, sans-serif;
}
.bb-designs__head { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 16px; }
.bb-designs__title { margin: 0 0 4px; color: var(--bb-text); font-family: inherit; font-size: 22px; font-weight: 700; line-height: 1.3; }
.bb-designs__text { margin: 0; color: var(--bb-muted); font-size: 15px; line-height: 1.5; }
.bb-designs .bb-designs__plan {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    gap: 10px;
    padding: 6px 14px 6px 6px;
    border: 1px solid var(--bb-border);
    border-radius: var(--bb-radius);
    background: #fff;
    color: var(--bb-text);
    font-size: 15px;
    font-weight: 600;
    text-decoration: none;
    transition: border-color .2s, color .2s;
}
.bb-designs .bb-designs__plan:hover { border-color: var(--bb-primary); color: var(--bb-primary); }
.bb-designs__plan img { display: block; width: 48px; height: 48px; border-radius: 6px; object-fit: cover; }
.bb-designs__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 20px; }
.bb-design { display: flex; flex-direction: column; overflow: hidden; border: 1px solid var(--bb-border); border-radius: var(--bb-radius); background: #fff; }
.bb-design__top { flex: 1 0 auto; padding: 14px 14px 12px; }
.bb-design__room { display: block; margin-bottom: 10px; font-size: 16px; font-weight: 700; }
.bb-design__chips { display: flex; flex-wrap: wrap; gap: 8px; }
.bb-design .bb-filter__chip {
    padding: 6px 14px;
    border: 1px solid var(--bb-border);
    border-radius: 999px;
    background: #fff;
    color: var(--bb-text);
    font: inherit;
    font-size: 14px;
    line-height: 1.3;
    cursor: pointer;
}
.bb-design .bb-filter__chip.is-active,
.bb-design .bb-filter__chip:hover { border-color: var(--bb-primary); background: var(--bb-primary); color: #fff; }
.bb-design__frame { position: relative; aspect-ratio: 1 / 1; background: var(--bb-surface); }
.bb-design__photo { position: absolute; inset: 0; opacity: 0; visibility: hidden; transition: opacity .25s, visibility .25s; cursor: zoom-in; }
.bb-design__photo.is-active { opacity: 1; visibility: visible; }
.bb-design__photo img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 50% 45%; }
.bb-zoom {
    position: fixed;
    inset: 0;
    z-index: 100000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
    background: rgba(10, 10, 14, .88);
    cursor: zoom-out;
}
.bb-zoom figure { display: flex; flex-direction: column; align-items: center; gap: 10px; max-width: 100%; max-height: 100%; margin: 0; }
.bb-zoom img { max-width: min(1100px, 100%); max-height: calc(100vh - 110px); border-radius: 6px; object-fit: contain; cursor: default; }
.bb-zoom figcaption { color: #fff; font-family: Inter, sans-serif; font-size: 15px; }
.bb-zoom .bb-zoom__close {
    position: absolute;
    top: 12px;
    right: 16px;
    width: 44px;
    height: 44px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, .14);
    color: #fff;
    font-size: 28px;
    line-height: 44px;
    cursor: pointer;
}
@media (max-width: 767px) {
    .bb-designs__head { flex-direction: column; align-items: flex-start; }
    .bb-designs__title { font-size: 20px; }
    .bb-designs__grid { grid-template-columns: minmax(0, 1fr); gap: 16px; }
}

/* Apartment page: agency contact card (instead of the theme's agent box) */
.bb-agency {
    --bb-primary: var(--e-global-color-lprimary1, #e20c24);
    --bb-text: var(--e-global-color-lcolor1, #14141a);
    --bb-muted: #6b7280;
    --bb-border: #e5e7eb;
    --bb-radius: var(--e-global-lborder-radius, 10px);
    padding: 24px;
    border: 1px solid var(--bb-border);
    border-radius: 16px;
    background: #fff;
    color: var(--bb-text);
    font-family: Inter, sans-serif;
}
.bb-agency__brand { display: flex; flex-direction: column; align-items: center; gap: 8px; padding-bottom: 16px; border-bottom: 1px solid var(--bb-border); text-align: center; }
.bb-agency__logo { display: block; width: 170px; max-width: 100%; height: auto; }
.bb-agency__tag { color: var(--bb-muted); font-size: 14px; }
.bb-agency__text { margin: 16px 0; color: var(--bb-text); font-size: 15px; line-height: 1.5; text-align: center; }
.bb-agency .bb-agency__phone {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 13px 16px;
    border-radius: var(--bb-radius);
    background: var(--bb-primary);
    color: #fff;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.2;
    text-decoration: none;
    transition: opacity .2s;
}
.bb-agency .bb-agency__phone:hover { color: #fff; opacity: .9; }
.bb-agency__phone svg { width: 18px; height: 18px; fill: currentColor; }
.bb-agency__chat { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-top: 10px; }
.bb-agency .bb-agency__btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 10px 12px;
    border: 1px solid var(--bb-border);
    border-radius: var(--bb-radius);
    background: #fff;
    color: var(--bb-text);
    font-size: 15px;
    font-weight: 600;
    line-height: 1.2;
    text-decoration: none;
    transition: border-color .2s, color .2s;
}
.bb-agency .bb-agency__btn:hover { border-color: var(--bb-primary); color: var(--bb-primary); }
.bb-agency__btn svg { width: 18px; height: 18px; }
.bb-agency__btn--wa svg { fill: #25d366; }
.bb-agency__btn--tg svg { fill: #229ed9; }
.bb-agency__or { display: flex; align-items: center; gap: 10px; margin: 20px 0 14px; color: var(--bb-muted); font-size: 13px; }
.bb-agency__or::before,
.bb-agency__or::after { content: ''; flex: 1; height: 1px; background: var(--bb-border); }

/* ---------- Long-term rent ---------- */
.bb-rent, .bb-rent-cta, .bb-rent-terms, .bb-rent-done {
    --bb-primary: var(--e-global-color-lprimary1, #e20c24);
    --bb-text: var(--e-global-color-lcolor1, #14141a);
    --bb-muted: #6b7280;
    --bb-border: #e5e7eb;
    --bb-surface: #f5f6f8;
    --bb-radius: var(--e-global-lborder-radius, 10px);
    color: var(--bb-text);
    font-family: Inter, sans-serif;
}
.bb-wrap { box-sizing: border-box; max-width: 1200px; margin: 0 auto; padding: 0 20px; }
.bb-wrap--narrow { max-width: 860px; }
.bb-rent .bb-btn {
    display: inline-flex; align-items: center; justify-content: center; gap: 8px; box-sizing: border-box;
    min-height: 48px; padding: 12px 24px; border: 1px solid transparent; border-radius: var(--bb-radius);
    font-family: inherit; font-size: 16px; font-weight: 600; line-height: 1.2; text-decoration: none; cursor: pointer;
    transition: background .2s, color .2s, border-color .2s;
}
.bb-rent .bb-btn--primary { background: var(--bb-primary); color: #fff; }
.bb-rent .bb-btn--primary:hover, .bb-rent .bb-btn--primary:focus-visible { background: #c10a1f; color: #fff; }
.bb-rent .bb-btn--ghost { border-color: var(--bb-border); background: #fff; color: var(--bb-text); }
.bb-rent .bb-btn--ghost:hover { border-color: var(--bb-primary); background: #fff; color: var(--bb-primary); }
.bb-rent .bb-btn:disabled { opacity: .6; cursor: wait; }

.bb-rent-hero { padding: 56px 0 40px; background: linear-gradient(180deg, #f5f6f8 0%, #fff 100%); }
.bb-rent-hero--compact { padding-bottom: 24px; }
.bb-rent .bb-rent-hero__title { max-width: 820px; margin: 0 0 12px; color: var(--bb-text); font-family: inherit; font-size: 40px; font-weight: 800; line-height: 1.15; }
.bb-rent .bb-rent-hero__text { max-width: 720px; margin: 0 0 24px; color: #374151; font-size: 18px; line-height: 1.55; }
.bb-rent-hero__actions { display: flex; flex-wrap: wrap; gap: 12px; }

.bb-rent-list { padding: 24px 0 56px; }
.bb-rent-chips { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 24px; }
.bb-rent .bb-rent-chips a { display: inline-flex; align-items: center; gap: 8px; padding: 8px 14px; border: 1px solid var(--bb-border); border-radius: 999px; background: #fff; color: var(--bb-text); font-size: 14px; text-decoration: none; }
.bb-rent .bb-rent-chips a:hover { border-color: var(--bb-primary); color: var(--bb-primary); }
.bb-rent-chips span { color: var(--bb-muted); font-size: 13px; }
.bb-rent-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 24px; }
.bb-rent .bb-rent-card { display: flex; flex-direction: column; overflow: hidden; border: 1px solid var(--bb-border); border-radius: var(--bb-radius); background: #fff; color: var(--bb-text); text-decoration: none; transition: box-shadow .2s, transform .2s; }
.bb-rent .bb-rent-card:hover { box-shadow: 0 12px 32px rgba(0, 0, 0, .08); transform: translateY(-2px); color: var(--bb-text); }
.bb-rent-card__image { position: relative; display: block; overflow: hidden; aspect-ratio: 4 / 3; background: var(--bb-surface); }
.bb-rent-card__image img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.bb-rent-card__body { display: flex; flex-direction: column; gap: 6px; padding: 14px 16px 16px; }
.bb-rent-card__price { font-size: 20px; font-weight: 800; }
.bb-rent-card__price small { margin-left: 2px; color: var(--bb-muted); font-size: 14px; font-weight: 500; }
.bb-rent-card__title { font-size: 15px; font-weight: 600; }
.bb-rent-card__meta { color: var(--bb-muted); font-size: 14px; }
.bb-rent-more { margin-top: 32px; text-align: center; }

.bb-verified { display: inline-flex; align-items: center; gap: 6px; padding: 5px 10px; border-radius: 999px; background: #e8f7ee; color: #13803d; font-size: 13px; font-weight: 600; line-height: 1.2; }
.bb-verified svg { width: 16px; height: 16px; fill: currentColor; }
.bb-verified--card { position: absolute; top: 12px; left: 12px; background: rgba(255, 255, 255, .95); }

.bb-rent-empty { max-width: 640px; margin: 8px auto 0; padding: 40px 28px; border: 1px dashed #d1d5db; border-radius: 16px; background: #fff; text-align: center; }
.bb-rent-empty svg { width: 48px; height: 48px; fill: var(--bb-primary); }
.bb-rent .bb-rent-empty h2 { margin: 12px 0 8px; color: var(--bb-text); font-family: inherit; font-size: 24px; font-weight: 700; line-height: 1.3; }
.bb-rent .bb-rent-empty p { margin: 0 0 20px; color: #4b5563; font-size: 16px; line-height: 1.55; }

.bb-rent-teaser { padding: 0 0 64px; }
.bb-rent-teaser__box { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 32px; border-radius: 16px; background: #14141a; color: #fff; }
.bb-rent .bb-rent-teaser__box h2 { margin: 0 0 8px; color: #fff; font-family: inherit; font-size: 24px; font-weight: 700; line-height: 1.3; }
.bb-rent .bb-rent-teaser__box p { max-width: 640px; margin: 0; color: rgba(255, 255, 255, .8); font-size: 16px; line-height: 1.5; }
.bb-rent-teaser .bb-btn { flex-shrink: 0; }

.bb-rent-section { padding: 56px 0; }
.bb-rent-section--grey { background: var(--bb-surface); }
.bb-rent .bb-rent-section__title { margin: 0 0 24px; color: var(--bb-text); font-family: inherit; font-size: 30px; font-weight: 800; line-height: 1.2; }
.bb-rent-who { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.bb-rent-who > div { display: flex; flex-direction: column; gap: 8px; padding: 24px; border: 1px solid var(--bb-border); border-radius: 16px; background: #fff; }
.bb-rent-who strong { font-size: 18px; }
.bb-rent-who span { color: #4b5563; font-size: 15px; line-height: 1.5; }
.bb-rent .bb-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; margin: 0; padding: 0; list-style: none; counter-reset: bbstep; }
.bb-rent .bb-steps li { position: relative; display: flex; flex-direction: column; gap: 6px; margin: 0; padding: 24px 24px 24px 72px; border-radius: 16px; background: #fff; counter-increment: bbstep; }
.bb-rent .bb-steps li::before { content: counter(bbstep); position: absolute; top: 22px; left: 24px; display: flex; align-items: center; justify-content: center; width: 34px; height: 34px; border-radius: 50%; background: var(--bb-primary); color: #fff; font-weight: 700; }
.bb-steps strong { font-size: 17px; }
.bb-steps span { color: #4b5563; font-size: 15px; line-height: 1.5; }
.bb-rent .bb-steps--inline { margin-top: 28px; }
.bb-rent .bb-steps--inline li { padding: 18px 18px 18px 64px; border: 1px solid var(--bb-border); }
.bb-rent .bb-steps--inline li::before { top: 18px; left: 18px; }
.bb-faq details { border-bottom: 1px solid var(--bb-border); }
.bb-faq summary { position: relative; padding: 18px 32px 18px 0; font-size: 17px; font-weight: 600; list-style: none; cursor: pointer; }
.bb-faq summary::-webkit-details-marker { display: none; }
.bb-faq summary::after { content: '+'; position: absolute; top: 13px; right: 4px; color: var(--bb-primary); font-size: 24px; }
.bb-faq details[open] summary::after { content: '–'; }
.bb-rent .bb-faq p { margin: 0 0 18px; color: #4b5563; font-size: 16px; line-height: 1.6; }

.bb-rent-formwrap { padding: 32px 0 64px; }
.bb-rent .bb-rent-formwrap__lead { margin: -12px 0 20px; color: var(--bb-muted); font-size: 15px; }
.bb-rent .bb-rent-formwrap__alt { margin: 20px 0 0; color: #4b5563; font-size: 15px; text-align: center; }
.bb-rent .bb-rent-formwrap__alt a, .bb-rent .bb-consent a { color: var(--bb-primary); }

.bb-rent-form { display: flex; flex-direction: column; gap: 16px; }
.bb-rent-form__group { min-width: 0; margin: 0; padding: 20px 22px; border: 1px solid var(--bb-border); border-radius: 16px; background: #fff; }
.bb-rent-form__group legend { float: left; width: 100%; margin: 0 0 14px; padding: 0; color: var(--bb-text); font-size: 18px; font-weight: 700; }
.bb-rent-form__group legend + * { clear: both; }
.bb-rent-form__row { display: grid; gap: 14px; margin-bottom: 14px; }
.bb-rent-form__row:last-child { margin-bottom: 0; }
.bb-rent-form__row--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.bb-rent-form__row--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.bb-rent-form .bb-field { display: flex; flex-direction: column; gap: 6px; margin: 0 0 14px; color: #374151; font-size: 14px; }
.bb-rent-form .bb-rent-form__row .bb-field { margin: 0; }
.bb-rent-form .bb-field > span { font-weight: 600; }
.bb-rent-form .bb-field small { color: var(--bb-muted); font-weight: 400; }
.bb-rent-form input[type=text], .bb-rent-form input[type=tel], .bb-rent-form input[type=email], .bb-rent-form input[type=number],
.bb-rent-form input[type=date], .bb-rent-form select, .bb-rent-form textarea {
    box-sizing: border-box; width: 100%; min-height: 46px; margin: 0; padding: 10px 14px; border: 1px solid #d1d5db;
    border-radius: var(--bb-radius); background: #fff; color: var(--bb-text); font: inherit; font-size: 15px; box-shadow: none;
}
.bb-rent-form textarea { min-height: 120px; resize: vertical; }
.bb-rent-form input:focus, .bb-rent-form select:focus, .bb-rent-form textarea:focus { border-color: var(--bb-primary); outline: none; box-shadow: 0 0 0 3px rgba(226, 12, 36, .12); }
.bb-rent-form__price-label em { color: inherit; font-style: normal; }
.bb-rent-form.is-agent .bb-rent-form__price-label em { display: none; }

.bb-choice, .bb-checks { display: flex; flex-wrap: wrap; gap: 8px; }
.bb-choice label, .bb-checks label { position: relative; margin: 0; cursor: pointer; }
.bb-choice input, .bb-checks input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.bb-choice span, .bb-checks span { display: inline-flex; align-items: center; min-height: 40px; box-sizing: border-box; padding: 8px 16px; border: 1px solid #d1d5db; border-radius: 999px; background: #fff; color: var(--bb-text); font-size: 14px; font-weight: 500; }
.bb-choice input:checked + span { border-color: var(--bb-primary); background: var(--bb-primary); color: #fff; }
.bb-checks span::before { content: ''; box-sizing: border-box; width: 16px; height: 16px; margin-right: 8px; border: 1.5px solid #9ca3af; border-radius: 4px; }
.bb-checks input:checked + span { border-color: var(--bb-primary); background: #fdecee; color: var(--bb-primary); }
.bb-checks input:checked + span::before { border-color: var(--bb-primary); background: var(--bb-primary) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/%3E%3C/svg%3E") center / 12px no-repeat; }
.bb-choice input:focus-visible + span, .bb-checks input:focus-visible + span { box-shadow: 0 0 0 3px rgba(226, 12, 36, .2); }

.bb-upload { position: relative; display: flex; align-items: center; justify-content: center; gap: 10px; min-height: 96px; border: 2px dashed #d1d5db; border-radius: 12px; background: var(--bb-surface); color: #374151; font-weight: 600; cursor: pointer; }
.bb-upload:hover { border-color: var(--bb-primary); color: var(--bb-primary); }
.bb-upload input { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; cursor: pointer; }
.bb-upload svg { width: 26px; height: 26px; fill: currentColor; }
.bb-upload__preview { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
.bb-upload__preview img { width: 72px; height: 72px; border-radius: 8px; object-fit: cover; }
.bb-upload__preview span { align-self: center; color: var(--bb-muted); font-size: 13px; }

.bb-rent-form__agent { border-color: #f7c9cf; background: #fff7f7; }
.bb-agent-toggle { display: flex; align-items: flex-start; gap: 12px; margin: 0; cursor: pointer; }
.bb-agent-toggle input { flex-shrink: 0; width: 20px; height: 20px; margin: 2px 0 0; accent-color: var(--bb-primary); }
.bb-agent-toggle span { display: flex; flex-direction: column; gap: 4px; color: #4b5563; font-size: 14px; line-height: 1.5; }
.bb-agent-toggle strong { color: var(--bb-text); font-size: 16px; }
.bb-rent-form .bb-rent-form__keys { display: none; margin: 14px 0 0; }
.bb-rent-form.is-agent .bb-rent-form__keys { display: flex; }

.bb-rent-form__footer { display: flex; flex-direction: column; align-items: flex-start; gap: 14px; }
.bb-consent { display: flex; align-items: flex-start; gap: 10px; margin: 0; color: #4b5563; font-size: 14px; line-height: 1.5; cursor: pointer; }
.bb-consent input { flex-shrink: 0; width: 18px; height: 18px; margin: 2px 0 0; accent-color: var(--bb-primary); }
.bb-rent .bb-rent-form__submit { min-width: 260px; }
.bb-rent-form__status { margin: 0; font-size: 14px; }
.bb-rent-form__status.is-error { color: #b91c1c; }
.bb-rent-form__hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

.bb-rent-done { padding: 40px 28px; border: 1px solid #bbf7d0; border-radius: 16px; background: #f0fdf4; text-align: center; }
.bb-rent-done svg { width: 48px; height: 48px; fill: #16a34a; }
.bb-rent-done h3 { margin: 10px 0 6px; color: var(--bb-text); font-family: inherit; font-size: 22px; font-weight: 700; }
.bb-rent-done p { margin: 0; color: #374151; font-size: 16px; line-height: 1.55; }

.bb-rent-terms { margin: 0 0 24px; padding: 24px; border: 1px solid var(--bb-border); border-radius: 16px; background: #fff; }
.bb-rent-terms__head { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 16px; }
.bb-rent-terms .bb-rent-terms__title { margin: 0; color: var(--bb-text); font-family: inherit; font-size: 20px; font-weight: 700; }
.bb-rent-terms__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: 12px; margin: 0; }
.bb-rent-terms__grid div { padding: 12px 14px; border-radius: 10px; background: var(--bb-surface); }
.bb-rent-terms__grid dt { margin: 0 0 4px; color: var(--bb-muted); font-size: 13px; font-weight: 400; }
.bb-rent-terms__grid dd { margin: 0; font-size: 15px; font-weight: 600; }
.bb-rent-terms__rules { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.bb-rent-terms__rules span { padding: 6px 12px; border-radius: 999px; background: #eef6ff; color: #1d4ed8; font-size: 13px; font-weight: 600; }
.bb-rent-terms .bb-rent-terms__note { margin: 14px 0 0; padding: 10px 14px; border-radius: 10px; background: #fff7ed; color: #9a3412; font-size: 14px; line-height: 1.5; }

.bb-rent-cta { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; text-align: left; }
.bb-rent-cta .bb-rent-cta__card { display: flex; flex-direction: column; gap: 10px; padding: 28px; border: 1px solid var(--bb-border); border-radius: 16px; background: #fff; color: var(--bb-text); text-decoration: none; transition: box-shadow .2s, transform .2s, border-color .2s; }
.bb-rent-cta .bb-rent-cta__card:hover { border-color: transparent; box-shadow: 0 12px 32px rgba(0, 0, 0, .08); color: var(--bb-text); transform: translateY(-2px); }
.bb-rent-cta__icon { display: flex; align-items: center; justify-content: center; width: 52px; height: 52px; border-radius: 14px; background: #fdecee; }
.bb-rent-cta__icon svg { width: 26px; height: 26px; fill: var(--bb-primary); }
.bb-rent-cta strong { font-size: 20px; font-weight: 700; }
.bb-rent-cta .bb-rent-cta__card > span:not(.bb-rent-cta__icon) { color: #4b5563; font-size: 15px; line-height: 1.5; }
.bb-rent-cta em { margin-top: auto; color: var(--bb-primary); font-style: normal; font-weight: 600; }

@media (max-width: 1024px) {
    .bb-rent .bb-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .bb-rent-cta { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 767px) {
    .bb-wrap { padding: 0 16px; }
    .bb-rent-hero { padding: 36px 0 28px; }
    .bb-rent .bb-rent-hero__title { font-size: 28px; }
    .bb-rent .bb-rent-hero__text { font-size: 16px; }
    .bb-rent-hero__actions .bb-btn { flex: 1 1 100%; }
    .bb-rent-section { padding: 40px 0; }
    .bb-rent .bb-rent-section__title { font-size: 24px; }
    .bb-rent-who, .bb-rent .bb-steps { grid-template-columns: minmax(0, 1fr); }
    .bb-rent .bb-steps { gap: 12px; }
    .bb-rent .bb-steps li, .bb-rent .bb-steps--inline li { padding: 18px 18px 18px 62px; }
    .bb-rent .bb-steps li::before { top: 17px; left: 18px; }
    .bb-rent-teaser__box { flex-direction: column; align-items: flex-start; padding: 24px; }
    .bb-rent-form__group { padding: 16px; }
    .bb-rent-form__row--3, .bb-rent-form__row--2 { grid-template-columns: minmax(0, 1fr); }
    .bb-rent .bb-rent-form__submit { width: 100%; min-width: 0; }
    .bb-rent-grid { grid-template-columns: minmax(0, 1fr); }
    .bb-rent-cta .bb-rent-cta__card { padding: 22px; }
    .bb-rent-terms { padding: 18px; }
}

/* ---------- Text pages (rules, privacy) ---------- */
.bb-doc { box-sizing: border-box; max-width: 860px; margin: 0 auto; padding: 48px 20px 72px; color: #14141a; font-family: Inter, sans-serif; font-size: 16px; line-height: 1.65; }
.bb-doc h1 { margin: 0 0 16px; color: #14141a; font-family: inherit; font-size: 36px; font-weight: 800; line-height: 1.2; }
.bb-doc h2 { margin: 36px 0 12px; color: #14141a; font-family: inherit; font-size: 22px; font-weight: 700; line-height: 1.3; }
.bb-doc h3 { margin: 24px 0 8px; color: #14141a; font-family: inherit; font-size: 18px; font-weight: 700; line-height: 1.35; }
.bb-doc p { margin: 0 0 14px; color: #374151; }
.bb-doc h1 + p { color: #4b5563; font-size: 18px; }
.bb-doc ul, .bb-doc ol { margin: 0 0 14px; padding: 0; list-style: none; }
.bb-doc li { position: relative; margin: 0 0 8px; padding-left: 22px; color: #374151; }
.bb-doc ul > li::before { content: ''; position: absolute; top: .68em; left: 4px; width: 7px; height: 7px; border-radius: 50%; background: #e20c24; }
.bb-doc a { color: #e20c24; text-decoration: underline; text-underline-offset: 2px; }
.bb-doc a:hover { color: #c10a1f; }
.bb-doc mark { padding: 0 4px; border-radius: 4px; background: #fff3c4; color: inherit; }
.bb-doc .bb-doc-note { margin: 0 0 24px; padding: 14px 18px; border-radius: 10px; background: #fff7ed; color: #9a3412; }
@media (max-width: 767px) {
    .bb-doc { padding: 32px 16px 56px; }
    .bb-doc h1 { font-size: 28px; }
    .bb-doc h2 { margin-top: 28px; font-size: 20px; }
}

/* ---------- Home search: Buy / Rent ---------- */
.bb-hsearch { box-sizing: border-box; display: flex; flex-direction: column; align-items: center; gap: 20px; width: 100%; max-width: 1020px; margin: 0 auto; color: #14141a; font-family: Inter, sans-serif; }
.bb-hsearch .bb-hsearch__bar { box-sizing: border-box; display: flex; align-items: stretch; gap: 8px; width: 100%; padding: 8px; border-radius: 12px; background: #fff; box-shadow: 0 16px 40px rgba(0, 0, 0, .22); }
.bb-hsearch .bb-hsearch__switch { flex: none; display: flex; align-items: center; gap: 4px; padding: 4px; border-radius: 8px; background: #f3f4f6; }
.bb-hsearch .bb-hsearch__switch button { height: 48px; margin: 0; padding: 0 20px; border: 0; border-radius: 6px; background: transparent; box-shadow: none; color: #374151; font-family: inherit; font-size: 15px; font-weight: 500; line-height: 1; letter-spacing: 0; text-transform: none; cursor: pointer; transition: background .2s, color .2s; }
.bb-hsearch .bb-hsearch__switch button:hover { background: #e5e7eb; color: #14141a; }
.bb-hsearch .bb-hsearch__switch button[aria-checked="true"] { background: #14141a; color: #fff; font-weight: 600; }
.bb-hsearch .bb-hsearch__switch button:focus-visible { outline: 2px solid #e20c24; outline-offset: 2px; }
.bb-hsearch .bb-hsearch__fields { flex: 1; display: flex; min-width: 0; }
.bb-hsearch .bb-hsearch__field { box-sizing: border-box; flex: 1; display: flex; flex-direction: column; justify-content: center; gap: 2px; min-width: 0; margin: 0; padding: 6px 18px; border-radius: 8px; cursor: pointer; }
.bb-hsearch .bb-hsearch__field + .bb-hsearch__field { border-left: 1px solid #e5e7eb; border-radius: 0 8px 8px 0; }
.bb-hsearch .bb-hsearch__field:focus-within { background: #f9fafb; }
.bb-hsearch[data-mode="buy"] [data-only="rent"], .bb-hsearch[data-mode="rent"] [data-only="buy"] { display: none; }
.bb-hsearch .bb-hsearch__label { color: #6b7280; font-size: 12px; font-weight: 400; line-height: 1.3; }
.bb-hsearch .bb-hsearch__control { position: relative; display: block; }
.bb-hsearch .bb-hsearch__control select, .bb-hsearch .bb-hsearch__control input {
    box-sizing: border-box; display: block; width: 100%; height: auto; min-height: 0; margin: 0; padding: 0; border: 0; border-radius: 0;
    background: transparent; box-shadow: none; color: #14141a; font-family: inherit; font-size: 16px; font-weight: 600; line-height: 1.45;
    outline: none; -webkit-appearance: none; appearance: none;
}
.bb-hsearch .bb-hsearch__control select { padding-right: 24px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; cursor: pointer; }
.bb-hsearch .bb-hsearch__control input::placeholder { color: #6b7280; font-weight: 500; opacity: 1; }
.bb-hsearch .bb-hsearch__control svg { position: absolute; top: 50%; right: 0; width: 16px; height: 16px; margin-top: -8px; fill: none; stroke: #6b7280; stroke-width: 2; pointer-events: none; }
.bb-hsearch .bb-hsearch__submit { flex: none; display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-width: 140px; min-height: 56px; margin: 0; padding: 0 24px; border: 0; border-radius: 8px; background: #e20c24; box-shadow: none; color: #fff; font-family: inherit; font-size: 16px; font-weight: 600; line-height: 1; text-transform: none; cursor: pointer; transition: background .2s; }
.bb-hsearch .bb-hsearch__submit:hover, .bb-hsearch .bb-hsearch__submit:focus-visible { background: #c10a1f; color: #fff; }
.bb-hsearch .bb-hsearch__submit svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2.2; }
.bb-hsearch .bb-hsearch__owner { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 8px; margin: 0; color: #fff; font-size: 15px; font-weight: 500; line-height: 1.5; text-align: center; padding: 8px 18px; border-radius: 999px; background: rgba(20, 20, 26, .55); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
.bb-hsearch .bb-hsearch__owner svg { flex: none; width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2; }
.bb-hsearch .bb-hsearch__owner a { color: #fff; text-decoration: underline; text-decoration-color: rgba(255, 255, 255, .55); text-underline-offset: 3px; }
.bb-hsearch .bb-hsearch__owner a:hover { color: #fff; text-decoration-color: #fff; }
@media (max-width: 900px) {
    .bb-hsearch .bb-hsearch__bar { flex-direction: column; gap: 6px; padding: 10px; }
    .bb-hsearch .bb-hsearch__switch button { flex: 1; height: 44px; }
    .bb-hsearch .bb-hsearch__fields { flex-direction: column; }
    .bb-hsearch .bb-hsearch__field { padding: 10px 8px; border-radius: 0; }
    .bb-hsearch .bb-hsearch__field + .bb-hsearch__field { border-left: 0; border-top: 1px solid #e5e7eb; border-radius: 0; }
    .bb-hsearch .bb-hsearch__submit { width: 100%; min-height: 52px; }
    .bb-hsearch .bb-hsearch__owner { padding: 10px 16px; border-radius: 12px; font-size: 14px; }
}

/* ---------- Rent: owner's phone on the listing, form hints ---------- */
.bb-rent-terms .bb-rent-owner { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; margin-top: 16px; padding: 14px 16px; border: 1px solid var(--bb-border, #e5e7eb); border-radius: 12px; }
.bb-rent-terms .bb-rent-owner__who { display: flex; align-items: center; gap: 12px; min-width: 0; }
.bb-rent-terms .bb-rent-owner__avatar { flex: none; display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 50%; background: #14141a; color: #fff; font-size: 18px; font-weight: 700; }
.bb-rent-terms .bb-rent-owner__who strong { display: block; color: #14141a; font-size: 16px; font-weight: 700; line-height: 1.3; }
.bb-rent-terms .bb-rent-owner__who small { display: block; color: #6b7280; font-size: 13px; line-height: 1.3; }
.bb-rent-terms .bb-rent-owner__actions { display: flex; flex-wrap: wrap; gap: 8px; }
.bb-rent-terms .bb-rent-owner__show, .bb-rent-terms .bb-rent-owner__wa {
    box-sizing: border-box; display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 46px; margin: 0; padding: 0 18px;
    border: 1px solid transparent; border-radius: 8px; box-shadow: none; font-family: inherit; font-size: 15px; font-weight: 600; line-height: 1; text-decoration: none; text-transform: none; cursor: pointer;
}
.bb-rent-terms .bb-rent-owner__show { background: #e20c24; color: #fff; }
.bb-rent-terms .bb-rent-owner__show:hover, .bb-rent-terms .bb-rent-owner__show:focus-visible { background: #c10a1f; color: #fff; }
.bb-rent-terms .bb-rent-owner__show.is-open { letter-spacing: .2px; }
.bb-rent-terms .bb-rent-owner__wa { border-color: #d1d5db; background: #fff; color: #14141a; }
.bb-rent-terms .bb-rent-owner__wa:hover { border-color: #14141a; color: #14141a; }
.bb-rent-terms .bb-rent-owner__wa[hidden] { display: none; }
.bb-rent-terms .bb-rent-owner__show svg { width: 18px; height: 18px; fill: currentColor; }
.bb-rent-terms .bb-rent-owner__wa svg { width: 18px; height: 18px; fill: #1fa855; }
.bb-rent-form .bb-rent-form__showphone { margin-top: 14px; }
.bb-rent-form .bb-rent-form__showphone strong { color: #14141a; }
.bb-rent-form .bb-rent-form__hint { margin: 0; color: #4b5563; font-size: 14px; line-height: 1.5; }
.bb-rent-form.is-agent .bb-rent-form__showphone, .bb-rent-form.is-agent .bb-rent-form__hint { display: none; }
@media (max-width: 767px) {
    .bb-rent-terms .bb-rent-owner__actions { width: 100%; }
    .bb-rent-terms .bb-rent-owner__actions > * { flex: 1 1 140px; }
}

/* ---------- «Разместить объявление» always in view ---------- */
.bb-post-ad { margin-left: 12px; }
.bb-post-ad .bb-post-ad__btn { display: inline-flex; align-items: center; gap: 8px; white-space: nowrap; }
.bb-post-ad .bb-post-ad__btn svg { flex: none; width: 18px; height: 18px; }
/* «Связаться с нами» becomes a quiet outline button next to the red one */
.myhome-menu__primary-cta-button:not(.bb-post-ad) .myhome-button { border: 1px solid #d1d5db !important; background: #fff !important; color: #14141a !important; }
.myhome-menu__primary-cta-button:not(.bb-post-ad) .myhome-button:hover { border-color: #14141a !important; background: #fff !important; color: #14141a !important; }
@media (min-width: 1024px) {
    .elementor-6062 > .elementor-element-1871d154 { position: sticky; top: 0; z-index: 100; background: #fff; transition: box-shadow .2s; }
    .bb-scrolled .elementor-6062 > .elementor-element-1871d154 { box-shadow: 0 6px 20px rgba(20, 20, 26, .08); }
    body.admin-bar .elementor-6062 > .elementor-element-1871d154 { top: 32px; }
}
@media (min-width: 768px) and (max-width: 782px) {
    body.admin-bar .elementor-6062 > .elementor-element-1871d154 { top: 46px; }
}
@media (max-width: 1440px) {
    .bb-post-ad .bb-post-ad__more { display: inline !important; }
}
/* «Связаться с нами» is hidden: the phone sits right next to it, and the header (max 1230px) has no room for both with ♥ and «Разместить» */
.myhome-menu__primary-cta-button:not(.bb-post-ad) { display: none !important; }
.bb-tabbar { display: none; }
@media (max-width: 1023px) {
    .bb-post-ad { display: none !important; }
    body { padding-bottom: calc(68px + env(safe-area-inset-bottom, 0px)); }
    .bb-tabbar {
        position: fixed; right: 0; bottom: 0; left: 0; z-index: 90; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); align-items: end;
        box-sizing: border-box; height: calc(64px + env(safe-area-inset-bottom, 0px)); padding: 0 4px env(safe-area-inset-bottom, 0px);
        border-top: 1px solid #e5e7eb; background: #fff; box-shadow: 0 -6px 20px rgba(20, 20, 26, .06); font-family: Inter, sans-serif;
    }
    .bb-tabbar .bb-tabbar__item {
        display: flex; flex-direction: column; align-items: center; justify-content: flex-end; gap: 3px; box-sizing: border-box; height: 64px; padding-bottom: 8px;
        color: #4b5563; font-size: 11px; font-weight: 600; line-height: 1.2; text-decoration: none; -webkit-tap-highlight-color: transparent;
    }
    .bb-tabbar .bb-tabbar__item svg { width: 24px; height: 24px; }
    .bb-tabbar .bb-tabbar__item.is-active { color: #e20c24; }
    .bb-tabbar .bb-tabbar__item--post { color: #e20c24; font-weight: 700; }
    .bb-tabbar .bb-tabbar__plus {
        display: flex; align-items: center; justify-content: center; box-sizing: border-box; width: 54px; height: 54px; margin: -26px 0 2px;
        border: 4px solid #fff; border-radius: 50%; background: #e20c24; color: #fff; box-shadow: 0 8px 20px rgba(226, 12, 36, .35);
    }
    .bb-tabbar .bb-tabbar__plus svg { width: 26px; height: 26px; }
    body:has(.myhome-menu-mobile--open) .bb-tabbar { display: none; }
}

/* «Разместить» → choice: list it yourself or with an agent */
.bb-postmenu[hidden] { display: none !important; }
.bb-postmenu { position: fixed; inset: 0; z-index: 100000; font-family: Inter, sans-serif; }
.bb-postmenu__backdrop { position: absolute; inset: 0; background: rgba(20, 20, 26, .4); opacity: 0; transition: opacity .18s ease; }
.bb-postmenu__panel {
    position: fixed; right: 12px; bottom: calc(96px + env(safe-area-inset-bottom, 0px)); left: 12px; display: flex; flex-direction: column; gap: 2px;
    box-sizing: border-box; padding: 8px; border-radius: 16px; background: #fff; box-shadow: 0 16px 40px rgba(20, 20, 26, .25);
    opacity: 0; transform: translateY(12px); transition: opacity .18s ease, transform .18s ease; outline: none;
}
.bb-postmenu.is-open .bb-postmenu__backdrop, .bb-postmenu.is-open .bb-postmenu__panel { opacity: 1; }
.bb-postmenu.is-open .bb-postmenu__panel { transform: none; }
.bb-postmenu__head { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 2px 2px 4px 12px; }
.bb-postmenu__head strong { color: #14141a; font-size: 16px; font-weight: 700; line-height: 1.3; }
.bb-postmenu .bb-postmenu__close {
    display: flex; flex: none; align-items: center; justify-content: center; width: 40px; height: 40px; margin: 0; padding: 0;
    border: 0; border-radius: 50%; background: transparent; color: #6b7280; cursor: pointer; box-shadow: none;
}
.bb-postmenu .bb-postmenu__close:hover { background: #f3f4f6; color: #14141a; }
.bb-postmenu__close svg { width: 20px; height: 20px; }
.bb-postmenu .bb-postmenu__opt {
    display: flex; align-items: center; gap: 12px; padding: 12px; border-radius: 12px; color: #14141a; text-decoration: none;
    transition: background-color .15s ease; -webkit-tap-highlight-color: transparent;
}
.bb-postmenu .bb-postmenu__opt:hover, .bb-postmenu .bb-postmenu__opt:focus-visible { background: #f5f6f8; color: #14141a; outline: none; }
.bb-postmenu__ic { display: flex; flex: none; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 12px; background: #fdecee; color: #e20c24; }
.bb-postmenu__ic svg { width: 22px; height: 22px; }
.bb-postmenu__txt { display: flex; flex: 1; flex-direction: column; gap: 2px; min-width: 0; }
.bb-postmenu__txt strong { font-size: 15px; font-weight: 700; line-height: 1.3; }
.bb-postmenu__txt small { color: #6b7280; font-size: 13px; line-height: 1.4; }
.bb-postmenu__arrow { flex: none; width: 18px; height: 18px; color: #9ca3af; transition: transform .15s ease, color .15s ease; }
.bb-postmenu .bb-postmenu__opt:hover .bb-postmenu__arrow { color: #e20c24; transform: translateX(2px); }
html.bb-postmenu-open .bb-tabbar { z-index: 100001; }
.bb-tabbar .bb-tabbar__plus svg { transition: transform .18s ease; }
html.bb-menu--bb-postmenu .bb-tabbar .bb-tabbar__plus svg { transform: rotate(45deg); }
@media (min-width: 1024px) {
    .bb-postmenu__backdrop { background: transparent; }
    .bb-postmenu__panel { right: 40px; bottom: auto; left: auto; width: 370px; transform: translateY(-6px); }
}
@media (prefers-reduced-motion: reduce) {
    .bb-postmenu__backdrop, .bb-postmenu__panel, .bb-postmenu__arrow, .bb-tabbar .bb-tabbar__plus svg { transition: none; }
}

/* «Связаться» menu: WhatsApp tint; open trigger highlighted */
.bb-postmenu__ic.bb-postmenu__ic--wa { background: #e7f8ee; color: #1fa855; }
.bb-postmenu__ic--wa svg { width: 22px; height: 22px; }
.bb-tabbar .bb-tabbar__item[aria-expanded="true"] { color: #e20c24; }

/* Избранное: counters */
.bb-fav-count {
    position: absolute; top: 2px; right: 0; box-sizing: border-box; min-width: 18px; height: 18px; padding: 0 5px;
    border: 2px solid #fff; border-radius: 9px; background: #e20c24; color: #fff; font: 700 10px/14px Inter, sans-serif; text-align: center;
}
.bb-fav-count[hidden] { display: none !important; }
.bb-tabbar .bb-tabbar__ic { position: relative; display: inline-flex; }
.bb-tabbar .bb-tabbar__ic .bb-fav-count { top: -5px; right: -11px; }

/* Избранное: header icon (computers) */
.bb-head-fav {
    position: relative; display: inline-flex; flex: none; align-items: center; justify-content: center; width: 44px; height: 44px; margin-right: 4px;
    border-radius: 50%; color: #14141a; text-decoration: none; transition: background-color .15s ease, color .15s ease;
}
.bb-head-fav:hover, .bb-head-fav:focus-visible { background: #fdecee; color: #e20c24; }
.bb-head-fav svg { width: 22px; height: 22px; }
@media (max-width: 1023px) { .bb-head-fav { display: none !important; } }

/* Избранное: heart on listing photos */
.myhome-listing-card__gallery { position: relative; }
.bb-fav-btn {
    position: absolute; top: 10px; right: 10px; z-index: 6; display: flex; align-items: center; justify-content: center; width: 38px; height: 38px;
    margin: 0; padding: 0; border: 0; border-radius: 50%; background: rgba(255, 255, 255, .94); color: #14141a;
    box-shadow: 0 2px 8px rgba(20, 20, 26, .18); cursor: pointer; transition: transform .15s ease, color .15s ease; -webkit-tap-highlight-color: transparent;
}
.bb-fav-btn svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linejoin: round; }
.bb-fav-btn:hover { color: #e20c24; transform: scale(1.06); }
.bb-fav-btn:focus-visible { outline: 2px solid #e20c24; outline-offset: 2px; }
.bb-fav-btn.is-fav { color: #e20c24; }
.bb-fav-btn.is-fav svg, .bb-fav-page.is-fav svg { fill: currentColor; }

/* Избранное: button on the listing page (next to «Поделиться») */
.single-myhome_listing .myhome-breadcrumbs-widget__share { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.bb-fav-page {
    display: inline-flex; align-self: center; align-items: center; gap: 6px; height: 34px; margin: 0; padding: 0 14px; border: 1px solid #e5e7eb; border-radius: 999px;
    background: #fff; color: #14141a; font: 600 13px/1 Inter, sans-serif; white-space: nowrap; cursor: pointer; transition: background-color .15s ease, border-color .15s ease, color .15s ease;
}
.bb-fav-page svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linejoin: round; }
.bb-fav-page:hover { border-color: #e20c24; color: #e20c24; }
.bb-fav-page.is-fav { border-color: #fbd5da; background: #fdecee; color: #e20c24; }

/* Избранное: the page */
.bb-favs .bb-favs__count { color: #6b7280; font-size: .5em; font-weight: 600; letter-spacing: 0; vertical-align: middle; white-space: nowrap; }
.bb-favs__wrap { padding-top: 8px; padding-bottom: 64px; }
.bb-favs__note { margin: 0 0 20px; padding: 12px 16px; border-radius: 12px; background: #f5f6f8; color: #4b5563; font-size: 14px; line-height: 1.5; }
.bb-favs__list { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 20px; }
.bb-favs__list[hidden], .bb-favs__empty[hidden], .bb-favs__note[hidden] { display: none !important; }
.bb-fav-card { position: relative; overflow: hidden; border: 1px solid #e5e7eb; border-radius: 14px; background: #fff; transition: box-shadow .2s ease; }
.bb-fav-card:hover { box-shadow: 0 12px 28px rgba(20, 20, 26, .1); }
.bb-favs .bb-fav-card__link { display: flex; flex-direction: column; color: #14141a; text-decoration: none; }
.bb-fav-card__img { position: relative; display: block; overflow: hidden; aspect-ratio: 4 / 3; background: #f1f2f4; }
.bb-favs .bb-fav-card__img img { position: absolute; inset: 0; display: block; width: 100%; height: 100%; max-width: none; object-fit: cover; }
.bb-fav-card__body { display: flex; flex-direction: column; gap: 4px; padding: 14px 16px 16px; }
.bb-fav-card__price { font-size: 19px; font-weight: 800; line-height: 1.3; }
.bb-fav-card__title { font-size: 15px; font-weight: 600; line-height: 1.35; }
.bb-fav-card__addr { color: #6b7280; font-size: 13px; line-height: 1.4; }
.bb-favs__empty { display: flex; flex-direction: column; align-items: center; gap: 12px; max-width: 460px; margin: 8px auto 0; padding: 32px 16px; text-align: center; }
.bb-favs__empty-ic { display: flex; align-items: center; justify-content: center; width: 72px; height: 72px; border-radius: 50%; background: #fdecee; color: #e20c24; }
.bb-favs__empty-ic svg { width: 34px; height: 34px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linejoin: round; }
.bb-favs .bb-favs__empty h2 { margin: 4px 0 0; color: #14141a; font-size: 22px; font-weight: 800; }
.bb-favs .bb-favs__empty p { margin: 0; color: #6b7280; font-size: 15px; line-height: 1.5; }
.bb-favs__actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-top: 8px; }

/* Избранное: «Добавлено» toast */
.bb-toast {
    position: fixed; bottom: 24px; left: 50%; z-index: 100002; display: flex; align-items: center; gap: 14px; box-sizing: border-box; width: max-content; max-width: calc(100vw - 32px);
    padding: 12px 18px; border-radius: 12px; background: #14141a; color: #fff; font: 500 14px/1.35 Inter, sans-serif; box-shadow: 0 12px 28px rgba(20, 20, 26, .3);
    opacity: 0; transform: translate(-50%, 12px); transition: opacity .2s ease, transform .2s ease; pointer-events: none;
}
.bb-toast.is-on { opacity: 1; transform: translate(-50%, 0); pointer-events: auto; }
.bb-toast a { color: #ff8a98; font-weight: 700; text-decoration: none; white-space: nowrap; }
.bb-toast a:hover { color: #fff; }
@media (max-width: 1023px) { .bb-toast { bottom: calc(84px + env(safe-area-inset-bottom, 0px)); } }
@media (prefers-reduced-motion: reduce) { .bb-fav-btn, .bb-fav-page, .bb-toast, .bb-head-fav { transition: none; } }
.single-myhome_listing .elementor-widget-mh_listing_price + .bb-fav-page { margin-top: 12px; }

/* Catalog on phones: the long sort label pushed the results wider than the screen */
@media (max-width: 480px) {
    .myhome-search-map-v2-results__sort-by-label { display: none; }
    .myhome-search-map-v2-results__sort-by, .myhome-search-map-v2-results__sort-by-live, .myhome-search-map-v2-results__sort-by-live > div { min-width: 0; max-width: 100%; }
    .myhome-search-map-v2-results__sort-by .myhome-select { min-width: 0; max-width: 100%; }
    .myhome-search-map-v2-results__sort-by .myhome-select__placeholder { overflow: hidden; text-overflow: ellipsis; }
}

/* Narrow laptops: the header phone makes room for ♥ and «Разместить» (the number stays in the footer and on «Контакты») */
@media (min-width: 1024px) and (max-width: 1199px) {
    .myhome-myhome-menu__secondary-cta-button { display: none !important; }
}

/* ---------- Home page blocks ---------- */

/* Tiles under the search (new builds, flats by rooms, rent) */
.bb-cats { display: flex; gap: 14px; font-family: Inter, sans-serif; }
.bb-cats .bb-cats__item {
    display: flex; flex: 1 1 0; flex-direction: column; align-items: flex-start; gap: 12px; min-width: 0; box-sizing: border-box; padding: 18px;
    border: 1px solid #e5e7eb; border-radius: 14px; background: #fff; color: #14141a; text-decoration: none; transition: box-shadow .2s, transform .2s, border-color .2s;
}
.bb-cats .bb-cats__item:hover, .bb-cats .bb-cats__item:focus-visible { border-color: transparent; box-shadow: 0 12px 28px rgba(20, 20, 26, .08); color: #14141a; transform: translateY(-2px); }
.bb-cats__icon { display: flex; flex: none; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 12px; background: #fdecee; color: #e20c24; }
.bb-cats__icon svg { width: 24px; height: 24px; }
.bb-cats__num { font-size: 16px; font-weight: 800; letter-spacing: -.3px; }
.bb-cats__text { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.bb-cats__text strong { font-size: 15px; font-weight: 700; line-height: 1.3; }
.bb-cats__text small { color: #6b7280; font-size: 13px; line-height: 1.35; }
@media (max-width: 1100px) {
    .bb-cats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
    .bb-cats { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
    .bb-cats .bb-cats__item { flex-direction: row; align-items: center; gap: 10px; padding: 12px; }
    .bb-cats__icon { width: 40px; height: 40px; border-radius: 10px; }
    .bb-cats__text strong { font-size: 14px; }
    .bb-cats__text small { font-size: 12px; }
}

/* «Новостройки»: tab counters (Все дома · Сдача в этом году · На карте) */
.bb-filter__count {
    display: inline-flex; align-items: center; justify-content: center; box-sizing: border-box; min-width: 20px; height: 20px; margin-left: 6px; padding: 0 6px;
    border-radius: 10px; background: #f3f4f6; color: #4b5563; font-size: 12px; font-weight: 700; line-height: 1; vertical-align: 1px;
}
.bb-filter__chip.is-active .bb-filter__count, .bb-filter__chip:hover .bb-filter__count { background: rgba(255, 255, 255, .25); color: #fff; }
@media (max-width: 480px) {
    .bb-filter__count { display: none; }
    .bb-switch__tabs .bb-filter__chip { padding: 8px 10px; font-size: 14px; white-space: nowrap; }
}

/* Rent on the home page: latest listings + «Снять / Сдать / Сдать с агентом» */
.bb-home-rent__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; text-align: left; }
.bb-rent .bb-home-rent__action {
    display: flex; flex-direction: column; gap: 10px; padding: 24px; border: 1px solid var(--bb-border); border-radius: var(--bb-radius);
    background: #fff; color: var(--bb-text); text-decoration: none; transition: box-shadow .2s, transform .2s, border-color .2s;
}
.bb-rent .bb-home-rent__action:hover, .bb-rent .bb-home-rent__action:focus-visible { border-color: transparent; box-shadow: 0 12px 32px rgba(0, 0, 0, .08); color: var(--bb-text); transform: translateY(-2px); }
.bb-home-rent__icon { display: flex; align-items: center; justify-content: center; width: 48px; height: 48px; border-radius: 14px; background: #fdecee; }
.bb-home-rent__icon svg { width: 24px; height: 24px; fill: var(--bb-primary); }
.bb-home-rent__action strong { font-size: 18px; font-weight: 700; }
.bb-home-rent__action > span:not(.bb-home-rent__icon) { color: #4b5563; font-size: 14px; line-height: 1.5; }
.bb-home-rent__action em { margin-top: auto; padding-top: 4px; color: var(--bb-primary); font-size: 14px; font-style: normal; font-weight: 600; }
@media (max-width: 1100px) {
    .bb-home-rent__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
    .bb-home-rent__grid { grid-template-columns: 1fr; gap: 14px; }
    .bb-rent .bb-home-rent__action { display: grid; grid-template-columns: 48px 1fr; column-gap: 14px; row-gap: 4px; padding: 18px; }
    .bb-home-rent__icon { grid-row: span 3; }
    .bb-home-rent__action em { padding-top: 2px; }
}

/* Islamic installment calculator */
.bb-calc { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); gap: 24px; align-items: start; text-align: left; }
.bb-calc__form { display: grid; grid-template-columns: 1fr 1fr; gap: 26px 28px; padding: 28px; border: 1px solid var(--bb-border); border-radius: 16px; background: #fff; }
.bb-calc__field { display: flex; flex-direction: column; gap: 10px; min-width: 0; }
.bb-calc .bb-calc__label { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; margin: 0; color: #4b5563; font-size: 14px; font-weight: 600; line-height: 1.3; }
.bb-calc__label b { color: var(--bb-text); font-weight: 700; white-space: nowrap; }
.bb-calc__input { display: flex; align-items: center; gap: 8px; box-sizing: border-box; height: 52px; padding: 0 14px; border: 1px solid var(--bb-border); border-radius: 10px; background: #fff; transition: border-color .15s, box-shadow .15s; }
.bb-calc__input:focus-within { border-color: var(--bb-primary); box-shadow: 0 0 0 3px rgba(226, 12, 36, .12); }
.bb-calc .bb-calc__input input {
    flex: 1; width: auto; min-width: 0; height: 100%; margin: 0; padding: 0; border: 0 !important; border-radius: 0; background: transparent !important;
    box-shadow: none !important; color: var(--bb-text); font: 700 18px/1 Inter, sans-serif; outline: none;
}
.bb-calc__input span { color: var(--bb-muted); font-weight: 600; }
.bb-calc input[type="range"] { width: 100%; height: 20px; margin: 0; padding: 0; border: 0; background: transparent; accent-color: var(--bb-primary); cursor: pointer; }
.bb-calc__scale { display: flex; justify-content: space-between; margin-top: -4px; color: #9ca3af; font-size: 12px; }
.bb-calc__hint { color: var(--bb-muted); font-size: 12px; line-height: 1.4; }
.bb-calc__result { display: flex; flex-direction: column; gap: 14px; box-sizing: border-box; padding: 28px; border-radius: 16px; background: #14141a; color: #fff; }
.bb-calc__caption { color: rgba(255, 255, 255, .7); font-size: 14px; font-weight: 600; }
.bb-calc__monthly { color: #fff; font-size: 40px; font-weight: 800; line-height: 1.1; letter-spacing: -.5px; }
.bb-calc__list { display: flex; flex-direction: column; gap: 10px; margin: 4px 0 0; padding: 16px 0 0; border-top: 1px solid rgba(255, 255, 255, .14); }
.bb-calc__list div { display: flex; justify-content: space-between; gap: 12px; font-size: 15px; }
.bb-calc__list dt { color: rgba(255, 255, 255, .72); font-weight: 500; }
.bb-calc__list dd { margin: 0; color: #fff; font-weight: 700; white-space: nowrap; }
.bb-calc__list .bb-calc__total { padding-top: 10px; border-top: 1px solid rgba(255, 255, 255, .14); }
.bb-calc__list .bb-calc__total dd { font-size: 17px; }
.bb-calc__notes { display: flex; flex-direction: column; gap: 6px; margin: 2px 0 0; padding: 0; list-style: none; color: rgba(255, 255, 255, .88); font-size: 14px; }
.bb-calc__notes li { position: relative; margin: 0; padding-left: 24px; }
.bb-calc__notes li::before { content: "✓"; position: absolute; top: 0; left: 0; color: #4ade80; font-weight: 800; }
.bb-rent .bb-calc__apply { width: 100%; margin-top: 6px; }
.bb-calc__disclaimer { color: rgba(255, 255, 255, .55); font-size: 12px; line-height: 1.45; }
@media (max-width: 1023px) {
    .bb-calc { grid-template-columns: 1fr; }
}
@media (max-width: 600px) {
    .bb-calc__form { grid-template-columns: 1fr; gap: 22px; padding: 20px; }
    .bb-calc__result { padding: 22px; }
    .bb-calc__monthly { font-size: 32px; }
}

/* «Как купить через BuyBayt» + live numbers */
.bb-howto { text-align: left; }
.bb-howto__list { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; margin: 0; padding: 0; list-style: none; }
.bb-howto__item { display: flex; flex-direction: column; gap: 8px; margin: 0; padding: 24px; border: 1px solid var(--bb-border); border-radius: 16px; background: #fff; }
.bb-howto__num { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; margin-bottom: 6px; border-radius: 50%; background: var(--bb-primary); color: #fff; font-size: 17px; font-weight: 800; }
.bb-howto__item strong { font-size: 18px; font-weight: 700; }
.bb-howto__item > span:last-child { color: #4b5563; font-size: 15px; line-height: 1.5; }
.bb-stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 1px; overflow: hidden; margin-top: 28px; border: 1px solid var(--bb-border); border-radius: 16px; background: var(--bb-border); }
.bb-stats__item { display: flex; flex-direction: column; gap: 4px; padding: 22px 20px; background: #fafafa; text-align: center; }
.bb-stats__item strong { color: var(--bb-primary); font-size: 30px; font-weight: 800; line-height: 1.15; letter-spacing: -.4px; }
.bb-stats__item span { color: #4b5563; font-size: 14px; line-height: 1.35; }
@media (max-width: 1023px) {
    .bb-howto__list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
    .bb-howto__list { grid-template-columns: 1fr; gap: 12px; }
    .bb-howto__item { display: grid; grid-template-columns: 40px 1fr; column-gap: 14px; row-gap: 4px; padding: 18px; }
    .bb-howto__num { grid-row: span 2; margin: 0; }
    .bb-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .bb-stats__item { padding: 18px 12px; }
    .bb-stats__item strong { font-size: 22px; }
}

/* Partners and reviews (empty for visitors until filled; a placeholder for administrators) */
.bb-trust { box-sizing: border-box; padding: 64px 0; text-align: center; }
.bb-trust .bb-trust__title { margin: 0 0 24px; color: #111827; font: 700 32px/1.2 Inter, sans-serif; letter-spacing: -.3px; }
.bb-trust__logos { display: flex; flex-wrap: wrap; justify-content: center; gap: 16px; margin-bottom: 48px; }
.bb-trust .bb-trust__logo { display: flex; align-items: center; justify-content: center; box-sizing: border-box; width: 180px; height: 88px; padding: 16px; border: 1px solid var(--bb-border); border-radius: 14px; background: #fff; color: var(--bb-text); font-weight: 700; text-decoration: none; }
.bb-trust__logo img { max-width: 100%; max-height: 100%; object-fit: contain; filter: grayscale(1); opacity: .8; transition: filter .2s, opacity .2s; }
.bb-trust__logo:hover img { filter: none; opacity: 1; }
.bb-trust__reviews { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 20px; text-align: left; }
.bb-trust__logos:last-child, .bb-trust__reviews:last-child { margin-bottom: 0; }
.bb-trust__review { display: flex; flex-direction: column; gap: 16px; margin: 0; padding: 24px; border: 1px solid var(--bb-border); border-radius: 16px; background: #fff; }
.bb-trust .bb-trust__review blockquote { margin: 0; padding: 0; border: 0; color: var(--bb-text); font-size: 15px; font-style: normal; line-height: 1.6; }
.bb-trust__review figcaption { display: flex; flex-direction: column; gap: 2px; margin-top: auto; }
.bb-trust__review figcaption strong { font-size: 15px; }
.bb-trust__review figcaption span { color: var(--bb-muted); font-size: 13px; }
.bb-trust__review figcaption a { color: var(--bb-primary); font-size: 13px; }
.bb-trust--draft { margin: 40px 0; padding: 32px; border: 2px dashed #d1d5db; border-radius: 16px; background: #fafafa; }
.bb-trust .bb-trust__badge { display: inline-block; margin: 0 0 12px; padding: 4px 10px; border-radius: 999px; background: #fff3cd; color: #8a6d00; font-size: 12px; font-weight: 700; }
.bb-trust__slots { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; text-align: left; }
.bb-trust__slot { display: flex; flex-direction: column; gap: 6px; padding: 20px; border: 1px solid var(--bb-border); border-radius: 12px; background: #fff; }
.bb-trust__slot strong { font-size: 16px; }
.bb-trust__slot span { color: var(--bb-muted); font-size: 14px; line-height: 1.5; }
@media (max-width: 600px) {
    .bb-trust { padding: 40px 0; }
    .bb-trust .bb-trust__title { font-size: 26px; }
    .bb-trust__slots { grid-template-columns: 1fr; }
    .bb-trust--draft { margin: 24px 0; padding: 20px; }
    .bb-trust .bb-trust__logo { width: calc(50% - 8px); height: 72px; }
}

/* The calculator's «Оставить заявку» scrolls to the form below the sticky header */
#contact-form { scroll-margin-top: 0; }
@media (min-width: 1024px) {
    #contact-form { scroll-margin-top: 70px; }
}

/* Partners/reviews section on the home page collapses entirely while it has nothing to show */
.elementor-element-c8e5b63:not(:has(.bb-trust)) { display: none; }

/* Home search: «Карта» next to «Найти» — opens the catalog as a map with the chosen filters */
.bb-hsearch { max-width: 1140px; }
.bb-hsearch .bb-hsearch__actions { flex: none; display: flex; align-items: stretch; gap: 8px; }
.bb-hsearch .bb-hsearch__map {
    flex: none; display: inline-flex; align-items: center; justify-content: center; gap: 8px; box-sizing: border-box; min-height: 56px; margin: 0; padding: 0 18px;
    border: 1px solid #e5e7eb; border-radius: 8px; background: #fff; box-shadow: none; color: #14141a; font-family: inherit; font-size: 16px; font-weight: 600; line-height: 1;
    cursor: pointer; transition: border-color .15s, color .15s, background-color .15s;
}
.bb-hsearch .bb-hsearch__map:hover, .bb-hsearch .bb-hsearch__map:focus-visible { border-color: #e20c24; background: #fff5f6; color: #e20c24; }
.bb-hsearch .bb-hsearch__map:focus-visible { outline: 2px solid #e20c24; outline-offset: 2px; }
.bb-hsearch .bb-hsearch__map svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
@media (min-width: 901px) and (max-width: 1150px) {
    .bb-hsearch .bb-hsearch__map { padding: 0 15px; }
    .bb-hsearch .bb-hsearch__map span { display: none; }
}
@media (max-width: 900px) {
    .bb-hsearch .bb-hsearch__actions { width: 100%; }
    .bb-hsearch .bb-hsearch__actions .bb-hsearch__submit { flex: 1; width: auto; min-width: 0; }
    .bb-hsearch .bb-hsearch__map { min-height: 52px; padding: 0 18px; }
}

/* Catalog on phones: the theme's floating «Карта / Список» toggle sat under the bottom tab bar */
@media (max-width: 1023px) {
    .myhome-search-map-v2__floating-toggle { bottom: calc(80px + env(safe-area-inset-bottom, 0px)) !important; }
}

/* Islamic installment on a listing page (narrow column): form above, result below */
.bb-calc--compact { grid-template-columns: 1fr; gap: 16px; }
.bb-calc--compact .bb-calc__form { padding: 22px; }
@media (min-width: 640px) {
    .bb-calc--compact .bb-calc__result { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr); column-gap: 32px; row-gap: 12px; align-items: start; }
    .bb-calc--compact .bb-calc__caption { grid-column: 1; grid-row: 1; }
    .bb-calc--compact .bb-calc__monthly { grid-column: 1; grid-row: 2; }
    .bb-calc--compact .bb-calc__notes { grid-column: 1; grid-row: 3; }
    .bb-calc--compact .bb-calc__list { grid-column: 2; grid-row: 1 / span 3; margin: 0; padding: 0; border-top: 0; }
    .bb-calc--compact .bb-calc__apply, .bb-calc--compact .bb-calc__disclaimer { grid-column: 1 / -1; }
}

/* ---------- Light / dark theme switch ---------- */
.bb-theme { position: relative; display: inline-flex; flex: none; align-items: center; margin: 0 6px 0 0; padding: 0; border: 0; background: none; box-shadow: none; cursor: pointer; -webkit-tap-highlight-color: transparent; }
.bb-theme:hover, .bb-theme:focus { background: none; box-shadow: none; }
.bb-theme:focus-visible { outline: 2px solid #e20c24; outline-offset: 3px; border-radius: 999px; }
.bb-theme__track { position: relative; display: flex; align-items: center; justify-content: space-between; box-sizing: border-box; width: 66px; height: 34px; padding: 0 9px; border: 1px solid #e5e7eb; border-radius: 999px; background: #f1f2f4; transition: background-color .25s, border-color .25s; }
.bb-theme__icon { position: relative; z-index: 2; display: flex; width: 16px; height: 16px; transition: color .25s; }
.bb-theme__icon svg { width: 16px; height: 16px; }
.bb-theme__icon--sun { color: #f59e0b; }
.bb-theme__icon--moon { color: #9ca3af; }
.bb-theme__knob { position: absolute; top: 3px; left: 3px; width: 26px; height: 26px; border-radius: 50%; background: #fff; box-shadow: 0 1px 4px rgba(20, 20, 26, .25); transition: transform .25s ease, background-color .25s; }
.bb-theme.is-dark .bb-theme__track { border-color: #3a3f4b; background: #252932; }
.bb-theme.is-dark .bb-theme__knob { background: #14141a; box-shadow: 0 0 0 1px #4b5160; transform: translateX(32px); }
.bb-theme.is-dark .bb-theme__icon--sun { color: #6b7280; }
.bb-theme.is-dark .bb-theme__icon--moon { color: #fde68a; }
.bb-theme-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 10px 15px 6px; padding: 14px 0; border-top: 1px solid var(--e-global-color-lcolor3, #e5e7eb); border-bottom: 1px solid var(--e-global-color-lcolor3, #e5e7eb); }
.bb-theme-row__label { color: var(--e-global-color-lcolor1, #111827); font: 500 15px/1.3 Inter, sans-serif; }
.bb-theme-row .bb-theme { margin: 0; }
@media (prefers-reduced-motion: reduce) { .bb-theme__track, .bb-theme__knob, .bb-theme__icon { transition: none; } }

/* BB-DARK-AUTO START — generated from the light rules above; regenerate after changing them */
html[data-bb-theme="dark"] .bb-house__summary { background-color: var(--bbd-surface); }
html[data-bb-theme="dark"] .bb-progress__dot { background-color: var(--bbd-surface); }
html[data-bb-theme="dark"] .bb-filter__chip { background-color: var(--bbd-surface); }
html[data-bb-theme="dark"] .bb-flat { background-color: var(--bbd-surface); }
html[data-bb-theme="dark"] .bb-house-card { background-color: var(--bbd-surface); }
html[data-bb-theme="dark"] .bb-map-popup { color: #e7e9ee; }
html[data-bb-theme="dark"] .bb-quick-links__item { color: #e7e9ee; }
html[data-bb-theme="dark"] .bb-quick-links__item:hover { background-color: var(--bbd-surface); }
html[data-bb-theme="dark"] .bb-ymap-count { background-color: var(--bbd-surface); }
html[data-bb-theme="dark"] .bb-ymap-popup { color: #e7e9ee; }
html[data-bb-theme="dark"] .bb-house-about__text { color: #c3c9d4; }
html[data-bb-theme="dark"] .bb-brand-map .leaflet-popup-content-wrapper { background-color: var(--bbd-surface) !important; }
html[data-bb-theme="dark"] .bb-brand-map .leaflet-popup-tip { background-color: var(--bbd-surface) !important; }
html[data-bb-theme="dark"] .bb-brand-map .leaflet-popup-close-button { color: #e7e9ee !important; }
html[data-bb-theme="dark"] .bb-map-card { color: #e7e9ee; }
html[data-bb-theme="dark"] .bb-map-card__meta { color: #a0a8b8; }
html[data-bb-theme="dark"] .bb-houses-ribbon__arrow { background-color: var(--bbd-surface); }
html[data-bb-theme="dark"] .bb-designs .bb-designs__plan { background-color: var(--bbd-surface); }
html[data-bb-theme="dark"] .bb-design { background-color: var(--bbd-surface); }
html[data-bb-theme="dark"] .bb-design .bb-filter__chip { background-color: var(--bbd-surface); }
html[data-bb-theme="dark"] .bb-agency { background-color: var(--bbd-surface); }
html[data-bb-theme="dark"] .bb-agency .bb-agency__btn { background-color: var(--bbd-surface); }
html[data-bb-theme="dark"] .bb-rent .bb-btn--ghost { background-color: var(--bbd-surface); }
html[data-bb-theme="dark"] .bb-rent .bb-btn--ghost:hover { background-color: var(--bbd-surface); }
html[data-bb-theme="dark"] .bb-rent .bb-rent-hero__text { color: #c3c9d4; }
html[data-bb-theme="dark"] .bb-rent .bb-rent-chips a { background-color: var(--bbd-surface); }
html[data-bb-theme="dark"] .bb-rent .bb-rent-card { background-color: var(--bbd-surface); }
html[data-bb-theme="dark"] .bb-rent-empty { background-color: var(--bbd-surface); border-top-color: #3a4050; border-right-color: #3a4050; border-bottom-color: #3a4050; border-left-color: #3a4050; }
html[data-bb-theme="dark"] .bb-rent .bb-rent-empty p { color: #c3c9d4; }
html[data-bb-theme="dark"] .bb-rent-teaser__box { background-color: #2a2f3b; }
html[data-bb-theme="dark"] .bb-rent-who > div { background-color: var(--bbd-surface); }
html[data-bb-theme="dark"] .bb-rent-who span { color: #c3c9d4; }
html[data-bb-theme="dark"] .bb-rent .bb-steps li { background-color: var(--bbd-surface); }
html[data-bb-theme="dark"] .bb-steps span { color: #c3c9d4; }
html[data-bb-theme="dark"] .bb-rent .bb-faq p { color: #c3c9d4; }
html[data-bb-theme="dark"] .bb-rent .bb-rent-formwrap__alt { color: #c3c9d4; }
html[data-bb-theme="dark"] .bb-rent-form__group { background-color: var(--bbd-surface); }
html[data-bb-theme="dark"] .bb-rent-form .bb-field { color: #c3c9d4; }
html[data-bb-theme="dark"] .bb-rent-form input[type="text"],
html[data-bb-theme="dark"] .bb-rent-form input[type="tel"],
html[data-bb-theme="dark"] .bb-rent-form input[type="email"],
html[data-bb-theme="dark"] .bb-rent-form input[type="number"],
html[data-bb-theme="dark"] .bb-rent-form input[type="date"],
html[data-bb-theme="dark"] .bb-rent-form select,
html[data-bb-theme="dark"] .bb-rent-form textarea { background-color: var(--bbd-surface); border-top-color: #3a4050; border-right-color: #3a4050; border-bottom-color: #3a4050; border-left-color: #3a4050; }
html[data-bb-theme="dark"] .bb-choice span,
html[data-bb-theme="dark"] .bb-checks span { background-color: var(--bbd-surface); border-top-color: #3a4050; border-right-color: #3a4050; border-bottom-color: #3a4050; border-left-color: #3a4050; }
html[data-bb-theme="dark"] .bb-checks input:checked + span { background-color: var(--bbd-tint); }
html[data-bb-theme="dark"] .bb-upload { color: #c3c9d4; border-top-color: #3a4050; border-right-color: #3a4050; border-bottom-color: #3a4050; border-left-color: #3a4050; }
html[data-bb-theme="dark"] .bb-agent-toggle span { color: #c3c9d4; }
html[data-bb-theme="dark"] .bb-consent { color: #c3c9d4; }
html[data-bb-theme="dark"] .bb-rent-done p { color: #c3c9d4; }
html[data-bb-theme="dark"] .bb-rent-terms { background-color: var(--bbd-surface); }
html[data-bb-theme="dark"] .bb-rent-cta .bb-rent-cta__card { background-color: var(--bbd-surface); }
html[data-bb-theme="dark"] .bb-rent-cta__icon { background-color: var(--bbd-tint); }
html[data-bb-theme="dark"] .bb-rent-cta .bb-rent-cta__card > span:not(.bb-rent-cta__icon) { color: #c3c9d4; }
html[data-bb-theme="dark"] .bb-doc { color: #e7e9ee; }
html[data-bb-theme="dark"] .bb-doc h1 { color: #e7e9ee; }
html[data-bb-theme="dark"] .bb-doc h2 { color: #e7e9ee; }
html[data-bb-theme="dark"] .bb-doc h3 { color: #e7e9ee; }
html[data-bb-theme="dark"] .bb-doc p { color: #c3c9d4; }
html[data-bb-theme="dark"] .bb-doc h1 + p { color: #c3c9d4; }
html[data-bb-theme="dark"] .bb-doc li { color: #c3c9d4; }
html[data-bb-theme="dark"] .bb-hsearch { color: #e7e9ee; }
html[data-bb-theme="dark"] .bb-hsearch .bb-hsearch__bar { background-color: var(--bbd-surface); }
html[data-bb-theme="dark"] .bb-hsearch .bb-hsearch__switch { background-color: var(--bbd-surface-2); }
html[data-bb-theme="dark"] .bb-hsearch .bb-hsearch__switch button { color: #c3c9d4; }
html[data-bb-theme="dark"] .bb-hsearch .bb-hsearch__switch button:hover { color: #e7e9ee; background-color: var(--bbd-border); }
html[data-bb-theme="dark"] .bb-hsearch .bb-hsearch__switch button[aria-checked="true"] { background-color: #2a2f3b; }
html[data-bb-theme="dark"] .bb-hsearch .bb-hsearch__field + .bb-hsearch__field { border-left-color: var(--bbd-border); }
html[data-bb-theme="dark"] .bb-hsearch .bb-hsearch__field:focus-within { background-color: var(--bbd-surface-2); }
html[data-bb-theme="dark"] .bb-hsearch .bb-hsearch__label { color: #a0a8b8; }
html[data-bb-theme="dark"] .bb-hsearch .bb-hsearch__control select,
html[data-bb-theme="dark"] .bb-hsearch .bb-hsearch__control input { color: #e7e9ee; }
html[data-bb-theme="dark"] .bb-hsearch .bb-hsearch__control input::placeholder { color: #a0a8b8; }
@media (max-width: 900px) {
html[data-bb-theme="dark"] .bb-hsearch .bb-hsearch__field + .bb-hsearch__field { border-top-color: var(--bbd-border); }
}
html[data-bb-theme="dark"] .bb-rent-terms .bb-rent-owner__avatar { background-color: #2a2f3b; }
html[data-bb-theme="dark"] .bb-rent-terms .bb-rent-owner__who strong { color: #e7e9ee; }
html[data-bb-theme="dark"] .bb-rent-terms .bb-rent-owner__who small { color: #a0a8b8; }
html[data-bb-theme="dark"] .bb-rent-terms .bb-rent-owner__wa { color: #e7e9ee; background-color: var(--bbd-surface); border-top-color: #3a4050; border-right-color: #3a4050; border-bottom-color: #3a4050; border-left-color: #3a4050; }
html[data-bb-theme="dark"] .bb-rent-terms .bb-rent-owner__wa:hover { color: #e7e9ee; }
html[data-bb-theme="dark"] .bb-rent-form .bb-rent-form__showphone strong { color: #e7e9ee; }
html[data-bb-theme="dark"] .bb-rent-form .bb-rent-form__hint { color: #c3c9d4; }
html[data-bb-theme="dark"] .myhome-menu__primary-cta-button:not(.bb-post-ad) .myhome-button { color: #e7e9ee !important; background-color: var(--bbd-surface) !important; border-top-color: #3a4050 !important; border-right-color: #3a4050 !important; border-bottom-color: #3a4050 !important; border-left-color: #3a4050 !important; }
html[data-bb-theme="dark"] .myhome-menu__primary-cta-button:not(.bb-post-ad) .myhome-button:hover { color: #e7e9ee !important; background-color: var(--bbd-surface) !important; }
@media (min-width: 1024px) {
html[data-bb-theme="dark"] .elementor-6062 > .elementor-element-1871d154 { background-color: var(--bbd-surface); }
}
@media (max-width: 1023px) {
html[data-bb-theme="dark"] .bb-tabbar { background-color: var(--bbd-surface); border-top-color: var(--bbd-border); }
html[data-bb-theme="dark"] .bb-tabbar .bb-tabbar__item { color: #c3c9d4; }
html[data-bb-theme="dark"] .bb-tabbar .bb-tabbar__plus { border-top-color: var(--bbd-surface); border-right-color: var(--bbd-surface); border-bottom-color: var(--bbd-surface); border-left-color: var(--bbd-surface); }
}
html[data-bb-theme="dark"] .bb-postmenu__panel { background-color: var(--bbd-surface); }
html[data-bb-theme="dark"] .bb-postmenu__head strong { color: #e7e9ee; }
html[data-bb-theme="dark"] .bb-postmenu .bb-postmenu__close { color: #a0a8b8; }
html[data-bb-theme="dark"] .bb-postmenu .bb-postmenu__close:hover { color: #e7e9ee; background-color: var(--bbd-surface-2); }
html[data-bb-theme="dark"] .bb-postmenu .bb-postmenu__opt { color: #e7e9ee; }
html[data-bb-theme="dark"] .bb-postmenu .bb-postmenu__opt:hover,
html[data-bb-theme="dark"] .bb-postmenu .bb-postmenu__opt:focus-visible { color: #e7e9ee; background-color: var(--bbd-surface-2); }
html[data-bb-theme="dark"] .bb-postmenu__ic { background-color: var(--bbd-tint); }
html[data-bb-theme="dark"] .bb-postmenu__txt small { color: #a0a8b8; }
html[data-bb-theme="dark"] .bb-postmenu__arrow { color: #8b93a3; }
html[data-bb-theme="dark"] .bb-fav-count { border-top-color: var(--bbd-surface); border-right-color: var(--bbd-surface); border-bottom-color: var(--bbd-surface); border-left-color: var(--bbd-surface); }
html[data-bb-theme="dark"] .bb-head-fav { color: #e7e9ee; }
html[data-bb-theme="dark"] .bb-head-fav:hover,
html[data-bb-theme="dark"] .bb-head-fav:focus-visible { background-color: var(--bbd-tint); }
html[data-bb-theme="dark"] .bb-fav-page { color: #e7e9ee; background-color: var(--bbd-surface); border-top-color: var(--bbd-border); border-right-color: var(--bbd-border); border-bottom-color: var(--bbd-border); border-left-color: var(--bbd-border); }
html[data-bb-theme="dark"] .bb-fav-page.is-fav { background-color: var(--bbd-tint); border-top-color: rgba(226, 12, 36, .45); border-right-color: rgba(226, 12, 36, .45); border-bottom-color: rgba(226, 12, 36, .45); border-left-color: rgba(226, 12, 36, .45); }
html[data-bb-theme="dark"] .bb-favs .bb-favs__count { color: #a0a8b8; }
html[data-bb-theme="dark"] .bb-favs__note { color: #c3c9d4; background-color: var(--bbd-surface-2); }
html[data-bb-theme="dark"] .bb-fav-card { background-color: var(--bbd-surface); border-top-color: var(--bbd-border); border-right-color: var(--bbd-border); border-bottom-color: var(--bbd-border); border-left-color: var(--bbd-border); }
html[data-bb-theme="dark"] .bb-favs .bb-fav-card__link { color: #e7e9ee; }
html[data-bb-theme="dark"] .bb-fav-card__img { background-color: var(--bbd-surface-2); }
html[data-bb-theme="dark"] .bb-fav-card__addr { color: #a0a8b8; }
html[data-bb-theme="dark"] .bb-favs__empty-ic { background-color: var(--bbd-tint); }
html[data-bb-theme="dark"] .bb-favs .bb-favs__empty h2 { color: #e7e9ee; }
html[data-bb-theme="dark"] .bb-favs .bb-favs__empty p { color: #a0a8b8; }
html[data-bb-theme="dark"] .bb-toast { background-color: #2a2f3b; }
html[data-bb-theme="dark"] .bb-cats .bb-cats__item { color: #e7e9ee; background-color: var(--bbd-surface); border-top-color: var(--bbd-border); border-right-color: var(--bbd-border); border-bottom-color: var(--bbd-border); border-left-color: var(--bbd-border); }
html[data-bb-theme="dark"] .bb-cats .bb-cats__item:hover,
html[data-bb-theme="dark"] .bb-cats .bb-cats__item:focus-visible { color: #e7e9ee; }
html[data-bb-theme="dark"] .bb-cats__icon { background-color: var(--bbd-tint); }
html[data-bb-theme="dark"] .bb-cats__text small { color: #a0a8b8; }
html[data-bb-theme="dark"] .bb-filter__count { color: #c3c9d4; background-color: var(--bbd-surface-2); }
html[data-bb-theme="dark"] .bb-rent .bb-home-rent__action { background-color: var(--bbd-surface); }
html[data-bb-theme="dark"] .bb-home-rent__icon { background-color: var(--bbd-tint); }
html[data-bb-theme="dark"] .bb-home-rent__action > span:not(.bb-home-rent__icon) { color: #c3c9d4; }
html[data-bb-theme="dark"] .bb-calc__form { background-color: var(--bbd-surface); }
html[data-bb-theme="dark"] .bb-calc .bb-calc__label { color: #c3c9d4; }
html[data-bb-theme="dark"] .bb-calc__input { background-color: var(--bbd-surface); }
html[data-bb-theme="dark"] .bb-calc__scale { color: #8b93a3; }
html[data-bb-theme="dark"] .bb-howto__item { background-color: var(--bbd-surface); }
html[data-bb-theme="dark"] .bb-howto__item > span:last-child { color: #c3c9d4; }
html[data-bb-theme="dark"] .bb-stats__item { background-color: var(--bbd-surface-2); }
html[data-bb-theme="dark"] .bb-stats__item span { color: #c3c9d4; }
html[data-bb-theme="dark"] .bb-trust .bb-trust__title { color: #e7e9ee; }
html[data-bb-theme="dark"] .bb-trust .bb-trust__logo { background-color: var(--bbd-surface); }
html[data-bb-theme="dark"] .bb-trust__review { background-color: var(--bbd-surface); }
html[data-bb-theme="dark"] .bb-trust--draft { background-color: var(--bbd-surface-2); border-top-color: #3a4050; border-right-color: #3a4050; border-bottom-color: #3a4050; border-left-color: #3a4050; }
html[data-bb-theme="dark"] .bb-trust__slot { background-color: var(--bbd-surface); }
html[data-bb-theme="dark"] .bb-hsearch .bb-hsearch__map { color: #e7e9ee; background-color: var(--bbd-surface); border-top-color: var(--bbd-border); border-right-color: var(--bbd-border); border-bottom-color: var(--bbd-border); border-left-color: var(--bbd-border); }
html[data-bb-theme="dark"] .bb-hsearch .bb-hsearch__map:hover,
html[data-bb-theme="dark"] .bb-hsearch .bb-hsearch__map:focus-visible { background-color: var(--bbd-tint); }
/* BB-DARK-AUTO END */

/* ---------- Dark theme ---------- */

/* Theme widgets with their own white boxes (listing page, blog sidebar) */
html[data-bb-theme="dark"] .elementor-element-6d8ed16d > .elementor-widget-container,
html[data-bb-theme="dark"] .elementor-element-42f34b69 > .elementor-widget-container,
html[data-bb-theme="dark"] .elementor-element-36fab9f1 > .elementor-widget-container,
html[data-bb-theme="dark"] .elementor-element-6b6d4555 > .elementor-widget-container,
html[data-bb-theme="dark"] .elementor-element-fdeb7f6 > .elementor-widget-container,
html[data-bb-theme="dark"] .elementor-element-509c7dd > .elementor-widget-container,
html[data-bb-theme="dark"] .elementor-element-3afa21cd > .elementor-widget-container { background-color: var(--bbd-surface) !important; border-color: var(--bbd-border) !important; }
/* Contact Form 7 fields styled by Elementor widgets */
html[data-bb-theme="dark"] :is(#bb-boost, body) .wpcf7-form-control:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not(.wpcf7-checkbox):not(.wpcf7-acceptance) { background-color: var(--bbd-surface-2) !important; border-color: var(--bbd-border) !important; color: var(--bbd-text) !important; }
html[data-bb-theme="dark"] .bb-rent-terms__note { color: #fdba74 !important; }

html[data-bb-theme="dark"] {
    color-scheme: dark;
    --bbd-bg: #0f1115; --bbd-alt: #141821; --bbd-surface: #1a1e27; --bbd-surface-2: #222733; --bbd-border: #2b3140;
    --bbd-text: #e7e9ee; --bbd-muted: #a0a8b8; --bbd-tint: rgba(226, 12, 36, .18);
    background-color: #0f1115;
}
html[data-bb-theme="dark"] body { background-color: var(--bbd-bg) !important; color: var(--bbd-text); }
html[data-bb-theme="dark"] .elementor-kit-5417 {
    --e-global-color-lcolor1: #e7e9ee; --e-global-color-lcolor2: #a0a8b8; --e-global-color-lcolor3: #2b3140; --e-global-color-lcolor4: #1a1e27;
    --e-global-color-lsectionbg: #141821; --e-global-color-lsectionbg2: #1a1e27; --e-global-color-lcolor5-op-1: rgba(26, 30, 39, .95);
    --e-global-myhome-button-group-background: #1a1e27; --e-global-myhome-form-control-background: #222733; --e-global-myhome-choice-control-background: #222733;
}
html[data-bb-theme="dark"] ::placeholder { color: #7d8698 !important; opacity: 1; }
.bb-logo-light { display: none !important; }
html[data-bb-theme="dark"] img[src*="buybayt-logo-dark-v2"], html[data-bb-theme="dark"] img[data-src*="buybayt-logo-dark-v2"] { display: none !important; }
html[data-bb-theme="dark"] img.bb-logo-light { display: inline !important; }

/* Elementor sections: page colour, every other one a shade lighter; white cards become dark cards */
html[data-bb-theme="dark"] .elementor > .e-con { background-color: var(--bbd-bg) !important; }
html[data-bb-theme="dark"] .elementor > .e-con.elementor-element-473a3a4,
html[data-bb-theme="dark"] .elementor > .e-con.elementor-element-95e7bf5,
html[data-bb-theme="dark"] .elementor > .e-con.elementor-element-2e47a783,
html[data-bb-theme="dark"] .elementor > .e-con.elementor-element-06266e8,
html[data-bb-theme="dark"] .elementor > .e-con.elementor-element-6e84b92,
html[data-bb-theme="dark"] .elementor > .e-con.elementor-element-390c9d93,
html[data-bb-theme="dark"] .elementor > .e-con.elementor-element-6eecc044,
html[data-bb-theme="dark"] .elementor > .e-con.elementor-element-1aff34bc,
html[data-bb-theme="dark"] .elementor > .e-con.elementor-element-65aadd30,
html[data-bb-theme="dark"] .elementor > .e-con.elementor-element-74612bc9,
html[data-bb-theme="dark"] .elementor > .e-con.elementor-element-711d56f8,
html[data-bb-theme="dark"] .elementor > .e-con.elementor-element-6c65ddd8,
html[data-bb-theme="dark"] .elementor > .e-con.elementor-element-54c82baf,
html[data-bb-theme="dark"] .elementor > .e-con.elementor-element-3f90e098,
html[data-bb-theme="dark"] .elementor > .e-con.elementor-element-12fc7d82,
html[data-bb-theme="dark"] .elementor > .e-con.elementor-element-5c07cd58,
html[data-bb-theme="dark"] .elementor > .e-con.elementor-element-50d8fbc,
html[data-bb-theme="dark"] .elementor > .e-con.elementor-element-1c06e444 { background-color: var(--bbd-alt) !important; }
html[data-bb-theme="dark"] .e-con.elementor-element-586c875f,
html[data-bb-theme="dark"] .e-con.elementor-element-50f9a1c,
html[data-bb-theme="dark"] .e-con.elementor-element-610a98bd,
html[data-bb-theme="dark"] .e-con.elementor-element-329b85f0,
html[data-bb-theme="dark"] .e-con.elementor-element-68621859,
html[data-bb-theme="dark"] .e-con.elementor-element-202c600d,
html[data-bb-theme="dark"] .e-con.elementor-element-17051c2a,
html[data-bb-theme="dark"] .e-con.elementor-element-62c5a33,
html[data-bb-theme="dark"] .e-con.elementor-element-2184e7c4,
html[data-bb-theme="dark"] .e-con.elementor-element-5db6a943,
html[data-bb-theme="dark"] .e-con.elementor-element-73f2e445,
html[data-bb-theme="dark"] .e-con.elementor-element-54bf5553,
html[data-bb-theme="dark"] .e-con.bb-dk-card { background-color: var(--bbd-surface) !important; border-color: var(--bbd-border) !important; }

/* Forms */
html[data-bb-theme="dark"] input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="submit"]):not([type="button"]):not([type="hidden"]),
html[data-bb-theme="dark"] select, html[data-bb-theme="dark"] textarea { background-color: var(--bbd-surface-2) !important; border-color: var(--bbd-border) !important; color: var(--bbd-text) !important; }
html[data-bb-theme="dark"] .bb-calc__input input, html[data-bb-theme="dark"] .bb-hsearch input, html[data-bb-theme="dark"] .bb-hsearch select { background-color: transparent !important; border-color: transparent !important; }
html[data-bb-theme="dark"] option { background-color: var(--bbd-surface); color: var(--bbd-text); }

/* MyHome: header, menus, cards, catalog, accordions, blog, compare */
html[data-bb-theme="dark"] header.myhome-menu, html[data-bb-theme="dark"] .myhome-menu { background-color: transparent !important; }
html[data-bb-theme="dark"] .myhome-menu__submenu-inner { background-color: var(--bbd-surface) !important; box-shadow: 0 16px 40px rgba(0, 0, 0, .55) !important; }
html[data-bb-theme="dark"] .myhome-menu-mobile, html[data-bb-theme="dark"] .myhome-menu-mobile__top { background-color: var(--bbd-bg) !important; }
html[data-bb-theme="dark"] .myhome-attribute { background-color: var(--bbd-surface-2) !important; }
html[data-bb-theme="dark"] .myhome-listing-card, html[data-bb-theme="dark"] .myhome-listing-card__inner, html[data-bb-theme="dark"] .myhome-listing-row { background-color: var(--bbd-surface) !important; }
html[data-bb-theme="dark"] .myhome-listing-card__gallery { background-color: var(--bbd-surface-2) !important; }
html[data-bb-theme="dark"] .myhome-compare-preview__overlay, html[data-bb-theme="dark"] .myhome-compare-preview__surface, html[data-bb-theme="dark"] .myhome-compare-preview-card--placeholder,
html[data-bb-theme="dark"] .myhome-compare-preview-card__image--placeholer, html[data-bb-theme="dark"] .myhome-compare-area__row { background-color: var(--bbd-surface) !important; border-color: var(--bbd-border) !important; }
html[data-bb-theme="dark"] .myhome-accordions__item, html[data-bb-theme="dark"] .myhome-accordion, html[data-bb-theme="dark"] .myhome-quote, html[data-bb-theme="dark"] .myhome-faq-widget__item,
html[data-bb-theme="dark"] .myhome-blog-post-card-v5, html[data-bb-theme="dark"] .myhome-contact-form, html[data-bb-theme="dark"] .myhome-contact-form--v4 { background-color: var(--bbd-surface) !important; border-color: var(--bbd-border) !important; }
html[data-bb-theme="dark"] .myhome-blog-post-card-v5__image, html[data-bb-theme="dark"] .myhome-gallery-v2__image--placeholder, html[data-bb-theme="dark"] .myhome-image-placeholder { background-color: var(--bbd-surface-2) !important; }
html[data-bb-theme="dark"] .myhome-search-map-v2, html[data-bb-theme="dark"] .myhome-search-map-v2-rail, html[data-bb-theme="dark"] .myhome-search-map-v2-results, html[data-bb-theme="dark"] .myhome-search-map-v2-map__shell { background-color: var(--bbd-bg) !important; }
html[data-bb-theme="dark"] .myhome-autocomplete-input, html[data-bb-theme="dark"] .myhome-map-taxonomy__trigger, html[data-bb-theme="dark"] .myhome-map-range__trigger, html[data-bb-theme="dark"] .myhome-search-map-v2-rail__more-filters-button,
html[data-bb-theme="dark"] .myhome-search-map-layout__trigger, html[data-bb-theme="dark"] .myhome-search-map-v2-rail__filters-button, html[data-bb-theme="dark"] .myhome-select, html[data-bb-theme="dark"] .myhome-pagination__item,
html[data-bb-theme="dark"] .myhome-sidebar-search__input { background-color: var(--bbd-surface) !important; border-color: var(--bbd-border) !important; color: var(--bbd-text) !important; }
html[data-bb-theme="dark"] .myhome-select__arrow { background-color: transparent !important; }

/* BuyBayt blocks: shared colours */
html[data-bb-theme="dark"] .bb-rent, html[data-bb-theme="dark"] .bb-rent-cta, html[data-bb-theme="dark"] .bb-rent-terms, html[data-bb-theme="dark"] .bb-rent-done, html[data-bb-theme="dark"] .bb-house, html[data-bb-theme="dark"] .bb-houses-grid, html[data-bb-theme="dark"] .bb-houses-ribbon,
html[data-bb-theme="dark"] .bb-houses-more, html[data-bb-theme="dark"] .bb-designs, html[data-bb-theme="dark"] .bb-agency, html[data-bb-theme="dark"] .bb-cats, html[data-bb-theme="dark"] .bb-hsearch, html[data-bb-theme="dark"] .bb-switch {
    --bb-text: #e7e9ee; --bb-muted: #a0a8b8; --bb-border: #2b3140; --bb-surface: #222733; color: var(--bbd-text);
}
html[data-bb-theme="dark"] .bb-filter__chip { background-color: var(--bbd-surface) !important; border-color: var(--bbd-border) !important; color: var(--bbd-text) !important; }
html[data-bb-theme="dark"] .bb-filter__chip.is-active, html[data-bb-theme="dark"] .bb-filter__chip:hover { background-color: #e20c24 !important; border-color: #e20c24 !important; color: #fff !important; }
html[data-bb-theme="dark"] .bb-filter__count { background-color: var(--bbd-surface-2); color: var(--bbd-muted); }
html[data-bb-theme="dark"] .bb-house-card, html[data-bb-theme="dark"] .bb-flat, html[data-bb-theme="dark"] .bb-rent-card, html[data-bb-theme="dark"] .bb-fav-card, html[data-bb-theme="dark"] .bb-cats .bb-cats__item, html[data-bb-theme="dark"] .bb-howto__item,
html[data-bb-theme="dark"] .bb-home-rent__action, html[data-bb-theme="dark"] .bb-design, html[data-bb-theme="dark"] .bb-trust__slot, html[data-bb-theme="dark"] .bb-trust__review, html[data-bb-theme="dark"] .bb-trust .bb-trust__logo, html[data-bb-theme="dark"] .bb-calc__form,
html[data-bb-theme="dark"] .bb-house__gallery-main, html[data-bb-theme="dark"] .bb-house__summary, html[data-bb-theme="dark"] .bb-house__section, html[data-bb-theme="dark"] .bb-listing-house, html[data-bb-theme="dark"] .bb-agency, html[data-bb-theme="dark"] .bb-rent-terms,
html[data-bb-theme="dark"] .bb-rent-form__group, html[data-bb-theme="dark"] .bb-rent-cta .bb-rent-cta__card, html[data-bb-theme="dark"] .bb-rent-owner, html[data-bb-theme="dark"] .bb-steps li {
    background-color: var(--bbd-surface) !important; border-color: var(--bbd-border) !important; color: var(--bbd-text);
}
html[data-bb-theme="dark"] .bb-house-card__image, html[data-bb-theme="dark"] .bb-flat__image, html[data-bb-theme="dark"] .bb-rent-card__image, html[data-bb-theme="dark"] .bb-fav-card__img, html[data-bb-theme="dark"] .bb-design__frame { background-color: var(--bbd-surface-2) !important; }
html[data-bb-theme="dark"] .bb-cats__icon, html[data-bb-theme="dark"] .bb-home-rent__icon, html[data-bb-theme="dark"] .bb-favs__empty-ic, html[data-bb-theme="dark"] .bb-postmenu__ic, html[data-bb-theme="dark"] .bb-rent-cta__icon { background-color: var(--bbd-tint) !important; }
html[data-bb-theme="dark"] .bb-postmenu__ic.bb-postmenu__ic--wa { background-color: rgba(31, 168, 85, .18) !important; }
html[data-bb-theme="dark"] .bb-cats__text small, html[data-bb-theme="dark"] .bb-howto__item > span:last-child, html[data-bb-theme="dark"] .bb-home-rent__action > span:not(.bb-home-rent__icon), html[data-bb-theme="dark"] .bb-stats__item span,
html[data-bb-theme="dark"] .bb-trust__slot span, html[data-bb-theme="dark"] .bb-fav-card__addr, html[data-bb-theme="dark"] .bb-calc .bb-calc__label, html[data-bb-theme="dark"] .bb-calc__hint, html[data-bb-theme="dark"] .bb-calc__input span { color: var(--bbd-muted) !important; }
html[data-bb-theme="dark"] .bb-cats .bb-cats__item, html[data-bb-theme="dark"] .bb-favs .bb-fav-card__link, html[data-bb-theme="dark"] .bb-rent .bb-home-rent__action, html[data-bb-theme="dark"] .bb-calc__label b, html[data-bb-theme="dark"] .bb-calc .bb-calc__input input { color: var(--bbd-text) !important; }
html[data-bb-theme="dark"] .bb-stats { border-color: var(--bbd-border); background: var(--bbd-border); }
html[data-bb-theme="dark"] .bb-stats__item { background-color: var(--bbd-surface) !important; }
html[data-bb-theme="dark"] .bb-calc__input { background-color: var(--bbd-surface-2); border-color: var(--bbd-border); }
html[data-bb-theme="dark"] .bb-calc__result { border: 1px solid var(--bbd-border); background: #1d222c; }
html[data-bb-theme="dark"] .bb-progress__dot { background-color: var(--bbd-surface-2); }
html[data-bb-theme="dark"] .bb-trust--draft { border-color: #3a3f4b; background: var(--bbd-alt); }
html[data-bb-theme="dark"] .bb-trust .bb-trust__title { color: var(--bbd-text); }

/* Home search */
html[data-bb-theme="dark"] .bb-hsearch .bb-hsearch__bar { background-color: var(--bbd-surface) !important; box-shadow: 0 16px 40px rgba(0, 0, 0, .5) !important; }
html[data-bb-theme="dark"] .bb-hsearch .bb-hsearch__switch { background-color: var(--bbd-surface-2) !important; }
html[data-bb-theme="dark"] .bb-hsearch .bb-hsearch__switch button { color: var(--bbd-muted) !important; }
html[data-bb-theme="dark"] .bb-hsearch .bb-hsearch__switch button:hover { background-color: #2c3240 !important; color: var(--bbd-text) !important; }
html[data-bb-theme="dark"] .bb-hsearch .bb-hsearch__switch button[aria-checked="true"] { background-color: #e7e9ee !important; color: #14141a !important; }
html[data-bb-theme="dark"] .bb-hsearch .bb-hsearch__map { background-color: var(--bbd-surface-2) !important; border-color: var(--bbd-border) !important; color: var(--bbd-text) !important; }
html[data-bb-theme="dark"] .bb-hsearch .bb-hsearch__map:hover { border-color: #e20c24 !important; color: #ff5a6c !important; }

/* Buttons, arrows, small controls */
html[data-bb-theme="dark"] .bb-btn--ghost, html[data-bb-theme="dark"] .bb-rent .bb-btn--ghost { background-color: var(--bbd-surface-2) !important; border-color: var(--bbd-border) !important; color: var(--bbd-text) !important; }
html[data-bb-theme="dark"] .bb-houses-ribbon__arrow, html[data-bb-theme="dark"] .bb-agency__btn--wa, html[data-bb-theme="dark"] .bb-agency__btn--tg { background-color: var(--bbd-surface-2) !important; border-color: var(--bbd-border) !important; color: var(--bbd-text) !important; }
html[data-bb-theme="dark"] .bb-fav-page { background-color: var(--bbd-surface-2) !important; border-color: var(--bbd-border) !important; color: var(--bbd-text) !important; }
html[data-bb-theme="dark"] .bb-fav-page.is-fav { background-color: var(--bbd-tint) !important; border-color: rgba(226, 12, 36, .45) !important; color: #ff5a6c !important; }
html[data-bb-theme="dark"] .bb-upload { background-color: var(--bbd-surface-2) !important; border-color: #3a3f4b !important; }
html[data-bb-theme="dark"] .bb-rent-terms__note { background-color: var(--bbd-surface-2) !important; }
html[data-bb-theme="dark"] .bb-rent-section--grey, html[data-bb-theme="dark"] .bb-rent-formwrap, html[data-bb-theme="dark"] .bb-rent-hero { background-color: var(--bbd-alt) !important; }

/* Header pieces, bottom bar, pop-ups, toast */
html[data-bb-theme="dark"] .bb-head-fav { color: var(--bbd-text); }
html[data-bb-theme="dark"] .bb-head-fav:hover, html[data-bb-theme="dark"] .bb-head-fav:focus-visible { background-color: var(--bbd-tint); color: #ff5a6c; }
html[data-bb-theme="dark"] .bb-fav-count { border-color: var(--bbd-bg); }
html[data-bb-theme="dark"] .bb-tabbar { border-top-color: var(--bbd-border) !important; background-color: #14171e !important; box-shadow: 0 -6px 20px rgba(0, 0, 0, .4) !important; }
html[data-bb-theme="dark"] .bb-tabbar .bb-tabbar__item { color: var(--bbd-muted); }
html[data-bb-theme="dark"] .bb-tabbar .bb-tabbar__item.is-active, html[data-bb-theme="dark"] .bb-tabbar .bb-tabbar__item--post, html[data-bb-theme="dark"] .bb-tabbar .bb-tabbar__item[aria-expanded="true"] { color: #ff5a6c; }
html[data-bb-theme="dark"] .bb-tabbar .bb-tabbar__plus { border-color: #14171e; }
html[data-bb-theme="dark"] .bb-postmenu__panel { background-color: var(--bbd-surface) !important; box-shadow: 0 16px 40px rgba(0, 0, 0, .6) !important; }
html[data-bb-theme="dark"] .bb-postmenu__head strong, html[data-bb-theme="dark"] .bb-postmenu .bb-postmenu__opt, html[data-bb-theme="dark"] .bb-postmenu .bb-postmenu__opt:hover { color: var(--bbd-text) !important; }
html[data-bb-theme="dark"] .bb-postmenu .bb-postmenu__opt:hover, html[data-bb-theme="dark"] .bb-postmenu .bb-postmenu__opt:focus-visible, html[data-bb-theme="dark"] .bb-postmenu .bb-postmenu__close:hover { background-color: var(--bbd-surface-2) !important; }
html[data-bb-theme="dark"] .bb-postmenu__txt small { color: var(--bbd-muted) !important; }
html[data-bb-theme="dark"] .bb-postmenu__backdrop { background: rgba(0, 0, 0, .6); }
html[data-bb-theme="dark"] .bb-toast { background: #2a2f3b; }
html[data-bb-theme="dark"] .bb-favs .bb-favs__empty h2, html[data-bb-theme="dark"] .bb-favs .bb-favs__count { color: var(--bbd-text); }
html[data-bb-theme="dark"] .bb-favs__note { background-color: var(--bbd-surface) !important; color: var(--bbd-muted) !important; }

/* Dark theme: catalog dropdowns, phone filter panel, radios/checkboxes, compare page, misc */
html[data-bb-theme="dark"] .myhome-map-taxonomy__dropdown, html[data-bb-theme="dark"] .myhome-map-range__dropdown, html[data-bb-theme="dark"] .myhome-more-filters-dropdown, html[data-bb-theme="dark"] .myhome-search-map-layout__dropdown,
html[data-bb-theme="dark"] .myhome-select__dropdown, html[data-bb-theme="dark"] .myhome-search-map-v2-rail__location-dropdown {
    --mh-mf-dropdown-surface: var(--bbd-surface); --mh-mf-dropdown-border: var(--bbd-border);
    background-color: var(--bbd-surface) !important; border-color: var(--bbd-border) !important; box-shadow: 0 16px 40px rgba(0, 0, 0, .55) !important;
}
html[data-bb-theme="dark"] .myhome-select__option:hover, html[data-bb-theme="dark"] .myhome-select__option--active, html[data-bb-theme="dark"] .myhome-map-taxonomy__option:hover, html[data-bb-theme="dark"] .myhome-search-map-layout__option:hover,
html[data-bb-theme="dark"] .myhome-search-map-layout__option--active { background-color: var(--bbd-surface-2) !important; }
html[data-bb-theme="dark"] .myhome-search-map-v2-filters-drawer, html[data-bb-theme="dark"] .myhome-search-map-v2-filters-drawer__header, html[data-bb-theme="dark"] .myhome-search-map-v2-filters-drawer__footer,
html[data-bb-theme="dark"] .myhome-search-panel { background-color: var(--bbd-bg) !important; border-color: var(--bbd-border) !important; }
html[data-bb-theme="dark"] .myhome-radio, html[data-bb-theme="dark"] .myhome-checkbox { background-color: var(--bbd-surface-2) !important; border-color: #3a4050 !important; }
html[data-bb-theme="dark"] .myhome-button--regular { background-color: var(--bbd-surface-2) !important; border-color: var(--bbd-border) !important; color: var(--bbd-text) !important; }
html[data-bb-theme="dark"] .myhome-listing-section { background-color: var(--bbd-surface) !important; }
html[data-bb-theme="dark"] .elementor-element-93c10e2 > .elementor-widget-container { background-color: var(--bbd-surface) !important; }
html[data-bb-theme="dark"] .bb-rent-terms__rules > span { background-color: rgba(59, 130, 246, .16) !important; color: #93c5fd !important; }
html[data-bb-theme="dark"] .myhome-menu__submenu .myhome-menu__item:hover > a { background-color: rgba(255, 255, 255, .06) !important; }
html[data-bb-theme="dark"] .myhome-dark-mask { background-color: #05070a !important; }
html[data-bb-theme="dark"] .myhome-map-taxonomy__option--disabled, html[data-bb-theme="dark"] .myhome-map-range__option--disabled, html[data-bb-theme="dark"] .myhome-term-card__count { color: #6b7385 !important; }
html[data-bb-theme="dark"] .bb-rent-hero { background-image: linear-gradient(180deg, #141821 0%, #0f1115 100%) !important; }
html[data-bb-theme="dark"] .elementor > .e-con.elementor-element-1706abc { background-color: var(--bbd-alt) !important; }

/* BB-COMPACT-246: price hint, compact first screen, messengers */
.bb-hsearch .bb-hsearch__control input::placeholder { color: #14141a; font-weight: 600; opacity: 1; }
.bb-hsearch .bb-hsearch__control input:focus::placeholder { color: #9ca3af; font-weight: 400; }
html[data-bb-theme="dark"] .bb-hsearch .bb-hsearch__control input::placeholder { color: #e7e9ee !important; }
html[data-bb-theme="dark"] .bb-hsearch .bb-hsearch__control input:focus::placeholder { color: #6b7385 !important; }

.elementor-element-2a31ccb .myhome-spacer, .elementor-element-e4ab22b .myhome-spacer { height: 56px !important; }
.elementor-element-6431c3b .myhome-spacer { height: 28px !important; }
.elementor-element-6fc1f63 .myhome-spacer, .elementor-element-b1afc28 .myhome-spacer { height: 24px !important; }
.elementor-element-32a9ab4 .myhome-spacer { height: 48px !important; }

.bb-cats { gap: 12px; }
.bb-cats .bb-cats__item { flex-direction: row; align-items: center; gap: 12px; padding: 12px 14px; border-radius: 12px; }
.bb-cats__icon { width: 40px; height: 40px; border-radius: 10px; }
.bb-cats__icon svg { width: 22px; height: 22px; }
.bb-cats__text strong { font-size: 15px; }
.bb-cats__text small { font-size: 12.5px; }

@media (max-width: 900px) {
  .bb-hsearch { gap: 12px; }
  .bb-hsearch .bb-hsearch__bar { gap: 6px; padding: 8px; }
  .bb-hsearch .bb-hsearch__switch button { height: 40px; }
  .bb-hsearch .bb-hsearch__fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .bb-hsearch .bb-hsearch__field { padding: 8px 10px; }
  .bb-hsearch .bb-hsearch__field + .bb-hsearch__field { border-top: 0; border-left: 1px solid #e5e7eb; }
  .bb-hsearch .bb-hsearch__field[data-only] { grid-column: 1 / -1; border-left: 0; border-top: 1px solid #e5e7eb; }
  .bb-hsearch .bb-hsearch__submit, .bb-hsearch .bb-hsearch__map { min-height: 48px; }
  .bb-hsearch .bb-hsearch__owner { gap: 6px; padding: 7px 14px; border-radius: 999px; font-size: 13px; }
  .bb-hsearch .bb-hsearch__owner svg { width: 16px; height: 16px; }
  html[data-bb-theme="dark"] .bb-hsearch .bb-hsearch__field + .bb-hsearch__field,
  html[data-bb-theme="dark"] .bb-hsearch .bb-hsearch__field[data-only] { border-color: var(--bbd-border); }
}

@media (max-width: 767px) {
  .elementor-element-2a31ccb .myhome-spacer { height: 20px !important; }
  .elementor-element-6431c3b .myhome-spacer { height: 14px !important; }
  .elementor-element-e4ab22b .myhome-spacer { height: 24px !important; }
  .elementor-element-6fc1f63 .myhome-spacer, .elementor-element-b1afc28 .myhome-spacer { height: 14px !important; }
  .elementor-element-32a9ab4 .myhome-spacer { height: 28px !important; }
  .elementor-element-4c221fb .myhome-spacer { height: 20px !important; }
  .elementor-element.elementor-element-c272fb3 { width: 100% !important; max-width: 100% !important; --container-widget-width: 100% !important; }
  .elementor-element-c272fb3 .elementor-heading-title { font-size: 28px !important; line-height: 1.2 !important; }
}

@media (max-width: 600px) {
  .bb-hsearch .bb-hsearch__owner-more { display: none; }
  .bb-cats { display: flex; gap: 8px; margin: 0 -2px; padding: 2px 2px 4px; overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x proximity; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
  .bb-cats::-webkit-scrollbar { display: none; }
  .bb-cats .bb-cats__item { flex: 0 0 auto; gap: 8px; padding: 8px 14px 8px 8px; scroll-snap-align: start; }
  .bb-cats .bb-cats__item:hover, .bb-cats .bb-cats__item:focus-visible { transform: none; }
  .bb-cats__icon { width: 34px; height: 34px; border-radius: 9px; }
  .bb-cats__icon svg { width: 19px; height: 19px; }
  .bb-cats__num { font-size: 14px; }
  .bb-cats__text { gap: 0; }
  .bb-cats__text strong { font-size: 14px; line-height: 1.25; white-space: nowrap; }
  .bb-cats__text small { font-size: 12px; white-space: nowrap; }
}

.bb-messengers { display: flex; flex-direction: column; gap: 12px; margin-top: 18px; font-family: Inter, sans-serif; }
.bb-messengers__or { display: flex; align-items: center; gap: 12px; color: #6b7280; font-size: 13px; line-height: 1.3; }
.bb-messengers__or::before, .bb-messengers__or::after { content: ""; flex: 1 1 0; height: 1px; background: #e5e7eb; }
.bb-messengers__btns { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.bb-messengers .bb-messengers__btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; box-sizing: border-box; min-height: 48px; padding: 0 14px; border-radius: 8px; color: #fff; font-size: 15px; font-weight: 600; line-height: 1; text-decoration: none; transition: background-color .15s; }
.bb-messengers .bb-messengers__btn:hover, .bb-messengers .bb-messengers__btn:focus-visible { color: #fff; text-decoration: none; }
.bb-messengers .bb-messengers__btn:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }
.bb-messengers .bb-messengers__btn svg { flex: 0 0 auto; width: 20px; height: 20px; fill: currentColor; }
.bb-messengers .bb-messengers__btn--wa { background: #1a9b4b; }
.bb-messengers .bb-messengers__btn--wa:hover, .bb-messengers .bb-messengers__btn--wa:focus-visible { background: #157f3d; }
.bb-messengers .bb-messengers__btn--tg { background: #1c8ad0; }
.bb-messengers .bb-messengers__btn--tg:hover, .bb-messengers .bb-messengers__btn--tg:focus-visible { background: #1673ad; }
html[data-bb-theme="dark"] .bb-messengers__or { color: var(--bbd-muted); }
html[data-bb-theme="dark"] .bb-messengers__or::before, html[data-bb-theme="dark"] .bb-messengers__or::after { background: var(--bbd-border); }
html[data-bb-theme="dark"] .bb-messengers .bb-messengers__btn { color: #fff !important; }
.elementor-element.elementor-element-c1ecc54 { width: 100%; max-width: 100%; align-self: stretch; }
.bb-messengers { width: 100%; }
html[data-bb-theme="dark"] :is(#bb-boost, body) .bb-hsearch .bb-hsearch__control input { background: transparent !important; border: 0 !important; box-shadow: none !important; }
.bb-agency-form .myhome-contact-form__text textarea { height: 112px !important; min-height: 0; resize: vertical; }
/* Price range like Yandex: one field, "от — до" */
.bb-hsearch .bb-hsearch__field--price { cursor: text; }
.bb-hsearch .bb-hsearch__range { display: flex; align-items: center; gap: 8px; }
.bb-hsearch .bb-hsearch__range input { box-sizing: border-box; flex: 1 1 0; width: 100%; min-width: 0; height: auto; min-height: 0; margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; color: #14141a; font-family: inherit; font-size: 16px; font-weight: 600; line-height: 1.45; outline: none; appearance: none; }
.bb-hsearch .bb-hsearch__range input::placeholder { color: #9ca3af; font-weight: 400; opacity: 1; }
.bb-hsearch .bb-hsearch__dash { flex: 0 0 auto; color: #9ca3af; font-size: 14px; line-height: 1; }
html[data-bb-theme="dark"] :is(#bb-boost, body) .bb-hsearch .bb-hsearch__range input { background: transparent !important; border: 0 !important; box-shadow: none !important; color: #e7e9ee !important; }
html[data-bb-theme="dark"] :is(#bb-boost, body) .bb-hsearch .bb-hsearch__range input::placeholder { color: #6b7385 !important; }
html[data-bb-theme="dark"] .bb-hsearch .bb-hsearch__dash { color: #6b7385; }
@media (min-width: 901px) { .bb-hsearch .bb-hsearch__field--price { flex: 1.35 1 0; } }
/* Header: no phone number, full "Разместить объявление" */
.myhome-menu__cta-buttons .myhome-myhome-menu__secondary-cta-button { display: none !important; }
@media (max-width: 1150px) { .bb-post-ad .bb-post-ad__more { display: none !important; } }
.bb-post-ad .bb-post-ad__btn > span { display: inline-block !important; white-space: nowrap; }
/* BB-SEARCH-V3: город → комнаты (кнопки) → цена, счётчик, компактная строка собственникам */
.bb-hsearch .bb-hsearch__field--city { flex: 1 1 0; }
.bb-hsearch .bb-hsearch__field--rooms { flex: 0 0 auto; cursor: default; }
.bb-hsearch .bb-hsearch__rooms { display: flex; gap: 4px; padding-top: 3px; }
.bb-hsearch .bb-hsearch__room { flex: 0 0 auto; box-sizing: border-box; min-width: 34px; height: 30px; margin: 0; padding: 0 9px; border: 1px solid #d1d5db; border-radius: 7px; background: #fff; box-shadow: none; color: #14141a; font-family: inherit; font-size: 14px; font-weight: 600; line-height: 1; letter-spacing: 0; text-transform: none; cursor: pointer; transition: background-color .15s, border-color .15s, color .15s; }
.bb-hsearch .bb-hsearch__room:hover { border-color: #6b7280; background: #fff; color: #14141a; }
.bb-hsearch .bb-hsearch__room[aria-pressed="true"], .bb-hsearch .bb-hsearch__room[aria-pressed="true"]:hover { border-color: #14141a; background: #14141a; color: #fff; }
.bb-hsearch .bb-hsearch__room:focus-visible { outline: 2px solid #e20c24; outline-offset: 1px; }
html[data-bb-theme="dark"] :is(#bb-boost, body) .bb-hsearch .bb-hsearch__room { border-color: var(--bbd-border) !important; background: var(--bbd-surface-2) !important; color: #e7e9ee !important; }
html[data-bb-theme="dark"] :is(#bb-boost, body) .bb-hsearch .bb-hsearch__room:hover { border-color: #6b7385 !important; }
html[data-bb-theme="dark"] :is(#bb-boost, body) .bb-hsearch .bb-hsearch__room[aria-pressed="true"] { border-color: #e7e9ee !important; background: #e7e9ee !important; color: #14141a !important; }
@media (min-width: 901px) {
  .bb-hsearch .bb-hsearch__field { padding-left: 14px; padding-right: 14px; }
  .bb-hsearch .bb-hsearch__submit { min-width: 232px; white-space: nowrap; }
}
.bb-hsearch .bb-hsearch__submit-text { transition: opacity .15s; }
.bb-hsearch.is-counting .bb-hsearch__submit-text { opacity: .7; }
.bb-hsearch .bb-hsearch__submit.is-empty, .bb-hsearch .bb-hsearch__submit.is-empty:hover { background: #4b5563; }


.bb-hsearch .bb-hsearch__owner, html[data-bb-theme="dark"] .bb-hsearch .bb-hsearch__owner { gap: 6px; padding: 0; border-radius: 0; background: none !important; backdrop-filter: none; -webkit-backdrop-filter: none; color: rgba(255, 255, 255, .85); font-size: 14px; font-weight: 500; text-shadow: 0 1px 3px rgba(0, 0, 0, .6); }
.bb-hsearch .bb-hsearch__owner a { color: #fff; text-decoration: underline; text-decoration-color: rgba(255, 255, 255, .5); text-underline-offset: 3px; }
.bb-hsearch .bb-hsearch__owner-dot { opacity: .7; }

@media (max-width: 900px) {
  .bb-hsearch .bb-hsearch__owner, html[data-bb-theme="dark"] .bb-hsearch .bb-hsearch__owner { padding: 0; border-radius: 0; font-size: 13px; }
  .bb-hsearch .bb-hsearch__field--city, .bb-hsearch .bb-hsearch__field--rooms { grid-column: 1 / -1; }
  .bb-hsearch .bb-hsearch__field.bb-hsearch__field--rooms { border-left: 0; border-top: 1px solid #e5e7eb; }
  html[data-bb-theme="dark"] .bb-hsearch .bb-hsearch__field.bb-hsearch__field--rooms { border-top-color: var(--bbd-border); }
  .bb-hsearch .bb-hsearch__rooms { gap: 6px; padding-top: 4px; }
  .bb-hsearch .bb-hsearch__room { flex: 1 1 0; min-width: 0; height: 34px; padding: 0 4px; }
  .bb-hsearch .bb-hsearch__room[data-room="0"] { flex: 1.9 1 0; }
  .bb-hsearch .bb-hsearch__submit { white-space: nowrap; }
}

/* Header: heart with a caption and a counter */
.bb-head-fav { width: auto; gap: 6px; padding: 0 12px 0 10px; border-radius: 22px; font: 500 15px/1 Inter, sans-serif; white-space: nowrap; }
.bb-head-fav .bb-fav-count { position: static; border: 0; height: 18px; line-height: 18px; }
@media (max-width: 1250px) {
  .bb-head-fav .bb-head-fav__text { display: none; }
  .bb-head-fav { width: 44px; padding: 0; border-radius: 50%; }
  .bb-head-fav .bb-fav-count { position: absolute; top: 2px; right: 0; border: 2px solid #fff; line-height: 14px; }
}
@media (min-width: 901px) {
  .bb-hsearch .bb-hsearch__field--city { flex: 1.25 1 0; min-width: 160px; }
  .bb-hsearch .bb-hsearch__field--price { flex: 1 1 0; min-width: 120px; }
}
/* BB-NEWBUILDS-COMPACT: home «Новостройки» block */
.elementor-element-32a9ab4 .myhome-spacer { height: 32px !important; }
.elementor-element-1346fc7 .myhome-spacer { height: 6px !important; }
.elementor-element-4c221fb .myhome-spacer { height: 20px !important; }
.elementor-element-d7c2921 .myhome-spacer { height: 40px !important; }
.elementor-element-473a3a4 .bb-switch__tabs { margin-bottom: 14px; }
.elementor-element-473a3a4 .bb-houses-more { margin-top: 18px; }
.elementor-element-473a3a4 .bb-house-card__image { aspect-ratio: 16 / 10; }
.elementor-element-473a3a4 .bb-house-card__body { gap: 4px; padding: 14px 16px 16px; }
.elementor-element-473a3a4 .bb-house-card__title { font-size: 18px; }
.elementor-element-473a3a4 .bb-house-card__footer { padding-top: 10px; }
@media (min-width: 768px) {
  .elementor-element-473a3a4 .bb-houses-ribbon__track > .bb-house-card:only-child { flex: 0 1 780px; flex-direction: row; margin: 0 auto; }
  .elementor-element-473a3a4 .bb-house-card:only-child .bb-house-card__image { flex: 0 0 42%; aspect-ratio: auto; min-height: 210px; }
  .elementor-element-473a3a4 .bb-house-card:only-child .bb-house-card__body { justify-content: center; padding: 22px 28px; }
  .elementor-element-473a3a4 .bb-house-card:only-child .bb-house-card__title { font-size: 22px; }
  .elementor-element-473a3a4 .bb-house-card:only-child .bb-house-card__footer { margin-top: 10px; }
}
@media (max-width: 767px) {
  .elementor-element-32a9ab4 .myhome-spacer { height: 20px !important; }
  .elementor-element-1346fc7 .myhome-spacer { height: 4px !important; }
  .elementor-element-4c221fb .myhome-spacer { height: 14px !important; }
  .elementor-element-d7c2921 .myhome-spacer { height: 28px !important; }
  .elementor-element-473a3a4 .bb-switch__tabs { margin-bottom: 10px; }
  .elementor-element-473a3a4 .bb-houses-more { margin-top: 14px; }
  .elementor-element-473a3a4 .bb-houses-ribbon__track > .bb-house-card:only-child { flex-basis: 100%; }
  .elementor-element-473a3a4 .bb-house-card:only-child .bb-house-card__image { aspect-ratio: 16 / 9; }
}
/* BB-HOME-SYMMETRY: one rhythm for every home section */
.elementor-element-32a9ab4 .myhome-spacer, .elementor-element-04c1043 .myhome-spacer, .elementor-element-85a7523 .myhome-spacer, .elementor-element-e11f858 .myhome-spacer, .elementor-element-0e48f3c .myhome-spacer, .elementor-element-41adc6da .myhome-spacer { height: 56px !important; }
.elementor-element-1346fc7 .myhome-spacer, .elementor-element-1feb5ec .myhome-spacer, .elementor-element-1757c1a .myhome-spacer, .elementor-element-fc00b76 .myhome-spacer, .elementor-element-f317d93 .myhome-spacer, .elementor-element-684f5ec .myhome-spacer { height: 10px !important; }
.elementor-element-4c221fb .myhome-spacer, .elementor-element-d333da5 .myhome-spacer, .elementor-element-97188f2 .myhome-spacer, .elementor-element-30eff30 .myhome-spacer, .elementor-element-67d2c62 .myhome-spacer, .elementor-element-7819313 .myhome-spacer { height: 28px !important; }
.elementor-element-4f8a593 .myhome-spacer, .elementor-element-64881f7f .myhome-spacer { height: 28px !important; }
.elementor-element-d7c2921 .myhome-spacer, .elementor-element-bdbe80f .myhome-spacer, .elementor-element-9ae7229 .myhome-spacer, .elementor-element-806b57f .myhome-spacer, .elementor-element-2ac161a .myhome-spacer, .elementor-element-89232af .myhome-spacer { height: 56px !important; }
.elementor-element-473a3a4 .bb-houses-more, .bb-home-rent .bb-houses-more { margin-top: 28px; }
.bb-home-rent .bb-home-rent__grid { display: flex; flex-wrap: wrap; justify-content: center; gap: 20px; }
.bb-home-rent .bb-home-rent__grid > * { flex: 0 1 380px; min-width: 0; box-sizing: border-box; }
@media (min-width: 1024px) {
  .bb-calc:not(.bb-calc--compact) { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: stretch; }
  .bb-calc:not(.bb-calc--compact) .bb-calc__form { grid-template-columns: 1fr; align-content: space-between; }
}
@media (max-width: 767px) {
  .elementor-element-32a9ab4 .myhome-spacer, .elementor-element-04c1043 .myhome-spacer, .elementor-element-85a7523 .myhome-spacer, .elementor-element-e11f858 .myhome-spacer, .elementor-element-0e48f3c .myhome-spacer, .elementor-element-41adc6da .myhome-spacer { height: 36px !important; }
  .elementor-element-1346fc7 .myhome-spacer, .elementor-element-1feb5ec .myhome-spacer, .elementor-element-1757c1a .myhome-spacer, .elementor-element-fc00b76 .myhome-spacer, .elementor-element-f317d93 .myhome-spacer, .elementor-element-684f5ec .myhome-spacer { height: 8px !important; }
  .elementor-element-4c221fb .myhome-spacer, .elementor-element-d333da5 .myhome-spacer, .elementor-element-97188f2 .myhome-spacer, .elementor-element-30eff30 .myhome-spacer, .elementor-element-67d2c62 .myhome-spacer, .elementor-element-7819313 .myhome-spacer { height: 18px !important; }
  .elementor-element-4f8a593 .myhome-spacer, .elementor-element-64881f7f .myhome-spacer { height: 20px !important; }
  .elementor-element-d7c2921 .myhome-spacer, .elementor-element-bdbe80f .myhome-spacer, .elementor-element-9ae7229 .myhome-spacer, .elementor-element-806b57f .myhome-spacer, .elementor-element-2ac161a .myhome-spacer, .elementor-element-89232af .myhome-spacer { height: 36px !important; }
  .elementor-element-473a3a4 .bb-houses-more, .bb-home-rent .bb-houses-more { margin-top: 20px; }
}
@media (max-width: 600px) {
  .bb-home-rent .bb-home-rent__grid { gap: 14px; }
  .bb-home-rent .bb-home-rent__grid > * { flex-basis: 100%; }
}
/* Contacts: messenger card */
.bb-messengers__or:empty { display: none; }
.elementor-element-62c5a33 .bb-messengers { margin-top: 0; }
/* BB-MOBILE-POLISH */
.bb-hsearch .bb-hsearch__range input::placeholder { color: #9ca3af !important; font-weight: 400; }
#contact-form .wpcf7 .myhome-button { font-size: 15px; font-weight: 600; letter-spacing: 0; text-transform: none; }
@media (max-width: 767px) {
  .elementor-6067 .elementor-widget-mh_heading h2 { font-size: 26px !important; line-height: 1.2 !important; }
  .bb-stats > .bb-stats__item:last-child:nth-child(odd) { grid-column: 1 / -1; }
}
@media (max-width: 400px) { .elementor-element-c272fb3 .elementor-heading-title { font-size: clamp(22px, 7.2vw, 28px) !important; } }
/* BB-SEARCH-STABLE: the search block keeps its size when switching Купить / Снять */
.elementor-element.elementor-element-bbhsearch { width: 100%; max-width: 1140px; }
.bb-hsearch { width: 100%; }
.bb-hsearch .bb-hsearch__submit-text { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
@media (min-width: 901px) {
  .bb-hsearch .bb-hsearch__switch button { width: 88px; padding: 0; }
  .bb-hsearch .bb-hsearch__submit { flex: 0 0 256px; width: 256px; min-width: 0; padding: 0 16px; }
}
@media (max-width: 900px) {
  .bb-hsearch .bb-hsearch__actions .bb-hsearch__submit { flex: 1 1 0; min-width: 0; }
}
@media (max-width: 400px) {
  .bb-hsearch .bb-hsearch__actions .bb-hsearch__submit { padding: 0 10px; font-size: 15px; }
  .bb-hsearch .bb-hsearch__map { padding: 0 12px; gap: 6px; }
}
/* BB-FLUID: Apple-style feel — press feedback, glass bars, sheet, reduced motion/transparency, soft theme switch */

/* 1. Press feedback: respond on touch-down */
.bb-hsearch__switch button, .bb-hsearch__room, .bb-hsearch__submit, .bb-hsearch__map, .bb-house-card, .bb-home-rent__action, .bb-button,
.bb-messengers__btn, .bb-filter__chip, .bb-post-ad__btn, .bb-head-fav, .bb-theme, .bb-postmenu__opt, .bb-postmenu__close,
.bb-tabbar__item, .bb-calc__apply, .myhome-button, .myhome-listing-card, .bb-fav-btn {
  -webkit-tap-highlight-color: transparent; touch-action: manipulation;
}
.bb-hsearch__switch button, .bb-hsearch__room, .bb-hsearch__submit, .bb-hsearch__map, .bb-button, .bb-messengers__btn, .bb-filter__chip,
.bb-post-ad__btn, .bb-head-fav, .bb-postmenu__close, .bb-calc__apply, .myhome-button, .bb-fav-btn {
  transition-property: transform, background-color, color, border-color, filter, box-shadow, opacity;
  transition-duration: 110ms; transition-timing-function: ease-out;
}
.bb-hsearch__switch button:active, .bb-hsearch__room:active, .bb-hsearch__map:active, .bb-filter__chip:active, .bb-postmenu__close:active, .bb-head-fav:active { transform: scale(.95); }
.bb-hsearch__submit:active, .bb-button:active, .bb-messengers__btn:active, .bb-post-ad__btn:active, .bb-calc__apply:active, .myhome-button:active { transform: scale(.97); filter: brightness(.92); }
.bb-house-card:active, .bb-home-rent__action:active, .myhome-listing-card:active, .bb-postmenu__opt:active { transform: scale(.985); transition: transform 110ms ease-out; }
.bb-tabbar .bb-tabbar__item { transition: transform 110ms ease-out, color .15s; }
.bb-tabbar .bb-tabbar__item:active { transform: scale(.92); }
.bb-fav-btn:active { transform: scale(.88); }

/* 2. Glass bars: the sticky header (computers) and the bottom tab bar (phones) */
@media (min-width: 1024px) {
  .elementor-6062 > .elementor-element-1871d154 { background: rgba(255, 255, 255, .72) !important; -webkit-backdrop-filter: blur(20px) saturate(180%); backdrop-filter: blur(20px) saturate(180%); }
  html[data-bb-theme="dark"] .elementor-6062 > .elementor-element-1871d154 { background: rgba(15, 17, 21, .72) !important; }
  .elementor-6062 > .elementor-element-1871d154 .myhome-menu__line { opacity: 0; }
  .bb-scrolled .elementor-6062 > .elementor-element-1871d154 { box-shadow: 0 1px 0 rgba(20, 20, 26, .06), 0 8px 24px rgba(20, 20, 26, .06); }
  html[data-bb-theme="dark"].bb-scrolled .elementor-6062 > .elementor-element-1871d154 { box-shadow: 0 1px 0 rgba(255, 255, 255, .05), 0 8px 24px rgba(0, 0, 0, .35); }
}
@media (max-width: 1023px) {
  .bb-tabbar { border-top-color: rgba(20, 20, 26, .06) !important; background: rgba(255, 255, 255, .74) !important; -webkit-backdrop-filter: blur(20px) saturate(180%); backdrop-filter: blur(20px) saturate(180%); box-shadow: 0 -4px 18px rgba(20, 20, 26, .05) !important; }
  html[data-bb-theme="dark"] .bb-tabbar { border-top-color: rgba(255, 255, 255, .06) !important; background: rgba(20, 23, 30, .72) !important; box-shadow: 0 -4px 18px rgba(0, 0, 0, .35) !important; }
  .bb-tabbar .bb-tabbar__plus { border-color: transparent !important; box-shadow: 0 6px 18px rgba(226, 12, 36, .4); }
}
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  .elementor-6062 > .elementor-element-1871d154 { background: #fff !important; }
  html[data-bb-theme="dark"] .elementor-6062 > .elementor-element-1871d154 { background: #0f1115 !important; }
  .bb-tabbar { background: #fff !important; }
  html[data-bb-theme="dark"] .bb-tabbar { background: #14171e !important; }
}

/* 3. Phones: «Разместить» / «Связаться» become a bottom sheet driven by a spring (see site-tweaks.php) */
@media (max-width: 1023px) {
  .bb-postmenu__panel {
    right: 0; left: 0; bottom: 0; gap: 2px; padding: 8px 10px calc(84px + env(safe-area-inset-bottom, 0px));
    border-radius: 22px 22px 0 0; box-shadow: 0 -12px 40px rgba(20, 20, 26, .22); touch-action: none; will-change: transform;
    transform: translateY(105%); transition: opacity .18s ease, transform .28s cubic-bezier(.2, .8, .2, 1);
  }
  .bb-postmenu__panel::before { content: ""; flex: none; align-self: center; width: 40px; height: 5px; margin: 2px 0 8px; border-radius: 3px; background: #d1d5db; }
  html[data-bb-theme="dark"] .bb-postmenu__panel::before { background: #3a4150; }
  .bb-postmenu.is-open .bb-postmenu__panel { opacity: 1; }
  .bb-postmenu.bb-sheet-js .bb-postmenu__panel, .bb-postmenu.bb-sheet-js .bb-postmenu__backdrop { transition: none; }
}

/* 5. System settings: reduce motion → fades instead of slides; reduce transparency → solid bars */
@media (prefers-reduced-motion: reduce) {
  .bb-postmenu__backdrop, .bb-postmenu__panel { transition: opacity .2s ease !important; transform: none !important; }
  .bb-hsearch__switch button, .bb-hsearch__room, .bb-hsearch__submit, .bb-hsearch__map, .bb-button, .bb-messengers__btn, .bb-filter__chip,
  .bb-post-ad__btn, .bb-head-fav, .bb-postmenu__close, .bb-calc__apply, .myhome-button, .bb-fav-btn, .bb-house-card, .bb-home-rent__action,
  .myhome-listing-card, .bb-postmenu__opt, .bb-tabbar .bb-tabbar__item { transition-duration: 0s !important; }
  html { scroll-behavior: auto !important; }
}
@media (prefers-reduced-transparency: reduce) {
  .elementor-6062 > .elementor-element-1871d154, .bb-tabbar { -webkit-backdrop-filter: none !important; backdrop-filter: none !important; background: #fff !important; }
  html[data-bb-theme="dark"] .elementor-6062 > .elementor-element-1871d154 { background: #0f1115 !important; }
  html[data-bb-theme="dark"] .bb-tabbar { background: #14171e !important; }
}

/* 6. Soft light/dark switch (class set for ~0.4 s by the toggle) */
html.bb-theme-anim, html.bb-theme-anim *, html.bb-theme-anim *::before, html.bb-theme-anim *::after {
  transition: background-color .35s ease, color .35s ease, border-color .35s ease, fill .35s ease, stroke .35s ease, box-shadow .35s ease, transform .35s cubic-bezier(.3, .7, .2, 1) !important;
}
/* BB-MM-CARD: phones — the burger panel is a floating card (logo, «Меню», red CTA, grouped list with icons, theme card, «Поддержка») */
@media (max-width: 1023px) {
  html body .myhome-menu-mobile {
    --mm-bg: rgba(255, 255, 255, .94); --mm-card: #f3f4f6; --mm-tile: #ffffff; --mm-line: rgba(20, 20, 26, .08); --mm-border: rgba(20, 20, 26, .07);
    --mm-ink: #14141a; --mm-muted: #6b7280; --mm-shadow: 0 24px 60px rgba(20, 20, 26, .28);
    top: calc(env(safe-area-inset-top, 0px) + 10px) !important; bottom: calc(env(safe-area-inset-bottom, 0px) + 10px) !important; right: 8px !important; left: auto !important;
    display: flex !important; flex-direction: column; gap: 14px; box-sizing: border-box; width: min(340px, calc(100vw - 48px)) !important; height: auto !important; max-height: none !important;
    padding: 18px 16px 22px !important; border: 1px solid var(--mm-border) !important; border-radius: 30px !important;
    background: var(--mm-bg) !important; -webkit-backdrop-filter: blur(28px) saturate(170%); backdrop-filter: blur(28px) saturate(170%);
    box-shadow: var(--mm-shadow) !important; color: var(--mm-ink) !important; font-family: Inter, system-ui, sans-serif;
    overflow-x: hidden !important; overflow-y: auto !important; overscroll-behavior: contain; scrollbar-width: none;
    transform: translateX(calc(100% + 24px)) !important; transition: transform .38s cubic-bezier(.2, .85, .2, 1) !important;
  }
  html body .myhome-menu-mobile::-webkit-scrollbar { display: none; }
  html[data-bb-theme="dark"] body .myhome-menu-mobile {
    --mm-bg: rgba(26, 28, 34, .94); --mm-card: rgba(255, 255, 255, .045); --mm-tile: rgba(255, 255, 255, .07); --mm-line: rgba(255, 255, 255, .07); --mm-border: rgba(255, 255, 255, .08);
    --mm-ink: #eef0f4; --mm-muted: #9aa1ae; --mm-shadow: 0 24px 60px rgba(0, 0, 0, .6);
  }
  html body .myhome-menu-mobile.myhome-menu-mobile--open { transform: translateX(0) !important; }
  body.admin-bar .myhome-menu-mobile { top: 56px !important; }
  html body .myhome-menu-mobile > * { flex: none; margin: 0 !important; }

  /* Head: logo + round close, big «Меню», red button */
  html body .myhome-menu-mobile .myhome-menu-mobile__top { display: grid !important; grid-template-columns: 1fr auto; grid-template-areas: "logo close" "title title" "btn btn"; align-items: center; gap: 16px 12px; height: auto !important; padding: 0 !important; border: 0 !important; background: transparent !important; }
  html body .myhome-menu-mobile .bb-mm-logo { grid-area: logo; display: flex; align-items: center; min-width: 0; }
  html body .myhome-menu-mobile .bb-mm-logo img { display: block; width: auto; height: 32px; max-width: 100%; }
  html body .myhome-menu-mobile .bb-mm-title { grid-area: title; color: var(--mm-ink); font: 800 34px/1.05 Inter, sans-serif; letter-spacing: -.03em; }
  html body .myhome-menu-mobile .myhome-menu-mobile__close { grid-area: close; position: static !important; display: flex !important; align-items: center; justify-content: center; box-sizing: border-box; width: 44px !important; height: 44px !important; margin: 0 !important; padding: 0 !important; border: 1px solid var(--mm-border) !important; border-radius: 50% !important; background: var(--mm-tile) !important; color: var(--mm-ink) !important; cursor: pointer; transition: transform .11s ease-out; }
  html body .myhome-menu-mobile .myhome-menu-mobile__close:active { transform: scale(.92); }
  html body .myhome-menu-mobile .myhome-menu-mobile__close svg { width: 15px !important; height: 15px !important; fill: none !important; }
  html body .myhome-menu-mobile .myhome-menu-mobile__close svg path { fill: none !important; stroke: currentColor !important; stroke-width: 2.2px; }
  html body .myhome-menu-mobile .myhome-menu-mobile__buttons { grid-area: btn; display: block !important; width: 100%; margin: 0 !important; padding: 0 !important; }
  html body .myhome-menu-mobile .myhome-menu-mobile__buttons .bb-mm-post { display: flex !important; align-items: center; justify-content: center; gap: 10px; box-sizing: border-box; width: 100% !important; height: 56px !important; margin: 0 !important; padding: 0 16px !important; border: 0 !important; border-radius: 18px !important; background: linear-gradient(180deg, #f22b40 0%, #d20b21 100%) !important; box-shadow: 0 10px 24px rgba(226, 12, 36, .32), inset 0 1px 0 rgba(255, 255, 255, .22) !important; color: #fff !important; font: 600 17px/1 Inter, sans-serif !important; letter-spacing: 0 !important; text-transform: none !important; white-space: nowrap; }
  html body .myhome-menu-mobile .myhome-menu-mobile__buttons .bb-mm-post svg { flex: none; width: 20px; height: 20px; }

  /* Grouped list with icon tiles */
  html body .myhome-menu-mobile .myhome-menu-mobile__items { display: block !important; padding: 2px 14px !important; border: 1px solid var(--mm-border) !important; border-radius: 22px !important; background: var(--mm-card) !important; }
  html body .myhome-menu-mobile .myhome-menu-mobile__item--depth-0 { margin: 0 !important; padding: 0 !important; border: 0 !important; background: transparent !important; }
  html body .myhome-menu-mobile .myhome-menu-mobile__item--depth-0 + .myhome-menu-mobile__item--depth-0 { border-top: 1px solid var(--mm-line) !important; }
  html body .myhome-menu-mobile .myhome-menu-mobile__item--depth-0 > a { position: relative; display: flex !important; align-items: center; gap: 10px; box-sizing: border-box; min-height: 62px; margin: 0 !important; padding: 8px 2px 8px 60px !important; border: 0 !important; background: transparent !important; color: var(--mm-ink) !important; font: 500 17px/1.2 Inter, sans-serif !important; letter-spacing: -.01em !important; text-decoration: none !important; text-transform: none !important; }
  html body .myhome-menu-mobile .myhome-menu-mobile__item--depth-0 > a::before { content: ""; position: absolute; top: 50%; left: 0; box-sizing: border-box; width: 44px; height: 44px; margin-top: -22px; border: 1px solid var(--mm-border); border-radius: 13px; background: var(--mm-tile); }
  html body .myhome-menu-mobile .myhome-menu-mobile__item--depth-0 > a::after { content: ""; position: absolute; top: 50%; left: 11px; width: 22px; height: 22px; margin-top: -11px; background-color: currentColor; -webkit-mask: var(--mm-ic) center / contain no-repeat; mask: var(--mm-ic) center / contain no-repeat; }
  html body .myhome-menu-mobile .menu-item-18595 > a { --mm-ic: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27black%27%20stroke-width%3D%271.8%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Crect%20x%3D%274%27%20y%3D%273%27%20width%3D%2710%27%20height%3D%2718%27%20rx%3D%271%27%2F%3E%3Cpath%20d%3D%27M14%209h5a1%201%200%200%201%201%201v11h-6M7.5%207h3M7.5%2011h3M7.5%2015h3M2%2021h20%27%2F%3E%3C%2Fsvg%3E"); }
  html body .myhome-menu-mobile .menu-item-18758 > a { --mm-ic: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27black%27%20stroke-width%3D%271.8%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Ccircle%20cx%3D%278%27%20cy%3D%2715%27%20r%3D%274%27%2F%3E%3Cpath%20d%3D%27M10.8%2012.2%2020%203M17%206l2.5%202.5M14.5%208.5l2%202%27%2F%3E%3C%2Fsvg%3E"); }
  html body .myhome-menu-mobile .menu-item-15609 > a { --mm-ic: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27black%27%20stroke-width%3D%271.8%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Ccircle%20cx%3D%2711%27%20cy%3D%2711%27%20r%3D%277%27%2F%3E%3Cpath%20d%3D%27M20%2020l-3.5-3.5%27%2F%3E%3C%2Fsvg%3E"); }
  html body .myhome-menu-mobile .menu-item-8220 > a { --mm-ic: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27black%27%20stroke-width%3D%271.8%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Crect%20x%3D%275%27%20y%3D%273%27%20width%3D%2714%27%20height%3D%2718%27%20rx%3D%272%27%2F%3E%3Ccircle%20cx%3D%2712%27%20cy%3D%2710%27%20r%3D%272.5%27%2F%3E%3Cpath%20d%3D%27M8.5%2016.5a3.5%203.5%200%200%201%207%200M3%208h2M3%2012h2M3%2016h2%27%2F%3E%3C%2Fsvg%3E"); }
  html body .myhome-menu-mobile .bb-mm-fav > a { --mm-ic: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27black%27%20stroke-width%3D%271.8%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M20.8%204.6a5.5%205.5%200%200%200-7.8%200L12%205.7l-1-1.1a5.5%205.5%200%200%200-7.8%207.8l1%201.1%207.8%207.7%207.8-7.7%201-1.1a5.5%205.5%200%200%200%200-7.8z%27%2F%3E%3C%2Fsvg%3E"); }
  html body .myhome-menu-mobile .myhome-menu-mobile__item--depth-0 > a svg { position: static !important; flex: none; width: 18px !important; height: 18px !important; margin: 0 0 0 auto !important; transform: none; transition: transform .2s ease; fill: currentColor; opacity: .75; }
  html body .myhome-menu-mobile .myhome-menu-mobile__item--open > a svg { transform: rotate(180deg); }
  html body .myhome-menu-mobile .myhome-menu-mobile__submenu { margin: -4px 0 8px 60px !important; padding: 0 !important; border: 0 !important; background: transparent !important; }
  html body .myhome-menu-mobile .myhome-menu-mobile__item--depth-1 { margin: 0 !important; padding: 0 !important; border: 0 !important; background: transparent !important; }
  html body .myhome-menu-mobile .myhome-menu-mobile__item--depth-1 > a { display: block !important; padding: 9px 0 !important; border: 0 !important; background: transparent !important; color: var(--mm-muted) !important; font: 500 15px/1.3 Inter, sans-serif !important; text-decoration: none !important; text-transform: none !important; white-space: normal !important; height: auto !important; min-height: 0 !important; }
  html body .myhome-menu-mobile .myhome-menu-mobile__item--depth-1 > a svg { display: none !important; }
  html body .myhome-menu-mobile .myhome-menu-mobile__item--depth-0 > a { height: auto !important; }
  html body .myhome-menu-mobile .bb-mm-fav .bb-fav-count { position: static; display: inline-block; margin-left: 2px; border: 0; vertical-align: 1px; }

  /* Theme card */
  html body .myhome-menu-mobile .bb-theme-row { display: flex !important; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 10px 10px 18px !important; border: 1px solid var(--mm-border) !important; border-radius: 22px !important; background: var(--mm-card) !important; }
  html body .myhome-menu-mobile .bb-theme-row__label { color: var(--mm-ink) !important; font: 500 17px/1.2 Inter, sans-serif !important; }

  /* «Поддержка» */
  html body .myhome-menu-mobile .bb-mm-label { margin: 4px 0 -6px 4px !important; color: var(--mm-muted); font: 500 15px/1.2 Inter, sans-serif; }
  html body .myhome-menu-mobile .myhome-menu-mobile__info { display: block !important; padding: 2px 14px !important; border: 1px solid var(--mm-border) !important; border-radius: 22px !important; background: var(--mm-card) !important; }
  html body .myhome-menu-mobile .myhome-menu-mobile__data { position: relative; display: flex !important; flex-direction: column; justify-content: center; gap: 2px; box-sizing: border-box; min-height: 66px; margin: 0 !important; padding: 10px 0 10px 60px !important; border: 0 !important; background: transparent !important; }
  html body .myhome-menu-mobile .myhome-menu-mobile__data + .myhome-menu-mobile__data { border-top: 1px solid var(--mm-line) !important; }
  html body .myhome-menu-mobile .myhome-menu-mobile__data::before { content: ""; position: absolute; top: 50%; left: 0; box-sizing: border-box; width: 44px; height: 44px; margin-top: -22px; border: 1px solid var(--mm-border); border-radius: 13px; background: var(--mm-tile); }
  html body .myhome-menu-mobile .myhome-menu-mobile__data::after { content: ""; position: absolute; top: 50%; left: 11px; width: 22px; height: 22px; margin-top: -11px; background-color: var(--mm-ink); -webkit-mask: var(--mm-ic) center / contain no-repeat; mask: var(--mm-ic) center / contain no-repeat; }
  html body .myhome-menu-mobile .myhome-menu-mobile__data:nth-child(1) { --mm-ic: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27black%27%20stroke-width%3D%271.8%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M22%2016.9v3a2%202%200%200%201-2.2%202%2019.8%2019.8%200%200%201-8.6-3.1%2019.5%2019.5%200%200%201-6-6A19.8%2019.8%200%200%201%202.1%204.2%202%202%200%200%201%204.1%202h3a2%202%200%200%201%202%201.7c.1.9.4%201.8.7%202.7a2%202%200%200%201-.5%202.1L8%209.8a16%2016%200%200%200%206%206l1.3-1.3a2%202%200%200%201%202.1-.4c.9.3%201.8.6%202.7.7a2%202%200%200%201%201.7%202z%27%2F%3E%3C%2Fsvg%3E"); }
  html body .myhome-menu-mobile .myhome-menu-mobile__data:nth-child(2) { --mm-ic: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27black%27%20stroke-width%3D%271.8%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Crect%20x%3D%273%27%20y%3D%275%27%20width%3D%2718%27%20height%3D%2714%27%20rx%3D%272%27%2F%3E%3Cpath%20d%3D%27m3%207%209%206%209-6%27%2F%3E%3C%2Fsvg%3E"); }
  html body .myhome-menu-mobile .myhome-menu-mobile__data.bb-mm-wa { --mm-ic: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27black%27%3E%3Cpath%20d%3D%27M12%202a10%2010%200%200%200-8.6%2015.1L2%2022l5-1.3A10%2010%200%201%200%2012%202zm0%2018.2a8.2%208.2%200%200%201-4.2-1.2l-.3-.2-3%20.8.8-2.9-.2-.3A8.2%208.2%200%201%201%2012%2020.2zm4.5-6.1c-.2-.1-1.5-.7-1.7-.8-.2-.1-.4-.1-.6.1l-.8%201c-.1.2-.3.2-.5.1a6.7%206.7%200%200%201-3.3-2.9c-.2-.4.2-.4.7-1.3.1-.2%200-.3%200-.4l-.8-1.8c-.2-.5-.4-.4-.6-.4h-.5a1%201%200%200%200-.7.3%203%203%200%200%200-.9%202.2%205.2%205.2%200%200%200%201.1%202.7%2011.8%2011.8%200%200%200%204.5%204c1.7.7%202.3.8%203.2.6.5-.1%201.5-.6%201.7-1.2.2-.6.2-1.1.2-1.2-.1-.1-.3-.2-.5-.3z%27%2F%3E%3C%2Fsvg%3E"); }
  html body .myhome-menu-mobile .myhome-menu-mobile__data.bb-mm-tg { --mm-ic: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27black%27%3E%3Cpath%20d%3D%27M21.9%204.3%2018.7%2019.4c-.2%201-.9%201.3-1.7.8l-4.8-3.5-2.3%202.2c-.3.3-.5.5-1%20.5l.3-4.9%208.9-8c.4-.3-.1-.5-.6-.2L6.5%2013.2%201.8%2011.7c-1-.3-1-1%20.2-1.5L20.5%203c.9-.3%201.6.2%201.4%201.3z%27%2F%3E%3C%2Fsvg%3E"); }
  html body .myhome-menu-mobile .myhome-menu-mobile__data-label { margin: 0 !important; color: var(--mm-muted) !important; font: 500 13px/1.25 Inter, sans-serif !important; letter-spacing: 0 !important; text-transform: none !important; }
  html body .myhome-menu-mobile .myhome-menu-mobile__data-value, html body .myhome-menu-mobile .myhome-menu-mobile__data-value a { margin: 0 !important; color: var(--mm-ink) !important; font: 500 18px/1.25 Inter, sans-serif !important; letter-spacing: -.01em !important; text-decoration: none !important; word-break: break-word; }
  html body .myhome-menu-mobile .myhome-menu-mobile__socials { display: none !important; }

  /* Page behind: dimmed and softly blurred */
  html body .myhome-dark-mask.myhome-dark-mask--active, html[data-bb-theme] body .myhome-dark-mask.myhome-dark-mask--active { background: rgba(8, 10, 14, .38) !important; background-color: rgba(8, 10, 14, .38) !important; opacity: 1 !important; -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); }
}
@media (max-width: 1023px) and (prefers-reduced-motion: reduce) {
  html body .myhome-menu-mobile { transition: opacity .2s ease, visibility .2s !important; opacity: 0; visibility: hidden; transform: none !important; }
  html body .myhome-menu-mobile.myhome-menu-mobile--open { opacity: 1; visibility: visible; }
}
@media (max-width: 1023px) and (prefers-reduced-transparency: reduce) {
  html body .myhome-menu-mobile { -webkit-backdrop-filter: none !important; backdrop-filter: none !important; background: #fff !important; }
  html[data-bb-theme="dark"] body .myhome-menu-mobile { background: #1a1c22 !important; }
  .myhome-dark-mask.myhome-dark-mask--active { -webkit-backdrop-filter: none !important; backdrop-filter: none !important; }
}
