@font-face {
	font-family: 'Glyphicons Halflings';
	src: url('../fonts/glyphicons-halflings-regular.eot');
	src: url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('../fonts/glyphicons-halflings-regular.woff') format('woff'), url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('../fonts/glyphicons-halflings-regular.svg#glyphicons-halflingsregular') format('svg');
}


.row-eq-height {
	display: -webkit-box!important;
	display: -webkit-flex!important;
	display: -ms-flexbox!important;
	display: flex!important;
}


body {
	background-color: #FFFFFF;
	padding: 0;
	margin: 0;
	font-family:'Montserrat', sans-serif;
	font-weight: 300;
	font-size: 16px;
	line-height: 23px;
	color: #000000;
}

h1, h2, h3 {
	font-family: 'Montserrat', sans-serif;
	color: #000000;
	margin-bottom: 0;
	margin-top: 0;
	font-weight: 300;
}
h1 {
	font-size: 40px;
}
h1.titolo {
	font-size: 36px;
	text-align: center;
	margin-bottom: 100px;
}
h1.titolo::after {
	margin: 20px auto 40px;
	border-top: 2px solid #DDDDDD;
}

a {
	text-decoration: none;
}
a:hover {
	text-decoration: underline;
}
p {
	margin: 0 0 10px;
}

.fullwidth {
	width: 100%;
}
.container {
	max-width: 1240px;
	width: 100%;
	margin: 0 auto;
}
.clear {
	float: none;
	clear: both;
}
.sinistra {
	text-align: left;
}
.centro {
	text-align: center;
}
.destra {
	text-align: right;
}

a.continua {
    display: table;
    margin: 10px 0;
    background-color: #CCCCCC;
    padding: 5px 10px;
    color: #FFFFFF;
    text-transform: uppercase;
    font-size: 11px;
    letter-spacing: 0.5px;
	line-height: 11px;
}
a.continua:hover {
    background-color: #e5e5e5;
	color: #000000;
	text-decoration: none;
	-webkit-transition: all 0.2s;
	-moz-transition: all 0.2s;
	-ms-transition: all 0.2s;
	-o-transition: all 0.2s;
	transition: all 0.2s;
}

li.widget {
	list-style: none;
}

.stessa-altezza {
	display: flex;
    flex-wrap: wrap;}
.stessa-altezza > [class*="col-"] {
	display: flex;
    flex-direction: column;
}
.stessa-altezza {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.stessa-altezza > [class*='col-'] {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
}




/* MENU */
#top {
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 100;
	background-color: rgba(255, 255, 255, 0.9);
/*	box-shadow: 0px 0px 6px 0px rgba(51,51,51,0.35);*/
	border-bottom-style: solid;
	border-bottom-width: 1px;
	border-bottom-color: #dddddd;
	padding-top: 20px;
	padding-bottom: 20px;
}
#top .container {
	max-width: 100%;
}
.main-navigation div nav {
	border-width: 0px;
	background: none;
}
.navbar .navbar-primary-collapse .menu-top-container .menu li{
	font-family: 'Montserrat', sans-serif;
}
#logo {
	display: inline-block;
	float: left;
	position: relative;
	z-index: 100;
}
#logo img {
	width: auto;
	height: 55px;
	margin-left: 15px;
	transition: all 0.3s;
}
#top.scendi {
	min-height: 70px;
	background-color: #FFFFFF;
	transition: all 0.3s;
	padding-top: 15px;
	padding-bottom: 15px;
}
#top.scendi #logo img {
	height: 40px;
	width: auto;
	transition: all 0.3s;
	padding-left: 20px;
}
#top.scendi #menu {
	top: 20px;
	transition: all 0.3s;
}
#top.scendi .menu {
	padding-top: 8px;
	transition: all 0.3s;
}

.navbar {
	margin-bottom: 0;
	border: none;
	min-height: auto;
}
.navbar-default {
	box-shadow: none;
}
.navbar .navbar-collapse {
	padding-right: 0;
	padding-left: 0;
}
.menu {
	margin: 0;
	padding: 0 20px;
	text-align: right;
	padding-top: 15px;
	transition: all 0.3s;
}
.menu li {
    display: inline-block;
    list-style: none;
	padding-left: 20px;
}
.menu li a {
	font-family: 'Raleway', sans-serif;
	font-weight: 600;
    color: #20304F;
	font-size: 13px;
	line-height: 15px;
	font-weight: 500;
	letter-spacing: 0.1px;
	text-transform: uppercase;
	-webkit-transition: all 0.2s;
	-moz-transition: all 0.2s;
	-ms-transition: all 0.2s;
	-o-transition: all 0.2s;
	transition: all 0.2s;
}
.menu li a:hover {
	color: #BDA866;
	text-decoration: none;
	-webkit-transition: all 0.2s;
	-moz-transition: all 0.2s;
	-ms-transition: all 0.2s;
	-o-transition: all 0.2s;
	transition: all 0.2s;
}
.menu li.current-menu-item a, .menu li.current-menu-parent a {
	color: #BDA866;
	text-decoration: none;
	-webkit-transition: all 0.2s;
	-moz-transition: all 0.2s;
	-ms-transition: all 0.2s;
	-o-transition: all 0.2s;
	transition: all 0.2s;
}

.menu .menu-item-has-children {
    position: relative;
}
.menu .menu-item-has-children > a {
	padding-bottom: 40px;
}
.menu .menu-item-has-children > a:after {
    display: inline-block;
    content: "▼";
	margin-left: 10px;
	font-size: 10px;
	vertical-align: middle;
	margin-top: -4px;
	color: #BDA866;
	color: #CCCCCC;
}
.menu .menu-item-has-children > .sub-menu {
	visibility: hidden;
	opacity: 0;
	position: absolute;
	top: 100%;
	right: 0;
	width: 100%;
	z-index: -1;
	transition: all 0.3s ease-in-out 0s, visibility 0s linear 0.3s, z-index 0s linear 0.01s;
	margin-top: 38px;
}
#top.scendi .menu .menu-item-has-children > .sub-menu {
	margin-top: 24px;
}
.menu .menu-item-has-children:hover > .sub-menu {
	visibility: visible;
	opacity: 1;
	z-index: 1;
	transition-delay: 0s, 0s, 0.3s;
	background-color: #20304F;
}
.menu .sub-menu {
	position: absolute;
	right: 0;
	top: 25px;
	padding: 10px 23px;
	min-width: 250px;
}
.menu .sub-menu li {
	display: block;
	padding: 0;
	padding-bottom: 4px;
}
.menu .sub-menu li a {
	font-size: 12px;
	letter-spacing: 0.1px;
	color: #FFFFFF;
}
.menu .sub-menu li a:hover {
	color: #BDA866;
}

#top-centro {
	float: right;
}
#top-destra {
	float: right;
	padding-top: 15px;
	transition: all 0.3s;
	margin-right: 10px;
	margin-left: 10px;
}
#top.scendi #top-destra {
	padding-top: 8px;
	transition: all 0.3s;
}
#top-destra i {
	margin-right: 10px;
	font-family: "FontAwesome";
	color: #BBBBBB;
}
#top-destra p {
	margin-bottom: 0;
}
.wpml-ls-legacy-list-horizontal > ul {
    text-align: right;
}
.wpml-ls-legacy-list-horizontal a {
    padding: 0 5px 0 10px;
}



/* PERSONALIZZAZIONI */
body {
    color: #333333;
    font-family: "Montserrat", Sans-serif;
	font-size: 14px;
    font-weight: 400;
	line-height: 1.7em;
/*	background: url("../../img/halftone-top.png") center top repeat-x fixed;*/
}
#pagina {
	background: url("../../img/halftone-bottom.png") center bottom repeat-x;
}
.bianco {
	background-image: none;
	background-color: #FFFFFF;
}

ul {
	padding-left: 15px;
}

.separatore {
	border-top: 1px solid #EEEEEE;
	width: 100%;
	margin-top: 50px;
	margin-bottom: 50px;
}
.divisore {
	border-top: 1px solid #CCCCCC;
	width: 60px;
	margin: 30px auto 50px;
}
a.bottone {
	background-color: #EAEAEA;
	padding: 10px 20px;
	font-family: "Montserrat", Sans-serif;
	font-size: 11px;
	line-height: 13px;
	font-weight: 500;
	color: #333333;
	text-transform: uppercase;
	-webkit-transition: all 0.2s;
	-moz-transition: all 0.2s;
	-ms-transition: all 0.2s;
	-o-transition: all 0.2s;
	transition: all 0.2s;
}
a.bottone:hover {
	background-color: #bda866;
	color: #FFFFFF;
	text-decoration: none;
	-webkit-transition: all 0.2s;
	-moz-transition: all 0.2s;
	-ms-transition: all 0.2s;
	-o-transition: all 0.2s;
	transition: all 0.2s;
}

.scroll {
	background: url("../../img/scroll.gif") no-repeat;
	background-position-x: calc(50% - 6px);
	background-position-y: center;
	background-size: contain;
	height: 70px;
	position: absolute;
	bottom: 0;
	width: 100%;
	z-index: 3;
}

#motto {
	background-color: #20304f;
	background-image: url("../../img/sfondo-geometric-blue.jpg");
	background-position: bottom center;
	background-size: cover;
	padding-top: 80px;
	padding-bottom: 50px;
	text-align: center;
}
#motto h1 {
	color: #bda866;
	font-family: "Montserrat", Sans-serif;
	font-size: 26px;
	font-weight: 400;
}

.triangolo-blu, .triangolo-bianco {
	text-align: center;
}
.triangolo-blu-invertito {
	display: inline-table;
	position: absolute;
	top: -30px;
	margin-right: auto;
	margin-left: auto;
	left: calc(50% - 20px);
}
.triangolo-blu img, .triangolo-bianco img, .triangolo-blu-invertito img {
	height: 30px;
}

#home-main {
	padding-top: 120px;
	padding-bottom: 120px;
}
#home-main #logo img {
	display: block;
	width: 100%;
	max-width: 380px;
	height: auto;
	margin-bottom: 30px;
}
#home-main #logo-2 {
	display: inline-block;
	float: left;
	position: relative;
}
#home-main #logo-2 img {
	width: 100%;
	max-width: 380px;
	height: auto;
	margin-bottom: 30px;
}

#settori {
	background-image: url("../../img/sfondo-geometric.png");
	background-attachment: fixed;
	background-position: center bottom;
	padding-bottom: 100px;
	text-align: center;
}
#settori h2 {
	padding-top: 100px;
	color: #bda866;
	font-size: 33px;
}
#settori h3 {
	color: #666666;
	font-size: 27px;
}
#griglia-settori ul {
	padding-right: 0;
	padding-left: 0;
}
#griglia-settori li {
	list-style: none;
	padding: 20px;
}
#griglia-settori .singolo li {
	padding: 0 20px 20px;
	margin-top: -20px;
}
#griglia-settori .immagine {
	height: 80px;
	margin-bottom: 20px;
	position: relative;
	text-align: center;
}
#griglia-settori .immagine img {
	width: auto;
	height: 100%;
}
#griglia-settori .blocco-settori {
	padding: 40px 20px 90px;
	font-size: 15px;
	line-height: 1.3em;
	color: #FFFFFF;
	position: relative;
}
#griglia-settori .blocco-settori a.bottone {
	display: inline-table;
	margin-top: 20px;
	margin-right: auto;
	position: absolute;
	bottom: 30px;
	margin-left: auto;
	width: 102px;
	left: calc(50% - 51px);
}
#griglia-settori .singolo .blocco-settori a.bottone {
	width: 148px;
	left: calc(50% - 74px);
}
#griglia-settori .blocco-settori h2 {
	margin: 0 0 10px;
	padding: 0;
	color: #FFFFFF;
	font-size: 20px;
}
#griglia-settori .blu-1 {
	height: 100%;
	background-color: #858fa0;
}
#griglia-settori .blu-2 {
	height: 100%;
	background-color: #6f7a8f;
}
#griglia-settori .blu-3 {
	height: 100%;
	background-color: #4c5b76;
}

#box-lavora-con-noi {
/*	background-size: cover;
	background-attachment: fixed;
	background-position: center bottom;*/
	padding-top: 130px;
	padding-bottom: 150px;
		background-size: cover;
        -webkit-background-size: cover;
        -moz-background-size: cover;
        -o-background-size: cover;
        background-position: center center;
        background-repeat: no-repeat;
}
.sfondo-bianco {
	background-color: rgba(255, 255, 255, 0.9);
	padding: 30px 40px;
}
.sfondo-bianco h2 {
	color: #bda866;
	font-size: 26px;
}
.sfondo-bianco h2::after {
	content: "";
	border-top: 1px solid #CCCCCC;
	width: 60px;
	display: block;
	margin-top: 20px;
	margin-bottom: 30px;
}
.sfondo-bianco a.bottone {
	background-color: #BBBBBB;
	color: #FFFFFF;
	display: inline-block;
	margin-top: 20px;
}
.sfondo-bianco a.bottone:hover {
	color: #FFFFFF;
	background-color: #20304F;
}


#titolo {
	background-color: #20304f;
	background-image: url("../../img/sfondo-geometric-blue.jpg");
	background-position: bottom center;
	background-size: cover;
	padding-top: 150px;
	padding-bottom: 30px;
	text-align: left;
}
#titolo h1 {
	color: #bda866;
	font-family: "Montserrat", Sans-serif;
	font-size: 34px;
	font-weight: 400;
	text-transform: uppercase;
}
#pagina {
	padding-top: 100px;
	padding-bottom: 160px;
	border-bottom: 3px solid #DDDDDD;
}
#pagina .container {
	background-color: rgba(255, 255, 255, 0.9);
	padding: 60px;
	border: 1px solid #EEEEEE;
}
#pagina h2 {
	font-size: 22px;
	line-height: 1.4em;
	color: #333333;
	margin-bottom: 10px;
}
#pagina h3 {
	font-size: 18px;
	line-height: 1.4em;
	color: #333333;
	margin-bottom: 10px;
}
#pagina .esg-grid {
	margin-top: 50px;
}
#pagina .esg-grid::before {
    content: "";
    border-top: 1px solid #CCCCCC;
    width: 60px;
    display: block;
    margin-top: 20px;
    margin-bottom: 30px;
}
#copertina {
    height: 60vh;
    background-size: cover;
    background-position: center center;
    background-attachment: fixed;
}

#pagina.attivita .container {
	padding-right: 30px;
	padding-left: 30px;
}
#pagina.attivita .testo {
	padding-right: 30px;
	padding-left: 30px;
}
#pagina.attivita #griglia-settori {
	padding-right: 0;
	padding-left: 0;
	text-align: center;
}
#pagina.attivita #griglia-settori ul {
	padding-right: 0;
	padding-left: 0;
}


#partner {
	margin-top: 50px;
}
#partner .col-md-4 {
	text-align: center;
}
#partner img {
	width: auto;
	max-width: 100%;
	max-height: 140px;
	margin-right: auto;
	margin-left: auto;
}

#member img {
	max-width: 100%;
	height: auto;
	margin-bottom: 20px;
	padding-right: 10px;
}
#member h4 {
	display: inline-block;
	margin: 0;
	color: #20304f;
}
#member .foto {
	margin-bottom: 50px;
}
#member .social li {
	list-style: none;
	display: inline-block;
}
#member .social a {
	margin-left: 10px;
	color: #BBBBBB;
	transition: all 0.3s;
}
#member .social a:hover {
	color: #BDA866;
	transition: all 0.3s;
}
#member .social a i {
	font-family: "FontAwesome";
}
#member .email a {
	color: #bda866;
}
#pagina.team .container {
	padding: 20px;
}
#pagina.team .blocco-settori {
    background-color: #FFFFFF;
	color:  #666666;
    padding: 20px;
    font-size: 13px;
    line-height: 1.4em;
	box-shadow: 0 1px 30px rgba(0, 0, 0, 0.1);
}
#pagina.team .blocco-settori img {
	max-width: 100%;
	height: auto;
	margin-bottom: 30px;
}
#pagina.team .blocco-settori h2 {
	color: #20304f;
}
#pagina.team .blocco-settori .testo {
	height: 180px;
	overflow: hidden;
}
#pagina.team .blocco-settori a.bottone {
    position: relative;
    display: inline-block;
    bottom: 0;
}


#contatti .box {
	text-align: center;
	margin-bottom: 40px;
}
#contatti .box img {
    vertical-align: middle;
    max-height: 80px;
    margin-bottom: 20px;
}
#contatti .box h2 {
	color: #bda866;
}
#contatti .box a {
	color: #20304F;
}


#footer {
	background: url("../../img/sfondo-geometric-blue.jpg") center bottom no-repeat scroll #20304f;
	background-size: cover;
	padding-top: 40px;
	padding-bottom: 20px;
	text-align: left;
	font-family: "Source Sans Pro", Sans-serif;
	font-size: 13px;
	line-height: 1.4em;
	color: #FFFFFF;
	position: relative;
}
#footer h2.widgettitle {
	color: #bda866;
	font-size: 13px;
	font-weight: 500;
	margin-bottom: 5px;
}
#footer .logo img {
	width: 100%;
	height: auto;
}
#footer .copyright {
	width: 100%;
	text-align: center;
    padding: 15px 0px 0px;
    border-style: solid;
    border-width: 1px 0px 0px 0px;
    border-color: rgba(255,255,255,0.33);
	margin-top: 15px;
}
#footer a {
	color: #FFFFFF;
}



/* RESPONSIVE */
/* BURGER */
@media only screen and (max-width : 1024px) {
	.navbar-header {
	    float: none;
		padding: 0;
		margin: 0;
		position: relative;
	}
	.navbar-toggle {
	    display: block;
		border: none;
		margin: 0;
		position: absolute;
		top: 12px;
		right: 20px;
		transition: all 0.3s;
	}
	.navbar-collapse {
	    border: none;
		padding-right: 0;
		padding-left: 0;
	}
	.navbar-collapse.collapse {
	    display: none!important;
	}
	.navbar-collapse.collapse.in {
	    display: block!important;
	    width: 100%;
	    text-align: right;
	}
	.menu, .menu-en {
		margin-left: 0;
		width: 100%;
		padding: 20px 30px 15px 15px;
	}
	#top.scendi .menu, #top.scendi .menu-en {
	    padding-top: 23px;
	    transition: all 0.3s;
	}
	#top.scendi .navbar-toggle, #top.scendi .navbar-toggle {
	    top: 5px;
	    transition: all 0.3s;
	}
	.menu li, .menu-en li {
	    display: block;
		padding: 4px 0 10px;
	}
	.menu li a, .menu-en li a {
	    display: block;
	}
	.menu li a:hover, .menu-en li a:hover {
		background-color: transparent;
	}
	.menu .bottone a, .menu-en .bottone a {
	    display: inline-block;
	}
	
	.menu .menu-item-has-children:hover > .sub-menu, .menu-en .menu-item-has-children:hover > .sub-menu {
/*	    visibility: hidden;
	    opacity: 0;*/
	}
	.menu .menu-item-has-children > .sub-menu.open, .menu-en .menu-item-has-children > .sub-menu.open {
	    visibility: visible;
	    opacity: 1;
	    z-index: 1;
	    transition-delay: 0s, 0s, 0.3s;
	    position: relative;
		padding-right: 30px;
		margin-bottom: 10px;
	}
	.menu .menu-item-has-children > .sub-menu, .menu-en .menu-item-has-children > .sub-menu {
	    visibility: visible;
	    opacity: 1;
	    z-index: 1;
	    margin: 0;
	    padding: 0;
	    width: 100%;
	    border-top: none;
	    top: 0;
	    text-align: right;
	    background-color: transparent;
		position: relative;
	}
	.menu .menu-item-has-children > .sub-menu.open li, .menu-en .menu-item-has-children > .sub-menu.open li {
	    text-align: right;
	}
	.menu .menu-item-has-children > .sub-menu.open li a::before, .menu-en .menu-item-has-children > .sub-menu.open li a::before {
	    content: "";
	    display: none;
	}
	
	.menu .menu-item-has-children > .sub-menu {
	    margin-top: 0 !important;
		padding-right: 20px;
	}
	.menu .menu-item-has-children > a {
	    padding-bottom: 7px;
	}
	.menu .sub-menu li a {
		color: #999999;
	}
	.menu li.current-menu-item a {
		background-color: transparent;
		color: #bda866;
	}
	.menu .menu-item-has-children:hover > .sub-menu {
	    background-color: transparent;
	}
	
	#top-destra {
		display: none;
	}
}

/* Extra Large Devices */
@media (min-width: 1681px){
}
@media (max-width: 1680px){
}
/* Large Devices, Wide Screens */
@media only screen and (max-width : 1200px) {
	#logo img {
		height: 50px;
		margin-left: 5px;
	}
	#top.scendi #logo img {
		padding-left: 0;
	}
	.menu {
		padding-top: 13px;
	}
}
/* Tablet Landscape */
@media only screen and (max-width : 1024px) {
	#pagina {
		padding-top: 0;
		padding-bottom: 0;
		margin-top: -30px;
	}
	#pagina .container {
		padding: 100px 35px 120px;
	}
	.page-template-page-contatti #pagina .container {
		padding: 100px 35px 60px;
	}
	#settori {
		background: url("../../img/sfondo-geometric-mob.png") center top no-repeat scroll;
		background-size: contain;
	}
}
/* Medium Devices, Desktops */
@media only screen and (max-width : 992px) {
/*	.stessa-altezza > [class*="col-"] {
		width: 100%;
	}
	#pagina.attivita #griglia-settori {
	    max-width: 600px;
	    margin: 0 auto 40px;
	}*/
	#griglia-settori .blocco-settori {
	    padding: 40px 30px;
	}
	#griglia-settori .blocco-settori a.bottone {
	    display: inline-block;
	    margin-top: 20px;
	    position: relative;
		bottom: 0;
		left: 0;
	}
	#griglia-settori .singolo {
	    max-width: 600px;
	    margin: 0 auto 40px;
	}
	#box-lavora-con-noi {
	    background-size: cover;
		background-attachment: scroll!important;
		padding-right: 30px;
		padding-left: 30px;
		background-repeat: no-repeat;
	}
	#footer .logo img {
		max-width: 250px!important;
		height: auto;
		margin-bottom: 20px;
	}
}
/* Small Devices, Tablets */
@media only screen and (max-width : 768px) {
	#griglia-settori .col-sm-4 {
		width: 100%;
	}
	#copertina {
		height: 50vh;
	}
}
/* Extra Small Devices, Phones */ 
@media only screen and (max-width : 480px) {
	#footer .triangolo-blu-invertito {
		display: none;
	}
}
/* Custom, iPhone Retina */ 
@media only screen and (max-width : 375px) {
	#logo img {
		height: 45px;
	}
	.navbar-toggle {
		top: 7px;
		right: -5px;
	}
	#home-main {
	    padding-top: 80px;
	    padding-bottom: 100px;
	}
	#griglia-settori .singolo li {
	    padding: 0 0 20px;
	}
	#pagina .container {
	    padding: 100px 15px 120px;
	}
	#pagina.attivita .testo {
	    padding-right: 0;
	    padding-left: 0;
	}
}
@media only screen and (max-width : 320px) {
}



/* FIX */
/*Edge*/
@supports ( -ms-accelerator:true ) 
{
    html{
        overflow: hidden;
        height: 100%;    
    }
    body{
        overflow: auto;
        height: 100%;
    }
}
/*Ie 10/11*/
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) 
{
    html{
        overflow: hidden;
        height: 100%;    
    }
    body{
        overflow: auto;
        height: 100%;
    }
}
/*IOS*/
@supports (-webkit-overflow-scrolling: touch) {
	#pagina {
		background-attachment: scroll;
	}
}
/*NON IOS*/
@supports not (-webkit-overflow-scrolling: touch) {
	#pagina {
		background-attachment: fixed;
	}
}

.elementor-column-gap-default > .elementor-row > .elementor-column > .elementor-element-populated {
    padding: 0;
}