/* ===============================================
General styles
================================================== */

/* Tipography */
body{
    font-family: 'Mulish', sans-serif;
}
h2{
    font-size:3rem;
    font-weight: 700;
}
p{
    font-size:1.2rem;
    color:#535353;
}
a{
    color:var(--main-color);
    transition:color 0.5s ease;
}
a:hover{
    color:var(--main-color-hover);
    text-decoration: none;
}
.font-sm,
.font-sm p{
    font-size:1.2rem;
}
.font-md,
.font-md p{
    font-size:1.4rem;
}
.font-lg,
.font-lg p{
    font-size:2rem;
}
.font-xl,
.font-xl p{
    font-size:3.5rem;
}
.small{
    transition: all 0.5s ease;
}
.dot{
    width: 10px !important;
    height: 10px !important;
    border-radius: 100% !important;
}
@media only screen and (max-width: 575px) {
    html{
        font-size:10px;
    }
    h2{
        font-size:2.8rem;
    }
}

/* Grid */
.row .fullwidth{
    margin-left:-15px;
    width: calc(100% + 30px);
}
.fullwidth > .row{
    margin:0;
}
.fullwidth > .row > .col-12{
    padding:0;
}

/* Positioning */
.ps{
    padding:80px 50px;
}
.px-35{
    padding-left:35px;
    padding-right:35px;
}
.px-50{
    padding-left:50px;
    padding-right:50px;
}
.py-80{
    padding-top:80px;
    padding-bottom:80px;
}
.my-80{
    margin-top:80px;
    margin-bottom:80px;
}
.m-auto{
    margin-left:auto;
    margin-right:auto;
}
.max-w{
    max-width:540px;
}
.max-w-xl{
    max-width:885px;
}
.h-100{
    height:100% !important;
}
.mw-80{
    max-width:80%;
}
@media only screen and (max-width: 1399px) {
    .ps{
        padding:40px 20px;
    }
    .px-35{
        padding-left:0;
        padding-right:0;
    }
    .px-50{
        padding-left:20px;
        padding-right:20px;
    }
    .py-80{
        padding-top:40px;
        padding-bottom:40px;
    }
    .mw-80{
        max-width:100%;
    }
}

/* Forms and Buttons */
.btn-default {
    background-color: var(--black);
    border: 3px solid var(--main-color);
    border-radius: 0;
    padding: 15px 35px;
    font-size: 1.2rem;
    color: var(--main-color);
    font-weight: 600;
    transition: all 0.5s ease;
}
.btn-default:hover {
    background-color: var(--main-color);
    color: var(--black);
}
.wpcf7-list-item{
    margin:0;
}

/* Colors */
.text-custom-color{
    color: var(--main-color) !important;
}
.text-default{
    color:#535353 !important;
}
.bg-custom-color{
    background-color: var(--main-color) !important;
}
.bg-yellow{
    background-color: #FFBF3E !important;
}
.bg-beige{
    background-color:#e5e5e5;
}
.bg-grey{
    background-color: #605e5d;
}
.bg-black{
    background-color: var(--black);
}
.text-white p{
    color:#fff;
}
.bby{
    border-bottom:10px solid #FFBF3E;
}
.bty{
    border-top:10px solid #FFBF3E;
}

/* SVG Styles*/
.svg-clickable{
    pointer-events: none;
}
.svg-bordeaux {
    filter: invert(13%) sepia(35%) saturate(5647%) hue-rotate(320deg) brightness(99%) contrast(92%);
}
.svg-yellow {
    filter: invert(90%) sepia(28%) saturate(3794%) hue-rotate(328deg) brightness(108%) contrast(101%);
}


/* ===============================================
Header Styles
================================================== */

header .navbar{
    padding-left:35px;
    padding-right:35px;
}
.logo{
    /* max-width:120px; */
    height:50px;
    transition:all 0.5s ease;
}
.small .logo{
    height:30px;
}
.hide{
    font-size: 0;
    transition:all 0.5s ease;
}
.post-title{
    font-family: var(--title-font);
    color: var(--main-color);
}
@media only screen and (max-width: 575px) {
    .logo{
        height:30px;
    }
    header .navbar{
        padding-left:15px;
        padding-right:15px;
    }
}

/* Main Menu */
.navbar-white .menu-item{
    font-size:1.2rem;
}
.navbar-white .menu-item > .nav-link{
    color:var(--main-color);
    font-family: var(--title-font);
    font-size: var(--of-font-22);
    font-weight: 600;
    padding-left: 20px;
    padding-right: 20px;
}
.navbar-white .collapse:not(.show) .menu-item:first-child > .nav-link{
    padding-left: 0;
}
.navbar-white .menu-item:last-child > .nav-link{
    padding-right: 0;
}
.navbar-white .menu-item > .nav-link:hover{
    color:var(--main-color-hover);
}
.navbar-white .current-menu-item > .nav-link{
    color:var(--main-color);
    text-decoration: underline;
}
.navbar-white .menu-item-129 > .nav-link{
    background-color: var(--main-color);
    border: 0;
    padding: 10px 25px;
    padding-right:25px !important;
    border-radius:5px;
    font-size: 1.2rem;
    color: #fff;
    font-weight: 600;
    transition:background-color 0.5s ease;
}
.navbar-white .menu-item-129 > .nav-link:hover {
    background-color: var(--main-color-hover);
    color: #fff;
}
.navbar-white .navbar-toggler-icon .fas{
    color:var(--main-color);
    font-size:16px;
}
.navbar-white .dropdown-menu{
    background-color: #fff;
    border:0;
    border-radius: 0;
    padding:0;
    margin-top:0;
    left:unset;
    right:0;
}
.navbar-white .dropdown-menu .menu-item{
    border-bottom:1px solid #FCF1E2;
}
.navbar-white .dropdown-menu .menu-item:last-child{
    border-bottom:0;
}
.navbar-white .dropdown-menu .menu-item a{
    color:#FCF1E2;
    padding: 1rem 1.5rem;
    transition: all 0.5s ease;
}
.navbar-white .dropdown-menu .menu-item a:hover{
    background-color:#FCF1E2;
    color:var(--main-color);
}

/* Main Menu Mobile */
#modaleMenuMobile .modal-dialog{
    max-width:100%;
}
#modaleMenuMobile .modal-dialog{
    margin:0;
}
#modaleMenuMobile .modal-content{
    height:100vh;
    border:0;
    border-radius:0;
    background-color:var(--main-color);
}
#modaleMenuMobile .modal-content .modal-header{
    padding:1rem 20px;
}
#modaleMenuMobile .modal-content .close{
    color:#FCF1E2;
    font-size:3rem;
    opacity:1;
    font-weight: 200;
}
#modaleMenuMobile .modal-content .modal-body{
    padding:0;
}
#modaleMenuMobile .modal-content .menu{
    margin:0;
    padding:0;
}
#modaleMenuMobile .modal-content .menu-item{
    border-top:1px solid #FCF1E2;
    display:block;
    position:relative;
}
.accordion-menu .menu-item{
    position:relative;
}
#modaleMenuMobile .modal-content .menu-item:last-child{
    border-bottom:1px solid #FCF1E2;
}
#modaleMenuMobile .modal-content .menu-item .sub-menu{
    padding:0;
}
#modaleMenuMobile .modal-content .menu-item .sub-menu .menu-item a{
    color:var(--main-color);
    background-color:#fff;
}
.accordion-menu .menu-item-has-children > a::after{
    content:"\f078";
    font-family: "Font Awesome 5 Free";
    font-weight: 700;
    display:block;
    width:auto;
    height:20px;
    position:absolute;
    right:20px;
    top:10px;
}
.accordion-menu .menu-item-has-children.collapsed > a::after{
    content:"\f054";
}
#modaleMenuMobile .modal-content .menu-item a{
    color:#FCF1E2;
    padding:10px 20px;
    display:block;
    font-size:1.4rem;
}

/* Menu secondario */
.secondary-menu{
    background-color:var(--main-color);
    border-top:5px solid #FFBF3E;
}
.hide.secondary-menu{
    border:0;
    padding:0;
    transition:all 0.5s ease;
}
.menu-menu-secondario-container{
    width:100%;
}
#menu-menu-secondario{
    margin:0;
}
.secondary-menu ul{
    list-style:none;
    display:flex;
}
.secondary-menu .menu-item{
    display:inline-block;
}
.secondary-menu .menu-item a{
    color:#fff;
    font-weight: 700;
    padding:0 1rem;
}
.secondary-menu .menu-item:last-child a{
    padding-right:0;
}

/* Footer Menu */
.footer-nav .footer-nav-items{
    list-style: none;
    padding:0;
}
.footer-nav .footer-nav-items .menu-item{
    line-height: 2.5rem;
}
.footer-nav .footer-nav-items > .menu-item{
    font-weight: 700;
}
.footer-nav .footer-nav-items .sub-menu{
    list-style: none;
    padding:0;
}
.footer-nav .footer-nav-items .sub-menu .menu-item{
    line-height:1.4rem;
    margin-bottom:10px;
}
.footer-nav .footer-nav-items .sub-menu .menu-item,
.footer-nav.social .footer-nav-items .menu-item:first-child{
    font-weight: 400;
}
.footer-nav .footer-nav-items a{
    color:#fff;
}
.footer .logo-container{
    width:150px;
}
.footer a{
    font-family: var(--text-font);
    color:var(--white);
    transition:color 0.5s ease;
}
.footer a:hover{
    color:var(--white-50);
}
.footer-menu .menu-item{
    list-style: none;
    text-transform: uppercase;
    margin-top:1rem;
    margin-bottom:1rem;
}
.footer-menu .menu-item:first-child{
    margin-top:0;
}

.bg-main{
    background-color:var(--main-color);
}
.bg-gradient {
    padding-top: 120px;
    padding-bottom: 120px;
    background: rgb(149, 39, 142);
    background: linear-gradient(135deg, var(--main-color-hover) 0%, var(--main-color) 39%, var(--secondary-color) 100%);
}
.bg-gradient p,
.bg-gradient label{
    color: var(--white);
}
.bg-gradient label a{
    color: var(--white);
    text-decoration: underline;
}
.bg-gradient .btn-default,
.bg-custom-color .btn-default{
    background-color:var(--white);
    color:var(--main-color);
}
.bg-gradient .btn-default:hover,
.bg-custom-color .btn-default:hover{
    background-color:var(--white-70);
    color:var(--main-color);
}


/* ===============================================
Custom Blocks Styles
================================================== */

/* Blocco Header */
.block-header,
.full-height-bg{
    position: relative;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover;
    min-height:600px;
}
.block-header:before,
.full-height-bg:before{
    content: ' ';
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    opacity: 0.6;
    background-color:var(--white);
}
.block-header h1,
h1.main-title{
    font-family: var(--title-font);
    font-size: var(--of-font-60);
    color: var(--main-color);
    font-weight: 400;
    transition: all 0.5s ease;
}
.block-header h1:hover{
    color: var(--main-color-hover);
}
.block-header h2{
    font-family: var(--title-font);
    font-size: var(--of-font-30);
    color: var(--light-grey);
    text-transform: uppercase;
    font-weight: 400;
}
.block-header p,
p.main-text{
    font-family: var(--text-font);
    font-size: var(--of-font-26);
    color: var(--light-grey);
}
.block-header .btn{
    font-family: var(--text-font);
    font-size: var(--of-font-20);
    color: var(--white);
    text-transform: uppercase;
    font-weight: 700;
}


/* Blocco Informazioni */
.block-info h2{
    font-family: var(--title-font);
    font-size: var(--of-font-50);
    color: var(--white);
    font-weight: 400;
}
.form-control{
    background-color: rgba(255, 255, 255, 0.5);
    border:3px solid rgba(255, 255, 255, 0.5);
}
.form-control:focus{
    background-color: rgba(255, 255, 255, 0.5);
    border-color:#136800;
    box-shadow: none;
}

/* Blocco Parallax */

.block-parallax{
    background-color:#000;
}
.jarallax-img {
    opacity:.6;
}
.parallax-content{
    position:relative;
}
.parallax-title,
.block-title{
    font-family: var(--title-font);
    margin-bottom:40px;
}
.parallax-title p{
    font-size: 3rem;
    line-height: 4rem;
}
.parallax-subtitle,
.img-block-subtitle{
    font-family: var(--text-font);
    text-transform: uppercase;
    margin-bottom:25px;
}
.citazione-text p{
    font-size:3rem;
    line-height: 4rem;
    font-weight: 700;
}
.wave{
    height:40px;
}
.block-numbers > .wp-block-group__inner-container{
    display:flex;
    justify-content: center;
    flex-wrap: wrap;
}
.block-single-number{
    margin:30px;
    text-align: center;
}
.block-single-number h5{
    display:block;
    width:50px;
    height:50px;
    line-height: 50px;
    text-align: center;
    border-radius: 50%;
    background-color:#E7D0D8;
    color:var(--main-color);
    margin: 0 auto 30px;
}

@media only screen and (max-width: 575px) {
    .parallax-title p{
        font-size:2.8rem;
        line-height: 4rem;
    }
    .wave{
        height:30px;
    }
    .block-single-number{
        width:100px
    }
}

/* ===============================================
Bootstrap Override
================================================== */

/* Pagination */
.pagination .page-link{
    border:0;
    color: var(--main-color);
    font-weight: 700;
    font-size:1.2rem;
}
.page-item.active .page-link{
    background-color:transparent;
    color:#535353;
}
/* Carousel */
.carousel-indicators{
    bottom:-60px;
}
.carousel-indicators li{
    background-color:var(--main-color);
}
.carousel-control-next,
.carousel-control-prev{
    width:10%;
}
.carousel-control-prev-icon,
.carousel-control-next-icon {
  background-image: none;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
}
.carousel-control-next-icon:after
{
    content: "\f054";
    font-size: 55px;
    color: var(--main-color);
}

.carousel-control-prev-icon:after {
  content: "\f053";
  font-size: 55px;
  color: var(--main-color);
}

@media only screen and (max-width: 575px) {
    .carousel-indicators{
        bottom:-40px;
    }
}

/* ===============================================
Dealer Locator Style
================================================== */
#map{
    min-height:600px;
}
#map .gm-style-iw-d h2{
    color:var(--main-color);
    font-size:2rem;
    font-weight:400;
}
#map .gm-style-iw-d span:after,
#map .gm-style-iw-d b:after{
    content:" ";
}
/* Styling for Autocomplete search bar */
#pac-card {
    background-color: #fff;
    border-radius: 2px 0 0 2px;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);
    box-sizing: border-box;
    font-family: Roboto;
    margin: 10px 10px 0 0;
    -moz-box-sizing: border-box;
    outline: none;
  }
  
  #pac-container {
    padding-top: 12px;
    padding-bottom: 12px;
    margin-right: 12px;
  }
  
  #pac-input {
    background-color: #fff;
    font-family: Roboto;
    font-size: 15px;
    font-weight: 300;
    margin-left: 12px;
    padding: 0 11px 0 13px;
    text-overflow: ellipsis;
    width: 400px;
  }
  
  #pac-input:focus {
    border-color: #4d90fe;
  }
  
  #title {
    color: #fff;
    background-color: #acbcc9;
    font-size: 18px;
    font-weight: 400;
    padding: 6px 12px;
  }
  
  .hidden {
    display: none;
  }

  /* Styling for an info pane that slides out from the left. 
   * Hidden by default. */
  #panel {
    height: 100%;
    width: null;
    background-color: white;
    position: absolute;
    z-index: 1;
    overflow-x: hidden;
    transition: all .2s ease-out;
  }
  
  .open {
    width: 250px;
  }
  
  .place {
    font-family: 'open sans', arial, sans-serif;
    font-size: 1.2em;
    font-weight: 500;
    margin-block-end: 0px;
    padding-left: 18px;
    padding-right: 18px;
  }
  
  .distanceText {
    color: silver;
    font-family: 'open sans', arial, sans-serif;
    font-size: 1em;
    font-weight: 400;
    margin-block-start: 0.25em;
    padding-left: 18px;
    padding-right: 18px;
  }

/* ===============================================
Test Udito Style
================================================== */

#testUdito{
    min-height:870px;
}


/* ===============================================
Footer Style
================================================== */

/* Pre-Footer */
.logo-footer{
    max-height:40px;
}
.numero-verde{
    width:200px;
    padding:12px 18px;
    background-color:#fff;
    border-radius:5px;
}
.numero-verde p{
    color:#1C9C23;
    font-size: 15px;
    font-weight: 700;
    margin:0;
}
.numero-verde p.big{
    font-size: 27px;
}
@media only screen and (max-width: 575px) {
    .footer-nav{
        margin-top:40px;
    }
}
/* Footer */
