```css
/* 기본 스타일 및 폰트 설정 */
body {
    font-family: 'Noto Sans KR', 'Inter', sans-serif;
    overflow: hidden; /* 스크롤 방지 */
}

/* 오로라 배경 애니메이션 */
.aurora-background {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #0c0a18; /* 어두운 기본 배경색 */
    overflow: hidden;
    z-index: -1;
}

.aurora-layer {
    position: absolute;
    width: 200%;
    height: 200%;
    opacity: 0.15;
    mix-blend-mode: screen; /* 색상 혼합 모드 */
    animation: swirl 25s linear infinite alternate;
    border-radius: 50%;
}

/* 오로라 색상 레이어 1 */
.aurora-layer:nth-child(1) {
    background: radial-gradient(circle, #3a2d80, transparent 60%);
    top: -50%;
    left: -50%;
    animation-duration: 20s;
}

/* 오로라 색상 레이어 2 */
.aurora-layer:nth-child(2) {
    background: radial-gradient(circle, #2d5b80, transparent 60%);
    bottom: -50%;
    right: -50%;
    animation-duration: 25s;
    animation-delay: -5s;
}

/* 오로라 색상 레이어 3 */
.aurora-layer:nth-child(3) {
    background: radial-gradient(circle, #2d805e, transparent 60%);
    bottom: -50%;
    left: -25%;
    animation-duration: 30s;
    animation-delay: -10s;
}

/* 소용돌이 애니메이션 키프레임 */
@keyframes swirl {
    0% {
        transform: translateX(0) translateY(0) rotate(0deg) scale(1);
    }
    100% {
        transform: translateX(100px) translateY(50px) rotate(360deg) scale(1.2);
    }
}