@media screen and ( max-width: 375px ) {

	.wrap {
		padding-left: 0;
		padding-right: 0;
	}

	ul.woocommerce-shipping-methods label[for="shipping_method_0_free_shipping1"] {
		display: block!important;
		margin-top: 0.4rem;
	}

	tr.woocommerce-shipping-totals.shipping > th, tr.cart-subtotal > th {
		left: 0!important;
		text-align: left!important;
	}
}

@media only screen and (max-width:416px) {
	.bag-img{
		top: 15px !important;
	}

	.woo_container{
		position: static;
	}

	.language-container .lang_sel_list_horizontal {
		top: 15px !important;
		right: 10px !important;
	}

	.woocommerce table.shop_table td.product-name .sku{
		font-size: 0.75rem;
	}
	.woocommerce table.shop_table td.product-name a{
		font-size: 0.8rem;
	}

}

@media only screen and (max-width:500px) {

	.woocommerce table.shop_table td.product-name .details{
		max-width: 130px;
	}

	.woocommerce table.shop_table tr:last-child td {
		margin-top: 2rem;
	}
	
	tr.order-total > td {
		margin-top: 0!important;
	}

}

@media only screen and (max-width:768px){
	.container-fluid.registration .col-sm-6.top-40 {
	    margin-top: -90px;
	}
	.container-fluid.edit_account .row.align-items-start, .container-fluid.registration .row.align-items-start{
		margin: 0;
	}
	.woocommerce #respond input#submit.alt:hover, .woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover, .woocommerce input.button.alt:hover, .woocommerce input.button:hover, .woocommerce #respond input#submit:hover, .woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover, form#login input[type="submit"]:hover, form#registration input[type="submit"]:hover, form#lostPasswordForm input[type="submit"]:hover, .container-fluid.registration .submit_button:hover, .container-fluid.edit_account .submit_button:hover{
		color: #fff !important;
	}
	form.overlay_form{
		background-color: #212120;
		width: 100%;
		color: #fff;
		position: absolute;
		left: unset;
		top: 135px;
		transform: unset;
		padding: 25px 50px;
	}

	.container-fluid.edit_account .submit_button, .container-fluid.edit_account .submit_button:hover{
		width: 100%;
	}

	div.content{
		padding-bottom: 10px !important;
	}

	tr.tax-total {
		position: absolute;
		left: 0px;
		top: 100px;
		font-size: 15px;
		width: 100%;
	}

	tr.tax-total > th {
		position: absolute;
		top: 0px;
		right: 35%;
		display: block !important;
	}

	td.IVA > span.woocommerce-Price-amount.amount {
		font-size: 12px !important;
		text-transform: uppercase;
		position: absolute;
		top: 0px;
		right: 0px;
		width: 100px;
		display: block !important;
	}

	tr.woocommerce-shipping-totals.shipping {
		top: -32px !important;
		position: absolute;
		width: 100%;
	}

	tr.woocommerce-shipping-totals.shipping > th, tr.woocommerce-shipping-totals.shipping > td {
		top: 0;
	}

	tr.order-total {
		top: 33px!important;
		position: absolute;
		width: 100%;
	}

	tr.order-total > td {
		margin: 0;
	}

	div.content-button{
		padding-top: 40px !important;
	}

	.container-fluid.edit_account .input-text, .container-fluid.registration .input-text, .container-fluid.registration .select{
		width: 100%;
		max-width: unset;
	}

	form.overlay_form label{
		color: #fff;
		text-align: center;
	}
	
	form.overlay_form a.close{
    	background: url(../../../images/shop/ics-close-white.png) no-repeat top right transparent;
	}
	
	form#login label, form#registration label, form#lostPasswordForm label {
		width: 100%;
		font-size: 14px;
	}

	form#login input#username, form#login input#password, form#lostPasswordForm input[type="email"], form#lostPasswordForm input[type="text"], form#registration input[type="email"], form#registration input[type="password"], form#registration input[type="text"]{
		width: 100%;
	}

	form#login input#password{
		margin-top: unset;
	}

    .container-fluid.edit_account, .container-fluid.registration{
    	width: 100%;  	
	}

	.container-fluid.registration .input-text, .container-fluid.registration .select{
		width: 100%;
	}

	.container-fluid.registration .submit_button, .container-fluid.registration .submit_button:hover {
		background: #212120;
		border-radius: 1px;
		border: 1px solid #fff;
		-webkit-border-radius: 1px;
		display: block;
		float: right;
		font-size: 14px;
		height: 29px;
		line-height: 29px;
		width: 45%;
		transition: unset;
		-webkit-transition: unset;
		font-weight: 300;
		padding: 0;
		letter-spacing: 1px;
	}

	.woocommerce h1.page_title{
		margin: 20px 0 20px;
	}

	.container-fluid.registration a#reset_registration_form{
		float: none;
		margin-right: unset;
	}

	.woocommerce-MyAccount-navigation{
		display: table;
	}

	.woocommerce-MyAccount-navigation ul {
		text-align: center;
	}

	.woocommerce-MyAccount-navigation ul li{
		border: none;
		display: inline-block;
		position: static;
		padding-right: 15px;
	}

	.woocommerce-MyAccount-navigation ul li a{
		letter-spacing: 2px;
	}

	.woocommerce-account .woocommerce-MyAccount-content{
		margin: 20px 0;
	}
	
	form.edit-account{
		padding: 0;
		background: none;
	}
	
	form.edit-account input[type="text"], form.edit-account input[type="tel"], form.edit-account input[type="email"]{
		background: #f8f8f7 !important;
	}

	form.edit-account .data.sx{
		float: none;
		width: 100%;
		background-color: #efefef;
		padding: 20px;
		margin: 0 auto;
	}

	form.edit-account .data.dx, form.edit-account button{
		float: none;
		width: 100%;
		background-color: #efefef;
		padding: 20px;
		margin: 20px auto;
	}
	
	form.edit-account button{
		max-width: 100% !important;
	}
	
	form.edit-account .data p:first-child{
		margin-bottom: 10px;
		font-weight: 600;
	}

	form.edit-account .data p, form.edit-account h3{
		line-height: 19px;
	}

	form.edit-account h3{
		display: none;
	}

	form.edit-account .data p label{
		line-height: 20px;
	}

	form.edit-account .data.sx a#show_edit_account{
		line-height: 20px;
		padding-left: 20px;
		margin-top: -5px;
		font-size: 10px;
	}

	.woocommerce form.woocommerce-EditAccountForm  .form-row input.input-text, .woocommerce form .form-row textarea{
		background: #fff !important;
		margin-bottom: 10px;
	}

	button.woocommerce-Button.button{
		width: 100%;
		max-width: unset !important;
	}

	.woocommerce-address-fields__field-wrapper{
		width: 100%;
	}

	.woocommerce-MyAccount-content .woocommerce-address-fields .form-row{
		max-width: 100%;
		width: 100%;
		height: 39px;
		margin: 0 20px 30px 0;
	}

	.woocommerce-MyAccount-content .woocommerce-address-fields .form-row label{
		max-width: 100% !important;
		width: 100%;
		text-align: center;
		line-height: 28px;
	}

	.woocommerce-MyAccount-content .woocommerce-address-fields .form-row input[type="email"], .woocommerce-MyAccount-content .woocommerce-address-fields .form-row input[type="text"], .woocommerce-MyAccount-content .woocommerce-address-fields .form-row input[type="tel"], .woocommerce-address-fields .form-row select{
		float: none;
		clear: both;
		max-width: 100% !important;
	}	

	.woocommerce-MyAccount-content .woocommerce-address-fields .select2-container{
		width: 100% !important;
	}

	.woocommerce-MyAccount-content .woocommerce-address-fields .form-row .select2-container--default .select2-selection--single .select2-selection__rendered, .select2-container--default .select2-selection--single{
		width: 100% !important;
		background: url(../../../images/shop/select-arrow.png) 98% 50% no-repeat #fff;
	}

	form.edit-account p.clear{
		margin-right: unset;
	}
	
	p#billing_address_2_field, p#shipping_address_2_field {
		margin: 0;
	}

	div.woocommerce-address-fields button{
		float: right;
	}

	form#login input[type="submit"], form#registration input[type="submit"], form#lostPasswordForm input[type="submit"]{
		width: 100%;
		margin-left: unset;
	}

	form#login .actions, form#lostPasswordForm .actions{
		width: 100%;
		margin-left: unset;
		text-align: center;
	}

	form#login .actions a, form#lostPasswordForm .actions a{
		color: #fff;
		font-size: 13px;
		float: none;
	}

	form#login .actions a:first-child{
		border-right: 1px solid #fff;
	}

	.col-1, .col-2 {
		max-width: 100%;
		background-color: #efefef !important;
		padding: 20px !important;
		margin: 0 auto;
	}

	.col-2{
		margin-top: 20px;
	}

	.title{
		padding: 0;
	}

	.checkbox-custom {
		display: none;
	}

	.list-item-label {
		color: #fff;
	}

	span.list-item-label::before {
		content: '';
		background: #f8f8f7;
		border: 1px solid #f8f8f7;
		display: block;
		width: 15px;
		height: 15px;
		margin-right: 10px;
		position: absolute;
		left: 0;
		top: 12px;
	}

	form.overlay_form label.ckbx{
		text-align: left;
	}

	.checkbox-custom-label {
		display: inline-block;
		position: relative;
		vertical-align: middle;
		margin-left: 20px;
		cursor: pointer;
		text-transform: none;
	}

	.list-item-label a {
		color: #fff !important;
	}

	.login_overlay, .registration_overlay{
		display: none;
	}
	
	.col-sm-12, .col-lg-3 {
		padding: 0 !important;
	}

	/* BAG */

	.woocommerce table.shop_table_responsive thead, .woocommerce-page table.shop_table_responsive thead{
		display: block !important;
	}

	.woocommerce table.shop_table thead tr{
		border-bottom: 1px solid #111;
		height: 30px;
		position: relative;
	}

	thead th{
		border-bottom: none;
	}

	.woocommerce table.shop_table th.product-name{
		position: absolute;
		left: 0;
		top: 0;
	}

	th.product-quantity, th.product-price{
		display: none;
	}

	th.product-subtotal{
		position: absolute;
		right: 75px;
		top: 0;
	}

	th.product-remove{
		position: absolute;
		top: 0;
		right: 0;
	}

	.woocommerce table.shop_table_responsive tr td::before, .woocommerce-page table.shop_table_responsive tr td::before{
		content: none;
	}

	.woocommerce table.shop_table td.product-name a img{
		display: none;
	}

	td.product-name, td.product-quantity, td.product-subtotal, td.product-remove{
		position: relative;
	}

	td.product-price{
		display: none !important;
	}

	form.woocommerce-cart-form{
		margin-top: 15px;
	}

	.woocommerce table.shop_table td.product-name .details{
		position: absolute;
		top: 20px;
		left: 0;
		margin-top: unset;
		float: unset;
	}

	td.product-quantity div.quantity{
		position: absolute;
		top: 43px;
		left: 0;		
	}

	td.product-quantity div.quantity::before{
		content: 'QTY';
		padding-right: 3px;
		letter-spacing: 2px;
	}

	td.product-subtotal span.woocommerce-Price-amount.amount{
		position: absolute;
		right: 75px;
		top: -10px;
		text-align: right;
	}

	td.product-remove a{
		position: absolute;
		right: 15px;
		top: -38px;
	}

	.woocommerce table.woocommerce-cart-form__contents tr td{
		padding:  20px 0 10px;
	}

	table.shop_table tr td.hidden{
		display: none;
	}

	.woocommerce table.shop_table_responsive tr:nth-child(2n) td, .woocommerce-page table.shop_table_responsive tr:nth-child(2n) td{
		background-color: unset;
	}

	.woocommerce .cart-collaterals, .woocommerce-page .cart-collaterals {
		position: relative;
		margin-top: -270px; 
	}

	div.cart-collaterals table tr.cart-subtotal th, div.cart-collaterals table tr.cart-subtotal td{
		font-size: 15px;
		text-transform: uppercase;
		position: absolute;
		top: 0px;
		right: 35%;
		width: auto !important;
		display: block  !important;
	}

	 div.cart-collaterals table tr.cart-subtotal td{
		right: 0;
	 }

	 div.cart-collaterals table tr.cart-discount th,div.cart-collaterals table tr.cart-discount td{
		font-size: 15px;
		text-transform: uppercase;
		position: absolute;
		top: 33px;
		right: 35%;
		width: auto !important;
		display: block  !important;
	}

	div.cart-collaterals table tr.cart-discount td{
		right: 0;
	}

	div.cart-collaterals table tr.shipping th, div.cart-collaterals table tr.shipping td{
		font-size: 15px;
		text-transform: uppercase;
		position: absolute;
		top: 66px;
		right: 35%;
		width: auto !important;
		display: block  !important;
	}

	div.cart-collaterals table tr.shipping td{
		right: 0;
		text-transform: none;
	}

	div.cart-collaterals table tr.order-total th, div.cart-collaterals table tr.order-total td{
		font-size: 15px;
		text-transform: uppercase;
		position: absolute;
		top: 99px;
		right: 35%;
		width: auto !important;
		display: block  !important;
		font-weight: 600 !important;
	}

	div.cart-collaterals table tr.order-total td{
		right: 0;
		margin: 0;
	}

	a.shipping-calculator-button{
		display: none;
	}

	#ppcp-messages {
		position: relative;
		top: 158px;
	}

	div.coupon{
		position: relative;
		margin-top: 130px;
		z-index: 100;
		top: 65px;
		margin-left: auto;
		margin-right: auto;
	}

	.woocommerce .cart-collaterals, .woocommerce-page .cart-collaterals{
		width: 100%;
	}

	.woocommerce-cart .cart-collaterals .cart_totals table{
		width: 100%;
	}

	#add_payment_method .cart-collaterals .cart_totals tr td, #add_payment_method .cart-collaterals .cart_totals tr th, .woocommerce-cart .cart-collaterals .cart_totals tr td, .woocommerce-cart .cart-collaterals .cart_totals tr th, .woocommerce-checkout .cart-collaterals .cart_totals tr td, .woocommerce-checkout .cart-collaterals .cart_totals tr th{
		border: none;
	}

	.woocommerce table.shop_table .coupon{
		width: 270px;
		border-radius: 5px;
		background-color: #efefef;
		padding: 10px;
	}

	.woocommerce-cart table.cart td.actions .coupon .input-text{
		width: 75%;
		max-width: unset;
		height: 40px;
		border-radius: 5px;
		background-color: #fff !important;
	}

	.woocommerce table.cart td.actions .coupon .input-text+.button{
		padding: 5px;
		position: absolute;
		right: 10px;
		width: 45px;
		height: 40px;
		border-radius: 5px;
	}

	.woocommerce-cart .wc-proceed-to-checkout a.button, .woocommerce-cart .wc-proceed-to-checkout a.button:hover{
		margin: 260px 0 0;
		width: 100%;
		border-radius: 5px;
		height: 40px;
		padding: 5px;
	}
	.woocommerce-cart .wc-proceed-to-checkout a.button:hover{
		color: #212120 !important;
	}
	section.shipping-calculator-form{
		position: static;
	}

	form.woocommerce-shipping-calculator {
		display: none;
	}

	form.woocommerce-shipping-calculator p, form.woocommerce-shipping-calculator p select{
		width: 100% !important;
		position: static !important;
	}

	form.checkout.woocommerce-checkout{
		width: 100%;
		margin: 0 auto;
	}
	
	table.woocommerce-checkout-review-order-table{
		display: none !important;
	}

	form.checkout .select2-container--default .select2-selection--single{
		width: 100% !important;
    	background: url(../../../images/shop/select-arrow.png) 98% 50% no-repeat #fff;
	}

	.woocommerce form.checkout .form-row input.input-text, .woocommerce form.checkout .form-row textarea{
		background: #fff !important;
	}

	form.checkout .col-2{
		float: right !important;
	}

	.woocommerce .colonna1{
		padding-bottom: 0;
	}

	h3#order_review_heading, h3.checkout{
		padding: 0;
	}
	
	div.place-order{
		position: relative;
	}

	div.woocommerce-shipping-fields label.woocommerce-form__label.woocommerce-form__label-for-checkbox.checkbox{
		padding-bottom: 0;
	}

	label.woocommerce-form__label.woocommerce-form__label-for-checkbox.checkbox{
		padding-bottom: 30px;
	}

	.woocommerce #payment #place_order, .woocommerce-page #payment #place_order{
		bottom: -15px;
	}
	.woocommerce-page #payment #place_order:hover{
		color: #212120 !important;
	}
	.woocommerce-MyAccount-content .woocommerce-address-fields .select2-container{
		width: 100% !important;
		overflow: hidden;
		float: right;
		height: 28px !important;
		line-height: 28px !important;    
	}

	.woocommerce div.product h1.product_title{
		text-align: center;
	}

	.woocommerce div.product p.price{
		text-align: center;
	}

	.woocommerce div.product form.cart .variations td{
		width: 50%;
	}

	.woocommerce div.product form.cart .variations td.label{
		text-align: right;
		padding-right: 15px;
	}

	table.variations tr {
		border-bottom: none;
	}

	.woocommerce div.product form.cart .variations .inner_value{
		height: 30px;
		margin-top: 3px;
		border-radius: 5px;
		background: url(../../../images/shop/select-arrow.png) 95% 65% no-repeat #f8f8f7;
	}


	.woocommerce div.product form.cart div.quantity{
		/* width: 100%; */
		background: none;
		margin: 5px 0 0 0;
		left: 50%;
		position: relative;
		transform: translateX(-58%);
	}


	.woocommerce div.product form.cart div.quantity:before{
		width: 100px !important;
		text-align: right;
		padding-right: 15px;
	}

	.woocommerce div.product form.cart select{
		width: 75px !important;
		background: url(../../../images/shop/select-arrow.png) 95% 40% no-repeat #f8f8f7 !important;
		border-radius: 5px !important;
	}

	.woocommerce-variation-price{
		width: 100%;
		padding-top: 18px;
		text-align: center;
	}

	div.single_variation_wrap span.price::before{
		content: 'PREZZO FINALE';
		padding-right: 5px;
	}

	.woocommerce div.product div.images.woocommerce-product-gallery{
		padding: 0 25px;
	}

	.woocommerce .woocommerce-breadcrumb{
		padding-left: 25px;
	}

	.woocommerce div.product form.cart .button{
		border-radius: 5px;
		height: 35px;
		position: relative;
		width: 30%;
		left: 50%;
		transform: translateX(-50%)
	}

	div.label-sale{
		text-align: center;
	}

	.woocommerce div.product .woocommerce-tabs ul.tabs.wc-tabs li{
		width: 100%;
		border-bottom: 1px solid #212120;
		text-align: center;
		padding: 5px 0;
	}

	.woocommerce-page div.product .woocommerce-tabs{
		width: 100%;
		float: none;
		padding: 0 25px;
	}

	.woocommerce div.product .woocommerce-tabs ul.tabs{
		width: 100%;
	}

	.woocommerce div.product .woocommerce-tabs ul.tabs li.active a, .woocommerce div.product .woocommerce-tabs ul.tabs li a:hover{
		color: #000
	}

	ul.tabs li.active a::after, ul.tabs li a::after {
		content: '-';
		position: absolute;
		right: 0;
		font-size: 18px;
		top: 0;
	}

	ul.tabs li a::after {
		content: '+';
	}

	.woocommerce div.product .out-of-stock {
		margin-left: unset;
	}

	.woocommerce-variation-availability {
		position: absolute;
		top: 180px;
		left: 30%;
		width: 40%;
		text-align: center;
	}

	.success-box{
		width: 100%;
		margin: 20px auto 0px;
		text-align: center;
	}

	div.success-box-text{
		border-bottom: 1px solid #000;
		border-top: 1px solid #000;
		padding-top: 15px;
	}

	.success-box .controls{
		margin-top: 30px;
	}

	.success-box .controls a.continue, .success-box .controls a.exit {
		width: 46%;
		height: 35px;
		border-radius: 5px;
		padding: 5px;
	}

	.language-container .lang_sel_list_horizontal {
		top: 10px;
		right: 25px;
	}

	.woo_container{
		left: 55px;
		top: 20px;
		right: unset;
	}

	.not-mobile{
		display: none;
	}

	.only-mobile{
		display: block;
	}

	.bag-img{
		width: 25px;
		height: 25px;
		position: absolute;
		/*right: 100px;
		top: 10px;*/
		top: 10px;
		right: 102px;
	}
	.wpml-ls-legacy-list-horizontal .wpml-ls-item{
		margin: 11px 0 0 0;
	}

	.cart-contents-count{
		position: absolute;
		top: 9px;
		left: 0;
		width: 22px;
		height: 25px;
		text-align: center;
		color: #000;
		font-size: 10px;
	}

	.woocommerce .cart-collaterals, .woocommerce-page .cart-collaterals{
		height: unset;
	}

	/* END BAG */
}

@media only screen and (min-width:768px) and (max-width:1130px){
	form.overlay_form{
		padding: 25px 50px;
	}
	
	.container-fluid.edit_account{
		width: 650px;
	}

	.woocommerce-MyAccount-content .woocommerce-address-fields .form-row{
		max-width: 100%;
		width: 100%;
		height: 39px;
		margin: 0 20px 30px 0;
	}

	.woocommerce-MyAccount-content .woocommerce-address-fields .form-row label{
		max-width: 100% !important;
		width: 100%;
		text-align: center;
		line-height: 28px;
	}

	.woocommerce-MyAccount-content .woocommerce-address-fields .form-row input[type="email"], .woocommerce-MyAccount-content .woocommerce-address-fields .form-row input[type="text"], .woocommerce-MyAccount-content .woocommerce-address-fields .form-row input[type="tel"], .woocommerce-address-fields .form-row select{
		float: none;
		clear: both;
		max-width: 100% !important;
	}

	.woocommerce-MyAccount-content .woocommerce-address-fields .form-row .select2-container--default .select2-selection--single .select2-selection__rendered, .select2-container--default .select2-selection--single{
		width: 100% !important;
		background: url(../../../images/shop/select-arrow.png) 98% 50% no-repeat #fff;
	}

	.woocommerce-MyAccount-content .woocommerce-address-fields .select2-container{
		width: 100% !important;
	}

	form.edit-account p.clear{
		margin-right: unset;
	}

	.woocommerce-MyAccount-navigation{
		display: table;
	}

	.woocommerce-MyAccount-navigation ul {
		text-align: center;
	}

	.woocommerce-MyAccount-navigation ul li{
		border: none;
		display: inline-block;
		position: static;
		padding-right: 15px;
	}

	.woocommerce-MyAccount-navigation ul li a{
		letter-spacing: 2px;
	}

	form#login .actions, form#lostPasswordForm .actions{
		width: 100%;
		margin-left: unset;
		text-align: center;
	}

	form#login .actions a, form#lostPasswordForm .actions a{
		color: #fff;
		font-size: 13px;
		float: none;
	}

	form#login .actions a:first-child{
		border-right: 1px solid #fff;
	}

	form#login input#password{
		margin-top: unset;
	}

	form.edit-account .data.sx a#show_edit_account{
		line-height: 20px;
		padding-left: 20px;
		margin-top: -5px;
	}

	.col-1, .col-2 {
		max-width: 100%;
		background-color: #efefef;
		padding: 20px !important;
		margin: 0 auto;
	}
	
	.title{
		padding: 0;
	}

	.woocommerce-MyAccount-content .woocommerce-address-fields .select2-container{
		width: 100% !important;
		overflow: hidden;
		float: right;
		height: 28px !important;
		line-height: 28px !important;    
	}

	div.coupon {
		position: relative;
		top: 280px;
	}
}