.module-introduction {
  background-color: #ffffff;
  & .section {
    & .introduction__container {
      @media(width < 768px){
        padding-bottom: 0;
      }
    }
  }
  & .introduction__container {
    width: 100%;
    max-width: 1440px;
    margin: 0 auto;
    padding-block: 40px;
    @media(width >= 768px){
      padding-block: 80px;
    }
    @media (width >= 1280px) {
      padding-inline: 0;
    }

    & .introduction__content-wrapper {
      display: flex;
      flex-direction: column;
      align-items: flex-end;
      gap: 24px;

      @media (width >= 768px) {
        flex-direction: row;
      }
    }
    & .introduction__column {
      width: 100%;

      @media (width >= 768px) {
        width: calc(1 / 2 * 100%);
      }
      .h1 {
        max-width: 100%;
        text-transform: capitalize;

        @media (width >= 768px) {
          max-width: 384px;
        }

        @media (width >= 1280px) {
          max-width: 560px;
        }
      }

      .paragraph {
        font-size: initial;
        line-height: 1.25;
        color: var( --color-foreground);

        @media (width >= 768px) {
          font-size: 18px;
        }

        @media (width >= 768px) {
          font-size: 20px;
        }

        @media (width >= 1280px) {
          max-width: 560px;
        }
      }
    }
  }
}

.process-steps {
  display: flex;
  flex-direction: column;
  gap: 24px;
  padding-block: 64px;
  
  @media(width < 768px) {
    padding-top: 0;
  }
  @media (width >= 768px) {
    gap: 64px;
    padding-block: 80px;
  }
  .process-steps__item {
    position: relative;
    background-color: #ffffff;

    &.process-steps__item--image-right {
      @media (width >= 768px) {
        padding-left: 0;
        padding-right: 0;
      }
      @media (width >= 1280px) {
        padding-left: 80px;
        padding-right: 80px;
      }
      & .container {
        margin: 0 auto;
        max-width: 1440px;
        position: relative;
        z-index: 6;
        &.section {
          @media(width < 768px) {
            grid-template-columns: 0 auto auto;
            & .process-steps__container  {
              padding-inline: 16px;
            }
            & .process-steps__text-column  {
              &.process-steps__text-column--padded {
                padding-inline: 0;
              }
            }
          }
          & .process-steps__text-column {
            padding-inline: 24px;
            @media(width >= 1280px) {
              padding-inline: 0;
            }
          }
        }
        @media (width >= 768px) {
          padding-right: 0;
        }

        & .process-steps__background {
          & .process-steps__bg-column--pattern {
            @media (width >= 768px) {
              width: calc(3 / 4 * 100%);
            }
          }
        }

        & .process-steps__container {
          padding-left: 0;
          padding-right: 0;
        }
      }
    }

    & .process-steps__background {
      background-color: #ffffff;
      display: flex;
      flex-direction: column;
      height: 100%;
      left: 0;
      position: absolute;
      top: 0;
      width: 100%;
      z-index: -0;

      @media (width >= 768px) {
        flex-direction: row;
      }

      & .process-steps__bg-column {
        height: 100%;

        &.process-steps__bg-column--pattern {
          background-image: url('/cdn/shop/files/background-opacity-offerings.webp?v=1760389147');
          height: 100%;
          background-size: contain;
          width: 100%;

          @media (width >= 768px) {
            width: calc(3 / 5 * 100%);
          }
        }
        &.process-steps__bg-column--white {
          background-color: var(--color-background);
          height: 320px;
          width: 100%;

          @media (width >= 768px) {
            height: 100%;
            width: calc(2 / 5 * 100%);
          }
        }
      }

      &.process-steps__background--reversed {
        flex-direction: column;

        @media (width >= 768px) {
          flex-direction: row-reverse;
        }
      }
    }

    & .process-steps__container {
      margin: 0 auto;
      padding-block: 64px;
      position: relative;
      width: 100%;
      z-index: 6;
      @media (width >= 768px) {
        max-width: 1440px;
      }
      @media (width >= 1280px) {
        padding-inline: 0;
      }

      & .process-steps__content-wrapper {
        align-items: center;
        display: flex;
        flex-direction: column;
        gap: 24px;

        @media (width >= 768px) {
          flex-direction: row;
        }
        @media (width >= 1280px) {
          gap: 80px;
        }
        &.process-steps__content-wrapper--reversed {
          flex-direction: column;

          @media (width >= 768px) {
            flex-direction: row-reverse;
          }
        }

        & .process-steps__media-column {
          display: grid;
          gap: 8px;
          grid-template-columns: repeat(2, minmax(0, 1fr));
          width: 100%;
          @media (width >= 1024px) {
            width: calc(1 / 2 * 100%);
          }

          & .process-steps__image {
            border: 4px solid #ffffff;
            height: 256px;
            object-fit: cover;
            width: 100%;

            @media (width >= 640px) {
              height: 320px;
            }
            @media (width >= 1024px) {
              height: 384px;
            }
            @media (width >= 1280px) {
              height: 448px;
            }
          }
        }

        & .process-steps__text-column {
          width: 100%;
          @media (width >= 1024px) {
            width: calc(1 / 2 * 100%);
          }
          @media (width >= 1280px) {
            max-width: 376px;
          }
          & .process-steps__caption {
            color: rgb(164 108 50 / 1);
            font-size: 16px;
            font-weight: 700;
            letter-spacing: 0.2em;
            line-height: 1.3;
            margin-bottom: 16px;
            text-transform: uppercase;

            @media (width >= 1024px) {
              font-size: 18px;
            }
            @media (width >= 1280px) {
              font-size: 20px;
            }
          }
          & .process-steps__heading {
            line-height: 1.25;
            margin-bottom: 16px;
            margin-top: 0;

            @media (width >= 1024px) {
              max-width: 344px;
            }
          }

          & .process-steps__description {
            font-weight: 400;
            font-size: 16px;
            line-height: 1.5;
            margin-bottom: 40px;
            margin-top: 0;
            @media (width >= 1024px) {
              max-width: 376px;
            }
          }
        }
      }

      & .process-steps__list {
        display: flex;
        flex-direction: column;
        gap: 12px;
        list-style: none;
        margin: 0;
        padding: 0;

        & .process-steps__list-item {
          align-items: center;
          color: var( --color-foreground);
          display: flex;
          font-size: 16px;
          font-weight: 700;
          gap: 10px;
          line-height: 1.5;

          & .process-steps__bullet {
            background-color: rgb(164, 108, 50);
            border-radius: 100%;
            display: inline-flex;
            height: 14px;
            width: 14px;
          }
        }
      }
    }
  }
}