/* Phase 14K targeted visual polish: working-mode visual-only refinements. */
:root {
  --sa-14k-yellow: #fff001;
  --sa-14k-green: #7cfb8d;
  --sa-14k-dark-green: #009d3a;
  --sa-14k-black: #020202;
}

.sa-topbar__inner {
  max-width: 1120px !important;
  min-height: 25px !important;
  font-size: 0.68rem !important;
}

.sa-header__inner {
  max-width: 1120px !important;
  grid-template-columns: 105px minmax(320px, 500px) minmax(330px, 1fr) !important;
  min-height: 77px !important;
  column-gap: 0.75rem !important;
}

.sa-header__brand .custom-logo-link,
.sa-header__brand .custom-logo {
  width: 98px !important;
  min-width: 98px !important;
  max-height: 48px !important;
}

.sa-header-search {
  max-height: 34px !important;
}

.sa-header-search input,
.sa-header-search button {
  min-height: 30px !important;
}

.sa-header-icon,
.sa-language-switch,
.sa-promo-button {
  min-height: 29px !important;
  padding-inline: 0.52rem !important;
}

.sa-nav--desktop {
  max-width: 1120px !important;
}

.sa-nav--desktop a {
  min-height: 32px !important;
  padding: 0 0.74rem !important;
  font-size: 0.68rem !important;
}

.sa-mega-menu__inner {
  max-width: 1120px !important;
  padding-block: 0.68rem 0.82rem !important;
}

.sa-mega-menu__section {
  min-height: 258px !important;
  padding: 0.78rem 0.72rem !important;
}

.sa-mega-menu__title {
  font-size: 0.76rem !important;
}

.sa-mega-menu__group h2 {
  font-size: 1rem !important;
}

.sa-mega-menu__group a {
  font-size: 0.72rem !important;
}

section.sa-home-hero {
  min-height: clamp(560px, 78vh, 760px) !important;
  background-position: center bottom !important;
}

section.sa-home-hero::before {
  inset: -20% -20% 31% -12% !important;
  clip-path: ellipse(73% 68% at 30% 0%) !important;
}

section.sa-home-hero::after {
  height: 104px !important;
}

.sa-home-hero__inner {
  max-width: 1120px !important;
  min-height: clamp(500px, 68vh, 700px) !important;
  padding-top: clamp(3.6rem, 8.2vw, 6.2rem) !important;
  padding-bottom: 8.8rem !important;
}

.sa-home-hero .sa-hero__content {
  width: min(49%, 560px) !important;
  padding: clamp(0.5rem, 1.6vw, 1.4rem) clamp(0.65rem, 1.8vw, 1.6rem) clamp(0.75rem, 2vw, 1.8rem) 0 !important;
}

.sa-home-title {
  max-width: 13ch !important;
  font-size: clamp(2.2rem, 3.55vw, 4rem) !important;
}

.sa-home-lead {
  max-width: 39ch !important;
  font-size: clamp(0.82rem, 0.98vw, 0.98rem) !important;
}

.sa-home-hero__benefits {
  position: absolute;
  z-index: 2;
  right: 0;
  bottom: 0;
  left: 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  margin: 0;
  padding: 0;
  list-style: none;
  background: var(--sa-14k-green);
  border-top: 0;
}

.sa-home-hero__benefits li {
  display: grid;
  min-height: 104px;
  grid-template-columns: auto 1fr;
  gap: 0.8rem;
  align-items: center;
  justify-content: center;
  padding: 1.15rem 1.5rem;
  color: #111;
  font-size: 0.88rem;
  font-weight: 850;
  text-align: left;
}

.sa-home-hero__benefits strong {
  display: block;
  font-size: 0.98rem;
  font-weight: 950;
  text-transform: uppercase;
}

.sa-home-hero__benefits span[aria-hidden="true"] {
  display: grid;
  width: 38px;
  height: 38px;
  place-items: center;
  border: 2px solid #111;
  border-radius: 50%;
  background: #fff;
  font-weight: 950;
}

.sa-section {
  padding-block: clamp(2.6rem, 5.6vw, 4.6rem) !important;
}

.sa-home-card,
.sa-page-card,
.sa-page-content__main,
.sa-product-summary,
.sa-product-panel,
.sa-product-description,
.sa-product-gallery__stage,
.sa-crea-anteprima-step,
.sa-crea-anteprima-form-shell,
.sa-crea-anteprima-support {
  box-shadow: 4px 4px 0 #111 !important;
}

.sa-product__main {
  max-width: 1120px !important;
  grid-template-columns: minmax(0, 0.98fr) minmax(370px, 0.7fr) !important;
  gap: 0.85rem !important;
  padding-top: 0.65rem !important;
}

.sa-product-gallery__stage {
  min-height: 515px !important;
}

.sa-product-gallery__main {
  min-height: 482px !important;
}

.sa-product-gallery__thumbs {
  gap: 0.55rem !important;
}

.sa-product-gallery__thumb {
  min-height: 86px !important;
  border: 3px solid #111 !important;
  background: var(--sa-14k-green) !important;
}

.sa-product-panel {
  padding: 1.05rem !important;
}

.sa-product-panel__header {
  gap: 0.68rem !important;
}

.sa-product-panel__title {
  font-size: 1.22rem !important;
  font-weight: 950 !important;
}

.sa-product-panel__text,
.sa-product-summary__excerpt {
  font-size: 0.82rem !important;
}

.sa-product-options-grid {
  gap: 0.55rem !important;
}

.sa-product-option-pill,
.sa-pricing-shell__rows > div,
.sa-upload-shell__dropzone {
  border: 2px solid #d5d5d5 !important;
  border-radius: 0 !important;
}

.sa-add-to-cart-shell__button {
  background: var(--sa-14k-green) !important;
  border: 3px solid #111 !important;
  border-radius: 0 !important;
  color: #111 !important;
  font-weight: 950 !important;
}

.sa-crea-anteprima-hero {
  background: var(--sa-14k-yellow) !important;
  border-bottom: 5px solid #111 !important;
}

.sa-crea-anteprima-hero__inner {
  max-width: 1120px !important;
  min-height: clamp(320px, 42vw, 500px);
  align-content: center;
  padding-block: clamp(2.8rem, 6.2vw, 5rem) !important;
}

.sa-crea-anteprima-title {
  max-width: 14ch !important;
  font-size: clamp(2.6rem, 6.4vw, 5.8rem) !important;
}

.sa-crea-anteprima-form-shell {
  max-width: 1120px !important;
  background: #fff !important;
}

.sa-crea-anteprima-field > div,
.sa-crea-anteprima-submit {
  border-radius: 0 !important;
}

.sa-page-hero__inner,
.sa-page-content__grid,
.sa-footer__grid {
  max-width: 1120px !important;
}

.sa-page-hero__inner {
  min-height: clamp(260px, 36vw, 405px) !important;
}

.sa-page-hero h1 {
  max-width: 14ch !important;
}

.sa-account.sa-page {
  background: #fff;
}

.sa-account-hero.sa-page-hero {
  background: var(--sa-14k-yellow) !important;
  border-bottom: 5px solid #111 !important;
}

.sa-account-hero .sa-container {
  max-width: 1120px !important;
  min-height: 285px;
  display: grid;
  align-content: center;
}

.sa-account__layout.sa-page-content {
  padding-block: clamp(2.5rem, 5vw, 4rem) !important;
}

.sa-footer__grid {
  grid-template-columns: 1.05fr 1fr 0.8fr 0.9fr !important;
  padding-block: clamp(2rem, 4.6vw, 3.4rem) !important;
}

.sa-footer__bottom-inner {
  max-width: 1120px !important;
}

@media (max-width: 900px) {
  .sa-header__inner {
    min-height: 50px !important;
  }

  .sa-header__brand .custom-logo-link,
  .sa-header__brand .custom-logo {
    width: 70px !important;
    min-width: 70px !important;
    max-height: 36px !important;
  }

  .sa-menu-toggle {
    width: 36px !important;
    height: 36px !important;
  }

  section.sa-home-hero {
    min-height: 640px !important;
    background-position: 57% bottom !important;
  }

  section.sa-home-hero::before {
    inset: -10% -35% 34% -18% !important;
    clip-path: ellipse(92% 70% at 16% 0%) !important;
  }

  section.sa-home-hero::after {
    display: none !important;
  }

  .sa-home-hero__inner {
    min-height: 600px !important;
    padding: 2rem 1rem 7.8rem !important;
  }

  .sa-home-hero .sa-hero__content {
    width: min(100%, 330px) !important;
    padding: 0 !important;
  }

  .sa-home-title {
    max-width: 12.2ch !important;
    font-size: clamp(2.05rem, 10.2vw, 3.05rem) !important;
  }

  .sa-home-lead {
    max-width: 30ch !important;
  }

  .sa-home-hero__benefits {
    position: relative;
    grid-template-columns: 1fr;
    margin: -5.8rem 1rem 0;
    border: 3px solid #111;
    box-shadow: 4px 4px 0 #111;
  }

  .sa-home-hero__benefits li {
    min-height: 0;
    padding: 0.7rem 0.85rem;
    font-size: 0.72rem;
  }

  .sa-home-hero__benefits strong {
    font-size: 0.78rem;
  }

  .sa-product__main {
    grid-template-columns: 1fr !important;
    padding-inline: 0.8rem !important;
  }

  .sa-product-gallery__stage {
    min-height: 0 !important;
  }

  .sa-product-gallery__thumbs {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .sa-crea-anteprima-hero__inner {
    min-height: 300px;
  }

  .sa-crea-anteprima-title,
  .sa-page-hero h1,
  .sa-account-title {
    font-size: clamp(2.2rem, 11vw, 3.4rem) !important;
  }

  .sa-crea-anteprima-form-shell {
    grid-template-columns: 1fr !important;
  }

  .sa-footer__grid {
    gap: 1.25rem !important;
  }
}

/* 14K footer mobile polish: avoid duplicate/compressed footer columns. */
@media (max-width: 900px) {
  .sa-footer__grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    padding: 2rem 1rem !important;
  }

  .sa-footer__column {
    width: 100% !important;
    min-width: 0 !important;
  }

  .sa-footer__column--brand {
    order: -1;
  }

  .sa-footer__mobile {
    display: none !important;
  }

  .sa-footer__bottom-inner {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 0.5rem;
    padding-inline: 1rem;
    text-align: left;
  }
}
