@import url('font-awesome.css');
@import url('balloon.min.css');

* { text-transform:lowercase; border:0px; list-style:none; margin:0px; padding:0px; outline:none; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; *behavior: url(boxsizing.htc); -webkit-appearance: none; -moz-appearance: none; appearance: none; transition: all 0.2s ease-in-out;  -webkit-transition: all 0.2s ease-in-out; -moz-transition: all 0.2s ease-in-out; -o-transition: all 0.2s ease-in-out;  -ms-transition: all 0.2s ease-in-out; }
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }
html { font-size: 100%; }
body {background: #FFF; margin: 0px; font-family: Arial,Helvetica Neue,Helvetica,sans-serif; font-size:13px; -webkit-text-size-adjust:100%;  color:#222; text-align:left; }
a { text-decoration:none; outline:none; color:#222; text-overflow:ellipsis; }
a:hover { color:#777; }
b, strong, .b { font-weight:600; }
h1, h2, h3, h4 { line-height:normal; margin:0px; }
h1 { font-size:22px; }
h2 { font-size:14px; }
h3 { font-size:18px; font-weight:bold; }
img.scale { width:100%; height:auto; }
img.loading { background: url('../images/loading.gif') no-repeat center; }
img.border { border:1px solid #DDD; }
input, select, textarea { color:#444; font-family: FontAwesome, Arial,Helvetica Neue,Helvetica,sans-serif; font-size:13px; padding: 8px; background-color: rgba(255,255,255,0); border:1px solid #EEE; height:40px; border-radius:0px; }
input:focus, textarea:focus, select:focus { border-color: #999; }
input.error, textarea.error, select.error, body.login input.error { border-color:#FF0000; color:#FF0000; background:#ffe6e6; } 
label.error { color:#FF0000; font-size:0px; visibility:hidden; float:none; overflow:hidden; height:0px; }
input[type='checkbox'] { padding:0; height:25px; width:25px; float:left; margin-right:10px;  border: 1px solid #CCCCCC; }
input[type='checkbox']:checked { background:#666; }
select { background: url('select_arrow.png') right center no-repeat; padding-right: 40px; -webkit-appearance: none; -moz-appearance: none;  appearance: none; position:relative; }
.placeholder { color: #AAA; }
::-webkit-input-placeholder { /* Chrome/Opera/Safari */
  color: #444;
}
::-moz-placeholder { /* Firefox 19+ */
  color: #444;
}
:-ms-input-placeholder { /* IE 10+ */
  color: #444;
}
:-moz-placeholder { /* Firefox 18- */
  color: #444;
}
form .row { margin-bottom:10px; }
option { padding:0 5px; }
.btn, input[type='submit'], input[type='button'] { padding: 8px 0; border:0px; font-weight:600; cursor:pointer; display:inline-block; background-color: rgba(255,255,255,0); line-height:normal; line-height:normal; text-align:left; }
.btn-primary, input.btn-primary { background-color:#E52F15;  }
.btn-primary:hover, input.btn-primary:hover { color:#FFF; background:#95421F; }
.warning { color:#FF0000; font-weight:600; background: url('../images/icon_warning.png') no-repeat left top; padding:5px 0 5px 22px; }
.icon_info { margin-left:10px; cursor:pointer;  font-size:11px; }
.strike { text-decoration: line-through; font-weight:normal; }
.msg_error { color:#FFF; margin-bottom:20px; display:block; background:#FF0000; padding: 5px 10px;  }
.msg_success { color:#FFF; margin-bottom:20px; display:block; background:#59B200; padding: 5px 10px; }
p.limit { margin: 10px 0; font-size:11px; }
.videoWrapper { position: relative; padding-bottom: 56.25%; /* 16:9 */	padding-top: 25px; height: 0; }
.videoWrapper iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
figure.zoom { margin-bottom:20px; overflow:hidden; }
figure.zoom a:hover img { filter: none; transform: scale(1.2); }
figure.opacity a:hover img { opacity:0.5; }

ul.list_border li:first-child { border-top:0px; }
ul.list_border li { float:none; border-top:1px dotted #CCC; margin:0px; padding: 5px 0; color:#AAA; }
ul.list_border li a { display:block; }
ul.list_border li p a { display:inline; }
ul.icon_right li a i { float:right; }
ul.list_number li { list-style:decimal; margin:5px 0 5px 20px; }
ul.list_disc li { list-style:disc; margin:0 0 10px 0; }
ul.list_disc li li { list-style:circle; }

.author-box { min-height:50px; margin-bottom:20px; padding-left:60px; color:#AAA; position:relative; }
.author-box img { position:absolute; top:0; left:0; }
.author-box li, .author-box li a { color: #AAA; white-space:nowrap; }
.tool li { float:left; margin:10px 20px 0 0; color:#AAA;   }

.layout { position:relative; }
.wrapper { width:100%; margin: 0 auto; min-width:720px; clear: both; }
.content { max-width:100%; margin: 0 auto; clear: both; padding:0 40px; position:relative; }
.content-small { max-width:300px; margin:0px; }
.align_right { text-align: right; }
.align_center { text-align: center; }
.hidden { display:none; }
.bold { font-weight:600; }
.avatar { width:50px; height:50px; float:left; margin-right:10px; border-radius: 50%; }
.separator { margin-top:40px; }
.fa { margin-right:5px; }
.fr { float:right; }
.red { color:#FF0000; }
.green { color:#59B200; }
.gray, .gray a { color:#AAA; }
.black, .black a { color:#000; }
.fixed { position:fixed; }
.hidden { display:none; }
.mt40 { margin-top:40px; }
.mb40 { margin-bottom:40px; }
.mt20 { margin-top:20px; }
.mb20 { margin-bottom:20px; }

table { border-collapse: collapse; width:100%; }
table, th, td { border: 1px solid black; padding: 2px 5px; }

.group:before, .group:after { content:""; display:table; }
.group:after { clear:both; }
.col { display: block; float:left; margin: 0 0 0 1.6%; }
.col:first-child { margin-left: 0; }

.span_1_of_2 { width: 49.2%; }
.span_2_of_2 { width: 100%; }

.span_1_of_3 { width: 32.2%; }
.span_2_of_3 { width: 66.1%; }
.span_3_of_3 { width: 100%; }

.span_1_of_4 { width: 23.8%; }
.span_2_of_4 { width: 49.2%; }
.span_3_of_4 { width: 74.6%; }
.span_4_of_4 { width: 100%; }

.span_1_of_5 { width: 18.72%; }
.span_2_of_5 { width: 39.04%; }
.span_3_of_5 { width: 59.36%; }
.span_4_of_5 { width: 79.68%; }
.span_5_of_5 { width: 100%; }

.span_1_of_6 { width: 15.33%; }
.span_2_of_6 { width: 32.26%; }
.span_3_of_6 { width: 49.2%; }
.span_4_of_6 { width: 66.13%; }
.span_5_of_6 { width: 83.06%; }
.span_6_of_6 { width: 100%; }

.span_1_of_8 { width: 11.1%; }
.span_2_of_8 { width: 23.8%; }
.span_3_of_8 { width: 36.5%;}
.span_4_of_8 { width: 49.2%; }
.span_5_of_8 { width: 61.9%; }
.span_6_of_8 { width: 74.6%; }
.span_7_of_8 { width: 87.3%; }
.span_8_of_8 { width: 100%; }

.span_1_of_10 { width: 8.56%; }
.span_2_of_10 { width: 18.72%;  }
.span_3_of_10 { width: 28.88%; }
.span_4_of_10 { width: 39.04%;  }
.span_5_of_10 { width: 49.2%; }
.span_6_of_10 { width: 59.36%; }
.span_7_of_10 { width: 69.52%;  }
.span_8_of_10 { width: 79.68%; }
.span_9_of_10 { width: 89.84%; }
.span_10_of_10 { width: 100%; }
.iphone_show { display:none; } 
.iphone_hide { display:block; }  

input[type="submit"].button-search { background:inherit; border:0px; color:#000; font-size:20px; }
.column_2 {  -moz-column-count: 2; -webkit-column-count: 2; column-count: 2; -moz-column-gap: 1em; -webkit-column-gap: 1em; column-gap: 1em; }

#header { padding: 40px 0; position:fixed; top:0; left:0; }
#header .logo { font-weight:bold; margin-bottom:10px; }
#header .logo h1 { font-size:22px; }
##header.smaller { padding:10px 20px; }
#header .content { position:relative; }
#header .menu ul { margin: 0 auto;  }
#header .menu li { display:block; margin: 20px 0; }

#header .menu a.selected { color:#AAA; }

#footer { font-size:12px; color:#AAA; position:fixed; bottom:20px; right:0px; text-align:right; }
#main { padding:0 0 0 240px; margin-bottom:40px; }


.main-header { text-align:left; margin:0 auto; padding:40px 0 20px 0px; height:140px; }
.main-header h1 { margin-bottom:10px; }
.main-header h1 .tot { font-size:14px; font-weight:normal; color:#AAA; margin-left:10px; }

.list .span_1_of_2:nth-child(2n+1) { margin-left:0px; }
.list .span_1_of_3:nth-child(3n+1) { margin-left:0px; }
.list .span_1_of_4:nth-child(4n+1) { margin-left:0px; }
.list .span_1_of_5:nth-child(5n+1) { margin-left:0px; }
.list .span_1_of_6:nth-child(6n+1) { margin-left:0px; }
.list .span_1_of_7:nth-child(7n+1) { margin-left:0px; }
.list .span_1_of_8:nth-child(8n+1) { margin-left:0px; }
.list .span_1_of_9:nth-child(9n+1) { margin-left:0px; }
.list .span_1_of_10:nth-child(10n+1) { margin-left:0px; }

.letter { color:#AAA; }
.list { margin-bottom:40px; }
.list .item { border-bottom:1px solid #EEE; position:relative; }
.list .item h2 { margin:0px; padding: 10px 0 ; }
.list .item h2 span { font-weight:normal; }
.list .item .tot { color:#AAA; font-weight:normal; position:absolute; right:10px; top:10px;  }

.alfabeto { position:fixed; padding:20px 0 20px 100px; top:0; left:200px; background:#FFF; z-index:1; }
.alfabeto li { display:inline-block; margin-right:5px; font-weight:bold;  }
.alfabeto li a { display:block;  padding-top:3px; width:25px; height:25px; display:block; border:1px solid #FFF; border-radius:100px; text-align:center; }
.alfabeto li a.selected { border-color:#DDD; }

.list-works .item { height:300px; border:0px; margin-bottom:1.6%; }
.list-works .item:hover img { opacity:0.8; }
.list-works .item h2 { margin: 0 0 5px 0; padding:0px; font-weight:normal; font-size:11px; }
.list-works .item h2 a { color:#999;  }
.list-works .item .text { padding:5px 10px; }
.list-works .item .title { margin-top:5px; }
.list-works .item .year { margin-top:5px; }

.scheda .text { padding-left:10px; }
.scheda .text h1 { margin:40px 0; }
.scheda .text h2 { font-weight:normal; font-size:17px; }
.scheda .text p.title { font-size:17px; }
.scheda .text .span_1_of_3 { position:fixed; }
.scheda .text .details li { margin-bottom:10px; position:relative; }
.scheda .text .details .label { color:#AAA; left:-100px; position:absolute; width:100px; text-align:right; padding-right:20px; }
.scheda .image { margin-left:32.2%; }

.box_search { width:50%; margin:0 auto; text-align:center; }
.cover { height:750px; background-position:center center; background-size: cover; background-attachment: fixed; margin: 60px 0; }
.icon { text-align:center; margin-bottom:60px; }
.code, .code * { text-transform:uppercase; }



div.top {  display: none; overflow: hidden; position: fixed; right:20px; bottom:20px;  }
div.top .fa { margin:0px; }
div.top a { padding-top:5px; display:block; background:#000; color:#FFF; cursor:pointer; font-size:20px; width:40px; height:40px; text-align:center; }
div.top a:hover { color:#444; text-decoration:none; }


body.login { 
  background: url(../images/bg.jpg) no-repeat center center fixed; 
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  background-color:#CCC;
}
.login .content-small { position:absolute; top:100px; left:0px; width:300px; }
.boxsearch { width:150px; margin-top:40px; }
body.login input { border-radius:5px; background:#FFF; }
body.login input[type="submit"] { text-align:center; background:#000; color:#FFF; }
body.login input[type="submit"]:hover { background:#222; }
body.login input[type="button"], body.login .btn { text-align:center; background:#444; color:#FFF; display:block; padding: 12px 0; border-radius: 5px; height: 40px; }
body.login input[type="button"]:hover, body.login .btn:hover { background:#666;  }


.nav-menu { position:relative; display:block; }
.nav .fa { margin-right:0px; }
.nav-item { display:inline-block; zoom:1; position:relative;  margin-right:1px; }
.nav-item:last-child { padding:0; margin:0; border:0; }
.nav-item a { display:block; margin:0px; font-weight:bold;}
.nav-item:hover .nav-submenu { display:block; text-decoration:none; }
/* Navigation submenu */
.nav-submenu { display:none; position:absolute; padding-top:10px; z-index:200;}
.nav-submenu-item a { background:#FFF; color:#000; padding:7px 15px; display:block; width:250px; text-align:left; }
.nav-submenu-item a:hover { text-decoration:none; color:#9DA9CF; }
/* Mobile navigation */
.nav-mobile { display:none; position:absolute; top:0px; right:10px; background:#FFF; text-align:center; font-size:20px; height:40px; width:40px; cursor:pointer; padding:7px 10px; }
/* Mobile navigation, clickable area for revealing <ul> */
.nav-click { position:absolute; top:0; right:0; display:none; height:39px; width:40px; cursor:pointer; text-align:center; }
.nav-click i { display:block; height:36px; width:40px; background: #AAA; font-size:20px; padding:8px; }
.nav-rotate { -webkit-transform:rotate(180deg); -moz-transform:rotate(180deg); -ms-transform:rotate(180deg); -o-transform:rotate(180deg); transform:rotate(180deg); }