*{
	margin:0;
	padding:0;
}

body {
	font-family:'AllerRegular', sans-serif;
	background:#d7d7d7 url(../img/bg.jpg) repeat scroll 50% -100px;
	font-size:12px;
	color:#333333;
}

@font-face {
	font-family: 'AllerRegular';
	src: url('font/aller_rg.eot');
	src: local('Aller'), local('Aller'), url('font/aller_rg.woff') format('woff'), url('font/aller_rg.ttf') format('truetype');
}

@font-face {
	font-family: 'AllerBold';
	src: url('font/aller_bd.eot');
	src: local('Aller'), local('Aller-Bold'), url('font/aller_bd.woff') format('woff'), url('font/aller_bd.ttf') format('truetype');
}

@font-face {
	font-family: 'AllerItalic';
	src: url('font/aller_it.eot');
	src: local('Aller'), local('Aller-Italic'), url('font/aller_it.woff') format('woff'), url('font/aller_it.ttf') format('truetype');
}

a, a:hover { text-decoration:none;}

a:active { outline:none; }

:focus { -moz-outline-style:none;}

img { border:0;}

ul li{
	list-style:none;
}

#head{
	height:110px;
	margin:0 auto;
	width:980px;
}

#head .logo{
	float:left;
	margin:0 auto;
	width:200px;
	position:relative;
	z-index:100;
}

ul#navigator{
	float:left;
	width:700px;
	height:100px;
	margin:25px 0 0 0;
}

ul#navigator li{
	float:left;
	margin:0 10px;
	list-style:none;
	border-bottom:1px solid white;
	max-width:150px;
	width:auto;	
}

ul#navigator li a{
	color:#cccccc;
	text-align:center;
	text-shadow: -1px -1px 0 #000000;
	background:#555555;
	border-top:5px solid #555555;
	border-bottom:5px solid #444444;
	-moz-border-radius:5px;
	-khtml-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius:5px;
	padding:0 8px;
	font-size:13px;
	text-transform:uppercase;
	display:block;
	height:15px;
}

ul#navigator li a:hover{
	color:#FFFFFF;
	text-shadow: -1px -1px 0 #000000;
	background:#333333;
	border-top:5px solid #333333;
	text-decoration:none;
	border-bottom:5px solid #222222;
}

#top{
	width:100%;
	float:left;
	height:350px;
	margin:-45px 0 0;
}

#top.timeout{
	background:transparent url(../img/timeout_bg.png) repeat-x scroll 0 0;
}

#top.timeout #intro{
	background:transparent url(../img/timeout.jpg) no-repeat scroll 50% 0;
	margin:10px auto;
}

#intro{
	width:1000px;
	margin:0 auto;
	height:100%;
}

#top.home{
	height:495px;
	width:100%;
	position:relative;
	z-index:1;
	background:transparent url(../img/bg_top_home.png) repeat-x scroll 0 0;
	margin:-50px 0 0 0;
}

#top.home #intro{
	width:1000px;
	margin:0 auto;
	background:transparent url(../img/bg_home.jpg) no-repeat scroll 50% 15px;
	height:348px;
}

#container{
	width:100%;
	background:transparent url(bg.jpg) no-repeat scroll 0 0;
	padding:0 0 0 0;
	float:left;
}

#main{
	width:980px;
	margin:0 auto;
}

#cleft{
	width:250px;
	float:left;
	height:230px;
	margin:25px 0 0 0;
}

.title{
	color:#444444;
	font-size:20px;	
	text-transform:uppercase;
	float:left;
	width:100%;
}

.data{
	text-transform:uppercase;
	font-size:12px;	
	color:#666666;
}

.about{
	color:#666666;
	float:left;
	font-size:14px;
	line-height:22px;
	margin:10px 0 0;
	width:100%;
}

.progetto a{
	float:right;
}

.title span.progetto a, .title span.progetto a:visited{
	color:#bbbbbb;
	text-decoration:none;
}

.about span.progetto a, .about span.progetto a:visited{
	color:#333333;
	text-decoration:none;
}

.title span.progetto a:hover, .about span.progetto a:hover {
	color:#17859C;
}

#cright{
	width:710px;
	float:left;
	height:230px;
	margin:25px 0 0 20px;
}

.note{
	width:100%;
}

#footer{
	background:transparent url(../img/footer_bg.png) repeat-x scroll 0 0;
	height:285px;
	width:100%;
	margin:30px 0 50px 0;
	float:left;
}

#footer_container{
	width:980px;
	margin:0 auto;
}

.contact_block{
	float:left;
	width:400px;
	margin:0 0 5px 0;
}

.contact_block label{
	width:80px;
	float:left;
}

input#button, input#button2 {
	-moz-border-radius:5px;
	-khtml-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius:5px;
	background:#555555 none repeat scroll 0 0;
	border:1px solid #777777;
	float:left;
	padding:0 3px;
	text-transform:uppercase;
	color:#cccccc;
	text-shadow:1px 1px 1px #333;
	cursor:pointer;
}

input#button:hover, input#button2:hover {
	background:#666666 none repeat scroll 0 0;
	border:1px solid #999999;
	color:#FFFFFF;
	text-shadow:1px 1px 1px #333;
}

input#button{
	height:30px;
	margin:10px 0 0 205px;
	width:70px;
}

input#button2{
	margin:10px 0 0 10px;
	height:30px;
	width:70px;
}

#grazie{
	background:transparent url(../img/sent.gif) no-repeat scroll 0 0;
	height:200px;
	width:200px;
	margin:70px 0 0 0;
}

#info{
	border-top:1px solid #666666;
	color:#CCCCCC;
	float:left;
	font-size:13px;
	line-height:22px;
	margin:70px 0 0 0;
	padding:15px 40px 0 170px;
	text-align:left;
	text-transform:uppercase;
}


/* ######## contact form ######## */


#main-container{
	width:400px;
	margin:30px auto;
}

#form-container{
	-moz-border-radius:12px;
	-khtml-border-radius: 12px;
	-webkit-border-radius: 12px;
	border-radius:12px;
	color:#F1F1F1;
	float:left;
	margin:0 auto;
	padding:15px 0 0 0;
	width:415px;
}

h1{
	color:#999999;
	font-size:22px;
	font-weight:normal;
	margin-bottom:5px;
	text-shadow:-1px -1px 1px #444444;
	text-transform:uppercase;
	margin-top:7px;
	float:left;
	width:100%;
}

h2{
	font-weight:normal;
	font-size:10px;
	text-transform:uppercase;
	color:#aaaaaa;
	margin-bottom:15px;
	border-bottom:1px solid #666666;
	margin-bottom:15px;
	padding-bottom:3px;
	width:100%;
	float:left;
}

h3{
	border-bottom:1px solid #CCCCCC;
	color:#888888;
	/*float:left;*/
	font-size:15px;
	font-weight:normal;
	margin-bottom:15px;
	padding-bottom:3px;
	text-transform:uppercase;
	width:100%;
	display:block;
}

form#contact-form{
	padding:0 0 0 20px;
	float:left;
}

label{
	text-transform:uppercase;
	font-size:13px;
	color:#cccccc;
}

textarea{
	-moz-background-clip:border;
	-moz-background-inline-policy:continuous;
	-moz-background-origin:padding;
	background:#666666 none repeat scroll 0 0;
	border:1px solid #777777;
	color:#FFFFFF;
	height:60px;
	padding:3px;
	width:270px;
}

div input {
	-moz-background-clip:border;
	-moz-background-inline-policy:continuous;
	-moz-background-origin:padding;
	background:#666666 none repeat scroll 0 0;
	border:1px solid #777777;
	color:#FFFFFF;
	font-size:13px;
	height:18px;
	line-height:11px;
	margin:0;
	padding:3px;
	vertical-align:middle;
	width:270px;
}

.error {
	/* supply height to ensure consistent positioning for every browser */
	background-color:#666666;
	border:1px solid #CCCCCC;
	color:#FFFFFF;
	font-size:10px;
	height:15px;
	margin-left:5px;
	padding:3px 5px;
	width:180px;
	/* CSS3 spicing for mozilla and webkit */
	-moz-border-radius:0;
	-webkit-border-radius:0;
	-moz-border-radius-bottomleft:0;
	-moz-border-radius-topleft:0;
	-webkit-border-bottom-left-radius:0;
	-webkit-border-top-left-radius:0;
	-moz-box-shadow:0 0 6px #cccccc;
	-webkit-box-shadow:0 0 6px #cccccc;
}

/* ######## portfolio ######## */

ul.portfolio{
	float:left;
	position:relative;
	width:980px;
	overflow:hidden;
}

ul li#pro{
	width:200px;
	height:340px;	
	overflow:hidden;
	background:black;
	border:3px solid white;
	-moz-box-shadow:0px 0px 13px #888;
	-webkit-box-shadow:0px 0px 13px #888;
	margin:15px 17px;
	float:left;
	position:relative; 
	cursor:pointer;
}

li#pro .p_img{
	width:200px;
	height:200px;
}

li#pro .p_info{
	width:180px;
	color:white;
	padding:10px;
}

.name{
	text-transform:uppercase;
	color:white;
	font-size:13px;
	padding:0 0 5px 0;
}

.desc{
	padding:5px 0;
	font-size:12px;
	height:60px;
}

.p_info .data{
	color:#cccccc;
}

#due{
	float:left;
	height:495px;
	margin:-18px 0 0 250px;
	position:absolute;
	width:740px;
	overflow:hidden;
}

#text{ 
 	display:none; 
	float:left; 
	width:740px;
}

#due a.link{
	color:#666666;
	display:inline;
	float:left;
	font-size:18px;
	padding:10px 0 0 25px;
	text-transform:uppercase;
	white-space:nowrap;
	width:100%;
}

#due a.link:hover{
	color:#17859C;
}


#back{
	background:white url(../img/closelabel.gif) no-repeat scroll 50% 50%;
	height:22px;
	margin:0 0 0 498px;
	padding:5px;
	width:200px;
	cursor:pointer;
}

ul#partner{
	margin:15px 0;
	float:left;
	width:100%;
}

ul#partner li{
	float:left;
	height:70px;
	padding:10px 20px;
}
