/** Shopify CDN: Minification failed

Line 6700:26 Unexpected "{"

**/
/* SHOPIFY_STYLESHEETS_VERSION: 1.0 */


/* CSS from section stylesheet tags */
/* START_SECTION:404 (INDEX:0, SCOPED:FALSE) */
.sigma-404 {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 60rem 20rem;
}

.sigma-404__inner {
  max-width: 900rem;
  margin: 0 auto;
}

.sigma-404__title {
  margin: 0 0 20rem 0;
}

.sigma-404__text {
  margin: 0 0 30rem 0;
}

.sigma-404__link {
  display: inline-block;
  font-family: var(--font-primary);
  font-size: 13rem;
  letter-spacing: 0.08rem;
  text-decoration: underline;
}

.sigma-404__link {
  display: inline-block;
  font-family: var(--font-primary);
  font-size: 13rem;
  letter-spacing: 0.08rem;
  text-decoration: underline;
  color: #000000;
}

.sigma-404__link:visited {
  color: #000000;
}

.sigma-404__link:hover {
  opacity: 0.7;
}
/* END_SECTION:404 */

/* START_SECTION:art-projects (INDEX:1, SCOPED:FALSE) */
.art-projects-section {
    width: 100%;
    background: white;
  }

  .art-projects-container {
    margin: 0 auto;
    padding: 0 20px;
  }

  .art-projects-title {
    font-family: "Sigma Serif";
    font-size: 16rem;
    font-weight: 400;
    text-transform: uppercase;
    color: #333333;
    text-align: center;
    margin: 0 0 60rem 0;
    letter-spacing: 0.5px;
  }

  .art-projects-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    padding-bottom: 160rem;
    gap: 16rem;
    margin-top: 80rem;
  }

  .art-projects-item {
    display: flex;
    flex-direction: column;
    background: white;
  }

  .art-projects-image {
    width: 100%;
    aspect-ratio: 0.8;
    overflow: hidden;
  }

  .art-projects-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
  }

  .art-projects-content {
    padding: 40rem 0rem;
    text-align: left;
    color: #333333;
  }

  .art-projects-project-title {
    font-family: "Sigma Serif";
    font-size: 16rem;
    font-weight: 400;
    text-transform: uppercase;
    color: #333333;
    margin: 0 0 16rem 0;
    letter-spacing: 1px;
  }

  .art-projects-description {
    font-family: "Sigma Serif";
    font-size: 16rem;
    font-weight: 400;
    line-height: 20rem;
    color: #333333;
    margin: 0 0 24rem 0;
    max-width: 280rem;
  }

  .art-projects-link {
    display: inline-block;
    font-family: "Sigma Serif";
    font-size: 13rem;
    font-weight: 400;
    text-transform: uppercase;
    color: #333333;
    text-decoration: none;
    padding: 0;
    letter-spacing: 0.5px;
    transition: all 0.3s ease;
    margin-top: 16rem;
  }

  .art-projects-link:hover {
    opacity: 0.7;
  }

  /* Responsive */
  @media (max-width: 1200px) {
    .art-projects-grid {
      grid-template-columns: 1fr;
      gap: 0;
      row-gap: 16rem;
    }
    
    .art-projects-item {
      /* aspect-ratio removed for mobile */
    }
    
    .art-projects-project-title {
      font-size: 28rem;
      margin-bottom: 12rem;
    }
    
    .art-projects-description {
      font-size: 13rem;
      margin-bottom: 20rem;
      max-width: 100%;
    }
    
    .art-projects-title {
      font-size: 16rem;
    }
    
    .art-projects-container {
      padding-bottom: 80rem;
    }
    
    .art-projects-content {
      padding: 30rem 0rem;
    }
    
    .art-projects-image {
      aspect-ratio: 0.8;
    }
  }
/* END_SECTION:art-projects */

/* START_SECTION:article-art-projects (INDEX:2, SCOPED:FALSE) */
.article-art-projects {
    display: grid;
    gap: 80rem; /* controlla qui lo spazio tra tutti i blocchi */
    width: 100%;
    font-size: 13rem;
  }

  .article-art-projects > * {
  margin: 0;
  }


  .art-projects-header {
    text-align: center;
  }


  .article-title-block {
    max-width: 800px;
    margin:0 auto;
    text-align: center;
    margin-bottom: 30rem;
  }

  .article-title {
    margin: 0 auto;
  }

  .article-cover-image {
    width: 100%;
    height: auto;
    display: block;
  }

  .article-image {
    width: 100%;
    height: auto;
    display: block;
  }

  .text-content {
    font-family: "Sigma Serif";
    font-size: 16rem;
    line-height: 24rem;
    color: #333333;
    max-width: 800rem;
    margin: 0 auto;
  }

  .image-left-container,
  .image-right-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40rem;
    align-items: start;
  }

  .image-left-image,
  .image-right-image {
    width: 100%;
  }

  .image-left-image img,
  .image-right-image img {
    width: 100%;
    height: auto;
    display: block;
  }

  .image-left-text,
  .image-right-text {
    font-family: "Sigma Serif";
    font-size: 16rem;
    line-height: 24rem;
    color: #333333;
  }

  .article-image-centered {
    text-align: center;
  }

  .centered-image {
    width: 100%;
    max-width: 800rem;
    height: auto;
    display: block;
    margin: 0 auto;
  }

  .article-image-full-width {
    margin-bottom: 40rem;
    margin-left: -20rem;
    margin-right: -20rem;
  }

  .article-art-projects-video-full-width {
    margin: 40rem 0;
    width: 100%;
  }

  .video-container {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%; /* 16:9 aspect ratio */
    overflow: hidden;
    border-radius: 8rem;
    box-shadow: 0 4rem 20rem rgba(0, 0, 0, 0.1);
  }

  .video-iframe,
  .video-element {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
  }

  .full-width-image {
    width: 90vw;
    height: auto;
    display: block;
    margin: 0 auto;
  }

  .article-two-images {
    margin-bottom: 40rem;
  }

  .two-images-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20rem;
  }

  .two-images-left,
  .two-images-right {
    width: 100%;
  }

  .two-images-left img,
  .two-images-right img {
    width: 100%;
    height: auto;
    display: block;
  }

  .article-text-centered {
    text-align: center;
  }

  .text-centered-content {
    font-family: "Sigma Serif";
    font-size: 16rem;
    line-height: 24rem;
    color: #333333;
    max-width: 800rem;
    margin: 0 auto;
  }

  .article-link-block {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    max-width: 800rem;
    gap: 12rem;
    margin: 0 auto; /* centra dentro il container generale */
  }


  .external-link {
    font-family: "Sigma Sans";
    font-size: 14rem;
    font-weight: 500;
    text-transform: uppercase;
    color: #333333;
    text-decoration: none;
    letter-spacing: 0.5px;
    display: inline-flex;
    align-items: center;
    gap: 8rem;
    transition: color 0.3s ease;
  }

  .external-link:hover {
    color: #666666;
  }

  .link-arrow {
    font-size: 12rem;
    line-height: 1;
  }


  .article-explore-more {
    margin-bottom: 60rem;
    margin-top: 200rem;
  }

  .explore-more-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60rem;
    align-items: start;
  }

  .explore-more-left {
    display: flex;
    align-items: flex-start;
    padding-top: 20rem;
  }

  .explore-more-title {
    font-family: "Sigma Sans";
    font-size: 13rem;
    font-weight: 400;
    text-transform: uppercase;
    color: #333333;
    margin: 0;
    letter-spacing: 0.5px;
  }

  .explore-more-card {
    display: flex;
    flex-direction: column;
    background-color: #FEFEFD;
    width: calc(100% / 2);
    text-decoration: none;
    transition: transform 0.2s ease;
  }

  .explore-more-card:hover {
    transform: translateY(-2px);
  }

  .explore-more-image {
    width: 100%;
    aspect-ratio: 464 / 580;
    overflow: hidden;
  }

  .explore-more-grid-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .explore-more-article-title {
    font-family: "Sigma Serif";
    font-size: 16rem;
    font-weight: 400;
    color: #333333;
    margin: 0 0 15rem 0;
    line-height: 1.3;
    text-transform: uppercase;
  }

  .explore-more-excerpt {
    font-family: "Sigma Serif";
    font-size: 16rem;
    line-height: 20rem;
    color: #333333;
    margin-bottom: 20rem;
    flex-grow: 1;
  }



  .explore-more-right{
    display: flex;
    justify-content: flex-end;
    justify-items: end;
  }

  @media (max-width: 768px) {
    .image-left-container,
    .image-right-container {
      grid-template-columns: 1fr;
      gap: 20rem;
    }
    
    .two-images-container {
      grid-template-columns: 1fr;
      gap: 20rem;
    }

    .explore-more-container {
      grid-template-columns: 1fr;
    }

    .explore-more-left {
      padding-top: 0;
    }
  }
/* END_SECTION:article-art-projects */

/* START_SECTION:article-events (INDEX:3, SCOPED:FALSE) */
.article-events {
    width: 100%;
    margin: 0 auto;
    padding: 0 20rem;
    font-size: 13rem;
    margin-top: 120rem;
  }

  .article-events-header {
    text-align: center;
    margin-bottom: 40rem;
  }

  .article-events-header h1 {
    font-family: "Sigma Sans";
    font-size: 13rem;
    font-weight: 400;
    text-transform: uppercase;
    color: #333333;
    margin: 0;
  }

  .article-events-title-block {
    max-width: 560rem;
    margin: 0 auto;
    text-align: center;

  }

  .article-events-title-block h3 {
    margin: 0;
    margin-bottom: 20rem;
  }

  .article-events-meta {
    text-align: center;
    margin-bottom: 40px;
  }

  .article-tags {
    font-size: 14rem;
    color: #666;
    margin-bottom: 1rem;
    font-family: "Sigma Sans";
    font-weight: 400;
  }

  .article-date {
    font-size: 14rem;
    color: #666;
    font-family: "Sigma Sans";
    font-weight: 400;
  }

  .article-events-cover {
    margin: 0 0 40px 0;
    max-width: 560rem;
    margin: 0 auto 40px auto;
  }

  .article-cover-image {
    width: 100%;
    height: auto;
    display: block;
  }

  .article-events-text-block {
    font-family: "Sigma Serif";
    font-size: 16rem;
    line-height: 24rem;
    color: #333333;
    max-width: 560rem;
    margin: 0 auto;
    margin-bottom: 60rem;
  }

  .image-left-container,
  .image-right-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    margin: 0 0 40px 0;
    align-items: start;
  }

  .image-left-image,
  .image-right-image {
    width: 100%;
  }

  .image-left-image img,
  .image-right-image img {
    width: 100%;
    height: auto;
    display: block;
  }

  .image-left-text,
  .image-right-text {
    font-family: "Sigma Serif";
    font-size: 16rem;
    line-height: 24rem;
    color: #333333;
  }

  .article-events-image-centered {
    text-align: center; /* centra il contenuto orizzontalmente */
    margin: 0 auto 40px auto; /* centra il blocco nel layout */
    max-width: 560rem; /* opzionale: un po' più largo per far respirare l'immagine */
  }

  .article-events-image-centered img {
    display: inline-block; /* evita di allinearsi al margine sinistro */
    margin: 0 auto;
    height: auto;
    max-width: 100%;
  }

  .article-events-image-full-width {
    margin: 0 auto 40px auto;
    max-width: 560rem;
  }

  .article-events-video-full-width {
    margin: 40rem 0;
    width: 100%;
  }

  .video-container {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%; /* 16:9 aspect ratio */
    overflow: hidden;
    box-shadow: 0 4rem 20rem rgba(0, 0, 0, 0.1);
  }

  .video-iframe,
  .video-element {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
  }

  .article-events-image-full-width img {
    width: 100%;
    height: auto;
    display: block;
  }

  /* Slideshow Styles */
  .slideshow {
    position: relative;
    margin: 0 0 40px 0;
  }

  .slideshow__container {
    position: relative;
    width: 100%;
    overflow: hidden;
  }

  .slideshow__wrapper {
    display: flex;
    transition: transform 0.3s ease;
  }

  .slideshow__slide {
    min-width: 100%;
    display: none;
  }

  .slideshow__slide--active {
    display: block;
  }

  .slideshow__image {
    width: 100%;
    height: auto;
    display: block;
  }

  .slideshow__arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(255, 255, 255, 0.8);
    border: none;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    z-index: 10;
  }

  .slideshow__arrow:hover {
    background: rgba(255, 255, 255, 1);
  }

  .slideshow__arrow--prev {
    left: 20px;
  }

  .slideshow__arrow--next {
    right: 20px;
  }

  .slideshow__dots {
    display: flex;
    justify-content: center;
    gap: 8px;
    margin-top: 20px;
  }

  .slideshow__dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    border: none;
    background: #ccc;
    cursor: pointer;
    transition: all 0.3s ease;
  }

  .slideshow__dot--active {
    background: #333;
  }

  .slideshow__dot:hover {
    background: #666;
  }

  /* Event Details Table */
  .event-details-table {
    max-width: 560rem;
    margin: 0 auto;
    margin-top: 60rem;
    border-top: 1px solid #333333b3;
  }

  .event-details-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20rem;
    padding: 8rem 0;
    border-bottom: 1px solid #333333b3;
  }

  .event-details-row:last-child {
    border-bottom: none;
  }

  .event-details-label {
    font-family: "Sigma Sans";
    font-size: 13rem;
    font-weight: 400;
    color: #333333;
    text-transform: uppercase;
    text-align: left;
  }

  .event-details-value {
    font-family: "Sigma Sans";
    font-size: 13rem;
    font-weight: 400;
    color: #333333;
    text-align: left;
  }

  /* Metadata Accordion */
  .metadata-accordion {
    position: relative;
    padding-top: 20px;
    padding-bottom: 20px;
    margin: 0 auto;
  }

  .metadata-toggle {
    background: transparent;
    border: none;
    padding: 0px 20px;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-family: "Sigma Sans", sans-serif;
    font-size: 13px;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 1px;
    transition: all 0.3s ease;
  }

  .metadata-toggle:hover {
    background: transparent;
  }

  .metadata-label {
    font-weight: 400;
    margin-right: 10px;
  }

  .metadata-plus {
    font-size: 13px;
    font-weight: 400;
    transition: all 0.3s ease;
  }

  .metadata-toggle.active .metadata-plus {
    content: "-";
  }

  .metadata-toggle.active .metadata-plus::before {
    content: "-";
  }

  .metadata-toggle:not(.active) .metadata-plus::before {
    content: "+";
  }

  .metadata-content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
    background: transparent;
  }

  .metadata-content.active {
    max-height: 200px;
  }

  .metadata-text {
    padding: 0px 20px;
    font-family: "Sigma Sans", sans-serif;
    font-size: 13px;
    line-height: 1.6;
    color: #333;
    white-space: pre-line;
  }

  .two-images-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
  }

  .two-images-image img {
    width: 100%;
    height: auto;
    display: block;
  }

  .article-events-text-centered {
    font-family: "Sigma Serif";
    font-size: 16rem;
    line-height: 24rem;
    color: #333333;
    text-align: center;
    margin: 0 0 40px 0;
  }

  .article-link-block {
    max-width: 800rem;
    margin: 0 auto;
    padding-top: 2rem;
  }

  .external-link {
    font-family: "Sigma Sans";
    font-size: 14rem;
    font-weight: 500;
    text-transform: uppercase;
    color: #333333;
    text-decoration: none;
    letter-spacing: 0.5px;
    display: inline-flex;
    align-items: center;
    gap: 8rem;
    transition: color 0.3s ease;
  }

  .external-link:hover {
    color: #666666;
  }

  .link-arrow {
    font-size: 12rem;
    line-height: 1;
  }

  .explore-more-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    margin: 0 0 40px 0;
    align-items: center;
  }

  .explore-more-left h3 {
    font-family: "Sigma Sans";
    font-size: 13rem;
    font-weight: 400;
    text-transform: uppercase;
    color: #333333;
    margin: 0;
    letter-spacing: 0.5px;
  }

  .explore-more-right {
    display: flex;
    justify-content: flex-end;
  }

  .explore-more-card {
    width: calc(100% / 2);
    background-color: #FEFEFD;
    text-decoration: none;
    display: block;
    transition: transform 0.2s ease;
  }

  .explore-more-card:hover {
    transform: translateY(-2px);
  }

  .explore-more-image {
    width: 100%;
    aspect-ratio: 4/5;
    overflow: hidden;
  }

  .explore-more-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }


  .explore-more-content h4 {
    font-family: "Sigma Serif";
    font-size: 16rem;
    font-weight: 400;
    color: #333333;
    margin: 0 0 10px 0;
    line-height: 1.3;
    text-transform: uppercase;
  }

  .explore-more-content p {
    font-family: "Sigma Serif";
    font-size: 14rem;
    line-height: 18rem;
    color: #333333;
    margin: 0 0 15px 0;
  }

  @media (max-width: 768px) {
    .image-left-container,
    .image-right-container {
      grid-template-columns: 1fr;
      gap: 20px;
    }

    .two-images-container {
      grid-template-columns: 1fr;
      gap: 15px;
    }

    .explore-more-container {
      grid-template-columns: 1fr;
    }

    .explore-more-right {
      justify-content: center;
    }

    .explore-more-card {
      width: 100%;
    }
  }
/* END_SECTION:article-events */

/* START_SECTION:article-news (INDEX:4, SCOPED:FALSE) */
.article-news {
    width: 100%;
    padding: 0 20rem;
    font-size: 13rem;
  }

  .article-news-header {
    text-align: center;
    margin-bottom: 40rem;
  }

  .article-news-header h1 {
    font-family: "Sigma Sans";
    font-size: 13rem;
    font-weight: 400;
    text-transform: uppercase;
    color: #333333;
    margin: 0;
  }

  .article-news-title-block {
    max-width: 560rem;
    margin: 0 auto;
    text-align: center;
    margin-bottom: 30rem;
  }

  .article-news-title-block h3 {
    margin-bottom: 20rem;
  }


  .article-news-meta {
    text-align: center;
    margin-bottom: 40px;
  }

  .article-tags {
    font-size: 14rem;
    color: #666;
    margin-bottom: 1rem;
    font-family: "Sigma Sans";
    font-weight: 400;
  }

  .article-date {
    font-size: 14rem;
    color: #666;
    font-family: "Sigma Sans";
    font-weight: 400;
  }

  .article-news-cover {
    margin: 0 0 40px 0;
    max-width: 560rem;
    margin: 0 auto 40px auto;
  }

  .article-cover-image {
    width: 100%;
    height: auto;
    display: block;
  }

  .article-news-text-block {
    font-family: "Sigma Serif";
    font-size: 16rem;
    line-height: 24rem;
    color: #333333;
    max-width: 560rem;
    margin: 0 auto;
    margin-bottom: 60rem;
  }

  .image-left-container,
  .image-right-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    margin: 0 0 40px 0;
    align-items: start;
  }

  .image-left-image,
  .image-right-image {
    width: 100%;
  }

  .image-left-image img,
  .image-right-image img {
    width: 100%;
    height: auto;
    display: block;
  }

  .image-left-text,
  .image-right-text {
    font-family: "Sigma Serif";
    font-size: 16rem;
    line-height: 24rem;
    color: #333333;
  }

  .article-news-image-centered {
    text-align: left;
    margin: 0 0 40px 0;
    max-width: 560rem;
    margin: 0 auto;
    padding-bottom: 60rem;
  }

  .article-news-image-centered img {
    max-width: 100%;
    height: auto;
  }
  
  .article-news-image-full-width {
    margin: 0 auto 40px auto;
    max-width: 560rem;
  }

  .article-news-video-full-width {
    margin: 40rem 0;
    width: 100%;
  }

  .video-container {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%; /* 16:9 aspect ratio */
    overflow: hidden;
    box-shadow: 0 4rem 20rem rgba(0, 0, 0, 0.1);
  }

  .video-iframe,
  .video-element {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
  }

  .article-news-image-full-width img {
    width: 100%;
    height: auto;
    display: block;
  }

  /* Metadata Accordion */
  .metadata-accordion {
    position: relative;
    padding-top: 20px;
    padding-bottom: 20px;
    margin: 0 auto;
  }

  .metadata-toggle {
    background: transparent;
    border: none;
    padding: 0px 20px;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-family: "Sigma Sans", sans-serif;
    font-size: 13px;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 1px;
    transition: all 0.3s ease;
  }

  .metadata-toggle:hover {
    background: transparent;
  }

  .metadata-label {
    font-weight: 400;
    margin-right: 10px;
  }

  .metadata-plus {
    font-size: 13px;
    font-weight: 400;
    transition: all 0.3s ease;
  }

  .metadata-toggle.active .metadata-plus {
    content: "-";
  }

  .metadata-toggle.active .metadata-plus::before {
    content: "-";
  }

  .metadata-toggle:not(.active) .metadata-plus::before {
    content: "+";
  }

  .metadata-content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
    background: transparent;
  }

  .metadata-content.active {
    max-height: 200px;
  }

  .metadata-text {
    padding: 0px 20px;
    font-family: "Sigma Sans", sans-serif;
    font-size: 13px;
    line-height: 1.6;
    color: #333;
    white-space: pre-line;
  }

  .two-images-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
  }

  .two-images-image img {
    width: 100%;
    height: auto;
    display: block;
  }

  .article-news-text-centered {
    font-family: "Sigma Serif";
    font-size: 16rem;
    line-height: 24rem;
    color: #333333;
    text-align: center;
    margin: 0 0 40px 0;
  }

  .article-link-block {
    max-width: 800rem;
    margin: 0 auto;
    padding-top: 2rem;
  }

  .external-link {
    font-family: "Sigma Sans";
    font-size: 14rem;
    font-weight: 500;
    text-transform: uppercase;
    color: #333333;
    text-decoration: none;
    letter-spacing: 0.5px;
    display: inline-flex;
    align-items: center;
    gap: 8rem;
    transition: color 0.3s ease;
  }

  .external-link:hover {
    color: #666666;
  }

  .link-arrow {
    font-size: 12rem;
    line-height: 1;
  }

  .explore-more-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    margin: 0 0 40px 0;
    align-items: center;
  }

  .explore-more-left h3 {
    font-family: "Sigma Sans";
    font-size: 13rem;
    font-weight: 400;
    text-transform: uppercase;
    color: #333333;
    margin: 0;
    letter-spacing: 0.5px;
  }

  .explore-more-right {
    display: flex;
    justify-content: flex-end;
  }

  .explore-more-card {
    width: calc(100% / 2);
    background-color: #FEFEFD;
    text-decoration: none;
    display: block;
    transition: transform 0.2s ease;
  }

  .explore-more-card:hover {
    transform: translateY(-2px);
  }

  .explore-more-image {
    width: 100%;
    aspect-ratio: 4/5;
    overflow: hidden;
  }

  .explore-more-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }


  .explore-more-content h4 {
    font-family: "Sigma Serif";
    font-size: 16rem;
    font-weight: 400;
    color: #333333;
    margin: 0 0 10px 0;
    line-height: 1.3;
    text-transform: uppercase;
  }

  .explore-more-content p {
    font-family: "Sigma Serif";
    font-size: 14rem;
    line-height: 18rem;
    color: #333333;
    margin: 0 0 15px 0;
  }

  @media (max-width: 768px) {
    .image-left-container,
    .image-right-container {
      grid-template-columns: 1fr;
      gap: 20px;
    }

    .two-images-container {
      grid-template-columns: 1fr;
      gap: 15px;
    }

    .explore-more-container {
      grid-template-columns: 1fr;
    }

    .explore-more-right {
      justify-content: center;
    }

    .explore-more-card {
      width: 100%;
    }
  }
/* END_SECTION:article-news */

/* START_SECTION:article-our-community (INDEX:5, SCOPED:FALSE) */
.article-our-community {
    width: 100%;
    margin: 0 auto;
    padding: 0 20rem;
    font-size: 13rem;
    margin-top: 120rem;
  }

  .our-community-header {
    text-align: center;
    margin-bottom: 40rem;
  }

  .our-community-title {
    font-family: "Sigma Sans";
    font-size: 13rem;
    font-weight: 400;
    text-transform: uppercase;
    color: #333333;
    margin: 0;
  }

  .article-title-block {
    max-width: 800px;
    margin:0 auto;
    text-align: center;
    margin-bottom: 30rem;
  }

  .article-title {
    margin: 0 auto;
  }

  .article-cover-image {
    width: 100%;
    height: auto;
    display: block;
  }

  .article-image {
    width: 100%;
    height: auto;
    display: block;
  }

  .text-content {
    font-family: "Sigma Serif";
    font-size: 16rem;
    line-height: 24rem;
    color: #333333;
    max-width: 800rem;
    margin: 0 auto;
  }


  .text-content--left {
    text-align: left;
  }

  .text-content--center {
    text-align: center;
  }

  .text-content--right {
    text-align: right;
  }


  .article-image-left,
  .article-image-right {
    margin-bottom: 60rem;
  }

  .image-left-container,
  .image-right-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40rem;
    align-items: start;
  }

  .image-left-image,
  .image-right-image {
    width: 100%;
  }

  .image-left-image img,
  .image-right-image img {
    width: 100%;
    height: auto;
    display: block;
  }

  .image-left-text,
  .image-right-text {
    font-family: "Sigma Serif";
    font-size: 16rem;
    line-height: 24rem;
    color: #333333;
  }

  .article-image-centered {
    margin-bottom: 40rem;
    text-align: center;
  }

  .centered-image {
    width: 100%;
    max-width: 800rem;
    height: auto;
    display: block;
    margin: 0 auto;
  }

  .article-image-full-width {
    margin-bottom: 40rem;
    margin-left: -20rem;
    margin-right: -20rem;
  }

  .full-width-image {
    width: 100vw;
    height: auto;
    display: block;
  }

  .article-two-images {
    margin-bottom: 40rem;
  }

  .two-images-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20rem;
  }

  .two-images-left,
  .two-images-right {
    width: 100%;
  }

  .two-images-left img,
  .two-images-right img {
    width: 100%;
    height: auto;
    display: block;
  }

  .article-text-centered {
    text-align: center;
  }

  .text-centered-content {
    font-family: "Sigma Serif";
    font-size: 16rem;
    line-height: 24rem;
    color: #333333;
    max-width: 800rem;
    margin: 0 auto;
  }

  .article-link-block {
    max-width: 800rem;
    margin: 0 auto;
    padding-top: 2rem;
  }

  .external-link {
    font-family: "Sigma Sans";
    font-size: 14rem;
    font-weight: 500;
    text-transform: uppercase;
    color: #333333;
    text-decoration: none;
    letter-spacing: 0.5px;
    display: inline-flex;
    align-items: center;
    gap: 8rem;
    transition: color 0.3s ease;
  }

  .external-link:hover {
    color: #666666;
  }

  .link-arrow {
    font-size: 12rem;
    line-height: 1;
  }

  .article-explore-more {
    margin-bottom: 60rem;
    margin-top: 200rem;
  }

  .explore-more-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60rem;
    align-items: start;
  }

  .explore-more-left {
    display: flex;
    align-items: flex-start;
  }

  .explore-more-title {
    font-family: "Sigma Sans";
    font-size: 13rem;
    font-weight: 400;
    text-transform: uppercase;
    color: #333333;
    margin: 0;
    letter-spacing: 0.5px;
  }

  .explore-more-card {
    display: flex;
    flex-direction: column;
    background-color: #FEFEFD;
    width: calc(100% / 2);
    text-decoration: none;
    transition: transform 0.2s ease;
  }

  .explore-more-card:hover {
    transform: translateY(-2px);
  }

  .explore-more-image {
    width: 100%;
    aspect-ratio: 4/5;
    overflow: hidden;
  }

  .explore-more-grid-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .explore-more-article-title {
    font-family: "Sigma Serif";
    font-size: 16rem;
    font-weight: 400;
    color: #333333;
    margin: 0 0 15rem 0;
    line-height: 1.3;
    text-transform: uppercase;
  }

  .explore-more-excerpt {
    font-family: "Sigma Serif";
    font-size: 16rem;
    line-height: 20rem;
    color: #333333;
    margin-bottom: 20rem;
    flex-grow: 1;
  }



  .explore-more-right{
    display: flex;
    justify-content: flex-end;
  }

  /* Related Products */
  .article-our-community-related-products {
    margin: 60px 0;
  }

  .related-products-header {
    text-align: center;
    margin-bottom: 40px;
  }

  .related-products-header h3 {
    font-size: var(--p-size);
    margin: 0;
  }

  .related-products-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px;
  }

  .related-product-card {
    display: flex;
    flex-direction: column;
    text-align: left;
  }

  .related-product-image {
    width: 100%;
    aspect-ratio: 3/4;
    overflow: hidden;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .related-product-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
  }

  .related-product-content {
    display: flex;
    flex-direction: column;
    gap: 8px;
  }

  .related-product-line {
    font-family: "Sigma Serif";
    font-size: 16rem;
    font-weight: 400;
    color: #333333;
    text-transform: uppercase;
    margin: 0;
  }

  .related-product-title {
    font-family: "Sigma Serif";
    font-size: 16rem;
    font-weight: 400;
    color: #333333;
    margin: 0;
  }

  .related-product-description {
    font-family: "Sigma Serif";
    font-size: 14rem;
    line-height: 20rem;
    color: #333333;
    margin: 10px 0;
    text-align: left;
  }

  .related-product-link {
    font-family: "Sigma Sans";
    font-size: 13rem;
    font-weight: 400;
    text-transform: uppercase;
    color: #333333;
    text-decoration: none;
    letter-spacing: 0.5px;
    align-self: flex-start;
    margin-top: 10px;
    transition: opacity 0.3s ease;
  }

  .related-product-link:hover {
    opacity: 0.7;
  }

  /* Slideshow Styles */
  .slideshow {
    margin-bottom: 40rem;
    position: relative;
  }

  .slideshow__container {
    position: relative;
    width: 100%;
    overflow: hidden;
    border-radius: 8rem;
  }

  .slideshow__wrapper {
    display: flex;
    transition: transform 0.3s ease;
  }

  .slideshow__slide {
    min-width: 100%;
    display: none;
  }

  .slideshow__slide--active {
    display: block;
  }

  .slideshow__image {
    width: 100%;
    height: auto;
    display: block;
  }

  .slideshow__arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(255, 255, 255, 0.9);
    border: none;
    border-radius: 50%;
    width: 48rem;
    height: 48rem;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: background-color 0.3s ease;
    z-index: 2;
  }

  .slideshow__arrow:hover {
    background: rgba(255, 255, 255, 1);
  }

  .slideshow__arrow--prev {
    left: 20rem;
  }

  .slideshow__arrow--next {
    right: 20rem;
  }

  .slideshow__dots {
    display: flex;
    justify-content: center;
    gap: 8rem;
    margin-top: 20rem;
  }

  .slideshow__dot {
    width: 8rem;
    height: 8rem;
    border-radius: 50%;
    border: none;
    background: #ccc;
    cursor: pointer;
    transition: background-color 0.3s ease;
  }

  .slideshow__dot--active {
    background: #333;
  }

  @media (max-width: 768px) {
    .image-left-container,
    .image-right-container {
      grid-template-columns: 1fr;
      gap: 20rem;
    }
    
    .two-images-container {
      grid-template-columns: 1fr;
      gap: 20rem;
    }

    .explore-more-container {
      grid-template-columns: 1fr;
    }

    .explore-more-left {
      padding-top: 0;
    }

    .related-products-grid {
      grid-template-columns: 1fr;
      gap: 30px;
    }
  }
/* END_SECTION:article-our-community */

/* START_SECTION:article-press-release (INDEX:6, SCOPED:FALSE) */
.article-press-release {
    width: 100%;
    margin: 0 auto;
    padding: 0 20rem;
    font-size: 13rem;
    margin-top: 120rem;
  }

  .article-press-release-header {
    text-align: center;
    margin-bottom: 40rem;
  }

  .article-press-release-header h1 {
    font-family: "Sigma Sans";
    font-size: 13rem;
    font-weight: 400;
    text-transform: uppercase;
    color: #333333;
    margin: 0;
  }

  .article-press-release-title-block {
    max-width: 800px;
    text-align: center;
    margin: 0 auto;
  }

  .article-press-release-title-block h3 {
    margin-bottom: 20rem;
  }

  .article-press-release-meta {
    text-align: center;
    margin-bottom: 40px;
  }

  .article-tags {
    font-size: 14rem;
    color: #666;
    margin-bottom: 1rem;
    font-family: "Sigma Sans";
    font-weight: 400;
  }

  .article-date {
    font-size: 14rem;
    color: #666;
    font-family: "Sigma Sans";
    font-weight: 400;
  }

  .article-press-release-cover {
    margin: 0 0 40px 0;
    max-width: 560rem;
    margin: 0 auto 40px auto;
  }

  .article-cover-image {
    width: 100%;
    height: auto;
    display: block;
  }

  .article-press-release-text-block {
    font-family: "Sigma Serif";
    font-size: 16rem;
    line-height: 24rem;
    color: #333333;
    max-width: 800rem;
    margin: 0 auto;
    margin-bottom: 60rem;
  }

  .image-left-container,
  .image-right-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    margin: 0 0 40px 0;
    align-items: start;
  }

  .image-left-image,
  .image-right-image {
    width: 100%;
  }

  .image-left-image img,
  .image-right-image img {
    width: 100%;
    height: auto;
    display: block;
  }

  .image-left-text,
  .image-right-text {
    font-family: "Sigma Serif";
    font-size: 16rem;
    line-height: 24rem;
    color: #333333;
  }

  .article-press-release-image-centered {
    text-align: center; /* centra il contenuto orizzontalmente */
    margin: 0 auto 40px auto; /* centra il blocco nel layout */
    max-width: 800rem; /* opzionale: un po' più largo per far respirare l'immagine */
  }

  .article-press-release-image-centered img {
    display: inline-block; /* evita di allinearsi al margine sinistro */
    margin: 0 auto;
    height: auto;
    max-width: 100%;
  }

  .article-press-release-image-full-width {
    margin: 0 auto 40px auto;
    max-width: 560rem;
  }

  .article-press-release-video-full-width {
    margin: 40rem 0;
    width: 100%;
  }

  .video-container {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%; /* 16:9 aspect ratio */
    overflow: hidden;
    box-shadow: 0 4rem 20rem rgba(0, 0, 0, 0.1);
  }

  .video-iframe,
  .video-element {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
  }

  .article-press-release-image-full-width img {
    width: 100%;
    height: auto;
    display: block;
  }

  /* Slideshow Styles */
  .slideshow {
    position: relative;
    margin: 0 0 40px 0;
  }

  .slideshow__container {
    position: relative;
    width: 100%;
    overflow: hidden;
  }

  .slideshow__wrapper {
    display: flex;
    transition: transform 0.3s ease;
  }

  .slideshow__slide {
    min-width: 100%;
    display: none;
  }

  .slideshow__slide--active {
    display: block;
  }

  .slideshow__image {
    width: 100%;
    height: auto;
    display: block;
  }

  .slideshow__arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(255, 255, 255, 0.8);
    border: none;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    z-index: 10;
  }

  .slideshow__arrow:hover {
    background: rgba(255, 255, 255, 1);
  }

  .slideshow__arrow--prev {
    left: 20px;
  }

  .slideshow__arrow--next {
    right: 20px;
  }

  .slideshow__dots {
    display: flex;
    justify-content: center;
    gap: 8px;
    margin-top: 20px;
  }

  .slideshow__dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    border: none;
    background: #ccc;
    cursor: pointer;
    transition: all 0.3s ease;
  }

  .slideshow__dot--active {
    background: #333;
  }

  .slideshow__dot:hover {
    background: #666;
  }

  /* Press Release Details Table */
  .press-release-details-table {
    max-width: 560rem;
    margin: 0 auto;
    margin-top: 60rem;
    border-top: 1px solid #333333b3;
  }

  .press-release-details-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20rem;
    padding: 8rem 0;
    border-bottom: 1px solid #333333b3;
  }

  .press-release-details-row:last-child {
    border-bottom: none;
  }

  .press-release-details-label {
    font-family: "Sigma Sans";
    font-size: 13rem;
    font-weight: 400;
    color: #333333;
    text-transform: uppercase;
    text-align: left;
  }

  .press-release-details-value {
    font-family: "Sigma Sans";
    font-size: 13rem;
    font-weight: 400;
    color: #333333;
    text-align: left;
  }

  /* Metadata Accordion */
  .metadata-accordion {
    position: relative;
    padding-top: 20px;
    padding-bottom: 20px;
    margin: 0 auto;
  }

  .metadata-toggle {
    background: transparent;
    border: none;
    padding: 0px 20px;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-family: "Sigma Sans", sans-serif;
    font-size: 13px;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 1px;
    transition: all 0.3s ease;
  }

  .metadata-toggle:hover {
    background: transparent;
  }

  .metadata-label {
    font-weight: 400;
    margin-right: 10px;
  }

  .metadata-plus {
    font-size: 13px;
    font-weight: 400;
    transition: all 0.3s ease;
  }

  .metadata-toggle.active .metadata-plus {
    content: "-";
  }

  .metadata-toggle.active .metadata-plus::before {
    content: "-";
  }

  .metadata-toggle:not(.active) .metadata-plus::before {
    content: "+";
  }

  .metadata-content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
    background: transparent;
  }

  .metadata-content.active {
    max-height: 200px;
  }

  .metadata-text {
    padding: 0px 20px;
    font-family: "Sigma Sans", sans-serif;
    font-size: 13px;
    line-height: 1.6;
    color: #333;
    white-space: pre-line;
  }

  .two-images-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
  }

  .two-images-image img {
    width: 100%;
    height: auto;
    display: block;
  }

  .article-press-release-text-centered {
    font-family: "Sigma Serif";
    font-size: 16rem;
    line-height: 24rem;
    color: #333333;
    text-align: center;
    margin: 0 0 40px 0;
  }

  .article-pr-link-block {
    max-width: 800rem;
    margin: 0 auto;
    padding-top: 2rem;
  }

  .external-link {
    font-family: "Sigma Sans";
    font-size: 14rem;
    font-weight: 500;
    text-transform: uppercase;
    color: #333333;
    text-decoration: none;
    letter-spacing: 0.5px;
    display: inline-flex;
    align-items: center;
    gap: 8rem;
    transition: color 0.3s ease;
  }

  .external-link:hover {
    color: #666666;
  }

  .link-arrow {
    font-size: 12rem;
    line-height: 1;
  }

  .explore-more-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    margin: 0 0 40px 0;
    align-items: center;
  }

  .explore-more-left h3 {
    font-family: "Sigma Sans";
    font-size: 13rem;
    font-weight: 400;
    text-transform: uppercase;
    color: #333333;
    margin: 0;
    letter-spacing: 0.5px;
  }

  .explore-more-right {
    display: flex;
    justify-content: flex-end;
  }

  .explore-more-card {
    width: calc(100% / 2);
    background-color: #FEFEFD;
    text-decoration: none;
    display: block;
    transition: transform 0.2s ease;
  }

  .explore-more-card:hover {
    transform: translateY(-2px);
  }

  .explore-more-image {
    width: 100%;
    aspect-ratio: 4/5;
    overflow: hidden;
  }

  .explore-more-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }


  .explore-more-content h4 {
    font-family: "Sigma Serif";
    font-size: 16rem;
    font-weight: 400;
    color: #333333;
    margin: 0 0 10px 0;
    line-height: 1.3;
    text-transform: uppercase;
  }

  .explore-more-content p {
    font-family: "Sigma Serif";
    font-size: 14rem;
    line-height: 18rem;
    color: #333333;
    margin: 0 0 15px 0;
  }

  @media (max-width: 768px) {
    .image-left-container,
    .image-right-container {
      grid-template-columns: 1fr;
      gap: 20px;
    }

    .two-images-container {
      grid-template-columns: 1fr;
      gap: 15px;
    }

    .explore-more-container {
      grid-template-columns: 1fr;
    }

    .explore-more-right {
      justify-content: center;
    }

    .explore-more-card {
      width: 100%;
    }
  }
/* END_SECTION:article-press-release */

/* START_SECTION:article-shooting-with-sigma (INDEX:7, SCOPED:FALSE) */
.article-shooting-with-sigma {
    width: 100%;
    margin: 0 auto;
    padding: 160rem 20rem;
    font-size: 1rem;
  }

    /* Spaziatura verticale uniforme tra tutti i blocchi articolo */
  .article-shooting-with-sigma > *:not(:last-child) {
  margin-bottom: clamp(30rem, 6vw, 60rem);
}

  .article-shooting-with-sigma-header h1 {
    font-family: "Sigma Serif";
    font-size: 48rem;
    font-weight: 400;
    text-transform: uppercase;
    color: #333333;
    margin: 0 0 40px 0;
    letter-spacing: -1rem;
    text-align: center;
  }

  .article-shooting-with-sigma-title-block h3 {
    margin: 0 0 20rem 0;
    text-align: center;
  }

  .article-shooting-with-sigma-title-block {
    max-width: 800px;
    margin:0 auto;
  }

  .article-shooting-with-sigma-cover {
    margin:0 auto;
  }

  .article-cover-image {
    width: 100%;
    height: auto;
    display: block;
  } 
  
  /* testo sotto immagini */
  .cover-text p,
  .image-centered__text p,
  .image_full_width__text p,
  .two-images-centered__text p {
    font-family: var(--font-primary);
    font-size: var(--p-size);
    color: var(--text-dark);
    line-height: 1.5;
    text-align: left;
    margin: 20rem auto 0;
    width: 100%;
    padding-left: 0;
    padding-right: 0;
    box-sizing: border-box;
    }

  .article-shooting-with-sigma-text-block {
    font-family: var(--font-secondary);
    font-size: var(--p-size);
    line-height: 24rem;
    color: var(--text-dark);
    max-width: 800rem;
    margin: 0 auto;
  }

    .article-shooting-with-sigma-text-block a {
      text-decoration: none;
      color: var(--text-dark);
      font-family: var(--font-primary);
  }

  .image-left-container,
  .image-right-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    margin: 0 auto;
    align-items: start;
  }

  .image-left-image,
  .image-right-image {
    width: 100%;
  }

  .image-left-image img,
  .image-right-image img {
    width: 100%;
    height: auto;
    display: block;
  }

  .image-left-text,
  .image-right-text {
    font-family: "Sigma Serif";
    font-size: 16rem;
    line-height: 24rem;
    color: #333333;
  }

  .article-shooting-with-sigma-image-centered {
    display: flex;
    flex-direction: column;
    align-items: center; /* centra orizzontalmente tutto il blocco */
    max-width: 800px;
    margin: 0 auto;
    padding: 0;
  }

  .article-shooting-with-sigma-image-centered img {
    width: 100%;
    height: auto;
    display: block;
  }

  .article-shooting-with-sigma-image-centered .metadata-accordion {
    width: 100%; /* prende la stessa larghezza dell’immagine */
    text-align: left; /* testo a sinistra */
  }

  .article-centered-video {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .centered-video__wrapper {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
  }

  .centered-video__iframe,
  .centered-video__video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
    display: block;
  }

  .centered-video__text {
    font-family: "Sigma Serif";
    font-size: 16rem;
    color: #333;
    line-height: 1.5;
    text-align: left;
    margin-top: 20rem;
    width: 100%;
    padding-left: 0;
    padding-right: 0;
    box-sizing: border-box;
  }


  .article-two-images-centered {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 0 auto;
  }

  .two-images-centered__text,
  .two-images-centered__metadata {
    width: 100%;
    max-width: 800rem;
    margin-top: 20rem;
    text-align: left;
  }

  .article-shooting-with-sigma-image-full-width {
    margin: 0 auto;
  }

  .article-shooting-with-sigma-video-full-width {
    margin: 0 auto;
    width: 100%;
  }

  .video-container {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%; /* 16:9 aspect ratio */
    overflow: hidden;
    box-shadow: 0 4rem 20rem rgba(0, 0, 0, 0.1);
  }

  .video-iframe,
  .video-element {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
  }

  .article-shooting-with-sigma-image-full-width img {
    width: 100%;
    height: auto;
    display: block;
  }

  /* Metadata Accordion */
  .metadata-accordion {
    position: relative;
    padding-top: 20px;
    padding-bottom: 20px;
    margin:0 auto;
  }

  .metadata-toggle {
    background: transparent;
    border: none;
    padding: 0px 20px;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-family: "Sigma Sans", sans-serif;
    font-size: 13px;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 1px;
    transition: all 0.3s ease;
  }

  .metadata-toggle:hover {
    background: transparent;
  }

  .metadata-label {
    font-weight: 400;
    margin-right: 10px;
    color: #333333;
  }

  .metadata-plus {
    font-size: 13px;
    font-weight: 400;
    transition: all 0.3s ease;
  }

  .metadata-toggle.active .metadata-plus {
    content: "-";
  }

  .metadata-toggle.active .metadata-plus::before {
    content: "-";
  }

  .metadata-toggle:not(.active) .metadata-plus::before {
    content: "+";
  }

  .metadata-content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
    background: transparent;
  }

  .metadata-content.active {
    max-height: 200px;
  }

  .metadata-text {
    padding: 8rem 20rem;
    font-family: "Sigma Sans";
    font-size: 13rem;
    line-height: 1.6;
    color: #333;
    white-space: pre-line;
  }

  .two-images-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
  }

  .two-images-image img {
    width: 100%;
    height: auto;
    display: block;
  }

  /* Three Images Full Width */
  .article-shooting-with-sigma-three-images-full-width {
    width: 100%;
    margin: 0 auto;
  }

  .three-images-full-width-container {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    width: 100%;
    margin: 0 auto;
  }

  .three-images-full-width-item {
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .three-images-full-width-item img {
    width: 100%;
    height: auto;
    display: block;
  }

  /* Allinea i metadata sotto ogni immagine */
  .three-images-full-width-item .metadata-accordion {
    width: 100%;
    text-align: left;
  }

  .article-shooting-with-sigma-text-centered {
    text-align: center;
  }

  .text-centered-content {
    font-family: "Sigma Serif";
    font-size: 16rem;
    line-height: 24rem;
    color: #333333;
    max-width: 800rem;
    margin: 0 auto;
  }

    .article-link-block {
    display: flex;
    flex-direction: column;
    align-items: left;
    max-width: 800rem;
    gap: 12rem;
    }

    .article-link-block a {
    font-size: var(--p-size);
    font-weight: 400;
    }


  .external-link {
    font-family: "Sigma Sans";
    font-size: 14rem;
    font-weight: 500;
    text-transform: uppercase;
    color: #333333;
    text-decoration: none;
    letter-spacing: 0.5px;
    display: inline-flex;
    gap: 8rem;
    transition: color 0.3s ease;
  }

  .external-link:hover {
    color: #666666;
  }

  .link-arrow {
    font-size: 12rem;
    line-height: 1;
  }

  .explore-more-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    margin: 0 auto;
    align-items: center;
  }

  .explore-more-left h3 {
    font-family: "Sigma Sans";
    font-size: 13rem;
    font-weight: 400;
    text-transform: uppercase;
    color: #333333;
    margin: 0;
    letter-spacing: 0.5px;
  }

  .explore-more-right {
    display: flex;
    justify-content: flex-end;
    gap: 20rem;
  }

  .explore-more-card {
    flex: 1;
    background-color: #FEFEFD;
    text-decoration: none;
    display: block;
    transition: transform 0.2s ease;
  }

  .explore-more-card:hover {
    transform: translateY(-2px);
  }

  .explore-more-image {
    width: 100%;
    aspect-ratio: 4/5;
    overflow: hidden;
  }

  .explore-more-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .explore-more-content {
    margin-top: 12rem;
  }

  .explore-more-content p {
    text-transform: uppercase;
    margin: 0 auto;
  }

  /* Related Products */
  .article-shooting-with-sigma-related-products {
    margin: 0 auto;
  }

  .related-products-header {
    text-align: center;
    margin: 0 auto;
  }

  .related-products-header h3 {
    font-size: var(--p-size);
    margin: 0;
  }

  .related-products-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px;
  }

  .related-product-card {
    display: flex;
    flex-direction: column;
    text-align: left;
  }

  .related-product-image {
    width: 100%;
    aspect-ratio: 3/4;
    overflow: hidden;
    margin:0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .related-product-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
  }

  .related-product-content {
    display: flex;
    flex-direction: column;
    gap: 8px;
  }

  .related-product-line {
    font-family: "Sigma Serif";
    font-size: 16rem;
    font-weight: 400;
    color: #333333;
    text-transform: uppercase;
    margin: 0;
  }

  .related-product-title {
    font-family: "Sigma Serif";
    font-size: 16rem;
    font-weight: 400;
    color: #333333;
    margin: 0;
  }

  .related-product-description {
    font-family: "Sigma Serif";
    font-size: 14rem;
    line-height: 20rem;
    color: #333333;
    margin: 10px 0;
    text-align: left;
  }

  .related-product-link {
    font-family: "Sigma Sans";
    font-size: 13rem;
    font-weight: 400;
    text-transform: uppercase;
    color: #333333;
    text-decoration: none;
    letter-spacing: 0.5px;
    align-self: flex-start;
    margin-top: 10px;
    transition: opacity 0.3s ease;
  }

  .related-product-link:hover {
    opacity: 0.7;
  }



  @media (max-width: 768px) {
    .image-left-container,
    .image-right-container {
      grid-template-columns: 1fr;
      gap: 20px;
    }

    .two-images-container {
      grid-template-columns: 1fr;
      gap: 15px;
    }

    .three-images-full-width-container {
    grid-template-columns: 1fr;
    gap: 20px;
    }

    .explore-more-container {
      grid-template-columns: 1fr;
    }

    .explore-more-right {
      justify-content: center;
      flex-direction: column;
      align-items: stretch;
    }

    .explore-more-card {
      width: 100%;
    }

    .related-products-grid {
      grid-template-columns: 1fr;
      gap: 30px;
    }
  }
/* END_SECTION:article-shooting-with-sigma */

/* START_SECTION:blog-art-projects (INDEX:9, SCOPED:FALSE) */
.blog-art-projects {
    width: 100%;
    margin: 0 auto;
    padding: 0 20px;
    font-size: 13rem;
  }

  .blog-art-projects-header {
    text-align: center;
  }

  .blog-art-projects-description {
    max-width: 800rem;
    margin: 0 auto;
    padding-top: 40rem;
  }

  .blog-art-projects-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300rem, 1fr));
    gap: 16rem;
    margin-top: 120rem;
    margin-bottom: 80rem;
    margin-left: auto;
    margin-right: auto;
  }

  .blog-art-projects-item {
    display: flex;
    flex-direction: column;
    background-color: #FEFEFD;
    text-decoration: none;
    color: inherit;
    cursor: pointer;
  }

  .blog-art-projects-image {
    width: 100%;
    aspect-ratio: 4/5;
    overflow: hidden;
  }

  .article-grid-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .blog-art-projects-content {
    padding: 20rem 0rem;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
  }

  .blog-art-projects-article-title {
    font-family: "Sigma Serif";
    font-size: 16rem;
    font-weight: 400;
    color: #333333;
    margin: 0 0 15px 0;
    line-height: 1.3;
    text-transform: uppercase;
  }



  .blog-art-projects-excerpt {
    font-family: "Sigma Serif";
    font-size: 16rem;
    line-height: 20rem;
    color: #333333;
    margin-bottom: 20rem;
    flex-grow: 1;
  }

  .blog-art-projects-read-more {
    font-family: "Sigma Sans";
    font-size: 13rem;
    font-weight: 500;
    text-transform: uppercase;
    color: #333333;
    text-decoration: none;
    letter-spacing: 0.5px;
    align-self: flex-start;
  }

  .blog-art-projects-pagination {
    text-align: center;
    margin-top: 40px;
  }

  @media (max-width: 1024px) {
    .blog-art-projects-grid {
      grid-template-columns: repeat(2, 1fr);
      gap: 30px;
    }
  }

  @media (max-width: 768px) {
    .blog-art-projects-grid {
      grid-template-columns: 1fr;
      gap: 25px;
    }
  }
/* END_SECTION:blog-art-projects */

/* START_SECTION:blog-our-community (INDEX:10, SCOPED:FALSE) */
.blog-our-community {
    width: 100%;
    margin: 0 auto;
    font-size: 13rem;
  }


  .blog-our-community-header {
    text-align: center;
  }

  .blog-our-community-description {
    max-width: 800rem;
    margin: 0 auto;
    padding-top: 40rem;
  }

  .blog-our-community-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 40px;
    margin-top: 120rem;
  }

  .blog-our-community-item {
    display: flex;
    flex-direction: column;
    background-color: #FEFEFD;;

  }

  .blog-our-community-image {
    width: 100%;
    aspect-ratio: 4/5;
    overflow: hidden;
  }

  .article-grid-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .blog-our-community-content {
    padding: 20rem 0rem;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
  }

  .blog-our-community-article-title {
    font-family: "Sigma Serif";
    font-size: 16rem;
    font-weight: 400;
    color: #333333;
    margin: 0 0 15px 0;
    line-height: 1.3;
    text-transform: uppercase;
  }



  .blog-our-community-excerpt {
    font-family: "Sigma Serif";
    font-size: 16rem;
    line-height: 20rem;
    color: #333333;
    margin-bottom: 20rem;
    flex-grow: 1;
  }

  .blog-our-community-read-more {
    font-family: "Sigma Sans";
    font-size: 13rem;
    font-weight: 500;
    text-transform: uppercase;
    color: #333333;
    text-decoration: none;
    letter-spacing: 0.5px;
    align-self: flex-start;
  }

  .blog-our-community-pagination {
    text-align: center;
    margin-top: 40px;
  }

  @media (max-width: 1024px) {
    .blog-our-community-grid {
      grid-template-columns: repeat(2, 1fr);
      gap: 30px;
    }
  }

  @media (max-width: 768px) {
    .blog-our-community-grid {
      grid-template-columns: 1fr;
      gap: 25px;
    }
  }
/* END_SECTION:blog-our-community */

/* START_SECTION:blog-shooting-with-sigma (INDEX:11, SCOPED:FALSE) */
.blog-shooting-with-sigma {
    width: 100%;
    margin: 0 auto;
    padding: 0 20px;
    font-size: 13rem;
    margin-top: 120rem;
  }

  .blog-shooting-with-sigma-header {
    text-align: center;
  }

  .blog-shooting-with-sigma-description {
    max-width: 800rem;
    margin: 0 auto;
    padding-top: 40rem;
  }

  .related-products-list {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 10rem;
  }

  .related-product-item {
    font-family: "Sigma Serif";
    font-size: 16rem;
    color: #333333;
    display: flex;
    flex-direction: column;
  
  }

  .related-product-item-line {
    text-transform: uppercase;
  }


  .blog-shooting-with-sigma-filters {
    margin-bottom: 60px;
  }

  .filter-container {
    display: flex;
    justify-content: center;
    gap: 40px;
    flex-wrap: wrap;
  }

  .filter-link {
    font-family: "Sigma Sans";
    font-size: 14rem;
    font-weight: 500;
    text-transform: uppercase;
    color: #666666;
    text-decoration: none;
    letter-spacing: 0.5px;
    padding: 10px 0;
    border: none;
    background: none;
    cursor: pointer;
    border-bottom: 2px solid transparent;
    transition: all 0.3s ease;
  }

  .filter-link:hover {
    color: #333333;
  }

  .filter-link.active {
    color: #333333;
    border-bottom-color: #333333;
  }

  .blog-shooting-with-sigma-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20rem;
    margin-bottom: 60rem;
    margin-top: 120rem;
  }

  .blog-shooting-with-sigma-item {
    display: flex;
    flex-direction: column;
    background-color: #FEFEFD;
    text-decoration: none;
    color: inherit;
    cursor: pointer;
  }


  .blog-shooting-with-sigma-item.hidden {
    opacity: 0;
    transform: scale(0.95);
    pointer-events: none;
  }

  .blog-shooting-with-sigma-image {
    width: 100%;
    aspect-ratio: 4/5;
    overflow: hidden;
  }

  .article-grid-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .blog-shooting-with-sigma-content {
    padding: 20rem 0rem;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
  }

  .blog-shooting-with-sigma-article-title {
    font-family: "Sigma Serif";
    font-size: 16rem;
    font-weight: 400;
    color: #333333;
    margin: 0 0 15px 0;
    line-height: 1.3;
    text-transform: uppercase;
  }

  .blog-shooting-with-sigma-excerpt {
    font-family: "Sigma Serif";
    font-size: 16rem;
    line-height: 20rem;
    color: #333333;
    margin-bottom: 20rem;
    flex-grow: 1;
  }

  .blog-shooting-with-sigma-read-more {
    font-family: "Sigma Sans";
    font-size: 13rem;
    font-weight: 500;
    text-transform: uppercase;
    color: #333333;
    text-decoration: none;
    letter-spacing: 0.5px;
    align-self: flex-start;
  }

  .blog-shooting-with-sigma-related-products {
    margin-top: 15rem;
  }

 

  .blog-shooting-with-sigma-pagination {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 40px;
    font-size: 13rem;
    width: 100%;
  }

  .pagination-numbers {
    display: flex;
    gap: 0.5rem;
    align-items: center;
    justify-content: center;
    flex: 1;
  }

  .pagination-arrow,
  .pagination-number {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #333333b3;
    text-decoration: none;
    color: #333;
    border-radius: 0;
    transition: all 0.2s;
    font-size: 13rem;
    font-family: "Sigma Sans";
  }

  .pagination-arrow:hover,
  .pagination-number:hover {
    background-color: #f0f0f0;
  }

  .pagination-arrow.disabled {
    opacity: 0.3;
    pointer-events: none;
  }

  .pagination-number.active {
    background-color: #333;
    color: white;
    border-color: #333;
  }

  @media (max-width: 1024px) {
    .blog-shooting-with-sigma-grid {
      grid-template-columns: repeat(2, 1fr);
      gap: 30px;
    }
    
    .filter-container {
      gap: 30px;
    }
  }

  @media (max-width: 768px) {
    .blog-shooting-with-sigma-grid {
      grid-template-columns: 1fr;
      gap: 25px;
    }
    
    .filter-container {
      gap: 20px;
      flex-direction: column;
      align-items: center;
    }
    
    .filter-link {
      font-size: 12rem;
    }
  }
/* END_SECTION:blog-shooting-with-sigma */

/* START_SECTION:cart-drawer (INDEX:13, SCOPED:FALSE) */
/* Cart Drawer Styles */
  .cart-drawer {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 9999;
    display: none;
  }

  .cart-drawer.cart-drawer--open {
    display: block;
  }

  .cart-drawer__overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    opacity: 0;
    transition: opacity 0.3s ease;
  }

  .cart-drawer--open .cart-drawer__overlay {
    opacity: 1;
  }

  .cart-drawer__content {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    max-width: 480rem;
    height: 100%;
    background-color: #ffffff;
    transform: translateX(100%);
    transition: transform 0.3s ease;
    display: flex;
    flex-direction: column;
    box-shadow: -2px 0 10px rgba(0, 0, 0, 0.1);
  }

  .cart-drawer--open .cart-drawer__content {
    transform: translateX(0);
  }

  .cart-drawer__header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 24rem 24rem 16rem 24rem;
    border-bottom: 1px solid #e0e0e0;
    flex-shrink: 0;
  }

  .cart-drawer__title {
    font-family: var(--font-primary);
    font-size: var(--p-size);
    font-weight: 400;
    color: var(--text-dark);
    margin: 0;
    text-transform: uppercase;
    letter-spacing: var(--p-line);
  }

  .cart-drawer__close {
    background: none;
    border: none;
    padding: 8rem;
    cursor: pointer;
    color: #666666;
    transition: color 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .cart-drawer__close:hover {
    color: #333333;
  }

  .cart-drawer__body {
    flex: 1;
    padding: 24rem;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
  }

  .cart-drawer__form {
    display: flex;
    flex-direction: column;
    flex: 1;
  }

  .cart-drawer__items {
    flex: 1;
    margin-bottom: 24rem;
  }

  .cart-drawer__item {
    display: flex;
    gap: 16rem;
    padding: 16rem 0;
    border-bottom: 1px solid #f0f0f0;
  }

  .cart-drawer__item:last-child {
    border-bottom: none;
  }

  .cart-drawer__item-image {
    width: 80rem;
    height: 80rem;
    overflow: hidden;
    border-radius: 4rem;
    flex-shrink: 0;
  }

  .cart-drawer__item-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .cart-drawer__item-placeholder {
    width: 100%;
    height: 100%;
    background-color: #f5f5f5;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .cart-drawer__item-placeholder-text {
    font-family: "Sigma Sans";
    font-size: 10rem;
    color: #999999;
    text-transform: uppercase;
  }

  .cart-drawer__item-details {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 12rem;
  }

  .cart-drawer__item-info {
    flex: 1;
  }

  .cart-drawer__item-title {
    font-family: "Sigma Serif";
    font-size: 14rem;
    font-weight: 400;
    color: #333333;
    margin: 0 0 4rem 0;
    line-height: 1.3;
  }

  .cart-drawer__item-link {
    color: #333333;
    text-decoration: none;
  }

  .cart-drawer__item-link:hover {
    text-decoration: underline;
  }

  .cart-drawer__item-variant {
    font-family: "Sigma Sans";
    font-size: 12rem;
    color: #666666;
    margin: 0 0 8rem 0;
    text-transform: uppercase;
    letter-spacing: 0.5px;
  }

  .cart-drawer__item-properties {
    margin-bottom: 8rem;
  }

  .cart-drawer__item-property {
    display: flex;
    gap: 8rem;
    margin-bottom: 4rem;
  }

  .cart-drawer__item-property-name {
    font-family: "Sigma Sans";
    font-size: 11rem;
    color: #666666;
    text-transform: uppercase;
    letter-spacing: 0.5px;
  }

  .cart-drawer__item-property-value {
    font-family: "Sigma Serif";
    font-size: 11rem;
    color: #333333;
  }

  .cart-drawer__item-property-link {
    color: #333333;
    text-decoration: none;
  }

  .cart-drawer__item-property-link:hover {
    text-decoration: underline;
  }

  .cart-drawer__item-actions {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 16rem;
  }

  .cart-drawer__item-quantity {
    display: flex;
    flex-direction: column;
    gap: 8rem;
  }

  .cart-drawer__quantity-controls {
    display: flex;
    align-items: center;
    border: 1px solid #e0e0e0;
    border-radius: 4rem;
    overflow: hidden;
  }

  .cart-drawer__quantity-btn {
    background-color: #ffffff;
    border: none;
    padding: 6rem 10rem;
    font-family: "Sigma Sans";
    font-size: 12rem;
    color: #333333;
    cursor: pointer;
    transition: background-color 0.3s ease;
    min-width: 28rem;
  }

  .cart-drawer__quantity-btn:hover {
    background-color: #f5f5f5;
  }

  .cart-drawer__quantity-input {
    border: none;
    padding: 6rem 8rem;
    font-family: "Sigma Serif";
    font-size: 12rem;
    color: #333333;
    text-align: center;
    width: 40rem;
    background-color: #ffffff;
  }

  .cart-drawer__quantity-input:focus {
    outline: none;
  }

  .cart-drawer__item-price {
    text-align: right;
  }

  .cart-drawer__item-price-line {
    display: flex;
    flex-direction: column;
    gap: 2rem;
  }

  .cart-drawer__item-price-original {
    font-family: "Sigma Serif";
    font-size: 12rem;
    color: #999999;
    text-decoration: line-through;
  }

  .cart-drawer__item-price-final {
    font-family: "Sigma Serif";
    font-size: 14rem;
    font-weight: 400;
    color: #333333;
  }

  .cart-drawer__item-remove {
    display: flex;
    align-items: center;
  }

  .cart-drawer__remove-btn {
    font-family: "Sigma Sans";
    font-size: 11rem;
    color: #d32f2f;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: color 0.3s ease;
  }

  .cart-drawer__remove-btn:hover {
    color: #b71c1c;
    text-decoration: underline;
  }

  .cart-drawer__summary {
    margin-bottom: 24rem;
    padding-top: 16rem;
    border-top: 1px solid #e0e0e0;
  }

  .cart-drawer__summary-line {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 8rem 0;
  }

  .cart-drawer__summary-line--discount {
    color: #2e7d32;
  }

  .cart-drawer__summary-label {
    font-family: "Sigma Sans";
    font-size: 13rem;
    color: #333333;
    text-transform: uppercase;
    letter-spacing: 0.5px;
  }

  .cart-drawer__summary-value {
    font-family: "Sigma Serif";
    font-size: 13rem;
    color: #333333;
    font-weight: 400;
  }

  .cart-drawer__actions {
    display: flex;
    flex-direction: column;
    gap: 12rem;
    margin-top: auto;
  }

  .cart-drawer__checkout-btn {
    background-color: #333333;
    color: #ffffff;
    border: none;
    padding: 16rem 20rem;
    font-family: "Sigma Sans";
    font-size: 13rem;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-radius: 4rem;
    cursor: pointer;
    transition: background-color 0.3s ease;
  }

  .cart-drawer__checkout-btn:hover {
    background-color: #555555;
  }

  .cart-drawer__update-btn {
    background-color: #ffffff;
    color: #333333;
    border: 1px solid #333333;
    padding: 12rem 20rem;
    font-family: "Sigma Sans";
    font-size: 13rem;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-radius: 4rem;
    cursor: pointer;
    transition: all 0.3s ease;
  }

  .cart-drawer__update-btn:hover {
    background-color: #f5f5f5;
  }

  .cart-drawer__empty {
    text-align: center;
    padding: 40rem 20rem;
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .cart-drawer__empty-content {
    max-width: 300rem;
  }

  .cart-drawer__empty-title {
    font-family: "Sigma Serif";
    font-size: 24rem;
    font-weight: 400;
    color: #333333;
    margin: 0 0 16rem 0;
  }

  .cart-drawer__empty-text {
    font-family: "Sigma Serif";
    font-size: 14rem;
    color: #666666;
    margin: 0 0 24rem 0;
    line-height: 1.5;
  }

  .cart-drawer__empty-btn {
    display: inline-block;
    background-color: #333333;
    color: #ffffff;
    text-decoration: none;
    padding: 12rem 24rem;
    font-family: "Sigma Sans";
    font-size: 13rem;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: background-color 0.3s ease;
  }

  .cart-drawer__empty-btn:hover {
    background-color: #555555;
  }

  /* Mobile Responsive */
  @media (max-width: 768px) {
    .cart-drawer__content {
      max-width: 100%;
    }

    .cart-drawer__header {
      padding: 20rem 20rem 16rem 20rem;
    }

    .cart-drawer__body {
      padding: 20rem;
    }

    .cart-drawer__item {
      gap: 12rem;
      padding: 12rem 0;
    }

    .cart-drawer__item-image {
      width: 60rem;
      height: 60rem;
    }

    .cart-drawer__item-actions {
      flex-direction: column;
      align-items: flex-start;
      gap: 12rem;
    }

    .cart-drawer__item-price {
      text-align: left;
    }
  }

  /* Prevent body scroll when drawer is open */
  body.cart-drawer-open {
    overflow: hidden;
  }
/* END_SECTION:cart-drawer */

/* START_SECTION:collection (INDEX:15, SCOPED:FALSE) */
.collection-products {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(500px, 1fr));
  }
/* END_SECTION:collection */

/* START_SECTION:collections (INDEX:16, SCOPED:FALSE) */
.collections {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(min(var(--collection-card-size), 100%), 1fr));
    gap: var(--grid-gap);
  }
  .collections--compact {
    --collection-card-size: 160px;
  }
  .collections--full {
    --collection-card-size: 280px;
  }
  .collection-card {
    display: flex;
    flex-direction: column;
    width: 100%;
  }
/* END_SECTION:collections */

/* START_SECTION:compare (INDEX:17, SCOPED:FALSE) */
.compare-page {
  width: 100%;
  margin: 0 auto;
  padding: 0 20rem;
  font-family: var(--font-primary);
  margin-top: 120rem;
}

.compare-page-header {
  text-align: center;
  margin-bottom: 80rem;
}

/* wrapper del select */
.compare-select {
  position: relative;
}

.compare-selects {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20rem;
  margin-bottom: 60rem;
}

.compare-select-label {
  display: block;
  font-family: var(--font-primary);
  font-size: var(--p-small-size);
  margin-bottom: 8rem;
}

/* nascondo la freccia nativa e aggiungo padding a destra */
.compare-select-input {
  width: 100%;
  background-color: #fefefd;
  border: 1px solid #333333;
  height: 44rem;
  padding-left: 12rem;
  font-family: var(--font-primary);
  font-size: var(--p-small-size);

/* togliamo la freccia nativa */
  appearance: none !important;
}

/* freccia custom */
.compare-select::after {
  content: "";
  position: absolute;
  border-right: 1px solid #333;
  border-bottom: 1px solid #333;
  pointer-events: none;

  width: 8rem;
  height: 8rem;
  right: 20rem;
  
  /* centrata verticalmente */
  top: 50%;                     
  transform: translateY(50%) rotate(45deg);
}

input, textarea, select {
 border-radius: 0;
}

.compare-select-input:focus {
  outline: none;              /* togli l'outline blu nativo */
  border: 2px solid #2563eb;
  border-radius: 0;           /* rimane perfettamente squadrato */
}

.compare-columns {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 40rem;
  align-items: flex-start;
}

.compare-data-pool {
  display: none;
}

.compare-product-card {
  display: flex;
  flex-direction: column;
  gap: 20rem;
}

.compare-product-header {
  padding-bottom: 16rem;
  border-bottom: 1px solid #333333;
}

.compare-product-line,
.compare-product-name {
  font-family: var(--font-secondary);
  font-size: var(--p-size);
  text-transform: uppercase;
  margin-bottom: 4rem;
}

.compare-product-image {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.compare-product-image img {
  width: 100%;
  height: auto;
  object-fit: contain;
}

.compare-product-specs {
  margin-top: 32rem;
}

.compare-spec-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
}

.compare-spec-item {
  border-top: 1px solid #333333;
  padding: 16rem 0;
}


.compare-spec-label {
  display: block;
  font-family: var(--font-primary);
  font-size: var(--p-small-size);
  color: var(--text-dark);
  text-transform: uppercase;
  margin-bottom: 12rem;
}

.compare-spec-value {
  display: block;
  font-family: var(--font-primary);
  font-size: var(--p-small-size);
  color: var(--text-dark);
}

/* eventuale link dentro il value */
.compare-spec-link {
  font-family: var(--font-primary);
  font-size: var(--p-small-size);
  color: var(--text-dark);
  text-decoration: underline;
}

.compare-product-footer {
  margin-top: 20rem;
}

.compare-product-footer {
  margin-top: 20rem;
}

.compare-product-link {
  display: inline-block;
  width: 100%;
  font-family: var(--font-primary);
  font-size: var(--p-small-size);
  text-align: center;
  text-transform: uppercase;
  text-decoration: none;
  letter-spacing: 0.08rem;
  padding: 10rem 24rem;
  background: #333333;
  color: #ffffff;
  transition: opacity 0.2s ease;
}

.compare-product-link:hover {
  opacity: 0.85;
}

/* tablet e mobile */
@media (max-width: 1024px) {
  /* le colonne del confronto diventano 2 */
  .compare-columns {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  /* i select diventano 2, il terzo viene nascosto */
  .compare-selects {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  /* nascondi il terzo select e la terza colonna */
  .compare-select:nth-child(3),
  .compare-column[data-slot="3"] {
    display: none;
  }
}

/* solo mobile: i due select vanno a tutta larghezza uno sotto l altro */
@media (max-width: 768px) {
  .compare-selects {
    grid-template-columns: 1fr;
  }
}
/* END_SECTION:compare */

/* START_SECTION:contact-form (INDEX:18, SCOPED:FALSE) */
.contact-us-wrapper {
  max-width: 600rem;
  margin: 0 auto;
  margin-top: 120rem;
  font-family: var(--font-primary);
}

.contact-us-header {
  text-align: center;
  margin-bottom: 60rem;
}

.support-label {
  font-family: var(--font-primary);
  font-size: var(--p-size);
  color: #666;
  margin: 0 0 20rem 0;
  letter-spacing: 1rem;
}

.contact-us-title {
  margin: 0;
}

.contact-us-form {
  display: flex;
  flex-direction: column;
  gap: 30rem;
}

.form-group {
  display: flex;
  flex-direction: column;
}

.form-group label {
  font-size: 14rem;
  color: #333;
  margin-bottom: 8rem;
  font-weight: 400;
}

.form-group input,
.form-group textarea {
  border: 1px solid #333;
  padding: 12rem;
  font-size: 16rem;
  font-family: inherit;
  background: rgba(255, 255, 255, 0);
  border-radius: 0;
  margin-bottom: 20rem;
  transition: border-color 0.3s ease, box-shadow 0.3s ease;
}

.form-group input:focus,
.form-group textarea:focus {
  outline: none;
  border-color: #333;
  background: rgba(255, 255, 255, 0);
  box-shadow: 0 0 0 2px rgba(51, 51, 51, 0.1);
}

.form-group--error input,
.form-group--error textarea {
  border-color: #dc3545;
  box-shadow: 0 0 0 2px rgba(220, 53, 69, 0.1);
}

.form-group--error input:focus,
.form-group--error textarea:focus {
  border-color: #dc3545;
  box-shadow: 0 0 0 2px rgba(220, 53, 69, 0.2);
}

.form-group textarea {
  resize: vertical;
  min-height: 120rem;
}

.checkbox-group {
  flex-direction: row;
  align-items: flex-start;
  gap: 10rem;
}

.checkbox-group input[type="checkbox"] {
  width: 18rem;
  height: 18rem;
  margin: 0;
  flex-shrink: 0;
  margin-top: 2rem;
}

.checkbox-group label {
  margin: 0;
  font-size: 14rem;
  color: #666;
  line-height: 1.4;
}

.contact-submit-btn {
  background: #333;
  color: white;
  border: none;
  padding: 15rem 30rem;
  font-size: 13rem;
  font-family: inherit;
  cursor: pointer;
  text-transform: uppercase;
  letter-spacing: 1rem;
  transition: background-color 0.3s ease;
  margin-top: 20rem;
  width: 100%;
  text-align: center;
}

.contact-submit-btn:hover:not(:disabled) {
  background: #555;
}

.contact-submit-btn:disabled {
  background: #999;
  cursor: not-allowed;
  opacity: 0.7;
}

.form-success {
  background: #d4edda;
  border: 1px solid #c3e6cb;
  color: #155724;
  padding: 15rem;
  margin-top: 20rem;
  border-radius: 4rem;
}

.form-success p {
  margin: 0;
  font-size: 14rem;
}

.form-errors {
  background: #f8d7da;
  border: 1px solid #f5c6cb;
  color: #721c24;
  padding: 15rem;
  margin-top: 20rem;
  border-radius: 4rem;
}

.form-error-title {
  margin: 0 0 10rem 0;
  font-size: 16rem;
  font-weight: 600;
}

.form-error-list {
  margin: 0;
  padding-left: 20rem;
}

.form-error-list li {
  margin-bottom: 5rem;
}

.form-error-link {
  color: #721c24;
  text-decoration: underline;
}

.field-error {
  display: block;
  color: #dc3545;
  font-size: 12rem;
  margin-top: 5rem;
  margin-bottom: 10rem;
}

.privacy-link {
  text-align: center;
  margin-top: 40rem;
}

.privacy-link a {
  color: #666;
  text-decoration: none;
  font-size: 14rem;
  letter-spacing: 0.5rem;
  transition: color 0.3s ease;
}

.privacy-link a:hover {
  color: #333;
}

.contact-us-info {
  font-size: 16rem;
  color: #333;
  margin-top: 40rem;
  text-align: left;
  font-family: Sigma Serif;
}

.contact-us-info-title {
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.3px;
}

.contact-us-info p {
  margin-bottom: 20rem;
}


@media (max-width: 768px) {
  .contact-us-wrapper {
    padding: 40rem 15rem;
  }
  
  .contact-us-header {
    margin-bottom: 40rem;
  }
  
  .contact-us-title {
    font-size: 36rem;
  }
  
  .form-group {
    gap: 20rem;
  }
  
  .form-group input,
  .form-group textarea {
    padding: 14rem;
    font-size: 16rem;
    margin-bottom: 15rem;
  }
  
  .checkbox-group {
    flex-direction: column;
    align-items: flex-start;
    gap: 8rem;
  }
  
  .checkbox-group input[type="checkbox"] {
    margin-top: 0;
  }
  
  .contact-submit-btn {
    padding: 18rem 30rem;
    font-size: 14rem;
  }
  
  .contact-us-info {
    font-size: 14rem;
    margin-top: 30rem;
  }
  
  .contact-us-info p {
    margin-bottom: 15rem;
  }
}

@media (max-width: 480px) {
  .contact-us-wrapper {
    padding: 30rem 10rem;
  }
  
  .contact-us-title {
    font-size: 28rem;
  }
  
  .form-group input,
  .form-group textarea {
    padding: 12rem;
    font-size: 16rem;
  }
  
  .contact-submit-btn {
    padding: 16rem 20rem;
  }
  
  .form-errors,
  .form-success {
    padding: 12rem;
    margin-top: 15rem;
  }
}
/* END_SECTION:contact-form */

/* START_SECTION:custom-section (INDEX:19, SCOPED:FALSE) */
.custom-section {
    position: relative;
    overflow: hidden;
    width: 100%;
  }
  .custom-section__background {
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: -1;
    overflow: hidden;
  }
  .custom-section__background img {
    position: absolute;
    width: 100%;
    height: auto;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  .custom-section__content {
    display: grid;
    grid-template-columns: var(--content-grid);
  }
  .custom-section__content > * {
    grid-column: 2;
  }
/* END_SECTION:custom-section */

/* START_SECTION:customer-account (INDEX:20, SCOPED:FALSE) */
.customer-account-section {
    padding-top: 53px;
    margin-left: 16rem;
    margin-right: 16rem;
    min-height: 80vh;
  }

  .customer-account__container {
    max-width: 1200rem;
    margin: 0 auto;
    padding: 40rem 20rem;
  }

  .customer-account__header {
    text-align: center;
    margin-bottom: 40rem;
  }

  .customer-account__title {
    font-family: var(--font-headline);
    font-size: 48rem;
    font-weight: 400;
    color: var(--color-text);
    margin: 0 0 8rem 0;
    line-height: 1.2;
    text-transform: uppercase;
  }

  .customer-account__welcome {
    font-family: "Sigma Serif";
    font-size: 16rem;
    line-height: 1.6;
    color: #666666;
    margin: 0;
  }

  .customer-account__content {
    display: grid;
    grid-template-columns: 1fr 2fr;
    gap: 40rem;
  }

  .customer-account__info {
    display: flex;
    flex-direction: column;
    gap: 24rem;
  }

  .customer-account__info-card {
    background-color: #ffffff;
    border: 1px solid #e0e0e0;
    border-radius: 8rem;
    padding: 24rem;
  }

  .customer-account__card-title {
    font-family: "Sigma Serif";
    font-size: 18rem;
    font-weight: 400;
    color: #333333;
    margin: 0 0 20rem 0;
    text-transform: uppercase;
    letter-spacing: 0.5px;
  }

  .customer-account__details {
    margin-bottom: 24rem;
  }

  .customer-account__detail-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12rem 0;
    border-bottom: 1px solid #f0f0f0;
  }

  .customer-account__detail-item:last-child {
    border-bottom: none;
  }

  .customer-account__detail-label {
    font-family: "Sigma Sans";
    font-size: 13rem;
    color: #666666;
    text-transform: uppercase;
    letter-spacing: 0.5px;
  }

  .customer-account__detail-value {
    font-family: "Sigma Serif";
    font-size: 14rem;
    color: #333333;
  }

  .customer-account__address {
    margin-bottom: 24rem;
  }

  .customer-account__address-name {
    font-family: "Sigma Serif";
    font-size: 16rem;
    font-weight: 400;
    color: #333333;
    margin: 0 0 8rem 0;
  }

  .customer-account__address-line {
    font-family: "Sigma Serif";
    font-size: 14rem;
    color: #666666;
    margin: 0 0 4rem 0;
    line-height: 1.4;
  }

  .customer-account__address-line:last-child {
    margin-bottom: 0;
  }

  .customer-account__actions {
    display: flex;
    flex-direction: column;
    gap: 12rem;
  }

  .customer-account__action-btn {
    display: block;
    background-color: #333333;
    color: #ffffff;
    text-decoration: none;
    padding: 12rem 20rem;
    font-family: "Sigma Sans";
    font-size: 13rem;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    text-align: center;
    border-radius: 4rem;
    transition: background-color 0.3s ease;
  }

  .customer-account__action-btn:hover {
    background-color: #555555;
  }

  .customer-account__action-btn--secondary {
    background-color: #ffffff;
    color: #333333;
    border: 1px solid #333333;
  }

  .customer-account__action-btn--secondary:hover {
    background-color: #f5f5f5;
  }

  .customer-account__orders {
    background-color: #ffffff;
    border: 1px solid #e0e0e0;
    border-radius: 8rem;
    padding: 24rem;
  }

  .customer-account__orders-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 24rem;
    padding-bottom: 16rem;
    border-bottom: 1px solid #e0e0e0;
  }

  .customer-account__orders-title {
    font-family: "Sigma Serif";
    font-size: 18rem;
    font-weight: 400;
    color: #333333;
    margin: 0;
    text-transform: uppercase;
    letter-spacing: 0.5px;
  }

  .customer-account__orders-count {
    font-family: "Sigma Sans";
    font-size: 13rem;
    color: #666666;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin: 0;
  }

  .customer-account__orders-list {
    display: flex;
    flex-direction: column;
    gap: 20rem;
  }

  .customer-account__order-card {
    border: 1px solid #e0e0e0;
    border-radius: 8rem;
    padding: 20rem;
    transition: box-shadow 0.3s ease;
  }

  .customer-account__order-card:hover {
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  }

  .customer-account__order-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 16rem;
  }

  .customer-account__order-number {
    font-family: "Sigma Serif";
    font-size: 16rem;
    font-weight: 400;
    color: #333333;
    margin: 0 0 4rem 0;
  }

  .customer-account__order-link {
    color: #333333;
    text-decoration: none;
  }

  .customer-account__order-link:hover {
    text-decoration: underline;
  }

  .customer-account__order-date {
    font-family: "Sigma Sans";
    font-size: 13rem;
    color: #666666;
    margin: 0;
  }

  .customer-account__order-status-badge {
    padding: 4rem 12rem;
    border-radius: 4rem;
    font-family: "Sigma Sans";
    font-size: 11rem;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 0.5px;
  }

  .customer-account__order-status-badge--fulfilled {
    background-color: #e8f5e8;
    color: #2e7d32;
  }

  .customer-account__order-status-badge--unfulfilled {
    background-color: #fff3e0;
    color: #f57c00;
  }

  .customer-account__order-details {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 20rem;
    margin-bottom: 16rem;
  }

  .customer-account__order-item-count {
    font-family: "Sigma Sans";
    font-size: 13rem;
    color: #666666;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin: 0 0 12rem 0;
  }

  .customer-account__order-items-preview {
    display: flex;
    flex-direction: column;
    gap: 8rem;
  }

  .customer-account__order-item {
    display: flex;
    align-items: center;
    gap: 12rem;
  }

  .customer-account__order-item-image {
    width: 40rem;
    height: 40rem;
    object-fit: cover;
    border-radius: 4rem;
  }

  .customer-account__order-item-info {
    flex: 1;
  }

  .customer-account__order-item-title {
    font-family: "Sigma Serif";
    font-size: 14rem;
    color: #333333;
    margin: 0 0 2rem 0;
    line-height: 1.3;
  }

  .customer-account__order-item-variant {
    font-family: "Sigma Sans";
    font-size: 12rem;
    color: #666666;
    margin: 0 0 2rem 0;
  }

  .customer-account__order-item-quantity {
    font-family: "Sigma Sans";
    font-size: 12rem;
    color: #666666;
    margin: 0;
  }

  .customer-account__order-more-items {
    font-family: "Sigma Sans";
    font-size: 12rem;
    color: #666666;
    font-style: italic;
    margin: 0;
  }

  .customer-account__order-total {
    text-align: right;
  }

  .customer-account__order-total-label {
    font-family: "Sigma Sans";
    font-size: 13rem;
    color: #666666;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin: 0 0 4rem 0;
  }

  .customer-account__order-total-amount {
    font-family: "Sigma Serif";
    font-size: 16rem;
    font-weight: 400;
    color: #333333;
    margin: 0;
  }

  .customer-account__order-actions {
    display: flex;
    gap: 12rem;
  }

  .customer-account__no-orders {
    text-align: center;
    padding: 60rem 20rem;
  }

  .customer-account__no-orders-title {
    font-family: "Sigma Serif";
    font-size: 24rem;
    font-weight: 400;
    color: #333333;
    margin: 0 0 12rem 0;
  }

  .customer-account__no-orders-text {
    font-family: "Sigma Serif";
    font-size: 16rem;
    color: #666666;
    margin: 0 0 24rem 0;
    line-height: 1.5;
  }

  .customer-account__pagination {
    margin-top: 40rem;
    text-align: center;
  }

  .customer-account__pagination .pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8rem;
  }

  .customer-account__pagination .pagination a,
  .customer-account__pagination .pagination span {
    padding: 8rem 12rem;
    font-family: "Sigma Sans";
    font-size: 13rem;
    text-decoration: none;
    color: #333333;
    border: 1px solid #e0e0e0;
    border-radius: 4rem;
    transition: all 0.3s ease;
  }

  .customer-account__pagination .pagination a:hover {
    background-color: #333333;
    color: #ffffff;
  }

  .customer-account__pagination .pagination .current {
    background-color: #333333;
    color: #ffffff;
  }

  @media (max-width: 768px) {
    .customer-account-section {
      margin-left: 1rem;
      margin-right: 1rem;
      padding-top: 20rem;
    }

    .customer-account__container {
      padding: 20rem 16rem;
    }

    .customer-account__content {
      grid-template-columns: 1fr;
      gap: 24rem;
    }

    .customer-account__title {
      font-size: 36rem;
    }

    .customer-account__order-details {
      grid-template-columns: 1fr;
      gap: 16rem;
    }

    .customer-account__order-total {
      text-align: left;
    }

    .customer-account__order-actions {
      flex-direction: column;
    }

    .customer-account__pagination .pagination {
      flex-wrap: wrap;
    }
  }
/* END_SECTION:customer-account */

/* START_SECTION:customer-login (INDEX:21, SCOPED:FALSE) */
/* Login Drawer Styles */
  .login-drawer {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 9999;
    display: none;
  }

  .login-drawer.login-drawer--open {
    display: block;
  }

  .login-drawer__overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    opacity: 0;
    transition: opacity 0.3s ease;
  }

  .login-drawer--open .login-drawer__overlay {
    opacity: 1;
  }

  .login-drawer__content {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    max-width: 400rem;
    height: 100%;
    background-color: #ffffff;
    transform: translateX(100%);
    transition: transform 0.3s ease;
    display: flex;
    flex-direction: column;
    box-shadow: -2px 0 10px rgba(0, 0, 0, 0.1);
  }

  .login-drawer--open .login-drawer__content {
    transform: translateX(0);
  }

  .login-drawer__header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 24rem 24rem 16rem 24rem;
    border-bottom: 1px solid #e0e0e0;
    flex-shrink: 0;
  }

  .login-drawer__title {
    font-family: "Sigma Serif Head";
    font-size: 24rem;
    font-weight: 400;
    color: #333333;
    margin: 0;
    text-transform: uppercase;
  }

  .login-drawer__close {
    background: none;
    border: none;
    padding: 8rem;
    cursor: pointer;
    color: #666666;
    transition: color 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .login-drawer__close:hover {
    color: #333333;
  }

  .login-drawer__body {
    flex: 1;
    padding: 24rem;
    overflow-y: auto;
  }

  .login-drawer__form-group {
    margin-bottom: 20rem;
  }

  .login-drawer__label {
    display: block;
    font-family: "Sigma Sans";
    font-size: 12rem;
    font-weight: 400;
    color: #333333;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 8rem;
  }

  .login-drawer__input {
    width: 100%;
    padding: 14rem 16rem;
    border: 1px solid #e0e0e0;
    border-radius: 4rem;
    font-family: "Sigma Serif";
    font-size: 16rem;
    color: #333333;
    background-color: #ffffff;
    transition: border-color 0.3s ease;
    box-sizing: border-box;
  }

  .login-drawer__input:focus {
    outline: none;
    border-color: #333333;
  }

  .login-drawer__input::placeholder {
    color: #999999;
  }

  .login-drawer__submit-btn {
    width: 100%;
    background-color: #333333;
    color: #ffffff;
    border: none;
    padding: 14rem 20rem;
    font-family: "Sigma Sans";
    font-size: 13rem;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-radius: 4rem;
    cursor: pointer;
    transition: background-color 0.3s ease;
  }

  .login-drawer__submit-btn:hover {
    background-color: #555555;
  }

  .login-drawer__links {
    display: flex;
    flex-direction: column;
    gap: 12rem;
    margin-top: 20rem;
  }

  .login-drawer__link {
    font-family: "Sigma Sans";
    font-size: 13rem;
    color: #333333;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: color 0.3s ease;
  }

  .login-drawer__link:hover {
    color: #666666;
  }

  .login-drawer__link--forgot {
    color: #666666;
  }

  .login-drawer__recover-container {
    display: none;
  }

  .login-drawer__recover-title {
    font-family: "Sigma Serif Head";
    font-size: 20rem;
    font-weight: 400;
    color: #333333;
    margin: 0 0 8rem 0;
    text-transform: uppercase;
  }

  .login-drawer__recover-subtitle {
    font-family: "Sigma Serif";
    font-size: 14rem;
    line-height: 1.5;
    color: #666666;
    margin: 0 0 24rem 0;
  }

  .login-drawer__link--back {
    text-align: center;
    margin-top: 16rem;
  }

  .login-drawer__guest-container {
    margin-top: 24rem;
  }

  .login-drawer__divider {
    text-align: center;
    margin: 20rem 0;
    position: relative;
  }

  .login-drawer__divider::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    height: 1px;
    background-color: #e0e0e0;
  }

  .login-drawer__divider span {
    background-color: #ffffff;
    padding: 0 16rem;
    font-family: "Sigma Sans";
    font-size: 12rem;
    color: #666666;
    text-transform: uppercase;
    letter-spacing: 0.5px;
  }

  .login-drawer__guest-btn {
    width: 100%;
    background-color: #ffffff;
    color: #333333;
    border: 1px solid #333333;
    padding: 14rem 20rem;
    font-family: "Sigma Sans";
    font-size: 13rem;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-radius: 4rem;
    cursor: pointer;
    transition: all 0.3s ease;
  }

  .login-drawer__guest-btn:hover {
    background-color: #f5f5f5;
  }

  /* Error Messages */
  .errors {
    background-color: #f8f8f8;
    border: 1px solid #e0e0e0;
    border-radius: 4rem;
    padding: 12rem;
    margin-bottom: 20rem;
  }

  .errors ul {
    list-style: none;
    margin: 0;
    padding: 0;
  }

  .errors li {
    font-family: "Sigma Serif";
    font-size: 13rem;
    color: #d32f2f;
    margin-bottom: 4rem;
  }

  .errors li:last-child {
    margin-bottom: 0;
  }

  /* Mobile Responsive */
  @media (max-width: 768px) {
    .login-drawer__content {
      max-width: 100%;
    }

    .login-drawer__header {
      padding: 20rem 20rem 16rem 20rem;
    }

    .login-drawer__body {
      padding: 20rem;
    }

    .login-drawer__title {
      font-size: 20rem;
    }
  }

  /* Prevent body scroll when drawer is open */
  body.login-drawer-open {
    overflow: hidden;
  }
/* END_SECTION:customer-login */

/* START_SECTION:customer-register (INDEX:22, SCOPED:FALSE) */
.customer-register-section {
    padding-top: 53px;
    margin-left: 16rem;
    margin-right: 16rem;
    min-height: 80vh;
    display: flex;
    align-items: center;
  }

  .customer-register__container {
    width: 100%;
    max-width: 800rem;
    margin: 0 auto;
    padding: 40rem 20rem;
  }

  .customer-register__header {
    text-align: center;
    margin-bottom: 40rem;
  }

  .customer-register__title {
    font-family: "Sigma Serif Head";
    font-size: 48rem;
    font-weight: 400;
    color: var(--color-text);
    margin: 0 0 8rem 0;
    line-height: 1.2;
    text-transform: uppercase;
  }

  .customer-register__subtitle {
    font-family: "Sigma Serif";
    font-size: 16rem;
    line-height: 1.6;
    color: #666666;
    margin: 0;
  }

  .customer-register__form-group {
    margin-bottom: 24rem;
  }

  .customer-register__label {
    display: block;
    font-family: "Sigma Sans";
    font-size: 13rem;
    font-weight: 400;
    color: #333333;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 8rem;
  }

  .customer-register__input {
    width: 100%;
    padding: 16rem 20rem;
    border: 1px solid #e0e0e0;
    border-radius: 4rem;
    font-family: "Sigma Serif";
    font-size: 16rem;
    color: #333333;

    transition: border-color 0.3s ease;
    box-sizing: border-box;
  }

  .customer-register__input:focus {
    outline: none;
    border-color: #333333;
  }

  .customer-register__input::placeholder {
    color: #999999;
  }

  .customer-register__submit-btn {
    width: 100%;
    background-color: #333333;
    color: #ffffff;
    border: none;
    padding: 16rem 20rem;
    font-family: "Sigma Sans";
    font-size: 13rem;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-radius: 4rem;
    cursor: pointer;
    transition: background-color 0.3s ease;
  }

  .customer-register__submit-btn:hover {
    background-color: #555555;
  }

  .customer-register__links {
    margin-top: 24rem;
    text-align: center;
  }

  .customer-register__link {
    font-family: "Sigma Sans";
    font-size: 13rem;
    color: #333333;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: color 0.3s ease;
  }

  .customer-register__link:hover {
    color: #666666;
  }

  .customer-register__info {
    background-color: #f8f8f8;
    border: 1px solid #e0e0e0;
    border-radius: 8rem;
    padding: 40rem;
  }

  .customer-register__info-title {
    font-family: "Sigma Serif";
    font-size: 20rem;
    font-weight: 400;
    color: #333333;
    margin: 0 0 24rem 0;
    text-transform: uppercase;
    letter-spacing: 0.5px;
  }

  .customer-register__info-list {
    list-style: none;
    margin: 0;
    padding: 0;
  }

  .customer-register__info-item {
    display: flex;
    align-items: center;
    gap: 12rem;
    margin-bottom: 16rem;
    font-family: "Sigma Serif";
    font-size: 14rem;
    color: #333333;
    line-height: 1.5;
  }

  .customer-register__info-item:last-child {
    margin-bottom: 0;
  }

  .customer-register__info-icon {
    background-color: #333333;
    color: #ffffff;
    width: 20rem;
    height: 20rem;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: "Sigma Sans";
    font-size: 12rem;
    font-weight: 400;
    flex-shrink: 0;
  }

  /* Error Messages */
  .errors {
    background-color: #f8f8f8;
    border: 1px solid #e0e0e0;
    border-radius: 4rem;
    padding: 16rem;
    margin-bottom: 24rem;
  }

  .errors ul {
    list-style: none;
    margin: 0;
    padding: 0;
  }

  .errors li {
    font-family: "Sigma Serif";
    font-size: 14rem;
    color: #d32f2f;
    margin-bottom: 4rem;
  }

  .errors li:last-child {
    margin-bottom: 0;
  }

  @media (max-width: 768px) {
    .customer-register-section {
      margin-left: 1rem;
      margin-right: 1rem;
      padding-top: 20rem;
    }

    .customer-register__container {
      padding: 20rem 16rem;
    }

    .customer-register__content {
      grid-template-columns: 1fr;
      gap: 32rem;
    }

    .customer-register__form-container,
    .customer-register__info {
      padding: 24rem;
    }

    .customer-register__title {
      font-size: 36rem;
    }

    .customer-register__info-title {
      font-size: 18rem;
    }
  }
/* END_SECTION:customer-register */

/* START_SECTION:footer (INDEX:24, SCOPED:FALSE) */
.sigma-footer {
    background-color: #FEFEFD;;
    padding: 0px 20px;
  }

  .footer-bottom {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    align-items: flex-start;
    justify-content: space-between;
    gap: 40px;
    text-align: left;
  }

  /* Logo centrale */
  .footer-logo {
    display:flex;
    justify-content: center;
    margin-bottom: 60rem;
  }

  .footer-logo-svg {
    max-width: 80px;
    height: auto;
  }

  /* Colonne di link */
  .footer-columns {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 40px;

    text-align: left;
  }

  .footer-column-title {
    font-family: "Sigma Sans";
    font-size: 13rem;
    font-weight: 400;
    color: rgba(51, 51, 51, 0.7);
    margin: 0 0 15px 0;
    text-transform: uppercase;
    letter-spacing: 0.3px;
  }

  .footer-links {
    list-style: none;
    padding: 0;
    margin: 0;
    padding-bottom:60px;
  }

  .footer-links li {
    margin-bottom: 0px;
  }

  .footer-links a {
    color: #333333;
    text-decoration: none;
    font-size: 13rem;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    transition: color 0.3s ease;
  }

  .footer-links a:hover {
    color: #333333;
  }


  .footer-privacy-links {
    display: flex;
    justify-content: left;
    gap: 4rem;
    flex-wrap: wrap;
  }

  .footer-privacy-links a,
  .footer-privacy-links span {
    font-family: var(--font-primary);
    font-size: var(--p-small-size);
    font-weight: 400;
    color: rgba(51, 51, 51, 0.7);
    text-decoration: none;
    transition: color 0.3s ease;
  }

  .footer-privacy-links a:hover {
    color: #333333;
  }

  /* Copyright */
  .footer-copyright {
    text-align: left;
    padding-top: 60px;
  }

  .footer-copyright p {
    color: #333333;
    font-size: 13rem;
    margin: 0;
  }

  /* Responsive */
  @media (max-width: 1200px) {
  .footer-columns {
    grid-template-columns: 1fr;
  }

  .footer-column {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    gap: 20px;
    align-items: flex-start;
            width: 100%;
  }

  .footer-column-inner {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    width: 100%;
  }

  .footer-column-title {
    flex: 1;
    margin-right: 20px;
    font-size: 13rem;
  }

  .footer-links {
    flex: 2;
    padding-bottom: 40px;
    width: 50%;
  }

  .footer-links li {
    margin-bottom: 10px;
  }
  }


  /* --- RESPONSIVE --- */

  @media (max-width: 900px) {
  .footer-bottom {
    grid-template-columns: 1fr;
  }
  }
/* END_SECTION:footer */

/* START_SECTION:header (INDEX:25, SCOPED:FALSE) */
.sigma-header {
    background-color: #FEFEFD;;
    position: fixed;
    width:100%;
    z-index: 100;
    transition: padding-bottom 0.3s ease;
  }

  .sigma-nav {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    align-items: center;
    position: relative;
    padding: 8rem 20rem;
  }

    .sigma-logo{
        grid-column: 2;
    justify-self: center;
  }


  .mega-menu-container {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.5s ease-in-out, padding 0.5s ease-in-out;
    background-color: #FEFEFD;
    padding: 0 20px;
  }

  .mega-menu-container.active {
    max-height: 500px; /* Altezza massima del menu espanso */
    padding: 20px;
  }

  .mega-menu-container ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
  }

  .mega-menu-container a {
    color: #333333;
    text-decoration: none;
    font-weight: 400;
    font-size: 13rem;
    text-transform: uppercase;
    text-decoration: none !important;
    transition: all 0.3s ease;
    position: relative;

  }

  .mega-menu-container a:hover {
    opacity: 0.8;
  }

  .sigma-nav-menu.left-menu {
    display: flex;
    gap: 0.5rem;
    list-style: none;
    margin: 0;
    padding: 0;
  }

  .sigma-logo img {
    max-width: 180px;
    height: auto;
  }

  .sigma-logo-text {
    color: #000000;
    font-size: 1.5rem;
    font-weight: 700;
    text-transform: uppercase;
  }

  .sigma-nav-menu {
    display: flex;
    gap: 2rem;
    list-style: none;
    margin: 0;
    padding: 0;
  }

  .sigma-nav-menu a {
    text-decoration: none;
    font-weight: 400;
    text-transform: uppercase;
    text-decoration: none !important;
    transition: all 0.3s ease;
    position: relative;
  }

  .dropdown-parent {
    position: relative;
  }

  /* Nascondi il dropdown menu originale */
  .dropdown-menu {
    display: none;
  }

  .dropdown-menu li {
    padding: 8px 20px;
  }

  .dropdown-menu a:hover {
    opacity: 0.8;
  }

  .sigma-nav-menu a:hover {
    opacity: 0.8;
  }

  .sigma-header-actions {
    grid-column: 3;
    justify-self: end;
    display: flex;
    align-items: center;
    gap: 1rem;
  }

  .cart-text{
    font-size: 13rem;
    text-transform: uppercase;
    font-family: "Sigma Sans";
    font-weight: 400;
    color: #333333;
  }

  .sigma-cart-icon{
    text-decoration: none !important;
    display: flex;
    flex-direction: row;
  }

  .language-switcher {
    display: flex;
    align-items: center;

  }

  .localization-form-inline {
    display: inline-block;
  }

  .lang-btn {
    background: none;
    border: none;
    color: #000000;
    cursor: pointer;
    padding: 0px !important;
    font-weight: 400;
    font-size: 13px;
    line-height: 16.25px;
    text-transform: uppercase;
    text-decoration: none;
    transition: opacity 0.3s ease;
  }

  .lang-btn:hover {
    opacity: 0.7;
  }

  .lang-btn.active {
    text-decoration: underline !important;
  }

.lang-btn.header-item {
  padding-right: 8rem !important;
}

  .divider {
    color: #333333;
    font-size: 13rem;
    padding-right: 8rem;
  }

  .header-item {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #333333;
    padding: 0 16rem 0 0;
    font-weight: 400;
    font-size: 13rem;
    text-transform: uppercase;
    text-decoration: none !important;
  }

.header-item a {
  color: #333333;
}


  .sigma-cta {
    background: var(--secondary-color);
    color: var(--text-light) !important;
    padding: 0.8rem 1.5rem;
    border-radius: 4px;
    font-weight: 400;
    font-size: 13rem;
    text-transform: uppercase;
    text-decoration: none !important;
  }


  .cart-count {
    position:relative;
    color: #333;
    font-size: 13rem;
  }

  .cart-count::before {
    content: "(";
  }

  .cart-count::after {
    content: ")";
  }


      .mobile-header-controls{
display: none;
  }

    .mobile-header-controls-right{
display: none;
  }


  /* Mobile layout override */
@media (max-width: 1200px) {
  


    .mobile-header-controls #drawer-toggle {
     z-index: 250; /* sopra al drawer z-index: 200 */
  background: #fff;
  }

  .mobile-header-controls-right{
    display: block;
  z-index: 1; 
grid-column: 3;
grid-row: 1;
justify-self: end;
}

.mobile-header-controls-right a{
  font-size: 13rem;
  text-transform: uppercase;
  text-decoration: none;
  color: #333333;
  padding: 10px 15px;
}



  .sigma-nav-menu.left-menu,
  .sigma-header-actions,
  .language-switcher {
    display: none;
  }

  .mobile-header-controls {
    grid-column: 1;
    grid-row: 1;
    justify-self: start;
    display: flex;
    align-items: center;
    font-size: 13rem;
  }

  .mobile-header-controls #drawer-toggle,
  .mobile-header-controls a {
    font-size: 13rem;
    color: #333333;
    text-decoration: none;
    background: none;
    border: none;
    text-transform: uppercase;
    cursor: pointer;
    padding: 10px 15px;
  }

  .sigma-logo {
    grid-column: 2;
    justify-self: center;
    z-index: 101;
  }
}

/* Drawer styles */
.mobile-drawer {
  position: fixed;
  top: 0;
  right: -100%;
  width: 100%;
  height: 100%;
  background-color: #FEFEFD;;

  transition: right 0.3s ease-in-out;
  z-index: 250;
  padding: 20px;
  overflow-y: auto;
  font-size: 13rem !important;
}

.mobile-drawer.active {
  right: 0;
}

.mobile-drawer-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(0,0,0,0.3);
  display: none;
  z-index: 150;
}

.mobile-drawer-overlay.active {
  display: block;
  pointer-events: auto;
}

body.drawer-open .mobile-drawer-overlay.active {
  pointer-events: none;
}

.mobile-drawer-header {
  
  display: flex;
  justify-content: flex-end;
  margin-bottom: 20px;
}

.drawer-close {
  cursor: pointer;
  font-weight: bold;
  text-transform: uppercase;
}

.mobile-drawer-menu {
  list-style: none;
  padding: 0;
  margin: 0;
}



.drawer-item-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-family: "Sigma Serif";
  font-weight: 400;
  font-size: 16rem;
  line-height: 20rem;
  color: #333;
  cursor: pointer;
  padding: 15px 0;
  text-transform: uppercase;
}

.drawer-item-header a {
  color: #333;
  text-decoration: none;
  flex: 1;
}

.drawer-toggle-icon {
  font-size: 16px;
  padding-left: 10px;
}

.drawer-submenu {
  display: none;
  padding-left: 0px;
  margin-bottom: 10px;
}

.drawer-submenu li {
   list-style: none;
   padding: 0;
   margin: 0;
}

.drawer-submenu li a {
  font-family: "Sigma Sans";
  font-weight: 400;
  font-size: 13rem;
  line-height: 16rem;
  color: #333;
  text-decoration: none;
  display: block;
  padding: 6px 0;
  text-transform: uppercase;
}

.drawer-submenu li a:hover {
  opacity: 0.7;
}

.mobile-drawer-item.open .drawer-submenu {
  display: block;
}

.mobile-drawer-item.open .drawer-toggle-icon::after {
  font-size: 20rem;
  font-weight: 600;
  content: "-";
}
.mobile-drawer-item .drawer-toggle-icon::after {
    font-size: 20rem;
  font-weight: 600;
  content: "+";
}

.mobile-language-switcher {

  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 5px;
  padding: 15px 0;
  font-size: 13rem;
  color: #333;
  position: absolute;
    bottom: 60px;
}

.mobile-language-switcher .lang-btn {
  background: none;
  border: none;
  color: #333;
  font-size: 16rem;
  text-transform: uppercase;
  padding: 0;
  cursor: pointer;
  font-family: "Sigma Serif" !important;
}

.mobile-language-switcher .lang-btn.active {
  text-decoration: underline;
}

/* Search Drawer Styles */
.search-drawer {
  position: fixed;
  top: 0;
  right: -100%;
  width: 100vw;
  height: 100svh;
  background-color: #FEFEFD;;

  transition: right 0.4s ease-in-out;
  z-index: 300;
  padding: 20px 20px;
  overflow-y: auto;
}

.search-drawer.active {
  right: 0;
}

.search-drawer-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(0, 0, 0, 0.15);
  display: none;
  z-index: 299;
}

.search-drawer-overlay.active {
  display: block;
}

.search-drawer-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 64rem;
}

.search-drawer-title {
  font-family: "Sigma Sans";
  font-weight: 400;
  font-size: 13rem;
  line-height: 13rem;
  color: #333333;
  text-transform: uppercase;
  margin: 0;
  letter-spacing: 0.5px;
}

.search-drawer-close {
  font-family: "Sigma Sans";
  font-weight: 400;
  font-size: 13px;
  line-height: 16px;
  color: #333333;
  text-transform: uppercase;
  cursor: pointer;
  letter-spacing: 0.5px;
  transition: opacity 0.3s ease;
}

.search-drawer-close:hover {
  opacity: 0.7;
}

.search-drawer-content {
  max-width: 100%;
}

.search-input-container {
  position: relative;
  margin-bottom: 50px;
  padding: 7rem 11rem !important;
  border: 1px solid !important;
  display: flex !important;
  flex-wrap: wrap !important;
}

.search-input {
  border: none;
  background: transparent;
  font-family: "Sigma Serif";
  font-weight: 400;
  font-size: 16px;
  line-height: 20px;
  color: #333333;
  outline: none;
  border-radius: 0;
  transition: border-color 0.3s ease;
}

.search-input:focus {
  border-bottom-color: #333333;
}

.search-input::placeholder {
  color: #999999;

}

.search-submit-btn {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  background: none;
  border: none;
  cursor: pointer;
  padding: 10px;
  color: #333333;
  transition: opacity 0.3s ease;
}

.search-submit-btn:hover {
  opacity: 0.7;
}

.popular-searches-title {
  font-family: var(--font-secondary);
  font-weight: 400;
  font-size: var(--p-small-size);
  line-height: var(--h3-line);
  color: rgba(51, 51, 51, 0.7);
  margin: 0 0 12px 0;
  padding-top: 20rem;
}

.popular-searches-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.popular-searches-list li {
  margin-bottom: 12rem;
}

.popular-searches-list a {
  font-family: "Sigma Sans";
  font-weight: 400;
  font-size: 13rem;
  line-height: 1;
  color: #333333;
  text-decoration: none;
  transition: opacity 0.3s ease;
  display: block;
}

.popular-searches-list a:hover {
  opacity: 0.7;
}

/* Desktop styles for Search Drawer */
@media (min-width: 1200px) {
  .search-drawer {
    width: 390px;
  }
}
/* END_SECTION:header */

/* START_SECTION:hero-image (INDEX:26, SCOPED:FALSE) */
.hero-image-section {
    width: 100%;
    height: 100%;
    position: relative;
    overflow: hidden;
  }

  .hero-image-container {
    padding-top: 160rem;
    padding-bottom: 160rem;
    width: 100%;
    height: 100%;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    background: white;
  }

  .hero-image-wrapper {
    position: relative;
    aspect-ratio: 16 / 9;
    z-index: 1;
  }

  .hero-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
  }

  .hero-image-link {
    display: block;
    width: 100%;
    text-decoration: none;
    color: inherit;
    position: relative;
    z-index: 2;
  }

  .hero-image-content {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    z-index: 3;
    width: 90%;
    max-width: 1200px;
  }

  .hero-image-title {
    font-family: var(--font-secondary--family), serif;
    font-size: 88rem;
    font-weight: 400;
    line-height: 0.95;
    letter-spacing: -1.32rem;
    color: white;
    margin: 0;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
    letter-spacing: -0.02em;
    text-transform: uppercase;
  }

  .hero-image-middle-text {
    font-family: "Sigma Serif";
            max-width: 500rem;
    font-size: 16rem;
    font-weight: 400;
    line-height: 1.25;
    color: white;
    margin: 0 auto;
    padding-top: 24rem;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
  }

  .hero-image-subtitle {
    font-family: var(--font-primary--family), sans-serif;
    text-transform: uppercase;
    color: white;
    font-size: 13rem;
    font-weight: 400;
    line-height: 1.25;
    letter-spacing: 0.26rem;
    padding-top: 0;
    margin-top: 24rem;
    opacity: 0.9;
  }

  .hero-image-placeholder {
    width: 100%;
    height: 100%;
    background: #f5f5f5;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #666;
    font-size: 1.2rem;
  }

  /* Overlay scuro per migliorare la leggibilità del testo */
  .hero-image-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    /* background: rgba(0, 0, 0, 0.3); */
    z-index: 2;
  }

  /* Responsive */
  @media (max-width: 1200px) {
    .hero-image-title {
      font-size: 36rem;
    }
    
    .hero-image-container {
      padding-top: 96rem;
    }
    
    .hero-image-middle-text {
      font-size: 16rem;
    }
    
    /* Mobile fullscreen variant */
    .hero-image-section.mobile-fullscreen {
      height: 100svh;
    }
    
    .hero-image-section.mobile-fullscreen .hero-image-container {
      height: 100svh;
      padding-top: 0;
      display: flex;
      align-items: center;
      justify-content: center;
    }
    
    .hero-image-section.mobile-fullscreen .hero-image-wrapper {
      width: 100%;
      height: 100%;
      aspect-ratio: unset;
      padding-top: 96rem;
    }
    
    .hero-image-section.mobile-fullscreen .hero-image {
      width: 100%;
      height: 100%;
      object-fit: cover;
    }
    
    .hero-image-section.mobile-fullscreen .hero-image-link {
      height: 100%;
    }
  }
/* END_SECTION:hero-image */

/* START_SECTION:hero-product (INDEX:27, SCOPED:FALSE) */
.hero-product-section {
  width: 100%;
  height: 100vh;
  position: relative;
  overflow: hidden;
  margin-top: 0 !important;
}

.hero-product-container {
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

.hero-product-container.hero-product-fixed {
  position: fixed;
}

.hero-product-link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  text-decoration: none;
  color: inherit;
}

.hero-product-content {
  text-align: center;
  z-index: 2;
  position: relative;
}

/* testo sopra immagine */
.hero-product-section h1,
.hero-product-section h2,
.hero-product-section p {
  color: var(--text-light);
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}

.hero-product-section .p-small {
  opacity: 0.9;
  letter-spacing: 0.25rem;
  margin-top: 20rem;
}

.hero-product-container::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
}

/* ===== Responsive ===== */

/* Tablet (max 1200px) */
@media (max-width: 1200px) {
  .hero-product-section {
    height: 100svh;
    min-height: 100svh;
  }

  .hero-product-container {
    height: 100%;
    min-height: 100svh;
    background-position: center center;
    padding: clamp(60rem, 6vw, 100rem) 40rem;
  }

  .hero-product-content {
    text-align: center;
  }
}

/* Mobile (max 768px) */
@media (max-width: 768px) {
  .hero-product-section {
    height: auto;
    min-height: 100svh;
  }

  .hero-product-container {
    height: 100%;
    min-height: 100svh;
    background-size: cover;
    background-position: center center;
    padding: 60rem 20rem 80rem;
  }

  .hero-product-container::before {
    background: rgba(0, 0, 0, 0.35);
  }

  .hero-product-content {
    text-align: center;
  }
}
/* END_SECTION:hero-product */

/* START_SECTION:hero-text (INDEX:28, SCOPED:FALSE) */
/* ===== Hero Text Section ===== */

.hero-text-section {
  width: 100%;
  position: relative;
}

.hero-text-container {
  width: 100%;
  height: auto;
  min-height: 40vh;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  background: white;
}

.hero-text-link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  text-decoration: none;
  color: inherit;
  position: relative;
  z-index: 2;
}

.hero-text-content {
  text-align: center;
  z-index: 3;
  width: 100%;
  max-width: 700rem;
  margin: 0 auto;
}

/* Tipografia coerente col CSS globale */
.hero-text-section h1 {
  color: var(--text-dark);
}

.hero-text-middle-text {
  font-family: var(--font-secondary);
  font-size: var(--p-size);
  line-height: var(--p-line);
  color: var(--text-dark);
  max-width: 500rem;
  margin: 24rem auto 0;
}

.hero-text-section .p-small {
  opacity: 0.9;
  margin-top: 24rem;
  text-transform: uppercase;
  letter-spacing: 0.25rem;
}

/* ===== Responsive ===== */

/* Tablet */
@media (max-width: 1200px) {

  .hero-text-section.mobile-fullscreen {
    height: 100svh;
  }

  .hero-text-section.mobile-fullscreen .hero-text-container {
    height: 100svh;
    min-height: 100svh;
    padding-top: 0;
  }

  .hero-text-section.mobile-fullscreen .hero-text-link {
    height: 100%;
  }
}

/* Mobile */
@media (max-width: 768px) {
  .hero-text-content {
    padding: 0 16rem;
  }
}
/* END_SECTION:hero-text */

/* START_SECTION:hero-video (INDEX:29, SCOPED:FALSE) */
/* ===== HERO VIDEO ===== */

.hero-video-section {
  width: 100%;
  position: relative;
  overflow: hidden;
  background-color: black;
}

.hero-video-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: relative;
  text-align: center;
  width: 100%;
  height: 100vh;
  overflow: hidden;
}

/* video */
.hero-video-wrapper {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}

.hero-video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

/* overlay */
.hero-video-container::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.25);
  z-index: 2;
}

/* contenuto */
.hero-video-content {
  position: relative;
  z-index: 3;
  text-align: center;
  width: 60%;
  max-width: 500rem;
  margin: 0 auto;
}

.hero-video-content > * {
  color: var(--text-light)
}

/* titoli */
.hero-video-title {
  font-family: var(--font-headline);
  font-weight: 400;
  text-transform: uppercase;
  margin: 0 0 24rem;
  letter-spacing: 0.08rem;
  line-height: var(--h1-line);
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}

.hero-video-title-small {
  font-size: clamp(36rem, 4vw + 2rem, 48rem);
}

.hero-video-title-big {
  font-size: var(--h1-size);
}

/* descrizione */
.hero-video-description {
  font-family: var(--font-secondary);
  font-size: var(--p-size);
  line-height: var(--p-line);
  max-width: 500rem;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}

/* sottotitolo */
.hero-video-subtitle {
  font-family: var(--font-primary);
  text-transform: uppercase;
  letter-spacing: 0.08rem;
  opacity: 0.9;
  margin: 24rem 0 0 0;
}

.hero-video-subtitle.p-small:hover {
  opacity: 0.7;
}

/* link cliccabile */
.hero-video-link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  text-decoration: none;
  color: inherit;
  position: relative;
  z-index: 2;
}

/* placeholder */
.hero-video-placeholder {
  width: 100%;
  height: 100vh;
  background: #f5f5f5;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #666;
  font-size: var(--p-size);
}

/* ===== RESPONSIVE ===== */

/* Tablet */
@media (max-width: 1200px) {
  .hero-video-container {
    height: 90vh;
  }

  .hero-video-title-big {
    font-size: clamp(36rem, 6vw, 60rem);
  }

  .hero-video-description {
    font-size: clamp(14rem, 2vw, 16rem);
  }
}

/* Mobile */
@media (max-width: 768px) {
  .hero-video-container {
    height: 100svh;
    align-items: center;
    justify-content: center;
  }

  .hero-video-wrapper {
    height: 100%;
    width: 100%;
  }

  .hero-video {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .hero-video-content {
    width: 100%;
    max-width: 600rem;
    padding: 0 20rem;
  }

  .hero-video-title-small,
  .hero-video-title-big {
    font-size: clamp(26rem, 8vw, 40rem);
    line-height: 1.1;
  }

  .hero-video-description {
    font-size: clamp(12rem, 4vw, 14rem);
    line-height: 1.4;
    margin-top: 16rem;
  }

  .hero-video-subtitle {
    font-size: clamp(10rem, 3vw, 13rem);
    margin-top: 16rem;
  }

  .hero-video-container::before {
    background: linear-gradient(
      to bottom,
      rgba(0, 0, 0, 0.15) 0%,
      rgba(0, 0, 0, 0.5) 100%
    );
  }
}
/* END_SECTION:hero-video */

/* START_SECTION:iubenda-privacy (INDEX:31, SCOPED:FALSE) */
/* Pagina privacy iubenda */
.iubenda-policy-page{
  padding-left: 20rem;
  padding-right: 20rem;
}

/* Larghezza massima per non avere righe troppo lunghe */
.iubenda-policy-page .policy-wrap{
  max-width: 1380rem;
  margin: 0 auto;
}

/* Tipografia base coerente col tema */
.iubenda-policy-page,
.iubenda-policy-page p,
.iubenda-policy-page h5,
.iubenda-policy-page li{
  font-family: var(--font-secondary);
  font-size: var(--p-size);
  line-height: var(--p-line);
  color: var(--text-dark);
}

/* Titoli */
.iubenda-policy-page h1,
.iubenda-policy-page h2,
.iubenda-policy-page h3{
  font-family: var(--font-headline);
  color: var(--text-dark);
}

/* Titolo, non rendere in grassetto le parti in strong/b */
.iubenda-policy-page h1 strong,
.iubenda-policy-page h1 b{
  font-weight: 400;
}

.iubenda-policy-page h3 {
  text-align: left;
}

/* Solo header della policy iubenda */
.iubenda-policy-page header{
  text-align: center;
}

/* Il resto della policy resta a sinistra */
.iubenda-policy-page main,{
  text-align: left;
}

/* Spaziatura titoli, gerarchica */
.iubenda-policy-page h1,
.iubenda-policy-page h2,
.iubenda-policy-page h3{
  margin-top: 40rem;
  margin-bottom: 16rem;
}

.iubenda-policy-page h1{
  margin-top: 24rem;
  margin-bottom: 48rem;
}

.iubenda-policy-page h2{
  margin-top: 48rem;
  margin-bottom: 32rem;
}

.iubenda-policy-page h3{
  margin-top: 32rem;
  margin-bottom: 24rem;
}

/* Il primo titolo non deve avere troppo spazio sopra */
.iubenda-policy-page h1:first-child,
.iubenda-policy-page .policy-wrap > h1:first-child{
  margin-top: 0;
}


/* Paragrafi e liste, respiro minimo */
.iubenda-policy-page p{
  margin-top: 0;
  margin-bottom: 10rem;
}

.iubenda-policy-page ul,
.iubenda-policy-page ol{
  margin-top: 0;
  margin-bottom: 10rem;
  padding-left: 24rem;
}

/* Se un paragrafo viene subito dopo un titolo, un filo di spazio sopra */
.iubenda-policy-page h1 + p,
.iubenda-policy-page h2 + p,
.iubenda-policy-page h3 + p,
.iubenda-policy-page h5 + p{
  margin-top: 8rem;
}

/* Link */
.iubenda-policy-page a{
  color: var(--text-dark);
}

/* Separatore */
.iubenda-policy-page hr{
  margin-top: 30rem;
  margin-bottom: 10rem;
}

.iubenda-policy-page .sr-only,
.iubenda-policy-page .iubenda-branding,
.iubenda-policy-page .close-dialog {
  display: none !important;
}


/* Nasconde l’icona dentro gli accordion (details/summary) di iubenda */
.iubenda-policy-page summary figure img[width="32"][height="32"]{
  display: none !important;
}


/* Card per i blocchi accordion di iubenda (details/summary) */
.iubenda-policy-page details{
  border: 1px solid #333333;
  padding: 24rem;
  margin: 24rem 0;
  background: transparent;
}

/* Summary dentro la card, senza stile browser */
.iubenda-policy-page summary{
  cursor: pointer;
  list-style: none;
  margin: 0;
  padding: 0;
}

/* Nasconde il marker standard del summary */
.iubenda-policy-page summary::-webkit-details-marker{
  display: none;
}

/* Quando il details è aperto, dai un filo di spazio tra header e contenuto */
.iubenda-policy-page details[open] > summary{
  margin-bottom: 16rem;
  padding-bottom: 16rem;
  border-bottom: 1px solid #333333;
}

/* Riduci margini interni del contenuto dentro la card */
.iubenda-policy-page details > *:not(summary){
  margin-top: 12rem;
}

/* Se dentro summary ci sono wrapper e div, evita spazi strani */
.iubenda-policy-page summary > *{
  margin: 0;
}

/* Summary come riga “header” della card, con freccia a destra */
.iubenda-policy-page summary{
  position: relative;
  padding-right: 40rem;
}

/* Freccia custom */
.iubenda-policy-page summary::after{
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  width: 10rem;
  height: 10rem;
  border-right: 2px solid #333333;
  border-bottom: 2px solid #333333;
  transform: translateY(-50%) rotate(45deg);
  transition: transform 0.2s ease;
}

/* Quando è aperto, ruota la freccia verso l’alto */
.iubenda-policy-page details[open] > summary::after{
  transform: translateY(-50%) rotate(-135deg);
}

/* Migliora l’area cliccabile */
.iubenda-policy-page summary{
  cursor: pointer;
}


/* Mobile */
@media (max-width: 768px){
  .iubenda-policy-page{
    padding-left: 16rem;
    padding-right: 16rem;
  }
}
/* END_SECTION:iubenda-privacy */

/* START_SECTION:main-cart (INDEX:33, SCOPED:FALSE) */
.main-cart-section {
    padding-top: 53px;
    margin-left: 16rem;
    margin-right: 16rem;
    min-height: 80vh;
  }

  .main-cart__container {
    max-width: 1200rem;
    margin: 0 auto;
    padding: 40rem 20rem;
  }

  .main-cart__header {
    text-align: center;
    margin-bottom: 40rem;
  }

  .main-cart__title {
    font-family: "Sigma Serif Head";
    font-size: 48rem;
    font-weight: 400;
    color: var(--color-text);
    margin: 0 0 8rem 0;
    line-height: 1.2;
    text-transform: uppercase;
  }

  .main-cart__item-count {
    font-family: "Sigma Serif";
    font-size: 16rem;
    line-height: 1.6;
    color: #666666;
    margin: 0;
  }

  .main-cart__content {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 40rem;
  }

  .main-cart__items {
    background-color: #ffffff;
    border: 1px solid #e0e0e0;
    border-radius: 8rem;
    padding: 24rem;
  }

  .main-cart__items-header {
    margin-bottom: 24rem;
    padding-bottom: 16rem;
    border-bottom: 1px solid #e0e0e0;
  }

  .main-cart__items-title {
    font-family: "Sigma Serif";
    font-size: 18rem;
    font-weight: 400;
    color: #333333;
    margin: 0;
    text-transform: uppercase;
    letter-spacing: 0.5px;
  }

  .main-cart__items-list {
    display: flex;
    flex-direction: column;
    gap: 24rem;
  }

  .main-cart__item {
    display: grid;
    grid-template-columns: 120rem 1fr;
    gap: 20rem;
    padding: 20rem;
    border: 1px solid #e0e0e0;
    border-radius: 8rem;
    transition: box-shadow 0.3s ease;
  }

  .main-cart__item:hover {
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  }

  .main-cart__item-image {
    width: 120rem;
    height: 120rem;
    overflow: hidden;
    border-radius: 4rem;
  }

  .main-cart__item-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .main-cart__item-placeholder {
    width: 100%;
    height: 100%;
    background-color: #f5f5f5;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .main-cart__item-placeholder-text {
    font-family: "Sigma Sans";
    font-size: 12rem;
    color: #999999;
    text-transform: uppercase;
  }

  .main-cart__item-details {
    display: flex;
    flex-direction: column;
    gap: 16rem;
  }

  .main-cart__item-info {
    flex: 1;
  }

  .main-cart__item-title {
    font-family: "Sigma Serif";
    font-size: 16rem;
    font-weight: 400;
    color: #333333;
    margin: 0 0 4rem 0;
    line-height: 1.3;
  }

  .main-cart__item-link {
    color: #333333;
    text-decoration: none;
  }

  .main-cart__item-link:hover {
    text-decoration: underline;
  }

  .main-cart__item-variant {
    font-family: "Sigma Sans";
    font-size: 13rem;
    color: #666666;
    margin: 0 0 8rem 0;
    text-transform: uppercase;
    letter-spacing: 0.5px;
  }

  .main-cart__item-properties {
    margin-bottom: 8rem;
  }

  .main-cart__item-property {
    display: flex;
    gap: 8rem;
    margin-bottom: 4rem;
  }

  .main-cart__item-property-name {
    font-family: "Sigma Sans";
    font-size: 12rem;
    color: #666666;
    text-transform: uppercase;
    letter-spacing: 0.5px;
  }

  .main-cart__item-property-value {
    font-family: "Sigma Serif";
    font-size: 12rem;
    color: #333333;
  }

  .main-cart__item-property-link {
    color: #333333;
    text-decoration: none;
  }

  .main-cart__item-property-link:hover {
    text-decoration: underline;
  }

  .main-cart__item-subscription {
    font-family: "Sigma Sans";
    font-size: 12rem;
    color: #2e7d32;
    margin: 0;
    text-transform: uppercase;
    letter-spacing: 0.5px;
  }

  .main-cart__item-actions {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 20rem;
  }

  .main-cart__item-quantity {
    display: flex;
    flex-direction: column;
    gap: 8rem;
  }

  .main-cart__quantity-label {
    font-family: "Sigma Sans";
    font-size: 12rem;
    color: #666666;
    text-transform: uppercase;
    letter-spacing: 0.5px;
  }

  .main-cart__quantity-controls {
    display: flex;
    align-items: center;
    border: 1px solid #e0e0e0;
    border-radius: 4rem;
    overflow: hidden;
  }

  .main-cart__quantity-btn {
    background-color: #ffffff;
    border: none;
    padding: 8rem 12rem;
    font-family: "Sigma Sans";
    font-size: 14rem;
    color: #333333;
    cursor: pointer;
    transition: background-color 0.3s ease;
    min-width: 36rem;
  }

  .main-cart__quantity-btn:hover {
    background-color: #f5f5f5;
  }

  .main-cart__quantity-input {
    border: none;
    padding: 8rem 12rem;
    font-family: "Sigma Serif";
    font-size: 14rem;
    color: #333333;
    text-align: center;
    width: 60rem;
    background-color: #ffffff;
  }

  .main-cart__quantity-input:focus {
    outline: none;
  }

  .main-cart__item-price {
    text-align: right;
  }

  .main-cart__item-price-line {
    display: flex;
    flex-direction: column;
    gap: 2rem;
  }

  .main-cart__item-price-original {
    font-family: "Sigma Serif";
    font-size: 14rem;
    color: #999999;
    text-decoration: line-through;
  }

  .main-cart__item-price-final {
    font-family: "Sigma Serif";
    font-size: 16rem;
    font-weight: 400;
    color: #333333;
  }

  .main-cart__item-price-total {
    font-family: "Sigma Sans";
    font-size: 12rem;
    color: #666666;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-top: 4rem;
  }

  .main-cart__item-remove {
    display: flex;
    align-items: center;
  }

  .main-cart__remove-btn {
    font-family: "Sigma Sans";
    font-size: 12rem;
    color: #d32f2f;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: color 0.3s ease;
  }

  .main-cart__remove-btn:hover {
    color: #b71c1c;
    text-decoration: underline;
  }

  .main-cart__summary {
    position: sticky;
    top: 20rem;
    height: fit-content;
  }

  .main-cart__summary-card {
    background-color: #ffffff;
    border: 1px solid #e0e0e0;
    border-radius: 8rem;
    padding: 24rem;
  }

  .main-cart__summary-title {
    font-family: "Sigma Serif";
    font-size: 18rem;
    font-weight: 400;
    color: #333333;
    margin: 0 0 20rem 0;
    text-transform: uppercase;
    letter-spacing: 0.5px;
  }

  .main-cart__summary-details {
    margin-bottom: 24rem;
  }

  .main-cart__summary-line {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 8rem 0;
    border-bottom: 1px solid #f0f0f0;
  }

  .main-cart__summary-line:last-child {
    border-bottom: none;
  }

  .main-cart__summary-line--total {
    border-top: 1px solid #e0e0e0;
    border-bottom: none;
    padding-top: 16rem;
    margin-top: 8rem;
  }

  .main-cart__summary-line--discount {
    color: #2e7d32;
  }

  .main-cart__summary-label {
    font-family: "Sigma Sans";
    font-size: 14rem;
    color: #333333;
    text-transform: uppercase;
    letter-spacing: 0.5px;
  }

  .main-cart__summary-value {
    font-family: "Sigma Serif";
    font-size: 14rem;
    color: #333333;
    font-weight: 400;
  }

  .main-cart__summary-line--total .main-cart__summary-label,
  .main-cart__summary-line--total .main-cart__summary-value {
    font-size: 16rem;
    font-weight: 400;
  }

  .main-cart__summary-actions {
    display: flex;
    flex-direction: column;
    gap: 12rem;
    margin-bottom: 24rem;
  }

  .main-cart__checkout-btn {
    background-color: #333333;
    color: #ffffff;
    border: none;
    padding: 16rem 20rem;
    font-family: "Sigma Sans";
    font-size: 13rem;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-radius: 4rem;
    cursor: pointer;
    transition: background-color 0.3s ease;
  }

  .main-cart__checkout-btn:hover {
    background-color: #555555;
  }

  .main-cart__update-btn {
    background-color: #ffffff;
    color: #333333;
    border: 1px solid #333333;
    padding: 12rem 20rem;
    font-family: "Sigma Sans";
    font-size: 13rem;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-radius: 4rem;
    cursor: pointer;
    transition: all 0.3s ease;
  }

  .main-cart__update-btn:hover {
    background-color: #f5f5f5;
  }

  .main-cart__notes,
  .main-cart__attributes {
    margin-bottom: 20rem;
  }

  .main-cart__notes:last-child,
  .main-cart__attributes:last-child {
    margin-bottom: 0;
  }

  .main-cart__notes-label,
  .main-cart__attributes-label {
    display: block;
    font-family: "Sigma Sans";
    font-size: 12rem;
    color: #666666;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 8rem;
  }

  .main-cart__notes-textarea,
  .main-cart__attributes-input {
    width: 100%;
    padding: 12rem;
    border: 1px solid #e0e0e0;
    border-radius: 4rem;
    font-family: "Sigma Serif";
    font-size: 14rem;
    color: #333333;
    background-color: #ffffff;
    transition: border-color 0.3s ease;
    box-sizing: border-box;
  }

  .main-cart__notes-textarea:focus,
  .main-cart__attributes-input:focus {
    outline: none;
    border-color: #333333;
  }

  .main-cart__notes-textarea {
    min-height: 80rem;
    resize: vertical;
  }

  .main-cart__notes-textarea::placeholder,
  .main-cart__attributes-input::placeholder {
    color: #999999;
  }

  .main-cart__empty {
    text-align: center;
    padding: 80rem 20rem;
  }

  .main-cart__empty-content {
    max-width: 400rem;
    margin: 0 auto;
  }

  .main-cart__empty-title {
    font-family: "Sigma Serif";
    font-size: 32rem;
    font-weight: 400;
    color: #333333;
    margin: 0 0 16rem 0;
  }

  .main-cart__empty-text {
    font-family: "Sigma Serif";
    font-size: 16rem;
    color: #666666;
    margin: 0 0 32rem 0;
    line-height: 1.5;
  }

  .main-cart__empty-btn {
    display: inline-block;
    background-color: #333333;
    color: #ffffff;
    text-decoration: none;
    padding: 16rem 32rem;
    font-family: "Sigma Sans";
    font-size: 13rem;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-radius: 4rem;
    transition: background-color 0.3s ease;
  }

  .main-cart__empty-btn:hover {
    background-color: #555555;
  }

  @media (max-width: 768px) {
    .main-cart-section {
      margin-left: 1rem;
      margin-right: 1rem;
      padding-top: 20rem;
    }

    .main-cart__container {
      padding: 20rem 16rem;
    }

    .main-cart__content {
      grid-template-columns: 1fr;
      gap: 24rem;
    }

    .main-cart__title {
      font-size: 36rem;
    }

    .main-cart__item {
      grid-template-columns: 80rem 1fr;
      gap: 16rem;
      padding: 16rem;
    }

    .main-cart__item-image {
      width: 80rem;
      height: 80rem;
    }

    .main-cart__item-actions {
      flex-direction: column;
      align-items: flex-start;
      gap: 16rem;
    }

    .main-cart__item-price {
      text-align: left;
    }

    .main-cart__summary {
      position: static;
    }
  }
/* END_SECTION:main-cart */

/* START_SECTION:page-explore-more (INDEX:36, SCOPED:FALSE) */
.page-explore-more-section {
    width: 100%;
    background: #fefefd;
  }

  .page-explore-more-container {
    display: grid;
    grid-template-columns: 1fr 2fr;
    align-items: flex-start;
    gap: 40rem;
    margin: 0 auto;
    padding: 0 20rem;
  }

  .page-explore-more-left {
    text-align: left;
  }

  .page-explore-more-title {
    font-family: var(--font-primary);
    font-size: var(--p-small-size);
    text-transform: uppercase;
    color: var(--text-dark);
    letter-spacing: 0.5rem;
    margin: 0;
  }

  .page-explore-more-right {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24rem;
  }

  .page-explore-more-card {
    display: flex;
    flex-direction: column;
    text-decoration: none;
    color: var(--text-dark);
    background: #fff;
    transition: transform 0.2s ease;
  }

  .page-explore-more-card:hover {
    transform: translateY(-2px);
  }

  .page-explore-more-image {
    width: 100%;
    aspect-ratio: 4/5;
    overflow: hidden;
  }

  .page-explore-more-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .page-explore-more-content {
    padding-top: 16rem;
  }

  .page-explore-more-card-title {
    font-family: var(--font-headline);
    font-size: var(--p-size);
    text-transform: uppercase;
    margin-bottom: 8rem;
  }

  .page-explore-more-card-text {
    font-family: var(--font-secondary);
    font-size: var(--p-small-size);
    line-height: var(--p-line);
    margin: 0;
    color: var(--text-dark);
  }

  /* ✅ Mobile */
  @media (max-width: 768px) {
    .page-explore-more-container {
      grid-template-columns: 1fr;
      gap: 32rem;
    }

    .page-explore-more-left {
      text-align: center;
    }

    .page-explore-more-right {
      grid-template-columns: 1fr;
      gap: 32rem;
      justify-items: center;
    }

    .page-explore-more-card {
      max-width: 400rem;
      width: 100%;
    }
  }
/* END_SECTION:page-explore-more */

/* START_SECTION:page-filters (INDEX:37, SCOPED:FALSE) */
.page-filters-section {
    width: 100%;
    background: white;
  }

  .page-filters-container {
    margin: 0 auto;
    padding: 0 20rem;
  }

  .page-filters-title {
    font-family: "Sigma Serif";
    font-size: 16rem;
    font-weight: 400;
    text-transform: uppercase;
    color: #333333;
    text-align: center;
    margin-bottom: 80rem;
    letter-spacing: 0.5px;
  }

  .page-filters-groups {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200rem, 1fr));
  }

  .page-filter-group-title {
    font-family: "Sigma Sans";
    font-size: 13rem;
    font-weight: 400;
    text-transform: uppercase;
    color: rgba(51, 51, 51, 0.6);
    margin-bottom: 16rem;
    letter-spacing: 0.5px;
  }

  .page-filter-options {
    list-style: none;
    margin: 0;
    padding: 0;
  }

  .page-filter-options li {
    margin-bottom: 6rem;
  }

  .page-filter-options a {
    font-family: "Sigma Sans";
    font-size: 13rem;
    font-weight: 400;
    text-transform: uppercase;
    color: #333333;
    text-decoration: none;
    transition: opacity 0.3s ease;
  }

  .page-filter-options a:hover {
    opacity: 0.6;
  }

  @media (max-width: 1024px) {
    .page-filters-section {
      padding: 80rem 20rem;
    }

    .page-filters-groups {
      grid-template-columns: 1fr 1fr;
      gap: 30rem;
    }

    .page-filters-title {
      margin-bottom: 40rem;
    }
  }

  @media (max-width: 600px) {
    .page-filters-groups {
      grid-template-columns: 1fr;
    }
  }
/* END_SECTION:page-filters */

/* START_SECTION:page-image-text (INDEX:39, SCOPED:FALSE) */
.page-image-text-section {
    width: 100%;
    background: white;
    margin: 0;
    padding: 0 20rem;
  }

  /* container principale in flex */
  .page-image-text-container {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
    gap: 60rem;
    width: 100%;
  }

  /* layout invertito */
  .page-image-text-section.reverse-layout .page-image-text-container {
    flex-direction: row-reverse;
  }

  .page-image-text-image {
    flex: 1;
    min-width: 65%;
  }

  .page-image-text-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
  }

  .page-image-text-content {
    flex: 1;
    display: flex;
    align-items: flex-start; /* testo allineato in alto */
    justify-content: flex-start;
  }

  .page-image-text-inner {
    max-width: 480rem;
  }

  .page-image-text-title {
    font-size: var(--p-size);
    margin: 0 0 16rem 0;
  }

  .page-image-text-text {
    font-family: "Sigma Serif";
    font-size: 16rem;
    line-height: 24rem;
    color: #333333;
    margin-bottom: 20rem;
  }

  .page-image-text-link {
    display: inline-block;
    font-family: "Sigma Sans";
    font-size: 13rem;
    font-weight: 400;
    text-transform: uppercase;
    color: #333333;
    text-decoration: none;
    letter-spacing: 0.5px;
    transition: all 0.3s ease;
  }

  .page-image-text-link:hover {
    opacity: 0.7;
  }

  
@media (max-width: 1024px) {
  .page-image-text-container {
    display: flex;
    flex-direction: column; /* immagine sopra, testo sotto */
    gap: 30rem;
  }

  .page-image-text-image {
    width: 100%;
    min-width: 100%;
  }

  .page-image-text-image img {
    width: 100%;
    height: auto; /* rimuove altezza fissa */
    object-fit: contain; /* mostra l'immagine intera */
    display: block;
  }

  .page-image-text-content {
    width: 100%;
    display: block;
    padding: 0 0 40rem 0;
  }

  .page-image-text-inner {
    max-width: 100%;
    margin: 0 auto;
    text-align: left;
  }

  .page-image-text-title {
    font-size: 18rem;
    margin-bottom: 16rem;
  }

  .page-image-text-text {
    font-size: 14rem;
    line-height: 22rem;
    color: #333;
  }

  .page-image-text-link {
    display: inline-block;
    margin-top: 16rem;
  }

  /* forza anche il layout reverse a impilarsi correttamente */
  .page-image-text-section.reverse-layout .page-image-text-container {
    flex-direction: column;
  }
}
/* END_SECTION:page-image-text */

/* START_SECTION:page-tabs (INDEX:40, SCOPED:FALSE) */
.page-tabs-section {
    padding-top: 53px;
    margin-left: 16rem;
    margin-right: 16rem;
  }

  .page-tabs__container {
    width: 100%;
  }

  .page-tabs__nav {
    display: flex;
    justify-content: center;
    margin-bottom: 40rem;
    overflow-x: auto;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }

  .page-tabs__nav::-webkit-scrollbar {
    display: none;
  }

  .page-tabs__nav-item {
    background: none;
    border: none;
    padding: 20rem 32rem;
    font-family: "Sigma Sans";
    font-size: 13rem;
    font-weight: 400;
    color: #666666;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    cursor: pointer;
    transition: all 0.3s ease;
    white-space: nowrap;
    border-bottom: 2px solid transparent;
    position: relative;
  }

  .page-tabs__nav-item:hover {
    color: #333333;
  }

  .page-tabs__nav-item.active {
    color: #333333;
    text-decoration: underline;
  }

  .page-tabs__content {
    position: relative;
  }

  .page-tabs__content-panel {
    display: none;
    animation: fadeIn 0.3s ease-in-out;
  }

  .page-tabs__content-panel.active {
    display: block;
  }

  .page-tabs__content-blocks {
    width: 100%;
  }

  @keyframes fadeIn {
    from {
      opacity: 0;
      transform: translateY(10px);
    }
    to {
      opacity: 1;
      transform: translateY(0);
    }
  }

  /* Stili per i page block (riutilizzati dalla sezione page) */
  .title-description {
    text-align: center;
    margin: 0 auto;
    width: 100%;
  }
  
.title-description__title {
  font-family: var(--font-headline);
  font-size: var(--h1-size);
  line-height: var(--h1-line);
  text-transform: uppercase;
  color: var(--text-dark);
  margin-bottom: 20rem;
  letter-spacing: 0.8rem;
}

  .title-description__description {
    font-family: var(--font-secondary);
    font-size: 16rem;
    line-height: 1.6;
    color: var(--color-text);
    margin: 0;
}

  .image-full-width {
    width: 100%;
  }

  .image-full-width__img,
  .image-full-width__video {
    width: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
  }

  .image-full-width__youtube {
    position: relative;
    width: 100%;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
  }

  .image-full-width__youtube-iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }

  .centered-media {
    width: 100%;
    display: flex;
    justify-content: center;
  }

  .centered-media__img,
  .centered-media__video {
    max-width: 800rem;
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
    object-position: center;
  }

  .centered-media__youtube {
    position: relative;
    width: 100%;
    max-width: 800rem;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
  }

  .centered-media__youtube-iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }

  .two-images {
    width: 100%;
  }

  .two-images__container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16rem;
  }

  .two-images__item {
    width: 100%;
  }

  .two-images__img,
  .two-images__video {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
  }

  @media (max-width: 768px) {
    .two-images__container {
      grid-template-columns: 1fr;
      gap: 8rem;
    }
  }

  .text-block {
    width: 100%;
  }

  .text-block__content {
    max-width: 560rem;
    margin: 0 auto;
    font-family: "Sigma Serif";
    font-size: 16rem;
    line-height: 20rem;
    color: #333333;
    letter-spacing: 0.08px;
  }

  .text-block__title {
    font-family: "Sigma Serif";
    font-size: 16rem;
    font-weight: 400;
    color: #333333;
    margin-bottom: 40rem;
    text-transform: uppercase;
    letter-spacing: 0.08px;
    text-align: center;
  }

  .text-block__text p {
    margin-top: 40rem;
  }

  .text-block__text a {
    color: #333333;
    text-decoration: none;
    transition: opacity 0.2s ease;
  }

  .text-block__text a:hover {
    opacity: 0.7;
  }

  .text {
    text-align: var(--text-align);
  }

  .text--title {
    font-size: 2rem;
    font-weight: 700;
  }

  .text--subtitle {
    font-size: 1.5rem;
  }

  .accordion {
    width: 100%;
  }

  .accordion__container {
    max-width: 560rem;
    margin: 0 auto;
  }

  .accordion__title {
    font-family: "Sigma Serif";
    font-size: 16rem;
    font-weight: 400;
    color: #333333;
    margin-bottom: 40rem;
    text-transform: uppercase;
    letter-spacing: 0.08px;
    text-align: center;
  }

  .accordion__item {
    border-bottom: 1px solid #e0e0e0;
  }

  .accordion__item:last-child {
    border-bottom: none;
  }

  .accordion__trigger {
    width: 100%;
    background: none;
    border: none;
    padding: 20rem 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    text-align: left;
    font-family: "Sigma Serif";
    font-size: 16rem;
    color: #333333;
    letter-spacing: 0.08px;
  }

  .accordion__content p {
    padding-bottom: 16rem;
    padding-top: 16rem;
  }

  .accordion__content a {
    color: #333333;
    text-decoration: none;
    font-family: "Sigma Sans";
    text-transform: uppercase;
  }

  .accordion__content a:hover {
    text-decoration: underline;
  }

  .accordion__trigger:hover {
    opacity: 0.8;
  }

  .accordion__trigger-text {
    flex: 1;
  }

  .accordion__trigger-icon {
    font-size: 20rem;
    font-weight: 300;
    transition: transform 0.3s ease;
    margin-left: 16rem;
  }

  .accordion__trigger[aria-expanded="true"] .accordion__trigger-icon {
    transform: rotate(45deg);
  }

  .accordion__content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
  }

  .accordion__content-inner {
    padding: 0 0 20rem 0;
    font-family: "Sigma Serif";
    font-size: 16rem;
    line-height: 20rem;
    color: #333333;
    letter-spacing: 0.08px;
  }

    .explore-more {
      width: 100%;
      margin-top: 60rem;
    }

    .explore-more-container {
      display: grid;
      grid-template-columns: 1fr 2fr;;
      flex-wrap: wrap;
      justify-content: space-between;
      gap: 40rem;
      align-items: flex-start;
      margin: 0 auto;
    }

    .explore-more-left h3 {
      font-family: var(--font-primary);
      font-size: var(--p-small-size);
      text-transform: uppercase;
      color: var(--text-dark);
      margin-bottom: 20rem;
      letter-spacing: 0.5rem;
    }

    .explore-more-right {
      gap: 20rem;
      width: 100%;
    }

    .explore-more-card {
      display: flex;
      flex-direction: column;
      background-color: #fefefd;
      text-decoration: none;
      color: var(--text-dark);
      transition: transform 0.2s ease;
    }

    .explore-more-card:hover {
      transform: translateY(-2px);
    }

    .explore-more-image {
      width: 100%;
      aspect-ratio: 4/5;
      overflow: hidden;
    }

    .explore-more-image img {
      width: 100%;
      height: 100%;
      object-fit: cover;
    }

    
    /* MOBILE */
    @media (max-width: 768px) {
      .explore-more-container {
        display: block;
      }

      .explore-more-left {
        margin-bottom: 20rem;
        text-align: center;
      }

      .explore-more-right {
        display: flex;
        flex-direction: column;
        gap: 32rem;
        align-items: center;
      }

      .explore-more-card {
        width: 100%;
        max-width: 400rem;
      }
    }
  .full-width-button {
    width: 100%;
    max-width: 560rem;
    padding-top: 80rem;
    padding-bottom: 2rem;
    padding-left: 1rem;
    padding-right: 1rem;
    margin: 0 auto;
  }

  .full-width-button__link {
    display: block;
    width: 100%;
    background-color: #333333;
    color: #ffffff;
    text-decoration: none;
    font-family: "Sigma Sans";
    font-size: 13rem;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    text-align: center;
    padding: 20rem 32rem;
    transition: background-color 0.3s ease;
    border: none;
    cursor: pointer;
  }

  .full-width-button__link:hover {
    background-color: #555555;
  }

  .full-width-button__link--white {
    background-color: #ffffff;
    color: #333333;
    border: 1px solid #333333;
  }

  .full-width-button__link--white:hover {
    background-color: #f5f5f5;
  }

  @media (max-width: 768px) {
    .page-tabs-section {
      margin-left: 1rem;
      margin-right: 1rem;
    }

    .page-tabs__nav {
      flex-wrap: wrap;
    }

    .page-tabs__nav-item {
      padding: 16rem 24rem;
      font-size: 12rem;
    }
  }
/* END_SECTION:page-tabs */

/* START_SECTION:page (INDEX:41, SCOPED:FALSE) */
.custom-html-block {
  width: 100%;
  max-width: 800rem;
  margin: 0 auto;
  }
  
  .title-description {
    text-align: center;
    margin: 0 auto;
    width: 100%;
  }

  /* Titoli principali */
.title-description__title {
  font-family: var(--font-headline);
  font-size: var(--h1-size);
  line-height: var(--h1-line);
  text-transform: uppercase;
  color: var(--text-dark);
  margin-bottom: 20rem;
  letter-spacing: 0.8rem;
}

  .image-full-width {
    width: 100%;
  }

  .image-full-width__img,
  .image-full-width__video {
    width: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
  }

  .image-full-width__youtube {
    position: relative;
    width: 100%;
    padding-bottom: 56.25%; /* 16:9 Aspect Ratio */
    height: 0;
    overflow: hidden;
  }

  .image-full-width__youtube-iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }

  .centered-media {
    width: 100%;
    display: flex;
    justify-content: center;
  }

  .centered-media__img,
  .centered-media__video {
    max-width: 800rem;
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
    object-position: center;
  }

  .centered-media__youtube {
    position: relative;
    width: 100%;
    max-width: 800rem;
    padding-bottom: 56.25%; /* 16:9 Aspect Ratio */
    height: 0;
    overflow: hidden;
  }

  .centered-media__youtube-iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }

  .two-images {
    width: 100%;
  }

  .two-images__container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16rem;

  }

  .two-images__item {
    width: 100%;
  }

  .two-images__img,
  .two-images__video {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
  }

  @media (max-width: 768px) {
    .two-images__container {
      grid-template-columns: 1fr;
      gap: 8rem;
    }
  }

  .text-block {
    width: 100%;
  }

  .text-block__content {
    max-width: 560rem;
    margin: 0 auto;
    font-family: "Sigma Serif";
    font-size: 16rem;
    line-height: 20rem;
    color: #333333;
    letter-spacing: 0.08px;
  }

  .text-block__title {
    font-family: "Sigma Serif";
    font-size: 16rem;
    font-weight: 400;
    color: #333333;
    margin-bottom: 40rem;
    text-transform: uppercase;
    letter-spacing: 0.08px;
    text-align: center;
  }

  .text-block__text ul,
  .text-block__text ol {
    margin: 0;
    padding-left: 0 !important; /* forziamo l’override del default del browser */
    list-style-position: outside;
  }

  .text-block__text li {
    margin-left: 1.2em; /* controlla la distanza pallino-testo */
    padding-left: 0;
  }

  .page-section--sustainability .text-block__content {
    text-align: left;
    max-width: 560rem;
  }

  .accordion__item--link {
    border-bottom: none !important;
  }

  .accordion__link {
    display: block;
    padding: 8rem 0;
    text-decoration: none;
    color: #333333;
    font-family: "Sigma Serif";
    font-size: 16rem;
    transition: opacity 0.2s ease;
  }

  .accordion__link:hover {
    opacity: 0.7;
  }

  .accordion__link-text {
    display: block;
  }

  .page-section--sustainability .text-block__title {
    font-size: 16rem;
  }

     .text-block__text p{
     margin-top: 40rem;
   }

   .text-block__text a {
     color: #333333;
     text-decoration: none;
     transition: opacity 0.2s ease;
   }

   .text-block__text a:hover {
     opacity: 0.7;
   }

   .timeline-block {
     width: 100%;
   }

   .timeline-container {

     margin: 0 auto;
   }

   .timeline-title {
     margin: 0 0 40rem 0;
     text-align: center;
   }

   .timeline-intro {
     font-family: "Sigma Serif";
     font-size: 16rem;
     line-height: 20rem;
     color: #333333;
     letter-spacing: 0.08px;
     text-align: center;
     margin: 0 0 80rem 0;
     max-width: 800rem;
     margin-left: auto;
     margin-right: auto;
   }

   .timeline-layout {
     display: grid;
     grid-template-columns: 1fr 1fr;
     gap: 16rem;
     margin-top: 80rem;

   }

   .timeline-nav {
     position: sticky;
     top: 100rem;
     height: fit-content;
     background: white;
     z-index: 10;
     border-top: 1px solid rgba(51, 51, 51, 0.7);
   }

   .timeline-nav-dates {
     display: flex;
     flex-direction: row;
     gap: 20rem;
     align-items: start;
   }

   .timeline-nav-date {
     font-family: "Sigma Sans";
     font-size: 13rem;
     color: #666666;
     text-decoration: none;
     transition: color 0.3s ease;
     padding: 8rem 0;
   }

   .timeline-nav-date:hover {
     color: #333333;
   }

   .timeline-events {
     max-width: none;
     margin: 0;
   }

   .timeline-event {
     margin-bottom: 6rem;
     border-top: 1px solid rgba(51, 51, 51, 0.7);
     padding: 8rem 0;
     display: grid;
     grid-template-columns: 0.5fr 1fr;
   }

   .timeline-event:last-child {
     border-bottom: none;
     margin-bottom: 0;
   }

   .timeline-event-date {
     font-family: "Sigma Sans";
     font-size: 13rem;
     color: #666666;
     margin-bottom: 8rem;
     text-transform: uppercase;
     letter-spacing: 0.5px;
   }

   .timeline-event-title {
     font-family: "Sigma Serif";
     font-size: 16rem;
     font-weight: 400;
     letter-spacing: 0.08rem;
     color: #333333;
     line-height: 1.2;
   }

   .timeline-event-description {
     font-family: "Sigma Serif";
     font-size: 16rem;
     line-height: 20rem;
     color: #666666;
     letter-spacing: 0.08px;
     padding-top: 16rem;
   }

   .timeline-event-image {
     width: 100%;
     height: 100%;
     object-fit: cover;
     object-position: center;
     padding-top: 32rem;
     padding-bottom: 10rem;
   }

   .timeline-event-read-more {
     padding-top: 16rem;
   }

   .timeline-event-read-more a {
     font-family: "Sigma Sans";
     font-size: 13rem;
     font-weight: 400;
     line-height: 1.25;
     text-transform: uppercase;
     letter-spacing: 0.26rem;
     display: inline-block;
     padding-right: 16rem;
     position: relative;
     cursor: pointer;
     color: #333333;
     text-decoration: none;
   }

   .timeline-event-read-more a:hover {
     text-decoration: underline;
   }

   .timeline-event-read-more a::before {
     content: "";
     position: absolute;
     top: 0;
     right: 0;
     width: 8rem;
     height: 8rem;
     background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8' fill='none'%3E%3Cpath d='M1 7L7 1M7 1H1M7 1V7' stroke='%23333333' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center / contain;
   }

   @media (max-width: 768px) {
     .timeline-layout {
       grid-template-columns: 1fr;
       gap: 40rem;
     }

     .timeline-nav {
       position: static;
     }

     .timeline-nav-dates {
       flex-direction: row;
       gap: 20rem;
       flex-wrap: wrap;
     }

     .timeline-events {
       order: 1;
     }

     .timeline-event {
      display: flex;
      flex-direction: column;
     }
   }

   .iframe-full-width {
      width: 100vw;
      position: relative;
      left: 50%;
      right: 50%;
      margin-left: -50vw;
      margin-right: -50vw;
      overflow: hidden;
    }

  .iframe-full-width__wrapper {
      width: 100%;
      overflow: hidden;
   }

  .iframe-full-width__frame {
      width: 100%;
      height: 100vh; /* altezza pari allo schermo */
      border: none;
      display: block;
   }

    @media (max-width: 768px) {
    .iframe-full-width__frame {
      height: 100vh; /* altezza pari allo schermo */
    }
  }

   .iframe-centered {
      width: 100%;
      display: flex;
      justify-content: center;
      padding-top: 120rem;
      padding-bottom: 120rem;
    }

  .iframe-centered__wrapper {
    width: 100%;
    max-width: 800rem; /* valore di default */
    margin: 0 auto;
    position: relative;
    overflow: hidden;
  }

  .iframe-centered__frame {
    width: 100%;
    height: 600rem; /* puoi regolarlo o renderlo dinamico */
    border: none;
    display: block;
  }

  @media (max-width: 768px) {
    .iframe-centered__frame {
      height: 400rem;
    }
  }

  .iframe-text {
    width: 100%;
  }

  .iframe-text__inner {
    display: grid;
    grid-template-columns: 1fr 2.5fr; /* testo più stretto, iframe più largo */
    gap: 24rem;
    align-items: start;
    width: 100%;
    margin: 0 auto;
  }

  .iframe-text__content {
    font-family: "Sigma Serif";
    color: #333333;
  }

  .iframe-text__title {
    font-family: var(--font-headline);
    font-size: 24rem;
    margin-bottom: 20rem;
    text-transform: uppercase;
    letter-spacing: 0.5rem;
  }

  .iframe-text__text {
    font-size: 16rem;
    line-height: 1.8;
    margin-bottom: 30rem;
  }

  .iframe-text__text a {
    color: #333333;
    text-decoration: none;
  }

  .iframe-text__button {
    display: inline-block;
    width: 100%;
    background-color: #333;
    color: #ffffff;
    text-decoration: none;
    text-transform: uppercase;
    font-family: "Sigma Sans";
    font-size: 13rem;
    letter-spacing: 0.5rem;
    padding: 14rem 24rem;
    transition: opacity 0.2s ease;
    text-align: center !important;
  }

  .iframe-text__button:hover {
    opacity: 0.8;
  }

  .iframe-text__iframe {
    width: 100%;
    height: 100%;
  }

  .iframe-text__frame {
    width: 100%;
    height: 450rem;
    border: none;
  }

  @media (max-width: 768px) {

    .iframe-text {
    width: 100%;
    padding: 60rem 0;
    }

    .iframe-text__inner {
      grid-template-columns: 1fr;
      gap: 40rem;
    }

    .iframe-text__frame {
      height: 400rem;
    }
  }


  .text {
    text-align: var(--text-align);
  }
  .text--title {
    font-size: 2rem;
    font-weight: 700;
  }
     .text--subtitle {
     font-size: 1.5rem;
   }

   .accordion {
     width: 100%;
   }

   .accordion__container {
     max-width: 560rem;
     margin: 0 auto;
   }

   .accordion__title {
     font-family: "Sigma Serif";
     font-size: 16rem;
     font-weight: 400;
     color: #333333;
     margin-bottom: 40rem;
     text-transform: uppercase;
     letter-spacing: 0.08px;
     text-align: center;
   }

  .accordion__trigger {
    border-bottom: 1px solid #000;
  }

  .accordion__trigger:first-child {
  
  }

  .accordion__item:last-child {
    border-bottom: none;
  }

   .accordion__trigger {
     width: 100%;
     background: none;
     border: none;
     padding: 20rem 0;
     display: flex;
     justify-content: space-between;
     align-items: center;
     cursor: pointer;
     text-align: left;
     font-family: "Sigma Serif";
     font-size: 16rem;
     color: #333333;
     letter-spacing: 0.08px;
   }

   .accordion__content p {
     padding-bottom: 16rem;
     padding-top: 16rem;
   }

  .accordion__content a {
    color: #333333;
    text-decoration: none;
    font-family: "Sigma Sans";
    text-transform: uppercase;
  }

   .accordion__content a:hover {
     text-decoration: underline;
   }

   .accordion__trigger:hover {
     opacity: 0.8;
   }

   .accordion__trigger-text {
     flex: 1;
   }

   .accordion__trigger-icon {
     font-size: 20rem;
     font-weight: 300;
     transition: transform 0.3s ease;
     margin-left: 16rem;
   }

   .accordion__trigger[aria-expanded="true"] .accordion__trigger-icon {
     transform: rotate(45deg);
   }

  .accordion__content {
    height: fit-content;
    overflow: hidden;
    transition: height 0.3s ease;
  }

   .accordion__content-inner {
     padding: 0 0 20rem 0;
     font-family: "Sigma Serif";
     font-size: 16rem;
     line-height: 20rem;
     color: #333333;
     letter-spacing: 0.08px;
   }

    .explore-more {
      width: 100%;
      margin-top: 60rem;
    }

    .explore-more-container {
      display: grid;
      grid-template-columns: 1fr 2fr;;
      flex-wrap: wrap;
      justify-content: space-between;
      gap: 40rem;
      align-items: flex-start;
      margin: 0 auto;
    }

    .explore-more-left h3 {
      font-family: var(--font-primary);
      font-size: var(--p-small-size);
      text-transform: uppercase;
      color: var(--text-dark);
      margin-bottom: 20rem;
      letter-spacing: 0.5rem;
    }

    .explore-more-right {
      gap: 20rem;
      width: 100%;
    }

    .explore-more-card {
      display: flex;
      flex-direction: column;
      background-color: #fefefd;
      text-decoration: none;
      color: var(--text-dark);
      transition: transform 0.2s ease;
    }

    .explore-more-card:hover {
      transform: translateY(-2px);
    }

    .explore-more-image {
      width: 100%;
      aspect-ratio: 4/5;
      overflow: hidden;
    }

    .explore-more-image img {
      width: 100%;
      height: 100%;
      object-fit: cover;
    }

    /* MOBILE */
    @media (max-width: 768px) {
      .explore-more-container {
        display: block;
      }

      .explore-more-left {
        margin-bottom: 20rem;
        text-align: center;
      }

      .explore-more-right {
        display: flex;
        flex-direction: column;
        gap: 32rem;
        align-items: center;
      }

      .explore-more-card {
        width: 100%;
        max-width: 400rem;
      }
    }


  
  .page-button {
    width: 100%;
    display: flex;
    justify-content: center;
    margin-top: 40rem;
    margin-bottom: 40rem;
  }

  .page-button__inner {
    width: 100%;
    max-width: 800rem; /* stesso limite dei blocchi di testo */
    margin: 0 auto;
  }

  .m-btn {
    display: block;
    width: 100%;
    background-color: #333333;
    color: #ffffff;
    text-align: center;
    font-family: "Sigma Sans";
    font-size: 14rem;
    text-transform: uppercase;
    text-decoration: none;
    padding: 18rem 0;
    transition: opacity 0.2s ease;
  }

  .m-btn:hover {
    opacity: 0.8;
  }

  .link-list-block {
    width: 100%;
  }

  .link-list-block__inner {
    margin: 0 auto;
  }

  .link-list-block__title {
    font-family: var(--font-headline);
    font-size: 24rem;
    font-weight: 400;
    text-transform: uppercase;
    color: #333333;
    margin-bottom: 24rem;
  }

  /* Forza i bullet points anche se il tema li rimuove */
  .link-list-block__list {
    list-style-type: disc;
    list-style-position: outside;
    padding-left: 16rem;
    margin: 0;
    display: block; /* evita interferenze da display flex */
  }

  .link-list-block__list li {
    display: list-item;
    list-style: disc !important;
    margin-bottom: 8rem;
  }

  /* Se il tema resetta i marker */
  .link-list-block__list li::marker {
    color: #333;
    font-size: 14rem;
  }

  /* Stile del link */
  .link-list-block__link {
    font-family: "Sigma Serif";
    font-size: 16rem;
    line-height: 1.6;
    color: #333;
    text-decoration: none;
    transition: opacity 0.2s ease;
  }

  .link-list-block__link:hover {
    opacity: 0.7;
  }

  @media (max-width: 768px) {
    .link-list-block {
      padding-bottom: 60rem;
    }

    .link-list-block__title {
      font-size: 18rem;
    }
  }
/* END_SECTION:page */

/* START_SECTION:password (INDEX:42, SCOPED:FALSE) */
.password-page {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #FEFEFD;
    padding: 20px;
    font-family: "Sigma Sans";
  }

  .password-container {
    max-width: 400px;
    width: 100%;
    text-align: center;
  }

  .password-content {
    background: white;
    padding: 40px 30px;
    border-radius: 8px;

  }

  .password-title {
    font-size: 2rem;
    margin-bottom: 1rem;
    color: #333;
  }

  .password-message {
    margin-bottom: 2rem;
    color: #333;
    line-height: 1.5;
  }

  .password-form {
    display: flex;
    flex-direction: column;
    gap: 1rem;
  }

  .password-label {
    font-weight: 500;
    text-align: left;
    color: #333;
  }

  .password-input {
    padding: 12px 16px;
    border: 1px solid #333;
    border-radius: 4px;
    font-size: 1rem;
    width: 100%;
    box-sizing: border-box;
  }

  .password-input:focus {
    outline: none;
    border-color: #007cba;

  }

  .password-button {
    background-color: #007cba;
    color: white;
    border: none;
    padding: 12px 24px;
    border-radius: 4px;
    font-size: 1rem;
    cursor: pointer;
    transition: background-color 0.2s;
  }

  .password-button:hover {
    background-color: #005a87;
  }

  .password-errors {
    background-color: #f8d7da;
    color: #721c24;
    padding: 12px;
    border-radius: 4px;
    margin-bottom: 1rem;
    border: 1px solid #f5c6cb;
  }
/* END_SECTION:password */

/* START_SECTION:product-blocks (INDEX:44, SCOPED:FALSE) */
.hero-image {
    width: 100%;
    margin-top: -120rem !important;
  }

  .hero-image__img,
  .hero-image__video {
    width: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
  }

  .product-blocks-section {
    padding-top: 53px;
    margin-left: 16rem;
    margin-right: 16rem;
  }
  
  .title-description {
    max-width: 900rem;
    text-align: center;
    margin: 0 auto;
    width: 100%;
    padding: 0 20rem;
  }
  
  .title-description__title {
    padding-bottom: 24rem;
  }
  
  .title-description__description {
    font-family: var(--font-secondary);
    font-size: var(--p-size);
    line-height: var(--p-line);
    max-width: 560rem;
    margin: 0 auto;
  }

  .image-full-width {
    width: 100%;
  }

  .image-full-width__img,
  .image-full-width__video {
    width: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
  }

  .image-full-width__youtube {
    position: relative;
    width: 100%;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
  }

  .image-full-width__youtube-iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }

  .centered-media {
    width: 100%;
    display: flex;
    justify-content: center;
  }

  .centered-media__img,
  .centered-media__video {
    max-width: 800rem;
    width: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
  }

  .centered-media__youtube {
    position: relative;
    width: 100%;
    max-width: 800rem;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
  }

  .centered-media__youtube-iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }

  .two-images {
    width: 100%;
  }

  .two-images__container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20rem;
    margin: 0 auto;
  }

  .two-images__item {
    width: 100%;
  }

  .two-images__img,
  .two-images__video {
    width: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
  }

  .text-block {
    width: 100%;
    padding: 0 20rem;
  }

  .text-block__content {
    max-width: 800rem;
    margin: 0 auto;
    text-align: center;
  }

  .text-block__title {
    font-family: "Sigma Serif";
    font-size: 24rem;
    font-weight: 400;
    color: var(--color-text);
    margin: 0 0 20rem 0;
    text-transform: uppercase;
  }

    .explore-more {
      width: 100%;
      margin-top: 60rem;
    }

    .explore-more-container {
      display: grid;
      grid-template-columns: 1fr 2fr;;
      flex-wrap: wrap;
      justify-content: space-between;
      gap: 40rem;
      align-items: flex-start;
      margin: 0 auto;
    }

    .explore-more-left h3 {
      font-family: var(--font-primary);
      font-size: var(--p-small-size);
      text-transform: uppercase;
      color: var(--text-dark);
      margin-bottom: 20rem;
      letter-spacing: 0.5rem;
    }

    .explore-more-right {
      gap: 20rem;
      width: 100%;
    }

    .explore-more-card {
      display: flex;
      flex-direction: column;
      background-color: #fefefd;
      text-decoration: none;
      color: var(--text-dark);
      transition: transform 0.2s ease;
    }

    .explore-more-card:hover {
      transform: translateY(-2px);
    }

    .explore-more-image {
      width: 100%;
      aspect-ratio: 4/5;
      overflow: hidden;
    }

    .explore-more-image img {
      width: 100%;
      height: 100%;
      object-fit: cover;
    }

    /* MOBILE */
    @media (max-width: 768px) {
      .explore-more-container {
        display: block;
      }

      .explore-more-left {
        margin-bottom: 20rem;
        text-align: center;
      }

      .explore-more-right {
        display: flex;
        flex-direction: column;
        gap: 32rem;
        align-items: center;
      }

      .explore-more-card {
        width: 100%;
        max-width: 400rem;
      }
    }

  .text {
    text-align: var(--text-align);
    padding: 20rem 1rem;
  }

  .text--title {
    font-size: 2rem;
    font-weight: 700;
  }

  .text--subtitle {
    font-size: 1.5rem;
  }

  .accordion {
    width: 100%;
  }

  .accordion__title {
    font-family: "Sigma Serif";
    font-size: 24rem;
    font-weight: 400;
    color: var(--color-text);
    margin: 0 0 20rem 0;
    text-transform: uppercase;
    text-align: center;
  }

  .accordion__items {
    max-width: 800rem;
    margin: 0 auto;
  }

  .accordion__item {
    border-bottom: 1px solid #000;
  }


  .accordion__trigger {
    width: 100%;
    background: none;
    border: none;
    padding: 8rem 0;
    text-align: left;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-family: "Sigma Serif";
    font-size: 16rem;
    color: var(--color-text);
    
  }

  .accordion__icon {
    font-size: 20rem;
    font-weight: bold;
  }

  .accordion__content {
    display: none;
    padding: 0 0 20rem 0;
    font-family: "Sigma Serif";
    font-size: 14rem;
    line-height: 1.6;
    color: var(--color-text);
  }

  .timeline {
    width: 100%;
    padding-top: 160rem;
    padding-bottom: 2rem;
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .image-text {
    width: 100%;
  }

  .image-text__container {
    display: grid;
    grid-template-columns: 1fr 2fr;
    gap: 60rem;
    align-items: start
    margin: 0 auto;
  }

  .image-text__container--reverse {
    direction: rtl;
  }

  .image-text__container--reverse > * {
    direction: ltr;
  }

  .image-text__content {
    display: flex;
    flex-direction: column;
    gap: 24rem;
  }

  .image-text__title {
    font-family: "Sigma Serif";
    font-size: 16rem;
    font-weight: 400;
    color: var(--color-text);
    margin: 0;
    text-transform: uppercase;
    line-height: 1.2;
  }

  .image-text__text {
    font-family: "Sigma Serif";
    font-size: 16rem;
    line-height: 1.25;
    color: var(--color-text);
  }

  .image-text__media {
    width: 100%;
    aspect-ratio: 4/3;
    overflow: hidden;
  }

  .image-text__img,
  .image-text__video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
  }

  .image-text__youtube {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
  }

  .image-text__youtube-iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }

  .slideshow {
    width: 100%;
    position: relative;
  }

  .slideshow__container {
    position: relative;
    width: 100%;
    margin: 0 auto;
    overflow: hidden;
  }

  .slideshow__wrapper {
    position: relative;
    width: 100%;
    max-height: 800rem;
    aspect-ratio: 16/9;
    overflow: hidden;
  }

  .slideshow__slide {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: opacity 0.5s ease-in-out;
  }

  .slideshow__slide--active {
    opacity: 1;
  }

  .slideshow__image {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
  }

  .slideshow__arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(255, 255, 255, 0.9);
    border: none;
    border-radius: 50%;
    width: 50rem;
    height: 50rem;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: #333333;
    transition: all 0.3s ease;
    z-index: 2;
  }

  .slideshow__arrow:hover {
    background: rgba(255, 255, 255, 1);
    transform: translateY(-50%) scale(1.1);
  }

  .slideshow__arrow--prev {
    left: 25rem;
  }

  .slideshow__arrow--next {
    right: 25rem;
  }

  .slideshow__dots {
    display: flex;
    justify-content: center;
    gap: 12rem;
    margin-top: 20rem;
  }

  .slideshow__dot {
    width: 12rem;
    height: 12rem;
    border-radius: 50%;
    border: none;
    background: rgba(51, 51, 51, 0.3);
    cursor: pointer;
    transition: all 0.3s ease;
  }

  .slideshow__dot:hover {
    background: rgba(51, 51, 51, 0.6);
    transform: scale(1.2);
  }

  .slideshow__dot--active {
    background: #333333;
  }

  .slideshow-text {
    width: 100%;
  }

  .slideshow-text__container {
    display: grid;
    grid-template-columns: 3fr 1fr;
    gap: 60rem;
    align-items: start
    margin: 0 auto;
  }

  .slideshow-text__container--reverse {
    direction: rtl;
  }

  .slideshow-text__container--reverse > * {
    direction: ltr;
  }

  .slideshow-text__slideshow {
    width: 100%;
  }

  .slideshow-text__slideshow-container {
    position: relative;
    width: 100%;
    overflow: hidden;
  }

  .slideshow-text__wrapper {
    position: relative;
    width: 100%;
    max-height: 600rem;
    aspect-ratio: 16/9;
  }

  .slideshow-text__slide {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: opacity 0.5s ease-in-out;
  }

  .slideshow-text__slide--active {
    opacity: 1;
  }

  .slideshow-text__image {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
  }

  .slideshow-text__arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(255, 255, 255, 0.9);
    border: none;
    border-radius: 50%;
    width: 50rem;
    height: 50rem;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: #333333;
    transition: all 0.3s ease;
    z-index: 2;
  }

  .slideshow-text__arrow:hover {
    background: rgba(255, 255, 255, 1);
    transform: translateY(-50%) scale(1.1);
  }

  .slideshow-text__arrow--prev {
    left: 25rem;
  }

  .slideshow-text__arrow--next {
    right: 25rem;
  }

  .slideshow-text__dots {
    display: flex;
    justify-content: center;
    gap: 12rem;
    margin-top: 20rem;
  }

  .slideshow-text__dot {
    width: 12rem;
    height: 12rem;
    border-radius: 50%;
    border: none;
    background: rgba(51, 51, 51, 0.3);
    cursor: pointer;
    transition: all 0.3s ease;
  }

  .slideshow-text__dot:hover {
    background: rgba(51, 51, 51, 0.6);
    transform: scale(1.2);
  }

  .slideshow-text__dot--active {
    background: #333333;
  }

  .slideshow-text__content {
    display: flex;
    flex-direction: column;
    gap: 24rem;
  }

  .slideshow-text__title {
    font-family: "Sigma Serif";
    font-size: 24rem;
    font-weight: 400;
    color: var(--color-text);
    margin: 0;
    text-transform: uppercase;
    line-height: 1.2;
  }

  .slideshow-text__text {
    font-family: "Sigma Serif";
    font-size: 16rem;
    line-height: 1.6;
    color: var(--color-text);
  }

  @media (max-width: 768px) {
    .two-images__container {
      grid-template-columns: 1fr;
      gap: 16rem;
    }
    
    .title-description__description {
      font-size: 14rem;
    }
    
    .image-text__container {
      grid-template-columns: 1fr;
      gap: 40rem;
    }
    
    .image-text__container--reverse {
      direction: ltr;
    }
    
    .image-text__title {
      font-size:16rem;
    }
    
    .image-text__text {
      font-size: 14rem;
    }
    
     .slideshow__arrow {
       width: 40rem;
       height: 40rem;
     }
     
     .slideshow__arrow--prev {
       left: 20rem;
     }
     
     .slideshow__arrow--next {
       right: 20rem;
     }
    
    .slideshow__dots {
      gap: 8rem;
      margin-top: 16rem;
    }
    
     .slideshow__dot {
       width: 10rem;
       height: 10rem;
     }
     
     .slideshow-text__container {
       grid-template-columns: 1fr;
       gap: 40rem;
     }
     
     .slideshow-text__container--reverse {
       direction: ltr;
     }
     
     .slideshow-text__title {
       font-size: 20rem;
     }
     
     .slideshow-text__text {
       font-size: 14rem;
     }
     
     .slideshow-text__arrow {
       width: 40rem;
       height: 40rem;
     }
     
     .slideshow-text__arrow--prev {
       left: 20rem;
     }
     
     .slideshow-text__arrow--next {
       right: 20rem;
     }
     
     .slideshow-text__dots {
       gap: 8rem;
       margin-top: 16rem;
     }
     
     .slideshow-text__dot {
       width: 10rem;
       height: 10rem;
     }

    .hero-image__video {
      aspect-ratio: 9/16;
  }


   }
/* END_SECTION:product-blocks */

/* START_SECTION:product-categories (INDEX:45, SCOPED:FALSE) */
/* ===== Product Categories Section ===== */

.product-categories-section {
  width: 100%;
  background: white;
}

.product-categories-container {
  margin: 0 auto;
  padding: 0 20rem;
  text-align: center;
}

/* titolo sezione */
.product-categories-title {
  font-size: var(--p-size);
  margin-bottom: 60rem;
}

/* griglia dinamica */
.product-categories-grid {
  display: grid;
  gap: clamp(16rem, 2vw, 32rem);
}

.product-categories-grid-1 {
  grid-template-columns: 1fr;
  max-width: 800rem;
  margin-left: auto;
  margin-right: auto;
}

.product-categories-grid-2 {
  grid-template-columns: repeat(2, 1fr);
}

.product-categories-grid-3 {
  grid-template-columns: repeat(3, 1fr);
}

/* card */
.product-categories-item {
  display: flex;
  flex-direction: column;
  background: white;
  color: var(--text-dark);
  text-decoration: none;
}

.product-categories-linkable {
  transition: transform 0.3s ease;
}

/* immagine */
.product-categories-image {
  width: 100%;
  aspect-ratio: 0.8;
  overflow: hidden;
}

.product-categories-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

/* contenuto */
.product-categories-content {
  padding: 40rem 0rem;
  text-align: left;
}

/* titoli e testi */
.product-categories-category {
  font-size: var(--p-size);
  text-transform: uppercase;
  letter-spacing: 0.08rem;
  margin: 0 0 8rem;
}

.product-categories-description {
  font-size: var(--p-size);
  line-height: var(--p-line);
  letter-spacing: 0.08rem;
  margin: 0 0 16rem;
  max-width: 420rem;
}

/* link */
.product-categories-link {
  display: inline-block;
  text-decoration: none;
  letter-spacing: 0.08rem;
  transition: opacity 0.3s ease;
}

.product-categories-link:hover {
  opacity: 0.7;
}

/* responsive */
@media (max-width: 1200px) {
  .product-categories-grid {
    grid-template-columns: 1fr !important;
    gap: 20rem;
  }

  .product-categories-content {
    padding: 30rem 0rem;
  }

  .product-categories-image {
    aspect-ratio: 0.8;
  }
}

@media (max-width: 768px) {
  .product-categories-container {
    padding: 0 16rem;
  }

  .product-categories-grid {
    grid-template-columns: 1fr;
    gap: 16rem;
  }

  .product-categories-item {
    aspect-ratio: auto;
  }
}
/* END_SECTION:product-categories */

/* START_SECTION:product-grid (INDEX:46, SCOPED:FALSE) */
.product-grid-section {
    width: 100%;
    background: white;
    margin-top: 100rem;
  }

  /* Product Filters Form */
  .product-filters-form {
    width: 100%;
  }
  
  /* Product Filters */
  .product-filters {
    background: white;
    padding: 0 20rem;
    margin-bottom: 40rem;
  }

  .filter-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 40rem;
  }

  .filter-title {
    font-family: var(--font-secondary);
    font-size: var(--p-small-size);
    font-weight: 400;
    color: var(--text-dark);
    margin: 0;
  }

  .filter-controls,
  .filter-compare-link  {
    font-family: var(--font-primary);
    font-size: 14rem;
    color: #666666;
    text-decoration: none;
  }
  
  .filter-count {
    cursor: pointer;
    user-select: none;
    transition: color 0.3s ease;
  }
  
  .filter-count:hover {
    color: #333333;
  }
  
  .filter-toggle-icon {
    margin-right: 2rem;
    font-weight: bold;
    transition: transform 0.3s ease;
  }
  
  .filter-groups {
    transition: max-height 0.3s ease, opacity 0.3s ease;
    overflow: hidden;
  }
  
  .filter-groups.collapsed {
    max-height: 0;
    opacity: 0;
  }

  /* ===== Desktop layout (titolo sopra, opzioni sotto) ===== */
  .filter-groups {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(130rem, 1fr));
    gap: 40rem;
  }

  .filter-group {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    margin-bottom: 30rem;
    gap: 10rem;
  }

  .filter-group-title {
    font-family: var(--font-primary);
    font-size: var(--p-small-size);
    font-weight: 400;
    text-transform: uppercase;
    color: rgba(51, 51, 51, 0.5);
    margin: 0;
    letter-spacing: 0.5px;
  }

  .filter-options {
    display: flex;
    flex-direction: column;
    gap: 6rem;
  }

  .filter-option {
    display: flex;
    align-items: center;
    cursor: pointer;
    font-family: var(--font-primary);
    font-size: var(--p-small-size);
    color: #666666;
    transition: color 0.3s ease;
    user-select: none;
  }
  
  .filter-option input[type="checkbox"]:checked + span {
    color: #333333;
    font-weight: 500;
  }
  
  .filter-option-active {
    color: #333333 !important;
    text-decoration: underline;
  }
  
  .filter-option-active span {
    color: #333333 !important;
    font-weight: 500 !important;
  }

  .filter-option input[type="checkbox"] {
    display: none;
  }

  .filter-footer {
    margin-top: 20px;
    text-align: left;
    padding-left: 0;
    grid-column: 1 / -1;
    width: 100%;
  }

  .clear-filters {
    background: none;
    border: none;
    font-family: var(--font-primary);
    font-size: 14px;
    color: #666666;
    cursor: pointer;
    transition: color 0.3s ease;
    padding: 0;
    margin: 0;
  }

  .clear-filters:hover {
    color: #333333;
  }
  
  .apply-filters {
    background: #333333;
    border: none;
    font-family: var(--font-primary);
    font-size: 14rem;
    color: white;
    cursor: pointer;
    padding: 8rem 16rem;
    margin-left: 16rem;
    transition: background-color 0.3s ease;
  }
  
  .apply-filters:hover {
    background: #555555;
  }

  /* ===== Responsive: mobile e tablet ===== */
  @media (max-width: 1200px) {
    .filter-groups {
      display: flex;
      flex-direction: row;
      flex-wrap: wrap;
      gap: 24rem;
    }

    .filter-group {
      display: grid;
      grid-template-columns: 180rem 1fr;
      align-items: start;
      border-top: 1px solid rgba(0, 0, 0, 0.05);
      padding-top: 12rem;
      padding-bottom: 12rem;
    }

    .filter-group-title {
      color: rgba(51, 51, 51, 0.6);
      text-align: left;
      margin-bottom: 0;
    }

    .filter-options {
      display: flex;
      flex-wrap: wrap;
      justify-content: flex-start;
    }
  }

  /* ===== Mobile molto stretto ===== */
  @media (max-width: 480px) {

    .filter-group-title {
      margin-bottom: 6rem;
    }

    .filter-options {
      gap: 6rem 12rem;
    }
  }


.product-grid {
  display: grid;
  grid-auto-flow: dense;
  width: 100%;
  gap: 0;
  /* desktop default */
  grid-template-columns: repeat(3, 1fr);
}

  /* tablet */
  @media screen and (max-width: 1200px) {
    .product-grid {
      grid-template-columns: repeat(2, 1fr) !important;
    }

    .product-card.promotional-card.wide-card {
      grid-column: 1 / -1 !important;
    }
  }

  /* mobile */
  @media screen and (max-width: 768px) {
    .product-grid {
      grid-template-columns: 1fr !important;
    }

    .product-card {
      border-right: none !important;
    }

    /* tutte le promo diventano quadrate */
    .product-card.promotional-card.wide-card {
      grid-column: 1 / -1 !important;
      aspect-ratio: 1 / 1 !important;
      background-size: cover;
      background-position: center;
      height: auto !important;
    }

    .product-card.promotional-card:not(.wide-card) {
      aspect-ratio: 1 / 1;
    }
  }



  .product-grid-container {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0;
  }

  .product-grid-title {
    font-family: var(--font-secondary);
    font-size: 16rem;
    font-weight: 400;
    text-transform: uppercase;
    color: #333333;
    text-align: center;
    margin: 0 0 60rem 0;
    letter-spacing: 0.5px;
    padding: 0 20px;
  }

  .product-card {
    padding: 16rem 16rem 32rem 16rem;
    border-right: 1px solid rgba(51, 51, 51, 0.1) !important;
    border-bottom: 1px solid rgba(51, 51, 51, 0.1) !important;
    
    position: relative;
    background: white;
    text-decoration: none;
    color: inherit;
    display: block;
    transition: opacity 0.3s ease;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }

  .product-card:nth-child(1),  .product-card:nth-child(2),  .product-card:nth-child(3) {
    border-top: 1px solid rgba(51, 51, 51, 0.1);
  }
  
  .product-card:nth-child(3n) {
    border-right: none;
  }

  .product-card-image {
    width: 100%;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20rem;
  }

  .product-card-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
  }

  .product-card-placeholder {
    width: 100%;
    height: 100%;
    background: #f5f5f5;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #999;
    font-family: var(--font-primary);
    font-size: 14rem;
  }

  .product-card-new,
  .product-card-discontinued {
    position: absolute;
    top: 16rem;
    left: 16rem;  
    color: #333333;
    font-family: var(--font-primary);
    font-size: 12rem;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 0.5px;
  }



  .product-card-content {
    text-align: left;
  }

  .product-card-title {
    font-family: var(--font-secondary);
    font-size: var(--p-size);
    font-weight: 400;
    color: var(--text-dark);
    line-height: var(--h3-line);
  }

  .product-card-category {
    font-family: var(--font-primary);
    font-size: 14rem;
    font-weight: 400;
    color: #666666;
    margin: 0;
    line-height: var(--h3-line);
  }

  /* Promotional Cards */
  .promotional-card {
    display: block;
    text-decoration: none;
    color: inherit;
    transition: all 0.3s ease;
    padding: 0rem !important;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }

  .promotional-card:hover {
    transform: translateY(-2rem);
  }



  .promotional-content-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-end;
    text-align: left;
    padding: 20rem;
    z-index: 2;
  }
  
  .promotional-content-overlay > * {
    color: var(--text-light);
  }

  .promotional-content-overlay h3 {
    font-family: var(--font-secondary);
    font-size: var(--p-size);
    font-weight: 400;
    line-height: var(--h3-line);
    letter-spacing: 0.5px;
  }

  .promotional-content {
    text-align: center;
    color: white;
  }

  .promotional-content h3 {
    font-family: var(--font-secondary);
    font-size: 18rem;
    font-weight: 400;
    margin: 0 0 20rem 0;
    line-height: var(--h3-line);
    letter-spacing: 0.5px;
  }

  .promotional-content-wide {
    text-align: center;
    color: white;
  }

  .promotional-content-wide h3 {
    font-family: var(--font-secondary);
    font-size: 24rem;
    font-weight: 400;
    margin: 0 0 30rem 0;
    line-height: var(--h3-line);
    letter-spacing: 0.5px;
  }

  .promotional-link {
    font-family: var(--font-primary);
    font-size: 14rem;
    font-weight: 400;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: color 0.3s ease;
    display: inline-block;
    margin-top: 10rem;
  }

  .promotional-link:hover {
    color: rgba(255, 255, 255, 0.5);
  }

  .wide-card {
    grid-column: span 3 !important;
    height: 100vh;
  }

  /* Paginazione */
  .product-grid-pagination {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 80rem;
    font-size: 13rem;
    width: 100%;
    grid-column: 1 / -1;
    padding: 0 16rem;
  }

  .pagination-numbers {
    display: flex;
    gap: 0.5rem;
    align-items: center;
    justify-content: center;
    flex: 1;
  }

  .pagination-arrow,
  .pagination-number {
    width: 40rem;
    height: 40rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(51, 51, 51, 0.3);
    text-decoration: none;
    color: #333;
    border-radius: 0;
    transition: all 0.2s;
    font-size: 13rem;
    font-family: var(--font-primary);
  }

  .pagination-arrow:hover,
  .pagination-number:hover {
    background-color: #f0f0f0;
  }

  .pagination-arrow.disabled {
    opacity: 0.3;
    pointer-events: none;
  }

  .pagination-number.active {
    background-color: #333;
    color: white;
    border-color: #333;
  }

  /* ===== FIX: Product Grid Layout con immagini full width ===== */

/* Usa auto-flow dense per riempire gli spazi vuoti */
.product-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-auto-flow: dense; /* permette alle card successive di riempire buchi */
}

/* Forza le promotional card large ad allinearsi bene */
.product-card.promotional-card.wide-card {
  grid-column: 1 / -1; /* occupa tutta la riga */
  height: auto; /* evita forzature verticali */
  aspect-ratio: 16 / 9; /* opzionale, se vuoi proporzione fissa */
  background-size: cover;
  background-position: center;
}

/* Evita che le card dopo si “inchiodino” sotto la wide-card */
.product-card {
  min-height: 200rem;
}

/* Fix visivo per eventuali bordi */
.product-card.promotional-card {
  border: none !important;
}

.product-card.promotional-card:not(.wide-card) {
  grid-column: span 1;
}

  /* Responsive */
  @media (max-width: 1200px) {
    .product-grid {
      grid-template-columns: repeat(2, 1fr);
    }
    
    .product-card:nth-child(3n) {
      border-right: 1px solid rgba(51, 51, 51, 0.1);
    }
    
    .product-card:nth-child(2n) {
      border-right: none;
    }
  }
/* END_SECTION:product-grid */

/* START_SECTION:product-showcase (INDEX:47, SCOPED:FALSE) */
/* ===== Product Showcase Section ===== */

.product-showcase-section {
  width: 100%;
  background: white;
}

.product-showcase-container {
  margin: 0 auto;
  padding: 0 20rem;
  text-align: center;
}

/* titolo della sezione */
.product-showcase-title {
  font-size: var(--p-size); /* 16rem */
}

/* griglia */
.product-showcase-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320rem, 1fr));
  gap: clamp(16rem, 2vw, 32rem);
  margin-top: clamp(60rem, 5vw, 80rem);
}

/* card */
.product-showcase-item {
  position: relative;
  aspect-ratio: 0.8;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}

.product-showcase-background {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.product-showcase-video,
.product-showcase-background img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

/* contenuto */
.product-showcase-content > * {
  position: relative;
  z-index: 2;
  text-align: center;
  color: var(--text-light);
}

.product-showcase-content {
 width: 100%;
 max-width: 90%;
}

/* link */
.product-showcase-link {
  display: inline-block;
  text-decoration: none;
  padding: 12rem 24rem;
  transition: all 0.3s ease;
}

.product-showcase-link:hover {
  opacity: 0.7;
}

/* overlay */
.product-showcase-item::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.25);
  z-index: 1;
}

/* ===== Responsive ===== */
@media (max-width: 1200px) {
  .product-showcase-grid {
    grid-template-columns: 1fr;
    gap: 20rem;
  }

  .product-showcase-item {
    aspect-ratio: 0.8;
  }
}

@media (max-width: 768px) {
  .product-showcase-container {
    padding: 0 16rem;
  }

  .product-showcase-grid {
    grid-template-columns: 1fr;
    gap: 16rem;
  }

  .product-showcase-item {
    aspect-ratio: 0.8;
  }
}
/* END_SECTION:product-showcase */

/* START_SECTION:product (INDEX:48, SCOPED:FALSE) */
.product-page {
    width: 100%;
    padding: 0 20px;
  }

  .product-page-title {
    text-align: center;
    margin: 0 auto;
    margin-bottom: 80rem;
    padding-top: 60rem;
  }

  /* Highlight Images */
  .product-highlight-images {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300rem, 1fr));
    gap: 20rem;
  }

  .product-highlight-image {
    aspect-ratio: 16/9;
    overflow: hidden;
  }

  .product-highlight-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
  }

  /* Advanced Description Section */
  .product-advanced-section {
    margin: 60rem 0;
  }

  .product-advanced-container,
  .product-advanced-container_2 {
    display: grid;
    gap: 20rem;
    align-items: start;
  }

  .product-advanced-container {
   grid-template-columns: 0.45fr 1fr;
  }

  .product-advanced-container_2 {
    grid-template-columns: 1fr  0.45fr;
  }

  .product-advanced-text {
    display: flex;
    flex-direction: column;
    gap: 24rem;
    width: 100%;
  }

  .product-advanced-title {
    font-size: var(--p-size);
    text-transform: uppercase;
  }

  .advanced-button-label {
      font-size: var(--p-small-size) !important;
      color: var(--text-dark);
      text-transform: uppercase;
      text-decoration: none;
    }

    .advanced-button {
      width: 100%;
      text-align: center;
      border: 1rem solid #333;
      padding-top: var(--p-size);
      padding-bottom: var(--p-size);
    }

  .product-advanced-image {
    aspect-ratio: 4/3;
    overflow: hidden;
  }

  .product-advanced-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
  }

/* --- Product Card Section --- */
.product-card-container {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-areas: "images info";
  align-items: start;
  gap: 60rem;
}

/* Aree della griglia */
.product-images-column {
  grid-area: images;
  display: flex;
  flex-direction: column;
  gap: 20rem;
}

.product-info-column {
  grid-area: info;
  display: flex;
  flex-direction: column;
  gap: 24rem;
  max-width: 464rem;
  min-width: 300rem;
  margin: 80rem auto 0;
}

/* --- Product Images --- */
.product-main-image {
  position: relative;
  aspect-ratio: 1;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}

.product-images-container {
  display: flex;
  width: 100%;
  max-width: 1000rem;
  height: 100%;
  transition: transform 0.3s ease;
}

.product-main-image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  flex-shrink: 0;
}

/* Carousel controls */
.product-carousel-btn {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: transparent;
  border: none;
  border-radius: 50%;
  width: 40rem;
  height: 40rem;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  color: var(--text-dark);
  transition: all 0.3s ease;
}

.product-carousel-btn:hover {
  background: rgba(255, 255, 255, 1);
}

.product-carousel-prev { left: var(--p-size); }
.product-carousel-next { right: var(--p-size); }

/* Thumbnails */
.product-thumbnails {
  display: flex;
  flex-wrap: wrap;
  gap: 12rem;
  overflow-x: auto;
  padding-bottom: 8rem;
  max-width: 100%;
}

.product-thumbnail {
  flex-shrink: 0;
  width: 100rem;
  height: 100rem;
  overflow: hidden;
  cursor: pointer;
  transition: all 0.3s ease;
  opacity: 0.6;
}

.product-thumbnail.active { opacity: 1; }

.product-thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

/* --- Product Info --- */
.product-new-badge,
.product-discontinued-badge {
  display: inline-block;
  color: var(--text-dark);
  font-family: var(--font-primary);
  font-size: var(--p-small-size);
  text-transform: uppercase;
  align-self: flex-start;
}

.product-card-product-line,
.product-card-title {
  font-family: var(--font-secondary);
  font-size: var(--p-size);
  font-weight: 400;
  color: var(--text-dark);
  margin: 0;
}

.product-card-product-line {
  text-transform: uppercase;
}

.product-card-title { line-height: var(--h3-line); }

/* --- Available Mounts --- */

.product-mounts-title {
  font-family: var(--font-primary);
  font-size: var(--p-small-size);
  margin: 0 0 12rem 0;
}

.product-mounts-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12rem;
}

.product-mount-item {
  display: flex;
  align-items: center;
  gap: 12rem;
  font-family: var(--font-primary);
  font-size: 14rem;
  line-height: 1.4;
  color: var(--text-dark);
  text-transform: uppercase;
}

.product-mount-item input[type="radio"] {
  width: var(--p-size);
  height: var(--p-size);
  margin: 0;
  cursor: pointer;
}

.product-mount-item label {
  cursor: pointer;
  margin: 0;
}

.mount-selection-hint {
  font-family: var(--font-primary);
  font-size: 12rem;
  color: #666666;
  margin: 12rem 0 0 0;
  font-style: italic;
}

/* --- Buy Button --- */
.product-buy-btn {
  background: var(--text-dark);
  color: white;
  font-family: var(--font-primary);
  font-size: var(--p-small-size);
  text-transform: uppercase;
  padding: 12rem 40rem;
  border: none;
  width: 100%;
  border-radius: 0;
  margin-top: 20rem;
  cursor: not-allowed;
}

/* --- Description --- */
.product-description {
  font-family: var(--font-primary) !important;
  font-size: var(--p-small-size) !important;
  line-height: var(--h3-line) !important;
  color: var(--text-dark) !important;
}

.product-description p {
  font-family: var(--font-primary) !important;
  font-size: var(--p-small-size) !important;
  line-height: var(--h3-line) !important;
  color: var(--text-dark) !important;
}

.product-description ul {
  list-style: disc !important;
  list-style-position: outside !important;
  margin: 0;
  padding-left: 1em;
}

.product-description li {
  position: relative;
  padding-left: 0;
}

/* --- Responsive --- */
@media (max-width: 768px) {
  .product-card-container {
    grid-template-columns: 1fr;
    grid-template-areas:
      "info"
      "images";
    gap: 40rem;
  }

  .product-info-column {
    max-width: none;
    margin: 0;
  }

  .product-mounts-list {
    grid-template-columns: 1fr;
  }
}



  /* YouTube Video */
  .product-video-section {
    margin: 60rem 0;
  }

  .product-video-container {
    position: relative;
    width: 100%;
    aspect-ratio: 16/9;
    overflow: hidden;
  }

  .product-video-container iframe {
    width: 100%;
    height: 100%;
    border: none;
  }

  .product-form {
    display: flex;
    flex-direction: column;
    gap: 20rem;
    margin: 24rem 0;
  }

  .product-variant-selector,
  .product-quantity {
    display: flex;
    flex-direction: column;
    gap: 8rem;
  }

  .quantity-selector {
    display: flex;
    border: 1rem solid #cccccc;
    border-radius: 0;
    overflow: hidden;
  }

  .quantity-btn {
    width: 40rem;
    height: 40rem;
    background: white;
    border: none;
    border-right: 1rem solid #cccccc;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--font-primary);
    font-size: var(--p-size);
    font-weight: 400;
    color: var(--text-dark);
    transition: background-color 0.3s ease;
  }

  .quantity-btn:last-child {
    border-right: none;
    border-left: 1rem solid #cccccc;
  }

  .quantity-btn:hover {
    background: #f5f5f5;
  }

  .quantity-btn:disabled {
    color: #cccccc;
    cursor: not-allowed;
  }

  .product-quantity input {
    flex: 1;
    border: none;
    text-align: center;
    font-family: var(--font-primary);
    font-size: 14rem;
    padding: 0;
    background: white;
    color: var(--text-dark);
    border-radius: 0 !important;
  }

  .product-quantity input:focus {
    outline: none;
  }
  
  .product-variant-selector label,
  .product-quantity label {
    font-family: var(--font-primary);
    font-size: 12rem;
    font-weight: 400;
    text-transform: uppercase;
    color: var(--text-dark);
  }

  .product-variant-selector select,
  .product-quantity input {
    font-family: var(--font-primary);
    font-size: 14rem;
    padding: 12rem var(--p-size);
    border: 1rem solid #cccccc;
    border-radius: 4rem;
    background: white;
    color: var(--text-dark);
  }

  .product-buy-btn {
    background: var(--text-dark);
    color: white;
    font-family: var(--font-primary);
    font-size: var(--p-small-size);
    font-weight: 400;
    text-transform: uppercase;
    padding: 12rem 32rem;
    border: none;
    border-radius: 4rem;
    cursor: pointer;
    transition: background-color 0.3s ease;
    align-self: flex-start;
  }

  .product-buy-btn:hover {
    background: #555555;
  }

  .out-of-stock-message {
    text-align: center;
    width: 100%;
    margin: 0;
    padding: 12rem 32rem;
    border: 0;
    border-radius: 0 !important;
    background: var(--text-dark);
    display: inline-block;
  }

  .out-of-stock-message a {
    font-family: var(--font-primary);
    color: var(--text-light);
    text-decoration: none;
  }

  .product-stock-info {
    margin: 8rem 0;
    font-family: var(--font-secondary);
    font-size: var(--p-small-size);
    font-weight: 400;
    color: #666666;
    text-transform: uppercase;
  }

  .stock-quantity {
    font-family: var(--font-secondary);
    font-size: var(--p-small-size);
    font-weight: 400;
    color: #333;
    text-transform: uppercase;
  }

  .product-awards {
    margin: 60rem 0;
  }

  .awards-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10rem;
    padding-top: 10rem;
  }

  .awards-title h3 {
       border-top: 1rem solid #333;
       padding-top: 8rem;
    font-family: var(--font-primary);
    font-size: var(--p-small-size);
    font-weight: 400;
    color: var(--text-dark);
    text-transform: uppercase;
    margin: 0;
  }

  .awards-list {
    border-top: 1rem solid #333;
    padding-top: 8rem;
    display: flex;
    flex-direction: column;
    gap: 8rem;
  }

  .award-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 8rem;
    border-bottom: 1rem solid #333;
  }

  .award-item:last-child {
    border-bottom: none;
  }

  .award-name {
    font-family: var(--font-primary);
    font-size: var(--p-small-size);
    font-weight: 400;
    color: var(--text-dark);
    text-transform: uppercase;
    flex: 1;
  }

  .award-year {
    font-family: var(--font-primary);
    font-size: var(--p-small-size);
    font-weight: 400;
    color: #333;
    margin: 0 20rem;
    flex:1;
  }

  .award-link {
    font-family: var(--font-primary);
    font-size: var(--p-small-size);
    font-weight: 400;
    color: #333;
    text-decoration: none;
    transition: color 0.3s ease;
  }

  .award-link:hover {
    color: var(--text-dark);
  }

.product-specifications {
  margin: 60rem 0;
  background-color: #FAF8F2;
  padding-top: 80rem;
  padding-bottom: 80rem;
  margin-left: -20rem;
  margin-right: -20rem;
  padding-left: 20rem;
  padding-right: 20rem;
}

.specs-container {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10rem;
  padding-top: 10rem;
}

.specs-container > * {
  font-family: var(--font-primary)
}

.specs-title {
  border-top: 1rem solid #333;
}

  .specs-title h3 {
  padding-top: 8rem;
  font-family: var(--font-primary);
  font-size: var(--p-small-size);
  font-weight: 400;
}

.tab-title {
  cursor: pointer;
  transition: color 0.3s ease;
  position: relative;
  opacity: 0.5;
}

.tab-title:hover {
  opacity: 0.75;
}

.tab-title.active {
  color: var(--text-dark);
  opacity: 1;
}

.tab-content {
  display: none !important;
}

.tab-content.active {
  display: block !important;
}

/* Override per specs-list quando è tab-content */
.specs-list.tab-content {
  display: none !important;
}

.specs-list.tab-content.active {
  display: flex !important;
  flex-direction: column;
}

.specs-list {
  border-top: 1rem solid #333;
  padding-top: 8rem;
  display: flex;
  flex-direction: column;
  gap: 8rem;
}

.spec-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: 8rem;
  border-bottom: 1rem solid #333;
}

.spec-item:last-child {
  border-bottom: none;
}

.spec-label {
  font-family: var(--font-primary);
  font-size: var(--p-small-size);
  font-weight: 400;
  color: var(--text-dark);

  flex: 1;
}

.spec-value {
  font-family: var(--font-primary);
  font-size: var(--p-small-size);
  font-weight: 400;
  color: #333;
  margin: 0;
  margin-left: 20rem;
  flex: 1;
}

  .technical-list {
   border-top: 1rem solid #333;
  }

  .tech-accordion {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-top: var(--p-size);
}

.tech-item {
  border-bottom: 1px solid #333;
  padding-bottom: 32rem;
}

.tech-toggle {
  background: none;
  border: none;
  padding: 0;
  margin: 0;
  font-family: var(--font-primary), sans-serif;
  font-size: var(--p-small-size);
  color: #333;
  width: 100%;
  text-align: left;
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: default;
}

.tech-toggle:has(.tech-symbol) {
  cursor: pointer;
}

.tech-symbol {
  font-size: var(--p-size);
  margin-left: 8px;
  font-weight: 600;
  color: #333;
  transition: transform 0.2s ease;
}

.tech-description {
  font-family: var(--font-primary), sans-serif;
  font-size: var(--p-small-size);
  color: var(--text-dark);
  margin-top: 8px;
  white-space: pre-line;
}

.sample-images-list {
  border-top: 1rem solid #333;
}

.sample-images-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 32px;
  margin-top: var(--p-size);
}
.sample-image-card {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.sample-image-card img {
  width: 100%;
  height: auto;
  object-fit: cover;
}
.sample-image-meta {
  font-family: var(--font-primary);
  font-size: var(--p-small-size);
  width: 100%;
}

.sample-image-meta {
  border-collapse: collapse;
  border-spacing: 0; /* forza l'annullamento */
}

.sample-image-meta tr:not(:last-child) {
  border-bottom: 1px solid #333 !important;

}

.sample-image-meta th {
  text-align: left;
  font-weight: normal;
  color: #333;
  width: 120px;
  padding-top: 2rem;
  padding-bottom: 2rem;
}

.sample-image-meta td {
  color: #333;
  padding-top: 2rem;
  padding-bottom: 2rem;
}
.sample-download-button {
  display: inline-block;
  background: #333;
  color: white;
  padding: 10px 16px;
  text-align: center;
  font-size: var(--p-small-size);
  text-transform: uppercase;
  text-decoration: none;
}

.construction-content {
  font-size: var(--p-small-size) !important;
  border-top: 1rem solid #333;
  padding-top: var(--p-size);
}

.features-content {
  font-size: var(--p-small-size) !important;
  border-top: 1rem solid #333;
  padding-top: var(--p-size);
}

.product-lineup-content {
  font-size: var(--p-small-size) !important;
  border-top: 1rem solid #333;
  padding-top: var(--p-size);
}

.product-lineup-table {
  display: flex;
  flex-direction: column;
  gap: 8rem;
}

.product-lineup-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20rem;
  padding-bottom: 8rem;
  border-bottom: 1rem solid #333;
  align-items: start;
}

.product-lineup-row:last-child {
  border-bottom: none;
}

.product-lineup-label {
  font-family: var(--font-primary);
  font-size: var(--p-small-size);
  font-weight: 400;
  color: var(--text-dark);
  line-height: 1.4;
}

.product-lineup-value {
  font-family: var(--font-primary);
  font-size: var(--p-small-size);
  font-weight: 400;
  color: #333;
  line-height: 1.4;
}

.credits-content {
  font-size: var(--p-small-size) !important;
  padding-top: var(--p-size);
  padding-bottom: var(--p-size);
}

  .category-content {
    font-size: var(--p-small-size) !important;
    padding-top: var(--p-size);
    padding-bottom: var(--p-size);
  }

  /* IMPRESSIONS Section */
  .product-impressions-section {
    margin: 60rem 0;
  }

  .impressions-header {
    text-align: center;
    margin-bottom: 60rem;
  }

  .impressions-title {
    font-size: var(--p-size);
  }

  .impressions-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20rem;
    margin-bottom: 60rem;
  }

  .impressions-item {
    display: flex;
    flex-direction: column;
    background-color: #FEFEFD;
    transition: opacity 0.3s ease, transform 0.3s ease;
  }

  .impressions-image {
    width: 100%;
    aspect-ratio: 4/5;
    overflow: hidden;
  }

  .impressions-grid-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .impressions-content {
    padding: 20rem 0rem;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
  }

  .impressions-article-title {
    font-family: var(--font-secondary);
    font-size: var(--p-size);
    font-weight: 400;
    color: var(--text-dark);
    line-height: var(--h3-line);
    text-transform: uppercase;
  }

  .impressions-excerpt {
    font-family: var(--font-secondary);
    font-size: var(--p-size);
    line-height: 20rem;
    color: var(--text-dark);
    margin-bottom: 20rem;
    flex-grow: 1;
  }

  .impressions-read-more {
    font-family: var(--font-primary);
    font-size: var(--p-small-size);
    font-weight: 500;
    text-transform: uppercase;
    color: var(--text-dark);
    text-decoration: none;
    letter-spacing: 0.5px;
    align-self: flex-start;
  }

  .spec-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    color: var(--text-dark);
    text-decoration: none;
    font-size: var(--p-small-size);
    text-transform: uppercase;
    font-family: var(--font-primary);
    font-weight: 400;
    transition: opacity 0.3s ease;
  }

.spec-link:hover {
  opacity: 0.7;
}

.link-arrow {
  width: 16px;
  height: 16px;
  color: var(--text-dark);
}


  /* Product List Sections */
  .product-list-section {
    width: 100%;
    background: #FEFEFD;
    margin-top: 100rem;
  }

  .product-list-container {
    width: 100%;
    max-width: none;
    margin: 0;
  }

  .product-list-title {
    font-family: var(--font-secondary);
    font-size: var(--p-size);
    font-weight: 400;
    text-transform: uppercase;
    color: var(--text-dark);
    text-align: center;
    margin: 0 0 60rem 0;
    letter-spacing: 0.5px;
  }

  .product-list-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    width: 100%;
    gap: 40rem;
  }

  .product-list-card {
    border-right: 1px solid rgba(51, 51, 51, 0.1);
    position: relative;
    background: #FEFEFD;
    text-decoration: none;
    color: inherit;
    display: block;
    transition: opacity 0.3s ease;
  }
  
  .product-list-card:nth-child(3n) {
    border-right: none;
  }

  .product-list-card img {
    width: 100%;
    height: auto;
    object-fit: contain;
    object-position: center;
    margin-bottom: 20rem;
  }

  .product-list-card-placeholder {
    width: 100%;
    height: 200rem;
    background: #f5f5f5;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #999;
    font-family: var(--font-primary);
    font-size: 14rem;
    margin-bottom: 20rem;
  }

  .product-list-card-new {
    position: absolute;
    top: var(--p-size);
    left: var(--p-size);
    background: var(--text-dark);
    color: white;
    font-family: var(--font-primary);
    font-size: 12rem;
    font-weight: 400;
    text-transform: uppercase;
    padding: 4rem 8rem;
    letter-spacing: 0.5px;
  }

  .product-list-card-content {
    text-align: left;
  }

  .product-list-card-title {
    font-family: var(--font-secondary);
    font-size: var(--p-size);
    font-weight: 400;
    color: var(--text-dark);
    margin: 0;
    line-height: var(--h3-line);
  }

/* --- Responsive --- */

/* Tablet & Desktop stretti */
@media (max-width: 1200px) {
  .product-page-title {
    font-size: 36rem;
    line-height: 40rem;
  }

  .product-highlight-images {
    grid-template-columns: 1fr;
  }

  .product-advanced-container,
  .product-advanced-container_2 {
    grid-template-columns: 1fr;
    gap: 40rem;
  }

  .product-advanced-description {
    font-size: var(--p-small-size);
  }

  .product-mounts-list {
    font-size: var(--p-small-size);
  }

  /* qui aggiorniamo: due colonne ma con gap ridotto */
  .product-card-container {
    grid-template-columns: 0.8fr 1fr;
    grid-template-areas: "images info";
    gap: 40rem;
  }

  .product-thumbnail {
    width: 60rem;
    height: 60rem;
    opacity: 0.6;
  }

  .awards-container {
    grid-template-columns: 1fr;
    gap: 20rem;
  }

  .award-item {
    flex-direction: column;
    align-items: flex-start;
    gap: 8rem;
  }

  .award-year {
    margin: 0;
  }

  .award-link {
    position: absolute;
    right: 20px;
  }

  .specs-container {
    grid-template-columns: 1fr;
    gap: 20rem;
  }

  .spec-item {
    flex-direction: column;
    align-items: flex-start;
    gap: 8rem;
  }

  .spec-value {
    margin: 0;
  }

  .impressions-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
  }

  .product-lineup-row {
    grid-template-columns: 1fr;
    gap: 8rem;
  }


  .product-list-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* Mobile */
@media (max-width: 768px) {

  .product-card-container {
    grid-template-columns: 1fr;
    grid-template-areas:
      "images"
      "info";
    gap: 40rem;
  }

    .product-highlight-image {
    aspect-ratio: 4/5; /* più alta, perfetta per mobile */
  }

  .product-advanced-image {
     aspect-ratio: 4/5;
  }


  .product-thumbnails {
    display: none;
  }

  .product-advanced-text  {
    width: 100%;
  }
  .product-info-column {
    max-width: none;
  }

  .product-mounts-list {
    grid-template-columns: 1fr;
  }

  .impressions-grid {
    grid-template-columns: 1fr;
    gap: 25px;
  }

  .product-list-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .product-list-grid {
    grid-template-columns: 1fr;
  }

  .product-list-card {
    border-right: none !important;
    border-bottom: 1px solid rgba(51, 51, 51, 0.1);
    padding-bottom: 24rem;
  }

}

  /* --- Contenuti pagine collegate (features e construction) --- */
.features-content p,
.construction-content p,
.category-content p,
.credits-content p {
  font-family: var(--font-primary);
  font-size: var(--p-small-size);
  color: var(--text-dark);
}

.category-content h2,
.credits-content h2 {
  font-family: var(--font-secondary);
  font-size: var(--p-size);
}

.category-content div iframe,
.credits-content div iframe {
  aspect-ratio: 16/9;
}

/* Video responsivo dentro la categoria */
.category-content iframe,
.credits-content iframe {
  display: block;
  width: 100%;
  aspect-ratio: 16/9;
  height: auto;
  border: none;
}

/* Fix per editor Shopify che aggiunge wrapper div inline */
.category-content div:has(> iframe),
.credits-content div:has(> iframe) {
  position: relative;
  width: 100%;
  max-width: 100%;
  aspect-ratio: 16/9;
  overflow: hidden;
}

.category-content div:has(> iframe) iframe,
.credits-content div:has(> iframe) iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
/* END_SECTION:product */

/* START_SECTION:resellers (INDEX:49, SCOPED:FALSE) */
.resellers-page {
  width: 100%;
  margin: 0 auto;
  padding: 0 20rem;
  font-family: var(--font-primary);
}

.resellers-header {
  text-align: center;
  margin-bottom: 3rem;
}

.resellers-filters {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.search-container {
  position: relative;
  width: 100%;
  margin-top: 80rem;
  margin-bottom: 24rem;
}

.resellers-search-input {
  width: 100%;
  border: 1px solid #333333b3;
  font-size: 16rem;
  background: white;
  padding: 12rem 36rem 12rem 12rem;
  font-family: var(--font-secondary);
}

.search-icon {
  position: absolute;
  right: 16rem;
  top: 50%;
  transform: translateY(-50%);
  color: #666;
}

.option_select {
    font-family: var(--font-secondary);
    font-size: var(--p-size);
}

.filter-dropdowns {
  display: flex;
  justify-content: center;
  gap: 16rem;
  width: 100%;
  margin-bottom: 32rem;
}

.filter-dropdown-container {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
}

.filter-dropdown-label {
  margin-bottom: 12rem;
}

.filter-select {
  padding: 12rem 36rem 12rem 12rem;
  border: 1px solid #333333b3;
  font-size: 13rem;
  width: 100%;
  background: white;
  appearance: none;
}

.reseller-item {
  display: block;
  border-bottom: 1px solid #333333b3;
  padding: 20rem 0;
}

.reseller-name {
  font-family: var(--font-headline);
  font-size: 20rem;
  margin-bottom: 12rem;
}

.reseller-address {
  font-family: var(--font-secondary);
  font-size: 16rem;
  margin-bottom: 16rem;
}

.reseller-links {
  display: flex;
  gap: 24rem;
  font-size: 13rem;
}

.reseller-link {
  font-family: var(--font-primary);
  color: #333;
  text-decoration: none;
}

.reseller-link:hover {
  opacity: 0.6;
}

.resellers-pagination {
  display: flex;
  justify-content: center;
  gap: 4rem;
  margin-top: 80rem;
}

.pagination-number,
.pagination-arrow {
  width: 40rem;
  height: 40rem;
  border: 1px solid rgba(51, 51, 51, 0.3);
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: var(--font-primary);
  cursor: pointer;
}

.pagination-number.active {
  background: #333;
  color: white;
}
/* END_SECTION:resellers */

/* START_SECTION:shooting-with-sigma (INDEX:51, SCOPED:FALSE) */
.shooting-with-sigma-section {
    width: 100%;
    background: white;
  }

  .shooting-with-sigma-container {
    margin: 0 auto;
  }

  .shooting-with-sigma-title {
    font-family: "Sigma Serif";
    font-size: 16rem;
    font-weight: 400;
    text-transform: uppercase;
    color: #333333;
    text-align: center;
    margin: 0 0 60rem 0;
    letter-spacing: 0.5px;
  }

  .shooting-with-sigma-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16rem;
  }

  .shooting-with-sigma-item {
    display: flex;
    flex-direction: column;
    background: white;
  }

  .shooting-with-sigma-linkable {
    text-decoration: none;
    color: inherit;
    transition: transform 0.3s ease;
  }

  .shooting-with-sigma-image {
    width: 100%;
    aspect-ratio: 0.8;
    overflow: hidden;
  }

  .shooting-with-sigma-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
  }

  .shooting-with-sigma-content {
    padding: 20rem 0rem;
    text-align: left;
    color: #333333;
  }

  .shooting-with-sigma-project-title {
    font-family: "Sigma Serif";
    font-size: 16rem;
    font-weight: 400;
    text-transform: uppercase;
    color: #333333;
    margin: 0 0 16rem 0;
    letter-spacing: 1px;
  }

  .shooting-with-sigma-description {
    font-family: "Sigma Serif";
    font-size: 16rem;
    font-weight: 400;
    line-height: 20rem;
    color: #333333;
    max-width: 420rem;
    margin: 0 0 16rem;
  }

  .shooting-with-sigma-link {
    display: inline-block;
    font-size: var(--p-small-size);
    font-weight: 400;
    text-transform: uppercase;
    color: #333333;
    text-decoration: none;
    padding: 0;
    letter-spacing: 0.5px;
    transition: all 0.3s ease;
  }

  .shooting-with-sigma-link:hover {
    opacity: 0.7;
  }


  /* Singolo articolo: permette allineamento sinistra centro destra */
.shooting-with-sigma-grid.shooting-with-sigma-grid--single {
  grid-template-columns: 1fr;
  justify-items: center; /* valore di base, poi lo sovrascriviamo sotto */
}

.shooting-with-sigma-grid--single .shooting-with-sigma-item {
  max-width: 700rem; /* gestisci la larghezza come preferisci */
}

/* Varianti di allineamento */
.shooting-with-sigma-grid--align-left {
  justify-items: start;
}

.shooting-with-sigma-grid--align-center {
  justify-items: center;
}

.shooting-with-sigma-grid--align-right {
  justify-items: end;
}

  /* Due articoli: due colonne a tutta larghezza */
  .shooting-with-sigma-grid.shooting-with-sigma-grid--two {
    grid-template-columns: repeat(2, 1fr);
    justify-items: stretch;
  }


/* Responsive */
@media (max-width: 1200px) {
  .shooting-with-sigma-grid {
    grid-template-columns: 1fr;
    gap: 0;
    row-gap: 16rem;
  }

  /* forza anche il layout a una colonna quando ci sono solo 2 articoli */
  .shooting-with-sigma-grid.shooting-with-sigma-grid--two {
    grid-template-columns: 1fr;
  }
  
  .shooting-with-sigma-project-title {
    margin-bottom: 12rem;
  }
  
  .shooting-with-sigma-description {
    max-width: 100%;
  }
  
  .shooting-with-sigma-title {
    font-size: 16rem;
  }
  
  .shooting-with-sigma-content {
    padding: 30rem 0rem;
  }
  
  .shooting-with-sigma-image {
    aspect-ratio: 0.8;
  }
}
/* END_SECTION:shooting-with-sigma */

/* CSS from block stylesheet tags */
/* START_BLOCK:group (INDEX:57, SCOPED:FALSE) */
.group {
    display: flex;
    flex-wrap: nowrap;
    overflow: hidden;
    width: 100%;
  }

  .group--horizontal {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    padding: 0 var(--padding);
  }

  .group--vertical {
    flex-direction: column;
    align-items: var(--alignment);
    padding: var(--padding) 0;
  }
/* END_BLOCK:group */

/* START_BLOCK:text (INDEX:58, SCOPED:FALSE) */
.text {
    text-align: var(--text-align);
  }
  .text--title {
    font-size: 2rem;
    font-weight: 700;
  }
  .text--subtitle {
    font-size: 1.5rem;
  }
/* END_BLOCK:text */

/* CSS from snippet stylesheet tags */
/* START_SNIPPET:image (INDEX:63, SCOPED:FALSE) */
.image {
    display: block;
    position: relative;
    overflow: hidden;
    width: 100%;
    height: auto;
  }

  .image > img {
    width: 100%;
    height: auto;
  }
/* END_SNIPPET:image */