:root {
  --floral-white: #e8e8e0;
  --black: #1b1b1b;
  --crimson: #dc3330;
  --cadet-blue: #61a8b4;
  --cadet-blue-2: #61a8b445;
}

.w-layout-grid {
  grid-row-gap: 16px;
  grid-column-gap: 16px;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.w-backgroundvideo-backgroundvideoplaypausebutton:focus-visible {
  outline-offset: 2px;
  border-radius: 50%;
  outline: 2px solid #3b79c3;
}

.w-checkbox {
  margin-bottom: 5px;
  padding-left: 20px;
  display: block;
}

.w-checkbox:before {
  content: " ";
  grid-area: 1 / 1 / 2 / 2;
  display: table;
}

.w-checkbox:after {
  content: " ";
  clear: both;
  grid-area: 1 / 1 / 2 / 2;
  display: table;
}

.w-checkbox-input {
  float: left;
  margin: 4px 0 0 -20px;
  line-height: normal;
}

.w-checkbox-input--inputType-custom {
  border: 1px solid #ccc;
  border-radius: 2px;
  width: 12px;
  height: 12px;
}

.w-checkbox-input--inputType-custom.w--redirected-checked {
  background-color: #3898ec;
  background-image: url('https://d3e54v103j8qbb.cloudfront.net/static/custom-checkbox-checkmark.589d534424.svg');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  border-color: #3898ec;
}

.w-checkbox-input--inputType-custom.w--redirected-focus {
  box-shadow: 0 0 3px 1px #3898ec;
}

.w-form-formradioinput--inputType-custom {
  border: 1px solid #ccc;
  border-radius: 50%;
  width: 12px;
  height: 12px;
}

.w-form-formradioinput--inputType-custom.w--redirected-focus {
  box-shadow: 0 0 3px 1px #3898ec;
}

.w-form-formradioinput--inputType-custom.w--redirected-checked {
  border-width: 4px;
  border-color: #3898ec;
}

.w-pagination-wrapper {
  flex-wrap: wrap;
  justify-content: center;
  display: flex;
}

.w-pagination-previous {
  color: #333;
  background-color: #fafafa;
  border: 1px solid #ccc;
  border-radius: 2px;
  margin-left: 10px;
  margin-right: 10px;
  padding: 9px 20px;
  font-size: 14px;
  display: block;
}

.w-pagination-previous-icon {
  margin-right: 4px;
}

.w-pagination-next {
  color: #333;
  background-color: #fafafa;
  border: 1px solid #ccc;
  border-radius: 2px;
  margin-left: 10px;
  margin-right: 10px;
  padding: 9px 20px;
  font-size: 14px;
  display: block;
}

.w-pagination-next-icon {
  margin-left: 4px;
}

body {
  background-color: var(--floral-white);
  color: #333;
  font-family: Arial, Helvetica Neue, Helvetica, sans-serif;
  font-size: 14px;
  line-height: 20px;
}

h1 {
  margin-top: 20px;
  margin-bottom: 10px;
  font-family: futura-pt-bold, sans-serif;
  font-size: 3.5rem;
  font-weight: 700;
  line-height: 3.5rem;
}

h2 {
  margin-top: 20px;
  margin-bottom: 10px;
  font-family: futura-pt-bold, sans-serif;
  font-size: 2.25rem;
  font-weight: 700;
  line-height: 120%;
}

h3 {
  margin-top: 20px;
  margin-bottom: 10px;
  font-family: futura-pt-bold, sans-serif;
  font-size: 2rem;
  font-weight: 700;
  line-height: 120%;
}

h4 {
  margin-top: 10px;
  margin-bottom: 10px;
  font-family: futura-pt-bold, sans-serif;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.125rem;
}

h5 {
  margin-top: 10px;
  margin-bottom: 10px;
  font-family: futura-pt-bold, sans-serif;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1rem;
}

h6 {
  margin-top: 10px;
  margin-bottom: 10px;
  font-family: futura-pt-bold, sans-serif;
  font-size: .8rem;
  font-weight: 700;
  line-height: .8rem;
}

p {
  margin-bottom: 10px;
  font-family: Baskervville, sans-serif;
  font-size: 1.2rem;
  line-height: 150%;
}

a {
  color: var(--black);
  font-family: Baskervville, sans-serif;
  font-size: 1.2rem;
  line-height: 135%;
  text-decoration: underline;
  transition: all .35s;
}

a:hover {
  color: var(--crimson);
}

ol {
  margin-top: 0;
  margin-bottom: 10px;
  padding-left: 40px;
}

li {
  font-family: Baskervville, sans-serif;
  font-size: 1.2rem;
  line-height: 135%;
}

label {
  margin-bottom: 5px;
  font-family: futura-pt, sans-serif;
  font-size: .8rem;
  font-weight: 700;
  line-height: .8rem;
  display: block;
}

blockquote {
  border-left: 5px solid #e2e2e2;
  margin-bottom: 10px;
  padding: 10px 20px;
  font-family: Baskervville, sans-serif;
  font-size: 1.4rem;
  line-height: 135%;
}

.style-guide-swatches-wrap {
  justify-content: space-between;
  margin-left: -5px;
  margin-right: -5px;
  display: flex;
}

.style-guide-page-wrap {
  padding-top: 80px;
  padding-bottom: 80px;
}

.style-guide-individual-element {
  margin-bottom: 20px;
}

.style-guide-swatch-wrap {
  flex: 1;
  margin-bottom: 20px;
  margin-left: 5px;
  margin-right: 5px;
}

.style-guide-swatch {
  height: 60px;
  margin-bottom: 5px;
}

.style-guide-swatch.swatch---secondary-blue {
  background-color: var(--cadet-blue);
}

.style-guide-swatch.swatch---accent {
  background-color: var(--black);
}

.style-guide-swatch.swatch---primary-blue {
  background-color: var(--crimson);
}

.style-guide-element-description {
  color: #5e5e5e;
  margin-top: 0;
  margin-bottom: 0;
  font-style: italic;
}

.style-guide-title {
  margin-bottom: 40px;
  font-size: 48px;
  line-height: 54px;
}

.style-guide-section-wrap {
  align-items: flex-start;
  margin-bottom: 80px;
  display: flex;
  position: relative;
}

.style-guide-elements-wrap {
  flex-direction: column;
  flex: 1;
}

.style-guide-help-wrap {
  background-color: #f5f5f5;
  border-radius: 5px;
  width: 300px;
  margin-left: 40px;
  padding: 20px;
  position: sticky;
  top: 40px;
}

.style-guide-help-image {
  flex-direction: column;
  align-items: center;
  margin-top: 20px;
  display: flex;
  position: relative;
}

.style-guide-help-heading {
  margin-top: 0;
  margin-bottom: 10px;
}

.margin-top {
  margin-bottom: 0;
  margin-left: 0;
  margin-right: 0;
}

.margin-top.margin-medium {
  margin: 40px 0 0;
}

.button-wrapper {
  display: flex;
}

.button {
  border: 1px solid var(--black);
  background-color: var(--floral-white);
  color: var(--black);
  text-align: center;
  text-transform: uppercase;
  padding: .75rem 1.5rem;
  font-family: futura-pt, sans-serif;
  font-size: .8rem;
}

.button.is-icon {
  grid-column-gap: .25rem;
  grid-row-gap: .25rem;
  background-color: var(--black);
  color: var(--floral-white);
  border-style: none;
  border-width: 0;
  justify-content: center;
  align-items: center;
  font-size: 1rem;
  text-decoration: none;
  transition: all .35s;
  display: flex;
}

.button.is-icon:hover {
  border-style: none;
  border-color: var(--black);
  background-color: #000;
  border-radius: 3px;
  transform: translate(0, -5px);
}

.button.is-icon:active {
  background-color: #222;
}

.button.is-icon.secondary {
  background-color: var(--cadet-blue);
  color: var(--black);
}

.button.is-icon.secondary:hover {
  background-color: #5499a5;
}

.button.is-black {
  background-color: var(--black);
  color: var(--floral-white);
  border-width: 0;
  transition: color .35s, background-color .35s;
}

.button.is-black:hover {
  background-color: #5e5e5e;
  border-width: 0;
}

.button.is-black:active {
  color: var(--black);
  background-color: #f0f0f0;
}

.button.with-margin {
  margin-top: 1rem;
}

.icon-embed-xsmall {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 1rem;
  height: 1rem;
  display: flex;
}

.text-block {
  font-family: futura-pt, sans-serif;
  font-size: 1rem;
  line-height: 1rem;
}

.text-block.is-white {
  color: var(--floral-white);
}

.text-block.is-white.is-capital {
  text-transform: uppercase;
  flex: 0 auto;
  font-size: .9rem;
  line-height: .8rem;
}

.text-block.is-capital {
  text-transform: uppercase;
}

.text-field, .textarea, .select-field {
  font-family: futura-pt, sans-serif;
}

.navbar_link {
  text-transform: uppercase;
  padding: .5rem 1rem;
  font-family: futura-pt, sans-serif;
  font-size: 1rem;
  transition: all .35s;
}

.navbar_link.w--current {
  color: #000;
}

.navbar_logo-link {
  padding-left: 0;
}

.navbar_menu {
  justify-content: center;
  align-items: center;
  display: flex;
  position: static;
}

.navbar_menu-button {
  padding: 0;
}

.navbar_container {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto;
  grid-template-columns: .25fr 1fr .5fr;
  grid-auto-columns: 1fr;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  height: 100%;
  margin-left: auto;
  margin-right: auto;
  display: grid;
}

.navbar_button-wrapper {
  grid-column-gap: 1rem;
  margin-left: 1rem;
  display: flex;
}

.navbar_logo {
  max-width: 50px;
  padding-top: 8px;
  padding-bottom: 8px;
}

.navbar {
  border-bottom: 0px none var(--black);
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
  background-color: #e8e8e061;
  align-items: center;
  width: 100%;
  height: auto;
  min-height: 4.5rem;
  padding-left: 5%;
  padding-right: 5%;
  display: flex;
  position: fixed;
}

.margin-bottom {
  margin-top: 1.5rem;
  margin-left: 0;
  margin-right: 0;
}

.margin-bottom.margin-small {
  text-align: left;
  overflow: hidden;
}

.margin-bottom.margin-xsmall {
  overflow: hidden;
}

.margin-bottom.margin-tiny, .margin-bottom.margin-xsmall, .margin-bottom.margin-medium, .margin-bottom.margin-small {
  margin-top: 0;
  margin-left: 0;
  margin-right: 0;
}

.image-overlay-layer {
  z-index: 1;
  background-image: linear-gradient(to right, #00000078 21%, #fff0);
  position: absolute;
  inset: 0%;
}

.text-color-white {
  color: var(--floral-white);
}

.header-100svh {
  align-items: center;
  min-height: 100svh;
  max-height: 60rem;
  display: flex;
}

.padding-section-large {
  padding-top: 7rem;
  padding-bottom: 7rem;
}

.section_header {
  position: relative;
}

.section_header.hide-on-desktop {
  display: none;
}

.header_background-image-wrapper {
  z-index: -1;
  background-image: linear-gradient(#0000007a, #0000007a);
  position: absolute;
  inset: 0%;
}

.text-size-medium {
  text-align: left;
  font-family: Baskervville, sans-serif;
  font-size: 1.2rem;
  line-height: 150%;
}

.text-size-medium.text-color-white {
  color: var(--black);
}

.text-size-medium.text-color-white.is-white {
  color: var(--floral-white);
}

.text-size-medium.has_margin {
  margin-bottom: 20px;
}

.text-size-medium.is-white {
  color: var(--floral-white);
}

.max-width-medium {
  width: 100%;
  max-width: 45rem;
  overflow: hidden;
}

.padding-global {
  padding-left: 5%;
  padding-right: 5%;
}

.button-group {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  flex-wrap: wrap;
  align-items: center;
  display: flex;
}

.button-group.is-center {
  justify-content: center;
}

.header_background-image {
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.container-large {
  width: 100%;
  max-width: 80rem;
  margin-left: auto;
  margin-right: auto;
}

.heading-1 {
  color: var(--black);
  font-size: 4.5rem;
  line-height: 4.5rem;
}

.heading-1.is-white {
  color: var(--floral-white);
}

.heading-1.is-white.has-shadow {
  color: var(--floral-white);
  text-shadow: 2px 3px 13px #00000080;
}

.header47_content-left.in_servizi {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.header47_component {
  grid-column-gap: 5rem;
  grid-row-gap: 4rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  align-items: start;
  display: grid;
}

.text-weight-semibold {
  font-family: futura-pt, sans-serif;
  font-weight: 600;
}

.text-weight-semibold.is-white {
  color: var(--floral-white);
  margin-bottom: 20px;
  font-size: 1.2rem;
}

.text-weight-semibold.align-left {
  text-align: left;
}

.layout_image {
  width: 100%;
  height: 100%;
}

.layout219_tabs-link {
  opacity: .85;
  background-color: #0000;
  border-left: 2px solid #0000;
  margin-top: 2rem;
  margin-bottom: 2rem;
  padding: 0 20px 20px 2rem;
  display: block;
}

.layout219_tabs-link:hover {
  background-color: var(--cadet-blue-2);
  opacity: 1;
  color: var(--black);
  transform: translate(0, -5px);
}

.layout219_tabs-link.w--current {
  border-left-width: 4px;
  border-left-color: var(--cadet-blue);
  background-color: var(--cadet-blue-2);
  opacity: 1;
}

.section_layout {
  background-color: #c4e4e9;
}

.layout219_component {
  grid-column-gap: 5rem;
  grid-row-gap: 4rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  align-items: center;
  display: grid;
}

.heading-style-h4 {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.3;
}

.header3_component {
  grid-column-gap: 5rem;
  grid-row-gap: 4rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  align-items: center;
  display: grid;
}

.padding-section-medium {
  padding-top: 8rem;
  padding-bottom: 8rem;
}

.logo_logo {
  max-height: 3.5rem;
}

.section_logo {
  overflow: hidden;
}

.logo_component {
  padding-top: 50px;
  display: flex;
}

.logo_list {
  grid-column-gap: 1.5rem;
  grid-row-gap: 1rem;
  white-space: nowrap;
  flex-wrap: wrap;
  grid-template-rows: auto;
  grid-template-columns: 12.5rem 12.5rem 12.5rem 12.5rem 12.5rem 12.5rem 12.5rem 12.5rem;
  grid-auto-columns: 1fr;
  justify-content: flex-end;
  place-items: center start;
  margin-right: 2rem;
  display: grid;
}

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

.logo_wrapper {
  justify-content: center;
  align-items: flex-start;
  display: flex;
}

.max-width-large {
  width: 100%;
  max-width: 48rem;
}

.testimonial_component {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  align-items: stretch;
  display: grid;
}

.testimonial17_rating-icon {
  color: var(--cadet-blue);
  flex-direction: column;
  width: 1.25rem;
  height: 1.25rem;
  margin-right: .25rem;
  display: flex;
}

.testimonial_content {
  background-color: var(--cadet-blue-2);
  border: 1px solid #1b1b1b1a;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
  width: 100%;
  padding: 2rem;
  display: flex;
}

.testimonial_rating-wrapper {
  margin-bottom: 1.5rem;
  display: flex;
}

.testimonial_client {
  text-align: left;
  align-items: center;
  display: flex;
}

.text-weight-semibold-2 {
  font-weight: 600;
}

.cta17_content-left {
  max-width: 35rem;
}

.section_cta {
  position: relative;
}

.cta17_background-video-wrapper {
  z-index: -1;
  background-color: var(--black);
  position: absolute;
  inset: 0%;
}

.play-pause-button {
  display: none;
}

.footer_logo-link {
  padding-left: 0;
}

.footer_legal-list {
  grid-column-gap: 1.5rem;
  grid-row-gap: 0rem;
  white-space: normal;
  grid-template-rows: auto;
  grid-template-columns: max-content 1fr;
  grid-auto-columns: max-content;
  grid-auto-flow: column;
  justify-content: center;
  display: grid;
}

.footer_bottom-wrapper {
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.footer2_right-wrapper {
  flex-direction: column;
  display: flex;
}

.footer_link {
  color: var(--floral-white);
  padding-top: .5rem;
  padding-bottom: .5rem;
  font-family: Baskervville, sans-serif;
  font-size: 1rem;
  text-decoration: none;
  transition: transform .35s, color .35s;
}

.footer_link:hover {
  color: var(--cadet-blue);
  transform: translate(0, -2px);
}

.footer_link.credits {
  font-size: .875rem;
  line-height: 20px;
}

.footer_legal-link {
  color: var(--floral-white);
  font-size: .875rem;
  text-decoration: none;
  transition: color .35s;
}

.footer_legal-link:hover {
  color: var(--cadet-blue);
  text-decoration: none;
  transform: translate(0, -2px);
}

.padding-bottom {
  padding-top: 0;
  padding-left: 0;
  padding-right: 0;
}

.padding-bottom.padding-xxlarge {
  padding-top: 3rem;
  padding-bottom: 33px;
}

.padding-bottom.padding-xhuge {
  justify-content: center;
  display: flex;
}

.text-size-tiny {
  font-family: futura-pt, sans-serif;
  font-size: .75rem;
}

.text-size-tiny.is-white {
  color: var(--floral-white);
  font-family: Baskervville, sans-serif;
}

.footer_left-wrapper {
  grid-column-gap: 2rem;
  grid-row-gap: 1rem;
  grid-template-rows: auto;
  grid-template-columns: .5fr 1fr 1fr;
  align-items: start;
}

.padding-top {
  padding-bottom: 0;
  padding-left: 0;
  padding-right: 0;
}

.padding-top.padding-medium {
  padding-bottom: .8rem;
}

.text-size-small {
  font-family: futura-pt, sans-serif;
  font-size: .875rem;
}

.text-size-small.is-white {
  color: var(--floral-white);
  margin-bottom: 10px;
  font-family: Baskervville, sans-serif;
  font-size: 1rem;
}

.footer_link-list {
  flex-direction: column;
  grid-template-rows: auto;
  grid-template-columns: 100%;
  grid-auto-columns: 100%;
  place-items: flex-start start;
  display: flex;
}

.footer_social-list {
  grid-column-gap: .75rem;
  grid-row-gap: 0rem;
  white-space: normal;
  grid-template-rows: auto;
  grid-template-columns: max-content;
  grid-auto-columns: max-content;
  grid-auto-flow: column;
  place-items: start;
  display: grid;
}

.error-message {
  margin-top: 1.5rem;
  padding: .875rem 1rem;
  font-family: futura-pt, sans-serif;
}

.form-input {
  border: 1px solid var(--black);
  background-color: var(--floral-white);
  color: var(--black);
  height: auto;
  min-height: 2.75rem;
  margin-bottom: 0;
  padding: .5rem .75rem;
  font-family: Baskervville, sans-serif;
  font-size: 1rem;
  line-height: 135%;
  transition: all .35s;
}

.form-input:hover {
  background-color: #f3f3f0;
}

.form-input:focus {
  background-color: #f3f3f0;
  border-color: #000;
}

.form-input::placeholder {
  color: var(--black);
}

.form-input.in-footer {
  border-color: var(--floral-white);
}

.form-input.in-footer::placeholder {
  color: var(--black);
  font-size: 1rem;
}

.form-input.is-text-area {
  color: var(--black);
  padding-bottom: 3rem;
}

.social-icon {
  width: 1.5rem;
  height: 1.5rem;
}

.footer_social-link {
  align-items: center;
  font-size: 14px;
  text-decoration: none;
  display: flex;
}

.footer_social-link:hover {
  color: var(--crimson);
}

.footer_social-link.is-white {
  color: var(--floral-white);
  transition: transform .35s, color .35s;
}

.footer_social-link.is-white:hover {
  color: var(--cadet-blue);
  transform: translate(0, -2px);
}

.line-divider {
  background-color: var(--floral-white);
  width: 100%;
  height: 1px;
  margin-bottom: 14px;
}

.footer_credit-text {
  color: var(--floral-white);
  font-family: Baskervville, sans-serif;
  font-size: .875rem;
}

.footer_form {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto;
  grid-template-columns: 1fr max-content;
  grid-auto-columns: 1fr;
  margin-bottom: .75rem;
  display: grid;
}

.footer {
  background-color: var(--black);
}

.footer_top-wrapper {
  grid-column-gap: 8vw;
  grid-row-gap: 1rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr .5fr;
  align-items: start;
}

.footer_form-block {
  max-width: 35rem;
  margin-bottom: 0;
}

.success-message {
  background-color: #61a8b429;
  padding: 1.5rem;
}

.success-message.in-footer {
  color: var(--floral-white);
  background-color: #7dffb566;
  font-family: futura-pt, sans-serif;
  font-size: 1rem;
}

.padding-vertical {
  padding-left: 0;
  padding-right: 0;
}

.text-span {
  color: var(--floral-white);
  font-size: .8rem;
}

.text-span.is-bold {
  font-size: 1rem;
  font-weight: 700;
}

.image {
  max-width: 50%;
}

.header_image-list {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  height: 100%;
  display: grid;
}

.header_image-list-left {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  column-count: 2;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  align-self: center;
  column-gap: 1.5rem;
  width: 100%;
  height: 100%;
  margin-top: -120%;
  display: grid;
}

.header_image-wrapper {
  width: 100%;
  padding-top: 120%;
  position: relative;
}

.text-size-medium-3 {
  font-size: 1.125rem;
}

.header_content-right {
  grid-column-gap: 1rem;
  align-items: center;
  height: 100vh;
  padding-right: 5vw;
  overflow: hidden;
}

.header_content-left {
  max-width: 40rem;
  margin-left: 5vw;
  margin-right: 5rem;
}

.header_image {
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.header_component {
  grid-column-gap: 0rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  align-items: center;
  display: grid;
}

.header_images-layout {
  grid-column-gap: 1rem;
  grid-row-gap: 0px;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
}

.header_image-list-right {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  height: 100%;
  display: grid;
}

.section_header44 {
  background-color: var(--black);
}

.layout357_component {
  position: sticky;
  top: 0%;
}

.margin-right {
  margin-top: 0;
  margin-bottom: 0;
  margin-left: 0;
}

.layout357_image-wrapper {
  position: relative;
}

.layout357_content-layout {
  grid-column-gap: 5rem;
  grid-row-gap: 4rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  align-items: center;
  display: grid;
}

.icon-embed-xxsmall {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 1rem;
  height: 1rem;
  display: flex;
}

.layout357_image {
  object-fit: cover;
  width: 100%;
  height: 60vh;
}

.layout357_content-item {
  border-top: 1px solid var(--black);
  background-color: #0000;
  position: sticky;
  box-shadow: 0 -2px 20px #0003;
}

.layout357_content-item.content-item-1 {
  background-color: var(--floral-white);
  box-shadow: none;
  margin-bottom: 12rem;
  top: 0;
}

.layout357_content-item.content-item-2 {
  border-top-color: var(--cadet-blue-2);
  background-color: #d6d5ca;
  margin-top: -8rem;
  margin-bottom: 8rem;
  padding-bottom: 50px;
  top: 4rem;
}

.layout357_content-item.content-item-4 {
  border-top-color: var(--cadet-blue-2);
  box-shadow: none;
  background-color: #d6d5ca;
  margin-bottom: 4rem;
  padding-bottom: 50px;
  top: 0;
}

.layout357_content-item.content-item-3 {
  border-top-color: var(--cadet-blue-2);
  background-color: var(--floral-white);
  box-shadow: none;
  margin-top: -4rem;
  margin-bottom: 4rem;
  top: 8rem;
}

.layout357_anchor {
  height: 0;
  position: relative;
  top: -12rem;
}

.layout357_sticky-top {
  align-items: center;
  width: 100%;
  height: 4rem;
  display: flex;
}

.layout249_image-wrapper {
  width: 100%;
  position: relative;
}

.layout249_list {
  grid-column-gap: 3rem;
  grid-row-gap: 4rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  place-items: start;
  padding-top: 30px;
  padding-bottom: 30px;
  display: grid;
}

.impianti_image {
  width: 100%;
  height: 100%;
}

.layout249_component {
  flex-direction: column;
  align-items: flex-start;
  display: flex;
}

.layout249_item {
  flex-direction: column;
  align-items: center;
  width: 100%;
}

.blog_title-link {
  margin-bottom: .5rem;
  text-decoration: none;
  display: block;
}

.blog_image-link {
  width: 100%;
  margin-bottom: 1.5rem;
}

.heading-style-h5 {
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.4;
}

.blog_image {
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.blog_item {
  transition: all .35s;
}

.blog_item:hover {
  background-color: #d6d5ca;
  transform: translate(0, -15px);
}

.blog_component {
  flex-direction: column;
  justify-content: flex-start;
  align-items: stretch;
  display: flex;
}

.blog_button-wrapper {
  margin-top: 1.5rem;
  display: flex;
}

.blog_image-wrapper {
  width: 100%;
  padding-top: 66%;
  position: relative;
  overflow: hidden;
}

.text-size-regular {
  font-family: Baskervville, sans-serif;
  font-size: 1rem;
}

.table_header-link {
  align-items: center;
  padding-right: 1rem;
  text-decoration: none;
  display: flex;
  position: relative;
}

.table_header-link:hover {
  background-image: none;
  background-position: 100%;
  background-repeat: no-repeat;
}

.table_column {
  flex-direction: column;
  flex: 1;
  justify-content: center;
  align-items: center;
  min-height: 5rem;
  padding: 1rem 1.5rem;
  display: flex;
}

.table_column.is-width-large {
  align-items: center;
  min-width: 12rem;
  max-width: 16rem;
}

.table_column.is-width-medium {
  align-items: center;
  min-width: 8rem;
  max-width: 12rem;
}

.table_column.is-header-column {
  min-height: auto;
}

.table_column.is-width-small {
  align-items: center;
  min-width: 6rem;
  max-width: 8rem;
}

.table_item {
  border-bottom: 1px solid var(--black);
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr .5fr;
  grid-auto-columns: 1fr;
  display: flex;
}

.text-size-large {
  font-size: 1.25rem;
}

.table_button-holder {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  display: flex;
}

.table3_column-button-wrapper {
  justify-content: center;
  align-items: center;
  width: 6rem;
  margin-left: auto;
  padding: 1.5rem 1rem;
  display: flex;
}

.table3_header {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  justify-content: space-between;
  align-items: center;
  padding: 1.5rem;
  display: flex;
}

.text-weight-medium {
  font-family: futura-pt, sans-serif;
  font-weight: 500;
}

.table_pagination {
  justify-content: center;
  margin-top: 2rem;
  margin-bottom: 2rem;
  display: flex;
  position: absolute;
  inset: auto 0% 0%;
}

.table3_content {
  border-top: 1px solid #0000;
  border-bottom: 1px #0000;
  flex-direction: column;
  overflow: auto;
}

.table_component {
  grid-column-gap: 5rem;
  grid-row-gap: 4rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  padding-bottom: 5rem;
  position: relative;
}

.table3_link {
  font-weight: 600;
  text-decoration: none;
}

.page-padding {
  padding-left: 5%;
  padding-right: 5%;
}

.table3_header-row {
  border-bottom: 1px solid #0000;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr .5fr;
  grid-auto-columns: 1fr;
  display: flex;
}

.form-checkbox {
  align-items: center;
  margin-bottom: 0;
  padding-left: 1.25rem;
  display: flex;
}

.success-text {
  font-family: futura-pt, sans-serif;
  font-size: 1rem;
  font-weight: 400;
}

.text-style-link {
  text-decoration: none;
  transition: transform .35s, color .35s;
}

.text-style-link:hover {
  color: var(--crimson);
}

.form-checkbox-label {
  margin-bottom: 0;
}

.form-checkbox-label.text-size-small {
  font-family: Baskervville, sans-serif;
}

.field-label {
  margin-bottom: .5rem;
  font-size: 1.2rem;
  line-height: 135%;
}

.form-checkbox-icon {
  border: 1px solid var(--black);
  cursor: pointer;
  border-radius: 0;
  width: 1.125rem;
  min-width: 1.125rem;
  height: 1.125rem;
  min-height: 1.125rem;
  margin-top: 0;
  margin-left: -1.25rem;
  margin-right: .5rem;
  transition: all .2s;
}

.form-checkbox-icon.w--redirected-checked {
  box-shadow: none;
  background-color: #000;
  background-size: 16px 16px;
  border-width: 1px;
  border-color: #000;
}

.form-checkbox-icon.w--redirected-focus {
  box-shadow: none;
  border-color: #000;
}

.form-field-wrapper {
  position: relative;
}

.error-text {
  color: #e23939;
  font-family: futura-pt, sans-serif;
  font-size: 1rem;
}

.contact_component {
  grid-column-gap: 5rem;
  grid-row-gap: 4rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  align-items: stretch;
  display: grid;
}

.contact_form {
  grid-column-gap: 1.5rem;
  grid-row-gap: 1.5rem;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.contact_form-block {
  flex-direction: column;
  align-items: stretch;
  margin-top: 50px;
  margin-bottom: 0;
}

.contacts_item {
  flex-direction: column;
  align-items: center;
  width: 100%;
}

.icon-embed-medium {
  color: var(--crimson);
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 3rem;
  height: 3rem;
  display: flex;
}

.contacts_component {
  grid-column-gap: 3rem;
  grid-row-gap: 4rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  place-items: start;
  display: grid;
}

.link {
  align-items: center;
  display: flex;
}

.blog-posts_list {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.blog-post-header_image-wrapper {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-top: 50%;
  position: relative;
  overflow: hidden;
}

.blog-post-header_breadcrumb {
  align-items: center;
  width: 100%;
  margin-bottom: 1.5rem;
  display: flex;
}

.blog-post1-related_image-link {
  width: 100%;
  margin-bottom: 1.5rem;
}

.breadcrumb-divider {
  justify-content: center;
  align-items: center;
  width: 1rem;
  height: 1rem;
  margin-left: .5rem;
  margin-right: .5rem;
  display: flex;
}

.blog-post1-related_component {
  flex-direction: column;
  align-items: center;
}

.blog-post1-related_image-wrapper {
  width: 100%;
  padding-top: 66%;
  position: relative;
  overflow: hidden;
}

.blog-post-header_image {
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.blog-post-header_title-wrapper {
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  margin-bottom: 5rem;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.breadcrumb-link {
  color: var(--black);
  font-family: Baskervville, sans-serif;
  text-decoration: none;
}

.breadcrumb-link.w--current {
  color: var(--black);
  font-style: italic;
  font-weight: 400;
}

.blog-post-content_content {
  margin-bottom: 4rem;
}

.blog-post1_title-link {
  margin-bottom: .5rem;
  text-decoration: none;
  display: block;
}

.blog-post1-related_image {
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.heading-style-h2 {
  color: var(--black);
  font-size: 3rem;
  font-weight: 700;
  line-height: 1.2;
}

.related-blog-posts_collection-list {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.related-blog-posts_collection-item {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: block;
}

.utility-page-wrap {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100vw;
  max-width: 100%;
  height: 100vh;
  max-height: 100%;
  font-family: Baskervville, sans-serif;
  display: flex;
}

.utility-page-content {
  text-align: center;
  flex-direction: column;
  width: 260px;
  display: flex;
}

.utility-page-form {
  flex-direction: column;
  align-items: center;
  display: flex;
}

.button-copy.is-icon.in-desktop {
  border-width: 0;
  transition: color .35s, background-color .35s;
}

.button-copy.is-icon.in-desktop:hover {
  background-color: #5a5a5a;
}

.button-copy.is-icon.in-desktop:active {
  background-color: #9c9c9c;
}

.button-copy.is-icon.in-mobile {
  display: none;
}

.section_header42 {
  padding-top: 5rem;
  padding-bottom: 5rem;
}

.header42_component {
  grid-column-gap: 0rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  align-items: center;
  display: grid;
}

.header42_content {
  max-width: 35rem;
  margin-left: 5vw;
  margin-right: 5rem;
}

.video-bg {
  height: 100vh;
}

.impianti-video {
  height: 100%;
}

.sign-up-wrapper {
  flex-direction: column;
  align-items: center;
  padding-top: 28px;
  display: flex;
}

.lock-image {
  max-width: 100%;
}

.link-copy {
  align-items: center;
  display: flex;
}

.button-copy {
  border: 1px solid var(--black);
  background-color: var(--floral-white);
  color: var(--black);
  text-align: center;
  text-transform: uppercase;
  padding: .75rem 1.5rem;
  font-family: futura-pt, sans-serif;
  font-size: .8rem;
}

.button-copy.is-icon {
  grid-column-gap: .25rem;
  grid-row-gap: .25rem;
  background-color: var(--black);
  justify-content: center;
  align-items: center;
  text-decoration: none;
  display: flex;
}

.button-copy.is-icon:hover {
  border-color: var(--black);
  background-color: #412222;
}

.button-copy.is-black {
  background-color: var(--black);
  color: var(--floral-white);
}

.heading-style-h5-copy {
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.4;
}

.text-size-regular-copy {
  font-family: Baskervville, sans-serif;
  font-size: 1rem;
}

.link-smaller {
  align-items: center;
  font-size: 1rem;
  text-decoration: none;
  display: flex;
}

.success_text-span {
  font-size: 1.5rem;
  font-weight: 700;
}

.padding-top-and-down {
  padding-top: 7rem;
}

.blog-content-wrapper {
  padding: 0 1.5rem 1.5rem;
}

.menu-icon4_line-bottom {
  background-color: var(--black);
  width: 24px;
  height: 2px;
}

.navbar22_bottom {
  grid-column-gap: 6px;
  grid-row-gap: 6px;
  flex-direction: column;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: space-between;
  align-items: flex-start;
  margin-right: auto;
  display: flex;
  position: absolute;
  inset: auto auto 3rem 5vw;
}

.navbar22_logo-link {
  z-index: 3;
  padding-left: 0;
}

.navbar_link-large {
  color: var(--\<unknown\|relume-variable-link-color-1\>);
  margin-left: 0;
  margin-right: 0;
  padding: .5rem 0;
  font-size: 3rem;
  font-weight: 700;
  line-height: 1.2;
}

.navbar_link-large.w--current {
  color: var(--\<unknown\|relume-variable-color-neutral-1\>);
}

.navbar22_menu-wrapper {
  grid-column-gap: 5rem;
  grid-row-gap: 0rem;
  flex-direction: row;
  grid-template-rows: auto;
  grid-template-columns: 1fr .75fr;
  grid-auto-columns: 1fr;
  justify-content: center;
  align-items: stretch;
  height: 100%;
  display: grid;
  position: relative;
}

.navbar22_container {
  grid-template-rows: auto;
  grid-template-columns: 1fr max-content 1fr;
  grid-auto-columns: 1fr;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  height: 100%;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.menu-icon4_line-middle {
  background-color: var(--black);
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 2px;
  margin-top: 6px;
  margin-bottom: 6px;
  display: flex;
}

.navbar22_menu-button {
  z-index: 1;
  padding: 0;
}

.navbar22_menu-button.w--open {
  background-color: #0000;
}

.menu-icon_line-middle-top {
  z-index: 2;
  width: 24px;
  height: 2px;
  position: absolute;
  inset: 0;
}

.navbar22_menu-links-wrapper {
  grid-column-gap: 2.5rem;
  grid-row-gap: 1rem;
  flex-wrap: wrap;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
}

.navbar22_menu-right {
  text-align: left;
  background-color: #d6d5ca;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  height: 100vh;
  padding: 8rem 5vw 8rem 2.5rem;
  display: flex;
  position: relative;
  overflow: auto;
}

.menu-icon_line-middle-base {
  background-color: #000;
  width: 24px;
  height: 2px;
  position: absolute;
}

.menu-icon4_line-top {
  background-color: var(--black);
  width: 24px;
  height: 2px;
  padding-bottom: 0;
  padding-right: 0;
}

.navbar22_wrapper {
  z-index: 2;
  grid-column-gap: 1rem;
  flex-direction: row;
  align-items: center;
  display: flex;
}

.navbar22_social-list {
  grid-column-gap: .75rem;
  grid-row-gap: 0rem;
  white-space: normal;
  grid-template-rows: auto;
  grid-template-columns: max-content;
  grid-auto-columns: max-content;
  grid-auto-flow: column;
  margin-top: 1.5rem;
  display: flex;
  position: relative;
}

.navbar22_menu-left {
  flex-direction: column;
  flex: 1;
  justify-content: flex-start;
  align-items: stretch;
  padding-top: 8rem;
  padding-left: 5vw;
  display: flex;
  position: relative;
}

.navbar22_social-link {
  align-items: center;
  font-size: 14px;
  text-decoration: none;
  display: flex;
}

.navbar_component {
  background-color: #ddd0;
  align-items: center;
  width: 100vw;
  min-height: 4.5rem;
  padding-left: 5%;
  padding-right: 5%;
  display: flex;
  position: fixed;
}

.menu-icon4 {
  background-color: var(--floral-white);
  cursor: pointer;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 48px;
  height: 48px;
  transition: all .35s;
  display: flex;
  position: relative;
}

.menu-icon4:hover {
  background-color: #d6d5ca;
}

.navbar22_menu {
  background-color: var(--floral-white);
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  height: 100vh;
  display: flex;
  position: absolute;
  inset: 0% 0% auto;
  overflow: auto;
}

.menu-icon4_wrapper {
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.navbar22_contact-form {
  z-index: 1;
  width: 100%;
  max-width: 35rem;
  position: relative;
}

.navbar-link {
  line-height: 150%;
  text-decoration: none;
}

.header83_image-wrapper {
  position: relative;
}

.header83_image {
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.header83_content-wrapper {
  justify-content: center;
  align-items: center;
  height: 100vh;
  position: sticky;
  top: 0;
  overflow: hidden;
}

.header83_images-layout {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  height: 100%;
  display: grid;
  transform: scale(3.2);
}

.header83_component {
  height: 300vh;
  position: relative;
}

.header83_background-images {
  z-index: -1;
  position: absolute;
  inset: 0%;
}

.header83_content {
  justify-content: flex-start;
  align-items: center;
  height: 100%;
  display: flex;
}

.header83_ix-trigger {
  z-index: -1;
  margin-top: 100vh;
  position: absolute;
  inset: 0%;
}

.is-white {
  color: var(--floral-white);
}

.text-align-left {
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  max-width: 45rem;
  display: flex;
}

@media screen and (max-width: 991px) {
  .margin-top {
    margin-bottom: 0;
    margin-left: 0;
    margin-right: 0;
  }

  .navbar_link {
    text-align: center;
    padding: .75rem 0;
    font-size: 1.125rem;
  }

  .navbar_menu {
    -webkit-text-fill-color: inherit;
    background-color: #0000;
    background-clip: border-box;
    border-bottom: 1px solid #000;
    justify-content: center;
    padding: 1rem 5% 2.5rem;
    display: flex;
    position: absolute;
    overflow: auto;
  }

  .navbar_menu.is-page-height-tablet {
    background-color: var(--floral-white);
    height: 100dvh;
    padding-bottom: 6.5rem;
    transition: height .5s;
  }

  .menu-icon2 {
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 48px;
    height: 48px;
    margin-right: -.5rem;
    padding-bottom: 0;
    padding-right: 0;
    display: flex;
  }

  .menu-icon2_line-middle {
    background-color: var(--black);
    justify-content: center;
    align-items: center;
    width: 24px;
    height: 2px;
    margin-top: 6px;
    margin-bottom: 6px;
    padding-bottom: 0;
    padding-right: 0;
    display: flex;
  }

  .navbar_menu-button {
    padding: 0;
  }

  .navbar_menu-button.w--open {
    background-color: #0000;
  }

  .navbar_container {
    grid-template-columns: .25fr 1fr;
    display: flex;
  }

  .navbar_button-wrapper {
    align-items: center;
  }

  .navbar_logo {
    max-width: 20%;
  }

  .menu-icon2_line-bottom {
    background-color: var(--black);
    width: 24px;
    height: 2px;
    padding-bottom: 0;
    padding-right: 0;
  }

  .menu-icon_line-middle-inner {
    width: 4px;
    height: 0;
    padding-bottom: 0;
    padding-right: 0;
  }

  .menu-icon2_line-top {
    background-color: var(--black);
    width: 24px;
    height: 2px;
    padding-bottom: 0;
    padding-right: 0;
  }

  .margin-bottom {
    margin-top: 0;
    margin-left: 0;
    margin-right: 0;
  }

  .padding-section-large {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }

  .header47_component {
    grid-column-gap: 3rem;
    grid-row-gap: 2rem;
  }

  .layout219_component {
    grid-column-gap: 3rem;
  }

  .heading-style-h4 {
    font-size: 1.75rem;
  }

  .header3_component {
    grid-column-gap: 0rem;
    grid-row-gap: 4rem;
    grid-template-columns: 1fr;
    grid-auto-flow: row;
    min-height: auto;
  }

  .padding-section-medium {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }

  .testimonial_component {
    grid-template-columns: 1fr 1fr;
  }

  .footer_bottom-wrapper {
    flex-direction: column-reverse;
    justify-content: flex-start;
    align-items: flex-start;
  }

  .padding-bottom {
    padding-top: 0;
    padding-left: 0;
    padding-right: 0;
  }

  .footer_left-wrapper {
    grid-row-gap: 3rem;
    grid-template-columns: 1fr 1fr 1fr;
  }

  .padding-top {
    padding-bottom: 0;
    padding-left: 0;
    padding-right: 0;
  }

  .footer_social-list {
    margin-bottom: 2rem;
  }

  .footer_top-wrapper {
    grid-row-gap: 4rem;
    grid-template-columns: 1fr;
  }

  .padding-vertical {
    padding-left: 0;
    padding-right: 0;
  }

  .header_content-right {
    height: 40rem;
    padding-left: 5vw;
  }

  .header_content-left {
    margin-left: 5%;
    margin-right: 5%;
  }

  .header_component {
    grid-row-gap: 4rem;
    grid-template-columns: 1fr;
    grid-auto-flow: row;
    min-height: auto;
    padding-top: 6rem;
  }

  .margin-right {
    margin-top: 0;
    margin-bottom: 0;
    margin-left: 0;
  }

  .layout357_content-layout {
    grid-column-gap: 3rem;
    grid-row-gap: 3rem;
    grid-template-columns: 1fr;
    grid-auto-flow: row;
    min-height: auto;
  }

  .layout357_image {
    height: 30rem;
  }

  .layout357_content-item {
    padding-bottom: 3.5rem;
    position: relative;
  }

  .layout357_content-item.content-item-1 {
    margin-bottom: 0;
  }

  .layout357_content-item.content-item-2 {
    margin-top: 0;
    margin-bottom: 0;
    top: 0;
  }

  .layout357_content-item.content-item-4 {
    margin-bottom: 0;
  }

  .layout357_content-item.content-item-3 {
    margin-top: 0;
    margin-bottom: 0;
    top: 0;
  }

  .layout249_list {
    grid-column-gap: 2rem;
  }

  .table_item {
    min-width: 72rem;
  }

  .table_component {
    grid-row-gap: 4rem;
    grid-template-columns: 1fr;
    grid-auto-flow: row;
  }

  .table3_header-row {
    min-width: 72rem;
  }

  .contact_component {
    grid-column-gap: 3rem;
    grid-template-columns: 1fr 1fr;
    grid-auto-flow: row;
    min-height: auto;
  }

  .contacts_component {
    grid-column-gap: 2rem;
  }

  .blog-post-header_image-wrapper {
    margin-bottom: 3rem;
    padding-top: 56.25%;
  }

  .blog-post-header_title-wrapper {
    margin-bottom: 4rem;
  }

  .blog-post-content_content {
    margin-bottom: 3rem;
  }

  .heading-style-h2 {
    font-size: 2.75rem;
  }

  .button-copy.is-icon.in-mobile {
    display: none;
  }

  .header42_component {
    grid-row-gap: 4rem;
    grid-template-columns: 1fr;
    grid-auto-flow: row;
    min-height: auto;
    padding-top: 6rem;
  }

  .header42_content {
    margin-left: 5%;
    margin-right: 5%;
  }

  .menu-icon4_line-bottom {
    background-color: #000;
    width: 24px;
    height: 2px;
    padding-bottom: 0;
    padding-right: 0;
  }

  .navbar22_bottom {
    width: 100%;
    padding-bottom: 8rem;
    padding-left: 5vw;
    padding-right: 5vw;
    position: static;
  }

  .navbar_link-large {
    font-size: 2.5rem;
  }

  .navbar22_menu-wrapper {
    grid-row-gap: 4rem;
    flex-direction: column;
    grid-template-columns: 1fr;
    height: auto;
  }

  .navbar22_container {
    grid-auto-columns: 1fr;
  }

  .menu-icon4_line-middle {
    background-color: #000;
    justify-content: center;
    align-items: center;
    width: 24px;
    height: 2px;
    margin-top: 6px;
    margin-bottom: 6px;
    padding-bottom: 0;
    padding-right: 0;
    display: flex;
    position: static;
  }

  .navbar22_menu-button {
    margin-left: -.5rem;
    padding: 0;
  }

  .navbar22_menu-button.w--open {
    background-color: #0000;
  }

  .menu-icon_line-middle-top {
    z-index: 2;
    width: 24px;
    height: 2px;
    padding-bottom: 0;
    padding-right: 0;
    position: absolute;
    inset: 0;
  }

  .navbar22_menu-links-wrapper {
    padding-top: 2rem;
  }

  .navbar22_menu-right {
    height: auto;
    padding-top: 4rem;
    padding-bottom: 4rem;
    padding-left: 5vw;
  }

  .menu-icon_line-middle-base {
    background-color: #000;
    justify-content: center;
    align-items: center;
    width: 24px;
    height: 2px;
    padding-bottom: 0;
    padding-right: 0;
    display: flex;
    position: absolute;
  }

  .menu-icon4_line-top {
    background-color: #000;
    width: 24px;
    height: 2px;
    padding-bottom: 0;
    padding-right: 0;
  }

  .navbar22_menu-left {
    flex: 0 auto;
    width: 100%;
    padding-top: 4.5rem;
    padding-right: 5vw;
  }

  .menu-icon4 {
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 48px;
    height: 48px;
    margin-right: -.5rem;
    padding-bottom: 0;
    padding-right: 0;
    display: flex;
    position: relative;
  }

  .menu-icon4_wrapper {
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    display: flex;
  }

  .navbar22_contact-form {
    max-width: none;
  }
}

@media screen and (max-width: 767px) {
  .margin-top {
    margin-bottom: 0;
    margin-left: 0;
    margin-right: 0;
  }

  .navbar_menu.is-page-height-tablet {
    padding-bottom: 6rem;
  }

  .navbar {
    min-height: 4rem;
  }

  .margin-bottom {
    margin-top: 0;
    margin-left: 0;
    margin-right: 0;
  }

  .margin-bottom.margin-xsmall.is-small-mobile {
    margin-bottom: 1rem;
  }

  .padding-section-large {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }

  .section_header.hide-on-desktop {
    display: block;
  }

  .text-size-medium {
    font-size: 1rem;
  }

  .header47_component {
    grid-template-columns: 1fr;
  }

  .layout219_component {
    grid-row-gap: 3rem;
    grid-template-columns: 1fr;
  }

  .heading-style-h4 {
    font-size: 1.5rem;
    line-height: 1.4;
  }

  .header3_component {
    grid-row-gap: 3rem;
  }

  .padding-section-medium {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }

  .logo_logo {
    max-height: 3rem;
  }

  .logo_list {
    grid-column-gap: 1rem;
    grid-template-columns: 10rem 10rem 10rem 10rem 10rem 10rem 10rem 10rem;
    padding-top: 1rem;
  }

  .logo_wrapper {
    padding: .75rem 1rem;
  }

  .testimonial_component {
    grid-template-columns: 1fr;
  }

  .testimonial_content {
    padding: 1.5rem;
  }

  .testimonial_client {
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
  }

  .footer_legal-list {
    grid-column-gap: 0rem;
    grid-row-gap: 1rem;
    grid-auto-flow: row;
  }

  .footer_bottom-wrapper {
    flex-direction: column-reverse;
    align-items: flex-start;
    padding-bottom: 1rem;
  }

  .padding-bottom {
    padding-top: 0;
    padding-left: 0;
    padding-right: 0;
  }

  .footer_left-wrapper {
    grid-column-gap: 1.5rem;
  }

  .padding-top {
    padding-bottom: 0;
    padding-left: 0;
    padding-right: 0;
  }

  .footer_credit-text {
    margin-top: 1rem;
  }

  .footer_top-wrapper {
    grid-row-gap: 3rem;
  }

  .padding-vertical {
    padding-left: 0;
    padding-right: 0;
  }

  .text-size-medium-3 {
    font-size: 1rem;
  }

  .header_content-right {
    height: 30rem;
  }

  .header_component {
    padding-top: 4rem;
  }

  .margin-right {
    margin-top: 0;
    margin-bottom: 0;
    margin-left: 0;
  }

  .layout357_content-layout {
    grid-row-gap: 3rem;
    grid-template-columns: 1fr;
  }

  .layout357_content-item {
    padding-bottom: 2rem;
  }

  .layout249_list {
    grid-row-gap: 3rem;
    grid-template-columns: 1fr;
  }

  .heading-style-h5 {
    font-size: 1.25rem;
  }

  .text-size-large {
    font-size: 1.125rem;
  }

  .table_component {
    grid-row-gap: 3rem;
  }

  .contact_component, .contacts_component {
    grid-row-gap: 3rem;
    grid-template-columns: 1fr;
  }

  .blog-posts_list {
    grid-template-columns: 1fr 1fr;
  }

  .blog-post-header_title-wrapper {
    margin-bottom: 3rem;
  }

  .blog-post-content_content {
    margin-bottom: 2rem;
  }

  .heading-style-h2 {
    font-size: 2.25rem;
  }

  .related-blog-posts_collection-list {
    grid-template-columns: 1fr 1fr;
  }

  .button-copy.is-icon.in-desktop {
    display: none;
  }

  .button-copy.is-icon.in-mobile {
    grid-column-gap: .25rem;
    grid-row-gap: .25rem;
    grid-template-rows: auto auto;
    grid-template-columns: 1fr 1fr;
    grid-auto-columns: 1fr;
    display: flex;
  }

  .header42_component {
    padding-top: 4rem;
  }

  .heading-style-h5-copy {
    font-size: 1.25rem;
  }

  .navbar_link-large {
    font-size: 1.5rem;
  }

  .navbar22_menu-wrapper {
    grid-row-gap: 3rem;
  }

  .navbar22_menu-links-wrapper {
    flex-direction: column;
    padding-top: 1rem;
  }

  .navbar22_menu-right {
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
  }

  .navbar_component {
    min-height: 4rem;
  }

  .section_header83.hide-on-landscape {
    display: none;
  }

  .header83_images-layout {
    grid-template-columns: 1fr;
  }
}

@media screen and (max-width: 479px) {
  .margin-top {
    margin-bottom: 0;
    margin-left: 0;
    margin-right: 0;
  }

  .margin-bottom {
    margin-top: 0;
    margin-left: 0;
    margin-right: 0;
  }

  .margin-bottom.margin-tiny.align-left {
    text-align: left;
  }

  .heading-1 {
    font-size: 3.5rem;
  }

  .header47_content-left.in_servizi, .header47_component {
    grid-template-columns: 1fr;
  }

  .layout219_component {
    grid-row-gap: 48px;
    grid-template-columns: 1fr;
  }

  .header3_component {
    grid-template-columns: 1fr;
  }

  .logo_list {
    justify-content: center;
  }

  .logo_wrapper {
    justify-content: center;
    align-items: flex-start;
  }

  .footer_legal-list {
    grid-template-columns: max-content;
  }

  .padding-bottom {
    padding-top: 0;
    padding-left: 0;
    padding-right: 0;
  }

  .footer_left-wrapper {
    grid-row-gap: 40px;
    grid-template-columns: 1fr;
  }

  .padding-top {
    padding-bottom: 0;
    padding-left: 0;
    padding-right: 0;
  }

  .footer_form {
    grid-row-gap: 12px;
    flex-direction: column;
    grid-template-columns: 1fr;
  }

  .footer_top-wrapper {
    grid-row-gap: 48px;
  }

  .padding-vertical {
    padding-left: 0;
    padding-right: 0;
  }

  .header_component {
    grid-template-columns: 1fr;
  }

  .margin-right {
    margin-top: 0;
    margin-bottom: 0;
    margin-left: 0;
  }

  .layout357_content-layout {
    grid-template-columns: 1fr;
  }

  .layout357_image {
    height: 25rem;
  }

  .layout249_list {
    grid-template-columns: 1fr 1fr;
  }

  .table3_header {
    flex-direction: column;
    align-items: flex-start;
  }

  .table_component, .contact_component, .contacts_component, .blog-posts_list, .related-blog-posts_collection-list, .header42_component {
    grid-template-columns: 1fr;
  }

  .video-bg {
    display: none;
  }

  .navbar22_menu-links-wrapper {
    grid-template-columns: 1fr;
  }

  .header83_images-layout {
    transform: scale(3.4);
  }
}

#w-node-cc6a0728-1ddf-2840-e2b0-c3756ced425e-4b3c0898, #w-node-cc6a0728-1ddf-2840-e2b0-c3756ced425f-4b3c0898, #w-node-cc6a0728-1ddf-2840-e2b0-c3756ced4260-4b3c0898, #w-node-cc6a0728-1ddf-2840-e2b0-c3756ced4261-4b3c0898, #w-node-cc6a0728-1ddf-2840-e2b0-c3756ced4262-4b3c0898, #w-node-cc6a0728-1ddf-2840-e2b0-c3756ced4263-4b3c0898, #w-node-cc6a0728-1ddf-2840-e2b0-c3756ced4264-4b3c0898, #w-node-cc6a0728-1ddf-2840-e2b0-c3756ced4265-4b3c0898, #w-node-cc6a0728-1ddf-2840-e2b0-c3756ced4266-4b3c0898, #w-node-cc6a0728-1ddf-2840-e2b0-c3756ced4267-4b3c0898, #w-node-cc6a0728-1ddf-2840-e2b0-c3756ced4268-4b3c0898, #w-node-cc6a0728-1ddf-2840-e2b0-c3756ced4269-4b3c0898, #w-node-cc6a0728-1ddf-2840-e2b0-c3756ced426a-4b3c0898, #w-node-cc6a0728-1ddf-2840-e2b0-c3756ced426b-4b3c0898, #w-node-cc6a0728-1ddf-2840-e2b0-c3756ced426c-4b3c0898, #w-node-cc6a0728-1ddf-2840-e2b0-c3756ced426d-4b3c0898, #w-node-cc6a0728-1ddf-2840-e2b0-c3756ced426e-4b3c0898, #w-node-cc6a0728-1ddf-2840-e2b0-c3756ced426f-4b3c0898 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_66512752-776a-11fd-c9fe-1b22cf29fd68-4b3c0898 {
  grid-area: 1 / 1 / 2 / 2;
}

#Email-3.w-node-ac584f77-67b6-365c-a857-2ca036e3d3ba-36e3d386, #w-node-_748c5581-78c9-278c-b893-e4a9e8623015-36e3d386 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_278b4dc6-5e4d-24d3-7af0-98a8f7885fe6-f7885fda, #w-node-_278b4dc6-5e4d-24d3-7af0-98a8f7885fe8-f7885fda, #w-node-_278b4dc6-5e4d-24d3-7af0-98a8f7885fea-f7885fda, #w-node-_278b4dc6-5e4d-24d3-7af0-98a8f7885fec-f7885fda, #w-node-_278b4dc6-5e4d-24d3-7af0-98a8f7885fee-f7885fda, #w-node-_278b4dc6-5e4d-24d3-7af0-98a8f7885ff0-f7885fda, #w-node-_278b4dc6-5e4d-24d3-7af0-98a8f7885ff2-f7885fda, #w-node-_278b4dc6-5e4d-24d3-7af0-98a8f7885ff4-f7885fda, #w-node-_278b4dc6-5e4d-24d3-7af0-98a8f7885ff7-f7885fda, #w-node-_278b4dc6-5e4d-24d3-7af0-98a8f7885ff9-f7885fda, #w-node-_278b4dc6-5e4d-24d3-7af0-98a8f7885ffb-f7885fda, #w-node-_278b4dc6-5e4d-24d3-7af0-98a8f7885ffd-f7885fda, #w-node-_278b4dc6-5e4d-24d3-7af0-98a8f7885fff-f7885fda, #w-node-_278b4dc6-5e4d-24d3-7af0-98a8f7886001-f7885fda, #w-node-_278b4dc6-5e4d-24d3-7af0-98a8f7886003-f7885fda, #w-node-_278b4dc6-5e4d-24d3-7af0-98a8f7886005-f7885fda {
  justify-self: center;
}

#w-node-_36424722-33db-d4a0-1ea3-ccb691be6cc5-91be6cac {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_2fe44881-ee08-d276-2fec-d1a0480bdc44-480bdc15 {
  justify-self: start;
}

#w-node-_280c140d-6d68-20ec-8847-633e9ea227c0-b175034b {
  justify-self: end;
}

#w-node-_280c140d-6d68-20ec-8847-633e9ea227cf-b175034b, #w-node-_280c140d-6d68-20ec-8847-633e9ea227d0-b175034b, #w-node-_280c140d-6d68-20ec-8847-633e9ea227d1-b175034b, #w-node-_280c140d-6d68-20ec-8847-633e9ea227d2-b175034b, #w-node-_280c140d-6d68-20ec-8847-633e9ea227d4-b175034b, #w-node-_280c140d-6d68-20ec-8847-633e9ea227d5-b175034b, #w-node-_280c140d-6d68-20ec-8847-633e9ea227d6-b175034b, #w-node-_280c140d-6d68-20ec-8847-633e9ea227d7-b175034b, #w-node-_280c140d-6d68-20ec-8847-633e9ea227d8-b175034b, #w-node-_280c140d-6d68-20ec-8847-633e9ea227d9-b175034b, #w-node-_280c140d-6d68-20ec-8847-633e9ea227da-b175034b, #w-node-_280c140d-6d68-20ec-8847-633e9ea227db-b175034b, #w-node-_280c140d-6d68-20ec-8847-633e9ea227dc-b175034b, #w-node-_280c140d-6d68-20ec-8847-633e9ea227de-b175034b, #w-node-_280c140d-6d68-20ec-8847-633e9ea227df-b175034b, #w-node-_280c140d-6d68-20ec-8847-633e9ea227e0-b175034b, #w-node-_280c140d-6d68-20ec-8847-633e9ea227e1-b175034b, #w-node-_280c140d-6d68-20ec-8847-633e9ea227e2-b175034b, #w-node-_280c140d-6d68-20ec-8847-633e9ea227e3-b175034b, #w-node-_280c140d-6d68-20ec-8847-633e9ea227e4-b175034b, #w-node-_280c140d-6d68-20ec-8847-633e9ea227e5-b175034b, #w-node-_280c140d-6d68-20ec-8847-633e9ea227e6-b175034b, #w-node-_280c140d-6d68-20ec-8847-633e9ea227e7-b175034b, #w-node-_280c140d-6d68-20ec-8847-633e9ea227e8-b175034b, #w-node-_280c140d-6d68-20ec-8847-633e9ea227e9-b175034b, #w-node-_280c140d-6d68-20ec-8847-633e9ea227ea-b175034b, #w-node-_280c140d-6d68-20ec-8847-633e9ea227eb-b175034b, #w-node-_503738b0-4cfa-3ed4-ed83-c0aa1d8ed3b6-102c06a6 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_851db473-33af-ade4-e85c-be232940be09-ea8b0838 {
  justify-self: start;
}

#w-node-_09c239a3-d31f-2c9e-0865-0ed2ff86782f-c31398cb {
  justify-self: end;
}

#w-node-_61d48e5e-b57d-9c59-9012-04d81da737ed-c31398cb {
  justify-self: start;
}

#w-node-_8e256868-6612-8927-c238-2a7e8f914798-c31398cb {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

@media screen and (max-width: 991px) {
  #w-node-cc6a0728-1ddf-2840-e2b0-c3756ced4260-4b3c0898, #w-node-cc6a0728-1ddf-2840-e2b0-c3756ced4262-4b3c0898, #w-node-cc6a0728-1ddf-2840-e2b0-c3756ced4264-4b3c0898, #w-node-cc6a0728-1ddf-2840-e2b0-c3756ced4266-4b3c0898, #w-node-cc6a0728-1ddf-2840-e2b0-c3756ced4268-4b3c0898, #w-node-cc6a0728-1ddf-2840-e2b0-c3756ced426a-4b3c0898, #w-node-cc6a0728-1ddf-2840-e2b0-c3756ced426c-4b3c0898, #w-node-cc6a0728-1ddf-2840-e2b0-c3756ced426e-4b3c0898 {
    grid-area: span 1 / span 1 / span 1 / span 1;
  }

  #w-node-ac584f77-67b6-365c-a857-2ca036e3d38d-36e3d386 {
    grid-area: 1 / 1 / 2 / 4;
  }

  #w-node-_280c140d-6d68-20ec-8847-633e9ea227c0-b175034b, #w-node-_09c239a3-d31f-2c9e-0865-0ed2ff86782f-c31398cb {
    justify-self: start;
  }
}

@media screen and (max-width: 767px) {
  #w-node-_66512752-776a-11fd-c9fe-1b22cf29fd55-4b3c0898 {
    grid-area: 1 / 1 / 2 / 2;
  }

  #w-node-_66512752-776a-11fd-c9fe-1b22cf29fd68-4b3c0898 {
    grid-row: 2 / 3;
  }

  #w-node-ac584f77-67b6-365c-a857-2ca036e3d38d-36e3d386 {
    grid-area: 1 / 1 / 2 / 4;
  }

  #w-node-ac584f77-67b6-365c-a857-2ca036e3d3c9-36e3d386 {
    grid-area: 4 / 1 / 5 / 2;
  }

  #w-node-ac584f77-67b6-365c-a857-2ca036e3d3cb-36e3d386 {
    grid-area: 1 / 1 / 2 / 2;
  }
}

@media screen and (max-width: 479px) {
  #w-node-ac584f77-67b6-365c-a857-2ca036e3d38d-36e3d386 {
    grid-area: span 1 / span 1 / span 1 / span 1;
  }
}


