body {

	scroll-behavior: smooth;
}

# {
position: absolute;
display: block;
height: 100%;
width: 100%;
background-color: #563D7C;
top: 0px;
z-index: -1;
}

.navbar-dark .navbar-nav .nav-link {
  color: rgb(255, 255, 255) !important;
		font-family: "Montserrat", sans-serif;
}

.loghi-partiti {
	max-width: 180px;
}

.navbar-brand img{
max-width: 300px;
}
mark {
  background-color: #ffd520 !important;
  color: #004e9e !important;
}

.masonry {
  column-count: 4;
  column-gap: 1.5rem;
}

.masonry-item {
  display: inline-block;
  width: 100%;
  margin-bottom: 1.5rem;
}
.contenuto-box {
  max-height: 90vh; 
  overflow-y: auto;
  padding-right: 10px; 
}

.contenuto-box ul  {
  padding-left: 20px !important;
	color: #0652a0;
}
.contenuto-box li {
	margin-bottom: 4px;
	font-family: "Montserrat", sans-serif;
}


.fancybox-content {
  background: #fff;
  width: 100% !important;
  max-width: 1000px !important;
}




.hero {
      position: relative;
  height: 100vh;
  background-image: url('img/bg1.jpg');
  background-size: cover;
  background-position: center;
  color: white;
  overflow: hidden;
  min-height: 700px;
    }

    /* overlay blu */
    .hero::before {
      content: "";
      position: absolute;
      inset: 0;
    }

    .hero-content {
      position: relative;
      z-index: 2;
    }

    /* immagine testo + loghi */
    .hero-logos {
      max-width: 500px;
    }



  













#intro {margin-top: -90px;  position: relative;}

.carousel-indicators {
  position: absolute;
  bottom: 10% !important;
	justify-content: left !important;
}
.carousel-caption {
	z-index: 10;
}
.icona {
	padding: 20px;
font-size: 33px;
}
.icona p {
	font-size: xx-large;
}


.navbar-expand-lg .navbar-nav .nav-link {
    padding-right: 15px !important;
    padding-left: 15px !important;
    font-weight: 600 !important;
    font-size: 14px !important;
  }


/*-- THEME COLOR --*/

.btn {
	font-family: "Montserrat", sans-serif;
}
.theme-color .icona {
	background: linear-gradient(306deg, rgba(107,63,148,0.8) 0%, rgba(73,14,161,0.8) 100%);
}
.theme-color  .btn-primary{
	color: #fff;
	background-color: #004e9e;
  border-color: #004e9e;
	font-family: "Montserrat", sans-serif;
	font-weight: 600;
}
.theme-color .btn-primary:hover {
	background-color: #01356c;
	border-color: #01356c;
}
.theme-color .btn-secondary {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
		font-family: "Montserrat", sans-serif;
	font-weight: 600;
}
.theme-color .btn-secondary:hover {
	 color: #fff;
  background-color: #4c555d;;
  border-color: #4c555d;
}
.theme-color .btn-outline-primary {
  color: #771dc4;
  border-color: #771dc4;
		font-family: "Montserrat", sans-serif;
	font-weight: 600;
}
.theme-color .btn-outline-primary:hover {
  color: #fff;
  background-color: #01356c;
  border-color: #01356c;
}
.theme-color a {
  color: #771dc4;
  text-decoration: unset;
}
.theme-color a:hover {
  color: #771dc4;
}
.theme-color .text-white a {
	color: #fff;
}
.theme-color .text-white a:hover {
	opacity: 0.8;
}
.theme-color .themed-container {
  padding: .75rem;
  margin-bottom: 1.5rem;
   background: rgb(107,63,148);
background: linear-gradient(306deg, rgb(53, 79, 184) 0%, rgb(0, 53, 107) 100%);
}
.theme-color .bg-color {
	width: 100%;
position: absolute;
height: 100%;
background: rgb(107,63,148);
background: linear-gradient(306deg, rgba(107,63,148,0.8) 0%, rgba(73,14,161,0.8) 100%); 
}
.sot-tit {
  width: 10%;
  display: block;
  margin: 10px auto 20px;
  border-bottom: #8d12fd 4px solid;
}
/*-- THEME COLOR --*/


.jcarousel-control-prev, .jcarousel-control-next{
	position: absolute;
top: 40%;
z-index: 1;
display: block;
padding: 10px 25px;
font-size: 30px;
color: #fff !important;
}
.jcarousel-control-prev{
	left: 0px;		
}
.jcarousel-control-next{
	right: 0px;	
}

.row-halfscreen {
  display: -webkit-flex !important;
  display: flex !important;
  position: relative;
}
.row-halfscreen .half-image {
  background-color: #faf8f9;
  background-position: center;
  background-size: cover;
  min-height: 250px;
}
.row-halfscreen .half-post {
  background-color: #f4f4f4;
  padding: 70px 12% 60px;
}


.slide-bg {
	
}

.carousel-fade{
	position: absolute;
display: block;

}

.social-menu {
	padding: 10px;
	list-style-type: none;
}
.social-menu a:link, .social-menu a:visited {
  color: rgba(255, 255, 255, 1);
  padding: 5px 10px;
}
.navbar-toggler:focus {
  box-shadow: unset !important;
	background-color: rgba(255, 255, 255, 0.1);
}

.collapsing, .collapse.show {
  text-align: center;
  padding: 20px 30px 40px !important;
}

/* FONT */

h1, h2, h3, h4, h5, h6 {
	font-weight: 900 !important;
}
h1 {
	font-family: "Montserrat", sans-serif;
  font-size: 80px !important;
	line-height: 70px !important;
	 color: #004e9e;
}
h2 {
	font-family: "Montserrat", sans-serif;
  color: #004e9e;
  font-size: 41px !important;
  line-height: 39px !important;
}
h3 {
	font-family: "Montserrat", sans-serif;
	color: #004e9e;
}
h4 {
	font-family: "Montserrat", sans-serif;
}
h5 {
	font-family: "Montserrat", sans-serif;
	font-weight: 900 !important;
	color: #004e9e;
	line-height: 20px !important;
}
h6 {
	font-family: "Montserrat", sans-serif;
  font-weight: 500 !important;
  letter-spacing: 4px;
  font-size: 20px !important;
	color: #004e9e;
}
p {
	font-family: "Montserrat", sans-serif;
	color: #004e9e;
}

h1 span,
h2 span,
h3 span,
h4 span,
h5 span,
h6 span {
	color: #ffd520 !important
}


/* GRID */

.row {
  margin-right: unset !important;
  margin-left: unset !important;
}

.container-fluid {
  margin: 0px !important;
}

.container-fluid  .gridboot-incastro [class*="col-"] {
	padding: 4px !important;
}
.gridboot-incastro .box-margin {
	padding: 30px 30px 40px;
}
.background-color {
  background-color: #f5f5f5;
  border: 0.02px solid #d0d0d0;
}

.container .box-content {
    /*padding: 100px 0px 100px;*/
}

.themed-grid-col {
padding-top: .75rem;
padding-bottom: .75rem;
background-color: #f5f5f5;
border: 0.02px solid #d0d0d0;
}

#introCarousel, .carousel-inner, .carousel-item, .carousel-item.active {
  height: 100vh;
  min-height: 700px;
}

.carousel-caption {
  position: absolute !important;
width: 100% !important;
top: 50% !important;
margin-top: -110px !important;
width: auto !important;
max-width: 800px !important;
height: 278px;
}

.text-center-on-mobile {
  text-align: left !important;
}

.scroll-down {
  position: absolute;
  bottom: 10px;
  width: 100%;
  z-index: 1;
  text-align: center;
  font-size: 30px;
}

.carousel-control-next, .carousel-control-prev {
  width: 8% !important;
	font-size: 30px !important; 
}

.dropdown-item:focus, .dropdown-item:hover {
  color: #1e2125;
  background-color: rgba(255,255,255,0.1) !important;
}


			#errori{background: none repeat scroll 0 0 #e74c3c; color: #fff;margin: 10px 0;	padding: 18px 16px;	float:left;	width:100%;	text-align:center;}
			#risultato{background: none repeat scroll 0 0 #00ab5d;color: #fff;float: left;margin: 10px 0;padding: 18px 16px;width: 100%;text-align:center;}
			.asterisco{font-size:12px; color:#da9393;}			
			.info_form{color:#7f7d7d;font-style:italic;font-size:14px;margin-top:-12px;}




@media only screen and (max-width: 991px) {
	
	.masonry {
  column-count: 3;
}
	
	

      .hero {
        text-align: center;
        padding: 60px 20px;
		  background-position: 30% center !important;
      }

      .hero-logos {
       max-width: 400px !important;
    margin-top: 160px;
		  width: 100%;
      }
    

	
	
	.navbar-dark .navbar-nav .nav-link.active, .navbar-dark .navbar-nav .show > .nav-link {
  color: #414141 !important;
}
	.navbar-dark .navbar-nav .nav-link {
  color: rgba(0,0,0,.55) !important;
}
	.social-menu a:link, .social-menu a:visited {
  color: rgba(0, 0, 0, 0.5);
  padding: 5px 10px;
}
	.navbar-dark .navbar-toggler {
  color: rgba(0,0,0,.55) !important;
	}
	#navbarsExample05 {
		background-color: #fff;
	}
	.dropdown-item {
  display: block;
  width: 100%;
  padding: .25rem 1rem;
  clear: both;
  font-weight: 400;
  color: #7c7c7c !important;
  text-align: center !important;
  text-decoration: none;
  white-space: nowrap;
  background-color: transparent;
  border: 0;
}
	.dropdown-menu {
  position: absolute;
  z-index: 1000;
  display: none;
  min-width: 10rem;
  padding: 1px 0 20px !important;
  margin: 0;
    margin-top: 0px;
  font-size: 1rem;
  color: #212529;
  text-align: left;
  list-style: none;
  background-color: transparent !important;
  background-clip: padding-box;
  border-radius: .25rem;
  border: unset !important;
}

}



@media only screen and (max-width: 768px) {
	
	h1 {
	font-family: "Montserrat", sans-serif;
  font-size: 60px !important;
	line-height: 50px !important;
	 color: #004e9e;
}
	
	.navbar-brand img{
max-width: 250px;
}
	
	.masonry {
  column-count: 1;
}
	
	#intro {margin-top: -120px;  position: relative;}
	
	#introCarousel, .carousel-inner, .carousel-item, .carousel-item.active {
  height: 65vh;
		max-height: unset !important;
}
	
	.carousel-caption {
  margin-top: -165px !important;
	}
	
	
}





@media only screen and (max-width: 480px) {
.navbar-brand img{
max-width: 210px;
}
}
      
