@font-face {
  font-family: "Avenir";
  src: url("../font/Avenir.ttc");
}
body {
	background: #E6E6E6;
	font-family: "Avenir";
}
#signature img {
    display: none!important;
}
form small {
    display: block;
    font-size: 14px;
    line-height: 19px;
    margin-bottom: 10px;
    text-align:justify;
}
.new {
    padding: 10px 15px;
    text-transform: lowercase;
    color: white;
    font-weight: 700;
    background: #be1f30;
    border: 0;
    margin: 20px 0;
    font-size: 21px;
    text-align: left;
    border: 1px solid #be1f30;
}
.new:hover {
    color: #be1f30;
    background: white;
    text-decoration: none;
}
.errore_login {
    display: none;
    color: #be1f30;
    font-size: 15px;
    line-height: 22px;
}
label#privacy1-error,
label#privacy2-error,
label#privacy_terzi-error {
    bottom: 0;
    top: unset;
}
.logo {
    margin: 100px 0;
}
h1 {
	color:black;
	font-size: 36px;
	line-height: 41px;
    margin: 0 auto 100px 0;
}
h2 {
	color:black;
	font-size: 25px;
	line-height: 30px;
	font-weight: 700;
}
label {
	font-size: 24px;
	line-height: 29px;
	color:#be1f30;
	text-transform: lowercase;
    display: initial;
}
label.error {
    position: absolute;
    top: 0;
    right: 19px;
}
#login .form-control {
    top:0;
}
.text-left {
    text-align: left!important;
}
.firma_vuota {
    display: none;
    position: absolute;
    top: 0;
    right: 19px;
    color: #be1f30;
    font-size: 15px;
    line-height: 22px;
    font-weight: 700;
}
img {margin:0 auto;}
html.touch #scrollgrabber {
		float:right;
		width:4%;
		background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAFCAAAAACh79lDAAAAAXNSR0IArs4c6QAAABJJREFUCB1jmMmQxjCT4T/DfwAPLgOXlrt3IwAAAABJRU5ErkJggg==)
	}

input[type=submit] {
	padding: 10px 15px;
    text-transform: lowercase;
    color: white;
    font-weight: 700;
    background: #be1f30;
    border: 0;
    margin: 20px 0;
    font-size: 21px;
    text-align: left;
    border: 1px solid #be1f30;
}
input[type=submit]:hover {
   color: #be1f30;
   background:white; 
}
.form-control {
	border: 0;
    outline: 0;
    border-bottom: 2px solid #BBBBBB;
    background: transparent;
    box-shadow: none;
    border-radius: 0;
    font-size: 20px;
    position: relative;
    top: -21px;
    margin: 8px 0;
    padding: 0;
}
.form-group {
	text-align: right;
}
.form-control:focus {
	border-color:#BBBBBB;
	box-shadow:none;
}
@-webkit-keyframes autofill {
    to {
        color: black;
        background: transparent;
    }
}
input:-webkit-autofill {
    -webkit-animation-name: autofill;
    -webkit-animation-fill-mode: both;
}
input[type='radio'] {
    margin: 4px 9px 0;
    width: 20px;
    height: 20px;
    top: 5px;
    position: relative;
    cursor: pointer;
}
input[type='radio']:after {
    width: 20px;
    height: 20px;
    border-radius: 15px;
    top: -2px;
    left: -1px;
    position: relative;
    background-color: white;
    content: '';
    display: inline-block;
    visibility: visible;
    border: 2px solid #be1f30;
}
input[type='radio']:checked:after {
    width: 20px;
    height: 20px;
    border-radius: 15px;
    top: -2px;
    left: -1px;
    position: relative;
    background-color: #be1f30;
    content: '';
    display: inline-block;
    visibility: visible;
    border: 2px solid #be1f30;
}
@media screen and (min-width:993px) {
    .form-group {
    margin-bottom: 15px;
    text-align: left!important;
    width: 100%;
    }
    .form-control {
        top:0;
    }
    label {
        font-size: 22px;
        line-height: 29px;
    }

}
@media screen and (max-width: 992px) { 
	label {
		font-size: 17px;
    	line-height: 23px;
	}
	label.error {
	    position: absolute;
	    top: 0;
	    right: 19px;
	    color: #be1f30;
	    font-size: 15px;
	    line-height: 22px;
	}
}
@media screen and (max-width: 768px) { 
	label {
		font-size: 21px;
    	line-height: 25px;
	}
	canvas {
		max-width:480px;
	}
    .logo {
    margin: 70px 0;
    }
    h1 {
    margin: 0 auto 70px 0;
    }
    .col-md-2.col-sm-3.form-group {
        text-align: left;
    }
    .form-control {
        top:0;
    }
}
@media screen and (max-width: 480px) {
	label.error {
	    position: relative;
	    left: 0;
	    top: 100%;
	    color: #be1f30;
	    font-size: 15px;
	    line-height: 22px;
	    top: 9px;
	}
    .form-control {
        top:0;
    }
    .form-group {
        text-align: left;
    }
    h1 {
        margin-bottom: 20%;
    }
}
@media screen and (max-width: 320px) {
    input[type='radio'] {
        display: -webkit-box;
        margin-bottom: 10px;
    }
}
