@charset "utf-8";
/* CSS Document */

/* AZZURRO  #0e71b8 */
/* BLU 		#003153 */
/* ROSSO	#d62426 */
/* ROSSO S.	#ca2424 */

@import url('https://fonts.googleapis.com/css?family=Oswald:300,500');

html { -webkit-font-smoothing: subpixel-antialiased; height:100%; }
body { color:#000; font-weight:300; font-family: 'Oswald', sans-serif; overflow-x:hidden; overflow-y:auto; }

p, li { line-height:1.5em; font-size:0.9em; }
strong { font-weight:500; }

h1 { letter-spacing:-0.02em; }
h2 { }
h3 { }
h4 { }
h5 { }

.lead { font-weight:200; }

.line { width:40px; height:1px; background-color:#ccc; opacity:0.5; -moz-opacity:0.5; -webkit-opacity:0.5; margin-bottom:15px; }
.central-line { position:relative; }
.central-line:after { content:''; position:absolute; top:30%; right:0; background:#ccc; height:1px; width:10%; }

a { color:#003153; -webkit-transition: all 0.3s ease-out; transition: all 0.3s ease-out; -moz-transition: all 0.3s ease-out; -ms-transition: all 0.3s ease-out; }
a:hover, a:focus { color:#d62426; text-decoration:underline; }

.th:hover { opacity:0.8; -moz-opacity:0.8; }

/* Filter */
.filter { background:rgba(0,49,83,0.9); }

/* Box Home */
.box-home { position:relative; top:-100px; }

 
/* Logo */
#logo { transform:rotate(-5deg); height:180px; width:180px; position:fixed; z-index:999; top:-20px; left:50px; display:block; -webkit-transition: all 0.3s ease-out; transition: all 0.3s ease-out; -moz-transition: all 0.3s ease-out; -ms-transition: all 0.3s ease-out; }
#logo:hover { top:-15px; transform:rotate(-10deg); height:200px; width:200px; }
 

/* P */
.p { display:block; margin:0 auto 5px; width:50px; height:auto; }
.p-small { width:24px; height:auto; margin-right:4px; position:relative; top:-2px; }
.p-medium { width:32px; height:auto; margin-right:4px; position:relative; top:-3px; }
.p-left { display:block; width:50px; height:auto; }
.p-footer { display:block; width:50px; height:auto; position:absolute; top:-30px; left:10px; }

 
/* Navbar toggler */
.navbar-toggler {  border: none; background:transparent !important; padding:0; margin:15px 15px 15px 0; }
.navbar-toggler:focus { outline: none; background: transparent !important; }
.navbar-toggler .icon-bar { background-color:#fff; transform: rotate(0deg) translate(0px, 0px); transition: ease all .2s; }
.navbar-toggler .icon-bar { display: block; width: 22px; height: 2px; border-radius: 1px; }
.navbar-toggler .icon-bar+.icon-bar { margin-top: 4px; }
.icon-bar:nth-child(2) { width: 16px; transition: ease all .2s; }
.navbar-toggler:hover>.icon-bar:nth-child(2) { width: 22px; transition: ease all .2s; }
.navbar-toggler:active>.icon-bar:nth-child(2) { width: 22px; transition: ease all .2s; }
.navbar-toggler:not(.collapsed) .icon-bar:nth-child(1) { transform: rotate(45deg) translate(5px, 4px); transition: ease all .2s; }
.navbar-toggler:not(.collapsed) .icon-bar:nth-child(2) { opacity: 0; transition: ease all .2s; }
.navbar-toggler:not(.collapsed) .icon-bar:nth-child(3) { transform: rotate(-45deg) translate(4px, -4px); transition: ease all .2s; }

/* Navbar */
header .navbar { background-color:#003153; z-index:1000; box-shadow:0 10px 10px rgba(0,0,0,0.4); padding:20px 15px; -webkit-transition: all 0.3s ease-out; transition: all 0.3s ease-out; -moz-transition: all 0.3s ease-out; -ms-transition: all 0.3s ease-out; }
header .navbar-brand { padding:0; margin:0; }

/* Main Nav */
header .navbar-nav > li.nav-item.bg-secondary { border-radius:20px; }
header .navbar-nav > li.nav-item > a.nav-link { font-weight:500; text-transform:uppercase; font-size:19px; color:#fff; padding:10px 0; margin:0 20px; position:relative; }
header .navbar-nav > li.nav-item > a.nav-link:hover, .navbar-nav > li.nav-item > a.nav-link:focus, .navbar-nav > li.nav-item.show, .navbar-light .navbar-nav .show > .nav-link { color:#d62426; }
header .navbar-nav > li > a:before { content:"";  position: absolute; left:0; right:auto; width:0; height:3px; bottom:-5px; background:#d62426; border-radius:0; -webkit-transition:300ms ease-out; -moz-transition:300ms ease-out; transition:300ms ease-out; visibility:hidden; opacity:0; -moz-opacity:0; }
header .navbar-nav > li > a:hover:before, .navbar-default .navbar-nav > li > a:focus:before { width:100%; right:0; visibility:visible; opacity:1; -moz-opacity:1; }
header .navbar-nav > li.nav-item.bg-secondary > a.nav-link:hover, header .navbar-nav > li.nav-item.bg-secondary > a.nav-link:focus { color:#003153; }
header .navbar-nav > li.nav-item.bg-secondary > a:hover:before, .navbar-default .navbar-nav > li.nav-item.bg-secondary > a:focus:before { width:0 !important; }
header .navbar-nav > li.nav-item.active > a.nav-link { color:#d62426; }
header .navbar-nav > li.nav-item.bg-secondary.active > a.nav-link { color:#fff; }


/* Dropdown */
header .dropdown-menu { border-radius:0; border:none; top:62px; padding:0; background:#d62426; box-shadow:0 0 5px rgba(0,0,0,0.2); width:100%; margin:0 20px; }
header .dropdown-item { font-weight:300; color:#fff; padding:10px 20px;  font-size:17px; }
header .dropdown-item.active { background:#ca2424; color:#fff; }
header .dropdown-item:hover, .dropdown-item:focus { color:#fff; background-color:#ca2424; }

.flaticon { margin-left:-20px; margin-right:10px !important; }


/* Sticky Navbar */
.sticky.is-sticky { position:fixed; padding:5px 15px; left:0; right:0; top:0; z-index:1000; width:100%; box-shadow:0 0 10px rgba(0,0,0,0.7); }
.sticky.is-sticky #logo { height:140px; width:140px; }
.sticky.is-sticky #logo:hover { height:150px; width:150px; }
.sticky.is-sticky .dropdown-menu { top:47px !important; }


/* Carousels */
.carousel-indicators { bottom:-40px; left:auto; -ms-flex-pack:end; justify-content:end; margin-right:0; margin-left:0; }
.carousel-indicators li { width:12px; height:12px; background-color:rgba(255,255,255,0.75); margin-left:6px; margin-right:6px; cursor:pointer; cursor:hand; }
.carousel-indicators li.active { background-color:#003153; }

#carouselSlider .carousel-control-next, #carouselSlider .carousel-control-prev { top:50%; margin-top:-30px; bottom:auto; padding:30px; background-color:#003153; opacity:1; width:auto; width:20px; height:20px; }
#carouselSlider .carousel-control-prev { right:auto; left:30px; }
#carouselSlider .carousel-control-next { left:auto; right:30px; }
#carouselSlider .carousel-indicators li { background-color:#fff; }
#carouselSlider .carousel-indicators li.active { background-color:#003153; }


/* Dropdown animation */
header .dropdown .dropdown-menu { max-height: 0; display:block; overflow: hidden; opacity:0; -webkit-transition:all 0.3s; -moz-transition:all 0.3s; -ms-transition:all 0.3s; -o-transition:all 0.3s; transition:all 0.3s; }
header .dropdown.show .dropdown-menu { max-height: 300px; opacity: 1; overflow:visible; }


/* Typo */
.fw-100 { font-weight:100; }
.fw-200 { font-weight:200; }
.fw-300 { font-weight:300; }
.fw-400 { font-weight:400; }
.fw-500 { font-weight:500; }
.fw-600 { font-weight:600; }
.fw-700 { font-weight:700; }
.fw-800 { font-weight:800; }

.text-uppercase { text-transform:uppercase; }

.small { font-size:0.8em; }
.extra-small { font-size:0.7em; }

/* AZZURRO  #0e71b8 */
/* BLU 		#003153 */
/* ROSSO	#d62426 */

.color-white { color:#fff; }
.color-light { color:#fff; }
.color-default { color:#000; }
.color-primary { color:#003153; }
.color-secondary { color:#d62426; }

/* modal */
.modal.modal-projet-detail strong { color:#d62426; }

a.color-light { color:#fff; } a.color-light:hover, a.color-light:focus { color:#fff !important; }
a.color-default { color:#000; } a.color-default:hover, a.color-default:focus { color:#003153 !important; }
a.color-primary { color:#003153; } a.color-primary:hover, a.color-primary:facus { color:#d62426 !important; }
a.color-secondary { color:#d62426; } a.color-secondary:hover, a.color-secondary:focus { color:#003153 !important; }


/* Bg */
.bg-light { background-color:#eee !important; }
.bg-default { background-color:#000 !important; }
.bg-primary { background-color:#003153 !important; }
.bg-secondary { background-color:#d62426 !important; }

/* Border */
.border-bottom { border-bottom:1px solid rgba(255,255,255,0.4) !important; }


/* Btn */
.btn { 	font-weight:normal; font-size:21px;
		border-radius:0; padding:10px 24px; font-weight:300; letter-spacing:0.02em; position:relative; 
		-webkit-transition: all 0.5s ease-out; transition: all 0.5s ease-out; -moz-transition: all 0.5s ease-out; -ms-transition: all 0.5s ease-out; 
}
	
.btn-sm { padding:6px 15px; font-size:0.8em; }
.btn-default { background-color:transparent; border-color:#fff; color:#fff; } .btn-default:hover { background-color:#fff; border-color:#fff; color:#d62426; }
.btn-primary { background-color:#003153; border-color:#003153; color:#fff; } .btn-primary:hover { border-color:#d62426 !important; background-color:#d62426 !important; color:#fff; }
.btn-alert { background-color:#d62426; border-color:#d62426; color:#fff; } .btn-alert:hover { border-color:#ca2424; background-color:#ca2424; color:#fff !important; }
.btn-secondary { background-color:transparent; border-color:#d62426; color:#d62426; } .btn-secondary:hover { background-color:#d62426; border-color:#d62426; color:#fff; }

.btn-rounded { border-radius:30px; }  

/* figure */
figure { overflow:visible; position:relative; margin:0; }
figure figcaption { text-align:center; background:#d62426; font-weight:500; padding:8px 15px; width:100px; box-shadow:0 0 10px rgba(0,0,0,0.5); font-size:1.1em; text-transform:uppercase; position:absolute; top:60%; left:50%; margin-top:-20px; margin-left:-50px; color:#fff; opacity:0; -moz-opacity:0;-webkit-transition: all 0.5s ease-out; transition: all 0.5s ease-out; -moz-transition: all 0.5s ease-out; -ms-transition: all 0.5s ease-out; }
figure:hover figcaption { opacity:1; -moz-opacity:1; top:50%; }
figure img { filter: grayscale(10%); opacity:0.95; -moz-opacity:0.95; -webkit-transition: all 0.5s ease-out; transition: all 0.5s ease-out; -moz-transition: all 0.5s ease-out; -ms-transition: all 0.5s ease-out; }
figure:hover img { filter: grayscale(0); -webkit-transform: scale3d(1.15, 1.15, 1); transform: scale3d(1.15, 1.15, 1); opacity:1; -moz-opacity:1; }
figure video { width:100%; height:auto; filter: grayscale(10%); opacity:0.95; -moz-opacity:0.95; -webkit-transition: all 0.5s ease-out; transition: all 0.5s ease-out; -moz-transition: all 0.5s ease-out; -ms-transition: all 0.5s ease-out; }
figure:hover video { filter: grayscale(0); -webkit-transform: scale3d(1.15, 1.15, 1); transform: scale3d(1.15, 1.15, 1); opacity:1; -moz-opacity:1; }


/* Bradcrumbs */
.breadcrumb { background:none; font-size:0.9em; padding:0; text-align:center !important;  }
.breadcrumb-item.active {  }


/* Articles pagination */
.pagination { margin-top:30px; display:block; text-align:center; }
.pagination .nav-links { padding:0; margin:0; display:inline-block; }
.pagination .nav-links a, .pagination .nav-links span.current { margin:0; padding:2px 6px; display:inline-block; }


/* Badges */
.badge { font-weight:400; padding:5px 15px; border-radius:0; }
.badge-light { background-color:#fff !important;  }
.badge-default { background-color:#d62426 !important; }
.badge-primary { background-color:#003153 !important; }
.badge-secondary { background-color:#82693c !important; }


/* Border */
.table-bordered { border: 1px solid #ccc; }


/* Opacity */
.o-50 { opacity:0.5; -moz-opacity:0.5; -webkit-opacity:0.5; }


/* Footer list group */
.list-group-item { border:none; border-radius:0 !important; padding:0; background:none; margin:0; }
.list-group-item a { color:#fff; display:block; padding:4px 0 4px 4px; -webkit-transition: all 0.3s ease-out; transition: all 0.3s ease-out; -moz-transition: all 0.3s ease-out; -ms-transition: all 0.3s  ease-out; }
.list-group-item a .fa-chevron-right { opacity:0; -moz-opacity:0; position:relative; left:-20px; -webkit-transition: all 0.3s ease-out; transition: all 0.3s ease-out; -moz-transition: all 0.3s ease-out; -ms-transition: all 0.3s  ease-out; }
.list-group-item a:hover, .list-group-item a:focus { text-decoration:none; padding:4px 0 4px 8px; }
.list-group-item a:hover .fa-chevron-right, .list-group-item a:focus .fa-chevron-right {  opacity:1; -moz-opacity:1; position:relative; left:5px; color:#82693c !important; }


/* cookie notice */
#cookie-notice .button.bootstrap { font-family: 'Prompt', sans-serif; text-transform:uppercase; background:#82693c; border-radius:0; border:none; color:#eee; -webkit-transition: all 0.2s ease-out; transition: all 0.2s ease-out; padding:6px 12px; font-size:0.9em; font-weight:700; }
#cookie-notice .button.bootstrap:hover { background:#82693c; color:#fff; text-decoration:none; }


.transition { -webkit-transition: all 0.3s ease-out; transition: all 0.3s ease-out; -moz-transition: all 0.3s ease-out; -ms-transition: all 0.3s ease-out; }

.th { -webkit-transition: all 0.3s ease-out; transition: all 0.3s ease-out; -moz-transition: all 0.3s ease-out; -ms-transition: all 0.3s ease-out; }
.th:hover { opacity:0.8; -moz-opacity:0.8; }


/* Spacer */
.spacer { height:50px; }
.spacer-medium { height:30px; }


#map { height:400px; }

/* btn richiedi informazioni */
.info-bottom-btn { position:fixed; z-index:999; left:0; right:0; bottom:0; display:none; -webkit-transition: all 0.3s ease-out; transition: all 0.3s ease-out; -moz-transition: all 0.3s ease-out; -ms-transition: all 0.3s ease-out; }
.info-bottom-btn.visible { display:block; }

/* Cookie */
#cookie-notice { font-size:14px; font-weight:300; font-family:'Oswald', sans-serif; }
.cn-button { font-size:14px; font-weight:500; font-family:'Oswald', sans-serif; }


/* Made in Italy */
.made-in-italy { position:absolute; bottom:30px; right:30px; z-index:999; }
.made-in-italy.top { bottom:auto; top:30px; }
.made-in-italy img { width:100px; height:auto; }


/* Large devices (large desktops, 1200px and up) */
@media (max-width: 1400px) {
	
}


/* Large devices (large desktops, 1200px and up) */
@media (max-width: 1200px) {
	#logo { height:160px; width:160px; top:-20px; left:30px; }
	#logo:hover { height:180px; width:180px; top:-15px; }
	.sticky.is-sticky #logo { height:120px; width:120px; }
	.sticky.is-sticky #logo:hover { height:130px; width:130px; }
	header .navbar-nav > li.nav-item > a.nav-link { font-size:16px; }
}

/* Medium devices (desktops, 992px and up) */
@media (max-width: 992px) {
	html { font-size:0.9em; }
	#logo { height:150px; width:150px; top:-15px; left:15px; }
	#logo:hover { height:160px; width:160px; top:-10px; }
	.sticky.is-sticky #logo { height:100px; width:100px; }
	.sticky.is-sticky #logo:hover { height:110px; width:110px; }
	header .navbar-nav { padding-top:30px; }
	header .navbar-nav > li.nav-item > a.nav-link:before { width: 0; height:0; background:transparent; }
	header .navbar-nav > li.nav-item > a.nav-link { text-align:center; display:block; font-size:15px; }
	
	/* Dropdown */
	header .dropdown-menu { background:#003153; box-shadow:none; margin:0; }
	header .dropdown-item { font-size:15px; text-align:center; }
	header .dropdown-item:hover, .dropdown-item:focus, header .dropdown-item.active { background:#002648; }
	
	h1 { font-size: 2rem; }
	.display-3 { font-size:3.5rem;  }
	
	#carouselSlider .carousel-control-next, #carouselSlider .carousel-control-prev { margin-top:-20px; bottom:auto; padding:20px; width:15px; height:15px; }
	#carouselSlider .carousel-control-prev { left:15px; }
	#carouselSlider .carousel-control-next { right:15px; }
	
	.btn { 	font-size:18px; padding:8px 12px; }
	.btn-sm { padding:4px 8px; font-size:14px; }
	
	figure figcaption { padding:5px 10px; width:60px; font-size:1em; margin-left:-30px; }
	
	/* Made in Italy */
	.made-in-italy { position:absolute; bottom:20px; right:20px; z-index:999; }
	.made-in-italy.top { bottom:auto; top:20px; }
	.made-in-italy img { width:60px; height:auto; }

}

/* Small devices (tablets, 768px and up) */
@media (max-width: 768px) {
	html { font-size:0.8em; }
	#logo { height:120px; width:120px; top:-5px; left:10px; }
	#logo:hover { height:130px; width:130px; top:-2px; }
	.sticky.is-sticky #logo { height:80px; width:80px; }
	.sticky.is-sticky #logo:hover { height:90px; width:90px; }
	
	h1 { font-size: 1.7rem; }
	.display-3 { font-size:3rem; }
	
	#carouselSlider .carousel-control-next, #carouselSlider .carousel-control-prev { margin-top:15px; bottom:auto; padding:15px; width:10px; height:10px; }
	#carouselSlider .carousel-control-prev { left:0; }
	#carouselSlider .carousel-control-next { right:0; }
}

/* Extra Small devices (smartphones, 480px and up) XS */
@media (max-width: 480px) {
	#logo { height:100px; width:100px; top:-5px; left:10px; }
	#logo:hover { height:105px; width:105px; top:-2px; }
	.sticky.is-sticky #logo { height:60px; width:60px; }
	.sticky.is-sticky #logo:hover { height:70px; width:70px; }
	
	.display-3 { font-size:2.5rem; }
}

/* Extra Extra Small devices (smartphones, 320px and up) XXS */
@media (max-width: 320px) {

}


