@charset "UTF-8";/*!* Bootstrap v5.0.0-beta3 (https://getbootstrap.com/)
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)*/

body {
    font-family: lato, sans-serif;
    color: #6d7278
}

.card {
    border-radius: 10px
}

.card.magazine-card {
    overflow: hidden
}

a {
    color: #205281;
    text-decoration: underline
}

.owl-item .item a {
    text-decoration: none !important
}

input:focus-visible {
    outline: 0 !important
}

.nooverflow {
    overflow: initial !important
}

.margin-auto {
    margin-left: auto !important;
    margin-right: auto !important
}

header {
    position: fixed;
    top: 0;
    width: 100%;
    background-color: #fff;
    z-index: 199999
}

.main-menu a {
    text-transform: uppercase;
    color: #000
}

.desk-hide {
    display: none !important
}

.desk-hide.display-block {
    display: none !important
}

.display-block {
    display: block !important
}

.hide {
    display: none !important
}

.main-menu a.active {
    color: #205281
}

.ml-3 {
    margin-left: 1rem !important
}

.mr-3 {
    margin-right: 1rem !important
}

.ml-5 {
    margin-left: 3rem !important
}

.mr-5 {
    margin-right: 3rem !important
}

.form-control:focus,
.form-select:focus {
    border-color: #205281;
    box-shadow: 0 0 0 .25rem rgba(0, 135, 75, .25)
}

.img-width100 {
    width: 100%
}

.img-width80 {
    width: 80%
}

.img-width70 {
    width: 70%
}

.img-width50 {
    width: 50%
}

.img-width30 {
    width: 30%
}

.form-group .error {
    color: #205281
}

.text-lg {
    font-size: x-large
}

.toggle-switchArea {
    margin: 10px 0
}

.badge-counter-container {
    position: relative;
    width: 22px;
    height: 22px
}

.badge-counter-container .fa-heart {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

.badge-counter-container {
    position: relative
}

.fixed-height .button-std-container {
    position: absolute;
    bottom: 15px;
    width: 50%;
    left: 50%;
    transform: translateX(-50%)
}

.fixed-height.h350 {
    height: 350px
}

.badge-counter-container .badge-counter {
    position: absolute;
    right: -16px;
    top: -10px;
    border-radius: 10px;
    padding: 5px;
    width: 20px;
    height: 20px;
    font-size: 11px
}

.badge-counter {
    background-color: #f2f2f2;
    color: #205281
}

.menu .fa-heart {
    font-size: 22px
}

.btn {
    border-radius: 10px
}

.btn-check:focus+.btn,
.btn:focus {
    box-shadow: none !important
}

.form-check-input:focus {
    border-color: #205281;
    box-shadow: none !important
}

.btn-block {
    width: 100% !important
}

.desc-closed {
    max-height: 120px;
    overflow: hidden
}

.sticky_box {
    position: sticky;
    top: 0
}

h1.result-bar,
.result-bar.h1 {
    font-size: 1rem;
    margin-left: 5px;
    margin-bottom: 0
}

.count-result {
    font-size: 1rem;
    display: block;
    margin-top: 0;
    line-height: 1.2
}

.fixed-top-sidebar {
    position: fixed;
    top: 300px;
    right: 0;
    z-index: 1
}
.green-btn-outline {
    text-transform: uppercase;
    padding: 10px 20px;
    background-color: #509392;
    border: 1px solid #fff;
    color: #fff
}

.green-btn-outline:hover {
    background-color: #fff;
    color: #205281 !important
}

.blue-btn {
    text-transform: uppercase;
    padding: 10px 20px;
    background-color: #215181;
    border: 1px solid #215181;
    color: #fff
}

.blue-btn-outline {
    text-transform: uppercase;
    padding: 10px 20px;
    background-color: #215181;
    border: 1px solid #fff;
    color: #fff
}

.blue-btn-outline:hover {
    background-color: #fff;
    color: #215181
}

.blue-btn.btn-reverse {
    background-color: #fff;
    color: #215181
}

.blue-btn.btn-reverse:hover {
    background-color: #215181;
    color: #fff
}

.rounded-btn {
    border-radius: 30px;
    width: 50px;
    height: 50px;
    padding: 5px !important;
    text-align: center;
    line-height: 50px;
    position: relative
}

.rounded-btn img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}
.no-bordered-btn {
    text-transform: uppercase;
    padding: 10px 20px;
    background-color: #fff;
    border: 1px solid transparent;
    color: #6d7278 !important
}
.green-row.map-count-bar {
    position: absolute;
    z-index: 10
}

.green-row.map-count-bar.no-items {
    display: none
}

.btn-xs {
    font-size: .7rem
}

.tab-row {
    display: flex
}

.tab-row .tab-row-label {
    background-color: #205281;
    color: #fff;
    padding: 15px;
    border-radius: 10px 10px 0 0
}

.tab-row .tab-row-label.blue-tab-label {
    background-color: #215181
}

.tab-row .tab-row-label:first-of-type {
    margin-left: 30px
}

.blue-btn:hover {
    background-color: #fff;
    color: #215181
}

.half-banner {
    display: flex;
    justify-content: space-between;
    border-radius: 10px;
    overflow: hidden
}

.half-banner div {
    width: 50%;
    height: 220px
}

.half-banner .half-banner-img-box {
    background-position: center !important;
    background-size: cover !important
}

.half-banner .half-banner-blue-box {
    background-color: #215181;
    color: #fff;
    text-align: center;
    padding: 66px 10px 10px
}

.half-banner .half-banner-blue-box a,
.half-banner .half-banner-blue-box .title {
    color: #fff
}

.half-banner .half-banner-blue-box a {
    display: inline-block;
    width: 100%;
    text-align: right;
    text-decoration: none
}

.half-banner-container {
    position: relative
}

.half-banner-container .mbb-center-image {
    top: -35px;
    left: 75%
}

.banner-container .mbb-center-image {
    left: 50%;
    top: -35px
}

.center-row-icon {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%, -50%)
}

.form-check-input:checked {
    background-color: #205281 !important;
    border-color: #205281 !important
}

.color-invert {
    filter: invert(100%)
}

.flex-box {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap
}

.flex-box.space-around {
    justify-content: space-around
}

.flex-box .flex-plugin-container {
    background-color: #fff;
    color: #565656;
    border: 1px solid #f2f2f2;
    padding: 20px;
    border-radius: 5px;
    flex: 50;
    margin: 20px
}

.review-star {
    color: gold
}

.google-review .review-text {
    max-height: 100px;
    overflow: hidden
}

.flex-box-left {
    display: flex;
    justify-content: left
}

.flex-box-right {
    display: flex;
    justify-content: right
}

.attribiti-container {
    padding: 5px
}

.flex6 {
    flex: 50%
}

.flex2 {
    flex: 20%
}

.flex3 {
    flex: 30%
}

.flex7 {
    flex: 70%
}

.flex8 {
    flex: 80%
}

.vodiapicker {
    display: none
}

.a_ul {
    padding-left: 0;
    position: absolute;
    background-color: #fff;
    border-radius: 10px;
    text-align: center;
    padding: 0 10px;
    width: 200px;
    left: -10px;
    z-index: 1000;
    color: #6d7278;
    box-shadow: 0 10px 15px -2px rgba(0, 0, 0, .57)
}

.btn-select li span {
    display: none
}

.a_ul img,
.btn-select img {
    width: 36px
}

.a_ul li {
    list-style: none;
    padding-top: 5px;
    padding-bottom: 5px;
    text-align: left;
    text-transform: capitalize
}

.a_ul li:hover {
    background-color: #f4f3f3
}

.a_ul li img {
    margin: 5px
}

.a_ul li span,
.btn-select li span {
    margin-left: 5px
}

[slider] {
    position: relative;
    height: 14px;
    border-radius: 10px;
    text-align: left;
    margin: 45px 0 10px
}

[slider]>div {
    position: absolute;
    left: 13px;
    right: 15px;
    height: 6px
}

[slider]>div>[inverse-left] {
    position: absolute;
    left: 0;
    height: 6px;
    border-radius: 10px;
    background-color: #ccc;
    margin: 0 7px
}

[slider]>div>[inverse-right] {
    position: absolute;
    right: 0;
    height: 6px;
    border-radius: 10px;
    background-color: #ccc;
    margin: 0 7px
}

[slider]>div>[range] {
    position: absolute;
    left: 0;
    height: 6px;
    border-radius: 14px;
    background-color: #205281
}

[slider]>div>[thumb] {
    position: absolute;
    top: -7px;
    z-index: 2;
    height: 20px;
    width: 20px;
    text-align: left;
    margin-left: -11px;
    cursor: pointer;
    box-shadow: 0 3px 8px rgba(0, 0, 0, .4);
    background-color: #fff;
    border-radius: 50%;
    outline: none
}

[slider]>input[type=range] {
    position: absolute;
    pointer-events: none;
    -webkit-appearance: none;
    z-index: 3;
    height: 6px;
    top: -2px;
    width: 100%;
    -ms-filter: "alpha(opacity=0)";
    filter: alpha(opacity=0);
    -moz-opacity: 0;
    -khtml-opacity: 0;
    opacity: 0
}

div[slider]>input[type=range]::-ms-track {
    -webkit-appearance: none;
    background: 0 0;
    color: transparent
}

div[slider]>input[type=range]::-moz-range-track {
    -moz-appearance: none;
    background: 0 0;
    color: transparent
}

div[slider]>input[type=range]:focus::-webkit-slider-runnable-track {
    background: 0 0;
    border: transparent
}

div[slider]>input[type=range]:focus {
    outline: none
}

div[slider]>input[type=range]::-ms-thumb {
    pointer-events: all;
    width: 20px;
    height: 20px;
    border-radius: 0;
    border: 0;
    background: red
}

div[slider]>input[type=range]::-moz-range-thumb {
    pointer-events: all;
    width: 20px;
    height: 20px;
    border-radius: 0;
    border: 0;
    background: red
}

div[slider]>input[type=range]::-webkit-slider-thumb {
    pointer-events: all;
    width: 20px;
    height: 20px;
    border-radius: 0;
    border: 0;
    background: red;
    -webkit-appearance: none
}

div[slider]>input[type=range]::-ms-fill-lower {
    background: 0 0;
    border: 0
}

div[slider]>input[type=range]::-ms-fill-upper {
    background: 0 0;
    border: 0
}

div[slider]>input[type=range]::-ms-tooltip {
    display: none
}

[slider]>div>[sign] {
    opacity: 0;
    position: absolute;
    margin-left: -11px;
    top: -39px;
    z-index: 3;
    color: #205281;
    width: 20px;
    height: 20px;
    border-radius: 28px;
    -webkit-border-radius: 28px;
    align-items: center;
    justify-content: center;
    text-align: center
}

[slider]>div>[sign]:after {
    position: absolute;
    content: "";
    left: 0;
    border-radius: 16px;
    top: 19px
}

[slider]>div>[sign]>span {
    font-size: 12px;
    font-weight: 700;
    line-height: 20px
}

[slider]:hover>div>[sign] {
    opacity: 1
}

.b {
    display: none;
    width: 100%;
    max-width: 350px;
    box-shadow: 0 6px 12px rgba(0, 0, 0, .175);
    border: 0 solid rgba(0, 0, 0, .15);
    border-radius: 5px
}

.open {
    display: show !important
}

.btn-select {
    width: 100%;
    max-width: 350px;
    height: 34px;
    border-radius: 5px;
    background-color: #fff;
    border: 0;
    padding-right: 50px
}

.btn-select li {
    list-style: none;
    float: left;
    padding-bottom: 0;
    width: 100%
}

.btn-select:hover li {
    margin-left: 0
}

.btn-select:focus {
    outline: none
}
.row.header-row {
    padding: 0
}

.row.row20 {
    padding-right: 20px;
    padding-left: 20px
}

.header {
    background-color: #fff;
    width: 100%;
    z-index: 3
}

    .header ul {
        margin: 0;
        padding: 0;
        list-style: none;
        overflow: hidden;
        background-color: #fff
    }

        .header li a {
            display: block;
            padding: 20px 18px;
            text-decoration: none;
            text-transform: uppercase;
            color: #000
        }

        .header li a.active {
            color: #205281;
            font-weight: 700
        }

        .header li a:hover,
        .header .menu-btn:hover {
            color: #205281
        }

.header .logo {
    display: inline-block;
    padding: 15px 0;
    text-decoration: none
}

.header .menu {
    clear: both;
    transition: max-width .2s ease-out
}

.header .menu .menu-overlay {
    opacity: 0;
    transition: opacity 1s ease-in-out
}

.header .menu-icon {
    cursor: pointer;
    display: inline-block;
    float: right;
    padding: 28px 15px;
    position: relative;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    margin-top: 10px;
}

.header .menu-icon .navicon {
    background: #205281;
    display: block;
    height: 2px;
    position: relative;
    transition: background .2s ease-out;
    width: 18px;
}

.header .menu-icon .navicon:before,
.header .menu-icon .navicon:after {
    background: #205281;
    content: "";
    display: block;
    height: 100%;
    position: absolute;
    transition: all .2s ease-out;
    width: 100%;
}

.header .menu-icon .navicon:before {
    top: 5px;
}

.header .menu-icon .navicon:after {
    top: -5px;
}

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

.header .menu-btn:checked~.menu {
    max-height: 100%;
}

.header .menu-btn:checked~.menu-icon .navicon {
    background: 0 0;
}

.header .menu-btn:checked~.menu-icon .navicon:before {
    transform: rotate(-45deg)
}

.header .menu-btn:checked~.menu-icon .navicon:after {
    transform: rotate(45deg)
}

.header .menu-btn:checked~.menu-icon:not(.steps) .navicon:before,
.header .menu-btn:checked~.menu-icon:not(.steps) .navicon:after {
    top: 0;
}

.copyright-container {
    z-index: 1000;
    position: relative;
    background-color: #fff;
    border: 1px solid #fff
}

.footer-row {
    background-color: #205281;
    color: #fff;
    padding: 20px 0;
    z-index: 1000;
    position: relative
    font-size: 1.9rem;
}

.footer-row .footer-menu-title {
	font-size: 1.5em;
}

.footer-row .footer-menu {
    list-style: none;
    padding-left: 0
}

    .footer-row .footer-menu li a {
        color: #fff;
        text-decoration: none;
        font-weight: 300
    }

        .footer-row .footer-menu li a:hover {
            font-weight: 300
        }

    .footer-row .social li{
        display: inline-block;
    }

.rowcolumns {
    -moz-column-count: 6;
    column-count: 6;
    -moz-column-gap: 20px;
    column-gap: 20px;
    padding: 10px;
    overflow: hidden
}

div.text-desc-container {
    margin-bottom: 1rem
}

.half-image {
    background-size: cover;
    padding: 2px;
    width: 60%;
    height: 500px;
    background-color: gray
}

.half-image.home-hr-banner {
    background-image: url(img/lavora.jpg);
    background-repeat: no-repeat;
    background-position: center;
    border-radius: 10px;
}

.claim-box.home-hr-box {border-radius: 0 10px 10px 0}

.mainimage-container {display: flex}

.precontent-container {margin-top: 80px}

.text-marketing{
    font-size:1.4rem; 
    font-weight: 300; 
    max-width: 920px; 
    margin:0 auto; 
    padding: 0 20px;
}

.tstm-container .text-marketing h2 {
    font-size:1.4rem; 
    font-weight: 300;
}

.main-image {
    background-size: cover;
    padding: 2px;
    width: 60%;
    height: 500px;
    background-color: gray
}

.main-image.home-main-image {background-image: url(img/home_tagi.jpg)}

.main-image.error404-main-image {background-image: url(/images/404_error.jpg)}

.claim-box {width: 50%;}

.claim-box.claim-box-mobile {display: none}

.blue-box {background-color: #215181}

.celeste-box {background-color: #0099cd}

.blue-box .title {color: #fff}

.blue-box a,
.celeste-box a {
    color: #fff;
    text-decoration: none
}

.searchbar.white-container {
    position: relative
}

.searchbar.white-container.v2 {
    position: relative;
    z-index: 100
}

.claim-box .claim-container {
    color: #fff
}
.claim-box .claim-container h1{
    text-transform: uppercase;
    font-size: 3.5rem;
    margin-top: 22%;
    margin-left: 50px;
    font-weight:300;
}

.claim-box .claim-container.claim-left h1 {
    width: 48%
}

.claim-box .claim-container.claim-center p {
    width: 100%;
    text-align: center;
    margin-left: auto
}

.title {
    text-align: center;
    text-transform: uppercase;
    color: #333;
    font-weight: 300;
    font-size: 2rem;
}

    .title span {
        font-weight: 600;
    }

.form-group label {
    padding: 20px 0 10px
}

.form-group .form-switch .form-check-input {
    margin-top: 23px
}

.bluetitle {color: #509392;}

.middle-bottom-banner-container {
    position: relative;
    margin-top: 30px;
    margin-bottom: 30px
}

.mbb-left-image {
    position: absolute;
    left: 0;
    bottom: 0
}

.center-icon {
    left: 50%;
    position: absolute;
    top: -30px;
    transform: translateX(-50%);
}

.banner-container {position: relative}

.mbb-center-image {
    top: -35px;
    position: absolute;
    left: 50%;
    transform: translateX(-50%)
}

.col-md-4 .middle-bottom-banner-container.medium-mbb-banner .mmb-title {font-size: 1.2rem}

.col-md-4 .mbb-left-image {width: 30%}

.main-image.magazine-slides-images {
    padding: 0;
    background-color: #215181
}

.tstm-container strong {
    font-weight:700;
}

.testimonials-row {
    background-color: #f2f2f2;
    border-top: 1px solid #dfdfdf;
    border-bottom: 1px solid #dfdfdf;
    padding: 50px 0 50px 0;
}

.testimonials-row .center-icon {
    left: 50%;
    position: absolute;
    top: -30px;
    transform: translateX(-50%)
}

.tstm-left-block {display: flex}

.tstm-left-block.layout1 {justify-content: right}

.tstm-left-container {
    position: relative;
    overflow: hidden
}

.tstm-left-image {
    position: absolute;
    bottom: 0;
    left: 0;
    float: left
}

.testimonials-carousel-container {
    background-color: #fff;
    padding: 20px;
    border: 1px solid rgba(0, 0, 0, .125);
    border-radius: 10px;
    width: 50%;
    margin: 0 auto;
}

.order-container {
    border-radius: 10px;
    height: 0;
    float: right;
    overflow: hidden
}

.order-container.open {
    height: auto;
    padding: 15px;
    width: 50%;
    margin-bottom: 10px;
    border: 1px solid rgba(0, 0, 0, .125)
}

.card agente-card {
    position: relative
}

.landing-box .banner-container .gray-form {
    margin-top: 50px
}

.tab-pane a.addtowishlist {
    color: #fff
}

.tab-pane a.addtowishlist i.fa-heart {
    font-size: 40px
}

a.circle-link {
    padding: 3px;
    border-radius: 20px;
    background-color: #fff;
    color: #205281 !important;
    display: inline-block !important;
    width: 30px;
    height: 30px;
    margin: 5px;
    text-align: center;
    border: 1px solid #fff
}

a.circle-link:hover {
    color: #fff !important;
    background-color: #205281;
    border: 1px solid #fff
}

.star-container {
    color: gold
}

@media(min-width:769px) {

    .header li {float: left}

    .header li a {padding: 30px 18px}

    .header .menu {clear: none; float: right; max-height: none}

    .header .menu-icon {display: none}
}

.celestetitle {color: #0099cd}

.hr-main-slide {
    width: 100%;
    height: 300px;
    background-image: url(/images/hr/header-hr2.jpg);
    background-position: center;
    background-size: cover;
    position: relative
}

.blue-link {
    color: #215181;
    text-decoration: none
}

.text-right {
    text-align: right !important
}

.text-center {
    text-align: center !important
}

.text-left {
    text-align: left !important
}

.text-thin {
    font-weight: 300
}

.text-justify {
    text-align: justify
}

.text-italic {
    font-style: italic;
}

.text-bolder {
    font-weight: 700;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    margin: 0;
    content: "x"
}

input[type=number] {
    -moz-appearance: textfield
}

.middle-banner-container {
    position: relative;
    min-height: 265px
}

.middle-banner-container .middle-box {
    border-radius: 10px;
    color: #fff;
    justify-content: space-between;
    min-height: 145px;
    padding: 20px;
    text-align: left;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 100%;
    padding-left: 250px;
    display: flex;
    flex-wrap: wrap
}

.middle-banner-container .middle-box div:first-of-type {
    flex: 100
}

.middle-banner-container .middle-box div:last-of-type {
    flex: 40
}

.middle-banner-container .middle-box .title {
    text-align: left;
    color: #fff
}

.middle-banner-container .left-big-image img {
    max-width: 260px;
    position: absolute;
    z-index: 1
}

.col-md-6 .middle-banner-container .left-big-image img {
    transform: translate(-50%, -50%);
    top: 50%
}

.col-md-6 .middle-banner-container .middle-box {
    padding-left: 90px !important
}

.col-md-6 .middle-banner-container {
    margin-left: 70px
}

.bg-blue {
    background-color: #215181
}
.resp-image {
    width: 50%
}

.gray-form {
    background-color: #f2f2f2;
    border-radius: 10px;
    padding: 50px;
    margin-bottom: -30px
}

.gray-form .form-control {
    margin: 15px 0;
    color: gray
}

.hr-claim-container {
    height: 30%;
    border: 1px solid #215181;
    border-radius: 10px;
    padding: 20px 50px
}
.quantity {
    position: relative
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0
}

input[type=number] {
    -moz-appearance: textfield
}

.select-group {
    position: relative
}

.select-group select {
    color: gray
}

.select-group i.fa.fa-angle-down {
    position: absolute;
    top: 12px;
    right: 10px;
    color: #333
}

.relative-box {
    position: relative;
}

.relative-box .xy-center-box {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

.relative-box .y-center-box {
    position: absolute;
    top: 50%;
    transform: translateY(-50%)
}

.hclaim-left.relative-box .y-center-box {
    right: 0
}

.hclaim-right.relative-box .y-center-box {
    left: 0
}

.relative-box .box-centered-icon {
    width: 60px;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: -35px
}

.policy-anchor {
    display: inline-block;
    padding: 20px 10px 20px 0;
    display: flex
}

.policy-block .pp-img-cont {
    width: 60px;
    margin: 0 10px 0 0
}

.policy-block .pp-img-cont img {
    width: 60px
}

.policy-block {
    display: flex
}

.policy-anchor a {
    text-decoration: none
}
.tl-content-text {
    width: 300px
}

.tl-image img {
    width: 70%;
    z-index: 20;
    position: relative
}

.tl-right.tl-image {
    text-align: right
}

.tl-left.tl-image {
    text-align: left
}

.center-content-align {
    display: flex;
    align-items: center
}

.center-content-align.tl-left {
    justify-content: left;
    z-index: 21;
    text-align: right
}

.center-content-align.tl-right {
    justify-content: right
}

.tl-image-box {
    width: 300px;
    height: 300px;
    border-radius: 10px;
    overflow: hidden;
    background-size: cover;
    background-position: center;
    position: relative;
    z-index: 200
}

.tl-right .tl-image-box {
    float: right
}

.tl-row {
    display: flex;
    margin-bottom: 100px
}

.year-label {
    padding: 10px 20px;
    background-color: #205281;
    color: #fff;
    z-index: 200;
    border-radius: 5px
}
.nav-link {
    color: #565656;
    text-transform: uppercase
}

    .nav-link:hover {
        color: #205281
    }

/* box valuta casa e trova agenzia */

.shift-img {
    height: 500px;
    border-radius: 10px;
    width: 77%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    margin-top: 50px;
    margin-bottom: 100px

}

.shift-box {
    padding: 50px;
    border-radius: 10px;
    color: #fff;
    width: 50%;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background-color: #205281;
    font-size: 1.4rem;
}

    .shift-box .btn {margin-top: 20px;}

    .shift-box p {
        margin-bottom: 0;
        font-weight: 300;
    }

    .shift-box strong {
        font-weight: 900;
    }

.banner-shift-imgleft .shift-box {right: 0}

.banner-shift-imgright .shift-box {left: 0}

.banner-shift-imgright .shift-img {margin-left: 23%}

.reveal {
  position: relative;
  opacity: 0;
}

    .reveal.active {
      opacity: 1;
    }
    
.active.fade-left {animation: fade-left 1s ease-in;}

.active.fade-right {animation: fade-right 1s ease-in;}

@keyframes fade-bottom {
  0% {
    transform: translateY(50px);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}
@keyframes fade-left {
  0% {
    transform: translateX(-100px);
    opacity: 0;
  }
  100% {
    transform: translateX(0);
    opacity: 1;
  }
}

@keyframes fade-right {
  0% {
    transform: translateX(100px);
    opacity: 0;
  }
  100% {
    transform: translateX(0);
    opacity: 1;
  }
}

/* box mutuo */

.mbb-right-image {
    position: absolute;
    right: 0;
    top: -30px;
}

.mmb-blue-container {
    text-align: left;
    background-color: #215181;
    padding: 60px 0 35px 0;
    border-radius: 10px;
    color: #fff;
    font-size: 1.4rem;
    margin-top:50px;

}

.mmb-blue-container .cliccable-cta  {margin-top:20px;}

.mmb-blue-container.mmb-flex        {display: flex}

.mmb-blue-container .mmb-title      {text-transform: uppercase}

    .mmb-blue-container a               {color: #fff; text-decoration: none;}

    .mmb-blue-container p               {font-weight: 300; margin-bottom:0;}

    .mmb-blue-container strong          {font-weight: 700;}


@media(max-width:1400px) {

    .header .menu               {font-size: .8rem}

    .main-image.home-main-image {width: 50%}

    .tstm-left-blueblock        {height: 265px; width: 215px}

    .tstm-left-image            {width: 100%}

    .fixed-height.h350          {height: 380px}

}

@media (max-width: 1024px) {
    
    section h1              {font-size: 2rem; text-align: center;}
    section .text-container {flex-direction: column;}

    .main-image             {height:300px;}

    .mobile-hide            {display: none !important}

    .claim-box .claim-container h1              {font-size: 2.5rem; margin-top: 10%;}

    .claim-box .claim-container.claim-left h1   {width: 60%;}

}

@media(max-width:768px) {

    .mt-5.mt-title      {margin-top: 1rem !important}

    .shift-box          {width: 70%;}
    
    .green-row.map-count-bar {z-index: 1}

    .rounded-btn {height: 30px; width: 30px; line-height: 30px}

        .rounded-btn img    {width: 17px !important}

    .button-search-container .white-bordered-btn,
    .button-search-container .no-bordered-btn {margin-top: 10px}

    .search-field-container   {max-width: 90%}

    .header .menu {
        width: 80% !important;
        position: fixed;
        top: 80px;
        right: 0;
        height: 100%;
        max-width: 0
    }

    .header .menu-btn:checked~.menu {max-width: 50%;}

    .header .menu-btn:checked~.menu-overlay {
        display: block;
        background-color: #000;
        opacity: .8;
        width: 100%;
        height: 100%;
        position: fixed;
        top: 90px;
        left: 0;
        z-index: -1
    }

    .footer-row .col-md-6.col-sm-6 {width: 50% !important}

    .black-overlay.active   {display: none}

    .bar-navigation         {padding: 10px}

    .tl-image-box           {width: 200px; height: 200px}

    .tl-right .tl-image-box {float: none}

    .mt-5.mb1               {margin-top: 1rem !important}

    .desk-hide              {display: inherit !important}

    .desk-hide.display-block,
    .display-block          {display: block !important}

    .mobile-block           {display: block !important}

    .mobile-block .claim-box {width: 100%; height: auto}

    .search-navigation-container .search-container {width: 100%; position: relative}

    .container.container-nooverflow {overflow: visible}

    .rowcolumns                 {-moz-column-count: 2; column-count: 2}

    .white-container            {overflow: hidden; contain: layout}

    .white-container.searchbar  {overflow: initial}

    .mainimage-container        {position: relative}

    .gray-row.contatti-row      {padding-bottom: 40px}

    .row.mobile-nopadding-row>* {padding-left: 0; padding-right: 0}

    .relative-box .y-center-box {transform: translate(-50%); left: 50% !important; top: 80%}
    
    .testimonials-carousel-container {
        margin-top: 0;
        margin-bottom: 50px;
        position: initial;
        top: initial;
        transform: none
    }

    .tstm-left-block        {flex-wrap: wrap}

    .tstm-left-block>div    {flex: 50; height: 188px}

    .mobile-gray-row        {background-color: #eee}

    .mobile-gray-row .agente-card   {background-color: #eee; border: 0}

    a.circle-link                   {text-align: center; background-color: #205281; color: #fff !important}

    .center-content-align.tl-right  {justify-content: left}

    .tl-row                         {margin-bottom: 50px}
    
    .testimonials-row .tstm-left-container,
    .testimonials-row .container.tstm-container {overflow: unset}
        
    .testimonials-row .title.mt-5       {margin-top: 1rem !important}
    
    .testimonials-row .tstm-left-image  {width: 100%; left: -15px}

    .bg-blue.landing-box        {background-color: #fff}

    .main-image.home-main-image {width: 100%}

    .mbb-right-image            {display: none}

    .claim-box-mobile           {width:100%;}
    
}

@media(max-width:580px) {

    .shift-box                  {width: 100%; position: relative; border-radius:0; padding: 35px;}

    .shift-img                  {width: 100%; border-radius:0;}

    .claim-box .claim-container.claim-left h1{width: 80%;}

    .container                  {max-width: 100%; padding: 0; margin:0 auto;}

    .banner-shift-imgleft .shift-box{top: 10%}

    .banner-shift-imgright .shift-img{margin:0;}

    .footer-row .container      {width: 90%;}

    .tstm-right-block           {width: 100%;}

    .mmb-blue-container         {padding: 35px 20px;}

    .mmb-blue-container, 
    .half-image.home-hr-banner  {border-radius:0;}

}

@media(max-width:480px) {

    .mainimage-container{display: block;}

    .middle-bottom-banner-container.large-mbb-banner .mmb-blue-container {padding-right: 70px}

    .middle-bottom-banner-container .mbb-left-image {left: 70%}

    .nav-link {padding: .5rem 0}

    .shift-img{margin: 0!important;}

    .mb-5{margin:0!important;}

    .claim-box .claim-container.claim-left h1{width: 90%;}

    .claim-box .claim-container h1{margin:0; padding:35px;}

    .testimonials-carousel-container {width: 100%;}

    .claim-box {width: 100%;}

    .text-marketing, .text-marketing h2, .tstm-container .text-marketing h2 {font-size:20px; line-height: 32px; padding: 0 20px;}

}