/* general */
body{
    font-family:'Open Sans', sans-serif;
    color:#333333;
}
a{
    color:#062a51;
    transition:color .2s;
}
a:hover{
    text-decoration:none;
    color:#867873;
}

h1{
	font-size:30px;
}

.input-search, .input-nl{
    -webkit-border-radius:0;
    -moz-border-radius:0;
    border-radius:0;
    border-color:#fff;
    height:30px;
    -webkit-box-shadow:none;
    -moz-box-shadow:none;
    box-shadow:none;
}
.input-search:focus, .input-nl:focus{
    outline:none;
    border-color:#fff;
    -webkit-box-shadow:none;
    -moz-box-shadow:none;
    box-shadow:none;
}
.btn-search, .btn-nl{
    -webkit-border-radius:0;
    -moz-border-radius:0;
    border-radius:0;
    border-color:#fff;
    border-left:none;
    color:#b19c9e;
    padding:6px 12px 2px 12px;
}
.btn-search:hover, .btn-nl:hover{
    border-color:#fff;
}
.btn-nl{
    color:#062a51;
}
.btn-nl:hover{
    background-color:#fff;
}
.btn-default.rounded{
    -webkit-border-radius:0;
    -moz-border-radius:0;
    border-radius:0;
    background-color:#efefef;
    padding:10px 30px;
    text-transform:uppercase;
}
.breadcrumbs{
    font-size:14px;
    padding:20px 5px;
    color:#666666;
    border-bottom:1px solid #DDDDDD;
    margin-bottom:30px;
}
.is-mobile .breadcrumbs{
	margin-top:45px;
}
.breadcrumbs a{
    text-decoration:underline;
    color:#000000;
}
.breadcrumbs a:hover{
    color:#666666;
}
.breadcrumbs span{
    margin:0 7px;
}
.general-txt p, .general-txt ul{
    font-size:14px;
    line-height:24px;
}
.general-txt ul li{
    margin-bottom:17px;
}
.content-body.general-txt .content-content a{
	border-bottom:2px solid #007ACA;
	color:#007ACA;
	font-weight:500;
}
.content-body.general-txt .content-content a:hover,
.content-body.general-txt .content-content a:focus{
	color:#4591D2;
	border-color:#4591D2;
	text-decoration:none;
}
.content-body.general-txt .item-details a{
	border-bottom:2px solid #007ACA;
	color:#007ACA;
	font-weight:500;
}
.content-body.general-txt .item-details a:hover,
.content-body.general-txt .item-details a:focus{
	color:#4591D2;
	border-color:#4591D2;
	text-decoration:none;
}
.content-body.general-txt .content-list-description a{
	border-bottom:2px solid #007ACA;
	color:#007ACA;
	font-weight:500;
}
.content-body.general-txt .content-list-description a:hover,
.content-body.general-txt .content-list-description a:focus{
	color:#4591D2;
	border-color:#4591D2;
	text-decoration:none;
}

.table-bordered > thead > tr > td, .table-bordered > thead > tr > th{
    border-bottom-width:1px;
}
.table-padded td, .table-padded th{
    padding:10px;
}
/* end general */

/* header */
.top-header{
    border:1px solid #eee;
    height:44px;
    line-height:44px;
}
.topnav a, .topnav span{
    padding:0 14px;
}
.topnav a{
    font-size:13px;
}
.top-links{
    padding-left:0;
}
.top-links a{
    font-size:12px;
    color:#333333;
    margin-right:10px;
}
.top-header .blog-btn{
    padding:0;
}
.search-blog{
    padding-top:12px;
}
.searchform{
    padding-left:0;
    padding-right:5px;
}
.input-search{
    -webkit-border-radius:0;
    -moz-border-radius:0;
    border-radius:0;
    border-color:#fff;
    height:30px;
}
.input-search:focus{
    outline:none;
    border-color:#fff;
    -webkit-box-shadow:none;
    -moz-box-shadow:none;
    box-shadow:none;
}
.btn-search{
    -webkit-border-radius:0;
    -moz-border-radius:0;
    border-radius:0;
    border-color:#fff;
    border-left:none;
    color:#b19c9e;
    padding:6px 12px 2px 12px;
}
.btn-search:hover{
    border-color:#fff;
}
a.btn-blog{
    text-align:center;
    padding:5px 0;
    background-color:#413347;
    color:#fff;
    font-weight:bold;
    text-transform:uppercase;
}
.topsocial{
    padding-right:0;
    padding-bottom:20px;
}
.topsocial a{
    border:1px solid #d3d1bb;
    -webkit-border-radius:24px;
    -moz-border-radius:24px;
    border-radius:24px;
    color:#766a63;
    background-color:#eff0ef;
    border:1px solid #d3d1bb;
    display:inline-block;
    font-size:14px;
    padding-top:4px;
    height:28px;
    text-align:center;
    width:28px;
    margin-right:2px;
}
.logo-container{
    padding-top:13px;
    padding-bottom:12px;
    padding-left:0;
}
.logo-container img{
    max-width:200px;
}
.cart-container{
    padding:35px 0 0 0;
    text-align:right;
    display:flex;
    flex-wrap:nowrap;
    justify-content:flex-end;
}
.cart-container a{
    border:1px solid #EEEEEE;
	border-radius:10px;
    color:#268ab7;
    display:inline-block;
    font-size:24px;
    line-height:48px;
    height:48px;
    width:48px;
    text-align:center;
    margin-left:5px;
    transition:all .2s;
}
.cart-container a.cart{
    background-color:#e7b630;
    color:#fff;
    position:relative;
}
.cart-container a:hover{
    background-color:#f2f2f2;
}
.cart-container a.cart:hover{
    background-color:#ffd860;
}
.cart-container a.cart .cart-item-count{
    position:absolute;
    top:-12px;
    right:-10px;
    z-index:2;
    background:#222;
    font-size:12px;
    font-weight:800;
    color:#fff;
    width:30px;
    height:30px;
    line-height:30px;
    text-align:center;
    border-radius:30px;
}
.cart-container .search-desktop-close{
    border-right:none;
    color:#D90000;
    display:none;
	border-top-right-radius:0;
	border-bottom-right-radius:0;
}
.cart-container .search-desktop-input{
    display:none;
    line-height:48px;
    height:48px;
    font-size:16px;
    color:#000;
    border:1px solid #EEEEEE;
    margin:0;
    padding:0 10px;
    width:170px;
    z-index:2;
    outline:none;
    transition:0;
}
.cart-container a.info-desktop{
    border:1px solid #EEEEEE;
	border-radius:10px;
    color:#222;
    display:inline-block;
    font-size:14px;
    line-height:20px;
    height:48px;
	padding:4px 10px;
    text-align:left;
    margin-left:5px;
	width:auto;
    transition:all .2s;
}
.cart-container a.contact-desktop{
	background:#ed3e3a;
	border-color:#ed3e3a;
	color:#fff;
}
.cart-container a.contact-desktop:hover{
	background:#f35855;
	border-color:#f35855;
}
.cart-container a.mail-desktop{
	background:#12aa5e;
	border-color:#12aa5e;
	color:#fff;
}
.cart-container a.mail-desktop:hover{
	background:#1dc370;
	border-color:#1dc370;
}
.cart-container a.about-desktop{
	background:#e7b630;
	border-color:#e7b630;
	color:#fff;
}
.cart-container a.about-desktop:hover{
	background:#ebbf45;
	border-color:#ebbf45;
}
.cart-container a.donate-desktop{
	background:#268ab7;
	border-color:#268ab7;
	color:#fff;
}
.cart-container a.donate-desktop:hover{
	background:#49a8d3;
	border-color:#49a8d3;
}

/* mega menu */
.mainnav{
	height:58px;
	background:#49a8d3;
	position:relative;
}

.mainnav .mainmenu{
	height:58px;
	line-height:58px;
	list-style-type:none;
	max-width:1170px;
	margin:auto;
	padding:0;
}
.mainnav .mainmenu ul{
	list-style-type:none;
	margin:0;
	padding:0;
}
.mainnav .mainmenu li{
	white-space:nowrap;
	overflow:hidden;
	text-overflow:ellipsis;
}

.mainnav .mainmenu > li{
	float:left;
	white-space:nowrap;
	overflow:hidden;
	text-overflow:ellipsis;
}
.mainnav .mainmenu > li > a{
	text-decoration:none;
	padding:0 20px;
	height:58px;
	line-height:58px;
	display:block;
	cursor:pointer;
	margin:0;
	border:none;
	color:#fff;
	text-transform:uppercase;
	font-weight:700;
	font-size:15px;
	transition:all .3s;
}
.mainnav .mainmenu > li > a:hover,
.mainnav .mainmenu > li > a.active{
	background:#F2F8FC;
	color:#007ACA;
	text-decoration:none;
}
.mainnav .mainmenu > li > a.firstlevel:after{
	border:none;
	display:inline-block;
	-webkit-font-smoothing:antialiased;
	font-family:"Font Awesome 5 Pro";
	content:"\f107";
	padding-right:5px;
	position:inherit;
	top:auto;
	right:auto;
}

.mainnav .mainmenu > li > ul{
	display:none;
	flex-wrap:wrap;
	position:absolute;
	top:56px;
	left:0;
	width:100%;
	background:#F2F8FC;
	z-index:999;
	padding:20px calc((100% - 1170px) / 2);
}
.mainnav .mainmenu > li > ul > li{
	width:calc(25% - 20px);
	margin-bottom:20px;
	margin-right:20px;
	line-height:28px;
}

.mainnav .mainmenu a.secondlevel{
	color:#000000;
	font-weight:700;
	text-transform:uppercase;
	text-decoration:none;
	font-size:13px;
}
.mainnav .mainmenu a.secondlevel:hover,
.mainnav .mainmenu a.secondlevel:focus,
.mainnav .mainmenu a.secondlevel.active{
	color:#007ACA;
}

.mainnav .mainmenu a.thirdlevel{
	color:#000000;
	font-size:13px;
}
.mainnav .mainmenu a.thirdlevel:hover,
.mainnav .mainmenu a.thirdlevel:focus,
.mainnav .mainmenu a.thirdlevel.active{
	color:#007ACA;
}

.mainnav .mainmenu .navsub{
	margin-left:6px;
}
.mainnav .mainmenu .navsub a{
	font-size:12px;
}

.mainnav .mainmenu .navimage{
	display:block;
	cursor:pointer;
	height:80px;
	margin:10px 0;
	background-color:#fff;
	background-position:50% 50%;
	background-size:cover;
	background-repeat:no-repeat;
	border-radius:10px;
}

.mainnav .mainmenu .navicons{
	margin:10px 0;
}
.mainnav .mainmenu .navicons a{
	font-size:22px;
	color:#268ab7;
	text-decoration:none;
	display:inline-block;
	cursor:pointer;
	margin-right:8px;
}
.mainnav .mainmenu .navicons a:hover{
	color:#007ACA;
}

.mainnav .mainmenu .other-item{
	border-bottom:1px solid #ddd;
	margin-bottom:10px;
	padding-bottom:10px;
	white-space:nowrap;
	overflow:hidden;
	text-overflow:ellipsis;
}
.mainnav .mainmenu .other-item.last{
	border:none;
}



/* end header */

/* page background */
.page-background{
    margin:0;
    height:500px;
    width:100%;
    background-position:50% 50%;
    background-repeat:no-repeat;
    background-size:cover;
}
/* end page background */

/* main slider */
.main-slider .carousel-indicators{
    bottom:10px;
    left:30px;
    text-align:left;
    margin-left:0;
}
.main-slider .carousel-indicators li{
    background-color:#8c8890;
    border:2px solid #fff;
    height:12px;
    width:12px;
    margin:0 5px 0 0;
}
.main-slider .carousel-indicators .active{
    background-color:#fff;
}
.main-slider .item img{
    width:100%;
}
.main-slider .carousel-control.left:not(:hover),
.main-slider .carousel-control.right:not(:hover){
    background-image:none;
}
/* end main slider */

/* numbers */
.numbers-background{
    margin-top:30px;
    padding:140px 0;
    background-position:50% 50%;
    background-repeat:no-repeat;
    background-size:cover;
    background-image:linear-gradient(rgba(0, 0, 0, 1), rgba(0, 0, 0, 0.7));
}
.numbers-background .number-heading{
    width:100%;
    color:#fff;
    font-size:48px;
    line-height:58px;
    font-weight:800;
    text-align:center;
    margin-bottom:60px;
}
.numbers-background .numbers{
    overflow:hidden;
    margin-top:60px;
}
.numbers-background .numbers ul{
    padding:0;
    margin:0;
    display:block;
    width:100%;
    list-style-type:none;
}
.numbers-background .numbers li{
    display:block;
    float:left;
    text-align:center;
}
.numbers-background .numbers li .number-number{
    display:block;
    color:#fff;
    font-weight:800;
    font-size:32px;
    line-height:40px;
}
.numbers-background .numbers li .number-title{
    display:block;
    color:#fff;
    font-weight:500;
    font-size:16px;
    line-height:24px;
    height:72px;
    overflow:hidden;
}
.numbers-background .number-links{
    width:100%;
    color:#fff;
    font-size:24px;
    line-height:40px;
    text-align:center;
    letter-spacing:2px;
}
.numbers-background .number-links a{
    color:#fff;
}
.numbers-background .number-links a:hover{
    text-decoration:underline;
}
/* end numbers */

/* section title */
.section-title{
    width:100%;
    text-align:center;
    margin:20px 0 36px 0;
}
.section-title h2{
    display:inline-block;
    font-size:24px;
    font-weight:bold;
    margin:0;
    padding:0 40px;
    text-transform:uppercase;
}
/* end section title */

/* griglia prodotti - carousel prodotti - carousel marchi */
.topbar-dettaglio{
    margin-bottom:0;
    float:none;
    width:100%;
    clear:both;
    padding:0;
}
.topbar-dettaglio h1{
    font-size:36px;
    font-weight:700;
    margin:0 0 30px 0;
}
.scheda-marca{
    border-top:2px solid #beb5ad;
    padding-top:24px;
    padding-bottom:24px;
    font-size:12px;
    float:left;
    width:100%;
}
.scheda-marca h1{
    font-size:18px;
    font-weight:bold;
    margin:0 0 10px 0;
    text-transform:uppercase;
}
.scheda-marca .show-more, .scheda-marca .show-less{
    font-size:16px;
}
.txt-marca-more, .show-less{
    display:none;
}
.logo-marca img{
    margin-bottom:20px;
    max-width:100%;
}
.txt-marca{
    padding-left:20px;
}

.sidebar-container{
	padding:0;
	width:350px;
	float:left;
}
.content-body{
	padding:0;
	width:760px;
	float:right;
}

.product-carousel{
    margin-bottom:80px;
}
.product-carousel .slick-arrow{
    position:absolute;
    bottom:-50px;
    -webkit-border-radius:24px;
    -moz-border-radius:24px;
    border-radius:24px;
    background-color:#fff;
    border:1px solid #d3d1bb;
    color:#766a63;
    width:35px;
    height:35px;
    font-size:18px;
    padding-top:2px;
}
.product-description .product-carousel .slick-arrow{
    padding-top:0;
}
.product-carousel .arrow-left{
    left:50%;
    margin-left:-40px;
}
.product-carousel .arrow-right{
    right:50%;
    margin-right:-40px;
}
.badge{
    position:absolute;
    top:0;
    color:#fff;
    display:block;
    width:54px;
    height:54px;
    -webkit-border-radius:27px;
    -moz-border-radius:27px;
    border-radius:27px;
    text-transform:uppercase;
    font-size:11px;
    font-style:normal;
    padding-top:22px;
    font-weight:normal;
}
.new{
    background-color:#A6C6E2;
    left:0;
}
.promo{
    background-color:#eee;
    right:0;
    color:#062a51;
}
.best-seller{
    padding-top:15px;
}
.brand{
    text-transform:uppercase;
    font-size:12px;
}
/* end griglia prodotti - carousel prodotti - carousel marchi */

/* scheda prodotto */
.product-detail{
    overflow:hidden;
    margin:0;
}
.product-detail-img{
    padding:0;
    position:relative;
    width:365px;
    float:left;
}
.product-detail-img .badge.new{
    left:15px;
}
.product-detail-img .badge.best-seller{
    left:15px;
}
.product-detail-img .badge.promo{
    right:15px;
}

.product-detail-img .expand{
    position:absolute;
    bottom:0;
    right:15px;
    font-size:30px;
    color:#736c62;
}
.product-detail-img:hover .expand{
    font-size:36px;
    color:#062a51;
}
.product-detail-img img{
    margin:auto;
    max-height:400px;
}
.product-detail-info{
    position:relative;
    float:right;
    width:350px;
}
.product-detail-info h1{
    font-size:26px;
    margin:15px 0;
    font-weight:700;
    color:#000000;
}
.product-detail-info .social-container{
    margin-top:0;
    margin-bottom:15px;
}
.product-detail-info .item-rating{
    color:#FFBF00;
}
.product-detail-info .item-rating i{
    cursor:pointer;
}
.product-detail-info .item-rating i:hover{
    color:red;
}
.product-detail-info .comments-link{
    color:#268ab7;
    margin-left:10px;
}
.product-detail-info .codice-disponibilita .availability{
    color:#ca2626;
}
.product-detail-info .codice-disponibilita .availability.disponibile{
    color:#008C23;
}
.product-detail-info .orig-price{
    font-size:20px;
}
.product-detail-info .price{
    font-size:30px;
    font-weight:800;
    margin:30px 0 10px;
    color:#000;
}
.product-detail-info .product-variants{
    margin:30px -10px 0;
    display:flex;
    flex-wrap:wrap;
}
.product-detail-info .product-variants .form-group{
    width:calc(50% - 20px);
    margin:0 10px 20px;
}
.product-detail-info .product-variants .form-group select{
    height:36px;
    line-height:36px;
    border:1px solid #CCCCCC;
    color:#000;
    font-size:14px;
    border-radius:0;
    box-shadow:none;
    padding:6px;
}
.product-detail-info .add-to-cart{
    margin:50px 0 10px;
}
.product-detail-info .add-to-cart input{
    background-color:#fff;
    border:1px solid #CCCCCC;
    font-size:18px;
    padding:10px 17px;
    width:60px;
    text-align:center;
}
.product-detail-info .add-to-cart button{
    background-color:#e7b630;
    border:1px solid #e7b630;
    font-size:14px;
    padding:12px 30px;
    text-transform:uppercase;
    float:right;
    font-weight:700;
    transition:all .2s;
}
.product-detail-info .add-to-cart button:hover{
    color:#fff;
    background-color:#45AF62;
    border:1px solid #45AF62;
}
.product-detail-info .add-to-cart button i{
    font-size:18px;
}
.product-tabs{
    overflow:hidden;
    clear:both;
    margin-bottom:30px;
}
.product-tabs ul.nav-tabs li{
    margin-bottom:-1px;
}
.product-tabs .tab-pane{
    padding:30px;
    border:1px solid #CCCCCC;
    border-top:none;
}
.product-tabs .nav-tabs>li>a{
    border-radius:0;
    font-size:14px;
    font-weight:700;
    text-transform:uppercase;
    color:#000;
    background:#ddd;
    transition:all .2s;
}
.product-tabs .nav-tabs>li>a:focus,
.product-tabs .nav-tabs>li>a:hover{
    background:#f2f2f2;
}
.product-tabs .nav-tabs>li.active>a,
.product-tabs .nav-tabs>li.active>a:focus,
.product-tabs .nav-tabs>li.active>a:hover{
    border:1px solid #ccc;
    border-bottom-color:transparent;
    background:#fff;
}
.product-tabs #description img{
    max-width:300px;
}

.commentlist{
    margin-top:40px;
}
.comment{
    border-top:1px solid #cecec4;
    padding-top:20px;
    margin-bottom:24px;
}
.comment-meta{
    padding-left:47px;
}
.comment-meta p{
    color:#867873;
}
/* end scheda prodotto */

/* sidebar */
.sidebar > #accordion{
    background-color:#efefef;
    padding:0 10px 10px 10px;
}
.sidebar > #accordion .panel:first-child{
    border-top:2px solid #beb5ad;
    padding-top:2px;
}
.sidebar .sidebar-title{
    background-color:#efefef;
    font-size:20px;
    font-weight:bold;
    margin:0;
    padding:12px 20px;
    text-transform:uppercase;
}
.sidebar ul{
    list-style:none;
    padding:0;
}
.sidebar .panel-group .panel{
    margin-top:0;
    background:none;
    -webkit-border-radius:0;
    -moz-border-radius:0;
    border-radius:0;
    -webkit-box-shadow:none;
    -moz-box-shadow:none;
    box-shadow:none;
}
.sidebar .panel-title a{
    outline:none;
    display:block;
    background-color:#72645b;
    color:#fff;
    text-transform:uppercase;
    font-weight:bold;
    padding:12px 12px 11px 12px;
    font-size:14px;
    margin-bottom:1px;
}
.sidebar .panel-title a.collapsed{
    background:none;
    color:#062a51;
    border-top:1px solid #d4cdbd;
}
.sidebar > #accordion .panel:first-child .panel-title a.collapsed{
    border-top:none;
}
.sidebar a:focus, .sidebar a:hover{
    text-decoration:none;
}
.sidebar .panel-collapse > div > ul > li > a{
    display:block;
    font-size:13px;
    margin-bottom:1px;
    padding:6px 6px 6px 33px;
    text-transform:uppercase;
}
.sidebar .panel-collapse > div > ul > li > a.selected{
    color:#fff;
    font-weight:bold;
}
.sidebar .panel-collapse > div > ul > li > a:hover{
    background-color:#4591D2;
    color:#fff;
}
.sidebar .sub{
    margin-bottom:24px;
}
.sidebar .sub-sub{
    margin-top:10px;
    margin-bottom:17px;
}
.sidebar .sub-sub > li > a{
    display:block;
    font-size:13px;
    padding:6px 6px 6px 33px;
}
.sidebar .sub-sub > li > a.selected{
    font-weight:bold;
}
.advbox{
    margin:0 auto 20px auto;
}
/* end sidebar */

.alert>ul{
	margin:0;
	padding:0;
	list-style-type:none;
}

.insert-discount .alert-danger{
	margin-top:20px;
	margin-bottom:8px;
}

.insert-discount .errore-codice-promozionale{
	padding-left:0;
}
/*end codice promozionale*/

.page-body{
	margin:0 auto 20px;
}

/********************************
- SIDENAV
********************************/
.sidenav{
	overflow:hidden;
	border-radius:10px;
}
.sidenav > ul{
	margin:0;
	padding:0;
	list-style-type:none;
}
.sidenav > ul > li{
	margin-bottom:1px;
}
.sidenav > ul > li > a{
	display:block;
	cursor:pointer;
	padding:15px 20px 15px 50px;
	background-color:#4591D2;
	color:#fff;
	font-size:15px;
	line-height:22px;
	background-size:36px;
	background-repeat:no-repeat;
	background-position:8px 50%;
}
.sidenav a{
	transition:all .2s;
}

.sidenav > ul > li ul{
	display:none;
	list-style-type:none;
	padding:0 0 0 20px;
}
.sidenav > ul > li ul ul ul{
	padding:0 0 0 5px;
}
.sidenav > ul > li ul li.parent.active > ul{
	display:block;
}
.sidenav > ul > li ul > li{
}
.sidenav > ul > li ul > li > a{
	display:block;
	cursor:pointer;
	padding:5px 5px;
	font-size:13px;
}
.sidenav > ul > li ul > li > a:before{
	display:inline-block;
	-webkit-font-smoothing:antialiased;
	font-family:"Font Awesome 5 Pro";
	content:"\f105";
	padding-right:5px;
}
.sidenav > ul > li ul > li.parent.active > a:before{
	content:"\f107";
}

.sidenav > ul > li > ul{
	list-style-type:none;
	padding:10px 0;
	background:#F0F0F0;
	display:none;
}
.sidenav > ul > li.active > ul{
	display:block;
}
.sidenav > ul > li > ul > li > a{
	padding:5px 20px;
	background:none!important;
}

.sidenav > ul li.active > a,
.sidenav > ul li > a:focus,
.sidenav > ul li > a:hover{
	color:#007ACA;
	text-decoration:none;
}

.sidenav > ul li.parent.active > a{
	background-color:#F0F0F0;
	color:#007ACA;
}

.sidenav > ul li.active.level-1 > a,
.sidenav > ul li.level-1 > a:focus,
.sidenav > ul li.level-1 > a:hover,
.sidenav > ul li.active.level-2 > a,
.sidenav > ul li.level-2 > a:focus,
.sidenav > ul li.level-2 > a:hover,
.sidenav > ul li.active.level-3 > a,
.sidenav > ul li.level-3 > a:focus,
.sidenav > ul li.level-3 > a:hover{
	background-color:#007ACA;
	color:#fff;
	text-decoration:none;
}

.sidenav > ul > li > a:after{
	display:inline-block;
	float:right;
	-webkit-font-smoothing:antialiased;
	font-family:"Font Awesome 5 Pro";
	content:"\f105";
}
.sidenav > ul > li.parent.active > a:after{
	content:"\f107";
}

.sidenav .menu-section a{
	display:block;
	padding:15px 20px;
	background:#eee;
	color:#000;
	font-size:16px;
	text-transform:uppercase;
	font-weight:700;
}
.sidenav .menu-section a:after{
	display:none;
	content:"";
}

/* Eccezioni */
body[class*="scuola-artigiani-e-restauratori"] .sidenav > ul > li:not(.active){
	display:none;
}
body[class*="escola-de-artes-os-e-restauradores"] .sidenav > ul > li:not(.active){
	display:none;
}
body[class*="art-school-for-restorers"] .sidenav > ul > li:not(.active){
	display:none;
}

/********************************
- GALLERY
********************************/
.gallery-container{
    overflow:hidden;
    margin:0;
    border-top:1px solid #fff;
    border-bottom:1px solid #fff;
    background-position:50% 50%;
    background-repeat:no-repeat;
    background-size:cover;
    background-image:linear-gradient(rgba(0, 0, 0, 1), rgba(0, 0, 0, 0.7));
    display:flex;
    flex-wrap:wrap;
}

.gallery-container figure{
    width:calc(100% * 1/3);
}

.gallery-container figure a{
    height:0;
    padding-bottom:45%;
    cursor:pointer;
    display:block;
    background-repeat:no-repeat;
    background-position:50% 50%;
    background-size:cover;
}

.gallery-container figure img{
    display:none!important;
}

.gallery-container figcaption{
    display:none!important;
}

.content-gallery{
    margin:50px 0;
}

.content-gallery .gallery-container{
    background:none;
    margin:-5px;
}

.content-gallery .gallery-container figure{
    width:calc((100% * 1/4) - 10px);
    margin:5px;
}

.content-gallery .gallery-container figure a{
    padding-bottom:65%;
}

.content-gallery.gallery-product{
    margin-top:0;
}

.content-gallery.gallery-product .gallery-container figure.first-figure a{
    background-size:contain;
    background-color:#f5f5f5;
}

.content-gallery.gallery-product .gallery-container figure{
    width:calc((100% * 1/5) - 10px);
    margin:5px;
    border:1px solid #ddd;
}

.content-gallery.gallery-product .gallery-container figure a{
    padding-bottom:65%;
}

.content-gallery.gallery-product .gallery-container figure.first-figure{
    width:calc(100% - 10px);
    margin:5px;
}

.content-gallery.gallery-product .gallery-container figure.first-figure a{
    padding-bottom:100%;
}

/********************************
- BUTTONS
********************************/
.home-buttons{
	background:#eee;
	padding:10px 0 5px;
}
.subhome-buttons{
	background:#eee;
	padding:20px 0 10px;
}
.subhome-map{
	border-top:1px solid #eee;
	border-bottom:1px solid #eee;
	padding:30px 0;
	margin:30px 0;
}
.subhome-map #map-canvas{
	height:600px;
}
.subhome-map .map-category{
	overflow:hidden;
	margin:0;
	padding:0;
	display:flex;
	flex-wrap:nowrap;
	list-style-type:none;
}
.subhome-map .map-category li{
	width:calc(100% / 2);
	border:1px solid #fff;
	border-top:2px solid #fff;
}
.subhome-map .map-category li a:focus,
.subhome-map .map-category li a{
	display:block;
	cursor:pointer;
	height:50px;
	line-height:50px;
	text-align:center;
	font-weight:700;
	background:#eee;
	font-size:16px;
	text-transform:uppercase;
	text-decoration:none;
}
.subhome-map .map-category li a.selected{
	background:#4591D2;
	color:#fff;
}
.subhome-map .map-category li a:hover{
	background:#007ACA;
	color:#fff;
}
.subhome-map .map-legend{
	overflow:hidden;
	margin:0;
	padding:0;
	list-style-type:none;
	display:flex;
	flex-wrap:nowrap;
}
.subhome-map .map-legend li{
	width:calc(100% / 4);
	background-repeat:no-repeat;
	background-position:0 0;
	line-height:40px;
	padding-left:50px;
	font-size:16px;
}

.buttons{
	margin:0 -15px;
}
.buttons > ul{
	margin:0;
	padding:0;
	list-style-type:none;
	overflow:hidden;
	display:flex;
	flex-wrap:wrap;
}
.buttons > ul > li{
	margin:0;
	width:25%;
}
.buttons > ul > li > a{
	border-radius:15px;
	display:flex;
	justify-content:center;
	flex-direction:column;
	cursor:pointer;
	padding:10px;
	margin:5px;
	font-weight:700;
	color:#fff;
	background:#4591D2;
	text-align:center;
	min-height:180px;
	vertical-align:middle;
	transition:all .2s
}
.buttons > ul > li > a img{
	max-width:120px;
	height:auto;
	display:block;
	margin:0 auto;
}
.buttons > ul > li > a .button-title{
	display:block;
	text-transform:uppercase;
	font-size:18px;
	font-weight:700;
	margin:0;
}
.buttons > ul > li > a .button-subtitle{
	display:block;
	font-size:12px;
	font-weight:400;
}

.buttons > ul li > a:hover{
	background:#007ACA;
	text-decoration:none;
}

.buttons > ul > li.button-type-ext > a{
	background:#AAAAAA;
}
.buttons > ul > li.button-type-ext > a:hover{
	background:#999;
}

.home-buttons .buttons > ul > li > a{
	background:none;
	color:#4591D2;
}
.home-buttons .buttons > ul > li > a:hover{
	background:#fff;
}
.home-buttons .buttons > ul > li.button-type-ext > a{
	background:#ddd;
}
.home-buttons .buttons > ul > li.button-type-ext > a:hover{
	background:#ccc;
}

/********************************
- #COOKIES
********************************/
.cookieagree{
    background-color:#4591D2;
    color:#fff;
    bottom:0;
    left:0;
    padding:10px 0;
    position:fixed;
    text-align:center;
    width:100%;
    z-index:1000;
}
.cookieagree a{
    color:#fff;
}
.cookieagree a:hover{
    color:#ddd;
}
#cookieAgreed{
    color:#000;
}

/* lightbox */
.modal-header{
    -webkit-border-top-left-radius:6px;
    -webkit-border-top-right-radius:6px;
    -moz-border-radius-topleft:6px;
    -moz-border-radius-topright:6px;
    border-top-left-radius:6px;
    border-top-right-radius:6px;
    background-color:#eee;
}
.modal-body{
    text-align:center;
    font-size:16px;
    font-weight:400;
    padding-top:40px;
    padding-bottom:40px;
}
.modal-footer{
    text-align:center;
}

#overlay-errors ul li{
    text-align:left;
    /* list-style:none;*/
    color:red;
}
/* end lightbox */

/* recaptcha */
.g-recaptcha > div{
    margin:auto;
}

/* video embed */
.main-video-container{
	background:#000;
	padding:30px 0;
}
.main-video-container .main-video-wrapper{
	max-width:1170px;
	margin:auto;
}
iframe.embed-video{
	width:100%;
	height:500px;
}

/* NP embed */
iframe.np-iframe{
	width:100%;
	height:800px;
}

/* audio embed */
.audio-bg-container > .audiojs{
	margin:20px auto;
}

/* content read more */
.node-content{
    margin-bottom:50px;
    max-height:120px;
    position:relative;
    padding:0 0 160px;
    overflow:hidden;
}
.node-content.opened{
    padding:0;
}
.node-content .node-readmore{
    position:absolute;
    bottom:0;
    left:0;
    width:100%;
    text-align:center;
    margin:0;
    padding:30px 0 0 0;
    background-image:-moz-linear-gradient(top, transparent, white);
    background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0, transparent),color-stop(1, white));
}
.node-content .node-readmore.opened{
    position:inherit;
    bottom:auto;
    left:auto;
    background:none;
    padding:0;
}
.node-content .node-readmore .btn-default{
    color:#4591D2;
    border-radius:5px;
    border-color:#4591D2;
    font-size:14px;
    font-weight:700;
    text-transform:uppercase;
}
.node-content .node-readmore .btn-default:focus,
.node-content .node-readmore .btn-default:hover{
    color:#337ab7;
    border-color:#337ab7;
    background:#fff;
}

/* content read more */
.node-content{
    margin-bottom:50px;
    position:relative;
    overflow:hidden;
}

.content-iframe{
    border:none;
    margin-bottom:20px;
    width:100%;
    height:400px;
}

/* Elenchi generici */
.items-list{
	overflow:hidden;
	margin:20px 0;
}
.items-list .item-container{
	overflow:hidden;
	margin-bottom:20px;
	padding-bottom:20px;
	border-bottom:1px solid #eee;
}
.items-list .item-container .item-image{
	width:152px;
	height:112px;
	float:left;
	margin-right:15px;
	background:#fff;
}
.items-list .item-container .item-image a{
	border:2px solid #268ab7;
	border-radius:10px;
	overflow:hidden;
	text-indent:-9999px;
	display:block;
	cursor:pointer;
	width:150px;
	height:110px;
	background-color:#ffffff;
	background-repeat:no-repeat;
	background-position:50% 50%;
	background-size:contain;
}
.items-list .item-container .item-data{
	width:calc(100% - 167px);
	float:right;
}
.items-list .item-container .item-data .item-title{
	text-decoration:none;
	font-size:22px;
	font-weight:700;
	line-height:28px;
	color:#268ab7;
	border-bottom:none;
}
.items-list .item-container .item-data .item-title:hover{
	text-decoration:none;
	color:#111;
}

.item-video{
	overflow:hidden;
	margin-bottom:40px;
	padding-bottom:40px;
	border-bottom:1px solid #eee;
}

.item-details{
	overflow:hidden;
	margin-bottom:40px;
	padding-bottom:40px;
	border-bottom:1px solid #eee;
}

.item-details .separator,
.item-details .MsoNormal{
	margin:20px 0;
}
.item-details .separator img,
.item-details .MsoNormal img,
.item-details img[data-original-height]{
	margin:10px auto;
	display:block;
	max-width:100%;
}

.item-date{
	margin:0;
}
.item-author{
	margin:0 0 15px 0;
}

.items-list.socials .item-container .item-data{
	width:100%;
	float:none;
}
.items-list.socials .item-container .item-data ul{
	overflow:hidden;
	padding:0;
	margin:0;
	list-style-type:none;
}
.items-list.socials .item-container .item-data ul li a{
	display:block;
	cursor:pointer;
	line-height:26px;
	margin-bottom:4px;
	font-size:16px;
	transition:all .2s;
}
.items-list.socials .item-container .item-data ul li a i{
	width:30px;
	text-align:center;
	display:inline-block;
	font-size:18px;
}
.items-list.socials .item-container .item-data ul li a.social-facebook{
	color:#3C5A99;
}
.items-list.socials .item-container .item-data ul li a.social-twitter{
	color:#1DA1F2;
}
.items-list.socials .item-container .item-data ul li a.social-instagram{
	color:#833AB4;
}
.items-list.socials .item-container .item-data ul li a.social-youtube{
	color:#FF0000;
}
.items-list.socials .item-container .item-data ul li a:hover{
	color:#000;
}

/* paginazione generica */
.pagination > li > a{
	border-radius:0!important;
	margin-left:3px;
	margin-right:3px;
	margin-bottom:6px;
	min-width:40px;
	text-align:center;
}
.pagination>.active>a, .pagination>.active>a:focus, .pagination>.active>a:hover, .pagination>.active>span, .pagination>.active>span:focus, .pagination>.active>span:hover{
	background-color:#007ACA;
	border-color:#007ACA;
}

/* griglia prodotti */
.items-grid{
	overflow:hidden;
}
.items-grid .item-container{
	border:1px solid #ccc;
	margin-bottom:30px;
}
.items-grid .item-container .item-image{
	height:230px;
	position:relative;
}
.items-grid .item-container .item-image a{
	text-indent:-9999px;
	display:block;
	cursor:pointer;
	height:230px;
	position:relative;
	background-color:#f2f2f2;
	background-repeat:no-repeat;
	background-position:50% 50%;
	background-size:cover;
}
.items-grid .item-container .item-image a img{
	display:none!important;
}
.items-grid .item-container .item-rating{
	margin:10px 0;
	color:#FFBF00;
	font-size:11px;
	text-align:center;
}
.items-grid .item-container .item-name{
	color:#268ab7;
	display:block;
	cursor:pointer;
	margin:10px;
	font-size:15px;
	font-weight:700;
	text-align:center;
	text-decoration:none;
	line-height:21px;
	min-height:63px;
	transition:all .2s;
	overflow:hidden;
}
.items-grid .item-container .item-name:hover{
	color:#007ACA;
}
.items-grid .item-container .item-price{
	margin:10px 0;
	text-align:center;
	font-size:18px;
	color:#000000;
	font-weight:700;
}
.items-grid .item-container .item-price .orig-price{
	color:#dc1414;
	text-decoration:line-through;
	font-size:16px;
}

/* footer */
footer{
	background:#F2F8FC;
	padding:50px 0 70px;
	color:#000000;
	font-weight:300;
	font-size:13px;
}
footer hr{
	height:2px;
	margin:30px 0;
	padding:0;
	background:#b9d0df;
	border:none;
}
footer .footer-logo{
	margin-bottom:30px;
	overflow:hidden;
}
footer .site-contacts{
	margin-bottom:30px;
	overflow:hidden;
}
footer .footer-socials{
	margin-bottom:30px;
	overflow:hidden;
}
footer .footer-socials ul{
	overflow:hidden;
	padding:0;
	margin:0;
	list-style-type:none;
}
footer .footer-socials ul li a{
	display:block;
	cursor:pointer;
	line-height:26px;
	margin-bottom:4px;
	font-size:16px;
	transition:all .2s;
}
footer .footer-socials ul li a i{
	width:30px;
	text-align:center;
	display:inline-block;
	font-size:18px;
}
footer .footer-socials ul li a.social-facebook{
	color:#3C5A99;
}
footer .footer-socials ul li a.social-twitter{
	color:#1DA1F2;
}
footer .footer-socials ul li a.social-instagram{
	color:#833AB4;
}
footer .footer-socials ul li a.social-youtube{
	color:#FF0000;
}
footer .footer-socials ul li a:hover{
	color:#000;
}
footer .footer-nav{
	padding:0;
	margin:0 0 30px;
	list-style-type:none;
	min-height:200px;
}
footer .footer-nav li{
	line-height:28px;
}
footer .footer-nav > li > span,
footer .footer-nav > li > a{
	font-size:14px;
	font-weight:700;
	text-transform:uppercase;
	text-decoration:none;
	color:#000;
}
footer .footer-nav > li > a:hover{
	color:#666;
}
footer .footer-nav > li > ul{
	padding:0;
	margin:0;
	list-style-type:none;
}
footer .footer-nav > li > ul > li > a{
	text-decoration:none;
	color:#000;
}
footer .footer-nav > li > ul > li > a:hover,
footer .footer-nav > li > ul > li > a:focus,
footer .footer-nav > li > ul > li > a.active{
	color:#666;
}
footer .footer-nav > li > ul > li > ul{
	display:none;
	visibility:hidden;
	opacity:0;
	text-indent:-9999px;
}

/* avvisi */
.avvisi-container{
	overflow:hidden;
}
.avvisi-container .avvisi-list{
	margin:0;
	padding:0;
	list-style-type:none;
}
.avvisi-container .avvisi-list li{
	position:relative;
	display:block;
	padding:10px 35px 10px 10px;
	background:#D90000;
	color:#fff;
	border-bottom:1px solid #B20000;
	text-align:center;
}
.avvisi-container .avvisi-list li .avviso-container{
	max-width:1170px;
	margin:auto;
	color:#fff;
}
.avvisi-container .avvisi-list li .avviso-container .avviso-link{
	color:#fff;
	transition:all .2s;
}
.avvisi-container .avvisi-list li .avviso-container .avviso-link:hover{
	text-decoration:underline;
}
.avvisi-container .avvisi-list li .avviso-close{
	cursor:pointer;
	position:absolute;
	top:5px;
	right:10px;
	color:#fff;
	font-size:22px;
}
.avvisi-container .avvisi-list li .avviso-close:hover{
	color:#fdcece;
}

/* archivio mesi */
.archive{
	margin-top:60px;
}
.archive .archive-head{
	font-size:30px;
	font-weight:700;
	color:#000;
	line-height:40px;
	border-bottom:2px solid #000;
	margin-bottom:20px;
}
.archive .archive-head.has-link{
	color:#007ACA;
	border-color:#007ACA;
}
.archive .archive-head.has-link a{
	color:#007ACA;
	display:block;
	cursor:pointer;
	border:none!important;
	text-decoration:none!important;
}
.archive .archive-head.has-link:hover,
.archive .archive-head.has-link:focus{
	border-color:#4591D2;
}
.archive .archive-head.has-link a:hover,
.archive .archive-head.has-link a:focus{
	color:#4591D2;
	border:none!important;
}
.archive .archive-overhead{
	font-size:22px;
	color:#000;
}
.archive ul{
	padding:0;
	margin:0;
	list-style-type:none;
}
.archive ul li a{
	display:block;
	cursor:pointer;
	font-size:16px;
	font-weight:700;
	color:#268ab7;
	margin-top:15px;
	padding-bottom:15px;
	border-bottom:1px solid #DDDDDD;
}
.archive ul li a.active,
.archive ul li a:focus,
.archive ul li a:hover{
	color:#007ACA;
	text-decoration:none;
}
.archive ul li a span{
	color:#000;
	font-size:12px;
	line-height:24px;
	font-weight:400;
}

/* social */
.social-container{
	overflow:hidden;
	margin:30px 0;
	clear:both;
}
.social-container .social-head{
	font-size:18px;
	font-weight:800;
	font-style:italic;
	color:#268ab7;
	margin-bottom:10px;
}
.social-container .social-list{
	list-style-type:none;
	padding:0;
	margin:0;
}
.social-container .social-list li{
	display:inline-block;
	margin-right:5px;
}
.social-container .social-list li a{
	text-decoration:none;
	font-size:36px;
	border:none;
}
.social-container .social-list li.social-facebook a{
	color:#3b5998;
}
.social-container .social-list li.social-facebook a:hover{
	color:#5982d6;
}
.social-container .social-list li.social-whatsapp a{
	color:#25d366;
}
.social-container .social-list li.social-whatsapp a:hover{
	color:#32e274;
}
.social-container .social-list li.social-twitter a{
	color:#1da1f2;
}
.social-container .social-list li.social-twitter a:hover{
	color:#31aefb;
}

/* blocchi A/E/N */
.block-wrapper{
	overflow:hidden;
	margin:30px -15px;
}
.block-wrapper .block-container-1-3{
	float:right;
	width:350px;
}
.block-wrapper .block-container-2-3{
	float:left;
	width:760px;
}
.block-wrapper .block-container-3-3{
	float:none;
	width:100%;
	margin:0;
}
.block-wrapper .block-single{
	overflow:hidden;
	position:relative;
	margin-bottom:20px;
}
.block-wrapper .block-single .block-head{
	font-size:36px;
	font-weight:800;
	color:#268ab7;
	line-height:60px;
	border-bottom:1px solid #268ab7;
	margin-bottom:30px;
}
.block-wrapper .block-single .block-head a,
.block-wrapper .block-single .all-inline{
	font-size:14px;
	font-weight:400;
	color:#268ab7;
	float:right;
}
.block-wrapper .block-single .block-head a:hover,
.block-wrapper .block-single .all-inline:hover,
.block-wrapper .block-single .block-head a:focus,
.block-wrapper .block-single .all-inline:focus{
	text-decoration:none;
	color:#000;
}
.block-wrapper .block-single .block-subhead{
	font-size:22px;
	font-weight:800;
	color:#000;
	line-height:40px;
	margin-bottom:20px;
}
.block-wrapper .block-single .block-image{
	border:2px solid #268ab7;
	border-radius:10px;
	width:100%;
	height:230px;
	background-color:#eee;
	background-size:cover;
	background-position:50% 50%;
	background-repeat:no-repeat;
	margin-bottom:10px;
}

.block-eventi ul{
	list-style-type:none;
	padding:0;
	margin:0 0 0 -60px;
	overflow:hidden;
	display:block;
}
.block-eventi ul li{
	float:left;
	margin-left:60px;
	width:350px;
	min-height:65px;
	margin-bottom:30px;
	overflow:hidden;
}
.block-eventi ul li a{
	font-size:16px;
	color:#268ab7;
	font-weight:700;
}
.block-eventi ul li a:focus,
.block-eventi ul li a:hover{
	color:#000;
	text-decoration:none;
}
.block-eventi ul li:not(.first):not(.has-image) a:before{
	font-family:"Font Awesome 5 Pro";
	font-weight:300;
	content:"\f073";
	color:#fff;
	font-size:32px;
	text-align:center;
	display:inline-block;
	width:60px;
	height:60px;
	line-height:60px;
	float:left;
	background:#268ab7;
	margin-right:15px;
}
.block-eventi ul li:not(.first) .block-image{
	width:60px;
	height:60px;
	float:left;
	margin-right:15px;
}
.block-eventi ul li .block-date{
	font-size:12px;
	display:block;
	color:#000;
}

.block-news ul{
	list-style-type:none;
	padding:0;
	margin:0 0 0 -60px;
	overflow:hidden;
	display:block;
}
.block-news ul li{
	float:left;
	margin-left:60px;
	width:350px;
	min-height:65px;
	margin-bottom:30px;
	overflow:hidden;
}
.block-news ul li a{
	font-size:16px;
	color:#268ab7;
	font-weight:700;
}
.block-news ul li a:focus,
.block-news ul li a:hover{
	color:#000;
	text-decoration:none;
}
.block-news ul li:not(.first):not(.has-image) a:before{
	font-family:"Font Awesome 5 Pro";
	font-weight:300;
	content:"\f0a1";
	color:#fff;
	font-size:32px;
	text-align:center;
	display:inline-block;
	width:60px;
	height:60px;
	line-height:60px;
	float:left;
	background:#268ab7;
	margin-right:15px;
}
.block-news ul li:not(.first) .block-image{
	width:60px;
	height:60px;
	float:left;
	margin-right:15px;
}
.block-news ul li .block-date{
	font-size:12px;
	display:block;
	color:#000;
}

.block-articoli ul{
	list-style-type:none;
	padding:0;
	margin:0 0 30px;
	overflow:hidden;
	display:block;
}
.block-articoli ul li{
	width:350px;
	margin-bottom:20px;
	overflow:hidden;
}
.block-articoli ul li a{
	font-size:14px;
	color:#268ab7;
	font-weight:700;
}
.block-articoli ul li a:focus,
.block-articoli ul li a:hover{
	color:#000;
	text-decoration:none;
}
.block-articoli ul li:not(.has-image) a:before{
	border-radius:10px;
	font-family:"Font Awesome 5 Pro";
	font-weight:300;
	content:"\f1ea";
	color:#fff;
	font-size:32px;
	text-align:center;
	display:inline-block;
	width:60px;
	height:60px;
	line-height:60px;
	float:left;
	background:#268ab7;
	margin-right:10px;
	margin-bottom:10px;
}
.block-articoli ul li .block-image{
	width:60px!important;
	height:60px!important;
	float:left;
	margin-right:15px;
}
.block-articoli ul li .block-date{
	font-size:12px;
	display:block;
	color:#000;
	font-weight:800;
}

/* calendario eventi */
.dncalendar-header{
	background:#268ab7;
	color:#fff;
	margin:0;
	padding:0;
	height:45px;
	line-height:45px;
}
.dncalendar-header h2{
	color:#fff;
	text-transform:capitalize;
	margin:0;
	font-size:16px;
	font-weight:800;
	height:45px;
	line-height:45px;
}
.dncalendar-header .dncalendar-links{
	top:0;
	height:45px;
}
.dncalendar-header .dncalendar-links .dncalendar-prev-month,
.dncalendar-header .dncalendar-links .dncalendar-next-month{
	top:3px;
	left:5px;
}
.dncalendar-header .dncalendar-links .dncalendar-next-month{
	right:5px;
	left:auto;
}
.dncalendar-header .dncalendar-links .dncalendar-prev-month:before,
.dncalendar-header .dncalendar-links .dncalendar-next-month:before{
	font-family:"Font Awesome 5 Pro";
	font-weight:300;
	content:"\f137";
	color:#fff;
	font-size:20px;
	font-weight:900;
	text-align:center;
	display:inline-block;
	width:35px;
	height:35px;
	line-height:35px;
}
.dncalendar-header .dncalendar-links .dncalendar-next-month:before{
	content:"\f138";
}
.dncalendar-body thead td,
.dncalendar-body thead td.holiday{
	color:#268ab7!important;
	font-weight:700;
}
.dncalendar-body tbody tr td{
	border:2px solid #fff;
}
.dncalendar-body table td.calendarClick.today-date{
	border:2px solid #fff;
	background:#ddd;
	color:#000!important;
}
.dncalendar-body table td.today-date{
	border:2px solid #fff;
	background:#f8f8f8;
	color:#bdbdbd!important;
}
.dncalendar-body tbody tr td.calendarClick,
.dncalendar-body table td.calendarClick.holiday{
	color:#000!important;
	background:#eee;
}
.dncalendar-body table td.holiday{
	color:#bdbdbd!important;
}
.dncalendar-body table td.calendarClick.note:before,
.dncalendar-body table td.note:before{
	display:none!important;
}
.dncalendar-body table td.calendarClick.note{
	background:#268ab7;
	color:#fff!important;
}
#event-calendar-container .dncalendar-note-list li.eventi{
	display:none;
}
.dncalendar-note-list .date{
	display:none!important;
}

/* varie */
.lang-single{
	margin-left:4px;
}
.bannerhp{
	margin-top:30px;
}
.bannerhp img{
	display:block;
	margin:auto;
}
.bannerpage{
	margin-top:30px;
}
.bannerpage img{
	border-radius:10px;
	display:block;
	max-width:100%;
}
.bannerpage .row{
	margin-top:30px;
}
.header-area,
.body-area{
	display:block;
	overflow:hidden;
	clear:both;
}

/* mobile varie */
.header-area-mobile{
	position:fixed;
	top:0;
	left:0;
	width:100%;
	min-height:60px;
	z-index:999;
	background:#fff;
	border-bottom:1px solid #ddd;
}
body.is-mobile{
	margin-top:60px;
}
.languages-mobile{
	position:fixed;
	bottom:0;
	left:0;
	width:100%;
	display:flex;
	flex-wrap:nowrap;
	border-top:1px solid #ddd;
	background:#fff;
	margin-top:20px;
	z-index:1000;
}
.languages-mobile a,
.languages-mobile span{
	width:calc(100% / 3);
	text-align:center;
	line-height:50px;
	border-right:1px solid #ddd;
}
.languages-mobile a:last-child,
.languages-mobile span:last-child{
	border-right:none;
}
.languages-mobile a{
	color:#000;
}
.languages-mobile span{
	color:#007ACA;
}

/* menu mobile */
.mainnav-mobile{
	display:none;
	height:100%;
	position:fixed;
	top:60px;
	left:0;
	width:100%;
	background:#fff;
	z-index:999;
	overflow-x:scroll;
	padding-bottom:100px;
	border-top:1px solid #ddd;
}
.mainnav-mobile .mainmenu-mobile{
	position:relative;
	margin:0;
	padding:0;
	list-style-type:none;
	width:100%;
	transition:all .3s;
	transition-timing-function:ease-in-out;
}

.mainnav-mobile .mainmenu-mobile > li{
}
.mainnav-mobile .mainmenu-mobile > li > a{
	display:block;
	line-height:50px;
	padding:0 20px;
	font-size:14px;
	text-transform:uppercase;
	color:#000;
	font-weight:700;
}
.mainnav-mobile .mainmenu-mobile li > a.active{
	color:#007ACA;
}
.mainnav-mobile .mainmenu-mobile li.active > a{
	color:#007ACA;
}
.mainnav-mobile .mainmenu-mobile > li:first-child > a{
	padding-top:20px;
}
.mainnav-mobile .mainmenu-mobile > li > a:after{
	display:inline-block;
	float:right;
	-webkit-font-smoothing:antialiased;
	font-family:"Font Awesome 5 Pro";
	content:"\f105";
}
.mainnav-mobile .mainmenu-mobile > li > ul{
	display:none;
	position:absolute;
	top:0;
	left:100%;
	width:100%;
	margin:20px 0 150px;
	list-style-type:none;
	padding-left:40px;
}
.mainnav-mobile .mainmenu-mobile > li > ul > li > a{
	display:block;
	line-height:36px;
	padding:0 20px;
	font-size:14px;
	text-transform:uppercase;
	color:#000;
	font-weight:700;
}
.mainnav-mobile .mainmenu-mobile > li > ul > li.go-back > a{
	line-height:50px
}
.mainnav-mobile .mainmenu-mobile > li > ul > li.go-back > a:before{
	display:inline-block;
	position:absolute;
	top:0;
	left:20px;
	-webkit-font-smoothing:antialiased;
	font-family:"Font Awesome 5 Pro";
	content:"\f104";
}
.mainnav-mobile .mainmenu-mobile > li > ul > li > ul{
	padding:0;
	margin:0;
	list-style-type:none;
	margin-bottom:30px;
}
.mainnav-mobile .mainmenu-mobile > li > ul > li > ul li a{
	color:#000;
	display:block;
	line-height:30px;
	padding:0 20px;
}

/* menu toggle */
.menuToggle{
    width:36px;
    height:24px;
    position:absolute;
    top:20px;
    right:0;
    transform:rotate(0deg);
    transition:.5s ease-in-out;
    display:block;
}

.menuToggle span{
    display:block;
    position:absolute;
    height:2px;
    width:100%;
    background:#268ab7;
    opacity:1;
    left:0;
    transform:rotate(0deg);
    transition:.25s ease-in-out;
}

.menuToggle span:nth-child(1){
    top:0px;
}

.menuToggle span:nth-child(2),.menuToggle span:nth-child(3){
    top:8px;
}

.menuToggle span:nth-child(4){
    top:16px;
}

.menuToggle.open span:nth-child(1){
    top:16px;
    width:0%;
    left:50%;
}

.menuToggle.open span:nth-child(2){
    transform:rotate(45deg);
}

.menuToggle.open span:nth-child(3){
    transform:rotate(-45deg);
}

.menuToggle.open span:nth-child(4){
    top:16px;
    width:0%;
    left:50%;
}

/* Language toggle */
.langToggle{
    width:36px;
    height:24px;
    position:absolute;
    top:17px;
    right:56px;
    display:block;
    background-position:50% 50%;
    background-repeat:no-repeat;
    border:1px solid #ddd;
    border-radius:3px;
}

.langToggle.open{
    background-color:#eee;
}

.lang-mobile-dropdown{
	display:none;
	height:auto;
	position:fixed;
	top:60px;
	left:0;
	width:100%;
	padding:20px;
	background:#fff;
	z-index:999;
	overflow-x:scroll;
	border-top:1px solid #ddd;
}

.lang-mobile-dropdown .lang-single{
    display:block;
    border:1px solid #ddd;
    border-radius:3px;
    margin-bottom:10px;
    padding:10px 15px;
}
.lang-mobile-dropdown span.lang-single{
    background-color:#eee;
}

/* footer bar */
.footer-bar{
    position:fixed;
    bottom:0;
    left:0;
    width:100%;
    height:60px;
    overflow:hidden;
    z-index:99;
    background:#4591D2;
    display:flex;
    flex-wrap:nowrap;
}
.footer-bar a{
    width:calc(100% / 3);
    display:block;
    cursor:pointer;
    height:60px;
    line-height:60px;
    text-align:center;
    color:#fff;
    font-size:24px;
    font-weight:500;
}
.footer-bar a.active{
    background-color:#007ACA;
}
.footer-bar a.footer-bar-search:after{
    -webkit-font-smoothing:antialiased;
    font-family:"Font Awesome 5 Pro";
    content:"\f002";
    font-weight:300;
}
.footer-bar a.footer-bar-news:after{
    -webkit-font-smoothing:antialiased;
    font-family:"Font Awesome 5 Pro";
    content:"\f0a1";
    font-weight:300;
}
.footer-bar a.footer-bar-events:after{
    -webkit-font-smoothing:antialiased;
    font-family:"Font Awesome 5 Pro";
    content:"\f06b";
    font-weight:300;
}
.footer-bar a.footer-bar-insieme{
    background-position:50% 50%;
    background-repeat:no-repeat;
}
.footer-bar a.footer-bar-cart{
    background-color:#e7b630;
}
.footer-bar a.footer-bar-cart:after{
    -webkit-font-smoothing:antialiased;
    font-family:"Font Awesome 5 Pro";
    content:"\f07a";
    font-weight:300;
}
/* footer search */
.footer-search{
    position:fixed;
    bottom:60px;
    left:0;
    width:100%;
    height:60px;
    overflow:hidden;
    z-index:99;
    background:#fff;
    display:flex;
    flex-wrap:nowrap;
    border-top:1px solid #ddd;
    visibility:hidden;
}
.footer-search a{
    width:20%;
    height:60px;
    line-height:60px;
    text-align:right;
    font-size:24px;
    color:#D90000;
    padding-right:20px;
}
.footer-search input{
    width:80%;
    display:block;
    height:60px;
    line-height:60px;
    padding:0 20px;
    border:none;
    font-size:16px;
    coor:#000;
    background:#fff;
    outline:none;
}

/*BANNER OVER TOP*/
#bannerovertop{
	width:100%;
}
#bannerovertop .alert{
	min-height:40px;
	overflow:hidden;
	margin:0;
	padding:0 0;
	border:0;
	border-radius:0;
	background-color:#c12317;
	color:#ffffff;
	line-height:1.2;
}
#bannerovertop .alert-dismissable .close, #bannerovertop .alert-dismissible .close{
	padding:7px 0 6px 12px;
	opacity:1;
	color:#ffffff;
	top:5px;
	right:15px;
	font-size:1.6rem;
}
#bannerovertop .alert .text{
	padding:12px 15px;
	font-size:1.4rem;
}
#bannerovertop .alert a{
	color:#ffffff;
	margin-right:5px;
}
#bannerovertop .alert a:hover, .main_header .top_bar .sales_wrp .alert a:active{
	text-decoration:underline;
}
#bannerovertop .alert span{
	color:#ffffff;
	top:2px;
	margin-right:5px;
}

@-webkit-keyframes SectionBackgroundAnimation{
	0%{
		background-position:0% 50%
	}
	50%{
		background-position:100% 50%
	}
	100%{
		background-position:0% 50%
	}
}

@-moz-keyframes SectionBackgroundAnimation{
	0%{
		background-position:0% 50%
	}
	50%{
		background-position:100% 50%
	}
	100%{
		background-position:0% 50%
	}
}

@keyframes SectionBackgroundAnimation{
	0%{
		background-position:0% 50%
	}
	50%{
		background-position:100% 50%
	}
	100%{
		background-position:0% 50%
	}
}

#bannerovertop.banner_animazione_video .alert{
    background:linear-gradient(45deg, #a7251b 0%,#eda906 35%,#c4291e 50%,#dd392d 75%, #6d06ed 100%);
	;
    background-size:400% 400% !important;
    -webkit-animation:SectionBackgroundAnimation 10s ease infinite;
    -moz-animation:SectionBackgroundAnimation 10s ease infinite;
    animation:SectionBackgroundAnimation 10s ease infinite;
}

/* Allegati */
.attachments .attachment{
	display:flex;
	flex-wrap:nowrap;
	cursor:pointer;
	line-height:24px;
	margin-bottom:20px;
	font-size:16px;
	font-weight:700;
	text-decoration:none;
	color:#1a1e21;
}
.attachments .attachment span{
	display:block;
	padding:6px 0;
}
.attachments .attachment i{
	display:inline-block;
	width:60px;
	height:60px;
	background:#1a1e21;
	border-radius:5px;
	text-align:center;
	color:#fff;
	margin-right:20px;
	line-height:60px;
	font-size:36px;
}
.attachments .attachment.attachment-pdf i{
	background:#ad0b00;
}
.attachments .attachment.attachment-doc i{
	background:#164db1;
}
.attachments .attachment.attachment-docx i{
	background:#164db1;
}
.attachments .attachment.attachment-xls i{
	background:#076e38;
}
.attachments .attachment.attachment-xlsx i{
	background:#076e38;
}
.attachments .attachment.attachment-ppt i{
	background:#b93617;
}
.attachments .attachment.attachment-pptx i{
	background:#b93617;
}
.attachments .attachment.attachment-jpg i{
	background:#009999;
}

@media (min-width:1000px){
	#timeline .timeline-card:nth-child(even) .head::after, #timeline .timeline-card:nth-child(odd) .head::after{
		position:absolute;
		content:"";
		width:0;
		height:0;
		border-top:15px solid transparent;
		border-bottom:15px solid transparent;
	}

	#timeline .timeline-card:nth-child(even) .head::before, #timeline .timeline-card:nth-child(odd) .head::before{
		position:absolute;
		content:"";
		width:9px;
		height:9px;
		background-color:#bdbdbd;
		border-radius:9px;
		box-shadow:0px 0px 2px 8px #f7f7f7;
	}
}
/* Some Cool Stuff */
.timeline-card:nth-child(1){
	order:1;
}

.timeline-card:nth-child(2){
	order:4;
}

.timeline-card:nth-child(3){
	order:2;
}

.timeline-card:nth-child(4){
	order:5;
}

.timeline-card:nth-child(5){
	order:3;
}

.timeline-card:nth-child(6){
	order:6;
}

/* Border Box */
*{
	box-sizing:border-box;
}

/* Timeline */
.timeline{
	margin:80px 0;
	padding:0;
	position:relative;
	display:table;
	text-align:center;
	vertical-align:middle;
}

.timeline:before{
	content:"";
	position:absolute;
	width:0;
	bottom:-50px;
	top:-50px;
	left:50%;
	display:block;
	margin-left:-1px;
	border:1px solid #bdbdbd;
}

.timeline li{
	display:block;
	position:relative;
	width:45%;
	box-sizing:border-box;
	vertical-align:middle;
	background-color:#fff;
	padding:80px 20px 20px;
	margin-bottom:-30px;
	box-shadow:0px 1px 22px 4px rgba(0, 0, 0, 0.07);
	border-radius:10px;
}

.timeline li:before,
.timeline li:after{
	content:"";
	position:absolute;
	top:50%;
	display:block;
}

.timeline li:before{
	width:40px;
	height:0;
	border:1px solid #bdbdbd;
}

.timeline li:after{
	width:10px;
	height:10px;
	margin-top:-5px;
	margin-left:10px;
	background-color:#bdbdbd;
	border-radius:10px;
	box-shadow:0px 0px 2px 8px #f7f7f7;
}

.timeline li:nth-child(odd){
	margin-right:8%;
	margin-left:15px;
	float:left;
}

.timeline li:nth-child(even){
	margin-left:8%;
	margin-right:15px;
	float:right;
}

.timeline li:nth-child(odd):before{
	right:-8.1%;
}

.timeline li:nth-child(even):before{
	left:-8%;
}

.timeline li:nth-child(odd):after{
	right:calc(-10% + 5px);
}

.timeline li:nth-child(even):after{
	left:-11.3%;
	clear:both;
}

.timeline li .date{
	display:block;
	background:#111;
	color:#fff;
	font-size:16px;
	font-weight:700;
	margin:0;
	padding:15px;
	position:absolute;
	top:0;
	left:0;
	width:100%;
	border-top-left-radius:10px;
	border-top-right-radius:10px;
}

.timeline li.step-1 .date{
	background:#268ab7;
}

.timeline li.step-2 .date{
	background:#e7b630;
}

.timeline li.step-3 .date{
	background:#12aa5e;
}

.timeline li.step-4 .date{
	background:#ed3e3a;
}

.timeline h3{
	margin-top:0;
	font-size:24px;
}

.timeline li > div{
	padding:0;
}

.timeline li > div p{
	margin-bottom:0;
}

.timeline li > div img{
	width:auto;
	margin:1em auto;
	max-width:100%;
	max-height:400px;
	border-radius:10px;
}

.timeline-years{
	overflow:hidden;
	line-height:40px;
}

.timeline-years a{
	display:inline-block;
	cursor:pointer;
	border-radius:10px;
	background:#268ab7;
	border-color:#268ab7;
	color:#fff;
    font-size:14px;
    line-height:20px;
	padding:4px 10px;
    text-align:left;
    margin-left:5px;
	width:auto;
    transition:all .2s;
}

.timeline-years a:hover{
	background:#49a8d3;
	border-color:#49a8d3;
}











