/*MAIN SETTINGS*/
html, body {
	margin: 0;
	padding: 0;
	height: 100%;
	font: 100%;
	font-family: 'Titillium Web', sans-serif;
	font-size: 1em;
	color: #405064;
	background-color: #fff;
}
#main-container {
	min-height: 100%;
	position: absolute;
	width: 100%;
	min-height: 100%;
}
#body-container {
	padding-bottom: 300px;
	width:100%;
	float:left;
}
/* GENERAL SETTINGS */

*, *::before, *::after {
	box-sizing: border-box;
}
.float-left {
	float: left !important;
}
.float-right {
	float: right !important;
}
.text-center {
	text-align: center;
}
a {
	text-decoration: none;
	outline: none;
}
img {
	border: 0;
}
p {
	padding: 0;
	margin: 0 0 20px 0;
}

p a{
	color: #F49228;
}

hr {
	padding: 0;
	margin: 0 0 10px 0;
	border: 0;
	border-bottom: solid 1px #ccc;
}
ul {
	padding: 0;
	margin: 0 0 20px 0;
}
li {
	display: inline;
}
strong {
	font-weight: 700;
}
h1, h2, h3, h4, h5, h6 {
	margin: 0 0 20px 0;
	padding: 0;
	font-weight: 600;
}
.orange {
	color:#f49228 !important
}

.w100{
	width: 100% !important;
}

input {
	border: solid 1px #ccc;
	background-color: #fff;
	height: 50px;
	line-height: 50px;
	padding: 0 10px;
	font-size: 17px;
	color: #888;
	font-family: "Titillium Web",sans-serif;
}
input:hover, input:focus {
	color: #333;
	border-color: #666;
}
textarea {
	border: solid 1px #ccc;
	background-color: #fff;
	padding: 10px;
	font-size: 18px;
	color: #888;
	font-family: "Titillium Web",sans-serif;
}
textarea:hover, textarea:focus {
	color: #333;
	border-color: #666;
}
select {
	border: solid 1px #ccc;
	background-color: #fff;
	height: 50px;
	line-height: 50px;
	padding: 0 0 0 5px;
	font-size: 17px;
	color: #999;
	font-family: "Titillium Web",sans-serif;
}
select:hover, input:focus {
	color: #333;
	border-color: #666;
}
textarea.error,
input.error,
select.error {
	border-color:#C00;
}
input::-moz-placeholder, select::-moz-placeholder, textarea::-moz-placeholder {
  color: #888;
  font-weight: 300;
  opacity: 1;
}
.button {
	border: none;
	background-color: #F59F42;
	color: #fff;
	font-size: 22px;
	cursor: pointer;
	padding: 0 20px;
	text-transform:uppercase
}
.button:hover, .button:focus {
	color: #fde2c4;
}
.button.blue {
	background-color: #11CDFB;
	color: #fff;
}
.button.blue:hover, .button.blue:focus {
	color: #fff;
	opacity: 0.7;
}
.display-mobile {
	display: none !important;
}
.clear {
	clear:both
}

.pd-20{
	padding: 20px !important;
}
.pd-30{
	padding: 20px !important;
}

/* HEADER */

header {
	background-color: #f2f2f2;
	height: 170px;
	width: 100%;
	position: relative;
	display: inline-table;
	border-top: 5px solid #f49228;
	z-index:4;
	padding-top: 5px;
}
header:after {
	content:"";
	background-color: #f49228;
	height: 5px;
	width: 100%;
	position: fixed;
	left: 0;
	right: 0;
	top: 0;
	z-index:4;
	transition: all ease 0.3s;
	-moz-transition: all ease 0.3s;
	-ms-transition: all ease 0.3s;
	-o-transition: all ease 0.3s;
	-webkit-transition: all ease 0.3s;
}
header .logo {
    float: right;
    color: #f49228;
    height: 120px;
	min-height: 40px;
	right: 10px;
	z-index: 999;
	position: fixed;
	top: 10px;
}
header .logo img {
    height: 100%;
    /* margin: 20px; */
    width: auto;
    float: left;
	padding: 10px;
}
/*header .menu {
	background-color: #fff;
	width: 100%;
	height: 50px;
	display: block;
	float: left;
	text-align: center;
	position:relative;
}*/
header .menu.stick {
}
/*header .nav {
	display: inline-block;
	height: 50px;
	line-height: 50px;
	margin: 0 auto;
	position: relative;
	text-align: center;
	text-transform: capitalize;
}*/
/*header .nav li {
	display: inline-block;
}*/
/*header .nav li a {
	display: inline-block;
	color: #405064;
	margin: 0 18px;
	height: 50px;
	border-bottom: solid 5px transparent;
}*/
header .menu {
    background-color: #fff;
    width: 100%;
	bottom: 0;
    /* height: 50px; */
    display: block;
    float: left;
    text-align: center;
    position: absolute;
	box-shadow: 0 2px 2px rgba(0,0,0,0.2);
}
header .nav {
    display: table;
    /* height: 50px; */
    line-height: 50px;
    margin: 0 auto;
    position: relative;
    text-align: center;
    text-transform: capitalize;
}
header .nav li {
    display: table-cell;
    float: left;
    vertical-align: middle;
}
header .nav li a {
    display: table-cell;
    color: #405064;
    margin: 0 18px;
    height: 60px;
    min-height: 60px;
    border-bottom: solid 5px transparent;
    line-height: 17px;
    vertical-align: middle;
    padding: 0 14px;
    padding-top: 4px;
    max-width: 160px;
	width: 100%;
	font-size:1.1em
}
header .nav li a:hover {
	border-bottom: solid 5px #ebebeb;
}

header .nav li.icon a img {
    width: 22px;
    display: block;
	margin: 0 auto;
}

header .nav li a.active {
	border-bottom: solid 5px #F49228;
}
#toggle, .toggle {
	background-image: url(../img/header-menu-icon@2x.png);
	background-position: center left;
	background-repeat: no-repeat;
	background-size: 20px 20px;
	display: none;
}
.toggle {
	z-index: 500;
}
.toggle:hover {
	opacity: 0.8;
}
header .left-controls {
	float: left;
	margin: -5px 0 0 20px;
	top: -80px;
}
header.fixed .left-controls {
	position: fixed;
	top: 20px;
	z-index: 9;
	margin-left: 10px;
	transition: all ease 0.3s;
	-moz-transition: all ease 0.3s;
	-ms-transition: all ease 0.3s;
	-o-transition: all ease 0.3s;
	-webkit-transition: all ease 0.3s;
}
header.fixed .left-controls .social {
    float: left;
    margin-right: 10px;
    position: fixed;
    z-index: 9999;
    top: 100px;
    left: 0;
    background-color: #fff;
	box-shadow: 0 0 5px rgba(0,0,0,0.3);
	border-left: 0 solid #fff;
	transition: all ease 0.3s;
	-moz-transition: all ease 0.3s;
	-ms-transition: all ease 0.3s;
	-o-transition: all ease 0.3s;
	-webkit-transition: all ease 0.3s;
}

header.fixed .left-controls .social span.status {
    float: left;
    padding: 10px;
    clear: left;
}

header.fixed .left-controls .social span.status.online {
	background-color: #74E39A;
}

header.fixed .left-controls .social span.status.offline {
	background-color: #ED8080;
}

header.fixed .left-controls .social span.status::before{
	background-size: cover;
	background-repeat: no-repeat;
	height: 28px;
	width: 28px;
	margin-right: 10px;
	display: inline-block;
	content: "";
}

header.fixed .left-controls .social span.status.online::before{
	background-image: url(../img/icon-online-white.svg);
}

header.fixed .left-controls .social span.status.offline::before{
	background-image: url(../img/icon-alert-white.svg);
}

header.fixed .left-controls .social:hover {
	border-left: 10px solid #fff;
}

header.fixed .left-controls .button-login {
    padding: 0 15px 0 25px;
}
header.fixed .left-controls .social a {
    float: left;
    padding: 10px;
    clear: left;
}
header.fixed .left-controls .button-login span {
    display: none;
}
header.fixed .left-controls .button-login:hover span {
    display: block;
	white-space: nowrap;
	transition: all ease 0.3s;
	-moz-transition: all ease 0.3s;
	-ms-transition: all ease 0.3s;
	-o-transition: all ease 0.3s;
	-webkit-transition: all ease 0.3s;
}
header.fixed .left-controls .button-login:hover {
	position: absolute;
	padding: 0 15px 0 40px;
	transition: all ease 0.3s;
	-moz-transition: all ease 0.3s;
	-ms-transition: all ease 0.3s;
	-o-transition: all ease 0.3s;
	-webkit-transition: all ease 0.3s;
}
header .left-controls .button-login {
	background-color: #f49228;
	color: #fff;
	float: left;
	height: 40px;
	line-height: 40px;
	min-width: 40px;
	padding: 0 15px 0 40px;
	background-image: url(../img/icon-gain@2x.png);
	background-position: 10px center;
	background-repeat: no-repeat;
	background-size: 20px 20px;
	margin-right: 10px;
}
header .left-controls .button-login span {
	display: block;
}
header .left-controls .social {
	float: left;
	margin-right: 10px;
	left: -40px;
}
header .left-controls .social a {
	float: left;
	padding: 10px;
}
header .left-controls .social a:hover img {
	opacity: 0.7;
}
header .left-controls .social a img {
	width: 20px;
	display: block;
}
header .left-controls .language {
	float: left;
	color: #667991;
	line-height: 40px;
	padding: 0;
	margin: 0 10px;
}
header .left-controls .language:hover {
	opacity: 0.7;
}
/* FOOTER */

footer {
	position: absolute;
	bottom: 0;
	width: 100%;
	height: 300px;
	background-color: #f49228;
	color: #fff;
	text-align: center;
	font-size: 0.9em;
}
footer .nav-footer {
	border-bottom: solid 1px #d27817;
	text-align: center;
	margin: 20px 0;
	padding-bottom: 20px;
}
footer .nav-footer li a {
	color: #fff;
	margin: 0 15px;
	font-weight: 600;
}
footer .nav-footer li a:hover {
	text-decoration: underline;
}
footer .info {
	text-align: center;
	border-bottom: solid 1px #d27817;
	margin-bottom: 20px;
	padding-bottom: 20px;
}
footer .info .block {
	text-align: left;
	display: inline-block;
	margin: 0 20px;
	line-height: 1.2em;
}
footer .info .block .foot-icon {
	float: left;
	width: 30px;
	margin-right: 10px;
}
footer .signature {
	margin: 20px auto 40px;
}
footer .signature:hover img {
	opacity: 0.8;
}
footer .signature img {
	width: 34px;
	opacity: 0.3;
}
/* GENERAL CONTAINERS */

.center {
	max-width: 1200px;
	width:100%;
	display: block;
	margin: 0 auto;
	position: relative;
}

.center.full-width {
	max-width: 100%;
	padding: 0 40px;
}
.link {
	background-image: url("../img/icon-arrow-link@2x.png");
	background-position: right center;
	background-repeat: no-repeat;
	background-size: 16px 16px;
	color: #f49228;
	font-size: 16px;
	line-height: 16px;
	padding-right: 24px;
}
.link:hover {
	text-decoration: underline;
}

.link.spaced {
    margin: 5px 0;
}

/* entry page */
.entry-page {
	width:100%;
	float:left;
	background-color:#667991;
	background-image:url(../img/background-tech-01.jpg);
	background-repeat:no-repeat;
	background-position:right bottom;
	border-bottom:10px solid #f49228;
	height:500px;
	position:relative;
	z-index:3
}
.entry-page .entry-page-content {
  float: left;
  padding: 218px 0 85px;
  width: 100%;
}
.entry-page hgroup {
	width:50%;

}
.entry-page h1 {
	text-transform:uppercase;
	font-size:36px;
	line-height:36px;
	width:100%;
	padding-bottom:15px;
	border-bottom:1px solid #fff;
	color:#fff;
	font-weight:700;
}
.entry-page h2 {
	text-transform:uppercase;
	font-weight:400;
	font-size:26px;
	line-height:26px;
	width:100%;
	color:#fff;
}
.entry-page p {
	font-weight:400;
	font-size:22px;
	line-height:24px;
	width:100%;
	color:#fff;
	width:50%;
}

/* breadcrumbs */
.breadcrumbs {
	width:100%;
	float:left;
	padding:30px 0
}
.breadcrumbs p {
	color: #667991;
	font-size:14px;
	float:left;
	margin:0
}
.breadcrumbs ul {
  float: left;
  padding: 0 0 0 5px;
  margin:0
}
.breadcrumbs ul li  {
    color: #f49228;
	font-size:14px;
	float:left;
	padding:0 20px 0 0
}
.breadcrumbs ul li a {
    color: #667991;
	font-size:14px;
	position:relative
}
.breadcrumbs ul li a:last-child {
    color: #f49228;
}

.breadcrumbs ul li a::after {
    color: #667991;
    content: ">";
    font-size: 14px;
    position: absolute;
    right: -13px;
    top: 0;
}
.breadcrumbs ul li:last-child a::after {
    display: none ;
}

.call-to-action-tools {
	display: none;
	width: 100%;
	position: fixed;
	height: 50px;
	bottom: 0;
	z-index: 40;
	margin: 0;
	padding: 0;
	list-style-type: none;
	
}
.call-to-action-tools li{
	width: 25%;
	float: left;
	height: 50px;
	background-color: #f2f2f2;
}
.call-to-action-tools li a{
	width: 100%;
	height: 50px;
	position: relative;
	display:block;
	background-position: center;
	background-size: 24px;
	background-repeat: no-repeat;
}
.call-to-action-tools li a:before{
	content:"";
	position: absolute;
	right: 0;
	top: 7px;
	bottom: 7px;
	border-right: 1px solid #a3adb9;
	opacity: 0.5;
}
.call-to-action-tools li:last-child a:before{
	display: none;
}
.call-to-action-tools li.tb-fb a{
	background-image:url(../img/icon-facebook.png);
}
.call-to-action-tools li.tb-sk a{
	background-image:url(../img/icon-skype.png);
}
.call-to-action-tools li.tb-ml a{
	background-image:url(../img/icon-mail.png);
}
.call-to-action-tools li.tb-mp a{
	background-image:url(../img/icon-map.png);
}
.call-to-action-tools li.tb-ph a{
	background-image:url(../img/icon-phone.png);
}

.social-box {
	width:100%;
	float:left;
	margin:35px 0 0;
}
.social-box ul.social {
	width:100%;
	float:left;
	padding:0;
	margin:0;
}
.social-box ul.social li {
	float:left;
	padding:0 10px 20px;
	display:block
}
.social-box ul.social li a {
	float:left;
	width:40px;
	height:40px;
	background-color:#405064;
	border-radius:50%;
	background-size:20px;
	background-repeat:no-repeat;
	background-position: center center;
	transition: all 0.3s ease 0s;
	-moz-transition: all 0.3s ease 0s;
	-ms-transition: all 0.3s ease 0s;
	-webkit-transition: all 0.3s ease 0s;
}
.social-box ul.social li a:hover {
	background-color:#F49228;
}
.social-box ul.social li a.fb {
	background-image:url(../img/icon-facebook-white@2x.png);
}
.social-box ul.social li a.tw {
	background-image: url(../img/icon-twitter-white@2x.png);
}
.social-box ul.social li a.in {
	background-image: url(../img/linkedin-icon.png);
}
.social-box ul.social li a.wa {
	background-image: url(../img/whatsapp-logo.png);
	display:none
}
.social-box ul.social li a.print {
	background-image: url(../img/printer-icon.png);
	background-size:23px
}

.center-btn {
	width: auto !important;
    margin: 0 auto !important;
    float: none !important;
    display: table !important;
}

.credits {
	margin: 0 0 60px;
}

.credits img {
	max-width: 300px;
	margin-bottom: 50px;
}

.credits h1 {
	font-size: 30px;
	font-weight: 400;
	text-transform: uppercase;
	margin: 0;
}

.credits ul {
	list-style: disc;
	list-style-position: inside;
}
.credits ul li {
	display: list-item;

}

.select2-results__option {
	display: block;
}

.select2-container .select2-search--inline .select2-search__field {
	margin-top: 0 !important;
	}
	
.select2-container--default .select2-selection--multiple {
    border: solid 1px #ccc  !important;
    border-radius: inherit !important;

}

.select2-container {
	width: 100% !important;}

.assistenza-topmenu {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	margin: 0;
	margin-bottom: 20px;
	padding-bottom: 20px;
	border-bottom: solid 1px #ccc;
}

.assistenza-topmenu li {
	padding: 0 5px;
	display: flex;
}

.assistenza-topmenu li a {
	background-color:#667991 ;
	color:#fff ;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	padding: 5px 15px;
	text-transform: uppercase;
	transition: 0.2s;
}

.assistenza-topmenu li a:hover {
	opacity: 0.7;
}

.assistenza-topmenu li a.active, .assistenza-topmenu li a.active:hover {
	background-color:#dbdbdb;
	color: #405064;;
}

.cat-nav {
	margin-bottom: 20px;
	padding-bottom: 10px;
	border-bottom: dashed 1px #ccc;
	display: inline-block;
	width: 100%;
	text-align: center;
}

.cat-nav li {
	display: inline-block;
	margin: 0 2px 10px;
}

.cat-nav li a {
	background-color: #dbdbdb;
	color: #405064;
	padding: 5px 15px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	transition: 0.2s;
	display: block;
}

.cat-nav li a:hover {
	opacity: 0.7;
}

.cat-nav li a.active, .cat-nav li a.active:hover {
	background-color: #11CDFB;
	color: #fff;
	opacity: 1;
}

.submenu-cloud {
	margin-bottom: 20px;
	display: inline-block;
	width: 100%;
	text-align: center;
}

.submenu-cloud li {
	display: inline-block;
	margin: 0 2px 10px;
}

.submenu-cloud li a {
	color: #405064;
	padding: 0 15px;
	transition: 0.2s;
	display: block;
}

.submenu-cloud li a:hover {
	opacity: 0.7;
}

.submenu-cloud li a.active, .submenu-cloud li a.active:hover {
	color: #11CDFB;
}

.cat-nav.cloud-prog-go{
	border-bottom: none;
	margin-bottom: 20px;
}

.cat-nav.cloud-prog-go li a{
	background-color: #11CDFB;
	color: #fff;
	padding: 15px 20px;
	text-transform: uppercase;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 1.1em;
}

.cat-nav.cloud-prog-go li a .icon{
	height: 24px;
	margin-right: 15px;
}

/* Tastiera */
.tastiera-name {
	display: block;
	width: 100%;
	margin-bottom: 20px;
	color: #687992;
    font-size: 18px;
	font-weight: bold;
	text-align: center;
}

.tastiera-container {
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	background-color: #f2f2f2;
	width: 100%;
	margin: 0 auto 20px;
	padding: 10px 20px;
	display: block;
}

.tastiera {
	display: grid;
	grid-gap: 10px;
	padding: 5px 0;
}

.tastiera .item a {
	background-color: #dbdbdb;
	padding: 20px 10px;
	color: #405064;
	line-height: 18px;
	white-space: nowrap;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	width: 100%;
	height: 100%;
	overflow: hidden;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	box-shadow: 0px 2px 0px #919191;
	transition: 0.2s;
}

.tastiera .item a.font8 {
	font-size: 0.8em;
}

.tastiera .item a.font6 {
	font-size: 0.6em;
}

.tastiera .item a:hover {
	transform: scale(1.1);
}

.tastiera .item a.btn-orange {
	background-color: #ff4a2d;
    color: #fff;
}

.tastiera .item a.btn-blue {
	background-color: #11CDFB;
    color: #fff;
}

.tastiera .item a.btn-dark {
	background-color: #666;
    color: #fff;
	box-shadow: 0px 2px 0px #333;
}

.tastiera.row-1a {
	grid-template-columns: 1fr;
}

.tastiera.row-1b {
	grid-template-columns: 1fr;
	grid-template-rows: 2fr 1fr 1fr;
	height: 100%;
}

.tastiera.row-1c {
	grid-template-columns: 1fr;
	grid-template-rows: 1fr 1fr 1fr 2fr;
	height: 100%;
}

.tastiera.row-2a {
	grid-template-columns: 1fr 1fr;
}

.tastiera.row-6a {
	grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
}

.tastiera.row-7a {
	grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 2fr;
}

.tastiera.row-9a {
	grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 2fr;
}

.tastiera.row-9b {
	grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
}

.tastiera.row-10a {
	grid-template-columns: 2fr 1fr 1fr 1fr 1fr 1fr 1fr 2fr 1fr 2fr;
}

.tastiera-action-buttons {
	margin: 20px 0;
    display: inline-block;
    width: 100%;
    text-align: center;
}

.tastiera-action-buttons li {
    display: inline-block;
    margin: 0 2px  10px;
}

.tastiera-action-buttons li a {
	background-color: #dbdbdb;
    color: #405064;
	padding: 15px 20px;
	text-transform: uppercase;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 1.1em;
	line-height: 24px;
	-webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
	transition: 0.2s;
}

.tastiera-action-buttons li a.save {
	background-color: #405064;
    color: #fff;
}

.tastiera-action-buttons li a:hover {
	opacity: 0.7;
}

.tastiera-action-buttons li a .icon {
	height: 16px;
	margin-right: 15px;
}

/* CLOUD CUSTOM RULES */
.cloud-header::after {
	background-color: #11CDFB;
}

.cloud-header .left-controls .button-login {
	background-color: #11CDFB;
}

.cloud-header .logo img {

}

.cloud-footer {
	background-color: #11CDFB;
}

.cloud-footer .nav-footer, .cloud-footer .info {
	border-bottom: solid 1px rgba(0,0,0,0.1);
}
/* fine CLOUD CUSTOM RULES */

/* SCONTRINI */
.scontrini-container {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
}

.scontrini-container li {
	width: 33.33%;
	padding: 0 10px;
	margin-bottom: 20px;
}

@media only screen and (max-width: 960px) {
	.scontrini-container li {
		width: 50%;
	}
}

@media only screen and (max-width: 640px) {
	.scontrini-container li {
		width: 100%;
	}
}

.scontrini-container li .scontrino {
	width: 100%;
	-webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
	background-color: #f2f2f2;
	padding: 20px 20px 15px;
	font-size: 0.9em;
	line-height: 1.3em;
}

.scontrini-container li .scontrino hr {
	display: block;
	width: 100%;
	border: 0;
	border-bottom: dashed 1px #687992;
	margin: 10px 0;
}

.scontrini-container li .scontrino strong {
	font-size: 1.2em;
	font-weight: bold;
	display: contents;
}

.scontrini-container li .scontrino .intestazione {
	font-weight: bold;
	font-size: 1.1em;
}

.scontrini-container li .scontrino .row {
	margin-bottom: 5px;
	display: grid;
	grid-gap: 5px;
	text-align: right;
}

.scontrini-container li .scontrino .row.sep {
	margin-bottom: 15px;
}

.scontrini-container li .scontrino .row .item:first-child {
	text-align: left;
}

.scontrini-container li .scontrino .row.text-center {
	text-align: center;
}

.scontrini-container li .scontrino .row.text-left {
	text-align: left;
}

.scontrini-container li .scontrino .row.col-2 {
	grid-template-columns: 4fr 1fr;
}

.scontrini-container li .scontrino .row.col-3 {
	grid-template-columns: 3fr 1fr 1fr;
}
/* fine SCONTRINI */