/*===================================================================
General styles
Valid for all browsers
===================================================================*/
HTML{ overflow: hidden; height: 100%; }
BODY{
	border: 0px;
	margin: 0px auto;
	padding: 0px;
	height: 100%;
	color: #ffffff;
	font: 12px Verdana, Geneva, Arial, Helvetica, sans-serif;
	text-align: center;
	overflow: hidden;
	background: #000000 none repeat-x top left;
}
TR,TD,DIV,SPAN,P,FORM,H1,H2,H3,H4,H5,H6,UL,OL,LI{
	color: #ffffff;
	font: 12px Verdana, Geneva, Arial, Helvetica, sans-serif;
	padding: 0px;
	margin: 0px;
	border: 0px;  
	line-height: 1.5em; /* ADDED by DAVIDE*/
}
TABLE{
	padding: 0px;
	margin: 0px;
	border: 0px;
	border-collapse: collapse;
	border-spacing: 0px;
}
IMG{ border: 0px; margin: 0px; }
A,A:link,A:active,A:visited{ text-decoration: none; color: #ffffff; }
A:hover{ text-decoration: underline; }
/* Misc */
P{
	margin: 5px 0px 10px 0px;
	text-align: left;
	text-align: justify;
}
P.last{ margin: 5px 0px 20px 0px; }
UL{ margin-bottom: 20px; }
 LI{
	list-style: none outside none;
	background: transparent;
	text-align: left;
	vertical-align: middle;
}
H1{
	font-size: 18px;
	line-height: 18px;
	font-weight: bold;
	margin: 0px 0px 10px 0px;
}
.float-dx{ float: right; }
.float-sx{ float: left; }
.clear{ clear: both; }
.clear-dx{ clear: right; }
.clear-sx{ clear: left; }
.photo{ border: 1px solid #333333; margin: 20px; }  
.photo-top-right { margin: 0 0 20px 20px;}
.photo-top-left { margin: 0 20px 20px 0;}

/* Form elements */
INPUT,
SELECT{
	border: 1px solid #cccccc;
	width: 180px;
	color: #666666;
	font: 11px Verdana, Geneva, Arial, Helvetica, sans-serif;
}
INPUT{
	padding: 1px;
	height: 14px !important;
	height: 16px;
	vertical-align: middle;
}
SELECT{ padding: 0px; height: auto; }
OPTION{ padding: 1px; }
TEXTAREA{
	border: 1px solid #cccccc;
	padding: 2px;
	width: 180px;
	height: 120px;
	overflow: auto;
	color: #666666;
	font: 11px Verdana, Geneva, Arial, Helvetica, sans-serif;
}
TEXTAREA.textprivacy{ height: 40px; }
INPUT.input-file{ height: 25px !important; height: 27px; }
INPUT.radio{ border: 0; margin: 0pt; width: 13px; }
INPUT.button{
	border: 0px none;
	overflow: hidden;
	font: 10px Verdana, Geneva, Arial, Helvetica, sans-serif;
	cursor: pointer;
	text-align: center;
	vertical-align: middle;
	width: 61px;
	text-decoration: none;
	font-weight: bold;
	color: #ff0000;
	background: transparent url(../img/but_small_bg-transparent.png) no-repeat left center;
	height: 17px;
	height: 17px !important;
	padding: 0px;
}
INPUT.button_disabled{
	border: 0px none;
	overflow: hidden;
	font: 10px Verdana, Geneva, Arial, Helvetica, sans-serif;
	cursor: default;
	text-align: center;
	vertical-align: middle;
	width: 61px;
	text-decoration: none;
	font-weight: bold;
	color: #999999;
	height: 17px;
	height: 17px !important;
	padding: 0px;
	background: transparent none no-repeat center center;
}
/* Validation and Errors */
.alertFormContatti{ color: #ff0000; font-weight: bold; background: #fff;}
LABEL.errorValidate{
	display: block;
	font-weight: normal;
	font-size: 11px;
	color: #fff;
	background: red;
}
INPUT.errorValidate,
TEXTAREA.errorValidate{ border: 1px solid #FFF; }
/* Structure */
.general-wrapper{ 
	
	width: 100%;
	height: 100%;
	margin: 0 auto 0 auto;
	text-align: center;
	position: relative;
	font-size: 0px;    
	
	min-height: 900px;
	height: auto !important;
	height: 900px;
	position: relative;
}
.general-wrapper .sx-wrapper{
	width: 221px;
/*	float: left;*/
	text-align: center;
	/*min-height: 600px;*/
	height: 100% !important;
	height: 100%;
	background: #000000 none repeat-y top right;
/*	overflow: auto;*/       
	position: absolute;
	top: 0;
	left: 0;
}
.general-wrapper .dx-wrapper{
/*	float: right;*/
	width: 100%;
	margin-left: -221px;
	text-align: left;
	min-height: 700px;
	height: 100% !important;
	height: 100%;
	background: url(../img/bg-body.jpg) #3e3d40 repeat-y top right;        
	position: absolute;
	top: 0;
	left: 221px;      
	min-width: 800px;
}
.general-wrapper .dx-wrapper-bg{
	margin-left: 221px;
	text-align: left;
	/*min-height: 700px;
	height: auto !important;
	height: auto;*/
	height: 100% !important;
	height: 100%;
	padding-left: 7px;
	background: transparent url(../img/bg-line-sx.png) repeat-y top left;
}
.dx-wrapper .body-wrapper{
	margin: 0px 0px 7px 0px; /*min-height: 500px;
	height: auto !important;
	height: 500px;*/
	text-align: left;
	position: relative;
	color: #333333;
}
.sx-wrapper .footer-wrapper{
	color: #ffffff;
	font-size: 10px;
	margin: 0px 0 10px auto;
	text-align: center;
	clear: left;       
	font-weight: bold;
}
/* Body */
.dx-wrapper .body-wrapper TR,
.dx-wrapper .body-wrapper TD,
.dx-wrapper .body-wrapper DIV,
.dx-wrapper .body-wrapper SPAN,
.dx-wrapper .body-wrapper P,
.dx-wrapper .body-wrapper FORM,
.dx-wrapper .body-wrapper H1,
.dx-wrapper .body-wrapper H2,
.dx-wrapper .body-wrapper H3,
.dx-wrapper .body-wrapper H4,
.dx-wrapper .body-wrapper H5,
.dx-wrapper .body-wrapper H6,
.dx-wrapper .body-wrapper UL,
.dx-wrapper .body-wrapper OL,
.dx-wrapper .body-wrapper LI{ color: #333333; }
.dx-wrapper .body-wrapper A,
.dx-wrapper .body-wrapper A:link,
.dx-wrapper .body-wrapper A:active,
.dx-wrapper .body-wrapper A:visited,
.dx-wrapper .body-wrapper A:hover{ color: #333333; }
.body-wrapper .body{
	margin: 0px;
	/*min-height: 500px;
	height: auto !important;
	height: 500px;*/
	padding-bottom: 0px;
	overflow: auto;
}
.body-wrapper .body .body-content{
	margin: 20px 20px 0px 20px;
  	padding-bottom: 40px;
	/* Davide BEGIN*/
	padding: 0px 50px 20px 50px; 
    /* Davide END*/

}            
.body-wrapper .top-border{
	height: 8px;
	font-size: 0px;
	width: 100%;
	background: #666666;
}
.body-wrapper .bottom-border{
	height: 20px;
	font-size: 0px;
	width: 100%;
	position: absolute;
	bottom: 0px;
	left: 0px;
	background: #333333;
}
.body-wrapper H1.title{
	font-size: 22px;
	line-height: 22px;
	color: #666666;
	font-weight: bold;
	margin: 0px 0px 15px 0px;
}
/* Logo */
.logo{ margin: 10px 15px 0px 15px; }
/* Menu */
.menu-wrapper{
	margin: 0px 0px 0px 0px;
	padding-top: 8px;
	height: 90px;
	background: transparent url(../img/pixel_grey.png) repeat;
	min-width: 800px;
	width: auto !important;
	width: 800px;
}
.menu-wrapper UL.menu{ 
	height: 90px; 
}
.menu-wrapper UL.menu LI{
	list-style: none outside none;
	background: transparent;
	/*	width: 84px;*/
	width: 11%;
	text-align: center;
	vertical-align: middle;
	height: 90px;
	padding: 0px 0px 0px 0px;
	float: left;
}
.menu-wrapper UL.menu LI.sep{
	background: transparent url(../img/sep.png) no-repeat center center;
	width: 1px;
	text-align: center;
	vertical-align: middle;
	height: 90px;
	padding: 0px 0px 0px 0px;
	float: left;
}
.menu-wrapper UL.menu LI A IMG{ margin: 25px auto 0px auto; }
.menu-wrapper UL.menu LI A,
.menu-wrapper UL.menu LI A:link,
.menu-wrapper UL.menu LI A:active,
.menu-wrapper UL.menu LI A:visited{
	height: 90px;
	/*	width: 84px;*/
	width: 100%;
	text-align: center;
	display: block;
	text-decoration: none;
	font-size: 10px;
	letter-spacing: -1px;
}
.menu-wrapper UL.menu LI A.selected,
.menu-wrapper UL.menu LI A:hover{ color: #ffffff; background: #666666; }
.menu-wrapper UL.menu LI.who A.selected,
.menu-wrapper UL.menu LI.who A:hover{ background: #019ba9; }
.menu-wrapper UL.menu LI.engineering A.selected,
.menu-wrapper UL.menu LI.engineering A:hover{ background: #dfb301; }
.menu-wrapper UL.menu LI.sites A.selected,
.menu-wrapper UL.menu LI.sites A:hover{ background: #073fb1; }
.menu-wrapper UL.menu LI.certifications A.selected,
.menu-wrapper UL.menu LI.certifications A:hover{ background: #51ac29; }
.menu-wrapper UL.menu LI.docs A.selected,
.menu-wrapper UL.menu LI.docs A:hover{ background: #cc00ff; }
.menu-wrapper UL.menu LI.consultancies A.selected,
.menu-wrapper UL.menu LI.consultancies A:hover{ background: #f745a1; }
.menu-wrapper UL.menu LI.references A.selected,
.menu-wrapper UL.menu LI.references A:hover{ background: #ff9000; }
/*.menu-wrapper UL.menu LI.download A.selected,
.menu-wrapper UL.menu LI.download A:hover{ background: #80a3a4; }*/
.menu-wrapper UL.menu LI.contacts A.selected,
.menu-wrapper UL.menu LI.contacts A:hover{ background: #8f795a; }
.menu-wrapper UL.menu LI A.nolink{ cursor: auto; }
.menu-wrapper UL.menu LI.download A.selected,
.menu-wrapper UL.menu LI.download A:hover,
.menu-wrapper UL.menu LI.download A.nolink:hover{ background: transparent; }
/* Home */
.dx-wrapper .body-wrapper.home TR,
.dx-wrapper .body-wrapper.home TD,
.dx-wrapper .body-wrapper.home DIV,
.dx-wrapper .body-wrapper.home SPAN,
.dx-wrapper .body-wrapper.home P,
.dx-wrapper .body-wrapper.home FORM,
.dx-wrapper .body-wrapper.home H1,
.dx-wrapper .body-wrapper.home H2,
.dx-wrapper .body-wrapper.home H3,
.dx-wrapper .body-wrapper.home H4,
.dx-wrapper .body-wrapper.home H5,
.dx-wrapper .body-wrapper.home H6,
.dx-wrapper .body-wrapper.home UL,
.dx-wrapper .body-wrapper.home OL,
.dx-wrapper .body-wrapper.home LI,
.dx-wrapper .body-wrapper.home A,
.dx-wrapper .body-wrapper.home A:link,
.dx-wrapper .body-wrapper.home A:active,
.dx-wrapper .body-wrapper.home A:visited,
.dx-wrapper .body-wrapper.home A:hover{ color: #ffffff; }
.dx-wrapper .body-wrapper.home LI.test{ color: #000000; }
.dx-wrapper .body-wrapper.home .body{ margin: 0px; padding-bottom: 0px; }
.dx-wrapper .body-wrapper.home .body .body-content{
	margin: 90px 20px 0px 20px;
	padding-bottom: 0px;
}
/* Who */
.who P.cv{ margin: 5px 0px 25px 0px; }
.who .cv B{ font-size: 16px; }
/* References */
.references TABLE.links TD{ padding: 10px; }
/* Engineering */
.engineering LI{ margin-bottom: 10px; }
/* Sites */
.sites LI{ margin-bottom: 10px; }
/* Certifications */
.certifications LI{ margin-bottom: 10px; }
/* Contacts */
.body-wrapper.contacts A,
.body-wrapper.contacts A:link,
.body-wrapper.contacts A:active,
.body-wrapper.contacts A:visited,
.body-wrapper.who A,
.body-wrapper.who A:link,
.body-wrapper.who A:active,
.body-wrapper.who A:visited{ text-decoration: underline; }
.body-wrapper.contacts A:hover,
.body-wrapper.who A:hover{ text-decoration: none; }
.contacts-wrapper{
	margin: 60px 15px 15px 15px;
	font-weight: bold;
}
.form-wrapper{
	margin: 0px auto 0px auto;
	text-align: left;
	width: 184px;
}
.form-wrapper *{ font-size: 11px; }
.form-wrapper TD{
	text-align: left;
	vertical-align: top;
	width: auto;
	padding-bottom: 5px;
}
.form-wrapper TD.label{ color: #ffffff; font-weight: bold; }
.form-wrapper TD.button{ text-align: right; padding-top: 10px; }
.form-wrapper TD span.error{
	display: block;
	padding-top: 10px;
}
/* Map */
IFRAME#mapIframe{
	margin: 30px auto 30px auto;
	height: 400px;
	background: transparent;
	width: 760px;
	margin-top: 10px;
	overflow: hidden;
	border: 2px solid #ffffff;
}
DIV.mapContainer{
	text-align: center;
	width: 100%;
	margin: 0px auto 0px auto;
}
DIV#map_canvas{ margin: 0px auto 0px auto; text-align: left; }
DIV#map_canvas TR,             
DIV#map_canvas TD,
DIV#map_canvas DIV,
DIV#map_canvas SPAN,
DIV#map_canvas P{ color: #000000; }
       
/* Aggiunte by Davide */
.hidden-text { font-size:1px; text-indent: -5000px;}   
.centered-text { margin: 0 auto; width: 700px;}    
h2 { 
	font-size: 200%; 
	font-weight: bold; 
	font-style: italic; 
	margin-bottom: 1em;
}
h3 { font-size: 150%; margin-bottom: 1em; }    
a:active { outline: none; /* hide dotted outline in Firefox */}
a:focus { -moz-outline-style: none; }





.contacts-wrapper p.correct {
	text-align: left;
	font-size: 15px;
	margin-bottom: 80px;
}