/* Home Page Specific Styles */

/* 메인 페이지 전용 테마 - 퍼플 그라데이션 */
.page-home {
    --home-primary: #6366F1;
    --home-primary-light: #8B5CF6;
    --home-primary-soft: #EEF2FF;
    --home-bg-main: #FAFBFF;
    --home-gradient: linear-gradient(135deg, #6366F1 0%, #8B5CF6 100%);
    --home-gradient-soft: linear-gradient(135deg, rgba(99, 102, 241, 0.1) 0%, rgba(139, 92, 246, 0.05) 100%);
    --home-gradient-bg: linear-gradient(135deg, #FAFBFF 0%, #F4F3FF 100%);
}

/* 메인 페이지 메인 래퍼 배경 */
.page-home .main-wrapper {
    background: var(--home-gradient-bg);
}

.page-home .main-content {
    background: transparent;
}

/* 메인 페이지 프로그레스바 */
.page-home .progress-bar {
    background: var(--home-gradient);
}

/* 메인 페이지 버튼 스타일 */
.page-home .btn-gradient {
    background: var(--home-gradient);
    border: none;
    color: var(--bg-white);
}

.page-home .btn-gradient:hover {
    background: linear-gradient(135deg, #4F46E5 0%, #7C3AED 100%);
    color: var(--bg-white);
    transform: translateY(-2px);
    box-shadow: var(--shadow-lg);
}

/* 메인 페이지 카드 아이콘 */
.page-home .card-icon {
    background: var(--home-gradient);
}

/* 메인 페이지 사이드바 테마 */
.page-home .offcanvas {
    background: var(--bg-white) !important;
    border-right: 1px solid rgba(99, 102, 241, 0.2) !important;
}

.page-home .offcanvas-header {
    background: rgba(99, 102, 241, 0.05);
    border-bottom: 1px solid rgba(99, 102, 241, 0.1) !important;
}

/* 메인 페이지 사이드바 호버 효과 */
.page-home .nav-link:hover {
    background: rgba(99, 102, 241, 0.08) !important;
    color: var(--home-primary) !important;
    border-left-color: var(--home-primary) !important;
}

.page-home .nav-link.active {
    background: rgba(99, 102, 241, 0.15) !important;
    color: var(--home-primary) !important;
    border-left-color: var(--home-primary) !important;
    font-weight: 600;
}

/* 메인 페이지 섹션 배경 - 화이트로 */
.page-home .section:nth-child(odd) {
    background: var(--bg-white);
}

.page-home .section:nth-child(even) {
    background: var(--bg-white);
}

/* 메인 페이지 카드 배경 - 화이트로 */
.page-home .card {
    background: var(--bg-white);
    border: 1px solid var(--border);
}

.page-home .card:hover {
    background: var(--bg-white);
    box-shadow: 0 8px 24px rgba(0,0,0,0.08);
    border: 1px solid rgba(99, 102, 241, 0.2);
}

/* 메인 페이지 가격 텍스트 */
.page-home .price-section .h5 {
    color: var(--home-primary) !important;
}

/* 메인 페이지 체크 아이콘 */
.page-home .bi-check {
    color: var(--home-primary) !important;
}

/* 메인 페이지 네비게이션 배지 */
.page-home .nav-badge.active {
    background: var(--home-primary);
    color: var(--bg-white);
}

.page-home .nav-badge:hover {
    background: var(--home-primary-soft);
    color: var(--home-primary);
}

/* 메인 페이지 헤더 로고 아이콘 */
.page-home .navbar-brand i {
    color: var(--home-primary) !important;
}

/* 메인 페이지 통계 숫자 */
.page-home .display-6 {
    color: var(--home-primary) !important;
}

/* 메인 페이지 별점 아이콘 */
.page-home .bi-star-fill {
    color: #FFC107 !important;
}

/* 홈페이지 특별 스타일 */
.page-home .hero-chat {
    max-width: 300px;
}

.page-home .hero-chat .card {
    border: none;
    box-shadow: 0 4px 12px rgba(99, 102, 241, 0.15);
}

/* 홈페이지 플랫폼 카드 높이 늘리기 */
.page-home .platform-card {
    min-height: 700px;
    max-height: 700px;
}

.page-home .platform-card .card-body {
    padding: 32px 24px;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.page-home .platform-card .card-text {
    flex-grow: 1;
    font-size: 0.95rem;
    line-height: 1.5;
    margin-bottom: 20px;
}

.page-home .platform-card .mt-auto {
    margin-top: auto !important;
}

/* 홈페이지 전용 서비스 카드 스타일 */
.page-home .service-card-home {
    border: 0.5px solid rgba(99, 102, 241, 0.15) !important;
}

.page-home .service-card-home .card-body {
    position: relative;
}

.page-home .service-card-home .service-number {
    font-size: 1.5rem;
    color: #6366F1;
    font-weight: bold;
}

.page-home .service-card-home .service-footer {
    background: rgba(99, 102, 241, 0.08);
    color: #6366F1;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 12px;
    border-radius: 0 0 6px 6px;
    font-weight: 500;
    text-align: center;
}

/* 홈페이지 섹션별 고유 스타일 */
.page-home .home-main-title {
    /* 메인 타이틀 섹션 전용 스타일 */
}

.page-home .home-core-services {
    /* 핵심 서비스 섹션 전용 스타일 */
}

.page-home .home-stats {
    /* 회사소개 섹션 전용 스타일 */
}

.page-home .home-service-intro {
    /* 상세안내 섹션 전용 스타일 */
}

.page-home .home-hero {
    /* 성공여정 섹션 전용 스타일 */
}

.page-home .home-platforms {
    /* 프로그램 섹션 전용 스타일 */
}

.page-home .home-testimonials {
    /* 고객후기 섹션 전용 스타일 */
}

.page-home .home-contact {
    /* 솔루션 문의 섹션 전용 스타일 */
}


/* 상세안내 섹션 서비스 카드 순차적 호버 애니메이션 */
.page-home .service-detail-card {
    transition: all 0.6s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
}

.page-home .service-detail-card:hover {
    transform: translateY(-15px) scale(1.03);
    z-index: 10;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15);
}

.page-home .service-detail-card-1 {
    animation: serviceDetailHover1 8s ease-in-out infinite;
}

.page-home .service-detail-card-2 {
    animation: serviceDetailHover2 8s ease-in-out infinite;
}

.page-home .service-detail-card-3 {
    animation: serviceDetailHover3 8s ease-in-out infinite;
}

@keyframes serviceDetailHover1 {
    0%, 25% { transform: translateY(0) scale(1); }
    5%, 20% { transform: translateY(-15px) scale(1.03); }
    25%, 100% { transform: translateY(0) scale(1); }
}

@keyframes serviceDetailHover2 {
    0%, 25% { transform: translateY(0) scale(1); }
    30%, 45% { transform: translateY(-15px) scale(1.03); }
    50%, 100% { transform: translateY(0) scale(1); }
}

@keyframes serviceDetailHover3 {
    0%, 50% { transform: translateY(0) scale(1); }
    55%, 70% { transform: translateY(-15px) scale(1.03); }
    75%, 100% { transform: translateY(0) scale(1); }
}
