@charset "UTF-8";
.hm-label, .hm-label-sm, .hm-dettagli__title, .hm-lightbox__hint, .hm-lightbox__count, .hm-eyebrow {
  font-family: "Figtree";
  font-size: 0.75rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  font-weight: 400;
}

.hm-label-sm, .hm-dettagli__title, .hm-lightbox__hint, .hm-lightbox__count, .hm-eyebrow {
  font-size: 0.6875rem;
  letter-spacing: 0.18em;
}

.btn {
  text-transform: uppercase;
  font-size: 0.75rem;
  letter-spacing: 0.14em;
  padding: 0.75rem 1.75rem;
}

.btn-link {
  letter-spacing: 0.14em;
  text-decoration: none;
}
.btn-link:hover {
  text-decoration: underline;
  text-underline-offset: 0.35em;
}

.navbar-nav .nav-link,
.nav-link {
  font-size: 0.75rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.hm-price,
.price {
  font-family: "Figtree";
  font-variant-numeric: tabular-nums;
  font-feature-settings: "tnum";
}

h1, h2, h3, .h1, .h2, .h3 {
  font-weight: 500;
  line-height: 1.15;
}

.hm-eyebrow {
  color: #8D8D8D;
  display: block;
  margin-bottom: 0.75rem;
}

.container,
.container-fluid {
  padding-right: 1.25rem;
  padding-left: 1.25rem;
}
@media (min-width: 992px) {
  .container,
  .container-fluid {
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

@keyframes hm-btn-wipe {
  0% {
    transform: scaleX(1);
    transform-origin: right;
  }
  49% {
    transform: scaleX(0);
    transform-origin: right;
  }
  50% {
    transform: scaleX(0);
    transform-origin: left;
  }
  100% {
    transform: scaleX(1);
    transform-origin: left;
  }
}
@keyframes hm-btn-pulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.2;
  }
}
.hm-btn {
  position: relative;
  display: inline-block;
  padding: 0.35rem 0 0.5rem;
  border: 0;
  background: none;
  color: #343434;
  font-family: "Figtree";
  font-size: 0.75rem;
  font-weight: 400;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  text-decoration: none;
  line-height: 1.4;
  text-align: center;
  cursor: pointer;
}
.hm-btn::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: currentColor;
}
.hm-btn:active {
  transform: translateY(1px);
}
.hm-btn:focus-visible {
  outline: 1px solid currentColor;
  outline-offset: 3px;
}
.hm-btn.is-busy, .hm-btn:disabled, .hm-btn[aria-busy=true] {
  pointer-events: none;
  opacity: 0.55;
}
.hm-btn.is-busy::after, .hm-btn[aria-busy=true]::after {
  animation: hm-btn-pulse 1s linear infinite;
}
@media (prefers-reduced-motion: reduce) {
  .hm-btn.is-busy::after, .hm-btn[aria-busy=true]::after {
    animation: none;
  }
}

.hm-btn--wipe {
  display: inline-block;
  position: relative;
  text-decoration: none;
  border-bottom: 0;
}
.hm-btn--wipe::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: currentColor;
}
.hm-btn--wipe:active {
  transform: translateY(1px);
}
.hm-btn--wipe:focus-visible {
  outline: 1px solid currentColor;
  outline-offset: 3px;
}
.hm-btn--wipe:hover::after, .hm-btn--wipe:focus-visible::after {
  animation: hm-btn-wipe 420ms cubic-bezier(0.22, 1, 0.36, 1);
}
@media (prefers-reduced-motion: reduce) {
  .hm-btn--wipe:hover::after, .hm-btn--wipe:focus-visible::after {
    animation: none;
    opacity: 0.45;
  }
}

.hm-btn--roll .hm-btn__roll {
  display: block;
  position: relative;
  overflow: hidden;
  height: 1.4em;
  height: 1lh;
}
.hm-btn--roll .hm-btn__roll i {
  display: block;
  font-style: normal;
  transition: transform 420ms cubic-bezier(0.22, 1, 0.36, 1);
}
.hm-btn--roll .hm-btn__roll i + i {
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
}
.hm-btn--roll:hover .hm-btn__roll i, .hm-btn--roll:focus-visible .hm-btn__roll i {
  transform: translateY(-100%);
}
.hm-btn--roll:not(:has(.hm-btn__roll)):hover::after, .hm-btn--roll:not(:has(.hm-btn__roll)):focus-visible::after, .hm-btn--roll.is-wrapped:hover::after, .hm-btn--roll.is-wrapped:focus-visible::after {
  animation: hm-btn-wipe 420ms cubic-bezier(0.22, 1, 0.36, 1);
}
@media (prefers-reduced-motion: reduce) {
  .hm-btn--roll:not(:has(.hm-btn__roll)):hover::after, .hm-btn--roll:not(:has(.hm-btn__roll)):focus-visible::after, .hm-btn--roll.is-wrapped:hover::after, .hm-btn--roll.is-wrapped:focus-visible::after {
    animation: none;
    opacity: 0.45;
  }
}
.hm-btn--roll.is-wrapped .hm-btn__roll {
  height: auto;
  overflow: visible;
  white-space: normal;
}
.hm-btn--roll.is-wrapped .hm-btn__roll i {
  transition: none;
}
.hm-btn--roll.is-wrapped .hm-btn__roll i + i {
  display: none;
}
.hm-btn--roll.is-wrapped:hover .hm-btn__roll i, .hm-btn--roll.is-wrapped:focus-visible .hm-btn__roll i {
  transform: none;
}
@media (prefers-reduced-motion: reduce) {
  .hm-btn--roll .hm-btn__roll i {
    transition: none;
  }
  .hm-btn--roll:hover .hm-btn__roll i, .hm-btn--roll:focus-visible .hm-btn__roll i {
    transform: none;
  }
  .hm-btn--roll:hover::after, .hm-btn--roll:focus-visible::after {
    opacity: 0.45;
  }
}

.wpcf7 .form-control,
.wpcf7 .form-select {
  border: 1px solid #C8C8C8;
  border-radius: 0;
  padding: 0.75rem 0.9rem;
  font-size: 0.95rem;
  color: #343434;
  background-color: #fff;
  box-shadow: none;
}
.wpcf7 .form-control::placeholder,
.wpcf7 .form-select::placeholder {
  color: #8D8D8D;
  opacity: 1;
}
.wpcf7 .form-control:focus,
.wpcf7 .form-select:focus {
  border-color: #343434;
  box-shadow: none;
  outline: none;
}
.wpcf7 textarea.form-control {
  min-height: 8rem;
  resize: vertical;
}
.wpcf7 .form-select {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23343434' d='M6 8 0 0h12z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 0.9rem center;
  background-size: 10px 7px;
}
.wpcf7 .form-check-input {
  border: 1px solid #C8C8C8;
  border-radius: 0;
}
.wpcf7 .form-check-input:checked {
  background-color: #343434;
  border-color: #343434;
}
.wpcf7 .form-check-input:focus {
  box-shadow: none;
  border-color: #343434;
}
.wpcf7 .wpcf7-submit:not(.hm-newsletter__submit) {
  text-transform: uppercase;
  letter-spacing: 0.14em;
  font-size: 0.78rem;
  padding: 0.9rem 1.5rem;
  border-radius: 0;
  transition: background-color 420ms cubic-bezier(0.22, 1, 0.36, 1), border-color 420ms cubic-bezier(0.22, 1, 0.36, 1), color 420ms cubic-bezier(0.22, 1, 0.36, 1);
}
.wpcf7 .wpcf7-submit:not(.hm-newsletter__submit):active {
  transform: translateY(1px);
}
.wpcf7 .wpcf7-submit:not(.hm-newsletter__submit):focus-visible {
  outline: 1px solid currentColor;
  outline-offset: 3px;
}
.wpcf7 .wpcf7-submit:not(.hm-newsletter__submit).is-busy, .wpcf7 .wpcf7-submit:not(.hm-newsletter__submit).is-loading, .wpcf7 .wpcf7-submit:not(.hm-newsletter__submit).loading, .wpcf7 .wpcf7-submit:not(.hm-newsletter__submit)[aria-busy=true] {
  pointer-events: none;
  opacity: 0.55;
}
@media (prefers-reduced-motion: reduce) {
  .wpcf7 .wpcf7-submit:not(.hm-newsletter__submit) {
    transition: none;
  }
}
.wpcf7 .wpcf7-submit:not(.hm-newsletter__submit):hover, .wpcf7 .wpcf7-submit:not(.hm-newsletter__submit):focus {
  background: #8D8D8D;
  border-color: #8D8D8D;
  color: #FFFFFF;
}
@media (prefers-reduced-motion: no-preference) {
  .wpcf7 .wpcf7-submit:not(.hm-newsletter__submit).hm-btn--roll:has(.hm-btn__roll):not(.is-wrapped):hover, .wpcf7 .wpcf7-submit:not(.hm-newsletter__submit).hm-btn--roll:has(.hm-btn__roll):not(.is-wrapped):focus-visible {
    background: #343434;
    color: #FFFFFF;
    border-color: #343434;
  }
}
.wpcf7 .wpcf7-form.submitting .wpcf7-submit {
  pointer-events: none;
  opacity: 0.55;
}
.wpcf7 .wpcf7-not-valid {
  border-color: #7A5C5C;
}
.wpcf7 .wpcf7-not-valid-tip {
  color: #7A5C5C;
  font-size: 0.8rem;
  margin-top: 0.25rem;
}
.wpcf7 .wpcf7-response-output {
  border: 1px solid #C8C8C8;
  border-radius: 0;
  padding: 0.75rem 1rem;
  margin: 1rem 0 0;
  font-size: 0.9rem;
}
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.spam .wpcf7-response-output,
.wpcf7 form.aborted .wpcf7-response-output,
.wpcf7 form.failed .wpcf7-response-output {
  border-color: #7A5C5C;
  color: #7A5C5C;
}
.wpcf7 form.sent .wpcf7-response-output {
  border-color: #343434;
  color: #343434;
}

.hm-contact-hero__title {
  font-family: "Figtree";
  font-weight: 500;
  font-size: clamp(2.2rem, 5vw, 3.4rem);
  line-height: 1.1;
  color: #343434;
}

.ns-ot-btn {
  background: transparent;
  color: #343434 !important;
  border: 1px solid #343434;
  padding: 0.875rem 2.5rem;
  font-size: 0.75rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  font-weight: 500;
  transition: background 240ms, color 240ms;
}
.ns-ot-btn:hover, .ns-ot-btn:focus-visible {
  background: #343434;
  color: #FFFFFF !important;
  opacity: 1;
}
.ns-ot-btn:active {
  transform: translateY(1px);
}

.hm-announcement {
  background: #343434;
  color: #fff;
  text-align: center;
  padding: 0.5rem 1rem;
  font-size: 0.625rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}
@media (min-width: 992px) {
  .hm-announcement {
    padding: 0.5625rem 1.5rem;
    font-size: 0.6875rem;
    letter-spacing: 0.15em;
  }
}

:root {
  --hm-header-h: 3.75rem;
}
@media (min-width: 992px) {
  :root {
    --hm-header-h: 5.5rem;
  }
  :root:has(.hm-header--compact) {
    --hm-header-h: 4rem;
  }
}

.hm-header-sticky {
  position: sticky;
  top: 0;
  z-index: 60;
}

.live-refresh:has(.hm-header-sticky) {
  display: contents;
}

.hm-header {
  background: #fff;
  border-bottom: 1px solid #C8C8C8;
  position: relative;
}
@media (min-width: 992px) {
  .hm-header {
    z-index: 62;
  }
}

.hm-header__bar {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  height: 3.75rem;
}
@media (min-width: 992px) {
  .hm-header__bar {
    height: 5.5rem;
    transition: height 300ms cubic-bezier(0.22, 1, 0.36, 1);
  }
  .hm-header--compact .hm-header__bar {
    height: 4rem;
  }
}

.hm-header__logo {
  display: block;
  justify-self: center;
  color: #343434;
}
@media (min-width: 992px) {
  .hm-header__logo {
    padding: 0 2rem;
  }
}
.hm-header__logo svg {
  display: block;
  height: 1rem;
  width: auto;
}
@media (min-width: 992px) {
  .hm-header__logo svg {
    height: 1.3125rem;
    transition: height 300ms cubic-bezier(0.22, 1, 0.36, 1);
  }
  .hm-header--compact .hm-header__logo svg {
    height: 1.0625rem;
  }
}
.hm-header__logo img {
  width: auto;
}
.hm-header__logo img.hm-header__logo-full {
  display: block;
  height: 2.5rem;
}
@media (min-width: 992px) {
  .hm-header__logo img.hm-header__logo-full {
    height: 3.25rem;
    transition: height 300ms cubic-bezier(0.22, 1, 0.36, 1);
  }
  .hm-header--compact .hm-header__logo img.hm-header__logo-full {
    display: none;
  }
}
.hm-header__logo img.hm-header__logo-mark {
  display: none;
}
@media (min-width: 992px) {
  .hm-header--compact .hm-header__logo img.hm-header__logo-mark {
    display: block;
    height: 2.5rem;
  }
}

.hm-header__icons {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  justify-self: end;
}
.hm-header__icons--start {
  justify-self: start;
}

.hm-icon-btn {
  appearance: none;
  background: none;
  border: 0;
  padding: 0;
  width: 2.75rem;
  height: 2.75rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #343434;
  cursor: pointer;
  position: relative;
}
.hm-icon-btn svg {
  width: 1.1875rem;
  height: 1.1875rem;
}
@media (min-width: 992px) {
  .hm-icon-btn svg {
    width: 1.25rem;
    height: 1.25rem;
  }
}
.hm-icon-btn:active {
  transform: translateY(1px);
}

.hm-cart-count, .hm-icon-btn .hm-wishlist-count {
  position: absolute;
  top: 0.25rem;
  right: 0.125rem;
  background: #343434;
  color: #fff;
  font-size: 0.5625rem;
  width: 0.875rem;
  height: 0.875rem;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-variant-numeric: tabular-nums;
  line-height: 1;
}
@media (min-width: 992px) {
  .hm-cart-count, .hm-icon-btn .hm-wishlist-count {
    width: 0.9375rem;
    height: 0.9375rem;
  }
}
.hm-cart-count:empty, .hm-icon-btn .hm-wishlist-count:empty, .hm-cart-count[hidden], .hm-icon-btn [hidden].hm-wishlist-count {
  display: none;
}

.hm-nav {
  display: flex;
  align-items: center;
  gap: 2rem;
  justify-self: start;
}

.hm-nav__link {
  appearance: none;
  background: none;
  border: 0;
  padding: 0.875rem 0;
  font-family: "Figtree";
  font-size: 0.75rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  font-weight: 500;
  color: #343434;
  cursor: pointer;
  text-decoration: none;
  background-image: linear-gradient(#343434, #343434);
  background-repeat: no-repeat;
  background-position: left bottom;
  background-size: 0% 1px;
  transition: background-size 420ms cubic-bezier(0.22, 1, 0.36, 1);
}
.hm-nav__link:hover, .hm-nav__link:focus-visible, .hm-nav__link[aria-expanded=true] {
  background-size: 100% 1px;
}
.hm-nav__link--current {
  font-weight: 600;
  border-bottom: 1px solid #343434;
  background-image: none;
}

body.hm-prezzi-nascosti [data-hm-cart-open] {
  display: none;
}

.hm-lang {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-family: "Figtree";
  font-size: 0.75rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  font-weight: 500;
  line-height: 1;
}

.hm-lang__item {
  color: #8D8D8D;
  text-decoration: none;
  padding: 0.25rem 0;
}
.hm-lang__item.is-active {
  color: #343434;
}
.hm-lang__item:is(a) {
  background-image: linear-gradient(#343434, #343434);
  background-repeat: no-repeat;
  background-position: left bottom;
  background-size: 0% 1px;
  transition: background-size 420ms cubic-bezier(0.22, 1, 0.36, 1), color 420ms cubic-bezier(0.22, 1, 0.36, 1);
}
.hm-lang__item:is(a):hover, .hm-lang__item:is(a):focus-visible {
  color: #343434;
  background-size: 100% 1px;
}

.hm-lang__sep {
  width: 1px;
  height: 0.75rem;
  background: #C8C8C8;
}

.hm-lang--bar {
  height: 2.75rem;
  padding: 0 0.5rem;
}

.hm-lang--drawer {
  min-height: 2.75rem;
  margin-top: 0.5rem;
}
.hm-lang--drawer .hm-lang__item {
  padding: 0.75rem 0;
}

.hm-wishlist-toggle {
  display: none;
}

html.hm-js .hm-wishlist-toggle {
  appearance: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  border: 1px solid #C8C8C8;
  color: #343434;
  padding: 0;
  cursor: pointer;
  transition: color 420ms cubic-bezier(0.22, 1, 0.36, 1), border-color 420ms cubic-bezier(0.22, 1, 0.36, 1), opacity 420ms cubic-bezier(0.22, 1, 0.36, 1);
}
html.hm-js .hm-wishlist-toggle svg {
  width: 18px;
  height: 18px;
}
html.hm-js .hm-wishlist-toggle:hover, html.hm-js .hm-wishlist-toggle:focus-visible {
  border-color: #343434;
}
html.hm-js .hm-wishlist-toggle:active {
  transform: translateY(1px);
}
html.hm-js .hm-wishlist-toggle.is-active svg {
  fill: currentColor;
}

.hm-product-card__media .hm-wishlist-toggle--card {
  position: absolute;
  top: 0.75rem;
  right: 0.75rem;
  z-index: 2;
  width: 2.25rem;
  height: 2.25rem;
  opacity: 0;
}
.hm-product-card__media .hm-wishlist-toggle--card.is-active, .hm-product-card__media .hm-wishlist-toggle--card:focus-visible {
  opacity: 1;
}

.hm-product-card:hover .hm-wishlist-toggle--card {
  opacity: 1;
}

@media (hover: none) {
  .hm-product-card__media .hm-wishlist-toggle--card {
    opacity: 1;
  }
}
.hm-pinfo__buy {
  display: flex;
  align-items: stretch;
  gap: 0.5rem;
  margin-top: 2rem;
}
.hm-pinfo__buy .hm-pinfo__form {
  flex: 1;
  min-width: 0;
}
.hm-pinfo__buy .hm-wishlist-toggle--pdp {
  width: 3rem;
  border-color: #C8C8C8;
}

.hm-pinfo--variation-soldout .hm-pinfo__buy {
  align-items: flex-start;
}
.hm-pinfo--variation-soldout .hm-pinfo__buy .hm-wishlist-toggle--pdp {
  height: 3rem;
  flex: 0 0 auto;
}

.hm-wishlist__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 2.5rem 1rem;
}
@media (min-width: 992px) {
  .hm-wishlist__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

.hm-wishlist__empty {
  padding: 4rem 0;
  text-align: center;
  color: #8D8D8D;
}

.hm-toast-stack {
  z-index: 1090;
  gap: 0.5rem;
  padding-bottom: calc(2rem + env(safe-area-inset-bottom, 0px));
}
@media (max-width: 767.98px) {
  .hm-toast-stack {
    padding-bottom: calc(76px + 0.75rem + env(safe-area-inset-bottom, 0px));
  }
}
.hm-toast-stack {
  pointer-events: none;
  width: max-content;
  max-width: min(92vw, 480px);
}

.hm-toast {
  pointer-events: auto;
  border: 1px solid #343434;
  box-shadow: 0 0 0 1px #FFFFFF;
  padding: 1.125rem 1.5rem;
  gap: 1.25rem;
  font-size: 0.9375rem;
  color: #343434;
  opacity: 0;
  transform: translateY(0.75rem);
  transition: opacity 250ms ease, transform 350ms cubic-bezier(0.22, 1, 0.36, 1);
}
.hm-toast.is-in {
  opacity: 1;
  transform: translateY(0);
}
.hm-toast__link {
  color: #343434;
  font-size: 0.6875rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  padding-bottom: 0.1rem;
  white-space: nowrap;
  position: relative;
  text-decoration: none;
  border-bottom: 0;
}
.hm-toast__link::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: currentColor;
}
.hm-toast__link:active {
  transform: translateY(1px);
}
.hm-toast__link:focus-visible {
  outline: 1px solid currentColor;
  outline-offset: 3px;
}
.hm-toast__link:hover::after, .hm-toast__link:focus-visible::after {
  animation: hm-btn-wipe 420ms cubic-bezier(0.22, 1, 0.36, 1);
}
@media (prefers-reduced-motion: reduce) {
  .hm-toast__link:hover::after, .hm-toast__link:focus-visible::after {
    animation: none;
    opacity: 0.45;
  }
}
.hm-toast__close {
  font-size: 1.125rem;
  line-height: 1;
  color: #8D8D8D;
  background: none;
  transition: color 420ms cubic-bezier(0.22, 1, 0.36, 1);
}
.hm-toast__close:hover, .hm-toast__close:focus-visible {
  color: #343434;
}
.hm-toast__close:active {
  transform: translateY(1px);
}
@media (prefers-reduced-motion: reduce) {
  .hm-toast {
    transition: opacity 150ms ease;
    transform: none;
  }
}

.hm-mega {
  position: absolute;
  left: 0;
  right: 0;
  top: 100%;
  background: #fff;
  border-bottom: 1px solid #C8C8C8;
  overflow: hidden;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-12px);
  transition: opacity 280ms cubic-bezier(0.22, 1, 0.36, 1), transform 280ms cubic-bezier(0.22, 1, 0.36, 1), visibility 280ms;
}
.hm-mega[hidden] {
  display: none !important;
}
.hm-mega.is-open {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.hm-mega__inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 3rem 2.5rem 3.5rem;
  display: grid;
  grid-template-columns: repeat(4, 1fr) 300px 300px;
  gap: 2.5rem;
}

.hm-mega__all {
  grid-column: 1/-1;
  width: fit-content;
  font-size: 0.75rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  font-weight: 500;
  color: #343434;
  padding-bottom: 3px;
  position: relative;
  text-decoration: none;
  border-bottom: 0;
}
.hm-mega__all::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: currentColor;
}
.hm-mega__all:active {
  transform: translateY(1px);
}
.hm-mega__all:focus-visible {
  outline: 1px solid currentColor;
  outline-offset: 3px;
}
.hm-mega__all:hover::after, .hm-mega__all:focus-visible::after {
  animation: hm-btn-wipe 420ms cubic-bezier(0.22, 1, 0.36, 1);
}
@media (prefers-reduced-motion: reduce) {
  .hm-mega__all:hover::after, .hm-mega__all:focus-visible::after {
    animation: none;
    opacity: 0.45;
  }
}

.hm-mega__col {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.hm-mega__col-title {
  font-size: 0.6875rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: #8D8D8D;
}

.hm-mega__list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.hm-mega__link {
  font-size: 0.875rem;
  line-height: 1.4;
  color: #343434;
  width: fit-content;
  text-decoration: none;
  background-image: linear-gradient(#343434, #343434);
  background-repeat: no-repeat;
  background-position: left bottom;
  background-size: 0% 1px;
  transition: background-size 420ms cubic-bezier(0.22, 1, 0.36, 1);
}
.hm-mega__link:hover, .hm-mega__link:focus-visible {
  background-size: 100% 1px;
}

.hm-mega__tile {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  text-decoration: none;
}
.hm-mega__inner > .hm-mega__tile {
  grid-column: 6;
}
.hm-mega__inner > .hm-mega__tile:has(+ .hm-mega__tile) {
  grid-column: 5;
}
.hm-mega__tile img {
  width: 100%;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  object-position: 50% 0;
  display: block;
}

.hm-mega__tile-media {
  display: block;
}

.hm-mega__tile-label {
  font-size: 0.75rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  font-weight: 500;
  color: #343434;
  border-bottom: 1px solid #343434;
  width: fit-content;
  padding-bottom: 3px;
}

.hm-overlay {
  position: fixed;
  inset: 0;
  background: rgba(52, 52, 52, 0.35);
  z-index: 50;
  opacity: 0;
  pointer-events: none;
  transition: opacity 280ms;
}
.hm-overlay.is-open {
  opacity: 1;
  pointer-events: auto;
}

.hm-search {
  position: absolute;
  left: 0;
  right: 0;
  top: 100%;
  background: #fff;
  border-bottom: 1px solid #C8C8C8;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-12px);
  transition: opacity 280ms cubic-bezier(0.22, 1, 0.36, 1), transform 280ms cubic-bezier(0.22, 1, 0.36, 1), visibility 0s 280ms;
}
.hm-search[hidden] {
  display: none;
}
.hm-search.is-open {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  transition: opacity 280ms cubic-bezier(0.22, 1, 0.36, 1), transform 280ms cubic-bezier(0.22, 1, 0.36, 1), visibility 0s;
}

.hm-search__form {
  display: flex;
  align-items: center;
  border-bottom: 1px solid #343434;
  margin: 2.5rem 0;
}

.hm-search__input {
  flex: 1;
  border: 0;
  background: transparent;
  padding: 0.875rem 0;
  font-family: "Figtree";
  font-size: 0.9375rem;
  color: #343434;
  outline: none;
}

.hm-search__submit {
  appearance: none;
  background: transparent;
  border: 0;
  padding: 0.875rem 0 0.875rem 1.5rem;
  font-family: "Figtree";
  font-size: 0.75rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  font-weight: 500;
  color: #343434;
  cursor: pointer;
}
.hm-search__submit:active {
  transform: translateY(1px);
}
.hm-search__submit:focus-visible {
  outline: 1px solid currentColor;
  outline-offset: 3px;
}

.hm-search__results {
  padding-bottom: 2.5rem;
}
.hm-search__results[hidden] {
  display: none;
}

.hm-search__list {
  list-style: none;
  margin: 0;
  padding: 0;
  max-height: min(60vh, 34rem);
  overflow-y: auto;
}

.hm-search__item {
  border-top: 1px solid #C8C8C8;
}
.hm-search__item:first-child {
  border-top: 0;
}
.hm-search__item.is-active, .hm-search__item:hover {
  background: #B5B5B5;
}

.hm-search__link {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 0.75rem 0;
  text-decoration: none;
  color: inherit;
}
.hm-search__link:focus-visible {
  outline: 1px solid #343434;
  outline-offset: -2px;
}

.hm-search__img {
  flex: 0 0 auto;
  width: 48px;
  height: 60px;
  object-fit: cover;
  object-position: 50% 0;
  background: #B5B5B5;
}

.hm-search__text {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 0.15rem;
}

.hm-search__name {
  font-size: 0.9375rem;
  color: #343434;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.hm-search__meta {
  font-size: 0.6875rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #8D8D8D;
}

.hm-search__price {
  flex: 0 0 auto;
  font-size: 0.875rem;
  color: #343434;
  font-variant-numeric: tabular-nums;
}
.hm-search__price del {
  color: #8D8D8D;
  margin-right: 0.4rem;
}
.hm-search__price ins {
  text-decoration: none;
}

.hm-search__empty {
  padding: 1rem 0;
  font-size: 0.9375rem;
  color: #8D8D8D;
}

.hm-search__group {
  padding: 1rem 0 0.5rem;
  font-size: 0.6875rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #8D8D8D;
  border-top: 1px solid #C8C8C8;
}

.hm-search__all {
  border-top: 1px solid #C8C8C8;
}
.hm-search__all[hidden] {
  display: none;
}
.hm-search__all a {
  display: inline-block;
  padding: 0.875rem 0;
  font-size: 0.75rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  font-weight: 500;
  color: #343434;
  text-decoration: none;
  border-bottom: 1px solid #343434;
}

.hm-drawer,
.hm-minicart {
  position: fixed;
  inset: 0;
  pointer-events: none;
}
.hm-drawer[hidden],
.hm-minicart[hidden] {
  display: none;
}
.hm-drawer.is-open,
.hm-minicart.is-open {
  pointer-events: auto;
}

.hm-drawer {
  z-index: 80;
}

.hm-minicart {
  z-index: 90;
}

.hm-drawer__overlay,
.hm-minicart__overlay {
  position: absolute;
  inset: 0;
  background: rgba(52, 52, 52, 0.4);
  opacity: 0;
  transition: opacity 350ms cubic-bezier(0.22, 1, 0.36, 1);
}
.is-open .hm-drawer__overlay,
.is-open .hm-minicart__overlay {
  opacity: 1;
}

.hm-drawer__panel {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: min(390px, 100%);
  overflow: hidden;
  background: #fff;
  display: flex;
  flex-direction: column;
  transform: translateX(-100%);
  transition: transform 350ms cubic-bezier(0.22, 1, 0.36, 1);
}
.is-open .hm-drawer__panel {
  transform: translateX(0);
}

.hm-drawer__head {
  height: 3.75rem;
  border-bottom: 1px solid #C8C8C8;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 0.5rem;
  flex-shrink: 0;
}

.hm-drawer__logo {
  margin-left: 0.75rem;
  display: block;
  color: #343434;
}
.hm-drawer__logo svg {
  height: 0.9375rem;
  width: auto;
  display: block;
}
.hm-drawer__logo img {
  height: 2.5rem;
  width: auto;
  display: block;
}
.hm-drawer__logo[hidden] {
  display: none;
}

.hm-drawer__back {
  appearance: none;
  background: none;
  border: 0;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  min-height: 2.75rem;
  padding: 0.75rem;
  font-family: "Figtree";
  font-size: 0.75rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  font-weight: 500;
  color: #343434;
  cursor: pointer;
}
.hm-drawer__back[hidden] {
  display: none;
}
.hm-drawer__back svg {
  width: 0.875rem;
  height: 0.875rem;
}
.hm-drawer__back:active {
  transform: translateY(1px);
}

.hm-drawer__row:active,
.hm-drawer__all:active,
.hm-drawer__utility a:active,
.hm-drawer__group a:active,
.hm-drawer__close:active {
  transform: translateY(1px);
}

.hm-drawer__track {
  flex: 1;
  display: flex;
  width: 200%;
  transform: translateX(0);
  transition: transform 350ms cubic-bezier(0.22, 1, 0.36, 1);
  min-height: 0;
}
.hm-drawer__track.is-level-2 {
  transform: translateX(-50%);
}

.hm-drawer__level {
  width: 50%;
  overflow-y: auto;
  padding: 1.25rem 1.5rem;
}

.hm-drawer__row {
  appearance: none;
  background: none;
  border: 0;
  border-bottom: 1px solid #C8C8C8;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.875rem 0;
  font-family: "Figtree";
  font-size: 2rem;
  font-weight: 300;
  color: #343434;
  text-decoration: none;
  cursor: pointer;
  text-align: left;
}

.hm-drawer__chevron svg {
  width: 1rem;
  height: 1rem;
  transform: rotate(180deg);
}

.hm-drawer__utility {
  margin-top: 2rem;
  padding-top: 1.5rem;
  border-top: 1px solid #C8C8C8;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.hm-drawer__utility a {
  display: flex;
  align-items: center;
  min-height: 2.75rem;
  font-size: 0.8125rem;
  color: #8D8D8D;
  text-decoration: none;
}

.hm-drawer__sub {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.hm-drawer__sub[hidden] {
  display: none;
}

.hm-drawer__sub-title {
  font-family: "Figtree";
  font-size: 2rem;
  font-weight: 300;
  color: #343434;
}

.hm-drawer__all {
  display: flex;
  align-items: center;
  min-height: 2.75rem;
  width: fit-content;
  font-size: 0.75rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  font-weight: 500;
  color: #343434;
  text-decoration: underline;
  text-underline-offset: 4px;
  text-decoration-thickness: 1px;
}

.hm-drawer__group {
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: 1rem;
  row-gap: 0;
}
.hm-drawer__group a {
  display: flex;
  align-items: center;
  min-height: 2.75rem;
  font-size: 1rem;
  color: #343434;
  text-decoration: none;
}

.hm-drawer__group-title {
  grid-column: 1/-1;
  margin-bottom: 0.25rem;
  font-size: 0.6875rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: #8D8D8D;
}

.hm-drawer__tiles {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
  padding-top: 1rem;
  border-top: 1px solid #C8C8C8;
}
.hm-drawer__tiles .hm-mega__tile {
  gap: 0.5rem;
}

.hm-minicart__panel {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  width: min(440px, 92vw);
  background: #fff;
  display: flex;
  flex-direction: column;
  transform: translateX(100%);
  transition: transform 350ms cubic-bezier(0.22, 1, 0.36, 1);
}
.is-open .hm-minicart__panel {
  transform: translateX(0);
}

[data-hm-minicart-body] {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-height: 0;
}

.hm-minicart__head {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1.25rem 1.75rem;
  border-bottom: 1px solid #C8C8C8;
}

.hm-minicart__title {
  font-size: 0.75rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  font-weight: 500;
}

.hm-minicart__count {
  color: #8D8D8D;
}

.hm-minicart__close {
  appearance: none;
  background: none;
  border: 0;
  width: 2.75rem;
  height: 2.75rem;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #343434;
  cursor: pointer;
}
.hm-minicart__close svg {
  width: 1.125rem;
  height: 1.125rem;
}
.hm-minicart__close:active {
  transform: translateY(1px);
}

.hm-minicart__empty {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  padding: 3rem 1.75rem;
  text-align: center;
}
.hm-minicart__empty-title {
  font-family: "Figtree";
  font-weight: 300;
  font-size: 1.5rem;
  margin: 0;
}
.hm-minicart__empty-text {
  font-size: 0.875rem;
  color: #8D8D8D;
  margin: 0;
}

.hm-minicart__items {
  flex: 1;
  overflow-y: auto;
  list-style: none;
  margin: 0;
  padding: 1.75rem;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

.hm-minicart__item {
  display: flex;
  gap: 1rem;
}

.hm-minicart__item-media {
  width: 96px;
  aspect-ratio: 4 / 5;
  flex-shrink: 0;
  overflow: hidden;
  background: #F4F4F4;
}
.hm-minicart__item-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 0;
  display: block;
}

.hm-minicart__item-body {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
}

.hm-minicart__item-name {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.35;
}

.hm-minicart__item-variant {
  font-size: 0.8125rem;
  color: #8D8D8D;
}

.hm-minicart__item-price {
  font-size: 0.875rem;
  font-variant-numeric: tabular-nums;
}

.hm-minicart__remove {
  appearance: none;
  background: none;
  border: 0;
  padding: 0 0 0.1rem;
  width: fit-content;
  font-family: "Figtree";
  font-size: 0.75rem;
  color: #8D8D8D;
  cursor: pointer;
  position: relative;
  text-decoration: none;
  border-bottom: 0;
}
.hm-minicart__remove::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: currentColor;
}
.hm-minicart__remove:active {
  transform: translateY(1px);
}
.hm-minicart__remove:focus-visible {
  outline: 1px solid currentColor;
  outline-offset: 3px;
}
.hm-minicart__remove:hover::after, .hm-minicart__remove:focus-visible::after {
  animation: hm-btn-wipe 420ms cubic-bezier(0.22, 1, 0.36, 1);
}
@media (prefers-reduced-motion: reduce) {
  .hm-minicart__remove:hover::after, .hm-minicart__remove:focus-visible::after {
    animation: none;
    opacity: 0.45;
  }
}
.hm-minicart__remove.is-busy, .hm-minicart__remove[aria-busy=true] {
  pointer-events: none;
  opacity: 0.55;
}

.hm-minicart__foot {
  flex-shrink: 0;
  border-top: 1px solid #C8C8C8;
  padding: 1.5rem 1.75rem;
  display: flex;
  flex-direction: column;
  gap: 0.875rem;
}

.hm-minicart__foot-row {
  display: flex;
  justify-content: space-between;
  font-size: 0.875rem;
}
.hm-minicart__foot-row--muted {
  font-size: 0.8125rem;
  color: #8D8D8D;
}
.hm-minicart__foot-row .hm-minicart__subtotal {
  font-variant-numeric: tabular-nums;
}

.hm-minicart__checkout {
  display: block;
  text-align: center;
  background: #343434;
  color: #fff;
  border: 1px solid #343434;
  padding: 1rem 1.5rem;
  font-size: 0.75rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  font-weight: 500;
  text-decoration: none;
  transition: background-color 420ms cubic-bezier(0.22, 1, 0.36, 1), border-color 420ms cubic-bezier(0.22, 1, 0.36, 1), color 420ms cubic-bezier(0.22, 1, 0.36, 1);
}
.hm-minicart__checkout:active {
  transform: translateY(1px);
}
.hm-minicart__checkout:focus-visible {
  outline: 1px solid currentColor;
  outline-offset: 3px;
}
.hm-minicart__checkout.is-busy, .hm-minicart__checkout.is-loading, .hm-minicart__checkout.loading, .hm-minicart__checkout[aria-busy=true] {
  pointer-events: none;
  opacity: 0.55;
}
@media (prefers-reduced-motion: reduce) {
  .hm-minicart__checkout {
    transition: none;
  }
}
.hm-minicart__checkout:hover, .hm-minicart__checkout:focus-visible {
  background: #fff;
  color: #343434;
  border-color: #343434;
}
@media (prefers-reduced-motion: no-preference) {
  .hm-minicart__checkout.hm-btn--roll:has(.hm-btn__roll):not(.is-wrapped):hover, .hm-minicart__checkout.hm-btn--roll:has(.hm-btn__roll):not(.is-wrapped):focus-visible {
    background: #343434;
    color: #fff;
    border-color: #343434;
  }
}

.hm-minicart__viewcart {
  align-self: center;
  padding-bottom: 0.15rem;
  font-size: 0.6875rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #343434;
  position: relative;
  text-decoration: none;
  border-bottom: 0;
}
.hm-minicart__viewcart::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: currentColor;
}
.hm-minicart__viewcart:active {
  transform: translateY(1px);
}
.hm-minicart__viewcart:focus-visible {
  outline: 1px solid currentColor;
  outline-offset: 3px;
}
.hm-minicart__viewcart:hover::after, .hm-minicart__viewcart:focus-visible::after {
  animation: hm-btn-wipe 420ms cubic-bezier(0.22, 1, 0.36, 1);
}
@media (prefers-reduced-motion: reduce) {
  .hm-minicart__viewcart:hover::after, .hm-minicart__viewcart:focus-visible::after {
    animation: none;
    opacity: 0.45;
  }
}

.hm-footer {
  background: #FFFFFF;
  color: #343434;
  border-top: 1px solid #C8C8C8;
  padding: 0 0 2.25rem;
}
@media (min-width: 992px) {
  .hm-footer {
    padding: 0;
  }
  .hm-footer:not(:has(.hm-footer__bottom)) {
    padding-bottom: 2.25rem;
  }
}

.hm-footer__cols {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2rem 1.5rem;
  padding-top: 3.5rem;
}
@media (min-width: 992px) {
  .hm-footer__cols {
    grid-template-columns: repeat(4, 1fr);
    gap: 3rem;
    padding: 5rem 0 4.5rem;
  }
}

.hm-footer__title {
  font-size: 0.625rem;
  font-weight: 400;
  line-height: 1.15;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: #8D8D8D;
  margin: 0 0 0.75rem;
}
@media (min-width: 992px) {
  .hm-footer__title {
    font-size: 0.6875rem;
    margin-bottom: 0.875rem;
  }
}

.hm-footer__menu {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
@media (min-width: 992px) {
  .hm-footer__menu {
    gap: 0.875rem;
  }
}
.hm-footer__menu a {
  font-size: 0.875rem;
  color: #343434;
  width: fit-content;
  padding-bottom: 0.1rem;
}

.hm-footer a.hm-btn--wipe::after {
  opacity: 0;
}
.hm-footer a.hm-btn--wipe:hover::after, .hm-footer a.hm-btn--wipe:focus-visible::after {
  opacity: 1;
}
@media (prefers-reduced-motion: reduce) {
  .hm-footer a.hm-btn--wipe::after {
    transition: none;
  }
}

.hm-footer__wordmark {
  display: block;
  width: 100%;
  height: auto;
  margin: 2rem 0;
}
@media (min-width: 992px) {
  .hm-footer__wordmark {
    margin: 0 0 2.5rem;
  }
}

.hm-footer__logo {
  display: block;
  width: min(330px, 70vw);
  height: auto;
  margin: 2rem auto;
}
@media (min-width: 992px) {
  .hm-footer__logo {
    margin: 0 auto 2.5rem;
  }
}

.hm-footer__bottom {
  border-top: 1px solid #C8C8C8;
  padding-top: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  font-size: 0.6875rem;
}
@media (min-width: 992px) {
  .hm-footer__bottom {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 1.5rem;
    padding: 1.75rem 0 2.25rem;
    font-size: 0.75rem;
  }
}

.hm-footer__legal {
  color: #8D8D8D;
  line-height: 1.6;
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
}
.hm-footer__legal-line {
  display: block;
}
.hm-footer__legal a {
  color: #8D8D8D;
}

.hm-footer__payments {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.75rem;
}
@media (min-width: 992px) {
  .hm-footer__payments {
    gap: 1rem;
  }
}
.hm-footer__payments span {
  border: 1px solid #C8C8C8;
  color: #8D8D8D;
  font-size: 0.5625rem;
  letter-spacing: 0.08em;
  padding: 0.25rem 0.5rem;
}
@media (min-width: 992px) {
  .hm-footer__payments span {
    font-size: 0.625rem;
    padding: 0.3125rem 0.625rem;
  }
}
.hm-footer__payments span.hm-footer__payment--logo {
  border: 0;
  padding: 0;
  display: inline-flex;
  line-height: 0;
}
.hm-footer__payments span.hm-footer__payment--logo img {
  width: 2.25rem;
  height: 2.25rem;
  object-fit: contain;
  display: block;
}
@media (min-width: 992px) {
  .hm-footer__payments span.hm-footer__payment--logo img {
    width: 2.5rem;
    height: 2.5rem;
  }
}
.hm-footer__payments span.hm-footer__payment--logo[data-hm-pagamento=revolut-pay] img {
  width: 3.375rem;
  height: 3.375rem;
}
@media (min-width: 992px) {
  .hm-footer__payments span.hm-footer__payment--logo[data-hm-pagamento=revolut-pay] img {
    width: 3.75rem;
    height: 3.75rem;
  }
}
.hm-footer__payments span.hm-footer__payment--logo[data-hm-pagamento=mastercard] img {
  width: 2.925rem;
  height: 2.925rem;
}
@media (min-width: 992px) {
  .hm-footer__payments span.hm-footer__payment--logo[data-hm-pagamento=mastercard] img {
    width: 3.25rem;
    height: 3.25rem;
  }
}

.hm-footer__newsletter {
  border-bottom: 1px solid #C8C8C8;
}
.hm-footer__newsletter:not(:has(.hm-newsletter)) {
  display: none;
}

.hm-newsletter {
  padding-top: 6rem;
  padding-bottom: 6rem;
}
@media (min-width: 992px) {
  .hm-newsletter {
    padding-top: 8.75rem;
    padding-bottom: 8.75rem;
  }
}
.hm-footer__newsletter .hm-newsletter {
  padding-top: 4rem;
  padding-bottom: 4.5rem;
}
@media (min-width: 992px) {
  .hm-footer__newsletter .hm-newsletter {
    padding-top: 5rem;
    padding-bottom: 5.5rem;
  }
}
.hm-newsletter__inner {
  max-width: 620px;
  margin: 0 auto;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.25rem;
}
.hm-newsletter__eyebrow {
  font-size: 0.6875rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #8D8D8D;
}
.hm-newsletter__title {
  font-family: "Figtree";
  font-weight: 500;
  font-size: 2rem;
  line-height: 1.15;
  margin: 0;
}
@media (min-width: 992px) {
  .hm-newsletter__title {
    font-size: 2.5rem;
  }
}
.hm-newsletter__text {
  font-size: 0.9375rem;
  line-height: 1.6;
  color: #8D8D8D;
  margin: 0;
}
.hm-newsletter__formwrap {
  width: 100%;
  margin-top: 0.75rem;
}
.hm-newsletter .wpcf7-form {
  margin: 0;
}
.hm-newsletter .wpcf7-form-control-wrap {
  display: block;
  flex: 1;
}
.hm-newsletter .wpcf7-spinner {
  display: none;
}
.hm-newsletter__form {
  width: 100%;
  max-width: 460px;
  margin: 0 auto;
}
.hm-newsletter__row {
  display: flex;
  align-items: stretch;
  gap: 0;
  flex-wrap: wrap;
  border-bottom: 1px solid #343434;
}
.hm-newsletter__row .cf7-cf-turnstile {
  order: 9;
  flex: 0 0 100%;
  display: flex;
  justify-content: center;
  margin: 1rem 0 0 !important;
}
.hm-newsletter__row .cf-turnstile-br {
  display: none;
}
.hm-newsletter__row:has(.wpcf7-not-valid) {
  border-bottom-color: #7A5C5C;
}
.hm-newsletter__row .wpcf7-not-valid-tip {
  font-size: 0.75rem;
  text-align: left;
  padding-bottom: 0.375rem;
}
.hm-newsletter__input {
  width: 100%;
  border: none;
  background: transparent;
  padding: 0.875rem 0;
  font-family: "Figtree";
  font-size: 0.9375rem;
  color: #343434;
  outline: none;
}
.hm-newsletter__input::placeholder {
  color: #8D8D8D;
}
.hm-newsletter__submit {
  border: none;
  background: transparent;
  cursor: pointer;
  padding: 0.875rem 0 0.875rem 1.5rem;
  font-family: "Figtree";
  font-size: 0.75rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  font-weight: 500;
  color: #343434;
  white-space: nowrap;
}
.hm-newsletter__submit:active {
  transform: translateY(1px);
}
.hm-newsletter__submit:focus-visible {
  outline: 1px solid currentColor;
  outline-offset: 3px;
}
.wpcf7-form.submitting .hm-newsletter__submit {
  pointer-events: none;
  animation: hm-btn-pulse 1s linear infinite;
}
@media (prefers-reduced-motion: reduce) {
  .wpcf7-form.submitting .hm-newsletter__submit {
    animation: none;
    opacity: 0.55;
  }
}
.hm-newsletter input[type=checkbox] {
  appearance: none;
  width: 0.9375rem;
  height: 0.9375rem;
  flex-shrink: 0;
  margin: 0;
  border: 1px solid #343434;
  border-radius: 0;
  background: transparent;
  cursor: pointer;
  transition: background-color 150ms;
}
.hm-newsletter input[type=checkbox]:checked {
  background-color: #343434;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23fff' stroke-width='2.5' d='M3.5 8.5l3 3 6-7'/%3E%3C/svg%3E");
  background-size: 0.6875rem;
  background-position: center;
  background-repeat: no-repeat;
}
.hm-newsletter input[type=checkbox]:focus-visible {
  outline: 1px solid #343434;
  outline-offset: 2px;
}
.hm-newsletter .wpcf7-list-item {
  margin: 0;
}
.hm-newsletter__checks {
  margin-top: 1.5rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 0.625rem 1.5rem;
}
.hm-newsletter__checks .wpcf7-form-control-wrap {
  display: inline-flex;
  flex: 0 1 auto;
}
.hm-newsletter__checks .wpcf7-checkbox {
  display: inline-flex;
  gap: 1.5rem;
}
.hm-newsletter__checks .wpcf7-list-item label {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  margin: 0;
  cursor: pointer;
}
.hm-newsletter__checks .wpcf7-list-item-label {
  font-size: 0.6875rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: #343434;
}
.hm-newsletter__checks-label {
  font-size: 0.6875rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: #8D8D8D;
}
.hm-newsletter__accept {
  margin-top: 0.875rem;
  font-size: 0.75rem;
  color: #8D8D8D;
}
.hm-newsletter__accept .wpcf7-form-control-wrap {
  display: inline-flex;
  flex: 0 1 auto;
  flex-direction: column;
  align-items: center;
}
.hm-newsletter__accept .wpcf7-list-item label {
  display: inline-flex;
  align-items: baseline;
  gap: 0.5rem;
  margin: 0;
  cursor: pointer;
}
.hm-newsletter__accept input[type=checkbox] {
  transform: translateY(2px);
}
.hm-newsletter__accept a {
  color: #8D8D8D;
  text-decoration: underline;
}
.hm-newsletter__accept .wpcf7-not-valid-tip {
  display: block;
  margin-top: 0.375rem;
  font-size: 0.75rem;
  color: #7A5C5C;
}
.hm-newsletter .wpcf7-response-output {
  margin: 1.25rem 0 0;
  padding: 0.625rem 0.875rem;
  border: 1px solid #C8C8C8;
  font-size: 0.8125rem;
  text-align: center;
}
.hm-newsletter .cf-turnstile,
.hm-newsletter .cf7-simple-turnstile {
  margin-top: 1rem;
  display: flex;
  justify-content: center;
}

.hm-product-card {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 0.875rem;
}
.hm-product-card__media {
  position: relative;
  aspect-ratio: 4 / 5;
  overflow: hidden;
  background: #F4F4F4;
}
.hm-product-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 0;
  transition: opacity 700ms ease, transform 600ms cubic-bezier(0.22, 1, 0.36, 1);
}
.hm-product-card__img-alt {
  position: absolute;
  inset: 0;
  opacity: 0;
  transform: scale(1.04);
  transition: opacity 700ms ease, transform 1400ms cubic-bezier(0.22, 1, 0.36, 1);
}
.hm-product-card .hm-product-card__media:has(> img:first-child:not([data-ns-ai]))::after {
  content: none;
}
@media (hover: hover) and (pointer: fine) {
  .hm-product-card:hover .hm-product-card__media:has(.hm-product-card__img-alt) img:first-child {
    opacity: 0;
  }
  .hm-product-card:hover .hm-product-card__img-alt {
    opacity: 1;
    transform: scale(1);
  }
  .hm-product-card:hover .hm-product-card__media:has(.hm-product-card__img-alt:not([data-ns-ai]))::after {
    content: none;
  }
  .hm-product-card:hover .hm-product-card__media:has(.hm-product-card__img-alt[data-ns-ai])::after {
    content: "AI";
  }
  .hm-product-card:hover .hm-product-card__media:not(:has(.hm-product-card__img-alt)) img {
    transform: scale(1.04);
  }
}
.hm-product-card:has(.hm-product-card__name a:focus-visible) .hm-product-card__media:has(.hm-product-card__img-alt) img:first-child {
  opacity: 0;
}
.hm-product-card:has(.hm-product-card__name a:focus-visible) .hm-product-card__img-alt {
  opacity: 1;
  transform: scale(1);
}
.hm-product-card:has(.hm-product-card__name a:focus-visible) .hm-product-card__media:has(.hm-product-card__img-alt:not([data-ns-ai]))::after {
  content: none;
}
.hm-product-card:has(.hm-product-card__name a:focus-visible) .hm-product-card__media:has(.hm-product-card__img-alt[data-ns-ai])::after {
  content: "AI";
}
.hm-product-card.is-show2 .hm-product-card__media:has(.hm-product-card__img-alt) img:first-child {
  opacity: 0;
}
.hm-product-card.is-show2 .hm-product-card__img-alt {
  opacity: 1;
  transform: scale(1);
}
.hm-product-card.is-show2 .hm-product-card__media:has(.hm-product-card__img-alt:not([data-ns-ai]))::after {
  content: none;
}
.hm-product-card.is-show2 .hm-product-card__media:has(.hm-product-card__img-alt[data-ns-ai])::after {
  content: "AI";
}
.hm-product-card.is-quiet .hm-product-card__media img, .hm-product-card.is-quiet .hm-product-card__img-alt {
  transition-duration: 250ms;
}
@media (prefers-reduced-motion: reduce) {
  .hm-product-card__media img, .hm-product-card__img-alt {
    transition: opacity 200ms ease;
    transform: none !important;
  }
}
.hm-product-card__badge {
  position: absolute;
  left: 0.75rem;
  bottom: 0.75rem;
  z-index: 2;
  background: #FFFFFF;
  color: #343434;
  font-size: 0.625rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  font-weight: 500;
  padding: 0.3125rem 0.625rem;
}
.hm-product-card__body {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.hm-product-card__line {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 1rem;
}
.hm-product-card__name {
  font-family: "Figtree";
  font-size: 0.875rem;
  font-weight: 500;
  margin: 0;
  min-width: 0;
  overflow-wrap: break-word;
}
.hm-product-card__name a {
  color: #343434;
  text-decoration: none;
}
.hm-product-card__name a::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
}
.hm-product-card__price {
  font-size: 0.875rem;
  font-variant-numeric: tabular-nums;
  color: #343434;
  flex-shrink: 0;
}
.hm-product-card__price del {
  color: #8D8D8D;
  margin-right: 0.4rem;
}
.hm-product-card__price ins {
  text-decoration: none;
}
.hm-product-card__category {
  font-size: 0.8125rem;
  color: #8D8D8D;
  margin: 0;
}
.hm-product-card__swatches {
  list-style: none;
  padding: 0;
  margin: 0.5rem 0 0;
  display: flex;
  gap: 0.5rem;
}
.swiper-slide .hm-product-card__swatches {
  padding-bottom: 4px;
}
.hm-product-card__swatches a {
  display: block;
  padding: 3px;
  margin: -3px;
}
.hm-product-card__swatches a > span:not(.visually-hidden) {
  display: block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  outline: 1px solid #C8C8C8;
  outline-offset: 1px;
}
.hm-product-card__swatches .is-active a > span:not(.visually-hidden) {
  outline-color: #343434;
}

.hm-crumbs {
  display: flex;
  gap: 0.625rem;
  align-items: center;
  font-size: 0.75rem;
  color: #8D8D8D;
  margin-bottom: 0;
}
@media (min-width: 992px) {
  .hm-crumbs {
    margin-bottom: 1.75rem;
  }
}
.hm-crumbs a {
  color: #8D8D8D;
  text-decoration: none;
  transition: color 420ms cubic-bezier(0.22, 1, 0.36, 1);
}
.hm-crumbs a:hover, .hm-crumbs a:focus-visible {
  color: #343434;
}
.hm-crumbs [aria-current=page] {
  color: #343434;
}

.hm-collection {
  padding: 2rem 0 1.5rem;
}
@media (min-width: 992px) {
  .hm-collection {
    padding: 3rem 0 2.5rem;
  }
}
.hm-collection__heading {
  display: flex;
  align-items: baseline;
  gap: 0.75rem;
}
.hm-collection__title {
  font-family: "Figtree";
  font-weight: 300;
  font-size: 2.25rem;
  line-height: 1.05;
  margin: 0 0 1rem;
}
@media (min-width: 992px) {
  .hm-collection__title {
    font-size: 3.5rem;
  }
}
.hm-collection__count {
  font-family: "Figtree";
  font-size: 0.875rem;
  font-weight: 400;
  color: #8D8D8D;
  font-variant-numeric: tabular-nums;
  transform: translateY(-0.675rem);
  display: none;
}
@media (min-width: 768px) {
  .hm-collection__count {
    display: block;
  }
}
@media (min-width: 992px) {
  .hm-collection__count {
    transform: translateY(-1.05rem);
  }
}
.hm-collection__count-line {
  margin: 0.25rem 0 0;
  font-size: 0.8125rem;
  color: #8D8D8D;
  font-variant-numeric: tabular-nums;
}
.hm-collection__desc {
  font-size: 0.9375rem;
  line-height: 1.6;
  color: #8D8D8D;
  max-width: 56ch;
}
.hm-collection__desc p {
  margin: 0;
}
.hm-collection__subcats {
  list-style: none;
  padding: 0;
  margin: 2.25rem 0 0;
  display: flex;
  gap: 0.75rem;
  overflow-x: auto;
  scrollbar-width: none;
}
.hm-collection__subcats::-webkit-scrollbar {
  display: none;
}
.hm-collection__subcats a {
  display: block;
  flex-shrink: 0;
  white-space: nowrap;
  border: 1px solid #C8C8C8;
  color: #343434;
  text-decoration: none;
  padding: 0.75rem 1.75rem;
  font-size: 0.75rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  font-weight: 500;
  transition: background-color 420ms cubic-bezier(0.22, 1, 0.36, 1), border-color 420ms cubic-bezier(0.22, 1, 0.36, 1), color 420ms cubic-bezier(0.22, 1, 0.36, 1);
}
.hm-collection__subcats a:active {
  transform: translateY(1px);
}
.hm-collection__subcats a:focus-visible {
  outline: 1px solid currentColor;
  outline-offset: 3px;
}
.hm-collection__subcats a.is-busy, .hm-collection__subcats a.is-loading, .hm-collection__subcats a.loading, .hm-collection__subcats a[aria-busy=true] {
  pointer-events: none;
  opacity: 0.55;
}
@media (prefers-reduced-motion: reduce) {
  .hm-collection__subcats a {
    transition: none;
  }
}
.hm-collection__subcats a:hover, .hm-collection__subcats a:focus-visible {
  border-color: #343434;
  background: #343434;
  color: #FFFFFF;
}

.hm-toolbar {
  position: sticky;
  top: var(--hm-header-h, 0);
  z-index: 40;
  background: #FFFFFF;
  border-top: 1px solid #C8C8C8;
  border-bottom: 1px solid #C8C8C8;
}
.hm-toolbar__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  min-height: 60px;
}
@media (min-width: 768px) {
  .hm-toolbar__inner {
    gap: 1.5rem;
  }
}
.hm-toolbar__count {
  font-size: 0.75rem;
  color: #8D8D8D;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  display: none;
}
@media (min-width: 768px) {
  .hm-toolbar__count {
    display: inline;
  }
}
.hm-toolbar__count .woocommerce-result-count {
  margin: 0;
  float: none;
}
.hm-toolbar__sort {
  min-width: 0;
}
.hm-toolbar__sort .hm-sort {
  display: flex;
  align-items: center;
  gap: 0.55rem;
  min-width: 0;
}
.hm-toolbar__sort .hm-sort__label {
  font-size: 0.75rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #8D8D8D;
  white-space: nowrap;
  display: none;
}
@media (min-width: 768px) {
  .hm-toolbar__sort .hm-sort__label {
    display: inline;
  }
}
.hm-toolbar__sort form,
.hm-toolbar__sort form.woocommerce-ordering {
  margin: 0;
  min-width: 0;
  float: none;
}
.hm-toolbar__sort select {
  max-width: 100%;
  text-overflow: ellipsis;
  appearance: none;
  border: 0;
  border-radius: 0;
  color: #343434;
  font-family: "Figtree";
  font-size: 0.75rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 0.25rem 1.375rem 0.25rem 0;
  text-align: right;
  background: transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23343434' stroke-width='1.4'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") right center/12px 12px no-repeat;
}
.hm-toolbar__sort select:focus-visible {
  outline: 1px solid #343434;
  outline-offset: 3px;
}
@media (max-width: 767.98px) {
  .hm-toolbar__sort select {
    font-size: 1rem;
    letter-spacing: 0.06em;
  }
}

.hm-archive {
  padding: 2rem 0 4rem;
}

.hm-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 2rem 0.5rem;
}
@media (min-width: 992px) {
  .hm-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 3.5rem 1.5rem;
  }
}

@media (max-width: 767.98px) {
  .hm-archive > .container {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
}

.hm-loadmore {
  max-width: 380px;
  margin: 5.5rem auto 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.5rem;
}
.hm-loadmore__count {
  font-size: 0.75rem;
  color: #8D8D8D;
  font-variant-numeric: tabular-nums;
}
.hm-loadmore__track {
  width: 100%;
  height: 2px;
  background: #C8C8C8;
  position: relative;
}
.hm-loadmore__fill {
  position: absolute;
  left: 0;
  top: 0;
  height: 2px;
  background: #343434;
  transition: width 400ms;
}
.hm-loadmore .hm-btn-outline {
  padding: 1rem 3.5rem;
}

.hm-archive-tile {
  grid-column: span 2;
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 0.875rem;
  color: #343434;
  text-decoration: none;
}
.hm-archive-tile:hover {
  color: #343434;
}
.hm-archive-tile__media {
  position: relative;
  display: block;
  overflow: hidden;
  background: #F4F4F4;
  aspect-ratio: calc(4 / 5 * 2);
}
.hm-grid[style*="--hm-tile-media-h"] .hm-archive-tile__media {
  aspect-ratio: auto;
  height: var(--hm-tile-media-h);
}
.hm-archive-tile__media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.hm-archive-tile__body {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.hm-archive-tile__line {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 1rem;
}
.hm-archive-tile__title {
  font-size: 0.875rem;
  font-weight: 500;
  min-width: 0;
  overflow-wrap: break-word;
}
.hm-archive-tile__eyebrow {
  font-size: 0.8125rem;
  color: #8D8D8D;
}
.hm-archive-tile__cta {
  flex-shrink: 0;
  font-size: 0.75rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  font-weight: 500;
  width: fit-content;
  padding-bottom: 3px;
  position: relative;
  text-decoration: none;
  border-bottom: 0;
}
.hm-archive-tile__cta::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: currentColor;
}
.hm-archive-tile__cta:active {
  transform: translateY(1px);
}
.hm-archive-tile__cta:focus-visible {
  outline: 1px solid currentColor;
  outline-offset: 3px;
}
.hm-archive-tile__cta:hover::after, .hm-archive-tile__cta:focus-visible::after {
  animation: hm-btn-wipe 420ms cubic-bezier(0.22, 1, 0.36, 1);
}
@media (prefers-reduced-motion: reduce) {
  .hm-archive-tile__cta:hover::after, .hm-archive-tile__cta:focus-visible::after {
    animation: none;
    opacity: 0.45;
  }
}
@media (prefers-reduced-motion: no-preference) {
  .hm-archive-tile:hover .hm-archive-tile__cta::after, .hm-archive-tile:focus-visible .hm-archive-tile__cta::after {
    animation: hm-btn-wipe 420ms cubic-bezier(0.22, 1, 0.36, 1);
  }
}

.hm-empty {
  padding: 6rem 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.25rem;
  text-align: center;
}
.hm-empty__title {
  font-family: "Figtree";
  font-weight: 300;
  font-size: 2.25rem;
  margin: 0;
}
.hm-empty__text {
  font-size: 0.875rem;
  color: #8D8D8D;
  margin: 0;
  max-width: 44ch;
  line-height: 1.6;
}
.hm-empty__links a {
  font-size: 0.75rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  font-weight: 500;
  color: #343434;
  padding-bottom: 0.25rem;
  position: relative;
  text-decoration: none;
  border-bottom: 0;
}
.hm-empty__links a::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: currentColor;
}
.hm-empty__links a:active {
  transform: translateY(1px);
}
.hm-empty__links a:focus-visible {
  outline: 1px solid currentColor;
  outline-offset: 3px;
}
.hm-empty__links a:hover::after, .hm-empty__links a:focus-visible::after {
  animation: hm-btn-wipe 420ms cubic-bezier(0.22, 1, 0.36, 1);
}
@media (prefers-reduced-motion: reduce) {
  .hm-empty__links a:hover::after, .hm-empty__links a:focus-visible::after {
    animation: none;
    opacity: 0.45;
  }
}

.hm-btn-outline {
  display: inline-block;
  background: transparent;
  color: #343434;
  border: 1px solid #343434;
  padding: 0.875rem 2.5rem;
  font-size: 0.75rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  font-weight: 500;
  text-decoration: none;
  cursor: pointer;
  transition: background-color 420ms cubic-bezier(0.22, 1, 0.36, 1), border-color 420ms cubic-bezier(0.22, 1, 0.36, 1), color 420ms cubic-bezier(0.22, 1, 0.36, 1);
}
.hm-btn-outline:active {
  transform: translateY(1px);
}
.hm-btn-outline:focus-visible {
  outline: 1px solid currentColor;
  outline-offset: 3px;
}
.hm-btn-outline.is-busy, .hm-btn-outline.is-loading, .hm-btn-outline.loading, .hm-btn-outline[aria-busy=true] {
  pointer-events: none;
  opacity: 0.55;
}
@media (prefers-reduced-motion: reduce) {
  .hm-btn-outline {
    transition: none;
  }
}
.hm-btn-outline:hover, .hm-btn-outline:focus-visible {
  background: #343434;
  color: #FFFFFF;
}
@media (prefers-reduced-motion: no-preference) {
  .hm-btn-outline.hm-btn--roll:has(.hm-btn__roll):not(.is-wrapped):hover, .hm-btn-outline.hm-btn--roll:has(.hm-btn__roll):not(.is-wrapped):focus-visible {
    background: transparent;
    color: #343434;
    border-color: #343434;
  }
}

.hm-cstory {
  display: grid;
  grid-template-columns: 1fr;
  margin-top: 5rem;
}
@media (min-width: 992px) {
  .hm-cstory {
    grid-template-columns: 1fr 1fr;
    margin-top: 7.5rem;
  }
}
.hm-cstory__media {
  position: relative;
  aspect-ratio: 4/5;
  overflow: hidden;
}
@media (min-width: 992px) {
  .hm-cstory__media {
    aspect-ratio: auto;
    min-height: 80vh;
  }
}
.hm-cstory__media img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.hm-cstory__body {
  display: flex;
  align-items: center;
  padding: 3rem 1.25rem 0;
}
@media (min-width: 992px) {
  .hm-cstory__body {
    padding: 5rem 4rem;
  }
}
@media (min-width: 1200px) {
  .hm-cstory__body {
    padding: 6rem;
  }
}
.hm-cstory--solo-testo .hm-cstory__body {
  grid-column: 1/-1;
  justify-content: center;
}
.hm-cstory__inner {
  max-width: 60ch;
}
.hm-cstory__title {
  font-family: "Figtree";
  font-weight: 500;
  font-size: 1.75rem;
  margin: 0 0 1.5rem;
}
@media (min-width: 992px) {
  .hm-cstory__title {
    font-size: 2.75rem;
    margin-bottom: 2rem;
  }
}
.hm-cstory__text {
  font-size: 0.9375rem;
  line-height: 1.7;
}
.hm-cstory__text h3 {
  font-family: "Figtree";
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.3;
  margin: 2rem 0 0.75rem;
}
.hm-cstory__text p {
  margin: 0 0 1rem;
}
.hm-cstory__text > :last-child {
  margin-bottom: 0;
}
.hm-cstory__text a {
  color: #343434;
  text-decoration: underline;
}

.hm-toolbar__lead,
.hm-toolbar__trail {
  display: flex;
  align-items: center;
  gap: 1rem;
  min-width: 0;
}
@media (min-width: 768px) {
  .hm-toolbar__lead,
  .hm-toolbar__trail {
    gap: 1.5rem;
  }
}

.hm-filter-btn {
  appearance: none;
  background: none;
  border: 0;
  padding: 0;
  display: inline-flex;
  align-items: center;
  gap: 0.625rem;
  cursor: pointer;
  font-family: "Figtree";
  font-size: 0.75rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  font-weight: 500;
  color: #343434;
  transition: color 420ms cubic-bezier(0.22, 1, 0.36, 1);
}
.hm-filter-btn:hover, .hm-filter-btn:focus-visible {
  color: #8D8D8D;
}
.hm-filter-btn:active {
  transform: translateY(1px);
}
.hm-filter-btn svg {
  width: 18px;
  height: 18px;
}
.hm-filter-btn__count {
  min-width: 17px;
  height: 17px;
  padding: 0 4px;
  border-radius: 50%;
  background: #343434;
  color: #fff;
  font-size: 0.625rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-variant-numeric: tabular-nums;
}

.hm-chips {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.625rem;
  padding-bottom: 1rem;
}

.hm-chip {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  background: #fff;
  border: 1px solid #C8C8C8;
  color: #343434;
  text-decoration: none;
  padding: 0.4375rem 0.875rem;
  font-size: 0.75rem;
  transition: border-color 420ms cubic-bezier(0.22, 1, 0.36, 1);
}
.hm-chip:hover, .hm-chip:focus-visible {
  border-color: #343434;
}
.hm-chip:active {
  transform: translateY(1px);
}
.hm-chip__x {
  color: #8D8D8D;
  font-size: 0.875rem;
  line-height: 1;
}

.hm-chips__clear {
  display: inline-block;
  color: #8D8D8D;
  font-size: 0.75rem;
  padding: 0.4375rem 0.25rem 0.5rem;
  position: relative;
  text-decoration: none;
  border-bottom: 0;
}
.hm-chips__clear::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: currentColor;
}
.hm-chips__clear:active {
  transform: translateY(1px);
}
.hm-chips__clear:focus-visible {
  outline: 1px solid currentColor;
  outline-offset: 3px;
}
.hm-chips__clear:hover::after, .hm-chips__clear:focus-visible::after {
  animation: hm-btn-wipe 420ms cubic-bezier(0.22, 1, 0.36, 1);
}
@media (prefers-reduced-motion: reduce) {
  .hm-chips__clear:hover::after, .hm-chips__clear:focus-visible::after {
    animation: none;
    opacity: 0.45;
  }
}

.hm-fdrawer {
  position: fixed;
  inset: 0;
  z-index: 80;
  pointer-events: none;
}
.hm-fdrawer[hidden] {
  display: none;
}
.hm-fdrawer.is-open {
  pointer-events: auto;
}
.hm-fdrawer__overlay {
  position: absolute;
  inset: 0;
  background: rgba(52, 52, 52, 0.35);
  opacity: 0;
  transition: opacity 300ms;
}
.is-open .hm-fdrawer__overlay {
  opacity: 1;
}
.hm-fdrawer__panel {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: min(420px, 88vw);
  background: #fff;
  display: flex;
  flex-direction: column;
  transform: translateX(-100%);
  transition: transform 380ms cubic-bezier(0.22, 1, 0.36, 1);
}
.is-open .hm-fdrawer__panel {
  transform: translateX(0);
}
.hm-fdrawer__head {
  flex-shrink: 0;
  height: 4.5rem;
  padding: 0 2rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid #C8C8C8;
}
.hm-fdrawer__title {
  font-size: 0.75rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  font-weight: 500;
}
.hm-fdrawer__close {
  appearance: none;
  background: none;
  border: 0;
  width: 2.75rem;
  height: 2.75rem;
  margin-right: -0.75rem;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #343434;
  cursor: pointer;
}
.hm-fdrawer__close svg {
  width: 1.125rem;
  height: 1.125rem;
}
.hm-fdrawer__close:active {
  transform: translateY(1px);
}
.hm-fdrawer__body {
  flex: 1;
  overflow-y: auto;
  padding: 0 2rem 2rem;
}
.hm-fdrawer__foot {
  flex-shrink: 0;
  border-top: 1px solid #C8C8C8;
  padding: 1.25rem 2rem;
  display: flex;
  gap: 1rem;
}
.hm-fdrawer__clear {
  flex: 1;
}
.hm-fdrawer__apply {
  flex: 1.4;
  appearance: none;
  background: #343434;
  color: #fff;
  border: 1px solid #343434;
  padding: 0.9375rem 0;
  font-family: "Figtree";
  font-size: 0.75rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  font-weight: 500;
  cursor: pointer;
  transition: background-color 420ms cubic-bezier(0.22, 1, 0.36, 1), border-color 420ms cubic-bezier(0.22, 1, 0.36, 1), color 420ms cubic-bezier(0.22, 1, 0.36, 1);
}
.hm-fdrawer__apply:active {
  transform: translateY(1px);
}
.hm-fdrawer__apply:focus-visible {
  outline: 1px solid currentColor;
  outline-offset: 3px;
}
.hm-fdrawer__apply.is-busy, .hm-fdrawer__apply.is-loading, .hm-fdrawer__apply.loading, .hm-fdrawer__apply[aria-busy=true] {
  pointer-events: none;
  opacity: 0.55;
}
@media (prefers-reduced-motion: reduce) {
  .hm-fdrawer__apply {
    transition: none;
  }
}
.hm-fdrawer__apply:hover, .hm-fdrawer__apply:focus-visible {
  background: #fff;
  color: #343434;
  border-color: #343434;
}
@media (prefers-reduced-motion: no-preference) {
  .hm-fdrawer__apply.hm-btn--roll:has(.hm-btn__roll):not(.is-wrapped):hover, .hm-fdrawer__apply.hm-btn--roll:has(.hm-btn__roll):not(.is-wrapped):focus-visible {
    background: #343434;
    color: #fff;
    border-color: #343434;
  }
}

.hm-fgroup {
  border-bottom: 1px solid #C8C8C8;
  padding: 1.5rem 0 1.75rem;
}
.hm-fgroup:last-child {
  border-bottom: 0;
}
.hm-fgroup__label {
  display: block;
  font-size: 0.6875rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: #8D8D8D;
  margin-bottom: 1.125rem;
}
.hm-fgroup__opts {
  display: flex;
  flex-wrap: wrap;
  gap: 0.625rem;
}
.hm-fgroup__opts--colors {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.875rem 1.5rem;
}
.hm-fgroup__opts--price {
  flex-direction: column;
  gap: 0.25rem;
}

.hm-fpill {
  appearance: none;
  background: transparent;
  color: #343434;
  border: 1px solid #C8C8C8;
  padding: 0.625rem 1.25rem;
  font-family: "Figtree";
  font-size: 0.75rem;
  letter-spacing: 0.08em;
  cursor: pointer;
  transition: border-color 250ms, background 250ms, color 250ms;
}
.hm-fpill:hover:not(.is-active) {
  border-color: #343434;
}
.hm-fpill.is-active {
  background: #343434;
  color: #fff;
  border-color: #343434;
}

.hm-fsize {
  appearance: none;
  width: 52px;
  height: 44px;
  background: transparent;
  color: #343434;
  border: 1px solid #C8C8C8;
  font-family: "Figtree";
  font-size: 0.75rem;
  letter-spacing: 0.1em;
  cursor: pointer;
  transition: border-color 250ms, background 250ms, color 250ms;
}
.hm-fsize:hover:not(.is-active) {
  border-color: #343434;
}
.hm-fsize.is-active {
  background: #343434;
  color: #fff;
  border-color: #343434;
}

.hm-fcolor {
  appearance: none;
  background: transparent;
  border: 0;
  padding: 0.25rem 0;
  display: flex;
  align-items: center;
  gap: 0.875rem;
  cursor: pointer;
  font-family: "Figtree";
  font-size: 0.8125rem;
  color: #343434;
}
.hm-fcolor__dot {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  outline: 1px solid #C8C8C8;
  outline-offset: 3px;
  flex-shrink: 0;
}
.hm-fcolor.is-active {
  font-weight: 500;
}
.hm-fcolor.is-active .hm-fcolor__dot {
  outline-color: #343434;
}

.hm-fprice {
  appearance: none;
  background: transparent;
  border: 0;
  padding: 0.5rem 0;
  display: flex;
  align-items: center;
  gap: 0.875rem;
  cursor: pointer;
  font-family: "Figtree";
  font-size: 0.8125rem;
  color: #343434;
  text-align: left;
}
.hm-fprice__box {
  width: 16px;
  height: 16px;
  border: 1px solid #C8C8C8;
  flex-shrink: 0;
  transition: background 200ms, border-color 200ms;
}
.hm-fprice.is-active {
  font-weight: 500;
}
.hm-fprice.is-active .hm-fprice__box {
  background: #343434;
  border-color: #343434;
}

body.single-product .hm-crumbs {
  padding-top: 1rem;
}
@media (min-width: 992px) {
  body.single-product .hm-crumbs {
    padding-top: 1.75rem;
  }
}

.hm-product {
  padding: 1.5rem 0 4rem;
}
@media (min-width: 992px) {
  .hm-product {
    padding: 2rem 0 6rem;
  }
}
.hm-product__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.25rem;
}
.hm-product__grid > * {
  min-width: 0;
}
@media (min-width: 992px) {
  .hm-product__grid {
    grid-template-columns: 1fr 510px;
    grid-template-rows: auto 1fr auto;
    column-gap: 4.5rem;
    row-gap: 0;
    align-items: start;
  }
}
@media (min-width: 992px) {
  .hm-product__head {
    grid-column: 2;
    grid-row: 1;
  }
}
@media (min-width: 992px) {
  .hm-product__gallery {
    grid-column: 1;
    grid-row: 1/3;
  }
}
@media (min-width: 992px) {
  .hm-product__dettagli {
    grid-column: 1;
    grid-row: 3;
  }
}
@media (min-width: 992px) {
  .hm-product__info {
    grid-column: 2;
    grid-row: 2/4;
    position: sticky;
    top: calc(var(--hm-header-h, 4rem) + 1.5rem);
  }
}

.hm-phead {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 1.5rem;
}
@media (min-width: 992px) {
  .hm-phead {
    display: block;
  }
}
.hm-phead__titles {
  min-width: 0;
}
.hm-phead .hm-pinfo__price {
  flex-shrink: 0;
  text-align: right;
}
@media (min-width: 992px) {
  .hm-phead .hm-pinfo__price {
    text-align: left;
  }
}

@media (min-width: 992px) {
  .hm-gallery .swiper-wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.75rem;
    transform: none;
  }
}
.hm-gallery__cell {
  position: relative;
  aspect-ratio: 4 / 5;
  overflow: hidden;
  background: #F4F4F4;
  cursor: zoom-in;
}
.hm-gallery__cell img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 0;
  display: block;
}
.hm-gallery__cell .swiper-zoom-container {
  width: 100%;
  height: 100%;
}
.hm-gallery__cell .swiper-zoom-container > img {
  max-width: none;
  max-height: none;
  object-fit: cover;
  object-position: 50% 0;
}
.hm-gallery__badge {
  position: absolute;
  left: 0.75rem;
  bottom: 0.75rem;
  z-index: 2;
  background: #FFFFFF;
  color: #343434;
  font-size: 0.625rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  font-weight: 500;
  padding: 0.3125rem 0.625rem;
  pointer-events: none;
}
@media (min-width: 992px) {
  .hm-gallery__cell--full {
    grid-column: 1/-1;
  }
  .hm-gallery__cell--half {
    grid-column: span 1;
  }
}

.hm-gallery__progress {
  margin-top: 0.875rem;
}
@media (min-width: 992px) {
  .hm-gallery__progress {
    display: none;
  }
}

[data-hm-gallery-wrap] {
  position: relative;
}

.hm-gallery__hint {
  position: absolute;
  top: 0.75rem;
  right: 0.75rem;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  background: #FFFFFF;
  color: #343434;
  font-size: 0.625rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  font-weight: 500;
  padding: 0.3125rem 0.625rem;
  pointer-events: none;
}
.hm-gallery__hint svg {
  width: 12px;
  height: 12px;
}
.hm-gallery__hint[hidden] {
  display: none;
}

html.hm-lightbox-open {
  overflow: hidden;
}

.hm-lightbox {
  border: 0;
  padding: 0;
  background: #FFFFFF;
  color: #343434;
}
.hm-lightbox[open] {
  display: flex;
  flex-direction: column;
  position: fixed;
  inset: 0;
  width: auto;
  height: auto;
  max-width: none;
  max-height: none;
  margin: 0;
}
.hm-lightbox::backdrop {
  background: #FFFFFF;
}
.hm-lightbox__bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.875rem 1.25rem;
  flex: 0 0 auto;
}
@media (min-width: 992px) {
  .hm-lightbox__bar {
    padding: 1.25rem 2.5rem;
  }
}
.hm-lightbox__count {
  color: #8D8D8D;
  font-variant-numeric: tabular-nums;
}
.hm-lightbox__close, .hm-lightbox__nav {
  appearance: none;
  background: none;
  border: 0;
  padding: 0.5rem;
  margin: -0.5rem;
  cursor: pointer;
  color: #343434;
  display: inline-flex;
}
.hm-lightbox__close svg, .hm-lightbox__nav svg {
  width: 24px;
  height: 24px;
}
.hm-lightbox__stage {
  position: relative;
  flex: 1 1 auto;
  min-height: 0;
  display: flex;
}
.hm-lightbox__swiper {
  width: 100%;
  height: 100%;
}
.hm-lightbox__swiper .swiper-slide {
  display: flex;
  align-items: center;
  justify-content: center;
}
.hm-lightbox__swiper .swiper-zoom-container {
  width: 100%;
  height: 100%;
  padding: 0 1.25rem;
}
@media (min-width: 992px) {
  .hm-lightbox__swiper .swiper-zoom-container {
    padding: 0 5rem;
  }
}
.hm-lightbox__swiper .swiper-zoom-container > img {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  object-fit: contain;
}
.hm-lightbox__nav {
  display: none;
}
@media (min-width: 992px) {
  .hm-lightbox__nav {
    display: inline-flex;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    margin: 0;
    z-index: 2;
  }
  .hm-lightbox__nav--prev {
    left: 1.5rem;
  }
  .hm-lightbox__nav--next {
    right: 1.5rem;
  }
  .hm-lightbox__nav.swiper-button-disabled {
    opacity: 0.25;
    cursor: default;
  }
}
.hm-lightbox__hint {
  color: #8D8D8D;
  text-align: center;
  padding: 0.875rem 1.25rem 1.25rem;
  flex: 0 0 auto;
}
.hm-lightbox__hint[hidden] {
  display: none;
}

.hm-dettagli {
  margin-top: 2.5rem;
}
@media (min-width: 992px) {
  .hm-dettagli {
    margin-top: 3rem;
  }
}
.hm-dettagli__title {
  font-weight: 500;
  margin: 0 0 1rem;
}
@media (min-width: 992px) {
  .hm-dettagli .swiper-wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.75rem;
    transform: none;
  }
}
.hm-dettagli__cell {
  position: relative;
  aspect-ratio: 4 / 5;
  overflow: hidden;
  background: #F4F4F4;
  cursor: zoom-in;
}
.hm-dettagli__cell img,
.hm-dettagli__cell .swiper-zoom-container > img {
  width: 100%;
  height: 100%;
  max-width: none;
  max-height: none;
  object-fit: cover;
  object-position: 50% 0;
  display: block;
}
.hm-dettagli__cell .swiper-zoom-container {
  width: 100%;
  height: 100%;
}
.hm-dettagli__progress {
  margin-top: 0.875rem;
}
@media (min-width: 992px) {
  .hm-dettagli__progress {
    display: none;
  }
}

.hm-pinfo__nd {
  margin: 0;
  font-size: 0.8125rem;
  line-height: 1.5;
  color: #8D8D8D;
  max-width: 22ch;
}
@media (min-width: 992px) {
  .hm-pinfo__nd {
    max-width: none;
  }
}
.hm-pinfo__nd a {
  color: #343434;
  padding-bottom: 0.15rem;
  position: relative;
  text-decoration: none;
  border-bottom: 0;
}
.hm-pinfo__nd a::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: currentColor;
}
.hm-pinfo__nd a:active {
  transform: translateY(1px);
}
.hm-pinfo__nd a:focus-visible {
  outline: 1px solid currentColor;
  outline-offset: 3px;
}
.hm-pinfo__nd a:hover::after, .hm-pinfo__nd a:focus-visible::after {
  animation: hm-btn-wipe 420ms cubic-bezier(0.22, 1, 0.36, 1);
}
@media (prefers-reduced-motion: reduce) {
  .hm-pinfo__nd a:hover::after, .hm-pinfo__nd a:focus-visible::after {
    animation: none;
    opacity: 0.45;
  }
}

body.hm-prezzi-nascosti .hm-pinfo__buy {
  display: none;
}
body.hm-prezzi-nascosti .hm-product-card__price:empty {
  display: none;
}

.hm-pinfo {
  display: flex;
  flex-direction: column;
}
.hm-pinfo__eyebrow {
  font-size: 0.75rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: #8D8D8D;
  margin: 0;
}
.hm-pinfo__title {
  font-family: "Figtree";
  font-weight: 500;
  font-size: 1.75rem;
  line-height: 1.15;
  margin: 0.75rem 0 0;
}
@media (min-width: 992px) {
  .hm-pinfo__title {
    font-size: 2.375rem;
  }
}
.hm-pinfo__type {
  display: block;
  font-family: "Figtree";
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: #8D8D8D;
  margin-top: 0.75rem;
}
.hm-pinfo__price {
  font-size: 1.125rem;
  font-variant-numeric: tabular-nums;
  margin-top: 1rem;
}
.hm-pinfo__price del {
  color: #8D8D8D;
  margin-right: 0.5rem;
}
.hm-pinfo__price ins {
  text-decoration: none;
}
.hm-pinfo__price p {
  margin: 0;
}
.hm-pinfo__group {
  margin-top: 2rem;
}
.hm-pinfo__label {
  font-size: 0.6875rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: #8D8D8D;
  margin: 0 0 0.75rem;
}
.hm-pinfo__label span {
  color: #343434;
}
.hm-pinfo__form .variations {
  display: table;
}
.hm-pinfo .hm-swatches,
.hm-pinfo .hm-sizes {
  display: none;
}
.hm-pinfo.hm-pinfo--js-variants .hm-pinfo__form .variations {
  display: none;
}
.hm-pinfo.hm-pinfo--js-variants .hm-pinfo__form .quantity {
  display: none !important;
}
.hm-pinfo.hm-pinfo--js-variants .hm-pinfo__form .woocommerce-variation {
  display: none !important;
}
.hm-pinfo.hm-pinfo--js-variants .hm-swatches,
.hm-pinfo.hm-pinfo--js-variants .hm-sizes {
  display: flex;
}
.hm-pinfo.hm-pinfo--js-variants.hm-pinfo--all-soldout .hm-pinfo__form .woocommerce-variation-add-to-cart {
  display: none !important;
}
.hm-pinfo.hm-pinfo--js-variants.hm-pinfo--variation-soldout .hm-pinfo__form .woocommerce-variation {
  display: block !important;
}
.hm-pinfo.hm-pinfo--js-variants.hm-pinfo--variation-soldout .hm-pinfo__form .woocommerce-variation-price {
  display: none;
}
.hm-pinfo.hm-pinfo--js-variants.hm-pinfo--variation-soldout .hm-pinfo__form .woocommerce-variation-availability .stock {
  display: none;
}
.hm-pinfo.hm-pinfo--js-variants.hm-pinfo--variation-soldout .hm-pinfo__form .woocommerce-variation-add-to-cart {
  display: none !important;
}

.hm-pinfo__reset {
  display: block;
  margin: 0.875rem 0 0;
  padding: 0;
  appearance: none;
  background: none;
  border: 0;
  width: fit-content;
  font-family: "Figtree";
  font-size: 0.6875rem;
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #8D8D8D;
  cursor: pointer;
  transition: color 200ms;
}
.hm-pinfo__reset[hidden] {
  display: none;
}
.hm-pinfo__reset:hover, .hm-pinfo__reset:focus-visible {
  color: #343434;
  text-decoration: underline;
  text-underline-offset: 0.35em;
}
.hm-pinfo__reset:focus-visible {
  outline: 1px solid #343434;
  outline-offset: 3px;
}

.hm-pinfo__modello {
  margin: 0.75rem 0;
  font-size: 0.8125rem;
  line-height: 1.5;
  color: #8D8D8D;
}

.hm-pinfo__soldout {
  margin: 0 0 0.75rem;
  font-size: 0.8125rem;
  color: #7A5C5C;
}

.hm-pinfo__soldout-all {
  margin-bottom: 1rem;
}

.hm-pinfo__hint {
  margin: 0.5rem 0 0;
  font-size: 13px;
  color: #8D8D8D;
}

.hm-swatches.is-attention,
.hm-sizes.is-attention {
  outline: 1px solid #343434;
  outline-offset: 6px;
}
@media (prefers-reduced-motion: no-preference) {
  .hm-swatches.is-attention,
  .hm-sizes.is-attention {
    animation: hm-attenzione 600ms ease-out forwards;
  }
}

@keyframes hm-attenzione {
  from {
    outline-color: #343434;
  }
  to {
    outline-color: transparent;
  }
}
.hm-pinfo__consiglio {
  margin: 0.75rem 0 0;
  font-size: 0.8125rem;
  font-weight: 500;
  line-height: 1.5;
  color: #343434;
}

.hm-pinfo__pochi {
  margin: 0.75rem 0;
  font-size: 0.8125rem;
  font-weight: 500;
  color: #343434;
}

.cwginstock-subscribe-form.cwginstock-subscribe-form {
  max-width: 100%;
}
.cwginstock-subscribe-form.cwginstock-subscribe-form .panel,
.cwginstock-subscribe-form.cwginstock-subscribe-form .cwginstock-panel-primary {
  margin: 0;
  background: none;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}
.cwginstock-subscribe-form.cwginstock-subscribe-form .cwginstock-panel-body {
  padding: 0;
}
.cwginstock-subscribe-form.cwginstock-subscribe-form .row {
  margin: 0;
}
.cwginstock-subscribe-form.cwginstock-subscribe-form [class^=col-],
.cwginstock-subscribe-form.cwginstock-subscribe-form [class*=" col-"] {
  float: none;
  width: auto;
  padding: 0;
}
.cwginstock-subscribe-form.cwginstock-subscribe-form .cwginstock-panel-heading {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}
.cwginstock-subscribe-form.cwginstock-subscribe-form .form-group {
  margin: 0 0 0.5rem;
}
.cwginstock-subscribe-form.cwginstock-subscribe-form input[type=email],
.cwginstock-subscribe-form.cwginstock-subscribe-form input[type=text],
.cwginstock-subscribe-form.cwginstock-subscribe-form input[type=tel] {
  width: 100%;
  height: 48px;
  padding: 0 0.75rem;
  border: 1px solid #C8C8C8;
  border-radius: 0;
  box-shadow: none;
  text-align: left !important;
  font-size: 0.875rem;
}
.cwginstock-subscribe-form.cwginstock-subscribe-form input[type=email]:focus-visible,
.cwginstock-subscribe-form.cwginstock-subscribe-form input[type=text]:focus-visible,
.cwginstock-subscribe-form.cwginstock-subscribe-form input[type=tel]:focus-visible {
  border-color: #343434;
  outline: 1px solid #343434;
  outline-offset: -2px;
}
.cwginstock-subscribe-form.cwginstock-subscribe-form .cwg_iagree_checkbox {
  margin: 0 0 0.75rem;
  font-size: 0.75rem;
  line-height: 1.5;
  color: #8D8D8D;
}
.cwginstock-subscribe-form.cwginstock-subscribe-form .cwg_iagree_checkbox label {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
  margin: 0;
  cursor: pointer;
}
.cwginstock-subscribe-form.cwginstock-subscribe-form .cwg_iagree_checkbox input[type=checkbox] {
  flex: 0 0 auto;
  width: 14px;
  height: 14px;
  margin: 0.2rem 0 0;
  accent-color: #343434;
}
.cwginstock-subscribe-form.cwginstock-subscribe-form .cwg_iagree_checkbox a {
  color: #343434;
}
.cwginstock-subscribe-form.cwginstock-subscribe-form button[type=submit],
.cwginstock-subscribe-form.cwginstock-subscribe-form .cwgstock_button {
  display: block;
  width: 100%;
  padding: 0.875rem 1.5rem;
  background: #343434;
  color: #FFFFFF;
  border: 1px solid #343434;
  border-radius: 0;
  box-shadow: none;
  font-family: "Figtree";
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  cursor: pointer;
  transition: background-color 420ms cubic-bezier(0.22, 1, 0.36, 1), border-color 420ms cubic-bezier(0.22, 1, 0.36, 1), color 420ms cubic-bezier(0.22, 1, 0.36, 1);
}
.cwginstock-subscribe-form.cwginstock-subscribe-form button[type=submit]:active,
.cwginstock-subscribe-form.cwginstock-subscribe-form .cwgstock_button:active {
  transform: translateY(1px);
}
.cwginstock-subscribe-form.cwginstock-subscribe-form button[type=submit]:focus-visible,
.cwginstock-subscribe-form.cwginstock-subscribe-form .cwgstock_button:focus-visible {
  outline: 1px solid currentColor;
  outline-offset: 3px;
}
.cwginstock-subscribe-form.cwginstock-subscribe-form button[type=submit].is-busy, .cwginstock-subscribe-form.cwginstock-subscribe-form button[type=submit].is-loading, .cwginstock-subscribe-form.cwginstock-subscribe-form button[type=submit].loading, .cwginstock-subscribe-form.cwginstock-subscribe-form button[type=submit][aria-busy=true],
.cwginstock-subscribe-form.cwginstock-subscribe-form .cwgstock_button.is-busy,
.cwginstock-subscribe-form.cwginstock-subscribe-form .cwgstock_button.is-loading,
.cwginstock-subscribe-form.cwginstock-subscribe-form .cwgstock_button.loading,
.cwginstock-subscribe-form.cwginstock-subscribe-form .cwgstock_button[aria-busy=true] {
  pointer-events: none;
  opacity: 0.55;
}
@media (prefers-reduced-motion: reduce) {
  .cwginstock-subscribe-form.cwginstock-subscribe-form button[type=submit],
  .cwginstock-subscribe-form.cwginstock-subscribe-form .cwgstock_button {
    transition: none;
  }
}
.cwginstock-subscribe-form.cwginstock-subscribe-form button[type=submit]:hover, .cwginstock-subscribe-form.cwginstock-subscribe-form button[type=submit]:focus-visible,
.cwginstock-subscribe-form.cwginstock-subscribe-form .cwgstock_button:hover,
.cwginstock-subscribe-form.cwginstock-subscribe-form .cwgstock_button:focus-visible {
  background: #8D8D8D;
  border-color: #8D8D8D;
  color: #FFFFFF;
}
.cwginstock-subscribe-form.cwginstock-subscribe-form .cwgstock_output:not(:empty) {
  margin-top: 0.75rem;
}
.cwginstock-subscribe-form.cwginstock-subscribe-form .cwgstock_output {
  font-size: 0.8125rem;
  line-height: 1.5;
  color: #8D8D8D;
}

.hm-swatches {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 1rem;
  row-gap: 0.75rem;
}

.hm-swatch {
  position: relative;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  border: 1px solid #C8C8C8;
  padding: 0;
  cursor: pointer;
  box-shadow: none;
  outline-offset: 3px;
  transition: outline-color 200ms;
  outline: 1px solid transparent;
}
.hm-swatch::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 44px;
  height: 44px;
  transform: translate(-50%, -50%);
}
.hm-swatch.is-active {
  outline-color: #343434;
}
.hm-swatch:focus-visible {
  outline-color: #343434;
  box-shadow: 0 0 0 2px #FFFFFF, 0 0 0 4px #8D8D8D;
}
.hm-swatch.is-unavailable, .hm-swatch:disabled {
  opacity: 0.35;
  cursor: not-allowed;
}
.hm-swatch.is-soldout {
  opacity: 0.55;
  cursor: pointer;
}

.hm-swatch--img {
  width: 44px;
  height: 55px;
  border-radius: 0;
  background: #F4F4F4;
  overflow: hidden;
}
.hm-swatch--img img {
  object-position: 50% 50%;
}
.hm-swatch--img::before {
  content: none;
}
.hm-swatch--img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.hm-swatch--img.is-active {
  border-color: #343434;
  outline-color: #343434;
}
.hm-swatch--img.is-soldout::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to top right, transparent calc(50% - 0.5px), #343434 calc(50% - 0.5px), #343434 calc(50% + 0.5px), transparent calc(50% + 0.5px));
}

.hm-sizes {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
@media (max-width: 479.98px) {
  .hm-sizes {
    flex-wrap: nowrap;
    overflow-x: auto;
    scroll-snap-type: x proximity;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  .hm-sizes::-webkit-scrollbar {
    display: none;
  }
  .hm-sizes > li {
    flex: 0 0 auto;
    scroll-snap-align: start;
  }
}

.hm-sizes__progress {
  margin-top: 0.75rem;
}
@media (min-width: 480px) {
  .hm-sizes__progress {
    display: none;
  }
}

.hm-size {
  min-width: 52px;
  height: 48px;
  padding: 0 0.5rem;
  background: transparent;
  color: #343434;
  border: 1px solid #C8C8C8;
  font-family: "Figtree";
  font-size: 0.8125rem;
  letter-spacing: 0.08em;
  cursor: pointer;
  transition: border-color 200ms, background 200ms, color 200ms;
}
.hm-size:hover:not(:disabled) {
  border-color: #343434;
}
.hm-size.is-active {
  background: #343434;
  color: #FFFFFF;
  border-color: #343434;
}
.hm-size.is-unavailable, .hm-size:disabled {
  color: #B5B5B5;
  border-color: #C8C8C8;
  text-decoration: line-through;
  cursor: not-allowed;
}
.hm-size.is-soldout {
  color: #8D8D8D;
  border-color: #C8C8C8;
  text-decoration: line-through;
  cursor: pointer;
}
.hm-size.is-soldout.is-active {
  background: #343434;
  color: #FFFFFF;
  border-color: #343434;
}

body.woocommerce .quantity {
  display: block;
  margin-bottom: 0.75rem;
}
body.woocommerce .quantity .qty {
  width: 4.5rem;
  height: 48px;
  padding: 0 0.5rem;
  text-align: center;
  background: #FFFFFF;
  color: #343434;
  border: 1px solid #C8C8C8;
  border-radius: 0;
  box-shadow: none;
  font-family: "Figtree";
  font-variant-numeric: tabular-nums;
}
body.woocommerce .single_add_to_cart_button.button.alt {
  display: block;
  width: 100%;
  padding: 0.875rem 1.5rem;
  background: #343434;
  color: #FFFFFF;
  border: 1px solid #343434;
  border-radius: 0;
  box-shadow: none;
  font-family: "Figtree";
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  text-align: center;
  transition: background-color 420ms cubic-bezier(0.22, 1, 0.36, 1), border-color 420ms cubic-bezier(0.22, 1, 0.36, 1), color 420ms cubic-bezier(0.22, 1, 0.36, 1);
}
body.woocommerce .single_add_to_cart_button.button.alt:active {
  transform: translateY(1px);
}
body.woocommerce .single_add_to_cart_button.button.alt:focus-visible {
  outline: 1px solid currentColor;
  outline-offset: 3px;
}
body.woocommerce .single_add_to_cart_button.button.alt.is-busy, body.woocommerce .single_add_to_cart_button.button.alt.is-loading, body.woocommerce .single_add_to_cart_button.button.alt.loading, body.woocommerce .single_add_to_cart_button.button.alt[aria-busy=true] {
  pointer-events: none;
  opacity: 0.55;
}
@media (prefers-reduced-motion: reduce) {
  body.woocommerce .single_add_to_cart_button.button.alt {
    transition: none;
  }
}
body.woocommerce .single_add_to_cart_button.button.alt:hover, body.woocommerce .single_add_to_cart_button.button.alt:focus-visible {
  background: #8D8D8D;
  border-color: #8D8D8D;
}
@media (prefers-reduced-motion: no-preference) {
  body.woocommerce .single_add_to_cart_button.button.alt.hm-btn--roll:has(.hm-btn__roll):not(.is-wrapped):hover, body.woocommerce .single_add_to_cart_button.button.alt.hm-btn--roll:has(.hm-btn__roll):not(.is-wrapped):focus-visible {
    background: #343434;
    color: #FFFFFF;
    border-color: #343434;
  }
}
body.woocommerce .single_add_to_cart_button.button.alt.disabled, body.woocommerce .single_add_to_cart_button.button.alt:disabled {
  background: #B5B5B5;
  border-color: #B5B5B5;
  color: #FFFFFF;
  cursor: not-allowed;
  opacity: 1;
}
body.woocommerce .single_add_to_cart_button.button.alt.disabled.wc-variation-selection-needed {
  background: #343434;
  border-color: #343434;
  color: #FFFFFF;
  cursor: pointer;
}
body.woocommerce .woocommerce-variation-price {
  margin-bottom: 0.75rem;
  font-size: 1.125rem;
  font-variant-numeric: tabular-nums;
}
body.woocommerce .woocommerce-variation-price .price {
  margin: 0;
}
body.woocommerce .woocommerce-variation-price del {
  color: #8D8D8D;
  margin-right: 0.5rem;
}
body.woocommerce .woocommerce-variation-price ins {
  text-decoration: none;
}
body.woocommerce .woocommerce-variation-availability {
  margin-bottom: 0.75rem;
  font-size: 0.8125rem;
}
body.woocommerce .stock {
  display: inline-block;
  margin: 0;
  color: #8D8D8D;
}
body.woocommerce .stock.out-of-stock {
  color: #7A5C5C;
}

.hm-trust {
  list-style: none;
  padding: 1.25rem 0;
  margin: 2rem 0 0;
  border-top: 1px solid #C8C8C8;
  border-bottom: 1px solid #C8C8C8;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.hm-trust li {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  font-size: 0.8125rem;
}
.hm-trust svg {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
}

.hm-acc__item {
  border-bottom: 1px solid #C8C8C8;
}
.hm-acc__heading {
  margin: 0;
}
.hm-acc__trigger {
  width: 100%;
  background: transparent;
  border: none;
  padding: 1.125rem 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
  font-family: "Figtree";
  font-size: 0.75rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  font-weight: 500;
  color: #343434;
}
.hm-acc__trigger[aria-expanded=true] .hm-acc__sign {
  transform: rotate(45deg);
}
.hm-acc__sign {
  font-size: 1.125rem;
  font-weight: 300;
  line-height: 1;
  transition: transform 300ms;
}
.hm-acc--js .hm-acc__panel {
  display: grid;
  grid-template-rows: 0fr;
  visibility: hidden;
  transition: grid-template-rows 320ms cubic-bezier(0.4, 0, 0.2, 1), visibility 0s 320ms;
}
.hm-acc--js .hm-acc__panel > .hm-acc__body {
  overflow: hidden;
  min-height: 0;
}
.hm-acc--js .hm-acc__panel.is-open {
  grid-template-rows: 1fr;
  visibility: visible;
  transition: grid-template-rows 320ms cubic-bezier(0.4, 0, 0.2, 1), visibility 0s;
}
@media (prefers-reduced-motion: reduce) {
  .hm-acc--js .hm-acc__panel {
    transition: none;
  }
}
.hm-acc__body {
  font-size: 0.875rem;
  line-height: 1.7;
  color: #8D8D8D;
}
.hm-acc__body::after {
  content: "";
  display: block;
  height: 1.25rem;
}
.hm-acc__body p:last-child {
  margin-bottom: 0;
}
.hm-acc__body table {
  width: 100%;
  font-size: 0.8125rem;
}
.hm-acc__body th {
  text-align: left;
  font-weight: 500;
  color: #343434;
}

.hm-related {
  position: relative;
  padding: 4rem 0 5rem;
}
@media (min-width: 992px) {
  .hm-related {
    padding: 6rem 0 7rem;
  }
}
.hm-related__head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 1.5rem;
  margin-bottom: 2rem;
}
@media (min-width: 992px) {
  .hm-related__head {
    margin-bottom: 3rem;
  }
}
.hm-related__title {
  font-family: "Figtree";
  font-weight: 500;
  font-size: 1.75rem;
  margin: 0;
}
@media (min-width: 992px) {
  .hm-related__title {
    font-size: 2.5rem;
  }
}
@media (min-width: 992px) {
  .hm-related .hm-cnav {
    position: absolute;
    top: 6rem;
    margin-bottom: 0;
  }
}
@media (min-width: 992px) {
  .hm-related .hm-cnav {
    right: calc((100% - 960px) * 0.5 + 2.5rem);
  }
}
@media (min-width: 1200px) {
  .hm-related .hm-cnav {
    right: calc((100% - 1140px) * 0.5 + 2.5rem);
  }
}
@media (min-width: 1400px) {
  .hm-related .hm-cnav {
    right: calc((100% - 1440px) * 0.5 + 2.5rem);
  }
}

@media (min-width: 1200px) {
  .hm-completa--fisso .hm-cnav,
  .hm-completa--fisso .ns-swiper-progress {
    display: none;
  }
}

.hm-pinfo__fit {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 1rem;
  margin: 2rem 0 0;
  font-size: 0.6875rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
}

.hm-pinfo__labelrow {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 1rem;
}

.hm-sizeguide__open {
  appearance: none;
  background: none;
  border: 0;
  padding: 0 0 0.15rem;
  cursor: pointer;
  font-family: "Figtree";
  font-size: 0.6875rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #343434;
  position: relative;
  text-decoration: none;
  border-bottom: 0;
}
.hm-sizeguide__open::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: currentColor;
}
.hm-sizeguide__open:active {
  transform: translateY(1px);
}
.hm-sizeguide__open:focus-visible {
  outline: 1px solid currentColor;
  outline-offset: 3px;
}
.hm-sizeguide__open:hover::after, .hm-sizeguide__open:focus-visible::after {
  animation: hm-btn-wipe 420ms cubic-bezier(0.22, 1, 0.36, 1);
}
@media (prefers-reduced-motion: reduce) {
  .hm-sizeguide__open:hover::after, .hm-sizeguide__open:focus-visible::after {
    animation: none;
    opacity: 0.45;
  }
}

.hm-sizeguide {
  border: 0;
  padding: 0;
  background: transparent;
}
.hm-sizeguide[open] {
  display: flex;
  position: fixed;
  inset: 0;
  width: auto;
  height: auto;
  max-width: none;
  max-height: none;
  margin: 0;
  padding: 1.5rem;
  align-items: center;
  justify-content: center;
}
.hm-sizeguide::backdrop {
  background: rgba(52, 52, 52, 0.45);
}
.hm-sizeguide[open] {
  padding: 0;
}
.hm-sizeguide__panel {
  background: #FFFFFF;
  width: 100%;
  height: 100dvh;
  overflow: auto;
  padding: 1.5rem 1.25rem 2.5rem;
}
@media (min-width: 992px) {
  .hm-sizeguide[open] {
    padding: 1.5rem;
  }
  .hm-sizeguide__panel {
    border: 1px solid #C8C8C8;
    max-width: 960px;
    height: auto;
    max-height: 90vh;
    padding: 2.5rem;
  }
}
.hm-sizeguide__intro {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  margin-bottom: 2rem;
}
@media (min-width: 768px) {
  .hm-sizeguide__intro {
    flex-direction: row;
    gap: 3rem;
    align-items: center;
  }
}
.hm-sizeguide__figure {
  flex: 0 0 auto;
  align-self: center;
}
.hm-sizeguide__figure .hm-sizeguide__svg {
  display: block;
  width: 130px;
  height: auto;
  color: #343434;
}
.hm-sizeguide__figure .hm-sizeguide__img {
  display: block;
  width: 190px;
  height: auto;
}
.hm-sizeguide__howto {
  flex: 1;
}
.hm-sizeguide__howto p {
  font-size: 0.9rem;
  line-height: 1.7;
  margin: 0 0 1.25rem;
}
.hm-sizeguide__legend {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  font-size: 0.875rem;
}
.hm-sizeguide__legend b {
  display: inline-block;
  width: 1.25rem;
  font-weight: 600;
}
.hm-sizeguide__scroll {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.hm-sizeguide__scroll .hm-sizeguide__table {
  min-width: 620px;
}
.hm-sizeguide__head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 1.5rem;
}
.hm-sizeguide__title {
  font-family: "Figtree";
  font-weight: 500;
  font-size: 1.5rem;
  margin: 0;
}
.hm-sizeguide__close {
  appearance: none;
  background: none;
  border: 0;
  padding: 0.25rem;
  cursor: pointer;
  color: #343434;
  line-height: 0;
  transition: color 420ms cubic-bezier(0.22, 1, 0.36, 1);
}
.hm-sizeguide__close:hover, .hm-sizeguide__close:focus-visible {
  color: #8D8D8D;
}
.hm-sizeguide__close:active {
  transform: translateY(1px);
}
.hm-sizeguide__table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.85rem;
  font-variant-numeric: tabular-nums;
}
.hm-sizeguide__table th,
.hm-sizeguide__table td {
  text-align: left;
  padding: 0.75rem 0.625rem;
  white-space: nowrap;
}
.hm-sizeguide__table th {
  font-size: 0.6875rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  font-weight: 600;
}
.hm-sizeguide__table tbody tr:nth-child(odd) {
  background: #F6F6F6;
}
.hm-sizeguide__note {
  margin: 1.25rem 0 0;
  font-size: 0.8rem;
  color: #8D8D8D;
  line-height: 1.5;
}

.hm-temp {
  position: relative;
  width: 100%;
  margin: 0 0 1rem;
  font-family: "Figtree";
  color: #343434;
}
.hm-temp__frase {
  margin: 0;
}
.hm-temp__frase strong {
  font-weight: 500;
  color: #343434;
}
.hm-temp--js .hm-temp__frase {
  margin-top: 0.25rem;
}
.hm-temp__svg {
  display: block;
  width: 100%;
  max-width: 22rem;
  height: auto;
  margin: 0 auto;
  overflow: visible;
}
.hm-temp__track {
  stroke: #C8C8C8;
  stroke-width: 8;
  stroke-linecap: round;
}
.hm-temp__band {
  stroke: #343434;
  stroke-width: 10;
  stroke-linecap: round;
  transition: stroke-dashoffset 1.1s cubic-bezier(0.22, 1, 0.36, 1);
}
.hm-temp__ticks line {
  stroke: #343434;
  stroke-width: 2;
  stroke-linecap: round;
}
.hm-temp__tick {
  font-size: 12.5px;
  font-weight: 500;
  fill: #343434;
  letter-spacing: 0.02em;
  font-variant-numeric: tabular-nums;
}
.hm-temp__valore {
  font-size: 30px;
  font-weight: 500;
  fill: #343434;
  letter-spacing: -0.01em;
  font-variant-numeric: tabular-nums;
  opacity: 0;
  transform: translateY(4px);
  transition: opacity 0.5s ease 0.35s, transform 0.5s ease 0.35s;
}
.hm-temp__label {
  font-size: 10px;
  font-weight: 500;
  fill: #8D8D8D;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  opacity: 0;
  transition: opacity 0.5s ease 0.55s;
}
.hm-temp.is-drawn .hm-temp__valore, .hm-temp.is-drawn .hm-temp__label {
  opacity: 1;
  transform: none;
}
.hm-temp__unita {
  position: absolute;
  top: 0;
  right: 0;
  display: inline-flex;
  border: 1px solid #C8C8C8;
  z-index: 1;
}
.hm-temp__btn {
  appearance: none;
  background: #fff;
  border: 0;
  padding: 0.3rem 0.55rem;
  font: inherit;
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.08em;
  color: #8D8D8D;
  cursor: pointer;
  line-height: 1;
}
.hm-temp__btn + .hm-temp__btn {
  border-left: 1px solid #C8C8C8;
}
.hm-temp__btn:hover {
  color: #343434;
}
.hm-temp__btn[aria-pressed=true] {
  background: #343434;
  color: #fff;
}
.hm-temp__btn:focus-visible {
  outline: 2px solid #343434;
  outline-offset: 2px;
}

@media (prefers-reduced-motion: reduce) {
  .hm-temp__band,
  .hm-temp__valore,
  .hm-temp__label {
    transition: none;
  }
}
.hm-ai-mark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  box-sizing: border-box;
  width: 18px;
  height: 18px;
  border: 1px solid #b3b3b3;
  border-radius: 50%;
  color: #636363;
  font-family: "Figtree";
  font-size: 9px;
  line-height: 1;
  font-weight: 500;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.hm-gallery__badge,
.hm-product-card__badge {
  z-index: 3;
}

.hm-hero {
  position: relative;
  height: 70vh;
  min-height: 480px;
  overflow: hidden;
}
@media (min-width: 992px) {
  .hm-hero {
    height: calc(100vh - 140px);
    min-height: 620px;
  }
}
.hm-hero__media, .hm-hero__media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.hm-hero__overlay {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 50%;
  background: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.6));
}
.hm-hero__content {
  position: absolute;
  left: 1.5rem;
  bottom: 1.5rem;
  right: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  max-width: 560px;
  color: #fff;
  container-type: inline-size;
}
@media (min-width: 992px) {
  .hm-hero__content {
    left: 4rem;
    bottom: 4rem;
    max-width: 44rem;
  }
}
.hm-hero__eyebrow {
  font-family: "Figtree";
  font-style: italic;
  font-size: 1.125rem;
}
.hm-hero__title {
  font-family: "Figtree";
  font-weight: 300;
  font-size: min(10.3092783505cqi, 3.2rem);
  line-height: 1.02;
  margin: 0;
  color: #fff;
  white-space: nowrap;
}
@media (min-width: 992px) {
  .hm-hero__title {
    font-size: 4.25rem;
  }
}
.hm-hero__text {
  font-size: 0.9375rem;
  line-height: 1.6;
  margin: 0;
  opacity: 0.92;
  max-width: 46ch;
}
.hm-hero__ctas {
  display: flex;
  gap: 2rem;
  margin-top: 0.75rem;
}

.hm-hero__ctas a,
.hm-editorial__content a,
.hm-split__cta {
  font-size: 0.75rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  font-weight: 500;
  color: #fff;
  padding-bottom: 0.25rem;
  width: fit-content;
  position: relative;
  text-decoration: none;
  border-bottom: 0;
}
.hm-hero__ctas a::after,
.hm-editorial__content a::after,
.hm-split__cta::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: currentColor;
}
.hm-hero__ctas a:active,
.hm-editorial__content a:active,
.hm-split__cta:active {
  transform: translateY(1px);
}
.hm-hero__ctas a:focus-visible,
.hm-editorial__content a:focus-visible,
.hm-split__cta:focus-visible {
  outline: 1px solid currentColor;
  outline-offset: 3px;
}
.hm-hero__ctas a:hover::after,
.hm-editorial__content a:hover::after,
.hm-split__cta:hover::after, .hm-hero__ctas a:focus-visible::after,
.hm-editorial__content a:focus-visible::after,
.hm-split__cta:focus-visible::after {
  animation: hm-btn-wipe 420ms cubic-bezier(0.22, 1, 0.36, 1);
}
@media (prefers-reduced-motion: reduce) {
  .hm-hero__ctas a:hover::after,
  .hm-editorial__content a:hover::after,
  .hm-split__cta:hover::after, .hm-hero__ctas a:focus-visible::after,
  .hm-editorial__content a:focus-visible::after,
  .hm-split__cta:focus-visible::after {
    animation: none;
    opacity: 0.45;
  }
}
.hm-hero__ctas a:hover,
.hm-editorial__content a:hover,
.hm-split__cta:hover, .hm-hero__ctas a:focus-visible,
.hm-editorial__content a:focus-visible,
.hm-split__cta:focus-visible {
  color: #fff;
}

.hm-pcarousel:not(:has(.swiper-slide)) {
  display: none;
}

.hm-pcarousel {
  padding-top: 5rem;
}
@media (min-width: 992px) {
  .hm-pcarousel {
    padding-top: 7.5rem;
  }
}
.hm-pcarousel__head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 1.5rem;
  margin-bottom: 2rem;
}
@media (min-width: 992px) {
  .hm-pcarousel__head {
    margin-bottom: 3rem;
  }
}
.hm-pcarousel__heading {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.hm-pcarousel__eyebrow {
  font-size: 0.6875rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #8D8D8D;
}
.hm-pcarousel__title {
  font-family: "Figtree";
  font-weight: 500;
  font-size: 1.75rem;
  margin: 0;
}
@media (min-width: 992px) {
  .hm-pcarousel__title {
    font-size: 2.75rem;
  }
}
.hm-pcarousel__all {
  font-size: 0.75rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  font-weight: 500;
  color: #343434;
  padding-bottom: 0.25rem;
  white-space: nowrap;
  position: relative;
  text-decoration: none;
  border-bottom: 0;
}
.hm-pcarousel__all::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: currentColor;
}
.hm-pcarousel__all:active {
  transform: translateY(1px);
}
.hm-pcarousel__all:focus-visible {
  outline: 1px solid currentColor;
  outline-offset: 3px;
}
.hm-pcarousel__all:hover::after, .hm-pcarousel__all:focus-visible::after {
  animation: hm-btn-wipe 420ms cubic-bezier(0.22, 1, 0.36, 1);
}
@media (prefers-reduced-motion: reduce) {
  .hm-pcarousel__all:hover::after, .hm-pcarousel__all:focus-visible::after {
    animation: none;
    opacity: 0.45;
  }
}

.hm-cnav {
  display: none;
}
@media (min-width: 992px) {
  .hm-cnav {
    display: flex;
    gap: 0.5rem;
    justify-content: flex-end;
    margin-bottom: 1.25rem;
  }
}
.hm-cnav .swiper-button-prev,
.hm-cnav .swiper-button-next {
  position: static;
  width: 2.5rem;
  height: 2.5rem;
  margin-top: 0;
  appearance: none;
  background: none;
  border: 1px solid #C8C8C8;
  color: #343434;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: border-color 420ms cubic-bezier(0.22, 1, 0.36, 1), color 420ms cubic-bezier(0.22, 1, 0.36, 1);
}
.hm-cnav .swiper-button-prev::after,
.hm-cnav .swiper-button-next::after {
  display: none;
}
.hm-cnav .swiper-button-prev svg,
.hm-cnav .swiper-button-next svg {
  width: 20px;
  height: 20px;
}
.hm-cnav .swiper-button-prev:hover:not(.swiper-button-disabled),
.hm-cnav .swiper-button-next:hover:not(.swiper-button-disabled) {
  border-color: #343434;
}
.hm-cnav .swiper-button-prev:active:not(.swiper-button-disabled),
.hm-cnav .swiper-button-next:active:not(.swiper-button-disabled) {
  transform: translateY(1px);
}
.hm-cnav .swiper-button-prev.swiper-button-disabled,
.hm-cnav .swiper-button-next.swiper-button-disabled {
  color: #B5B5B5;
  opacity: 1;
}

.hm-editorial {
  position: relative;
  height: 70vh;
  min-height: 480px;
  overflow: hidden;
  margin-top: 6rem;
}
@media (min-width: 992px) {
  .hm-editorial {
    height: 82vh;
    min-height: 560px;
    margin-top: 8rem;
  }
}
.hm-editorial__media, .hm-editorial__media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.hm-editorial__overlay {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 50%;
  background: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.6));
}
.hm-editorial__content {
  position: absolute;
  left: 1.5rem;
  right: 1.5rem;
  bottom: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 0.875rem;
  max-width: 520px;
  color: #fff;
}
@media (min-width: 992px) {
  .hm-editorial__content {
    left: 4rem;
    bottom: 4rem;
  }
}
.hm-editorial__eyebrow {
  font-family: "Figtree";
  font-style: italic;
  font-size: 1.125rem;
}
.hm-editorial__title {
  font-family: "Figtree";
  font-weight: 300;
  font-size: 2rem;
  line-height: 1.05;
  margin: 0;
  color: #fff;
}
@media (min-width: 992px) {
  .hm-editorial__title {
    font-size: 3.25rem;
  }
}
.hm-editorial__text {
  font-size: 0.9375rem;
  line-height: 1.6;
  margin: 0;
  opacity: 0.92;
}

.hm-tiles {
  padding-top: 5rem;
}
@media (min-width: 992px) {
  .hm-tiles {
    padding-top: 7.5rem;
  }
}
.hm-tiles__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
}
@media (min-width: 992px) {
  .hm-tiles__grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
  }
}

.hm-tile {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.hm-tile__media {
  aspect-ratio: 4/3;
  overflow: hidden;
  background: #F4F4F4;
}
.hm-tile__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.hm-tile__foot {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 1rem;
}
.hm-tile__name {
  font-family: "Figtree";
  font-size: 1.5rem;
  font-weight: 500;
}
.hm-tile__links {
  display: flex;
  gap: 1.25rem;
}
.hm-tile__links a {
  font-size: 0.6875rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  font-weight: 500;
  color: #343434;
  padding-bottom: 0.1875rem;
  position: relative;
  text-decoration: none;
  border-bottom: 0;
}
.hm-tile__links a::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: currentColor;
}
.hm-tile__links a:active {
  transform: translateY(1px);
}
.hm-tile__links a:focus-visible {
  outline: 1px solid currentColor;
  outline-offset: 3px;
}
.hm-tile__links a:hover::after, .hm-tile__links a:focus-visible::after {
  animation: hm-btn-wipe 420ms cubic-bezier(0.22, 1, 0.36, 1);
}
@media (prefers-reduced-motion: reduce) {
  .hm-tile__links a:hover::after, .hm-tile__links a:focus-visible::after {
    animation: none;
    opacity: 0.45;
  }
}

.hm-manifesto {
  max-width: 900px;
  margin: 0 auto;
  padding: 6rem 1.5rem;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.75rem;
}
@media (min-width: 992px) {
  .hm-manifesto {
    padding: 8.75rem 2.5rem;
  }
}
.hm-manifesto__logo {
  height: 64px;
  width: auto;
  display: block;
}
.hm-manifesto__title {
  font-family: "Figtree";
  font-weight: 500;
  font-size: 2rem;
  line-height: 1.15;
  margin: 0;
}
@media (min-width: 992px) {
  .hm-manifesto__title {
    font-size: 2.75rem;
  }
}
.hm-manifesto__lead {
  font-family: "Figtree";
  font-weight: 300;
  font-size: 1.375rem;
  line-height: 1.4;
  margin: 0;
}
@media (min-width: 992px) {
  .hm-manifesto__lead {
    font-size: 1.6875rem;
  }
}
.hm-manifesto__text {
  font-size: 1rem;
  line-height: 1.7;
  color: #8D8D8D;
  margin: 0;
  max-width: 54ch;
}
.hm-manifesto a:not([class]) {
  font-size: 0.75rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  font-weight: 500;
  color: #343434;
  padding-bottom: 0.25rem;
  position: relative;
  text-decoration: none;
  border-bottom: 0;
}
.hm-manifesto a:not([class])::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: currentColor;
}
.hm-manifesto a:not([class]):active {
  transform: translateY(1px);
}
.hm-manifesto a:not([class]):focus-visible {
  outline: 1px solid currentColor;
  outline-offset: 3px;
}
.hm-manifesto a:not([class]):hover::after, .hm-manifesto a:not([class]):focus-visible::after {
  animation: hm-btn-wipe 420ms cubic-bezier(0.22, 1, 0.36, 1);
}
@media (prefers-reduced-motion: reduce) {
  .hm-manifesto a:not([class]):hover::after, .hm-manifesto a:not([class]):focus-visible::after {
    animation: none;
    opacity: 0.45;
  }
}

.hm-storia {
  display: grid;
  grid-template-columns: 1fr;
  margin-top: 6rem;
}
@media (min-width: 992px) {
  .hm-storia {
    grid-template-columns: 1fr 1fr;
    align-items: center;
    margin-top: 7.5rem;
  }
}
.hm-storia__media {
  position: relative;
  aspect-ratio: 4 / 5;
  overflow: hidden;
}
.hm-storia__media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 0;
}
.hm-storia__content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.25rem;
  padding: 2.5rem 1.25rem 0;
}
@media (min-width: 992px) {
  .hm-storia__content {
    padding: 3rem 4rem;
    max-width: 40rem;
  }
}
@media (min-width: 1200px) {
  .hm-storia__content {
    padding: 4rem 6rem;
    max-width: 44rem;
  }
}
.hm-storia__content .hm-eyebrow {
  margin-bottom: 0;
}
.hm-storia__title {
  font-family: "Figtree";
  font-weight: 300;
  font-size: 2rem;
  line-height: 1.15;
  margin: 0;
}
@media (min-width: 992px) {
  .hm-storia__title {
    font-size: 2.75rem;
  }
}
.hm-storia__text {
  font-size: 1rem;
  line-height: 1.7;
  color: #8D8D8D;
  margin: 0;
  max-width: 54ch;
}
.hm-storia a:not([class]) {
  font-size: 0.75rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  font-weight: 500;
  color: #343434;
  padding-bottom: 0.25rem;
  position: relative;
  text-decoration: none;
  border-bottom: 0;
}
.hm-storia a:not([class])::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: currentColor;
}
.hm-storia a:not([class]):active {
  transform: translateY(1px);
}
.hm-storia a:not([class]):focus-visible {
  outline: 1px solid currentColor;
  outline-offset: 3px;
}
.hm-storia a:not([class]):hover::after, .hm-storia a:not([class]):focus-visible::after {
  animation: hm-btn-wipe 420ms cubic-bezier(0.22, 1, 0.36, 1);
}
@media (prefers-reduced-motion: reduce) {
  .hm-storia a:not([class]):hover::after, .hm-storia a:not([class]):focus-visible::after {
    animation: none;
    opacity: 0.45;
  }
}

.hm-split {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2px;
  margin-top: 6rem;
}
@media (min-width: 992px) {
  .hm-split {
    grid-template-columns: 1fr 1fr;
    margin-top: 7.5rem;
  }
}
.hm-split__cell {
  position: relative;
  aspect-ratio: 4/5;
  overflow: hidden;
  display: block;
}
.hm-split__media, .hm-split__media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.hm-split__overlay {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 40%;
  background: linear-gradient(rgba(52, 52, 52, 0), rgba(52, 52, 52, 0.4));
}
.hm-split__content {
  position: absolute;
  left: 2rem;
  bottom: 2rem;
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
}
@media (min-width: 992px) {
  .hm-split__content {
    left: 3rem;
    bottom: 3rem;
  }
}
.hm-split__title {
  font-family: "Figtree";
  font-weight: 300;
  font-size: 2rem;
  color: #fff;
}
@media (min-width: 992px) {
  .hm-split__title {
    font-size: 2.5rem;
  }
}

.hm-values {
  border-top: 1px solid #C8C8C8;
  border-bottom: 1px solid #C8C8C8;
  margin-top: 6rem;
}
@media (min-width: 992px) {
  .hm-values {
    margin-top: 7.5rem;
  }
}
.hm-values__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
  padding-top: 3rem;
  padding-bottom: 3rem;
}
@media (min-width: 992px) {
  .hm-values__grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 2.5rem;
  }
}
.hm-values__item {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.25rem;
}
.hm-values__item svg {
  width: 26px;
  height: 26px;
  flex-shrink: 0;
}
.hm-values__text {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.hm-values__title {
  font-size: 0.75rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  font-weight: 500;
}
.hm-values__sub {
  font-size: 0.8125rem;
  color: #8D8D8D;
}

body.woocommerce .woocommerce-message,
body.woocommerce .woocommerce-info,
body.woocommerce .woocommerce-error,
body.woocommerce .woocommerce-noreviews,
body.woocommerce-page .woocommerce-message,
body.woocommerce-page .woocommerce-info,
body.woocommerce-page .woocommerce-error,
body.woocommerce-page .woocommerce-noreviews {
  background: #FAFAFA;
  border: 1px solid #C8C8C8;
  border-top: 2px solid #343434;
  border-radius: 0;
  color: #343434;
  box-shadow: none;
  list-style: none;
}
body.woocommerce .woocommerce-message::before,
body.woocommerce .woocommerce-info::before,
body.woocommerce .woocommerce-error::before,
body.woocommerce .woocommerce-noreviews::before,
body.woocommerce-page .woocommerce-message::before,
body.woocommerce-page .woocommerce-info::before,
body.woocommerce-page .woocommerce-error::before,
body.woocommerce-page .woocommerce-noreviews::before {
  color: #343434;
}
body.woocommerce .woocommerce-message a,
body.woocommerce .woocommerce-info a,
body.woocommerce .woocommerce-error a,
body.woocommerce .woocommerce-noreviews a,
body.woocommerce-page .woocommerce-message a,
body.woocommerce-page .woocommerce-info a,
body.woocommerce-page .woocommerce-error a,
body.woocommerce-page .woocommerce-noreviews a {
  color: #343434;
}
body.woocommerce .woocommerce-info,
body.woocommerce-page .woocommerce-info {
  border-top-color: #8D8D8D;
}
body.woocommerce .woocommerce-info::before,
body.woocommerce-page .woocommerce-info::before {
  color: #8D8D8D;
}
body.woocommerce .woocommerce-error,
body.woocommerce-page .woocommerce-error {
  border-top-color: #7A5C5C;
}
body.woocommerce .woocommerce-error::before,
body.woocommerce-page .woocommerce-error::before {
  color: #7A5C5C;
}
body.woocommerce .woocommerce-error a,
body.woocommerce-page .woocommerce-error a {
  color: #7A5C5C;
}
body.woocommerce a.button,
body.woocommerce button.button,
body.woocommerce input.button,
body.woocommerce .woocommerce-button,
body.woocommerce .woocommerce-Button,
body.woocommerce button.button.alt,
body.woocommerce input.button.alt,
body.woocommerce-page a.button,
body.woocommerce-page button.button,
body.woocommerce-page input.button,
body.woocommerce-page .woocommerce-button,
body.woocommerce-page .woocommerce-Button,
body.woocommerce-page button.button.alt,
body.woocommerce-page input.button.alt {
  background: #343434;
  color: #FFFFFF;
  border: 1px solid #343434;
  border-radius: 0;
  box-shadow: none;
  font-family: "Figtree";
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  padding: 0.75rem 1.4rem;
  transition: background-color 420ms cubic-bezier(0.22, 1, 0.36, 1), border-color 420ms cubic-bezier(0.22, 1, 0.36, 1), color 420ms cubic-bezier(0.22, 1, 0.36, 1);
}
body.woocommerce a.button:active,
body.woocommerce button.button:active,
body.woocommerce input.button:active,
body.woocommerce .woocommerce-button:active,
body.woocommerce .woocommerce-Button:active,
body.woocommerce button.button.alt:active,
body.woocommerce input.button.alt:active,
body.woocommerce-page a.button:active,
body.woocommerce-page button.button:active,
body.woocommerce-page input.button:active,
body.woocommerce-page .woocommerce-button:active,
body.woocommerce-page .woocommerce-Button:active,
body.woocommerce-page button.button.alt:active,
body.woocommerce-page input.button.alt:active {
  transform: translateY(1px);
}
body.woocommerce a.button:focus-visible,
body.woocommerce button.button:focus-visible,
body.woocommerce input.button:focus-visible,
body.woocommerce .woocommerce-button:focus-visible,
body.woocommerce .woocommerce-Button:focus-visible,
body.woocommerce button.button.alt:focus-visible,
body.woocommerce input.button.alt:focus-visible,
body.woocommerce-page a.button:focus-visible,
body.woocommerce-page button.button:focus-visible,
body.woocommerce-page input.button:focus-visible,
body.woocommerce-page .woocommerce-button:focus-visible,
body.woocommerce-page .woocommerce-Button:focus-visible,
body.woocommerce-page button.button.alt:focus-visible,
body.woocommerce-page input.button.alt:focus-visible {
  outline: 1px solid currentColor;
  outline-offset: 3px;
}
body.woocommerce a.button.is-busy, body.woocommerce a.button.is-loading, body.woocommerce a.button.loading, body.woocommerce a.button[aria-busy=true],
body.woocommerce button.button.is-busy,
body.woocommerce button.button.is-loading,
body.woocommerce button.button.loading,
body.woocommerce button.button[aria-busy=true],
body.woocommerce input.button.is-busy,
body.woocommerce input.button.is-loading,
body.woocommerce input.button.loading,
body.woocommerce input.button[aria-busy=true],
body.woocommerce .woocommerce-button.is-busy,
body.woocommerce .woocommerce-button.is-loading,
body.woocommerce .woocommerce-button.loading,
body.woocommerce .woocommerce-button[aria-busy=true],
body.woocommerce .woocommerce-Button.is-busy,
body.woocommerce .woocommerce-Button.is-loading,
body.woocommerce .woocommerce-Button.loading,
body.woocommerce .woocommerce-Button[aria-busy=true],
body.woocommerce button.button.alt.is-busy,
body.woocommerce button.button.alt.is-loading,
body.woocommerce button.button.alt.loading,
body.woocommerce button.button.alt[aria-busy=true],
body.woocommerce input.button.alt.is-busy,
body.woocommerce input.button.alt.is-loading,
body.woocommerce input.button.alt.loading,
body.woocommerce input.button.alt[aria-busy=true],
body.woocommerce-page a.button.is-busy,
body.woocommerce-page a.button.is-loading,
body.woocommerce-page a.button.loading,
body.woocommerce-page a.button[aria-busy=true],
body.woocommerce-page button.button.is-busy,
body.woocommerce-page button.button.is-loading,
body.woocommerce-page button.button.loading,
body.woocommerce-page button.button[aria-busy=true],
body.woocommerce-page input.button.is-busy,
body.woocommerce-page input.button.is-loading,
body.woocommerce-page input.button.loading,
body.woocommerce-page input.button[aria-busy=true],
body.woocommerce-page .woocommerce-button.is-busy,
body.woocommerce-page .woocommerce-button.is-loading,
body.woocommerce-page .woocommerce-button.loading,
body.woocommerce-page .woocommerce-button[aria-busy=true],
body.woocommerce-page .woocommerce-Button.is-busy,
body.woocommerce-page .woocommerce-Button.is-loading,
body.woocommerce-page .woocommerce-Button.loading,
body.woocommerce-page .woocommerce-Button[aria-busy=true],
body.woocommerce-page button.button.alt.is-busy,
body.woocommerce-page button.button.alt.is-loading,
body.woocommerce-page button.button.alt.loading,
body.woocommerce-page button.button.alt[aria-busy=true],
body.woocommerce-page input.button.alt.is-busy,
body.woocommerce-page input.button.alt.is-loading,
body.woocommerce-page input.button.alt.loading,
body.woocommerce-page input.button.alt[aria-busy=true] {
  pointer-events: none;
  opacity: 0.55;
}
@media (prefers-reduced-motion: reduce) {
  body.woocommerce a.button,
  body.woocommerce button.button,
  body.woocommerce input.button,
  body.woocommerce .woocommerce-button,
  body.woocommerce .woocommerce-Button,
  body.woocommerce button.button.alt,
  body.woocommerce input.button.alt,
  body.woocommerce-page a.button,
  body.woocommerce-page button.button,
  body.woocommerce-page input.button,
  body.woocommerce-page .woocommerce-button,
  body.woocommerce-page .woocommerce-Button,
  body.woocommerce-page button.button.alt,
  body.woocommerce-page input.button.alt {
    transition: none;
  }
}
body.woocommerce a.button:hover, body.woocommerce a.button:focus,
body.woocommerce button.button:hover,
body.woocommerce button.button:focus,
body.woocommerce input.button:hover,
body.woocommerce input.button:focus,
body.woocommerce .woocommerce-button:hover,
body.woocommerce .woocommerce-button:focus,
body.woocommerce .woocommerce-Button:hover,
body.woocommerce .woocommerce-Button:focus,
body.woocommerce button.button.alt:hover,
body.woocommerce button.button.alt:focus,
body.woocommerce input.button.alt:hover,
body.woocommerce input.button.alt:focus,
body.woocommerce-page a.button:hover,
body.woocommerce-page a.button:focus,
body.woocommerce-page button.button:hover,
body.woocommerce-page button.button:focus,
body.woocommerce-page input.button:hover,
body.woocommerce-page input.button:focus,
body.woocommerce-page .woocommerce-button:hover,
body.woocommerce-page .woocommerce-button:focus,
body.woocommerce-page .woocommerce-Button:hover,
body.woocommerce-page .woocommerce-Button:focus,
body.woocommerce-page button.button.alt:hover,
body.woocommerce-page button.button.alt:focus,
body.woocommerce-page input.button.alt:hover,
body.woocommerce-page input.button.alt:focus {
  background: #8D8D8D;
  border-color: #8D8D8D;
  color: #FFFFFF;
}
body.woocommerce .woocommerce-message a.button,
body.woocommerce .woocommerce-info a.button,
body.woocommerce-page .woocommerce-message a.button,
body.woocommerce-page .woocommerce-info a.button {
  background: transparent;
  color: #343434;
  border-color: #343434;
}
body.woocommerce .woocommerce-message a.button:hover, body.woocommerce .woocommerce-message a.button:focus,
body.woocommerce .woocommerce-info a.button:hover,
body.woocommerce .woocommerce-info a.button:focus,
body.woocommerce-page .woocommerce-message a.button:hover,
body.woocommerce-page .woocommerce-message a.button:focus,
body.woocommerce-page .woocommerce-info a.button:hover,
body.woocommerce-page .woocommerce-info a.button:focus {
  background: #343434;
  color: #FFFFFF;
}
body.woocommerce .woocommerce-form .input-text,
body.woocommerce form.login .input-text,
body.woocommerce form.register .input-text,
body.woocommerce .woocommerce-Input.input-text,
body.woocommerce .woocommerce-address-fields .input-text,
body.woocommerce .woocommerce-EditAccountForm .input-text,
body.woocommerce-page .woocommerce-form .input-text,
body.woocommerce-page form.login .input-text,
body.woocommerce-page form.register .input-text,
body.woocommerce-page .woocommerce-Input.input-text,
body.woocommerce-page .woocommerce-address-fields .input-text,
body.woocommerce-page .woocommerce-EditAccountForm .input-text {
  border: 1px solid #C8C8C8;
  border-radius: 0;
  padding: 0.75rem 0.9rem;
  font-size: 0.95rem;
  color: #343434;
  background-color: #fff;
  box-shadow: none;
}
body.woocommerce .woocommerce-form .input-text::placeholder,
body.woocommerce form.login .input-text::placeholder,
body.woocommerce form.register .input-text::placeholder,
body.woocommerce .woocommerce-Input.input-text::placeholder,
body.woocommerce .woocommerce-address-fields .input-text::placeholder,
body.woocommerce .woocommerce-EditAccountForm .input-text::placeholder,
body.woocommerce-page .woocommerce-form .input-text::placeholder,
body.woocommerce-page form.login .input-text::placeholder,
body.woocommerce-page form.register .input-text::placeholder,
body.woocommerce-page .woocommerce-Input.input-text::placeholder,
body.woocommerce-page .woocommerce-address-fields .input-text::placeholder,
body.woocommerce-page .woocommerce-EditAccountForm .input-text::placeholder {
  color: #8D8D8D;
  opacity: 1;
}
body.woocommerce .woocommerce-form .input-text:focus,
body.woocommerce form.login .input-text:focus,
body.woocommerce form.register .input-text:focus,
body.woocommerce .woocommerce-Input.input-text:focus,
body.woocommerce .woocommerce-address-fields .input-text:focus,
body.woocommerce .woocommerce-EditAccountForm .input-text:focus,
body.woocommerce-page .woocommerce-form .input-text:focus,
body.woocommerce-page form.login .input-text:focus,
body.woocommerce-page form.register .input-text:focus,
body.woocommerce-page .woocommerce-Input.input-text:focus,
body.woocommerce-page .woocommerce-address-fields .input-text:focus,
body.woocommerce-page .woocommerce-EditAccountForm .input-text:focus {
  border-color: #343434;
  box-shadow: none;
  outline: none;
}
body.woocommerce .woocommerce-form-login,
body.woocommerce .woocommerce-form-register,
body.woocommerce .woocommerce-form-coupon,
body.woocommerce .woocommerce-ResetPassword,
body.woocommerce-page .woocommerce-form-login,
body.woocommerce-page .woocommerce-form-register,
body.woocommerce-page .woocommerce-form-coupon,
body.woocommerce-page .woocommerce-ResetPassword {
  border: 1px solid #C8C8C8;
  border-radius: 0;
}
body.woocommerce .woocommerce-MyAccount-navigation ul,
body.woocommerce-page .woocommerce-MyAccount-navigation ul {
  list-style: none;
  padding: 0;
  border-top: 1px solid #C8C8C8;
}
body.woocommerce .woocommerce-MyAccount-navigation ul li,
body.woocommerce-page .woocommerce-MyAccount-navigation ul li {
  border-bottom: 1px solid #C8C8C8;
}
body.woocommerce .woocommerce-MyAccount-navigation ul li a,
body.woocommerce-page .woocommerce-MyAccount-navigation ul li a {
  display: block;
  padding: 0.75rem 0;
  color: #343434;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-size: 0.8rem;
}
body.woocommerce .woocommerce-MyAccount-navigation ul li.is-active a,
body.woocommerce-page .woocommerce-MyAccount-navigation ul li.is-active a {
  font-weight: 600;
}
body.woocommerce .woocommerce-MyAccount-navigation ul li a:hover,
body.woocommerce-page .woocommerce-MyAccount-navigation ul li a:hover {
  color: #8D8D8D;
}
body.woocommerce .woocommerce-orders-table,
body.woocommerce .shop_table,
body.woocommerce-page .woocommerce-orders-table,
body.woocommerce-page .shop_table {
  border: 1px solid #C8C8C8;
  border-radius: 0;
}
body.woocommerce .woocommerce-orders-table th, body.woocommerce .woocommerce-orders-table td,
body.woocommerce .shop_table th,
body.woocommerce .shop_table td,
body.woocommerce-page .woocommerce-orders-table th,
body.woocommerce-page .woocommerce-orders-table td,
body.woocommerce-page .shop_table th,
body.woocommerce-page .shop_table td {
  border-color: #C8C8C8;
}

.wc-block-components-notice-banner {
  border-radius: 0;
}
.wc-block-components-notice-banner.is-success, .wc-block-components-notice-banner.is-info {
  border-color: #343434;
  color: #343434;
  background: #FAFAFA;
}
.wc-block-components-notice-banner.is-success svg, .wc-block-components-notice-banner.is-info svg {
  fill: #343434;
}
.wc-block-components-notice-banner.is-error {
  border-color: #7A5C5C;
  color: #7A5C5C;
}
.wc-block-components-notice-banner.is-error svg {
  fill: #7A5C5C;
}

.wc-block-components-button:not(.is-link),
.wc-block-grid__product-add-to-cart .wp-block-button__link {
  background: #343434;
  color: #FFFFFF;
  border: 1px solid #343434;
  border-radius: 0;
  box-shadow: none;
  font-family: "Figtree";
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  transition: background-color 420ms cubic-bezier(0.22, 1, 0.36, 1), border-color 420ms cubic-bezier(0.22, 1, 0.36, 1), color 420ms cubic-bezier(0.22, 1, 0.36, 1);
}
.wc-block-components-button:not(.is-link):active,
.wc-block-grid__product-add-to-cart .wp-block-button__link:active {
  transform: translateY(1px);
}
.wc-block-components-button:not(.is-link):focus-visible,
.wc-block-grid__product-add-to-cart .wp-block-button__link:focus-visible {
  outline: 1px solid currentColor;
  outline-offset: 3px;
}
.wc-block-components-button:not(.is-link).is-busy, .wc-block-components-button:not(.is-link).is-loading, .wc-block-components-button:not(.is-link).loading, .wc-block-components-button:not(.is-link)[aria-busy=true],
.wc-block-grid__product-add-to-cart .wp-block-button__link.is-busy,
.wc-block-grid__product-add-to-cart .wp-block-button__link.is-loading,
.wc-block-grid__product-add-to-cart .wp-block-button__link.loading,
.wc-block-grid__product-add-to-cart .wp-block-button__link[aria-busy=true] {
  pointer-events: none;
  opacity: 0.55;
}
@media (prefers-reduced-motion: reduce) {
  .wc-block-components-button:not(.is-link),
  .wc-block-grid__product-add-to-cart .wp-block-button__link {
    transition: none;
  }
}
.wc-block-components-button:not(.is-link):hover, .wc-block-components-button:not(.is-link):focus, .wc-block-components-button:not(.is-link):focus-visible,
.wc-block-grid__product-add-to-cart .wp-block-button__link:hover,
.wc-block-grid__product-add-to-cart .wp-block-button__link:focus,
.wc-block-grid__product-add-to-cart .wp-block-button__link:focus-visible {
  background: #8D8D8D;
  border-color: #8D8D8D;
  color: #FFFFFF;
  box-shadow: none;
}

.wc-block-grid__product-add-to-cart .wp-block-button__link {
  padding: 0.75rem 1.4rem;
}

.hm-account--singolo {
  max-width: 30rem;
}
.hm-account .woocommerce-ResetPassword {
  padding: 1.75rem;
}
.hm-account-intro {
  color: #8D8D8D;
  font-size: 0.9rem;
  margin-bottom: 1.75rem;
}
.hm-account-azioni {
  display: flex;
  align-items: center;
  gap: 1.25rem;
  flex-wrap: wrap;
  margin-top: 1.5rem;
}
.hm-account-stato {
  margin-top: 1rem;
  font-size: 0.8125rem;
  color: #8D8D8D;
}
.hm-account-stato.is-errore {
  color: #343434;
  border-left: 1px solid #343434;
  padding-left: 0.75rem;
}
.hm-account-link {
  margin-top: 1.5rem;
  font-size: 0.8125rem;
}
.hm-account-link a {
  color: #8D8D8D;
  text-decoration: underline;
  text-underline-offset: 0.2em;
}
.hm-account-link a:hover {
  color: #343434;
}

.hm-social {
  margin-top: 2rem;
}
.hm-social-sep {
  display: flex;
  align-items: center;
  gap: 0.875rem;
  margin-bottom: 1.25rem;
  color: #8D8D8D;
  font-size: 0.6875rem;
  text-transform: uppercase;
  letter-spacing: 0.14em;
}
.hm-social-sep::before, .hm-social-sep::after {
  content: "";
  flex: 1 1 auto;
  height: 1px;
  background: #C8C8C8;
}
.hm-social .nsl-container {
  text-align: left;
}
.hm-social .nsl-container.nsl-container-block .nsl-container-buttons {
  display: block;
  padding: 0;
}
.hm-social .nsl-container .nsl-container-buttons a {
  margin: 0;
  display: block;
}
.hm-social .nsl-container .nsl-button {
  border-radius: 0;
  border: 1px solid #C8C8C8;
  box-shadow: none;
  transition: border-color 200ms ease, background-color 200ms ease;
  background-color: #FFFFFF !important;
}
.hm-social .nsl-container .nsl-button-default {
  color: #343434;
  align-items: center;
  min-height: 3rem;
}
.hm-social .nsl-container .nsl-button-default div.nsl-button-label-container {
  margin: 0 1rem 0 0.25rem;
  padding: 0;
  font-family: "Figtree";
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: inherit;
}
.hm-social .nsl-container .nsl-button-default div.nsl-button-label-container b {
  font-weight: 400;
}
.hm-social .nsl-container .nsl-button-svg-container {
  padding: 0 0.75rem 0 1rem;
}
.hm-social .nsl-container svg {
  height: 18px;
  width: 18px;
}
.hm-social .nsl-container .nsl-container-buttons a:hover .nsl-button {
  border-color: #343434;
}
.hm-social .nsl-container .nsl-container-buttons a:focus-visible .nsl-button {
  outline: 1px solid #343434;
  outline-offset: 3px;
}
.hm-social .nsl-container .nsl-container-buttons a:active .nsl-button {
  transform: translateY(1px);
}
@media (prefers-reduced-motion: reduce) {
  .hm-social .nsl-container .nsl-button {
    transition: none;
  }
}

.hm-campo {
  margin-bottom: 1.25rem;
}
.hm-campo label {
  display: block;
  margin-bottom: 0.5rem;
  font-size: 0.6875rem;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  color: #8D8D8D;
}
.hm-campo input {
  width: 100%;
  padding: 0.75rem 0.875rem;
  border: 1px solid #C8C8C8;
  border-radius: 0;
  background: #FFFFFF;
  color: #343434;
}
.hm-campo input:focus {
  outline: none;
  border-color: #343434;
}

.wc-block-components-totals-footer-item .wc-block-components-totals-footer-item-tax {
  display: none;
}

.wp-block-woocommerce-checkout .wc-block-components-text-input input[type=text],
.wp-block-woocommerce-checkout .wc-block-components-text-input input[type=email],
.wp-block-woocommerce-checkout .wc-block-components-text-input input[type=tel],
.wp-block-woocommerce-checkout .wc-block-components-text-input input[type=number],
.wp-block-woocommerce-checkout .wc-block-components-textarea {
  border: 1px solid #C8C8C8;
  border-radius: 0;
  background-color: #fff;
  color: #343434;
  box-shadow: none;
}
.wp-block-woocommerce-checkout .wc-block-components-text-input input[type=text]:focus,
.wp-block-woocommerce-checkout .wc-block-components-text-input input[type=email]:focus,
.wp-block-woocommerce-checkout .wc-block-components-text-input input[type=tel]:focus,
.wp-block-woocommerce-checkout .wc-block-components-text-input input[type=number]:focus,
.wp-block-woocommerce-checkout .wc-block-components-textarea:focus {
  border-color: #343434;
  box-shadow: none;
  outline: none;
}
.wp-block-woocommerce-checkout .wc-block-components-textarea {
  padding: 0.75rem 0.9rem;
  min-height: 6rem;
  resize: vertical;
}
.wp-block-woocommerce-checkout .wc-block-components-text-input label {
  color: #8D8D8D;
}
.wp-block-woocommerce-checkout .wc-block-components-text-input.is-active label {
  color: #343434;
}
.wp-block-woocommerce-checkout .wc-block-components-text-input.has-error input,
.wp-block-woocommerce-checkout .wc-block-components-textarea.has-error {
  border-color: #7A5C5C;
}
.wp-block-woocommerce-checkout .wc-block-components-text-input.has-error input:focus,
.wp-block-woocommerce-checkout .wc-block-components-textarea.has-error:focus {
  border-color: #7A5C5C;
}
.wp-block-woocommerce-checkout .wc-block-components-validation-error {
  color: #7A5C5C;
  font-size: 0.8rem;
}
.wp-block-woocommerce-checkout .wc-blocks-components-select__select {
  border: 1px solid #C8C8C8;
  border-radius: 0;
  background-color: #fff;
  color: #343434;
  box-shadow: none;
}
.wp-block-woocommerce-checkout .wc-blocks-components-select__select:focus {
  border-color: #343434;
  box-shadow: none;
  outline: none;
}
.wp-block-woocommerce-checkout .wc-blocks-components-select__container {
  border-radius: 0;
}
.wp-block-woocommerce-checkout .wc-blocks-components-select__label {
  color: #8D8D8D;
}
.wp-block-woocommerce-checkout .wc-blocks-components-select__expand {
  fill: #343434;
}
.wp-block-woocommerce-checkout .wc-block-components-checkbox__input[type=checkbox] {
  border: 1px solid #C8C8C8;
  border-radius: 0;
  background: #fff;
}
.wp-block-woocommerce-checkout .wc-block-components-checkbox__input[type=checkbox]:checked {
  background-color: #343434;
  border-color: #343434;
}
.wp-block-woocommerce-checkout .wc-block-components-checkbox__input[type=checkbox]:focus {
  outline: 1px solid #343434;
  outline-offset: 2px;
  box-shadow: none;
}
.wp-block-woocommerce-checkout .wc-block-components-checkbox__mark {
  fill: #FFFFFF;
}
.wp-block-woocommerce-checkout .wc-block-components-checkbox__label {
  color: #343434;
}
.wp-block-woocommerce-checkout label.wc-block-components-radio-control__option,
.wp-block-woocommerce-checkout div.wc-block-components-radio-control-accordion-option {
  border-radius: 0;
  border-color: #C8C8C8;
}
.wp-block-woocommerce-checkout label.wc-block-components-radio-control__option-checked,
.wp-block-woocommerce-checkout label.wc-block-components-radio-control__option--checked-option-highlighted,
.wp-block-woocommerce-checkout div.wc-block-components-radio-control-accordion-option--checked-option-highlighted {
  border-radius: 0;
  border-color: #343434;
}
.wp-block-woocommerce-checkout .wc-block-components-radio-control__input {
  border-color: #C8C8C8;
}
.wp-block-woocommerce-checkout .wc-block-components-radio-control__input:checked {
  border-color: #343434;
  color: #343434;
}
.wp-block-woocommerce-checkout .wc-block-components-radio-control__input:focus {
  outline: 1px solid #343434;
  outline-offset: 2px;
  box-shadow: none;
}
.wp-block-woocommerce-checkout .wc-block-components-address-card {
  border: 1px solid #C8C8C8;
  border-radius: 0;
}
.wp-block-woocommerce-checkout .wc-block-components-address-card__edit {
  color: #343434;
  font-size: 0.75rem;
  text-decoration: none;
  position: relative;
  text-decoration: none;
  border-bottom: 0;
}
.wp-block-woocommerce-checkout .wc-block-components-address-card__edit::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: currentColor;
}
.wp-block-woocommerce-checkout .wc-block-components-address-card__edit:active {
  transform: translateY(1px);
}
.wp-block-woocommerce-checkout .wc-block-components-address-card__edit:focus-visible {
  outline: 1px solid currentColor;
  outline-offset: 3px;
}
.wp-block-woocommerce-checkout .wc-block-components-address-card__edit:hover::after, .wp-block-woocommerce-checkout .wc-block-components-address-card__edit:focus-visible::after {
  animation: hm-btn-wipe 420ms cubic-bezier(0.22, 1, 0.36, 1);
}
@media (prefers-reduced-motion: reduce) {
  .wp-block-woocommerce-checkout .wc-block-components-address-card__edit:hover::after, .wp-block-woocommerce-checkout .wc-block-components-address-card__edit:focus-visible::after {
    animation: none;
    opacity: 0.45;
  }
}
.wp-block-woocommerce-checkout .wc-block-components-checkout-step__title {
  font-family: "Figtree";
  font-size: 1.25rem;
  font-weight: 500;
  letter-spacing: 0;
  text-transform: none;
  color: #343434;
}
.wp-block-woocommerce-checkout .wc-block-components-checkout-step__description {
  color: #8D8D8D;
  font-size: 0.85rem;
}
.wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block {
  border-radius: 0;
  border-color: #C8C8C8;
}
.wp-block-woocommerce-checkout .wc-block-components-checkout-order-summary__title,
.wp-block-woocommerce-checkout .wc-block-components-totals-wrapper,
.wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-totals-block,
.wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-coupon-form-block {
  border-color: #C8C8C8;
}
.wp-block-woocommerce-checkout .wc-block-components-order-summary-item {
  border-radius: 0;
}
.wp-block-woocommerce-checkout .wc-block-components-order-summary-item__image {
  width: 48px;
  background: #F4F4F4;
}
.wp-block-woocommerce-checkout .wc-block-components-order-summary-item__image img {
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  object-position: 50% 0;
  display: block;
  border-radius: 0;
}
.wp-block-woocommerce-checkout .wc-block-components-order-summary-item__quantity {
  border-radius: 0;
  background: #343434;
  color: #FFFFFF;
  border: 1px solid #343434;
  font-size: 0.6875rem;
  font-variant-numeric: tabular-nums;
}
.wp-block-woocommerce-checkout .wc-block-components-order-summary-item__description .wc-block-components-product-name {
  font-size: 0.875rem;
  font-weight: 500;
}
.wp-block-woocommerce-checkout .wc-block-components-order-summary-item__description .wc-block-components-product-details {
  color: #8D8D8D;
  font-size: 0.8125rem;
}
.wp-block-woocommerce-checkout .wc-block-components-order-summary-item__total-price,
.wp-block-woocommerce-checkout .wc-block-components-order-summary-item__individual-price,
.wp-block-woocommerce-checkout .wc-block-components-totals-item__value {
  font-variant-numeric: tabular-nums;
}
.wp-block-woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
  font-weight: 500;
}
.wp-block-woocommerce-checkout .wc-block-components-panel__button {
  color: #343434;
  font-size: 0.8125rem;
}
.wp-block-woocommerce-checkout .wc-block-components-panel__button-icon {
  fill: #343434;
}
.wp-block-woocommerce-checkout .wc-block-components-totals-coupon__input input[type=text] {
  border: 1px solid #C8C8C8;
  border-radius: 0;
}
.wp-block-woocommerce-checkout .wc-block-components-totals-coupon__input input[type=text]:focus {
  border-color: #343434;
  box-shadow: none;
  outline: none;
}
.wp-block-woocommerce-checkout .wc-block-components-totals-coupon__button {
  background: transparent;
  color: #343434;
  border: 1px solid #343434;
  border-radius: 0;
}
.wp-block-woocommerce-checkout .wc-block-components-totals-coupon__button:hover, .wp-block-woocommerce-checkout .wc-block-components-totals-coupon__button:focus, .wp-block-woocommerce-checkout .wc-block-components-totals-coupon__button:focus-visible {
  background: #343434;
  border-color: #343434;
  color: #FFFFFF;
}
.wp-block-woocommerce-checkout .wc-block-components-express-payment {
  border: 1px solid #C8C8C8;
  border-radius: 0;
}
.wp-block-woocommerce-checkout .wc-block-components-express-payment .wc-block-components-express-payment__event-buttons > li {
  border-radius: 0;
}
.wp-block-woocommerce-checkout .wc-block-components-express-payment-continue-rule {
  color: #8D8D8D;
  font-size: 0.6875rem;
  text-transform: uppercase;
  letter-spacing: 0.14em;
}
.wp-block-woocommerce-checkout .wc-block-components-express-payment-continue-rule::before, .wp-block-woocommerce-checkout .wc-block-components-express-payment-continue-rule::after {
  background: #C8C8C8;
  height: 1px;
}
.wp-block-woocommerce-checkout .wc-block-checkout__form {
  display: flex;
  flex-direction: column;
}
.wp-block-woocommerce-checkout .wc-block-checkout__form > .wp-block-woocommerce-checkout-contact-information-block {
  order: 1;
}
.wp-block-woocommerce-checkout .wc-block-checkout__form > .wp-block-woocommerce-checkout-shipping-method-block {
  order: 2;
}
.wp-block-woocommerce-checkout .wc-block-checkout__form > .wp-block-woocommerce-checkout-pickup-options-block {
  order: 3;
}
.wp-block-woocommerce-checkout .wc-block-checkout__form > .wc-block-checkout__billing-fields {
  order: 4;
}
.wp-block-woocommerce-checkout .wc-block-checkout__form > .wc-block-checkout__shipping-fields {
  order: 4;
}
.wp-block-woocommerce-checkout .wc-block-checkout__form > .wc-block-checkout__shipping-option {
  order: 5;
}
.wp-block-woocommerce-checkout .wc-block-checkout__form > .wc-block-checkout__order-notes {
  order: 6;
}
.wp-block-woocommerce-checkout .wc-block-checkout__form > .wc-block-checkout__terms {
  order: 7;
}
.wp-block-woocommerce-checkout .wc-block-checkout__form > .wc-block-checkout__payment-method {
  order: 8;
}
.wp-block-woocommerce-checkout .wc-block-checkout__form > .wc-block-checkout__actions {
  order: 9;
}
.wp-block-woocommerce-checkout .wc-block-checkout__form > * {
  order: 10;
}
.wp-block-woocommerce-checkout .wc-block-checkout__terms--with-separator {
  margin-bottom: 1.5rem;
}
.wp-block-woocommerce-checkout .wc-block-checkout__terms.is-hm-richiesto {
  background: rgba(122, 92, 92, 0.06);
  box-shadow: 0 0 0 1px rgba(122, 92, 92, 0.35);
  transition: background 0.2s ease, box-shadow 0.2s ease;
}
@media (prefers-reduced-motion: reduce) {
  .wp-block-woocommerce-checkout .wc-block-checkout__terms.is-hm-richiesto {
    transition: none;
  }
}

@media (max-width: 767.98px) {
  .wp-block-woocommerce-checkout .wc-block-components-text-input input,
  .wp-block-woocommerce-checkout .wc-block-components-textarea,
  .wp-block-woocommerce-checkout .wc-blocks-components-select__select {
    font-size: 16px;
  }
  .wp-block-woocommerce-checkout .wc-block-components-checkout-place-order-button {
    width: 100%;
  }
}
.wp-block-woocommerce-cart .wc-block-cart-items__header {
  border-bottom: 1px solid #C8C8C8;
  font-size: 0.6875rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #8D8D8D;
}
.wp-block-woocommerce-cart .wc-block-cart-items__row {
  border-bottom: 1px solid #C8C8C8;
  background: transparent;
}
.wp-block-woocommerce-cart .wc-block-cart-item__image {
  background: #F4F4F4;
}
.wp-block-woocommerce-cart .wc-block-cart-item__image img {
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  object-position: 50% 0;
  border-radius: 0;
  display: block;
}
.wp-block-woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-components-product-name {
  font-family: "Figtree";
  font-size: 0.875rem;
  font-weight: 500;
  color: #343434;
  text-decoration: none;
}
.wp-block-woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__quantity .wc-block-cart-item__remove-link {
  background: none;
  border: 0;
  padding: 0.25rem;
  color: #8D8D8D;
  text-decoration: none;
  cursor: pointer;
  transition: color 420ms cubic-bezier(0.22, 1, 0.36, 1);
}
.wp-block-woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__quantity .wc-block-cart-item__remove-link svg {
  width: 18px;
  height: 18px;
  fill: currentColor;
  display: block;
}
.wp-block-woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__quantity .wc-block-cart-item__remove-link:hover {
  color: #343434;
}
.wp-block-woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__quantity .wc-block-cart-item__remove-link:focus-visible {
  outline: 1px solid #343434;
  outline-offset: 2px;
}
.wp-block-woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__quantity .wc-block-cart-item__remove-link:active {
  transform: translateY(1px);
}
@media (prefers-reduced-motion: reduce) {
  .wp-block-woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__quantity .wc-block-cart-item__remove-link {
    transition: none;
  }
}
.wp-block-woocommerce-cart .wc-block-components-product-details,
.wp-block-woocommerce-cart .wc-block-components-product-metadata__description {
  color: #8D8D8D;
  font-size: 0.8125rem;
}
.wp-block-woocommerce-cart .wc-block-components-product-price,
.wp-block-woocommerce-cart .wc-block-components-product-price__value,
.wp-block-woocommerce-cart .wc-block-components-totals-item__value {
  font-variant-numeric: tabular-nums;
}
.wp-block-woocommerce-cart .wc-block-components-quantity-selector {
  border: 1px solid #C8C8C8;
  border-radius: 0;
}
.wp-block-woocommerce-cart .wc-block-components-quantity-selector::after {
  display: none;
}
.wp-block-woocommerce-cart .wc-block-components-quantity-selector__button {
  border-radius: 0;
  background: transparent;
  color: #343434;
}
.wp-block-woocommerce-cart .wc-block-components-quantity-selector__button:hover:not(:disabled) {
  background: transparent;
  color: #8D8D8D;
}
.wp-block-woocommerce-cart .wc-block-components-quantity-selector__button:focus-visible {
  outline: 1px solid #343434;
  outline-offset: -1px;
}
.wp-block-woocommerce-cart .wc-block-components-quantity-selector__input {
  color: #343434;
  font-variant-numeric: tabular-nums;
}
.wp-block-woocommerce-cart .wc-block-cart__totals-title {
  font-size: 0.6875rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #8D8D8D;
}
.wp-block-woocommerce-cart .wp-block-woocommerce-cart-order-summary-block {
  border-radius: 0;
  border-color: #C8C8C8;
}
.wp-block-woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
  font-weight: 500;
}
.wp-block-woocommerce-cart .wc-block-components-panel__button {
  color: #343434;
  font-size: 0.8125rem;
}
.wp-block-woocommerce-cart .wc-block-components-panel__button-icon {
  fill: #343434;
}
.wp-block-woocommerce-cart .wc-block-components-totals-coupon__input input[type=text] {
  border: 1px solid #C8C8C8;
  border-radius: 0;
}
.wp-block-woocommerce-cart .wc-block-components-totals-coupon__input input[type=text]:focus {
  border-color: #343434;
  box-shadow: none;
  outline: none;
}
.wp-block-woocommerce-cart .wc-block-components-totals-coupon__button {
  background: transparent;
  color: #343434;
  border: 1px solid #343434;
  border-radius: 0;
}
.wp-block-woocommerce-cart .wc-block-components-totals-coupon__button:hover, .wp-block-woocommerce-cart .wc-block-components-totals-coupon__button:focus, .wp-block-woocommerce-cart .wc-block-components-totals-coupon__button:focus-visible {
  background: #343434;
  border-color: #343434;
  color: #FFFFFF;
}
.wp-block-woocommerce-cart .wc-block-components-payment-method-icons img {
  border-radius: 0;
}
.wp-block-woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title.with-empty-cart-icon::before {
  display: none;
}
.wp-block-woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title {
  font-family: "Figtree";
  font-weight: 300;
  font-size: clamp(1.5rem, 3vw, 2rem);
  letter-spacing: 0.01em;
  color: #343434;
  text-align: center;
  padding: 0;
}
.wp-block-woocommerce-cart .wp-block-woocommerce-empty-cart-block h2.wp-block-heading {
  font-family: "Figtree";
  font-weight: 300;
  letter-spacing: 0.01em;
  text-align: center;
}
.wp-block-woocommerce-cart .wp-block-woocommerce-empty-cart-block .wp-block-separator {
  position: relative;
  height: 1px;
  border: 0;
  max-width: 4rem;
  margin: 2.5rem auto;
  opacity: 1;
}
.wp-block-woocommerce-cart .wp-block-woocommerce-empty-cart-block .wp-block-separator::after {
  content: "";
  position: absolute;
  inset: 0;
  background: #C8C8C8;
}
.wp-block-woocommerce-cart .wp-block-woocommerce-empty-cart-block .wp-block-separator.is-style-dots::before {
  content: none;
}

@media (max-width: 767.98px) {
  .wp-block-woocommerce-cart .wc-block-components-quantity-selector__input,
  .wp-block-woocommerce-cart .wc-block-components-totals-coupon__input input[type=text] {
    font-size: 16px;
  }
  .wp-block-woocommerce-cart .wc-block-cart__submit-button {
    width: 100%;
  }
}
body.hm-checkout {
  background: #FFFFFF;
}

.hm-co-header {
  border-bottom: 1px solid #C8C8C8;
  background: #FFFFFF;
}
.hm-co-header__bar {
  box-sizing: border-box;
  max-width: calc(1052px + 2rem);
  margin: 0 auto;
  padding: 0 1rem;
  height: 4rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
@media (min-width: 992px) {
  .hm-co-header__bar {
    height: 4.75rem;
  }
}
.hm-co-header__logo {
  display: block;
  line-height: 0;
}
.hm-co-header__logo img, .hm-co-header__logo svg {
  height: 2.25rem;
  width: auto;
  display: block;
}
@media (min-width: 992px) {
  .hm-co-header__logo img, .hm-co-header__logo svg {
    height: 2.75rem;
  }
}
.hm-co-header .hm-icon-btn {
  margin-right: -0.6rem;
}

.hm-co-main .wp-block-woocommerce-checkout {
  margin: 0;
  padding-top: 0;
  max-width: none;
}

@media (min-width: 992px) {
  .hm-co-body:has(.wc-block-components-sidebar-layout.is-large),
  .hm-co-body:has(.hm-ty) {
    background: linear-gradient(to right, #FFFFFF 0, #FFFFFF 50%, #C8C8C8 50%, #C8C8C8 calc(50% + 1px), #F4F4F4 calc(50% + 1px));
    min-height: calc(100vh - 4.75rem - 1px);
  }
  body.hm-checkout .wc-block-components-sidebar-layout.is-large {
    flex-wrap: nowrap;
    margin: 0;
    align-items: flex-start;
  }
  body.hm-checkout .wc-block-components-sidebar-layout.is-large .wc-block-components-main {
    width: 50%;
    box-sizing: border-box;
    padding: 2.5rem 56px 3rem max(2rem, 50% - 576px);
  }
  body.hm-checkout .wc-block-components-sidebar-layout.is-large .wc-block-components-sidebar {
    width: 50%;
    box-sizing: border-box;
    padding: 2.5rem max(2rem, 50% - 476px) 3rem 56px;
    top: 2.5rem;
  }
  body.hm-checkout .wc-block-components-sidebar-layout.is-large .wp-block-woocommerce-checkout-order-summary-block {
    border: 0;
    padding: 0;
  }
  body.hm-checkout .wc-block-components-sidebar-layout.is-large .wc-block-components-checkout-order-summary__title {
    display: none;
  }
  body.hm-checkout .wc-block-components-sidebar-layout.is-large .wc-block-components-totals-wrapper,
  body.hm-checkout .wc-block-components-sidebar-layout.is-large .wc-block-components-totals-item,
  body.hm-checkout .wc-block-components-sidebar-layout.is-large .wc-block-components-order-summary,
  body.hm-checkout .wc-block-components-sidebar-layout.is-large .wc-block-components-totals-coupon,
  body.hm-checkout .wc-block-components-sidebar-layout.is-large .wc-block-components-panel__button {
    padding-left: 0;
    padding-right: 0;
  }
  .hm-co-body:has(.wc-block-components-sidebar-layout.is-large) .hm-co-footer {
    width: 50%;
    box-sizing: border-box;
    padding: 0 56px 3rem max(2rem, 50% - 576px);
  }
}
.hm-co-footer {
  padding: 0 1rem 2.5rem;
}

.hm-co-legal {
  border-top: 1px solid #C8C8C8;
  padding-top: 1.125rem;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem 1.125rem;
  font-size: 0.75rem;
}
.hm-co-legal a {
  color: #343434;
  text-decoration: underline;
  text-underline-offset: 0.2em;
  text-decoration-thickness: 1px;
}
.hm-co-legal a:hover {
  color: #8D8D8D;
}

body.hm-checkout .wp-block-woocommerce-checkout .wc-block-checkout__guest-checkout-notice {
  display: none;
}
body.hm-checkout .wp-block-woocommerce-checkout .wc-block-components-checkout-return-to-cart-button {
  display: none;
}
body.hm-checkout .wp-block-woocommerce-checkout .wc-block-checkout__actions_row {
  justify-content: stretch;
}
body.hm-checkout .wp-block-woocommerce-checkout .wc-block-components-checkout-place-order-button {
  width: 100%;
  min-height: 3.5rem;
  font-size: 0.75rem;
  letter-spacing: 0.18em;
}
body.hm-checkout .wp-block-woocommerce-checkout .wc-block-components-express-payment--checkout {
  border: 0;
  margin-bottom: 0.5rem;
}
body.hm-checkout .wp-block-woocommerce-checkout .wc-block-components-express-payment--checkout .wc-block-components-express-payment__title-container::before, body.hm-checkout .wp-block-woocommerce-checkout .wc-block-components-express-payment--checkout .wc-block-components-express-payment__title-container::after {
  display: none;
}
body.hm-checkout .wp-block-woocommerce-checkout .wc-block-components-express-payment--checkout .wc-block-components-express-payment__title {
  display: block;
  text-align: center;
  font-size: 0.6875rem;
  font-weight: 400;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #8D8D8D;
  background: none;
  padding: 0 0 0.875rem;
  position: static;
  transform: none;
}
body.hm-checkout .wp-block-woocommerce-checkout .wc-block-components-express-payment--checkout .wc-block-components-express-payment__content {
  border: 0;
  padding: 0;
  margin: 0;
}
body.hm-checkout .wp-block-woocommerce-checkout .wc-block-components-express-payment--checkout .wc-block-components-express-payment__event-buttons {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(8.5rem, 1fr));
  gap: 0.5rem;
  margin: 0;
  padding: 0;
}
body.hm-checkout .wp-block-woocommerce-checkout .wc-block-components-express-payment--checkout .wc-block-components-express-payment__event-buttons > li {
  width: auto;
  margin: 0;
  padding: 0;
}
body.hm-checkout .wp-block-woocommerce-checkout label.wc-block-components-radio-control__option--checked-option-highlighted,
body.hm-checkout .wp-block-woocommerce-checkout div.wc-block-components-radio-control-accordion-option--checked-option-highlighted {
  background: #F4F4F4;
}
body.hm-checkout .wp-block-woocommerce-checkout .wc-block-components-order-summary-item__image {
  width: 64px;
  border: 1px solid #C8C8C8;
}
body.hm-checkout .wp-block-woocommerce-checkout .wc-block-components-order-summary-item__individual-price {
  display: none;
}
body.hm-checkout .wp-block-woocommerce-checkout .wc-block-components-order-summary-item__quantity {
  top: -8px;
  right: -8px;
  min-width: 20px;
  height: 20px;
}
body.hm-checkout .wp-block-woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__label {
  font-size: 1.125rem;
  font-weight: 500;
}
body.hm-checkout .wp-block-woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
  font-size: 1.375rem;
}

body.hm-checkout .wc-block-components-sidebar-layout:not(.is-large) {
  margin: 0;
}
body.hm-checkout .wc-block-components-sidebar-layout:not(.is-large) .wc-block-components-main {
  padding: 1.5rem 1rem 2rem;
  box-sizing: border-box;
}
body.hm-checkout .wc-block-components-sidebar-layout:not(.is-large) .wc-block-checkout__sidebar {
  margin: 0;
  padding: 0;
  background: #F4F4F4;
  border: 0;
  border-bottom: 1px solid #C8C8C8;
}
body.hm-checkout .wc-block-components-sidebar-layout:not(.is-large) .wp-block-woocommerce-checkout-order-summary-block {
  border: 0;
  margin: 0;
}
body.hm-checkout .wc-block-components-sidebar-layout:not(.is-large) .wc-block-components-checkout-order-summary__title {
  margin: 0;
  padding: 0 1rem;
  min-height: 3.75rem;
  border: 0;
  align-items: center;
}
body.hm-checkout .wc-block-components-sidebar-layout:not(.is-large) .wc-block-components-checkout-order-summary__title-text {
  font-family: "Figtree";
  font-size: 0.875rem;
  font-weight: 400;
}
body.hm-checkout .wc-block-components-sidebar-layout:not(.is-large) .wc-block-components-checkout-order-summary__title-price {
  font-size: 1.125rem;
  font-weight: 500;
  font-variant-numeric: tabular-nums;
}
body.hm-checkout .wc-block-components-sidebar-layout:not(.is-large) .wc-block-components-checkout-order-summary__content {
  padding: 0 1rem 1rem;
  border-top: 1px solid #C8C8C8;
}

.hm-ty {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
}
@media (min-width: 992px) {
  .hm-ty {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }
}
.hm-ty__main {
  padding: 1.75rem 1rem 2.5rem;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
@media (min-width: 992px) {
  .hm-ty__main {
    padding: 2.75rem 56px 3.5rem max(2rem, 100% - 576px);
  }
}
.hm-ty__summary {
  display: none;
}
@media (min-width: 992px) {
  .hm-ty__summary {
    display: block;
    padding: 2.75rem max(2rem, 100% - 476px) 3rem 56px;
  }
}
.hm-ty h2 {
  font-size: 1.0625rem;
  font-weight: 500;
  margin: 0 0 0.375rem;
}
.hm-ty h3 {
  font-size: 0.6875rem;
  font-weight: 400;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #8D8D8D;
  margin: 0 0 0.375rem;
}
.hm-ty p {
  margin: 0;
  font-size: 0.875rem;
  line-height: 1.55;
}

.hm-ty-bar {
  grid-column: 1/-1;
  background: #F4F4F4;
  border-bottom: 1px solid #C8C8C8;
}
@media (min-width: 992px) {
  .hm-ty-bar {
    display: none;
  }
}
.hm-ty-bar__toggle {
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 3.75rem;
  padding: 0 1rem;
  cursor: pointer;
}
.hm-ty-bar__toggle::-webkit-details-marker {
  display: none;
}
.hm-ty-bar__label {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  font-size: 0.875rem;
}
.hm-ty-bar__label svg {
  width: 14px;
  height: 14px;
  transform: rotate(90deg);
  transition: transform 0.2s ease;
}
.hm-ty-bar[open] .hm-ty-bar__label svg {
  transform: rotate(-90deg);
}
.hm-ty-bar__total {
  font-size: 1.125rem;
  font-weight: 500;
  font-variant-numeric: tabular-nums;
}
.hm-ty-bar__content {
  padding: 1.25rem 1rem 1.5rem;
  border-top: 1px solid #C8C8C8;
}
@media (prefers-reduced-motion: reduce) {
  .hm-ty-bar__label svg {
    transition: none;
  }
}

.hm-ty-head {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.hm-ty-head__check {
  flex: none;
  width: 3rem;
  height: 3rem;
  border: 1px solid #343434;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.hm-ty-head__check svg {
  width: 22px;
  height: 22px;
}
.hm-ty .hm-ty-head__eyebrow {
  margin: 0;
  font-size: 0.6875rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #8D8D8D;
}
.hm-ty-head__title {
  margin: 0.25rem 0 0;
  font-size: clamp(1.625rem, 2.4vw, 1.875rem);
  font-weight: 300;
  letter-spacing: -0.01em;
}

.hm-ty-map {
  margin: 0;
  border: 1px solid #C8C8C8;
}
.hm-ty-map__media {
  position: relative;
  aspect-ratio: 720/300;
  background: #EFEFEF;
  overflow: hidden;
}
.hm-ty-map__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.hm-ty-map__credit {
  position: absolute;
  right: 0;
  bottom: 0;
  padding: 2px 6px;
  background: rgba(255, 255, 255, 0.85);
  color: #343434;
  font-size: 10px;
  text-decoration: none;
}
.hm-ty-map__caption {
  padding: 0.875rem 1rem;
  border-top: 1px solid #C8C8C8;
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
}
.hm-ty-map__media[hidden] + .hm-ty-map__caption, .hm-ty-map__caption:first-child {
  border-top: 0;
}
.hm-ty-map__label {
  font-size: 0.75rem;
  color: #8D8D8D;
}
.hm-ty-map__address {
  font-size: 0.9375rem;
  font-weight: 500;
}

.hm-ty-box {
  border: 1px solid #C8C8C8;
  padding: 1.125rem 1rem 1.25rem;
}
.hm-ty-box h2 {
  margin-bottom: 0.375rem;
}
.hm-ty-box > h2 + .hm-ty-details {
  margin-top: 1rem;
}
.hm-ty-box .hm-ty-cta {
  margin-top: 1.25rem;
}

.hm-ty-details {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 1.125rem 1.5rem;
}
@media (min-width: 768px) {
  .hm-ty-details {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.hm-ty-details__full {
  grid-column: 1/-1;
}

.hm-num,
.hm-ty-items,
.hm-ty-totals {
  font-variant-numeric: tabular-nums;
}

.hm-ty-actions {
  display: flex;
  flex-direction: column-reverse;
  gap: 1rem;
  align-items: stretch;
  text-align: center;
}
@media (min-width: 768px) {
  .hm-ty-actions {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    text-align: left;
  }
}
.hm-ty-actions a:not(.hm-ty-cta) {
  color: #343434;
}

.hm-ty-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 3.25rem;
  padding: 0 1.75rem;
  background: #343434;
  border: 1px solid #343434;
  color: #FFFFFF;
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  text-decoration: none;
  transition: background-color 420ms cubic-bezier(0.22, 1, 0.36, 1), border-color 420ms cubic-bezier(0.22, 1, 0.36, 1), color 420ms cubic-bezier(0.22, 1, 0.36, 1);
}
.hm-ty-cta:active {
  transform: translateY(1px);
}
.hm-ty-cta:focus-visible {
  outline: 1px solid currentColor;
  outline-offset: 3px;
}
.hm-ty-cta.is-busy, .hm-ty-cta.is-loading, .hm-ty-cta.loading, .hm-ty-cta[aria-busy=true] {
  pointer-events: none;
  opacity: 0.55;
}
@media (prefers-reduced-motion: reduce) {
  .hm-ty-cta {
    transition: none;
  }
}
.hm-ty-cta:hover, .hm-ty-cta:focus-visible {
  background: #8D8D8D;
  border-color: #8D8D8D;
  color: #FFFFFF;
}

.hm-ty-items {
  list-style: none;
  margin: 0 0 1.25rem;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 1.125rem;
}

.hm-ty-item {
  display: flex;
  align-items: center;
  gap: 1rem;
  font-size: 0.875rem;
}
.hm-ty-item__media {
  position: relative;
  flex: none;
  width: 64px;
  border: 1px solid #C8C8C8;
  background: #FFFFFF;
}
.hm-ty-item__media img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  object-position: 50% 0;
}
.hm-ty-item__qty {
  position: absolute;
  top: -8px;
  right: -8px;
  min-width: 20px;
  height: 20px;
  padding: 0 4px;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #343434;
  color: #FFFFFF;
  font-size: 0.6875rem;
  font-weight: 600;
}
.hm-ty-item__info {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
}
.hm-ty-item__name {
  font-weight: 500;
}
.hm-ty-item__meta {
  font-size: 0.8125rem;
  color: #8D8D8D;
}

.hm-ty-totals {
  margin: 0;
  padding-top: 1.25rem;
  border-top: 1px solid #C8C8C8;
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
  font-size: 0.875rem;
}
.hm-ty-totals > div {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 1rem;
}
.hm-ty-totals dt {
  font-weight: 400;
}
.hm-ty-totals dd {
  margin: 0;
}
.hm-ty-totals__total {
  margin-top: 0.5rem;
}
.hm-ty-totals__total dt {
  font-size: 1.125rem;
  font-weight: 500;
}
.hm-ty-totals__total dd {
  font-size: 1.375rem;
  font-weight: 500;
}
.hm-ty-totals__cur {
  font-size: 0.6875rem;
  color: #8D8D8D;
  letter-spacing: 0.06em;
  margin-right: 0.375rem;
  font-weight: 400;
}
.hm-ty .hm-ty-totals__tax {
  font-size: 0.75rem;
  color: #8D8D8D;
}

.hm-ty-free {
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.hm-ty__main > p {
  font-size: 0.8125rem;
  color: #8D8D8D;
}

.hm-ty .woocommerce-bacs-bank-details {
  border: 1px solid #C8C8C8;
  padding: 1.125rem 1rem 0.5rem;
}
.hm-ty .woocommerce-bacs-bank-details .wc-bacs-bank-details-heading {
  font-size: 1.0625rem;
  font-weight: 500;
  margin: 0 0 0.75rem;
}
.hm-ty .woocommerce-bacs-bank-details .wc-bacs-bank-details-account-name {
  font-size: 0.6875rem;
  font-weight: 400;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #8D8D8D;
  margin: 0 0 0.25rem;
}
.hm-ty .woocommerce-bacs-bank-details ul.wc-bacs-bank-details {
  list-style: none;
  margin: 0;
  padding: 0;
  display: block;
}
.hm-ty .woocommerce-bacs-bank-details ul.wc-bacs-bank-details::before, .hm-ty .woocommerce-bacs-bank-details ul.wc-bacs-bank-details::after {
  display: none;
}
.hm-ty .woocommerce-bacs-bank-details ul.wc-bacs-bank-details li {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 1rem;
  float: none;
  margin: 0;
  padding: 0.75rem 0;
  border: 0;
  border-top: 1px solid #C8C8C8;
  border-right: 0;
  font-size: 0.8125rem;
  line-height: 1.4;
  color: #8D8D8D;
  text-transform: none;
  letter-spacing: 0;
}
.hm-ty .woocommerce-bacs-bank-details ul.wc-bacs-bank-details li:first-child {
  border-top: 0;
}
.hm-ty .woocommerce-bacs-bank-details ul.wc-bacs-bank-details li strong {
  display: inline;
  font-size: 0.9375rem;
  font-weight: 500;
  color: #343434;
  font-variant-numeric: tabular-nums;
  text-align: right;
}
.hm-ty .woocommerce-bacs-bank-details ul.wc-bacs-bank-details .iban strong {
  user-select: all;
  letter-spacing: 0.02em;
}

.hm-co-accesso {
  padding: 3rem 1rem 4rem;
}
@media (min-width: 768px) {
  .hm-co-accesso {
    padding-top: 4.5rem;
  }
}
.hm-co-accesso__eyebrow {
  margin: 0;
  font-size: 0.6875rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #8D8D8D;
}
.hm-co-accesso__title {
  margin: 0.25rem 0 0.75rem;
  font-size: clamp(1.625rem, 2.4vw, 1.875rem);
  font-weight: 300;
  letter-spacing: -0.01em;
}
.hm-co-accesso form.woocommerce-verify-email {
  border: 0;
  padding: 0;
  margin: 0;
}

.hm-co-main .woocommerce:has(> .hm-co-accesso) > .woocommerce-info,
.hm-co-main .woocommerce:has(> .hm-co-accesso) > .wc-block-components-notice-banner,
.hm-co-main .woocommerce:has(> .hm-co-accesso) > .woocommerce-notices-wrapper:has(+ .hm-co-accesso) {
  display: none;
}

.hm-account-gate {
  max-width: 28rem;
  margin-inline: auto;
}
.hm-account-gate form.login,
.hm-account-gate form.register {
  border: 0;
  padding: 0;
  margin: 0;
}
.hm-account-gate__intro {
  text-align: center;
  margin-bottom: 1.5rem;
}
.hm-account-gate__switch {
  display: flex;
  gap: 2rem;
  margin-bottom: 2rem;
  border-bottom: 1px solid #C8C8C8;
}
.hm-account-gate__switch [role=tab] {
  appearance: none;
  background: none;
  border: 0;
  border-bottom: 1px solid transparent;
  margin-bottom: -1px;
  padding: 0 0 0.875rem;
  font-size: 0.75rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #8D8D8D;
  cursor: pointer;
  transition: color 200ms ease, border-color 200ms ease;
}
.hm-account-gate__switch [role=tab][aria-selected=true] {
  color: #343434;
  border-bottom-color: #343434;
}
.hm-account-gate__switch [role=tab]:hover {
  color: #343434;
}
.hm-account-gate__switch [role=tab]:focus-visible {
  outline: 1px solid #343434;
  outline-offset: 4px;
}
.hm-account-gate__panel[hidden] {
  display: none;
}
.hm-account-gate__hint {
  margin-top: -0.5rem;
  margin-bottom: 1.25rem;
}
.hm-account-gate__ricordami {
  margin: 0 0 1.25rem;
  font-size: 0.8125rem;
}
.hm-account-gate__ricordami label {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  cursor: pointer;
}
.hm-account-gate__ricordami input {
  accent-color: #343434;
}
.hm-account-gate .hm-account-azioni {
  margin-top: 0.5rem;
}
.hm-account-gate .hm-account-azioni .hm-btn {
  width: 100%;
  justify-content: center;
}
.hm-account-gate .woocommerce-privacy-policy-text p {
  font-size: 0.8125rem;
  color: #8D8D8D;
  margin-bottom: 1.25rem;
}
.hm-account-gate .woocommerce-privacy-policy-text p a {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 0.2em;
}
@media (prefers-reduced-motion: reduce) {
  .hm-account-gate__switch [role=tab] {
    transition: none;
  }
}

.hm-codice__turnstile {
  min-height: 0;
}
.hm-codice__turnstile .cf-turnstile {
  margin-bottom: 0.25rem;
}
.hm-codice__turnstile br.cf-turnstile-br {
  display: none;
}
.hm-codice .hm-campo input.hm-codice__cifre {
  font-size: 1.5rem;
  letter-spacing: 0.5em;
  text-align: center;
  padding-left: 1.375rem;
  font-variant-numeric: tabular-nums;
}
.hm-codice strong[data-ns-acc-email] {
  font-weight: 500;
  color: #343434;
  word-break: break-all;
}
.hm-codice__registrati {
  margin-top: 1rem;
}
.hm-codice__registrati .hm-btn {
  width: 100%;
  justify-content: center;
}

.hm-account-password {
  margin-top: 2rem;
  padding-top: 1.5rem;
  border-top: 1px solid #C8C8C8;
}
.hm-account-password > summary {
  list-style: none;
  cursor: pointer;
  font-size: 0.8125rem;
  color: #8D8D8D;
  text-decoration: underline;
  text-underline-offset: 0.2em;
}
.hm-account-password > summary::-webkit-details-marker {
  display: none;
}
.hm-account-password > summary:hover {
  color: #343434;
}
.hm-account-password > summary:focus-visible {
  outline: 1px solid #343434;
  outline-offset: 4px;
}
.hm-account-password[open] > summary {
  margin-bottom: 1.5rem;
  color: #343434;
}

.hm-js :is(.hm-hero__content,
.hm-pcarousel__head,
.hm-tiles,
.hm-editorial__content,
.hm-split__content,
.hm-manifesto,
.hm-storia__content,
.hm-values__item,
.hm-newsletter__inner,
.hm-collection,
.hm-contact-hero,
.hm-pinfo,
.hm-hubcard) {
  opacity: 0;
  transform: translateY(22px);
  will-change: opacity, transform;
}
.hm-js .hm-gallery__cell:not([data-hm-gallery-main]) {
  opacity: 0;
  transform: translateY(22px);
  will-change: opacity, transform;
}
.hm-js:not(.hm-gsap) .hm-gallery__cell:not([data-hm-gallery-main]) {
  transition: opacity 700ms cubic-bezier(0.22, 1, 0.36, 1), transform 700ms cubic-bezier(0.22, 1, 0.36, 1);
}
.hm-js .hm-gallery__cell:not([data-hm-gallery-main]).is-revealed {
  opacity: 1;
  transform: none;
}
.hm-js:not(.hm-gsap) :is(.hm-hero__content,
.hm-pcarousel__head,
.hm-tiles,
.hm-editorial__content,
.hm-split__content,
.hm-manifesto,
.hm-storia__content,
.hm-values__item,
.hm-newsletter__inner,
.hm-collection,
.hm-contact-hero,
.hm-pinfo,
.hm-hubcard) {
  transition: opacity 700ms cubic-bezier(0.22, 1, 0.36, 1), transform 700ms cubic-bezier(0.22, 1, 0.36, 1);
}
.hm-js .is-revealed {
  opacity: 1;
  transform: none;
}
.hm-js:not(.hm-gsap) .hm-values__item:nth-child(2) {
  transition-delay: 90ms;
}
.hm-js:not(.hm-gsap) .hm-values__item:nth-child(3) {
  transition-delay: 180ms;
}

:root.hm-gsap {
  scroll-behavior: auto;
}

.hm-gsap .hm-line {
  display: block;
  overflow: hidden;
}
.hm-gsap .hm-line__inner {
  display: block;
  will-change: transform;
}
.hm-gsap .hm-word {
  will-change: opacity;
}
.hm-gsap .hm-curtain {
  position: absolute;
  inset: 0;
  background: #fff;
  z-index: 3;
  pointer-events: none;
  will-change: transform;
}
@media (min-width: 992px) {
  .hm-gsap .hm-hero__media {
    top: -6%;
    bottom: auto;
    height: 112%;
  }
  .hm-gsap .hm-split__media img {
    top: -6%;
    bottom: auto;
    height: 112%;
  }
  .hm-gsap .hm-cstory__media img {
    top: -6%;
    bottom: auto;
    height: 112%;
  }
}
.hm-gsap .hm-values {
  position: relative;
  border-top-color: transparent;
  border-bottom-color: transparent;
}
.hm-gsap .hm-values::before, .hm-gsap .hm-values::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  height: 1px;
  background: #C8C8C8;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 800ms cubic-bezier(0.22, 1, 0.36, 1);
}
.hm-gsap .hm-values::before {
  top: -1px;
}
.hm-gsap .hm-values::after {
  bottom: -1px;
}
.hm-gsap .hm-values.is-drawn::before, .hm-gsap .hm-values.is-drawn::after {
  transform: scaleX(1);
}
.hm-gsap .hm-values::after {
  transition-delay: 150ms;
}
.hm-gsap .hm-newsletter__row {
  position: relative;
  border-bottom-color: transparent;
}
.hm-gsap .hm-newsletter__row::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: 1px;
  background: #343434;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 900ms cubic-bezier(0.22, 1, 0.36, 1);
}
.hm-gsap .hm-newsletter__row.is-drawn::after {
  transform: scaleX(1);
}
.hm-gsap .hm-newsletter__row:has(.wpcf7-not-valid)::after {
  background: #7A5C5C;
}

@media (prefers-reduced-motion: reduce) {
  .hm-js :is(.hm-hero__content,
  .hm-pcarousel__head,
  .hm-tiles,
  .hm-editorial__content,
  .hm-split__content,
  .hm-manifesto,
  .hm-storia__content,
  .hm-values__item,
  .hm-newsletter__inner,
  .hm-collection,
  .hm-contact-hero,
  .hm-pinfo,
  .hm-hubcard) {
    opacity: 1;
    transform: none;
    transition: none;
  }
  .hm-js .hm-gallery__cell:not([data-hm-gallery-main]) {
    opacity: 1;
    transform: none;
    transition: none;
  }
  .hm-gsap .hm-values {
    border-top-color: #C8C8C8;
    border-bottom-color: #C8C8C8;
  }
  .hm-gsap .hm-newsletter__row {
    border-bottom-color: #343434;
  }
  .hm-gsap .hm-hero__media,
  .hm-gsap .hm-split__media img,
  .hm-gsap .hm-cstory__media img {
    top: 0;
    height: 100%;
  }
}
.hm-js .hm-gallery.is-filtrando {
  transition: opacity 320ms cubic-bezier(0.22, 1, 0.36, 1), transform 320ms cubic-bezier(0.22, 1, 0.36, 1);
}
.hm-js .hm-gallery.is-fuori {
  opacity: 0;
  transform: translateY(28px);
}
.hm-js .hm-gallery__cell.is-nascosta {
  display: none;
}
.hm-js .hm-gallery.is-pronta .hm-gallery__cell {
  opacity: 1;
  transform: none;
}

@media (prefers-reduced-motion: reduce) {
  .hm-js .hm-gallery.is-fuori {
    opacity: 1;
    transform: none;
    transition: none;
  }
}
/* Swiper sliders — ns-swiper ------------------------------------------------
   Stile del sistema slider riusabile (assets/js/custom/ns-swiper.js).
   TUTTO su variabili Bootstrap: in Helmur --bs-primary e' #343434 e i bordi
   #C8C8C8, quindi frecce/bullet/progress escono monocromatici da soli; in un
   altro tema prenderanno il brand di quel tema. Nessuna classe custom oltre
   alle tre del contratto. */
.ns-swiper {
  --swiper-theme-color: var(--bs-primary);
  --swiper-navigation-color: var(--bs-primary);
  --swiper-pagination-color: var(--bs-primary);
  --swiper-navigation-size: 1rem;
}
.ns-swiper.swiper {
  margin-left: -4px;
  padding-left: 4px;
}
.ns-swiper .swiper-button-prev,
.ns-swiper .swiper-button-next {
  width: 2.5rem;
  height: 2.5rem;
  margin-top: -1.25rem;
  border: 1px solid var(--bs-border-color);
  background: var(--bs-body-bg);
  display: none;
}
@media (min-width: 768px) {
  .ns-swiper .swiper-button-prev,
  .ns-swiper .swiper-button-next {
    display: flex;
  }
}
.ns-swiper .swiper-button-prev.swiper-button-disabled,
.ns-swiper .swiper-button-next.swiper-button-disabled {
  opacity: 0.35;
}
.ns-swiper .swiper-pagination-bullet {
  width: 6px;
  height: 6px;
  background: var(--bs-primary);
  opacity: 0.35;
}
.ns-swiper .swiper-pagination-bullet-active {
  opacity: 1;
}

.ns-swiper[data-slides="1"]:not([data-ns-init="1"]) > .swiper-wrapper > .swiper-slide {
  width: calc(100% / 1);
}

.ns-swiper[data-slides="1.1"]:not([data-ns-init="1"]) > .swiper-wrapper > .swiper-slide {
  width: calc(100% / 1.1);
}

.ns-swiper[data-slides="1.15"]:not([data-ns-init="1"]) > .swiper-wrapper > .swiper-slide {
  width: calc(100% / 1.15);
}

.ns-swiper[data-slides="1.2"]:not([data-ns-init="1"]) > .swiper-wrapper > .swiper-slide {
  width: calc(100% / 1.2);
}

.ns-swiper[data-slides="1.7"]:not([data-ns-init="1"]) > .swiper-wrapper > .swiper-slide {
  width: calc(100% / 1.7);
}

.ns-swiper[data-slides="2"]:not([data-ns-init="1"]) > .swiper-wrapper > .swiper-slide {
  width: calc(100% / 2);
}

.ns-swiper[data-slides="2.3"]:not([data-ns-init="1"]) > .swiper-wrapper > .swiper-slide {
  width: calc(100% / 2.3);
}

.ns-swiper[data-slides="2.5"]:not([data-ns-init="1"]) > .swiper-wrapper > .swiper-slide {
  width: calc(100% / 2.5);
}

.ns-swiper[data-slides="3"]:not([data-ns-init="1"]) > .swiper-wrapper > .swiper-slide {
  width: calc(100% / 3);
}

.ns-swiper[data-slides="3.35"]:not([data-ns-init="1"]) > .swiper-wrapper > .swiper-slide {
  width: calc(100% / 3.35);
}

.ns-swiper[data-slides="4"]:not([data-ns-init="1"]) > .swiper-wrapper > .swiper-slide {
  width: calc(100% / 4);
}

.ns-swiper[data-slides="6"]:not([data-ns-init="1"]) > .swiper-wrapper > .swiper-slide {
  width: calc(100% / 6);
}

@media (min-width: 768px) {
  .ns-swiper[data-slides-md="1"]:not([data-ns-init="1"]) > .swiper-wrapper > .swiper-slide {
    width: calc(100% / 1);
  }
  .ns-swiper[data-slides-md="1.1"]:not([data-ns-init="1"]) > .swiper-wrapper > .swiper-slide {
    width: calc(100% / 1.1);
  }
  .ns-swiper[data-slides-md="1.15"]:not([data-ns-init="1"]) > .swiper-wrapper > .swiper-slide {
    width: calc(100% / 1.15);
  }
  .ns-swiper[data-slides-md="1.2"]:not([data-ns-init="1"]) > .swiper-wrapper > .swiper-slide {
    width: calc(100% / 1.2);
  }
  .ns-swiper[data-slides-md="1.7"]:not([data-ns-init="1"]) > .swiper-wrapper > .swiper-slide {
    width: calc(100% / 1.7);
  }
  .ns-swiper[data-slides-md="2"]:not([data-ns-init="1"]) > .swiper-wrapper > .swiper-slide {
    width: calc(100% / 2);
  }
  .ns-swiper[data-slides-md="2.3"]:not([data-ns-init="1"]) > .swiper-wrapper > .swiper-slide {
    width: calc(100% / 2.3);
  }
  .ns-swiper[data-slides-md="2.5"]:not([data-ns-init="1"]) > .swiper-wrapper > .swiper-slide {
    width: calc(100% / 2.5);
  }
  .ns-swiper[data-slides-md="3"]:not([data-ns-init="1"]) > .swiper-wrapper > .swiper-slide {
    width: calc(100% / 3);
  }
  .ns-swiper[data-slides-md="3.35"]:not([data-ns-init="1"]) > .swiper-wrapper > .swiper-slide {
    width: calc(100% / 3.35);
  }
  .ns-swiper[data-slides-md="4"]:not([data-ns-init="1"]) > .swiper-wrapper > .swiper-slide {
    width: calc(100% / 4);
  }
  .ns-swiper[data-slides-md="6"]:not([data-ns-init="1"]) > .swiper-wrapper > .swiper-slide {
    width: calc(100% / 6);
  }
}
@media (min-width: 1200px) {
  .ns-swiper[data-slides-lg="1"]:not([data-ns-init="1"]) > .swiper-wrapper > .swiper-slide {
    width: calc(100% / 1);
  }
  .ns-swiper[data-slides-lg="1.1"]:not([data-ns-init="1"]) > .swiper-wrapper > .swiper-slide {
    width: calc(100% / 1.1);
  }
  .ns-swiper[data-slides-lg="1.15"]:not([data-ns-init="1"]) > .swiper-wrapper > .swiper-slide {
    width: calc(100% / 1.15);
  }
  .ns-swiper[data-slides-lg="1.2"]:not([data-ns-init="1"]) > .swiper-wrapper > .swiper-slide {
    width: calc(100% / 1.2);
  }
  .ns-swiper[data-slides-lg="1.7"]:not([data-ns-init="1"]) > .swiper-wrapper > .swiper-slide {
    width: calc(100% / 1.7);
  }
  .ns-swiper[data-slides-lg="2"]:not([data-ns-init="1"]) > .swiper-wrapper > .swiper-slide {
    width: calc(100% / 2);
  }
  .ns-swiper[data-slides-lg="2.3"]:not([data-ns-init="1"]) > .swiper-wrapper > .swiper-slide {
    width: calc(100% / 2.3);
  }
  .ns-swiper[data-slides-lg="2.5"]:not([data-ns-init="1"]) > .swiper-wrapper > .swiper-slide {
    width: calc(100% / 2.5);
  }
  .ns-swiper[data-slides-lg="3"]:not([data-ns-init="1"]) > .swiper-wrapper > .swiper-slide {
    width: calc(100% / 3);
  }
  .ns-swiper[data-slides-lg="3.35"]:not([data-ns-init="1"]) > .swiper-wrapper > .swiper-slide {
    width: calc(100% / 3.35);
  }
  .ns-swiper[data-slides-lg="4"]:not([data-ns-init="1"]) > .swiper-wrapper > .swiper-slide {
    width: calc(100% / 4);
  }
  .ns-swiper[data-slides-lg="6"]:not([data-ns-init="1"]) > .swiper-wrapper > .swiper-slide {
    width: calc(100% / 6);
  }
}
.ns-swiper-progress {
  position: relative;
  height: 2px;
  background: var(--bs-border-color);
  margin-top: 1.5rem;
}
.ns-swiper-progress .ns-swiper-progress-fill {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  background: var(--bs-primary);
  will-change: width;
}

.hm-lc-editor .ns-swiper:not(.swiper-initialized) .swiper-wrapper {
  display: block;
}
.hm-lc-editor .ns-swiper:not(.swiper-initialized) .swiper-slide {
  width: 100% !important;
  margin-bottom: 1.5rem;
}
.hm-lc-editor .ns-swiper:not(.swiper-initialized) .swiper-button-prev,
.hm-lc-editor .ns-swiper:not(.swiper-initialized) .swiper-button-next,
.hm-lc-editor .ns-swiper:not(.swiper-initialized) .swiper-pagination {
  display: none !important;
}

:target {
  scroll-margin-top: 8rem;
}

.hm-toc-list li {
  margin-bottom: 0.5rem;
  break-inside: avoid;
}
.hm-toc-list a {
  display: inline-block;
  color: #343434;
  position: relative;
  text-decoration: none;
  border-bottom: 0;
}
.hm-toc-list a::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: currentColor;
}
.hm-toc-list a:active {
  transform: translateY(1px);
}
.hm-toc-list a:focus-visible {
  outline: 1px solid currentColor;
  outline-offset: 3px;
}
.hm-toc-list a:hover::after, .hm-toc-list a:focus-visible::after {
  animation: hm-btn-wipe 420ms cubic-bezier(0.22, 1, 0.36, 1);
}
@media (prefers-reduced-motion: reduce) {
  .hm-toc-list a:hover::after, .hm-toc-list a:focus-visible::after {
    animation: none;
    opacity: 0.45;
  }
}
@media (min-width: 768px) {
  .hm-toc-list {
    column-count: 2;
    column-gap: 2.5rem;
  }
}

.hm-steps {
  list-style: none;
  counter-reset: passo;
  margin: 0;
  padding: 0;
  border-top: 1px solid #C8C8C8;
}
.hm-steps li {
  counter-increment: passo;
  display: grid;
  grid-template-columns: 2.5rem 1fr;
  gap: 1rem;
  align-items: start;
  padding: 1rem 0;
  border-bottom: 1px solid #C8C8C8;
  line-height: 1.6;
}
.hm-steps li::before {
  content: counter(passo, decimal-leading-zero);
  font-family: "Figtree";
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.2;
  color: #8D8D8D;
  font-variant-numeric: tabular-nums;
}

.hm-faq .hm-acc__item:first-child {
  border-top: 1px solid #C8C8C8;
}
.hm-faq .hm-acc__trigger {
  text-align: left;
  gap: 1rem;
}

.hm-sizepage__tabs {
  display: flex;
  gap: 2rem;
  border-bottom: 1px solid #C8C8C8;
  margin-bottom: 2.5rem;
}
.hm-sizepage__tab {
  appearance: none;
  background: none;
  border: 0;
  padding: 0 0 0.875rem;
  margin-bottom: -1px;
  cursor: pointer;
  font-size: 0.75rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  font-weight: 500;
  color: #8D8D8D;
  border-bottom: 1px solid transparent;
  transition: color 420ms cubic-bezier(0.22, 1, 0.36, 1), border-color 420ms cubic-bezier(0.22, 1, 0.36, 1);
}
.hm-sizepage__tab[aria-selected=true] {
  color: #343434;
  border-bottom-color: #343434;
}
.hm-sizepage__tab:hover, .hm-sizepage__tab:focus-visible {
  color: #343434;
}
.hm-sizepage__gruppo {
  font-family: "Figtree";
  font-weight: 500;
  font-size: 1.5rem;
  margin: 2.5rem 0 1rem;
}
.hm-sizepage__fits {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
  font-size: 0.9rem;
  line-height: 1.6;
}
.hm-sizepage__fits b {
  font-weight: 600;
}
.hm-sizepage__intro {
  font-size: 0.9375rem;
  line-height: 1.7;
  max-width: 60ch;
  margin: 0 0 2rem;
}

.hm-sizefinder {
  max-width: 520px;
}
.hm-sizefinder__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.25rem;
}
@media (min-width: 768px) {
  .hm-sizefinder__grid {
    grid-template-columns: 1fr 1fr;
  }
}
.hm-sizefinder__field {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.hm-sizefinder__field > span:first-child {
  font-size: 0.6875rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  font-weight: 500;
  color: #343434;
}
.hm-sizefinder__field select,
.hm-sizefinder__field input {
  width: 100%;
  border: 1px solid #C8C8C8;
  border-radius: 0;
  padding: 0.75rem 0.9rem;
  font-size: 16px;
  color: #343434;
  background-color: #fff;
}
.hm-sizefinder__field select:focus,
.hm-sizefinder__field input:focus {
  border-color: #343434;
  outline: none;
  box-shadow: none;
}
.hm-sizefinder__field select {
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23343434' d='M6 8 0 0h12z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 0.9rem center;
  background-size: 10px 7px;
  padding-right: 2.25rem;
}
.hm-sizefinder__unit {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.hm-sizefinder__unit input {
  flex: 1;
}
.hm-sizefinder__unit b {
  font-size: 0.6875rem;
  letter-spacing: 0.12em;
  font-weight: 500;
  color: #8D8D8D;
}
.hm-sizefinder__submit {
  margin-top: 1.75rem;
}
.hm-sizefinder__error {
  margin: 1rem 0 0;
  font-size: 0.8125rem;
  color: #7A5C5C;
}
.hm-sizefinder__result {
  margin-top: 2rem;
  border: 1px solid #C8C8C8;
  padding: 1.5rem;
}
.hm-sizefinder__verdict {
  font-family: "Figtree";
  font-size: 1.375rem;
  margin: 0 0 0.5rem;
}
.hm-sizefinder__verdict b {
  font-weight: 600;
}
.hm-sizefinder__fitnote {
  font-size: 0.875rem;
  color: #8D8D8D;
  margin: 0 0 1rem;
}

.hm-sizeguide__finderlink {
  margin: 1.25rem 0 0;
  font-size: 0.8125rem;
}
.hm-sizeguide__finderlink a {
  display: inline-block;
  color: #8D8D8D;
  position: relative;
  text-decoration: none;
  border-bottom: 0;
}
.hm-sizeguide__finderlink a::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: currentColor;
}
.hm-sizeguide__finderlink a:active {
  transform: translateY(1px);
}
.hm-sizeguide__finderlink a:focus-visible {
  outline: 1px solid currentColor;
  outline-offset: 3px;
}
.hm-sizeguide__finderlink a:hover::after, .hm-sizeguide__finderlink a:focus-visible::after {
  animation: hm-btn-wipe 420ms cubic-bezier(0.22, 1, 0.36, 1);
}
@media (prefers-reduced-motion: reduce) {
  .hm-sizeguide__finderlink a:hover::after, .hm-sizeguide__finderlink a:focus-visible::after {
    animation: none;
    opacity: 0.45;
  }
}

.hm-sizeguide__finder {
  margin: 0 0 2rem;
  padding: 0 0 2rem;
  border-bottom: 1px solid #C8C8C8;
}

.hm-sizeguide__subtitle {
  font-family: "Figtree";
  font-weight: 500;
  font-size: 1.125rem;
  margin: 0 0 1.25rem;
}

.hm-sizefinder--compatto {
  max-width: 640px;
}
.hm-sizefinder--compatto .hm-sizefinder__grid {
  grid-template-columns: 1fr;
  gap: 1rem;
}
@media (min-width: 480px) {
  .hm-sizefinder--compatto .hm-sizefinder__grid {
    grid-template-columns: 1fr 1fr;
  }
  .hm-sizefinder--compatto .hm-sizefinder__grid > .hm-sizefinder__field:nth-child(odd):last-child {
    grid-column: 1/-1;
  }
}
.hm-sizefinder--compatto .hm-sizefinder__result {
  margin-top: 1.25rem;
  padding: 1.25rem;
}
.hm-sizefinder--compatto .hm-sizefinder__verdict {
  font-size: 1.125rem;
}
.hm-sizefinder--compatto .hm-sizefinder__fitnote {
  margin-bottom: 0.75rem;
}

.hm-sizefinder__azioni {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.75rem 1.5rem;
  margin-top: 1.5rem;
}
.hm-sizefinder__azioni .hm-sizefinder__submit {
  margin-top: 0;
}
@media (max-width: 479.98px) {
  .hm-sizefinder__azioni {
    flex-direction: column;
    align-items: stretch;
  }
  .hm-sizefinder__azioni > * {
    width: 100%;
    text-align: center;
  }
}

.hm-sizefinder__avviso {
  font-size: 0.8125rem;
  color: #343434;
  margin: 0 0 0.75rem;
}

.hm-sizefinder__seleziona {
  order: -1;
  display: inline-block;
  padding: 0.875rem 2.5rem;
  background: #343434;
  color: #FFFFFF;
  border: 1px solid #343434;
  border-radius: 0;
  font-family: "Figtree";
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  text-align: center;
  cursor: pointer;
  transition: background-color 420ms cubic-bezier(0.22, 1, 0.36, 1), border-color 420ms cubic-bezier(0.22, 1, 0.36, 1), color 420ms cubic-bezier(0.22, 1, 0.36, 1);
}
.hm-sizefinder__seleziona:active {
  transform: translateY(1px);
}
.hm-sizefinder__seleziona:focus-visible {
  outline: 1px solid currentColor;
  outline-offset: 3px;
}
.hm-sizefinder__seleziona.is-busy, .hm-sizefinder__seleziona.is-loading, .hm-sizefinder__seleziona.loading, .hm-sizefinder__seleziona[aria-busy=true] {
  pointer-events: none;
  opacity: 0.55;
}
@media (prefers-reduced-motion: reduce) {
  .hm-sizefinder__seleziona {
    transition: none;
  }
}
.hm-sizefinder__seleziona:hover, .hm-sizefinder__seleziona:focus-visible {
  background: #8D8D8D;
  border-color: #8D8D8D;
}
@media (prefers-reduced-motion: no-preference) {
  .hm-sizefinder__seleziona.hm-btn--roll:has(.hm-btn__roll):not(.is-wrapped):hover, .hm-sizefinder__seleziona.hm-btn--roll:has(.hm-btn__roll):not(.is-wrapped):focus-visible {
    background: #343434;
    color: #FFFFFF;
    border-color: #343434;
  }
}
.hm-sizefinder__seleziona[hidden] {
  display: none;
}
.hm-sizefinder__seleziona.is-selezionata {
  pointer-events: none;
  background: #8D8D8D;
  border-color: #8D8D8D;
}
@media (prefers-reduced-motion: reduce) {
  .hm-sizefinder__seleziona.is-selezionata {
    transition: none;
  }
  .hm-sizefinder__seleziona.is-selezionata .hm-btn__roll i {
    transition: none;
    transform: none;
  }
}

.hm-404__monogramma {
  display: inline-block;
  height: 72px;
  width: auto;
}
.hm-404__title {
  font-family: "Figtree";
  font-weight: 500;
  font-size: 1.75rem;
  line-height: 1.25;
  margin: 0 0 1rem;
}
@media (min-width: 992px) {
  .hm-404__title {
    font-size: 2.375rem;
  }
}
.hm-404__text {
  font-size: 0.9375rem;
  color: #8D8D8D;
  margin: 0 0 2rem;
}
.hm-404__search {
  display: flex;
  align-items: stretch;
  max-width: 420px;
  margin: 0 auto 2.5rem;
  border-bottom: 1px solid #343434;
}
.hm-404__input {
  flex: 1;
  border: none;
  background: transparent;
  padding: 0.875rem 0;
  font-size: 16px;
  color: #343434;
  outline: none;
}
.hm-404__input::placeholder {
  color: #8D8D8D;
}
.hm-404__submit {
  border: none;
  background: transparent;
  cursor: pointer;
  padding: 0.875rem 0 0.875rem 1.5rem;
  font-size: 0.75rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  font-weight: 500;
  color: #343434;
  white-space: nowrap;
}
.hm-404__submit:active {
  transform: translateY(1px);
}
.hm-404__submit:focus-visible {
  outline: 1px solid currentColor;
  outline-offset: 3px;
}
.hm-404__links {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1rem 2rem;
}
.hm-404__links a {
  font-size: 0.75rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  font-weight: 500;
  color: #343434;
  padding-bottom: 0.25rem;
  position: relative;
  text-decoration: none;
  border-bottom: 0;
}
.hm-404__links a::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: currentColor;
}
.hm-404__links a:active {
  transform: translateY(1px);
}
.hm-404__links a:focus-visible {
  outline: 1px solid currentColor;
  outline-offset: 3px;
}
.hm-404__links a:hover::after, .hm-404__links a:focus-visible::after {
  animation: hm-btn-wipe 420ms cubic-bezier(0.22, 1, 0.36, 1);
}
@media (prefers-reduced-motion: reduce) {
  .hm-404__links a:hover::after, .hm-404__links a:focus-visible::after {
    animation: none;
    opacity: 0.45;
  }
}

.hm-hub {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.25rem;
}
@media (min-width: 768px) {
  .hm-hub {
    grid-template-columns: 1fr 1fr;
  }
  .hm-hub > .hm-hubcard:last-child:nth-child(odd) {
    grid-column: 1/-1;
  }
}

.hm-hubcard {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
  border: 1px solid #C8C8C8;
  padding: 1.75rem;
  text-decoration: none;
  color: #343434;
  transition: border-color 420ms cubic-bezier(0.22, 1, 0.36, 1);
}
.hm-hubcard:hover, .hm-hubcard:focus-visible {
  border-color: #343434;
  color: #343434;
}
@media (prefers-reduced-motion: no-preference) {
  .hm-hubcard:hover .hm-hubcard__cta::after, .hm-hubcard:focus-visible .hm-hubcard__cta::after {
    animation: hm-btn-wipe 420ms cubic-bezier(0.22, 1, 0.36, 1);
  }
}
.hm-hubcard__title {
  font-family: "Figtree";
  font-size: 1.375rem;
  font-weight: 500;
}
.hm-hubcard__text {
  font-size: 0.875rem;
  line-height: 1.6;
  color: #8D8D8D;
  flex: 1;
}
.hm-hubcard__cta {
  font-size: 0.6875rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  font-weight: 500;
  padding-bottom: 0.25rem;
  width: fit-content;
  margin-top: 0.5rem;
  position: relative;
  text-decoration: none;
  border-bottom: 0;
}
.hm-hubcard__cta::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: currentColor;
}
.hm-hubcard__cta:active {
  transform: translateY(1px);
}
.hm-hubcard__cta:focus-visible {
  outline: 1px solid currentColor;
  outline-offset: 3px;
}
.hm-hubcard__cta:hover::after, .hm-hubcard__cta:focus-visible::after {
  animation: hm-btn-wipe 420ms cubic-bezier(0.22, 1, 0.36, 1);
}
@media (prefers-reduced-motion: reduce) {
  .hm-hubcard__cta:hover::after, .hm-hubcard__cta:focus-visible::after {
    animation: none;
    opacity: 0.45;
  }
}
