#site *, footer * {
	float: none !important;
	position: static !important;
}

figure img {
	display: block !important;
	max-width: 100% !important;
	margin: 0 auto;
}

#branding {
	margin: 1.5em auto;
	position: static;
	
}

#masthead {
	position: relative;
}

#site-description {
	display: none;
}

#top-navigation {
	margin: 1em 0;
}

#top-menu li {
	display: block;
	margin-right: 0;
	margin-bottom: 1em;
	text-align: center;
}

#top-social {
	margin: 1em 0;
	text-align: center;
}

#top-social a {
	display: inline-block;
}

#mobile-menu-open {
	display: block;
}

#main-navigation {
	position: absolute !important;
	height: auto;
	width: 35%;
	top: 68px;
	left: -35%;
	z-index: 1000000000;
	transition: left 400ms ease-in;
}

#main-navigation.visible {
	left: 0;
}

#main-menu li {
	margin-right: 0;
	display: block;
	text-align: center;
	margin-bottom: 1em;
}

#main-menu li a {
	display: block;
}

#home-top .featured,
#home-top .side {
	margin: 1em 0;
	width: 100%;
}

.row {
	width: 100% !important;
	max-width: 100% !important;
}

.col, .main, .sub {
	width: auto !important;
	padding: 0 1em !important;
}

.popular-posts h3,
.popular-posts p {
	margin-right: 0;
}

.news-posts h3,
.news-posts p {
	margin-left: 0;
}

.sub-widget figure img {
	margin: 0 0 1em 0 !important;
}

.site-info-cover {
	width: auto !important;
	padding: 0 1em !important;
	margin-right: 0;
	margin-bottom: 1em;
}

.form {
	padding: 0 1em 0 0;
}

.form p input[type="submit"].btn {
	display: block;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
}

#map {
	height: 300px;
}

#pagination {
	text-align: center;
}

#main-menu li.current-menu-item {
	background: transparent;
}

/*modifiche 1/02/17*/
#home-top .featured {
    min-height: 1px;
}
#main-navigation {
	position: fixed !important;
	height: auto;
	width: 60%;
	top: 0;
	left: -90%;
	z-index: 1000000000;
	transition: left 400ms ease-in;
	bottom: 0;
	padding-top: 65px;
	min-width: 250px;
}
#main-navigation.visible {
	border-bottom: 3px solid #da0000;
}
#mobile-menu-open {
    position: fixed !important;
}
#main-menu li {
    height: auto;
    border-bottom: 1px solid #da0000;
    padding: 0.5em 0;
}
#main-menu {
    max-height: 800px;
    overflow: auto;
}
/*#main-navigation.visible ~ * {
	display: none;
}*/
#masthead {
	min-height: 1px;
}
div#w-loginform {
    position: absolute !important;
    top: 35px;
    right: 6px;
}
#w-loginform h3.sub-title {
    color: #fff;
    font-size: 1.2em;
    cursor: pointer;
    text-align: right;
    border:0;
}
#w-loginform h3.sub-title:before{
	content: '';
	display: inline-block;
	vertical-align: middle;
	width: 20px;
	height: 20px;
	margin: -3px 7px 0 0;
	background: url(../images/login.png) no-repeat;
	border-radius: 15px;
}
#w-loginform.opened h3.sub-title:after{
	content: 'X';
	display: inline-block;
	vertical-align: middle;
	margin-left: 35px;
    font-family: Arial;
    background: #fff;
    border-radius: 50px;
    padding: 1px 3px 0;
    font-size: 14px;
    color: #003168;
}
#w-loginform #loginform {
    padding: 1em 0.5em .5em;
    background: #dedede;
}
#w-loginform .textwidget{
	display: none;
}
#w-loginform.opened .textwidget{
	display: block;
}
#w-loginform input[type="submit"] {
    display: block;
    margin: .5em 0;
    width: 100%;
}
#w-loginform #loginform input{
    width: 122px;
}
#page{
	padding: 0 15px;
}

/* woocommerce v2 */
nav.woocommerce-MyAccount-navigation {
    width: auto;
    margin: 1em auto;
}
.woocommerce-MyAccount-content {
    width: auto;
    margin: 0;
    overflow: auto;
}
.woocommerce-MyAccount-content table{
	margin-left: -15px;
	margin-right: -15px;
}
table.my_account_orders th, table.my_account_orders td, table.woocommerce-table--customer-details th, table.woocommerce-table--customer-details td {
    font-size: .9em;
    padding: 0.5em;
}
.order ul {
    margin: 0;
}
.order ul li{
	list-style: none;
}
.col-2 {
    width: auto;
}
.type-wrapper {
    width: auto;
    margin: 0 0 2em;
    min-height: 1px;
}
.subscription {
    padding: 0 0 1em;
    text-align: center;
    font-size: 1.1em;
}
#page .type-full{
	margin-top: 75px;
	position: relative !important;
}
.page-template-template-archivio .main{
	padding: 0 !important;
}
#desktop-cart{
	display: none;
}
#mobile-cart{
	display: table;
}
table.cart img{
	max-height: 100px;
}
.cart span.date-pub{
	margin-top: 0;
}
.cart .product-type{
	margin-top: .3em;
}
body.logged-in.woocommerce-account.woocommerce-page .article h1.post-title{
	margin-left: 0;
}
div.archive{
	margin: 2em auto 3em;
	padding: 0 !important;
	display: inline-block;
    width: 49.38% !important;
    vertical-align: top;
}
div.archive figure, div.archive h4, #archive div.archive .actions-wrap {
    width: 95%;
    max-width: 195px;
    box-sizing: border-box;
}
#archive div.archive .actions-wrap {
    position: relative !important;
}
#page .add-cart-btn{
	position: absolute !important;
}
.single-numeri #page .add-cart-btn{
	position: static !important;
}
.wpvp-popup td {
    display: block;
    margin: .5em 0 0 !important;
}
.popup-content .image-wrapper{
	float: left;
	padding-right: 5%;
}
.popup-content .text-wrapper {
    width: auto;
    margin: 0;
    display: block;
}
.popup-content .text-wrapper table.variations{
	width: auto;
}
.wpvp-popups-container .wpvp-popup .single_variation_wrap {
    min-height: 4em;
}
/* end woocommerce v2 */

@media screen and (max-width: 600px){
	#w-loginform:not(.opened) h3.sub-title:before {
		display: block;
		margin: 0 0 7px auto;
	}
	div#w-loginform{
	    padding-top: 5px;
	    top: 20px;
	}
	div#w-loginform.opened{
		background: #fff;
		width: 50%;
	}
	#w-loginform #loginform input{
	    width: 100%;
	    box-sizing: border-box;
	}
	#w-loginform.opened h3.sub-title{
		color: #003168;
	    padding: 0 7px;
	    text-align: left;
	}
	#w-loginform.opened h3.sub-title:after{
		float:right;
	}
	.cart_totals tr td {
	    width: 50%;
	}
}
@media screen and (max-width: 460px){
	#w-loginform h3.sub-title {
	    font-size: .6em;
	}
	#w-loginform:not(.opened) h3.sub-title:before{
	    margin: 0 7px 5px auto;
	}
}
@media screen and (max-width: 400px){
	div#top-social {
	    width: 300px;
	    height: 140px;
	    left: 0;
	    margin: auto;
	}
	div#top-social > * {
	    height: 90px !important;
	}
	div#branding {
	    width: auto;
	}
	#site-title a {
	    background-size: 90%;
	    background-position: center;
	}
}
@media screen and (max-width: 360px){
	#page {
	    padding: 0 5px;
	}
}