:root {
  --color-text-green: #042F20; }

.loyalty-landing {
  display: flex;
  flex-direction: column;
  gap: 4rem;
  background: linear-gradient(0deg, #F9F9F9 0%, #F9F9F9 100%), #FFF; }
  @media (max-width: 767px) {
    .loyalty-landing {
      gap: 32px; } }
  .loyalty-landing .loyalty-title {
    color: var(--green);
    font-size: 2.5rem;
    font-weight: 600;
    text-transform: uppercase;
    font-style: italic;
    line-height: 1.2; }
    @media (max-width: 767px) {
      .loyalty-landing .loyalty-title {
        font-size: 30px;
        text-align: center; } }
  .loyalty-landing__visual {
    background-color: #F8FCF8;
    background-image: url("../images/lp/bkg-top.jpg");
    background-size: 100%;
    background-repeat: no-repeat; }
    @media (max-width: 767px) {
      .loyalty-landing__visual {
        padding-top: 1.5rem;
        background-image: url("../images/lp/bkg-top-mob.jpg"); } }
    @media (max-width: 767px) {
      .loyalty-landing__visual-title.loyalty-title {
        font-size: 2.25rem; } }
    .loyalty-landing__visual .loyalty-text {
      color: var(--color-text-green); }
      @media (max-width: 767px) {
        .loyalty-landing__visual .loyalty-text {
          text-align: center; } }
    .loyalty-landing__visual-content {
      width: 41%;
      margin-top: 9.38rem; }
      @media (max-width: 767px) {
        .loyalty-landing__visual-content {
          width: 100%;
          margin-top: 6.88rem; } }
    .loyalty-landing__visual-wrapper {
      display: flex;
      align-items: flex-start;
      gap: 1.88rem; }
      @media (max-width: 767px) {
        .loyalty-landing__visual-wrapper {
          flex-direction: column;
          gap: 0; } }
    .loyalty-landing__visual picture {
      width: 59%;
      flex-shrink: 0; }
      @media (max-width: 767px) {
        .loyalty-landing__visual picture {
          width: 100%; } }
    .loyalty-landing__visual-cta {
      margin-top: 1.5rem; }
      @media (max-width: 767px) {
        .loyalty-landing__visual-cta {
          position: relative;
          left: 50%;
          transform: translateX(-50%); } }
    .loyalty-landing__visual .btn-mob {
      display: none; }
      @media (max-width: 767px) {
        .loyalty-landing__visual .btn-mob {
          display: block; } }
    .loyalty-landing__visual .btn-desk {
      display: block; }
      @media (max-width: 767px) {
        .loyalty-landing__visual .btn-desk {
          display: none; } }
  .loyalty-landing__punti {
    text-align: center; }
    @media (max-width: 767px) {
      .loyalty-landing__punti {
        padding-top: 40px; } }
    .loyalty-landing__punti-title {
      font-size: 1.88rem;
      font-style: italic;
      font-weight: 712;
      line-height: 2.31rem;
      text-transform: uppercase;
      color: var(--green);
      text-align: center;
      margin-bottom: 2rem; }
    .loyalty-landing__punti-wrapper {
      display: flex;
      justify-content: center;
      gap: 4rem;
      margin-bottom: 2rem; }
      @media (max-width: 767px) {
        .loyalty-landing__punti-wrapper {
          flex-direction: column;
          gap: 2.88rem;
          margin-bottom: 0; } }
    .loyalty-landing__punti-item {
      position: relative;
      text-align: left;
      display: flex;
      flex-direction: column;
      align-items: normal;
      border: 1px solid #F1F1F1;
      border-radius: 1.5rem;
      background: #FFF;
      padding: 1.44rem 1.44rem 0 1.44rem;
      box-shadow: 0 35px 15px 50px rgba(0, 0, 0, 0), 0 22px 9px 0 rgba(0, 0, 0, 0), 0 12px 7px 0 rgba(0, 0, 0, 0.01), 0 6px 6px 0 rgba(0, 0, 0, 0.02), 0 1px 3px 0 rgba(0, 0, 0, 0.03);
      width: 33.33333333333333%; }
      @media (max-width: 767px) {
        .loyalty-landing__punti-item {
          width: 100%;
          min-height: 212px; } }
      .loyalty-landing__punti-item .info .title {
        font-size: 1.25rem;
        font-style: normal;
        font-weight: 600;
        line-height: 130%;
        color: var(--green);
        margin-bottom: 1rem; }
      .loyalty-landing__punti-item .info .text {
        color: var(--color-text-green); }
      .loyalty-landing__punti-item:first-child {
        flex-direction: row; }
        @media (max-width: 767px) {
          .loyalty-landing__punti-item:first-child {
            justify-content: space-between; } }
        .loyalty-landing__punti-item:first-child .info {
          width: calc(100% - 6.81rem); }
        .loyalty-landing__punti-item:first-child .image {
          width: 6.81rem;
          display: flex;
          align-items: flex-end; }
          @media (max-width: 767px) {
            .loyalty-landing__punti-item:first-child .image {
              width: 100px; } }
        .loyalty-landing__punti-item:first-child:after {
          content: '+';
          position: absolute;
          top: 43%;
          right: -40px;
          font-size: 25px;
          color: var(--green); }
          @media (max-width: 767px) {
            .loyalty-landing__punti-item:first-child:after {
              bottom: -46px;
              left: 48%;
              right: auto;
              top: auto; } }
      .loyalty-landing__punti-item:nth-child(2) {
        justify-content: space-between;
        align-items: flex-end;
        padding: 1.44rem; }
        .loyalty-landing__punti-item:nth-child(2):after {
          content: '=';
          position: absolute;
          top: 43%;
          right: -40px;
          font-size: 25px;
          color: var(--green); }
          @media (max-width: 767px) {
            .loyalty-landing__punti-item:nth-child(2):after {
              bottom: -46px;
              left: 48%;
              right: auto;
              top: auto; } }
        .loyalty-landing__punti-item:nth-child(2) .image {
          width: 11.88rem; }
          @media (max-width: 767px) {
            .loyalty-landing__punti-item:nth-child(2) .image {
              margin-top: 2rem; } }
      .loyalty-landing__punti-item:last-child {
        justify-content: space-between;
        align-items: flex-end;
        padding: 1.44rem; }
        @media (max-width: 767px) {
          .loyalty-landing__punti-item:last-child {
            flex-direction: row;
            padding: 23px 16px 23px 23px; } }
        @media (max-width: 767px) {
          .loyalty-landing__punti-item:last-child .info {
            width: calc(100% - 94px); } }
        .loyalty-landing__punti-item:last-child .image {
          width: 5.88rem; }
          @media (max-width: 767px) {
            .loyalty-landing__punti-item:last-child .image {
              width: 94px; } }
    @media (max-width: 767px) {
      .loyalty-landing__punti .loyalty-landing__visual-cta {
        transform: none;
        left: auto; } }
  .loyalty-landing__premi {
    text-align: center; }
    .loyalty-landing__premi-title {
      font-size: 1.88rem;
      font-style: italic;
      font-weight: 712;
      line-height: 2.31rem;
      text-transform: uppercase;
      color: var(--green);
      text-align: center;
      max-width: 48rem;
      margin: auto;
      margin-bottom: 2rem; }
    .loyalty-landing__premi-text {
      margin: auto;
      max-width: 33.5rem;
      font-size: 1rem;
      color: var(--color-text-green); }
    .loyalty-landing__premi-wrapper {
      display: flex;
      justify-content: center;
      gap: 1.5rem;
      margin-bottom: 2rem;
      margin-top: 2rem; }
      @media (max-width: 767px) {
        .loyalty-landing__premi-wrapper {
          flex-direction: column;
          gap: 2rem; } }
    .loyalty-landing__premi-item {
      position: relative;
      text-align: left;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      border: 1px solid #F1F1F1;
      border-radius: 1.5rem;
      background: #FFF;
      padding: 1.5rem;
      box-shadow: 0 35px 15px 50px rgba(0, 0, 0, 0), 0 22px 9px 0 rgba(0, 0, 0, 0), 0 12px 7px 0 rgba(0, 0, 0, 0.01), 0 6px 6px 0 rgba(0, 0, 0, 0.02), 0 1px 3px 0 rgba(0, 0, 0, 0.03);
      width: 29.25rem; }
      @media (max-width: 767px) {
        .loyalty-landing__premi-item {
          width: 100%; } }
      .loyalty-landing__premi-item .info {
        text-align: center; }
      .loyalty-landing__premi-item .title {
        font-size: 1.5rem;
        font-style: italic;
        font-weight: 712;
        line-height: 2.31rem;
        text-transform: uppercase;
        color: var(--green);
        margin-bottom: 0.5rem;
        margin-top: 1rem; }
      .loyalty-landing__premi-item .text {
        font-size: 1rem;
        font-style: normal;
        line-height: normal;
        color: var(--color-text-green); }
      .loyalty-landing__premi-item .image {
        width: 20.44rem; }
        @media (max-width: 767px) {
          .loyalty-landing__premi-item .image {
            width: 327px; } }
      .loyalty-landing__premi-item:first-child .image {
        width: 16rem; }
        @media (max-width: 767px) {
          .loyalty-landing__premi-item:first-child .image {
            width: 260px; } }
  .loyalty-landing__tappe {
    text-align: center; }
    @media (max-width: 767px) {
      .loyalty-landing__tappe .container {
        padding: 0; } }
    .loyalty-landing__tappe-title {
      font-size: 1.88rem;
      font-style: italic;
      font-weight: 712;
      line-height: 2.31rem;
      text-transform: uppercase;
      color: var(--green);
      text-align: center;
      margin-bottom: 2rem; }
      @media (max-width: 767px) {
        .loyalty-landing__tappe-title {
          padding: 0 1.25rem; } }
    .loyalty-landing__tappe-text {
      font-size: 1rem;
      color: var(--color-text-green); }
      @media (max-width: 767px) {
        .loyalty-landing__tappe-text {
          padding: 0 1.25rem; } }
    .loyalty-landing__tappe-wrapper {
      display: flex;
      justify-content: center;
      gap: 4rem;
      max-width: 60.25rem;
      margin: 1.5rem auto 2rem; }
      @media (max-width: 767px) {
        .loyalty-landing__tappe-wrapper {
          flex-direction: column;
          gap: 2.88rem;
          padding: 0 1.25rem; } }
      .loyalty-landing__tappe-wrapper .swiper {
        overflow: auto; }
        @media (max-width: 767px) {
          .loyalty-landing__tappe-wrapper .swiper {
            overflow: hidden; } }
        .loyalty-landing__tappe-wrapper .swiper-wrapper {
          gap: 2rem; }
          @media (max-width: 767px) {
            .loyalty-landing__tappe-wrapper .swiper-wrapper {
              gap: unset; } }
    .loyalty-landing__tappe-item {
      position: relative;
      min-height: 11.25rem;
      text-align: left;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      border: 1px solid #F1F1F1;
      border-radius: 0.75rem;
      background: #FFF;
      padding: 1rem;
      box-shadow: 0 35px 15px 50px rgba(0, 0, 0, 0), 0 22px 9px 0 rgba(0, 0, 0, 0), 0 12px 7px 0 rgba(0, 0, 0, 0.01), 0 6px 6px 0 rgba(0, 0, 0, 0.02), 0 1px 3px 0 rgba(0, 0, 0, 0.03);
      width: 33.33333333333333%;
      background-image: url("../images/lp/bkg-tappe.png");
      background-repeat: no-repeat;
      background-position: right bottom;
      background-size: 14.69rem;
      flex: auto; }
      @media (max-width: 767px) {
        .loyalty-landing__tappe-item {
          width: 70%;
          min-height: 9.38rem;
          flex: none; } }
      .loyalty-landing__tappe-item .info {
        text-align: center; }
      .loyalty-landing__tappe-item .title {
        font-size: 1.25rem;
        font-weight: 600;
        line-height: 2.31rem;
        color: var(--green);
        margin-bottom: 0.5rem; }
      .loyalty-landing__tappe-item .text {
        font-size: 1rem;
        font-style: normal;
        line-height: normal;
        color: var(--color-text-green); }
  .loyalty-landing__text-image {
    background-image: url("../images/lp/bkg-img-text.jpg");
    background-size: 100%;
    background-repeat: no-repeat; }
    @media (max-width: 767px) {
      .loyalty-landing__text-image {
        background-image: url("../images/lp/bkg-img-text-mob.jpg"); } }
    .loyalty-landing__text-image span {
      display: block; }
    .loyalty-landing__text-image-wrapper {
      display: flex;
      align-items: center; }
      @media (max-width: 767px) {
        .loyalty-landing__text-image-wrapper {
          flex-direction: column; } }
    .loyalty-landing__text-image-punti {
      display: flex;
      flex-direction: row;
      gap: 0.5rem;
      justify-content: flex-start;
      align-items: center;
      color: #042F20; }
      @media (max-width: 767px) {
        .loyalty-landing__text-image-punti {
          justify-content: center; } }
    .loyalty-landing__text-image .button {
      font-size: 1rem;
      font-weight: normal; }
    .loyalty-landing__text-image-punto {
      font-size: 1.25rem;
      font-weight: 500;
      font-style: normal;
      border-radius: 1.5rem;
      background-color: #FFF;
      padding: 1rem;
      line-height: 1; }
      .loyalty-landing__text-image-punto:last-child {
        background-color: #88CC7A; }
    .loyalty-landing__text-image-info {
      width: calc(100% - 47.75rem);
      padding-right: 4.06rem;
      display: flex;
      flex-direction: column;
      gap: 1.5rem; }
      @media (max-width: 767px) {
        .loyalty-landing__text-image-info {
          width: 100%;
          padding-right: 0; } }
      .loyalty-landing__text-image-info .title {
        font-size: 1.88rem;
        font-style: italic;
        font-weight: 700;
        line-height: 2.31rem;
        text-transform: uppercase;
        color: var(--green); }
        @media (max-width: 767px) {
          .loyalty-landing__text-image-info .title {
            text-align: center; } }
      .loyalty-landing__text-image-info .text {
        font-size: 1rem;
        font-style: normal;
        color: #042F20; }
        @media (max-width: 767px) {
          .loyalty-landing__text-image-info .text {
            text-align: center; } }
    .loyalty-landing__text-image-image {
      width: 47.75rem; }
      @media (max-width: 767px) {
        .loyalty-landing__text-image-image {
          width: 100%;
          margin-top: 3.25rem; } }
  .loyalty-landing__scala {
    position: relative;
    margin-top: -3.94rem; }
    @media (max-width: 767px) {
      .loyalty-landing__scala {
        margin-top: 0; } }
    .loyalty-landing__scala-info {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      z-index: 1;
      padding-top: 4.38rem; }
      @media (max-width: 767px) {
        .loyalty-landing__scala-info {
          position: relative; } }
      .loyalty-landing__scala-info .title, .loyalty-landing__scala-info .text {
        width: 23.5rem; }
        @media (max-width: 767px) {
          .loyalty-landing__scala-info .title, .loyalty-landing__scala-info .text {
            text-align: center;
            width: 100%; } }
      .loyalty-landing__scala-info .title {
        font-size: 1.88rem;
        font-style: italic;
        line-height: 2.31rem;
        text-transform: uppercase;
        color: var(--green);
        font-weight: 700; }
        @media (max-width: 767px) {
          .loyalty-landing__scala-info .title {
            margin-bottom: 1rem; } }
      .loyalty-landing__scala-info .text {
        font-size: 1rem;
        font-style: normal;
        color: var(--color-text-green); }
    @media (max-width: 767px) {
      .loyalty-landing__scala-image {
        overflow-x: scroll;
        cursor: grab;
        -ms-overflow-style: none;
        /* IE/Edge */
        scrollbar-width: none;
        height: 435px; } }
    .loyalty-landing__scala-image::-webkit-scrollbar {
      display: none;
      /* Chrome/Safari */ }
    @media (max-width: 767px) {
      .loyalty-landing__scala-image:active {
        cursor: grabbing; } }
    @media (max-width: 767px) {
      .loyalty-landing__scala-image img {
        height: 100%;
        width: auto;
        display: block;
        max-width: none;
        /* impedisce all'immagine di ridursi */
        user-select: none;
        -webkit-user-drag: none; } }
  @media (max-width: 767px) {
    .loyalty-landing__aworld {
      padding-top: 2rem;
      padding-bottom: 2rem; } }
  .loyalty-landing__aworld .container {
    position: relative; }
  .loyalty-landing__aworld .image {
    position: absolute;
    width: 22.5rem;
    bottom: -11.25rem;
    right: 1.25rem; }
    @media (max-width: 767px) {
      .loyalty-landing__aworld .image {
        display: none; } }
  .loyalty-landing__aworld-wrapper {
    display: flex;
    flex-direction: column;
    gap: 2rem;
    align-items: center;
    text-align: center;
    justify-content: center;
    max-width: 72.5rem;
    background-image: url("../images/lp/bkg-aworld.jpg");
    background-size: 100%;
    background-repeat: no-repeat;
    padding: 4rem;
    border-radius: 1.5rem; }
    @media (max-width: 767px) {
      .loyalty-landing__aworld-wrapper {
        background-image: url("../images/lp/bkg-aworld-mob.jpg");
        padding: 2rem 1rem;
        background-size: cover; } }
  .loyalty-landing__aworld .logo {
    max-width: 14.31rem;
    margin: auto; }
    @media (max-width: 767px) {
      .loyalty-landing__aworld .logo {
        max-width: 9.38rem; } }
  .loyalty-landing__aworld .title {
    font-size: 1.88rem;
    font-style: italic;
    font-weight: 712;
    line-height: 2.31rem;
    /* 123.333% */
    text-transform: uppercase;
    color: var(--green); }
  .loyalty-landing__aworld .text {
    font-size: 1rem;
    color: var(--color-text-green);
    max-width: 33.06rem; }
  .loyalty-landing__aworld .punti {
    display: flex;
    flex-direction: row;
    gap: 0.5rem;
    justify-content: flex-start;
    align-items: center;
    color: #042F20; }
  .loyalty-landing__aworld .punto {
    font-size: 1.25rem;
    font-weight: 500;
    font-style: normal;
    border-radius: 1.5rem;
    background-color: #FFF;
    padding: 1rem;
    line-height: 1; }
    @media (max-width: 767px) {
      .loyalty-landing__aworld .punto {
        padding: 14px; } }
    .loyalty-landing__aworld .punto:last-child {
      background-color: #88CC7A; }
  .loyalty-landing__qr {
    padding: 4.69rem 0 0;
    background-color: var(--green); }
    @media (max-width: 767px) {
      .loyalty-landing__qr {
        padding-top: 2rem; } }
    .loyalty-landing__qr-image {
      width: 31.25rem; }
      @media (max-width: 767px) {
        .loyalty-landing__qr-image {
          width: 100%;
          margin-top: 2.31rem; } }
    .loyalty-landing__qr-info {
      width: calc(100% - 31.25rem);
      padding-top: 5rem;
      padding-left: 3.75rem; }
      @media (max-width: 767px) {
        .loyalty-landing__qr-info {
          width: 100%;
          padding: 0; } }
    .loyalty-landing__qr .title {
      color: #FFF;
      font-size: 2.5rem;
      font-style: italic;
      font-weight: 712;
      line-height: 3rem;
      text-transform: uppercase;
      margin-bottom: 0.81rem; }
      @media (max-width: 767px) {
        .loyalty-landing__qr .title {
          font-size: 1.88rem;
          text-align: center; } }
    .loyalty-landing__qr .text {
      color: #FFF;
      font-size: 1rem; }
      @media (max-width: 767px) {
        .loyalty-landing__qr .text {
          text-align: center; } }
    .loyalty-landing__qr-wrapper {
      display: flex; }
      @media (max-width: 767px) {
        .loyalty-landing__qr-wrapper {
          flex-direction: column-reverse; } }
    .loyalty-landing__qr .qr-content {
      display: flex;
      color: #FFF;
      margin-top: 2rem;
      gap: 1.44rem;
      max-width: 25.75rem;
      width: 100%; }
      @media (max-width: 767px) {
        .loyalty-landing__qr .qr-content {
          display: none; } }
      .loyalty-landing__qr .qr-content .qr {
        width: 7.69rem; }
      .loyalty-landing__qr .qr-content .qr-title {
        font-size: 1rem;
        font-style: normal;
        font-weight: 700;
        line-height: normal;
        text-transform: uppercase;
        margin-bottom: 0.56rem; }
      .loyalty-landing__qr .qr-content .qr-text {
        font-size: 1rem;
        font-style: normal;
        font-weight: 400;
        line-height: normal; }
    .loyalty-landing__qr .btn-mob {
      display: none; }
      @media (max-width: 767px) {
        .loyalty-landing__qr .btn-mob {
          display: block; } }
    .loyalty-landing__qr .button {
      background-color: #FFF;
      color: var(--green);
      margin-top: 14px; }
  .loyalty-landing__faqs {
    margin: 0 auto;
    padding: 4rem 0; }
    @media (max-width: 767px) {
      .loyalty-landing__faqs {
        padding: 32px 0; } }
    .loyalty-landing__faqs .container {
      max-width: 960px; }
    .loyalty-landing__faqs-title {
      text-align: center; }
      @media (max-width: 767px) {
        .loyalty-landing__faqs-title.loyalty-title {
          font-size: 30px; } }
    .loyalty-landing__faqs-elements {
      display: flex;
      flex-direction: column;
      gap: 12px;
      margin-top: 2rem; }
      @media (max-width: 767px) {
        .loyalty-landing__faqs-elements {
          margin-top: 24px;
          gap: 8px; } }
    .loyalty-landing__faqs-element {
      border: 1px solid rgba(156, 170, 164, 0.3);
      border-radius: 9px;
      overflow: hidden; }
      .loyalty-landing__faqs-element-header {
        width: 100%;
        background: transparent;
        border: none;
        padding: 1.25rem 2rem;
        display: flex;
        justify-content: space-between;
        align-items: center;
        cursor: pointer;
        text-align: left; }
        @media (max-width: 767px) {
          .loyalty-landing__faqs-element-header {
            padding: 20px; } }
      .loyalty-landing__faqs-element-question {
        font-weight: 600;
        font-size: 1.13rem;
        color: var(--color-text-green); }
        @media (max-width: 767px) {
          .loyalty-landing__faqs-element-question {
            font-size: 18px;
            padding-right: 5px; } }
      .loyalty-landing__faqs-element-icon {
        width: 12px;
        height: 12px;
        border-right: 2px solid var(--color-text-green);
        border-bottom: 2px solid var(--color-text-green);
        transform: rotate(45deg);
        transition: transform 0.3s ease;
        flex-shrink: 0; }
      .loyalty-landing__faqs-element-content {
        max-height: 0;
        overflow: hidden;
        transition: max-height 0.35s ease;
        padding: 0 2rem; }
        @media (max-width: 767px) {
          .loyalty-landing__faqs-element-content {
            padding: 0 20px; } }
      .loyalty-landing__faqs-element-answer {
        padding: 0 0 2rem 0;
        color: var(--color-text-green);
        font-size: 1rem;
        line-height: 1.5;
        font-weight: 300; }
        @media (max-width: 767px) {
          .loyalty-landing__faqs-element-answer {
            padding: 0 0 20px 0;
            font-size: 16px; } }
      .loyalty-landing__faqs-element--open .loyalty-landing__faqs-element-icon {
        transform: rotate(-135deg); }
    .loyalty-landing__faqs-cta {
      font-size: 1rem;
      font-weight: 500;
      text-decoration: underline;
      text-underline-offset: 3px;
      color: var(--color-text-green);
      margin-top: 2rem;
      display: inline-block;
      position: relative;
      left: 50%;
      transform: translateX(-50%); }
      @media (max-width: 767px) {
        .loyalty-landing__faqs-cta {
          font-size: 16px;
          margin-top: 32px; } }
      .loyalty-landing__faqs-cta:hover {
        color: var(--color-text-green); }
