/*** Framework CSS realizzato da Rondina Michele ***/
/*** Versione 1.0 ***/

* {
	box-sizing:border-box;
}
html, body {
	/*height:100%;*/
}
body {
	background-color:#fff;
	position:relative;
	font-family: 'Poppins', sans-serif;
	font-weight:400;
	color:#222;
	font-size:15px;
	line-height:25px;
}
a, input[type="submit"], button[type="submit"] {
	text-decoration:none;
	transition: all 0.2s linear 0s;
    -moz-transition: all 0.2s linear 0s;
    -webkit-transition: all 0.2s linear 0s;
    -o-transition: all 0.2s linear 0s;
}
section {
	width:100%;
	position:relative;
}
.sezioneGenerica {
	padding:80px 0;
}
.content {
	width:100%;
	max-width:1300px;
	margin:auto;
	padding:0 10px;
}
.contentFull {
	width:96%;
	margin:auto;
}

/*** Contenitori Display Flex ***/
.displayFlex {
	display:flex;
	justify-content: space-between;
	align-items: center;
}
.displayFlexAround {
	display:flex;
	justify-content: space-around;
	align-items: center;
}
.displayFlexStart {
	display:flex;
	justify-content: space-between;
	align-items: start;
}
	.displayFlex .flex10, .displayFlexStart .flex10, .displayFlexAround .flex10 {
		padding:15px;
		width:10%;
	}
	.displayFlex .flex20, .displayFlexStart .flex20, .displayFlexAround .flex20 {
		padding:15px;
		width:20%;
	}
	.displayFlex .flex30, .displayFlexStart .flex30, .displayFlexAround .flex30 {
		padding:15px;
		width:30%;
	}
	.displayFlex .flex33, .displayFlexStart .flex33, .displayFlexAround .flex33 {
		padding:15px;
		width:33%;
	}
	.displayFlex .flex40, .displayFlexStart .flex40, .displayFlexAround .flex40 {
		padding:15px;
		width:40%;
	}
	.displayFlex .flex48, .displayFlexStart .flex48, .displayFlexAround .flex48 {
		padding:15px;
		width:48%;
	}

	.displayFlex .flex50, .displayFlexStart .flex50, .displayFlexAround .flex50 {
		padding:15px;
		width:50%;
	}
	.displayFlex .flex60, .displayFlexStart .flex60, .displayFlexAround .flex60 {
		padding:15px;
		width:60%;
	}
	.displayFlex .flex70, .displayFlexStart .flex70, .displayFlexAround .flex70 {
		padding:15px;
		width:70%;
	}
	.displayFlex .flex80, .displayFlexStart .flex80, .displayFlexAround .flex80 {
		padding:15px;
		width:80%;
	}
	.displayFlex .flex90, .displayFlexStart .flex90, .displayFlexAround .flex90 {
		padding:15px;
		width:90%;
	}

/*** Contenitori Form ***/
.formGroup {
    float: left;
    padding: 0 5px;
	position:relative;
	margin-bottom:25px;
}
	.formGroup label, .formGroup100 label {
        display: block;
        font-weight: 500;
        font-size: 13px;
		line-height:18px;
		color:#444;
    }
.formGroup100 {
    width: 100%;
	position:relative;
	margin-bottom:10px;
	padding: 0 5px;
}
.formGroup90 {
    width: 90%;
}
.formGroup80 {
    width: 80%;
}
.formGroup75 {
    width: 75%;
}
.formGroup70 {
    width: 70%;
}
.formGroup60 {
    width: 60%;
}
.formGroup50 {
    width: 50%;
}
.formGroup40 {
    width: 40%;
}
.formGroup33 {
    width: 33.3333%;
}
.formGroup30 {
    width: 30%;
}
.formGroup25 {
    width: 25%;
}
.formGroup20 {
    width: 20%;
}
.formGroup10 {
    width: 10%;
}
input:focus, textarea:focus, select:focus{
	outline: none;
}
input[type="text"], input[type="email"], select, input[type="password"] {
	width:100%;
	background-color:#fff;
	padding:0 10px;
	height:45px;
	border:1px solid #ccc;
	font-family: "Poppins", serif;
	color:#444;
	font-size:14px;
}
input[type="email"]:disabled {
	cursor:not-allowed;
	background-color: #efefef;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
   	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}
textarea {
	width:100%;
	background-color:#fff;
	padding:10px;
	height:150px;
	border:1px solid #ccc;
	font-family: "Poppins", serif;
	color:#444;
	font-size:14px;
}
.inputSubmit {
	width:100%;
	background-color:#005ca9;
	padding:0 10px;
	height:45px;
	border:1px solid #575756;
	font-family: "Poppins", serif;
	color:#fff;
	cursor:pointer;
	font-weight:500;
    margin-top:25px;
	font-size:15px;
	transition: background 0.3s ease;
}
	.inputSubmit:hover {
		background-color:#fff;
        color:#005ca9;
	}
.privacyContent {
	font-size:12px;
	line-height:15px;
}
	.privacyContent a:link, .privacyContent a:visited {
		color:#222;
        border-bottom:1px solid #222;
		font-weight:500;
	}
.messaggioErrore {
	width:100%;
	background-color:#d23f22;
	text-align:center;
	color:#fff;
	border-radius:4px;
	padding:5px;
	margin-top:10px;
	font-size:13px;
	display:none;
}

/*** Contenitori Display Inline-Block ***/
.inlineBlock100 {
	display:inline-block;
	width:100%;
	padding:0 10px;
	vertical-align: middle;
	position:relative;
}
.inlineBlock90 {
	display:inline-block;
	width:90%;
	padding:0 10px;
	vertical-align: middle;
	position:relative;
}
.inlineBlock80 {
	display:inline-block;
	width:80%;
	padding:0 10px;
	vertical-align: middle;
	position:relative;
}
.inlineBlock70 {
	display:inline-block;
	width:70%;
	padding:0 10px;
	vertical-align: middle;
	position:relative;
}
.inlineBlock60 {
	display:inline-block;
	width:60%;
	padding:0 10px;
	vertical-align: middle;
	position:relative;
}
.inlineBlock50 {
	display:inline-block;
	width:50%;
	padding:0 10px;
	vertical-align: middle;
	position:relative;
}
.inlineBlock40 {
	display:inline-block;
	width:40%;
	padding:0 10px;
	vertical-align: middle;
	position:relative;
}
.inlineBlock30 {
	display:inline-block;
	width:30%;
	padding:0 10px;
	vertical-align: middle;
	position:relative;
}
.inlineBlock20 {
	display:inline-block;
	width:20%;
	padding:0 10px;
	vertical-align: middle;
	position:relative;
}
.inlineBlock10 {
	display:inline-block;
	width:10%;
	padding:0 10px;
	vertical-align: middle;
	position:relative;
}

/*** Contenitori Display Table ***/
.displayTable {
	display:table;
	width:100%;
}
	.displayTable .displayTableRow {
		display:table-row;
		width:100%;
	}
		.displayTable .displayTableRow .displayTableCell {
			display:table-cell;
			vertical-align: middle;
		}



/*** Classi di sovrascrizione ***/
.alignLeft {
	text-align:right;
}
.alignRight {
	text-align:right;
}
.alignCenter {
	text-align:center;
}
.testoCentrato {
	width:100%;
	max-width:800px;
	margin:auto;
}
.colorWhite {
	color:#fff !important;
}
.colorBlack {
	color:#000 !important;
}
.noPadding {
	padding:0px;
}
.noMargin {
	margin:0px !important;
}
.noBorder {
	border:0px !important;
}
.marginBottom10 {
	margin-bottom:10px;
}
.marginBottom20 {
	margin-bottom:20px;
}
.marginBottom30 {
	margin-bottom:30px;
}
.marginBottom40 {
	margin-bottom:40px;
}
.marginBottom50 {
	margin-bottom:50px;
}
.marginBottom60 {
	margin-bottom:60px;
}
.marginBottom70 {
	margin-bottom:70px;
}
.marginBottom80 {
	margin-bottom:80px;
}
.marginBottom90 {
	margin-bottom:90px;
}
.marginBottom100 {
	margin-bottom:100px;
}
.marginTop10 {
	margin-top:10px;
}
.marginTop20 {
	margin-top:20px;
}
.marginTop30 {
	margin-top:30px;
}
.marginTop40 {
	margin-top:40px;
}
.marginTop50 {
	margin-top:50px;
}
.marginTop60 {
	margin-top:60px;
}
.marginTop70 {
	margin-top:70px;
}
.marginTop80 {
	margin-top:80px;
}
.marginTop90 {
	margin-top:90px;
}
.marginTop100 {
	margin-top:100px;
}
.marginLeft10 {
	margin-left:10px;
}
.marginLeft20 {
	margin-left:20px;
}
.marginLeft30 {
	margin-left:30px;
}
.marginLeft40 {
	margin-left:40px;
}
.marginLeft50 {
	margin-left:50px;
}
.marginLeft60 {
	margin-left:60px;
}
.marginLeft70 {
	margin-left:70px;
}
.marginLeft80 {
	margin-left:80px;
}
.marginLeft90 {
	margin-left:90px;
}
.marginLeft100 {
	margin-left:100px;
}
.marginRight10 {
	margin-right:10px;
}
.marginRight20 {
	margin-right:20px;
}
.marginRight30 {
	margin-right:30px;
}
.marginRight40 {
	margin-right:40px;
}
.marginRight50 {
	margin-right:50px;
}
.marginRight60 {
	margin-right:60px;
}
.marginRight70 {
	margin-right:70px;
}
.marginRight80 {
	margin-right:80px;
}
.marginRight90 {
	margin-right:90px;
}
.marginRight100 {
	margin-right:100px;
}
.paddingBottom10 {
	padding-bottom:10px;
}
.paddingBottom20 {
	padding-bottom:20px;
}
.paddingBottom30 {
	padding-bottom:30px;
}
.paddingBottom40 {
	padding-bottom:40px;
}
.paddingBottom50 {
	padding-bottom:50px;
}
.paddingBottom60 {
	padding-bottom:60px;
}
.paddingBottom70 {
	padding-bottom:70px;
}
.paddingBottom80 {
	padding-bottom:80px;
}
.paddingBottom90 {
	padding-bottom:90px;
}
.paddingBottom100 {
	padding-bottom:100px;
}
.paddingTop10 {
	padding-top:10px;
}
.paddingTop20 {
	padding-top:20px;
}
.paddingTop30 {
	padding-top:30px;
}
.paddingTop40 {
	padding-top:40px;
}
.paddingTop50 {
	padding-top:50px;
}
.paddingTop60 {
	padding-top:60px;
}
.paddingTop70 {
	padding-top:70px;
}
.paddingTop80 {
	padding-top:80px;
}
.paddingTop90 {
	padding-top:90px;
}
.paddingTop100 {
	padding-top:100px;
}
.paddingLeft10 {
	padding-left:10px;
}
.paddingLeft20 {
	padding-left:20px;
}
.paddingLeft30 {
	padding-left:30px;
}
.paddingLeft40 {
	padding-left:40px;
}
.paddingLeft50 {
	padding-left:50px;
}
.paddingLeft60 {
	padding-left:60px;
}
.paddingLeft70 {
	padding-left:70px;
}
.paddingLeft80 {
	padding-left:80px;
}
.paddingLeft90 {
	padding-left:90px;
}
.paddingLeft100 {
	padding-left:100px;
}
.paddingRight10 {
	padding-right:10px;
}
.paddingRight20 {
	padding-right:20px;
}
.paddingRight30 {
	padding-right:30px;
}
.paddingRight40 {
	padding-right:40px;
}
.paddingRight50 {
	padding-right:50px;
}
.paddingRight60 {
	padding-right:60px;
}
.paddingRight70 {
	padding-right:70px;
}
.paddingRight80 {
	padding-right:80px;
}
.paddingRight90 {
	padding-right:90px;
}
.paddingRight100 {
	padding-right:100px;
}
.floatRight {
	float:right;
}
.floatLeft {
	float:left;
}