@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;
    font-size:14px;
}

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

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

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

.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
}

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

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

.btn {
    border-radius: 10px
}

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

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

.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
    }

.row.header-row {
    padding: 0
}

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

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

    .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
}

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


.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
}

.mainimage-container {display: flex}

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

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

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

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

.searchbar.white-container {
    position: relative
}

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

.claim-box {
    width: 50%;
    background-color: #205281;
}

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

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

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

     .claim-box .claim-container.claim-left h2 {
       margin-left: 50px;
        letter-spacing: 0.02rem;
        font-weight: 300;
        font-style: italic;
    }

    .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: #205281;}

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

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

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

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
}

/* servizi temposervice */

.services{
    margin: 0 auto;
    max-width: 1440px;
    padding: 50px 0;
}

    .service{
        display: inline-block;
        vertical-align: middle;
        width: 33%;
        text-align: center;
    }

    .service button{
        border-radius: 20px;
        background-color: #205281;
        width: auto;
        padding: 5px 10px;
        color: #f2f2f2;
        border:none;
        font-size: 15px;
        text-transform:uppercase;
        letter-spacing: 0.05rem;
    }

    .service p{
        max-width: 230px;
        margin: 0 auto;
        padding: 10px 0;
    }

    .services .icona{
        background-repeat: no-repeat;
        background-position: center center;
        background-size: contain;
        width: 100%;
        height: 70px;
        margin: 0 auto;
    }

    .services .layout .icona{
        background-image: url("img/arredo.png");
    }

    .services .depuratore .icona{
        background-image: url("img/depuratore.png");
    }

    .services .volture .icona{
        background-image: url("img/luce.png");
    }

.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
}

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

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-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-block {
    display: flex
}

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

.year-label {
    padding: 10px 20px;
    background-color: #205281;
    color: #fff;
    z-index: 200;
    border-radius: 5px
}

/* 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-imgright .shift-box {left: 0}

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

.reveal {
  position: relative;
  opacity: 0;
  margin-top:60px;
}

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

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


/* footer */

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

    .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: #205281;
                text-decoration: none;
                font-weight: 300
            }

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

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

@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;
  }
}

@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}
}

@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}

    .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}

    .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:770px) {

    .service {width: 100%; margin:20px 0}

    .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:20px 35px 0 35px;}

    .claim-box .claim-container h2{margin-left: 0!important; padding:20px 35px 20px 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;}

}