
  /* Elimina padding e margini aggiunti dal contenitore Shopify */
  .shopify-section:has(.lcpx-footer),
  .shopify-section:has(.lcpx-footer) > div,
  .shopify-section:has(.lcpx-footer) .section,
  .shopify-section:has(.lcpx-footer) .page-width,
  .shopify-section:has(.lcpx-footer) .custom-liquid,
  .shopify-section:has(.lcpx-footer) .custom-liquid__content {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #111827 !important;
  }

  .lcpx-footer {
    --lcpx-dark: #111827;
    --lcpx-dark-soft: #182130;
    --lcpx-yellow: #f5c400;
    --lcpx-white: #ffffff;
    --lcpx-muted: #c8ced8;
    --lcpx-border: rgba(255, 255, 255, 0.12);

    position: relative;
    left: 50%;
    width: 100vw;
    margin: 0 0 0 -50vw !important;
    padding: 0 !important;
    overflow: hidden;

    color: var(--lcpx-white);
    background: var(--lcpx-dark);
    font-family: inherit;
  }

  .lcpx-footer,
  .lcpx-footer * {
    box-sizing: border-box;
  }

  .lcpx-footer::before {
    content: "";
    position: absolute;
    top: -130px;
    right: -110px;
    width: 340px;
    height: 340px;
    background: var(--lcpx-yellow);
    border-radius: 50%;
    opacity: 0.055;
    pointer-events: none;
  }

  .lcpx-footer__container {
    position: relative;
    z-index: 1;
    width: calc(100% - 40px);
    max-width: 1180px;
    margin: 0 auto;
    padding: 52px 0 24px;
  }

  .lcpx-footer__top {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.85fr);
    gap: 70px;
    padding-bottom: 44px;
  }

  .lcpx-footer__brand {
    min-width: 0;
    max-width: 620px;
  }

  /* Nessun riquadro giallo dietro al logo */
  .lcpx-footer__logo-wrap {
    display: block;
    width: 100%;
    margin: 0 0 28px;
    padding: 0;
    background: transparent !important;
    border: 0;
    border-radius: 0;
  }

  .lcpx-footer__logo {
    display: block;
    width: 310px;
    max-width: 100%;
    height: auto;
    margin: 0;
    padding: 0;
    object-fit: contain;
    filter: none !important;
    opacity: 1 !important;
  }

  .lcpx-footer__intro {
    max-width: 610px;
    margin: 0 0 28px;
    color: var(--lcpx-muted);
    font-size: 18px;
    line-height: 1.7;
  }

  .lcpx-footer__details {
    display: grid;
    gap: 18px;
  }

  .lcpx-footer__detail {
    display: flex;
    align-items: flex-start;
    gap: 13px;
    color: var(--lcpx-muted);
    font-size: 16px;
    line-height: 1.55;
  }

  .lcpx-footer__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
    color: var(--lcpx-dark);
    background: var(--lcpx-yellow);
    border-radius: 50%;
    font-size: 16px;
    font-weight: 900;
  }

  .lcpx-footer__detail strong {
    color: var(--lcpx-white);
  }

  .lcpx-footer__detail a {
    color: var(--lcpx-white);
    font-weight: 700;
    text-decoration: none;
  }

  .lcpx-footer__detail a:hover {
    color: var(--lcpx-yellow);
  }

  .lcpx-footer__policies {
    align-self: start;
    padding: 30px;
    background: var(--lcpx-dark-soft);
    border: 1px solid var(--lcpx-border);
    border-radius: 18px;
  }

  .lcpx-footer__heading {
    margin: 0 0 21px;
    color: var(--lcpx-white);
    font-size: 28px;
    line-height: 1.1;
    font-weight: 850;
    letter-spacing: -0.5px;
  }

  .lcpx-footer__links {
    display: grid;
  }

  .lcpx-footer__link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    padding: 15px 0;
    color: var(--lcpx-muted);
    border-bottom: 1px solid var(--lcpx-border);
    font-size: 16px;
    line-height: 1.35;
    text-decoration: none;
    transition:
      color 160ms ease,
      padding-left 160ms ease;
  }

  .lcpx-footer__link:last-child {
    border-bottom: 0;
  }

  .lcpx-footer__link:hover {
    padding-left: 6px;
    color: var(--lcpx-white);
  }

  .lcpx-footer__arrow {
    color: var(--lcpx-yellow);
    font-size: 21px;
    line-height: 1;
  }

  .lcpx-footer__slogan {
    position: relative;
    overflow: hidden;
    margin: 0 0 28px;
    padding: 28px 30px;
    color: var(--lcpx-dark);
    background: var(--lcpx-yellow);
    border-radius: 17px;
  }

  .lcpx-footer__slogan::after {
    content: "";
    position: absolute;
    top: -50px;
    right: -35px;
    width: 155px;
    height: 155px;
    background: rgba(255, 255, 255, 0.23);
    border-radius: 50%;
  }

  .lcpx-footer__slogan-title {
    position: relative;
    z-index: 1;
    margin: 0;
    font-size: clamp(24px, 4vw, 38px);
    line-height: 1.08;
    font-weight: 900;
    letter-spacing: -0.6px;
  }

  .lcpx-footer__slogan-text {
    position: relative;
    z-index: 1;
    max-width: 800px;
    margin: 10px 0 0;
    font-size: 15px;
    line-height: 1.6;
    font-weight: 650;
  }

  .lcpx-footer__bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 23px 0 0;
    border-top: 1px solid var(--lcpx-border);
  }

  .lcpx-footer__copyright {
    margin: 0;
    color: #9da5b2;
    font-size: 13px;
    line-height: 1.5;
  }

  .lcpx-footer__mini-slogan {
    margin: 0;
    color: var(--lcpx-yellow);
    font-size: 13px;
    line-height: 1.5;
    font-weight: 800;
    letter-spacing: 0.3px;
    text-align: right;
  }

  @media screen and (max-width: 749px) {
    .lcpx-footer__container {
      width: calc(100% - 32px);
      padding: 38px 0 20px;
    }

    .lcpx-footer__top {
      grid-template-columns: 1fr;
      gap: 34px;
      padding-bottom: 33px;
    }

    .lcpx-footer__logo-wrap {
      margin-bottom: 23px;
    }

    .lcpx-footer__logo {
      width: 265px;
    }

    .lcpx-footer__intro {
      margin-bottom: 25px;
      font-size: 16px;
      line-height: 1.68;
    }

    .lcpx-footer__detail {
      font-size: 15px;
    }

    .lcpx-footer__policies {
      padding: 24px 20px;
      border-radius: 15px;
    }

    .lcpx-footer__heading {
      font-size: 26px;
    }

    .lcpx-footer__link {
      padding: 14px 0;
      font-size: 15px;
    }

    .lcpx-footer__slogan {
      padding: 23px 21px;
      border-radius: 15px;
    }

    .lcpx-footer__slogan-title {
      font-size: 27px;
    }

    .lcpx-footer__bottom {
      display: block;
    }

    .lcpx-footer__mini-slogan {
      margin-top: 8px;
      text-align: left;
    }
  }
