.elementor-2074 .elementor-element.elementor-element-2ba07c1{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:60px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-2074 .elementor-element.elementor-element-12688f5{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2074 .elementor-element.elementor-element-e31bb98{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}:root{--page-title-display:none;}/* Start custom CSS for html, class: .elementor-element-02fe154 *//* =========================================
   FUNZIONI · MENÙ DIGITALE
   SEZIONE 1 + 2

   DARK  #004632
   LIGHT #62B677
   ========================================= */

.elementor-2074 .elementor-element.elementor-element-02fe154 {
  width: 100%;
  min-width: 0;
  background: transparent !important;
}

.elementor-2074 .elementor-element.elementor-element-02fe154 > .elementor-widget-container {
  margin: 0;
  padding: 0;
  background: transparent !important;
}

.elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-hero,
.elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-hero *,
.elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-hero *::before,
.elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-hero *::after {
  box-sizing: border-box;
}

.elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-hero {
  --rc-primary: #004632;
  --rc-secondary: #62B677;
  --rc-text: #444444;
  --rc-soft: rgba(98, 182, 119, 0.12);

  width: 100%;
  margin: 0;
  padding: 56px 24px 72px;

  background: transparent !important;

  color: var(--rc-text);
  font-family: "Inter", sans-serif;

  -webkit-font-smoothing: antialiased;
}

.elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-hero__inner {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}


/* =========================================
   HERO GRID
   ========================================= */

.elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-hero__grid {
  display: grid;

  grid-template-columns:
    minmax(0, 0.94fr)
    minmax(0, 1.06fr);

  align-items: center;

  gap: 50px;

  margin-bottom: 64px;
}


/* =========================================
   HERO COPY
   ========================================= */

.elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-hero__content {
  min-width: 0;
}


/* EYEBROW */

.elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-hero__eyebrow {
  display: flex;
  align-items: center;
  gap: 10px;

  margin: 0 0 16px;
  padding: 0;

  color: var(--rc-primary) !important;
  -webkit-text-fill-color: var(--rc-primary) !important;

  font-family: "Inter", sans-serif !important;

  font-size: 10px;
  font-weight: 600;
  line-height: 1.6;

  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-hero__eyebrow > span {
  flex: 0 0 6px;

  width: 6px;
  height: 6px;

  border-radius: 50%;

  background: var(--rc-secondary);

  box-shadow:
    0 0 0 4px rgba(98, 182, 119, 0.15);
}


/* =========================================
   TITLE
   ========================================= */

.elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-hero__title {
  max-width: 590px;

  margin: 0 0 25px;
  padding: 0;

  color: var(--rc-primary) !important;
  -webkit-text-fill-color: var(--rc-primary) !important;

  font-family: "Montserrat", sans-serif !important;

  font-size: clamp(40px, 4.3vw, 58px);

  font-weight: 800;

  line-height: 1.03;

  letter-spacing: -0.045em;

  text-transform: none;
  text-shadow: none;
}


/* =========================================
   UNDERLINE
   ========================================= */

.elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-hero__highlight {
  position: relative;

  display: inline-block;

  padding-bottom: 9px;

  color: var(--rc-primary) !important;

  -webkit-text-fill-color:
    var(--rc-primary) !important;
}

.elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-hero__highlight::after {
  content: "";

  position: absolute;

  left: 0;
  right: 0;
  bottom: 0;

  height: 3px;

  border-radius: 999px;

  background: var(--rc-secondary);

  transform: rotate(-0.3deg);
}


/* =========================================
   DESCRIPTION
   ========================================= */

.elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-hero__text {
  max-width: 560px;

  margin: 0 0 30px;
  padding: 0;

  color: var(--rc-text) !important;

  -webkit-text-fill-color:
    var(--rc-text) !important;

  font-family:
    "Inter", sans-serif !important;

  font-size: 16px;

  font-weight: 400;

  line-height: 1.7;
}


/* =========================================
   CTA
   LIGHT GREEN → DARK GREEN
   ========================================= */

.elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-hero__button {
  display: inline-flex;

  align-items: center;
  justify-content: center;

  gap: 17px;

  min-height: 52px;

  padding: 0 24px;

  border:
    1px solid var(--rc-secondary);

  border-radius: 10px;

  background:
    var(--rc-secondary) !important;

  color:
    #ffffff !important;

  -webkit-text-fill-color:
    #ffffff !important;

  font-family:
    "Montserrat", sans-serif !important;

  font-size: 14px;

  font-weight: 700;

  line-height: 1;

  text-decoration: none !important;

  box-shadow:
    0 9px 22px rgba(98, 182, 119, 0.22);

  transition:
    transform 0.2s ease,
    background-color 0.2s ease,
    border-color 0.2s ease,
    box-shadow 0.2s ease;
}

.elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-hero__button span {
  color: inherit !important;

  -webkit-text-fill-color:
    inherit !important;
}

.elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-hero__button svg {
  display: block;

  width: 18px;
  height: 18px;

  flex: 0 0 18px;

  stroke: currentColor;

  stroke-width: 1.8;

  stroke-linecap: round;
  stroke-linejoin: round;

  transition:
    transform 0.2s ease;
}

@media (hover: hover) {

  .elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-hero__button:hover {
    background:
      var(--rc-primary) !important;

    border-color:
      var(--rc-primary);

    transform:
      translateY(-2px);

    box-shadow:
      0 13px 28px rgba(0, 70, 50, 0.20);
  }

  .elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-hero__button:hover svg {
    transform:
      translateX(4px);
  }

}

.elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-hero__button:focus-visible {
  outline:
    3px solid rgba(98, 182, 119, 0.35);

  outline-offset:
    4px;
}


/* =========================================
   HERO IMAGE
   ========================================= */

.elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-hero__visual {
  position: relative;

  isolation: isolate;

  display: flex;

  align-items: center;
  justify-content: center;

  min-width: 0;

  width: 100%;

  min-height: 390px;
}


/* Alone leggerissimo dietro la grafica */

.elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-hero__visual::before {
  content: "";

  position: absolute;

  z-index: -1;

  width: 78%;

  aspect-ratio: 1 / 1;

  left: 50%;
  top: 50%;

  transform:
    translate(-50%, -50%);

  border-radius: 50%;

  background:
    radial-gradient(
      circle,
      rgba(98, 182, 119, 0.15) 0%,
      rgba(98, 182, 119, 0.05) 47%,
      rgba(98, 182, 119, 0) 72%
    );

  pointer-events: none;
}


/* IMMAGINE
   Max 120% come richiesto */

.elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-hero__image {
  position: relative;

  z-index: 1;

  display: block;

  width: 120%;
  max-width: 120%;

  height: auto;

  margin-left: -10%;
  margin-right: -10%;

  object-fit: contain;

  filter:
    drop-shadow(
      0 16px 28px rgba(0, 70, 50, 0.07)
    );
}


/* =========================================
   SEZIONE 2 — CARDS
   ========================================= */

.elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-features {
  display: grid;

  grid-template-columns:
    repeat(3, minmax(0, 1fr));

  gap: 20px;
}


/* =========================================
   CARD
   ========================================= */

.elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-feature {
  min-width: 0;

  min-height: 245px;

  padding:
    24px 24px 27px;

  background:
    #ffffff !important;

  border:
    1px solid rgba(98, 182, 119, 0.55);

  border-radius:
    16px;

  box-shadow:
    0 5px 18px rgba(0, 70, 50, 0.035);

  transition:
    transform 0.2s ease,
    border-color 0.2s ease,
    box-shadow 0.2s ease;
}

@media (hover: hover) {

  .elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-feature:hover {
    transform:
      translateY(-3px);

    border-color:
      var(--rc-secondary);

    box-shadow:
      0 11px 26px rgba(0, 70, 50, 0.07);
  }

}


/* =========================================
   CARD ICON
   ========================================= */

.elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-feature__icon {
  display: flex;

  align-items: center;
  justify-content: center;

  width: 42px;
  height: 42px;

  margin-bottom: 18px;

  border:
    1px solid rgba(98, 182, 119, 0.34);

  border-radius:
    10px;

  background:
    rgba(98, 182, 119, 0.12);

  color:
    var(--rc-primary);
}

.elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-feature__icon svg {
  width: 22px;
  height: 22px;

  stroke:
    currentColor;

  stroke-width:
    1.6;

  stroke-linecap:
    round;

  stroke-linejoin:
    round;
}


/* =========================================
   CARD TEXT
   ========================================= */

.elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-feature h3 {
  margin:
    0 0 11px;

  padding:
    0;

  color:
    var(--rc-primary) !important;

  -webkit-text-fill-color:
    var(--rc-primary) !important;

  font-family:
    "Montserrat", sans-serif !important;

  font-size:
    17px;

  font-weight:
    800;

  line-height:
    1.3;

  letter-spacing:
    -0.025em;
}

.elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-feature p {
  margin: 0;

  padding: 0;

  color:
    var(--rc-text) !important;

  -webkit-text-fill-color:
    var(--rc-text) !important;

  font-family:
    "Inter", sans-serif !important;

  font-size:
    14px;

  font-weight:
    400;

  line-height:
    1.65;
}


/* =========================================
   TABLET
   ========================================= */

@media (max-width: 1024px) {

  .elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-hero {
    padding:
      48px 24px 64px;
  }

  .elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-hero__grid {
    gap:
      36px;
  }

  .elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-hero__title {
    font-size:
      45px;
  }

  .elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-hero__visual {
    min-height:
      350px;
  }

  .elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-hero__image {
    width:
      112%;

    max-width:
      112%;

    margin-left:
      -6%;

    margin-right:
      -6%;
  }

}


/* =========================================
   MOBILE
   ========================================= */

@media (max-width: 767px) {

  .elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-hero {
    padding:
      36px 20px 52px;
  }

  .elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-hero__grid {
    grid-template-columns:
      minmax(0, 1fr);

    gap:
      30px;

    margin-bottom:
      42px;
  }

  .elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-hero__eyebrow {
    margin-bottom:
      14px;
  }

  .elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-hero__title {
    font-size:
      38px;

    line-height:
      1.04;
  }

  .elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-hero__text {
    font-size:
      15px;
  }

  .elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-hero__button {
    width:
      100%;

    padding:
      0 20px;
  }


  /* IMAGE */

  .elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-hero__visual {
    min-height:
      280px;
  }

  .elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-hero__image {
    width:
      108%;

    max-width:
      108%;

    margin-left:
      -4%;

    margin-right:
      -4%;
  }


  /* CARDS */

  .elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-features {
    grid-template-columns:
      minmax(0, 1fr);

    gap:
      14px;
  }

  .elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-feature {
    min-height:
      auto;

    padding:
      22px;
  }

}


/* =========================================
   SMALL MOBILE
   ========================================= */

@media (max-width: 420px) {

  .elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-hero__title {
    font-size:
      34px;
  }

  .elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-hero__image {
    width:
      104%;

    max-width:
      104%;

    margin-left:
      -2%;

    margin-right:
      -2%;
  }

}


/* =========================================
   REDUCED MOTION
   ========================================= */

@media (prefers-reduced-motion: reduce) {

  .elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-hero__button,
  .elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-hero__button svg,
  .elementor-2074 .elementor-element.elementor-element-02fe154 .rc-menu-feature {
    transition:
      none;
  }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-e771754 *//* =========================================
   FUNZIONI · MENÙ DIGITALE
   SEZIONE 3 + 4

   DARK  #004632
   LIGHT #62B677
   ========================================= */

.elementor-2074 .elementor-element.elementor-element-e771754 {
  width: 100%;
  min-width: 0;
  background: transparent !important;
}

.elementor-2074 .elementor-element.elementor-element-e771754 > .elementor-widget-container {
  margin: 0;
  padding: 0;
  background: transparent !important;
}

.elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-benefits,
.elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-benefits *,
.elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-benefits *::before,
.elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-benefits *::after,
.elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-process,
.elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-process *,
.elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-process *::before,
.elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-process *::after {
  box-sizing: border-box;
}


/* =========================================================
   SEZIONE 3
   ========================================================= */

.elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-benefits {
  --rc-primary: #004632;
  --rc-secondary: #62B677;
  --rc-text: #444444;

  width: 100%;
  margin: 0;

  padding: 30px 24px 72px;

  background: transparent !important;

  color: var(--rc-text);

  font-family: "Inter", sans-serif;

  -webkit-font-smoothing: antialiased;
}


.elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-benefits__inner {
  width: 100%;

  max-width: 1080px;

  margin: 0 auto;
}


.elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-benefits__grid {
  display: grid;

  grid-template-columns:
    minmax(0, 1fr)
    minmax(0, 1fr);

  align-items: center;

  gap: 56px;
}


/* =========================================
   IMAGE AREA
   ========================================= */

.elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-benefits__media {
  width: 100%;

  min-width: 0;
}


.elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-benefits__image-wrap {
  position: relative;

  isolation: isolate;

  display: flex;

  align-items: center;
  justify-content: center;

  width: 100%;

  min-height: 390px;
}


/* subtle glow */

.elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-benefits__image-wrap::before {
  content: "";

  position: absolute;

  z-index: 0;

  top: 50%;
  left: 50%;

  width: 78%;

  aspect-ratio: 1 / 1;

  transform:
    translate(-50%, -50%);

  border-radius: 50%;

  background:
    radial-gradient(
      circle,
      rgba(98, 182, 119, 0.16) 0%,
      rgba(98, 182, 119, 0.05) 46%,
      rgba(98, 182, 119, 0) 72%
    );

  pointer-events: none;
}


/* =========================================
   IMAGE — MAX 120%
   ========================================= */

.elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-benefits__image {
  position: relative;

  z-index: 1;

  display: block;

  width: 120%;
  max-width: 120%;

  height: auto;

  margin-left: -10%;
  margin-right: -10%;

  object-fit: contain;

  filter:
    drop-shadow(
      0 16px 28px rgba(0, 70, 50, 0.07)
    );
}


/* =========================================
   RIGHT CONTENT
   ========================================= */

.elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-benefits__content {
  min-width: 0;
}


.elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-benefits__eyebrow {
  margin: 0 0 11px;
  padding: 0;

  color:
    var(--rc-primary) !important;

  -webkit-text-fill-color:
    var(--rc-primary) !important;

  font-family:
    "Inter", sans-serif !important;

  font-size: 10px;

  font-weight: 600;

  line-height: 1.6;

  letter-spacing:
    0.18em;

  text-transform:
    uppercase;
}


/* =========================================
   TITLE
   ========================================= */

.elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-benefits__title {
  max-width: 560px;

  margin:
    0 0 28px;

  padding: 0;

  color:
    var(--rc-primary) !important;

  -webkit-text-fill-color:
    var(--rc-primary) !important;

  font-family:
    "Montserrat", sans-serif !important;

  font-size:
    clamp(30px, 3.1vw, 40px);

  font-weight:
    800;

  line-height:
    1.08;

  letter-spacing:
    -0.04em;

  text-transform:
    none;
}


.elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-benefits__title span {
  color:
    var(--rc-secondary) !important;

  -webkit-text-fill-color:
    var(--rc-secondary) !important;
}


/* =========================================
   BENEFIT LIST
   ========================================= */

.elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-benefits__list {
  display: flex;

  flex-direction: column;

  gap: 25px;
}


.elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-benefits__item {
  display: grid;

  grid-template-columns:
    30px minmax(0, 1fr);

  align-items: start;

  gap: 13px;
}


/* CHECK */

.elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-benefits__check {
  display: flex;

  align-items: center;
  justify-content: center;

  width: 28px;
  height: 28px;

  margin-top: 1px;

  border-radius: 50%;

  background:
    rgba(98, 182, 119, 0.16);

  color:
    var(--rc-primary);
}


.elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-benefits__check svg {
  width: 16px;
  height: 16px;

  stroke: currentColor;

  stroke-width: 1.9;

  stroke-linecap: round;
  stroke-linejoin: round;
}


/* =========================================
   BENEFIT COPY
   ========================================= */

.elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-benefits__item-copy h3 {
  margin:
    0 0 5px;

  padding: 0;

  color:
    var(--rc-primary) !important;

  -webkit-text-fill-color:
    var(--rc-primary) !important;

  font-family:
    "Montserrat", sans-serif !important;

  font-size: 15px;

  font-weight: 700;

  line-height: 1.4;

  letter-spacing:
    -0.02em;
}


.elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-benefits__item-copy p {
  margin: 0;
  padding: 0;

  color:
    var(--rc-text) !important;

  -webkit-text-fill-color:
    var(--rc-text) !important;

  font-family:
    "Inter", sans-serif !important;

  font-size: 14px;

  font-weight: 400;

  line-height: 1.65;
}


/* =========================================================
   SEZIONE 4 — PROCESS
   ========================================================= */

.elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-process {
  --rc-primary: #004632;
  --rc-secondary: #62B677;

  width: 100%;
  margin: 0;

  padding:
    10px 24px 72px;

  background:
    transparent !important;

  font-family:
    "Inter", sans-serif;

  -webkit-font-smoothing:
    antialiased;
}


.elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-process__inner {
  width: 100%;

  max-width: 1080px;

  margin: 0 auto;
}


/* =========================================
   GREEN CARD
   ========================================= */

.elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-process__card {
  position: relative;

  width: 100%;

  overflow: hidden;

  padding:
    43px 44px 48px;

  background:
    var(--rc-primary) !important;

  border:
    1px solid rgba(98, 182, 119, 0.15);

  border-radius:
    18px;

  box-shadow:
    0 13px 34px rgba(0, 70, 50, 0.12);
}


.elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-process__card::before {
  content: "";

  position: absolute;

  width: 420px;
  height: 420px;

  top: -300px;
  right: -110px;

  border-radius: 50%;

  background:
    radial-gradient(
      circle,
      rgba(98, 182, 119, 0.18) 0%,
      rgba(98, 182, 119, 0.04) 50%,
      transparent 70%
    );

  pointer-events: none;
}


/* =========================================
   PROCESS HEADER
   ========================================= */

.elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-process__header {
  position: relative;

  z-index: 2;

  margin-bottom:
    34px;

  text-align: center;
}


.elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-process__eyebrow {
  margin:
    0 0 10px;

  padding: 0;

  color:
    var(--rc-secondary) !important;

  -webkit-text-fill-color:
    var(--rc-secondary) !important;

  font-family:
    "Inter", sans-serif !important;

  font-size: 10px;

  font-weight: 600;

  line-height: 1.6;

  letter-spacing:
    0.18em;

  text-transform:
    uppercase;
}


.elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-process__title {
  max-width: 700px;

  margin: 0 auto;

  padding: 0;

  color:
    #ffffff !important;

  -webkit-text-fill-color:
    #ffffff !important;

  font-family:
    "Montserrat", sans-serif !important;

  font-size:
    clamp(29px, 3vw, 38px);

  font-weight:
    800;

  line-height:
    1.15;

  letter-spacing:
    -0.035em;
}


/* =========================================
   STEPS
   ========================================= */

.elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-process__steps {
  position: relative;

  z-index: 2;

  display: grid;

  grid-template-columns:
    repeat(3, minmax(0, 1fr));

  gap: 26px;
}


/* connecting line */

.elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-process__steps::before {
  content: "";

  position: absolute;

  top: 25px;

  left:
    calc(16.66% + 25px);

  right:
    calc(16.66% + 25px);

  height: 1px;

  background:
    rgba(98, 182, 119, 0.58);

  pointer-events: none;
}


/* =========================================
   SINGLE STEP
   ========================================= */

.elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-process__step {
  position: relative;

  z-index: 2;

  min-width: 0;

  text-align: center;
}


.elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-process__step-top {
  display: flex;

  align-items: center;
  justify-content: center;

  margin-bottom: 15px;
}


.elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-process__number {
  display: flex;

  align-items: center;
  justify-content: center;

  width: 52px;
  height: 52px;

  border:
    3px solid rgba(255,255,255,0.10);

  border-radius: 50%;

  background:
    var(--rc-secondary);

  color:
    var(--rc-primary) !important;

  -webkit-text-fill-color:
    var(--rc-primary) !important;

  font-family:
    "Montserrat", sans-serif !important;

  font-size: 15px;

  font-weight: 800;

  line-height: 1;

  box-shadow:
    0 0 0 3px rgba(98, 182, 119, 0.12);
}


.elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-process__step h3 {
  margin:
    0 0 8px;

  padding: 0;

  color:
    #ffffff !important;

  -webkit-text-fill-color:
    #ffffff !important;

  font-family:
    "Montserrat", sans-serif !important;

  font-size: 16px;

  font-weight: 700;

  line-height: 1.35;
}


.elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-process__step p {
  max-width: 245px;

  margin: 0 auto;
  padding: 0;

  color:
    rgba(255,255,255,0.88) !important;

  -webkit-text-fill-color:
    rgba(255,255,255,0.88) !important;

  font-family:
    "Inter", sans-serif !important;

  font-size: 13px;

  font-weight: 400;

  line-height: 1.6;
}


/* =========================================
   TABLET
   ========================================= */

@media (max-width: 1024px) {

  .elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-benefits__grid {
    gap: 40px;
  }

  .elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-benefits__title {
    font-size: 34px;
  }

  .elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-benefits__image-wrap {
    min-height: 350px;
  }

  .elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-benefits__image {
    width: 112%;
    max-width: 112%;

    margin-left: -6%;
    margin-right: -6%;
  }

  .elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-process__card {
    padding:
      40px 30px 44px;
  }

}


/* =========================================
   MOBILE
   ========================================= */

@media (max-width: 767px) {

  .elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-benefits {
    padding:
      20px 20px 52px;
  }


  .elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-benefits__grid {
    grid-template-columns:
      minmax(0, 1fr);

    gap: 38px;
  }


  .elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-benefits__image-wrap {
    min-height: 290px;
  }


  .elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-benefits__image {
    width: 106%;
    max-width: 106%;

    margin-left: -3%;
    margin-right: -3%;
  }


  .elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-benefits__title {
    font-size: 30px;

    line-height: 1.1;
  }


  .elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-benefits__list {
    gap: 21px;
  }


  .elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-benefits__item-copy p {
    font-size: 13.5px;
  }


  /* PROCESS */

  .elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-process {
    padding:
      6px 20px 52px;
  }


  .elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-process__card {
    padding:
      36px 22px 38px;

    border-radius:
      16px;
  }


  .elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-process__title {
    font-size:
      28px;
  }


  .elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-process__steps {
    grid-template-columns:
      minmax(0, 1fr);

    gap:
      29px;
  }


  .elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-process__steps::before {
    display: none;
  }


  .elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-process__number {
    width: 50px;

    height: 50px;
  }


  .elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-process__step p {
    max-width: 300px;

    font-size: 13px;
  }

}


/* =========================================
   SMALL MOBILE
   ========================================= */

@media (max-width: 420px) {

  .elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-benefits__image {
    width: 102%;
    max-width: 102%;

    margin-left: -1%;
    margin-right: -1%;
  }


  .elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-benefits__title {
    font-size: 28px;
  }


  .elementor-2074 .elementor-element.elementor-element-e771754 .rc-menu-process__title {
    font-size: 27px;
  }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-7c26530 *//* =========================================
   FUNZIONI · MENÙ DIGITALE
   SEZIONE 5 + 6

   DARK  #004632
   LIGHT #62B677
   ========================================= */

.elementor-2074 .elementor-element.elementor-element-7c26530 {
  width: 100%;
  min-width: 0;
  background: transparent !important;
}

.elementor-2074 .elementor-element.elementor-element-7c26530 > .elementor-widget-container {
  margin: 0;
  padding: 0;
  background: transparent !important;
}

.elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-faq,
.elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-faq *,
.elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-faq *::before,
.elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-faq *::after,
.elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-final,
.elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-final *,
.elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-final *::before,
.elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-final *::after {
  box-sizing: border-box;
}


/* =========================================================
   SEZIONE 5 — FAQ
   ========================================================= */

.elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-faq {
  --rc-primary: #004632;
  --rc-secondary: #62B677;
  --rc-text: #444444;
  --rc-soft: rgba(98, 182, 119, 0.12);

  width: 100%;

  margin: 0;

  padding:
    20px 24px 48px;

  background:
    transparent !important;

  color:
    var(--rc-text);

  font-family:
    "Inter", sans-serif;

  -webkit-font-smoothing:
    antialiased;
}


.elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-faq__inner {
  width: 100%;

  max-width: 960px;

  margin:
    0 auto;
}


/* =========================================
   FAQ HEADER
   ========================================= */

.elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-faq__header {
  margin:
    0 0 28px;

  text-align:
    center;
}


.elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-faq__eyebrow {
  margin:
    0 0 11px;

  padding:
    0;

  color:
    var(--rc-primary) !important;

  -webkit-text-fill-color:
    var(--rc-primary) !important;

  font-family:
    "Inter", sans-serif !important;

  font-size:
    10px;

  font-weight:
    600;

  line-height:
    1.6;

  letter-spacing:
    0.18em;

  text-transform:
    uppercase;
}


.elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-faq__title {
  margin:
    0;

  padding:
    0;

  color:
    var(--rc-primary) !important;

  -webkit-text-fill-color:
    var(--rc-primary) !important;

  font-family:
    "Montserrat", sans-serif !important;

  font-size:
    clamp(28px, 3vw, 36px);

  font-weight:
    800;

  line-height:
    1.2;

  letter-spacing:
    -0.035em;

  text-transform:
    none;

  text-shadow:
    none;
}


/* =========================================
   FAQ LIST
   ========================================= */

.elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-faq__list {
  display:
    grid;

  grid-template-columns:
    minmax(0, 1fr);

  gap:
    12px;
}


/* =========================================
   FAQ CARD
   ========================================= */

.elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-faq__item {
  min-width:
    0;

  margin:
    0;

  padding:
    0;

  overflow:
    hidden;

  background:
    #ffffff !important;

  border:
    1px solid rgba(0, 70, 50, 0.14);

  border-radius:
    15px;

  box-shadow:
    0 5px 18px rgba(0, 70, 50, 0.035);

  transition:
    border-color 0.2s ease,
    box-shadow 0.2s ease;
}


.elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-faq__item[open] {
  border-color:
    rgba(98, 182, 119, 0.80);

  box-shadow:
    0 8px 24px rgba(0, 70, 50, 0.06);
}


/* =========================================
   FAQ QUESTION
   ========================================= */

.elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-faq__question {
  display:
    flex;

  align-items:
    center;

  justify-content:
    space-between;

  gap:
    20px;

  min-height:
    68px;

  margin:
    0;

  padding:
    18px 22px;

  border-radius:
    14px;

  list-style:
    none;

  color:
    var(--rc-primary) !important;

  -webkit-text-fill-color:
    var(--rc-primary) !important;

  font-family:
    "Montserrat", sans-serif !important;

  font-size:
    16px;

  font-weight:
    700;

  line-height:
    1.45;

  letter-spacing:
    -0.02em;

  cursor:
    pointer;
}


.elementor-2074 .elementor-element.elementor-element-7c26530
.rc-menu-faq__question::-webkit-details-marker {
  display:
    none;
}


.elementor-2074 .elementor-element.elementor-element-7c26530
.rc-menu-faq__question::marker {
  content:
    "";
}


.elementor-2074 .elementor-element.elementor-element-7c26530
.rc-menu-faq__question > span:first-child {
  min-width:
    0;

  color:
    inherit !important;

  -webkit-text-fill-color:
    inherit !important;
}


.elementor-2074 .elementor-element.elementor-element-7c26530
.rc-menu-faq__question:focus-visible {
  outline:
    2px solid var(--rc-secondary);

  outline-offset:
    4px;
}


/* =========================================
   FAQ TOGGLE
   ========================================= */

.elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-faq__toggle {
  display:
    flex;

  align-items:
    center;

  justify-content:
    center;

  flex:
    0 0 30px;

  width:
    30px;

  height:
    30px;

  border-radius:
    50%;

  background:
    var(--rc-soft);

  color:
    var(--rc-primary);

  transition:
    background-color 0.2s ease;
}


.elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-faq__toggle svg {
  display:
    block;

  width:
    17px;

  height:
    17px;

  stroke:
    currentColor;

  stroke-width:
    1.7;

  stroke-linecap:
    round;
}


.elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-faq__plus {
  transform-box:
    fill-box;

  transform-origin:
    center;

  transition:
    transform 0.2s ease,
    opacity 0.2s ease;
}


.elementor-2074 .elementor-element.elementor-element-7c26530
.rc-menu-faq__item[open]
.rc-menu-faq__plus {
  transform:
    rotate(90deg);

  opacity:
    0;
}


.elementor-2074 .elementor-element.elementor-element-7c26530
.rc-menu-faq__item[open]
.rc-menu-faq__toggle {
  background:
    rgba(98, 182, 119, 0.22);
}


/* =========================================
   FAQ ANSWER
   ========================================= */

.elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-faq__answer {
  padding:
    0 72px 22px 22px;
}


.elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-faq__answer p {
  margin:
    0;

  padding:
    0;

  color:
    var(--rc-text) !important;

  -webkit-text-fill-color:
    var(--rc-text) !important;

  font-family:
    "Inter", sans-serif !important;

  font-size:
    15px;

  font-weight:
    400;

  line-height:
    1.7;
}


/* =========================================
   FAQ HOVER
   ========================================= */

@media (hover: hover) {

  .elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-faq__item:hover {
    border-color:
      rgba(98, 182, 119, 0.80);
  }


  .elementor-2074 .elementor-element.elementor-element-7c26530
  .rc-menu-faq__question:hover
  .rc-menu-faq__toggle {
    background:
      rgba(98, 182, 119, 0.22);
  }

}


/* =========================================================
   SEZIONE 6 — CTA FINALE
   ========================================================= */

.elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-final {
  --rc-primary: #004632;
  --rc-secondary: #62B677;
  --rc-text: #444444;

  width:
    100%;

  margin:
    0;

  padding:
    18px 24px 72px;

  background:
    transparent !important;

  font-family:
    "Inter", sans-serif;

  -webkit-font-smoothing:
    antialiased;
}


.elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-final__inner {
  width:
    100%;

  max-width:
    960px;

  margin:
    0 auto;
}


/* =========================================
   CTA CARD
   ========================================= */

.elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-final__card {
  position:
    relative;

  width:
    100%;

  overflow:
    hidden;

  padding:
    48px 36px 50px;

  text-align:
    center;

  background:
    linear-gradient(
      135deg,
      #ffffff 0%,
      rgba(98, 182, 119, 0.09) 100%
    ) !important;

  border:
    1px solid rgba(0, 70, 50, 0.14);

  border-radius:
    18px;

  box-shadow:
    0 8px 24px rgba(0, 70, 50, 0.045);
}


/* glow top-right */

.elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-final__card::before {
  content:
    "";

  position:
    absolute;

  width:
    430px;

  height:
    430px;

  top:
    -280px;

  right:
    -120px;

  border-radius:
    50%;

  background:
    radial-gradient(
      circle,
      rgba(98, 182, 119, 0.22) 0%,
      rgba(98, 182, 119, 0.06) 48%,
      transparent 72%
    );

  pointer-events:
    none;
}


/* glow bottom-left */

.elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-final__card::after {
  content:
    "";

  position:
    absolute;

  width:
    320px;

  height:
    320px;

  bottom:
    -240px;

  left:
    -100px;

  border-radius:
    50%;

  background:
    radial-gradient(
      circle,
      rgba(98, 182, 119, 0.12) 0%,
      transparent 70%
    );

  pointer-events:
    none;
}


/* =========================================
   CTA EYEBROW
   ========================================= */

.elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-final__eyebrow {
  position:
    relative;

  z-index:
    2;

  margin:
    0 0 12px;

  padding:
    0;

  color:
    var(--rc-primary) !important;

  -webkit-text-fill-color:
    var(--rc-primary) !important;

  font-family:
    "Inter", sans-serif !important;

  font-size:
    10px;

  font-weight:
    600;

  line-height:
    1.6;

  letter-spacing:
    0.18em;

  text-transform:
    uppercase;
}


/* =========================================
   CTA TITLE
   ========================================= */

.elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-final__title {
  position:
    relative;

  z-index:
    2;

  max-width:
    700px;

  margin:
    0 auto 15px;

  padding:
    0;

  color:
    var(--rc-primary) !important;

  -webkit-text-fill-color:
    var(--rc-primary) !important;

  font-family:
    "Montserrat", sans-serif !important;

  font-size:
    clamp(30px, 3.3vw, 40px);

  font-weight:
    800;

  line-height:
    1.08;

  letter-spacing:
    -0.035em;

  text-transform:
    none;
}


/* =========================================
   CTA TEXT
   ========================================= */

.elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-final__text {
  position:
    relative;

  z-index:
    2;

  max-width:
    590px;

  margin:
    0 auto 26px;

  padding:
    0;

  color:
    var(--rc-text) !important;

  -webkit-text-fill-color:
    var(--rc-text) !important;

  font-family:
    "Inter", sans-serif !important;

  font-size:
    15px;

  font-weight:
    400;

  line-height:
    1.7;
}


/* =========================================
   CTA BUTTON
   LIGHT → DARK
   ========================================= */

.elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-final__button {
  position:
    relative;

  z-index:
    2;

  display:
    inline-flex;

  align-items:
    center;

  justify-content:
    center;

  gap:
    18px;

  min-height:
    50px;

  padding:
    0 24px;

  background:
    var(--rc-secondary) !important;

  border:
    1px solid var(--rc-secondary);

  border-radius:
    9px;

  color:
    #ffffff !important;

  -webkit-text-fill-color:
    #ffffff !important;

  font-family:
    "Montserrat", sans-serif !important;

  font-size:
    14px;

  font-weight:
    700;

  line-height:
    1;

  text-decoration:
    none !important;

  box-shadow:
    0 9px 22px rgba(98, 182, 119, 0.22);

  transition:
    transform 0.2s ease,
    background-color 0.2s ease,
    border-color 0.2s ease,
    box-shadow 0.2s ease;
}


.elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-final__button svg {
  width:
    18px;

  height:
    18px;

  flex:
    0 0 18px;

  stroke:
    currentColor;

  stroke-width:
    1.8;

  stroke-linecap:
    round;

  stroke-linejoin:
    round;

  transition:
    transform 0.2s ease;
}


@media (hover: hover) {

  .elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-final__button:hover {
    background:
      var(--rc-primary) !important;

    border-color:
      var(--rc-primary);

    transform:
      translateY(-2px);

    box-shadow:
      0 13px 28px rgba(0, 70, 50, 0.20);
  }


  .elementor-2074 .elementor-element.elementor-element-7c26530
  .rc-menu-final__button:hover svg {
    transform:
      translateX(4px);
  }

}


/* =========================================
   MOBILE
   ========================================= */

@media (max-width: 767px) {

  .elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-faq {
    padding:
      16px 20px 32px;
  }


  .elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-faq__header {
    margin-bottom:
      23px;
  }


  .elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-faq__title {
    font-size:
      28px;
  }


  .elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-faq__question {
    gap:
      12px;

    min-height:
      66px;

    padding:
      17px 18px;

    font-size:
      15px;

    line-height:
      1.45;
  }


  .elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-faq__toggle {
    flex-basis:
      28px;

    width:
      28px;

    height:
      28px;
  }


  .elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-faq__answer {
    padding:
      0 18px 20px;
  }


  .elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-faq__answer p {
    font-size:
      14px;

    line-height:
      1.65;
  }


  /* CTA */

  .elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-final {
    padding:
      12px 20px 52px;
  }


  .elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-final__card {
    padding:
      38px 22px 40px;

    border-radius:
      16px;
  }


  .elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-final__title {
    font-size:
      30px;

    line-height:
      1.1;
  }


  .elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-final__text {
    max-width:
      100%;

    margin-bottom:
      23px;

    font-size:
      14px;

    line-height:
      1.65;
  }


  .elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-final__button {
    width:
      100%;

    min-height:
      50px;

    padding:
      0 20px;

    font-size:
      13px;
  }

}


/* =========================================
   SMALL MOBILE
   ========================================= */

@media (max-width: 420px) {

  .elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-final__title {
    font-size:
      28px;
  }

}


/* =========================================
   REDUCED MOTION
   ========================================= */

@media (prefers-reduced-motion: reduce) {

  .elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-faq__item,
  .elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-faq__toggle,
  .elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-faq__plus,
  .elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-final__button,
  .elementor-2074 .elementor-element.elementor-element-7c26530 .rc-menu-final__button svg {
    transition:
      none;
  }

}/* End custom CSS */