* {
	margin: 0;
	padding: 0;
	border: none;
}
body {
	font-family: Tahoma, 'Lucida Grande CE', lucida, sans-serif;
	font-size: small;
	color: #32004B;
	background: #D7DCE2;
	padding: 12px 0;
}
a {
	color: #32004B;
	text-decoration: none;
}
.invisible, hr {
	display: none;
}
.page {
	width: 726px;
	margin: 0 auto;
	background: url("/images/page.png") repeat-y left top;
}
.header {
	padding: 9px 9px 0 9px;
	background: url("/images/headertop.png") no-repeat left top;
}
.header h1 {
	position: relative;
	width: 708px;
	height: 128px;
	overflow: hidden;
	font-size: 130%;
	background: #F8FAF7;
}
.header h1 a {
	display: block;
	width: 708px;
	height: 128px;
	cursor: pointer;
	text-decoration: none;
	color: #FFA21E;
	padding: 40px 0 0 50px;
}
.header h1 a:hover {
	text-decoration: underline;
}
.header h1 a strong {
	color: #789AD6;
	font-size: 140%;
}
.header h1 span {
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	width: 708px;
	height: 128px;
	background: url("/images/header.jpg") no-repeat left top;
}
.topmenu {
	width: 708px;
	background: #B7C4CE url("/images/topmenu.png") repeat-x left top;
	z-index: 10;
	margin: 0 9px;
}
.topmenu ul {
	padding-left: 35px;
}
.topmenu ul li.main-li {
	float: left;
	list-style-type: none;
	position: relative;
}
.topmenu ul li.main-li a {
	display: block;
	padding: 9px 9px 3px 8px;
	background: url("/images/divider.png") no-repeat right bottom;
	font-weight: bold;
	font-size: 86%;
	min-height: 20px;
}
.topmenu ul li.last a {
	padding-right: 8px;
	background: none;
}
.topmenu ul li a:hover {
	color: #790000;
}
.topmenu ul li.main-li:hover .submenu {
	visibility: visible;
}
.topmenu .submenu {
	background: #CDCDCD;
	padding: 5px 14px 5px 8px;
	filter: alpha(opacity=80);
	-moz-opacity: 0.8;
	opacity: 0.8;
	-khtml-opacity: 0.8;
	width: 78px;
}
.topmenu li.main-li>.submenu {
	position: absolute;
	top: 32px;
	left: 16px;
	z-index: 10;
	visibility: hidden;
}
.topmenu ul li.main-li .submenu li {
	list-style-type: none;
}
.topmenu ul li.main-li .submenu li a {
	float: none;
	background: none;
	font-weight: normal;
	font-size: 78%;
	min-height: 0;
	height: auto;
	padding: 2px 0;
	width: 100%;
}
.topmenu ul li.main-li .submenu li a:hover {
	text-decoration: underline;
}
.main-box {
	margin: 0 9px;
	padding-top: 9px;
	background: #FBDDCD url("/images/mainbox1.png") no-repeat left top;
}
.main {
	background: url("/images/main1.jpg") no-repeat left bottom;
	min-height: 107px;
	height: auto;
	padding: 20px 45px 210px 45px;
}
h2 {
	color: #790000;
	font-size: 300%;
	font-weight: normal;
	position: relative;
	width: 465px;
	height: 57px;
	overflow: hidden;
}
h2 span {
	display: block;
	position: absolute;
	z-index: 0;
	left: 0;
	top: 0;
	width: 465px;
	height: 57px;
	background: url("/images/wearehere.png") no-repeat left top;
}

.main p {
	padding: 5px 0 0 8px;
	width: 386px;
	font-size: 86%;
	line-height: 133%;
}
.footer {
	background: #D7DCE2 url("/images/footer.png") no-repeat left top;
	text-align: right;
	font-size: 78%;
	padding: 4px 18px 0 0;
}
.cleaner {
	font-size: 0;
	line-height: 0.0;
	height: 0;
	clear: both;
}
/* common_page start */
.common_page .main-box {
	padding-top: 0;
	background: #FEF766 url("/images/mainbox2.png") no-repeat right top;
}
.common_page .main {
	background: url("/images/main2.jpg") no-repeat left top;
	min-height: 311px;
	height: auto;
	padding: 35px 30px 0 338px;
}
.common_page h2 {
	width: 187px;
	height: 46px;
	margin-bottom: 25px;
}
.common_page h2 span {
	width: 187px;
	height: 46px;
	background: url("/images/chisiamo.png") no-repeat left top;
}
.common_page .main p {
	width: auto;
	padding: 0 0 18px 3px;
}
/* common_page end */
/* operiamo start */
.operiamo .main-box {
	padding-top: 0;
	background: #FFFFCC url("/images/mainbox3.png") no-repeat left top;
}
.operiamo .main {
	background: url("/images/main3.jpg") no-repeat right top;
	min-height: 306px;
	height: auto;
	padding: 40px 0 0 46px;
	position: relative;
}
.operiamo h2 {
	width: 182px;
	height: 106px;
	margin-bottom: 20px;
}
.operiamo h2 span {
	width: 182px;
	height: 106px;
	background: url("/images/operiamo.png") no-repeat left top;
}
.operiamo .main p {
	width: 222px;
	padding-bottom: 18px;
}
.flag {
	position: absolute;
	z-index: 1;
}
/* ------------------------- flags ----------------------------*/
/* Change top and right value below for changing flag position */
/* ------ top value are pixels from top edge of the map ------ */
/* ---- right value are pixels from right edge of the map ---- */
/* ------------------------- flags ----------------------------*/
#flag1 {
	top: 18px;
	right: 253px;
}
#flag2 {
	top: 15px;
	right: 41px;
}
#flag3 {
	top: 84px;
	right: 140px;
}
#flag4 {
	top: 165px;
	right: 6px;
}
#flag5 {
	top: 238px;
	right: 184px;
}
/* operiamo end */

/* =========================================== */
/* = Styles for Ruby on Rails error handling = */
/* =========================================== */

div.fieldWithErrors {
	display: inline;
	border: 3px solid red;
}

#errorExplanation {
  width: 320px;
  padding: 2px;
  margin-bottom: 20px;
}

#errorExplanation h2 {
  width: 320px;
  height: 18px;
  font-weight: bold;
  padding: 5px 2px 2px 5px;
  font-size: 12px;
  margin: 0;
  color: #c00;
}

#errorExplanation p {
  font-size: 100%;
  margin-bottom: 0;
  padding: 5px;
}

#errorExplanation ul li {
  font-size: 12px;
  list-style: square;
  margin-left: 20px;
}

/* =============== */
/* = Form Styles = */
/* =============== */

form {
  font-size: 100%;
  width: 450px;
}


fieldset {
  margin: 20px 0; 
  padding: 1em;
}

legend {
  font-size: 100%;
  font-weight: bold;
  color: #333;
}


label {
  display: block;
  color: #333;
  float: left;
  width: 100px;
}

.required {
  font-size: 120%;
  color:#de4908;
}

input, textarea {
  width: 200px;
  padding: 1px;
  border: 1px inset #999;
}


input.radio, input.submit {
  width: auto;
}

input:focus, textarea:focus {
/*  background: #edfade;*/
}

input.radio {
  float: left;
  margin-right: 1em;
}

textarea {
  width: 300px;
  height: 100px;
}

input.submit {
 float: right;
 border-style: outset;
 padding: 3px;
}

.requiredlegend {
  float: left;
  padding-left: 20px;
  font-size: 90%;
  color: #333;
}

/* ================ */
/* = Table Styles = */
/* ================ */

table,td
{
	border          :1px solid #CCC;
	border-collapse :collapse;
	font            :small/1.5 "Tahoma", "Bitstream Vera Sans", Verdana, Helvetica, sans-serif;
}                   
table               
{                   
	border          :none;
	border          :1px solid #CCC;
	width			:100%;
}                   
thead th,           
tbody th            
{                   
	background      : #FFF url(/images/th_bck.gif) repeat-x;
	color           : #666;  
	padding         : 5px 10px;
	border-left     : 1px solid #CCC;
}                   
tbody th            
{                   
	background      : #fafafb;
	border-top      : 1px solid #CCC;
	text-align      : left;
	font-weight     : normal;
}                   
tbody tr td         
{                   
	padding         : 5px 10px;
	color           : #666;
}                   
                    
tbody tr:hover      
{                   
	background      : #FFF url(/images/tr_bck.gif) repeat;
}                   
                    
tbody tr:hover td   
{                   
	color           : #454545;
}                   
                    
tfoot td,           
tfoot th            
{                   
	border-left     : none;
	border-top      : 1px solid #CCC;
	padding         : 4px;
	background      : #FFF url(/images/foot_bck.gif) repeat;
	color           : #666;
}                   
caption             
{                   
	text-align      : left;
	font-size       : 120%;
	padding         : 10px 0;
	color           : #666;
}                   
table a:link        
{                   
	color           : #666;
}                   
table a:visited     
{                   
	color           : #666;
}                   
table a:hover       
{                   
	color           : #003366;
	text-decoration : none;
}                   
table a:active      
{                   
	color           : #003366;
}

/* =============== */
/* = misc styles = */
/* =============== */

h4 {
	color: #790000;
	font-size: 120%;
	font-weight: normal;
	margin: 20px 0px;
	position: relative;
}

/* ===================== */
/* = pagination styles = */
/* ===================== */

div#pages {
	font-size: 99%;
	font-weight: bold;
	color: #666;
}

div#pages a {
	padding: 3px;
	border: 1px solid #999;
	color: #666;
}

div#pages a:hover {
	color: #fff;
	background-color: #666;
}
