.internships-container {
  display: flex;
  flex-direction: column;
  gap: 40px;
  margin-top: 120px;

  h2 {
    font-weight: 500;
    font-size: 36px;
    line-height: 38px;
    letter-spacing: 0%;
    color: #000000;
  }

  .internships {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;

    /* .internship {
      width: 587px;
      height: 1026px;
      max-width: 587px;
      max-height: 1026px;
      border-radius: 26px;

      display: flex;
      flex-direction: column;
      gap: 20px;

      &:nth-of-type(1) {
        border: 1px solid #2464f3;
        border-left-width: 6px;
      }
      &:nth-of-type(2) {
        border: 1px solid #d63832;
        border-left-width: 6px;
      }
      &:nth-of-type(3) {
        border: 1px solid #c7890b;
        border-left-width: 6px;
      }
      &:nth-of-type(4) {
        border: 1px solid #8a36f1;
        border-left-width: 6px;
      }

      .internship-header {
        position: relative;
        img {
          width: 100%;
          max-height: 383px;
          opacity: 1;
          border-top-left-radius: 18px;
          border-top-right-radius: 18px;
          object-fit: cover;
          display: block;
        }

        .status {
          width: 100px;
          height: 24px;
          border-radius: 10px;
          background: #deeafd;

          font-weight: 500;
          font-size: 14px;
          line-height: 38px;
          letter-spacing: 0%;
          color: #2464f3;

          display: flex;
          align-items: center;
          justify-content: center;

          position: absolute;
          top: 23px;
          left: 16px;
        }
      }

      .internship-content,
      .info {
        padding-inline: 21px;
      }

      .internship-content {
        display: flex;
        flex-direction: column;
        gap: 7px;

        h3 {
          font-weight: 500;
          font-size: 32px;
          line-height: 100%;
          letter-spacing: 0%;
          color: #080a12;
        }

        p {
          font-weight: 400;
          font-size: 16px;
          line-height: 28px;
          letter-spacing: 0%;
          color: #212121;
        }
      }

      .info {
        display: flex;
        flex-direction: column;
        gap: 10px;

        h4 {
          font-weight: 500;
          font-size: 18px;
          line-height: 38px;
          letter-spacing: 0%;
          color: #000000;
        }

        ul {
          list-style: none;
          display: flex;
          flex-direction: column;
          gap: 4px;

          li {
            display: flex;
            align-items: center;
            gap: 14px;

            font-weight: 400;
            font-size: 16px;
            line-height: 38px;
            letter-spacing: 0%;
            color: #212121;
          }
        }
      }
    } */

    .internship {
      width: 587px;
      height: fit-content;
      max-width: 587px;
      max-height: 1026px;
      border-radius: 26px;
      display: flex;
      flex-direction: column;
      position: relative;
      overflow: hidden;

      .internship-header {
        position: relative;
        z-index: 1;

        img {
          width: 100%;
          max-height: 299px;
          opacity: 1;
          border-radius: 20px;
          object-fit: cover;
          display: block;
        }

        .status {
          width: 100px;
          height: 24px;
          border-radius: 10px;
          background: #deeafd;
          font-weight: 500;
          font-size: 14px;
          line-height: 38px;
          letter-spacing: 0%;
          color: #2464f3;
          display: flex;
          align-items: center;
          justify-content: center;
          position: absolute;
          top: 23px;
          left: 16px;
          z-index: 3;
        }
      }

      .internship-details {
        width: 95%;
        margin: -40px auto 0 auto;
        background: #ffffff;
        border: 1px solid #cccccc;
        border-radius: 16px;
        position: relative;
        z-index: 2;
        display: flex;
        flex-direction: column;
        gap: 20px;
        padding-bottom: 21px;

        .internship-content {
          display: flex;
          flex-direction: column;
          gap: 7px;
          padding: 21px 21px 0 21px;

          h3 {
            font-weight: 500;
            font-size: 32px;
            line-height: 100%;
            letter-spacing: 0%;
            color: #080a12;
          }

          p {
            font-weight: 400;
            font-size: 16px;
            line-height: 28px;
            letter-spacing: 0%;
            color: #212121;
          }
        }

        .info {
          padding-inline: 21px;
          display: flex;
          flex-direction: column;
          gap: 10px;

          h4 {
            font-weight: 500;
            font-size: 18px;
            line-height: 38px;
            letter-spacing: 0%;
            color: #000000;
          }

          ul {
            list-style: none;
            display: flex;
            flex-direction: column;
            gap: 4px;

            li {
              display: flex;
              align-items: center;
              gap: 14px;
              font-weight: 400;
              font-size: 16px;
              line-height: 38px;
              letter-spacing: 0%;
              color: #212121;
            }
          }
        }
      }
    }
  }
}

.application-process {
  display: flex;
  flex-direction: column;
  gap: 40px;
  margin-top: 120px;

  h2 {
    font-weight: 500;
    font-size: 36px;
    line-height: 38px;
    letter-spacing: 0%;
    color: #000000;
  }

  .processes {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;

    .process {
      width: 282px;
      height: 187px;
      max-width: 282px;
      max-height: 187px;
      border-radius: 18px;
      border: 1px solid #e5e5e5;
      background: #ffffff;

      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      gap: 16px;

      .number {
        width: 32px;
        height: 32px;
        border-radius: 50%;
        background: #d8ebff;

        display: flex;
        align-items: center;
        justify-content: center;

        font-weight: 500;
        font-size: 20px;
        line-height: 38px;
        letter-spacing: 0%;
        color: #2464f3;
      }

      h5 {
        font-weight: 500;
        font-size: 24px;
        line-height: 38px;
        letter-spacing: 0%;
        color: #212121;
      }

      p {
        font-weight: 400;
        font-size: 16px;
        line-height: 20px;
        letter-spacing: 0%;
        text-align: center;
        color: #212121;
      }
    }
  }
}

.partner-companies {
  display: flex;
  flex-direction: column;
  gap: 40px;
  margin-top: 120px;

  h2 {
    font-weight: 500;
    font-size: 36px;
    line-height: 38px;
    letter-spacing: 0%;
    color: #000000;
  }

  .partners-container {
    background: #f9fafb;

    padding-block: 40px;
    display: flex;
    align-items: center;
    justify-content: center;

    .partners {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 24px;

      .partner-company {
        width: 382px;
        height: 271px;
        max-width: 382px;
        max-height: 271px;
        border-radius: 20px;
        background: #ffffff;
        border: 1px solid #e5e5e5;
        padding: 20px;

        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 20px;

        .partner-company-header {
          display: flex;
          align-items: flex-start;
          gap: 18px;

          .partner-image {
            width: 100px;
            height: 100px;
            max-width: 100px;
            max-height: 100px;

            display: flex;
            align-items: center;
            justify-content: center;

            img {
              width: 100%;
              height: 100%;
              object-fit: cover;
              display: block;
              border-radius: 10px;
            }
          }

          .partner-company-content {
            display: flex;
            flex-direction: column;
            gap: 8px;

            h4 {
              font-weight: 500;
              font-size: 20px;
              line-height: 38px;
              letter-spacing: 0%;
              color: #000000;
            }

            .category {
              width: 96px;
              height: 24px;
              border-radius: 10px;
              background: #edeff2;

              display: flex;
              align-items: center;
              justify-content: center;

              font-weight: 500;
              font-size: 14px;
              line-height: 20px;
              letter-spacing: 0%;
              text-align: center;
              color: #212121;
            }
          }
        }

        .partner-company-field {
          font-weight: 400;
          font-size: 18px;
          line-height: 28px;
          letter-spacing: 0%;
          color: #000000;
        }

        .partner-company-info {
          ul {
            list-style: none;
            display: flex;
            flex-direction: column;
            gap: 12px;

            li {
              display: flex;
              align-items: center;
              gap: 5px;
            }
          }
        }
      }
    }
  }
}

@media screen and (max-width: 450px) {
  .internships-container {
    margin-top: 60px;

    h2 {
      font-size: 28px !important;
      line-height: 38px !important;
    }

    .internships {
      grid-template-columns: 1fr;

      .internship {
        width: 343px !important;
        height: fit-content !important;
        width: 100% !important;
        min-width: 343px !important;
        max-height: fit-content !important;

        .internship-details {
          width: 100% !important;

          .internship-content {
            h3 {
              font-size: 24px !important;
            }

            p {
              font-size: 16px !important;
            }
          }
        }
      }
    }
  }

  .application-process {
    margin-top: 60px;

    h2 {
      font-size: 28px !important;
      line-height: 38px !important;
    }

    .processes {
      grid-template-columns: 1fr;
      align-items: center;

      .process {
        width: 100% !important;
        width: 100% !important;
        min-width: 343px !important;
      }
    }
  }

  .partner-companies {
    margin-top: 60px;

    h2 {
      font-size: 28px !important;
      line-height: 38px !important;
    }

    .partners-container {
      .partners {
        grid-template-columns: 1fr;
        align-items: center;

        .partner-company {
          width: 100% !important;
          width: 100% !important;
          min-width: 343px !important;
        }
      }
    }
  }
}

@media screen and (min-width: 768px) and (max-width: 1024px) {
  /* All tablet overrides grouped here */

  .internships-container {
    margin-top: 80px;

    h2 {
      font-size: 32px;
      line-height: 42px;
    }

    .internships {
      grid-template-columns: 1fr;
      gap: 20px;

      .internship {
        width: 100%;
        max-width: none;
        border-radius: 24px;

        .internship-header {
          img {
            max-height: 260px;
            border-radius: 20px;
          }
        }

        .internship-details {
          width: 100%;
          border-radius: 16px;
        }
      }
    }
  }

  .application-process {
    margin-top: 80px;

    h2 {
      font-size: 32px;
      line-height: 42px;
    }

    .processes {
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 20px;

      .process {
        width: 100%;
        max-width: none;
      }
    }
  }

  .partner-companies {
    margin-top: 80px;

    h2 {
      font-size: 32px;
      line-height: 42px;
    }

    .partners-container {
      padding-block: 32px;

      .partners {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 20px;

        .partner-company {
          width: 100%;
          max-width: none;
        }
      }
    }
  }
}
