
@charset "utf-8";
/* CSS Document */


/* GENERIC RESET */

*{
  border: 0px;
  padding: 0px;
  margin: 0px;
  box-shadow: none;
  box-sizing: border-box;
  /*transition: color 0.3s, background 0.3s, opacity 0.5s, box-shadow 0.5s;*/
  -moz-transition: color 0.3s, background 0.3s, opacity 0.5s, box-shadow 0.5s; 
  /*-webkit-transition: color 0.3s, background 0.3s, opacity 0.5s, box-shadow 0.5s;*/
}

/* BASIC CSS */
html{
  overflow-x: hidden;
}

body{
  background:#fff;
  font-family: Tahoma, Geneva, sans-serif;
  font-weight:300;
  font-size: 15px;
  line-height: 20px;
  color: #000;
  padding: 0 ;
}

header, footer, nav, section, details, summary, article, figure, figcaption, address, mark, output, button{
  width:100%;
  display:block; 
  margin:0;
}


button{  
  cursor: pointer; 
  text-align: left;   
}

mark{ 
  background:transparent; 
  color: #000;
}


h1,h2,h3{
  font-weight:400;
  font-size: 20px;
  color: #333;
  margin: 20px 0;
}

h1{
  font-size: 22px;
}

h3{
  font-size: 20px;
}

a, a:focus, a:active, a:visited{
  color: #333;
  text-decoration: none;
  outline:0;
}
a:hover{
  color:#999;
}

p{
  margin: 15px 0 0 0;
  text-align:justify;
}

img{
  border:0;
  outline: 0;
  max-width:100%;
  height:auto;
}
#map img{
  max-width:none;	
}
ul, ol {
    margin: 0 0 10px 20px;
}

.end-block, .clear{
  clear:both !important;
  width:100% !important;
  float:none !important;
  background:none !important;
  padding:0px !important;	
  height:0!important;
  min-height:0!important;
  line-height:0!important;
  margin:0 !important;
  border:0 !important;
}
/***GETIONE COLONNE****/
.column-1, .column-2, .column-3{
  float:left;
  position: relative;
  min-height: 1px;
  padding-right: 15px;
  padding-left: 15px;
  margin-top:10px;
  z-index:1;
}
.column-1{
  /**colonna sinistra**/
  width:25%;

}
.col1 .column-2{
  /**colonna destra**/
  width:100%;
}
.col2 .column-2{
  /**colonna destra**/
  width:75%;
}
.col3 .column-2{
  /**colonna destra**/
  width:50%;
}
.column-3{
  /**colonna centrale**/
  width:25%;
}  
/***GETIONE COLONNE****/

/***BannerT***/
  .banner-t{
    height: auto;
    overflow: hidden;
  }

  .homepage .banner-t{
    overflow: hidden;
    height:auto;
  }
  /*.banner-t img{
    width:100%;

  }*/

  .cycle-slideshow .cycle-prev, .cycle-slideshow  .cycle-next {
    cursor: pointer;
    height: 77%;
    position: absolute;
    bottom:30px;
    width: 62px;
    z-index: 800;
    /***NEl foglio di style del sito inserire le immagini di prev e next come background
      .cycle-prev {
          background: url(../img/prev.png) no-repeat scroll 50% 50% rgba(0, 0, 0, 0);
          left: 0;
      }
    ***/   
  }



/***BannerT***/

/****FORM***/
.col1 form{
  width:70%;
  margin:auto;
}
.module{
  width:80%;
  margin:auto;
}
.input-field{
  display:block;
  margin:5px;
}
.input-field label, .module fieldset{
  display:block;
  font-size:16px;
  color:#333;
}
.module fieldset{
  border:1px solid #ccc;
  padding:5px; 
  margin-top:25px;
}
.module legend{
  position:absolute;
  margin-top: -26px;
  color:#666;
}


.input-field input[type="date"],
.input-field input[type="password"],
.input-field input[type="search"],
.input-field input[type="text"],
.input-field input[type="email"],
.input-field input[type="checkbox"],
.input-field textarea, 
.input-field select{
  background:#fff;
  color:#c6c6c6;
  font-size:15px;
  padding:8px 3px;
  border:1px solid #ccc;
}

input[type="date"],input[type="search"],input[type="text"],input[type="email"],input[type="checkbox"],input[type="password"],textarea, select{
  background:#fff;
  color:#c6c6c6;
  font-size:15px;
  padding:8px 3px;
  border:1px solid #ccc;
}
input[type="checkbox"]{
  margin:5px;
}
.module form button{
  margin-top:5px;
  padding:10px;
  font-size:16px;
  color:#fff;
}

button{
  background: #ccc;
  color:#fff;
  text-align:center;
  padding:5px;
  -webkit-transition: background 500ms ease-in-out;
  -moz-transition: background 500ms ease-in-out;
  -ms-transition: background 500ms ease-in-out;
  -o-transition: background 500ms ease-in-out;
  transition: background 500ms ease-in-out;
}
button:hover{
  background: #333;
  color:#fff;
}
/****FORM***/

/****CHANNEL MENU****/
.channel-menu ul{
  list-style-type: none;
  margin:auto;
}
.channel-menu ul li{
  display: inline-block;
  padding:10px;
}
/****CHANNEL MENU****/


/****MAIN MENU****/
.main-menu ul.nav{
  list-style: none;
  margin:auto;
  margin-bottom:0;
}
.main-menu ul.nav li{
  display: inline-block;
  position:relative;
 
}
.main-menu ul.nav li.selected{
  color:#ccc;
  border-bottom:0;
}
.main-menu ul.nav li a{
  display: block;
  border-bottom:0;
}
.main-menu ul.nav li a:hover{
  color:#333;
  border-bottom:0;
}
/**menu di secondo livello**/
.main-menu ul.nav li ul{
   visibility:hidden;
	-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
	filter: alpha(opacity=0);
	opacity:0;
   -webkit-transition:200ms ease;
   -moz-transition:200ms ease;
   -o-transition:200ms ease;
   transition:200ms ease;
   margin-left: 0;
   min-width: 300px;
   left:0;
   right:auto;
   margin-top:5px;
   position:absolute;
}
.main-menu ul.nav li ul > li{
  display:block;
}
.main-menu .nav li:hover ul{
    visibility:visible;
-ms-transition-property:transform,opacity;-webkit-transition-property:transform,opacity;transition-property:transform,opacity;-ms-transition-duration:.9s;-webkit-transition-duration:.9s;transition-duration:.9s;-ms-transition-timing-function:ease-out;-webkit-transition-timing-function:ease-out;transition-timing-function:ease-out;-ms-transition-delay:0s;-webkit-transition-delay:0s;transition-delay:0s;
	-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
	filter: alpha(opacity=100);
	opacity:1;
}
.main-menu  .responsive-nav {
  display: none;
}
/****MAIN MENU****/

/****PATH MENU****/
.path-menu .nav li{
  display:inline-block;
  list-style-type: none;
  font-size:12px;
  font-weight:bold;
  text-transform: uppercase;
}
.path-menu .nav li a, .path-menu .nav li a:visited{
  color:#000;
  padding:0;
  display:inline-block;
  padding:0;
}
.path-menu .nav li a:hover, .path-menu .nav li.last a{
  color:#333;
}
.path-menu .nav li::after{
  /*content: ">";
  padding:0;*/
}
.path-menu .nav .last::after{
  content:"";
}
.path-menu .nav li a span{
	padding-left:4px;
	padding-right:4px;
}
.path-menu .nav li.last{
	padding-left:4px;
}

/****PATH MENU****/

/****SECTION-MENU****/
.section-menu .nav{
  margin-left: 0;
  background:#fcfcfc;
  padding:20px 0;
}
.section-menu .nav  li{
  list-style-type: none;
  display:block;
  padding:0;
}

.section-menu .nav li a{
  padding:4px 20px;
  display:block;
  width:100%;
}
.section-menu .nav li a:hover, .section-menu .nav li.selected a{
  background:#4c4c4c;
  color:#fff;
}
/**secondo livello**/
.section-menu .nav li ul{
  margin:0;
}
.section-menu .nav li ul li a{
  padding: 5px 20px ;
}
.section-menu .nav li.selected ul li a, .section-menu .nav li.selected ul li a:visited{
  background:none;
  color:#333;
}
.section-menu .nav li.selected ul li a:hover{
  background:none;
  color:#666;
}
/****SECTION-MENU****/

/****TABLE***/
table{
  width:100%;
  margin-top: 20px;
  margin-bottom:20px;
}
table th{
  background: #ccc;
  padding:5px;
  border:1px solid #efefef;
}
table td{
  padding:2px 5px;
}
table tr.odd{
  background:#ccc;
  border:1px solid #ccc;
}

/****TABLE***/

/*** Gallery ***/
.gallery ul{
  list-style-type: none;
  margin:10px 0;
}
.col1 .gallery ul li{
  float:left;
  width:23%;
  margin:5px 2% 5px 0;
  text-align: center;
}
.col2 .gallery ul li{
  float:left;
  width:31%;
  margin:5px 2% 5px 0;
  text-align: center;
}
.gallery ul li img{
  display: block;
  margin:5px auto;
  float:none;
}
/*** Gallery ***/

/*** Download ***/
.download ul li{
  list-style-type: none;
}

/*** Sitemap ***/
.site-map ul li a{
	font-size:16px;
	line-height:20px;
	padding:5px;
	display:block;
	padding:2px 5px;
}

/*** Archive ***/
.archive article {
    clear: both;
    display: block;
    margin-bottom: 20px;
    margin-top: 20px;
    min-height: 100px;
    border-bottom:1px solid #ccc;
    padding-bottom:10px;
}

/*************************** Calendario ****************************/
.calendar h2{
  text-align: center;
  font-size: 15px;
  text-transform: uppercase;
  font-weight: 700;
  color: #5a5a5a;
 }
.calendar th{
  background: #ccc;
  text-align: center;
  font-weight: 300;
  float: left;
  width:13.2%;
  margin-right:0.5%;
  margin-left:0.555%;
  line-height: 38px;
  margin-bottom: 10px;
}
.calendar td{
  float: left;
  border: 1px solid #ccc;
  margin-bottom: 10px;
  width:13.2%;
  margin-right:0.5%;
  margin-left:0.555%;
  text-align: center;
  line-height: 20px;
  padding-top:5px;
  padding-bottom:5px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  border-radius: 2px;
  position: relative;
}
.calendar table{
  width:100%;
}
.calendar tr{
  margin-left:10px; 
  width: 100%;
 }
.calendar .has-events a{
  color: #fff;
}
.calendar .has-events{
  background: #7b96fa;
  border:1px solid #7b96fa;
  color: #fff;
}
.calendar .details{
  color: #666;
  position: absolute;
  right:-125px;
  background: #f5f5f5;
  border: 1px solid #a2a2a2;
  width: 250px;
  z-index: 100;
  font-size: 14px;
  padding: 14px 10px;
  font-weight: bold;
  display: none;
  -webkit-border-radius: 6px;
  -moz-border-radius: 6px;
  border-radius: 6px; 
  -webkit-box-shadow: 7px 7px 5px 0px rgba(50, 50, 50, 0.13);
  -moz-box-shadow: 7px 7px 5px 0px rgba(50, 50, 50, 0.13);
  box-shadow: 7px 7px 5px 0px rgba(50, 50, 50, 0.13);
  text-align: left;
}
.calendar td:hover .details{
  display: block;
}

.calendar a:hover{
  text-decoration: none;
}

.calendar .today{
  background: #888;
  border-color: #666;
  color: #fff;
}
.calendar .today a{
  color: #666;
}
.calendar .month{
  border: 1px solid #ccc;
  width: 31%;
  float: left;
  height: auto;
  margin-right: 2%;
  margin-top: 30px;
  min-height:390px;
}
.calendar .details{
 line-height: 16px !important;
}
.calendar .details a{
  font-size:14px;
  color: #8d8d8d;
  padding: 0px;
  margin: 0px;
}
.calendar .details ul{
  list-style-type: none;
  padding: 0px;
  margin: 0px;
  padding: 5px 0 0 0;
  font-weight: 300;
}
.calendar .details li{
  text-align: left;
  padding:0;
  margin-bottom:4px;
}


/****PAGINE***/
.page .block{
  display:block;
}
.page .block img{
  float:left;
  padding:8px;
}

/****PAGINE***/

/***SOCIAL***/
/***SOCIAL***/
.social-block .sc,.social-block .sc:visited{
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: 18px;
  line-height:18px;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
   padding:6px 2px;
   background:#666;
   color:#fff;
   text-decoration:none;
   margin:1px;
   min-width:30px;
   text-align:center;
}
.social-block .sc:hover{
   background:#000;
   color:#fff;
}
.social-block{
	border:0px solid #ccc;
	margin-top:25px;
	padding:5px;
}
.social-block .fb::before{content: "\f09a";}
.social-block .tw::before{content: "\f099";}
.social-block .li::before{content: "\f0e1";}
.social-block .gp::before{content: "\f1a0";}
.social-block .pi::before{content: "\f0d2";}
.social-block .em::before{content: "\f0e0";}
.social-block .pr::before{content: "\f02f";}

div[id^="map_"] img{
  max-width:none; 
}
div[id^="map_"] {
  width: 100%;
  height: 400px;  
  display:block;
  margin-bottom:20px;
}
div.info span {
  display: block;
}

/***HEADER***/
/***HEADER***/

/***NAV MAIN***/
/***NAV MAIN***/

/***FOOTER***/
footer{
  background: #333;
  color:#fff;
  min-height:100px;
}
/***FOOTER***/

/*******************
/* FINE BASIC CSS */
/******************/

/***PERSONALIZZAZIONI*/
/***PERSONALIZZAZIONI*/

/***************************MEDIA QUERY*****************************/


@media (min-width: 768px) {
  .banner-t span.title, .cycle-slide span.title{
  }
}
@media (min-width: 992px) {
  .banner-t span.title, .cycle-slide span.title{
  }
}
@media (min-width: 1200px) {
}

@media (max-width: 767px) {
  .hidden-xs {
    display: none !important;
  }
  /***MAIN MENU***/
  .main-menu .responsive-nav {
      display: block;
      width:40px;
      padding:10px 0; 
      background:#ccc;
  }
  .main-menu .responsive-nav:hover {
    background-color:#DFDFDF;
  }
  .main-menu .responsive-nav span{
      height:2px;
      width:80%;
      display:block;
      margin:4px auto;
      background:#666;
  }
  .main-menu ul.nav{
    display:none;
    position:absolute;
    margin:0;
    padding:0;
  }

  .main-menu .nav li{
    display:block;
    width:80%;
    padding:5px;
    list-style-type:none;
    position:relative;
    margin-left:0;
  }
  .main-menu .nav li ul{
    display:none;
    position:static;
    left:0;
    min-width:150px;
    padding:0;
  }
  /***************/
  /**Comandi slider prev e next nascosti**/
  .cycle-slideshow .cycle-prev, .cycle-slideshow  .cycle-next {
    display:none;
  }
  .calendar .month{
    width: 48%;
    float: left;
    height: auto;
    margin-right: 1%;
    margin-left: 1%;
    margin-top: 30px;
  }

}
@media (min-width: 768px) and (max-width: 991px) {
  .hidden-sm {
    display: none !important;
  }
  .calendar .month{
    width: 48%;
    float: left;
    height: auto;
    margin-right: 1%;
    margin-left: 1%;
    margin-top: 30px;
  }

}
@media (min-width: 992px) and (max-width: 1199px) {
  .hidden-md {
    display: none !important;
  }
}
@media (min-width: 1200px) {
  .hidden-lg {
    display: none !important;
  }
}

