.elementor-3684 .elementor-element.elementor-element-7f5f74b:not(.elementor-motion-effects-element-type-background), .elementor-3684 .elementor-element.elementor-element-7f5f74b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#172D79;}.elementor-3684 .elementor-element.elementor-element-7f5f74b, .elementor-3684 .elementor-element.elementor-element-7f5f74b > .elementor-background-overlay{border-radius:0px 0px 40px 40px;}.elementor-3684 .elementor-element.elementor-element-7f5f74b{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:-82px;margin-bottom:0px;padding:172px 0px 150px 0px;}.elementor-3684 .elementor-element.elementor-element-7f5f74b > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-3684 .elementor-element.elementor-element-6595211{margin-top:-135px;margin-bottom:0px;}.elementor-3684 .elementor-element.elementor-element-dd74e9c > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}.elementor-3684 .elementor-element.elementor-element-5ec0588{border-radius:40px 40px 40px 40px;}.elementor-3684 .elementor-element.elementor-element-5ec0588 .elementor-wrapper{--video-aspect-ratio:1.77777;}.elementor-3684 .elementor-element.elementor-element-68002ec{margin-top:-135px;margin-bottom:0px;}.elementor-3684 .elementor-element.elementor-element-7f8b288 > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}.elementor-3684 .elementor-element.elementor-element-bacedf5{border-radius:40px 40px 40px 40px;}.elementor-3684 .elementor-element.elementor-element-bacedf5 .elementor-wrapper{--video-aspect-ratio:1;}.elementor-3684 .elementor-element.elementor-element-ff0474b{margin-top:150px;margin-bottom:0px;}.elementor-3684 .elementor-element.elementor-element-451914b{margin-top:150px;margin-bottom:0px;}.elementor-3684 .elementor-element.elementor-element-f0564d1:not(.elementor-motion-effects-element-type-background), .elementor-3684 .elementor-element.elementor-element-f0564d1 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#101010;}.elementor-3684 .elementor-element.elementor-element-f0564d1{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:50px 0px 0px 0px;}.elementor-3684 .elementor-element.elementor-element-f0564d1 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-3684 .elementor-element.elementor-element-3552e70{margin-top:150px;margin-bottom:0150px;}body.elementor-page-3684:not(.elementor-motion-effects-element-type-background), body.elementor-page-3684 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#101010;}@media(max-width:767px){.elementor-3684 .elementor-element.elementor-element-7f5f74b{margin-top:-90px;margin-bottom:0px;padding:140px 0px 50px 0px;}.elementor-3684 .elementor-element.elementor-element-6595211{margin-top:0px;margin-bottom:0px;}.elementor-3684 .elementor-element.elementor-element-68002ec{margin-top:0px;margin-bottom:0px;}.elementor-3684 .elementor-element.elementor-element-bacedf5{margin:0px 15px calc(var(--kit-widget-spacing, 0px) + 0px) 15px;padding:0px 0px 0px 0px;border-radius:20px 20px 20px 20px;}.elementor-3684 .elementor-element.elementor-element-ff0474b{margin-top:50px;margin-bottom:0px;}.elementor-3684 .elementor-element.elementor-element-451914b{margin-top:0px;margin-bottom:0px;}.elementor-3684 .elementor-element.elementor-element-3552e70{margin-top:0px;margin-bottom:0px;}}/* Start custom CSS for html, class: .elementor-element-d1c34ac */.social-media-tag {
  color: var(--Neutral-400, #B8B8B8);

  /* Desktop/Tag/Regular */
  font-family: "Plus Jakarta Sans";
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 135%; /* 21.6px */
  letter-spacing: 0.32px;
  text-transform: uppercase;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-1c29ef8 */.title-progetto {
  color: var(--Neutral-100, #F5F5F5);

  /* Desktop/Title/H1 */
  font-family: "Zalando Sans Expanded", sans-serif;
  font-size: 60px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 1.2px;
 
}
@media (max-width: 480px) {
.title-progetto {
  color: var(--Neutral-100, #F5F5F5);

  /* Desktop/Title/H1 */
  font-family: "Zalando Sans Expanded", sans-serif;
  font-size: 30px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 1.2px;

}
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-5dd257e *//* ====== BLOCCO TESTI HEADER ====== */

.ss-textblock-header {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
  width: 100%;
}

/* Testi */
.ss-textblock-header p {
  color: var(--Neutral-100, #F5F5F5);
  font-family: "Plus Jakarta Sans";
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 135%;
  letter-spacing: 0.32px;
}

/* Grassetto */
.ss-textblock-header .ss-bold-header {
  font-weight: 700;
}

/* ====== RESPONSIVE ====== */
@media (max-width: 768px) {
  .ss-textblock-header {
    grid-template-columns: 1fr;
    gap: 30px;
  }

  .ss-textblock-header p {
    font-size: 15px;
    line-height: 145%;
  }
}

@media (max-width: 480px) {
  .ss-textblock-header {
    gap: 24px;
  }

  .ss-textblock-header p {
    font-size: 14px;
    line-height: 150%;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-767c42b */.social-media-tag-paragrafo {
color: var(--Neutral-400, #B8B8B8);

/* Desktop/Tag/Regular */
font-family: "Plus Jakarta Sans";
font-size: 16px;
font-style: normal;
font-weight: 400;
line-height: 135%; /* 21.6px */
letter-spacing: 0.32px;
text-transform: uppercase;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-5138fba */.title-paragrafo {
color: var(--Neutral-100, #F5F5F5);

/* Desktop/Title/H3 */
  font-family: "Zalando Sans Expanded", sans-serif;
font-size: 38px;
font-style: normal;
font-weight: 600;
line-height: 130%; /* 49.4px */
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-06a9964 */.ss-textblock-paragrafo {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
}

.ss-textblock-paragrafo p {
color: var(--Neutral-100, #F5F5F5);
font-family: "Plus Jakarta Sans";
font-size: 16px;
font-style: normal;
font-weight: 400;
line-height: 135%; /* 21.6px */
letter-spacing: 0.32px;
}

.ss-textblock-paragrafo .ss-bold-paragrafo {
color: var(--Neutral-100, #F5F5F5);
font-family: "Plus Jakarta Sans";
font-size: 16px;
font-style: normal;
font-weight: 700;
line-height: 135%;
letter-spacing: 0.32px;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-fb120bb *//* =========================================================
   HP — SEZIONE IMMAGINE + VIDEO
========================================================= */

.hp-media-section {
  width: 100%;
  padding: 16px 28px 34px;
  background-color: #111111;
  box-sizing: border-box;
}

/* Contenitore delle due colonne */
.hp-media-layout {
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;

  display: grid;
  grid-template-columns:
    minmax(0, 522fr)
    minmax(0, 738fr);

  gap: 20px;
  align-items: stretch;
}

/* Contenitori comuni */
.hp-media-image,
.hp-media-video {
  position: relative;
  width: 100%;
  height: clamp(380px, 43.75vw, 560px);
  overflow: hidden;
  background-color: #000000;
}

/* Immagine */
.hp-media-image {
  border-radius: 0;
}

.hp-media-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

/* Video */
.hp-media-video {
  border-radius: 18px;
}

.hp-media-video video {
  display: block;
  width: 100%;
  height: 100%;

  object-fit: cover;
  object-position: center;

  border: 0;
  outline: 0;
}

/* Evita la visualizzazione di eventuali controlli */
.hp-media-video video::-webkit-media-controls {
  display: none !important;
}

/* =========================================================
   TABLET
========================================================= */

@media screen and (max-width: 1024px) {
  .hp-media-section {
    padding: 16px 20px 30px;
  }

  .hp-media-layout {
    gap: 14px;
  }

  .hp-media-image,
  .hp-media-video {
    height: clamp(330px, 43.75vw, 450px);
  }

  .hp-media-video {
    border-radius: 14px;
  }
}

/* =========================================================
   MOBILE — NASCONDE L’IMMAGINE
========================================================= */

@media screen and (max-width: 767px) {
  .hp-media-section {
    padding: 12px 16px 24px;
  }

  .hp-media-layout {
    display: block;
    max-width: none;
  }

  /* Nasconde completamente l’immagine */
  .hp-media-image {
    display: none;
  }

  /* Mostra solamente il video */
  .hp-media-video {
    width: 100%;
    height: auto;
    aspect-ratio: 738 / 560;
    border-radius: 12px;
  }

  .hp-media-video video {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-2fe71a9 */.social-media-tag-paragrafo {
color: var(--Neutral-400, #B8B8B8);

/* Desktop/Tag/Regular */
font-family: "Plus Jakarta Sans";
font-size: 16px;
font-style: normal;
font-weight: 400;
line-height: 135%; /* 21.6px */
letter-spacing: 0.32px;
text-transform: uppercase;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-059bf41 */.title-paragrafo {
color: var(--Neutral-100, #F5F5F5);

/* Desktop/Title/H3 */
  font-family: "Zalando Sans Expanded", sans-serif;
font-size: 38px;
font-style: normal;
font-weight: 600;
line-height: 130%; /* 49.4px */
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-9816bf6 */.ss-textblock-paragrafo {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
}

.ss-textblock-paragrafo p {
color: var(--Neutral-100, #F5F5F5);
font-family: "Plus Jakarta Sans";
font-size: 16px;
font-style: normal;
font-weight: 400;
line-height: 135%; /* 21.6px */
letter-spacing: 0.32px;
}

.ss-textblock-paragrafo .ss-bold-paragrafo {
color: var(--Neutral-100, #F5F5F5);
font-family: "Plus Jakarta Sans";
font-size: 16px;
font-style: normal;
font-weight: 700;
line-height: 135%;
letter-spacing: 0.32px;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-a723838 *//* ===========================
   Slider Video – SETTINGS
=========================== */
#gifSlider.gifslider {
  --card-w: 412px;
  --card-h: 840px;
  --gap: 24px;
  --radius: 22px;
  --shadow: 0 10px 30px rgba(0,0,0,.25);

  font-family: "Shne Breit";
  position: relative;
  padding-bottom: 20px;
  user-select: none;
}

/* ===========================
   VIEWPORT
=========================== */
#gifSlider .gifslider-viewport {
  width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  -ms-overflow-style: none;
  scrollbar-width: none;
  touch-action: pan-y;
}
#gifSlider .gifslider-viewport::-webkit-scrollbar { display: none; }
#gifSlider .gifslider-viewport { cursor: grab; }
#gifSlider.is-dragging .gifslider-viewport { cursor: grabbing; }

/* ===========================
   TRACK
=========================== */
#gifSlider .gifslider-track {
  display: flex;
  gap: var(--gap);
  align-items: flex-start;
  will-change: scroll-position;
}

/* ===========================
   CARD
=========================== */
#gifSlider .gifslider-card {
  flex: 0 0 auto;
  width: var(--card-w);
  height: var(--card-h);
  border-radius: var(--radius);
  overflow: hidden;
  background: #000;
  box-shadow: var(--shadow);
  text-decoration: none;
  position: relative;
}

/* ===========================
   VIDEO
=========================== */
#gifSlider .gifslider-media {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  pointer-events: none;
}

/* ===========================
   OVERLAY (ELIMINATO)
=========================== */
#gifSlider .gifslider-layer {
  display: none !important;
}

/* ===========================
   TESTO (ELIMINATO)
=========================== */
#gifSlider .gifslider-text {
  display: none !important;
}

/* ===========================
   RESPONSIVE MOBILE
=========================== */
@media (max-width: 600px) {
  #gifSlider .gifslider-card {
    width: 68vw;
    max-width: 360px;
    aspect-ratio: 412 / 720;
    height: auto;
    border-radius: 18px;
  }
}

@media (max-width: 380px) {
  #gifSlider .gifslider-card {
    width: 80vw;
    max-width: 320px;
  }
}

/* ===========================
   DOTS
=========================== */
#gifSlider .gifslider-dots {
  display: flex;
  justify-content: center;
  gap: 14px;
  margin-top: 18px;
  padding-bottom: 10px;
}

#gifSlider .gifslider-dot {
  width: 14px;
  height: 14px;
  background: #ffffff;
  border-radius: 3px;
  opacity: .9;
  transition: background .25s, transform .25s;
}

#gifSlider .gifslider-dot.active {
  background: #2d55ff;
  transform: rotate(45deg) scale(1.1);
}

@media (min-width: 600px) {
  #gifSlider .gifslider-dots { display: none; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-116c0b4 */.social-media-tag-paragrafo {
color: var(--Neutral-400, #B8B8B8);

/* Desktop/Tag/Regular */
font-family: "Plus Jakarta Sans";
font-size: 16px;
font-style: normal;
font-weight: 400;
line-height: 135%; /* 21.6px */
letter-spacing: 0.32px;
text-transform: uppercase;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-c95825c */.title-paragrafo {
color: var(--Neutral-100, #F5F5F5);

/* Desktop/Title/H3 */
  font-family: "Zalando Sans Expanded", sans-serif;
font-size: 38px;
font-style: normal;
font-weight: 600;
line-height: 130%; /* 49.4px */
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-94b85ea */.ss-textblock-paragrafo {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
}

.ss-textblock-paragrafo p {
color: var(--Neutral-100, #F5F5F5);
font-family: "Plus Jakarta Sans";
font-size: 16px;
font-style: normal;
font-weight: 400;
line-height: 135%; /* 21.6px */
letter-spacing: 0.32px;
}

.ss-textblock-paragrafo .ss-bold-paragrafo {
color: var(--Neutral-100, #F5F5F5);
font-family: "Plus Jakarta Sans";
font-size: 16px;
font-style: normal;
font-weight: 700;
line-height: 135%;
letter-spacing: 0.32px;
}/* End custom CSS */