@charset "UTF-8";

html {scroll-behavior: smooth;}
body {margin-top: -6.25rem;} 
/* 메인페이지 전용 — 메인의 <section> 은 body 직계 자식. 서브/게시판은 main·.bbs_content 안에 중첩되어 제외됨 */
body > section{background-color: #161616;color: #fff;}


/**************** header ****************/
.main_header {width: 100%;height: 4.5rem;padding: 0 2vw;display: flex;position: sticky;top: 0;flex-wrap: wrap;align-items: center;z-index: 100;} 
.main_header.deactive { background: transparent; border-bottom: none; } 
.main_header.active {backdrop-filter: blur(1.625rem);-webkit-backdrop-filter: blur(1.625rem);} 
.main_header.sub_header.active {background: #fff; border-bottom: 1px solid #eeeeee;transition: all 0.3s;} 
.main_header.on { background: #fff; transition: all 0.3s;}

/* 스크롤 다운 시 흰배경 전환 — .on 의 시각 효과만 복제(드롭다운 펼침 .sub_item 룰은 제외). main.js initHeaderState 가 토글. */
.main_header.scrolled { /*background: #fff;*/backdrop-filter: blur(5px) brightness(1.1); transition: transform .6s ease, background .3s ease, backdrop-filter .3s ease; }
.main_header.scrolled .logo { background: url('../../../themes/simple/img/common/logo.svg') 50% no-repeat; background-size: contain; }
.main_header.scrolled a { color: #000; }
.site_map_btn.scrolled .ham i {background: #000;}
/* 헤더 AOS fade-down 낙차 축소 (기본 -100px → -20px) — 정렬 안 흔들리게 살짝만 내려옴. 애니메이션 종료(.aos-animate) 상태는 AOS 기본값 유지. */
.main_header [data-aos="fade-down"]:not(.aos-animate),
.site_map_btn [data-aos="fade-down"]:not(.aos-animate) { transform: translate3d(0, -20px, 0); }
/* 스크롤 방향 헤더 숨김/표시 — main.js 가 .header-hide 토글. 아래로 스크롤 시 위로 감춰지고, 위로 스크롤 시 다시 내려옴. */
.main_header { transition: transform .6s ease; }
.main_header.header-hide { transform: translateY(-100%); }
/* 고정 햄버거(site_map_btn)·사이드햄버거(sideTop)도 헤더와 함께 숨김/표시 */
.site_map_btn, .sideTop { transition: transform .6s ease, opacity .6s ease; }
.site_map_btn.header-hide, .sideTop.header-hide { transform: translateY(-200%); opacity: 0; }


.main_header .logo {display: inline-flex;align-items: center;justify-content: center; width: 14rem; height: 2rem; background: url('../../../themes/simple/img/common/logo_w.svg') 50% no-repeat; background-size: contain; } 
.main_header .logo > a {display: block;width: 100%;height: 100%;}
.main_header.on .logo{ background: url('../../../themes/simple/img/common/logo.svg') 50% no-repeat;background-size: contain;  } 
.main_header.sub_header.active .logo{ background: url('../../../themes/simple/img/common/logo.svg') 50% no-repeat;background-size: contain;  } 

/* nav 를 헤더 정중앙에 — 좌측 로고(14rem)와 대칭되도록 우측에 동일 패딩. auth-nav 는 absolute(흐름 밖)이라 nav 폭에 영향 없음 */
.main_header nav { flex: 1; margin: 0; height: 100%; width: auto; padding-right: 14rem; box-sizing: border-box; }

.main_header a { display: inline-block; width: 100%; font-size: 1.1rem; color: #fff; font-weight: 500; } 
.main_header.on a{ color: #000; } 
.main_header.on ~ .site_map_btn .ham i {background: #000;}
.main_header.sub_header.active a{ color: #000; } 

.main_header .navigator { height: 100%; display: flex; justify-content: center; } 

.main_header .menu_item { display: flex; height: 100%; padding: 0 2.1875rem; position: relative; align-items: center; justify-content: center; transition: all 0.5s ease; } 

.main_header.on .menu_item {padding: 0 3rem;} 

.main_header .sub_item {position: absolute;top: calc(100% + 1.25rem);left: 50%;padding: 0 0 0 2.1875rem;opacity: 0;height: 0;width: 0;overflow: hidden;transform: translateX(-50%);text-align: center;} 
.main_header.on .sub_item {padding: 0 0 0 0;opacity: 1;width: 100%;height: auto;overflow: visible;} 
.main_header.eng.on .sub_item {padding: 0 0 0 0;opacity: 1;width: 100%;height: auto;overflow: visible;text-align: center;} 
.main_header .sub_item a { position: relative; display: inline-block; width: auto; padding: .5rem 0.125rem; line-height: 1.2; font-size: 0.9rem; font-weight: 500; color: var(--sub-txt-color); transition: color .35s ease; }
/* 그라데이션 밑줄 — 왼쪽에서 차오름 */
.main_header .sub_item a::after { content: ''; position: absolute; left: 0; bottom: 0.1875rem; width: 100%; height: 0.125rem; border-radius: 0.125rem; background: linear-gradient(90deg, #0076ff, #33b6ff); transform: scaleX(0); transform-origin: left; transition: transform .45s cubic-bezier(.19,1,.22,1); }
.main_header .sub_item a:hover { color: #0076ff; }
.main_header .sub_item a:hover::after { transform: scaleX(1); }

.main_header .menu_item:first-child .sub_menu { padding-left: 0; } 

.nav_bg {position: absolute;top: 100%;left: 0;width: 100%;height: 0;background-color: #fff;transition: all 0.3s ease;z-index: -1;opacity: 0;border-bottom: 1px solid #eeeeee;} 

.main_header.on .nav_bg { position: absolute; height: 20.625rem; opacity: 1;} 
.main_header.eng.on .nav_bg { position: absolute; height: 20.625rem; opacity: 1; margin-top: 1px; } 

.navigator .deth1 { position: relative; overflow: hidden; display: block; text-align: center; -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; -webkit-animation-duration: 1s; animation-duration: 1s; -webkit-animation-fill-mode: both; animation-fill-mode: both; padding: 0; } 
.navigator .deth1 span { display: block; -webkit-transition: -webkit-transform 500ms cubic-bezier(0.68, -0.55, 0.265, 1.55); transition: -webkit-transform 500ms cubic-bezier(0.68, -0.55, 0.265, 1.55); transition: transform 500ms cubic-bezier(0.68, -0.55, 0.265, 1.55); transition: transform 500ms cubic-bezier(0.68, -0.55, 0.265, 1.55), -webkit-transform 500ms cubic-bezier(0.68, -0.55, 0.265, 1.55); } 
.navigator .deth1:after { position: absolute; top: 100%; left: 0; right: 0; content: attr(data-hover); display: inline; text-align: center; -webkit-transition: top 500ms cubic-bezier(0.68, -0.55, 0.265, 1.55); transition: top 500ms cubic-bezier(0.68, -0.55, 0.265, 1.55); } 
.navigator .menu_item:hover span { color: #0076ff; -webkit-transform: translateY(-100%); transform: translateY(-100%); } 
.navigator .menu_item:hover .deth1:after { top: 0; color: #0076ff; } 
.navigator .menu_item .deth1:active { -webkit-animation-name: rubberBand; animation-name: rubberBand; } 

.site_map_btn {width: 2rem;height: 2rem;cursor: pointer;z-index: 1000;position: fixed;top: 22px;right: 2vw;} 
/* 햄버거 3바 — hover 시 줄이 어긋나며 움직임 */
.site_map_btn .ham {display: flex;flex-direction: column;align-items: flex-end;justify-content: center;gap: 0.375rem;width: 100%;height: 100%;}
.site_map_btn .ham i {display: block;width: 2rem;height: 0.125rem;background: #fff;transition: width 0.3s ease, background 0.3s ease, transform 0.3s ease, opacity 0.3s ease;}
.site_map_btn .ham i:nth-child(2) {transition-delay: 0.05s;}
.site_map_btn .ham i:nth-child(3) {transition-delay: 0.1s;}
.site_map_btn:hover .ham i:nth-child(1) {width: 1.375rem;align-self: flex-start;}
.site_map_btn:hover .ham i:nth-child(2) {width: 2rem;}
.site_map_btn:hover .ham i:nth-child(3) {width: 1.375rem;}
/* 사이트맵 열림 → X */
.site_map_btn.is-open .ham {align-items: center;}
.site_map_btn.is-open .ham i {width: 2rem;background: #fff;}
.site_map_btn.is-open .ham i:nth-child(1) {transform: translateY(0.5rem) rotate(45deg);}
.site_map_btn.is-open .ham i:nth-child(2) {opacity: 0;}
.site_map_btn.is-open .ham i:nth-child(3) {transform: translateY(-0.5rem) rotate(-45deg);}

#google_translate_element{position: absolute;top: -62.4375rem;}
select.lang_btn{position: fixed;z-index: 1000;top: 1.875rem;right: 6.25rem;border: 1px solid #fff;color: #fff;padding: 0 1rem;border-radius: 3.125rem;font-family:var(--font-st1);font-size: 0.9rem;height: 2.5rem;background: transparent url('../../../themes/simple/img/common/select_w.png') calc(100% - 0.75rem) center no-repeat;margin: 0 !important;cursor: pointer;}
select.lang_btn:hover{color: #000;background: #fff url('../../../themes/simple/img/common/select.png') calc(100% - 0.75rem) center no-repeat;}
select.lang_btn.on{border-color: #000;color: #000;background: #fff url('../../../themes/simple/img/common/select.png') calc(100% - 0.75rem) center no-repeat;}
select.lang_btn.hover{color: #000;background: #fff url('../../../themes/simple/img/common/select.png') calc(100% - 0.75rem) center no-repeat;border-color: #000;}
.sub_header.lang_btn.active{border-color: #000;color: #000;background: #fff url('../../../themes/simple/img/common/select.png') calc(100% - 0.75rem) center no-repeat;}
.sub_header.lang_btn.on{border-color: #fff;color: #fff;}

/* 사이트맵 오버레이 — 풀스크린 블루 */
.site_map{position:fixed;inset:0;z-index:999;background:radial-gradient(130% 130% at 75% 12%, #2a54b3 0%, #163a8c 52%, #0f2868 100%);display:flex;align-items:flex-start;justify-content:center;overflow:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;opacity:0;visibility:hidden;transition:opacity .45s ease, visibility .45s ease;}
.site_map.open{opacity:1;visibility:visible;overflow-y:auto;}
.site_map .nav_flex_box{position:relative;width:100%;min-height:100%;padding:0;display:flex;justify-content:center;}
.site_map .nav_left_box{width:100%;min-height:100%;display:block;padding:0;}
/* 메뉴 = 가로 컬럼 (전체 높이 + 구분선 + 등장 stagger) */
.site_map .nav_left_box > ul{display:flex;justify-content:center;align-items:stretch;min-height:100%;}
.site_map .nav_left_box > ul > li{flex:1 1 0;min-width:0;margin:0;padding:13vh 1.5vw 5vh;text-align:center;display:flex;flex-direction:column;align-items:center;border-left:1px solid rgba(255,255,255,.16);opacity:0;transform:translateY(1.625rem);transition:opacity .5s ease, transform .5s ease, background .3s ease;}
.site_map .nav_left_box > ul > li:first-child{border-left:0;}
.site_map.open .nav_left_box > ul > li{opacity:1;transform:translateY(0);}
.site_map.open .nav_left_box > ul > li:nth-child(1){transition-delay:.10s;}
.site_map.open .nav_left_box > ul > li:nth-child(2){transition-delay:.16s;}
.site_map.open .nav_left_box > ul > li:nth-child(3){transition-delay:.22s;}
.site_map.open .nav_left_box > ul > li:nth-child(4){transition-delay:.28s;}
.site_map.open .nav_left_box > ul > li:nth-child(5){transition-delay:.34s;}
.site_map.open .nav_left_box > ul > li:nth-child(6){transition-delay:.40s;}
/* 컬럼 제목 (번호 숨김) */
.site_map .main_menu{margin-bottom:1.875rem;}
.site_map .main_menu span,
.site_map .main_menu br{display:none;}
.site_map .main_menu a{color:#fff;}
.site_map .main_menu p{position:relative;display:inline-block;font-size:1.7rem;font-weight:700;letter-spacing:.02em;color:#fff;transition:color .25s ease;}
.site_map .main_menu p::after{content:'';position:absolute;left:50%;bottom:-0.75rem;width:0;height:0.125rem;background:#7aa7ff;transform:translateX(-50%);transition:width .4s cubic-bezier(.2,.7,.2,1);}
/* 하위 메뉴 (세로 나열) */
.site_map .sub_menu ul{display:flex;flex-direction:column;gap:1.125rem;}
.site_map .sub_menu li{position:static;padding:0;}
.site_map .sub_menu li::after{display:none;}
.site_map .sub_menu li a{display:inline-block;color:rgba(255,255,255,.55);font-size:1rem;font-weight:400;transition:color .25s ease, transform .25s ease, text-shadow .25s ease;}
/* hover — 올린 컬럼만 또렷, 나머지는 흐리게 + 제목 밑줄 grow + 하위 밝게/살짝 이동 */
.site_map .nav_left_box > ul:hover > li{opacity:.4;transition:opacity .4s ease;}
.site_map .nav_left_box > ul:hover > li:hover{opacity:1;}
.site_map .nav_left_box > ul > li:hover .main_menu p::after{width:2.25rem;}
.site_map .nav_left_box > ul > li:hover .sub_menu li a{color:rgba(255,255,255,.9);}
.site_map .sub_menu li a:hover{color:#fff;font-weight:600;transform:scale(1.18);text-shadow:0 0 1rem rgba(122,167,255,.85);}
/* 우측 정보 박스 숨김 (참고 디자인 = 컬럼 중심) */
.site_map .nav_right_box{display:none;}

/* #topBtn 스타일은 common.css 로 이동(전 페이지 공통, 페이징 다음 위치) */

/* ===== header + 사이트맵 반응형 ===== */
@media screen and (max-width: 1600px){
   select.lang_btn{right: 5.625rem;}
}

@media screen and (max-width: 1200px){
   .main_header nav {display:none;}
   select.lang_btn{right: 4.6875rem;top: 2rem;}

   /* 사이트맵 — 세로 스크롤 + 3열 */
   .site_map {display: block;height: 100vh;height: 100dvh;overflow-y: auto !important;-webkit-overflow-scrolling: touch;}
   .site_map .nav_flex_box {min-height: 0 !important;height: auto;padding: 2.5rem 0;}
   .site_map .nav_left_box {min-height: 0 !important;height: auto;}
   .site_map .nav_left_box > ul {min-height: 0 !important;height: auto;flex-wrap: wrap;gap: 2.5rem 0;}
   .site_map .nav_left_box > ul > li {flex: 0 0 33.333%;border-left: 0;margin-bottom: 1.125rem;padding: 0 1.5vw;align-items: center;text-align: center;justify-content: flex-start;gap: 0;}
   .site_map .sub_menu ul {align-items: center;}
   .site_map .main_menu {margin-bottom: 1.125rem;}
   .site_map .main_menu p {font-size: 1.4rem;}
}

@media screen and (max-width: 900px){
   select.lang_btn{right: 3.75rem;}

   /* 사이트맵 — 1열 */
   .site_map .nav_left_box > ul {gap: 1.75rem 0;}
   .site_map .nav_left_box > ul > li {flex: 0 0 100%;width: 100%;}
   .site_map .main_menu {margin-bottom: 0.75rem;}
   .site_map .main_menu p {font-size: 1.25rem;}
   .site_map .sub_menu ul {gap: 0.75rem;}
   .site_map .sub_menu li a {font-size: 0.95rem;}
}


/**************** main ****************/
/* visual */
.visual_main {position: relative;height: 100vh;width: 100%;overflow: hidden;}
.visual_main video {position: absolute;top: 0;left: 0;width: 100%;height: 100%;object-fit: cover;object-position: center center;}
.overlay {position: absolute;height: 100vh;width: 100%;overflow: hidden;background-color: #000;opacity:0.5}
.visual_txt {position: absolute;inset: 0;display: flex;flex-direction: column;justify-content: center;align-items: flex-start;padding: 3vw;color: #fff;}
.visual_txt h2{font-size: 3.5rem;font-weight: 500;line-height: 1.3;margin-bottom: 1.25rem;}
.visual_txt p{font-size: 1.2rem;font-weight: 400;opacity: 0.8;line-height: 1.4;}
/* 메인 비주얼 텍스트 등장 애니메이션은 AOS(data-aos)로 대체 — main.js 의 animateVisualTxt 가 슬라이드마다 재생. */

/* 비주얼 텍스트 2번째 줄 강조 + 버튼 */
.visual_txt h2 .point {color: var(--main-color);font-weight: 700;}
.visual_btns {display: flex;flex-wrap: wrap;gap: 0.75rem;margin-top: 2.25rem;}
/* 비주얼 버튼 — 다크 테크 톤. 솔리드(글로우) + 글래스 라인 */
.v_btn {display: inline-flex;align-items: center;gap: 0.625rem;height: 3.375rem;padding: 0 1.875rem;border: 1px solid transparent;border-radius: 0.5rem;font-size: 1rem;font-weight: 600;letter-spacing: -0.01em;color: #fff;cursor: pointer;transition: transform 0.25s ease, box-shadow 0.25s ease, background 0.25s ease, border-color 0.25s ease;}
.v_btn .arr {display: inline-flex;font-size: 1.15em;line-height: 1;transition: transform 0.25s ease;}
.v_btn:hover {transform: translateY(-0.125rem);}
.v_btn:hover .arr {transform: translateX(0.25rem);}
/* primary — 솔리드 블루 + hover 글로우 */
.v_btn_primary {background: #3b6ef5;border-color: #3b6ef5;}
.v_btn_primary:hover {background: #2f5fe0;box-shadow: 0 0.75rem 1.625rem rgba(59, 110, 245, 0.45);}
/* line — 글래스 + hover 시 테두리·배경 강조 */
.v_btn_line {background: rgba(255, 255, 255, 0.06);border-color: rgba(255, 255, 255, 0.28);backdrop-filter: blur(0.375rem);-webkit-backdrop-filter: blur(0.375rem);}
.v_btn_line:hover {background: rgba(255, 255, 255, 0.14);border-color: rgba(255, 255, 255, 0.6);}

/* 비주얼 버튼 — KNL News 의 .news_btn 과 동일한 스타일 (아웃라인 펄 + 흰 원형 화살표) */
.visual_btns .v_btn,
.visual_btns .v_btn_primary,
.visual_btns .v_btn_line{height: auto;display: inline-flex;align-items: center;gap: 2.25rem;padding: 0.8125rem 0.8125rem 0.8125rem 1.875rem;border: 1px solid rgba(255,255,255,.4);border-radius: 3.125rem;background: transparent;color: #fff;font-size: 1rem;font-weight: 600;backdrop-filter: none;-webkit-backdrop-filter: none;box-shadow: none;transition: background .3s ease, border-color .3s ease;}
.visual_btns .v_btn:hover{transform: none;background: rgba(255,255,255,.08);border-color: #fff;box-shadow: none;}
.visual_btns .v_btn .arr{display: inline-flex;align-items: center;justify-content: center;width: 2.125rem;height: 2.125rem;border-radius: 50%;background: #fff;color: #111;font-size: 1.15rem;line-height: 1;transition: transform .3s ease;}
.visual_btns .v_btn:hover .arr{transform: translateX(0.25rem);}
/* 화살표 없는 버튼(도입 문의)은 좌우 대칭 패딩 */
.visual_btns .v_btn_line{gap: 0;padding: 0.8125rem 1.875rem;}

/* 하단 가로 탭 (JS 생성, 슬라이드 연동) */
.visual_main .visual_tab {position: absolute;left: 3vw;bottom: 2.5rem;z-index: 5;display: flex;align-items: center;gap: 2.25rem;}
.visual_main .visual_tab li {position: relative;display: flex;align-items: baseline;gap: 0.625rem;color: rgba(255,255,255,0.5);font-size: 1.05rem;font-weight: 500;cursor: pointer;padding-bottom: 0.625rem;border-bottom: 0.125rem solid transparent;white-space: nowrap;transition: color 0.3s ease, border-color 0.3s ease;}
.visual_main .visual_tab li .num {font-size: 0.85rem;font-weight: 700;opacity: 0.6;color: var(--main-color);}
/* 활성 탭 밑줄이 자동재생 시간에 맞춰 0→100% 채워짐 (--p 는 JS 가 갱신) */
.visual_main .visual_tab li::after {content: '';position: absolute;left: 0;bottom: -0.125rem;height: 0.1875rem;width: 0;background: var(--main-color);transition: width 0.12s linear;}
.visual_main .visual_tab li:hover {color: #fff;}
.visual_main .visual_tab li.on {color: #fff;border-bottom-color: rgba(255,255,255,0.25);}
.visual_main .visual_tab li.on::after {width: var(--p, 0%);}
.visual_main .visual_tab li.on .num {opacity: 1;}

/* 하단 우측 컨트롤 */
.visual_main .visual_ctrl {position: absolute;right: 3vw;bottom: 2.25rem;z-index: 5;display: flex;align-items: center;gap: 1rem;color: #fff;}
.visual_main .visual_ctrl .swiper-pagination {position: static;width: auto;font-size: 0;font-weight: 600;letter-spacing: 1px;color: rgba(255,255,255,0.9);display: inline-flex;}
/* current 다음 " / " 텍스트 숨김 (부모 font-size:0, 숫자 span 만 다시 키움) */
.visual_main .visual_ctrl .swiper-pagination-current,
.visual_main .visual_ctrl .swiper-pagination-total {font-size: 1rem;}
.visual_main .visual_ctrl .swiper-pagination-total {margin-left: 0.375rem;}
.visual_main .visual_ctrl .swiper-button-prev,
.visual_main .visual_ctrl .swiper-button-next {position: static;width: 2.75rem;height: 2.75rem;margin: 0;border: 1px solid rgba(255,255,255,0.4);border-radius: 50%;color: #fff;background-image: none;transition: background 0.25s ease;display: flex;align-items: center;justify-content: center;}
.visual_main .visual_ctrl .swiper-button-prev:hover,
.visual_main .visual_ctrl .swiper-button-next:hover {background: rgba(255,255,255,0.15);}
.visual_main .visual_ctrl .swiper-button-prev::after,
.visual_main .visual_ctrl .swiper-button-next::after,
.visual_main .visual_ctrl .swiper-button-prev::before,
.visual_main .visual_ctrl .swiper-button-next::before {
  content: none !important;
  display: none !important;
}
/* swiper 12 는 기본 화살표를 ::after 가 아니라 주입 SVG(.swiper-navigation-icon)로 그림 (swiper 11→12 변경, vendor CSS 확증).
   디자이너 chevron(.material-symbols-outlined)만 남기고 swiper 기본 SVG 화살표 제거. vendor 원본 미수정. */
.visual_main .visual_ctrl .swiper-button-prev .swiper-navigation-icon,
.visual_main .visual_ctrl .swiper-button-next .swiper-navigation-icon {
  display: none !important;
}
.visual_main .visual_ctrl .swiper-button-prev .material-symbols-outlined,
.visual_main .visual_ctrl .swiper-button-next .material-symbols-outlined {font-size: 1.5rem;line-height: 1;}
.visual_main .v_pause {width: 2.75rem;height: 2.75rem;border: 1px solid rgba(255,255,255,0.4);border-radius: 50%;background: transparent;color: #fff;cursor: pointer;display: inline-flex;align-items: center;justify-content: center;}
.visual_main .v_pause::before {content: '\23F8';font-size: 1.1rem;}        /* ⏸ */
.visual_main .v_pause.paused::before {content: '\25B6';font-size: 0.95rem;} /* ▶ */

@media (max-width: 1200px) {
  .visual_txt h2 {font-size: 3rem;}
}
@media (max-width: 900px) {
  .visual_main .visual_tab {display: none;}
  .visual_main .visual_ctrl {right: 50%;transform: translateX(50%);bottom: 1.375rem;gap: 0.75rem;}
  .visual_txt h2 br,
  .visual_txt p br {display: none;}
  .visual_txt h2 {font-size: 2.3rem;}
  .visual_txt p {font-size: 1.02rem;}
  /* 버튼 — 좁은 화면에서 안쪽 여백/원형 축소 (넘치면 줄바꿈) */
  .visual_btns {margin-top: 1.5rem;gap: 0.6rem;}
  .visual_btns .v_btn,
  .visual_btns .v_btn_primary {gap: 1.2rem;padding: 0.7rem 0.7rem 0.7rem 1.4rem;font-size: 0.92rem;}
  .visual_btns .v_btn .arr {width: 1.9rem;height: 1.9rem;font-size: 1rem;}
  .visual_btns .v_btn_line {gap: 0;padding: 0.7rem 1.4rem;}
}

.slide_btn_box {position: absolute;top: 70%;width: 20.3125rem;z-index: 30;padding: 0 3vw;display: flex;justify-content: space-between;align-items: center;gap: 1rem;}
.slide_btn_box .swiper-button-next,
.slide_btn_box .swiper-button-prev {width: 3.75rem;margin-top: 0;background-size: contain;position: static;display: inline-block;z-index: 11;}
.swiper-button-next:after, .swiper-rtl .swiper-button-prev:after,
.swiper-button-prev:after, .swiper-rtl .swiper-button-next:after {display: none;}
.swiper-button-prev, .swiper-container-rtl .swiper-button-prev {background-image: url('../../../themes/simple/img/common/main_prev_btn_w.png');background-repeat: no-repeat;background-position: 50%;transition: 0.3s;}
.slide_btn_box .swiper-button-next:hover {background-image: url('../../../themes/simple/img/common/main_next_btn.png');}
.swiper-button-next,.swiper-container-rtl .swiper-button-next { background-image: url('../../../themes/simple/img/common/main_next_btn_w.png');background-repeat: no-repeat;background-position: 50%;left: auto;transition: 0.3s;}
.slide_btn_box .swiper-button-prev:hover {background-image: url('../../../themes/simple/img/common/main_pre_btn.png');}
.swiper-container-horizontal>.swiper-pagination-bullets,
.swiper-pagination-custom,
.swiper-pagination-fraction {font-size: 0;width: auto;z-index: 9;position: static !important;}
.swiper-pagination-fraction span {font-size: 1rem;line-height: 3rem;color: #fff;font-weight: 700;}
.swiper-pagination-fraction span.swiper-pagination-total {padding-left: 1.5rem;position: relative;}
.swiper-pagination-fraction span.swiper-pagination-total:before {content: '';width: 1rem;height: 1px;background: rgba(255, 255, 255, 0.5);position: absolute;top: 50%;
left: 0.25rem;transform: rotate(-60deg);}
.slide_btn_box .progress-round{display: inline-flex;}


@media screen and (max-width: 900px){
   .slide_btn_box {top: 80%;}
}


/* 스크롤 진입 애니메이션(.ani)은 ani.css 로 분리 */

/* main_sc1 — Our Mission + 통계 패널 */
.main_sc1 {position: relative;padding: 12rem 0 0 0;overflow: hidden;}
.main_sc1::before{content: '';position: absolute;left: -6.25rem;top: 8%;width: 50rem;height: 50rem;max-width: 100vw;background: radial-gradient(circle, rgba(91,124,255,.18), rgba(138,108,255,.06) 45%, transparent 70%);pointer-events: none;z-index: 0;}
.main_sc1 > *{position: relative;z-index: 1;}
/* Our Mission + Solutions 공통 지구본 배경 wrap */
.mission_wrap{position: relative;background: #161616;overflow: hidden;}
.mission_wrap .mission_bg{position: absolute;inset: 0;width: 100%;height: 100%;z-index: 0;pointer-events: none;}
/* 두 섹션은 투명 → wrap 의 지구본이 비쳐 보이도록 */
.mission_wrap .main_sc1,
.mission_wrap .main_sc2{position: relative;z-index: 1;background: transparent;}

/* 미션 헤더 (좌: 영문 / 우: 미션 문구) */
.main_sc1 .mission_head{display: flex;align-items: flex-start;gap: 4.375rem;}
.main_sc1 .mission_en{flex: 0 0 auto;font-size: 3.4rem;font-weight: 800;letter-spacing: -.01em;line-height: 1.1;background: linear-gradient(120deg, #ffffff 30%, #7fb0ff 70%, #a78bff);-webkit-background-clip: text;background-clip: text;-webkit-text-fill-color: transparent;}
.main_sc1 .mission_txt{flex: 1;position: relative;padding-left: 3.375rem;}
.main_sc1 .mission_txt h3{font-size: 2.7rem;font-weight: 600;line-height: 1.35;color: #fff;}
.main_sc1 .mission_txt p{font-size: 1.05rem;line-height: 1.6;color: rgba(255,255,255,.55);}

/* 통계 패널 */
.main_sc1 .stat_panel{position: relative;display: flex;align-items: stretch;gap: 1.25rem;padding: 2rem 3.125rem;border-radius: 1.75rem;background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.08));backdrop-filter: blur(.2rem);border: 1px solid rgba(255,255,255,.08);overflow: hidden;}
/* 상단 그라데이션 액센트 라인 */
.main_sc1 .stat_panel::before{content: '';position: absolute;top: 0;left: 8%;width: 84%;height: 0.125rem;background: linear-gradient(90deg, transparent, rgba(127,176,255,.7), rgba(167,139,255,.7), transparent);}
.main_sc1 .num_box{flex: 1;display: flex;align-items: center;}
.main_sc1 .num_box li{position: relative;flex: 1;display: flex;flex-direction: column;gap: 1rem;padding: 0.375rem 1.375rem;transition: transform .35s ease;}
/* 그라데이션 세로 구분선 */
.main_sc1 .num_box li + li::before{content: '';position: absolute;left: 0;top: 50%;transform: translateY(-50%);width: 1px;height: 4rem;background: linear-gradient(180deg, transparent, rgba(255,255,255,.2), transparent);}
.main_sc1 .num_box li:hover{transform: translateY(-0.375rem);}
.main_sc1 .num_box .label{font-size: 1rem;font-weight: 500;letter-spacing: .02em;color: rgba(255,255,255,.55);transition: color .35s ease;}
.main_sc1 .num_box li:hover .label{color: #7fb0ff;}
.main_sc1 .num_box .num{display: inline-flex;align-items: flex-start;line-height: 1;}
.main_sc1 .num_box b{font-size: 4.2rem;font-weight: 400;letter-spacing: -.02em;font-family: var(--font-st1);background: linear-gradient(180deg, #ffffff 38%, #8fb8ff 125%);-webkit-background-clip: text;background-clip: text;-webkit-text-fill-color: transparent;}
.main_sc1 .num_box .suffix{font-size: 1.9rem;font-weight: 400;font-style: normal;color: #7fb0ff;margin-left: 0.25rem;margin-top: 0.375rem;}

/* Since 카드 */
.main_sc1 .since_card{position: relative;overflow: hidden;flex: 0 0 15.625rem;display: flex;flex-direction: column;justify-content: space-between;padding: 1.875rem;border-radius: 1.25rem;background: linear-gradient(150deg, #4f7bff 0%, #3358e6 55%, #6a4ff0 100%);box-shadow: 0 1.25rem 2.75rem rgba(59,88,230,.45);}
/* 카드 코너 글로우 */
.main_sc1 .since_card::before{content: '';position: absolute;right: -2.5rem;top: -2.5rem;width: 10rem;height: 10rem;border-radius: 50%;background: radial-gradient(circle, rgba(255,255,255,.35), transparent 65%);pointer-events: none;}
.main_sc1 .since_card .since_label{position: relative;font-size: 1.3rem;font-weight: 600;color: rgba(255,255,255,.8);}
.main_sc1 .since_card .since_year{position: relative;font-size: 3.6rem;font-weight: 700;line-height: 1;margin-top: 0.125rem;color: #fff;font-family: var(--font-st1);}
.main_sc1 .since_card .since_link{position: relative;display: inline-flex;align-items: center;gap: 0.625rem;margin-top: 2.125rem;font-size: 1rem;color: #fff;}
.main_sc1 .since_card .since_link .material-symbols-outlined{font-size: 1.125rem;border: 1px solid rgba(255,255,255,.5);border-radius: 50%;padding: 0.1875rem;transition: background .3s ease, transform .3s ease;}
.main_sc1 .since_card .since_link:hover .material-symbols-outlined{background: rgba(255,255,255,.25);transform: rotate(90deg);}

@media screen and (max-width: 1200px){
   .main_sc1 .mission_head{flex-direction: column;gap: 1.5rem;}
   .main_sc1 .mission_en{font-size: 2.8rem;}
   .main_sc1 .mission_txt{padding-left: 1.5rem;}
   .main_sc1 .stat_panel{flex-direction: column;gap: 2.125rem;padding: 2.5rem;}
   .main_sc1 .num_box{flex-wrap: wrap;gap: 1.875rem 0;}
   .main_sc1 .num_box li{flex: 0 0 50%;}
   .main_sc1 .since_card{flex: 1;flex-direction: row;align-items: center;justify-content: space-between;}
   .main_sc1 .since_card .since_link{margin-top: 0;}
}

@media screen and (max-width: 900px){
   .main_sc1 .mission_txt h3{font-size: 1.6rem;}
   .main_sc1 .mission_txt p{font-size: .95rem;}
   .main_sc1 .num_box b{font-size: 3rem;}
   .main_sc1 .num_box .suffix{font-size: 1.4rem;}
   .main_sc1 .since_card{flex-direction: column;align-items: flex-start;gap: 0.875rem;}
   .main_sc1 .since_card .since_link{margin-top: 0.25rem;}
}

/* main_sc2 — Our Solutions (탭 + 코버플로우 슬라이더) */
.main_sc2{position: relative;padding: 10rem 0 0 0;overflow: hidden;text-align: center;}
/* 배경 글로우 — 깊이감 */
.main_sc2::before{content: '';position: absolute;left: 50%;top: 42%;width: 68.75rem;height: 68.75rem;max-width: 130vw;transform: translate(-50%,-50%);background: radial-gradient(circle, rgba(91,124,255,.20), rgba(138,108,255,.08) 42%, transparent 70%);pointer-events: none;z-index: 0;}
.main_sc2 > *{position: relative;z-index: 1;}
.main_sc2 .sol_eyebrow{display: inline-block;margin-bottom: 1rem;font-size: .85rem;font-weight: 600;letter-spacing: .28em;text-transform: uppercase;color: #7fb0ff;}
.main_sc2 .sol_head h2{font-size: 3.4rem;font-weight: 700;letter-spacing: -.01em;line-height: 1.2;color: #fff;}
.main_sc2 .sol_head h2 .grad{background: linear-gradient(90deg, #5b7cff, #8a6cff);-webkit-background-clip: text;background-clip: text;-webkit-text-fill-color: transparent;}
.main_sc2 .sol_head p{margin-top: 1.125rem;font-size: 1.05rem;line-height: 1.6;color: rgba(255,255,255,.6);}

/* 탭 — 펄(pill) */
.main_sc2 .sol_tabs{display: flex;flex-wrap: wrap;justify-content: center;gap: 0.625rem;margin: 3.375rem auto 0;max-width: 80rem;}
.main_sc2 .sol_tabs li{flex: 0 0 auto;padding: 0.6875rem 1.375rem;border: 1px solid rgba(255,255,255,.22);border-radius: 3.125rem;font-size: 1.05rem;font-weight: 500;color: rgba(255,255,255,.6);cursor: pointer;white-space: nowrap;transition: color .3s ease, background .3s ease, border-color .3s ease;}
.main_sc2 .sol_tabs li:hover{color: #fff;border-color: rgba(255,255,255,.5);}
.main_sc2 .sol_tabs li.on{background: var(--main-color-dark);color: #fff;border-color: transparent;font-weight: 600;box-shadow: 0 0.5rem 1.375rem rgba(91,124,255,.45);}

/* 슬라이더 */
.main_sc2 .sol_slider{position: relative;margin-top: 3.75rem;cursor: none;}
.main_sc2 .sol_slider *{cursor: none;}
.main_sc2 .sol_swiper{overflow: visible;max-width: 87.5rem;margin: 0 auto;cursor: none;}
.main_sc2 .sol_swiper .swiper-slide{width: 58%;max-width: 48.75rem;transition: opacity .4s ease;}
.main_sc2 .sol_swiper .swiper-slide:not(.swiper-slide-active){opacity: .35;}
.main_sc2 .sol_card{position: relative;border-radius: 1.375rem;overflow: hidden;background: linear-gradient(155deg, #ffffff, #e3ebfc 55%, #dbe4fb);aspect-ratio: 16 / 9;display: flex;align-items: center;justify-content: center;box-shadow: 0 1.875rem 3.75rem rgba(0,0,0,.45);transition: box-shadow .4s ease;}
/* 카드 상단 sheen + 코너 글로우 */
.main_sc2 .sol_card::before{content: '';position: absolute;top: -40%;left: -20%;width: 80%;height: 120%;background: radial-gradient(circle, rgba(255,255,255,.85), transparent 60%);transform: rotate(20deg);pointer-events: none;}
.main_sc2 .sol_card::after{content: '';position: absolute;right: -30%;bottom: -40%;width: 70%;height: 100%;background: radial-gradient(circle, rgba(127,176,255,.45), transparent 60%);pointer-events: none;}
.main_sc2 .sol_card img{position: absolute;inset: 0;z-index: 1;width: 100%;height: 100%;object-fit: cover;}
/* 활성 카드 — 글로우 링 강조 */
.main_sc2 .swiper-slide-active .sol_card{box-shadow: 0 2.125rem 4.375rem rgba(0,0,0,.5), 0 0 0 1px rgba(127,176,255,.5), 0 0 3.75rem rgba(91,124,255,.4);}

/* 마우스를 따라다니는 커서형 View More — JS 가 <body> 직속으로 이동(transform 조상 영향 제거) */
.sol_cursor{position: fixed;left: 0;top: 0;width: 7.25rem;height: 7.25rem;border-radius: 50%;display: flex;flex-direction: column;align-items: center;justify-content: center;gap: 0.25rem;color: #fff;font-size: .9rem;font-weight: 500;background: linear-gradient(145deg, #5b7cff, #8a6cff);box-shadow: 0 1rem 2.125rem rgba(91,124,255,.5);pointer-events: none;opacity: 0;transform: translate(-50%,-50%) scale(.5);transition: opacity .25s ease, transform .25s ease;z-index: 1000;}
.sol_cursor.show{opacity: 1;transform: translate(-50%,-50%) scale(1);}
.sol_cursor .material-symbols-outlined{font-size: 1.5rem;}
.sol_cursor em{font-style: normal;}

/* prev/next */
.main_sc2 .sol_prev,
.main_sc2 .sol_next{position: absolute;top: 50%;transform: translateY(-50%);width: 3.25rem;height: 3.25rem;border-radius: 50%;display: flex;align-items: center;justify-content: center;background: rgba(255,255,255,.08);border: 1px solid rgba(255,255,255,.22);color: #fff;cursor: pointer;z-index: 10;transition: background .3s ease, border-color .3s ease;}
.main_sc2 .sol_prev{left: calc(50% - 26.25rem);}
.main_sc2 .sol_next{right: calc(50% - 26.25rem);}
.main_sc2 .sol_prev:hover,
.main_sc2 .sol_next:hover{background: rgba(255,255,255,.2);border-color: rgba(255,255,255,.5);}

/* 캡션 */
.main_sc2 .sol_caption{display: flex;align-items: baseline;justify-content: center;gap: 1.5rem;margin-top: 2.875rem;flex-wrap: wrap;}
.main_sc2 .sol_caption .sol_title{position: relative;padding-left: 1.125rem;font-size: 1.6rem;font-weight: 700;color: #fff;}
.main_sc2 .sol_caption .sol_title::before{content: '';position: absolute;left: 0;top: 50%;transform: translateY(-50%);width: 0.3125rem;height: 1.375rem;border-radius: 0.1875rem;background: linear-gradient(180deg, #5b7cff, #8a6cff);}
.main_sc2 .sol_caption .sol_desc{font-size: 1.05rem;color: rgba(255,255,255,.6);}
.main_sc2 .sol_caption .sol_more{display: inline-flex;align-items: center;gap: 0.35rem;font-size: 0.95rem;font-weight: 600;color: #7fb0ff;white-space: nowrap;transition: color .25s ease, gap .25s ease;}
.main_sc2 .sol_caption .sol_more .material-symbols-outlined{font-size: 1.1rem;}
.main_sc2 .sol_caption .sol_more:hover{color: #fff;gap: 0.7rem;}

@media screen and (max-width: 1200px){
   .main_sc2 .sol_swiper .swiper-slide{width: 72%;}
   .main_sc2 .sol_prev{left: 1vw;}
   .main_sc2 .sol_next{right: 1vw;}
}

@media screen and (max-width: 900px){
   .main_sc2{padding: 5.625rem 2vw;}
   .main_sc2 .sol_head h2{font-size: 2rem;}
   .main_sc2 .sol_tabs{gap: 0.5rem;}
   .main_sc2 .sol_tabs li{padding: 0.5rem 1rem;font-size: .9rem;}
   .main_sc2 .sol_swiper .swiper-slide{width: 86%;}
   .main_sc2 .sol_prev,.main_sc2 .sol_next{display: none;}
   .main_sc2 .sol_caption{flex-direction: column;gap: 0.5rem;margin-top: 1.875rem;}
   .main_sc2 .sol_caption .sol_desc{text-align: left;}
}

/* main_news — PR 뉴스 (좌: 인트로 / 우: 리스트) */
/* 배경: (1)가독성용 어두운 오버레이 → (2)배경이미지 → (3)이미지 없을 때 fallback 네이비
   ※ 깨끗한(라이선스) 이미지를 /themes/simple/img/main/news_bg.jpg 로 업로드하면 자동 적용 */
.main_news{position: relative;padding: 10rem 0 10rem 0;overflow: hidden;background: linear-gradient(90deg, rgba(8,13,31,.94) 0%, rgba(8,13,31,.62) 52%, rgba(8,13,31,.42) 100%), url('../../../themes/simple/img/main/news_bg.jpg') center center / cover no-repeat, radial-gradient(135% 120% at 80% 45%, #16264f 0%, #0c1430 52%, #080d1f 100%);}
/* 이미지가 아직 없을 때도 분위기 유지하는 글로우 */
.main_news::before{content: '';position: absolute;inset: 0;z-index: 0;pointer-events: none;background: radial-gradient(38% 55% at 82% 34%, rgba(140,175,255,.18), transparent 62%), radial-gradient(46% 40% at 66% 84%, rgba(60,95,210,.12), transparent 66%);filter: blur(0.5rem);}
.main_news > .wFix{position: relative;z-index: 1;}
.main_news .news_inner{display: flex;gap: 4.375rem;align-items: flex-start;}
.main_news .news_intro{flex: 0 0 36%;}
.main_news .news_eyebrow{display: inline-block;margin-bottom: 1.375rem;font-size: .95rem;font-weight: 700;letter-spacing: .12em;color: #5b7cff;}
.main_news .news_title{font-size: 3.4rem;font-weight: 700;line-height: 1.1;color: #fff;}
.main_news .news_title .grad{background: linear-gradient(90deg, #5b7cff, #8a6cff);-webkit-background-clip: text;background-clip: text;-webkit-text-fill-color: transparent;}
.main_news .news_intro > p{margin-top: 1.25rem;font-size: 1.05rem;line-height: 1.6;color: rgba(255,255,255,.55);}
.main_news .news_btn{display: inline-flex;align-items: center;gap: 2.25rem;margin-top: 2.875rem;padding: 0.8125rem 0.8125rem 0.8125rem 1.875rem;border: 1px solid rgba(255,255,255,.4);border-radius: 3.125rem;color: #fff;font-size: 1rem;font-weight: 600;transition: background .3s ease, border-color .3s ease;}
.main_news .news_btn .dot{display: inline-flex;align-items: center;justify-content: center;width: 2.125rem;height: 2.125rem;border-radius: 50%;background: #fff;color: #111;transition: transform .3s ease;}
.main_news .news_btn .dot .material-symbols-outlined{font-size: 1.25rem;}
.main_news .news_btn:hover{background: rgba(255,255,255,.08);border-color: #fff;}
.main_news .news_btn:hover .dot{transform: translateX(0.25rem);}

.main_news .news_list{flex: 1;min-width: 0;border-top: 1px solid rgba(255,255,255,.4);}
.main_news .news_list li{border-bottom: 1px solid rgba(255,255,255,.12);}
.main_news .news_list li a{display: flex;align-items: center;justify-content: space-between;gap: 1.875rem;padding: 2.75rem 0.5rem;transition: padding-left .35s ease;}
.main_news .news_subj{flex: 1;min-width: 0;font-size: 1.3rem;font-weight: 600;color: #fff;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;transition: color .3s ease;}
.main_news .news_date{flex: 0 0 auto;font-size: .82rem;color: rgba(255,255,255,.4);letter-spacing: .02em;}
.main_news .news_list li a:hover{padding-left: 1.375rem;}
.main_news .news_list li a:hover .news_subj{color: #7fb0ff;}

@media screen and (max-width: 1200px){
   .main_news{padding: 5.625rem 0;}
   .main_news .news_inner{flex-direction: column;gap: 2.5rem;}
   .main_news .news_intro{flex: none;width: 100%;}
   /* 제목 한 줄 말줄임 → 2줄까지 표시 후 줄임 (반응형에서 잘림 완화) */
   .main_news .news_list li a{align-items: flex-start;}
   .main_news .news_subj{white-space: normal;display: -webkit-box;-webkit-line-clamp: 2;line-clamp: 2;-webkit-box-orient: vertical;line-height: 1.45;}
   .main_news .news_date{margin-top: 0.2rem;}
}
@media screen and (max-width: 900px){
   .main_news .news_title{font-size: 2.4rem;}
   .main_news .news_subj{font-size: 1.05rem;}
   .main_news .news_list li a{padding: 1.375rem 0.375rem;gap: 1rem;}
}

/* main_sc3 */
.main_sc3{overflow: hidden;position: relative;padding: 10rem 0 0 0;}
.main_sc3 .tit{margin:0 auto 4.375rem;text-align: center;}
.main_sc3 .tit h2{font-weight: 600;font-size:3rem}
.main_sc3 .tit p{font-size: 1.25rem;color: #ffffff80;}

/* 메인 3D 포트폴리오 (참고 디자인: 좌측 리드 + 라벨 + 둥근 카드 행) */
/* 여백·배경 Solutions(main_sc2)와 통일 — 세로 패딩 + 다크 배경, 좌우는 .wFix 담당 */
/* 기본 다크 → 스크롤 진입 시 .in-light 로 화이트 전환 (글자·카드·버튼 색 함께) */
.main_portfolio{position: relative;overflow: hidden;padding: 10rem 0 10rem 0;background: #161616;transition: background .6s ease;}
.main_portfolio.in-light{background: #ffffff;}
.main_portfolio .tit{text-align: left;margin: 0 0 3.75rem;}
.main_portfolio .port_lead{font-size: 2.7rem;font-weight: 700;line-height: 1.35;color: #fff;transition: color .6s ease;}
.main_portfolio.in-light .port_lead{color: #111;}
.main_portfolio .port_eyebrow{display: inline-block;margin-top: 1.75rem;font-size: 1.9rem;font-weight: 800;letter-spacing: -.01em;background: linear-gradient(90deg, #5b7cff, #8a6cff);-webkit-background-clip: text;background-clip: text;-webkit-text-fill-color: transparent;}
.main_portfolio .tab{justify-content: flex-start;gap: 0.75rem;margin: 0 0 3.125rem;}
.main_portfolio .tab a{padding: 0.6875rem 1.375rem;border: 1px solid rgba(255,255,255,.22);border-radius: 3.125rem;color: rgba(255,255,255,.6);font-size: 1.05rem;font-weight: 500;background: transparent;transition: color .3s ease, background .3s ease, border-color .3s ease;}
.main_portfolio .tab a:hover{color: #fff;border-color: rgba(255,255,255,.5);background: transparent;}
.main_portfolio .tab a.on,
.main_portfolio .tab a.on:hover{background: var(--main-color-dark);border-color: transparent;color: #fff;font-weight: 600;box-shadow: 0 0.5rem 1.375rem rgba(91,124,255,.45);}
/* 카드 영역은 wFix 밖 — 화면 전체 폭(full-bleed) */
.main_portfolio .tab_con.on{display: flex;flex-wrap: wrap;gap: 1rem;width: 100vw;max-width: 100vw;margin-left: calc(50% - 50vw);margin-right: calc(50% - 50vw);padding: 0 2vw;box-sizing: border-box;}
.main_portfolio .tab_con a{flex: 0 0 auto;width: calc((100% - 6rem) / 5);display: block;position: relative;overflow: hidden;height: 100%;margin-top: 0 !important;border-radius: 1.25rem;background: linear-gradient(160deg, #1b2c4f, #0f1830);border: 1px solid rgba(255,255,255,.06);transition: background .6s ease, border-color .6s ease;}
.main_portfolio.in-light .tab_con a{background: #eef1f7;border-color: rgba(0,0,0,.08);}
.main_portfolio .tab_con a img{display: block;width: 100%;height: 100%;aspect-ratio: 1 / 1;object-fit: cover;}
/* none_image 플레이스홀더 — 실제 이미지 넣기 전 카드에 꽉 채움 */
.main_portfolio .tab_con a .none_image{width: 100%;aspect-ratio: 1 / 1;}
/* hover 원형 리빌(사이트 톤) + .txt 페이드인 */
.main_portfolio .tab_con a::before{content: '';position: absolute;top: 50%;left: 50%;z-index: 2;display: block;width: 0;height: 0;border-radius: 100%;transform: translate(-50%, -50%);opacity: 0;background: linear-gradient(147deg, rgba(91,124,255,0.5) 0%, rgba(138,108,255,0.92) 100%);}
.main_portfolio .tab_con a:hover::before{animation: circle .75s;animation-fill-mode: forwards;}
.main_portfolio .tab_con a .txt{position: absolute;bottom: 1.875rem;left: 1.875rem;z-index: 10;text-align: left;color: #fff;font-size: 1.125rem;opacity: 0;transition: all .3s;}
.main_portfolio .tab_con a:hover .txt{opacity: 1;}
.main_portfolio .tab_con a h4{font-size: 1.5rem;font-weight: 600;}
.main_portfolio .tab_con a .txt .tag{color: #cfe0ff;font-size: 1rem;}
.main_portfolio .more{font-size: 0.8rem;letter-spacing: .05em;}
.main_portfolio .more .material-symbols-outlined{font-size: 1rem;}
/* More 버튼 — absolute 해제, 카드 아래 자연스럽게 가운데 + hover 네모 라인 드로우 */
.main_portfolio .more_btn{position: relative;transform: none;width: fit-content;padding: 1rem 2.6rem;color: #fff;font-size: 1.2rem;letter-spacing: .03em;font-weight: 600;transition: color .6s ease;}
.main_portfolio.in-light .more_btn{color: #111;}
.main_portfolio .bg_txt{color: #fff;opacity: 0.08;transition: color .6s ease;}
.main_portfolio.in-light .bg_txt{color: #111;opacity: 0.05;}
.main_portfolio .more_btn::before,
.main_portfolio .more_btn::after{content: '';position: absolute;width: 0;height: 0;box-sizing: border-box;transition: width .3s ease, height .3s ease .3s;}
.main_portfolio .more_btn::before{top: 0;left: 0;border-top: 1px solid #fff;border-left: 1px solid #fff;}
.main_portfolio .more_btn::after{bottom: 0;right: 0;border-bottom: 1px solid #fff;border-right: 1px solid #fff;}
.main_portfolio.in-light .more_btn::before{border-top-color: #111;border-left-color: #111;}
.main_portfolio.in-light .more_btn::after{border-bottom-color: #111;border-right-color: #111;}
.main_portfolio .more_btn:hover::before,
.main_portfolio .more_btn:hover::after{width: 100%;height: 100%;}
.main_sc2 .sol_card .none_image{width: 100%;height: 100%;}
@media screen and (max-width: 1200px){
   .main_portfolio .tab_con a{width: calc((100% - 3rem) / 3);}
}
@media screen and (max-width: 900px){
   .main_portfolio .port_lead{font-size: 1.7rem;}
   .main_portfolio .port_eyebrow{font-size: 1.5rem;}
   .main_portfolio .tab_con a{width: calc((100% - 1.5rem) / 2);}
}

.main_sc3 .tab{margin: 0 auto;display: flex;gap: 0.625rem;justify-content: center;margin-bottom: 6.25rem;align-items: center;flex-wrap: wrap;}
.main_sc3 .tab a{color: #fff;font-size: 1rem;padding: 0.625rem 1.875rem;border-radius: 3.125rem;transition: all 0.3s;}
.main_sc3 .tab a.on,.main_sc3 .tab a:hover{}

.main_sc3 .tab_con{text-align: center;display: none;justify-content: center;gap: 1rem;}
.main_sc3 .tab_con.on{display: flex;}
.main_sc3 .tab_con a,.main_sc3 .tab_con a img{display: block;}
.main_sc3 .tab_con a:nth-child(2){margin-top: 10rem;}
.main_sc3 .tab_con a {position: relative;overflow: hidden;height: 100%;}
.main_sc3 .tab_con a::before {position: absolute;top: 50%;left: 50%;z-index: 2;display: block;content: '';width: 0;height: 0;background: rgb(51,220,255);
  background: linear-gradient(147deg, rgba(51,220,255,0.48) 0%, rgba(0,44,119,0.8631827731092436) 100%);border-radius: 100%;-webkit-transform: translate(-50%, -50%);transform: translate(-50%, -50%);opacity: 0;}
.main_sc3 .tab_con a:hover::before {-webkit-animation: circle .75s;animation: circle .75s;animation-fill-mode: forwards;}
.main_sc3 .tab_con a:hover .txt {opacity: 1;}
.main_sc3 .tab_con a .txt{position: absolute;color: #fff;bottom: 1.875rem;left: 1.875rem;text-align: left;font-size: 1.125rem;z-index: 10;opacity: 0;transition: all 0.3s;}
.main_sc3 .tab_con a h4{font-size: 1.5rem;}
.main_sc3 .tab_con a .tag{font-size: 1rem;}
.more{display: flex;gap: 0.625rem;align-items: center;}
.more img{transition: all 0.3s;}
.more:hover img{margin-left: 1.25rem;}
.more .material-symbols-outlined{font-size: 1.2rem;line-height: 1;transition: transform 0.3s ease;}
.more:hover .material-symbols-outlined{transform: translateX(0.4rem);}
.main_sc3 .tab_con a .more img{display: block;margin-top: -0.25rem;}

.no_data{font-size: 1.185rem;text-align: center;opacity: 0.4;padding: 2.5rem 0 5rem;}
.bg_txt{position: absolute;left: 13%;bottom:0;z-index: 2;opacity: 0.12;font-size: 7rem;font-weight: 400;color: #fff;white-space: nowrap;line-height: 1;animation: title-bg-scroll 20s infinite linear;overflow: hidden;cursor: context-menu;}

@keyframes title-bg-scroll {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-50%);
    }
}

@-webkit-keyframes circle {
   0% {
      opacity: 1;
   }
   40% {
      opacity: 1;
   }
   100% {
      width: 200%;
      height: 200%;
      opacity: 1;
   }
}
@keyframes circle {
   0% {
      opacity: 1;
   }
   40% {
      opacity: 1;
   }
   100% {
      width: 200%;
      height: 200%;
      opacity: 1;
   }
}

@media screen and (max-width: 1200px){
   .main_sc3 .tab{gap: 1.5625rem;}
   .main_sc3 .tab_con{flex-direction: column;align-items: center;}
   .main_sc3 .tab_con a:nth-child(2){margin-top: 0;}

   .bg_txt{font-size: 5rem;}
}



/**************** footer ****************/
footer{background-color: #1a1a1a;color: #A4A4A4;font-size: 1rem;}
footer .top{padding: 1.25rem 2vw;border-bottom: 1px solid #404040;display: flex;align-items: center;gap: 5rem;}
footer .top a{color: #a4a4a4;display: block;font-size: 1rem;}
footer .bot{padding: 2.5rem 2vw;display: flex;gap: 6.875rem;}
footer .bot .left a{display: block;margin-bottom: 1.25rem;}
footer .bot .left address{margin-top: 0.625rem;}
/* 회사 정보 — 정의목록(dt 라벨 / dd 값), 가로 나열 + 구분점 */
footer .bot .left .biz_info{display: flex;flex-wrap: wrap;align-items: center;margin-top: 0.75rem;font-size: 0.95rem;line-height: 1.7;}
footer .bot .left .biz_info dt{margin: 0;color: #8f8f8f;}
footer .bot .left .biz_info dt::after{content: ':';margin: 0 0.3rem 0 0.15rem;}
footer .bot .left .biz_info dd{margin: 0;}
footer .bot .left .biz_info dd::after{content: '·';margin: 0 0.6rem;color: #555;}
footer .bot .left .biz_info dd:last-of-type::after{content: none;}
footer .bot .left cite{color: #4F4F4F;margin-top: 1.25rem;display: block;font-style: normal;}
footer .bot .right h4{color: #fff;font-size: 2.5rem;}
footer .bot .right .d_flex{gap: 2.1875rem;}
footer .bot .right .d_flex .num p{color: #fff;font-size: 1.875rem;}

@media screen and (max-width: 1200px){
   footer .bot{flex-direction: column;gap: 3.125rem;}
}


/**************** sub ****************/



.wrap{max-width:75rem;margin:6.25rem auto;padding: 0 2vw;}

.tit_st1 {text-align: center;font-weight: 600;color: #000;font-size: 2.4rem;line-height: 1;margin-bottom: 3.125rem;}
.tit_st1 span {position: relative;line-height: 1;}
.tit_st1 span::after {content: '';position: absolute;right: 0;bottom: 0.375rem;width: 100%;height: 1px;background: #000;display: block;}
.tit_st1 .circle {display: inline-block;width: 0.4375rem;height: 0.4375rem;background: #039AFF;border-radius: 50%;transform: translate(0.3125rem, 0.125rem);}
.tit_st2 {font-size: 1.5rem;font-weight:600;margin-bottom:1.25rem;color:#000;}

.bubble_box{border-radius: 1.875rem;height: 18.75rem;margin-top: 2.5rem;position:relative;display: flex;justify-content: center;align-items: center;flex-direction: column;background: #131313;padding: 0 2vw;text-align: center;}
.bubble_box::before{content:'';display:block;position:absolute;width: 2.625rem;height: 1.5rem;}


/* vision */
/* .vision {width:100%; height:24.25rem; background:url(../../../themes/simple/img/sub/vision_img.jpg) 50% 0 no-repeat; position:relative;}
.vision div {position:absolute;}
.vision .tit {display: none;}
.vision div dt {font-size:1.4rem; line-height:2.9375rem; font-weight:600;}
.vision div.creative {top:2rem; left:48.125rem;}
.vision div.creative dt {color:#5c6874;}
.vision div.challenge {top:12.5rem; left:53.125rem;}
.vision div.challenge dt {color:#1d8ddf;}
.vision div.passion {top:12.5rem; left:5rem; text-align:right;}
.vision div.passion dt {color:#cc3333;} */

.vision{text-align: center;}
.v_img{background: url("../../../themes/simple/img/sub/v_img_bg.png"); background-repeat: no-repeat; padding: 6vw; display: flex; justify-content: center; position: relative;}
.v_img::before{content: ""; width: 100%; height: 1px; background: white; position: absolute; left: 0; top: 50%; transform: translateY(-50%);}
.v_list{margin: 8.75rem auto;}
.v_li{display: flex; align-items: center; justify-content: space-between; padding: 3vw 1vw; border-bottom: 1px solid #A8A8A8;}
.v_li .v_tit{display: flex; align-items: center; gap: 3.125rem; font-size: 1.5rem; font-weight: 500; color: black;}
.v_li .v_txt{font-size: 1.2rem; color: #666; width: 40%;}

@media screen and (max-width: 1200px){
    .wrap > h2{font-size: 2.2rem;}
    .v_list{margin: 5rem auto;}
    .v_li{flex-direction: column; align-items: flex-start; padding: 3vw;}
    .v_li .v_tit{gap: 1.25rem;}
    .v_li .v_txt{width: 100%;}
   /* .vision {background: none;height: auto;}
   .vision .tit {display: block;margin: 6.25rem 0 1.25rem;background-color: #5c6874;color: #fff;font-size: 2rem;padding: 0.625rem 1.25rem;text-transform: uppercase;display: inline-block;}
   .vision div {position:unset;text-align: center;}
   .vision div.passion {text-align:center;}
   .vision div.creative .tit {margin-top: 0;}
   .vision div.challenge .tit {background-color: #1a8ddf;}
   .vision div.passion .tit {background-color: #cc3333;} */
}

/* organization */
/* .org {min-height:21.5625rem;text-align:center;background:url(../../../themes/simple/img/sub/org_border_bg.jpg) 50% 3.75rem no-repeat;}
.org h2 {display:inline-block;text-align:center;padding:0.625rem 3.125rem;font-size:1.75rem; color:#fff; font-weight:600; background:#19aae2;}
.org > div{justify-content: center;align-items: center;margin-top: 7.375rem;gap: 2.25rem;}
.org div h3 {width:15.9375rem;line-height:2.8125rem;background:url(../../../themes/simple/img/sub/org_h3_bg.jpg);color:#ffde46;font-size:1.125rem;font-weight:600;}
.org div ul {background:#f5f5f5;}
.org div ul li {line-height:2.8125rem;border-top:1px solid #fff; font-size:1.0625rem;} */

.org{ text-align: center;}
.org > h2{margin-bottom: 7.5rem;}
.org .img{max-width: 56.25rem; margin: 0 auto 8.75rem;}

@media screen and (max-width: 1200px){
   /* .org {min-height:auto;background: none;}
   .org > div{flex-direction: column;margin-top: 2.5rem;} */
}

/* map */
.map strong{font-size: 1.8rem; color: black;}
.map iframe{margin-top: 1.25rem;}
.map .text {margin-top:2.5rem;display:flex; margin-bottom: 6.25rem;}
.map .text h2 {margin-right:1.875rem; line-height:8.125rem; font-size:2.5rem;font-weight:600;color:#d5d5d5;text-transform:capitalize; display:inline-block;}
.map .text dl {overflow:hidden;font-size:1rem; border-left:1px solid #d5d5d5;padding-left:1.5625rem;line-height:1.875rem; display: flex; align-items: center; gap: 1.25rem;}
.map .text dl dt {display:inline-block;font-weight:bold;margin-top: 1.25rem;}
.map .text dl dt:first-child {margin-top: 0; display: flex; align-items: center; gap: 0.625rem; padding: 0.25rem 0.625rem; min-width: 8.125rem; max-width: 8.125rem; justify-content: flex-start; font-size: 1rem; color: black;}
.map .text dl dt:first-child span{color: white; padding:  .4rem; background: #474747; border-radius: 12.5rem;}

@media screen and (max-width: 1200px){
   .map .text{flex-direction: column; margin-top: 1.25rem;}
   .map .text h2{line-height: 4.375rem; margin-left: 0.75rem;}
   .map .text dl {border-left: none;padding-left: 0;}
}

/* tabletop */
.tabletop{max-width: 75rem;margin: 0 auto;padding: 0 2vw;}

#sc_training .chk_box {font-size: 1.125rem;text-align: center;}
#sc_training .chk_box li {display: flex;align-items: center;justify-content: center;}
#sc_training .chk_box li::before {content: '';display: block;width: 1.3125rem;height: 1.125rem;background: url('../../../themes/simple/img/sub/chk_01.png') center center no-repeat;float: left;margin-right: 0.3125rem;margin-bottom: 1.5625rem;background-size: contain;}

#sc_training .sc2{margin: 4.375rem 0;padding: 3.75rem 0 4.375rem;background:#FAFAFA;}
#sc_training .sc2 ul{display: flex;gap: 1.125rem;padding: 1.5625rem 1.875rem;background: #fff;border: 1px solid #ddd;border-radius:1.25rem;justify-content: space-between;}
#sc_training .sc2 li{width:50%;font-size: 1rem;}
#sc_training .sc2 li p{margin-bottom:0.625rem;z-index: 10;position: relative;}
#sc_training .sc2 li:nth-child(1) img{margin-top: -2.125rem;}

#sc_training .sc3 h4{margin-top:4.375rem;margin-bottom: 1.25rem;font-size: 1.25rem;font-weight:600;color:#000;display: flex;align-items: center;}
#sc_training .sc3 h4::before{content:'▶';display:inline-block;margin-right: 0.5625rem;font-size: 1.125rem;}
#sc_training .sc3 img{display:block;margin:0 auto;}
#sc_training .sc3 .ic_box li{display:flex;align-items: center;padding: 1.5rem 0;flex-wrap: wrap;}
#sc_training .sc3 .ic_box li ~ li{border-top:1px dashed #ddd;}
#sc_training .sc3 .ic_box .icon{margin-right: 1.25rem;width: 7.5rem;}
#sc_training .sc3 .ic_box .title{width:10rem;}
#sc_training .sc3 .ic_box .title b{display: inline-block;width:100%;font-weight: 600;font-size: 1.25rem;color: #000;}
#sc_training .sc3 .ic_box .title span{font-size: 1.125rem;color: #aaa;}
#sc_training .sc3 .ic_box .text{width: calc(100% - 18.75rem);font-size: 1rem;}

#sc_training .sc4{margin:4.375rem 0 0 0;padding: 4.375rem 0 9.375rem;background:#F6FBFF;}
#sc_training .sc4 ul{background:#fff;padding: 1.875rem 1.25rem;border-radius:1.25rem;column-width: auto;border: 1px solid #e1e6eb;display: flex;flex-direction: row;flex-wrap: wrap;}
#sc_training .sc4 ul li{width: calc(50% - 1.25rem);height: auto;padding:1.25rem 0;margin: 0 0.625rem;display: inline-block;}
#sc_training .sc4 ul li h5{font-size:1.125rem;font-weight:600;margin-bottom:0.3125rem;color:#000;display: flex;align-items: center;}
#sc_training .sc4 ul li h5 span{font-weight:400;margin-left: 0.3125rem;}
#sc_training .sc4 ul li p{margin-bottom:1.25rem;}
#sc_training .sc4 ul li{border-bottom:1px dashed #ddd;}
#sc_training .sc4 ul li:nth-child(5),
#sc_training .sc4 ul li:nth-child(6),
#sc_training .sc4 ul li:nth-child(7){border:none;}
#sc_training .sc4 ul li:last-child{width:100%;}
#sc_training .sc4 ul li:last-child img{margin:0 auto;display:block;}

@media screen and (max-width: 1200px){
   #sc_training .sc2 ul{flex-direction: column;align-items: center;text-align: center;}
   #sc_training .sc2 li{width: 100%;}
   #sc_training .sc2 li:nth-child(1) img{margin-top: -0.625rem;}

   #sc_training .sc3 .ic_box .icon{width: 5rem;}
   #sc_training .sc3 .ic_box .text{width: 100%;margin-top: 1.25rem;}

   #sc_training .sc4 ul li{width: 100%;}
   #sc_training .sc4 ul li:nth-child(5){border-bottom:1px dashed #ddd;}
}

/* fiber */
#sc_fiber .bubble_box{background-image:url('../../../themes/simple/img/sub/fiber_img02.png?v2');background-size: cover;}
#sc_fiber .bubble_box::before{top: -1.1875rem;left: 50%;transform: translate(-50%, 0);background-image:url('../../../themes/simple/img/sub/fiber_img03.png?v2');}
#sc_fiber .bubble_box h4{font-size:2rem;color:#fff;}
#sc_fiber .bubble_box span{font-size:1.125rem;color:#fff;}
#sc_fiber .bubble_box a{border-color:#fff;color:#fff;}

#sc_fiber .ic_box{display: flex;gap: 1.875rem;}
#sc_fiber .ic_box li{border:1px solid #DFE4E6;width: 25%;padding: 1.875rem 1.5625rem;border-radius: 0.625rem;}
#sc_fiber .ic_box strong{display: inline-block;width:100%;margin: 0.625rem 0 0.25rem;font-size: 1.3125rem;font-weight:600;color:#000;}
#sc_fiber .ic_box span{font-size: 1.0625rem;line-height: 1.4;}

#sc_fiber .art_01{display:flex;flex-wrap: wrap;align-content: center;align-items: center;margin-top: 4.375rem;}
#sc_fiber .art_01 .txt{width: calc(100% - 43.75rem);}
#sc_fiber .art_01 p{font-size:1.125rem;}
.btn_st1{padding: 0.5rem 2.5rem;border-radius:3.125rem;font-size: 1rem;color:#378DCD;border:1px solid #378DCD;margin-top: 1.25rem;}
.btn_st1:hover{box-shadow: 0 0 0.625rem 0 #0076ff30;}
#sc_fiber .art_01 .img{width: 43.75rem;}

#sc_fiber .art_03 h3{margin-top:5rem;}

#sc_fiber .art_04{margin-top:5rem;}
#sc_fiber .ic_box .tit{display: flex;flex-direction: column;align-items: flex-start;}

.c_box{max-width: 75rem; margin: 6.25rem auto; padding:  0 2vw; text-align: center;}
.c_box p{margin-bottom: 3.75rem;}
.bg_box{background: #FAFAFA; padding: 6.25rem 0;}
.art_03-2, .art_03-4{margin: 0 auto;}
.art_03-3{text-align: left; display: flex; align-items: center; justify-content: space-between;}
.art_03-5{display: flex; justify-content: space-between; margin-bottom: 0;}

.wrap2 article:last-child{margin: 3.125rem auto;}

@media screen and (max-width: 1200px){
   #sc_fiber .art_01{flex-direction: column;gap: 3.125rem;text-align: center;}
   #sc_fiber .art_01 .txt,#sc_fiber .art_01 .img{width: 100%;}
   #sc_fiber .btn{margin: 1.875rem auto 0;}

   #sc_fiber .art_02{margin-top: 3.125rem;}

   #sc_fiber .ic_box{flex-wrap: wrap;}
   #sc_fiber .ic_box li{width: 100%;}
   #sc_fiber .ic_box .tit{flex-direction: row;align-items: center;gap: 1.25rem;margin-bottom: 0.625rem;}

   .art_03-3{text-align: center;}
   .art_03-5, .art_03-3{flex-direction: column;}
   .art_03-5{margin-bottom: 0;}
}

/* university */
.solution{max-width: 75rem;margin: 0 auto;text-align: center;padding: 0 2vw;}
.bg_solution{background:#FAFAFA;padding: 3.125rem 0;}
#sc_solution > div:last-child{padding-bottom: 6.25rem;}
.solution ul {display:flex;justify-content: center;gap: 3.125rem;margin-top: 1.25rem;}
.solution ul li{text-align: center;}
.solution ul li img{display: block;}
.solution ul li span{margin-top: 0.625rem;display: block;}
.solution ul.f-w_wrap li{width: calc(50% - 1.5625rem);}
.btnBlue {margin-top:2.1875rem;text-align:center;}
.btnBlue a {display:inline-block;padding:0.8125rem 1.5625rem; background:#1a87d0; color:#fff;border-radius:3.125rem;font-size:1rem;}

.solution h2{margin-bottom: 3.125rem;}
.rl_wrap{max-width: 75rem; margin: 3.75rem auto 7.5rem;}
.rl_wrap ul{display: flex; align-items: center; justify-content: center;}
.rl_wrap ul li{display: flex; align-items: center; flex-direction: column;}

.r_box{display: flex; justify-content: center; gap: 3.125rem; margin-top: 1.25rem;}
.solution .r_box li{text-align: left; padding: 1.5vw; border: 1px solid #DFE4E6; border-radius: 0.75rem;}
.r_box li .img{margin-bottom: 2.5rem;}
.r_box li strong{font-size: 1.3rem; color: black; font-weight: 500;}
.r_box li span{font-size: 1rem;}

.bg_solution{background: #F6FBFF; padding: 6.25rem 0;}
.bg_solution .r_box2{display: flex; flex-wrap: wrap; gap: 1.25rem; margin-top: 3.75rem;}
.bg_solution .r_box2 > li{width: calc((100% - 1.25rem)/ 2); text-align: left;  padding:  1.5vw; border-radius: 0.75rem;  background-repeat: no-repeat; background-size: auto; background-position: center; color: black; display: flex; flex-direction: column; justify-content: center;}
.bg_solution .r_box2 .r_box2-1{background-image: url("../../../themes/simple/img/sub/rfid_img01.png"); height: 14.125rem; background-color: #B3AFFF;}
.bg_solution .r_box2 .r_box2-2{background-image: url("../../../themes/simple/img/sub/rfid_img02.png"); height: 14.125rem; background-color: #039AFF;}
.bg_solution .r_box2 .r_box2-3{width: 100%; background: url("../../../themes/simple/img/sub/rfid_img03.png"); height: 14.125rem; background-color: #3E407E; color: white; padding-left: 8vw;}

@media screen and (max-width: 1200px){
   .solution ul {flex-direction: column;align-items: center;}
   .solution ul.f-w_wrap li{width: 100%;}
   .solution .r_box{flex-direction: column;}
   .solution .r_box li{width: 100%; padding: 4vw;}
   .bg_solution .r_box2{flex-direction: column; align-items: center; justify-content: center;}
   .bg_solution .r_box2 li{width: 100%; padding: 8vw; background-position: bottom; background-size: contain;}
   .bg_solution .r_box2 .r_box2-3{background-size: contain; background-repeat: no-repeat; background-position: bottom;}
}

/* homepage */
#sc_homepage .sc1{margin-top:3.125rem;}
#sc_homepage .sc1 h4 { margin-bottom: 0.875rem; font-size: 1.5625rem; font-weight: 600; color: #000; } 
#sc_homepage .sc1 .circle { display: inline-block; width: 0.375rem; height: 0.375rem; border-radius: 50%; transform: translate(0.3125rem, 0.375rem); } 
#sc_homepage .sc1 .box1 {display:flex;margin-top: 6.25rem;gap: 1.25rem;align-items: center;} 
#sc_homepage .sc1 .box1 p { font-size: 1.125rem; } 
#sc_homepage .sc1 .box1 img { margin-top: -3.125rem; } 
#sc_homepage .btn{padding: 0.5rem 2.5rem;border-radius:3.125rem;font-size: 1rem;color:#378DCD;border:1px solid #378DCD;margin-top: 1.25rem;}
#sc_homepage .sc1 .box2 { display: flex; flex-wrap: wrap; gap: 1rem; margin-top: 3.75rem;justify-content: center;} 
#sc_homepage .sc1 .box2 h5 { display: inline-block; font-size: 1.5rem; font-weight: 600; color: #000; } 
#sc_homepage .sc1 .box1 li:nth-child(1) { width: calc(100% - 37.5rem); float: left; } 
#sc_homepage .sc1 .box1 li:nth-child(2) { width: 37.5rem; float: left; } 
#sc_homepage .sc1 .box2 > li:nth-child(1) .circle { background: #49EBBF; } 
#sc_homepage .sc1 .box2 > li:nth-child(2) .circle { background: #039AFF; } 
#sc_homepage .sc1 .box2 > li:nth-child(3) .circle { background: #FF9197; } 
#sc_homepage .sc1 .box2 > li {padding: 1.375rem 1.125rem; border: 1px solid #ddd; border-radius: 0.625rem;width: calc((100% / 3) - 0.6875rem);} 
#sc_homepage .sc1 .box2 ol { margin-top: 1.375rem; } 
#sc_homepage .sc1 .box2 ol li { display: block; color: #000; font-size: 1rem; line-height: 1.3; padding-left: 1.3125rem; position: relative; } 
#sc_homepage .sc1 .box2 li ol li:before { content: ''; display: inline-block; width: 1.0625rem; height: 0.8125rem; background: url("../../../themes/simple/img/sub/homepage_chk01.png") no-repeat; background-size: contain; background-repeat: no-repeat; position: absolute; left: 0; top: 0.25rem;} 
#sc_homepage .sc1 .box2 li:nth-child(2) ol li:before {background: url("../../../themes/simple/img/sub/homepage_chk02.png") no-repeat;background-size: contain;} 
#sc_homepage .sc1 .box2 li:nth-child(3) ol li:before {background: url("../../../themes/simple/img/sub/homepage_chk03.png") no-repeat;background-size: contain;} 

#sc_homepage .sc1 .box2 ol li ~ li { margin-top: 1rem; } 
#sc_homepage .sc1 .box2 ol li span { display: inline-block; width: 100%; color: #808080; font-size: 1rem; padding-left: 0; margin-top: 0.1875rem; line-height: 1; } 
#sc_homepage .sc1 .box2 ol li b { display: inline-block; } 

#sc_homepage .sc1 .box2.smartorder > li:nth-child(1) .circle { background: #92D0FF; } 
#sc_homepage .sc1 .box2.smartorder > li:nth-child(3) .circle { background: #FF7BA5; } 
#sc_homepage .sc1 .box2.smartorder > li:nth-child(5) .circle { background: #5858B1; } 
#sc_homepage .sc1 .box2.smartorder > li.img{padding: 0; border: none;} 
#sc_homepage .sc1 .box2.smartorder > li.img img{height: 100%;object-fit: cover;border-radius: 0.625rem;} 
#sc_homepage .sc1 .box2.smartorder > li:nth-child(1) ol li:before {background: url("../../../themes/simple/img/sub/chk06.png") no-repeat;background-size: contain;}
#sc_homepage .sc1 .box2.smartorder > li:nth-child(3) ol li:before {background: url("../../../themes/simple/img/sub/chk05.png") no-repeat;background-size: contain;}
#sc_homepage .sc1 .box2.smartorder > li:nth-child(5) ol li:before {background: url("../../../themes/simple/img/sub/chk04.png") no-repeat;background-size: contain;}

#sc_homepage .bubble_box { background-color: #3e407e; background-image: url("../../../themes/simple/img/sub/fiber_img02.png?v2"); background-size: cover; } 
#sc_homepage .bubble_box::before { top: -1.1875rem; left: 50%; transform: translate(-50%, 0); background-image: url("../../../themes/simple/img/sub/homepage_img06.png"); } 
#sc_homepage .bubble_box h4 { margin-bottom: 0.875rem; font-size: 2rem; color: #fff; } 
#sc_homepage .bubble_box span {font-size: 1rem;color: #fff;text-align: center;width: 70%;line-height: 1.2;} 
#sc_homepage .bubble_box a { border-color: #fff; color: #fff; } 

#sc_homepage .sc2 {margin: 5.625rem 0;padding: 3.75rem 0;background: #F8F8F8;} 
#sc_homepage .sc2 .box1 { display: flex; margin-top: 1.875rem; gap: 1.25rem; } 
#sc_homepage .sc2 .box1 h4{margin-bottom: 3.0625rem;font-size: 1.5rem;font-weight:600;color:#000;margin-right: 1.875rem;}

#sc_homepage .sc2 .box1 > li {position:relative;background: #fff;width: 50%;float: left;padding: 1.875rem 1.5625rem;border-radius: 0.625rem;border: 1px solid #ddd;} 
#sc_homepage .sc2 .box1 > li:nth-child(1):before {content:'';display:block;width: 3.3125rem;height: 3.75rem;position:absolute;right:1.25rem;top: 1.875rem;background-image: url("../../../themes/simple/img/sub/homepage_img02.png");background-size: contain;background-repeat: no-repeat;}
#sc_homepage .sc2 .box1 > li:nth-child(2):before {content:'';display:block;width: 3.5625rem;height: 3.5625rem;position:absolute;right:1.25rem;top: 1.875rem;background-image: url("../../../themes/simple/img/sub/homepage_img03.png");background-size: contain;background-repeat: no-repeat;}
#sc_homepage .sc2 .box1 ol li{position: relative;padding-left: 0.75rem;font-size: 1rem;color:#000;line-height: 1.2;}
#sc_homepage .sc2 .box1 ol li ~ li{margin-top: 0.625rem;}
#sc_homepage .sc2 .box1 ol li:before{content:'•';display: inline-block;font-size: 1.75rem;line-height: 1;position: absolute;top: -0.4375rem;left: -0.1875rem;}
#sc_homepage .sc2 .box1 ol li span{display:inline-block;width:100%;font-size:0.9375rem;color: #afaaaa;line-height: 1;}

#sc_homepage .sc3 ul{display:flex;gap: 1.25rem;margin-top: 3.125rem;}
#sc_homepage .sc3 li{display: flex;width:50%;position:relative;float:left;padding: 5.625rem 1.25rem 6.875rem;border-radius:0.9375rem;text-align: center;color:#fff;align-items: center;flex-direction: column;justify-content: center;}
#sc_homepage .sc3 li:nth-child(1){background:#039AFF;}
#sc_homepage .sc3 li:nth-child(2){background:#3E407E;}
#sc_homepage .sc3 li a{border-color:#fff;color:#fff;z-index: 10;margin-top: 3.125rem;}
#sc_homepage .sc3 li a:hover{background-color: #fff;color: #000;}
#sc_homepage .sc3 li img{position:absolute;z-index:0;}
#sc_homepage .sc3 li:nth-child(1) img{bottom: 0;left: 2.5rem;}
#sc_homepage .sc3 li:nth-child(2) img{bottom: 0;right: 0;}
#sc_homepage .sc3 li span{display: inline-block;margin-bottom:1.25rem;font-size:1.5rem;font-weight:600;}

#sc_homepage .sc4{margin: 5.625rem 0 5.625rem;}

#sc_homepage .ic_box{display: flex;gap: 1.875rem;margin-top: 2.5rem;}
#sc_homepage .ic_box li{border:1px solid #DFE4E6;width: 33.33%;padding: 1.875rem 1.5625rem;border-radius: 0.625rem;background-color: #fff;}
#sc_homepage .ic_box strong{display: inline-block;width:100%;margin: 0.625rem 0 0.25rem;font-size: 1.3125rem;font-weight:600;color:#000;}
#sc_homepage .ic_box span{font-size: 1.0625rem;line-height: 1.4;}

#sc_homepage .sc2.smartorder{margin-bottom: 0;padding-top: 6.25rem;}
#sc_homepage .sc2.smartorder .ic_box{flex-wrap: wrap;}
#sc_homepage .sc2.smartorder .ic_box li{width: calc(100% / 2 - 0.9375rem);}
#sc_homepage .sc2.smartorder .ic_box li .img{display: inline-block;vertical-align: middle;}
#sc_homepage .sc2.smartorder .ic_box li strong{display: inline-block;width: auto;margin-left: 1.875rem;vertical-align: middle;line-height: 1;}
#sc_homepage .sc2.smartorder .ic_box li strong span{color: #9F9F9F;text-transform: capitalize;}
#sc_homepage .sc2.smartorder .ic_box li > span{display: block;margin-top: 1.875rem;}

#sc_homepage .sc2.smartorder .img_wrap{display: flex;align-items: flex-start;margin-bottom: 6.25rem;justify-content: space-between;flex-wrap: wrap;}
#sc_homepage .sc2.smartorder .img_wrap img{width: 31%;}
#sc_homepage .sc2.smartorder .img_wrap img:nth-child(2){margin-top: 9.375rem;}

@media screen and (max-width: 1200px){
	#sc_homepage .sc1 ul{flex-direction: column;align-items: center;text-align: center;}
	#sc_homepage .sc1 ul br{display: none;}
	#sc_homepage .sc1 .box1 li:nth-child(1){width: 100%;}
	#sc_homepage .sc1 .box1 img{margin-top: 0;}
	#sc_homepage .sc1 .box1 li:nth-child(2){width: 100%;}
	#sc_homepage .sc1 .box2 ol li{display: block;}
	#sc_homepage .sc1 .box2 > li{width: 100%;}
	#sc_homepage .sc1 .box2.smartorder > li{max-width: 24.375rem;}

	#sc_homepage .sc2 .box1,#sc_homepage .sc3 ul{flex-direction: column;}
	#sc_homepage .sc2 .box1 > li,#sc_homepage .sc3 li{width: 100%;}
	#sc_homepage .bubble_box span{width: 90%;}

	#sc_homepage .sc3 li:nth-child(2) p{margin-bottom: 1.875rem;}

	#sc_homepage .ic_box{flex-direction: column;}
	#sc_homepage .ic_box li{width: 100%;}
	#sc_homepage .sc2.smartorder .ic_box li{width: 100%;}

	#sc_homepage .sc2.smartorder .img_wrap{flex-direction: column;align-items: center;gap: 1.25rem;}
	#sc_homepage .sc2.smartorder .img_wrap img{width: 100%;max-width: 21.875rem;}
	#sc_homepage .sc2.smartorder .img_wrap img:nth-child(2){margin-top: 0;}
}

/* portfolio */
#sc_portfolio {text-align: center;}
#sc_portfolio .tab_con {flex-wrap: wrap;}
#sc_portfolio .tab_con a {box-shadow: 1.25rem 1.25rem 1.5625rem 0 rgba(0, 0, 0, 0.2);}
/* #sc_portfolio .btn 삭제 — 메인페이지 미사용(main.html 은 #sc_portfolio 안 씀). 포폴 게시판의 공통 검색버튼(.btn/search_st5)을 깨뜨려 제거 */


#sc_portfolio.main_sc3 .tab_con a:nth-child(3n+1){margin-top: -10rem;}
#sc_portfolio.main_sc3 .tab_con a:nth-child(3n){margin-top: -10rem;}
#sc_portfolio.main_sc3 .tab_con a:nth-child(1),#sc_portfolio.main_sc3 .tab_con a:nth-child(3){margin-top: 0;}

@media screen and (max-width: 1600px){
   #sc_portfolio.main_sc3 .tab_con a:nth-child(3n+1){margin-top: 0;}
   #sc_portfolio.main_sc3 .tab_con a:nth-child(3n){margin-top: 0;}
   #sc_portfolio.main_sc3 .tab_con a:nth-child(2n){margin-top: 0;}
}

@media screen and (max-width: 1200px){
   .main_sc3 .tab_con a:nth-child(2n){margin-top: 0;}
}

/*customer*/
.customer .tit_st2 span{color:#1775de;}   
.customer h2{margin-top:2.5rem;color:#666666;font-size:1.3rem;font-weight:bold;;}
.customer h2 span{ font-size:1rem;font-weight:normal;}
.customer .taText{text-align:right; font-size:0.8rem;}
.customer .taText span{color:#2297e5;}
.customer .textareaWrap {border:1px solid #bbb;overflow:hidden;}
.customer .textareaWrap textarea{width:100%;overflow:auto;padding:1.25rem 0.625rem; border-width:0 0 0 0 !important;box-sizing: border-box;font-size: 1rem;}
.customer .textareaWrap div {padding:0.625rem; text-align:center;border-top:1px solid #bbb;display: flex;align-items: center;justify-content: center;}
.customer .textareaWrap div input {margin-right:0.3125rem;}
.customer .textareaWrap div label {font-size: 1rem;}
.customer .btnSt01 {text-align:right;}

.searchForm {text-align:right;}
.searchForm form {display:flex;align-items: center;justify-content: flex-end;gap: 0.625rem;}
.searchForm input,.searchForm select {border-radius: 0.3125rem;}
.btn_search {display: flex;justify-content: center;align-items: center;background-color: #333;color: #fff;padding: 0.625rem;border-radius: 0.3125rem;}
.btn_search:hover {background-color: #000;}

.table_st1 textarea{border: 1px solid #d1d1d1;border-radius: 0;box-sizing: border-box;}
.table_st1 input{vertical-align: baseline;}

/* 버튼 */
.iborder { border:1px solid #DADADA;padding:1px 0.1875rem;}
.iborder2 { background:#337ab7;color:#fff;border-radius:0.625rem;padding:0.125rem 0.3125rem;margin-right:0.3125rem;}
button.x { background:#fff;border:1px solid #DADADA;padding:0 0.125rem;font-size:0.625rem;border-radius:0.125rem;color:#999;}
.btnSt01 {display:block;margin:0.625rem 0;}
.btnSt01 a {display:inline-block; padding:0.3125rem 1.25rem;}
.btnSt01 button {display:inline-block; padding:0.625rem 1.25rem; border:none;font-size: 1rem;}
.btnStB {background:#1a87d0; color:#fff;}
.btnStG {background:#555; color:#fff;}

.boardFoot {display: flex;justify-content: flex-end;}
.boardFoot ul, .boardFoot ul li, .boardFoot ul a {display:flex;}
.boardFoot li a{font-size:.9rem;font-weight: 500;color:#000;background:#f8f8f8;padding:0.4375rem 1.25rem;display: block;border-radius: 0.3125rem;margin:0 1px;border:1px solid #ededed;justify-content: center;align-items: center;}
.boardFoot ul li a:hover {background-color: #333;color: #fff;}

.board .table_st2 th:nth-child(1),.boardview .table_st2 th:nth-child(4){width: 7%;}
.board .table_st2 th:nth-child(2),.boardview .table_st2 th:nth-child(1){width: auto;}
.board .table_st2 th:nth-child(3),.boardview .table_st2 th:nth-child(3){width: 10%;}
.board .table_st2 th:nth-child(4),.boardview .table_st2 th:nth-child(2){width: 10%;}
.board .table_st2 th:nth-child(5){width: 7%;}

.table_st3 textarea{box-sizing: border-box;width: 100%;border-radius: 0;border-color: #d1d1d1;}

.view-bot {display: flex;font-size: 1rem;padding: 1.25rem 0;border-bottom: 1px solid #ddd;align-items: center;}
.view-bot strong {color: #0076ff;margin-left: 0.3125rem;}
.view-bot a {font-size: 1rem;}
.attachment {font-weight: 300;margin: 0 0.3125rem 0 1.875rem;display: flex;gap: 0.3125rem;align-items: center;cursor: pointer;}

.view-nav{display: flex;justify-content: space-between;align-items: center;margin-top: 3.125rem;font-size: 1rem;}
.view-nav p:hover{text-decoration: underline;}
.list-btn{background-color: #eee;color: #5E5E5E;padding: 0.9375rem 1.25rem;font-size: 1rem;font-weight: 500;}
.list-btn:hover{background-color: #333;color: #fff;}
.list-move{width: 40%;cursor: pointer;display: flex;align-items: center;justify-content: flex-end;gap: 0.3125rem;}
.list-move.lightgray{justify-content: flex-start;}
.list-move .material-icons{font-size: 1.875rem;}
.list-move.prev{justify-content: flex-start;}

.filebtnBox{display: flex;justify-content: flex-start;align-items: center;flex-wrap: wrap;}
.filebtnBox button { display:inline-block; margin-left:0.3125rem; padding:0.4375rem 0.9375rem; background:#5D5D5D; color:#fff; border:0;font-size: 1rem;}

@media screen and (max-width: 900px){
   .board .table_st2 th:nth-child(1),.board .table_st2 td:nth-child(1),.board .table_st2 td:nth-child(3),.board .table_st2 th:nth-child(3),.board .table_st2 td:nth-child(4),.board .table_st2 th:nth-child(4),.board .table_st2 td:nth-child(5),.board .table_st2 th:nth-child(5){display: none;}

   .boardview .table_st2 .tit td:nth-child(2),.boardview .table_st2 thead th:nth-child(2),.boardview .table_st2 td:nth-child(3),.boardview .table_st2 th:nth-child(3),.boardview .table_st2 td:nth-child(4),.boardview .table_st2 th:nth-child(4),.boardview .table_st2 td:nth-child(5),.boardview .table_st2 th:nth-child(5){display: none;}

   .boardview .table_st2 th:nth-child(1),.boardview .table_st2 td:nth-child(1){width: 100%;}

   .list-move p{display: none;}
}

/* tab */
.tab_st1 {display: flex;gap: 0.9375rem;justify-content: center;margin-bottom: 4.375rem;margin-top: 3.125rem;flex-wrap: wrap;padding: 1.25rem 2vw;position: sticky;top: 4.5rem;background-color: #fff;z-index: 99;}
.tab_st1 .tab{border:1px solid #ddd;color: #8d8d8d;border-radius: 3.125rem;padding: 0.4375rem 1.875rem;font-size: 1rem;}
.tab_st1 .tab:hover{box-shadow: 0.1875rem 0.1875rem 0.625rem rgb(0 0 0 / 11%);}
.tab_st1 .tab.on{background: #333;border-color:#333;color:#fff;}

.tab_st2 {display: flex;justify-content: center;align-items: center;padding: 1.25rem 0;}
.tab_st2 .tab {display: flex;justify-content: center;align-items: center;cursor: pointer;border-right: 1px solid #e6e6e6;color: #d1d1d1;font-size: 1rem;padding: 0 1.25rem;}
.tab_st2 .tab:last-child {border-right: 0;}
.tab_st2 .tab:hover {color: #0076ff;}
.tab_st2 .tab.on {color: #0076ff;font-weight: 600;}
.tab_con {display: none;}
.tab_con.on {display: block;}

@media screen and (max-width: 1200px){
   .tab_st1 {position: static;}
}

/* portfolio */
.port_nav{display: flex;gap: 3.125rem;justify-content: center;padding: 1.25rem 2vw;position: sticky;top: 6.25rem;background-color: #000;z-index: 99;align-items: center;text-transform: uppercase;}
.port_nav > a{display: flex;gap: 0.625rem;align-items: center;font-size: 1.5rem;}
.port_nav > a:hover{color: #fff;}
.port_nav .material-icons{font-size: 2rem;}
.port_nav .material-icons{font-size: 2rem;}

.port_main{display: flex;justify-content: center;align-items: center;text-align: center;letter-spacing: 0.625rem;padding: 0 2vw;width: 100%;height: 100vh;position: relative;}
.port_main .tit h2{font-size: 4.5rem;font-weight: 600;word-break: break-all;}
.port_main .tit h2 br{display: none;}
.port_main .tit h3{font-size: 2rem;font-weight: 200;text-transform: uppercase;opacity: 0.7;}
.port_main.luge{background: url(../../../themes/simple/img/portfolio/luge01.png) no-repeat center top;background-size: cover;}
.port_main.thecompanyc{background: url(../../../themes/simple/img/portfolio/thecompanyc01.png) no-repeat center center;background-size: cover;}
.port_main.charmpoom{background: url(../../../themes/simple/img/portfolio/charmpoom01.png) no-repeat center top;background-size: cover;}
.port_main.kwu_sw{background: url(../../../themes/simple/img/portfolio/kwu_sw01.png) no-repeat center center;background-size: cover;}
.port_main.knu_data{background: url(../../../themes/simple/img/portfolio/knu_data01.png) no-repeat center center;background-size: cover;}
.port_main.amputee{background: url(../../../themes/simple/img/portfolio/amputee01.png) no-repeat center center;background-size: cover;}
.port_main.kwu_plus{background: url(../../../themes/simple/img/portfolio/kwu_plus01.png) no-repeat center center;background-size: cover;}

/* .port_txt 레거시(eng 포폴 상세) 제거 — 메인페이지 미사용. 포폴 뷰는 portfolio.css 가 담당(이 룰이 .port_txt .tit 로 leak 돼 새 디자인을 덮어서 삭제) */

.btn_st2{background: rgb(54,169,255);background: linear-gradient(147deg, rgba(54,169,255,1) 0%, rgba(29,85,197,1) 100%);border-radius: 50%; width: 12.5rem; height: 12.5rem; display: block; position:absolute; right:0;transition: all .7s;color: #fff; font-weight: 700;top: 50%;transform: translateY(-50%);}
.btn_st2 .tit{font-size: 1.4rem;position: relative;top: 5.875rem; left: 3.375rem;}
.btn_st2:hover{background: #fff;color: #000;}
.btn_st2:hover .material-icons{color: #000;}
.btn-motion1 {animation: btn-motion1 1.5s ease-in-out infinite; margin-left: 0.5625rem;}

@keyframes btn-motion1 {
   0%,
   100% {
    transform: translate(1.875rem, 3.4375rem);
   }
   50% {
      transform: translate(2.5rem, 2.8125rem);
   }
}

.btn-motion4,
.btn-motion4:before {position: absolute;left: 50%;}
.btn-motion4 {width: 2.5rem;height: 4.375rem;box-shadow: inset 0 0 0 1px #fff;border-radius: 1.5625rem;bottom: 1.25rem;transform: translateX(-50%);}
.btn-motion4:before {content: ''; width: 0.375rem; height: 0.375rem; background: #fff; margin-left: -0.1875rem;top: 0.8125rem; border-radius: 0.25rem; animation: btn-motion4 1.5s ease-in-out infinite;}

@keyframes btn-motion4 {
    0% {
        opacity: 1;
    }
    100% {
        opacity: 0;
        transform: translateY(2.1875rem);
    }
}

@media screen and (max-width: 1200px){
   .btn_st2{width: 9.375rem; height: 9.375rem;top: 70%;transform: translateY(0);right: 1.25rem;}
   .btn_st2 .tit{top: 3.6875rem;left: 2.0625rem;}
   @keyframes btn-motion1 {
      0%,
      100% {
      transform: translate(1.25rem, 2.1875rem);
      }
      50% {
         transform: translate(1.875rem, 1.5625rem);
      }
   }
}

@media screen and (max-width: 900px){
   .port_main .tit h2{font-size: 3.5rem;}
   .port_main .tit h2 br{display: block;}

   .btn_st2{top: 110%;}
}

