/* reset.css 
-------------------------------------------------------------- */

html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, code, del, dfn, em, img, q, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {margin:0;padding:0;border:0;font-weight:inherit;font-style:inherit;font-size:100%;font-family:inherit;vertical-align:baseline;}
body {line-height:1.3;}
table {border-collapse:separate;border-spacing:0;}
caption, th, td {text-align:left;font-weight:normal;}
table, td, th {vertical-align:middle;}
blockquote:before, blockquote:after, q:before, q:after {content:"";}
blockquote, q {quotes:"" "";}
a img {border:none;}

/* layout
-------------------------------------------------------------- */

body { 
	color: black; 
	background: url(/img/bg_body.jpg) repeat-x #e7effa;
	font-family: Georgia, Times, serif;
	margin: 0; 
	padding: 0;
}

#container	{ width: 950px; 	margin: 0 auto; }
#header, 
#content, 
#footer 	{ background: white; width: 820px; margin: 0 auto; padding: 20px 40px 2em 40px; text-align: left; }
hr 			{ visibility: hidden; margin: 0; padding: 0; clear: both; }
.left		{ float:left;}
.right		{ float: right; }
img.left	{ margin: 0 1em 1em 0;}
img.right	{ margin: 0 0 1em 1em;}
.clear 		{clear:both;}



/* header
-------------------------------------------------------------- */

#header			{ padding:15px 40px 0 40px;height: 66px; }
#header	img		{ float: left;}

#nav 			{ right: 0px; top: 0px; float: right; position: relative; }
#nav li			{ font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; font-weight: bold; font-size: .85em; display: inline; list-style-type: none; padding: 0 10px; border-right: 1px solid #ccc; }
#nav li.lastnav	{ padding-right: 0px; border-right: none; }
#nav a			{ text-decoration: none; }
#nav a:hover	{ text-decoration: underline; }

/* visual
-------------------------------------------------------------- */

#headline			{ background: url(/img/headline_bg.jpg) no-repeat top; height: 250px; width: 950px; }
#headline p			{ margin:0 65px 1em 65px; color: #323739; font-size: 1.3em; line-height: 1.3em; }
#headline h1		{ font-size: 2.4em; margin-left: 65px; margin-right: 65px; padding-top: 25px; }
#headline strong	{ font-weight: normal; color: #cc0000; }

#visual			{ background: url(/img/visual.jpg) no-repeat top; height: 250px; width: 950px; }
#visual p		{ margin:0 0 1em 355px; color: #323739; font-size: 1.3em; line-height: 1.3em; }
#visual h1		{ font-size: 2.4em; margin-left: 355px; padding-top: 25px; }
#visual strong	{ font-weight: normal; color: #cc0000; }



/* content
-------------------------------------------------------------- */


#content			{ padding-top: 40px; }
#content li			{ margin-left: 1em; }

ul#servizi				{ list-style-type:none; margin:0; padding:0; }
ul#servizi li			{ float: left; width: 246px; margin:0 0 2em 0; }
ul#servizi li.middle	{ margin:0 20px; padding: 0 20px; border-right: 1px solid #ccc; border-left: 1px solid #ccc }

.copy strong	{ color: black; }

.col1 			{ width: 536px; margin-bottom: 1em; float:left;}
.col2	 		{ margin: 0 0 1em 576px; }
.col1b 			{ width: 390px; margin-bottom: 1em; float:left;}
.col2b			{ width: 390px; margin: 0 0 1em 410px; }

.col, 
.colmiddle		{ float: left; width: 246px; margin:0 0 2em 0; }
.colmiddle		{ margin:0 20px; padding: 0 20px; border-right: 1px solid #ccc; border-left: 1px solid #ccc }

div.action {
	background: url(/img/bg_action.gif) no-repeat center; 
	text-align: center; 
	height: 50px; 
	clear:both;
	font-size: 1.3em;
	margin: 2em 0;
	padding-top: 1em;
}

/* Typography 
-------------------------------------------------------------- */

h1, h2, h3,
ul#servizi h2,
#header p, 
.tel,
.vcard 		{ font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;  }

h1, h2, h3	{ font-size: 1.1em; margin-bottom: .5em;font-weight: bold;  }
h2			{ color: #cc0000; }
h3			{ color: #4c4c4c; }
.copy h2	{ font-style: italic; font-weight: normal; font-size: 1.3em; font-family: Georgia, Times, serif;  }
p			{ margin-bottom: 1em; }

#header p,
.vcard		{ font-size: .9em; }

.martop		{ margin-top: 1em; }
.martop2	{ margin-top: 2em; }
.martop3	{ margin-top: 3em; }
.marbot0	{ margin-bottom: 0 }
.marbot		{ margin-bottom: 1em; }
.marbot2	{ margin-bottom: 2em; }
.marbot3	{ margin-bottom: 3em; }
.minten		{ min-height: 10em; }
.small		{ font-size: .85em; font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;  }

#content ul.line li		{ padding: .5em .5em; margin: 0;border-bottom: 1px solid #ccc; list-style-type:none;  }
#content ul.line li.top	{ border-top: 1px solid #ccc; }



/* links 
-------------------------------------------------------------- */

a, a:active, a:visited, a:hover { color: #0071bc }


/* footer
-------------------------------------------------------------- */

#footer 		{ background: url(/img/bg_footer.jpg) repeat-x left top #b8cce0; border-top: 1px solid #c2d6eb;  }
img#logosmall	{ display: block; margin-bottom: 20px; }
.vcard			{ float: left;  }
.vat			{ margin-bottom: 1em; }
#footer h2		{ font-size: 1.1em; font-family: Georgia, Times, serif;}



/* email form 
-------------------------------------------------------------- */

form, .feedback 			{ margin: 20px 0 0 300px; padding:0; min-height: 10em; }
.feedback					{ font-size: x-large; color: #cc0000; }
.fb_post					{ min-height: 0; margin-left: 110px; text-align: left; margin-bottom: 1em; }
#form h2					{ color: black; font-weight: normal; margin-left: 300px; }
fieldset					{ margin:0 0 20px 0; padding:0; border:none; }
#col2-a fieldset p			{ margin: 13px 0; }
fieldset#informazioni		{ margin-top: -6px; padding: 5px 0 0 0; }
#informazioni label 		{ display:block; float:left; width:100px;}
#informazioni input, 		
#informazioni textarea		{ margin:0 0 1em 10px; }
#button						{ text-align: right; }
input.send-btn 				{ width: 100px; height: 40px; background: url(/img/btn_invia.gif) no-repeat; outline: none; }
input.send-btn:active		{ background: url(/img/btn_invia.gif) no-repeat 0 -40px; }
input#name, 
input#email,
textarea#message			{ width: 390px; font-size: 14px; padding: 5px; }
#error						{ margin-left: 1em; margin-top: 0; padding: 0; }
#errdiv						{ margin: 0 0 1em 0; }
#footer .error 				{ margin-left: 110px;}


/* Success, notice and error boxes
-------------------------------------------------------------- */

.error,
.notice, 
.success    { padding: .8em; border: 2px solid #ddd; clear: both; display: block; margin-bottom: 1em; }

.error      { background: #FBE3E4; color: #8a1f11; border-color: #FBC2C4; }
.notice     { background: #FFF6BF; color: #514721; border-color: #FFD324; }
.success    { background: #E6EFC2; color: #264409; border-color: #C6D880; }
.error a    { color: #8a1f11; }
.notice a   { color: #514721; }
.success a  { color: #264409; }

