.landing {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  background-color: var(--color-white);

  .landing__hero {
    display: flex;
    justify-content: center;
    padding: 40px 20px;
    
    .landing__hero_container {
      display: flex;
      flex-direction: column; 
      align-items: center;
      max-width: 1200px;
      gap: 30px;

      @media (min-width: 520px) {
        flex-direction: row-reverse; 
        justify-content: space-between;
      }
    }

    .landing__hero_visual {
      flex: 1;
      display: flex;
      justify-content: center;
      
      img {
        max-width: 100%;
        height: auto;
        max-height: 300px;
        
        @media (min-width: 768px) {
          max-height: 450px;
        }
      }
    }

    .landing__hero_content {
      flex: 1;
      text-align: center;

      @media (min-width: 768px) {
        text-align: left;
      }

      .landing__hero_title {
        font-size: 28px;
        font-weight: 700;
        color: var(--primary);
        margin-bottom: 20px;
        line-height: 1.2;

        @media (min-width: 768px) {
          font-size: 48px;
        }
      }

      .landing__hero_subtitle {
        font-size: 18px;
        color: #777;
        margin-bottom: 30px;
        max-width: 500px;
      }

      .landing__hero_actions {
        display: flex;
        flex-direction: column;
        gap: 15px;

        @media (min-width: 768px) {
          max-width: 350px;
        }

        .btn {
          padding: 15px 20px;
          font-weight: bold;
          letter-spacing: 1px;
          border-radius: 12px;
          text-transform: uppercase;
        }
      }
    }
  }

  .landing__partners {
    border-top: 2px solid #e5e5e5;
    padding: 20px;
    text-align: center;

    .landing__partners_text {
      font-size: 14px;
      color: #afafaf;
      font-weight: bold;
      margin-bottom: 20px;
    }

    .landing__partners_list {
      display: flex;
      justify-content: center;
      gap: 40px;
      filter: grayscale(100%);
      opacity: 0.6;
      
      img {
        height: 40px;
      }
    }
  }
}