/**
 * WooCommerce style
 *
 * @package Motion Woo
 * @version 1.0.0
 */

:root {
  /* Colori */
  --white: #ffffff;
  --grey-light: #f3f3f3;
  --grey: #cccccc;
  --grey-dark: #999999;
  --black: #000000;
}

.woocommerce form .form-row .input-text:focus,
.woocommerce form .form-row select:focus {
  border-color: var(--wp--preset--color--primary);
}
/* ------- Woocommerce Layout settings  ------- */
.pagina-carrello,
.pagina-dashboard,
.pagina-checkout,
.pagina-prodotto {
  margin: 160px 0 80px 0;
}
.pagina-prodotto {
  margin: 100px 0 0 0;
}

/* ------- Woocommerce Notice popup  ------- */
.woocommerce-message,
.woocommerce-error,
.woocommerce-info {
  position: fixed;
  display: flex;
  flex-direction: column;
  top: 135px;
  right: 20px;
  width: auto;
  min-width: 300px;
  max-width: 300px;
  z-index: 1000;
  opacity: 0;
  transform: translateX(100%);
  pointer-events: none;
  padding: 40px 20px 20px 20px;
  border: 2px solid var(--wp--preset--color--primary) !important;
  border-radius: 12px;
  transition: opacity 0.3s ease, transform 0.3s ease;
  z-index: 9999;
  font-size: 0.825rem;
  line-height: 1.4;
  background-color: var(--wp--preset--color--secondary);
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
  color: currentColor;
  font-weight: 600;
}

.woocommerce-message img,
.woocommerce-error img,
.woocommerce-info img {
  padding-right: unset !important;
  margin-right: unset !important;
}

.woocommerce-message a:hover,
.woocommerce-error a:hover,
.woocommerce-info a:hover {
  background-color: transparent !important;
}
.woocommerce-message .button,
.woocommerce-error .button,
.woocommerce-info .button {
  display: block !important;
  padding: 0 !important;
  margin: 0 !important;
  background-color: transparent !important;
  color: var(--white) !important;
  margin-top: 15px !important;
  margin-bottom: 10px !important;
  border: none !important;
}

.woocommerce-message.show,
.woocommerce-error.show,
.woocommerce-info.show {
  opacity: 1;
  transform: translateX(0);
  pointer-events: all;
}

/* ------- Woocommerce My account login / register ------- */
.woo-form-login,
.woo-form-registrati {
  position: relative;
}
.woo-form-login:not(:visible) .woocommerce-notices-wrapper,
.woo-form-registrati:not(:visible) .woocommerce-notices-wrapper {
  display: none;
}
.pagina-di-accesso {
  margin-top: 150px;
  grid-template-columns: repeat(2, 1fr);
  margin-bottom: 80px;
}
.pagina-di-accesso h1 {
  font-size: clamp(1.3rem, 1.0439rem + 1.0927vw, 2rem);
  margin-bottom: 40px;
}
.login-register-forms form {
  border-radius: 0 !important;
  border: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
.col-forms-login {
  padding: 5vw 0 5vw 5vw;
}
.col-media-login {
  height: 600px;
  min-height: 80vh;
  border-radius: 12px;
  overflow: hidden;
}

/* ------- Woocommerce My account login / register buttons ------- */
.required {
  color: var(--wp--preset--color--primary) !important;
}
.accedi-registrati-buttons {
  margin-bottom: 30px;
}
.switch-button {
  padding: 15px 30px;
  border: 1px solid var(--grey);
  cursor: pointer;
  width: 100%;
  text-align: center;
  border-radius: 30px;
  transition: background-color 0.3s, color 0.3s;
  margin-right: 5px;
}
.switch-button span {
  color: var(--wp--preset--color--headline);
  font-weight: 600;
}
.switch-button.active {
  background-color: var(--wp--preset--color--primary);
  border-color: var(--wp--preset--color--primary);
}
.switch-button.active span {
  color: var(--wp--preset--color--white);
}

.form-row .woocommerce-form-login__rememberme {
  width: 100%;
  margin-bottom: 0;
  font-size: 0.825rem;
}

/* ------- Woocommerce dashboard  ------- */
.custom-dashboard {
  min-height: 600px;
  margin-top: 130px;
  margin-bottom: 70px;
}
.dashboard-home {
  grid-template-columns: repeat(2, 1fr);
  gap: 30px;
}
.box-dashboard {
  position: relative;
  overflow: hidden;
  min-height: 450px;
  padding: 30px;
}
.box-dashboard .box-dashboard-thumb {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 12px;
  overflow: hidden;
}
.box-dashboard .box-dashboard-thumb img {
  transition: 0.85s all cubic-bezier(0.215, 0.61, 0.355, 1);
  transform: scale(1);
  border-radius: 12px;
}
.box-dashboard .box-dashboard-thumb::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  pointer-events: none;
  background-color: rgba(0, 0, 0, 0.33);
  border-radius: 12px;
}
.box-dashboard .box-content {
  position: relative;
  z-index: 5;
  pointer-events: none;
}
.box-dashboard h3 {
  color: var(--white);
  font-size: 3rem;
  text-align: center;
  font-size: 1.6rem;
  margin-bottom: 10px;
}
.box-dashboard p {
  color: var(--white);
  font-weight: 400;
}
.box-dashboard:hover .box-dashboard-thumb img {
  transform: scale(1.05);
}
.custom-dashboard h1 {
  font-size: clamp(1.3rem, 1.1158rem + 0.786vw, 2rem);
}
.woocommerce-MyAccount-navigation {
  width: 100% !important;
  float: none !important;
  margin: 40px 0;
}
.woocommerce-MyAccount-content {
  width: 100% !important;
  float: none !important;
}
.woocommerce-MyAccount-navigation ul {
  padding: 0;
  margin: 0;
  list-style-type: none;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 10px;
}
.woocommerce-MyAccount-navigation ul li {
  position: relative;
}
.woocommerce-MyAccount-navigation ul li > a {
  display: flex;
  align-items: center;
  gap: 7px;
  padding: 10px 20px;
  border: 1px solid var(--wp--preset--color--headline);
  font-weight: 500;
  color: var(--wp--preset--color--headline);
  border-radius: 30px;
}
.woocommerce-MyAccount-navigation ul li > a:hover {
  background-color: var(--grey-light);
}
.woocommerce-MyAccount-navigation ul li.is-active a {
  background-color: var(--wp--preset--color--headline);
  color: var(--white);
  font-weight: 400;
}

/* ------------ Woocommerce CART page ------------ */
.woocommerce-cart {
  position: relative;
}
button[name="update_cart"] {
  display: none !important;
}

/* ------------ Cart layout ------------ */
.woocommerce-cart-form {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 60px;
}

/* ------------ Cart product list ------------ */
.woo-cart-intro {
  margin-bottom: 10px;
  padding: 15px;
}
.woo-cart-intro h1 {
  font-size: var(--wp--preset--font-size--heading-4);
  margin-bottom: 0;
  font-family: var(--wp--preset--font-family--poppins-sans-serif);
}
.woo-prd-cart-info {
  width: 100%;
}

.woo-prd-cart-info .product-price {
  font-weight: 500;
  margin-bottom: 30px;
  color: var(--black);
}

.woo-prd-edit {
  align-items: center;
  width: 100%;
  justify-content: space-between;
}
.woo-prd-edit input,
.woo-prd-edit .quantity {
  margin-bottom: 0 !important;
}
.woo-item-cart {
  position: relative;
  padding: 15px 15px 25px 15px;
  margin-bottom: 10px;
  gap: 20px;
  border-bottom: 1px solid var(--grey-light);
}

.woo-item-cart .qnt-custom {
  width: 140px !important;
}
.woo-prd-cart-info .variation {
  display: flex;
  margin-bottom: 0;
}

.woo-item-cart .product-thumbnail {
  width: 20%;
  z-index: 1;
}
.woo-item-cart .product-remove {
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 10;
}
.pagina-checkout .woocommerce a.remove,
.woo-item-cart .product-remove a {
  color: var(--wp--preset--color--headline) !important;
  opacity: 0.8;
}

.woo-item-cart .quantity input {
  width: 100% !important;
  height: 35px;
}
.pagina-checkout .shop_table .cart_item input {
  height: 35px;
}

.pagina-checkout .shop_table .cart_item .meno,
.pagina-checkout .shop_table .cart_item .plus,
.woo-item-cart .quantity .meno,
.woo-item-cart .quantity .plus {
  height: 35px;
}

/* ------------ Cart coupon ------------ */

.pagina-carrello .woo-cart-totals-inner .coupon ::placeholder {
  color: var(--wp--preset--color--paragraph);
}

.cart_totals .coupon {
  padding-bottom: 30px;
}
.coupon .button {
  width: 100% !important;
  margin-top: 0 !important;
  color: var(--white) !important;
  background-color: var(--wp--preset--color--headline) !important;
}
.shop_table .coupon .svuota {
  display: block;
  clear: both;
}
.shop_table .coupon input[name="coupon_code"] {
  width: 30% !important;
  padding: 13px 10px !important;
}
.shop_table .coupon button[name="apply_coupon"] {
  width: fit-content;
  float: left !important;
}
.woocommerce-remove-coupon {
  color: red !important;
}

/* ------------ Cart totals ------------ */
.pagina-carrello .item-cart-qty {
  display: inline-block;
  font-size: clamp(1.15rem, 0.839rem + 1.3268vw, 2rem);
  margin-right: 5px;
}
.articoli-nel-carrello {
  font-size: var(--wp--preset--font-size--heading-4);

  padding-bottom: 20px;
  color: var(--wp--preset--color--headline);
  font-family: var(--wp--preset--font-family--poppins-sans-serif);
  border-bottom: 1px solid var(--grey);
}
.woo-cart-totals-inner {
  border: 1px solid var(--grey);
  border-radius: 30px;
  padding: 40px 30px;
}

.woocommerce table.shop_table {
  border: none !important;
  border-collapse: collapse !important;
  border-radius: 0 !important;
}
.pagina-carrello .woo-cart-totals-inner .shop_table tbody {
  background-color: #f3feff;
  width: 100%;
  border-radius: 12px;
}
.pagina-carrello .shop_table td,
.pagina-carrello .shop_table tr,
.pagina-carrello .shop_table th {
  background-color: transparent !important;
  border: none !important;
  padding: 15px 20px !important;
}

@media (max-width: 768px) {
  .pagina-carrello .shop_table td,
  .pagina-carrello .shop_table tr,
  .pagina-carrello .shop_table th {
    background-color: transparent !important;
    padding: 10px !important;
  }
  .woo-cart-totals-inner {
    padding: 40px 25px;
  }
}
.pagina-carrello .shop_table tr:nth-child(1) th {
  border-radius: 12px 0 0 0;
}
.pagina-carrello .shop_table tr:nth-child(1) td {
  border-radius: 0 12px 0 0;
}
.pagina-carrello .shop_table tr:nth-child(2) th {
  border-radius: 0 0 0 12px;
}
.pagina-carrello .shop_table tr:nth-child(2) td {
  border-radius: 0 0 12px 0;
}

.pagina-carrello .cart-discount td,
.pagina-carrello td[data-title="Totale"],
.pagina-carrello td[data-title="Subtotale"] {
  text-align: right !important;
}

.pagina-checkout .cart-discount,
.pagina-carrello .cart-discount * {
  color: var(--wp--preset--color--primary) !important;
  font-weight: 600 !important;
}
.cart-discount .woocommerce-remove-coupon {
  color: var(--wp--preset--color--hover) !important;
}

.pagina-checkout .cart-discount {
  display: flex;
  flex-direction: column;
  gap: 10px;
  background-color: var(--grey-light);
  border-radius: 12px;
  padding: 15px;
}
.cart-discount .woocommerce-Price-amount {
  color: var(--wp--preset--color--primary) !important;
  font-weight: 600;
}
.pagina-carrello .cart-discount th,
.pagina-carrello .cart-discount td {
  border-radius: 0 !important;
  background-color: var(--wp--preset--color--secondary) !important;
}
.pagina-carrello tr.order-total {
  background-color: transparent !important;
  border-top: 1px solid var(--wp--preset--color--secondary);
}
.pagina-carrello td[data-title="Subtotale"] bdi {
  color: var(--wp--preset--color--paragraph);
  font-weight: 700;
  font-size: 0.9rem;
}

.woocommerce-minicart .quantity,
.woocommerce-Price-amount {
  font-family: var(--wp--preset--font-family--poppins-sans-serif);
}
.pagina-carrello td[data-title="Totale"] bdi {
  font-size: 1.5rem;
  font-weight: 600;
  color: var(--wp--preset--color--headline) !important;
  font-family: var(--wp--preset--font-family--poppins-sans-serif);
}

.pagina-checkout .cart-subtotal * {
  color: var(--wp--preset--color--paragraph) !important;
  font-weight: 600;
}

.pagina-carrello .shop_table.cart {
  height: fit-content;
}
.wc-proceed-to-checkout .button {
  background-color: var(--wp--preset--color--headline) !important;
}

/* ------------ Shipping methods ------------ */

.spedizioni-title {
  margin: 20px 0;
  font-weight: 600;
  font-size: var(--wp--preset--font-size--heading-5);
  color: var(--wp--preset--color--headline);
}
.woocommerce-shipping-destination {
  margin: 20px 0 !important;
  color: var(--wp--preset--color--headline);
}
#shipping_method,
.woocommerce-shipping-methods {
  padding: 0 !important;
  border-bottom: none !important;
  display: flex;
  align-items: center;
  gap: 20px !important;
  flex-wrap: wrap;
}
#shipping_method input[type="radio"],
.woocommerce-shipping-methods input[type="radio"] {
  display: none !important;
  opacity: 0;
  width: 0;
  height: 0;
  margin: 0;
  padding: 0;
  pointer-events: none;
}
#shipping_method label,
.woocommerce-shipping-methods label {
  display: inline-block;
  width: 100%;
  padding: 10px 20px;
  margin: 0;
  margin-bottom: 10px;
  background-color: transparent;
  border: 1px solid var(--grey);
  border-radius: 30px;
  cursor: pointer;
  transition: all 0.3s ease;
}
#shipping_method label:hover,
.woocommerce-shipping-methods label:hover {
  background-color: var(--wp--preset--color--hover);
  border: 1px solid var(--wp--preset--color--hover);
  color: var(--white) !important;
}
#shipping_method label:hover span,
.woocommerce-shipping-methods label:hover span {
  color: var(--white) !important;
}
#shipping_method input[type="radio"]:checked + label,
.woocommerce-shipping-methods input[type="radio"]:checked + label {
  background-color: var(--wp--preset--color--primary);
  border-color: var(--wp--preset--color--primary);
  color: var(--white) !important;
}
#shipping_method input[type="radio"]:checked + label span,
.woocommerce-shipping-methods input[type="radio"]:checked + label span {
  color: var(--white) !important;
}
.shipping-calculator-button {
  font-weight: 600;
  text-decoration: underline !important;
  color: var(--wp--preset--color--headline);
}
.shipping-calculator-form {
  margin-top: 20px;
}
.pagina-carrello .shipping-calculator-form input {
  border: 1px solid #a9cdd0 !important;
}

/* ------------ Go to checkout ------------ */
.wc-proceed-to-checkout .checkout-button {
  width: 100% !important;
  margin-top: 0 !important;
}
#add_payment_method .wc-proceed-to-checkout,
.woocommerce-cart .wc-proceed-to-checkout,
.woocommerce-checkout .wc-proceed-to-checkout {
  padding: 0 !important;
}

/* ------------ Cart cross-sells ------------ */
.cross-sells {
  padding: 60px 15px 0 15px;
  border-top: 1px solid var(--grey);
}
.cross-sells h3 {
  font-size: 1.3rem;
}

/* ------------ WooCommerce SHOP page ------------ */

/* ------------ WooCommerce product category filter ------------ */

.filtro-categorie-prodotti {
  margin-bottom: 30px;
  padding-bottom: 50px;
  border-bottom: 1px solid var(--grey-light);
}
.categorie-prodotti-list {
  gap: 25px;
  overflow-x: scroll;
  user-select: none;
  scrollbar-width: none;
  margin-top: 30px !important;
  will-change: transform;
  mask-image: linear-gradient(
    to left,
    hsl(0 0% 0% / 0),
    hsl(0 0% 0% / 1) 3%,
    hsl(0 0% 0% / 1) 97%,
    hsl(0 0% 0% / 0)
  );
}
.categorie-prodotti-list::-webkit-scrollbar {
  display: none;
}
.categoria-prodotto {
  min-width: 130px;
  flex-shrink: 0;
  border-radius: 7px;
}
.categoria-prodotto img {
  height: 100px;
  width: 100px;
  object-fit: cover;
  border-radius: 7px;
}
.categoria-prodotto.active img {
  border: 4px solid #3f8e8f;
}
.nome-categoria-prodotto {
  display: inline-block;
  margin-top: 15px;
  color: var(--wp--preset--color--headline);
  font-weight: 600;
  font-size: 0.925rem;
}

/* ------------ WooCommerce product page pagination ------------ */

.woocommerce-pagination .page-numbers {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  padding-top: 4vh;
  gap: 10px;
  border: none !important;
}
.woocommerce-pagination .page-numbers > li {
  border: none !important;
  float: none !important;
}
.woocommerce-pagination .page-numbers > li > span,
.woocommerce-pagination .page-numbers > li > a {
  display: grid;
  place-content: center;
  height: 50px;
  width: 50px;
  border: 1px solid var(--grey) !important;
  cursor: pointer;
}
.woocommerce nav.woocommerce-pagination ul li a:focus,
.woocommerce nav.woocommerce-pagination ul li a:hover {
  background-color: unset !important;
}
.woocommerce-pagination .page-numbers > li:hover > span,
.woocommerce-pagination .page-numbers > li:hover > a,
.woocommerce-pagination .page-numbers > li:target > a {
  background-color: unset !important;
  color: inherit !important;
}
.woocommerce-pagination .page-numbers > li > span.current,
.woocommerce-pagination .page-numbers > li > a.current {
  background-color: var(--wp--preset--color--button) !important;
  color: var(--white) !important;
  border: 1px solid var(--wp--preset--color--button) !important;
}

/* ------------ WooCommerce Category page ------------ */
.products .product-category .count {
  display: none;
}

.products .product-category .woocommerce-loop-category__title {
  color: var(--wp--preset--color--headline);
  background-color: transparent;
  font-size: var(--wp--preset--font-size--heading-4) !important;
}

.archive .term-description {
  display: none;
}
.product-category {
  overflow: hidden !important;
}

.woocommerce-loop-category__title {
  position: relative;
  top: -2px;
  background-color: var(--wp--preset--color--button);
  padding: 20px !important;
  font-family: var(--wp--preset--font-family--roboto-sans-serif);
  color: var(--white);
}
.woocommerce-loop-category__title mark {
  background-color: transparent;
  color: var(--white);
  font-weight: 600;
  margin-left: 5px;
}
/* ------------ WooCommerce product page ------------ */
.product_meta {
  clear: both;
}

/* ------------ WooCommerce product page layout ------------ */
.woocommerce div.product div.summary {
  margin-bottom: 0 !important;
}
.anteprima-prodotto {
  width: 70%;
  margin-inline: auto;
  max-width: 1600px;
  margin-bottom: 70px;
}
@media (max-width: 1600px) {
  .anteprima-prodotto {
    width: 90%;
  }
}
.anteprima-prodotto .woocommerce-product-gallery,
.anteprima-prodotto .summary {
  float: none !important;
  width: 50% !important;
}

/* ------- Woocommerce product Gallery ------- */
.woocommerce-product-gallery__wrapper {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.thumbnails-galleria-prodotto {
  flex-direction: row !important;
  width: 100%;
  gap: 20px;
}
.thumbnails-galleria-prodotto .woocommerce-product-gallery__image {
  width: 30% !important;
}
.woocommerce-product-gallery__image {
  width: 100% !important;
  height: 100% !important;
}
.woocommerce-product-gallery__image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

/* ------- Woocommerce product summary ------- */

.anteprima-prodotto .summary {
  position: relative;
  padding: 0 5%;
  overflow: hidden;
}

.pagina-prodotto .product_title {
  font-size: 1.8rem;
  font-family: var(--wp--preset--font-family--poppins-sans-serif);
  font-weight: 700;
}

.anteprima-prodotto .summary .price bdi {
  font-size: clamp(1.1rem, 0.8535rem + 1.0516vw, 1.8rem);
}
.woocommerce-product-details__short-description {
  margin: 20px 0 40px 0;
}
.stock {
  font-weight: 500;
  margin: 20px 0;
}

/* ------- Woocommerce product simple add to cart ------- */
.pagina-prodotto .cart .button,
.pagina-prodotto .cart .qnt-custom input {
  margin-bottom: 0 !important;
  margin-top: 0 !important;
}
@media (max-width: 500px) {
  .pagina-prodotto .cart .button,
  .pagina-prodotto .cart .qnt-custom input {
    margin-bottom: 15px !important;
  }
}
.pagina-prodotto .cart .qnt-custom {
  margin-right: 20px;
}
.pagina-prodotto .cart .button {
  width: 100% !important;
}
.pagina-prodotto .product-type-simple .cart {
  display: flex;
}
/* ------- Woocommerce product variable add to cart ------- */
.pagina-prodotto .woocommerce-variation-add-to-cart {
  display: flex;
}

/* ------- Woocommerce product variations ------- */
.variations th,
.variations tr,
.variations td {
  background-color: transparent !important;
  color: var(--black);
  padding: 0 !important;
}
.variations select {
  margin-bottom: 0;
}
.reset_variations {
  color: var(--wp--preset--color--headline);
}

@media (min-width: 768px) {
  .pagina-prodotto .cart .variations td {
    width: 100%;
    display: inline-block;
    margin-bottom: 15px !important;
  }
}

/* ------- Woocommerce product details variations ------- */
.woocommerce-variation {
  margin-bottom: 40px;
}
.woocommerce-variation-price .price {
  margin: 0 !important;
}
.woocommerce-variation-price .price span {
  font-weight: 500;
}
.woocommerce-variation-price .price .woocommerce-Price-amount bdi {
  font-size: clamp(1.1rem, 0.8535rem + 1.0516vw, 1.8rem);
}
.woocommerce-variation-availability {
  margin: 15px 0 20px 0;
}
.woocommerce-variation-availability p {
  font-weight: 500;
}
.woocommerce-variation-description p {
  font-size: 0.825rem;
}

/* ------- Woocommerce product META ------- */
.product_meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
}
.product_meta span,
.product_meta a {
  color: var(--black);
  font-weight: 400;
  font-size: 0.825rem;
}
.product_meta a:hover {
  color: var(--wp--preset--color--primary);
}

/* ------- Woocommerce related ------- */

.pagina-prodotto .related {
  padding-top: 70px;
  margin-top: 45px;
  border-top: 1px solid var(--grey);
}

/* ------- Woocommerce Recensioni ------- */

.cr-nav-right {
  background: var(--wp--preset--color--primary);
  border-radius: 50%;
  height: 35px;
  width: 35px;
  display: grid;
  place-content: center;
}

.cr-nav-right svg path {
  stroke: #ffffff !important;
}

.woocommerce p.stars a,
.woocommerce .star-rating span::before {
  color: var(--wp--preset--color--primary) !important;
}

.woocommerce div.product .woocommerce-product-rating {
  margin-bottom: 15px !important;
}
/* ------- Woocommerce CHECKOUT page  ------- */
.testata-checkout h1 {
  font-size: clamp(1rem, 0.9171rem + 0.7805vw, 1.6rem);
}
/* ------- comments ------- */

.woocommerce-Reviews {
  padding: 70px 0;
  margin-top: 70px;
  background-color: var(--wp--preset--color--primary);
}
.woocommerce-Reviews #comments,
.woocommerce-Reviews #review_form_wrapper {
  width: 90%;
  max-width: 1800px;
  margin-inline: auto;
  background-color: var(--white);
}
.woocommerce-Reviews #comments {
  border-radius: 30px 30px 0 0;
  padding: 40px 40px 30px 40px;
}
@media (max-width: 600px) {
  .woocommerce-Reviews #comments {
    padding: 40px 25px;
  }
}
.woocommerce-Reviews #review_form_wrapper {
  border-radius: 0 0 30px 30px;
  border-top: 1px solid var(--grey-light);
  padding: 20px 20px 30px 20px;
}
.comment-respond {
  margin: 0 !important;
}
.woocommerce-Reviews .woocommerce-Reviews-title {
  font-size: var(--wp--preset--font-size--heading-4);
  margin-bottom: 30px;
}

.woocommerce #reviews #comments ol.commentlist {
  padding: 0;
}

.woocommerce-Reviews .comment_container {
  border: 1px solid var(--grey);
  border-radius: 12px;
}
.woocommerce-Reviews .comment_container .comment-text {
  border: none !important;
  margin: 0 0 0 100px !important;
}
.woocommerce-Reviews .comment_container .product-avatar {
  margin-top: 1em !important;
  margin-left: 1.1em !important;
  width: 70px !important;
  border: none !important;
  border-radius: 7px !important;
}

.woocommerce-Reviews .nome-prodotto-recensito {
  font-size: 0.9rem;
  margin: 0 0 10px 0 !important;
  font-weight: 600;
  color: var(--wp--preset--color--headline);
}
.woocommerce-Reviews .woocommerce-review__author {
  color: var(--wp--preset--color--paragraph);
}

.woocommerce-Reviews .comment-reply-title {
  font-size: var(--wp--preset--font-size--heading-5);
  color: var(--wp--preset--color--headline);
  font-family: var(--wp--preset--font-family--poppins-sans-serif);
  display: inline-block;
  margin-bottom: 20px;
}

.woocommerce-Reviews textarea {
  margin-bottom: 20px;
}

/* ------- Estensione recensioni ------- */
.cr-all-reviews-shortcode ol.commentlist,
#reviews.cr-reviews-ajax-reviews
  #comments.cr-reviews-ajax-comments
  .cr-ajax-reviews-list {
  padding: 0;
}
.woocommerce-Reviews-title {
  border: 0;
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  word-wrap: normal !important;
}

#reviews {
  background-color: var(--wp--preset--color--primary);
  margin-top: 70px;
  padding: 70px 0;
}
#reviews .cr-reviews-ajax-comments {
  width: 90%;
  max-width: 1800px;
  margin-inline: auto;
  background-color: var(--white);
  padding: 4vw;
  border-radius: 30px;
}
.cr-ajax-reviews-review-form,
.cr-ajax-reviews-review-form.cr-ajax-reviews-review-form-nc {
  width: 90%;
  max-width: 1800px;
  margin-inline: auto;
}
#review_form_wrapper {
  margin-top: 30px;
  background-color: var(--white);
  padding: 4vw;
  border-radius: 30px;
}

#reviews .cr-summaryBox-wrap {
  background-color: #e0f7f9;
  border-radius: 12px;
  padding: 20px;
}

#reviews.cr-reviews-ajax-reviews .cr-ajax-reviews-add-review {
  border-radius: 30px;
  padding: 12px 20px;
  background: var(--wp--preset--color--primary) !important;
  border: none !important;
  color: var(--white);
}

.cr-all-reviews-shortcode .crstar-rating,
.cr-reviews-ajax-reviews
  .cr-reviews-ajax-comments
  .cr-ajax-reviews-list
  .comment-text
  .crstar-rating,
#reviews #comments .cr-summaryBox-wrap .crstar-rating {
  color: var(--wp--preset--color--primary);
}
.ivole-meter .ivole-meter-bar {
  background: var(--wp--preset--color--primary);
  border-radius: 30px;
}

#reviews tr {
  background-color: transparent !important;
  margin-bottom: 0;
  padding: 0;
}
#reviews td {
  text-align: left;
}
@media (max-width: 768px) {
  #reviews td {
    width: 100%;
  }
}
#reviews .ivole-histogramCell3 {
  text-align: right;
}

.ivole-meter {
  height: 10px;
  border-radius: 30px;
  box-shadow: none;
  background: #a2ced3;
}

.cr-ajax-reviews-cus-images-title {
  font-size: var(--wp--preset--font-size--heading-5) !important;
  font-weight: 600;
  margin-bottom: 12px !important;
}

.ivf-custom-question-hr {
  display: none;
}

.cr-count-row {
  border-radius: 30px;
}
/* ------- Custom rating  ------- */
.crf-custom-question-rating {
  font-weight: 600;
}
.crf-custom-question-rating-cont {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
  padding: 15px 0;
  border-bottom: 1px solid var(--grey-light);
}
/* ------- Custom question  ------- */
.ivf-custom-question-p {
  display: inline-block;
  gap: 10px;
  width: fit-content;
  border-radius: 30px;
  border: 1px solid var(--wp--preset--color--secondary);
  background-color: var(--wp--preset--color--secondary);
  padding: 5px 10px;
  font-size: 0.825rem;
  margin-right: 10px !important;
}
.ivf-custom-question-radio {
  font-weight: 600;
}

/* ------- Descritpion  ------- */

.description {
  border-top: 1px solid var(--grey-light);
}

/* ------- Nuova recensione banner ------- */
.cr-all-reviews-shortcode .cr-review-form-wrap .cr-review-form-nav,
.cr-ajax-reviews-review-form .cr-review-form-wrap .cr-review-form-nav,
.cr-reviews-grid .cr-review-form-wrap .cr-review-form-nav,
.cr-qna-block .cr-review-form-nav {
  border: 1px solid var(--grey-light) !important;
  border-radius: 30px !important;
  padding: 5px !important;
}
/* ------- Nuova recensione stelle ------- */
.cr-rating-act path {
  fill: var(--wp--preset--color--primary);
}
/* ------- Nuova recensione termini ------- */

.cr-review-form-terms span {
  font-weight: 400;
  font-size: 0.825rem;
}

/* ------- focus ------- */
#reviews.cr-reviews-ajax-reviews .cr-input-text:focus,
.cr-all-reviews-shortcode .cr-input-text:focus,
.cr-qna-block .cr-input-text:focus,
.cr-ajax-search input[type="text"]:focus {
  box-shadow: none;
  border: 1px solid var(--wp--preset--color--primary) !important;
}
/* ------- Buttons ------- */
.cr-reviews-ajax-reviews button[type="button"] {
  border-radius: 30px !important;
  background-color: var(--wp--preset--color--primary) !important;
  color: var(--white) !important;
  font-weight: 600 !important;
  padding: 10px 20px;
  border: none !important;
}
.cr-reviews-ajax-reviews button[type="button"]:active,
.cr-reviews-ajax-reviews button[type="button"]:hover {
  background-color: var(--wp--preset--color--hover) !important;
  color: var(--white) !important;
}

/* ------- Lightbox  ------- */
.pswp {
  z-index: 9999 !important;
}
.cr-ajax-reviews-cus-images-hdr {
  background: var(--wp--preset--color--white) !important;
  border-radius: 12px 12px 0 0;
}
#reviews.cr-reviews-ajax-reviews .cr-ajax-reviews-cus-images-modal,
.cr-all-reviews-shortcode .cr-ajax-reviews-cus-images-modal {
  border-radius: 12px;
}
#reviews.cr-reviews-ajax-reviews
  .cr-ajax-reviews-cus-images-modal
  .cr-ajax-reviews-cus-images-slider-nav,
.cr-all-reviews-shortcode
  .cr-ajax-reviews-cus-images-modal
  .cr-ajax-reviews-cus-images-slider-nav {
  border-radius: 12px;
  background-color: #f3f3f3;
}

/* ------- Woocommerce CHECKOUT page  ------- */
.testata-checkout h1 {
  font-size: clamp(1rem, 0.9171rem + 0.7805vw, 1.6rem);
}

/* ------- Checkout layout  ------- */
.col-shipping,
.col-shipping-2 {
  width: 100% !important;
}
.checkout-form-col {
  padding-right: 5vw;
  width: 55%;
}
.checkout-order-col {
  height: fit-content;
  width: 45%;
  border: 1px solid var(--grey);
  border-radius: 12px;
  padding: 5vh;
}
.woocommerce-billing-fields h3,
#ship-to-different-address span,
#order_review_heading {
  font-size: var(--wp--preset--font-size--heading-4);
  margin-bottom: 20px;
}
#ship-to-different-address span {
  font-size: var(--wp--preset--font-size--heading-5);
}

/* ------- Checkout coupon  ------- */
.coupon-form {
  display: flex;
  flex-direction: column;
  border-bottom: 1px solid var(--grey);
  padding-bottom: 20px;
}
.coupon-form .form-row {
  width: 100% !important;
}
.coupon-form button[type="button"] {
  margin-top: 10px !important;
  width: 100% !important;
  width: 100% !important;
  color: var(--white) !important;
  font-size: 0.925rem !important;
  padding: 14px 30px !important;
  background-color: var(--wp--preset--color--primary) !important;
  transition: 0.3s all cubic-bezier(0.39, 0.575, 0.565, 1);
}
.coupon-form button[type="button"]:hover {
  background-color: var(--wp--preset--color--hover) !important;
}

/* ------- Checkout order ------- */
.checkout-order-col .form-row {
  padding: 0 !important;
}

.pagina-checkout .shop_table .cart_item {
  position: relative;
  border-bottom: 1px solid var(--grey);
  padding-bottom: 20px;
  margin-bottom: 20px;
  gap: 20px;
}
.pagina-checkout .shop_table .cart_item .product-thumbnail {
  aspect-ratio: 1/1;
  width: 100px;
  height: 100px;
}
.pagina-checkout .shop_table .cart_item .product-thumbnail img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}
.pagina-checkout .shop_table .cart_item input {
  margin-bottom: 0 !important;
}
.pagina-checkout .shop_table .cart_item .product-remove {
  position: absolute;
  top: 0;
  right: 0;
}
.pagina-checkout .shop_table .cart_item .product-name {
  margin: 15px 0;
  color: var(--wp--preset--color--headline);
  font-weight: 700;
  font-size: var(--wp--preset--font-size--heading-5);
}
.pagina-checkout .shop_table .cart_item .product-total {
  margin-bottom: 20px;
}
.pagina-checkout .shop_table .cart_item .product-total bdi {
  color: var(--wp--preset--color--headline) !important;
  font-weight: 500 !important;
}
.pagina-carrello .order-total td[data-title="Totale"] bdi {
  color: var(--wp--preset--color--headline) !important;
}
.pagina-checkout .order-total {
  margin: 25px 0;
  padding: 12px 15px;
  background-color: transparent;
  border-radius: 12px;
  background-color: var(--wp--preset--color--secondary);
}
.pagina-carrello .order-total th,
.pagina-carrello .order-total td[data-title="Totale"]::before,
.pagina-checkout .order-total p {
  font-size: 1.2rem !important;
  font-weight: 700 !important;
  color: var(--wp--preset--color--headline) !important;
  margin-bottom: 0 !important;
}
.pagina-checkout .order-total .amount {
  font-size: 1.5rem;
  letter-spacing: 0;
}

/* ------- Checkout payments ------- */

#payment {
  background-color: transparent !important;
}
.wc_payment_methods {
  padding: 0 !important;
  border-bottom: none !important;
}
.woocommerce-checkout-payment .input-radio {
  position: absolute !important;
  opacity: 0 !important;
  width: 0;
  height: 0;
  margin: 0;
  padding: 0;
  pointer-events: none;
}

label[for="wc-woocommerce_payments-new-payment-method"] {
  position: relative;
  top: 2px;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
  font-size: 0.925rem !important;
  line-height: 1 !important;
}
.woocommerce-checkout-payment .payment_methods .wc_payment_method label:hover {
  background-color: var(--wp--preset--color--secondary);
  border: 1px solid var(--wp--preset--color--secondary);
}
.woocommerce-checkout-payment
  .payment_methods
  .wc_payment_method
  input[type="radio"]:checked
  + label {
  background-color: var(--wp--preset--color--primary);
  border-color: var(--wp--preset--color--primary);
  color: var(--white);
}
.woocommerce-checkout-payment .payment_methods .wc_payment_method .payment_box {
  display: none;
}
.payment_box fieldset {
  margin: 0 !important;
}
.woocommerce-checkout-payment
  .payment_methods
  .wc_payment_method
  input[type="radio"]:checked
  ~ .payment_box {
  display: block;
  margin-top: 10px;
}
.payment_box::before {
  display: none !important;
}
.payment_box {
  border-radius: 12px !important;
  background-color: transparent !important;
  border: 1px solid var(--grey);
  margin-bottom: 10px;
}
.payment_box p,
.payment_box a {
  color: var(--wp--preset--color--paragraph) !important;
}
.payment_box a {
  text-decoration: underline !important;
}
.payment_box fieldset {
  margin-bottom: 0 !important;
  border: none !important;
}
.pagina-checkout #payment #place_order,
.woocommerce-page #payment #place_order {
  width: 100% !important;
  padding: 15px 30px !important;
  font-size: 1rem !important;
}

.pagina-checkout .woocommerce form.login {
  padding: 70px 5vw !important;
  margin: 0 0 2em 0 !important;
}

.pagina-checkout label.checkbox {
  font-size: 0.925rem !important;
  font-weight: 400 !important;
}

.pagina-checkout #account_username_field {
  margin-top: 30px;
  padding-top: 30px;
  border-top: 1px solid #ccc;
}

/* ------- Payments IFRAME  ------- */
.ppcp-messages {
  padding: 20px !important;
  border: 1px solid var(--grey) !important;
  border-radius: 12px !important;
  margin-bottom: 20px !important;
}
/*Googlepay - applepay*/
.pagina-prodotto .wcpay-payment-request-wrapper {
  margin-bottom: 25px;
}
.pagina-prodotto .summary #payment-method-message,
.wp-block-woocommerce-product-price + #payment-method-message {
  height: auto !important;
}
.pagina-carrello #payment-method-message {
  margin-bottom: 30px !important;
}

/* ------- Checkout thankyou order page ------- */
.thankyou-order h2 {
  font-size: var(--wp--preset--font-size--heading-4);
  font-family: var(--wp--preset--font-family--poppins-sans-serif);
  margin-bottom: 20px;
}
.woocommerce-thankyou-order-received {
  margin-top: 20px;
  font-size: var(--wp--preset--font-size--heading-2);
}
.order-details-subtitle,
.wc-bacs-bank-details-account-name {
  text-transform: unset;
  font-size: clamp(1rem, 0.9268rem + 0.3122vw, 1.2rem);
  margin: 20px 0 !important;
  color: var(--wp--preset--color--headline);
  font-weight: 600;
  letter-spacing: 0;
}
.order-yes {
  justify-content: center;
  margin-bottom: 10px;
}
.order-yes .check-yes {
  display: block;
  display: grid;
  place-content: center;
  height: 70px;
  width: 70px;
  border-radius: 50%;
  background-color: var(--wp--preset--color--primary);
}
.details-order-thankyou {
  padding: 20px 0;
  flex-wrap: wrap;
  border-top: 1px solid var(--grey-light);
  border-bottom: 1px solid var(--grey-light);
  gap: 30px;
  margin: 40px 0;
}
.data-ordine,
.stampa-ordine {
  gap: 7px;
}
.stampa-ordine a {
  font-weight: 400;
}

.woocommerce-privacy-policy-text p {
  font-size: 0.825rem;
  margin: 15px 0 !important;
}

.woocommerce-order-details .woocommerce-table__product-name a {
  font-size: var(--wp--preset--font-size--heading-5);
  font-weight: 600;
  color: var(--wp--preset--color--headline);
}
.wc-item-meta {
  padding: 0;
  margin: 0;
  margin: 10px 0 30px 0;
}
.wc-item-meta > li {
  display: flex;
  align-items: center;
}
.wc-item-meta > li strong {
  color: var(--wp--preset--color--primary);
}

/* ------- WooCommerce General Address  ------- */
#ship-to-different-address input {
  opacity: 0 !important;
  display: none !important;
  width: 0;
  height: 0;
  margin: 0;
  padding: 0;
  pointer-events: none;
}
#ship-to-different-address {
  font-size: 1rem !important;
  width: 100%;
  margin-top: 30px;
  color: var(--white);
  text-transform: unset !important;
  letter-spacing: 0;
}
#ship-to-different-address label,
.woocommerce-checkout-payment .payment_methods .wc_payment_method label {
  display: inline-block !important;
  width: 100%;
  padding: 15px 20px;
  margin: 0;
  margin-bottom: 10px;
  background-color: transparent;
  border: 1px solid var(--grey);
  border-radius: 12px;
  cursor: pointer;
  transition: all 0.3s ease;
}
#ship-to-different-address label {
  background-color: var(--wp--preset--color--primary);
  border: 1px solid var(--wp--preset--color--primary);
}

.addresses h2 {
  font-size: 1.2rem !important;
}
address {
  border: 1px solid var(--grey) !important;
  border-radius: 12px !important;
  font-weight: 500;
  color: var(--wp--preset--color--headline);
  line-height: 1.5;
  padding: 15px !important;
}
address p {
  font-weight: 500;
  color: var(--wp--preset--color--headline);
  margin-bottom: 0;
}
.addresses .edit {
  margin-bottom: 20px !important;
}
.edit {
  margin-top: 0 !important;
  float: unset !important;
}
.woocommerce-orders-table .button {
  margin-top: 0 !important;
}
.woocommerce-terms-and-conditions-checkbox-text {
  font-weight: 400 !important;
  font-size: 0.925rem;
  font-family: var(--wp--preset--font-family--roboto-sans-serif);
}

/*? ------------ WooCommerce Splide js------------ */
.splide .product {
  width: 100% !important;
  margin: 0 !important;
  float: none !important;
}

/** 14.0 Breakpoints **/

/** Display 12", iPad PRO Portrait, iPad landscape **/
@media only screen and (max-width: 1024px) {
  /* ------- Woocommerce my account login / register - Tablet ------- */
  .pagina-di-accesso {
    grid-template-columns: repeat(1, 1fr);
  }
  .col-forms-login {
    padding: 0;
  }
  .col-media-login {
    display: none;
  }

  /* ------- Woocommerce CART page - Tablet ------- */

  /* ------- Cart layout------- */
  .woocommerce-cart-form {
    grid-template-columns: repeat(1, 1fr);
    gap: 20px;
  }
  /* ------- Cart Totals - Tablet ------- */
  .cart_totals {
    margin-top: 25px;
  }

  /* ------- Woocommerce PRODUCT page - Tablet ------- */
  /* ------- Woocommerce product page layout - Tablet ------- */
  .anteprima-prodotto {
    flex-direction: column;
  }
  .anteprima-prodotto .woocommerce-product-gallery,
  .anteprima-prodotto .summary {
    width: 100% !important;
  }
  .anteprima-prodotto .summary {
    padding: 40px 0;
  }
  /* ------- Woocommerce product summary - Tablet ------- */
  .anteprima-prodotto .summary {
    padding: 35px 0 0 0;
  }

  /* ------- Woocommerce CHECKOUT page - Tablet ------- */
  .checkout-wrapper {
    flex-direction: column;
    gap: 40px;
  }
  .checkout-wrapper .checkout-form-col,
  .checkout-wrapper .checkout-order-col {
    width: 100% !important;
  }
  .checkout-wrapper .checkout-form-col {
    padding-right: 0;
  }
  .checkout-wrapper .checkout-order-col {
    padding: 5vw 30px;
  }
}

/* ------- BLOCCHI CUSTOM ------- */

/* ------- Schede prodotto ------- */
.scheda-item-prd {
  background-color: #e0f7f9;
  border-radius: 12px;
  padding: 20px 25px;
  margin-bottom: 15px;
}
.scheda-prd-titolo {
  font-size: 1.1rem;
  color: var(--black);
}

.scheda-prd-descrizione p {
  font-size: 0.825rem;
  color: var(--black);
}
.scheda-prd-descrizione strong {
  color: var(--wp--preset--color--primary) !important;
  font-weight: 600 !important;
}
.scheda-prd-ico img {
  height: auto;
  width: 50px;
  margin-right: 10px;
}

/** Display 5.5", iPad Portrait, iPhone 6, 6s, 7, 8 portrait and landscape, iPhone 5s landscape **/
@media only screen and (max-width: 768px) {
  /* ------- Woocommerce dashobard - Tablet mini ------- */
  .dashboard-home {
    grid-template-columns: repeat(1, 1fr);
    gap: 30px;
  }
  .box-dashboard {
    min-height: 350px;
  }
  /* ------- Woocommerce product variatons - tablet mini ------- */
  .variations tr {
    display: flex;
    flex-direction: column;
  }
  /* ------- Woocommerce general address - tablet mini ------- */
  .woocommerce-columns .woocommerce-column--shipping-address {
    margin-top: 30px !important;
  }
}
/** Display 4", iPhone 5s portrait **/
@media only screen and (max-width: 490px) {
  /* ------- Woocommerce product category filter - Mobile ------- */
  .products .product {
    width: 100% !important;
  }

  /* ------- Woocommerce product gallery - Mobile ------- */
  .woocommerce-product-gallery__wrapper {
    flex-direction: column;
  }
  .thumbnails-galleria-prodotto {
    flex-direction: row !important;
    width: 100%;
  }

  /* ------- Woocommerce product variable / simple add to cart - Mobile ------- */
  .pagina-prodotto .qnt-custom {
    width: 100%;
    margin-right: 0;
    margin-bottom: 25px;
  }
  .pagina-prodotto .qnt-custom input {
    width: 100% !important;
  }
  .pagina-prodotto .product-type-simple .cart,
  .pagina-prodotto .woocommerce-variation-add-to-cart {
    flex-direction: column;
  }
}

/* ------- POINTS ADMINPAGE ------- */

.ywpar_summary_badge,
.ywpar_levels_badges {
  background-color: var(--wp--preset--color--secondary) !important;
}

.ywpar_to_redeem_title {
  color: var(--wp--preset--color--primary) !important;
}
.ywpar_total_collected_title,
.points_collected {
  font-weight: 600;
  color: var(--wp--preset--color--primary) !important;
  margin: 0.7em 0;
}

.ywpar_level img {
  margin-bottom: 20px !important;
}

.ywpar_level span {
  font-weight: 600;
}

#ywpar_tabs {
  margin-top: 45px !important;
}

#ywpar_tabs ul {
  padding-bottom: 30px !important;
}

.ywpar_tabs_header ul li.active {
  color: var(--wp--preset--color--headline) !important;
  border-bottom: 2px solid var(--wp--preset--color--primary) !important;
}

#share_points {
  background-color: var(--wp--preset--color--secondary) !important;
  padding: 40px 40px 10px 40px !important;
}

#ywpar-share-points__submit {
  margin-top: 30px !important;
  background-color: var(--wp--preset--color--primary) !important;
  margin-left: 0 !important;
}

#ywpar_share_points_to_share {
  text-align: center !important;
  border: 1px solid var(--wp--preset--color--primary) !important;
  height: 15px !important;
  margin: 5px 10px !important;
}

#yith_birthday {
  border-radius: 30px !important;
  padding: 15px 20px !important;
}

/* Banner recensioni */
.pagina-checkout .cr-trustbadgef .cr-badge,
.pagina-carrello .cr-trustbadgef .cr-badge {
  width: 100% !important;
  margin-bottom: 20px;
}
