/*
Theme Name: Impreza Child
Template: Impreza
Version: 1.0
Author:	UpSolution
Theme URI: http://impreza.us-themes.com/
Author URI: http://us-themes.com/
*/

/*Add your own styles here:*/


@view-transition {
  	navigation: auto;
}
:root {
	--pl-orange: #f05f21;
	--pl-lightblue: #009ee0;
	/*--pl-darkblue: #035b93;*/
	--pl-darkblue: #003B62;
	--pl-black: #2E3A45;
}
.fs-22, .fs-22 :is(h2, h3) {
	font-size: 22px;
	margin-bottom: 15px;
}
.fs-4rem, .fs-4rem :is(h2, h3) {
	font-size: 4rem;
}


.fs-2rem, .fs-2rem :is(h2, h3) {
	font-size: 2rem;
}
.fs-1_8, .fs-1_8 :is(h2, h3) {
	font-size: 1.875rem;
}
.fs-1_5, .fs-1_5 :is(h2, h3) {
	font-size: 1.575rem;
}
.fw600, .fw600 :is(h1, h2, h3) { font-weight: 600; }


.pb-50 { padding-bottom: 50px;}

.pt-30 { padding-top: 30px; }
.pb-30 { padding-bottom: 30px; }
.pb-15 { padding-bottom: 15px; }

.txt-uppercase, .txt-uppercase :is(h2, h3) { 
	text-transform: uppercase; 
	font-weight: 600; 
}
.txt-lightblue, .txt-lightblue :is(h1, h2, h3, p) {
	color: var(--pl-lightblue);
}



.txt-black, .txt-black :is(h1, h2, h3, p) {
	color: var(--pl-black);
}
.section-full h2 strong {
	color: var(--pl-lightblue);
	font-weight: 500;
}

.l-section.height_medium {
	overflow: hidden;
}


.wrapper_settori {
  overflow: hidden;
  position: relative;
	min-height: 100vh;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}

.slider-arrow {
  display: none;
}
.wrapper_famiglia {
	display: flex;
    justify-content: space-between;
}
.horizontal-sliders {
  display: flex;
  flex-wrap: nowrap;
  width: 100%;   
	overflow: hidden;
	position: relative;
}

.slide {
  position: relative;
  flex: 0 0 100vw;
  height: auto;
}
h2.sottoclassi_title {
	font-size: 1.2rem;
	color: var(--pl-black);
}

.slide img.singleS {
  width: 100%;
  height: 100%;
  object-fit: cover; 
  display: block;
}
#document_type_field .radio {
	display: inline-flex;
	margin-right: 20px;
}
.shop_table.shop_table_responsive.cart.woocommerce-cart-form__contents .product-quantity > .quantity{
	justify-content: center;
}
.woocommerce .shop_table thead th {
	opacity: 1;
	padding-bottom: 20px;
}
.woocommerce .shop_table td {
	padding: 1rem 1rem;
}
#document_type_field .optional { display: none; }
.content_settore {
	max-width: 500px;
    background: #ffffffed;
    padding: 60px 2.5rem 60px 2rem;
    height: 100%;
    align-items: center;
    display: flex;
    backdrop-filter: blur(12px);
}
.w-section {
	position: absolute;
    z-index: 9;
    transform: translate(0%, 0%) !important;
    max-width: 1852px;
    margin: auto;
    width: 100%;
    left: 0;
    bottom: 0;
    height: 100%;
}
.wrap_single_settore h3 {
	font-size: 35px;
    line-height: 1.1;
    margin-bottom: 30px;
    font-weight: 600;
}
a.btn_orange.w-btn {
	padding-left: unset;
	padding-right: unset;
	z-index: 2;
	align-items: center;
	display: inline-flex;
}

a.white_btn.w-btn span {
	color: white !important;
}

a.btn_orange.w-btn span {
	color: var(--pl-black);
	/*text-transform: uppercase;*/
	font-weight: 500;
}
/*a.btn_orange.w-btn::before {
	content: "";
	left: 0;
	width: 0;
	height: 2px;
	background-color: var(--pl-orange);
	bottom: 6px;
	position: absolute;
	transition: 300ms;
	top: auto;
}
a.btn_orange.w-btn:hover::before {
	width: 100%;
	transition: 300ms;
}*/
a.btn_orange i {
	transform: rotate(45deg);
    color: var(--pl-orange);
	transition: 200ms;
	font-size: 20px;
}
a.btn_orange:hover span {
	transition-delay: 300ms; 
	transition: 200ms;
}
a.btn_orange:hover i {
	transform: rotate(0);
	transition: 200ms;
	transition-delay: 300ms; 
}
a.btn_orange_radius:not(.blackButton):hover {
	background-color: var(--pl-orange) !important;
}
a.btn_orange_radius.blackButton:hover,
a.btn_orange_radius.blackButton {
	background-color: var(--pl-black);
}

a.btn_orange_radius.blackButton i {
	background-color: var(--pl-orange);
	color: var(--pl-black);
}
.btn_add_to_cart form button[type=submit]:not(.w-btn).single_add_to_cart_button.button:hover {
	color: white !important;
}
.btn_add_to_cart .quantity {
	height: 58px;
	gap: unset;
}
.btn_add_to_cart .quantity .qty {
	min-height: 58px;
	border-radius: unset;
	padding-left: unset;
}
.imn_add input[type="number"].qty::-webkit-outer-spin-button,
.imn_add input[type="number"].qty::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}
input[type="number"].qty {
	-moz-appearance: textfield;
	appearance: textfield;
}
.imn_add {
	display: flex;
	gap: 12px;
}
.btn_add_to_cart .quantity .minus {
	border-radius: 50px 0 0 50px;
    min-width: 50px;
	height: 58px;
    border: unset;
	background-color: #f2f4f7;
}
.btn_add_to_cart .quantity .plus {
	border-radius: 0 50px 50px 0;
    min-width: 50px;
	height: 58px;
    border: unset;
	background-color: #f2f4f7;
}
.checkout_coupon.woocommerce-form-coupon [name="coupon_code"],
.checkout_coupon.woocommerce-form-coupon button,
.woocommerce-form-register button[type="submit"] {
	border-radius: 50px;
}
:is(a.btn_black, a.btn_black:hover) {
	background-color: var(--pl-black);
	max-height: 58px;
    display: inline-flex;
    align-items: center;
    height: 58px;
	border-radius: 50px;
	color: white;
	padding: 1.0em 2.0em;
	font-weight: 500;
}
form.woocommerce-form-login .woocommerce-button.button.woocommerce-form-login__submit:hover,
button[type=submit]:not(.w-btn).button_orange:hover > span {
	color: white !important;
}
.woocommerce-button.button.woocommerce-form-login__submit {
	width: 100%;
	justify-content: center;
}
.login .lost_password {
	width: 100%;
	text-align: center;
}
.woocommerce-LostPassword.lost_password {
	justify-content: center;
    display: flex;
    margin: unset;
}
.wrapper_coupon_update_cart .col-half .button,
.wrapper_coupon_update_cart .coupon .button {
	max-height: 58px;
	display: inline-flex;
	align-items: center;
	height: 58px;
	border-radius: 50px;
	padding: 1.0em 2.0em;
	font-weight: 500;

}
.checkout-button.button.alt.wc-forward,
.woocommerce-mini-cart__buttons.buttons .button.wc-forward {
	width: 100%;
	justify-content: center;
}
.wc-proceed-to-checkout > .checkout-button.button.alt.wc-forward:hover,
.woocommerce-mini-cart__buttons.buttons .button.checkout.wc-forward:hover {
	color: white !important;
}

.woocommerce-mini-cart__buttons.buttons .button.checkout.wc-forward {
	display: none !important;
}
.woocommerce-ResetPassword button.woocommerce-Button {
	justify-content: center;
}
.woocommerce-ResetPassword button.woocommerce-Button,
.woocommerce-mini-cart__buttons.buttons .button.wc-forward:not(.checkout),
.place-order .button:is(.alt,.checkout,.add_to_cart_button)[name="woocommerce_checkout_place_order"],
.place-order .button:is(.alt,.checkout,.add_to_cart_button)[name="woocommerce_checkout_place_order"]:hover,
.checkout-button.button.alt.wc-forward,
.woocommerce-mini-cart__buttons.buttons .button.checkout.wc-forward,
.woocommerce-button.button.woocommerce-form-login__submit,
button[type=submit]:not(.w-btn).button_orange,
.btn_add_to_cart form button.single_add_to_cart_button.button {
	background-color: var(--pl-orange) !important;
	max-height: 58px;
    display: inline-flex;
    align-items: center;
    height: 58px;
	border-radius: 50px;
	color: white !important;
	padding: 1.0em 2.0em;
	font-weight: 500;
}
.wrapperForm button[type=submit]:not(.w-btn),
a.btn_orange_radius {
	max-height: 58px;
    display: inline-flex;
    align-items: center;
    background-color: var(--pl-orange);
    border-radius: 50px;
    padding-right: 1rem;
    gap: 5px;
}
.wrap_prices.price-prod {
	padding: 0 0 50px;
	font-size: 18px;
}
.wrapperForm button[type=submit]:not(.w-btn) {
	column-gap: 15px;
	margin-top: 30px !important;
}
.wrap_prices.has-discount.imn-discounts-hidden .price-listino,
.price-final {
	font-size: 1.8rem;
	font-weight: 600;
}
.discount_label {
	font-weight: 600;
	color: var(--pl-lightblue);
}

.wrapper_coupon_update_cart {
	display: grid;
    grid-template-columns: 1fr 1fr;
	margin-bottom: 50px;


	.coupon input.input-text {
		max-width: 250px;
        max-height: 58px;
        display: inline-flex;
        align-items: center;
        height: 58px;
        border-radius: 50px;
        padding: 1.0em 2.0em;
        font-weight: 500;
	}
}

.no-touch .wrapperForm button[type=submit]:not(.w-btn):hover,
.wrapperForm button[type=submit]:not(.w-btn),
a.btn_orange_radius span {
	color: white !important;
    font-weight: 600;
}
a.btn_orange_radius.noRotate i {
	transform: unset;
}
a.btn_orange_radius.noRotate:hover i {
	transform: rotate(0) scale(1.11);
}
.wrapperForm .wpcf7-response-output {
	margin-top: 20px;
}
.wrapperForm button[type=submit]:not(.w-btn) i,
a.btn_orange_radius i {
	background: var(--pl-black);
    width: 2rem;
    height: 2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50px;
    color: var(--pl-orange);
	transform: rotate(45deg);
	transition: 250ms;
}
.wrapperForm button[type=submit]:not(.w-btn):hover {
	background-color: var(--pl-orange) !important;
}

.wrapperForm button[type=submit]:not(.w-btn):hover i,
a.btn_orange_radius:hover i {
	transform: rotate(0) scale(1.11);
	transition: 250ms;
}
.lavoraConNoi textarea {
	margin-bottom: 20px;
}
.img_catalog a:hover img {
	transform: unset;
	transition: 300ms;
	transform: translateY(140px) rotate(-5deg);
}
.img_catalog img {
	max-width: 800px;
    transform: translateY(160px);
	transition: 300ms;
}
.w-counter.counterStyle {
	text-align: center;
    padding: 30px 40px;
    aspect-ratio: 5 / 4;
    align-items: flex-start;
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 300px;
    background: white;
	border-radius: 5px;
	position: relative;
    overflow: hidden;
}
.firstCounter.w-counter.counterStyle::before {
	content: url(assets/img/meta_leone.svg);
    position: absolute;
    z-index: 0;
    right: -2px;
    bottom: 0;
    width: 100px;
    opacity: 0.2;
}
.col_counter_azienda .vc_column-inner,
.col_counter .vc_column-inner {
	flex-wrap: wrap;
    display: flex;
    gap: 20px;
}


.counterStyle .w-counter-value {
	font-size: 4rem !important;
	font-weight: 600;
	font-family: "Satoshi", sans-serif;
}
.counterStyle .w-counter-title {
	text-align: left;
	font-weight: 600;
}
.colCatalogo.wpb_column {
    overflow: hidden;
}
.txtCatalogo h2,
.colCatalogo h2 {
	line-height: 1.2;
    text-transform: uppercase;
    font-size: 2.3rem;
	color: white;
	font-weight: 600;
}


.carousel_loghi .w-grid-item-h {
	display: flex;
	align-items: center;
}
.carousel_loghi .owl-nav button:hover {
	background-color: unset !important;
}
.animateButtonHeader {
  opacity: 0;
}
.menu_style ul.w-nav-list.level_2 {
	
    left: 0;
    justify-content: center;
	background: #f1f1f1;
}
.menu_style ul li {
	font-size: 15px;
}

.overlaySlider {
	position: absolute;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, rgb(56 56 56 / 70%) 0%, rgba(0, 0, 0, 0) 100%);
	z-index: 2;
}

.mil-scroll-hint {
	position: absolute;
    right: 2.5rem;
    top: 50%;
    transform: translateY(-50%);
    z-index: 3;
}
.mil-mouse {
	  position: relative;
	  border: solid .2rem var(--pl-orange);
	  height: 3rem;
	  width: 1.5rem;
	  border-radius: 3rem;
	  margin-bottom: 2rem;
	  -webkit-transition: 0.2s cubic-bezier(0,0,.3642,1);
	  transition: 0.2s cubic-bezier(0,0,.3642,1);
}
.mil-mouse::after {
	  content: "";
	  width: .2rem;
	  height: .8rem;
	  background-color: var(--pl-orange);
	  position: absolute;
	  top: .5rem;
	  left: 0.5rem;
	  border-radius: 1rem;
	  -webkit-animation: 1s wheel infinite ease-in-out;
	  animation: 1s wheel infinite ease-in-out;
	  -webkit-transition: 0.2s cubic-bezier(0,0,.3642,1);
	  transition: 0.2s cubic-bezier(0,0,.3642,1);
}
.mil-text {
	writing-mode: vertical-rl;
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
    text-align: center;
	color: #e2eeee;
}

.mil-scroll-hint:hover .mil-mouse:after {
	background-color: var(--pl-orange);
}
.mil-scroll-hint:hover .mil-mouse {
	border-color: var(--pl-orange);
}

@-webkit-keyframes wheel {
  0% {
    -webkit-transform:translateY(0);
    transform:translateY(0);
    height:.8rem;
  }
  50% {
    -webkit-transform:translateY(.5rem);
    transform:translateY(.5rem);
    height:1rem;
  }
  100% {
    -webkit-transform:translateY(0);
    transform:translateY(0);
    height:.8rem;
  }
}
@keyframes wheel {
  0% {
    -webkit-transform:translateY(0);
    transform:translateY(0);
    height:.8rem;
  }
  50% {
    -webkit-transform:translateY(.5rem);
    transform:translateY(.5rem);
    height:1rem;
  }
  100% {
    -webkit-transform:translateY(0);
    transform:translateY(0);
    height:.8rem;
  }
}


.titleFooter p {
	text-transform: uppercase;
	padding-bottom: 30px;
}
#page-footer :is(p, p a, p strong) {
	color: white;
	font-family: "Satoshi", sans-serif;
}
#page-footer .wpb_text_column:not(.titleFooter) p strong {
	font-weight: 400;
}
#page-footer .wpb_text_column:not(.titleFooter) p {
	padding-bottom: 20px;
	margin-bottom: unset;
}
#page-footer .wpb_text_column:not(.titleFooter) p a,
#page-footer .wpb_text_column:not(.titleFooter) p {
	color: #ffffff7a;
}
#page-footer .wpb_text_column:not(.titleFooter) p a:hover {
	color: white;
}
#page-footer img {
	max-width: 300px;
}

.social-icons .w-socials-list {
	display: inline-flex;
	gap: 15px;
}

.social-icons i {
	font-size: 1.2rem;
	color: white;
}
.lastRow .vc_column-inner {
	display: flex;
	justify-content: space-between;
}
.section_header > .l-section-h {
	padding-top: unset !important;
}
#page-header:not(.sticky) .w-search-form {
	left: -2.5rem;
	width: calc(100% + 5rem);
}
.p-0 p {
	padding-bottom: unset !important;
}
.br_style.g-breadcrumbs .g-breadcrumbs-item span {
	color: white;
}
.br_style.g-breadcrumbs .g-breadcrumbs-item:not(:last-child) {
	padding: 3px 12px;
    background: #003b626e;
    font-size: 13px;
    border-radius: 50px;
}
.br_style.g-breadcrumbs .g-breadcrumbs-item:last-child{
	padding: 3px 12px;
    background: var(--pl-lightblue);
    font-size: 13px;
    border-radius: 50px;
}
.fullYear {
	flex: 0 0 50vw;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    padding: 2rem 5vw;
    box-sizing: border-box;
}
.wrapperTimeline {
	width: 500%;
    height: 100%;
    display: flex;
    flex-wrap: nowrap;
	gap: 5rem;
}
.wrapperTimeline,
.final {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 80vh;
}

@media (max-width: 768px) {
  .wrapperTimeline {
    width: 100%;
    flex-direction: column;
    flex-wrap: wrap;
    height: auto;
    min-height: unset;
    gap: 3.2rem;
    align-items: stretch;
  }
  .singleYear {
    min-width: unset !important;
    max-width: 100% !important;
    width: 100% !important;
  }
  
}

.singleYear img {
	width: 100%;
}


.textTimeline h3 {
	font-size: 3rem;
	font-weight: 600;
	color:var(--pl-lightblue);
}
.textTimeline p {
    margin-bottom: 30px;
    font-size: 1.2rem;
}
.col-contacts p.w-iconbox-title {
	font-weight: 600;
    text-transform: uppercase;
    font-family: "Satoshi";
    padding-bottom: unset;
	margin-bottom: 2px;
}
.col-contacts .w-iconbox-text :is(p a, p) {
	color: #70767b;
	margin-bottom: 3px;
}
.col-contacts .w-iconbox-text p a:hover {
	color: var(--pl-orange);
}
.col-contacts .w-iconbox {
	margin-bottom: 30px;
}
.col-contacts .w-iconbox-icon i {
	color: white;
}
.col-contacts .w-iconbox-icon {
	background: var(--pl-lightblue);
    min-width: 50px;
    font-size: 22px !important;
    height: 50px;
    border-radius: 50px;
}
.row-two-col .col-80 {
	width: 80%;
}
.row-two-col .col-20 {
	width: 20%;
}
.row-two-col,
.wrapperForm .rows p {
	display: flex;
	column-gap: 20px;
}
.wrapperForm .rows p span {
	width: 100%;
}
.wrapperForm input:not([type="checkbox"]) {
	margin-bottom: 15px;
}
.wrapperForm .wpcf7-acceptance span {
	font-size: 14px;
}
#btn-CvUpload,
.row-two-col input[name="fileNameDisabled"],
.wrapperForm p textarea,
.wrapperForm .rows p input {
	font-size: 14px;
	min-height: 65px;
	padding: 0.5rem 2rem;
}
.lavoraConNoi :is(p input, p input:hover, p textarea)  {
	background: transparent;
    border: solid 2px #ffffff29;
    color: white;
}
.lavoraConNoi :is(p input:focus, p textarea:focus)  {
	border-color: white;
	background: transparent;
}
.lavoraConNoi .wpcf7-acceptance .wpcf7-list-item-label {
	color: white;
}
	
.catalog_tabs img {
	width: auto;
    height: 320px;
	transition: transform 150ms ease; 
}
.catalog_tabs .w-iconbox-meta {
	margin-top: 20px;
}

.catalog_tabs h3 {
	font-family: 'Satoshi', sans-serif;
    font-size: 1.3rem;
    font-weight: 600;
    color: var(--pl-black);
}

.catalog_tabs button.w-tabs-item.active {
	& .w-tabs-item-title {
		color: white;
	}
	
	background-color: var(--pl-black);
	border-color: var(--pl-black);
}
.catalog_tabs button.w-tabs-item {
	border: solid 2px #e7e7e7;
    padding: 0.5em 2em !important;
    border-radius: 50px;
    text-transform: uppercase;
    font-weight: 600;
    font-family: 'Satoshi', sans-serif;
    background: #e7e7e7;
}
.catalog_tabs ul {
	list-style-type: none;
	margin-left: unset;
}
.catalog_tabs ul li {
	&:not(:last-child) {
		border-bottom: solid 2px #80808078;
	}
	text-transform: uppercase;
    padding: 12px 0;
    margin: unset;
}

.catalog_tabs ul li a {
	&:hover, i{
		color: var(--pl-orange);
	}
	
	width: 100%;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
	color: var(--pl-black);
}
.catalog_tabs .w-tabs-list-h {
	border-bottom: solid 1px #e5e7eb;
    padding-bottom: 68px;
}
.catalog_tabs .w-tabs-list-h:before {
	content: "";
    position: absolute;
    left: 50%;
    bottom: -14px;
    width: 0px;
    height: 0px;
    border-style: solid;
    border-width: 0 30px 14px 30px;
    border-color: #f5191900 transparent #e5e7eb #9d3a3a00;
    transform: rotate(180deg);
}
.catalog_tabs .w-tabs-list-h:after {
	content: "";
    position: absolute;
    left: 50%;
    bottom: -13px;
    border-left: 23px solid rgba(0, 0, 0, 0);
    border-right: 23px solid rgba(0, 0, 0, 0);
    border-top: 14px solid #fff;
    width: 0px;
    height: 0px;
    border-style: solid;
    border-width: 0 30px 14px 30px;
    border-color: #f5191900 transparent #ffffff #9d3a3a00;
    transform: rotate(180deg);
}
.catalog_tabs .w-iconbox a:hover img {
	transform: scale(0.98);
	
}

@keyframes rotateText {
	0% {
		transform: translateX(0%);
	}
	100% {
		transform: translateX(-50%);
	}
}

.rotateText ul {
	display: flex;
    animation: rotateText 33s infinite linear;
    list-style-type: none;
    column-gap: 30px;
}
.list_text_brand ul li {
	font-size: 15px;
    margin-bottom: unset;
    gap: 10px;
    display: inline-flex;
    align-items: center;
}
.list_text_brand ul li i {
	font-weight: 500;
	color: var(--pl-lightblue);
}
.list_text_brand ul {
	
	list-style-type: none; 
}
.list_text_brand.cols ul {
	-webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2;
    column-gap: 20px;
}
.list_text_brand ul {
	margin-left: unset;
	list-style-type: none;
}
.w-nav-arrow:before {
	content: '\f067' !important;
	font-weight: 300;
}









@media (min-width: 1336px) {
	.sliderHeader picture {
		height: 80vh;
	}
	.singleYear:not(.section-full) {
		min-width: 600px;
	}
}
@media (max-width: 1335px){
	.singleYear:not(.section-full) {
		min-width: 400px;
		max-width: 400px;
	}
	.w-counter.counterStyle {
		margin-left: unset !important;
	}
	.colCatalogo {
		background-size: 115% !important; 
	}
}
@media (max-width: 1280px) {
	.slide img.singleS {
		aspect-ratio: 4 / 2;
	}
	.carousel_loghi .owl-carousel.navstyle_square>.owl-nav button {
		width: 2rem;
	}
}

#page-header .l-subheader-cell.at_right {
	min-width: fit-content;
}

/*START popup*/


.wrapperPopup p { 
    font-size: 15px;
    line-height: 1.2;
}
.row-popup {
	display: flex;
	background: white;
}

.closeBtn {
    background: var(--pl-black);
    display: flex;
    align-items: center;
	width: 50px;
    min-width: 50px;
    align-items: center;
    justify-content: center;
}
.wrapperPopup.open .closeBtn i {
	transition: 350ms;
	transform: rotate(0);
}
.closeBtn i { 
	transition: 350ms;
	color: var(--pl-orange);
	font-size: 12px;
	transform: rotate(180deg);
}
.chiudi {
	display: flex;
	gap: 10px;
	transform: rotate(-90deg);
	align-items: center;
}
.closeBtn .txtS {
    color: white;
	cursor: pointer;
}
.colText a i { transform: rotate(45deg); }
.colText a {
	color: initial;
}

/*END popup*/

.woocommerce-mini-cart-item .woocommerce-Price-amount.amount bdi {
	font-weight: 600;
    color: var(--pl-darkblue);
    margin-left: 5px;
}
.list_categories {
	list-style-type: none;
    display: flex;
    flex-wrap: wrap;
    margin: unset;
	justify-content: space-evenly;
}
.list_categories li img { 
	mix-blend-mode: multiply; 
	min-width: 120px;
}
.list_categories li {
	width: calc((100% - ((8 - 1) * 20px)) / 8);
	text-align: center;
	display: flex;
	min-width: fit-content;
	justify-content: center;
}
.list_categories li a {
	display: block;
}

.list_categories li p {
	line-height: 1;
    text-align: center;
}
.clean_link a.w-nav-anchor.level_2,
.list_categories .w-nav-anchor.level_2 { display: none; }
.list_categories li a:hover p { color: var(--pl-orange); }


.logo_brand img {
	max-width: 160px;
}

.special_row {
	position: relative;
    margin: 0 auto;
    width: 100%;
    max-width: var(--site-content-width, 1200px);
}
.col_triangle a {
	width:fit-content;
}
.wrap_row { position:relative; }
.logo_promo {
	max-width: 220px;
    max-height: 120px;
}
.maps-pl {
	text-align: center;
	padding: 120px 0;
}
.maps-pl svg {
	max-width: 500px;
}
.maps-pl svg path.cls-1:hover {
	fill: var(--pl-lightblue);
}

.sottoclassi_wrapper ul {
	list-style-type: none;
	margin-left: unset;
	display: flex;
	flex-wrap: wrap;
	column-gap: 10px;
}
.sottoclassi_wrapper ul li img {
	mix-blend-mode: multiply;
}
.sottoclassi_wrapper ul li a {
	display: flex;
	align-items: center;
	gap: 12px;
	width: 100%;
}
.imn-famiglie-grid {
	display: grid;
    gap: 20px; /* spazio tra le colonne */
}

.imn-famiglie-grid li a {
	color: initial;
	display: flex;
    align-items: center;
    gap: 15px;
	justify-content: space-between;
}
.imn-famiglie-grid li span {
	align-items: center;
    display: flex;
    gap: 15px;
}
.imn-famiglie-grid li {
	border-bottom: solid 1px #e0e0e0;
	padding: 0.5em 1.5em;
}
.wrap_single_fam img {
	mix-blend-mode: multiply;
	width: auto;
}
.wrap_single_fam {
	border-radius: .1875rem;
	padding: 20px 15px;
	border: 1px solid transparent;
	background-color: #f2f2f2	;
}
.pl-pagination {
	margin-top: 30px;
}
.imn-pagination {
	gap: 5px;
    display: inline-flex;
}
.wrap_single_fam:hover{
	border-color: #cdcdcd;
	background-color: #e7e7e7;	
}
.wrap_single_fam a {
	display: inline-table;
	width: -webkit-fill-available;
}
.title_fam {
	color: initial;
}
.w-33 {
	/*width: calc(100% / 3);*/
	width: 50%;
}
.w-66 {
	/*width: calc((100% / 3) * 2);*/
	width: 50%;
	text-align: center;
}
.w-66 img {
	max-height: 160px;
}
.wrap_single_fam span {
	display: flex;
	gap: 12px;
	align-items: center;
}
.sottoclassi_wrapper ul li {
	padding: 5px 15px;
	min-height: 112px;
	margin-bottom: 10px;
	width: min-content;
	border: 1px solid transparent;
    border-radius: .1875rem;
    background-color: #f2f2f2;
	display: flex;
	p { 
		font-size: 14px;
		color: #141414;
	}
}
.sottoclassi_wrapper ul li:hover {
	border-color: #cdcdcd;
    background-color: #e7e7e7;
}
.grid_products {
	flex-direction: column;
}
ul.products .product {
	border-bottom: solid 1px #e0e0e0;
    padding: 0.5em 1em;
}
ul.products .product:hover {
	background-color: #f2f2f2;
}
.stock_pl {
	margin-bottom: 20px;
	span {
		padding: 3px 12px;
		background: var(--pl-lightblue);
		font-size: 15px;
		color: white;
		border-radius: 50px;
	}
}

/*
.imn-products-grid li span {
	padding: 0.5em 1em;
}*/
body.single-product .breadcrumbs.custom_breadcrumb li {
  max-width: 190px;        /* larghezza massima prima di troncare */
  white-space: nowrap;     /* impedisce il testo di andare a capo */
  overflow: hidden;        /* nasconde il testo in eccesso */
  text-overflow: ellipsis; /* aggiunge i ... */
  display: inline-block; 
}
.max-w-60 {
	display: block;
	text-align: center;
    line-height: 1;
}
.prod_slug {
	min-width: 90px;
}
.lable_stock {
	font-size: 0.8em;
}
.imn-products-grid li {
    display: flex;
    align-items: center;
}
.imn-products-grid li > a {
    flex: 1;
}
.prod_add_cart {
    min-width: 130px;
    flex-shrink: 0;
    display: flex;
    gap: 8px;
    align-items: center;
    justify-content: center;
}
.imn-products-grid li a {

	display: flex;
    align-items: center;
	h2 {
		font-size: 14px;
	}
	
	span {
		
		font-size: 14px;	
	}
}
.sottoclassi_wrapper {
	padding-bottom: 50px;
}
.imn-documents-detail__meta dt {
	font-weight: 600;
	margin-top: 12px;
}
.slider-item-helper .slider-container>.wrap_single_fam {
	align-items: flex-start;
    flex-direction: column;
    justify-content: space-between;
}
.single_fam_acc > a {
	height: 100%;
	display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.wrapper_filters {
	display: flex;
    flex-wrap: wrap;
    opacity: 1;
    row-gap: 23px;
    column-gap: 23px;
	label {
		font-size: 15px;
	}
}
.imn-dt-filters {
	padding-bottom: 30px;
}
.buttons_filters {
	font-size: 15px;
	padding-top: 23px;
}
.imn-dt-filters .btn_filter {
    border-radius: 50px;
	min-height: var(--inputs-height, 2em);
    padding: 0 2em;
}
.update_password_imn > button[type="submit"],
.woocommerce-address-fields button[name="save_address"],
.imn-documents-form__field.imn-documents-form__field--submit [type=submit]:not(.w-btn):not(.button):hover,
.imn-documents-form__field.imn-documents-form__field--submit [type=submit]:not(.w-btn):not(.button),
.btn_open_filter {
	background-color: var(--pl-orange);
	border-radius: 50px;
    min-height: var(--inputs-height, 2em);
    padding: 0 2em;
	:is(i, span) {
		color: white;
	}
	color: white;
}
.btn_filter {
	background-color: var(--pl-orange);
    color: white;
}
.btn_reset {
	min-height: var(--inputs-height, 2em);
	background-color: transparent;
}
.btn_reset:hover {
	color: red;
}
.single-product .datitecnici__value {
	color: initial;
}
.single-product span.prod_slug {
	color: var(--pl-lightblue);
}
.datitecnici__value {
	width: 10%;
    
    text-align: center;
}

.testata-lista-products .datitecnici__value > span {
    writing-mode: sideways-lr;
    text-orientation: mixed;
    white-space: nowrap;
}
.testata-lista-products ul {
	display: flex;
    list-style-type: none;
    margin: unset;
    font-size: 14px;
	align-items: baseline;
	padding: 0 1em;
}
.testata-lista-products ul > li.prod_cols {
    flex: 1;
    display: flex;
    align-items: baseline;
}
.testata-lista-products ul .prod_cols > span {
    padding: 0.5em 0;
}
.testata-lista-products ul > li.prod_add_cart {
    padding: 0.5em 0;
}
.testata-lista-products ul > li.prod_prezzo,
.testata-lista-products ul > li.prod_sconto,
.testata-lista-products ul > li.prod_avail {
    padding: 0.5em 0;
}
.prod_prezzo {
    min-width: 90px;
    text-align: right;
    white-space: nowrap;
    flex-shrink: 0;
	text-align: center;
	font-size: 14px;
}
.prod_sconto {
    min-width: 60px;
    text-align: center;
    white-space: nowrap;
    flex-shrink: 0;
	text-align: center;
	font-size: 14px;
}
li.prod_prezzo > span,
li.prod_sconto > span {
    writing-mode: sideways-lr;
    text-orientation: mixed;
    white-space: nowrap;
}
.prod_avail {
    min-width: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    padding: 0.5em 1em;
}
.woocommerce .products.imn-products-grid.columns-1 {
	margin: 0 0 2rem;
}

.three-column {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px
}
.two-column {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px
}
.single_filter {
	display: grid;
    grid-template-columns: 1fr;
    gap: 6px;
	min-width: calc((100% / 6) + (6px * 4));
}
.imgs_family_page {
	align-items: center;
    display: flex;
	img {
		max-width: 400px;
	}
}




.imn-error-field{
  border: 2px solid #e30000 !important;
  background: #fff7f7;
}


.custom_breadcrumb ol {
	list-style-type: none;
    margin: unset;
    display: flex;
}


[x-cloak] {
    display: none !important;
}

.prod_tabs_nav {
    display: flex;
    gap: 10px;
    margin-bottom: 20px;
    border-bottom: 1px solid #ddd;
}

.prod_tab_button {
    background: none;
    border: 0;
    padding: 10px 14px;
    cursor: pointer;
    font-weight: 600;
    border-bottom: 2px solid transparent;
}

.prod_tab_button.is-active {
    border-bottom-color: #000;
}

.prod_data_table {
    width: 100%;
    border-collapse: collapse;
}

.prod_data_table td {
    padding: 10px 12px;
    border-bottom: 1px solid #eee;
    vertical-align: top;
}

.prod_data_table td.label {
    font-weight: 600;
    width: 35%;
}
.prod_data td.value {
	text-align: right;
}
.wrapper_prod_accessori .accessorio_item {
    margin-bottom: 10px;
}
.single_add_to_cart input[type="number"] {
	max-height: 40px;
	min-height: 40px;
	max-width: 60px;
    padding-right: unset;
}

.single_add_to_cart button[type=submit]:not(.w-btn).single_button {
	padding: 10px;
    background: var(--pl-orange);
    color: white !important;
    border-radius: 5px;
	margin: unset;
}

/* Allineamento verticale delle celle */
.wrapper_prod_accessori table tbody td {
    vertical-align: middle;
}

/* Allineamento centrare per colonne numeriche */
.wrapper_prod_accessori table tbody td:nth-child(3),
.wrapper_prod_accessori table tbody td:nth-child(4),
.wrapper_prod_accessori table tbody td:nth-child(5),
.wrapper_prod_accessori table tbody td:nth-child(6) {
    text-align: center;
}

/* Altezza minima per le righe */
.wrapper_prod_accessori table tbody tr {
    min-height: 40px;
}

/* Allineamento del bottone al centro */
.wrapper_prod_accessori .ricambio_add_to_cart {
    justify-content: center;
}

.green_btn {
	width: 8px;
    height: 8px;
    background-color: #57e357;
    display: block;
    
    border-radius: 50%;
}
.red_btn {
	width: 8px;
    height: 8px;
    background-color:red;
    display: block;
    
    border-radius: 50%;
}
.w-html.account-icon {
	margin-right: 1rem;
	margin-left: 1rem;
	i {
		font-size: 20px;
	}
}
.imn-documents-form__field { 
	margin-bottom: 20px;
	select {
		margin-top: 10px;
	}
}
.imn-documents-form__field .imn-ym-select {
	display: flex;
	gap: 20px;
}

.imn-documents-pagination {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 16px;
}
.imn-documents-pagination__info {
	font-size: 0.875rem;
	color: #666;
}
.imn-documents-pagination__controls {
	display: flex;
	gap: 4px;
	flex-wrap: wrap;
}
#imn-discounts-dt-1_wrapper .dt-paging-button,
#imn-documents-dt_wrapper .dt-paging-button,
.imn-documents-pagination__btn {
	min-width: 34px;
	height: 34px;
	padding: 0 8px;
	border: 1px solid #ddd;
	background: #fff;
	border-radius: 4px;
	cursor: pointer;
	font-size: 0.875rem;
	line-height: 1;
	transition: background 0.15s, border-color 0.15s;
}
.imn-documents-pagination__btn:hover:not(:disabled) {
	background: #f0f0f0;
	border-color: #aaa;
}
#imn-discounts-dt-1_wrapper .dt-paging-button.current,
#imn-documents-dt_wrapper .dt-paging-button.current,
.imn-documents-pagination__btn.is-active {
	background: #333;
	color: #fff;
	border-color: #333;
}
.dt-paging > nav {
	gap: 4px;
	display: flex;
	flex-wrap: wrap;
}
.imn-documents-pagination__btn:disabled {
	opacity: 0.4;
	cursor: default;
}
#imn-discounts-dt-1_wrapper .dt-layout-row:last-child,
#imn-documents-dt_wrapper .dt-layout-row:last-child {
	display: flex;
    align-content: center;
    justify-content: space-between;
    margin-top: 15px;
	flex-wrap: wrap;
    gap: 10px;
}
.woocommerce-ResetPassword.lost_reset_password .woocommerce-Button.button {
	width: 100%;
	border-radius: 50px;
}
.imn-account__nav-btn {
	align-items: center;
	display: flex;
    min-width: fit-content;
}

.wrapper_categories {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    width: 100%;

	.single_cat {
		border-radius: .1875rem;
		border: 1px solid transparent;
		background-color: #f2f2f2;

		img {
			mix-blend-mode: multiply;
		}
	}
}
.wrapper_categories .single_cat:hover {
	border-color: #cdcdcd;
    background-color: #e7e7e7;
}
div.dt-container.dt-empty-footer .imn-products-table tbody>tr:last-child>* {
	border-bottom: unset;
}
table.dataTable thead>tr>th div.dt-column-header {
	display: block !important;
}

.woocommerce-form-login, 
.woocommerce-form-register,
 .woocommerce-form-coupon, 
.woocommerce .track_order, 
.woocommerce .lost_reset_password {
	box-shadow: unset;
}


/* Tablet: 2 colonne */
@media (max-width: 768px) {
    .wrapper_categories {
        grid-template-columns: repeat(1, 1fr);
    }
}

/* Mobile: 1 colonna */
@media (max-width: 480px) {
    .wrapper_categories {
        grid-template-columns: 1fr;
    }
}



@media(max-width:768px) {
	.two-column,
	.three-column {
		grid-template-columns: 1fr
	}
}

@media (max-width: 768px) {
	.wrapper_settori {
		min-height: unset;
		overflow: visible;
	}

	.horizontal-sliders {
		overflow-x: scroll;
		scroll-snap-type: x mandatory;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
	}

	.horizontal-sliders::-webkit-scrollbar {
		display: none;
	}

	.slide {
		scroll-snap-align: start;
	}

	.slide img.singleS {
		aspect-ratio: 4 / 3;
		height: auto;
	}

	.slider-arrow {
		display: flex;
		align-items: center;
		justify-content: center;
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		z-index: 10;
		width: 40px;
		height: 40px;
		background: rgba(255,255,255,0.85);
		border: none;
		border-radius: 50%;
		font-size: 1.6rem;
		line-height: 1;
		color: #222;
		cursor: pointer;
		box-shadow: 0 2px 8px rgba(0,0,0,0.18);
		transition: background 0.2s;
	}

	.slider-arrow:hover {
		background: rgba(255,255,255,1);
	}

	.slider-arrow--prev {
		left: 10px;
	}

	.slider-arrow--next {
		right: 10px;
	}

	.slider-arrow.is-hidden {
		opacity: 0;
		pointer-events: none;
	}

	.w-section {
		position: static;
		height: auto;
		width: 100%;
		max-width: 100%;
	}

	.content_settore {
		max-width: 100%;
		height: auto;
		padding: 1.5rem;
		backdrop-filter: none;
	}

	.wrap_single_settore h3 {
		font-size: 1.5rem;
		margin-bottom: 16px;
	}
}

@media (min-width: 1024px) {
	.wrapper_prod_data > .prod_data {
		width: 50%;
	}
}

.woocommerce-order-received .woocommerce-customer-details {
	display: none;
}
/* ===== IMN Address Picker ===== */
.imn-address-picker-wrap {
	padding: 20px 0;
}
.imn-address-picker-wrap .imn-address-section-title {
	margin: 0 0 10px;
	font-size: 1em;
	font-weight: 600;
}
.imn-address-selected-row {
	display: flex;
	align-items: center;
	gap: 12px;
	flex-wrap: wrap;
}
#imn-selected-address-label {
	flex: 1;
	color: #444;
	font-size: .95em;
}

/* ===== IMN Modal ===== */
body.imn-modal-open {
	overflow: hidden;
}
.imn-modal {
	position: fixed;
	inset: 0;
	z-index: 999999;
}
.imn-modal-overlay {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, .55);
}
.imn-modal-dialog {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 92%;
	max-width: 580px;
	max-height: 88vh;
	background: #fff;
	border-radius: 8px;
	box-shadow: 0 8px 40px rgba(0, 0, 0, .22);
	display: flex;
	flex-direction: column;
	overflow: hidden;
}
.imn-modal-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 14px 20px;
	border-bottom: 1px solid #eee;
	flex-shrink: 0;
}
.imn-modal-header h3 {
	margin: 0;
	font-size: 1em;
	font-weight: 600;
}
.imn-modal-close {
	background: none;
	border: none;
	font-size: 26px;
	line-height: 1;
	cursor: pointer;
	color: #888;
	padding: 0 2px;
	transition: color .15s;
}
.imn-modal-close:hover {
	color: #111;
}
.imn-modal-body {
	padding: 20px;
	overflow-y: auto;
	flex: 1;
}

/* Address list */
.imn-address-list {
	list-style: none;
	margin: 0 0 8px;
	padding: 0;
	max-height: 300px;
    overflow-y: scroll;
}

.imn-address-item {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 12px 14px;
	border: 1px solid #e2e2e2;
	border-radius: 4px;
	margin-bottom: 8px;
	background: #fff;
	transition: border-color .15s, background .15s;
}
.imn-address-item:hover {
	border-color: #aaa;
}
.imn-address-item--selected {
	border-color: #2271b1;
	background: #f0f6ff;
}
.imn-address-info {
	flex: 1;
	font-size: .88em;
	line-height: 1.55;
	color: #333;
}
.imn-address-info strong {
	font-size: .95em;
}
#imn-new-address-form-wrap {
	margin-top: 20px;
    position: absolute;
    top: 0px;
    background: white;
    width: calc(100% - 60px);
}


/* New address form */
.imn-new-address-wrap {
	margin-top: 20px;
	padding-top: 18px;
	border-top: 1px solid #eee;
}
#imn-new-address-form-wrap h4 {
	margin: 12px 0 14px;
	font-size: 1em;
}
.imn-form-row {
	margin-bottom: 12px;
}
.imn-form-row label {
	display: block;
	margin-bottom: 4px;
	font-size: .88em;
	font-weight: 600;
	color: #444;
}
.imn-form-row input[type="text"] {
	width: 100%;
	box-sizing: border-box;
	padding: 8px 10px;
	border: 1px solid #ccc;
	border-radius: 3px;
	font-size: .9em;
	transition: border-color .15s;
}
.imn-form-row input[type="text"]:focus {
	border-color: #2271b1;
	outline: none;
}
.imn-form-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0 14px;
}
.imn-form-actions {
	display: flex;
	gap: 8px;
	margin-top: 6px;
}
.imn-loading {
	color: #888;
	font-style: italic;
}
.imn-error {
	color: #c0392b;
	margin: 0;
}
.imn-success {
	color: #27ae60;
	margin: 0;
}
#imn-form-message {
	margin-bottom: 10px;
}
.imn-modal-content {
	min-height: 60vh;
}
.imn-modal-content h2 {
	font-size: 18px;
}
.imn-modal-close { z-index: 999; }
.woocommerce-additional-fields h3 {
	font-size: 1.4rem;
}
.col.col--left > .vc_column-inner {
	text-align: right;
}

.imn-my-account tr.is-selected {
	background-color: #f1f1f1;
}
.woocommerce-cart-form__cart-item td {
	vertical-align: middle;
}
form.woocommerce-cart-form .product-thumbnail {
	display: none;
}
.col_socials p {
	padding-top: 20px;
}


@media (min-width: 1025px) {
	.txtHeader :is(h1, h2) {
		color: white;
		font-size: 3rem;
		line-height: 1.1;
		text-transform: uppercase;
		font-weight: 600;
	}
	.c, .fs-3rem :is(h2, h3) {
		font-size: 2.3rem;
	}
	.section-full h2 {
		font-size: 3.8rem;
		
	}
	.section-full.section-full {
		padding: 150px 1.5rem 0;
	} 
	.contentText {
		position: absolute;
		width: 100%;
		padding-left: 2.5rem;
		padding-right: 2.5rem;
		top: 50%;
		transform: translateY(-50%);
		z-index: 3;
	}

	.colCatalogo.wpb_column .vc_column-inner {
		height: 100%;
		display: flex;
		flex-direction: column;
		padding: 120px 40px;
	}
	.colCatalogo .w-image-h {
		position: absolute;
		bottom: 0;
		left: 0;
		transform: translateY(50px) translateX(20%);
		max-width: 584px;
	}
	.col_counter .vc_column-inner {
		padding: 180px 0;
	}
	#page-header > .l-subheader.width_full {
		padding-left: 2.5rem;
		padding-right: 2.5rem;
	}
	.menu_style ul.w-nav-list.level_2 {
		width: 100vw;
		position: fixed !important;
		display: flex !important;
		
	}
	.list_categories {
		gap: 20px;
		row-gap: 50px;
		padding: 50px 2.5rem;
	}
	.fullYear {
		min-height: 100vh;
	}
	.parallax{
		margin-top: 250px;
	}
}

@media (max-width: 1024px) {
	.txtHeader :is(h1, h2) {
		color: white;
		font-size: 1.4rem;
		line-height: 1.2;
		text-transform: uppercase;
		font-weight: 600;
	}
	.c, .fs-3rem :is(h2, h3) {
		font-size: 2rem;
	}
	.section-full h2 {
		font-size: 1.6rem;
	}
	.section-full.section-full {
		padding: 150px 1.5rem;
	} 
	.contentText {
		position: absolute;
		width: 100%;
		padding-left: 1.5rem;
		padding-right: 1.5rem;
		top: 50%;
		transform: translateY(-50%);
		z-index: 3;
	}
	.colCatalogo.wpb_column .vc_column-inner {
		height: 100%;
		display: flex;
		flex-direction: column;
		padding: 0 0 180px;
	}
	.colCatalogo .w-image-h {
		position: absolute;
		bottom: 0;
		left: 0;
		max-width: 584px;
	}
	.col_counter .vc_column-inner {
		padding: 120px 0;
	}
	.col.col--left img {
		margin-right: -1.5rem;
	}
	.content_settore > .wrap_single_settore {
		align-self: flex-end;
	}
	.list_categories {
		padding: 1.5rem;
		flex-direction: column;
		gap: 20px;
		li > a {
			display: flex;
			align-items: center;
			gap: 20px;
		}
	}
	.list_categories li p { text-align: left;}
	.parallax {
		margin-top: 0;
		transform: none !important;
		margin-left: unset !important;
	}
	.wrapper_prod_data_tabs {
		margin-top: 50px;
	}
}





@media (max-width: 480px) {
	.imn-form-grid {
		grid-template-columns: 1fr;
	}
}

@media (min-width: 600px) {
	#imn-new-address-form {
		display: flex;
		flex-wrap: wrap;
		gap: 10px;
		p {
			width: calc(50% - 10px);
		}
	}
	.row-popup .col {
		width: 50%;
		display: flex;
	}
	.wrapperPopup.open {
		transition: 450ms;
		right: calc(-750px + 50px);
	}
	.wrapperPopup {
		position: fixed;
		right: 0;
		bottom: 50px;
		z-index: 9;
		max-width: 750px;
		
		align-items: center;
		border-radius: 15px 0 0 15px;
		overflow: hidden;
		transition: 450ms;

		display: flex;
		align-items: stretch;
		min-height: 350px;
		min-height: -webkit-fill-available;
		min-height: 350px;
		
	}
	.colText {
		padding: 0 1.8rem;
		align-items: center;
	}

	.sottoclassi_wrapper ul li {
		min-width: calc((100% - 10px * 3) / 4);
		
	}
	.imn-famiglie-grid {
		grid-template-columns: repeat(4, 1fr);
	}
	.max-w-60 {	
		width: 60px;
		max-width: 60px;
	}

	.prod_title {
		width: 30%;
		max-width: 270px;
	}
	.col_counter_azienda .vc_column-inner {
		padding: 120px 0;
	}
}
@media (max-width: 599px) {

	.sottoclassi_wrapper ul li {
		min-width: 100%;
		
	}

	#dual-columns .col.col--left {
		position: absolute;
		right: 0;
		top: -20%;
		opacity: 0.5;
	}
	.row-popup {
		flex-direction: column;
	}
	.row-popup .col {
		width: auto;
		display: flex;
	}
	.wrapperPopup.open {
		transition: 450ms;
		right: calc(-80vw + 35px);
	}
	.wrapperPopup {
		position: fixed;
		right: 0;
		bottom: 50px;
		z-index: 99;
		max-width: 80vw;
		
		align-items: center;
		border-radius: 15px 0 0 15px;
		overflow: hidden;
		transition: 450ms;

		display: flex;
		align-items: stretch;
		min-height: 350px;
		min-height: -webkit-fill-available;
		min-height: 350px;
		
	}
	.colText {
		padding: 15px 20px;
		align-items: center;
	}
	.w-html.account-icon {
		margin-right: unset;
	}
	.header_hor .l-subheader-cell.at_right>.w-nav.menu_style {
		margin-left: unset;
	}
	.imn-famiglie-grid {
		grid-template-columns: 1fr;
	}
	.imn-products-grid li > a {
		gap: 10px;
		margin-bottom: 10px;
	}
	.imn-products-grid li,
	.imn-products-grid li > a,
	.imgs_family_page,
	.wrapper_famiglia {
		flex-direction: column;
	}
	.imn-products-grid li > a,
	.imn-products-grid li {
		align-items: flex-start;
	}
	.max-w-60 {	
		width: auto;
		max-width: auto;
		margin-bottom: 10px;
	}
	.imn-products-grid li .prod_prezzo,
	.imn-products-grid li .prod_sconto {
		margin-bottom: 10px;
	}
	form.single_add_to_cart {
		display: flex;
		gap: 10px;
		margin-bottom: 20px;
	}
	.wrapper_filters {
		flex-direction: column;
	}
	.prod_tabs_nav {
		overflow-x: scroll;
		button {
			min-width: max-content;
		}
	}
	.closeBtn {
		width: 35px;
    	min-width: 35px;
		.chiudi {
			font-size: 13px;
			i {
				font-size: 10px;
			}
		}
	}
	.lastRow .vc_column-inner { flex-direction: column; }
	.imn-products-table tbody td {
		padding-bottom: 20px !important;
	}
	.imgs_family_page {
		img {
			max-width: stretch;
		}
	}
	.catalog_tabs .w-tabs-sections .w-tabs-section {
		padding: 0 1.5rem;
	}
	.col_counter_azienda .vc_column-inner {
		padding: 120px 0 0;
	}
	.header_hor .l-subheader-cell.at_right>* {
		margin-left: 0.5em !important;
	}
	.imn-account__nav {
		overflow-x: scroll;
	}
}

/* ── DataTables: tabella prodotti ── */
.imn-products-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 14px;
}
.imn-products-table thead th {
    font-weight: 600;
    padding: 0.5em 0.75em;
    text-align: left;
    border-bottom: unset !important;
    white-space: nowrap;
	
}
.imn-products-table thead th.th-rotated {
    writing-mode: sideways-lr;
    text-orientation: mixed;
    white-space: nowrap;
    vertical-align: text-top;
    text-align: left;
}
.imn-products-table thead th:not(.th-rotated) {
    vertical-align: bottom;
}
.imn-products-table tbody td {
    padding: 0.5em 0.75em;
    vertical-align: middle;
    border-bottom: 1px solid #f0f0f0;
	min-height: 60px;
}
.imn-products-table td.datitecnici__value,
.imn-products-table td.prod_prezzo,
.imn-products-table td.prod_sconto,
.imn-products-table td.col-note,
.imn-products-table td.prod_avail {
    text-align: left;
}

.imn-products-table tbody tr:hover {
    background: #fafafa;
}
.imn-products-table a.prod_slug {
    color: var(--pl-lightblue);
    font-weight: 500;
    text-decoration: none;
}
.imn-products-table .prod_prezzo {
    white-space: nowrap;
}
.imn-products-table .col-cart .single_add_to_cart {
    display: flex;
    align-items: center;
    gap: 6px;
}
.imn-products-table .datitecnici__value {
    text-align: center;
    width: auto;
}
/* DataTables child-row expand button */
table.dataTable > tbody > tr.child ul.dtr-details {
    width: 100%;
}
/* Header statico rimosso: ora gestito da DataTables thead */
.testata-lista-products {
    display: none;
}
table.dataTable th.dt-type-numeric, 
table.dataTable th.dt-type-date, 
table.dataTable td.dt-type-numeric,
table.dataTable td.dt-type-date {
	text-align: left !important;
	padding: 12px 10px;
}
#imn-accessori-table.dataTable.dtr-inline.collapsed>tbody>tr.accessorio_item>td.dtr-control:before,
#imn-ricambi-table.dataTable.dtr-inline.collapsed>tbody>tr.accessorio_item>td.dtr-control:before,
#imn-ricambi-table.dataTable.dtr-inline.collapsed>tbody>tr.accessorio_item>th.dtr-control:before,
#imn-products-table.dataTable.dtr-inline.collapsed>tbody>tr>td.dtr-control:before, 
#imn-products-table.dataTable.dtr-inline.collapsed>tbody>tr>th.dtr-control:before {
	content: "\f061";
    font-family: "fontawesome";
    font-weight: 400;
    border-color: transparent;
    border-top: unset !important;
    border-bottom: unset !important;
    margin-left: unset !important;
	transition: 150ms;
}
#imn-accessori-table.dataTable.dtr-inline.collapsed>tbody>tr.accessorio_item.dtr-expanded>td.dtr-control:before,
#imn-ricambi-table.dataTable.dtr-inline.collapsed>tbody>tr.accessorio_item.dtr-expanded>td.dtr-control:before,
#imn-products-table.dataTable.dtr-inline.collapsed>tbody>tr.dt-hasChild.dtr-expanded>td.dtr-control:before {
	transform: rotate(45deg);
	transition: 150ms;
}

/* Breadcrumb mobile: mostra solo Home + ultime due voci */
@media (max-width: 599px) {
    .custom_breadcrumb ol > .bc-mobile-hidden {
        display: none !important;
    }
    .custom_breadcrumb ol > .bc-ellipsis {
        opacity: 0.5;
        padding: 0 2px;
    }
}

/*START hide prices*/

.product-discount.wrap_prices.imn-discounts-hidden,
.wrap_prices.imn-discounts-hidden .discount_row { display: none; }
.wrap_prices.has-discount.imn-discounts-hidden .price-final  { display: none; }
.wrap_prices.imn-discounts-hidden .price-listino { display: inline !important; }

.wrap_prices.imn-discounts-hidden .head_sconto span,
.wrap_prices.imn-discounts-hidden .prod_sconto span,
.wrap_prices.imn-discounts-hidden span.accessorio_discount,
.wrap_prices.imn-discounts-hidden span.accessorio_net_price,
.wrap_prices.imn-discounts-hidden span.ricambio_discount,
.wrap_prices.imn-discounts-hidden span.ricambio_net_price,
.wrap_prices.imn-discounts-hidden .net_col span,
.wrap_prices.imn-discounts-hidden .discount_col span
{ display: none; }

.imn-toggle-discounts {
	background: none;
    border: 1px solid currentColor;
    border-radius: 4px;
    cursor: pointer;
    margin-top: 30px;
    padding: 3px 8px;
    opacity: 0.6;
	color: #ffffff7a;
}
.imn-toggle-discounts[aria-pressed="true"] { opacity: 1; }

/* ── Dropdown multiselect filtri ─────────────────────────────────── */
[x-cloak] { display: none !important; }

.imn-dropdown {
    position: relative;
    display: inline-block;
    min-width: 160px;
}

.imn-dropdown-trigger {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 8px;
    padding: 0 1em;
    min-height: var(--inputs-height, 2em);
    border-radius: 4px;
    cursor: pointer;
    font-size: 15px;
    text-align: left;
    white-space: nowrap;
    overflow: hidden;
}

.imn-dropdown-trigger:disabled {
    opacity: 0.5;
    cursor: default;
}

.imn-dropdown-arrow {
    font-size: 0.65em;
    flex-shrink: 0;
    transition: transform 0.2s;
}

.imn-dropdown-arrow.open {
    transform: rotate(180deg);
}

.imn-dropdown-menu {
    position: absolute;
    z-index: 200;
    top: calc(100% + 4px);
    left: 0;
    min-width: 100%;
    max-height: 260px;
    overflow-y: auto;
    background: white;
    border: 1px solid #ccc;
    border-radius: 4px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.14);
	overscroll-behavior: contain;
}

.imn-dropdown-item {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 7px 12px;
    cursor: pointer;
    font-size: 14px;
    font-weight: normal;
    margin: 0;
    line-height: 1.3;
}

.imn-dropdown-item:hover {
    background: #f5f5f5;
}

.imn-dropdown-item input[type="checkbox"] {
    margin: 0;
    flex-shrink: 0;
    accent-color: var(--pl-orange);
}


/*END hide prices*/

.woocommerce-order-overview__payment-method.method {
	display: none;
}

.imn-documents-detail__address {
	text-align: left;
}
.imn-documents-detail__meta {
	display: grid;
    grid-template-columns: repeat(4, 1fr);
    text-align: left;
	span dd {
		margin-left: unset;
	}
}
.imn-documents-detail__table.shop_table {
	font-size: 15px;
	background-color: #f1f1f1;
}
.imn-documents-table.woocommerce-orders-table tr > :first-child {
	padding-left: 1rem;
}

.imn-documents-table.woocommerce-orders-table tr > :last-child {
	padding-right: 1rem;
}
.w-cart-quantity {
	background-color: var(--pl-lightblue);
	color: white;
}
.woocommerce-ResetPassword {
	max-width: 500px;
    margin: auto;
    padding: min(3rem, 10%);
    margin: 1.5rem auto;
}