*, *::before, *::after { margin: 0; padding: 0; word-break: keep-all; list-style: none; box-sizing: border-box; }
img { max-width: 100%; }
* { margin: 0; padding: 0; box-sizing: border-box; }
ul, ol, li { list-style: none; }
a { color: inherit; text-decoration: none; }
address { font-style: normal !important; }
html { font-size: 62.5% !important; }
/* --------------------------------------------------
 ★ Color Variables
-------------------------------------------------- */:root { /* 주조색 (핵심 컬러 2종으로 통일) */
  --color-primary: #2269c1; --color-primary-dark: #0a3c89; --color-primary-light: #2269C1; /* 기본/배경색 */
  --bg-body: #f0f3f8; --bg-white: #ffffff; --bg-box: #eaeef5; /* 텍스트 컬러 (3단계) */
  --text-dark: #222222; --text-mid: #666666; --text-light: #999999; /* 선/테두리 */
  --border-main: #d3d6de; --border-light: #e0e0e0; }
html { font-size: 62.5%; }
img { max-width: 100%; }
/* --------------------------------------------------
 ★ Responsive 
-------------------------------------------------- */
@media (max-width:1024px) {
  html { font-size: 56.25%; }
}
@media (max-width:768px) {
  html { font-size: 50%; }
}
*, *::before, *::after { margin: 0; padding: 0; word-break: keep-all; box-sizing: border-box; }
body { font-family: 'Pretendard Variable', Pretendard, sans-serif; }
/* --------------------------------------------------
 ★ Main Section
-------------------------------------------------- */
main { overflow-x: hidden; overflow-y: visible; position: relative; z-index: 0; width: 100%; min-width: 320px; min-height: 100vh; /* background-color: var(--bg-white); */
}
main::before { position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: -1; background-color: #ffffff; background-image: radial-gradient(circle, rgba(210, 235, 255, 0.4) 0%, transparent 60%), radial-gradient(circle, rgba(200, 225, 255, 0.3) 0%, transparent 60%), radial-gradient(circle, rgba(220, 240, 255, 0.4) 0%, transparent 60%), radial-gradient(circle, rgba(200, 230, 255, 0.35) 0%, transparent 60%); background-repeat: no-repeat; background-size: 45% 45%, 35% 35%, 40% 40%, 50% 50%; animation: floatBlobs 20s ease-in-out infinite alternate; content: ""; filter: blur(4rem); }
@keyframes floatBlobs {
  0% { background-position: 0% -15%, /* 1번: 상단으로 확 올려서 반만 보이게 */
    -15% 45%, /* 2번: 좌측 밖으로 살짝 밀어냄 */
    115% 50%, /* 3번: 우측 밖으로 살짝 밀어냄 */
    40% 120%; /* 4번: 하단 밖으로 살짝 밀어냄 */
}
  100% { background-position: 25% -15%, /* 1번 이동 */
    -5% 50%, /* 2번 이동 */
    105% 45%, /* 3번 이동 */
    45% 110%; /* 4번 이동 */
}
}
main .main-inner { margin: 0 auto; max-width: 170rem; /* display: flex; */
  /* width: 100%; */
}
.split-slider-container { display: flex; gap: 4rem; align-items: center; padding: 4.5rem 0 3.5rem 0; overflow: hidden; width: 100%; }
.left-text-area { display: flex; gap: 2.6rem; justify-content: center; flex-direction: column; padding-bottom: 6rem; width: 50%; height: 100%; box-sizing: border-box; }
.left-text-area .left-controller { display: flex; gap: 3rem; align-items: center; }
.text-content-wrap { position: relative; min-height: 15rem; }
.text-group { position: absolute; top: 0; left: 0; visibility: hidden; transition: all 0.5s ease-in-out; opacity: 0; transform: translateY(3rem); }
.text-group.active { position: relative; visibility: visible; opacity: 1; transform: translateY(0); }
.text-group h2 { margin: 0 0 2.5rem 0; font-size: 6rem; font-weight: 900; line-height: 1.2; color: var(--text-dark); }
.text-group p { font-size: 2rem; line-height: 1.7; color: var(--text-mid); }
.text-group h2 b { display: block; font-weight: 900; color: var(--color-primary); }
.dynamic-step-progress { display: flex; gap: 1.5rem; align-items: center; }
.dynamic-step-progress .num { font-size: 1.5rem; font-weight: 500; color: var(--text-dark); letter-spacing: -0.08rem; font-variant-numeric: tabular-nums; }
.dynamic-step-progress .num.next { color: var(--text-light); }
.progress-line { overflow: hidden; position: relative; width: 14rem; height: 0.13rem; background: #d6dde0; }
.progress-line .bar { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: var(--color-primary); transition: none; transform: scaleX(0); transform-origin: left center; }
/* 하단 버튼 */
.controls { display: flex; gap: 1rem; }
.controls button { border: 0.1rem solid var(--border-main); width: 3.5rem; height: 3.5rem; background: transparent; cursor: pointer; border-radius: 50%; }
.controls button i { color: var(--text-light); }
.right-slider-area { width: 56%; }
.swiper-slide { background-position: center; background-size: cover; }
.right-slider-area .swiper, .right-slider-area .swiper-slide { width: 100%; aspect-ratio: 5 / 3; ; }
.right-slider-area .swiper-slide img { width: 100%; height: 100%; object-fit: cover; }
.main-btn-wrap { display: inline-block; }
.main-detail-btn { display: inline-flex; align-items: stretch; overflow: hidden; text-decoration: none; border-radius: 5rem; }
.main-detail-btn .btn-text { display: flex; align-items: center; justify-content: center; padding: 1.9rem 4.3rem; background-color: var(--color-primary-light); font-size: 2rem; font-weight: 600; color: var(--bg-white); transition: background-color 0.2s; }
.main-detail-btn .btn-icon { display: flex; align-items: center; justify-content: center; width: 7.4rem; background-color: #347AD1; font-size: 2.6rem; font-weight: 100; color: var(--bg-white); transition: background-color 0.2s; }
.main-detail-btn:hover .btn-text, .main-detail-btn:hover .btn-icon { background-color: var(--color-primary-dark); }
/* --------------------------------------------------
 ★ Main bar
-------------------------------------------------- */

.main-bar { display: block; width: 100%; background: linear-gradient(to right, var(--color-primary-dark), var(--color-primary), var(--color-primary-dark)); background-repeat: no-repeat; background-size: calc(50% + 85rem) 100%; box-sizing: border-box; }
.main-bar ul { display: flex; align-items: center; margin: 0 auto; padding: 3rem; max-width: 170rem; box-sizing: border-box; }
.main-bar ul li { flex: 1; }
.main-bar ul li a { display: flex; gap: 1rem; align-items: center; justify-content: center; width: 100%; font-size: 2.2rem; font-weight: 600; color: var(--bg-white); text-decoration: none; }
.main-bar ul li:not(:last-child) { position: relative; }
.main-bar ul li:not(:last-child)::before { position: absolute; top: 0; right: 0; width: 0.1rem; height: 100%; background: rgba(255, 255, 255, 0.2); content: ""; }
/* --------------------------------------------------
 ★ Section Common
-------------------------------------------------- */
section { padding: 9.5rem 0; }
.sec-tit1 { font-size: 5rem; font-weight: 800; color: var(--text-dark); }
.sec-tit1 { margin-bottom: 2.4rem; font-size: 4.8rem; font-weight: 800; }
section .sec-tit1 b { font-weight: 800; color: var(--color-primary-dark); }
/* --------------------------------------------------
 ★ Calendar Section
-------------------------------------------------- */

.calendar-slider-wrap { display: flex; gap: 1.2rem; align-items: center; margin-bottom: 3rem; }
.calendar-swiper { overflow: hidden; width: 100%; }
.calendar-swiper .swiper-wrapper { display: flex; }
.calendar-swiper .swiper-slide { flex-shrink: 0; width: auto; }
.date-item { display: flex; align-items: center; justify-content: center; flex-direction: column; padding: 0 1.8rem; position: relative; height: 7.2rem; background-color: var(--bg-box); text-decoration: none; transition: background-color 0.2s; border-radius: 1.2rem; }
.date-item .num { margin-bottom: 0.4rem; font-size: 1.7rem; font-weight: 700; color: var(--text-dark); }
.date-item .day { font-size: 1.3rem; color: var(--text-light); }
.date-item.on { background: var(--color-primary); }
.date-item.on .num, .date-item.on .day { color: var(--bg-white); }
.date-item.has-event::after { position: absolute; top: 0.8rem; right: 0.8rem; width: 0.7rem; height: 0.7rem; background-color: var(--color-primary); content: ''; border-radius: 50%; }
.date-item.on.has-event::after { background-color: var(--bg-white); }
.calendar-btn-prev, .calendar-btn-next { display: flex; align-items: center; justify-content: center; flex-shrink: 0; border: 0.1rem solid var(--border-main); width: 3.6rem; height: 3.6rem; font-size: 2rem; color: var(--text-dark); text-decoration: none; border-radius: 0.5rem; }
.calendar-btn-prev.swiper-button-disabled, .calendar-btn-next.swiper-button-disabled { cursor: default; opacity: 0.3; }
.schedule-board { display: flex; flex-direction: column; padding: 3rem 4rem; position: relative; min-height: 20rem; background-color: var(--bg-box); border-radius: 1.2rem; }
.schedule-board .selected-date { /* margin-bottom: 1.5rem; */
  margin-top: 0; font-size: 2.2rem; font-weight: 700; color: var(--text-dark); }
.schedule-board .empty-state { display: flex; align-items: center; justify-content: center; flex: 1; font-size: 1.8rem; color: var(--text-light); }
.btn-view-schedule { display: flex; align-items: center; justify-content: center; position: absolute; right: 0; bottom: 0; width: 5rem; height: 5rem; background-color: var(--color-primary); font-size: 2.4rem; font-weight: 300; color: var(--bg-white); text-decoration: none; transition: background-color 0.2s; border-radius: 1.2rem 0 1.2rem 0; }
.btn-view-schedule:hover { background-color: var(--color-primary-dark); }
.schedule-block { display: none; }
/* 하단 일정 리스트 */
.schedule-list { display: flex; flex-direction: column; margin: 0; padding: 0; list-style: none; }
.schedule-list li { display: flex; align-items: center; padding: 0.5rem 0; }
.schedule-list .schedule-date { display: flex; align-items: center; font-size: 1.7rem; font-weight: 600; color: var(--color-primary); letter-spacing: -0.02rem; white-space: nowrap; }
.schedule-list .schedule-date::after { display: inline-block; margin: 0 1.6rem; width: 0.1rem; height: 1.4rem; background-color: var(--border-light); content: ''; }
.schedule-list .schedule-title { font-size: 1.7rem; font-weight: 500; color: var(--text-dark); }
/* --------------------------------------------------
 ★ Section 4: 주요안내 / 센터소식
-------------------------------------------------- */

.grid-col.notice-banner-wrap, .grid-col.news-list-wrap { display: flex; flex-direction: column; width: 50%; }
/* 주요안내 */
.notice-banner-wrap .sec-tit1 { margin-bottom: 2.4rem; }
.banner-grid { display: grid; gap: 2.4rem; flex: 1; min-height: 46rem; grid-template-columns: 1fr 1fr; }
.notice-swiper { box-shadow: 0 0.4rem 1.2rem rgba(0, 0, 0, 0.05); overflow: hidden; position: relative; width: 100%; height: 100%; border-radius: 1.6rem; }
.notice-swiper, .notice-swiper .swiper-wrapper, .notice-swiper .swiper-slide { height: 100%; }
.notice-swiper .swiper-slide a { display: block; width: 100%; height: 100%; }
.notice-swiper .swiper-slide img { display: block; width: 100%; height: 100%; transition: transform 0.3s ease; object-fit: cover; }
.notice-swiper .swiper-slide:hover img { transform: scale(1.03); }
.banner-pager { display: flex; gap: 5px; align-items: center; padding: 1rem 2rem; border: 2px solid #E6EBEE; box-shadow: 0 0.2rem 0.8rem rgba(0, 0, 0, 0.1); position: absolute; bottom: 2rem; left: 85px; z-index: 10; background-color: rgba(255, 255, 255, 0.95); transform: translateX(-50%); border-radius: 5rem; }
.banner-pager .page-num { font-size: 1.5rem; font-weight: 700; color: var(--text-mid); font-variant-numeric: tabular-nums; }
.swiper-pagination-total { color: var(--text-dark); }
.banner-pager button { display: flex; align-items: center; border: none; background: none; font-size: 2rem; color: var(--text-mid); cursor: pointer; }
.banner-pager button:hover { color: var(--color-primary); }
/* 센터소식 */
.board-header { display: flex; gap: 2rem; align-items: flex-end; justify-content: space-between; margin-bottom: 2.4rem; }
.board-tabs { display: flex; gap: 1.6rem; align-items: baseline; }
.board-tabs .sec-tit1 { margin-bottom: 0; /* margin-right: 1rem; */
}
.board-tabs .tab-link { font-size: 2.2rem; font-weight: 700; color: var(--text-light); text-decoration: none; transition: color 0.2s; }
.board-tabs .tab-link.active, .board-tabs .tab-link:hover { color: var(--color-primary); }
.tab-content { display: none; }
.tab-content.active { display: flex; flex: 1; flex-direction: column; height: auto; }
.btn-more-link { display: flex; gap: 0.4rem; align-items: center; padding-bottom: 0.4rem; font-size: 1.7rem; color: #889bbd; text-decoration: none; }
.btn-more-link i { font-size: 2rem; font-weight: 100; }
.news-list { display: flex; gap: 2.5rem; flex: 1; flex-direction: column; margin: 0; padding: 0; list-style: none; }
.news-list li { display: flex; flex: 1; flex: 1; min-height: 0; max-height: 10rem; background: #ffffff; border-radius: 1rem; }
.news-list li a { display: flex; gap: 4rem; align-items: center; justify-content: space-between; flex: 1; padding: 0 3rem; text-decoration: none; transition: background-color 0.2s; box-sizing: border-box; }
.news-list .title { flex: 1; overflow: hidden; width: 0rem; min-width: 0; font-size: 1.8rem; font-weight: 500; color: var(--text-dark); white-space: nowrap; text-overflow: ellipsis; }
.news-list li .category { position: relative; font-size: 2rem; font-weight: 700; color: var(--color-primary); }
.news-list li #notice { color: #3f3f3f; }
.news-list li .category::after { position: absolute; top: 0; right: -25%; width: 1px; height: 100%; background: var(--border-light); content: ""; }
.news-list li .date { font-size: 1.6rem; font-weight: 500; color: var(--text-light); }
.news-list li:hover { background: var(--color-primary); transition: all 0.1s ease-in-out; }
.news-list li:hover .category, .news-list li:hover #notice, .news-list li:hover .title { color: var(--bg-white); }
.news-list li:hover .date { color: var(--border-light); }
/* 반응형 */
@media (max-width:1440px) {
  .split-layout { gap: 3.6rem; }
  .news-list .title { /* max-width: 36rem; */
}
  .banner-grid { gap: 1.6rem; min-height: 33rem; }
}
@media (max-width:1280px) {
  .split-layout { gap: 2.8rem; }
  .banner-grid { gap: 1.6rem; min-height: 27rem; }
  .news-list .title { font-size: 1.6rem; /* max-width: 28rem; */
}
  .news-list li .category { font-size: 1.8rem; }
  .news-list li .category::after { right: -2.2rem; }
  .board-tabs .tab-link { font-size: 2rem; }
  .split-layout { gap: 2rem; }
  .banner-grid { gap: 1.2rem; }
  .news-list { gap: 1.4rem; }
  .news-list li a { padding: 0 2rem; }
  .news-list .title { font-size: 1.5rem; /* max-width: 22rem; */
}
  .news-list li .category { font-size: 1.6rem; }
  .news-list li .category::after { right: -1.8rem; }
  .news-list li .date { font-size: 1.4rem; }
  .board-tabs .tab-link { /* font-size: 1.8rem; */
}
  /* .btn-more-link { font-size: 1.5rem; } */
  .banner-pager { padding: 0.8rem 1.4rem; left: 30%; }
  .banner-pager .page-num { font-size: 1.3rem; }
}
@media (max-width:768px) {
  .split-layout { gap: 4rem; flex-direction: column; }
  .grid-col.notice-banner-wrap, .grid-col.news-list-wrap { width: 100%; }
  .banner-grid { gap: 2.5rem; min-height: 40rem; }
  .notice-swiper { height: 100%; aspect-ratio: 16 / 9; }
  .tab-content.active { flex: none; }
  .news-list { gap: 1rem; }
  .news-list li { flex: none; }
  .news-list li a { padding: 2.4rem 1.8rem; }
  .news-list .title { /* font-size: 1.6rem; */
    /* max-width: 33rem; */
}
  .news-list li .category { font-size: 1.5rem; }
  .news-list li .category::after { right: -1.6rem; }
  .news-list li .date { font-size: 1.3rem; }
  .board-header { gap: 1rem; align-items: flex-start; justify-content: flex-start; flex-direction: column; margin-bottom: 1.4rem; }
  .board-tabs .tab-link { font-size: 1.7rem; }
  .banner-pager { bottom: 2rem; left: 60px; }
  .news-list-wrap .btn-more-link { display: flex; justify-content: flex-end; width: 100%; }
}
@media (max-width:600px) {
  .news-list li a { padding: 2rem 1.8rem; }
  .banner-grid { gap: 2.5rem; min-height: 25rem; }
  .banner-pager { bottom: 2rem; left: 60px; }
  .media-main-slide .slider-controls { padding: 2rem 1.8rem; }
}
@media (max-width:480px) {

  .banner-grid { min-height: 20rem; }
}
/* --------------------------------------------------
 ★ Section 5: 언론보도 / 포토갤러리
-------------------------------------------------- */

.split-layout {display: flex;gap: 5rem;align-items: stretch;width: 100%;}
.sec-media-area .board-tabs .sec-tit1 { margin-bottom: 0; /* margin-right: 1.6rem; */
}
.sec-media-area .board-tabs .media-tab-link { color: var(--text-dark); transition: color 0.2s; }
.sec-media-area .board-tabs .sec-tit1.inactive .media-tab-link { color: var(--border-main); /* 비활성 탭 색상 */
}
.sec-media-area .board-tabs .media-tab-link:hover { color: var(--color-primary); }
/* 탭 전환 로직 */
.media-tab-content { display: none; }
.media-tab-content.active { display: block; }
/* --- 좌측 메인 슬라이드 --- */
.media-layout { height: 46rem; }
.media-main-slide {
  /* border-radius: 1.6rem; */
  overflow: hidden;
  position: relative;
  max-width: 48.5%;
  height: 100%;
  }
.media-swiper { width: 100%; height: 100%; }
.media-swiper .swiper-slide a { display: block; width: 100%; height: 100%; }
.media-swiper .swiper-slide img { width: 100%; height: 100%; transition: transform 0.3s ease; object-fit: cover; }
.media-swiper .swiper-slide:hover img { transform: scale(1.03); }
/* 슬라이드 컨트롤러 */
.media-main-slide .slider-controls { display: flex; gap: 5px; align-items: center; padding: 1rem 2rem; border: 2px solid #E6EBEE; position: absolute; right: 2rem; bottom: 2rem; z-index: 10; background-color: rgba(255, 255, 255, 0.95); border-radius: 5rem; }
.media-main-slide .slider-controls .page-num { font-size: 1.5rem; font-weight: 700; color: var(--text-mid); font-variant-numeric: tabular-nums; }
.media-main-slide .slider-controls button { display: flex; align-items: center; border: none; background: none; font-size: 2rem; color: var(--text-mid); cursor: pointer; }
.media-main-slide .slider-controls button:hover { color: var(--color-primary); }
/* --- 우측 보도 리스트 --- */
.media-list-wrap { display: flex; justify-content: space-between; flex-direction: column; height: 100%; }
.media-list-wrap .badge-category { display: inline-block; padding: 0.7rem 1.5rem; background: #DCE8F8; font-size: 1.5rem; font-weight: 700; color: var(--color-primary); border-radius: 0.6rem; }
.media-list-wrap .more-text { display: inline-flex; gap: 0.5rem; align-items: center; font-size: 1.5rem; color: var(--text-light); transition: color 0.2s; }
.media-list-wrap a.btn-more-link { display: flex; align-items: center; }
/* 상단 강조 기사 */
.media-list-wrap .top-news { flex: 1; }
.media-list-wrap .top-news .meta { display: flex; gap: 1.5rem; align-items: center; margin-bottom: 1.5rem; }
.media-list-wrap .top-news .date { font-size: 1.6rem; font-weight: 500; color: var(--text-light); }
.media-list-wrap .top-news .title { display: -webkit-box; margin-bottom: 2.5rem; overflow: hidden; font-size: 3.7rem; font-weight: 800; line-height: 1.3; color: var(--text-dark); transition: color 0.2s; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
/* 하단 썸네일 기사 */
.media-list-wrap .thumb-news { display: flex; gap: 3rem; }
.media-list-wrap .thumb-news .thumb { flex-shrink: 0; overflow: hidden; width: 24rem; max-height: 15rem; }
.media-list-wrap .thumb-news .thumb img { width: 100%; height: 100%; transition: transform 0.3s ease; object-fit: cover; }
.media-list-wrap .thumb-news .info { display: flex; flex: 1; flex-direction: column; }
.media-list-wrap .thumb-news .badge-category { margin-bottom: 0.7rem; }
.media-list-wrap .thumb-news .title { display: -webkit-box; margin-bottom: 2rem; overflow: hidden; font-size: 2.4rem; font-weight: 800; line-height: 1.4; color: var(--text-dark); transition: color 0.2s; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
/* 리스트 호버 */
.media-list-wrap .top-news:hover .title, .media-list-wrap .thumb-news:hover .title { color: var(--color-primary); }
.media-list-wrap .top-news:hover .more-text, .media-list-wrap .thumb-news:hover .more-text { color: var(--text-mid); }
.media-list-wrap .thumb-news:hover .thumb img { transform: scale(1.05); }
/* --- 하단 SNS 배너 --- */
.sns-banner-wrap { display: grid; gap: 2.5rem; margin-top: 5rem; grid-template-columns: 1fr 1fr; }
.sns-card { display: flex; align-items: center; justify-content: space-between; padding: 3.5rem 4rem; border: 1px solid rgba(0, 0, 0, 0.02); background: var(--bg-white); text-decoration: none; transition: transform 0.3s ease, box-shadow 0.3s ease; border-radius: 1.6rem; }
.sns-card:hover { transform: translateY(-5px); }
.sns-card .sns-badge { display: inline-flex; gap: 0.6rem; align-items: center; margin-bottom: 1.5rem; padding: 0.6rem 1.4rem; font-size: 1.5rem; font-weight: 600; color: var(--bg-white); border-radius: 0.6rem; }
.sns-card .sns-badge i { font-size: 1.6rem; font-weight: normal; }
.sns-card h5 { margin-bottom: 0.8rem; font-size: 2.7rem; font-weight: 800; color: var(--text-dark); }
.sns-card p { font-size: 1.7rem; color: var(--text-mid); }
.sns-card .icon-box { display: flex; align-items: center; justify-content: center; width: 5.5rem; height: 5.5rem; font-size: 2.4rem; color: var(--bg-white); transition: transform 0.3s ease; border-radius: 50%; }
.sns-card:hover .icon-box { transform: scale(1.1); }
.fb-card .sns-badge, .fb-card .icon-box { background: #1877f2; }
.ig-card .sns-badge, .ig-card .icon-box { background: linear-gradient(45deg, #f09433, #e6683c, #dc2743, #cc2366, #bc1888); }
/* sns end */

/* --------------------------------------------------
 ★ Responsive 
-------------------------------------------------- */
@media (max-width:1900px) {
  .main-inner { margin: 0 auto; width: 90%; }
  section { padding: 4rem 0; }
  .text-group h2 { font-size: 5.5rem; }
  .main-bar ul { padding: 2rem 3rem; }
  .sec-tit1 { font-size: 4rem; }
}
@media (max-width:1440px) {
  .text-group h2 { font-size: 4.5rem; }
  .main-bar ul li a { padding: 0 10px; font-size: 2rem; }
  .sec-tit1 { font-size: 3rem; }
  .media-list-wrap .top-news .title { font-size: 3rem; }
  .media-list-wrap .thumb-news .title { font-size: 2rem; }
  .media-layout { height: 35rem; }
  .media-list-wrap .thumb-news .thumb { width: 15rem; }
  .split-slider-container { padding: 2rem 0 4rem 0; }
}
@media (max-width:1200px) {

  .text-group h2 { font-size: 4rem; }
  .text-group p { font-size: 16px; }
  .quick-menu { display: none; }
  .main-bar ul li a { font-size: 1.8rem; }
  .media-list-wrap .top-news .title { font-size: 2.5rem; }
  .sns-card h5 { font-size: 2.2rem; }
  .media-list-wrap .thumb-news { gap: 1.5rem; align-items: center; }
  .sns-card p { font-size: 1.6rem; }
}
@media (max-width:768px) {

  .schedule-list li { gap: 1rem; align-items: flex-start; flex-direction: column; }
  .schedule-board { padding: 2rem 2rem 6rem 2rem; }
  .schedule-list .schedule-title { font-size: 1.5rem; }
  .text-group h2 { margin-bottom: 1rem; }
  .text-group p { font-size: 15px; }
  .left-text-area { gap: 1.6rem; }
  .main-detail-btn .btn-text { padding: 1.5rem 3rem; font-size: 1.6rem; }
  .split-slider-container { flex-direction: column-reverse; padding: 2rem 0 0 0; }
  .right-slider-area { width: 100%; /* height: 43rem; */
}
  .left-text-area { width: 100%; }
  .main-bar ul { display: grid; gap: 10px; grid-template-columns: repeat(2, 1fr); }
  .main-bar ul li a { justify-content: flex-start; font-size: 1.6rem; /* padding: 10px; */
}
  .main-bar ul li:not(:last-child)::before { display: none; }
  .main-bar ul li:nth-child(-n+2)::after { position: absolute; bottom: -5px; left: 0; width: 100%; height: 1px; background: rgba(255, 255, 255, 0.2); content: ""; }
  .media-layout { height: auto; }
  .media-main-slide { max-width: 100%; height: 35rem; }
  .media-list-wrap { gap: 2rem; height: auto; }
  .media-list-wrap .top-news .title { font-size: 2.2rem; }
  .media-list-wrap .thumb-news .title { margin-bottom: 10px; font-size: 1.8rem; }
  .media-list-wrap a.btn-more-link { font-size: 15px; }
  .btn-more-link i { font-size: 15px; font-weight: 100; }
  .sns-banner-wrap { display: flex; gap: 2rem; flex-direction: column; margin-top: 2rem; }
  .sns-card { padding: 2rem; }
  .media-main-slide .slider-controls { gap: 0px; padding: 0.5rem 1rem; }
  .banner-pager { gap: 0; padding: 0.5rem 1rem; }
}
@media (max-width:480px) {

  .split-slider-container { gap: 2rem; padding: 3.5rem 0 0; }
  .main-detail-btn .btn-icon { width: 5rem; }
  .left-text-area { padding-bottom: 4rem; }
  .text-content-wrap { min-height: 14rem; }
  .controls { gap: 5px; }
  .controls button { width: 3rem; height: 3rem; }
  .progress-line { width: 80px; }
  .left-text-area .left-controller { gap: 1rem; }
  .dynamic-step-progress .num { font-size: 13px; }
  .text-group h2 { font-size: 3rem; }
  .main-bar ul { padding: 2rem; }
  .main-bar ul li a { height: 6rem; font-weight: 700; }
  .main-bar ul li a span { font-weight: 600; }
  .main-bar ul li a img { width: 40px; max-width: unset; height: 40px; }
  .media-layout { height: 60rem; }
  .sns-card .icon-box { padding: 2rem; width: 20px; height: 20px; }
  .sns-card .icon-box i { font-size: 15px; }
  .sns-card .sns-badge { font-size: 13px; }
  .sns-card h5 { font-size: 1.8rem; }
  .date-item .num { margin-bottom: 0; font-size: 14px; }
  .date-item { padding: 0; height: 5.2rem; }
  .calendar-btn-prev, .calendar-btn-next { padding: 0.25rem; width: auto; height: auto; }
  .schedule-board .empty-state { font-size: 15px; }
  .schedule-list .schedule-title { font-size: 14px; }
  .schedule-list .schedule-date::after { display: none; }
  .schedule-list li { gap: 4px; }
  .news-list-wrap .btn-more-link { display: none; }
  .news-list li a { gap: 1rem; }
  .news-list li .category::after { display: none; }
  .media-main-slide { max-width: 100%; height: 25rem; }
}