@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@300;400;500;700&display=swap');

body { font-family: 'Noto Sans KR', sans-serif; }
.hero-gradient { background: linear-gradient(135deg, #1a365d 0%, #2d3748 100%); }
.hover-scale { transition: transform 0.3s ease; }
.hover-scale:hover { transform: translateY(-5px); }

/* 텍스트 등장 애니메이션 */
@keyframes fadeInUp {
    from { opacity: 0; transform: translateY(30px); }
    to { opacity: 1; transform: translateY(0); }
}
.animate-fade-up {
    opacity: 0;
    animation: fadeInUp 1s ease-out forwards;
}
.delay-200 { animation-delay: 0.2s; }
.delay-400 { animation-delay: 0.4s; }

/* 스크롤 트리거 애니메이션 */
.scroll-reveal { opacity: 0; transition: all 1s ease-out; }
.reveal-left { transform: translateX(-50px); }
.reveal-right { transform: translateX(50px); }
.reveal-up { transform: translateY(50px); }
.scroll-reveal.active { opacity: 1; transform: translate(0, 0); }

/* 툴팁 애니메이션 */
.tooltip-text {
    visibility: hidden;
    opacity: 0;
    transition: opacity 0.3s;
}
.group:hover .tooltip-text {
    visibility: visible;
    opacity: 1;
}

/* 마크다운 스타일링 (인사말 등) */
.prose strong { font-weight: bold; color: #1e3a8a; }
.prose ul { list-style-type: disc; padding-left: 1.2em; margin-top: 0.5em; }
.prose p { margin-bottom: 0.5em; }

/* 이미지 호버 효과 */
.gallery-img-container { overflow: hidden; border-radius: 0.75rem; }
.gallery-img { transition: transform 0.5s ease; width: 100%; height: 100%; object-fit: cover; }
.gallery-item:hover .gallery-img { transform: scale(1.05); }

/* 인사말 페이지 전용 스타일 */
.highlight-text {
    color: #2563EB;
    font-weight: 700;
}

/* 조직도 전용 스타일 */
.no-select { user-select: none; }
::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-track { background: #f1f1f1; }
::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: #94a3b8; }