body,html
{
      font-family: "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif; 
      font-weight: 400;
      overflow-x: hidden;
        
}
header
{
      padding: 40px 0px;;
      background-color: #f20090;
}
p
{
      font-family: 'Roboto', sans-serif;
      line-height: 30px;
      font-size: 0.9rem;
}
.bold
{
      font-weight: bold !important
}
.position-relative
{
      position: relative;
}
.bg-color-1
{
      background-color: #f20090
}
.bg-color-2
{
      background-color:#c50b68 
}
.bg-color-white
{
      background-color: #fff;
}
.font-hack
{
      font-family: 'Helvetica' !important;
}
#loading
{
      background-color: #f20090;
      position: fixed;
      left: 0;
      top: 0;
      z-index: 9999999;
      width: 100vw;
      height: 100vh;
}
#loading.out
{
    height: 0;
    transition: height 500ms ease-in-out;
}
#logo-main
{
      width: 180px;
      margin: auto;
}
nav
{
      margin: 0;
      padding: 0;
}
li
{
      text-decoration: none;
      list-style: none;
}
#nav a
{
      display: block;
      text-align: center;
      background-color: #c50b68;
      color: #fff;
      text-decoration: none;
      text-transform: uppercase;
      font-size: 0.9rem;
      letter-spacing: 1px;
      transition: background-color 300ms ease-in-out, color 300ms ease-in-out;
      padding: 6px 0px;
}
#nav a:hover
{
      background-color: #fff;
      color: #c50b68;
      transition: background-color 300ms ease-in-out, color 300ms ease-in-out
}
#nav a.active
{
      background-color: #fff;
      color: #000;
      padding: 12px 0px
}
#nav li
{
      margin: 8px 0px;
}
.link-default
{
      color: #333;
      text-decoration: underline;
}
.link-default:hover
{
      color: #f20090;
}
.container-box-link-main
{
      padding: 10px;
      margin-bottom: 20px;
      height: 380px;
}
.container-box-link-main.partners
{
      height: 370px;
}
.box-link-main
{
      font-family: 'Roboto', sans-serif;
      font-size: 0.9rem;
      line-height: 25px;
      padding: 20px;
      height: 100%;
}
.box-link-main img
{
    position: absolute;
    width: calc(100% - 60px);
    bottom: 30px;
    height: 150px;
    object-fit: cover;
    object-position: bottom;
    box-shadow: 1px 0px 4px rgba(0,0,0,0.5);
    
}
.box-link-main img.partners
{
    position: relative;
    object-fit: cover;
    object-position: bottom;
    width: 100%;
    bottom: 0;
    margin-bottom: 20px;
    box-shadow: 1px 0px 4px rgba(0,0,0,0.5);
    
}
.box-link-main img.img-cosa-offriamo
{
    object-position: top;
}

.box-link-main h3
{
      font-size: 1.2rem;
      margin-bottom: 20px;
      color: #f20090
}
.box-link-main h3.partners
{
      display: none;
}
.box-link-main p
{
      font-family: 'Roboto', sans-serif;
      margin-bottom: 20px;
      color: #f20090;
      line-height: 25px;

}
.box-link-main.dark p,.box-link-main.dark h3
{
      color: #fff;

}
.box-link-main a
{
      background-color: #fff;
      opacity: 0;
      position: absolute;
      width: 100%;
      height: 100%;
      left: 0;
      top: 0;
      transition: opacity 300ms ease-in-out;
      z-index: 9;
}
.box-link-main a:hover
{
      opacity: 0.3;
      transition: opacity 300ms ease-in-out
}
.break-bg
{
      height: 300px;
      background-image: url(../../../img/website/ec/puzzle-divisore.jpg);
      background-size: cover;
      background-attachment: fixed;
}
#chi-siamo
{
      padding: 50px 0px;
}

#chi-siamo h2
{
      font-size: 1.8rem;
      color: #f20090;
}
#chi-siamo h3
{
      font-size: 1.3rem;
      color: #f20090;
      text-align: center;
/*      position: absolute;*/
      width: 100%;
      line-height: 30px;
      font-weight: normal;
}
#chi-siamo p
{
    font-size: 0.9rem;
    font-family: 'Roboto', sans-serif;
    line-height: 30px;
    margin-top: 20px;
    color: #555;
}
#chi-siamo p.first
{
   margin-top: 30px;
}
#i-nostri-partner
{
      padding-bottom: 15px;
}
#i-nostri-partner h2
{
      font-size: 1.8rem;
      color: #fff;
      text-align: center;
      margin: 20px 0px 15px 0px;
      text-align: center
}
#contatti
{
      padding-bottom: 50px
}
#contatti h2
{
      font-size: 2.2rem;
      color: #fff;
      text-align: left;
      margin: 50px 0px 15px 0px;
}
#contatti p
{
      color: #fff;
      margin-bottom: 20px
}
#contatti .content
{
      padding: 0px 20px;
      font-family: 'Roboto', sans-serif;
      font-size: 0.9rem;
      color: #fff;
      display: block;
      margin-bottom: 15px;
}
#contatti label, #form label
{
      cursor: pointer;
      display: block;
      margin-bottom: 0px;
      font-family: 'Roboto', sans-serif;
}
#contatti a:visited,#contatti a:link
{
      color: #fff;
}
.input-text
{
      width: 100%;
    background-color: #fff;
    display: block;
    margin-top: 10px;
    border: none;
    height: 40px;
    margin-bottom: 30px;
}
.input-textarea
{
     width: 100%;
    background-color: #fff;
    display: block;
    margin-top: 10px;
    border: none;
    height: 100px;
    margin-bottom: 30px;
}


.input-submit
{
      border-radius: 0;
      padding: 10px 60px;
      background: #c50b68;
      border-color: transparent;
      color: #fff;
      font-size: 0.9rem;
      margin-top: 20px;
      transition: background-color 300ms ease-in-out, color 300ms ease-in-out;
      font-weight: bold;
      display: block;
      -webkit-appearance: none;
      
}
.input-submit:hover
{
      background-color: #fff;
      color: #c50b68;
      transition: background-color 300ms ease-in-out, color 300ms ease-in-out
}
#form a
{
      color: #fff;
}
footer
{
      background-color: #c50b68;
      color: #fff;
      text-align: center;
      padding: 30px 0px;
      
}
footer a
{
      color: #fff;
/*      margin-top: 20px;*/
      display: inline-block;
/*      padding: 0px 20px;*/
      text-decoration: none;
}
footer p
{
    line-height: 24px;
}
#privacy-footer
{
    text-decoration: underline;
    margin-top: 20px;
}
.text-animated
{
      opacity: 0;
      position: absolute;
      width: 100%;
      display: block;
      transition: opacity 600ms  ease-in;
      
}
.text-animated.in
{
      opacity: 1;
      transition: opacity 600ms  ease-in;
      
}
.error-form
{
    position: absolute;
    top: 70px;
    right: 0;
}
.input-error
{
      background-color: red;
      border: 1px solid #fff
}
#btn-nav-mob
{
     position: absolute;
    right: 0px;
    top: 0px;
    background-color: transparent;
    border: none;
    font-size: 2rem;
    color: #fff;
}
#container-nav-mob
{
      position: fixed;
      height: 100vh;
      z-index: 99999;
      background-color: #fff;
      top: 0;
      left: -70vw;
      width: 70vw;
      padding: 50px;
      transition: left 400ms ease
}
#container-nav-mob.active
{
      left: 0;
      transition: left 400ms ease
}
#logo-menu-mob
{
      width: 130px;
}
#container-nav-mob ul
{
      margin-top: 30px;
}
#container-nav-mob a
{
      font-family: 'Roboto', sans-serif;
      margin-top: 10px;
      color: #333;
      text-decoration: none;
      padding: 2px 0px;
      display: inline-block;
}
#container-nav-mob a.active
{
      color: #f20090;
      text-decoration: underline;
}
.mapouter
{
      position:relative;
      text-align:right;
      height:350px;
      width:100%;
}
.gmap_canvas 
{
      overflow:hidden;
      background:none!important;
      height:350px;
      width:100%;
}
#result-send-email
{
      background-color: #f8f8f8;
      color: #000;
      padding: 30px;
      text-align: center;
      position: fixed;
      top: 0;
      left: 0;
      z-index: 9999999;
      width: 100vw;
      box-shadow: 0px 1px 4px #ccc;
}
#list-page-d
{
      margin-top: -50px;
      font-weight: bold;
}
#list-page-d li
{
      padding: 3px 0px;
      color: #f20090
}
#list-page-d.light li
{
      color: #fff
}
.p-build
{
      background-color: #f8f8f8;
      color: #333;
      margin-bottom: 20px;
      padding: 15px 25px;
      width: 100%;
      border: 3px solid hotpink;
      font-size: 1.2rem;
      font-weight: bold;
}
#form label.policy
{
    display: inline-block;
}
@media only screen and (min-width:480px)
{
      .container-box-link-main
      {
            height: 410px;
      }
      .box-link-main img
      {
          height: 200px;
      }
}
@media only screen and (min-width:620px)
{
      .container-content
      {
            padding: 0px 40px;
      }
      #btn-nav-mob
      {
          right: 40px;
          top: 10px
      }
      #btn-nav-mob.btn-header-page
      {
          right: 10px;
          top: 10px
      }
      #logo-menu-mob
      {
            width: 160px
      }
      #container-nav-mob
      {
            padding: 50px 80px
      }
      #i-nostri-partner h2 
      {
            margin: 40px 0px 30px 0px;
      }
      .container-box-link-main.partners
      {
            height: 390px;
      }
      #i-nostri-partner
      {
            padding-bottom: 30px;
      }
}
@media only screen and (min-width:780px)
{
      
}
@media only screen and (min-width:1024px)
{
      #box-home
      {
            padding-bottom: 30px;
      }
      #logo-main
      {
            width: 240px;
            display: block;
      }
      #chi-siamo
      {
             padding: 70px 0px;
      }
      #chi-siamo h2 
      {
            font-size: 2rem;
           
      }
      #chi-siamo h3
      {
            font-size: 1.6rem;
            line-height: 35px;
      }
      #i-nostri-partner h2
      {
            font-size: 2rem;
            margin: 50px 0px 30px 0px;
      }
      #container-nav-large
      {
            padding: 0px 10px;
      }
      #contatti
      {
            padding: 20px 0px;
      }
      #list-page-d
      {
            margin: -40px auto 0px 30px;
      }
}
@media only screen and (min-width:1280px)
{
      header 
      {
            padding: 80px 0px;
      }
      #logo-main
      {
            width: 280px;
            display: block;
      }
      #container-nav-large 
      {
            padding: 0px 0px 0px 10px;
                margin: 0px -5px 0px 5px;
        }
}
@media only screen and (min-width:1460px)
{
      .container-content
      {
            padding: 0;
      }
      #nav
      {
            padding: 0px 10px;
      }
      header
      {
            padding: 100px 0px;
      }
      #logo-main
      {
            width: 300px;
            display: block;
      }
      #chi-siamo
      {
            padding: 90px 0px;
      }
      #chi-siamo h2 
      {
            font-size: 2.1rem
      }
      #chi-siamo h3
      {
            font-size: 1.6rem;
            line-height: 35px;
            margin-top: 10px;
      }
      #i-nostri-partner
      {
            padding-bottom: 50px;
      }
      #i-nostri-partner h2
      {
            font-size: 2.1rem;
            margin: 70px 0px 40px 0px;
      }
      #container-nav-large 
      {
            padding: 0px;
            margin: 0px;
      }
      .mapouter
      {
            height:450px;
      }
      .gmap_canvas 
      {
            height:450px;
      }
      #contatti 
      {
            padding: 40px 0px;
      }
      #box-home
      {
            padding-bottom: 50px;
      }
      #list-page-d
      {
            margin: -30px auto 0px 50px;
      }
      #list-page-d li 
      {
            padding: 4px 0px;
            font-size: 1.1rem;
      }
}
@media only screen and (min-width:1820px)
{
      #chi-siamo
      {
            padding: 100px 0px 100px 0px;
      }
      #i-nostri-partner
      {
            padding: 30px 0px 80px 0px
      }
      #contatti 
      {
            padding: 50px 0px;
      }
      #box-home
      {
            padding-bottom: 70px;
      }
      #i-nostri-partner
      {
            padding-bottom: 70px;
      }
      #i-nostri-partner h2
      {
            margin: 70px 0px 50px 0px;
      }
      #list-page-d
      {
            margin: -30px auto 0px 55px;
      }
      #list-page-d li 
      {
            padding: 4px 0px;
            font-size: 1.2rem;
      }
      .container-box-link-main.partners
      {
            height: 380px;
      }
}















