* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    user-select: none;
}

input:-webkit-autofill {
  -webkit-box-shadow: 0 0 0px 1000px white inset;
  box-shadow: 0 0 0px 1000px white inset;
  -webkit-text-fill-color: #000;
}

/* 섹션1 */
.first-section {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: flex-end;
    height: calc(100% - 7rem);
}

.first-section .image-container {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
}

.first-section .image-container img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.first-section .content-container {
    position: absolute;
    width: 78%;
    max-width: 1536px;
    top: 6.4rem;
    height: calc(100% - 6.4rem);
    display: flex;
    justify-content: flex-start;
    align-items: center;
}

.first-section .text-container {
    text-align: center;
    color: white;
    font-family: 'capitana', sans-serif;
    font-weight: 600;
    font-size: 3.84rem;
}

/* 섹션2 */
.second-section {
    display: flex;
    width: 78%;
    max-width: 1536px;
    align-items: center;
    margin: 0 auto;
    padding: 9rem 0 5.75rem 0;
    gap: 12%;
}

.installer-second-section {
    display: block;
}

.second-section .content-container {
    display: flex;
    flex-direction: column;
    gap: 2rem;
}

.second-section .title-container p {
    font-size: 3rem;
    font-weight: 600;
    font-family: 'capitana', sans-serif;
    color: #1e1e1e;
}

.second-section .text-container p {
    font-size: 1.92rem;
    font-weight: 300;
    font-family: 'Pretendard', sans-serif;
    line-height: 1.8rem;
    color: #1e1e1e;
}

.second-section .image-container img {
    width: 532.6px;
    min-width: 9rem;
    height: auto;
}

/* 섹션3 */
.third-section {
    background: #fff;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 4rem;
    width: 78%;
    max-width: 1536px;
    margin: 0 auto;
}

.third-section .title-container p {
    font-size: 3rem;
    font-weight: 600;
    font-family: 'capitana', sans-serif;
    color: #1e1e1e;
}

.third-section .image-container {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 5%;
}

.third-section .image-container .explanation-image {
    width: 21%;
}

/* 섹션4 */
.fourth-section {
    width: 78%;
    max-width: 1536px;
    background: #fff;
    display: flex;
    flex-direction: column;
    gap: 3.5rem;
    margin: 8.3rem auto 0 auto;
}

.fourth-section .title-container h2 {
    font-size: 3rem;
    font-weight: 600;
    font-family: 'capitana', sans-serif;
    color: #1e1e1e;
    width: 100%;
    text-align: center;
}

.fourth-section .content-container {
    display: flex;
    flex-direction: row;
    gap: 4.5vw;
    justify-content: center;
}

/* 섹션5 */
.fifth-section {
    width: 78%;
    max-width: 1536px;
    margin: 0 auto;
    background: #fff;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-bottom: 9.25rem;
}

.fifth-section .title-container p {
    font-size: 3rem;
    font-weight: 600;
    font-family: 'capitana', sans-serif;
    color: #1e1e1e;
    padding: 6.25rem 0 3.5rem 0;
}

.fifth-section form {
    width: 100%;
}

.fifth-section form .inputs-container {
    display: flex;
    flex-direction: column;
    row-gap: 3.1rem;
}

.fifth-section form label {
    font-family: 'Pretendard', sans-serif;
    font-size: 1.2rem;
    font-weight: 200;
    color: #1e1e1e;
}

.fifth-section form p {
    font-family: 'Pretendard', sans-serif;
    font-size: 0.9rem;
    font-weight: 200;
    color: #b2b2b2;
}

.fifth-section form .input-row-container {
     display: flex;
     gap: 12%;
     width: 100%;
}

.fifth-section form .input-container {
     flex: 1;
     display: flex;
     flex-direction: column;
     gap: 1.5rem;
}

.fifth-section form .input-container input {
     width: 100%;
     height: 3.75rem;
     box-sizing: border-box;
     padding: 0.5rem;
     border-radius: 10px;
     border: 1px solid #b2b2b2;
     padding: 1rem;
     font-size: 1rem;
}

.fifth-section form .notice-container {
    padding: 0.8rem 0 2.75rem 0;
}

.fifth-section form button {
    padding: 0.9rem 0;
    width: 7rem;
    border: 1px solid transparent;
    border-radius: 1.5rem;
    background-color: #60E0E0;
    font-size: 1.3rem;
    font-weight: 600;
}

.installer-bottom-container p {
    text-align: center !important;
    font-size: 1.4rem !important;
}

/* installer 폰트 */
.installer-second-section .installer-text-container p {
    font-size: 1.3rem;
    font-weight: 300;
    font-family: 'Pretendard', sans-serif;
    line-height: 1.8rem;
    color: #1e1e1e;
}

.installer-second-section .content-container {
    gap: 1rem;
}

.installer-second-section {
    padding-bottom: 4.75rem;
}

#become-an-installer-form {
    margin-top: 4.75rem;
}

.fifth-section form .notice-container p {
    font-size: 1.2rem;
    font-weight: 600;
    color: black;
}

/* 지도 css */
#map {
    margin: 50px auto 0 auto;
    height: 500px;
}

@media (max-width: 1400px) {
    .second-section {
        flex-direction: column-reverse;
    }

    .second-section .image-container {
        width: 100%;
        height: auto;
    }

    .second-section .image-container img{
        width: 100%;
        height: auto;
    }

    #map {
        margin: 40px auto 0 auto;
        height: 400px;
    }
}

@media (max-width: 1024px) {
    .first-section .content-container p {
        font-size: 2rem;
    }

    .second-section {
        flex-direction: row;
    }

    .second-section .title-container p {
        font-size: 2rem;
    }

    .second-section .image-container img {
        width: 300px;
        height: auto;
    }

      .second-section .text-container p {
          font-size: 1.5rem;
          font-weight: 300;
          line-height: 2rem;
      }

      .third-section .title-container p {
          font-size: 2rem;
      }

      .fourth-section .title-container h2 {
            font-size: 2rem;
      }

      .fifth-section .title-container p {
          font-size: 2rem;
      }

      #map {
          margin: 40px auto 0 auto;
          height: 400px;
      }
}

@media (max-width: 767px) {
    .first-section .image-container {
        height: 219px;
    }

    .first-section .content-container {
        top: 5rem;
    }

    .second-section {
        padding-top: 5rem;
        display: flex;
        flex-direction: column-reverse;
    }

    .second-section .content-container {
        gap: 1rem;
    }

  .second-section .image-container {
    width: 100%;
  }

    .second-section .image-container img{
      width: 100%;
      height: auto;
    }

  .third-section .image-container {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(2, auto);
    gap: 1rem;
  }

  .third-section .image-container .explanation-image{
    width: 100%;
    height: auto;
  }

  .fifth-section form button {
    width: 30%;
    font-size: 2vw;
  }

    #map {
        margin: 30px auto 0 auto;
        height: 300px;
    }
}

@media (max-width: 425px) {
  .second-section,
  .third-section,
  .fourth-section,
  .fifth-section {
    width: 90%;
  }

  /* 섹션1 */
  .first-section .content-container {
    top: 2rem;
    height: calc(100% - 2rem);
    justify-content: center;
    align-items: center;
  }

  .first-section .text-container {
    font-size: 5vw;
    word-break: break-word;
  }

  /* 섹션2 */
  .second-section {
    flex-direction: column-reverse;
    gap: 2rem;
    padding: 4rem 0;
  }

  .second-section .title-container p {
    font-size: 5vw;
    text-align: center;
    word-break: break-word;
  }

  .second-section .text-container p {
    font-size: 4.5vw;
    line-height: 1.5rem;
    text-align: center;
  }

  .second-section .image-container img {
    width: 100%;
  }

  /* 섹션3 */
  .third-section .title-container p {
    font-size: 5vw;
    text-align: center;
    word-break: break-word;
  }

  .third-section .image-container {
    flex-direction: column-reverse;
    gap: 1.5rem;
  }

  .third-section .image-container .explanation-image {
    width: 100%;
  }

  /* 섹션4 */
  .fourth-section {
    gap: 3rem;
  }

  .fourth-section .title-container h2 {
    font-size: 5vw;
    text-align: center;
    word-break: break-word;
  }

  .fourth-section .content-container {
    flex-direction: column;
    gap: 2rem;
  }

  /* 섹션5 */
  .fifth-section {
    padding-bottom: 5rem;
  }

  .fifth-section .title-container p {
    font-size: 4vw;
    text-align: justify;
    padding: 4rem 0 2rem 0;
    word-break: break-word;
  }

  .fifth-section form .input-row-container {
    flex-direction: column;
    gap: 3rem;
  }

  .fifth-section form .input-container input {
    font-size: 1rem;
    height: 3.25rem;
  }

  .fifth-section form button {
     width: 100%;
     font-size: 4vw;
  }

    #map {
        margin: 20px auto 0 auto;
        height: 200px;
    }

    .installer-second-section .content-container .installer-text-container {
        text-align: center;
    }
}

@media (min-width: 426px) {
    .horizonal-line {
        border-top: 3px solid #62e7e7;
        width: 10%;
    }
}