@font-face {
  font-family: 'HankenGrotesk';
  src: url('../HankenGrotesk-VariableFont_wght-SHUaRYnB.ttf') format('truetype');
}

@font-face {
  font-family: 'CabinetGrotesk';
  src: url('../CabinetGrotesk-Bold-CqXPKury.ttf') format('truetype');
}


body, html {
    margin: 0;
    padding: 0;
    font-family: HankenGrotesk;
    font-weight: 300;
    background: radial-gradient(ellipse at 75% 50%, 
        #D7C5EC 0%,     /* 중심 가장 밝은 라벤더 */
        #A7A6F1 100%    /* 가장 외곽 진한 보라 */
    );
    color: #fff;
    overflow: hidden; /* 스크롤바 방지 */
    height: 100%;
}

.container {
    display: flex;
    width: 100%;
    height: 100vh; /* 전체 뷰포트 높이 */
    align-items: center; /* 수직 중앙 정렬 */
}

.left-panel {
    width: 35%;
    padding: 50px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: center; /* 내부 요소 수직 중앙 정렬 */
}

h1 {
    width: 130%;
    font-family: CabinetGrotesk;
    font-size: 4em;
    color: #fff; /* 이미지와 유사한 제목 색상 */
    margin-bottom: 20px;
}

.left-panel p {
    font-size: 1.5em;
    line-height: 1.2;
    margin-bottom: 15px;
}

#startButton {
    font-family: HankenGrotesk;
    background-color: #8a79b9; /* 이미지와 유사한 버튼 색상 */
    color: #ddd;
    border: none;
    padding: 7px 40px;
    font-size: 1.0em;
    cursor: pointer;
    border-radius: 5px;
    align-self: flex-start; /* 버튼을 왼쪽 정렬 */
    margin-top: 20px;
}

#startButton:hover {
    background-color: #71619c;
}

.right-panel {
    width: 60%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

#3d-canvas {
    width: 100%;
    height: 100%;
    display: block;
}