@charset "utf-8";
/* ==================================================
   차광렬 글로벌연구소장 페이지 (PC)
   - 사이트 기본 CSS(html 16px / body 0.75em, Open Sans) 기준
   - rem 단위 → px 변환 (기존 62.5% 기준 1rem = 10px)
   - 기본 reset 미적용 환경이므로 .ky_wrap 내부에만 reset 스코프 적용
   - 배경 이미지는 시안 톤(오버레이)이 입혀진 상태로 export된 이미지 기준
================================================== */

html, body { overflow: auto !important; height: auto !important; }

/* 스코프 reset */
.ky_wrap { font-size: 16px; font-family: Pretendard, -apple-system, sans-serif; word-break: keep-all; color: #000; }
.ky_wrap *, .ky_wrap ::before, .ky_wrap ::after { box-sizing: border-box; margin: 0; padding: 0; }
.ky_wrap img { max-width: 100%; vertical-align: middle; }
.ky_wrap a { color: inherit; text-decoration: none; }
.ky_wrap em, .ky_wrap i { font-style: normal; }
.ky_wrap h1, .ky_wrap h2, .ky_wrap h3, .ky_wrap h4, .ky_wrap strong, .ky_wrap b { font-weight: 700; }

.ky_wrap .inner { width: 962px; margin: 0 auto; }
.ky_wrap .c_red { color: #F04326; }

/* 공통 : 섹션 타이틀 */
.ky_tit .num { display: block; font-size: 42px; font-weight: 700; line-height: 64px; color: #F04326;}
.ky_tit h3 { font-size: 42px; font-weight: 700; line-height: 64px; }
.ky_tit.c_wh .num, .ky_tit.c_wh h3 { color: #fff; }

/* 공통 : 본문 */
.ky_txt { font-size: 18px; line-height: 38px; }
.ky_txt + .ky_txt { margin-top: 43px; }
.ky_lead { font-size: 18px; font-weight: 500; line-height: 40px; color: #222; letter-spacing: -0.03em; }

/* 비주얼 */
.ky_visual { height: 700px; padding-top: 470px; background: #1f3e52 url('../images/kycha_visual.jpg') no-repeat center / cover; text-align: center; color: #fff; }
.ky_visual h2 { font-size: 36px; font-weight: 700; line-height: 54px; }
.ky_visual p { margin-top: 17px; font-size: 20px;  line-height: 38px; }

/* 01 */
.ky_sec01 { padding: 125px 0 180px; }
.ky_sec01 .ky_tit { margin-bottom: 30px; }
.ky_sec01 .ky_photo { height: 688px; margin: 65px 0; background: url('../images/kycha_sec01.jpg') no-repeat center / cover; }
.ky_sec01 .ky_txt.bt { margin-top: 80px; }

.ky_year { display: flex; flex-wrap: wrap; margin: 70px 0; border-top: 1px solid #ccc; }
.ky_year li { padding: 44px 30px; border-bottom: 1px solid #ccc; border-left: 1px solid #ccc; }
.ky_year li:nth-child(1), .ky_year li:nth-child(3) { border-left: 0; }
.ky_year li:nth-child(-n+2) { width: 50%; min-height: 162px; }
.ky_year li:nth-child(n+3) { width: calc(100% / 3); min-height: 184px; }
.ky_year strong { display: block; font-size: 32px; line-height:38px; color: #F04326; }
.ky_year p { margin-top: 7px; font-size: 16px; line-height: 24px; }

/* 02 */
.ky_sec02 .ky_tit { margin-bottom: 50px; }
.ky_sec02 .ky_top { padding-bottom: 80px; }
.ky_award_bx { padding: 505px 0 87px; background: url('../images/kycha_sec02_bg.jpg') no-repeat center / cover; }
.ky_award { display: flex; justify-content: space-between; }
.ky_award li { width: 220px; min-height: 280px; padding: 24px 20px; border-radius: 12px; background: #fff; }
.ky_award .logo { display: flex; justify-content: center; align-items: center; height: 120px; margin-bottom: 24px; }
/* .ky_award .logo img { max-height: 64px; } */
.ky_award .yr { display: block; font-size: 16px; line-height: 38px; font-weight: 700; color: #F04326; }
.ky_award p { font-size: 16px; line-height: 22px; }
.ky_award_txt { margin-top: 66px; text-align: center; font-size: 22px; font-weight: 600; line-height: 46px; color: #fff; }

/* 03 */
.ky_sec03 { padding: 160px 0 170px; }
.ky_sec03 .ky_tit { margin-bottom: 50px; }
.ky_dona { margin: 84px 0 100px; border-top: 1px solid #e5e5e5; }
.ky_dona li { display: flex; align-items: center; min-height: 133px; padding: 34px 0 34px 100px; border-bottom: 1px solid #e5e5e5; gap: 10px; }
.ky_dona li.lg { min-height: 165px; }
.ky_dona .info { display: flex; width: 506px; font-size: 15px; line-height: 1.6; letter-spacing: -0.03em; }
.ky_dona .info strong { flex-shrink: 0; width: 70px; font-size: 18px; line-height: 38px; font-weight: 700;}
.ky_dona .info p { font-size: 16px; line-height: 38px; color: #333; }
.ky_dona .info p em { font-weight: 700; color: #e9472a; }
.ky_dona li.full .info { width: auto; }
.ky_dona .amt { color: #e9472a; font-weight: 700; }
.ky_dona .amt b { display: block; font-size: 32px; line-height: 32px; }
.ky_dona .amt span { display: block; font-size: 20px; line-height: 32px; }

/* 04 */
.ky_sec04 { padding: 100px 0 153px; background: #844035 url('../images/kycha_sec04_bg.jpg') no-repeat center / cover; }
.ky_sec04 .ky_tit { margin-bottom: 50px; }
.ky_sec04 .ky_txt { color: #fff; }
.ky_count { display: flex; justify-content: space-between; margin-top: 200px; }
.ky_count li { display: flex; flex-direction: column; justify-content: center; align-items: center; width: 200px; height: 200px; border: 1px solid #fff; border-radius: 50%; color: #fff; }
.ky_count .val { display: flex; align-items: flex-end; font-weight: 700; line-height: 1; }
.ky_count .val b { font-size: 46px; letter-spacing: -0.02em; }
.ky_count .val em { margin: 0 0 4px 4px; font-size: 16px; }
.ky_count p { margin-top: 16px; font-size: 18px; font-weight: 600; }

/* 05 */
.ky_sec05 { padding: 180px 0 120px; }
.ky_sec05 .ky_tit { margin-bottom: 60px; }
.ky_dream { display: flex; align-items: center; height: 455px; margin-bottom: 70px; padding-left: 574px; background: #052c49 url('../images/kycha_sec05.jpg') no-repeat center / cover; }
.ky_dream p { font-size: 22px; font-weight: 600; line-height: 40px; color: #fff; letter-spacing: -0.04em; }

/* 인용 */
.ky_quote { display: flex; justify-content: center; align-items: center; height: 734px; background: #483330 url('../images/kycha_quote_bg.jpg') no-repeat center / cover; flex-direction: column; }
.ky_quote .quote_small {font-size: 24px; font-weight: 600; line-height: 38px; color: #fff; display: block;}
.ky_quote p { text-align: center; font-size: 36px; font-weight: 600; line-height: 64px; color: #fff;  }

/* 공통 모션 : motion_up (영역 모드 기본) */
.motion_up { opacity: 0; transform: translateY(40px); transition: transform 1s cubic-bezier(.22,1,.36,1), opacity 1s ease; }
.motion_up.is_on { opacity: 1; transform: translateY(0); }

/* 공통 모션 : motion_up (텍스트 모드) */
.motion_up.mu_line { opacity: 1; transform: none; transition: none; }
.mu_line .ln { display: block; overflow: hidden; padding: 0.05em 0; }
.mu_line .ln > span { display: block; opacity: 0; transform: translateY(100%); transition: transform 1s cubic-bezier(.22,1,.36,1), opacity 1s ease; }
.mu_line.is_on .ln > span { opacity: 1; transform: translateY(0); }

/* 모션 줄이기 설정 사용자 */
@media (prefers-reduced-motion: reduce) {
   .motion_up, .mu_line .ln > span { opacity: 1 !important; transform: none !important; transition: none !important; }
}
