/* Nome blocco: "Slider Full" */
/* Codice blocco: "block_001" */

#block_001 {
  height: 92.6vh;
  width: 100%;
  position: relative;
}

#block_001:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 40%;
  z-index: 5;
  background: transparent
    linear-gradient(180deg, #00000000 0%, #000000bf 50%, #000000 100%) 0% 0%
    no-repeat padding-box;
}

#block_001 .box-video {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  overflow-y: hidden;
}

#block_001 .box-video video {
  width: 100%;
  height: auto;
}

#block_001 .title {
  font-size: 50px;
  text-transform: uppercase;
  font-weight: 300;
}

#block_001 .subtitle {
  font-size: 28px;
  font-weight: bold;
}

@media screen and (max-width: 768px) {
  #block_001 {
    height: auto;
    width: 100%;
    position: relative;
  }

  #block_001:before {
    display: none;
  }

  #block_001 .box-video {
    position: relative;
    height: 100%;
    width: 100%;
    overflow-y: hidden;
  }

  #block_001 .title {
    font-size: 40px;
    font-weight: 400;
    color: var(--primary-color);
  }

  #block_001 .subtitle {
    color: var(--dark) !important;
  }
}

/* Nome blocco: "Loop categorie prodotto" */
/* Codice blocco: "block_002" */

.section-decoration {
  height: 200px;
  width: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
}

/* Nome blocco: "Media Grid" */
/* Codice blocco: "block_003" */

#block_003 {
  margin-top: -330px;
}

@media screen and (max-width: 768px) {
  #block_003 {
    margin-top: -200px;
  }
}

/* Nome blocco: "Banner CTA con immagini" */
/* Codice blocco: "block_004" */

#block_004 {
  position: relative;
}

#block_004:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.65);
}

#block_004 .top-banner {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 10;
}

#block_004 .top-banner .logo {
  width: 130px;
  position: absolute;
  top: -60px;
  left: 50%;
  transform: translateX(-50%);
}

/* Nome blocco: "Selezione pagine" */
/* Codice blocco: "block_005" */

#block_005 .box-img-scale {
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}

#block_005 .box-img-scale img {
  transition: 0.3s ease-in-out;
}

#block_005 #box-post:hover .box-img-scale img {
  transform: scale(1.1);
}

.box-title {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 30%;
  background: transparent linear-gradient(180deg, #00000000 0%, #009345 100%) 0%
    0% no-repeat padding-box;
  display: flex;
  align-items: end;
}

/* Nome blocco: "Banner clienti" */
/* Codice blocco: "block_006" */

@media screen and (max-width: 768px) {
  #block_006 .splide__pagination {
    bottom: -3.5em !important;
  }
}

/* Nome blocco: "Intestazione pagina" */
/* Codice blocco: "block_007" */

#breadcrumbs span,
#breadcrumbs a {
  font-family: var(--font-family);
  color: #989898;
  font-size: var(--breadcrumbs);
  text-decoration: none;
}

/* Nome blocco: "Slider intestazione" */
/* Codice blocco: "block_009" */

#block_009.slider-height {
  width: 100%;
  height: 70vh;
  min-height: 400px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  position: relative;
  display: flex;
  align-items: end;
}

#block_009.slider-height:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.65);
}

#block_009.slider-height:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  height: 50%;
  width: 100%;
  background: transparent linear-gradient(180deg, #00000000 0%, #009345 100%) 0%
    0% no-repeat padding-box;
  opacity: 0.62;
}

#block_009.decorate {
  position: relative;
}

@media screen and (max-width: 768px) {
  #block_009.slider-height {
    height: 60vh;
  }

  #block_009.slider-height:after {
    display: none;
  }

  .top_block {
    margin-top: 0;
    z-index: -1;
    position: relative;
  }

  #block_009 .margin-bottom-negative-mobile {
    margin-bottom: -180px;
  }
}

/* Nome blocco: "Ripetitore di box" */
/* Codice blocco: "block_010" */

#block_010 #single-box .icon {
  width: 110px;
}

#block_010 #single-box .numero span {
  font-size: 110px;
  color: var(--primary-color);
  line-height: 120px;
  margin-bottom: 10px;
  font-weight: bold;
}

#block_010 #single-box .numero p {
  font-family: var(--font-family);
  font-size: var(--heading3);
}

#block_010 #single-box .descrizione-numero p {
  font-family: var(--font-family);
  font-size: var(--heading3);
  text-transform: uppercase;
  font-weight: bold;
}

/* Nome blocco: "Photogallery" */
/* Codice blocco: "block_011" */

#block_011 .splide__pagination {
  bottom: -1em !important;
}

#block_011 .splide__arrow--next {
  right: -3em;
}

#block_011 .splide__arrow--prev {
  left: -3em;
}

@media screen and (max-width: 768px) {
  #block_011 .splide__arrow--next {
    right: 2.5em;
  }

  #block_011 .splide__arrow--prev {
    left: 2.5em;
  }

  #block_011 .splide__pagination {
    bottom: -2em !important;
  }
}

/* Nome blocco: "Immagine grande (banner)" */
/* Codice blocco: "block_012" */

#block_012 {
  overflow-x: clip;
}

#block_012 .big-img {
  position: absolute;
  width: 65vw;
  min-width: 400px;
  top: 50%;
  right: -25%;
  transform: translateY(-50%);
}

#block_012 #editor h3 {
  font-weight: bold;
  color: #333333 !important;
}

#block_012 #editor strong {
  color: var(--primary-color);
}

@media screen and (max-width: 768px) {
  #block_012 .big-img {
    position: relative;
    width: 100%;
    top: 0;
    left: 0;
    right: unset;
    transform: unset;
    margin-bottom: -190px;
  }
}

/* Nome blocco: "Media / Text" */
/* Codice blocco: "block_013" */

#block_013 {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  position: relative;
}

#block_013.overlay:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.65);
}

/* contenitore maschera */
#block_013 .splide__slide .slide-image {
  display: block;
  width: 100%;
  aspect-ratio: 9 / 6;
  overflow: hidden;
}

#block_013 .splide__slide .slide-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center; /* default */
  display: block;
}

#block_013 .splide__arrow--prev {
  left: -3rem;
}

#block_013 .splide__arrow--next {
  right: -3rem;
}

#block_013 .splide__pagination {
  bottom: -2em !important;
}

#block_013 .test {
  width: 140px !important;
  max-height: 110px;
}

#block_013 .img-thumbnail {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
  padding: 0;
}

#block_013
  #box-thumbnail-carousel
  .splide__track--nav
  > .splide__list
  > .splide__slide.is-active {
  border: 3px solid var(--primary-color);
  border-radius: 1.15rem;
}

@media screen and (max-width: 768px) {
  #block_013
    #box-thumbnail-carousel
    .splide__track--nav
    > .splide__list
    > .splide__slide.is-active {
    border: 3px solid var(--primary-color);
    border-radius: 11px;
  }
}

/* Nome blocco: "Banner CTA" */
/* Codice blocco: "block_014" */

#block_014 {
  position: relative;
}

#block_014.overlay:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.65);
}

#block_014 .logo {
  position: absolute;
  top: -55px;
  left: 50%;
  transform: translateX(-50%);
  width: 115px;
}

/* Nome blocco: "Selezione prodotti" */
/* Codice blocco: "block_015" */

#block_015.overlay {
  position: relative;
}

#block_015.overlay:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.65);
}

#block_015 .box_image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  aspect-ratio: 12 / 9;
  overflow: hidden;
}

/* Nome blocco: "Tabella stock di magazzino" */
/* Codice blocco: "block_017" */

/* =========================
   BASE (DESKTOP ≥ 1400px)
========================= */

#block_017 #form-stock-magazzino table {
  width: 100%;
  border-collapse: collapse;
  margin: auto;
  max-width: 1700px;
}

#block_017 #form-stock-magazzino table,
#block_017 #form-stock-magazzino table p {
  font-size: 14px;
  color: var(--dark);
}

#block_017 #form-stock-magazzino table p {
  line-height: 20px;
}

#block_017 #form-stock-magazzino table thead td {
  background-color: rgba(244, 245, 246, 0.5);
  padding: 10px 15px;
}

#block_017 #form-stock-magazzino table td {
  border: 1px solid var(--light-primary);
  padding: 20px 15px;
  text-align: left;
  max-width: 170px;
  vertical-align: middle;
  box-sizing: border-box;
}

#block_017 #form-stock-magazzino table td:first-child {
  width: 90px;
  text-align: center;
}

#block_017 #form-stock-magazzino table td:last-child,
#block_017 #form-stock-magazzino table thead td:last-child {
  width: 100px;
  text-align: center;
}

#block_017 #form-stock-magazzino table td .stock-img {
  width: 100%;
  max-width: 100px;
  aspect-ratio: 1 / 1;
  border-radius: 10px;
  object-fit: cover;
}

#block_017 #form-stock-magazzino table input {
  width: 100%;
  padding: 8px;
  border-radius: 10px;
  border: 1px solid var(--light-primary);
}

#block_017 #form-stock-magazzino table input::placeholder {
  color: rgba(94, 94, 93, 0.5);
}

#block_017 #form-stock-magazzino thead td {
  position: sticky;
  top: 0;
  z-index: 10;
  background: #fff;
  box-shadow: 0 2px 4px rgba(0,0,0,0.06);
}


  .column-hint {
    display: inline-flex;
    align-items: center;
    gap: 2vh;
    font-size: 1vh;
    line-height: 1.2;
    color: var(--dark);
    background: rgba(0, 0, 0, 0.04);
    padding: 6px 10px;
    border-radius: 10px;
    white-space: nowrap;
  }

/* =========================================================
   TABLET / LAPTOP (992px – 1399px)
   → immagine + 2 colonne centrali + CTA
========================================================= */

@media (max-width: 1399px) and (min-width: 992px) {

  /* 🔴 FORZIAMO LA VISIBILITÀ DELLE FRECCE */
  .mobile-column-controls {
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin-bottom: 10px;
  }

  .column-buttons button.is-disabled {
    opacity: 0.3;
    pointer-events: none;
  }

  #block_017 #form-stock-magazzino {
    /*overflow: hidden;*/
    
  overflow-x: hidden;
  overflow-y: auto;
  }

  #block_017 #form-stock-magazzino table {
    table-layout: fixed;
    width: 100%;
  }

  /* reset */
  #block_017 #form-stock-magazzino table td,
  #block_017 #form-stock-magazzino table thead td {
    display: none;
  }

  /* colonna fissa sinistra (immagine) */
  #block_017 #form-stock-magazzino table td:first-child,
  #block_017 #form-stock-magazzino table thead td:first-child {
    display: table-cell;
    width: 15%;
  }

  /* colonna fissa destra (CTA) */
  #block_017 #form-stock-magazzino table td:last-child,
  #block_017 #form-stock-magazzino table thead td:last-child {
    display: table-cell;
    width: 13%;
  }

  /* colonne centrali attive (2 o 3 - decido da js) */
  #block_017 #form-stock-magazzino table td.active-col,
  #block_017 #form-stock-magazzino table thead td.active-col {
    display: table-cell;
    width: 24%;
  }
    #block_017 #form-stock-magazzino td.active-col {
    position: relative;
    background: #fff;
  }

  /* ombra a SINISTRA del blocco centrale */
  #block_017 #form-stock-magazzino td.active-start::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 16px;
    height: 100%;
    pointer-events: none;
    background: linear-gradient(
      to right,
      rgba(120, 120, 120, 0.08),
      rgba(255, 255, 255, 0)
    );
  }

  /* ombra a DESTRA del blocco centrale */
  #block_017 #form-stock-magazzino td.active-end::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 16px;
    height: 100%;
    pointer-events: none;
    background: linear-gradient(
      to left,
      rgba(120, 120, 120, 0.08),
      rgba(255, 255, 255, 0)
    );
  }

  
  
/* movimento fluido contenuto colonne attive */
#block_017 #form-stock-magazzino td.active-col > *,
#block_017 #form-stock-magazzino td.active-start > *,
#block_017 #form-stock-magazzino td.active-end > * {
  transition: transform 0.15s ease;
  will-change: transform;
}


  /* micro-ombra dinamica sulle colonne attive */
#block_017 #form-stock-magazzino td.active-col,
#block_017 #form-stock-magazzino td.active-start,
#block_017 #form-stock-magazzino td.active-end {
  position: relative;
  --drag-x: 0px;
}


/* swipe verso sinistra (vai avanti) */
#block_017 #form-stock-magazzino td.active-col.drag-left::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: min(30px, calc(abs(var(--drag-x)) * 1px));
  height: 100%;
  pointer-events: none;
  background: linear-gradient(
    to right,
    rgba(0,0,0,0),
    rgba(139, 139, 139,0.12)
  );
}

/* swipe verso destra (vai indietro) */
#block_017 #form-stock-magazzino td.active-col.drag-right::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: min(30px, calc(abs(var(--drag-x)) * 1px));
  height: 100%;
  pointer-events: none;
  background: linear-gradient(
    to left,
    rgba(0,0,0,0),
    rgba(139, 139, 139, 0.12)
  );
}
}

/* =========================================================
   MOBILE (< 992px)
   → immagine + 1 colonna centrale + CTA
========================================================= */

@media (max-width: 991px) {

  .mobile-column-controls {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin-bottom: 10px;
  }

  .column-hint {
    font-size: 11px;
  }
  .column-buttons button.is-disabled {
    opacity: 0.3;
    pointer-events: none;
  }

  .column-buttons {
    display: flex;
    gap: 8px;
  }

  .column-buttons .btn-info-stock {
    min-width: 36px;
    min-height: 36px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  #block_017 #form-stock-magazzino {
    overflow: hidden;
  }

  #block_017 #form-stock-magazzino table {
    table-layout: fixed;
    width: 100%;
  }

  /* reset */
  #block_017 #form-stock-magazzino table td,
  #block_017 #form-stock-magazzino table thead td {
    display: none;
  }

  /* colonna fissa sinistra (immagine) */
  #block_017 #form-stock-magazzino table td:first-child,
  #block_017 #form-stock-magazzino table thead td:first-child {
    display: table-cell;
    width: 35%;
  }

  /* colonna fissa destra (CTA) */
  #block_017 #form-stock-magazzino table td:last-child,
  #block_017 #form-stock-magazzino table thead td:last-child {
    display: table-cell;
    max-width: 100px;
  }

  /* colonna centrale attiva (1) */
  #block_017 #form-stock-magazzino table td.active-col,
  #block_017 #form-stock-magazzino table thead td.active-col {
    display: table-cell;
    width: 50%;
    background: linear-gradient(
      90deg,
      rgba(120, 120, 120, 0.05) 0%,
      #ffffff 5%,
      #ffffff 95%,
      rgba(120, 120, 120, 0.05) 100%
    );
  }

  /* word wrap mobile */
  #block_017 #form-stock-magazzino table td {
    overflow-wrap: anywhere;
    word-break: break-word;
    white-space: normal;
  }

  
/* movimento fluido contenuto colonne attive */
#block_017 #form-stock-magazzino td.active-col > * {
  transition: transform 0.15s ease;
  will-change: transform;
}


  /* micro-ombra dinamica sulle colonne attive */
#block_017 #form-stock-magazzino td.active-col {
  position: relative;
  --drag-x: 0px;
}

/* swipe verso sinistra (vai avanti) */
#block_017 #form-stock-magazzino td.active-col.drag-left::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: min(30px, calc(abs(var(--drag-x)) * 1px));
  height: 100%;
  pointer-events: none;
  background: linear-gradient(
    to right,
    rgba(0,0,0,0),
    rgba(139, 139, 139,0.12)
  );
}

/* swipe verso destra (vai indietro) */
#block_017 #form-stock-magazzino td.active-col.drag-right::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: min(30px, calc(abs(var(--drag-x)) * 1px));
  height: 100%;
  pointer-events: none;
  background: linear-gradient(
    to left,
    rgba(0,0,0,0),
    rgba(139, 139, 139, 0.12)
  );
}

}


/*#block_017 #form-stock-magazzino table td:nth-child(2) {
  width: 15%;
}

#block_017 #form-stock-magazzino table td:nth-child(3),
#block_017 #form-stock-magazzino table td:nth-child(5),
#block_017 #form-stock-magazzino table td:nth-child(6),
#block_017 #form-stock-magazzino table td:nth-child(7),
#block_017 #form-stock-magazzino table td:nth-child(8) {
  width: 9%;
}

#block_017 #form-stock-magazzino table td:nth-child(4) {
  width: 13%;
}*/

/* Nome blocco: "Template pagina contatti" */
/* Codice blocco: "block_018" */

#block_018 {
  position: relative;
}

#block_018,
#block_018 a {
  color: var(--dark) !important;
  text-decoration: none;
  transition: 0.1s ease-in-out;
}

#block_018 a:hover {
  opacity: 0.8;
}

#block_018 .map iframe {
  height: 100%;
}

#block_018 .box-map {
  pointer-events: none;
}

@media screen and (max-width: 768px) {
  #block_018 .map iframe {
    height: 300px;
  }
}

/* Nome blocco: "Template pagina preventivo" */
/* Codice blocco: "block_019" */

#block_019 {
  position: relative;
  height: 92.7vh;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

#block_019:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.65);
}

@media screen and (max-width: 768px) {
  #block_019 {
    height: auto;
  }
}

/* Nome blocco: "Box colori" */
/* Codice blocco: "block_020" */

#block_020 #dati-colore .codice-colore {
  height: 32px;
  width: 32px;
  border-radius: 5px;
  border: 1px solid var(--dark);
}

#block_020 #dati-colore .title {
  font-size: 15px;
  line-height: 17px;
  color: var(--black-color);
  font-weight: bold;
}

#block_020 #dati-colore .code {
  font-size: 14px;
  color: var(--dark);
  font-weight: 300;
}
