:root {
    --first: #242474;
    --second: #3685B5;
    --third: #AB3428;
    --white: #FFFFFF;
    --light: #ECECEC;
    --dark:  #1A2A36;
}

html {
    scroll-behavior: smooth;
  }

body, p, a {
    font-family: 'Work Sans', sans-serif!important;
}

h1, h2, h3, h4, h5 {
    font-family: 'Lato', sans-serif!important;
}

p {
  font-weight: 300;
  color: var(--dark);
}

ul li,
ol li{
  font-weight: 300;
  color: var(--dark);
}

a{
  transition: .5s;
}

section a{
  color: var(--second);
  text-decoration: underline;
}

section a:hover{
  color: var(--first);
  text-decoration: none;
}

section {
    display: block;
    width: auto;
    height: auto;
    position: relative;
    overflow: visible;
}

#pre-header {
    background-color: var(--dark);
    padding-top: 8px!important;
    padding-bottom: 8px!important;
    display: block;
    width: 100%;
    z-index: 100;
}


.navbar-brand img {
    height: 40px;
    margin-top: 12px;
}

.btn-primary {
      background: var(--second);
      border-color: var(--second);
      text-decoration: none;
}

.btn-primary:hover {
    background: var(--third)!important;
    border-color: var(--third)!important;
}

.dropdown-item:active {
    background-color: var(--second)!important;
}

.navbar .navbar-nav .nav-link:hover, .navbar .navbar-nav .nav-link.active {
    color: var(--third);
}

.navbar .navbar-nav .nav-link {
    color: var(--first);
}


.navbar .navbar-nav .nav-link:hover {
    color: var(--third);
}


.pre-header-content svg {
    width: 25px;
    height: 21px;
    fill: var(--white);
    margin-right: 10px;
}

.pre-header-content, .pre-header-content a {
    color: var(--white);
    font-size: 14px;
}

.pre-header-content a:hover {
    color: var(--second);
}

.header-carousel .animated img {
    -webkit-animation-duration: 5000ms !important;
    animation-duration: 5000ms !important;
    -webkit-animation-fill-mode: both !important;
    animation-fill-mode: both !important;
    -webkit-animation: myMove;
    animation: myMove;
}

@keyframes myMove {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
        -webkit-animation-timing-function: linear;
        animation-timing-function: linear;
    }
    100% {
        -webkit-transform: scale(1.1);
        transform: scale(1.1);
        -webkit-animation-timing-function: linear;
        animation-timing-function: linear;
    }
}

@-webkit-keyframes myMove {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
        -webkit-animation-timing-function: linear;
        animation-timing-function: linear;
    }
    100% {
        -webkit-transform: scale(1.1);
        transform: scale(1.1);
        -webkit-animation-timing-function: linear;
        animation-timing-function: linear;
    }
}

@-o-keyframes myMove {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
        -webkit-animation-timing-function: linear;
        animation-timing-function: linear;
    }
    100% {
        -webkit-transform: scale(1.1);
        transform: scale(1.1);
        -webkit-animation-timing-function: linear;
        animation-timing-function: linear;
    }
}

@-moz-keyframes myMove {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
        -webkit-animation-timing-function: linear;
        animation-timing-function: linear;
    }
    100% {
        -webkit-transform: scale(1.1);
        transform: scale(1.1);
        -webkit-animation-timing-function: linear;
        animation-timing-function: linear;
    }
}

@-ms-keyframes myMove {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
        -webkit-animation-timing-function: linear;
        animation-timing-function: linear;
    }
    100% {
        -webkit-transform: scale(1.1);
        transform: scale(1.1);
        -webkit-animation-timing-function: linear;
        animation-timing-function: linear;
    }
}


.header-carousel.owl-loaded {
    display: block;
    height: calc(100vh - 100px)!important;
    overflow: hidden!important;
}


.owl-carousel-inner h1 {
    margin-top: -150px!important;
    text-shadow: 1px 1px 1px #000000;
}


.owl-carousel-inner p {
    text-shadow: 1px 1px 1px #000000;
    font-size: 25px;
}

/* servizi */


.service-icon {
    background-color: var(--second);
}

.service-item:hover .service-icon {
    background-color: var(--third);
}

.service-item p{
  min-height: 100px;
  height:auto !important;
  height: 100px;
}

.service-icon img {
    max-height: 100px;
}

.text-primary {
    color: var(--second)!important;
    font-weight: 400;
    font-size: 18px;
}


.service-item a {
    color: var(--second);
}

.service-item a:hover {
    color: var(--third);
}


/* chi siamo */

.about-text svg {
    width: 20px;
    height: 20px;
    fill: var(--second);
}


/* punti di forza */

.btn-lg-square {
    width: 55px!important;
    height: 55px!important;
    background-color: var(--second)!important;
    text-decoration: none;
}

.btn-lg-square svg {
    width: 30px!important;
    height: 30px!important;
    fill: var(--white)!important;
}

.punti-icon {
    display: inline-table;
    width: 70px!important;
    height: 70px!important;
    background-color: var(--second)!important;
    text-align: center;
    border-radius: 100%;
}

.punti-txt {
    display: inline-table;
    width: 220px;
    margin-left: 10px;
    position: absolute;
    font-size: 15px;
}

.punti-txt h5 {
    font-size: 18px;
    font-weight: 400;
    margin-top: 10px;
}

.punti-icon svg {
    width: 40px!important;
    height: 40px!important;
    fill: var(--white)!important;
    margin-top: 15px;
}

/* realizzazioni */

#realizzazioni {
    min-height: 800px;
}

#portfolio-flters li:hover, #portfolio-flters li.active {
    color: var(--second);
    border-color: var(--second);
}

.portfolio-img::before,
.portfolio-img::after {
    position: absolute;
    content: "";
    width: 0;
    height: 100%;
    top: 0;
    background: rgba(54, 133, 181, 0.5);
    transition: .5s;
}




/* mappa */

#map {
    display: block;
    width: 100%;
    height: 550px;
    z-index: 1;
}

.leaflet-tile-pane {
    -webkit-filter: grayscale(100%)!important;
    filter: grayscale(100%)!important;
  }


  /* footer */

.footer p {
    color: var(--white);
    font-weight: 300;
}


.footer .btn.btn-link {
    font-weight: 300;
    color: var(--white);
}

.copyright {
    color: var(--white);
    font-weight: 300;
}


#menu-footer-azienda li a:link,
#menu-footer-servizi li a:link,
#menu-footer-azienda li a:visited,
#menu-footer-servizi li a:visited {
    font-weight: 300;
    color: var(--white);
    display: block;
    margin-bottom: 5px;
    padding: 0;
    text-align: left;
    text-transform: capitalize;
    transition: .3s;
    text-decoration: none;
}
#menu-footer-azienda li a:hover,
#menu-footer-servizi li a:hover {
    color: var(--second);
}

#menu-footer-azienda li a::before,
#menu-footer-servizi li a::before {
    position: relative;
    content: "\f105";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    margin-right: 10px;
}

.widget_nav_menu::marker,
#menu-footer-azienda li::marker,
#menu-footer-servizi li::marker  {
   font-size: 0px;
}


ul#menu-footer-azienda,
ul#menu-footer-servizi {
    padding-left: 0px!important;
    margin-top: -10px;
}

.footer a:link,
.footer a:visited{
  color: var(--light);
}

.footer a:hover{
  color: var(--second);
}

.footer .copyright a:link,
.footer .copyright a:visited {
    color: var(--light);
    text-decoration: underline;
}

.footer .copyright a:hover{
  color: var(--second);
}

.input-height{
  height: 55px;
}

.form-control:focus{
  box-shadow: 0 0 0 .25rem var(--second);
}

.btn-primary:disabled, .btn-primary.disabled {
    background-color: var(--second);
    border-color: var(--second);
}


/* pagina servizi */

#marchi {
    display: block;
    width: 100%;
    height: auto;
    position: relative;
    min-height: 200px;
    padding-top: 100px;
    padding-bottom: 100px;
}

.header-installazione-caldaie {
    background-image: url('../img/bg-serv-caldaie.jpg');
}

.page-header h1, .page-header h2, .page-header nav {
    text-shadow: 1px 1px 1px #000000;
}

.header-privacy {
    background-image: url('../img/bg-privacy.jpg');
}

#privacy table{
  margin: 0 0 30px;
  width: 100%;
  border: 1px solid var(--light);
  border-collapse: collapse;
}

#privacy table th, table td, table tr {
    padding: 10px;
    border: 1px solid var(--light);
    color: var(--dark);
    font-weight: 300;
}


/* STILI PER MOBILE */

@media only screen and (max-width: 1280px) {
  .navbar .navbar-nav .nav-link{
    font-size: 12px;
    margin-right: 10px;
  }
  .cta-preventivo{
    font-size: 12px;
    padding-right: 1rem!important;
    padding-left: 1rem!important;
  }
}

@media only screen and (max-width: 1239px) {
  .header-carousel.owl-loaded {
      height: auto!important;
  }
}

@media only screen and (max-width: 1199px) {
}

@media only screen and (max-width: 992px) {
  .border-end {
    border-right: 0px solid #dee2e6 !important;
  }
  .navbar .navbar-nav{
    background-color: var(--white);
  }
  .navbar-light .navbar-toggler{
    transition: .5s;
  }
  .navbar-light .navbar-toggler:focus{
  box-shadow: none;
  background-color: var(--light);
  }
  .opened-menu{
    display: block;
  }
  .dropdown-menu.opened-menu{
    border: 0;
    border-radius: 0;
    background-color: var(--light);
  }

  .dropdown-menu.opened-menu a{
    font-size: 14px;
  }

  .dropdown-menu.opened-menu a:hover{
    background-color: var(--white);
  }
}

@media only screen and (max-width: 768px) {
}

@media only screen and (max-width: 767px) {
}

@media only screen and (max-width: 479px) {
  .navbar-brand img {
    height: 25px;
    margin-top: 20px;
  }
}

@media only screen and (max-width: 355px) {
  .navbar-brand img {
    height: 20px;
    margin-top: 23px;
  }
}
