@charset "utf-8";
@import url('owl.css'); /* owl */
@import url('col-quark.css'); /* colours */
@import url(https://fonts.googleapis.com/css?family=Lato:400,300,700,900,900i); /* 300, 400, 700, 900 */


/* COMMON */
* { margin: 0; padding: 0; }
html, body { height: 100%; }
body { position: relative; font-family: 'Lato', sans-serif; font-weight: 400; background-color: #fff; -webkit-text-size-adjust: 100%; -webkit-font-smoothing: antialiased; overflow-x: hidden; }
a:active, a:focus, input:focus, textarea:focus, :focus { outline: none !important; }
a { text-decoration: none; }
a img, table { border: 0; }
li { list-style: none; }
input, textarea { -webkit-appearance: none; -moz-appearance: none; border-radius: 0; }
input:-webkit-input-placeholder, input:-moz-placeholder, textarea:-webkit-input-placeholder, textarea:-moz-placeholder { color: #eee; }
img { -moz-user-select: none; -khtml-user-select: none; -webkit-user-select: none; -o-user-select: none; }
.align-right { text-align: right; }
.float-right { float: right; }
.clear { clear: both; }
.mob { display: none; }


/*	LAYOUT - margini inferiori negli elementi interni (es: h1, p, btn, ecc.) */
.container { position: relative; width: 1180px; margin: 0 auto; }
.content-left { position: relative; float: left; width: 69%; margin: 60px 1% 40px 0; }
.sidebar { position: relative; float: left; width: 29%; margin: 60px 0 40px 1%; }
.col1, .col2, .col3, .col33, .col4, .col444, .col5, .col55, .col555, .col5555 { position: relative; float: left; margin: 0 1%; /*box-sizing: border-box;*/ }
.col1 { width: 98%; }
.col2 { width: 48%; }
.col3 { width: 31.3333%; }
.col33 { width: 64.6666%; }
.col4 { width: 23%; }
.col444 { width: 73%; }
.col5 { width: 18%; }
.col55 { width: 38%; }
.col555 { width: 58%; }
.col5555 { width: 78%; }


/* HEADER - MENU */
.header { position: relative; display: block; width: 100%; background-color: #fff; box-shadow: 0 4px 6px rgba(0,0,0,.1); z-index: 9999; }
.header .logo { float: left; display: block; width: 221px; height: 65px; margin-top: 25px; background: url('../img/logo.png') 0 0 no-repeat; background-size: 100% auto; }
.header .content { float: right; padding-top: 20px; }

.social-search { height: 29px; z-index: 10; }
.social-search li { float: right; }
.social-search li input { height: 29px; margin-left: 42px; padding: 0 37px 0 10px; box-sizing: border-box; font-size: 14px; line-height: 29px; background: #fff url('../img/search.png') right 1px no-repeat; border: #cecece 1px solid; }
.social-search li a { display: block; width: 29px; height: 29px; margin-left: 12px; text-align: center; }
.social-search li a i { font-size: 15px; line-height: 29px; }

/* desktop menu */
.menu-container { position: relative; display: block; height: 54px; z-index: 5; }
.menu { zoom: 1; }
.menu, .menu ul { width: 100%; text-align: center; list-style: none; z-index: 9999 !important; }
.menu:before, .menu:after { content: ''; display: table; }
.menu:after { clear: both; }
.menu > li { display: inline-block; position: relative; }

.menu a { display: inline-block; padding: 0 8px; text-transform: uppercase; font-size: 15px; font-weight: 700; line-height: 52px; } /* link */
.menu > li:last-child > a { padding: 0 0 0 10px; }
.menu .active { font-weight: 900; }
.menu ul { position: absolute; left: 0; top: 54px; width: 230px; text-align: left; background-color: #fff; box-shadow: 0 4px 6px rgba(0,0,0,.1); opacity: 0; visibility: hidden; z-index: 1; }
.menu li:hover > ul { opacity: 1; visibility: visible; margin-top: 0; }

.menu ul li { float: none; display: block; border: 0; }
.menu ul a { float: none; display: block; padding: 10px 15px; width: 200px; font-size: 12px; line-height: 18px; text-transform: none; }

.menu ul ul { top: 0; left: 200px; margin: 0 0 0 20px; }

/* iPad menu */
.no-transition { display: none; -webkit-transition: none; -moz-transition: none; -o-transition: none; transition: none; opacity: 1; visibility: visible; }
.menu li:hover > .no-transition { display: block; }

/* mobile menu */
.menu-trigger { display: none; }
@media screen and (max-width: 1023px) {
	.desk { display: none; }
	.mob { display: inline-block; }
	
	/* menu container */
	.menu-container { position: relative; width: 100%; height: 28px; }
	.menu-container * { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }
	/* menu bar icon */
	.menu-trigger { position: absolute; left: 0; top: -29px; display: block; width: 29px; height: 29px; line-height: 29px; text-align: center; cursor: pointer; }
	.menu-trigger i { line-height: 29px; }
	/* main nav */
	.menu { position: absolute; top: 0; width: 100%; padding: 0 10px; background-color: #fff; display: none; }
	.menu a { display: block; float: none; height: 40px; font-size: 14px; font-weight: 700; text-align: left; line-height: 38px; border-bottom: #eee 1px solid; }

	.menu li:first-child { margin-top: 10px; }
	
	.menu ul { position: static; display: block; width: 100%; margin-top: 0; visibility: visible; opacity: 1; background-color: #fff; box-shadow: none; }
	.menu ul ul { margin: 0 0 0 20px !important; border: none !important; }
	.menu li { float: none; position: static; display: block; border: 0; }
	.menu ul li { padding-left: 10px; }
	.menu ul a { width: auto; font-weight: 400; }
	.menu ul a:hover { background: none; }
}
@media screen and (min-width: 1024px) {
	.menu { display: block !important; }
}


/* HP SLIDESHOW */
.hpslideshow { position: relative; width: 100%; }
.hpslideshow .item img { width: 100%; height: auto; z-index: 1; }

.hpslideshow .item .caption { display: table; position: absolute; top: 0; right: 0; bottom: 0; left: 0; height: 100%; width: 100%; margin: auto; z-index: 2; }
.hpslideshow .item .caption .txt { display: table-cell; vertical-align: middle; width: 100%; padding: 0 3% 0 45%; box-sizing: border-box; }
.hpslideshow .item .caption .txt p { position: relative; padding: 25px 0 25px 25px; font-size: 42px; font-weight: 900; line-height: 50px; background-color: rgba(255,255,255,.5); }
.hpslideshow .item .caption .txt p:before { display: block; position: absolute; left: 100%; top: 0; content: ''; width: 100%; height: 100%; background-color: rgba(255,255,255,.5); }

.hpslideshow .owl-controls { position: absolute; top: auto; bottom: 70px; right: 0; width: auto; height: 0; }
.hpslideshow .owl-controls .owl-prev { float: left; display: block; width: 36px; height: 36px; margin-right: 2px; font-size: 18px; text-align: center; line-height: 36px !important; border: #fff 2px solid; opacity: 1; }
.hpslideshow .owl-controls .owl-next { float: left; display: block; width: 36px; height: 36px; margin-right: 30px; font-size: 18px; text-align: center; line-height: 36px !important; border: #fff 2px solid; opacity: 1; }
.hpslideshow .owl-controls .owl-prev:hover, .hpslideshow .owl-controls .owl-next:hover { background-color: #b2003c; opacity: 1; }
.hpslideshow .owl-prev i, .hpslideshow .owl-controls .owl-next i { font-size: 18px; line-height: 36px; color: #fff; }


/* HP BUTTONS */
.hpbtn { position: relative; width: 100%; margin-bottom: 60px; box-shadow: 0 4px 6px rgba(0,0,0,.1); z-index: 20; }
.hpbtn li { float: left; display: block; width: 33.3333%; text-align: center; color: #e85b08; }

.hpbtn li a { display: block; width: 100%; height: 245px; text-align: center; }
.hpbtn li a .icon { display: block; width: 150px; height: 150px; margin: 0 auto; }
.hpbtn li h4 { display: block; font-size: 37px; font-weight: 400; line-height: 37px; text-transform: uppercase; }
.hpbtn li p { width: 100%; padding: 0 20px; box-sizing: border-box; font-size: 17px; line-height: 20px; }


/* HP NEWS */
.news-container { width: 100%; margin: 40px 0 0 0; padding: 45px 0 115px 0; }
.newscarousel .item { position: relative; }
.newscarousel .owl-controls { position: absolute; top: 100%; margin-top: 40px; width: 100%; height: 0; }
.newscarousel .owl-pagination { width: 100%; box-sizing: border-box; text-align: center; }
.newscarousel .owl-controls .owl-page { display: inline-block; zoom: 1; *display: inline; }
.newscarousel .owl-controls .owl-page span { display: block; width: 13px; height: 13px; margin: 0 11px; background: transparent; border: #b2003c 2px solid; }
.newscarousel .owl-controls .owl-page.active span, newscarousel .owl-controls.clickable .owl-page:hover span { border: #fff 2px solid; }

.data { position: absolute; left: 0; top: 0; width: 136px; text-align: center; border-right: #d8d8d8 1px solid; }
.data .day { display: block; font-size: 16px; line-height: 20px; color: #666; }
.data .daynumber { display: block; width: 94px; height: 94px; margin: 3px auto; font-size: 47px; line-height: 94px; color: #666; background-color: #fff; box-shadow: 0 3px 3px rgba(0,0,0,.1); }
.data .month { display: block; font-size: 16px; font-weight: 700; line-height: 20px; color: #666; }
.data .year { display: block; font-size: 26px; font-weight: 700; line-height: 26px; color: #666; }

.txt-news { position: relative; min-height: 180px; padding-left: 156px; box-sizing: border-box; }


/* BREADCRUMBS */
.breadcrumbs { display: block; width: 100%; padding: 24px 0; }
.breadcrumbs .blk-txt p { margin-bottom: 0; font-size: 14px; }
.breadcrumbs .blk-txt p i { font-size: 22px; }


/* FOOTER */
.footer { display: block; width: 100%; padding: 40px 0; }
.footer h3 { position: relative; display: block; margin: 0 0 25px 0; padding-bottom: 7px; font-size: 22px; font-weight: 400; line-height: 25px; box-sizing: border-box; }
.footer h3:before { position: absolute; left: 0; bottom: -2px; display: block; content: ''; width: 100px; height: 2px; }

.footer ul { display: block; margin-bottom: 50px; }
.footer li { font-size: 17px; font-weight: 300; line-height: 25px; }
.footer p { padding: 10px 0 0 58px; box-sizing: border-box; font-size: 12px; font-weight: 300; line-height: 20px; }
.footer p i { width: 19px; }

a.nur:link, a.nur:visited { display: block-inline; height: 20px; padding: 0 0 2px 47px; font-weight: 400; line-height: 20px; color: #fff !important; background: url('../img/nur.png') 0 1px no-repeat; -webkit-transition: none; -moz-transition: none; -o-transition: none; transition: none; }
a.nur:hover { background-position: 0 -49px; }


/* BLOCK'S */
/* blocco testo */
.blk-txt h1 { position: relative; display: block; margin-bottom: 40px; padding-bottom: 7px; box-sizing: border-box; font-size: 37px; font-weight: 700; line-height: 40px; text-transform: uppercase; }
.blk-txt h1:before { position: absolute; left: 0; bottom: -2px; display: block; content: ''; width: 100px; height: 2px; }
.blk-txt h2 { display: block; margin-bottom: 20px; font-size: 28px; font-weight: 700; line-height: 32px; text-transform: uppercase; }
.blk-txt h3 { display: block; margin-bottom: 20px; font-size: 21px; font-weight: 700; line-height: 25px; } /* titolo del blocco */
.blk-txt h5 { display: block; margin-bottom: 10px; font-size: 14px; font-weight: 400; line-height: 16px; } /* data in elenco news */
.blk-txt p { margin-bottom: 20px; font-size: 17px; font-weight: 400; line-height: 27px; }

.blk-txt ul { margin: 0 0 30px 20px; overflow: hidden; }
.blk-txt ul li { position: relative; padding-left: 20px; font-size: 17px; font-weight: 400; line-height: 27px; list-style: none; }
.blk-txt ul li:before { position: absolute; left: 0; top: 0; content: '\f105'; font-family:'FontAwesome'; font-size: 12px; line-height: 27px; }

.main-title { position: relative; display: block; margin: 8px 0 50px 0; padding-bottom: 7px; box-sizing: border-box; font-size: 37px; font-weight: 700; line-height: 40px; }
.main-title:before { position: absolute; left: 0; bottom: -2px; display: block; content: ''; width: 100px; height: 2px; }

/* blocco allegato */
.blk-attachment { padding-bottom: 30px; }
.blk-attachment a:link, .blk-attachment a:visited { position: relative; display: inline-block; padding: 10px 40px 12px 40px; font-size: 16px; font-weight: 400; line-height: 20px; overflow: hidden; }

.blk-attachment a .symbol { position: absolute; left: 0; top: 10px; display: block; width: 40px; height: 100%; font-size: 16px; line-height: 20px; text-align: center; }
.blk-attachment a .symbol i { line-height: 20px; }
.blk-attachment a .slide-icon { position: absolute; display: block; left: 0; top: -40px; width: 40px; height: 40px; text-align: center; opacity: 0; }
.blk-attachment a .slide-icon i { line-height: 40px; }

.blk-attachment a:hover .symbol { opacity: 0; }
.blk-attachment a:hover .slide-icon { -webkit-animation: slideDown 0.9s linear infinite; -moz-animation: slideDown 0.9s linear infinite; animation: slideDown 0.9s linear infinite; opacity: 1; z-index: 10; }
@keyframes slideDown { 0% { top: -40px; } 100% { top: 100%; } }
@-webkit-keyframes slideDown { 0% { top: -40px; } 100% { top: 100%; } }
@-moz-keyframes slideDown { 0% { top: -40px; } 100% { top: 100%; } }

/* blocco immagine */
.blk-img { margin-bottom: 30px; }
.blk-img img { display: block; }
.blk-img img, a.overlay img { width: 100%; height: auto; z-index: 5; }
a.overlay { position: relative; display: block; box-sizing: border-box; overflow: hidden; }
.more { position: absolute; top: 0; left: 0; bottom: 0; right: 0; margin: auto; display: block; width: 50px; height: 50px; text-align: center; line-height: 100%; -webkit-opacity: 0; -moz-opacity: 0; opacity: 0; filter: alpha(opacity=0); }
.more i, .more img { position: absolute; top: 0; right: 0; bottom: 0; left: 0; width: 50px; height: 50px; margin: auto; text-align: center; font-size: 30px; line-height: 50px; color: #fff; }
.more img { width: auto !important; height: auto !important; }
.more strong { position: absolute; top: 0; right: 0; bottom: 0; left: 0; width: 90%; height: 30px; padding: 0 5%; margin: auto; text-align: center; font-size: 20px; font-weight: 400; line-height: 30px; color: #fff;  }
a.overlay:hover .more { width: 100%; height: 100%; -webkit-opacity: 0.7; -moz-opacity: 0.7; opacity: 0.7; filter: alpha(opacity=70); z-index: 10; }

/* blocco slideshow */
.blk-slideshow { position: relative; width: 100%; margin-bottom: 30px; overflow: hidden; }
.blk-slideshow:before { display: block; position: absolute; right: 0; top: 0; content: ''; width: 1px; height: 800px; background-color: #fff; z-index: 999; }
.blk-slideshow .item img { width: 100%; height: auto; z-index: 1; }
.blk-slideshow .owl-controls { position: absolute; top: auto; bottom: 50px; right: 0; width: auto; height: 0; }
.blk-slideshow .owl-controls .owl-prev { float: left; display: block; width: 36px; height: 36px; margin-right: 2px; font-size: 18px; text-align: center; line-height: 36px !important; border: #fff 2px solid; opacity: 1; }
.blk-slideshow .owl-controls .owl-next { float: left; display: block; width: 36px; height: 36px; margin-right: 11px; font-size: 18px; text-align: center; line-height: 36px !important; border: #fff 2px solid; opacity: 1; }
.blk-slideshow .owl-controls .owl-prev i, .blk-slideshow .owl-controls .owl-next i { font-size: 18px; line-height: 36px; }

/* blocco video */
.blk-video { display: block; width: 100%; padding-bottom: 30px; }
.blk-video .video { position: relative; display: block; width: 100%; padding-top: 56.25%; } /* 56.25% - 75% */
.blk-video .video iframe { position: absolute; left: 0; top: 0; width: 100%; height: 100%; border: 0; }

/* blocco mappa */
.blk-map { padding-bottom: 30px; }
.blk-map iframe { width: 100% !important; height: 400px !important; border: 0 !important; }

/* blocco link */
.blk-link a:link, .blk-link a:visited { position: relative; display: block; width: 100%; min-height: 62px; padding: 10px 10px 12px 66px; margin-bottom: 20px; box-sizing: border-box; font-size: 16px; font-weight: 700; line-height: 20px; overflow: hidden; }
.icon-doc { position: absolute; left: 6px; top: 7px; display: block; width: 33px; height: 44px; background: url('../img/doc.png') 0 0 no-repeat; }
.icon-lens { position: absolute; left: 19px; top: -41px; width: 40px; height: 41px; background: url('../img/lens.png') 0 0 no-repeat; z-index: 10; }
.blk-link a:hover .icon-doc { -ms-transform: rotate(-3deg); -webkit-transform: rotate(-3deg); transform: rotate(-3deg); }
.blk-link a:hover .icon-lens { top: 18px; }

/* prodotti per l'ufficio */
.prod-ufficio { margin-bottom: 30px; }
.prod-ufficio li { margin-bottom: 5px; }
.prod-ufficio li a:link, .prod-ufficio li a:visited { position: relative; display: block; padding: 10px 40px 12px 40px; font-size: 16px; font-weight: 400; line-height: 20px; }
.prod-ufficio li.active a:link, .prod-ufficio li.active a:visited, .prod-ufficio li.active a:hover { background: #333 !important; cursor: default; } 
.prod-ufficio li.active a:before { position: absolute; left: -6px; top: 50%; width: 0; height: 0; margin-top: -6px; content:''; border-style: solid; border-width: 6px 6px 6px 0; border-color: transparent #333333 transparent transparent; }

/* mosaic */
.mosaic { display: block; margin-bottom: 30px; }
.mosaic li { position: relative; float: left; display: block; width: 25%; border-right: #fff 1px solid; border-bottom: #fff 1px solid; box-sizing: border-box; text-align: center; overflow: hidden; }
.mosaic li img { position: relative; max-width: 100%; vertical-align: middle; box-sizing: border-box; transition: all 1s ease; z-index: 1; -webkit-filter: blur(0); -moz-filter: blur(0); -o-filter: blur(0); -ms-filter: blur(0); filter: blur(0); }
.mosaic li span { position: absolute; left: 0; top: 0; right: 0; bottom: 0; margin: auto; background: rgba(0,0,0,.5); transition: all 1s ease; opacity: 0; z-index: 5; }
.mosaic li h5 { position: absolute; bottom: 0; width: 100%; padding: 10px; box-sizing: border-box; font-size: 14px; font-weight: 700; text-align: center; color: #fff; background-color: rgba(0,0,0,.5); z-index: 10; }
.mosaic li a:link, .mosaic li a:visited { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-80%); transform: translate(-50%,-80%); display: inline-block; height: 40px; padding: 0 20px; box-sizing: border-box; font-size: 14px; font-weight: 400; text-transform: uppercase; text-align: center; line-height: 40px; color: #fff; border: #fff 2px solid; opacity: 0; z-index: 15; }
.mosaic li a:hover { color: #b2003c; background-color: #fff; }
.mosaic li:hover img { /*-webkit-transform: scale(1.5); transform: scale(1.5);*/ -webkit-filter: blur(3px); -moz-filter: blur(3px); -o-filter: blur(3px); -ms-filter: blur(3px); filter: blur(3px); }
.mosaic li:hover span, .mosaic li:hover a { opacity: 1; }


/* LINK'S */
a.btn:link, a.btn:visited { display: inline-block; padding: 10px 40px 12px 40px; font-size: 16px; font-weight: 400; line-height: 20px; }

a.cta-download:link, a.cta-download:visited { position: relative; display: block; width: 100%; padding: 15px 34px 15px 70px; margin-bottom: 40px; box-sizing: border-box; z-index: 9999999999999999999999; }
a.cta-download i { position: absolute; left: 10px; top: 15px; font-size: 46px; line-height: 46px; color: #fff; }
a.cta-download span { display: inline-block; font-size: 16px; font-weight: 300; text-transform: uppercase; }
a.cta-download strong { display: inline-block; font-size: 19px; font-weight: 700; text-transform: uppercase; }
a.cta-download p { display: block; padding: 0 !important; font-size: 20px; font-weight: 300; }
a.cta-download:hover i { -ms-transform: rotate(-20deg); -webkit-transform: rotate(-20deg); transform: rotate(-20deg); }


/* CTA */
.cta { position: relative; padding: 30px 0; }
.cta-box { position: relative; display: table; width: 100%; font-weight: 400; border: #bcbcbc 1px solid; overflow: hidden; }
.cta-box .content { position: relative; display: table-cell; padding: 35px; background-color: #eee; vertical-align: middle; overflow: hidden; }
.cta-box .content h4 { font-size: 20px; font-weight: 400 !important; font-style: italic; }
.cta-box .button { position: relative; display: table-cell; padding: 35px; border-left: 1px solid #bcbcbc; background-color: #fff; vertical-align: middle; }
.cta-box .button .button-inner:before { position: absolute; top: 50%; left: -8px; margin-top: -3px; border-top: 5px solid transparent; border-right: 7px solid #bcbcbc; border-bottom: 5px solid transparent; content: ""; }
.cta-box .button .button-inner:after { position: absolute; top: 50%; left: -6px; margin-top: -3px; border-top: 5px solid transparent; border-right: 7px solid #fff; border-bottom: 5px solid transparent; content: ""; }
.cta-box .button a:link, .banner-box .button a:visited { display: block; padding: 15px 30px; font-size: 16px; text-align: center; white-space: nowrap; color: #fff; background-color: #b2003c; }
.cta-box .button a:hover { background-color: #333; }


/* CTA CALL */
.cta-call { width: 100%; margin: 100px 0 30px 0; text-align: center; background-color: #b2003c; border-radius: 10px; box-shadow: 0 2px 0 rgba(0,0,0,.1); }
.cta-call h5 { position: relative; display: inline-block; padding: 20px 0 20px 210px; font-size: 22px; line-height: 26px; text-align: left; color: #fff; }
.cta-call h5:before { position: absolute; left: 0; bottom: 0; display: block; width: 186px; height: 249px; content: ''; background: url('../img/cta-call.png') 0 0 no-repeat; z-index: 5; }
.cta-call h5 strong { font-size: 28px; }
.cta-call h5 span { display: block; padding: 10px 0 0 0; font-size: 50px; font-weight: 900; }
.cta-call h5 a:link, .cta-call h5 a:visited, .cta-call h5 a:hover { color: #fff; }
.cta-call h5.mob { display: none; }


/* SHARE */
.share { float: right; margin-bottom: 30px; }
.share li { float: left; margin: 0 0 7px 7px; list-style: none; }
.share li a:link, .share li a:visited { display: block; width: 42px; height: 42px; text-decoration: none; text-align: center; }
.share li a:link i, .share li a:visited i { display: block; width: 42px; height: 42px; font-size: 14px; line-height: 42px; text-align: center; }


/* PAGINATION */
.pagination { display: block; margin-bottom: 30px; }
.pagination ul { float: right; margin: 0; }
.pagination ul li { float: left; width: 42px; height: 42px; margin-left: 3px; list-style: none; }
.pagination ul li:first-child { margin-left: 0 !important; }
.pagination ul li a:link, .pagination ul li a:visited { display: block; width: 42px; height: 42px; padding: 0; text-align: center; text-decoration: none; font-size: 12px; font-weight: 700; line-height: 42px; }
.pagination ul li a i { font-size: 10px !important; line-height: 42px; }

.pagination ul li.current { width: 86px; text-align: center; }
.pagination ul li.current input { float: left; width: 24px; height: 38px; padding: 0 5px; text-align: right; font-size: 13px; font-family: 'Lato', sans-serif; font-weight: 400; line-height: 42px; }
.pagination ul li.current p { float: left; display: block; width: 38px; height: 42px; padding: 0 5px; font-size: 13px; font-weight: 400; text-align: left; line-height: 42px; }
.pagination ul li.current p:hover { cursor: default; }

a.inactive:link, a.inactive:visited, a.inactive:hover { cursor: default !important; opacity: .3; }


/* FORM */
.form { width: 100%; }
.form label { display: block; padding-bottom: 5px; font-weight: 400; }
.form input { width: 100%; height: 42px; padding: 0 10px; margin-bottom: 15px; box-sizing: border-box; font-family: 'Lato', sans-serif; font-weight: 400; font-size: 14px; line-height: 42px; }
.form textarea { width: 100%; height: 120px; padding: 7px 10px; margin-bottom: 15px; box-sizing: border-box; font-family: 'Lato', sans-serif; font-weight: 400; font-size: 14px; line-height: 18px; resize: none; }
.form .checkbox { float: left; width: 42px; height: 42px; padding: 0 10px 0 0; background: url('../img/check.jpg') no-repeat; cursor: pointer; }
.form p.check-txt { float: left; margin: 0; padding: 0; margin-bottom: 10px; font-size: 17px; font-weight: 400; line-height: 42px; color: #545454; }
.form input, .form textarea, .form select { -webkit-transition: all 0.4s ease; -moz-transition: all 0.4s ease; -o-transition: all 0.4s ease; }
.form input:focus, .form textarea:focus { border: #e85b08 1px solid; }

.form .captcha-img-container { position: relative; width: 100%; height: 42px; padding-right: 52px; text-align: right; box-sizing: border-box; }
.form .captcha-img-container img { width: auto; height: 42px; }
.form a.captcha-btn:link, .form a.captcha-btn:visited { position: absolute; right: 0; top: 0; display: block; width: 42px; height: 42px; text-decoration: none; text-align: center; }
.form a.captcha-btn  i { line-height: 42px; }

.form a.btn { text-transform: uppercase; }

/* select box */
.form .sbHolder { position: relative; width: 100%; height: 40px; margin-bottom: 15px; border: #d8d8d8 1px solid; }
.form .sbSelector { position: absolute; left: 0; top: 0; display: block; width: 100%; height: 40px; font-family: 'Lato', sans-serif; font-size: 14px; font-weight: 400; line-height: 40px; text-indent: 10px; color: #333; outline: none; overflow: hidden; }
.form .sbSelector:link, .form .sbSelector:visited, .form .sbSelector:hover { color: #333; outline: none; text-decoration: none; }
.form .sbToggle { position: absolute; right: 0; top: 0; display: block; width: 40px; height: 40px; background: #b2003c; outline: none; }
.form .sbToggle:before { position: absolute; left: 0; top: 0; width: 40px; height: 40px; content:'\f107'; font-family:'FontAwesome'; line-height: 40px; text-align: center; color: #fff; }
.form .sbHolder:hover .sbToggle { background-color: #333; }
.form .sbToggleOpen { background-color: #333; }
.form .sbToggleOpen:hover { background-color: #333; }
.form .sbHolderDisabled { opacity: 0.5; filter: Alpha(opacity=50); }

.form .sbOptions { position: absolute; left: -1px; top: 41px; width: 100%; margin: 0; padding: 7px 0; background-color: #fff; border: #d8d8d8 1px solid; z-index: 1; overflow-y: auto; }
.form .sbOptions li { display: block; height: 40px; padding: 0 7px; }
.form .sbOptions a { display: block; height: 40px; padding: 0 7px; box-sizing: border-box; font-family: 'Lato', sans-serif; font-size: 14px; font-weight: 400; line-height: 40px; border-bottom: #d8d8d8 1px solid; }
.form .sbOptions a:link, .form .sbOptions a:visited { color: #b2003c; text-decoration: none; }
.form .sbOptions a:hover { color: #fff; background-color: #b2003c; border-bottom-color: #b2003c; }
.form .sbOptions li:last-child a { border-bottom: 0 !important; }


/* CUSTOM MAP */
#map { width: 100%; height: 400px; }
#map_markers { width: 100%; height: 400px; }


/* BANNER ASSISTENZA */
.banner-assistenza { width: 100%; box-sizing: border-box; text-align: center; color: #fff; background-color: #ffb600; border-radius: 20px; overflow: hidden; }

.icon-assistance { position: relative; display: block; width: 110px; height: 110px; margin: 30px auto; z-index: 5; }
.icon-assistance:before { position: absolute; left: -30px; top: -30px; content: ''; width: 170px; height: 170px; background-color: #ff9c00; border-radius: 50%; opacity: .7; } /* cerchio piccolo */
.icon-assistance:after { position: absolute; left: -90px; top: -90px; content: ''; width: 290px; height: 290px; background-color: #ff9c00; border-radius: 50%; opacity: .4; } /* cerchio grande */
.icon-assistance span { position: absolute; left: 0; top: 0; width: 110px; height: 110px; background: url('../img/icon-assistance-white.png') 50% 50% no-repeat; z-index: 10; } /* icona */

.banner-assistenza h3 { margin: 110px 0 20px 0; padding: 0 15px; font-size: 28px; font-weight: 900; line-height: 26px; text-transform: uppercase; }
.banner-assistenza h3 a:link, .banner-assistenza h3 a:visited { color: #fff; }
.banner-assistenza h3 a:hover { color: #e85b09; }

.banner-assistenza p { display: block; padding: 15px; color: #fff; background-color: rgba(255,156,0,.5); }

.banner-assistenza p a:link, .banner-assistenza p a:visited { display: inline-block; margin-bottom: 10px; padding: 10px 30px; font-size: 16px; font-weight: 700; text-transform: uppercase; color: #fff; background-color: #5d5f60; box-shadow: 0 2px 0 rgba(0,0,0,.1); }
.banner-assistenza p a:hover { color: #5d5f60; background-color: #fff; }

.banner-assistenza:hover .icon-assistance span { -webkit-animation-duration: .7s; animation-duration: .7s; -webkit-animation-fill-mode: both; animation-fill-mode: both; -webkit-animation-name: rotateIcon; animation-name: rotateIcon; }
@-webkit-keyframes rotateIcon { 
    0% { -webkit-transform-origin: center center; -webkit-transform: rotate(0deg); } 
    100% { -webkit-transform-origin: center center; -webkit-transform: rotate(360deg); } 
} 
@keyframes rotateIcon {
	0% { transform-origin: center center; transform: rotate(0); } 
    100% { transform-origin: center center; transform: rotate(360deg); } 
} 
@media (min-width: 768px) and (max-width: 1023px) {
	.banner-assistenza h3 { font-size: 22px; line-height: 24px; }
	.banner-assistenza p a:link, .banner-assistenza p a:visited { padding: 10px 20px; }
}


/* CTA TELEPHONE */
.cta-tel { width: 100%; padding: 15px 15px 40px 15px; box-sizing: border-box; text-align: center; color: #e85b08; background-color: #fff; }
.cta-tel i { margin-top: 20px; color: #888; }
.cta-tel p { font-size: 16px; line-height: 20px; color: #333; }
.cta-tel p span { font-size: 12px; }
.number-desk { position: relative; padding: 20px 20px 30px 20px; box-sizing: border-box; font-size: 50px; font-weight: 900; font-style: italic; line-height: 50px; letter-spacing: -2px; color: #fff; background-color: #bbb; border-radius: 50%; }
.number-desk:before { position: absolute; left: 50%; bottom: -15px; content: ''; margin-left: -20px; width: 0; height: 0; border-style: solid; border-width: 20px 20px 0 20px; border-color: #bbb transparent transparent transparent; }

.number-mob { position: relative; padding: 20px 20px 30px 20px; box-sizing: border-box; font-size: 50px; font-weight: 900; font-style: italic; line-height: 50px; letter-spacing: -2px; color: #fff; background-color: #b2003c; border-radius: 50%; display: none; }
.number-mob:before { position: absolute; left: 50%; bottom: -15px; content: ''; margin-left: -20px; width: 0; height: 0; border-style: solid; border-width: 20px 20px 0 20px; border-color: #b2003c transparent transparent transparent; }
.number-mob span { font-size: 30px; }
.number-mob a:link, .number-mob a:visited, .number-mob a:hover { color: #fff; }

.icon-desk, .icon-mob { font-size: 80px; }

.icon-mob { -webkit-animation: tada 0.8s both infinite; -moz-animation: tada 0.8s both infinite; animation: tada 0.8s both infinite; display: none; }
@keyframes tada { 0% {-webkit-transform: scale(1);} 10%, 20% {-webkit-transform: scale(0.9) rotate(-3deg);} 30%, 50%, 70%, 90% {-webkit-transform: scale(1.1) rotate(3deg);} 40%, 60%, 80% {-webkit-transform: scale(1.1) rotate(-3deg);} 100% {-webkit-transform: scale(1) rotate(0);} }
@-webkit-keyframes tada { 0% {-webkit-transform: scale(1);} 10%, 20% {-webkit-transform: scale(0.9) rotate(-3deg);} 30%, 50%, 70%, 90% {-webkit-transform: scale(1.1) rotate(3deg);} 40%, 60%, 80% {-webkit-transform: scale(1.1) rotate(-3deg);} 100% {-webkit-transform: scale(1) rotate(0);} }
@-moz-keyframes tada { 0% {-webkit-transform: scale(1);} 10%, 20% {-webkit-transform: scale(0.9) rotate(-3deg);} 30%, 50%, 70%, 90% {-webkit-transform: scale(1.1) rotate(3deg);} 40%, 60%, 80% {-webkit-transform: scale(1.1) rotate(-3deg);} 100% {-webkit-transform: scale(1) rotate(0);} }


/* EFFECTS */
 a, a *, .social-search li input, .menu-trigger, .menu ul, .owl-prev, .owl-next, .cta-download { -webkit-transition: all .3s ease-in-out; -moz-transition: all .3s ease-in-out; -o-transition: all .3s ease-in-out; transition: all .3s ease-in-out; }
.social-search li input { -webkit-border-radius: 14px; -moz-border-radius: 14px; border-radius: 14px; }
.social-search li a, .data .daynumber { -webkit-border-radius: 50%; -moz-border-radius: 50%; border-radius: 50%; }


/* RESPONSIVE */
@media (min-width: 1200px) {
}
/* landscape tablet */
@media (min-width: 1024px) and (max-width: 1199px) {
	.container { width: 984px; }
	
	.header .logo { width: 240px; margin-top: 20px; }
	
	/*.hpslideshow .item .caption .txt p { font-size: 54px; line-height: 54px; }*/
	
	.hpbtn li h4 { font-size: 26px; }
	.hpbtn li p, .number-desk, .icon-desk { display: none; }
	.number-mob, .icon-mob { display: block; }
}
/* landscape tablet */
@media (min-width: 980px) and (max-width: 1023px) {
	.container { width: 940px; }
	
	.header .logo { float: none; margin: 9px auto 0 auto; }
	.header .content { float: none; width: 100%; padding-top: 15px; }
	.social-search li { float: right; }
	.social-search li input { margin-left: 8px; font-size: 12px; }
	.social-search li a { display: block; width: 29px; height: 29px; margin-left: 8px; text-align: center; }
	
	.hpslideshow { display: none !important; }
	
	.hpbtn li a { display: block; }
	.hpbtn li h4 { font-size: 19px; }
	.hpbtn li p, .number-desk, .icon-desk { display: none; }
	.number-mob, .icon-mob { display: block; }
}
/* portrait tablet to landscape and desktop */
@media (min-width: 800px) and (max-width: 979px) {
	.container { width: 760px; }

	.content-left { position: relative; float: none; width: 100%; margin: 60px 0 40px 0; }
	.sidebar { display: none; }
	
	.header .logo { float: none; margin: 9px auto 0 auto; }
	.header .content { float: none; width: 100%; padding-top: 15px; }
	.social-search li { float: right; }
	.social-search li input { margin-left: 8px; font-size: 12px; }
	.social-search li a { display: block; width: 29px; height: 29px; margin-left: 8px; text-align: center; }
	
	.hpslideshow { display: none !important; }
	
	.hpbtn li a { display: block; }
	.hpbtn li h4 { font-size: 19px; }
	.hpbtn li p, .number-desk, .icon-desk { display: none; }
	.number-mob, .icon-mob { display: block; }
	
	.cta-call h5.desk { display: none; }
	.cta-call h5.mob { display: inline-block; }
}
/* portrait tablet to landscape and desktop */
@media (min-width: 768px) and (max-width: 799px) {
	.container { width: 728px; }
	
	.content-left { position: relative; float: none; width: 100%; margin: 60px 0 40px 0; }
	.sidebar { display: none; }
	
	.header .logo { float: none; margin: 9px auto 0 auto; }
	.header .content { float: none; width: 100%; padding-top: 15px; }
	.social-search li { float: right; }
	.social-search li input { margin-left: 8px; font-size: 12px; }
	.social-search li a { display: block; width: 29px; height: 29px; margin-left: 8px; text-align: center; }
	
	.hpslideshow { display: none !important; }
	
	.hpbtn li a { display: block; }
	.hpbtn li h4 { font-size: 19px; }
	.hpbtn li p, .number-desk, .icon-desk { display: none; }
	.number-mob, .icon-mob { display: block; }
	
	.cta-call h5.desk { display: none; }
	.cta-call h5.mob { display: inline-block; }
}
/* landscape phone to portrait tablet */
@media (min-width: 600px) and (max-width: 767px) {
	.container { width: 560px; }
	.col2, .col3, .col33, .col4, .col444, .col5, .col55, .col555, .col5555 { width: 98%; }
	
	.content-left { position: relative; float: none; width: 100%; margin: 60px 0 40px 0; }
	.sidebar { display: none; }
	
	.header .logo { float: none; margin: 9px auto 0 auto; }
	.header .content { float: none; width: 100%; padding-top: 15px; }
	.social-search li { float: right; }
	.social-search li input { margin-left: 8px; font-size: 12px; }
	.social-search li a { display: block; width: 29px; height: 29px; margin-left: 8px; text-align: center; }
	
	.hpslideshow { display: none !important; }
	
	.hpbtn li { display: block; width: 100%; height: 68px; text-align: left; }
	.hpbtn li a { display: block; height: 68px; text-align: left; }
	.hpbtn li a .icon { float: left; display: block; width: 68px; height: 68px; margin: 0 11px; }
	.hpbtn li h4 { float: left; display: block; font-size: 19px; line-height: 68px; }
	.hpbtn li p, .number-desk, .icon-desk { display: none; }
	.number-mob, .icon-mob { display: block; }
	
	.cta .cta-txt { height: 140px; }
	.cta .cta-btn { height: 140px; }
	.cta .cta-btn span { top: 62px; }
	.cta .cta-btn a:link, .cta .cta-btn a:visited { height: 140px; line-height: 140px; }
	
	.mosaic li { width: 50%; }
	
	.cta-call h5 span { font-size: 43px; }
	.cta-call h5.desk { display: none; }
	.cta-call h5.mob { display: inline-block; }
}
/* landscape phone to portrait tablet */
@media (min-width: 480px) and (max-width: 599px) {
	.container { width: 440px; }
	.col2, .col3, .col33, .col4, .col444, .col5, .col55, .col555, .col5555 { width: 98%; }
	
	.content-left { position: relative; float: none; width: 100%; margin: 60px 0 40px 0; }
	.sidebar { display: none; }
	
	.header .logo { float: none; margin: 9px auto 0 auto; }
	.header .content { float: none; width: 100%; padding-top: 15px; }
	.social-search li { float: right; }
	.social-search li input { margin-left: 8px; font-size: 12px; }
	.social-search li a { display: block; width: 29px; height: 29px; margin-left: 8px; text-align: center; }
	
	.hpslideshow { display: none !important; }
	
	.hpbtn li { display: block; width: 100%; height: 68px; text-align: left; }
	.hpbtn li a { display: block; height: 68px; text-align: left; }
	.hpbtn li a .icon { float: left; display: block; width: 68px; height: 68px; margin: 0 11px; }
	.hpbtn li h4 { float: left; display: block; font-size: 19px; line-height: 68px; }
	.hpbtn li p, .number-desk, .icon-desk { display: none; }
	.number-mob, .icon-mob { display: block; }
	
	.cta-box .content, .cta-box .button { display: block; }
	.cta-box .content { text-align: center; background-color: #fff; }
	.cta-box .button { padding: 0 35px 35px 35px; border-left: 0; }
	.cta-box .button .button-inner:before, .cta-box .button .button-inner:after, .menu-collapser p { display: none; }
	
	.mosaic li { width: 50%; }
	
	.cta-call h5 { padding: 20px 0; text-align: center; }
	.cta-call h5:before { display: none; }
	.cta-call h5.desk { display: none; }
	.cta-call h5.mob { display: inline-block; }
}
/* mobile portrait (320x480) */
@media (max-width: 479px) {
	.container { width: 274px; }
	.col2, .col3, .col33, .col4, .col444, .col5, .col55, .col555, .col5555 { width: 98%; }
	
	.content-left { position: relative; float: none; width: 100%; margin: 60px 0 40px 0; }
	.sidebar { display: none; }
	
	.header .logo { float: none; width: 221px; margin: 9px auto 0 auto; }
	.header .content { float: none; width: 100%; padding-top: 15px; }
	.social-search li { float: right; }
	.social-search li input { width: 125px; margin-left: 8px; font-size: 12px; }
	.social-search li a { display: block; width: 29px; height: 29px; margin-left: 8px; text-align: center; }
	
	.hpslideshow { display: none !important; }
	
	.hpbtn li { display: block; width: 100%; height: 68px; text-align: left; }
	.hpbtn li a { display: block; height: 68px; text-align: left; }
	.hpbtn li a .icon { float: left; display: block; width: 68px; height: 68px; margin: 0 7px; }
	.hpbtn li h4 { float: left; display: block; font-size: 16px; line-height: 68px; }
	.hpbtn li p, .number-desk, .icon-desk { display: none; }
	.cta-tel .number-mob, .icon-mob { display: block; }
	
	.data { position: relative; width: 100%; border-right: 0; }
	.data .daynumber { width: 50px; height: 50px; font-size: 30px; line-height: 50px; }
	.data .year { margin-bottom: 10px; }
	.txt-news { position: relative; width: 100%; padding-left: 0; text-align: center; }
	
	.cta-box .content, .cta-box .button { display: block; }
	.cta-box .content { text-align: center; background-color: #fff; }
	.cta-box .button { padding: 0 35px 35px 35px; border-left: 0; }
	.cta-box .button .button-inner:before, .cta-box .button .button-inner:after { display: none; }
	
	.mosaic li { width: 100%; }
	
	.cta-call h5 { padding: 20px 0; font-size: 18px; line-height: 22px; text-align: center; line-height: 30px; }
	.cta-call h5:before { display: none; }
	.cta-call h5 strong { font-size: 25px; }
	.cta-call h5 span { font-size: 35px; }
	.cta-call h5.desk { display: none; }
	.cta-call h5.mob { display: inline-block; }
}