/* Main responsive styles */

@media only screen and (max-width: 1440px) {
    .add-btn .add-btn__text {
        display: none;
    }

    .header__nav-item.js-modals[data-src="#modal-auth"] span {
        display: none;
    }

    .header-profile__btn-name {
        display: none;
    }
}

@media only screen and (max-width: 1280px) {
    .header__container {
        gap: 15px;
    }
}

@media only screen and (max-width: 1200px) {
    .categories {
        margin: 0;
    }
}

@media only screen and (max-width: 1170px) {
    .header__logo-text {
        font-size: 17px;
    }
}

@media only screen and (max-width: 992px) {
    :root {
        --container-width: 576px;
    }

    .hero-search-form__btn {
        width: 100%;
    }

    select,
    textarea,
    input {
        font-size: var(--body-font-size);
    }

    .header__search-form {
        display: none;
    }

    .header__nav {
        display: none;
    }

    .header .add-btn {
        display: none;
    }

    .header__mobile {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end;
        gap: 15px;
    }

    .header__mobile-btn {
        background: none;
        border: none;
        font-size: 20px;
        font-weight: 600;
    }

    .header {
        background: #fff !important;
        height: 65px;
    }

    .header__logo-text {
        color: var(--black) !important;
    }

    body {
        padding-top: 65px;
    }

    .header__mobile-btn i {
        pointer-events: none;
    }

    .header-menu {
        top: 65px;
        max-height: calc(100vh - 65px);
    }

    .header-menu__inner {
        margin: 10px 0;
    }

    .cities-grid {
        -ms-grid-columns: (1fr)[1];
        grid-template-columns: repeat(1, 1fr);
    }

    .city-item__photo {
        height: 70px;
        object-fit: cover;
    }

    .city-item {
        -ms-grid-columns: 70px 15px 1fr;
        grid-template-columns: 70px 1fr;
        grid-gap: 15px;
    }

    .icon-box {
        padding: 20px 0;
        height: 130px;
    }

    .mobile-menu {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        background: #f3f3f3;
        position: fixed;
        top: 65px;
        left: -95%;
        width: 95%;
        height: calc(100% - 65px);
        z-index: 9001;
        padding: 10px 20px;
        pointer-events: none;
        opacity: 0;
        -webkit-transition: all .33s ease;
        -o-transition: all .33s ease;
        transition: all .33s ease;
    }

    .mobile-menu__nav {
        display: -ms-grid;
        display: grid;
        width: 100%;
    }

    .mobile-menu__nav-item {
        border: none;
        border-bottom: 1px solid #ebebeb;
        color: var(--black);
        padding: 15px 20px;
        margin: 0 -20px;
        text-align: left;
        background: none;
    }

    .mobile-menu .header__nav-item.js-modals[data-src="#modal-auth"] span {
        display: block;
    }

    .mobile-menu .header__nav-item {
        color: var(--black) !important;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        gap: 10px;
    }

    .mobile-menu .btn.add-btn {
        width: 100%;
        margin-top: 15px;
    }

    .mobile-menu .btn.add-btn .add-btn__text {
        display: inline;
    }

    .mobile-menu.js-gl-toggle-target-active {
        left: 0;
        width: 95%;
        opacity: 1;
        pointer-events: auto;
    }

    html.--m-menu-open body {
        overflow: hidden;
    }

    .header__container {
        padding: 0 15px;
    }

    .modal-auth-form__body {
        padding: 25px;
    }

    .modal-auth-register {
        font-size: 14px;
    }

    .modal-auth-bottom {
        grid-gap: 15px;
    }

    .modal-auth-inner-tabs__nav-item {
        padding: 13px 27px;
    }

    h3, .h3 {
        font-size: 20px;
    }

    h4, .h4 {
        font-size: 16px;
    }

    .city-item__desc {
        font-size: 14px;
    }

    .hero-search-form {
        width: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        padding: 0;
        border-radius: 0;
        background: none;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        align-items: flex-start;
    }

    .why-chose {
        -ms-grid-columns: (1fr)[1];
        grid-template-columns: repeat(1, 1fr);
    }

    .news__grid {
        -ms-grid-columns: 1fr;
        grid-template-columns: repeat(1, 1fr);
        grid-gap: 20px;
    }

    .start-partners {
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }

    .start-partners__action {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }

    .start-partners__text {
        text-align: center;
        margin-bottom: 20px;
    }

    h2, .h2 {
        font-size: 21px;
    }

    .footer__main-grid {
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
    }

    .footer__bottom-grid {
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        grid-gap: 10px;
    }

    .footer__copyright {
        text-align: center;
    }

    .footer__social {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }

    .hero-search-form__divider {
        display: none;
    }

    .section-hero {
        height: 670px;
        margin-top: 0;
        padding-top: 30px;
    }

    .section-hero__content {
        padding-top: 164px;
    }

    .section-hero__title {
        text-align: center;
        font-size: 30px;
    }

    .section-hero__desc {
        font-size: 16px;
        text-align: center;
    }

    .main-form-select.main-form-select_style_hero + .select2 .select2-selection--single {
        background: #fff;
        padding-left: 20px;
        height: 60px;
    }

    .section-hero__search {
        width: 100%;
    }

    .hero-search-form__label {
        width: 100%;
        -webkit-box-flex: unset;
        -ms-flex: unset;
        flex: unset;
    }

    .main-form-select.main-form-select_style_hero + .select2 .select2-selection--single .select2-selection__rendered {
        line-height: 60px;
    }

    .select2-container.--hero-dropdown .select2-dropdown {
        border-radius: 8px;
        top: 10px;
    }

    .hero-search-form__label:last-of-type .main-form-select.main-form-select_style_hero + .select2 .select2-selection--single {
        padding-right: 30px;
    }

    section {
        padding: 40px 0;
    }

    .section-heading {
        margin-bottom: 15px;
    }

    .property-city {
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
    }

    .property-city-carousel {
        height: 205px;
    }

    .city-card__label {
        font-size: 13px;
        padding: 3px 15px;
    }

    .city-card__title {
        font-size: 16px;
    }

    .why-chose-item__icon {
        width: 90px;
        height: 90px;
    }

    .why-chose-item__title {
        margin: 25px 0 10px;
    }

    .reviews-carousel__slide.swiper-slide-active .review-card {
        opacity: 1 !important;
        background-color: #fafafa;
    }

    .review-card {
        padding: 45px 30px 30px 30px;
    }

    .section-hero-banner {
        padding: 50px 0;
    }

    .hero-banner__title {
        font-size: 31px;
        line-height: normal;
    }

    .section-hero__bottom {
        bottom: 75px;
    }

    .section-hero__background {
        background-position: 20% center;
    }

    .new-listing-block__grid {
        -ms-grid-columns: 1fr;
        grid-template-columns: repeat(1, 1fr);
        grid-gap: 15px;
    }

    .new-listing-form-iframe {
        height: 358px;
    }

    .new-listing-block__title {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end;
        gap: 5px;
    }

    .new-listing-block__title-links {
        float: unset;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }

    .new-listing-block__title-links a {
        font-size: 14px;
    }

    .page-grid.page_right_sidebar {
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
    }

    .news__grid.news__grid_2x {
        -ms-grid-columns: 1fr;
        grid-template-columns: repeat(1, 1fr);
    }

    .pagination__item {
        width: fit-content;
        height: 22px;
    }

    .catalog__body {
        -ms-grid-columns: (1fr)[1];
        grid-template-columns: repeat(1, 1fr);
    }

    .catalog__header {
        -ms-grid-columns: 1fr;
        grid-template-columns: repeat(1, 1fr);
        grid-gap: 10px;
    }

    .catalog__header-col:last-child {
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }

    .catalog-dropdown__content {
        -webkit-transform: translate(-50%, 0);
        -ms-transform: translate(-50%, 0);
        transform: translate(-50%, 0);
        width: 247px;
        -ms-grid-columns: 1fr;
        grid-template-columns: repeat(1, 1fr);
        grid-gap: 14px;
    }

    html.--catalog-dropdown-open body {
    }

    .page-header .hero-search-form {
        gap: 15px;
    }

    .page-header__breadcrumbs-item {
        font-size: 14px;
    }

    .section-page-header.section-bg-image {
        padding: 25px 0;
    }

    .single-head {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        gap: 15px;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }

    .futures {
        -ms-grid-columns: (1fr)[2];
        grid-template-columns: repeat(2, 1fr);
    }

    .sm-cards {
        -ms-grid-columns: (1fr)[1];
        grid-template-columns: repeat(1, 1fr);
    }

    .pg-grid {
        -ms-grid-columns: (1fr)[1];
        grid-template-columns: repeat(1, 1fr);
    }

    .section-page-header.section-page-header_small {
        padding: 25px 0;
    }

    .single-head__content {
        -webkit-box-flex: unset;
        -ms-flex: unset;
        flex: unset;
        width: 68%;
    }

    .single-head__image {
        width: 90px;
    }

    .single-head__buttons {
        width: 100%;
        -ms-flex-pack: distribute;
        justify-content: space-around;
    }

    .accordion__title {
        gap: 15px;
    }

    .single-video-iframe {
        height: 225px;
    }

    .comment__photo {
        width: 40px;
        height: 40px;
    }

    .comment__content-info {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        gap: 9px;
    }

    .comment__content-body {
        grid-gap: 15px;
    }

    .comment__content-gallery {
        -ms-grid-columns: (1fr)[2];
        grid-template-columns: repeat(2, 1fr);
    }

    .gallery-image {
        height: 100px;
    }

    .comments-form__rating {
        -ms-grid-columns: 1fr;
        grid-template-columns: repeat(1, 1fr);
        grid-gap: 10px 0;
    }

    .comments-form {
        padding: 30px;
        grid-gap: 15px;
    }

    html.--m-menu-open body:before {
        content: "";
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgb(0 0 0 / 35%);
        z-index: 8000;
    }
}

@media print {
    * {
        background: none !important;
        color: #000 !important;
        -webkit-box-shadow: none !important;
        box-shadow: none !important;
        text-shadow: none !important;
        -webkit-filter: grayscale(1) !important;
        filter: grayscale(1) !important;
    }
    a {
        text-decoration: underline;
    }
    a[href]:after {
        content: " (" attr(href) ")";
    }
    a[href="#"],
    a[href="javascript:"] {
        content: "";
    }
}