/* ==========================================================================
   Hero 섹션 디자인 문제 긴급 수정
   ========================================================================== */

/* 그라데이션 텍스트 문제 해결 - 투명도 제거 */
.hero-title .highlight {
    /* 투명 그라데이션 대신 단색 적용 */
    background: none !important;
    background-clip: unset !important;
    -webkit-background-clip: unset !important;
    -webkit-text-fill-color: #FFD700 !important; /* 골드 색상 */
    color: #FFD700 !important;
    text-shadow: 0 4px 15px rgba(0, 0, 0, 0.8) !important;
    font-weight: 900 !important;
    padding: 0.1em 0.3em !important;
    background: rgba(0, 0, 0, 0.2) !important;
    border-radius: 8px !important;
    box-shadow: 0 4px 15px rgba(255, 215, 0, 0.3) !important;
}

.hero-title .highlight::before {
    display: none !important;
}

.hero-title .highlight::after {
    content: '';
    position: absolute;
    bottom: -4px;
    left: 50%;
    transform: translateX(-50%);
    width: 80%;
    height: 2px;
    background: #FFD700;
    border-radius: 1px;
    box-shadow: 0 2px 8px rgba(255, 215, 0, 0.5);
}

/* 통계 카드 텍스트 잘림 문제 해결 */
.stat-item {
    background: rgba(255, 255, 255, 0.98) !important; /* 더 불투명하게 */
    color: var(--text-primary) !important;
    padding: var(--space-4) var(--space-3) !important;
    border-radius: 16px !important;
    text-align: center !important;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.2) !important;
    backdrop-filter: blur(10px) !important;
    border: 1px solid rgba(255, 255, 255, 0.5) !important; /* 테두리 더 진하게 */
    transition: all 0.3s ease !important;
    position: relative !important;
    overflow: visible !important;
    min-height: 130px !important; /* 높이 약간 증가 */
    height: auto !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-evenly !important; /* 균등 분배 */
    align-items: center !important;
    gap: 8px !important; /* 요소 간 간격 */
}

.stat-item::before {
    display: none !important; /* 애니메이션 효과 제거 */
}

.stat-item:hover {
    transform: translateY(-4px) !important; /* 호버 효과 줄임 */
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.25) !important;
}

/* 통계 숫자 크기 및 색상 조정 */
.stat-number {
    display: block !important;
    font-size: clamp(2rem, 3vw, 2.8rem) !important; /* 크기 줄임 */
    font-weight: 900 !important;
    color: #FF6B35 !important; /* 단순한 주황색 */
    background: none !important; /* 그라데이션 제거 */
    background-clip: unset !important;
    -webkit-background-clip: unset !important;
    -webkit-text-fill-color: unset !important;
    margin-bottom: var(--space-2) !important;
    line-height: 1.1 !important;
    text-shadow: none !important;
}

.stat-number::after {
    content: '';
    position: absolute;
    bottom: 50px; /* 위치 조정 */
    left: 50%;
    transform: translateX(-50%);
    width: 40px;
    height: 2px;
    background: #FF6B35;
    border-radius: 1px;
}

/* 통계 라벨 표시 확실히 */
.stat-label {
    color: #333333 !important; /* 진한 검은색으로 변경 */
    font-weight: 700 !important; /* 굵게 */
    font-size: 0.85rem !important;
    text-shadow: none !important;
    letter-spacing: 0.5px !important;
    opacity: 1 !important;
    margin-top: var(--space-2) !important;
    line-height: 1.3 !important;
    text-align: center !important;
    width: 100% !important;
    white-space: nowrap !important;
    overflow: visible !important;
    display: block !important;
    flex-shrink: 0 !important;
    background: rgba(255, 255, 255, 0.9) !important; /* 배경 추가 */
    padding: 2px 6px !important;
    border-radius: 4px !important;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1) !important;
}

/* 통계 그리드 크기 조정 */
.hero-stats {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)) !important; /* 더 작게 */
    gap: var(--space-3) !important; /* 간격 더 줄임 */
    margin: var(--space-6) auto !important; /* 마진 줄임 */
    max-width: 650px !important; /* 너비 더 줄임 */
    padding: 0 var(--space-3) !important;
    align-items: stretch !important; /* 균등한 높이 */
}

/* 버튼 크기 및 배치 수정 */
.hero-cta {
    display: flex !important;
    gap: var(--space-3) !important; /* 간격 줄임 */
    justify-content: center !important;
    flex-wrap: wrap !important;
    margin-top: var(--space-8) !important;
}

.hero .btn {
    padding: var(--space-3) var(--space-6) !important; /* 패딩 줄임 */
    font-size: var(--text-base) !important; /* 폰트 크기 줄임 */
    font-weight: 700 !important;
    border-radius: 30px !important; /* 모서리 줄임 */
    transition: all 0.3s ease !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2) !important;
    min-width: 180px !important; /* 최소 너비 줄임 */
    max-width: 250px !important; /* 최대 너비 제한 */
    backdrop-filter: blur(10px) !important;
}

.hero .btn:hover {
    transform: translateY(-2px) !important; /* 호버 효과 줄임 */
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.25) !important;
}

/* Hero 제목 크기 조정 */
.hero-title {
    font-size: clamp(2.2rem, 4vw, 3.5rem) !important; /* 크기 조정 */
    font-weight: 900 !important;
    line-height: 1.2 !important;
    color: white !important;
    text-shadow: 0 3px 15px rgba(0, 0, 0, 0.7) !important;
    margin-bottom: var(--space-4) !important;
}

/* Hero 부제목 크기 조정 */
.hero-subtitle {
    font-size: clamp(0.9rem, 2vw, 1.1rem) !important; /* 크기 조정 */
    font-weight: 600 !important;
    color: white !important;
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.6) !important;
    background: rgba(255, 255, 255, 0.15) !important;
    backdrop-filter: blur(15px) !important;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
    padding: 0.8rem 1.5rem !important; /* 패딩 조정 */
    border-radius: 25px !important; /* 모서리 줄임 */
    margin: var(--space-4) auto !important;
    display: inline-block !important;
    max-width: 85% !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2) !important;
}

/* 모바일 최적화 */
@media (max-width: 768px) {
    .hero-stats {
        grid-template-columns: 1fr !important;
        gap: var(--space-3) !important;
        margin: var(--space-6) auto !important;
    }
    
    .stat-item {
        padding: var(--space-4) var(--space-3) !important;
        min-height: 120px !important;
    }
    
    .stat-number {
        font-size: 2.2rem !important;
    }
    
    .stat-label {
        font-size: 0.8rem !important;
    }
    
    .hero-cta {
        flex-direction: column !important;
        align-items: center !important;
        gap: var(--space-2) !important;
    }
    
    .hero .btn {
        width: 90% !important;
        max-width: 280px !important;
        padding: var(--space-3) var(--space-4) !important;
    }
    
    .hero-title {
        font-size: 2.2rem !important;
    }
    
    .hero-subtitle {
        font-size: 0.9rem !important;
        padding: 0.6rem 1.2rem !important;
    }
}

/* 태블릿 최적화 */
@media (min-width: 769px) and (max-width: 1024px) {
    .hero-stats {
        grid-template-columns: repeat(3, 1fr) !important;
        max-width: 600px !important;
        gap: var(--space-3) !important;
    }
    
    .stat-item {
        padding: var(--space-5) var(--space-3) !important;
        min-height: 130px !important;
    }
    
    .stat-number {
        font-size: 2.4rem !important;
    }
}

/* 안전 장치 - 모든 텍스트가 보이도록 */
.hero-content * {
    visibility: visible !important;
    opacity: 1 !important;
}

/* SCROLL 텍스트 완전 제거 - 모든 가능한 선택자 */
.scroll-indicator,
.scroll-text,
.scroll,
[class*="scroll"],
*[class*="scroll"],
.hero *:contains("SCROLL"),
.hero *:contains("scroll") {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    position: absolute !important;
    left: -9999px !important;
}

/* 가상 요소로 생성되는 스크롤 텍스트 제거 */
*::before,
*::after {
    content: none !important;
}

.hero::before,
.hero::after,
.hero-section::before,
.hero-section::after,
.hero-content::before,
.hero-content::after,
.hero-cta::before,
.hero-cta::after {
    content: none !important;
    display: none !important;
}

/* 추가 스크롤 관련 요소 숨김 */
body *:contains("SCROLL") {
    display: none !important;
}

/* 추가 통계 카드 안정성 */
.stat-item .stat-number,
.stat-item .stat-label {
    position: relative !important;
    z-index: 10 !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* 통계 숫자와 라벨 색상 강제 적용 */
.stat-item .stat-number {
    color: #FF6B35 !important;
    -webkit-text-fill-color: #FF6B35 !important;
}

.stat-item .stat-label {
    color: #333333 !important;
    -webkit-text-fill-color: #333333 !important;
}

/* 모든 Hero 섹션 내 텍스트 색상 강제 */
.hero .stat-label,
.hero-stats .stat-label,
.stat-item .stat-label {
    color: #333333 !important;
    -webkit-text-fill-color: #333333 !important;
    background-color: rgba(255, 255, 255, 0.9) !important;
}

/* Hero 제목 위쪽 여백 확보 */
.hero-title {
    margin-top: var(--space-8) !important; /* 위쪽 여백 추가 */
    padding-top: var(--space-4) !important;
}

/* Hero 섹션 전체 패딩 조정 */
.hero,
.hero-section {
    padding-top: 80px !important; /* 헤더 아래 충분한 공간 */
    padding-bottom: var(--space-12) !important;
    min-height: 100vh !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.hero-content {
    width: 100% !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
    text-align: center !important;
    position: relative !important;
    z-index: 10 !important;
}

/* 그라데이션 배경 복구 (선택이유 섹션용) - 필요시 */
.features.section-lg {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%) !important;
    color: white !important;
}

.features .section-title .subtitle-en {
    color: rgba(255, 255, 255, 0.8) !important;
}

.features .section-title .title-ja {
    color: white !important;
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.3) !important;
}