/**
 *
 */

html, body {
	margin:0;
	padding:0;
	text-align:center;
	
	font-family:verdana;
	font-size:10pt;
	color:#444;
	
	background: #fff url(sf_top.jpg) repeat-x;
}


.str { display:none; }
.fright { float:right; }
.fleft 	{ float:left; }
.clr {
	display:		block;
	height:			0;
	overflow:		0;
	margin:			0;
	clear:			both;
}




/**
 * Larghezza totale della pagina.
 */
#heading, #content {
	display:		block;
	margin: 		0 auto 0 auto;
	width:			795px;
}





/***************************************************
 * Intestazioni di pagina.
 */
#heading {
	position:		relative;
	height:			270px;
}
#heading hr, #heading h4 { display: none; }


/**
 * Titolazione principale del sito web.
 * Sostituzione di immagine per la presentazione grafica del titolo.
 * La titolazione contiene un link all'home page aggiunto via js per questioni di
 * usabilit dell'interfaccia.
 */
#heading h1 {
	margin:			0;	
	font-size:10px;
}
#heading h1, #heading h1 span {
	position:		absolute;
	top:			0;
	left:			0;
	
	display:		block;
	width:			795px;
	height:			60px;
}
#heading h1 span {
	background:		#9cb911 url(sf_title.jpg) no-repeat;
}
#heading h1 {
	border:			0;
}


/**
 * Blocco per posizionamento contenuto flash.
 * Questo blocco contiene testo SEO ed applica una
 * sostituzione di immagine via CSS al fine di nascondere
 * tale testo che in ogni caso  correttamente formattato.
 * Via JavaScript viene sostituito con un filmato flash.
 */
#heading #flash_presentation {
	background:		#fff;
}
#heading #flash_presentation, #heading #flash_presentation span {
	position:		absolute;
	top:			87px;
	left:			0;
	
	display:		block;
	width:			540px;
	height:			167px;
}
#heading #flash_presentation span {
	top:			0;
	background: 	url(sf_flash.jpg) no-repeat;
}
#heading #flash_presentation p {
	height:			165px;
	margin:			0;
	padding:		0 5px 0 5px;
	
	border:			1px solid #637609;
	background:		#E8EFC9;
	
	overflow:		auto;
	font-size:		10pt;
	text-align:		left;
	color:			black;
}
#heading #flash_presentation p strong {
	font-weight:	normal;
}
/* Classe impostata dopo il caricamento effettivo del flash. */
#heading #flash_presentation.flashActive {
	margin-top:-1px;
	margin-left:-5px;
}



/**
 * Menu istituzionale del sito.
 */
#heading ul {
	position:		absolute;
	top:			85px;
	right:			10px;
	
	display:		block;
	width:			265px;
	height:			120px;
	overflow:		hidden;
	
	margin:			0;
	padding:		0;
	
	text-align:		left;
	list-style:		none;
	list-style-position:inside;
}
#heading ul li {
	position:		relative;
	display:		block;
	background:		url(mm_home.jpg) 10px -3px no-repeat;
	border-bottom:	1px solid #9cb911;
}
#heading ul li.por { background: url(mm_portfolio.jpg) 10px -3px no-repeat; }
#heading ul li.van { background: url(mm_vantaggi.jpg) 10px -3px no-repeat; }
#heading ul li.con { background: url(mm_contatti.jpg) 10px -3px no-repeat; }
#heading ul li a {
	display:		block;
	width:			200px;
	padding:		6px 0 5px 50px;
	
	text-decoration:none;
	font-size:		11pt;
	font-weight:	bold;
	color:			#fff;
}
#heading ul li a:hover {
	color:			#000;
}




/***************************************************
 * Contenuto principale di pagina
 */
#content {
	min-height:		200px;
	text-align:		left;
}

/* Titolazioni di pagina */
#content h2 {
	color:			#222;
	font-weight:	300;
	font-size:		16.0pt;
	font-family:	Arial, Helvetica, sans-serif;
	margin:			0;
	height:			40px;
}
#content h2#communication {
	background: url(sf_item.jpg) no-repeat;
	padding-left:40px;	
}
#content h2#offer {
	margin-left:	26px;
}


/* Stili di testo */
.t1 {
	font-family: Verdana;
	font-size:12px;
	/*text-align: justify;*/
	letter-spacing: 1px;
	line-height: 1.5em;
}
.t1 p { margin: 0 0 25px 0 }
.t1 ul {
	text-align: left;
}
.t1 a {
	color:blue;
}
.t1 a:hover {
	color:red;
}
.t1 a:visited {
	text-decoration: none;
}
.t2 {
	font-family:	Arial;
	font-size:		12px;
	color:			#000;
}


div.text p:first-letter {
	font-weight:bold;
	color:#4f4414;
	font-size:14pt;
}

p.alert {
	color:#900;
}
p.act_contact {
	background: url(sf_act_contact.gif) top center no-repeat;
	padding: 10px 20px 55px 20px;
}

p.nomb { margin-bottom:0; }
p.mt20 { margin-top: 20px; }
p.mt30 { margin-top: 30px; }
p.mb10 { margin-bottom: 5px; }

#content ol.evidence, #content p.evidence {
	color:black;
	background:#bdd196;
	padding-top:20px;
	padding-bottom:20px;
	font-weight:bold;
	font-size:12px;
}
#content p.evidence {
	padding:20px;
}
#content .evidence strong {
	color:#900;
}
#content ul.small {
	font-size:10px;
	color:black;
}

/* Gestori di padding */
.pa1 {
	padding-right:15px;
}


/**
 * Colonna 100%;
 */
.icol {
	padding-right:270px;
}


/**
 * Colonna 2/3
 */
.col23 {
	display:		block;
	width:			443px;
}
.icol23 { /* Per pagine interne. */
	display:		block;
	width:			525px;
}

/**
 * Colonna 1/3
 */
.col13 {
	display:		block;
	width:			351px;
}
.icol13 { /* Per pagine interne. */
	display:		block;
	width:			260px;
}


/**
 * HomeBox - Box di spot nella colonna centrale e destra della homepage.
 */
.home_box {
	display:		block;
	width:			100%;
	margin-bottom:	10px;
	height:100px;
}

.home_box a {
	position:		relative;
	display:		block;
	width:			240px;
	height:			20px;
	margin-left:	182px;
	background:		#fff;
	
	font-weight: bold;
	font-size:10pt;
	color:#666;
	text-decoration: none;
}
.home_box a:hover { color:red; }
.home_box a span {
	position:		absolute;
	top:			0;
	left:			-182px;
	display:		block;
	width:			169px;
	height:			87px;
}
#wd.home_box a span { background: url(hbox_wd.jpg); }
#cv.home_box a span { background: url(hbox_cv.jpg); }
#sg.home_box a span { background: url(hbox_sg.jpg); }
#au.home_box a span { background: url(hbox_au.jpg); }
.home_box p {
	margin:			0 30px 0 182px;
}
.home_box p strong { display:block; }





/***************************************************
 * Footing.
 */
#footing {
	position:relative;
	display:block;
	width:100%;
	height:210px;
	background: #524500;
	color:#fff;
	
	font-family:	Arial, Helvetica, sans-serif;
	font-size:8.5pt;
	letter-spacing: 1px;
	line-height: 1.5em;
}
#footing form {
	position:absolute;
	left:50%;
	margin: 0 0 0 -400px;
	width:795px;
}
#footing div {
	display:block;
	width:285px;
	height:200px;
	float:left;
	text-align: left;
}
#footing div.c2 p, #footing div.c3 p {
	margin:10px 0 24px 20px;
	padding-left: 40px;
}
#footing label {
	display:block;
}
#footing div.c1 {
	width:191px;
	margin:0;
}
#footing div.c1 h3 {
	font-size:10pt;
	font-weight:bold;
	margin: 10px 0 0 0;
}
#footing p.p1 input, #footing p.p2 input, #footing p.p3 textarea {
	width:200px;
	height:16px;
	
	font-family: Tahoma;
	letter-spacing: 1px;
	font-size:7.5pt;
	font-weight:bold;
}
#footing p.p3 textarea {
	height:83px;
}
/* Numeri nel form contatto rapido. */
#footing p.p1 {
	background: url(cf1.jpg) 0 13px no-repeat;
}
#footing p.p2 {
	background: url(cf2.jpg) 0 11px no-repeat;
}
#footing p.p3 {
	background: url(cf3.jpg) 0 13px no-repeat;
}

/**
 * Credits
 */
#footing hr, #footing h4 { display:none; }
#footing .credits {
	position:absolute;
	top:190px;
	left:50%;
	margin: 0 0 0 -400px;
	
	display:block;
	width:795px;
	height: 18px;
}
#footing .credits p {
	margin:0 20px 0 0;
	float:right;
}
#footing .credits p, #footing .credits p a {
	color:#fff;
	font-family: Arial;
	font-size: 8pt;
}
#footing .credits p a {
	font-weight: bold;
	color:yellow;
}
#footing .credits p a:hover {
	color:black;
}
#footing .credits p a.external{ 
	color: #fff; 
	text-decoration: none;
}





/**
 * Definizioni di nicchia per elementi specifici delle pagine.
 * eliminazione delle immagini dal contenuto della pagina.
 */
.menu_right {
	margin:40px 0 400px 0;
	list-style: none;
	padding: 30px 20px 150px 20px;
	background: url(sf_menu_right.gif) no-repeat;
}
.menu_right li a {
	display:block;
	margin-bottom:5px;
	color:#4f4414;
	text-decoration: none;
}
.menu_right li a:first-letter {
	font-weight:bold;
	font-size:11pt;
}
.menu_right li a:hover {
	color: #900;
	text-decoration: underline;
}
#icol_web_design {
	background: url(images/matite.jpg) bottom right no-repeat;
	min-height: 500px;
	height: auto !important;
	height: 500px;
}
#icol_cross_browser {
	background: url(images/browser.jpg) bottom right no-repeat;
	min-height: 500px;
	height: auto !important;
	height: 500px;
}
#icol_gestione {
	background: url(images/gestione.jpg) bottom right no-repeat;
	min-height: 500px;
	height: auto !important;
	height: 500px;
}
#icol_accessibilita {
	background: url(images/accessibilita.jpg) bottom right no-repeat;
	min-height: 500px;
	height: auto !important;
	height: 500px;
}









/**
 * Form contatti in pagina dedicata.
 */
#content div.contacts {
	background: 	url(images/contacts.jpg) 0px 20px no-repeat;
	height:			360px;
	width:			260px;
	padding:		45px 0 0 180px;
}
#content div.contacts p.t2 {
	width: 140px;	
}
form.contacts {

}
form.contacts p {

}
form.contacts p label {
	display:block;
	color:black;
	font-size:10px;
}
form.contacts p input, form.contacts p select, form.contacts p textarea {
	border: 1px solid #524500;
	font-size:12px;
}
form.contacts p input.form_error {
	border:2px solid red;
	padding:1px;
	font-size:8.5pt;
	color:#900;
}

form.contacts p.submit input {
	font-weight:bold;
}

form.contacts div.errors {
	font-size:8pt;
	background:#ffeaed;
	padding:5px;
	border:1px solid #666;
}
form.contacts div.errors h3 {
	color:#900;
	font-size:8pt;
	margin:0 0 10px 0;
}
form.contacts div.errors div {
	margin: 0 0 2px 10px;
	color:black;
}