html, body, div, span, p, a, em, img, strong, fieldset, form, label, legend { margin:0; padding:0; border:0; outline:0; font-size:100%; }
body { background:#ffffff; font-family: Arial, Helvetica, sans-serif; font-size:12px; line-height:150%; text-align:center; position:relative; }

#container { width:920px; padding:0; margin:0 auto; background:#FFFFFF; }

/* footer */
#footer-wrapper { background:#000000; border-top:1px solid #222222; margin:30px 0 0 0; padding:20px 0; }
#footer { margin:0 auto; padding:15px 0; width:920px; color:#999999; text-align: left; }

#footer a:link, #footer a:visited { color:#FFFFFF; }
#footer a:hover, a:focus, a:active { color:#666666; }
#footer-left { width:690px; float:left; display:inline; margin-right:30px; }
#footer-right { width:200px; float:left; display:inline; text-align:center; }
#footer-right a { width:198px; border:1px solid #222222;  text-transform:uppercase; font-size:11px; display:block; padding:10px 0; }

inplaceeditor-saving { padding:5px 0;}
form.inplaceeditor-form input[type="text"] { border:none; width:200px; text-align:left; padding:5px 0; }

form.inplaceeditor-form input[type="submit"] { float:right; clear:both; margin-top:5px; padding:5px 10px; border:none; color:#FFFFFF; background:#111111; }


/* ............... HEADER */
#header { width:920px; margin:0 auto; height:120px; position:relative; border-bottom:2px solid #111111; }

h1#logo { width:130px; height:110px; line-height:110px; margin:0; background:url(logo2.jpg) no-repeat; float:left }
h1#logo a { display:block; width:130px; height:110px; text-indent:-9999px; }

#language { position:absolute; bottom:20px; right:0; padding:0; text-align:right; }
#language a, #language a:hover { margin:0 0 0 20px; color:#111111; font-size:10px; text-transform:uppercase; letter-spacing:1px; }
/*#language a.eng {  background-repeat:no-repeat; background-position:0 center; padding-left:20px;  background-image: url(eng.gif); }
#language a.ita { background-image: url(ita.gif); }*/


/* .............. PROTOFADE */
#protofade, #picture { position:relative; width:920px; height:420px; margin:0 auto 20px auto; background:#CCCCCC; overflow:hidden; }
#protofade div { position:absolute; top:0; left:0; margin:0; padding:0; background:none; width:920px; height:420px; overflow:hidden; }



/* .............. NAVIGATION */
#nav-bar { width:920px; height:45px; margin:0 auto 20px auto; background:#111111; }

#navigation  { float:left; }
#navigation li { float:left; position:relative; padding:0; border-right:1px solid #333333; }
#navigation a { display:block; float:left; padding:0 60px 0 20px; height:45px; line-height:45px; }
#navigation a:link, #navigation a:visited  { color:#FFFFFF; }
#navigation a:hover, #navigation a:focus, #navigation a:active { color:#FFFFFF; background:#1A1A1A; }

#navigation ul { width:14em; background:#111111; position:absolute; top:45px; left:0; }
#navigation ul li { text-indent:0; float:left; white-space:nowrap; width:100%; text-align:left; background:#111111; overflow:hidden; border-bottom:1px solid #333333; border-right:none; }
#navigation ul li a { display:block; float:none; }

/* .............. CONTENT */
#content { width:920px; min-height:400px; margin:0 auto; }

.testo { text-align:left; }


#gallery { margin-top:25px; }
.box-thumb { width:200px; float:left; display:inline; margin:0 40px 20px 0; text-align:center; }
.box-thumb p { font-size:11px; }

div.last { margin-right:0; }

.thumb-portfolio { width:140px; float:left; display:inline; margin:0 16px 16px 0; text-align:center; }
.thumb-portfolio p { font-size:11px; }


table { width:100%; margin:20px 0; padding:0; border-collapse:collapse; }
th, td { border-top:1px solid #CCC; border-bottom:1px solid #CCC; padding:10px; font-size:12px; }


#side-left { width:200px; float:left; display:inline; margin-right:30px; margin-top:25px; }
#side-right { width:690px; float:left; display:inline; }

/* ...... NEWS - BOOKS */
.news { margin-bottom:25px; float:left; width:920px; }
.news h2 { margin:0 0 10px 0; padding:0; }

.testo-news, .foto-news { display:inline; float:left; text-align:left; }

.testo-news { width:700px; margin:0; } 
.foto-news { width:200px; height:150px; margin:0 20px 0 0; background:url(loading.gif) no-repeat center; }
.footer-news { font-size:11px; text-align:right; margin-top:10px; }


.nav-article { margin-left:15px; }

div.pagination { clear:both; text-align:center; vertical-align:top; }
div.pagination a, div.pagination span { padding:0 5px; }


div#photo-controls { float:left; width:920px; margin-bottom:20px; }
div#photo-controls p { float:left; display:inline; width:920px; }

div#photo-controls a, div#photo-controls span { padding:0 5px;}

#map { width:920px; height:400px; }
#tooltip { padding:10px; text-align:left;}



/* ..... ARCHIVE */

#archive { }

div.archive { padding-bottom:10px; margin-bottom:20px; border-bottom:1px solid #ccc; float:left; display:inline; }

.side-left { width:200px; float:left; display:inline; margin-right:20px; }
.side-left img { float:right; display:inline; }
.side-right { width:700px; float:left; display:inline; text-align:left;  }
.side-right h3 { font-size:14px; font-weight:bold; margin-bottom:0; }

/* ..... CALENDAR */
table#calendar { width:920px; margin:20px 0; padding:0; font-size:12px; border-collapse:collapse; }
table#calendar th, table#calendar td { border:1px solid #FFFFFF; border-collapse:collapse; text-align:center; vertical-align:middle; line-height:500%;  }
table#calendar th, table#calendar td { background:#F1F1F1; padding:0; font-weight:normal; }
table#calendar tr#cal_days th { background:#cccccc; }
table#calendar th { font-weight:bold; text-transform:uppercase; }
table#calendar th a { color:#000000; }
table#calendar th a:hover { color: #666666; }
table#calendar td.cal_today, table#calendar td.cal_today a { background-color:#999999; color:#FFFFFF; }
table#calendar td a { background:#f1f1f1; display:block; color:#000000; }
table#calendar td a:hover { background-color:#999999; color:#FFFFFF; }
table#calendar td a.cal_events { background-color:#666666; color:#FFFFFF; }
table#calendar td a.cal_events:hover { background-color:#999999; color:#FFFFFF; }

table#calendar table { vertical-align:top; text-align:left }
table#calendar table td { vertical-align:top; text-align:left; line-height:150% }

.protip { padding:7px; border: 1px solid #000000; background:#F2F3F5; position: absolute; z-index:100; text-align:left; font-size:10px; }


/* .......... CONTATTI, MESSAGGI */
.form { width:920px; margin:20px 0; float:left; }
.form div { padding:10px 0; float:left; display:inline; width:460px; border-top:1px solid #CCCCCC; }

.form label { margin-right:20px; width:120px; display: block; float:left; text-align:right; }
.form legend { font-size:20px; color:#000000; margin:0; padding-bottom:10px; }
.form input, .form textarea { border:1px solid #CCCCCC; padding:3px; width:200px; background:#EEEEEE; font-size:12px; font-family: Arial, Helvetica, sans-serif; float:left; }

.form textarea { overflow:auto; width:510px; }
.form div.module { clear:both; width:920px; float:left; }
.form div.module input { width:100px; }

.form img { float:left; display:inline; margin-left:10px; }

.form input#button { font-size:12px; margin-left:140px; padding:4px 0; height:auto; float:left; width:60px; cursor:pointer; color:#FFFFFF; border:none; background:#111111; }

.form span { float:left; }

#newsletter-subscribe input.checkbox { width:auto; float:left; display:inline; margin-right:15px; padding:0; background:none; border:none; }

div.module p { margin:0; padding-right:10px; float:right; }

.form input.hoverfocus, .form select.hoverfocus, .form textarea.hoverfocus { border:1px solid #111111;}

#error, #response { margin:25px auto 0 auto; padding:5px 0; text-align:left; }
#error li { margin:0; padding:0 0 5px 15px; }
#working { padding:20px 0 20px 35px; background:url(loading.gif) no-repeat left center; text-align:left; }



/* .............. TYPOGRAPHY */
h1, h2, h3, h4, h5, h6 { font-weight:normal; margin:0; padding:0; text-align:left; font-family: Arial, Helvetica, sans-serif; line-height:100%; }

h1 { font-size:24px; margin:30px 0; }
h2 { font-size:20px; margin:25px 0; }
h3 { font-size:18px; margin:20px 0 10px 0; }
h4 { font-size:16px; margin:15px 0 10px 0; }
h5 { font-size:14px; margin:10px 0 5px 0; }
h6 { font-size:12px; margin:10px 0 5px 0; }

h2.title { padding-bottom:3px; border-bottom:1px solid #CCCCCC; }


ol, ul, li { list-style-type:none; margin:0; padding:0;}
p { margin:0 0 5px 0; }

a { text-decoration:none; }
a:link, a:visited { color:#000000; }
a:hover, a:focus, a:active { color:#666666; }

.testo ul, ul.list { margin:0 0 10px 0; padding:0; list-style-type:none; text-align:left;}
.testo li, ul.list li { margin:0; padding:0 0 5px 15px; background:url(bullet.gif) no-repeat left 3px; }


/* ..... COMMON RULES */
.small { font-size:11px; }
.italic { font-style:italic; }
.left { text-align:left; }
.right { text-align:right; }
.center { text-align:center; }
.justify { text-align:justify;}
.hidden { display: none; }

/* ..... CLEAR RULES*/
html body div.clear, html body span.clear { background:none; border:0; clear:both; display:block; float:none; font-size:0; margin:0; padding:0; overflow:hidden; visibility:hidden; width:0; height:0; }
#sb-container, #sb-wrapper { text-align:left; }
#sb-container, #sb-overlay { position:absolute; top:0; left:0; width:100%; margin: 0;
  padding: 0;
}
#sb-container {
  height: 100%;
  display: none;
  visibility: hidden;
  z-index: 999;
}
body > #sb-container {
  /* use position:fixed in modern browsers */
  position: fixed;
}
#sb-overlay {
  /* needed in IE6 where sb-container uses position:absolute */
  height: expression(document.documentElement.clientHeight + 'px');
}
#sb-container > #sb-overlay {
  /* use for sb-container position:fixed */
  height: 100%;
}


#sb-wrapper {
  position: relative;
}
#sb-wrapper img {
  border: none;
}


#sb-body {
  position: relative;
  margin: 0;
  padding: 0;
  overflow: hidden;
  border: 1px solid #303030;
}
#sb-body-inner {
  position: relative;
  height: 100%;
}
#sb-content.html {
  height: 100%;
  overflow: auto; /* make html content scrollable */
}

#sb-loading {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  padding-top: 10px;
  background:transparent url(shadowbox/loading.gif) no-repeat scroll 50% 50%;
}
#sb-body, #sb-loading {
  background-color: #060606; /* should match loading image background color */
}


#sb-title, #sb-info {
  position: relative;
  margin: 0; /* these must have no vertical margin or padding */
  padding: 0;
  overflow: hidden;
}
#sb-title-inner, #sb-info-inner {
  position: relative;
  font-family: Arial, Helvetica, sans-serif;
  line-height: 16px;
}
#sb-title, #sb-title-inner {
  height: 26px;
}
#sb-title-inner {
  font-size: 16px;
  padding: 5px 0;
  color: #fff;
}
#sb-info, #sb-info-inner {
  height: 20px;
}
#sb-info-inner {
  font-size: 12px;
  color: #fff;
}


#sb-nav {
  float: right;
  height: 16px;
  padding: 2px 0;
  width: 45%;
}
#sb-nav a {
  display: block;
  float: right;
  height: 16px;
  width: 16px;
  margin-left: 3px;
  cursor: pointer;
}
#sb-nav-close {
  background-image: url(shadowbox/close.png);
  background-repeat: no-repeat;
}
#sb-nav-close:hover{ background-image:url(shadowbox/close_hover.png); }
#sb-nav-next {
  background-image: url(shadowbox/next.png);
  background-repeat: no-repeat;
}
#sb-nav-next:hover{ background-image:url(shadowbox/next_hover.png); }
#sb-nav-previous {
  background-image: url(shadowbox/previous.png);
  background-repeat: no-repeat;
}
#sb-nav-previous:hover{background-image:url(shadowbox/previous_hover.png);}
#sb-nav-play {
  background-image: url(shadowbox/play.png);
  background-repeat: no-repeat;
}
#sb-nav-play:hover{ background-image:url(shadowbox/play_hover.png); }
#sb-nav-pause {
  background-image: url(shadowbox/pause.png);
  background-repeat: no-repeat;
}
#sb-nav-pause{ background-image:url(shadowbox/pause_hover.png); }

#sb-counter {
  float: left;
  padding: 2px 0;
  width: 45%;
}
#sb-counter a {
  padding: 0 4px 0 0;
  text-decoration: none;
  cursor: pointer;
  color: #fff;
}
#sb-counter a.sb-counter-current {
  text-decoration: underline;
}


div.sb-message {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
  padding: 10px;
  text-align: center;
}
div.sb-message a:link, div.sb-message a:visited {
  color: #fff;
  text-decoration: underline;
}

