/* =Reset
-------------------------------------------------------------- */

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	border: 0;
	font-family: inherit;
	font-size: 100%;
	font-style: inherit;
	font-weight: inherit;
	margin: 0;
	outline: 0;
	padding: 0;
	vertical-align: baseline;
}
html {
	font-size: 62.5%; /* Corrects text resizing oddly in IE6/7 when body font-size is set using em units http://clagnut.com/blog/348/#c790 */
	overflow-y: scroll; /* Keeps page centred in all browsers regardless of content height */
	-webkit-text-size-adjust: 100%; /* Prevents iOS text size adjust after orientation change, without disabling user zoom */
	-ms-text-size-adjust: 100%; /* www.456bereastreet.com/archive/201012/controlling_text_size_in_safari_for_ios_without_disabling_user_zoom/ */
}
body {
	background: #fff;
	width: 100%;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
nav,
section {
	display: block;
}
ol, ul {
	list-style: none;
}
table { /* tables still need 'cellspacing="0"' in the markup */
	border-collapse: separate;
	border-spacing: 0;
}
caption, th, td {
	font-weight: normal;
	text-align: left;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: "";
}
blockquote, q {
	quotes: "" "";
}
a:focus {
	outline: thin dotted;
}
a:hover,
a:active { /* Improves readability when focused and also mouse hovered in all browsers people.opera.com/patrickl/experiments/keyboard/test */
	outline: 0;
}
a img {
	border: 0;
}
/*------ general attributes -------*/
h1 {
	font: italic 700 36px/36px "Open Sans", sans-serif;
	color: #000;
	background-color:transparent;
	padding: 0px;
	margin-bottom:40px;
}
h1 ul {
	list-style-image: url('../images/arrow-big.png');
	list-style-position:outside;
}
h2 {
	font: normal 700 20px/26px "Open Sans", sans-serif;
	color: #3e9fdd;
	background-color:transparent;
	padding: 0px;
	margin:14px 0px;
}
h3 {
	font: normal 700 20px/26px "Open Sans", sans-serif;
	color: #000;
	background-color:transparent;
	padding: 0px;
	margin-bottom:14px;
}
h4 {
	font: normal 700 16px/22px "Open Sans", sans-serif;
	color: #000;
	background-color:transparent;
	padding: 0px;
	margin-bottom:10px;
}
h4 ul {
	list-style-image: url('../images/arrow-small.png');
	list-style-position:outside;
}
p {
	font: normal 300 16px/28px "Open Sans", sans-serif;
	color: #000;
	background-color:transparent;
	padding: 0px;
	margin-bottom:10px;/*
	text-align:justify;*/
}
ul {
	text-align: left;
	color: #000;
	background-color:transparent;
	padding: 0px;
	list-style: inside disc;
	margin-bottom:10px;
}
a, a:visited {
	font-style:italic;
	text-decoration: none;
	color: #3e9fdd;
}
a:hover {
	text-decoration: underline;
}

a h4 ul li:hover{
 text-decoration: underline;	
}

hr {
	height: 1px;
	border: 0;
	color: #999;
	background-color: #999;
	margin-bottom:20px;
}
b, strong{
	font-weight:700;
}
/*----------------------------------------------- */
html {
    height: 100%;
}

body {
	background:#fff;
	margin: 0px;
	font: normal 300 16px/28px "Open Sans", sans-serif;
	color: #000;
}

.clear {
	clear:both;
}

.container, .container1, .container2 {
	position:relative;
	display:block;
	width: 980px;
	padding: 0px;
	margin: 0px auto;
}
#top {
	position:relative;
	background:#000;
	width: 100%;
}
#top .container{
	background:#000 url('../images/head-short.jpg') no-repeat 0px 0px;
	height: 158px;
	display:block;
}
#top .container.home{
	background:#000 url('../images/head-home.jpg') no-repeat 0px 0px;
	height: 360px;
	display:block;
}
.container #logo {
	position:relative;
	top:45px;
	left:105px;
	width: 270px;
}
.container.home #logo {
	position:relative;
	top:127px;
	left:125px;
}
#nav {
	background:#3e9fdd;
	width: 100%;
}

#nav .container{
/*	background:#3e9fdd; */
}

#nav ul {
	margin: 0px 0px 0px 125px;
	list-style-type: none;
	list-style-image: none;
	display: block;
/*	text-align:center;*/
	text-transform:uppercase;
	font: normal 300 18px/45px "Open Sans", sans-serif;
	color: #fff;
	padding: 0px;
}
#nav li {
	display:inline;
	/*margin:0px 20px 0px 0px;*/
	padding-right:20px;
}
#nav li a,
#nav li a:visited {
	font-style:normal;
	color:#fff;
}
#nav li a:hover {
}
#mission {
	font: normal 700 26px/32px "Open Sans", sans-serif;
	color: #fff;
	margin-left:105px;
	padding:20px;
}
#missionhOME {
	font: normal 700 20px/26px "Open Sans", sans-serif;
	color: #fff;
	margin-left:105px;
	padding:5px;
}
#main .container{
	padding:60px 180px 0px 125px; /*60px 333px 0px 125px;*/
	width:670px; /*522px;*/
}
#main .container2 {
	padding:30px 180px 0px 125px; /*60px 333px 0px 125px;*/
	width:670px; /*522px;*/
}

.container p.illu, .container2 p.illu  {
	float: right;
	display:block;
	width:460px;
	margin: 0px -313px 20px 20px;
}
.container #opening p.illu , .container2 #opening p.illu {
	float: right;
	display:block;
	width:380px;
	margin: -30px -200px 20px 20px;/*-40px -318px 20px 20px;*/
}
.container #opening p, .container2 #opening p{
	font: italic 300 20px/32px "Open Sans", sans-serif;
	color: #000;
}
.btn {
	display:block;
	clear:both;
	cursor:pointer;
	vertical-align:middle;
	margin: 10px 0px;
	padding:0px;
	border-top: 1px solid #ccc;
}
#news{
	width:855px;
	display:block;
	height:250px;
	/*padding-left:125px;*/
}
#news .box {
	display: block;
	float:left;
	width:205px;
	padding:20px 30px 20px 0px;
	/*background:#333;*/
}
#news p,
#news h4{
	margin:0px;
}
#news .data{
	font: normal 300 12px/22px "Open Sans", sans-serif;
	color: #666;
}
#news a:hover {
	color:#000;
}
#footer {
	background:#e6e6e6;
	height:155px;
	font: normal 300 14px/22px "Open Sans", sans-serif;
	color: #666;
	width: 100%;
}

#footer .container{
	background:#e6e6e6;
	height: 155px;
}

#footer a,
#footer a:visited {
	color: #666;
}
#footer img{
  margin:10px;
  opacity:0.7;
	filter:alpha(opacity=70);
	border: 0px;
}
#footer img:hover{
  opacity:1;
	filter:alpha(opacity=100);
}

.box1, .box2 {
	display: block;
	float:left;
	width:300px;
	padding:20px 20px 0px 20px;
}
.box1{
	margin-left: 105px;
}	
.box img,.box1 img,.box2 img {
	margin-bottom: 10px;
	margin-right: 20px;
}
#ergup-footer {
	/*margin-left: -22px;*/
}
.Stile2 {
	color: #3e9fdd; /* verde #80bd01*/;
	font-weight: bold;
}
table#moduli,
table#moduli caption {
	/*padding:20px 0px 0px 125px;*/
}
#moduli p {
	font: normal 300 16px/24px "Open Sans", sans-serif;
	color: #000;
	background-color:transparent;
	padding: 0px 20px 20px 0px;
	margin-bottom:10px;
	text-align:center;
}

.modulo-table {
	text-align:center;
	vertical-align: middle;	
}

.modulo-cell {
	padding:20px;
	width:25%;
}

.moduli-box-icon {
	display: inline-block;
	vertical-align: top;
	width: 50px;
	margin-top: 7px;
}

.moduli-box-text {
	display: inline-block;
	width: 610px;
}

.arrow-li {
	margin-right:5px;
}

.fa-stack-3x, .fa-stack-4x, .fa-stack-5x {
	position: absolute;
	left: 0;
	width: 100%;
	text-align: center
}

.fa-stack-3x {
	font-size: 3em
}

.fa-stack-4x {
	font-size: 4em
}

.fa-stack-5x {
	font-size: 5em
}

.black {
	color: #000;
}

.green {
	color: #80bd01;
}

.modulo-icon  > .fa-square{
    -webkit-transition: color 400ms linear;
    -moz-transition: color 400ms linear;
    -o-transition: color 400ms linear;
    transition: color 400ms linear;
}

.modulo-cell:hover  .fa-square{
	color: #ffcf38;
}