body {
    font-size: 0.9rem !important;
    font-family: 'Lora', sans-serif !important;
}

.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: 600 !important;
    line-height: 1.1 !important;
}

.h2,
h2 {
    font-size: 35px !important;
}

.logo_bn img {
    width: 100%;
}

.vc_separator.vc_sep_border_width_2 .vc_sep_holder .vc_sep_line {
    border-top-width: 3px !important;
}

.vc_sep_width_30 {
    width: 40px !important;
}

.page-opening-slider-widget .page-opening-slider-widget-text hr,
.page-opening-widget .page-opening-widget-text hr {
    width: 70px !important;
    margin-bottom: 2rem !important;
}

.page-opening-slider-widget-text h1 {
    line-height: 1.2 !important;
}

.page-opening-slider-widget-text h3 {
    margin-bottom: 1.2rem;
}

.text-widget {
    padding: 60px 30px !important;
}

.footer-wrap {
    position: relative;
}


/* Menu */

#navbar1 li {
    font-size: 16px !important;
    text-transform: uppercase !important;
}

.navbar-nav {
    font-size: 14px !important;
    font-weight: 600 !important;
    text-transform: capitalize !important;
}

.navbar-dark .navbar-nav .nav-link {
    color: hsla(0, 0%, 100%, 1) !important;
    -webkit-transition: all 300ms ease-in-out;
    -moz-transition: all 300ms ease-in-out;
    -ms-transition: all 300ms ease-in-out;
    -o-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
}

.navbar-dark .navbar-nav .nav-link:hover,
.navbar-dark .navbar-nav .nav-link:active,
.navbar-dark .navbar-nav .nav-link:focus {
    color: hsla(0, 0%, 100%, 0.6) !important;
    -webkit-transition: all 300ms ease-in-out;
    -moz-transition: all 300ms ease-in-out;
    -ms-transition: all 300ms ease-in-out;
    -o-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
}

.navbar-brand img {
    padding-left: 15px !important;
    width: 180px !important;
}

.navbar-toggler {
    border: 0px !important;
}

.sticky-top {
    z-index: 999 !important;
}


/* fine menu */

.carousel-control-next-icon,
.carousel-control-prev-icon {
    width: 40px !important;
    height: 30px !important;
}

.carousel-indicators {
    bottom: 50px !important;
}

.carousel-indicators li {
    border-radius: 50%;
    border: 1px solid #fff;
    width: 16px !Important;
    height: 16px !important;
    background-color: transparent !important;
}

.carousel-indicators .active {
    background-color: #fff !important;
}

@media (max-width: 991.98px) {
    .page-opening-slider-widget .page-opening-slider-widget-text {
        padding-right: 30px !important;
        padding-left: 30px !important;
    }
}


/* Griglia lavori homepage */

.works-widget .works-widget-work {
    margin-bottom: 5px !important;
}

.works-widget .works-widget-work .works-widget-work-text {
    padding: 30px 50px !important;
}

.works-widget-work-heading h3 {
    font-weight: 500 !important;
    font-size: 20px !important;
}

.works-widget-work-heading h4,
.posts-list-post-text h3 {
    font-size: 15px !important;
    text-transform: uppercase !important;
    font-weight: 500 !important;
}


/* fine griglia lavori homepage */


/* Filtri lavori */

.category-name .category-name-header {
    padding: 50px 30px !important;
}

.works-list-wrapper .works-list-work .works-list-work-text .works-list-work-text-heading span {
    font-size: 20px !important;
    color: #053568 !important;
    font-weight: 600 !important;
    font-family: 'Oswald', sans-serif !important;
    text-transform: uppercase !important;
}

.works-list-work-text-heading h4 {
    font-size: 15px !important;
    text-transform: uppercase !important;
    font-weight: 500 !important;
}

.works-list-work-text {
    padding: 25px 15px !important;
}

.works-list-work-text-heading,
.works-list-work-text-body {
    padding: 0 10px !important;
}


/* fine filtri lavori */


/* Singolo lavoro layout */

.taxonomy-categorie-data * .category-name {
    margin-top: 0px !important
}

.works-widget-work-block h3 {
    font-size: 30px !important;
}

.works-widget-work-block span {
    font-size: 18px !important;
}

.addressbox-wrapper {
    padding-right: 30px !important;
    z-index: 99 !important;
    max-width: 400px !important;
}

.works-navigation-archive img {
    width: 25px !important;
    height: 25px !important;
}

.works-navigation .works-navigation-next a,
.works-navigation .works-navigation-prev a {
    font-size: 16px !important;
}

@media (max-width: 991.98px) {
    .addressbox-wrapper {
        margin-top: 0 !important;
    }
    .page-opening-widget .page-opening-widget-text {
        padding-bottom: 50px;
        padding-top: 50px;
        width: 100%;
        padding-left: 30px;
        padding-right: 30px;
    }
}


/* fine singolo lavoro layout */

.posts-list-wrapper .posts-list-post .posts-list-post-image img {
    min-height: 325px !important;
}

.single-lavori * .works-news-header {
    padding: 0 10px;
}

.single-lavori * .works-news-wrapper {
    margin-top: 60px;
}

.single-lavori * .posts-list-post-image {
    display: none;
}


/* Pulsanti */

.btn-outline-light {
    border: 3px solid #ffffff !important;
}

.button_custom,
.nf-field-element input[type=button] {
    font-family: 'Open Sans', sans-serif !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    background-color: #053568 !important;
    color: #ffffff !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    padding: 7px 30px !important;
    min-width: 150px !important;
    -webkit-transition: all 300ms ease-in-out;
    -moz-transition: all 300ms ease-in-out;
    -ms-transition: all 300ms ease-in-out;
    -o-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
    display: inline-block;
    text-align: center;
}

.button_custom:hover,
.nf-field-element input[type=button]:hover {
    background-color: #1C3148 !important;
    color: #ffffff !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    padding: 7px 30px !important;
    min-width: 150px !important;
    -webkit-transition: all 300ms ease-in-out;
    -moz-transition: all 300ms ease-in-out;
    -ms-transition: all 300ms ease-in-out;
    -o-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
}

.works-widget-work-button a,
.text-widget-body-box a,
.infoboxes-widget-infobox a,
.works-list-work-text-body a,
.posts-list-post-text a {
    background-color: #053568 !important;
    color: #ffffff !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    padding: 7px 30px !important;
    min-width: 150px !important;
    -webkit-transition: all 300ms ease-in-out;
    -moz-transition: all 300ms ease-in-out;
    -ms-transition: all 300ms ease-in-out;
    -o-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
}

.works-widget-work-button a:hover,
.text-widget-body-box a:hover,
.infoboxes-widget-infobox a:hover,
.works-list-work-text-body a:hover,
.posts-list-post-text a:hover {
    background-color: #1C3148 !important;
    -webkit-transition: all 300ms ease-in-out;
    -moz-transition: all 300ms ease-in-out;
    -ms-transition: all 300ms ease-in-out;
    -o-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
}

.alm-btn-wrap .alm-load-more-btn {
    background-color: transparent !important;
    background-image: url(https://immobiliareuropea.it/wp-content/themes/immobiliareuropea/dist/images/loadmore_icon.svg) !important;
    background-position: bottom !important;
    background-repeat: no-repeat !important;
    background-size: 25px auto !important;
    border-radius: 0 !important;
    margin: 20px 0 0px !important;
    font-family: 'Open Sans', sans-serif !important;
    font-weight: 700 !important;
    color: #053568 !important;
    height: 60px !important;
}

.carousel-control-next-icon {
    background-image: url('https://immobiliareuropea.it//wp-content/themes/immobiliareuropea/dist/images/destra_slide.svg') !important;
}

.carousel-control-prev-icon {
    background-image: url('https://immobiliareuropea.it//wp-content/themes/immobiliareuropea/dist/images/sinistra_slide.svg') !important;
}

.carousel-control-next,
.carousel-control-prev {
    opacity: 1 !important;
}

.posts-filter-form-wrapper {
    margin: 40px 0 !Important;
}

.posts-filter-form-input {
    padding: 5px !important;
}

.posts-filter-form-input input,
.posts-filter-form-input select {
    border: 1px solid #ddd !important;
    font-size: 16px !important;
    font-family: 'Open Sans', sans-serif !important;
}

.posts-filter-form-wrapper > .btn-primary {
    margin: 5px;
}

.btn-filter.collapsed,
.btn-filter {
    margin: 15px 5px 50px !important;
    border: 2px solid #053568 !important;
}

.btn-filter.collapsed,
.btn-filter {
    color: #ffffff !important;
    background-color: #053568 !important;
}

.btn-filter {
    background-color: #ffffff !important;
    color: #053568 !important;
    margin: 15px 5px 0px !important;
}


/* fine pulsanti */


/* News Layout */

.posts-list-wrapper .posts-list-post .posts-list-post-text {
    padding: 25px 10px !important;
}

.posts-list-wrapper .posts-list-post .posts-list-post-text span {
    color: #333333 !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 1.2 !important;
    margin-bottom: 20px !important;
}


/* fine news layout */


/* Pagine statiche */

.page-template-page-aboutus * .category-name,
.page-contact-us-data * .category-name,
.page-contact-data * .category-name {
    display: none !important;
}

.slide-wrapper:before,
.page-opening-widget:before {
    /*
    background-image: url('https://immobiliareuropea.it//wp-content/themes/immobiliareuropea/dist/images/path_slider.svg') !important;
    */
    background-color: transparent !important;
    background-size: cover !important;
    background-repeat: no-repeat !important;
    background-position: top !important;
}

.page-opening-slider-widget:before {
    /*
    background-image: url('https://immobiliareuropea.it//wp-content/themes/immobiliareuropea/dist/images/path_slider.svg') !important;
    */
    background-color: transparent !important;
    background-size: cover !important;
    background-repeat: no-repeat !important;
    background-position: bottom right !important;
}

.quote_container_custom {
    max-width: 1140px;
    margin-left: auto !important;
    margin-right: auto !important;
}

.quote_img img {
    width: 90px !important;
}

.quote_custom {
    font-family: 'Oswald', sans-serif;
    font-size: 40px;
    font-weight: 600;
    color: #053568 !important;
}

.partners-partner-modal-text a {
    color: #ffffff !important;
}

.partners-partner-modal-text a:hover {
    color: #ffffff !important;
    text-decoration: underline !important;
}

.contact_us_footer {}


/* Form di contatto */

.nf-before-form-content,
.nf-error-field-errors {
    display: none;
}

.nf-field-container {
    margin-bottom: 16px !important;
}

.nf-field-element input {
    padding: 5px 15px !important;
    background-color: #ffffff !important;
    border: 1px solid #000000 !important;
    font-family: 'Lora', sans-serif;
    font-weight: 600;
    font-size: 18px;
}

.nf-error-msg {
    color: #F85B5B !important;
    display: none;
}

.nf-field-element p {
    color: #ffffff !important;
}

.nf-field-element a {
    color: #f9f9f9 !important;
}

.nf-field-element a:after {
    color: #f9f9f9 !important;
    background-color: #f9f9f9 !important;
}

.nf-error .ninja-forms-field {
    border: 1px solid #e80000 !important;
}

.nf-field-element textarea {
    height: 165px !important;
    font-family: 'Lora', sans-serif;
    font-weight: 600;
    font-size: 14px;
    padding: 5px 15px;
    border: 1px solid #000000;
}

.list-radio-wrap .nf-field-element li input {
    margin-top: 0 !important;
}

.nf-field-element a {
    text-decoration: none !important;
    color: #053568 !important;
    -webkit-transition: all 300ms ease-in-out;
    -moz-transition: all 300ms ease-in-out;
    -ms-transition: all 300ms ease-in-out;
    -o-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
}

.nf-field-element a:hover {
    text-decoration: none !important;
    color: #1C3148 !important;
    -webkit-transition: all 300ms ease-in-out;
    -moz-transition: all 300ms ease-in-out;
    -ms-transition: all 300ms ease-in-out;
    -o-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
}


/* fine form di contatto */

@media (min-width: 1190px) {
    .page-opening-slider-widget:before {
        width: 70% !important;
    }
    .slide-wrapper:before,
    .page-opening-widget:before {
        width: 60% !important;
    }
}

@media (max-width: 1189px) and (min-width:1100px) {
    .page-opening-slider-widget:before,
    .slide-wrapper:before,
    .page-opening-widget:before {
        width: 65% !important;
    }
}

@media (max-width: 1099px) and (min-width:1020px) {
    .page-opening-slider-widget:before,
    .slide-wrapper:before,
    .page-opening-widget:before {
        width: 70% !important;
    }
}

@media (max-width: 1019px) and (min-width:950px) {
    .page-opening-slider-widget:before,
    .slide-wrapper:before,
    .page-opening-widget:before {
        width: 75% !important;
    }
}

@media (max-width: 949px) and (min-width:895px) {
    .page-opening-slider-widget:before,
    .slide-wrapper:before,
    .page-opening-widget:before {
        width: 80% !important;
    }
}

@media (max-width: 894px) and (min-width:840px) {
    .page-opening-slider-widget:before,
    .slide-wrapper:before,
    .page-opening-widget:before {
        width: 85% !important;
    }
}

@media (max-width: 839px) and (min-width:768px) {
    .page-opening-slider-widget:before,
    .slide-wrapper:before,
    .page-opening-widget:before {
        width: 95% !important;
    }
}


/* fine pagine statiche */


/* Popup */

.modal-dialog {
    margin: 0 !important;
}

.partners-wrapper {
    max-width: 1100px;
    margin: 0 auto;
}

.partners-partner-logo {
    background-color: #437298;
    text-align: center;
    height: 250px;
    display: inline-grid;
    vertical-align: middle;
    width: 100%;
    padding: 50px 0 !important;
}

.partners-wrapper .partners-partner .partners-partner-logo img {
    max-width: 150px;
}

.partners-partner-modal-logo img {
    width: 100px;
}

.partners-partner-name {
    text-align: center;
    margin: 2em 0;
}

.partners-partner-name h3 {
    color: #437298 !important;
    text-decoration: none !important;
    font-size: 24px;
    font-family: 'Oswald', sans-serif;
}

.modal-content {
    border: 0 !important;
}

.modal-header {
    height: 20vh;
    padding: 6vh !important;
}

.modal-body {
    height: 80vh;
}

.modal-header .close {
    font-size: 65px !important;
    margin: 0rem 0rem 0rem auto !important;
    padding: 2rem !important;
}

.partners-partner-modal-text {
    padding: 0 !important;
}

.partners-partner-modal-text p {
    margin-bottom: 0 !important;
    margin-top: 0 !important;
}

.partners-partner-modal-image img {
    position: absolute;
    top: -5%;
}


/* fine popup */


/* Responsive Breakpoints */

@media (min-width: 992px) {
    .partners-partner-modal-logo {
        padding: 0 20px 0 0 !important;
    }
    .modal-header,
    .modal-body {
        padding: 6vh !important;
    }
    .modal-header .close {
        font-size: 65px !important;
        margin: 0rem 0rem 0rem auto !important;
        padding: 0 !important;
    }
    .partners-partner-modal-image img {
        position: absolute;
        top: -5%;
    }
}

@media (max-width: 991.98px) {
    .page-opening-single {
        min-height: 300px;
    }
    .lavori-title {
        float: none;
    }
    .lavori-title-heading {
        margin-top: 165px;
        text-align: center;
    }
}

@media (max-width: 991px) {
    .navbar-collapse {
        text-align: center !important;
        width: 100% !important;
    }
    .addressbox-wrapper {
        width: 100% !important;
        max-width: 100% !important;
        padding-right: 0 !important;
    }
    .modal-header {
        padding: 6vh 0 !important;
    }
    .modal-header .close {
        font-size: 55px !important;
        margin: 0rem 2rem 0rem auto !important;
        padding: 0 !important;
    }
    .partners-partner-modal-logo {
        padding: 0 20px 0 10px !important;
    }
}

@media (max-width: 991px) and (min-width: 768px) {
    .h1,
    h1 {
        font-size: 45px !important;
    }
    .h3,
    h3 {
        font-size: 16px !important;
    }
    .quote_custom {
        font-size: 30px;
    }
    .posts-list-wrapper .posts-list-post {
        flex: 0 0 50% !important;
    }
    .navbar-brand img {
        width: 145px !important;
    }
    .partners-wrapper .partners-partner {
        flex: 0 0 50% !important;
    }
    .modal-header .close {
        padding: 1rem 2rem !important;
    }
}

@media (min-width: 768px) {
    .posts-list-wrapper .posts-list-post .posts-list-post-text {
        height: 200px;
        position: relative;
    }
    .posts-list-post-text a {
        position: absolute !important;
        bottom: 30px;
    }
    .single-lavori * .posts-list-wrapper .posts-list-post {
        flex: 0 0 50% !important;
    }
    .single-lavori * .posts-list-post-text a {
        position: relative !important;
        bottom: 0 !important;
    }
}

@media (max-width: 767px) {
    .menus-container {
        padding: 0 !important;
    }
    .navbar-toggler {
        font-size: 1.1rem !important;
    }
    .page-opening-slider-widget:before {
        background-position: center top !important;
    }
    .works-widget .works-widget-work .works-widget-work-text {
        padding: 20px !important;
    }
    .works-widget .works-widget-work .works-widget-work-text {
        flex: 1 1 100% !important;
    }
    .responsive_hidden {
        display: none;
    }
    .works-list-wrapper .works-list-work {
        flex: 0 0 100% !important;
    }
    .works-widget-work-text {
        position: relative;
    }
    .works-widget-work-block {
        padding: 40px 0 !important;
    }
    .works-list-work-image {
        display: inline-flex !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    .page-opening-widget:before,
    .slide-wrapper:before {
        width: 100% !important;
        background-image: none !important;
        background-color: transparent !important;
    }
    .addressbox-wrapper .addressbox-address {
        padding: 20px 30px;
    }
    .infoboxes-widget .infoboxes-widget-infobox {
        flex: 0 0 100% !important;
        text-align: left !important;
    }
    .posts-list-wrapper .posts-list-post {
        flex: 0 0 100% !important;
        padding-bottom: 50px !important;
    }
    .page-template-page-posts * .container {
        max-width: 100% !important;
    }
    .contact_us_top,
    .contact_us_footer p,
    .contact_us_footer * .wpb_single_image.vc_align_left {
        text-align: center !important;
    }
    .list-radio-wrap .nf-field-element li {
        max-width: 190px !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
    .carousel-indicators {
        display: none !important;
    }
}

@media (max-width: 767px) and (min-width: 668px) {
    .h1,
    h1 {
        font-size: 40px !important;
    }
    .h2,
    h2 {
        font-size: 28px !important;
    }
    .h3,
    h3 {
        font-size: 16px !important;
    }
    .quote_custom {
        font-size: 26px;
    }
    .navbar-brand img {
        width: 130px !important;
    }
}

@media (max-width: 667px) {
    .h3,
    h3 {
        font-size: 14px !important;
    }
    .navbar-brand img {
        width: 120px !important;
    }
    .works-navigation-archive {
        flex: 0 0 20% !important;
    }
    .works-navigation .works-navigation-next,
    .works-navigation .works-navigation-prev {
        flex: 0 0 40% !important;
    }
    .partners-partner-modal-image {
        display: none;
    }
    .partners-partner-modal-logo img {
        width: 75px !important;
    }
    .partners-partner-modal-title h2 {
        font-size: 20px !important;
    }
    .partners-partner-modal-text p {
        font-size: 13px !important;
    }
    .tab_record * h3 {
        font-size: 12px !important;
    }
    td {
        font-size: 12px !important;
    }
}

@media (max-width: 667px) and (min-width: 481px) {
    .h1,
    h1 {
        font-size: 35px !important;
    }
    .h2,
    h2 {
        font-size: 24px !important;
    }
    .quote_custom {
        font-size: 24px;
    }
}

@media (max-width: 480px) and (min-width: 376px) {
    .h1,
    h1 {
        font-size: 30px !important;
    }
    .h2,
    h2 {
        font-size: 22px !important;
    }
    .quote_custom {
        font-size: 22px;
    }
}

@media (max-width: 375px) {
    .h1,
    h1 {
        font-size: 26px !important;
    }
    .h2,
    h2 {
        font-size: 20px !important;
    }
    .quote_custom {
        font-size: 29px;
    }
}


/*

body {
    --color-text: #000;
    --color-bg: #fff;
    --color-link: #d35066;
    --color-link-hover: #000;
    --color-info: #333;
    --color-menu: #031de6;
    --color-menu-hover: #000;
    --grid-columns: 2;
    --details-bg-up: #fff;
    --details-bg-down: #437298;
    --color-product-title: #000;
    --color-product-subtitle: #a09897;
    --color-details-title: #000;
    --color-details-subtitle: #000;
    --color-descr: #000;
    --color-price: var(--color-link);
    --color-bg-addtocart: #000;
    --color-addtocart: #fff;
    --color-close: #000;
    --color-bg-magnifier: #000;
    --color-magnifier: #fff;
    --color-btn-hover: #c1b3b1;
}

.grid {
    margin: -5em auto 10em;
    position: relative;
    padding: 0;
    width: 100%;
    max-width: 1000px;
    display: grid;
}

.grid__item {
    padding: 0 1vw;
    margin: 0;
}

.grid__item:nth-child(odd) .product {}

.product {
    height: 100%;
    padding-top: 10em;
    position: relative;
    cursor: pointer;
}

.product__bg {
    height: 20em;
    background: var(--details-bg-down);
    position: relative;
}

.product__img {
    max-height: 10em;
    margin: 0 auto;
    display: block;
    position: absolute;
    top: 40%;
    left: 50%;
    pointer-events: none;
    transform: translate3d(-50%, 0, 0);
}

.product__title {
    position: relative;
    margin: 0.5em 0 0;
    font-size: 1.75em;
    color: var(--color-product-title);
    color: #053568;
}

.product__subtitle {
    position: relative;
    margin: 0;
    text-transform: uppercase;
    color: var(--color-product-subtitle);
    font-size: 0.85em;
    letter-spacing: 0.115em;
    display: none;
}

.product:hover .product__subtitle {
    color: var(--color-link);
}

.product__description,
.product__price {
    opacity: 0;
    position: absolute;
}

.details {
    position: fixed;
    width: 100%;
    height: 100%;
    bottom: 0;
    left: 0;
    padding: 40vh 0 10vh 10vw;
    z-index: 1000;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    pointer-events: none;
}

.details--open {
    pointer-events: auto;
}

.details > * {
    position: relative;
    opacity: 0;
}

.details__bg {
    width: 100%;
    position: fixed;
    left: 0;
}

.details__bg--up {
    top: 0;
    height: 100vh;
    background: var(--details-bg-up);
}

.details__bg--down {
    top: 40vh;
    height: 60vh;
    background: var(--details-bg-down);
}

.details__img {
    position: absolute;
    top: 10vh;
    right: 10vw;
    height: 80vh;
}

.details__bg,
.details__img {
    transform-origin: 0 0;
}

.details__title {
    margin: -1.5em 0 0.1em;
    font-size: 4.5em;
    color: #053568;
}

.details__subtitle {
    text-transform: uppercase;
    margin: 0.75em 0 1em 0;
    letter-spacing: 0;
    font-size: 1.6em;
    color: var(--color-details-subtitle);
}

.details__description {
    line-height: 1.5;
    font-weight: bold;
    max-width: 50%;
    margin: 2em 0 0 0;
    color: var(--color-details-desc);
}

.details__price {
    font-size: 3em;
    font-weight: bold;
    color: var(--color-price);
    display: none;
}

.details__addtocart {
    border: 0;
    margin: auto 0 0 0;
    background: var(--color-bg-addtocart);
    color: var(--color-addtocart);
    padding: 0.75em 2em;
    font-weight: bold;
    display: none;
}

.details__addtocart:hover {
    background: var(--color-btn-hover);
}

.details__close {
    position: absolute;
    top: 0;
    right: 0;
    border: 0;
    background: none;
    margin: 2em;
    cursor: pointer;
    font-size: 0.85em;
    color: var(--color-close);
}

.dummy-menu {
    border: 0;
    background: none;
    padding: 0;
    margin: 2.75em 2.5em 0 0;
    position: fixed;
    top: 0;
    right: 0;
    font-size: 0.85em;
    color: var(--color-close);
    cursor: pointer;
    z-index: 1000;
}

.details__magnifier {
    border: 0;
    background: none;
    background: var(--color-bg-magnifier);
    color: var(--color-magnifier);
    padding: 1em;
    border-radius: 50%;
    position: absolute;
    z-index: 1000;
    right: calc(21.5vh + 10vw);
    top: 75vh;
    cursor: pointer;
    display: none;
}

.details__magnifier:hover {
    background: var(--color-btn-hover);
}

.details__deco {
    width: 7em;
    height: 20px;
    background-position: 50% 97%;
    background-size: 150%;
    display: none;
}

.icon--cross {
    background-image: url('https://immobiliareuropea.it/wp-content/themes/immobiliareuropea/dist/images/partner/cancel.svg');
    background-repeat: no-repeat;
    background-size: 25px auto;
    background-position: center center;
}

@media (min-width: 768px) {
    .grid {
        grid-template-columns: 1fr 1fr 1fr;
    }
}

@media (max-width: 767px) and (min-width:668px) {
    .grid {
        grid-template-columns: 2fr 2fr;
        padding: 0 1vw !important;
    }
}

@media (max-width: 667px) {
    .grid {
        grid-template-columns: 1fr;
    }
}

@media screen and (max-width: 40em) {
    .grid {
        padding: 0 1vw;
    }
    .grid__item {
        padding: 0 2vw;
    }
    .product__bg {
        height: 10em;
    }
    .product__img {
        max-height: 19em;
    }
    .product__title {
        font-size: 1.25em;
    }
    .product__subtitle {
        font-size: 0.75em;
    }
    .details {
        padding: 30vh 0 5vh 10vw;
    }
    .details__bg--down {
        top: 30vh;
        height: 70vh;
    }
    .details__title {
        font-size: 2em;
    }
    .details__subtitle {
        font-size: 1em;
    }
    .details__price {
        font-size: 1.5em;
    }
    .details__description {
        max-width: 70%;
        font-size: 0.85em;
        margin: 1em 0 0 0;
    }
    .details__deco {
        height: 7px;
        width: 4em;
    }
    .details__img {
        right: -12vh;
    }
    .details__magnifier {
        right: 7vh;
    }
}

<div class="content">
    <div class="grid">
        <div class="grid__item">
            <div class="product">
                <div class="product__bg"></div>
                <img class="product__img" src="https://immobiliareuropea.it/wp-content/themes/immobiliareuropea/dist/images/partner/cantiericommerciali.svg" alt="Cantieri commerciali" />
                <h2 class="product__title">Marble Dream</h2>
                <h3 class="product__subtitle">Constantin Frecker</h3>
                <p class="product__description">Hashtag cred air plant drinking vinegar. Leggings yuccie chambray pop-up tousled hell of. Portland wolf mumblecore, synth cold-pressed polaroid poke cardigan gochujang farm-to-table photo booth.</p>
                <div class="product__price">$399</div>

            </div>
        </div>
        <div class="grid__item">
            <div class="product">
                <div class="product__bg"></div>
                <img class="product__img" src="https://immobiliareuropea.it/wp-content/themes/immobiliareuropea/dist/images/partner/rossettiengineering.svg" alt="img 02" />
                <h2 class="product__title">Space Fantasy</h2>
                <h3 class="product__subtitle">Danica Green</h3>
                <p class="product__description">Man bun banjo pop-up meh hammock. Skateboard hammock tousled retro, etsy taiyaki narwhal gentrify fixie food truck microdosing sustainable dreamcatcher.</p>
                <div class="product__price">$399</div>

            </div>
        </div>
        <div class="grid__item">
            <div class="product">
                <div class="product__bg"></div>
                <img class="product__img" src="https://immobiliareuropea.it/wp-content/themes/immobiliareuropea/dist/images/partner/abidoru.svg" alt="img 03" />
                <h2 class="product__title">Mighty Eighties</h2>
                <h3 class="product__subtitle">Elizabeth Smith</h3>
                <p class="product__description">Air plant affogato microdosing banjo, palo santo squid craft beer vexillologist chambray everyday carry cronut aesthetic intelligentsia. </p>
                <div class="product__price">$399</div>

            </div>
        </div>
        <div class="grid__item">
            <div class="product">
                <div class="product__bg"></div>
                <img class="product__img" src="https://immobiliareuropea.it/wp-content/themes/immobiliareuropea/dist/images/partner/marinadiolbia.svg" alt="img 04" />
                <h2 class="product__title">Diamond Crafter</h2>
                <h3 class="product__subtitle">Fred House</h3>
                <p class="product__description">Crucifix shoreditch tumblr heirloom irony tbh gastropub migas sartorial mustache direct trade plaid readymade ramps hammock.</p>
                <div class="product__price">$399</div>

            </div>
        </div>
        <div class="grid__item">
            <div class="product">
                <div class="product__bg"></div>
                <img class="product__img" src="https://immobiliareuropea.it/wp-content/themes/immobiliareuropea/dist/images/partner/moys.svg" alt="img 05" />
                <h2 class="product__title">Disco Fever</h2>
                <h3 class="product__subtitle">Alice Muller</h3>
                <p class="product__description">Single-origin coffee air plant kitsch paleo iPhone vegan cold-pressed slow-carb cornhole dreamcatcher palo santo salvia lo-fi. </p>
                <div class="product__price">$399</div>

            </div>
        </div>
        <div class="grid__item">
            <div class="product">
                <div class="product__bg"></div>
                <img class="product__img" src="https://immobiliareuropea.it/wp-content/themes/immobiliareuropea/dist/images/partner/santalucia.svg" alt="img 09" />
                <h2 class="product__title">The Buzz</h2>
                <h3 class="product__subtitle">Sarah Grand</h3>
                <p class="product__description">Celiac distillery man braid venmo, selfies you probably haven't heard of them tote bag forage fanny pack activated charcoal kale chips lo-fi before they sold out.</p>
                <div class="product__price">$399</div>
            </div>
        </div>
    </div>
</div>

*/