body {
  font-family: 'Noto Sans KR', sans-serif;
}
.animate-float {
  animation: float 6s ease-in-out infinite;
}
.animate-float-delay {
  animation: float 7s ease-in-out 1.5s infinite;
}
.animate-glow {
  animation: glow 4s ease-in-out infinite;
}
@keyframes float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-14px); }
}
@keyframes glow {
  0%, 100% { opacity: .45; }
  50% { opacity: .9; }
}
.chat-shadow {
  box-shadow: 0 20px 60px -15px rgba(251, 191, 36, .25), 0 0 0 1px rgba(255,255,255,.05);
}

/* design.md — 대문자·초굵은 헤드라인, 본문 16px/1.5 + 살짝 벌린 자간 */
body { background: #0e0f2d; letter-spacing: 0.014em; }
h1, h2, h3 { font-family: Nunito, 'Noto Sans KR', system-ui, sans-serif; font-weight: 900; text-transform: uppercase; letter-spacing: -0.01em; }
/* ponytail: 한글은 0.86 행간이면 획이 겹쳐 1.05 로 둔다 */
h1, h2 { line-height: 1.05 !important; }
.chat-shadow { box-shadow: 0 0 0 1px rgba(255,255,255,.08); }
/* 피처 카드는 자기 그라디언트가 조명 — 그 위 본문·태그는 흰색 계열로 대비를 맞춘다 */
.feature-card .text-slate-400 { color: rgb(255 255 255 / .85); }
.feature-card .text-amber-300 { color: #fff; background: rgb(255 255 255 / .18); border-color: rgb(255 255 255 / .35); }
.feature-card .bg-white\/\[0\.03\], .feature-card .bg-white\/5 { background: rgb(0 0 0 / .18); }
.feature-card .text-amber-400 { color: #fff; }
