@font-face {
  font-family: "NanumEB";
  font-weight: 800;
  font-style: normal;
  src: url(../fonts/NanumSquareEB.woff) format("woff");
}

@font-face {
  font-family: "NanumRoundEB";
  font-weight: 800;
  font-style: normal;
  src: url(../fonts/NanumSquareRoundEB.woff) format("woff");
}

/* 데스크톱 컨테이너 설정 */
.desktop__inner {
  width: 100%;
  margin: 0 auto;
  position: relative; /* 자식 요소들의 기준점 설정 */
  overflow-x: hidden; /* 가로 스크롤 방지 */
}
  
/* 메인 섹션 설정 */
.main {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative; /* 다른 섹션과 겹치지 않도록 상대 위치 지정 */
  margin-bottom: 58px;/* learning-system 섹션과의 간격 */
  top: 60px; 
  z-index: 5; /* 다른 요소들과 겹치지 않도록 z-index 설정 */
}
/* 메인 내부 */
.main__inner {
  width: 100%;
  height: 430px;
  position: relative;
  display: flex;
  background-color: #465ff1; /* 배경 색상 */
  justify-content: space-evenly;
  align-items: center;
  margin: 0 auto; /* 중앙 정렬 */
  overflow: hidden; /* 내부 요소 넘침 방지 */
  z-index: 1; /* mobile header와 겹치지 않도록 z-index 설정 */
}

.main__inner_title_group{
  display: grid;
  align-items: left;
  background-color: #465FF1; /* 텍스트 박스 배경색 추가 */
  padding: 20px;
  border-radius: 8px; /* 모서리 둥글게 */
  z-index: 20; /* vector 이미지보다 위에 배치 */
}

/* Vector 이미지 컨테이너 수정 */
.vector-wrapper {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 10px;
  z-index: 5;
  overflow: hidden; /* vector 이미지가 영역을 벗어나지 않도록 설정 */
}

/* Vector 이미지 컨테이너 */
.vector-wrapper {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  overflow: hidden; /* vector 이미지가 영역을 벗어나지 않도록 설정 */
}

/* Vector01 이미지 */
.vector01 {
  position: absolute;
  min-width: 1920px;
  left: -10%; /* 지정된 위치에 맞춰 조정 */
  top: -10px;
  object-fit: cover;
  z-index: 5;
}

/* Vector02 이미지 */
.vector02 {
  position: absolute;
  min-width: 1920px;
  left: 0; 
  top: 80px;
  object-fit: cover;
  z-index: 5;
}

/* 메인 제목::AI실습 플랫폼 */
.main__inner_title {
  width: 172px;
  height: 28px;
  font-size: 28px;
  font-weight: 800;
  color: #ffffff;
  border: 1px solid var(--, #151515);
  margin-left: 10px; /* 시작위치 10px밀기 */
  margin-bottom: 12px;
  line-height: 31px;
  letter-spacing: -0.02em;
}

/* 메인 강조::AI OnBook */
.main__inner_title_bold {
  width: 283px;
  height: 43px;
  font-size: 60px;
  font-weight: 800;
  color: #ffffff;
  letter-spacing: -0.04em;
  line-height: 68px;
  margin-bottom: 10px;
}

/* 메인 설명::최적화된 */
.main__inner_title_text {
  width: 283px;
  height: 21px;
  font-family: 'Pretendard';
  font-size: 24px;
  font-weight: 500;
  color: #ffffff;
  letter-spacing: -0.03em;
  line-height: 21px;
  margin-top: 20px;
}

/* 버튼 랩퍼 */
.main__button-wrap {
  display: flex;
  gap: 10px;
  /* justify-content: center; */
  margin-top: 30px;
  margin-right: 30px;
}

/* 버튼 공통 스타일 */
.hero-btn {
  font-weight: 500;
  font-size: 18px;
  line-height: 28px;
  color: #ffffff;
  padding: 8px 38px;
  border-radius: 6px;
  cursor: pointer;
}

/* 체험하기 버튼 */
.hero-btn--experience {
  width: 140px;
  height: 50px;
  border: 1px solid #FFFFFF; /* 테두리 */
  background-color: #465FF1; /* 배경색 */
  color: #FFFFFF; /* 텍스트 색상 */
  padding: 10px 20px;
  border-radius: 14px;
}

.hero-btn--experience:hover {
  background-color: #FFFFFF; /* 호버 시 배경색 */
  color: #465FF1; /* 텍스트 색상 반전 */
}

/* 도입문의 버튼 */
.hero-btn--inquiry {
  width: 140px;
  height: 50px;
  border: 1px solid #465FF1; /* 테두리 */
  background-color: #FFFFFF; /* 배경색 */
  color: #465FF1; /* 텍스트 색상 */
  padding: 10px 20px;
  border-radius: 14px;
}

.hero-btn--inquiry:hover {
  background-color: #465FF1; /* 호버 시 배경색 */
  color: #FFFFFF; /* 텍스트 색상 반전 */
}

/* book-wrapper: bookimg와 bookbgimg를 감싸는 div */
.book-wrapper {/* 두 이미지를 겹치기 위한 상대 위치 */
  position: relative; 
  width: 500px;
  height: 400px;
  z-index: 10; /* vector-wrapper보다 위에 배치 */
}

/* bookimg 앞쪽 이미지 */
.bookimg {
  position: absolute; /* bookbgimg보다 앞에 배치 */
  top: 80px;
  right: 90px;
  width: 455px;
  height: 247px;
  z-index: 15; /* bookbgimg보다 앞에 배치 */}
/* bookbgimg 배경 이미지 */
.bookbgimg {
  position: absolute;
  top: 20px;
  left: 60px;
  width: 368px;
  height: 368px;
  width: 368px;
  z-index: 10;
}

/*  */
/* 문의하기 맞춤콘텐츠  */
/*  */
  .banner {
    background: #0B0E24;
  }
  .banner__inner {
    padding: 160px 0;
    width: 1200px;
    margin: 0 auto;
    text-align: center;
  }
  .banner__text span {
    font-size: 16px;
    line-height: 24px;
    font-weight: 500;
    color: #EAEAEA;
  }
  .banner__text p {
    margin-top: 24px;
    font-size: 32px;
    line-height: 48px;
    font-weight: 700;
    color: #Fff;
  }

  .banner__btn {
    margin-top: 200px;
    padding: 100px 100px;
    border-radius: 100%;
    line-height: 28px;
    font-size: 18px;
    font-weight: 600;
    color: #000;
    background-color: #fff;
  }
  .banner__btn:hover {
    background: #f1f1f1;
  }  

  /* 태블릿 및 데스크탑 미디어 쿼리 (max-width 1200px) */
  @media screen and (max-width: 1200px) {
    .banner__inner {
      width: inherit;
    }
    .bookbgimg {
      width: 80%;
    }
  }
  /* 태블릿 미디어 쿼리 (max-width 768px) */
  @media screen and (max-width: 767px) {
    .desktop__inner {
      min-width: 100%;
      width: 100%;
    }
     /* Vector 이미지 모바일에서 숨김 처리 */
    .vector-wrapper {
      display: none;
    }
    .main {
      margin-bottom: 60px;
    }
    .main__inner {
      width: 100%;
      height: auto;
      padding: 40px 20px;
      flex-direction: column;
      gap: 20px;
    }
    .main__inner_title_group {
      order: -1; /* 이미지가 텍스트보다 위로 오도록 설정 */
      padding: 0;
      text-align: center;
      align-items: center;
    }

    .main__inner_title {
      width: 283px;
      height: 28px;
      align-items: center; 
      margin: 0;
      font-size: 22px;
      font-weight: 700;
      letter-spacing: -0.03em;
    }
    .main__inner_title_bold {
      font-size: 46px;
      font-weight: 800;
      line-height: 52.21px;
      letter-spacing: -0.04em;
      margin-bottom: 0;
    }
    .main__inner_title_text {
      font-family: 'Pretendard';
      font-size: 18px;
      font-weight: 500;
      line-height: 21.48px;
      letter-spacing: -0.03em;
      margin-top: 10px;
    }
    .main__button-wrap {
      width: 100%;
      height: 33px;
      flex-direction: row;
      align-items: center;
      gap: 15px;
      margin-right: 0;
      margin-top:22px;

    }
    .hero-btn {
      width: 100%;
      height: 100%;
      max-width: 200px;
      padding: 0; 
    } .book-wrapper {
      width: 100%;
      height: 400px;
      margin-bottom: 0;
      display: flex;
      justify-content: center;
      align-items: center;
    }
  
    .bookbgimg {
      width: 80%;
      height: auto;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
    }
  
    .bookimg {
      width: 90%;
      height: auto;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
    }

    .main__inner img {
      width: 327px;
    }
    .banner__inner {
      width: 100%;
    }
    .banner__text span {
      font-size: 14px;
      line-height: 20px;
      font-weight: 500;
    }
    .banner__text p {
      margin-top: 16px;
      font-size: 24px;
      line-height: 36px;
      font-weight: 600;
    }
    .banner__btn {
      margin-top: 40px;
      padding: 10px 24px;
    }   
  }
  /* 모바일 미디어 쿼리 (max-width 480px) */
@media screen and (max-width: 480px) {
  .main__inner {
    flex-direction: column-reverse;
  }
  .book-wrapper {
    order: -1; /* 이미지가 텍스트보다 위로 오도록 설정 */
  }
  .main__inner_title {
    font-size: 24px;
    line-height: 28px;
  }
  .main__inner_title_bold {
    font-size: 48px;
    line-height: 50px;
  }
  .main__inner_title_text {
    font-size: 18px;
    line-height: 20px;
  }
}