[role=button]:not([disabled]):focus,
[role=heading]:focus,
[role=navigation]:focus,
button:not([disabled]):focus,
form:not([disabled]):focus,
h1[tabindex="-1"]:focus,
h2[tabindex="-1"]:focus,
h3[tabindex="-1"]:focus,
h4[tabindex="-1"]:focus,
h5[tabindex="-1"]:focus,
h6[tabindex="-1"]:focus,
img:focus,
nav:focus,
picture:focus,
svg:focus {
	border: none !important;
}

.store-content a:not(.btn-style):hover,
.cat-content a:not(.btn-style, .link-btn):hover,
.product-sku a:hover {
	text-decoration: underline;
}

.fs-14,
.icon-14 {
	font-size: 14px;
}

.fs-18,
.icon-18 {
	font-size: 18px;
}

.fs-20,
.icon-20 {
	font-size: 20px;
}

.border-full {
	border-color: rgba(128, 128, 128, .3);
}

.theme-logo img {
	width: 350px;
}

.mainmenu-content .main-wrap ul.menu-ul li.menu-li a.menu-link,
.secondary-bg,
.secondary-bg a,
.secondary-bg h1,
.secondary-bg h2,
.secondary-bg h3,
.secondary-bg h4,
.secondary-bg h5,
.secondary-bg h6 {
	color: #fff;
}

.secondary-bg.bst {
	border-top: 1px solid rgba(255, 255, 255, .3);
}

.secondary-bg .social-li a {
	background-color: rgba(255, 255, 255, .3);
}

.mainmenu-content .main-wrap ul.menu-ul li.menu-li a.menu-link.current,
.current-menu-ancestor>a {
	color: var(--extra-font-color);
	background-color: var(--primary-font-color);
}

.menudrop-ul .menudrop-li a.current {
	color: var(--primary-font-color);
}

.copyright p {
	margin-top: 25px;
	font-size: 13px;
	line-height: 1.4;
	color: rgba(255, 255, 255, .5);
}

.copyright p a {
	color: rgba(255, 255, 255, .5);
	text-decoration: underline;
}

.header-block-icon-wrap {
	position: relative;
}

.header-icon-block ul.header-icon-element li.header-icon-wrap .header-icon-wrapper a span.header-block-icon {
	border: none;
}

.header-icon-block ul.header-icon-element li.header-icon-wrap .header-icon-wrapper a span.header-block-icon-wrap span.header-block-counter {
	background-color: var(--primary-font-color);
	border-radius: 30px;
	text-align: center;
	line-height: 24px;
	display: inline-block;
	position: absolute;
	top: 5px !important;
	right: -5px !important;
	font-size: 12px;
	line-height: 24px;
	padding: 1px 3px;
	width: 24px;
	height: 24px;
}

.home-slider .swiper-slide .slider-image,
.banner-area .banner-block {
	position: relative;
}

.home-slider .swiper-slide .slider-image:before,
.banner-area .banner-block:before {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	background: linear-gradient(90deg, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 100%);
	z-index: 1;
	content: '';
	width: 50%;
}

.banner-area .banner-block:before {
	background: linear-gradient(90deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, .5) 100%);
	width: 100%;
}

.home-slider .swiper-slide .slider-image .container,
.banner-area .banner-block .banner-content {
	position: relative;
	z-index: 2;
}

.single-product .single-product-wrap .product-image-col .product-image .product-action-wrap .product-action a span.product-icon {
	font-size: 13px;
}

.section-capture .sub-title {
	font-weight: var(--heading-font-weight);
	margin-bottom: 10px;
}

.deal-banner {
	position: relative;
}

.deal-banner:before {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 50%;
	content: '';
	display: block;
	background-image: url(../image/Holiday25_TopGiftsforHer_Laydowns_1.png);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center right;
}

.footer-area {
	line-height: 1.5;
}

.header-icon-block ul.header-icon-element li.header-icon-wrap .header-icon-wrapper a span.header-block-icon img {
	width: 20px;
	height: 20px;
}

@media (max-width: 991px) {

	.deal-banner:before {
		display: none;
		content: unset;
	}

}

.breadcrumb-area::after {
	opacity: .6;
}

.breadcrumb-area.has-cover {
	padding-top: 85px;
	padding-bottom: 85px;
	background-size: cover;
}


label.cust-checkbox-label input.cust-checkbox:checked~.wpcf7-list-item-label span.cust-check {
	background-color: var(--secondary-font-color);
	border-color: var(--secondary-font-color);
}

label.cust-checkbox-label:hover span.cust-check,
label.cust-checkbox-label input.cust-checkbox:checked~.wpcf7-list-item-label span.cust-check {
	box-shadow: inset 0px 0px 5px rgba(var(--box-shadow-inner), var(--box-shadow-inner-opacity));
}

label.cust-checkbox-label input.cust-checkbox:checked~.wpcf7-list-item-label span.cust-check::after {
	display: block;
}

.wpcf7-form-control-wrap {
	height: 100%;
}

.menudrop-ul .menudrop-li a {
	color: var(--body-font-color);
}

.menudrop-ul .menudrop-li a:hover {
	color: var(--primary-font-color);
}

.mainmenu-content .main-wrap ul.menu-ul li.menu-li:hover a.menu-link.current {
	color: #fff;
}



/* Tabella specifiche tecniche */
.spec-table {
	width: 100%;
	border-collapse: collapse;
}

.spec-table td {
	padding: 2px 0;
	vertical-align: top;
	font-size: 14px;
}

/* Colonna sinistra: nomi delle specifiche */
.spec-table .spec-label {
	width: 50%;
	text-align: left;
}

/* Colonna destra: valori */
.spec-table .spec-value {
	width: 50%;
	text-align: right;
}

/* Titolo gruppo (Dimensioni, Motore, Prestazioni, ecc.) */
.spec-group-title {
	display: block;
}

.cat-content span {
	color: var(--grey-font-color);
}


#offcanvas-overlay {
	position: fixed;
	inset: 0;
	background: rgba(0, 0, 0, 0.4);
	z-index: 998;
	opacity: 0;
	visibility: hidden;
	transition: all .25s ease;
}

#offcanvas-overlay.is-visible {
	opacity: 1;
	visibility: visible;
}

#offcanvas-sidebar {
	position: fixed;
	top: 0;
	right: -100%;
	width: 450px;
	max-width: 100%;
	height: 100%;
	background: #fff;
	z-index: 999;
	box-shadow: -2px 0 10px rgba(0, 0, 0, .2);
	padding: 20px;
	overflow-y: auto;
	transition: right .25s ease;
}

#offcanvas-sidebar.is-open {
	right: 0;
}

.offcanvas-close {
	border: 0;
	background: transparent;
	font-size: 28px;
	line-height: 1;
	cursor: pointer;
	position: absolute;
	top: 10px;
	right: 15px;
}

.offcanvas-panel {
	display: none;
	margin-top: 35px;
}


.offcanvas-panel .woocommerce-form-login input[type="text"],
.offcanvas-panel .woocommerce-form-login input[type="password"] {
	width: 100%;
}

.offcanvas-panel .woocommerce-form-login .form-row-first {
	margin-bottom: 25px;
}

.cart-drawer .widget_shopping_cart_content {
	height: 100%;
}

.js-cart-qty-wrapper {
	width: 112px;
}

.js-cart-qty-wrapper .js-cart-qty-wrap button.js-cart-qty-adjust {
	width: 32px;
	height: 32px;
}

.js-cart-qty-wrapper .js-cart-qty-wrap input.js-cart-qty-num {
	width: calc(100% - 64px);
	height: 32px;
}

.js-cart-qty-minus.is-disabled,
.js-cart-qty-plus.is-disabled {
	opacity: .5;
	pointer-events: none;
	cursor: default;
}

.js-cart-qty-wrapper .js-cart-qty-wrap input.js-cart-qty-num[type="number"] {
	appearance: textfield;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

#cart-drawer {
	z-index: 1000;
}

#cart-drawer.is-loading::after,
#cart-drawer.is-loading::before {
	pointer-events: none;
}


#cart-drawer.is-loading::after {
	content: '';
	position: absolute;
	inset: 50%;
	width: 32px;
	height: 32px;
	margin: -16px 0 0 -16px;
	border-radius: 50%;
	border: 3px solid #000;
	border-top-color: transparent;
	animation: spin 0.7s linear infinite;
}

#cart-drawer.is-loading::before {
	background: rgba(0, 0, 0, 0.4);
	content: '';
	position: absolute;
	inset: 0;
	z-index: 1000;
}

@keyframes spin {
	to {
		transform: rotate(360deg);
	}
}


.yith-heart-hidden {
	position: absolute;
	width: 0;
	height: 0;
	overflow: hidden;
	opacity: 0;
	pointer-events: none;
}

/*
*
*
* SHOP
*
*
*/
.woocommerce-Price-amount.amount {
	color: var(--primary-font-color);
}


del .woocommerce-Price-amount.amount {
	color: var(--body-font-color);
}

.price-box ins {
	text-decoration: none;
}

/*.price-box {
	flex-direction: row-reverse;
}*/

.product-action {
	text-align: center;
}

.woocommerce ul.products li.product .disabled {
	margin-right: 10px;
}

.woocommerce ul.products a.added_to_cart,
.woocommerce ul.products .added_to_cart.wc-forward {
	display: none !important;
}

.product-action .product-icon .yith-wcwl-add-to-wishlist-button__label {
	display: none;
}

.product-action .product-icon svg#yith-wcwl-icon-heart-outline,
.product-action .product-icon svg#yith-wcwl-icon-heart {
	width: 16px;
}


.widget-area {
	top: 60px !important;
}

.widget-title {
	font-size: 18px;
}

#woocommerce_product_categories-2 {
	padding-top: 30px;
	margin-top: 30px;
	border-top: 1px solid rgba(var(--border-color), var(--border-opacity));
}

.widget-area .widget-title,
.widget .widget-title {
	margin-bottom: 15px;
}

.product-categories li:not(:last-child) {
	margin-bottom: 10px;
}

.widget-area .cat-item {
	display: flex;
	justify-content: space-between;
}

.widget-area .cat-item :is(a, span) {
	color: var(--body-font-color);
	transition: all .3s ease;
}

.widget-area .cat-item.current-cat :is(a, span) {
	color: var(--primary-font-color);
}

.widget-area .cat-item:hover :is(a, span) {
	color: var(--primary-font-color);
}

.page-numbers,
.page-numbers li {
	border: none !important;
}

.page-numbers {
	display: inline-flex !important;
	gap: 8px;
}


.woocommerce nav.woocommerce-pagination ul li span.current {
	color: var(--extra-font-color);
  	background: var(--primary-font-color);
}

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
	min-width: 32px;
	height: 32px;
	font-size: var(--body-font-size);
	color: var(--heading-font-color);
	background-color: var(--extra-bgcolor);
	-webkit-transition: color 0.3s ease-in-out;
	transition: color 0.3s ease-in-out;
	font-weight: var(--heading-font-weight);
	text-align: center;
	border-radius: var(--border-radius);
	justify-content: center;
	align-items: center;
	margin: 0 3px;
}

.woocommerce nav.woocommerce-pagination ul li a.next,
.woocommerce nav.woocommerce-pagination ul li a.prev {
	font-weight: var(--body-font-weight);
	background-color: transparent;
	margin: 0 5px;
}

.woocommerce nav.woocommerce-pagination ul li a.page-numbers:not(.prev):not(.next):hover,
.woocommerce nav.woocommerce-pagination ul li a.page-numbers:not(.prev):not(.next):focus {
	--bs-link-color-rgb: var(--bs-link-hover-color-rgb);
	background-color: var(--extra-bgcolor);
	color: #000;
}

.woocommerce nav.woocommerce-pagination ul li a.next:hover,
.woocommerce nav.woocommerce-pagination ul li a.next:focus,
.woocommerce nav.woocommerce-pagination ul li a.prev:hover,
.woocommerce nav.woocommerce-pagination ul li a.prev:focus {
	color: #000;
}

.main-box .page-title {
	display: none;
}


.single-product-wrap .product-image-col .product-image a.pro-img span.product-label {
	color: var(--extra-font-color);
	font-size: 12px;
	position: absolute;
	top: 15px;
	min-width: 48px;
	padding: 6px 8px;
	text-align: center;
	border-radius: 0;
	line-height: 1;
	-webkit-transition: transform 0.3s ease-in-out;
	transition: transform 0.3s ease-in-out;
	background: var(--product-new-sale-label-bgcolor);
}

.single-product-wrap .product-image-col .product-image a.pro-img span.product-label.product-label-no-stock {
	color: var(--extra-font-color);
	background: var(--product-sold-label-bgcolor);
}

.single-product-wrap .product-image-col .product-image a.pro-img span.product-label.product-label-new {
	color: var(--extra-font-color);
	background: var(--product-new-sale-label-bgcolor);
}

.single-product-wrap .product-image-col .product-image a.pro-img span.product-label.product-label-discount {
	color: var(--extra-font-color);
	background: var(--product-discount-label-bgcolor);
}

.woocommerce-product-details__short-description, .product-desc {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.woocommerce-product-details__short-description p:first-child {
	margin-top: 10px;
}

.woocommerce-product-details__short-description p:last-child {
	margin-bottom: 10px;
}

.summary.entry-summary .add-to-cart.disabled {
	border-radius: 0;
}

.product_meta {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.woocommerce div.product form.cart .variations td,
.woocommerce div.product form.cart .variations th {
	vertical-align: middle;
}

.woocommerce div.product form.cart .button {
	height: 48px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 10px 30px;
	text-align: center;
	text-transform: uppercase;
	font-weight: var(--heading-font-weight);
	border-radius: var(--border-radius);
	-webkit-transition: color 0.3s ease-in-out, background-color 0.3s ease-in-out, border-color 0.3s ease-in-out;
	transition: color 0.3s ease-in-out, background-color 0.3s ease-in-out, border-color 0.3s ease-in-out;
	color: var(--extra-font-color);
	background-color: var(--primary-font-color);
	border: 2px solid var(--primary-font-color);
}


.woocommerce div.product form.cart .button:hover {
	color: var(--extra-font-color);
	background-color: var(--secondary-font-color);
	border-color: var(--secondary-font-color);
}

.woocommerce #content div.product div.summary, .woocommerce div.product div.summary, .woocommerce-page #content div.product div.summary, .woocommerce-page div.product div.summary {
	width: auto;
}

.single-product .single-product-wrap .product-action div {
	position: relative;
}

.single-product .single-product-wrap .product-image-col .product-image .product-action-wrap .product-action div span.product-icon {
    font-size: 13px;
}

.single-product .single-product-wrap .product-action div span.product-icon {
    color: var(--heading-font-color);
    width: 16px;
    height: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    -webkit-transition: color 0.3s ease-in-out;
    transition: color 0.3s ease-in-out;
}

.quantity {
	display: flex;
	align-items: center;
	width: 100%;
}

/* Mostra i select varianti, ma nascondi il bottone Woo */
.harleypg-variations-wrap .single_add_to_cart_button,
.harleypg-variations-wrap .quantity {
  display: none !important;
}

/* opzionale: sistema margini del form */
.harleypg-variations-wrap form.variations_form {
  margin: 0;
}
.harleypg-variations-wrap table.variations {
  margin-bottom: 15px;
}


.woocommerce form .form-row .input-text,
.woocommerce form .form-row select, 
.woocommerce form #billing_country_field .select2-selection__rendered,
.woocommerce form #billing_state_field .select2-selection__rendered,
.woocommerce form #shipping_country_field .select2-selection__rendered,
.woocommerce form #shipping_state_field .select2-selection__rendered {
	color: var(--body-font-color);
    font-size: var(--body-font-size);
    background-color: var(--body-bgcolor);
    font-family: var(--body-font-family);
    font-weight: var(--body-font-weight);
    border: 1px solid rgba(var(--border-color), var(--border-opacity));
    border-radius: var(--border-radius);
	padding: 10px 15px;
	height: 48px;
	display: flex;
	align-items: center;
}

/* Stile generale bottone */
.woocommerce .woocommerce-Button.button,
.woocommerce .woocommerce-address-fields .button,
.woocommerce .woocommerce-form-login .woocommerce-form-login__submit,
.wc-block-components-button.wp-element-button.wc-block-components-totals-coupon__button.contained,
.wc-block-components-button.wp-element-button.wc-block-components-checkout-place-order-button.contained,
.wp-block-woocommerce-empty-cart-block a,
.single_add_to_cart_button.button.alt { 
	height: 48px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 10px 30px !important;
	text-align: center;
	text-transform: uppercase;
	font-weight: var(--heading-font-weight);
	border-radius: var(--border-radius);
	-webkit-transition: color 0.3s ease-in-out, background-color 0.3s ease-in-out, border-color 0.3s ease-in-out;
	transition: color 0.3s ease-in-out, background-color 0.3s ease-in-out, border-color 0.3s ease-in-out;
}

/* Stile colore arancione (primario) */
.woocommerce .woocommerce-Button.button,
.woocommerce .woocommerce-address-fields .button,
.woocommerce .woocommerce-form-login .woocommerce-form-login__submit,
.wc-block-components-button.wp-element-button.wc-block-components-checkout-place-order-button.contained,
.wp-block-woocommerce-empty-cart-block a,
.single_add_to_cart_button.button.alt {
	color: var(--extra-font-color) !important;
	background-color: var(--primary-font-color) !important;
	border: 2px solid var(--primary-font-color) !important;
}

/* Stile colore bianco con bordi neri (secondario) */
.wc-block-components-button.wp-element-button.wc-block-components-totals-coupon__button.contained {
    color: var(--secondary-font-color);
    background-color: transparent;
    border: 2px solid var(--secondary-font-color);
}

/* Animazione hover primario */
.woocommerce .woocommerce-Button.button:hover,
.woocommerce .woocommerce-address-fields .button:hover,
.woocommerce .woocommerce-form-login .woocommerce-form-login__submit:hover,
.wc-block-components-button.wp-element-button.wc-block-components-checkout-place-order-button.contained:hover,
.wp-block-woocommerce-empty-cart-block a:hover,
.single_add_to_cart_button.button.alt:hover {
	color: var(--extra-font-color) !important;
	background-color: var(--secondary-font-color) !important;
	border-color: var(--secondary-font-color) !important;
}

/* Animazione hover secondario */
.wc-block-components-button.wp-element-button.wc-block-components-totals-coupon__button.contained:hover {
    color: var(--extra-font-color);
    background-color: var(--secondary-font-color);
    border-color: var(--secondary-font-color);
}

.woocommerce-address-fields .button {
	margin-top: 15px !important;
}

.woocommerce .woocommerce-form-login .woocommerce-form-login__rememberme {
    display: flex;
    align-items: center;
    gap: 8px;
}


ul.wc-block-components-totals-discount__coupon-list {
	padding: 0;
}

.wc-block-components-chip.wc-block-components-chip--radius-large {
	padding: 10px 20px 10px 30px !important;
}

.wc-block-components-sidebar.wc-block-cart__sidebar.wp-block-woocommerce-cart-totals-block .article-detail ul li:before {
	width: 20px;
    height: 20px;
    top: 50%;
    transform: translateY(-50%);
}

.wc-block-components-chip__text {
	text-transform: uppercase;
}

.wc-block-components-chip .wc-block-components-chip__remove {
    background: #fff !important;
    border: 1px solid #000 !important;
    border-radius: 100% !important;
    height: 25px !important;
    width: 25px !important;
    position: absolute;
    top: 50%;
    right: -10px;
    transform: translateY(-50%);
	transition: all .3s ease;
}

.wc-block-components-chip .wc-block-components-chip__remove:hover {
	background: var(--secondary-font-color) !important;
	border-color: var(--secondary-font-color) !important;
	color: var(--extra-font-color) !important;
}


.wp-block-woocommerce-empty-cart-block a {
	margin-top: 25px;
}


/* Tabella variations -> layout più moderno */
.single-product form.cart table.variations {
  width: 100%;
  border: 0;
  margin: 0 0 10px;
}

.single-product form.cart table.variations th.label {
  width: 90px;
  padding: 0 10px 8px 0;
  vertical-align: middle;
  font-weight: 600;
}

.single-product form.cart table.variations td.value {
  padding: 0 0 8px 0;
}

/* Select stile "nice" */
.single-product form.cart table.variations select {
  width: 100%;
  height: 46px;
  padding: 10px 44px 10px 14px;
  border-radius: 10px;
  border: 1px solid rgba(0,0,0,.12);
  background-color: #fff;
  outline: none;
  appearance: none; /* freccia custom */
  transition: border-color .15s ease, box-shadow .15s ease;
}

/* focus */
.single-product form.cart table.variations select:focus {
  border-color: rgba(0,0,0,.35);
  box-shadow: 0 0 0 4px rgba(0,0,0,.08);
}

/* freccia custom del select */
.single-product form.cart table.variations td.value {
  position: relative;
}

/* link "Svuota" (reset) */
.single-product form.cart a.reset_variations {
  margin-left: 10px;
  font-size: 12px;
  text-decoration: underline;
  opacity: .7;
}
.single-product form.cart a.reset_variations:hover {
  opacity: 1;
}

/* =========================
   Riga quantità + bottone
   ========================= */
.single-product form.cart .woocommerce-variation-add-to-cart.variations_button {
  display: grid;
  grid-template-columns: 88px 1fr;
  gap: 12px;
  align-items: center;
  margin-top: 8px;
}

/* quantità */
.single-product form.cart .quantity {
  margin: 0 !important;
}

.single-product form.cart .quantity input.qty {
  width: 88px;
  height: 46px;
  border-radius: 10px;
  border: 1px solid rgba(0,0,0,.12);
  text-align: center;
  padding: 0 10px;
}


.single-product form.cart:not(.variations_form) {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
}

/* quantità */
.single-product form.cart:not(.variations_form) .quantity {
  margin: 0 !important;
  width: 100%;
  display: flex;
  justify-content: center;
}

.single-product form.cart:not(.variations_form) .quantity input.qty {
  width: 88px;
  height: 46px;
  border-radius: 10px;
  border: 1px solid rgba(0,0,0,.12);
  text-align: center;
}

.buttons-simple .buy-now {
	align-items: center;	
  	display: flex;
}

.slider-content .home-slider .slider-image h2 {
    text-wrap: balance;
}

.fullheight {
	height: calc(90vh - 165px);
	margin-top: 30px;
}

.modal-header {
	justify-content: space-between;
}

.close-modal {
	text-align: center;
  border-radius: 100%;
  margin: 5px;
  width: 25px;
  height: 25px;
  padding: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.widget-area .product-categories li {
	position: relative;
}

.widget-area .product-categories li a {
	width: 100%;
	z-index: 2;
}

.widget-area .product-categories li span {
	position: absolute;
	right: 0;
}


.header-search-spinner{
  width: 16px;
  height: 16px;
  flex: 0 0 auto;
  border-radius: 50%;
  border: 2px solid currentColor;
  border-right-color: transparent;
  animation: hpg-spin .7s linear infinite;
  opacity: .8;
}

@keyframes hpg-spin{
  to { transform: rotate(360deg); }
}


.lang-item img {
	width: 20px !important;
	height: 20px !important;
}

.lang-item a {
	border: none !important;
}
.search-results {
    z-index: 999 !important;
}


.mobilemenu-content ul li span {
	display: block;
}

.onetap-container-toggle .onetap-toggle {
	z-index: 999 !important;
}

.without-shop-sidebar .shop-sidebar-wrap.shop-filter-sidebar, .shop-sidebar-wrap.shop-filter-sidebar {
	z-index: 1000 !important;
}