.vision-section {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100vw; /* 전체 화면 너비 */
    height: 100vh;
    background-color: rgba(255, 255, 255, 0.1); /* 투명한 흰색 배경 */
    text-align: center;
    padding: 0;
    margin: 0;
    overflow: hidden; /* 화면 넘치는 텍스트 숨김 */
}

.vision-section h1 {
    font-size: 10vw; /* 기본 글자 크기 */
    font-weight: bold;
    color: white;
    margin: 0;
    white-space: nowrap; /* 줄바꿈 없음 */
}

.vision-section .subheading {
    font-size: 5vw; /* 조금 작지만 그래도 큰 글씨 */
    font-weight: bold;
    color: white;
    margin: 0;
    white-space: nowrap; /* 줄바꿈 없음 */
}

.video-container {
    position: relative;
    width: 100vw; /* 전체 화면 너비를 사용 */
    height: 56.25vw; /* 16:9 비율 유지 (100vw * 9 / 16) */
    max-height: 100vh;
    max-width: 100%; /* 가로로 화면을 벗어나지 않도록 설정 */
    margin: auto; /* 가운데 정렬 */
    overflow: hidden; /* 동영상이 컨테이너를 벗어나지 않도록 처리 */
    background-color: rgba(255, 255, 255, 0.1); /* 투명한 흰색 배경 */
}

.video-container video {
    position: absolute;
    top: 50%;
    left: 50%;
    height: 100%;
    width: auto; /* 비디오 비율을 유지하며 가로 크기를 자동 조정 */
    transform: translate(-50%, -50%); /* 비디오를 정가운데에 위치시킴 */
    object-fit: cover; /* 비율을 유지하면서 컨테이너를 가득 채우도록 */
}
