/* CSS Resets & gnerale use classes
-----------------------------------------------------------------------------*/
* {
	margin: 0;
	padding: 0;
}
body { font: 9pt/1.5em Arial, Verdana, Tahoma, sans-serif;	color: #595959; width: 100%; }

h1, h2, h3, h4, h5, h6, b, strong, dfn { font-weight: bold; color: #000;}
h2 { font-size: 30px; }
h2 { font-size: 26px; }
h3 { font-size: 22px; }
h4 { font-size: 18px; }
h5 { font-size: 16px; }
h6 { font-size: 12px; }
em, i, dfn { font-style: italic; }

p, code, pre, kbd {	
	margin: 0 0 1em 0;
}

dl, ul, ol { margin: 10px 5px; }
dt { font-weight: bold; } 
dd, li { padding: 0 0 0.5em 0; }
dd { margin: 0 10px; }
li { margin: 0 25px; }
dd dl { margin-top: 0px; margin-left: 0px; }
td ul {margin: 0px 5px;}
td ul li { padding: 0px; }

del { text-decoration: line-through; }
ins { text-decoration: none; }

blockquote { margin: 0 1.5em 1.5em 1.5em; }

cite { font-style: italic; }

table {	margin-bottom: 1.4em; width:100%; }

th { font-weight: bold; }

th, td, caption { padding: 4px 10px 4px 5px; }

tfoot {	font-style: italic; }

sup, sub { line-height: 0; }

abbr, acronym { border-bottom: 1px dotted; }

img { border: none; }
img.centered, .aligncenter, div.aligncenter {
	display: block;
	margin-left: auto;
	margin-right: auto;
}
img.floatright { display: inline; }
img.floatleft {	display: inline; }
.floatright { float: right;	margin-left: 10px; }
.floatleft { float: left; margin-right: 10px; }
dl.floatleft { margin-right: 5px; }
.alignright { text-align: right; }

a, a:link, a:visited { outline: none; text-decoration: none; color: #595959; }
a:hover, a:active { color: #bf2326; }

form fieldset {
	padding: 10px;
	border: 1px solid #BFBFBF;
	margin-bottom: 15px;
}
legend {
	padding: 0px 5px; 
	font-weight: bold;
	font-size: 1.2em;
}
label {
	padding: 5px;
	margin: 5px;
}
#maincontent label { display: block; }
input, textarea {	vertical-align: middle;
	border: 1px solid #CCCCCC;
	margin: 0 0 10px;
	padding: 5px;
 }
select { border: 1px solid #e1e1e1;}

strong { color: #000; }

* html .clearfix {
    height: 1%;
}
* + html .clearfix {
	display: inline-block;
}
.clearfix:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}
* html .group {
    height: 1%;
}
* + html .group {
	display: inline-block;
}
.group:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}

/* General classes */
.redheader { color: #bf2326; }
.greenheader { color: #9fc54b; }
.dkgreenheader{ color: #35781a; }
.archeobusheader { font-family: 'Times New Roman',Times,serif; }
.date { color: #999; font-weight: bold; }
.geo { display: none; }

/* CSS Hover Tooltips
-----------------------------------------------------------------------------*/
a.tooltip:hover { background: #ffffff; text-decoration: none; } /*BG color is a must for IE6*/
a.tooltip span {
	display: none; 
	margin-left: 8px;
	padding: 2px 3px; 
	width: 260px; 
	z-index: 500;
	font-size: 11px;
	font-weight: normal;
}
a.tooltip:hover span{
	display: inline; 
	position: absolute; 
	z-index: 500;
	border: 1px solid #cccccc; 
	background: #FEFFBF; 
	color: #6c6c6c;
}
/* Layout start
-----------------------------------------------------------------------------*/
#wrapper { margin: 0 auto; width: 800px; }

/* Header
-----------------------------------------------------------------------------*/
#header { height: 130px; background: #fff url(../img/trambus-testata-v2.jpg) no-repeat right top; }

/* Header - Logos CSS Image Replacement*/
#trambuslogo,
h3#openheader, 
h3#archeobusheader { position: relative; }

#trambuslogo span,
h3#openheader span.imgreplace, 
h3#archeobusheader span.imgreplace {
	height: 100%;
	width: 100%;
	position: absolute;
}

#trambuslogo span { background: url(../img/trambus-open-logo.png) no-repeat bottom; cursor: pointer; }
#trambuslogo {
	float: left;
	height: 90px;
	width: 200px;
}

/* Header - Primary navigation bar : CSS UL List Menus provided by superfish.css */
#mainNav {

	float: right;
	margin-top: -10px;
	display: block;
	position: relative;
	height: 27px;
	width: 800px; 
	z-index:  500;
	background: url(../img/menu-bar2.png) no-repeat right top;
}
/* Header - Tagline */
#header h2 { 
	float: left;
	padding-left: 220px;	
	font-size: 13px;
}
/* Header - Language switching */

#langNav ul li a.it, #langNav ul li a.it:hover,
#langNav ul li span.it, #langNav ul li span.it:hover {background: url(../img/icons/it.png) no-repeat left center;}
#langNav ul li a.en, #langNav ul li a.en:hover,
#langNav ul li span.en, #langNav ul li span.en:hover {background: url(../img/icons/en.png) no-repeat left center;}
#langNav ul li a.es, #langNav ul li a.es:hover,
#langNav ul li span.es, #langNav ul li span.es:hover {background: url(../img/icons/es.png) no-repeat left center;}
#langNav ul li a.fr, #langNav ul li a.fr:hover,
#langNav ul li span.fr, #langNav ul li span.fr:hover {background: url(../img/icons/fr.png) no-repeat left center;}

/* Middle
-----------------------------------------------------------------------------*/
#middle { height: 1%; border-left: 200px solid #fff; }
#middle:after {
	content: '.';
	display: block;
	clear: both;
	visibility: hidden;
	height: 0;
}
#main {
	width: 100%;
	float: left;
/*	overflow: hidden; */
	margin-right: -100%;
	margin-top: 10px;
}
#row2 { min-height: 250px; }
/* Middle - Subdivisions */
#openbus,
#archeobus,
#row2 #subrowA .leftSubCol, 
#row2 #subrowA .rightSubCol { width: 48%; }

#openbus, #row2 #subrowA .leftSubCol { float: left; }
#archeobus, #row2 #subrowA .rightSubCol { float: right; }

/* Middle - Main content headings */
#maincontent h1, #maincontent h2, #maincontent h3, #maincontent h4, #maincontent h5 { 
	margin-bottom: 10px; 
	font-weight: bold; 
}
#maincontent h1, #maincontent h2, #maincontent h3, #maincontent h4, #maincontent h5, #maincontent h6,
#biglietteria h3, #trambusNews h4 { 
	text-transform:lowercase; 
}

/* Middle - CSS Image replacement x headings
-----------------------------------------------------------------------------*/
h3#openheader, h3#archeobusheader { font-size: 32px; }
h3#openheader, h3#archeobusheader {	height: 99px; }
h3#openheader a, h3#archeobusheader a { 
	 vertical-align: middle !important;
	 line-height: 32px;
	 color: #000;  
}
/* Middle - Credit cards */
ul.creditcards {text-align: right;}
.creditcards li  {
	display: inline;	
	margin: 0;
	padding: 0 15px 0px 0px;
	list-style-type: none;
}
.creditcards li span { display: none; }
/* Middle - Info links, 3 Cols & header lists */
ul.infolinks, ul.infolinks li,
ul.infolinks-header, ul.infolinks-header li { 
	margin: 0px;
	padding: 0px;
	font-size: 15px; 
}
ul.infolinks li { 
	width: 90px;
	list-style-type:none; 
	line-height: 20px;	
}
ul.infolinks li a, ul.infolinks-header li a {
	display: block;
	padding-left: 20px;	
	color: #8c8c8c; 
	background: url(../img/icons/infolink-sprites.png) no-repeat top center;
}

ul.infolinks li.businfo, ul.infolinks li.buspercorso { margin-left: 0em; }
ul.infolinks li.busorario, ul.infolinks li.bustariffe { margin-left: 93px; }
ul.infolinks li.busfoto, ul.infolinks li.busguide { margin-left: 188px; }
ul.infolinks li.busorario, ul.infolinks li.busfoto { margin-top: -40px;}
 
li.businfo a, li.businfo a:link, li.businfo a:visited { background-position: 0px -78px; }
li.businfo a:hover, li.businfo a:active, li.businfo a.current { background-position: 0px 0px; color: #7d91b8; }

li.buspercorso a, li.buspercorso a:link, li.buspercorso a:visited { background-position: 0px -544px; }
li.buspercorso a:hover, li.buspercorso a:active, li.buspercorso a.current { background-position: 0px -466px; color: #759137; }

li.busorario a, li.busorario a:link, li.busorario a:visited { background-position: 0px -388px; }
li.busorario a:hover, li.busorario a:active, li.busorario a.current { background-position: 0px -310px; color: #cb585c; }

li.bustariffe a, li.bustariffe a:link, li.bustariffe a:visited { background-position: 0px -695px; }
li.bustariffe a:hover, li.bustariffe a:active, li.bustariffe a.current { background-position: 0px -622px; color: #c47718; }

li.busfoto a, li.busfoto a:link, li.busfoto a:visited { background-position: 0px -841px; }
li.busfoto a:hover, li.busfoto a:active, li.busfoto a.current { background-position: 0px -768px; color: #8c668c;}

li.busguide a, li.busguide a:link, li.busguide a:visited { background-position: 0px -233px; }
li.busguide a:hover, li.busguide a:active, li.busguide a.current { background-position: 0px -156px; color: #f26522;}

/* Biglietteria Generale
-----------------------------------------------------------------------------*/

#biglietteria {
	position: relative;
	padding: 10px;
	z-index: 200;
	border: 2px solid #999;
	font-size: 11px;
}
#biglietteria h3 { 
	margin: 0px 0px 10px 0px;
	padding: 0px 2px;
	position: absolute;
	top: -20px;
	z-index: 300;
	background: #fff url(../img/shim-fff.gif) repeat;
	line-height: 32px;
	text-align: center;
	font-size: 31px; 
	font-weight: bold;
}
#biglietteria form { padding-left: 4px;  }
#biglietteria form fieldset {
	margin: 0px;
	padding: 0px;
	border: 0px;
}
#biglietteria label, .fauxlabel { 
	color: #000;
	font-size: 13px; 
	font-weight: bold;  
	background-color: transparent;
	padding: 0px;
	margin: 0px;
}
#biglietteria select { font-size: 11px; }
#biglietteria select#Linea { display: block; }
#Linea option {padding: 3px 0px;}
#Linea optgroup {
  font-size: 10px !important;
  font-style: normal !important;
  font-weight: bold !important;
  padding: 3px 0px;
  background-color: #ccc;          
}

#Linea optgroup option{
  padding-left: 10px !important;
  color: #000;
  background-color: #fff;    
}  

#biglietteria .fauxlabel { margin: 5px 0px; padding: 0px; }
#biglietteria .fauxlabel a.tooltip { color: #bf2326; font-size: 14px; font-weight: bold; }
#biglietteria input#Prosegui, input#Prosegui2,
.shinybuttonGreen a, a.shinybuttonGreen, input.shinybuttonGreen {
	display: block;
	margin: 10px auto 5px auto;
	padding: 3px 10px;
	border: 1px solid #9fc54b;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	background: #0b5a07 url(../img/icons/dk-green-button-50.gif) repeat-x center;
	cursor: pointer;
}
#scuole {
	height: 30px;
	margin-bottom: 15px;
	border: 2px solid #999;
	border-top: 0px;
	background-color: #e2e1e1;
}
#scuole ul {
	margin: 0px;
	padding: 0px;
	height: 100%;
	width: 100%; 
}
#scuole ul li{
	float: left;
	margin: 0px;
	padding: 0px;	
	height: 100%;
	width: 49%;	
	list-style-type: none;
	font-size: 13px;
	vertical-align: middle;
}
#scuole ul li a {
	display: block;
	text-align: center;
	padding: 5px 5px 5px 20px;
	color: #999;
	height: 100%;
}
#scuole ul li.schools a {padding-top: 2px !important;}
#scuole ul li.schools {background: url(../img/icons/gruppi.gif) no-repeat 5px center; border-right: 2px solid #999; line-height: 0.9em;}
#scuole ul li.operators {background: url(../img/icons/operatori.gif) no-repeat 5px center;}

.shinybuttonRed a, a.shinybuttonRed, input.shinybuttonRed {
	display: block;
	margin: 10px auto 5px auto;
	padding: 3px 10px;
	border: 1px solid #BF2326;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	background: #BF2326 url(../img/icons/red-button-50.gif) repeat-x center;
	cursor: pointer;
}

/* Sidebar Left
-----------------------------------------------------------------------------*/
#leftCol {
	float: left;
	padding-right: 45px;
	position: relative;
	left: -200px;
	top: -15px;
	width: 200px;
	background: transparent;
}

/* Trambus News Div */
#leftCol #trambusNews {
	clear: both;
	margin-bottom: 20px;
	padding: 10px;
	border: 2px solid #999;
	font-size: 11px;
}
#leftCol #trambusNews h4 { 
	margin: -22px 0px 10px 0px;
	padding: 2px;
	position: relative;
	z-index: 1;
	border-bottom: 1px solid #fff;
	background: #fff url(../img/shim-fff.gif) repeat;
	text-align: center;
	font-size: 17px; 
}
#leftCol #trambusNews h6 { font-size: 12px; }
#leftCol #trambusNews h6, #leftCol #trambusNews p { padding-left: 2px; }
#leftCol #trambusNews a { color: #bd1c24; font-weight: bold; text-decoration: none; }
#leftCol #trambusNews a:hover { color: #999; }

#leftCol #trambusNews .newscycle {min-height: 300px;}
/* Numero verde */
#numeroverde {
	padding: 0px 0px 0px 25px;
	height: 50px;
	color: #0B5A07;
	font-weight: bold;
	font-size: 12px;
	background: url(../img/icons/numero-verde.png) no-repeat top left;
}
#numeroverde span {
	padding: 0px 2px;
	color:  #000;
	font-size: 27px;
	line-height: 27px;
}
/* Footer
-----------------------------------------------------------------------------*/
#footer {
	margin: 40px 0px 20px 0px;
	height: 60px;
	background: transparent;
	font-size: 11px;
	text-align: center;
}
#footer strong { font-weight: bolder; }
#footer a, #footer p, #footer strong { color: #8c8c8c; }
#footer a:hover { color: #bd1c24; }
#footer ul { margin-bottom: 10px;}
#footer li  {
	display: inline;
	margin: 0;
	padding: 0 2px;
	list-style-type: none;
}
