/*********************************************
  Vars
*********************************************/
:root {

  --lightblue: #40BAEC;


  /* from mockup */
  --blue: #108AB1;
  --green: #179379;
  --yellow: #FFD25E;

  /* ------------- */
  --white: #ffffff;
  --black: #000000;

  --grey: #666666;
  --grey_light: #ededed;
  --grey_dark: #333333;


  --border-radius: 3rem;
}

/*********************************************
  General
*********************************************/
*{
  scroll-padding-top: 100px;
}

body{
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 19px;
  line-height: 1.4;
  position: relative;
}

a,
.nav-link {
  color: var(--red);
}


a:hover,
.nav-link:hover {
  color: var(--blue);
}

footer a:hover {
  color: var(--white);
}


img{
  display: inline-block;
  max-width: 100%;
  width: 100%;
  height: auto;
}

h1{
  font-size: 2.4rem;
  line-height: 3.0rem;
  font-weight: 700;
  color: var(--green);
  text-transform: uppercase;
}


h2{
  font-size: 1.8rem;
  line-height: 2.4rem;
  font-weight: 700;
  margin-bottom: 2rem;
  text-transform: uppercase;
}

h3{
  font-size: 1.4rem;
  line-height: 2.0rem;
  margin-bottom: 2rem;
}


@media (min-width: 992px) {
  h1{
    font-size: 5rem;
    line-height: 1.2;
    font-weight: 900;
    margin-bottom: 2rem;
  }


  .title h2{
    font-size: 5rem;
    line-height: 0.9;
    font-weight: 900;
    margin-bottom: 2rem;
  }

  h3{
    font-size: 1.8rem;
    line-height: 1.4;
    margin-bottom: 1rem;
  }


}


.issticky {
  display: block;
  position: sticky;
  top: 10rem;
}

.btn {

}

.btn.webformPostMeNow,
.btn-primary{
  font-weight: bold;
  padding: 0.75rem 2rem;
  border-radius: 0px;
  color: var(--white);
  background-color: var(--green);
  border: 4px solid var(--white);
  border-radius: 2rem;
  transition: all 0.3s linear;
  font-size: 1.1rem;
  text-transform: uppercase;
}

.btn.webformPostMeNow{
  background-color: var(--white);
  border: 4px solid var(--green);
  color: var(--green);
  width: 100%;
  margin-top: 1rem;
}


.btn-primary:active,
.btn-primary:hover {
  color: var(--green);
  background-color: var(--white);
  border: 4px solid var(--white);
}

.btn.webformPostMeNow:active,
.btn.webformPostMeNow:hover{
  background-color: var(--green);
  border: 4px solid var(--green);
  color: var(--white);
}


div.cta {
  margin: 3rem 0 1rem;
}

.public-form input{
  border-radius: 1rem;
  padding: 1rem;
}

.col-form-label{
  padding-left: 2.5rem;
  text-transform: uppercase;
  font-size: 0.9rem;
}



/*********************************************
  Header
*********************************************/


 img.faqicon{
  height: 50px;
  width: auto;
}

img.logo_wmi{
  width: 157px;
  height: 40px;
}

 img.faqicon {
   height: 70px;
   margin-bottom: 2rem;
 }

header{
  /*border-bottom: 5px solid var(--red);*/
  padding-bottom: 1rem;
  background-color: var(--white);
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 10;

  -webkit-box-shadow: 0px 0px 15px 0px #000000;
  box-shadow: 0px 0px 15px 0px #000000;

}

.container{

}

header li.nav-item{
  margin: 0rem 1rem;
}

header .navbar-expand-lg .navbar-nav .nav-link{
  font-weight: bold;
  padding: 0.5rem 1.5rem;
  border-radius: 2rem;
}

header .nav-link{
font-size: 1.2rem;
}

header .mobile_right{

    display: flex;
    justify-content: space-between;
}

header .contatti_mobile .nav-link{
  color: var(--red);
  background-color: var(--white);
  border: 2px solid var(--red);
  display: inline-block;
}

header .contatti_mobile .nav-link:hover{
  color: var(--white);
  background-color: var(--red);
}

.navbar-collapse .navbar-nav{
  padding: 2rem 1rem;
}


.navbar-toggler{
  border: 2px solid var(--red);
  border-radius: 0px;
  padding: 0.2rem 0.5rem;
}

.navbar-toggler svg{
  width: 100%;

  fill: var(--red);
  margin-top: -2px;
}


/*********************************************
  Footer
*********************************************/
footer{
  background-color: var(--green);
  padding: 0 2rem 2rem;
  color: var(--white);
  margin-top: -5rem;
  padding-top: 7rem;
  z-index: -1;

  font-size: 0.9rem;
  line-height: 1.4;
}

.logo_footer{
  padding-right: 2rem;
}

footer a {
    color: var(--white);
    font-weight: bold;
}

.footer_box{

}


.txt_wrapper{
  height: 100%;
}



/*********************************************
  Content
*********************************************/
#main_content{
  margin: auto;
  margin-top: 8rem;
}
/* pagina 20 anni */
.content-form .wrapper_form {
    padding: 1rem;
    border-radius: 2rem;
    box-shadow: 0px 0px 20px 0px #000000;
    color: var(--green);
}

.block_wiki20 {
  margin: 5rem auto;
  margin-top: 7rem;

}

#voce2,
#voce3 {
  position: relative;
}

.greenbg{
  position: absolute;
  top: 0;
  left: 0;
  background-color: var(--green);
  width: 100%;
  height: 100%;
  top: 0%;
  z-index: -1;
}

#middleimage{
  height: 50vh;
}

.col-img20{
  height: 100%;
  background-image: url(/img/immagine_wikimedia_02_small.png);
  background-size: 90% auto;
  background-repeat: no-repeat;
  background-position: 0 center;
  margin-top: -3rem;
}

#middleimage img{
  height: 100%;
  width: auto;
}


#voce2 .info_wiki20 {
    display: flex;
    flex-direction: row;
    align-items: center;
    width: 100%;
    font-size: 100%;
}


#voce2 .col-txt20 {
    padding: 3rem;
    color: var(--white);
    margin-top: -6rem;
    padding-top: 10rem;
}


.yellowcircle{
  display: none;
  width: 20vh;
  height: 20vh;
  border: 1px solid red;
  position: absolute;
  background-image: url(/img/cerchio.png);
  background-size: 100% 100%;
  z-index: 1;
  border-radius: 30vh;
  border: 4px solid yellow;
}

.yellowcircle_top{
  top: -10vh;
}

.yellowcircle_bottom{
  right: 0;
  bottom: -10vh;
}


section{
  margin-bottom: 2rem;
  padding: 2rem 0rem;
}
/* form */

.form-item {
    display: flex;
    flex-direction: row;
    align-content: flex-start;
    align-items: center;
    margin-bottom: 0.5rem;
    flex-wrap: wrap;
}

.form-item label{
  display: none;
  width: 20%;
}

.form-item input{
  color: var(--green);
  border-color: var(--green);
  margin: 0.5rem 0;
  border-radius: 0.75rem;
  border-top: 2px solid var(--blue);
  border-left: 2px solid var(--blue);
  padding: 0.5rem 1rem;
  width: 100%;
}

.form-item .error{
  width: 100%;
  text-align: right;
  margin-right: 2rem;
  display: none;
  color: var(--blue);
}

.checkboxitem{
  display: flex;
  flex-direction: row-reverse;
}

.form-item .checkboxitem label{
  display: inline-block;
  width: 80%;
  font-size: 0.8rem;
  margin-left: 1rem;
}


.form-item.checkbox {
  display: flex;
  flex-direction: row;
  align-content: flex-start;
  align-items: center;
  margin-bottom: 0.5rem;
  flex-wrap: no-wrap;
}


.form-item input[type=checkbox] {
    width: 2rem;

}



@media (min-width: 400px) {

  .col-img20 {
    background-size: 80% auto;
  }

}


@media (min-width: 500px) {
  .col-img20 {
    background-size: 70% auto;
  }
}


@media (min-width: 600px) {
  .col-img20 {
    background-size: 63% auto;
  }
}

@media (min-width: 700px) {
  .col-img20 {
    background-size: 58% auto;
  }
}

@media (min-width: 800px) {
  .col-img20 {
    background-size: 50% auto;
  }
}

@media (min-width: 800px) {
  .col-img20 {
    background-size: 45% auto;
  }
}


@media (min-width: 992px) {


  #main_content{
    margin-top: 10rem;
  }

  section {
    margin-bottom: 5rem;
  }

  .paddingbox {
    padding: 3rem;
  }

  .navbar-collapse .navbar-nav{
    padding: 0;
  }

  header li.nav-item{
    margin: 0rem 0.8rem;
  }

  header .navbar-expand-lg .navbar-nav .nav-link{
    padding: 0.4rem 0.8rem;
  }

  header a.nav-link{
    color: var(--black);
    background-color: transparent;
    font-size: 1.0rem;
    text-transform: uppercase;
    letter-spacing: 2px;
    transition: all 0.3s linear;
  }
  header a.nav-link::after{
    content: '';
    display: block;
    width: 0;
    height: 5px;
    margin: auto;
    margin-top: 0.2rem;
    background-color: var(--yellow);
    transition: 0.3s linear all;
  }

  header a.nav-link:hover:after {
      width: 100%;
      color: var(--green);
  }



  header .nav-link.contatti{
    color: var(--red);
    background-color: var(--white);
    border: 2px solid var(--red);
  }



  header .nav-link:hover{
    /* color: var(--red);
    background-color: var(--white);
    border: 2px solid var(--red); */
  }

  header .nav-link.contatti:hover{
    color: var(--white);
    background-color: var(--red);
    border: 2px solid var(--red);
  }

  .navbar-expand-lg .navbar-collapse {
      display: flex !important;
      flex-basis: auto;
      flex-direction: row-reverse;
  }


  .btn.webformPostMeNow{
    width: auto;
  }



  #voce2 .col-txt20 {
      height: 100%;
  }

  .block_wiki20 {
        margin: 5rem auto;
  }

  .greenbg{
    width: 100%;
    height: 70%;
    top: 15%;
  }

  #middleimage{
    height: 90vh;
  }

  .col-img20 {
    margin-top: 0rem;
    margin-bottom: 0rem;
    background-size: 85% auto;
  }

  .content-form .wrapper_form {
      padding: 2rem;
  }

  .form-item label{
    display: block;
    min-width: 6rem;
  }

  .form-item input{
    width: 75%;
  }

  .checkboxitem{
    margin-left: 4rem;
  }

  input {
    margin: 0.5rem;
  }

  .yellowcircle{
    width: 25vh;
    height: 25vh;
  }

  .yellowcircle_top{
    top: 0vh;
  }

  .yellowcircle_bottom{
    bottom: 0vh;
  }

}


@media (min-width: 1200px) {

  img.logo_wmi{
    width: 235px;
    height: 60px;
  }

  .col-img20 {
    background-size: 90% auto;
  }


  #voce2 .info_wiki20 {
      font-size: 130%;
  }

  .yellowcircle{
    display: none;
    width: 30vh;
    height: 30vh;
  }
}


@media (min-width: 1400px) {

  header .navbar-expand-lg .navbar-nav .nav-link{
    font-weight: bold;
    padding: 0.5rem 1.5rem;
    border-radius: 2rem;
  }

  header li.nav-item{
    margin: 0rem 1rem;
  }

    header .nav-link{
    font-size: 1.2rem;
  }

  .yellowcircle_top{
    top: -10vh;
  }

  .yellowcircle_bottom{
    bottom: -10vh;
  }
}













/* HTML: <div class="loader"></div> */
/* HTML: <div class="loader"></div> */
.loader {
  width: 80px;
  margin: auto;
  margin-top: 3rem;
  margin-bottom: 3rem;
  aspect-ratio: 2;
  --_g: no-repeat radial-gradient(circle closest-side,#179379 90%,#0000);
  background:
    var(--_g) 0%   50%,
    var(--_g) 50%  50%,
    var(--_g) 100% 50%;
  background-size: calc(100%/3) 50%;
  animation: l3 1s infinite linear;
}
@keyframes l3 {
    20%{background-position:0%   0%, 50%  50%,100%  50%}
    40%{background-position:0% 100%, 50%   0%,100%  50%}
    60%{background-position:0%  50%, 50% 100%,100%   0%}
    80%{background-position:0%  50%, 50%  50%,100% 100%}
}
