@import url("common.css");


/* Visual */
#visual.jarallax { position:relative; width:100%; height:var(--vh); z-index:0; overflow:hidden; }
#visual .jarallax-img { position:absolute; top:0; left:0; z-index:-1; width:100%; height:100%; object-fit:cover; }
#visual [id^="jarallax-container"] iframe, #visual [id^="jarallax-container"] video { opacity:0; transition:opacity 0.6s ease; }
#visual.video-on [id^="jarallax-container"] iframe, #visual.video-on [id^="jarallax-container"] video { opacity:1; }
#visual::after { content:''; position:absolute; inset:0; z-index:1; background:linear-gradient(180deg, rgba(0,0,0,0.6) 0%, rgba(0,0,0,0.2) 20%, rgba(0,0,0,0.2) 80%, rgba(0,0,0,0.6) 100%); pointer-events:none; }
#visual .scr { position:absolute; right:37px; bottom:40px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px; z-index:5; color:var(--white); opacity:0.5; cursor:pointer; transition:opacity 0.3s linear; }
#visual .scr:hover { opacity:1; }
#visual .scr .eng { display:flex; align-items:center; justify-content:center; width:26px; height:100px; writing-mode:vertical-lr; transform:rotate(180deg); font-size:0.7778rem; font-weight:700; line-height:26px; letter-spacing:0; white-space:nowrap; }
#visual .scr::after { content:'keyboard_double_arrow_down'; width:26px; height:26px; font-family:var(--icon); font-size:26px; line-height:26px; font-weight:normal; font-style:normal; display:block; text-align:center; -webkit-font-feature-settings:'liga'; font-feature-settings:'liga'; animation:scrBounce 1.6s ease-in-out infinite; }
@keyframes scrBounce { 0%,100%{ transform:translateY(0); } 50%{ transform:translateY(6px); } }
#visual .v_popup { position:absolute; right:100px; bottom:40px; width:350px; z-index:10; transition:width 0.55s cubic-bezier(0.22, 1, 0.36, 1); }
#visual .v_popup .pop_ctrl { display:flex; align-items:center; justify-content:flex-end; margin-bottom:10px; gap:0 15px; transition:opacity 0.3s ease, transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), margin 0.45s cubic-bezier(0.22, 1, 0.36, 1), max-height 0.45s cubic-bezier(0.22, 1, 0.36, 1); max-height:40px; overflow:hidden; }
#visual .v_popup .pop_ctrl button { display:inline-flex; align-items:center; gap:3px; background:none; border:0; color:var(--white); padding:0; margin:0; font-weight:600; opacity:0.6; transition:all 0.3s linear; cursor:pointer; }
#visual .v_popup .pop_ctrl button:hover { opacity:1; transition:all 0.3s linear; }
#visual .v_popup .pop_ctrl button::after { content:'\f508'; font-family:var(--icon); font-size:24px; line-height:1; font-weight:normal; font-style:normal; display:block; font-weight:400; }
#visual .v_popup .pop_ctrl button.btn_close::after { content:'\e5c5'; }
#visual .v_popup .pop_ctrl .btn_close { display:inline-flex; align-items:center; gap:2px; }
#visual .v_popup .pop_slide { position:relative; width:350px; overflow: hidden; aspect-ratio: 1 / 1; border-radius:var(--borderR30); overflow:hidden; background:linear-gradient(222deg, var(--sub) 15%, var(--main) 91%); transform-origin:bottom right; transition:width 0.55s cubic-bezier(0.22, 1, 0.36, 1), height 0.55s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.35s ease, border-radius 0.5s cubic-bezier(0.22, 1, 0.36, 1), transform 0.55s cubic-bezier(0.22, 1, 0.36, 1); }
#visual .v_popup .pop_slide .swiper-slide a { position:relative; display:block; width:100%; height:100%; box-sizing:border-box; color:var(--white); }
#visual .v_popup .pop_slide .date { display:inline-flex; align-items:center; justify-content:center; height:32px; padding:0 14px; background:var(--white); border-radius:var(--borderR100); color:var(--main); font-size:0.7778rem; font-weight:600; font-family:var(--eng); }
#visual .v_popup .pop_slide .fs30 { display:block; margin-top:16px; font-weight:700; color:var(--white); }
#visual .v_popup .pop_slide figure { position:absolute; left:0; bottom:0; width:100%; overflow: hidden; aspect-ratio: 1 / 1;}
#visual .v_popup .pop_slide figure img { width:100%; height:100%; object-fit:cover; object-position: center; display:block; }
#visual .v_popup .pop_nav { position:absolute; right:20px; bottom:20px; display:flex; align-items:center; justify-content:flex-end; gap:4px; z-index:5; transition:opacity 0.25s ease; }
#visual .v_popup .pop_slide.single .pop_nav { display:none; }
#visual .v_popup .pop_nav button { display:flex; align-items:center; justify-content:center; width:40px; height:40px; padding:0; border:1px solid rgba(255,255,255,0.2); border-radius:50px; background:rgba(0,0,0,0.18); backdrop-filter:blur(5px); -webkit-backdrop-filter:blur(5px); color:var(--white); cursor:pointer; font-family:var(--icon); -webkit-font-feature-settings:'liga'; font-feature-settings:'liga'; transition:background-color 0.3s linear, border-color 0.3s linear, color 0.3s linear; }
#visual .v_popup .pop_nav .pop_prev { z-index:1; }
#visual .v_popup .pop_nav .pop_next { position:relative; z-index:2; }
#visual .v_popup .pop_nav button:hover { background:var(--white); border-color:var(--white); color:var(--main); }
#visual .v_popup .pop_nav button::before { font-family:inherit; font-size:16px; line-height:1; font-weight:normal; font-style:normal; display:block; width:16px; height:16px; text-align:center; -webkit-font-feature-settings:'liga'; font-feature-settings:'liga'; }
#visual .v_popup .pop_nav .pop_prev::before { content:'arrow_back_ios_new'; }
#visual .v_popup .pop_nav .pop_next::before { content:'arrow_forward_ios'; }
#visual .v_popup .btn_pop { position:absolute; right:0; bottom:0; z-index:3; display:flex; align-items:center; justify-content:center; width:80px; height:80px; padding:0; border:2px solid var(--main); border-radius:5px; background:var(--main); color:var(--white); font-size:0.7778rem; font-weight:800; line-height:1.857; box-sizing:border-box; overflow:hidden; cursor:pointer; opacity:0; visibility:hidden; pointer-events:none; transform:scale(0.55); transition:opacity 0.3s ease, transform 0.45s cubic-bezier(0.22, 1, 0.36, 1), visibility 0.45s, color 0.45s ease, border-color 0.3s linear; }
#visual .v_popup .btn_pop span { position:relative; z-index:1; }
#visual .v_popup .btn_pop::before { content:''; position:absolute; left:0; bottom:0; width:16px; height:16px; border-radius:50%; background:var(--white); transform:translate(-50%, 50%) scale(0); transform-origin:center center; transition:transform 0.75s cubic-bezier(0.22, 1, 0.36, 1); z-index:0; pointer-events:none; }
#visual .v_popup .btn_pop:hover { color:var(--main); }
#visual .v_popup .btn_pop:hover::before { transform:translate(-50%, 50%) scale(16); }
#visual .v_popup.close { width:80px; }
#visual .v_popup.close .pop_ctrl { opacity:0; transform:translateY(12px); max-height:0; margin-bottom:0; pointer-events:none; }
#visual .v_popup.close .pop_slide { width:80px; height:80px; opacity:0; border-radius:5px; transform:scale(0.92); pointer-events:none; }
#visual .v_popup.close .pop_nav { opacity:0; pointer-events:none; }
#visual .v_popup.close .btn_pop { opacity:1; visibility:visible; pointer-events:auto; transform:scale(1); transition-delay:0.18s, 0.18s, 0.18s, 0s, 0s; }
#visual .v_popup.hiding { opacity:0; transform:translateY(18px) scale(0.92); pointer-events:none; transition:opacity 0.4s ease, transform 0.45s cubic-bezier(0.22, 1, 0.36, 1); }
#visual .v_popup.hide { display:none; }

/* Section Title */
.tit_wrap { display:flex; flex-direction:column; align-items:center; gap:14px; margin-bottom:60px; }
.tit_wrap .fs18 { font-family:var(--eng); font-weight:600; letter-spacing:0; color:var(--main); }
.tit_wrap .fs64 { font-weight:700; }

/* News */
#news { position:relative; overflow:hidden; }
#news .deco { position:absolute; left:63.13%; top:-43.81%; pointer-events:none; z-index:1; filter:brightness(0); max-width: 925px; width: 100%;}
#news .basic_in { position:relative; z-index:2; }
#news .news_box { position:relative; width:100%; max-width:1530px; }
#news .news_con { position:relative; z-index:1; display:flex; align-items:stretch; width:100%; }
#news .news_img { position:relative; width:50%; aspect-ratio:765 / 498; align-self:flex-start; }
#news .news_img .news_bg { position:absolute; left:calc(-50vw + 100%); top:-80px; bottom:-80px; width:375px; background:var(--main); border-radius:0 var(--borderR30) var(--borderR30) 0; z-index:0; pointer-events:none; }
#news .news_img .swiper { position:relative; z-index:1; width:100%; height:100%; overflow:hidden; border-radius:var(--borderR30); opacity:0; transform:translateX(-100px); transition:opacity 0.85s cubic-bezier(0.22, 1, 0.36, 1), transform 0.85s cubic-bezier(0.22, 1, 0.36, 1); }
#news .news_img.aos-animate .swiper { opacity:1; transform:translateX(0); transition-delay:0.45s; }
#news .news_img .swiper-slide { height:100%; }
#news .news_img figure { display:block; overflow:hidden; width:100%; height:100%; }
#news .news_img figure img { width:100%; height:100%; object-fit:cover; display:block; }
#news .news_txt { width:50%; height:auto; }
#news .news_txt .swiper-slide { display:flex; flex-direction:column; justify-content:space-between; height:auto; min-height:100%; padding:70px 100px; box-sizing:border-box; }
#news .news_txt .in { display:flex; flex-direction:column; gap:20px; padding-bottom:50px; }
#news .news_txt .date { display:inline-flex; align-items:center; gap:3px; color:var(--light); font-size:0.8889rem; line-height:1.75; font-family:var(--eng); opacity:0; transform:translateY(15px); transition:all 0.3s linear; }
#news .news_txt .date::before { content:'calendar_month'; font-family:var(--icon); font-size:20px; line-height:1; font-weight:normal; font-style:normal; display:block; color:var(--light); -webkit-font-feature-settings:'liga'; font-feature-settings:'liga'; }
#news .news_txt .fs30 { font-weight:700; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; text-overflow:ellipsis; opacity:0; transform:translateY(15px); transition:all 0.3s linear; }
#news .news_txt .fs18 { color:var(--basic); display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; text-overflow:ellipsis; opacity:0; transform:translateY(15px); transition:all 0.3s linear; }
#news .news_txt .txt_on .date { opacity:1; transform:translateY(0); transition-delay:0.12s; }
#news .news_txt .txt_on .fs30 { opacity:1; transform:translateY(0); transition-delay:0.24s; }
#news .news_txt .txt_on .fs18 { opacity:1; transform:translateY(0); transition-delay:0.36s; }
#news .ctrl { position:absolute; left:calc(50% + 100px); bottom:70px; display:flex; align-items:center; justify-content:flex-start; gap:10px; z-index:5; }
#news .ctrl .count { display:flex; align-items:center; justify-content:center; gap:6px; width:80px; height:38px; box-sizing:border-box; background:var(--grayBg); border-radius:var(--borderR100); font-family:var(--eng); }
#news .ctrl .count b { font-size:0.8889rem; font-weight:800; letter-spacing:0.06em; text-transform:uppercase; color:var(--black); line-height:1.75; display:block; }
#news .ctrl .count i { font-style:normal; font-size:0.6667rem; line-height:2; opacity:0.5; display:block; }
#news .ctrl .count span { font-size:0.8889rem; line-height:1.75; opacity:0.5; display:block; }
#news .ctrl .arrow { display:flex; align-items:center; gap:4px; }
#news .ctrl .arrow button { display:flex; align-items:center; justify-content:center; width:38px; height:38px; background:var(--white); border:1px solid var(--border); border-radius:50%; cursor:pointer; color:var(--black); backdrop-filter:blur(1px); font-family:var(--icon); -webkit-font-feature-settings:'liga'; font-feature-settings:'liga'; }
#news .ctrl .arrow button::before { font-family:inherit; font-size:22px; line-height:1; font-weight:normal; font-style:normal; display:block; -webkit-font-feature-settings:'liga'; font-feature-settings:'liga'; }
#news .ctrl .arrow .news_prev::before { content:'chevron_left'; }
#news .ctrl .arrow .news_next::before { content:'chevron_right'; }
#news .ctrl .arrow .news_pause { font-variation-settings:'FILL' 1, 'wght' 500, 'GRAD' 0, 'opsz' 48; }
#news .ctrl .arrow .news_pause::before { content:'pause'; font-size:18px; font-variation-settings:'FILL' 1, 'wght' 500, 'GRAD' 0, 'opsz' 48; }
#news .ctrl .arrow .news_pause.play::before { content:'play_arrow'; }

#news .news_img::before { content:''; position:absolute; left:calc(-50vw + 100%); top:-80px; bottom:-80px; width:0; background:var(--main); border-radius:0 var(--borderR30) var(--borderR30) 0; z-index:0; pointer-events:none; transition:width 0.9s cubic-bezier(0.22, 1, 0.36, 1); }
#news .news_img.aos-animate::before { width:375px; }
[data-aos="news-bg-slide"] { opacity:1; transform:none; }
[data-aos="news-fade-in"] { opacity:0; transform:none; transition-property:opacity; }
[data-aos="news-fade-in"].aos-animate { opacity:1; }
[data-aos="news-deco-down"] { opacity:0; transform:translate(150px, -150px); transition-property:opacity, transform; }
#news .deco[data-aos="news-deco-down"].aos-animate { opacity:0.03; transform:translate(0, 0); }

/* Academics */
#aca { position:relative; background:var(--grayBg); overflow:hidden; }
#aca .bg { position:absolute; inset:0; pointer-events:none; overflow:hidden; z-index:0; }
#aca .bg .o { position:absolute; display:block; opacity:0; transform:scale(0.7); transition:opacity 2.4s ease, transform 2.6s cubic-bezier(0.22, 1, 0.36, 1); }
#aca .bg .o svg { display:block; width:100%; height:100%; transform-origin:center center; }
#aca .bg .o1 { left:12.55%; top:-19%; width:55.8%; aspect-ratio:1; transition-delay:0s; }
#aca .bg .o2 { left:35%; top:25%; width:82.3%; aspect-ratio:1; transition-delay:0.25s; }
#aca .bg .o3 { left:58.3%; top:-30%; width:55.2%; aspect-ratio:1; transition-delay:0.45s; }
#aca .bg .o4 { left:-9.5%; top:17.6%; width:54.6%; aspect-ratio:1; transition-delay:0.15s; }
#aca.on .bg .o { opacity:1; transform:scale(1); }
#aca.on .bg .o1 svg { animation:acaSpin 90s linear infinite; }
#aca.on .bg .o2 svg { animation:acaSpin 120s linear infinite reverse; }
#aca.on .bg .o3 svg { animation:acaSpin 100s linear infinite; }
#aca.on .bg .o4 svg { animation:acaSpin 70s linear infinite; }
@keyframes acaSpin { from { transform:rotate(0deg); } to { transform:rotate(360deg); } }
#aca .tit_wrap { position:relative; z-index:2; }
#aca .aca_slide_wrap { position:relative; z-index:2; overflow:visible; }
#aca .aca_slide { overflow:visible !important; }
#aca .aca_slide .swiper-wrapper { align-items:stretch; }
#aca .aca_slide .swiper-slide { overflow: hidden; aspect-ratio: 490 / 570; flex-shrink:0; }
#aca .aca_slide a { position:relative; display:flex; flex-direction:column; gap:14px; width:100%; height:100%; padding:50px; box-sizing:border-box; border-radius:var(--borderR30); overflow:hidden; color:var(--white); background:var(--bk000); transition:padding 0.45s ease; }
#aca .aca_slide figure { position:absolute; inset:0; z-index:0; }
#aca .aca_slide figure img { width:100%; height:100%; object-fit:cover; display:block; opacity:0.8; transition:transform 0.7s ease; }
#aca .aca_slide a::before { content:''; position:absolute; inset:0; background:linear-gradient(180deg, rgba(0,0,0,0.3) 0%, rgba(0,0,0,0) 50%, rgba(0,0,0,0.3) 100%); z-index:1; transition:opacity 0.45s ease; }
#aca .aca_slide a::after { content:''; position:absolute; inset:0; background:var(--main); opacity:0; z-index:2; transition:opacity 0.45s ease; }
#aca .aca_slide .fs40 { position:relative; z-index:3; font-weight:700; color:var(--white); }
#aca .aca_slide .fs18 { position:relative; z-index:3; margin:0; color:var(--basicW); opacity:0; transform:translateY(12px); transition:opacity 0.45s ease, transform 0.45s ease; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
#aca .aca_slide .go { position:absolute; left:50px; right:50px; bottom:50px; z-index:3; display:flex; align-items:center; justify-content:space-between; height:54px; padding:0 20px; box-sizing:border-box; border:1px solid rgba(255,255,255,0.3); border-radius:var(--borderR100); background:rgba(255,255,255,0.1); backdrop-filter:blur(12.5px); font-size:1rem; font-weight:600; line-height:1.666; letter-spacing:var(--letter-spacing-default); overflow:hidden; color:var(--white); transition:color 0.45s ease, border-color 0.45s ease, background 0.45s ease; }
#aca .aca_slide .go::before { content:''; position:absolute; left:0; top:0; width:0; height:100%; background:var(--white); transition:width 0.45s ease; z-index:-1; }
#aca .aca_slide .go::after { content:'add'; position:relative; font-family:var(--icon); font-size:22px; line-height:1; font-weight:normal; font-style:normal; display:block; -webkit-font-feature-settings:'liga'; font-feature-settings:'liga'; transition:transform 0.45s ease; }
#aca .aca_slide a:hover { padding:65px 50px 50px; }
#aca .aca_slide a:hover figure img { transform:scale(1.06); }
#aca .aca_slide a:hover::before { opacity:0; }
#aca .aca_slide a:hover::after { opacity:0.8; }
#aca .aca_slide a:hover .fs18 { opacity:1; transform:translateY(0); }
#aca .aca_slide a:hover .go { border-color:transparent; background:transparent; color:var(--main); }
#aca .aca_slide a:hover .go::before { width:100%; }
#aca .aca_slide a:hover .go::after { transform:rotate(180deg); }
#aca .ctrl { display:flex; align-items:center; justify-content:center; gap:4px; margin-top:40px; }
#aca .ctrl button { display:flex; align-items:center; justify-content:center; width:50px; height:50px; background:var(--white); border:1px solid var(--border); border-radius:50%; cursor:pointer; color:var(--black); backdrop-filter:blur(1px); transition:opacity 0.3s ease; font-family:var(--icon); -webkit-font-feature-settings:'liga'; font-feature-settings:'liga'; }
#aca .ctrl button::before { font-family:inherit; font-size:18px; line-height:1; font-weight:normal; font-style:normal; display:block; -webkit-font-feature-settings:'liga'; font-feature-settings:'liga'; color:var(--black); }
#aca .ctrl .aca_prev::before { content:'chevron_left'; font-size:28px; }
#aca .ctrl .aca_next::before { content:'chevron_right'; font-size:28px; }
#aca .ctrl .aca_pause { font-variation-settings:'FILL' 1, 'wght' 400, 'GRAD' 0, 'opsz' 48; }
#aca .ctrl .aca_pause::before { content:'pause'; font-size:24px; font-variation-settings:'FILL' 1, 'wght' 500, 'GRAD' 0, 'opsz' 48; }
#aca .ctrl .aca_pause.play::before { content:'play_arrow'; }

/* Board */
#board .board_box { display:flex; align-items:stretch; gap:30px; }
#board .notice, #board .schedule { display:flex; flex-direction:column; width:calc(50% - 15px); padding:50px; box-sizing:border-box; border:1px solid var(--border); border-radius:var(--borderR30); background:var(--white); }
#board .tit { display:flex; align-items:center; justify-content:space-between; flex-wrap: wrap; margin-bottom:30px; gap:10px; }
#board .tit .fs36 { font-weight:700; line-height:1.333; }
#board .tit .cate { width:auto; max-width:100%; min-width:0; overflow:hidden; }
#board .notice .tit .cate-wrap { flex:1; min-width:0; display:flex; align-items:center; gap:2px; justify-content:flex-end;}
#board .tit .cate .swiper-wrapper { align-items:center; }
#board .tit .cate .swiper-slide { width:auto; height:auto; }
#board .tit .cate button { display:inline-flex; align-items:center; justify-content:center; padding:3px 20px; border:0; border-radius:500px; background:var(--grayBg); color:var(--light); font-size:0.8889rem; font-weight:600; line-height:1.75; letter-spacing:var(--letter-spacing-default); cursor:pointer; font-family:var(--kor); border:2px solid var(--grayBg); box-sizing:border-box; transition:all 0.3s linear; white-space:nowrap; }
#board .tit .cate button:hover { color:var(--main); border-color:var(--main); background:var(--white); transition:all 0.3s linear; }
#board .tit .cate button.on { background:var(--main); color:var(--white); border-color:var(--main); transition:all 0.3s linear; }
#board .tit .more { display:flex; align-items:center; justify-content:center; width:38px; height:38px; background:var(--black); border-radius:var(--borderR100); color:var(--white); flex-shrink:0; font-family:var(--icon); -webkit-font-feature-settings:'liga'; font-feature-settings:'liga'; transition:all 0.3s linear; }
#board .tit .more::before { content:'add'; font-size:20px; line-height:1; font-weight:normal; font-style:normal; display:block; -webkit-font-feature-settings:'liga'; font-feature-settings:'liga'; }
#board .tit .more:hover { background:var(--main); color:var(--white); transition:all 0.3s linear; }
#board .tit .more:hover::before { transform:rotate(180deg); transition:all 0.3s linear; }
#board .notice ul { display:flex; flex-direction:column; }
#board .notice ul li + li { border-top:1px solid var(--border); }
#board .notice ul li { padding:0; margin:0; border-bottom:0; }
#board .notice ul li a { display:flex; flex-direction:column; gap:5px; padding:18px 0; box-sizing:border-box; }
#board .notice ul li:first-of-type a { padding-top:0; }
#board .notice .fs20 { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; line-height:1.6; transition:color 0.3s linear; }
#board .notice ul li a:hover .fs20 { color:var(--main); }
#board .notice .n { display:inline-flex; align-items:center; justify-content:center; width:20px; height:20px; margin-left:6px; background:var(--sub); border-radius:5px; color:var(--white); font-size:0.6667rem; font-weight:700; font-family:var(--eng); font-style:normal; vertical-align:middle; line-height:1; }
#board .notice .meta { display:flex; align-items:center; gap:10px; }
#board .notice .meta .point { display:inline-flex; align-items:center; gap:10px; color:var(--main); font-size:0.8889rem; font-weight:600; line-height:1.75; }
#board .notice .meta .point::after { content:''; display:block; width:1px; height:14px; background:var(--border); flex-shrink:0; }
#board .notice .meta .date { display:inline-flex; align-items:center; gap:3px; color:var(--light); font-size:0.8889rem; line-height:1.75; font-family:var(--eng); }
#board .notice .meta .date::before { content:'calendar_month'; font-family:var(--icon); font-size:20px; line-height:1; font-weight:normal; font-style:normal; display:block; color:var(--light); -webkit-font-feature-settings:'liga'; font-feature-settings:'liga'; }
#board .schedule .month { display:flex; align-items:center; justify-content:space-between; padding:10px 0; border-top:2px solid var(--main); border-bottom:1px solid var(--border); margin-bottom:16px; }
#board .schedule .month button { position:relative; z-index:2; display:flex; align-items:center; justify-content:center; width:30px; height:30px; background:none; border:0; cursor:pointer; color:var(--black); font-family:var(--icon); -webkit-font-feature-settings:'liga'; font-feature-settings:'liga'; padding:0; opacity:0.45; transition:opacity 0.3s linear, color 0.3s linear; }
#board .schedule .month button:hover { opacity:1; color:var(--main); }
#board .schedule .month button::before { font-family:inherit; font-size:30px; line-height:1; font-weight:normal; font-style:normal; display:block; -webkit-font-feature-settings:'liga'; font-feature-settings:'liga'; }
#board .schedule .month .sch_prev::before { content:'chevron_left'; }
#board .schedule .month .sch_next::before { content:'chevron_right'; }
#board .schedule .month .fs30 { font-weight:700; letter-spacing:0; line-height:1.4; color:var(--main); }
#board .schedule ul { flex:1; max-height:290px; overflow-y:auto; padding-right:10px; }
#board .schedule ul::-webkit-scrollbar { width:4px; }
#board .schedule ul::-webkit-scrollbar-track { background:rgba(91,67,51,0.15); border-radius:50px; }
#board .schedule ul::-webkit-scrollbar-thumb { background:var(--sub3); border-radius:50px; }
#board .schedule ul li { display:flex; align-items:flex-start; margin:0 0 0 -8px; padding:6px 8px; width:calc(100% + 8px); box-sizing:border-box; border-radius:8px; transition:background-color 0.3s linear; }
#board .schedule ul li:hover { background:var(--grayBg); }
#board .schedule ul li .eng { flex:0 0 135px; padding-right:10px; box-sizing:border-box; font-size:1rem; line-height:1.666; color:var(--black); transition:color 0.3s linear; }
#board .schedule ul li:hover .eng { color:var(--main); }
#board .schedule ul li p { flex:1; font-size:1rem; line-height:1.666; color:var(--basic); letter-spacing:-4%; transition:color 0.3s linear; }
#board .schedule ul li:hover p { color:var(--black); }
#board .schedule ul li p i { display:inline-block; width:1px; height:14px; margin:0 10px; background:var(--border); vertical-align:middle; }
#board .schedule ul li.empty { justify-content:center; }
#board .schedule ul li.empty:hover { background:none; }
#board .schedule ul li.empty p { text-align:center; color:var(--light); }

/* Numbers */
#numbers { position:relative; overflow:hidden; background:var(--bk000); }
#numbers .bg { position:absolute; inset:0;     pointer-events: none;}
#numbers .bg img { width:100%; height:100%; object-fit:cover; object-position:center bottom; display:block;}
#numbers .inner { position:relative; z-index:2; }
#numbers .tit_wrap .fs18 { color:var(--sub); }
#numbers .tit_wrap .fs64 { color:var(--white); }
#numbers .num_slide { width:100%; }
#numbers .num_slide ul { display:flex; align-items:stretch; }
#numbers .num_slide li { flex:1; display:flex; flex-direction:column; align-items:center; text-align:center; }
#numbers .ico { display:flex; align-items:center; justify-content:center; width:150px; height:150px; border-radius:50%; background:rgba(255,255,255,0.1); border-top:1px solid rgba(255,255,255,0.2); border-bottom:1px solid rgba(255,255,255,0.2); backdrop-filter:blur(15px); box-sizing:border-box; margin:0 0 30px; }
#numbers .ico img { display:block; }
#numbers .num { display:flex; align-items:flex-end; gap:3px; margin:4px 0 0; }
#numbers .num.plus{align-items: flex-start;}
#numbers .num strong { font-size:3rem; font-weight:700; line-height:1.222; color:var(--sub); }
#numbers .num span { font-size:1.933rem; font-weight:700; line-height:120%; color:var(--white); }
#numbers .num em { font-style:normal; font-size:1.2222rem; line-height:1.545; letter-spacing:var(--letter-spacing-heading); color:var(--white); padding-bottom:7px; font-family:var(--kor); }
#numbers .bullet { display:none; align-items:center; justify-content:center; gap:10px; margin-top:35px; position:relative; z-index:99;}
#numbers.roll .bullet { display:flex; }
#numbers.roll:has(.swiper-lock) .bullet { display:none; }
#numbers .bullet button { width:12px; height:12px; padding:0; border:0; border-radius:50px; background:rgba(255,255,255,0.3); cursor:pointer; transition:all 0.3s linear; margin:0; padding:0;}
#numbers .bullet button:hover { background:var(--white); transition:all 0.3s linear; }
#numbers .bullet button.on, #numbers .bullet .swiper-pagination-bullet-active { width:40px; background:var(--white); transition:all 0.3s linear; }
#numbers.roll .num_slide { overflow:hidden; }
#numbers.roll .num_slide li { flex:none; width:25%; box-sizing:border-box; }

/* Admissions */
#admit .tit_wrap { margin-bottom:50px; }
#admit .admit_grid { display:flex; gap:30px; align-items:stretch; }
#admit .brochure { position:relative; width:50%; max-width:750px; flex-shrink:0; padding:40px; box-sizing:border-box; border-radius:var(--borderR30); background:var(--sub); overflow:hidden; }
#admit .brochure::before { content:''; position:absolute; right:0; bottom:0; width:483px; height:573px; background:url('/img/brochure_deco.png') no-repeat center / contain; pointer-events:none; z-index:0; }
#admit .bro_slide { position:relative; z-index:1; width:100%; height:495px; overflow:hidden; }
#admit .bro_slide .swiper-wrapper { height:100%; }
#admit .bro_slide .swiper-slide { display:flex !important; gap:50px; align-items:flex-start; width:100% !important; height:100%; box-sizing:border-box; }
#admit .brochure figure { display:block; width:52%; max-width:350px; flex-shrink:0; aspect-ratio:350 / 495; border-radius:10px; overflow:hidden; box-shadow:0 10px 20px rgba(0,0,0,0.08); position:relative; cursor:pointer;  flex-shrink:0;}
#admit .brochure figure > a { display:block; width:100%; height:100%; position:relative; }
#admit .brochure figure img { width:100%; height:100%; object-fit:cover; display:block; transition:transform 1s ease; }
#admit .brochure figure::after { content:''; position:absolute; left:0; bottom:0; width:6px; height:6px; border-radius:50%; background:rgba(0,0,0,0.72); transform:scale(0); transform-origin:center center; transition:transform 0.45s linear; z-index:1; pointer-events:none; }
#admit .brochure figure .more { position:absolute; left:50%; top:50%; z-index:2; display:flex; align-items:center; justify-content:center; width:58px; height:58px; margin:0; border:1px solid rgba(255,255,255,0.3); border-radius:var(--borderR100); background:var(--white); color:var(--black); box-sizing:border-box; font-family:var(--icon); -webkit-font-feature-settings:'liga'; font-feature-settings:'liga'; opacity:0; transform:translate(-50%, -50%) scale(0.85); transition:opacity 0.3s linear, transform 0.3s linear; pointer-events:none; }
#admit .brochure figure .more::before { content:'add'; font-size:26px; line-height:1; font-weight:normal; font-style:normal; display:block; -webkit-font-feature-settings:'liga'; font-feature-settings:'liga'; }
#admit .brochure figure:hover img { transform:scale(1.04); }
#admit .brochure figure:hover::after { transform:scale(220); }
#admit .brochure figure:hover .more { opacity:1; transform:translate(-50%, -50%) scale(1) rotate(90deg); }
#admit .brochure .txt { position:relative; flex:1;  min-height:495px; padding:5px 10px 60px 0; box-sizing:border-box; color:var(--white); }
#admit .brochure .date { display:inline-flex; align-items:center; gap:3px; color:var(--basicW); font-size:0.8889rem; font-weight:600; line-height:1.75; margin-bottom:18px; }
#admit .brochure .date::before { content:'calendar_month'; font-family:var(--icon); font-size:20px; line-height:1; font-weight:normal; font-style:normal; display:block; -webkit-font-feature-settings:'liga'; font-feature-settings:'liga'; }
#admit .brochure .fs30 { display:block; font-weight:700; color:var(--white); margin-bottom:8px; }
#admit .brochure .fs18 { color:var(--white); }
#admit .brochure .ctrl { position:absolute; left:calc(52% + 48.4px); right:50px; width:auto; bottom:40px;  display:flex;  align-items:center;  justify-content:space-between;  z-index:5;}
#admit .brochure .ctrl .count { display:flex; align-items:center; justify-content:center; gap:6px; width:80px; height:38px; border:1px solid rgba(255,255,255,0.3); border-radius:var(--borderR100); background:rgba(255,255,255,0.15); color:var(--white); font-family:var(--eng); box-sizing:border-box; }
#admit .brochure .ctrl .count b { font-size:0.8889rem; font-weight:800; letter-spacing:0.06em; line-height:1.75; }
#admit .brochure .ctrl .count i { font-style:normal; font-size:0.6667rem; line-height:1.5; opacity:0.6; }
#admit .brochure .ctrl .count span { font-size:0.8889rem; line-height:1.75; opacity:0.6; }
#admit .brochure .ctrl .arrow { display:flex; align-items:center; gap:4px; }
#admit .brochure .ctrl .arrow button { display:flex; align-items:center; justify-content:center; width:38px; height:38px; background:none; border:1px solid rgba(255,255,255,0.3); border-radius:50%; color:var(--white); cursor:pointer; padding:0; backdrop-filter:blur(1px); font-family:var(--icon); -webkit-font-feature-settings:'liga'; font-feature-settings:'liga'; }
#admit .brochure .ctrl .arrow button::before { font-family:inherit; font-size:22px; line-height:1; font-weight:normal; font-style:normal; display:block; -webkit-font-feature-settings:'liga'; font-feature-settings:'liga'; }
#admit .brochure .ctrl .arrow .bro_prev::before { content:'chevron_left'; }
#admit .brochure .ctrl .arrow .bro_next::before { content:'chevron_right'; }
#admit .brochure .ctrl .arrow .bro_pause { font-variation-settings:'FILL' 1, 'wght' 500, 'GRAD' 0, 'opsz' 48; }
#admit .brochure .ctrl .arrow .bro_pause::before { content:'pause'; font-size:18px; font-variation-settings:'FILL' 1, 'wght' 500, 'GRAD' 0, 'opsz' 48; }
#admit .brochure .ctrl .arrow .bro_pause.play::before { content:'play_arrow'; }
#admit .links { flex:1; min-width:0; display:grid; grid-template-columns:repeat(6, 1fr); grid-template-rows:325px 221px; gap:30px; height:576px; }
#admit .links .big { position:relative; display:flex; flex-direction:column; gap:10px; grid-column:span 3; padding:40px; box-sizing:border-box; border-radius:var(--borderR30); overflow:hidden; color:var(--white); background:var(--main); }
#admit .links .big.brief { background:var(--sub3); }
#admit .links .big figure { position:absolute; inset:0; z-index:0; }
#admit .links .big figure img { width:100%; height:100%; object-fit:cover; display:block; transition:transform 1s ease; }
#admit .links .big::after { content:''; position:absolute; left:59px; bottom:59px; width:38px; height:38px; border-radius:50%; background:var(--main); transform:translate(-50%, 50%) scale(0); transform-origin:center center; transition:transform 0.6s linear; z-index:1; pointer-events:none; }
#admit .links .big.brief::after { background:var(--sub3); }
#admit .links .big .fs30 { position:relative; z-index:2; font-weight:700; color:var(--white); }
#admit .links .big .fs18 { position:relative; z-index:2; margin:0; color:var(--basicW); opacity:0; transform:translateY(12px); transition:opacity 0.3s linear, transform 0.3s linear; }
#admit .links .sm { position:relative; display:block; grid-column:span 2; padding:40px; box-sizing:border-box; border-radius:var(--borderR30); background:var(--grayBg); overflow:hidden; color:var(--black); }
#admit .links .sm::after { content:''; position:absolute; left:59px; bottom:59px; width:38px; height:38px; border-radius:50%; background:var(--main); transform:translate(-50%, 50%) scale(0); transform-origin:center center; transition:transform 0.6s linear; z-index:1; pointer-events:none; }
#admit .links .sm .fs20 { position:relative; z-index:2; font-weight:600; transition:color 0.3s linear; }
#admit .links .more { position:absolute; left:40px; bottom:40px; z-index:3; display:flex; align-items:center; justify-content:center; width:38px; height:38px; border:1px solid rgba(255,255,255,0.3); border-radius:var(--borderR100); color:var(--white); box-sizing:border-box; font-family:var(--icon); -webkit-font-feature-settings:'liga'; font-feature-settings:'liga'; transition:all 0.3s linear; }
#admit .links .more::before { content:'add'; font-size:20px; line-height:1; font-weight:normal; font-style:normal; display:block; -webkit-font-feature-settings:'liga'; font-feature-settings:'liga'; }
#admit .links .sm .more { border:0; background:var(--white); color:var(--black); }
#admit .links .ico { position:absolute; right:35px; bottom:35px; z-index:3; display:flex; align-items:center; justify-content:center; color:var(--white); filter:drop-shadow(8px 8px 15px rgba(0,0,0,0.08)); transition:all 0.3s linear; }
#admit .links .ico svg { width:100%; height:100%; display:block; transition:all 0.3s linear; }
#admit .links .sm .ico { color:var(--main); }
#admit .links a:hover .ico svg { filter:brightness(0) invert(1); transition:all 0.3s linear; }
#admit .links .big:hover figure img { transform:scale(1.06); }
#admit .links .big:hover::after { transform:translate(-50%, 50%) scale(28); }
#admit .links .big:hover .fs18 { opacity:1; transform:translateY(0); }
#admit .links .big:hover .more { background:var(--white); color:var(--black); border-color:transparent; transform:rotate(90deg); }
#admit .links .sm:hover::after { transform:translate(-50%, 50%) scale(22); }
#admit .links .sm:hover .fs20 { color:var(--white); }
#admit .links .sm:hover .more { background:var(--white); color:var(--main); transform:rotate(90deg); }





/*******************************************************************************
	@media ~1680px
*******************************************************************************/
@media all and (max-width:1680px) { 


	#board .tit{flex-wrap: wrap;}
	#board .notice .tit .cate-wrap { flex: auto; width: 100%; justify-content:flex-start; position: relative;}
	#board .notice{overflow: hidden;}
	#board .notice .tit .cate {justify-content:flex-start; flex:none; width:100%; max-width:100%; margin:0; overflow:visible;}
	#board .notice .tit .more{position: absolute; right: 0; top: -55px;}


}
/*******************************************************************************
	@media ~1500px
*******************************************************************************/
@media all and (max-width:1500px) { 
	/* News */
	#news .deco {right: -400px; top:-300px; max-width: 725px;}
	#news .news_img { width:48%; }
	#news .news_txt { width:52%; }
	#news .news_img::before { top:-60px; bottom:-60px; }
	#news .news_img.aos-animate::before { width:320px; }
	#news .news_txt .swiper-slide { padding:50px; }
	#news .ctrl {bottom:0; left:calc(48% + 50px);}

	/* Admissions */
	#admit .brochure .ctrl { right:25px;}
	#admit .brochure .txt br {display:none;}

	#admit .links .sm { padding: 2vw; } 
	#admit .links .sm .more {left: 2vw; bottom: 2vw; }
	#admit .links .ico { width: 4vw; height: 4vw; right: 2vw; bottom: 2vw; }
	#admit .links .ico img { width: 100%; height: 100%; object-fit: contain; }
	
}

/*******************************************************************************
	@media ~1300px
*******************************************************************************/
@media all and (max-width:1300px) { 

	/* News */
	#news .deco {right: -300px; top:-200px; max-width: 500px;}
	#news .news_img { width:44%; }
	#news .news_txt { width:56%; }
	#news .news_img::before { top:-50px; bottom:-50px; }
	#news .news_img.aos-animate::before { width:260px; }
	#news .news_txt .swiper-slide { padding:40px; }
	#news .ctrl { left:calc(44% + 40px); bottom:40px; }

	/* Board */
	#board .notice, #board .schedule { padding:40px; }

	/* Admissions */
	#admit .admit_grid { flex-direction:column; }
	#admit .brochure { width:100%; height:auto;  max-width:100%;}
	#admit .bro_slide { height:auto; }
	#admit .brochure .txt { width:calc(100% - 300px); min-height:auto; padding-bottom:0; }
	#admit .brochure .ctrl {left:440px; right:40px; width:auto;}
	
	#admit .links { height:auto; grid-template-rows:repeat(2, 280px); }
}

/*******************************************************************************
	@media 769~980px
*******************************************************************************/
@media all and (max-width:980px) { 
	/* News */
	#news .deco {right: -200px; top:-200px; max-width: 400px;}
	#news .news_con { flex-direction:column; }
	#news .news_img { width:100%; max-width:720px; margin:0 auto; aspect-ratio:16/9; }
	#news .news_img::before { left:-10%; top:-30px; bottom:auto; height:calc(100% + 60px); width:0; border-radius:20px; transform:none; transition:width 0.9s cubic-bezier(0.22, 1, 0.36, 1); }
	#news .news_img.aos-animate::before { width:50%; }
	#news .news_img.aos-animate .swiper { transform:translateX(0); transition-delay:0.4s; }
	#news .news_txt { width:100%; }
	#news .news_txt .in {padding-bottom:0;}
	#news .ctrl { position:relative; left:0; bottom:0; padding:0 0; margin-top:40px;}
	#news .news_txt .swiper-slide {padding:60px 0 0; min-height: auto;}
	

	/* Academics */
	#aca .aca_slide .swiper-slide { }
	#aca .aca_slide a { padding:30px; }
	#aca .aca_slide .go { left:30px; right:30px; bottom:30px;}
	#aca .aca_slide a:hover { padding:40px 30px 30px; }

	/* Board */
	#board .board_box { flex-direction:column; gap:20px; }
	#board .notice, #board .schedule { width:100%; }
	#board .notice .tit .more{top: -50px;}

	/* Numbers */
	#numbers .ico {width:120px; height:120px; margin:0 0 20px;}
	#numbers .ico img {width:50px; height:auto;}
	#numbers .num strong {font-size:2.5rem;}
	#numbers .num span {font-size:1.5rem;}
	

	/* Admissions */
	#admit .bro_slide .swiper-slide { gap:30px; } 
	#admit .brochure { border-radius: 20px; } /* 모서리 둥글기 축소 */
	#admit .brochure figure { width:220px; }
	#admit .brochure .txt { width:calc(100% - 250px); }
	#admit .brochure .ctrl { left:290px; right:40px; } 
	
	/* ★ 링크 영역 3단 그리드로 변경 */
	#admit .links { grid-template-columns:repeat(3, 1fr); grid-template-rows:auto auto; }
	#admit .links .big { grid-column:span 3; min-height:280px; padding:30px; border-radius:20px; } /* 상단은 꽉 차게 1개씩 */
	#admit .links .sm { grid-column:span 1; min-height:200px; padding:25px; border-radius:20px; } /* 하단은 3개씩 나란히 배치 */
	
	/* 3개 배치를 위해 아이콘 크기와 여백 살짝 조절 */
	#admit .links .ico { width:50px; height:50px; right:25px; bottom:25px; }
	#admit .links .ico img { width:100%; height:100%; object-fit:contain; }

	/* 호버 효과 고정 및 텍스트 상시 노출 */
	#admit .links a::after { display:none !important; }
	#admit .links a:hover { transform:none !important; }
	#admit .links a:hover .ico svg { filter:none !important; }
	
	#admit .links .big:hover figure img { transform:none !important; }
	#admit .links .big:hover .more { background:transparent !important; color:var(--white) !important; border-color:rgba(255,255,255,0.3) !important; transform:none !important; }
	
	#admit .links .sm:hover .fs20 { color:var(--black) !important; }
	#admit .links .sm:hover .more { background:var(--white) !important; color:var(--black) !important; transform:none !important; }

	#admit .links .big .fs18 { 
		opacity: 1 !important; 
		visibility: visible !important; 
		transform: none !important; 
		display: block; 
		margin-top: 15px; 
	}
	
}

/*******************************************************************************
	@media 481~680px
*******************************************************************************/
@media all and (max-width:680px) { 
	/* Visual */
	#news .deco {right: -80px; top:-140px; max-width: 250px;}
	#visual .v_popup { width:80%; right:20px; bottom:20px;  max-width:300px;}
	#visual .v_popup .pop_slide { width:100%;}
	#visual .v_popup.close { width:80px; right:20px; }
	#visual .scr { display:none; }
	#visual .v_popup .pop_ctrl {gap:0 10px; margin-bottom:5px;}
	#visual .v_popup .pop_ctrl button::after {font-size:20px;}

	/* Section Title */
	.tit_wrap { margin-bottom:30px;  gap:7px;}
	

	/* News */
	#news .news_img { max-width:100%; aspect-ratio:16/10; }
	#news .news_img .swiper { border-radius:var(--borderR20); }
	#news .news_img::before {border-radius: var(--borderR30);}
	#news .news_txt .date::before {font-size:16px;}
	#news .news_txt .in {gap:10px;}
	#news .ctrl {margin-top:25px;}
	#news .ctrl .count { width:64px; height:32px; gap:4px; }
	#news .ctrl .count b { font-size:0.7778rem; }
	#news .ctrl .count i { font-size:0.6rem; }
	#news .ctrl .count span { font-size:0.7778rem; }
	#news .ctrl .arrow button { width:32px; height:32px; }
	#news .ctrl .arrow button::before { font-size:18px; }
	#news .ctrl .arrow .news_pause::before { font-size:15px; }

	/* Academics */
	#aca .aca_slide .swiper-slide { }
	#aca .aca_slide .go { left:20px; right:20px; bottom:20px; height:46px; }
	#aca .aca_slide a:hover { padding:35px 30px 30px; }

	/* Academics Background */
	#aca .bg .o1 { width:120%; left:-40%; top:-10%; }
	#aca .bg .o2 { width:180%; left:20%; top:60%; } 
	#aca .bg .o3 { width:100%; left:50%; top:-20%; }
	#aca .bg .o4 { width:140%; left:-50%; top:70%; }

	/* Academics Controls (북일뉴스와 동일) */
	#aca .ctrl { margin-top:25px; }
	#aca .ctrl button { width:32px; height:32px; }
	#aca .ctrl .aca_prev::before { font-size:18px; }
	#aca .ctrl .aca_next::before { font-size:18px; }
	#aca .ctrl .aca_pause::before { font-size:14px; }
	
	
	#numbers .bullet button { width:8px; height:8px;}
	#numbers .bullet button.on, #numbers .bullet .swiper-pagination-bullet-active { width:20px;}
	
	
	
	/* Board */
	#board .notice, #board .schedule { padding:25px; }
	#board .tit .more {width:31px; height:31px;}
	#board .tit {  margin-bottom:20px; }
	#board .notice ul li a { padding:12px 0;  gap:3px;}
	#board .notice .meta { flex-wrap:wrap; }
	#board .schedule ul li {flex-wrap:wrap;}
	#board .schedule ul li .eng {width:100%; flex:none;}
	#board .schedule ul li p {width:100%; flex:none;}

	#board .notice .tit .more{top: -40px;}

/* Admissions */
	#admit .brochure { padding:25px; border-radius:15px; } /* 모서리 둥글기 더 축소 */
	#admit .bro_slide .swiper-slide { flex-direction:column; gap:25px; }
	
	#admit .brochure figure { width:100%; max-width:200px; margin:0 auto; } 
	#admit .brochure .txt { width:100%; padding:0; min-height:auto; text-align:center; }
	
	#admit .brochure .ctrl { position:relative; left:0; right:0; bottom:0; width:100%; margin-top:25px; }
	#admit .brochure .ctrl .count { width:64px; height:32px; gap:4px; }
	#admit .brochure .ctrl .count b { font-size:0.7778rem; }
	#admit .brochure .ctrl .count i { font-size:0.6rem; }
	#admit .brochure .ctrl .count span { font-size:0.7778rem; }
	#admit .brochure .ctrl .arrow button { width:32px; height:32px; }
	#admit .brochure .ctrl .arrow button::before { font-size:18px; }
	#admit .brochure .ctrl .arrow .bro_pause::before { font-size:15px; }

	/* ★ 일자 배치 (1단 그리드) */
	#admit .links { grid-template-columns:1fr; gap:15px; } /* 간격 살짝 좁힘 */
	
	#admit .links .big { grid-column:span 1; min-height:240px; padding:25px; border-radius:15px; }
	#admit .links .big .ico { width:45px; height:45px; right:20px; bottom:20px; }
	
	/* 얇은 바 형태의 일자 배치 */
	#admit .links .sm { 
		grid-column:span 1; 
		min-height:90px; 
		padding:20px 80px 20px 20px; 
		display:flex; 
		flex-direction:column; 
		justify-content:center;
		border-radius:15px; /* 모서리 둥글기 축소 */
	} 
	
	#admit .links .sm .ico { 
		width:40px; 
		height:40px; 
		right:20px; 
		bottom:auto; 
		top:50%; 
		transform:translateY(-50%); 
	}
	
	#admit .links .more { left:25px; bottom:25px; }
	#admit .links .big::after { left:44px; bottom:44px; }
	#admit .links .sm::after { display:none; }
	#admit .links .sm .more {display:none;}
	
	
}