@import url("https://use.typekit.net/bkw2tpf.css");
@import url("https://use.typekit.net/bkw2tpf.css");

* {
    vertical-align: baseline;
    font-weight: inherit;
    font-family: inherit;
    font-style: inherit;
    font-size: 100%;
    border: 0 none;
    outline: 0;
    padding: 0;
    margin: 0;
}

*, *::before, *::after {
    box-sizing: border-box;
  }

html {
  scroll-behavior: smooth;
}

p, h1, h2, h3, h4, h5, h6 {
  margin: 0;
}

:root {
  --body: #272726;
  --grigio: #272726;
  --grigio-chiaro: #F2F2F2;
  --rosso: #B12D27;
  --bianco: #FFFFFF;
  --bordeaux: #6E141B;
  --arancio: #E6372A;
  --giallino: #F3E8CE;
  --spaziatura: 0.15625rem;
  --font-serif: "linotype-didot", serif;
  --font-bastoni: "montserrat", sans-serif;
}

/* TIPOGRAFIA ED ELEMENTI GLOBALI */

body  {
  font-family: "montserrat", sans-serif;
  font-weight: 300;
  font-size: 1.2em;
  color: var(--body);
}

h1  {
  font-family: "linotype-didot", serif;
  font-weight: bold;
  font-size: 2em;
  color: var(--body);
  line-height: 1.25em;
}

h2  {
  font-family: "linotype-didot", serif;
  font-weight: bold;
  font-size: 2em;
  color: var(--rosso);
  /*letter-spacing: 0.15625rem;*/
  line-height: 1.25em;
}

h3  {
  font-family: "montserrat", sans-serif;
  font-weight: 300;
  font-size: 1.1em;
  color: var(--grigio);
  line-height: 1.25em;
}

h4 {
  font-family: "montserrat", sans-serif;
  font-weight: 500;
  font-size: 2.5em;
  color: var(--body);
}

h5 {
  font-family: "montserrat", sans-serif;
  font-weight: 400;
  font-size: 1.3em;
  color: var(--body);
  line-height: 1.25em;
}

a {
  text-decoration: none;
}

.grassetto {
  font-size: 90%;
  font-weight: 700;
  text-transform: uppercase;
}

.font-weight-bold {
  font-weight: 700!important;
  color: var(--grigio)!important;
}

span.font-weight-bold-rosso {
  font-weight: 700!important;
}

/* PADDING - MARGINI */
.pd-top-200 {
  padding-top: 200px;
}

.pd-top-100 {
  padding-top: 100px;
}

.pd-top-50 {
  padding-top: 50px;
}

.pd-top-25 {
  padding-top: 25px;
}

.pd-top-10 {
  padding-top: 10px;
}

.pd-top-btm-100 {
  padding: 100px 0;
}

.pd-btm-50 {
  padding-bottom: 50px;
}

.pd-btm-25 {
  padding-bottom: 25px;
}

.pd-btm-10 {
  padding-bottom: 10px;
}

.mg-top-100 {
  margin-top: 100px;
}


/* ------------------------------------------------ CTA ------------------------------------------------ */

a.cta-ancora {
  display: block;
  width: 100%;
  padding: 15px 25px;
  color: var(--bianco);
  background: #32842e;
  font-family: "montserrat", sans-serif;
  text-transform: uppercase;
  font-size: 1.15em;
  text-align: center;
  font-weight: 600;
  transition: all .5s cubic-bezier(.215, .61, .355, 1);
}

a.cta-ancora:hover {
  background: #983838;
}

a.cta-me {
  font-family: "montserrat", sans-serif;
  text-transform: uppercase;
  font-weight: 600;
  background: var(--bordeaux);
  padding: 15px 25px;
  font-size: 20px;
}

a.cta-me.realizzazioni {
  font-family: "montserrat", sans-serif;
  text-transform: uppercase;
  font-weight: 600;
  background: var(--bordeaux);
  padding: 15px 25px;
  font-size: 20px;
  color: white;
  transition: all .3s cubic-bezier(.215, .61, .355, 1);
}

a.cta-me.realizzazioni:hover {
  background: var(--rosso);
}



/* ------------------------------------------------ HOME PAGE ------------------------------------------------ */

#hero {
  position: relative;
  height: 100%;
  display: flex;
  align-items: end;
}

#hero .container.index {
  position: relative;
  z-index: 1;
}

#hero .intro-form {
  position: relative;
  bottom: 153px;
  left: -539px;
  padding: 25px;
  background-color: var(--bianco);
}

#hero h1 {
  color: var(--rosso);
}

#hero h2 {
  font-size: 3em;
  font-family: "linotype-didot", serif;
  font-weight: 600;
  color: var(--rosso);
  line-height: 1.17em;
}

#hero h3 {
  color: var(--grigio);
}

#hero .divisore {
  display: block;
  width: 100%;
  border-top: solid 1px var(--body);
  margin: 25px 0;
}

#hero .cont-form {
  background-color: var(--rosso);
  padding: 25px;
  position: fixed;
  width: 540px;
  z-index: 9999;
  bottom: 0;
}
#hero .cont-form h2 {
  font-weight: 600;
  color: var(--bianco);
  font-size: 1.2em;
  padding-bottom: 25px;
}

.cont-video {
  width: 100%;
  height: 100vh;
}

#videoHero {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

form .form-control {
  border-radius: 0;
  border: none;
  color: var(--body);
  font-family: "montserrat", sans-serif;
  font-style: italic;
  font-weight: 600;
  padding: 30px 15px 27px;
  margin-bottom: 30px;
}

form label {
  display: inline;
}

form label small {
  font-size: .7em;
  font-family: "montserrat", sans-serif;
  color: var(--bianco);
}

form .invia {
  display: block;
  width: 100%;
  height: 100%;
  margin-top: 25px;
  text-align: center;
  text-transform: uppercase;
  font-weight: 600;
  font-size: 1em;
  font-family: "montserrat", sans-serif;
  background-color: var(--bordeaux);
  color: var(--bianco);
  padding: 15px 0;
  transition: all .3s cubic-bezier(.215, .61, .355, 1);
}

form .invia:hover {
  background-color: var(--bianco);
  color: var(--bordeaux);
}

#affiancare {
  margin-top: 100px;
}

#affiancare h2 {
  font-size: 2.5em;
  padding-bottom: 25px;
}

#affiancare .container-fluid {
  padding-left: 0;
  padding-right: 0;
  padding-top: 60px;
}

#affiancare .container-fluid img {
  width: 100%;
}

#controlloLuceNaturale {
  position: relative;
  padding-bottom: 100px;
}

#controlloLuceNaturale .container-fluid {
  background-color: var(--grigio-chiaro);
  height: 750px;
  padding-top: 100px;
}

#controlloLuceNaturale h2 {
  padding-bottom: 35px;
}

#controlloLuceNaturale ul {
  list-style: square;
  color: var(--body);
  font-size: 1.2em;
  font-family: "montserrat", sans-serif;
  padding-left: 25px;
}

#controlloLuceNaturale .container.no-bcg h2 {
  padding-top: 75px;
}

#controlloLuceNaturale .container.cont-pd {
  padding-top: 200px;
}

#controlloLuceNaturale .col-12.col-md-5.offset-md-2 {
  padding: 0;
}

#controlloLuceNaturale .col-12.col-md-4.offset-md-2 img {
  padding-top: 50px;
}

#benefici {
  padding: 150px 0;
  background-image: url(../img/BCG_Bonus.webp);
  background-repeat: no-repeat;
  background-size: cover;
  height: 100%;
}

/*
#benefici a.collapsed {
  width: 100%;
  display: flex;
  justify-content: space-between;
}

#benefici a.collapsed:hover {
  text-decoration: none;
}
*/

#benefici h2 {
  color: var(--rosso);
  font-size: 2.5em;
  margin-bottom: 100px;
  background: var(--bianco);
  padding: 15px 25px;
  width: fit-content;
}

#benefici .tog {
  padding: 15px;
  background: var(--bordeaux);
  margin-bottom: 35px;
  width: 400px;
}

#benefici .tit-tog a {
  display: flex;
  justify-content: space-between;
  text-decoration: none;
}

#benefici .tog h4 {
  font-size: 1em;
  color: var(--bianco);
  font-weight: 300;
  text-transform: uppercase;
  color: var(--giallino);
}

#benefici .tog p {
  color: var(--bianco);
  font-size: .85em;
}

img.apri-tog {
  width: 4%;
}

#notaBene {
  padding: 15px 0;
  background: var(--rosso);
}

#notaBene p {
  color: var(--bianco);
}

#notaBene span.font-weight-bold {
  color: var(--bianco)!important;
}

#fissaAppuntamento {
  padding: 50px 0 100px;
  text-align: center;
  background: var(--bordeaux);
}

#fissaAppuntamento h2 {
  text-transform: uppercase;
  color: var(--giallino);
  font-size: 2.5em;
}

#fissaAppuntamento h3 {
  color: var(--grigio-chiaro);
}

#fissaAppuntamento p {
  color: var(--bianco);
}

#fissaAppuntamento h4 {
  font-size: 1.3em;
  font-weight: 400;
  color: var(--grigio-chiaro);
  width: 85%;
  margin: 0 auto;
}

#fissaAppuntamento span.divisore {
  display: block;
  width: 100%;
  border-top: solid 1px var(--grigio-chiaro);
  margin: 25px 0;
}

#idrocentro {
  background: var(--grigio-chiaro);
  background-size: 125%;
  background-repeat: no-repeat;
  background-position-x: 550px;
  background-position-y: 1450px;
  background-blend-mode: multiply;
  padding-bottom: 100px;
}

#idrocentro .tit-esempio img.img-fluid {
  width: 250px;
}

#idrocentro .container.sede ul {
  list-style: square;
  color: var(--body);
  font-size: 1.2em;
  font-family: "montserrat", sans-serif;
  padding-left: 25px;
}

#idrocentro .container.sede li {
  padding-bottom: 25px;
}

#idrocentro .container.sede {
  background-image: url(../img/IMG_02.webp);
  background-repeat: no-repeat;
  background-size: 65%;
  background-position-x: right;
  background-position-y: bottom;
  margin-bottom: 100px;
}

#idrocentro .container .col-12.col-md-5 {
  background-color: var(--bianco);
  padding: 50px 50px 25px;
  position: relative;
  top: -50px;
}

#idrocentro span.divisore {
  display: block;
  width: 100%;
  border-top: solid 1px var(--body);
  margin: 25px 0;
}

#idrocentro .container.ristrutturare {
  border: solid 1px var(--body);
  padding: 50px;
  background: var(--bianco);
  margin-top: 100px;
}

#idrocentro .container.ristrutturare h2 {
  font-size: 1.5em;
}

#idrocentro .container.ristrutturare h3 {
  padding: 25px 0;
  font-size: 1.1em;
}

#idrocentro .container.ristrutturare h4 {
  font-family: var(--font-serif);
  text-transform: uppercase;
}

.container.regali .col-6 {
  padding: 50px;
  background-color: var(--bordeaux);
}

.container.regali .col-6.no-bcg {
  padding: 0;
  background-color: transparent;
}

.container.regali .col-6.no-bcg img {
  float: right;
  padding-right: 0;
  padding-bottom: 0;
}

.container.regali .col-6 img {
  float: left;
  padding-right: 25px;
  padding-bottom: 135px;
}

.container.regali .col-6 h2 {
  color: var(--giallino);
}

.container.regali .col-6 h4 {
  font-size: 1em;
  color: var(--giallino);
  text-transform: uppercase;
  font-weight: 600;
}

.container.regali .col-6 span.divisore {
  width: 85%!important;
  float: right;
  border-top: solid 1px var(--giallino)!important;
}

.container.regali .col-6 p {
  color: var(--giallino);
  font-size: .85em;
}

.container.regali .cont-numeri {
  padding-top: 50px;
}

.tit-esempio {
  display: flex;
  justify-content: space-between;
  padding-bottom: 50px;
}

.tit-esempio img {
  width: 200px;
}

.tit-esempio h4 {
  color: var(--rosso)!important;
  font-weight: 500!important;
  font-size: 2.5em!important;
}

.cont-esempio {
  display: flex;
  justify-content: space-between;
}

#idrocentro .container.disclaimer {
  padding-top: 25px;
  padding-left: 0px;
  padding-right: 0;
}

#idrocentro .container.pv .col-12.col-md-5 {
  background-color: transparent;
  padding: 0;
}

#idrocentro .container.pv {
  padding: 150px 0 0;
}

#idrocentro .container.pv h2 {
  padding: 50px 0 35px;
}

#idrocentro .container.pv h2.rosso {
  color: var(--rosso);
}

#idrocentro .container.dove h2 {
  padding-bottom: 35px;
}

#idrocentro .container.dove p.tit-dove {
  font-size: 1.3em;
  padding-bottom: 15px;
  font-weight: 600!important;
}

#idrocentro .container.dove ul {
  list-style: square;
  color: var(--body);
  font-size: 1em;
  font-family: "montserrat", sans-serif;
  padding-left: 25px;
}

#idrocentro .container.dove li span.font-weight-bold {
  font-weight: 600!important;
}

#idrocentro .col-12.col-md-6.pd-top {
  padding-top: 75px;
  padding-left: 50px;
}

#idrocentro .container.slider {
  padding-top: 100px;
}

#idrocentro .container.slider h2 {
  padding-bottom: 35px;
}

#idrocentro .container.slider .cont-slider {
  background-color: var(--bianco);
  padding: 25px;
  height: 100%;
}

#idrocentro .container.slider .cont-slider img.virgolette {
  width: 25px;
}

#idrocentro .container.slider .cont-slider p.tit-slide {
  font-size: 1.3em;
  font-style: italic;
  font-weight: 600;
  padding: 15px 0;
  color: var(--rosso);
}

#idrocentro .row .col-12.scroll {
  padding: 0;
}

#idrocentro .swiper-scrollbar {
  position: relative;
  left: 0;
  bottom: 0;
  z-index: 50;
  height: 1px;
  width: 100%;
  top: 25px;
  background: var(--body);
}

#idrocentro .swiper-scrollbar-drag {
  height: 7px;
  border-radius: 0;
  background: var(--body);
  top: -3px;
  left: 125px;
  max-width: 200px;
}

#parlaEsperti {
  padding: 65px 0;
  background-color: var(--rosso);
}

#parlaEsperti h2 {
  color: var(--giallino);
  padding-bottom: 35px;
  font-size: 2.5em;
}

#parlaEsperti span.divisore {
  display: block;
  width: 100%;
  border-top: solid 1px var(--bianco);
  margin: 25px 0;
}

.col-md-5.offset-md-1 {
  position: relative;
  top: -100px;
  padding-right: 0;
  padding-left: 0;
}

.box-rec {
  background: var(--bianco);
  padding: 50px;
  border: solid 1px var(--grigio);
  margin-bottom: 75px;
}

#faq {
  padding: 100px 0;
}

#faq h2 {
  text-transform: uppercase;
  color: var(--rosso);
  padding-bottom: 25px;
  font-size: 2.5em;
}

#faq .tog-faq {
  padding-bottom: 15px;
  border-bottom: solid 1px var(--rosso);
  margin-bottom: 15px;
}

#faq .tit-tog-faq h3 {
  font-size: 1em;
  text-transform: uppercase;
  font-weight: 600;
  color: #7b7b7b;
}

#faq .tog-faq p {
  font-size: .85em;
}

a:hover {
  text-decoration: none;
}



footer {
  padding: 15px 0;
}

footer h2 {
  font-size: 1.5em;
}

footer p {
  color: var(--bianco);
  font-size: .85em;
}

footer p.note-legali {
  font-size: .7em;
}

footer a {
  color: var(--bianco);
  transition: all .3s cubic-bezier(.215, .61, .355, 1);
}
footer a:hover {
  color: var(--bianco);
}

footer p.font-italic {
  padding-bottom: 50px;
}

.cont-form-footer {
  background-color: var(--rosso);

}

#typ footer{
  position: fixed;
  bottom: 0;
  text-align: center;
  padding: 15px 0;
}

#typ .col-12.grazie {
  padding-top: 100px;
  text-align: center;
}

#typ h1 {
  text-transform: uppercase;
  font-size: 9em;
  color: var(--rosso);
  padding-bottom: 100px;
}

#typ h2 {
  padding-bottom: 100px;
  color: var(--grigio);
}

#typ a.cta-std {
  background-color: var(--rosso);
  color: var(--bianco);
  font-family: "montserrat", sans-serif;
  font-size: 1.2em;
  letter-spacing: .1em;
  text-transform: uppercase;
  font-weight: 700;
  width: 25%;
  display: block;
  margin: 0 auto;
  text-align: center;
  padding: 15px 0;
  line-height: 1em;
  transition: all .3s cubic-bezier(.215, .61, .355, 1);
}

#typ a.cta-std:hover {
  background-color: var(--bordeaux);
  text-decoration: none;
}
