body {margin:0; font-family:EsaManru; color:white; min-height:100vh; overflow-x:hidden; overflow-y:auto; display:flex; justify-content:center; background:black;}

/* 배경 */
.background {position:fixed; top:-15%; left:-15%; width:130%; height:130%; background:url(../images/background.jpg) center no-repeat; background-size:cover; animation:ringMove 40s linear infinite;}
@keyframes ringMove {0% {transform:scale(1) rotate(0deg);} 50% {transform:scale(1.06) rotate(3deg);} 100% {transform:scale(1) rotate(0deg);}}

/* 파티클 캔버스 */
#particles {position:fixed; width:100%; height:100%; z-index:1;}

/* 컨텐츠 */
.container {margin:70px 0 100px 0; position:relative; z-index:2; text-align:center; max-width:900px; width:90%;}

/* 로고 */
.logo {width:500px; animation:logoFloat 5s ease-in-out infinite;}
@keyframes logoFloat {0% {transform:translateY(0);} 50% {transform:translateY(-15px);} 100% {transform:translateY(0);}}

/* 타이틀 */
.title {font-size:80px; margin:20px 0 20px 0; color:#0155c5; animation:titleGlow 2s infinite alternate;}
.domain-title {font-size:26px; color:#00306f; margin:0 0 30px 0;}
.subtitle {font-size:20px; margin:0 0 10px 0; color:#00306f;}

@media screen and (max-width:800px) {
	.logo {width:300px;}
	.title {font-size:40px;}
	.domain-title {font-size:18px; font-weight:400; color:#00306f; margin:0 0 30px 0;}
	.subtitle {font-size:14px; margin:0 0 20px 0;}
}

/* 도메인 */
.domain-bg {background:url(../images/bg_domain.png) center no-repeat; background-size:contain; width:400px; height:130px; display:flex; align-items:center; justify-content:center; margin:auto;}
.domain-text {font-size:50px; text-shadow:0 0 10px #00f0ff, 0 0 40px #00f0ff;}

@media screen and (max-width:800px) {
	.domain-bg {width:300px;}
	.domain-text {font-size:35px;}
}

/* 버튼 */
.domain-links {margin:-10px 0 40px 0; display:flex; gap:4px; justify-content:center; flex-wrap:wrap;}
.domain-telegiam {margin:30px 0 10px 0; display:flex; gap:4px; justify-content:center; flex-wrap:wrap; transition:transform 0.5s cubic-bezier(0.25, 0.8, 0.25, 1); will-change:transform;}
.domain-telegiam:hover {transform: scale(1.05);}
.btn-domain, .btn-register {position:relative; padding:4px 0 0 0; width:500px; height:90px; line-height:90px; font-size:40px; font-weight:bold; background:linear-gradient(to right, #0055c5 0%, #00c1ff 50%, #0055c5 100%); border-radius:10px; text-decoration:none; color:white; overflow:hidden; transition:0.3s;}
.btn-domain:hover, .btn-register:hover {color:#00306f; transform:scale(1.12); box-shadow:0 0 10px #00f0ff, 0 0 40px #00f0ff, 0 0 80px #00f0ff, 0 0 140px #00f0ff;}

@media screen and (max-width:800px) {
	.btn-domain, .btn-register {width:300px; height:60px; line-height:60px; font-size:24px;}
}

/* 네온 테두리 */
.btn-domain::after, .btn-register::after {content:''; position:absolute; inset:-2px; border-radius:12px; background:linear-gradient(to right, #00c0ff 0%, #ffffff 50%, #00c0ff 100%);  z-index:-1; animation:borderMove 3s linear infinite;}
@keyframes borderMove {0% {background-position:0%;} 100% {background-position:200%;}}

/* 레이저 */
.btn-domain::before, .btn-register::before {content:''; position:absolute; top:0; left:-120%; width:120%; height:100%; background:linear-gradient(120deg, transparent, rgba(255,255,255,0.9), transparent); transition:0.7s;}
.btn-domain:hover::before, .btn-register:hover::before {left:120%;}

/* 회원가입 버튼 */
.btn-register {margin-top:20px; width:400px; height:70px; line-height:70px; font-size:30px;}

@media screen and (max-width:800px) {
	.btn-register {width:240px; height:50px; line-height:50px; font-size:20px;}
}

/* SNS */
.sns-links {margin-top:20px; display:flex; gap:20px; justify-content:center; flex-wrap:wrap;}
.sns-btn {display:flex; justify-content:center; align-items:center; gap:10px; width:340px; height:70px; line-height:70px; font-size:18px; background:rgba(255,255,255,0.08); border-radius:10px; text-decoration:none; color:white; backdrop-filter:blur(6px); transition:all .3s;}
.sns-btn:hover {background:rgba(255,255,255,0.2); transform:translateY(-4px); box-shadow:0 10px 20px rgba(0,0,0,0.4);}

@media screen and (max-width:800px) {
	.sns-btn {width:300px; height:50px; line-height:50px; font-size:16px;}
}