/* http://meyerweb.com/eric/tools/css/reset/  v2.0 | 20110126 */
a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:'';content:none}table{border-collapse:collapse;border-spacing:0}

/*********************/
/******  GRID  *******/
/*********************/
.grid{ display: -webkit-box; display: -ms-flexbox; display: flex; 
-webkit-box-orient: horizontal;  -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; 
-ms-flex-wrap: wrap;  flex-wrap: wrap; 
-webkit-box-pack: start; -ms-flex-pack: start; justify-content: flex-start; 
-webkit-box-align: stretch;  -ms-flex-align: stretch; align-items: stretch; }

.grid-item{ width: 100%; -webkit-box-sizing: border-box; box-sizing: border-box; 
-webkit-box-flex: 0; -ms-flex: 0 0 auto; flex: 0 0 auto;  }

.grid-gap{ margin-left: 15px; margin-right: 15px;}
.grid-gap > .grid-item, .grid-gapbox > .grid-item{ padding-left: 15px; padding-right: 15px; }
.grid-gapbox{ margin-left: -15px; margin-right: -15px; }

.grid-clearfix{ width:100%; height: 0; visibility: hidden; -webkit-box-flex: 0; -ms-flex: 0 0 auto; flex: 0 0 auto; }

.grid-span1{ width: 8.33333%; }
.grid-span2{ width: 16.66666%; }
.grid-span3{ width: 25%; }
.grid-span4{ width: 33.33333%; }
.grid-span5{ width: 41.66666%; }
.grid-span6{ width: 50%; }
.grid-span7{ width: 58.33333%; }
.grid-span8{ width: 66.66666%; }
.grid-span9{ width: 75%; }
.grid-span10{ width: 83.33333%; }
.grid-span11{ width: 91.66666%; }
.grid-span12{ width: 100%; }

.grid-push1{ margin-left: 8.33333%; }
.grid-push2{ margin-left: 16.66666%; }
.grid-push3{ margin-left: 25%; }
.grid-push4{ margin-left: 33.33333%; }
.grid-push5{ margin-left: 41.66666%; }
.grid-push6{ margin-left: 50%; }
.grid-push7{ margin-left: 58.33333%; }
.grid-push8{ margin-left: 66.66666%; }
.grid-push9{ margin-left: 75%; }
.grid-push10{ margin-left: 83.33333%; }
.grid-push11{ margin-left: 91.66666%; }
.grid-push12{ margin-left: 100%; }


.hidden-xs{ display: none; }
	
/*****************/
.grid-container{ man-width: 35.5em; }

.grid-span1-sm{ width: 8.33333%; }
.grid-span2-sm{ width: 16.66666%; }
.grid-span3-sm{ width: 25%; }
.grid-span4-sm{ width: 33.33333%; }
.grid-span5-sm{ width: 41.66666%; }
.grid-span6-sm{ width: 50%; }
.grid-span7-sm{ width: 58.33333%; }
.grid-span8-sm{ width: 66.66666%; }
.grid-span9-sm{ width: 75%; }
.grid-span10-sm{ width: 83.33333%; }
.grid-span11-sm{ width: 91.66666%; }
.grid-span12-sm{ width: 100%; }

.grid-push0-sm{ margin-left: 0%; }
.grid-push1-sm{ margin-left: 8.33333%; }
.grid-push2-sm{ margin-left: 16.66666%; }
.grid-push3-sm{ margin-left: 25%; }
.grid-push4-sm{ margin-left: 33.33333%; }
.grid-push5-sm{ margin-left: 41.66666%; }
.grid-push6-sm{ margin-left: 50%; }
.grid-push7-sm{ margin-left: 58.33333%; }
.grid-push8-sm{ margin-left: 66.66666%; }
.grid-push9-sm{ margin-left: 75%; }
.grid-push10-sm{ margin-left: 83.33333%; }
.grid-push11-sm{ margin-left: 91.66666%; }
.grid-push12-sm{ margin-left: 100%; }

.hidden-xs{ display: inline-block; }
.hidden-sm{ display: none; }
		
/*****************/


.grid-span1-md{ width: 8.33333%; }
.grid-span2-md{ width: 16.66666%; }
.grid-span3-md{ width: 25%; }
.grid-span4-md{ width: 33.33333%; }
.grid-span5-md{ width: 41.66666%; }
.grid-span6-md{ width: 50%; }
.grid-span7-md{ width: 58.33333%; }
.grid-span8-md{ width: 66.66666%; }
.grid-span9-md{ width: 75%; }
.grid-span10-md{ width: 83.33333%; }
.grid-span11-md{ width: 91.66666%; }
.grid-span12-md{ width: 100%; }

.grid-push0-md{ margin-left: 0%; }
.grid-push1-md{ margin-left: 8.33333%; }
.grid-push2-md{ margin-left: 16.66666%; }
.grid-push3-md{ margin-left: 25%; }
.grid-push4-md{ margin-left: 33.33333%; }
.grid-push5-md{ margin-left: 41.66666%; }
.grid-push6-md{ margin-left: 50%; }
.grid-push7-md{ margin-left: 58.33333%; }
.grid-push8-md{ margin-left: 66.66666%; }
.grid-push9-md{ margin-left: 75%; }
.grid-push10-md{ margin-left: 83.33333%; }
.grid-push11-md{ margin-left: 91.66666%; }
.grid-push12-md{ margin-left: 100%; }

.hidden-xs, .hidden-sm{ display: inline-block; }
.hidden-md{ display: none; }
/****************/


html, button, input, select, textarea { font-family: 'Nunito Sans', sans-serif; color: #505961; }

.img-responsive{ display: inline-block; max-width: 100%; height: auto; }

strong, b{ font-weight: bold;}

.margin, .margin-top{ margin-top: 25px; }
.margin, .margin-bottom{ margin-bottom: 25px; }

.margin-big, .margin-top-big{ margin-top: 50px; }
.margin-big, .margin-bottom-big{ margin-bottom: 50px; }

.margin-small, .margin-top-small{ margin-top: 15px; }
.margin-small, .margin-bottom-small{ margin-bottom: 15px; }

.padding, .padding-top{ padding-top: 25px; }
.padding, .padding-bottom{ padding-bottom: 25px; }

.padding-big, .padding-top-big{ padding-top: 50px; }
.padding-big, .padding-bottom-big{ padding-bottom: 50px; }

.padding-small, .padding-top-small{ padding-top: 15px; }
.padding-small, .padding-bottom-small{ padding-bottom: 15px; }


.testo p{ margin: 1em 0; }
.testo ul{ margin: 1em 0; padding-left: 1em; }
.testo li{ list-style: disc; line-height: 1.4em; margin-bottom: 6px; }


.titolo1 { font-size: 2.9rem; line-height: 3.1rem;   color: #11273D; }
.titolo1 strong{ color: #D32D33; font-weight: 800; }
.titolo2 { font-size: 2rem; line-height: 2.4rem; font-weight: 300;  color: #11273D; }
.titolo2 strong{ font-weight: 800; }
.titolo3 { font-size: 2.85rem; line-height: 3.6rem; font-weight: 300;  color: #11273D; }
.titolo3 strong{ font-weight: 800; }
.titolo4 { font-size: 1.7rem; line-height: 2rem; font-weight: 800;  color: #11273D; }
.titolo5{ font-size: 1.1rem; font-weight: bold; line-height: 1.6rem; text-transform: uppercase;  color: #11273D; }
.titolo6{ font-size: 0.88rem; font-weight: bold; letter-spacing: 1px; line-height: 1.1rem; margin: 0.2rem 0; text-transform: uppercase;  padding-left: 1px;  color: #11273D; }
.titolo7{ font-size: 1.3rem; font-weight: 800;	line-height: 1.8rem;  color: #11273D; }
.titolo8{  font-size: 1.7rem; line-height: 2rem;  color: #11273D; }
.titolo8 strong{ font-weight: 800; } 
.testogrande{ font-size: 1.25rem; line-height: 1.85rem; }


a {color: #11273d; text-decoration: underline; font-weight: bold; }
a:hover, a:focus { color: #D32D33; }
a:focus { outline: none; }

.text-color-blu{ color: #11273D; }
.text-color-rosso{ color: #D32D33; }
.text-color-grigio{ color: #505961; }

.text-strong-azzurro strong, .text-strong-azzurro b{ color: #36A4DD; }

.center-block{ margin-left: auto; margin-right: auto; }

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}
.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}


.l-box { padding-left: 1em; padding-right: 1em;
    -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

.svg{ stroke: #454343; width: 100%; height: 100%; display: block; }

.menu, .menu li{ margin: 0; padding: 0; list-style: none; display: block; }

.btn, .btn-semplice{ text-decoration: none; font-weight: 600; display: block; color: #11273D; border: none; background: none; }
.btn[href]:after, .btn-semplice[href]:after { content: " (" attr(href) ")"; }
.btn-text{ display: inline-block; }

.btn-arrow{ display: none; }

.btn-bianco{ color: #11273D; }
.btn2{ color: #454343; }
.btn2-inverso{ color: #D32D33; }
.btn-azzurro{ color: #36A4DD; }

.btn-semplice{ color: #11273d; font-size: 0.88rem; font-weight: bold; line-height: 20px; text-transform: uppercase;  }

.slider-items { display: block; position: relative; overflow: hidden; }
.slider-item { position: relative; width: 100%; box-sizing: border-box; }
.slider-control{ display: none; }
.slider-container .grid-item, #servizio-intro-content .grid-item{ width: 100%; padding: 0; }


/******* PERSONALIZZAZIONI  *******/
html,body{ font-size: 16px; line-height: 1.5em; background-color: #FFF; color: #505961;  word-wrap: break-word;  }

#header{ width:100%;  }
#header-menubox, #header-mobilemenu, #linkLingue, #header-menu{ display: none; }
#header-logo{ display: block; margin: 15px 0 0 30px;  }

#header-placeholder{ display: none; }

.fascia{ margin: 30px 0;  }

.home-slider-image-bk, .servizio-intro-image-bk{ display: none; }
.home-slider-item-boxtext, .servizio-intro-boxtext{ padding: 30px; position: relative; z-index: 2; box-sizing: border-box; }

#home-azienda-box{ margin: 20px 0; page-break-inside: avoid; }
#home-azienda-box .grid-item{ display: none; }
#home-azienda-box #home-azienda-dati-big-box{ display: flex; }

.home-azienda-dati{ border-left: 2px solid; padding-left: 15px; 
-webkit-column-break-inside: avoid; page-break-inside: avoid; break-inside: avoid; }
.home-azienda-dati-big{ color: #11273D;}
.home-azienda-dati .titolo2{ display: none; }
.home-azienda-dati::before{ content:attr(data-numeroprint); font-size: 2rem; line-height: 2.4rem; font-weight: 300; display: block;   }

#home-servizi .ico{ width: 50px; }
.home-servizio .titolo4{ margin: 10px 0 30px; }

.cta-item{ padding: 30px; }
#cta-sx, #cta-dx{ width: 100%; }


#home-loghi{ text-align: right; }
.item-logo{ margin: 15px 0; }
.item-logo-img{ width: 100%; height: auto; }
#home-loghi-more{	-ms-flex-item-align: center; -ms-grid-row-align: center; align-self: center;
	-webkit-box-flex:1; -ms-flex-positive:1; flex-grow:1; }

.fascia-foto{ display: -webkit-box; display: -ms-flexbox; display: flex; 
	-webkit-box-orient: horizontal;  -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; 
	-ms-flex-wrap: wrap;  flex-wrap: wrap; 
	-webkit-box-pack: start; -ms-flex-pack: start; justify-content: flex-start; 
	-webkit-box-align: stretch;  -ms-flex-align: stretch; align-items: stretch; }

.fascia-foto-item{ width: 100%; height:0; padding-top:48%; background: no-repeat center center; background-size: cover; margin-bottom: 2px;
	-webkit-box-sizing: border-box; box-sizing: border-box; 
	-webkit-box-flex: 1; -ms-flex: 1 0 auto; flex: 1 0 auto;  }


#azienda-intro-dati{ margin: 30px 0;}

#azienda-foto{ display: none; }

#servizio-componenti-intro { -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
.servizio-box, .contatti-sede{ height: 100%; padding: 15px 30px; box-sizing: border-box; color: #505961; }
.contatti-sede{ padding: 15px 0; }
.servizio-box .ico{ width: 68px; }
.servizio-box .titolo3 br{ display: none; }
.servizio-box .ico{ float: left; margin-right: 10px;}

#servizio-intro-content{ position: relative; }
.servizio-desc-list{ margin-top: 60px;  }
.servizio-desc-item{ margin-bottom: 30px; word-break:initial; }
.servizio-ico{ max-width: 72px; max-height: 72px; width: auto; height: auto; }

.casestudy-item{ margin: 30px 0;}
.casestudy-item .grid-gapbox{ margin: 0; }
.casestudy-item .grid-item{ width: 100%; margin-left: 0; box-sizing: border-box; }
.casestudy-item-box{ padding: 30px  15px; position: relative; z-index: 2; }
.casestudy-item-bk{ display:none; }


#form-contatti{ display: none; }

#form-contatti-placeholder{ position: absolute; top: -100px; left:0; width: 100%; height: 0; z-index: -1; }

footer h6{ margin-bottom: 15px; color: #D32D33; }
.footer-menu a{ margin-bottom: 10px; display: block; line-height: 1.1em;  }

#privacy-modal, #footer-menu-3, #footer-linkedin{ display:none; }