@media(max-width:1199px){
    .header-btns {
        width: auto;
    }
    .header-btns a {
        width: 1.8em;
        height: 1.8em;
        display: flex;
        align-items: center;
        justify-content: center;
        margin-left: 1.5em;
    }
    .header-btns > button svg,
    .header-btns a svg {
        width: 100%;
        height: 100%;
    }

    .header-btns > button {
        width: 1.8em;
        height: 1.8em;
        display: flex !important;
        align-items: center;
        justify-content: center;
        margin-left: 1.5em;
        border: none;
        padding: 0;
        background: transparent;
    }

    a#wishlist-header-link {
        margin-left: 1.85em;
    }

    div#user-messages {
        padding-left: 0;
    }
    div#user-messages button.user-messages-icon-wrapper {
        width: 1.8em;
        height: 1.8em;
    }
    div#user-messages button.user-messages-icon-wrapper svg {
        width: 100%;
        height: 100%;
    }

    /**/
    button#header-menu-triger {
        align-items: center;
        justify-content: space-between;
        position: relative;
        flex-wrap: wrap;
        outline: none;
    }
    button#header-menu-triger span {
        background: #000;
        width: 100%;
        display: block;
        height: 1.5px;
    }
    .menu-opened button#header-menu-triger > span:first-child {
        position: absolute;
        /* top: 0; */
        transform: rotate(45deg);
    }
    .menu-opened button#header-menu-triger > span:nth-child(2) {
        opacity: 0;
    }
    .menu-opened button#header-menu-triger > span:last-child {
        position: absolute;
        /* top: 0; */
        transform: rotate(-45deg);
    }


    nav#header-nav {
        position: absolute;
        top: 100%;
        left: 0;
        width: 100%;
        height: calc(100dvh - 5em);
        overflow: auto;
        background: #f4f4f4;
        opacity: 0;
        visibility: hidden;
        z-index: -1;
        pointer-events: none;
    }
    .menu-opened nav#header-nav {
        opacity: 1;
        visibility: visible;
        pointer-events: all;
        z-index: 999;
    }

    nav#header-nav ul{
        display: block;
    }
    nav#header-nav > ul > li {
        margin: 1.1em;
    }
    
    
    

    aside#header-aside {
        display: none;
    }

    /**/
    body.user-messages-menu-opened .user_messages_inbox {
        display: block;
        max-height: calc(100dvh - 12em);
        top: 8em;
        left: 15px;
        position: fixed;
        width: calc(100% - 30px);
    }

    .estate-building_apartments {
        overflow: auto;
    }
    table#building_apartments-table {
        white-space: nowrap;
    }
    
    
    .archive-estates.wishlist .listing-add-to-wishlist-wrapper {
        opacity: 1;
        visibility: visible;
        z-index: 9;
    }


    /* addding offer */
    .add-offer div#form-item-offer_type > .flex {
        flex-wrap: wrap;
    }
    .add-offer div#form-item-offer_type .flex.flexed-labels {
        width: 100%;
        min-width: 100%;
        flex: 0 0 100%;
        margin-top: 0.5em;
        flex-wrap: wrap;
    }
    .add-offer div#form-item-offer_type .flex.flexed-labels > label {
        width: 100%;
        min-width: 100%;
        margin-bottom: 0.75em;
    }
    
    .add-offer .image-item {
        width: 33.33%;
        height: 7em;
        position: relative;
    }
}
@media(max-width:768px){
    div#flags {
        margin-left: 1.5em !Important;
    }
    li.nav-wishlist {
        display: block !important;
    }
    .header-btns a#wishlist-header-link {
        display: none !important;
    }

    .google-lang-wapper {
        right: -3em !important;
        filter: drop-shadow(0px 5px 3px #ccc);
        top: 4.5em;
        padding-top: 0 !important;
    }

    /* welcome */
    .welcome-wrapper {
        padding-top: 100%;
    }
    .welcome-container-wrapper h1 {
        font-size: 1.6em;
        font-weight: 700;
        line-height: 1.4;
    }


    /**/
    .more-filters-opened #header-aside .container {
        width: calc(100dvw - 30px);
        max-width: calc(100dvw - 30px);
        padding: 0;
    }

    .more-filters-opened #header-aside .header-search-form-item {
        margin-right: 0em;
        width: 100%;
        min-width: 100%;
        flex: 0 0 100%;
        margin-bottom: 2em;
        order: 999;
    }

    #header-search-form-item-page-search_rooms, 
    #header-search-form-item-page-search_n_bedrooms, 
    #header-search-form-item-page-search_n_bathrooms {
        width: 100% !important;
        min-width: 100% !important;
        flex: 100% !important;
        margin-top: 1em;
        margin-bottom: 1em !important;
    }
    div#header-search-form-item-page-search_n_bathrooms {
        margin-bottom: 3em !important;
    }

    div#header-search-form-item-others .select-like-option, 
    div#header-search-form-item-degree_of_completion .select-like-option, 
    div#header-search-form-item-building_material .select-like-option {
        width: 100%;
        max-width: 100%;
        min-width: 100%;
    }
    /**/
    .col-12.col-estate-page-title h1 {
        font-size: 1.8em;
    }
    section#estates-page-header ol.breadcrumb {
        white-space: nowrap;
        overflow: auto;
    }

    .estate-grid-card-image-wrapper .image-dots,
    .estate-grid-card-image-wrapper button.estate-grid-card-prev-image,
    .estate-grid-card-image-wrapper button.estate-grid-card-next-image{
        display: none;
    }
    .bottom-footer {
        font-size: 90%;
    }

    .service-grid-card-wrapper {
        display: table;
        margin: 0 auto;
        padding: 0.51em 0.25em;
        background: #fff;
    }
    /**/

    .section-margin-bottom {
        margin-bottom: 5em;
    }
    .col-section-header h2 {
        font-size: 1.8em;
    }

    .row.row-bigger-margin {
        margin-right: -1.1em;
        margin-left: -1.1em;
    }
    .col-section-header {
        margin-bottom: 2.5em;
        padding: 0 1.1em;
    }

    /* listing estate */
    main {
        overflow: hidden;
    }
    .estate-grid-card-wrapper {
        padding: 0 0em;
    }
    .estate-grid-card-content .row .col-12.col-md-6 {
        width: 50%;
        max-width: 50%;
        flex: 0 0 50%;
        margin-bottom: 1em;
    }

    /* Services */
    .service-grid-card-col {
        margin-bottom: 2em;
        width: 50%;
        max-width: 50%;
        flex: 0 0 50%;
    }
    .service-grid-card-image-wrapper {
        max-width: 7em;
    }
    .service-grid-card-desc {
        font-size: 1em;
    }
    .service-grid-card-content h3 {
        font-size: 1.35em;
    }

    /* newsletter */
    .newsletters-wrapper .col-section-content {
        padding-right: 1.1em;
    }
    .newsletters-wrapper h2 {
        font-size: 1.8em;
        padding-right: 0;
    }
    .newsletters-wrapper .newsletters-description {
        font-size: 1.2em;
        margin-top: 1.3em;
        margin-bottom: 0.75em;
    }
    .newsletters-wrapper .form-footer {
        flex-wrap: wrap;
    }
    .newsletters-wrapper button.button.button-primary {
        width: 100%;
        margin-top: 1em;
    }


    #services-links .row.row-big-margin {
        margin-left: -1.1em;
        margin-right: -1.1em;
    }

    /* Single estate */
    .col-12.col-breadcrumbs nav {
        padding-left: 0;
    }

    div#estate-gallery {
        width: 100%;
        min-width: 100%;
        flex: 0 0 100%;
        margin-bottom: 2em;
    }

    .col-12.col-lg-6.col-estate-info {
        width: 100%;
        min-width: 100%;
        flex: 0 0 100%;
        padding-left: 1.1em;
    }
    .estate-data-infos-group .estate-data-info {
        width: 50%;
        min-width: 50%;
        flex: 0 0 50%;
    }
    
    .estate-contacts {
        margin-top: 1em;
    }

    .single-estate-page  .row.row-big-margin {
        /* margin-left: -2.2em; */
        /* margin-right: -2.2em; */
        margin-right: -1.1em;
        margin-left: -1.1em;
    }


    .loan-field label {
        flex-wrap: wrap;
    }
    .loan-field label > div:first-child {
        max-width: 100%;
    }
    .loan-field label > div:last-child {
        min-width: 100%;
        width: 100%;
        margin-top: 0.325em;
    }
    
    .estate-contacts .col-contacts-data {
        display: flex;
        gap: 1em !important;
        flex-wrap: wrap;
    }
    .estate-contacts .col-contacts-data > .contact-info {
        width: 100%;
        min-width: 100%;
        flex: 0 0 100%;
    }
    
    /* Listng pages */
    .col-12.col-estate-page-search {
        margin: 0;
    }
    form.estate-page-search-form {
        display: none;
    }

    
    /* adding offer */
    .add-offer div#form-item-price {
        margin-bottom: 1em !important;
    }
    .add-offer div#form-item-building_year {
        margin-top: 1em;
        margin-bottom: 1em !important;
    }
    .add-offer div#form-item-condition .page-search-range > div {
        width: 100% !important;
    }
    
    .add-offer div#form-item-n_bedrooms {
        margin-top: 1em;
        margin-bottom: 1em !important;
    }
    
    .add-offer div#form-item-n_rooms .page-search-range > div,
    .add-offer div#form-item-n_bedrooms .page-search-range > div,
    .add-offer div#form-item-n_bathrooms .page-search-range > div{
        width: 100%;
    }
    
    .add-offer div#form-item-foor {
        margin-bottom: 1em !important;
    }
    .add-offer div#form-item-heating_type {
        margin-bottom: 1em !important;
    }


    /*Footer*/
    .main-footer .col-sections-footer {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
    }
    .main-footer .col-sections-footer > div {
        width: 100%;
        min-width: 100%;
        margin-bottom: 2em;
    }


    .main-footer .col-sections-footer > div.footer-menu.footer-menu-about {
        width: 10em;
        max-width: 10em;
        min-width: 10em;
    }
    .main-footer .col-sections-footer > div.footer-menu.footer-menu-estates {
        width: calc(100% - 11em);
        min-width: calc(100% - 11em);
    }


    .footer-socia-links {
        display: flex;
        align-items: center;
        justify-content: center;
        margin-bottom: 0 !important;
    }

    .social-links {
        display: flex;
        align-items: center;
        justify-content: center;
    }
}

@media(min-width:768px) and (max-width:991px){
    .welcome-wrapper {
        padding-top: 40%;
    }
    .welcome-container-wrapper h1 {
        font-size: 1.5em;
    }

    /* newsletters */
    .newsletters-wrapper .col-section-content {
        padding-right: 1.1em;
    }
    .newsletters-wrapper h2 {
        font-size: 1.8em;
        padding-right: 0;
    }

    /* Listing */
    .more-filters-opened #header-aside form#header-search-form {
        max-width: 400px;
        margin: 0 auto;
    }

    .col-12.col-breadcrumbs nav {
        padding-left: 0;
        margin-bottom: 0.5em;
    }
    .col-12.col-estate-page-search {
        display: none;
    }

    .icon.icon-price-wrapper span.icon-text.icon-text-label {
        font-size: 0.91em;
    }

    .estate-grid-card-wrapper .estate-grid-card-content h2, 
    .estate-grid-card-wrapper .estate-grid-card-content h3 {
        font-size: 1.1em;
        font-weight: 700;
    }
    span.icon-text.icon-text-price {
        display: block;
        color: #E7293D;
        font-size: 1.2em;
        font-weight: 700;
        width: 100%;
        line-height: 1;
        margin-top: 0.5em;
    }

    /* single */
    div#estate-gallery {
        width: 100%;
        min-width: 100%;
        flex: 0 0 100%;
    }
    .col-12.col-lg-6.col-estate-info {
        max-width: 100%;
        width: 100%;
        flex: 0 0 100%;
        padding-left: 1.1em;
        margin-top: 2em;
    }

    .estate-data-infos > .estate-data-info {
        width: 33.333%;
        min-width: 33.333%;
        flex: 0 0 33.333%;
    }
    .estate-data-infos-group .estate-data-info {
        width: 33.333%;
        min-width: 33.333%;
        flex: 0 0 33.333%;
    }

    /*pages*/
    .pages-page .col-12.col-md-8.col-lg-8.col-content {
        width: 100%;
        min-width: 100%;
        margin-bottom: 3em;
    }
    .pages-page .col-12.col-md-4.col-lg-4.col-sidebar {
        width: 100%;
        min-width: 100%;
    }
    .pages-page .estate-contacts {
        margin-top: 0em;
    }

    /*contacts*/
    .contacts-page .col-12.col-md-6.col-lg-5.col-contacts-data {
        width: 40%;
        min-width: 40%;
        margin-bottom: 0 !important;
    }
    .contacts-page .estate-contacts {
        margin-top: 0em;
    }
    .contacts-page .col-12.col-md-6.col-lg-7.col-sidebar {
        width: 60%;
    }

    /* footer */
    .main-footer .col-sections-footer {
        flex-wrap: wrap;
    }
    .footer-logo {
        width: 40% !important;
        min-width: 40% !important;
        order: 1 !important;
        margin-bottom: 2em !important;
    }
    .footer-menu.footer-menu-about {
        order: 3;
    }
    .footer-menu.footer-menu-estates {
        order: 4;
    }
    .footer-menu.footer-menu-users {
        order: 5;
    }
    .footer-socia-links {
        order: 2;
        width: 60% !important;
        margin-bottom: 2em !important;
        min-width: 60% !important;
    }


    .footer-description {
        display: none;
    }

    .footer-menu {
        width: 33.333% !important;
        min-width: 33.333% !important;
        margin-bottom: 0 !important;
    }

}

@media(min-width:992px) and (max-width:1199px){
    nav#header-nav > ul > li > a {
        color: #000;
        text-decoration: none;
        font-size: 0.9em;
        text-transform: uppercase;
        display: inline-block;
        text-align: center;
        padding-top: 0.5em;
    }

    .welcome-container-wrapper h1 {
        font-size: 1.85em;
    }

    main {
        overflow: hidden;
    }

    .estate-grid-card-col {
        margin-bottom: 3.5em;
        width: 50%;
        min-width: 50%;
        flex: 0 0 50%;
    }

    .estate-data-infos-group .estate-data-info {
        width: 50%;
        min-width: 50%;
        flex: 0 0 50%;
        margin-bottom: 0.7em;
    }

    /* newsletter */
    .newsletters-wrapper h2 {
        font-weight: 700;
        color: #E7293D;
        font-size: 1.85em;
        padding-right: 0;
    }
    .newsletters-wrapper button.button.button-primary {
        padding: 0;
        margin: 0;
        border: 3px solid #E7293D;
        color: #E7293D;
        font-weight: 700;
        font-size: 1em;
        padding: 0.5em 1em;
        border-radius: 26px;
        white-space: nowrap;
    }

    .estate-page-search-form-item.page-search_area-wrapper {
        display: none;
    }
}