@charset "utf-8";
@import url("https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/static/pretendard.min.css");
@import url('board2026.css');

/* GmarketSans */
@font-face {
    font-family:'GmarketSansLight';
    src:url('../fonts/GmarketSansLight.woff') format('woff');
    font-weight:normal;
    font-style:normal;
}
@font-face {
    font-family:'GmarketSansMedium';
    src:url('../fonts/GmarketSansMedium.woff') format('woff');
    font-weight:normal;
    font-style:normal;
}
@font-face {
    font-family:'GmarketSansBold';
    src: url('../fonts/GmarketSansBold.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

/* reset css*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed,  figure, figcaption, footer, header, hgroup,  menu, nav, output, ruby, section, summary, time, mark, audio, video, input, button {margin:0; padding:0; border:0; font-size:100%; font-family:"Pretendard Variable", Pretendard, sans-serif; vertical-align:baseline}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display:block}
body {line-height:1; word-break:keep-all}
ol, ul, li {list-style:none}
blockquote, q {quotes:none}
blockquote:before, blockquote:after, q:before, q:after {content:''; content:none}
table {border-collapse:collapse; border-spacing:0; table-layout:fixed}
caption, legend {overflow:hidden; text-indent:-520.7813vw; height:0.0521vw; padding:0 !important}
html {font-family:sans-serif; -webkit-text-size-adjust:100%; -ms-text-size-adjust:100%}
a {background-color:transparent; color:inherit; text-decoration:none}
a:active, a:hover {outline:0; text-decoration:none; text-underline-position:under}
p {outline:none}
img {border:0}
button {cursor:pointer; background:none}
select {font:inherit}
select:hover {cursor:pointer}
textarea {padding:0}
input, select {vertical-align:top; margin-top:0 !important}

/* skipToContent */
#skipToContent a {position:absolute; top:0; left:0; z-index:999999; width:100%; height:0.0521vw; margin-top:-0.0521vw; display:block; background-color:#3875c1; font-size:0.7292vw; font-weight:bold; color:#fff; line-height:1; text-align:center; overflow:hidden}
#skipToContent a:focus, #skipToContent a:active {margin-top:0; height:auto; padding:0.5208vw 0px}

.auto {margin:0 auto}
.width100 {width:100%}
.img-responsive {display:block; max-width:100%; height:auto}
.ToolTip {display:none; opacity:0}
.ZoomIcon, .ZoomIcon0, .ZoomIcon1, .ZoomIcon2, .ZoomIcon3, .ZoomIcon4, .ZoomIcon5, .ZoomIcon6, .ZoomIcon7, .ZoomIcon8, .ZoomIcon9, .ZoomIcon10 {display:none}
.bZoomIcon, .bZoomIcon0, .bZoomIcon1, .bZoomIcon2, .bZoomIcon3, .bZoomIcon4, .bZoomIcon5, .bZoomIcon6, .bZoomIcon7, .bZoomIcon8, .bZoomIcon9, .bZoomIcon10 {display:none}
.tableResponsive {position:relative}
.flex {display:flex}
.align-items-start {align-items:flex-start}
.align-items-center {align-items:center}
.align-items-end {align-items:flex-end}
.justify-space-between {justify-content:space-between}
.justify-space-center {justify-content:center}
.justify-space-end, .justify-content-flex-end {justify-content:flex-end}
.flex-shrink0 {flex-shrink:0}
.align-self-end {align-self:end}
.flex-wrap-wrap {flex-wrap:wrap}
.gap5 {gap:5px}
.gap10 {gap:10px}
.gap20 {gap:20px}
.gap30 {gap:30px}
.gap40 {gap:40px}
.gap50 {gap:50px}
.mt0 {margin-top:0 !important}
.mt5 {margin-top:5px !important}
.mt10 {margin-top:10px !important}
.mt15 {margin-top:15px !important}
.mt20 {margin-top:20px !important}
.mt25 {margin-top:25px !important}
.mt30 {margin-top:30px !important}
.mt40 {margin-top:40px !important}
.mt50 {margin-top:50px !important}
.mt60 {margin-top:60px !important}
.mt70 {margin-top:70px !important}
.mb0 {margin-bottom:0 !important}
.mb10 {margin-bottom:10px !important}
.mb20 {margin-bottom:20px !important}
.mb30 {margin-bottom:30px !important}
.ml10 {margin-left:10px}
.ml20 {margin-left:20px}
.show768, .show1024 {display:none}
.color-coralRed {color:#F06352 !important}
.point-blue-txt {color:#1856AB}
.hrSt {border:none; background:#ccc; width:100%; height:1px; margin:50px 0}

.container-inner {max-width:1440px; margin:0 auto; padding:0 20px; box-sizing:border-box; width:100%}

/* header */
header {position:relative; width:100%; z-index:1000; background:#fff}
header.fixed {position:fixed; top:0; left:0; width:100%; box-shadow:0 0 5px #ddd; border-bottom:none}
.header-util {background:#001a3d; border-bottom:1px solid rgba(255,255,255,0.1)}
.header-util .container-inner {display:flex;  justify-content:flex-end; align-items:center; height:36px; max-width:1440px; margin:0 auto; padding:0 20px; box-sizing:border-box}
.util-list {display:flex; gap:25px; margin:0}
.util-list li {position:relative}
.util-list li:after {content:''; position:absolute; right:-12px; top:50%; transform:translateY(-50%); width:1px; height:12px; background:rgba(255,255,255,0.3)}
.util-list li:last-child:after {display:none}
.util-list a {font-size:14px; color:#fff; text-decoration:none; font-weight:400; letter-spacing:0.5px}
.header-main {position:relative}
.header-main .container-inner {display:flex; justify-content:space-between; align-items:center; height:100px; max-width:1440px; margin:0 auto; padding:0 20px; box-sizing:border-box}
header .logo {margin:0}
header .logo img {height:36px; width:auto; display:block}
#gnb {position:relative}
.gnb-list {display:flex; z-index:20; margin:0}
.gnb-list > li {width:160px}
.gnb-list > li > a {font-size:20px; font-weight:600; height:100px; line-height:100px; display:block; text-align:center}
.gnb-list > li:hover > a {color:#1856AB}
.gnb-bg-full {position:absolute; top:80px; left:-15px; right:-15px; height:0; background:#fff; border-radius:20px; box-shadow:0 10px 25px rgba(0,0,0,0.1); z-index:10; overflow:hidden; transition:height 0.3s, border 0.1s; pointer-events:none}
.gnb-bg-full.active {border:2px solid #1856AB}
.depth2-wrap {position:absolute; top:100px; width:160px; display:none; z-index:21; padding-bottom:30px}
.depth2 li a {display:block; padding:7px 0; font-size:16px; color:#444; text-align:center; transition:all 0.3s}
.depth2 li a:hover {background:#f0f5ff; color:#1856AB; font-weight:700; border-radius:5px}
.m-menu-btn {display:none; flex-direction:column; gap:6px; width:28px; cursor:pointer}
.m-menu-btn span {display:block; width:100%; height:3px; background:#1856AB; border-radius:5px}
.m-gnb-wrap {display:none}
.gnb-list > li {position:relative}
.eng-badge {position:absolute; top:12px; left:50%; transform:translateX(-50%); z-index:5; animation:float 1.5s ease-in-out infinite; will-change:transform; backface-visibility:hidden; -webkit-font-smoothing:antialiased}
.eng-badge a {display:block; background:#112445; color:#fff; font-size:12px; font-weight:700; padding:2px 10px; border-radius:10px; line-height:1.4; position:relative}
.eng-badge a:after {content:''; position:absolute; bottom:-5px; left:50%; transform:translateX(-50%); border-top:6px solid #112445; border-left:4px solid transparent; border-right:4px solid transparent}
@keyframes float {0% {transform:translateX(-50%) translateY(0) translateZ(0)} 50% {transform:translateX(-50%) translateY(-3px) translateZ(0)} 100% {transform:translateX(-50%) translateY(0) translateZ(0)}}

/* mainVisual*/
.main-visual {position:relative; width:100%; overflow:hidden}
.main-swiper .swiper-slide {position:relative; height:550px; background:#f5f5f5}
.visual-img {position:absolute; top:0; left:0; width:100%; height:100%}
.visual-img img {width:100%; height:100%; object-fit:cover; object-position:center}
.visual-txt-area {position:relative; z-index:10; height:100%; display:block}
.visual-txt-area .container-inner {padding-top:100px}
.txt-box .title {font-size:48px; color:#1856AB; font-weight:700; line-height:1.2; letter-spacing:-0.03em}
.txt-box .desc {font-size:20px; color:#444; margin-top:20px; font-weight:500; line-height:1.5}
.main-swiper .swiper-pagination {bottom:40px !important}
.main-swiper .swiper-pagination-bullet {width:12px; height:12px; background:#fff; opacity:0.6; margin:0 6px !important; transition:all 0.3s}
.main-swiper .swiper-pagination-bullet-active {background:#1856AB; opacity:1; width:35px; border-radius:10px}


/* main-bottom-section */
.main-bottom-section {padding:25px 0; background:#fff}
.card-banner-area {width:427px; position:relative; margin-top:-250px}
.card-swiper {border-radius:20px; overflow:hidden; box-shadow:10px 10px 30px rgba(0,0,0,0.1)}
.card-swiper img {width:100%; display:block}
.card-swiper .swiper-pagination {bottom:-20px !important}
.card-swiper .swiper-pagination-bullet-active {background:#1856AB}
.main-notice-area {width:calc(100% - 730px); padding:0 20px; margin-top:30px}
.notice-tab-header {border-bottom:2px solid #ccc; padding-bottom:15px; margin-bottom:20px}
.notice-tab-header .tab-btns {gap:20px}
.tab-btn {font-size:24px; color:#6BAEC6; font-weight:700; transition:all 0.3s; position:relative}
.tab-btn:focus {outline:none}
.tab-btn.active {color:#333}
.tab-btn.active:after {content:''; position:absolute; bottom:-17px; left:0; width:100%; height:4px; background:#333}
.more-link {font-size:15px; color:#666; font-weight:500}
.tab-content {display:none}
.tab-content.active {display:block}
.main-notice-list li {border-bottom:1px solid #ddd}
.main-notice-list li a {display:flex; justify-content:space-between; padding:16px 0; font-size:16px; color:#444}
.main-notice-list li a span {overflow:hidden; text-overflow:ellipsis; white-space:nowrap}
.main-notice-list li a .date {font-size:15px; color:#999; font-style:normal; flex-shrink:0; margin-left:15px}

.main-gal-list {display:flex; gap:20px}
.main-gal-list > li {text-align:center; line-height:1.2}
.main-gal-list > li > a {display:block}
.main-gal-list > li > a img {width:100%; height:132px}
.main-gal-list > li > a p {font-size:16px; font-weight:500; color:#555; margin:7px 0 0 0; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden}

.main-right-links {width:270px; display:flex; flex-direction:column; gap:12px}
.quick-link-card {display:flex; align-items:center; justify-content:center; height:65px; border-radius:15px; text-align:center; text-decoration:none; transition:transform 0.2s ease, box-shadow 0.2s ease}
.quick-link-card:hover {transform:translateY(-3px); box-shadow:0 5px 15px rgba(0,0,0,0.1)}
.quick-link-card.bg-gray {background-color:#EEEEEE}
.quick-link-card.bg-blue {background-color:#E2E8EB}
.quick-link-card .tit {font-size:18px; color:#333; font-weight:700; line-height:1.2}
.quick-link-card .point-red {color:#D3313C; font-size:18px; display:block; margin-top:2px}
.quick-link-card .point-navy {color:#1856AB; font-size:18px; display:block; margin-top:2px}


/* main-quick-menu */
.main-quick-menu {padding:30px 0 70px 0}
.quick-list {display:grid; grid-template-columns:repeat(3,1fr); gap:30px}
.quick-item {border-radius:15px; overflow:hidden; transition:all 0.3s}
.quick-item:hover {transform:translateY(-10px); box-shadow:0 15px 30px rgba(0,0,0,0.1)}
.quick-item a {display:flex; flex-direction:column; padding:35px 30px 40px 30px; height:100%; color:#fff; text-decoration:none}
.quick-item .tit {font-size:28px; font-weight:800; margin-bottom:20px; letter-spacing:-1px; word-break:keep-all}
.quick-item .desc-list {margin-bottom:30px; flex-grow:1}
.quick-item .desc-list li {font-size:18px; font-weight:400; color:rgba(255,255,255,0.9); margin-bottom:8px; position:relative; padding-left:12px}
.quick-item .desc-list li::before {content:'·'; position:absolute; left:0; top:0}
.quick-item .view-btn {font-size:16px; font-weight:600; display:flex; align-items:center; gap:8px; margin-top:auto}
.quick-item .view-btn i {font-size:16px}
.quick-item.bg-green {background:#98C066}
.quick-item.bg-blue {background:#3F70B4}
.quick-item.bg-red {background:#D4535C}
.quick-item.bg-purple {background:#9966C0}
.quick-item.bg-teal {background:#2C9292}
.quick-item.bg-orange {background:#F8AB5F}


/* main-partner-section */
.main-partner-section {padding:70px 0 80px 0; background:url('../images/partner_bg.png') no-repeat center / cover; position:relative}
.main-partner-section .container-inner {position:relative; z-index:2}
.partner-tit-area {text-align:center; margin-bottom:50px}
.partner-tit-area .p-tit {font-size:46px; color:#333; line-height:1.3; font-weight:900}
.partner-tit-area .p-desc {font-size:18px; color:#333; margin-top:20px; line-height:1.5}
.partner-logo-list {flex-wrap:wrap; justify-content:center}
.logo-card {width:200px; height:100px; background:#fff; border-radius:15px; display:flex; align-items:center; justify-content:center; padding:20px; box-shadow:0 10px 20px rgba(0,0,0,0.05); transition:all 0.3s}
.logo-card:hover {transform:translateY(-5px); box-shadow:0 15px 30px rgba(0,0,0,0.1)}
.logo-card img {max-width:100%; max-height:100%; transition:all 0.3s}


/* footer */
#footer {padding:60px 0; background:#111; color:#ccc; text-align:center}
#footer .container-inner {position:relative}
.f-link-area {display:flex; justify-content:center; margin-bottom:30px; border-bottom:1px solid rgba(255,255,255,0.1); padding-bottom:30px; gap:40px}
.f-link-area a {font-size:16px; color:#ccc; transition:color 0.3s}
.f-link-area a:hover {color:#fff}
.f-link-area a.point-bold {font-weight:700; color:#fff}
.f-info-area {font-size:15px; line-height:1.8; color:#999}
.f-info-area address {display:inline; font-style:normal}
.f-info-area .bar {margin:0 15px; color:#444}
.f-info-area .tel {color:#999}
.f-info-area .copyright {margin-top:15px; font-size:14px; color:#666; letter-spacing:0.02em}

.goSiteWrap {display:flex; align-items:center; position:absolute; top:-13px; right:0}
.goSiteWrap > li {position:relative; width:185px; margin-right:0 !important}
.goSiteWrap > li > a {display:flex; align-items:center; width:100%; background:url('../images/siteMore.png') #fff right 10px center no-repeat; color:#7d7d7d; border:1px solid #e0e0e0; font-size:14px; padding:0 10px; height:42px; box-sizing:border-box}
.goWebsite {scrollbar-3dLight-Color: #efefef; scrollbar-arrow-color: #545557; scrollbar-base-color: #efefef; scrollbar-Face-Color: #545557; scrollbar-Track-Color: #262727; scrollbar-DarkShadow-Color: #efefef; scrollbar-Highlight-Color: #efefef; scrollbar-Shadow-Color: #545557}
.goWebsite::-webkit-scrollbar {width:13px}
.goWebsite::-webkit-scrollbar-track {background:#ddd}
.goWebsite::-webkit-scrollbar-thumb {background:#999}
.goWebsite {width:185px; height:150px; position:absolute; right:0px; bottom:36px; background:#fff; border:1px solid #e0e0e0; border-bottom:none; overflow-y:scroll; padding-top:10px; box-sizing:border-box; z-index:998}
.goWebsite li {text-align:left; font-size:13px; font-weight:400; padding-left:10px; margin-bottom:10px; background:url(../img/noticeDot.png) left center no-repeat}
.goWebsite li a {color:#7d7d7d}
.goWebsite li a:hover {color:#1856AB; font-weight:500}


/* sub-visual */
.sub-visual {position:relative; width:100%; height:350px; background:url('../images/sub_visual01.png') no-repeat center center; background-size:cover; overflow:hidden; display:flex; align-items:center}
/*.sub-visual:before {content:''; position:absolute; top:0; left:0; width:100%; height:100%; background:rgba(255, 255, 255, 0.4); z-index:1}*/
.sub-visual .subvisual-txt-area {position:relative;  z-index:10;  width:100%}
.sub-visual .txt-box .title {font-size:46px; color:#1856AB; font-weight:700; line-height:1.2; margin:0}
.sub-visual .txt-box .desc {font-size:20px; color:#000; margin-top:15px; margin-bottom:0; font-weight:500}


/* 서브 레이아웃 */
.sub-content-wrap {padding:60px 0 150px 0}
.sub-side-bar {width:280px; flex-shrink:0}
.sub-real-content {width:calc(100% - 280px); padding-left:60px}
.side-tit {font-size:32px; font-weight:800; color:#333; margin-top:0; margin-bottom:25px; padding-left:30px}
.side-menu {border:1px solid #eee; border-radius:15px; overflow:hidden}
.side-menu li {border-bottom:1px solid #eee}
.side-menu li:last-child {border-bottom:none}
.side-menu li a {display:block; padding:18px 30px; font-size:18px; color:#333; transition:all 0.3s}
.side-menu li.active a, .side-menu li a:hover {background:#f0f5ff; color:#1856AB; font-weight:700}


/* 본문 타이틀 */
.content-head {margin-bottom:45px}
.content-tit {font-size:36px; font-weight:700; color:#000; position:relative; padding-left:16px; margin:0}
.content-tit:before {content:''; position:absolute; left:0; top:50%; transform:translateY(-50%); width:6px; height:30px; background:#1856AB}
.sub-inner-tit {font-size:28px; color:#1856AB; font-weight:700; margin-bottom:15px; margin-top:70px}
.h5Tit {font-size:22px; color:#000; font-weight:700; margin-bottom:10px; margin-top:30px}

.blue-info-box {background:#f8fbff; border:1px solid #1856AB; border-radius:10px; padding:25px 30px 20px 30px; box-shadow:5px 5px 0 #1856AB}
.blue-info-box .point-txt {font-size:18px; font-weight:700; color:#000; margin-bottom:15px; line-height:1.4}
.blue-info-box .desc-txt {font-size:18px; color:#333; line-height:1.5}

.bList {margin-top:15px}
.bList > li {font-size:18px; font-weight:400; color:#333; display:flex; margin-bottom:7px; line-height:1.3}
.bList > li:before {content:'-'; margin-right:4px; margin-top:-1px}
.bList > li > .dList {margin-top:5px}
.dList {margin-top:15px}
.dList > li {font-size:18px; font-weight:400; color:#333; display:flex; margin-bottom:7px; line-height:1.3}
.dList > li:before {content:'·'; margin-right:4px; margin-top:-1px}
.imList {margin-top:15px}
.imList > li {font-size:18px; font-weight:400; color:#333; display:flex; margin-bottom:7px; line-height:1.3}
.imList > li:before {content:'※'; margin-right:4px; margin-top:-1px}
.circleNumList {margin-top:15px}
.circleNumList > li {font-size:18px; font-weight:400; color:#333; display:flex; margin-bottom:7px; line-height:1.3}
.circleNumList > li .bList {margin-top:10px; padding-left:20px}
.pTxt {font-size:18px; line-height:1.4}

.cardStA div .card {}
.cardStA div:nth-child(1) .card {border-color:#1856AB}
.cardStA div:nth-child(1) .card > .card-header {background-color:#1856AB}
.cardStA div:nth-child(2) .card {border-color:#D3313C}
.cardStA div:nth-child(2) .card > .card-header {background-color:#D3313C}
.cardStA div:nth-child(3) .card {border-color:#F06352}
.cardStA div:nth-child(3) .card > .card-header {background-color:#F06352}
.cardStA div:nth-child(4) .card {border-color:#8949BA}
.cardStA div:nth-child(4) .card > .card-header {background-color:#8949BA}
.cardStA .card-title {font-size:20px; color:#fff; margin:0}
.cardStA .card-text {font-size:16px; color:#333; margin:0; line-height:1.2}

.resultList {display:flex; flex-wrap:wrap; gap:15px}
.result-item {flex:0 0 calc(50% - 7.5px); background:#EEEEEE; border-radius:10px; display:flex; align-items:center; justify-content:center; height:70px; font-size:18px; font-weight:400; padding:0 15px; text-align:center}

.btn-mentor-group {display:flex; justify-content:flex-end; gap:10px; margin-bottom:10px; position:relative; top:-20px}
.btn-custom {padding:10px 15px; border-radius:50px; font-weight:600; transition:all 0.3s ease; border:none; display:inline-flex; align-items:center; justify-content:center; text-decoration:none}
.btn-custom > i {margin-right:7px}
.btn-search {background-color:#1856AB; color:#fff}
.btn-search:hover {background-color:#124385; color:#fff; box-shadow:0 4px 10px rgba(24, 86, 171, 0.3)}
.btn-apply {background-color:#D3313C; color:white}
.btn-apply:hover {background-color:#b02832; color:white; box-shadow:0 4px 10px rgba(211, 49, 60, 0.3)}

.process-wrapper {max-width:100%; margin:0 auto}
.process-steps {display:flex; justify-content:space-between; align-items:flex-start; position:relative}
.process-steps::before {content:''; position:absolute; top:30px; left:10%; right:10%; height:2px; border-top:2px dashed #1856AB; z-index:0}
.step-item {position:relative; z-index:1; width:18%; text-align:center}
.step-icon {width:60px; height:60px; background-color:#fff; border:3px solid #1856AB; color:#1856AB; border-radius:50%; display:flex; align-items:center; justify-content:center; margin:0 auto 15px auto; font-weight:800; font-size:18px; transition:all 0.3s ease}
.step-item:hover .step-icon {background-color:#1856AB; color:#fff; transform:scale(1.1)}
.step-title {font-weight:700; color:#1856AB; margin-bottom:0.5rem; font-size:18px; word-break:keep-all}
.step-desc {font-size:15px; color:#555; line-height:1.4; word-break:keep-all}
.badge-center {display:inline-flex; background-color:#e6ebf1; color:#495057; font-size:14px; padding:4px 10px; border-radius:4px; margin-top:3px}

.step-wrapper {display:flex; justify-content:space-between; align-items:flex-start; flex-wrap:nowrap; gap:10px; margin-top:20px}
.step-unit {flex:1; position:relative; text-align:center}
.step-circle {width:36px; height:36px; background-color:#1856AB; color:#fff; border-radius:50%; display:flex; align-items:center; justify-content:center; font-weight:700; margin:0 auto 15px auto; font-size:16px; z-index:2; position:relative; box-shadow:0 3px 6px rgba(0,0,0,0.1)}
.step-unit:not(:last-child)::after {content:'→'; position:absolute; top:6px; right:-15%; color:#ccc; font-weight:bold; font-size:1.2rem}
.step-label-text {font-size:16px; font-weight:700; color:#333; word-break:keep-all; line-height:1.3}
.step-sub-text {font-size:14px; color:#777; margin-top:5px; display:block}
  
.timeline {position:relative; padding-left:54px; margin-top:30px}
.timeline::before {content:''; position:absolute; left:20px; top:0; bottom:0; width:2px; background:#e9ecef}
.step-card {position:relative; background:#fff; border:1px solid #e9ecef; border-radius:15px; padding:25px; margin-bottom:40px; box-shadow:0 4px 12px rgba(0,0,0,0.05); transition:0.3s}
.step-number {position:absolute; left:-55px; top:20px; width:40px; height:40px; background:#1856AB; color:#fff; border-radius:50%; display:flex; align-items:center; justify-content:center; font-weight:bold; z-index:2}
.step-header {display:flex; justify-content:space-between; align-items:flex-start; margin-bottom:15px; border-bottom:2px solid #f1f3f5; padding-bottom:10px}
.step-title {color:#1856AB; font-weight:800; font-size:20px; margin:0}
.step-goal {font-size:16px; color:#D3313C; font-weight:600; text-align:right; margin-left:15px}
.content-grid {display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-top:15px}
.content-section h6 {font-size:16px; font-weight:700; color:#333; margin-bottom:8px; display:flex; align-items:center}
.content-section h6::before {content:'•'; color:#F06352; margin-right:5px}
.content-section ul {list-style:none; padding:0; margin:0; font-size:15px; color: #666}
.content-section li {margin-bottom:7px; padding-left:12px; position: relative}
.done-criteria {background:#fff5f4; padding:10px; border-radius:8px; border-left:4px solid#F06352}
.warning-box {background:#fff3cd; border:1px solid #ffeeba; padding:15px; border-radius:10px; font-size:16px; margin-bottom:15px}

.step-circle.sc01, .step-number.sc01 {background-color:#c1d8e8}
.step-circle.sc02, .step-number.sc02 {background-color:#a5bdde}
.step-circle.sc03, .step-number.sc03 {background-color:#6991c8}
.step-circle.sc04, .step-number.sc04 {background-color:#1856ab}
.step-circle.sc05, .step-number.sc05 {background-color:#2e43ac}
.step-circle.sc06, .step-number.sc06 {background-color:#582eac}
.step-circle.sc07, .step-number.sc07 {background-color:#6b299b}

.greeting-main-box {background:#fff; border:1px solid #e9ecef; border-radius:15px; padding:50px; box-shadow:0 10px 30px rgba(0,0,0,0.05); position:relative; overflow:hidden; text-align:center}
.greeting-intro {font-size:18px; margin-bottom:35px; word-break:keep-all; line-height:1.4}
.greeting-highlight {font-size:22px; font-weight:700; margin-bottom:35px; line-height:1.4; word-break:keep-all}
.greeting-bottom-box {border:1px dashed #F06352; border-radius:15px; padding:30px; margin-bottom:60px; position:relative}
.greeting-bottom-box p {font-size:20px; font-weight:500; margin-bottom:8px}
.greeting-bottom-box .thanks {margin-top:15px; color:#666; font-size:18px}
.greeting-signature {text-align:right; margin-top:40px}
.greeting-signature span {display:block; font-size:18px; color:#444; margin-bottom:10px}
.greeting-signature strong {font-size:32px; color:#1856AB; font-weight:800; letter-spacing:2px}


/* AI실전창업아카데미 */
.feature-grid {display:grid; grid-template-columns:repeat(2, 1fr); gap:20px}
.feature-box {background:white; padding:25px; border-radius:15px; box-shadow:0 4px 15px rgba(0,0,0,0.05); border-top:4px solid #F06352}
.feature-box h5 {font-size:20px; color:#1856AB; font-weight:800; margin-bottom:10px}
.feature-box p {font-size:16px; color:#666; margin:0; line-height:1.5}
.course-block {margin-top:20px; border:1px solid #dee2e6; border-radius:15px; overflow:hidden}
.course-header {background:#1856AB; color:#fff; padding:15px 25px; font-weight:700; font-size:20px}
.course-body {padding:15px}
.curriculum-list {list-style:none; padding:0; display:grid; grid-template-columns:1fr 1fr; gap:15px}
.curriculum-item {padding:12px; border-bottom:1px solid #eee; font-size:16px; line-height:1.3}
.curriculum-item b {color:#F06352; display:block; margin-bottom:5px; font-size:18px}
.course-desc {background:#fdf2f1; padding:15px; border-radius:8px; font-size:15px; color:#666; margin-top:20px; border-left:3px solid #F06352}

  
.wsu-layer { position: fixed; inset: 0; z-index: 9999; display: none; }
.wsu-layer.is-open { display: block; }
.wsu-layer__dim { position: absolute; inset: 0; background: rgba(0, 0, 0, 0.5); }
.wsu-layer__panel { position: relative; width: calc(100% - 32px); max-width: 620px; margin: 8vh auto 0; background: #fff; border-radius: 10px; box-shadow: 0 18px 45px rgba(0, 0, 0, 0.2); padding: 28px 24px 22px; border-top: 4px solid #1f4fa3; }
.wsu-layer__title { margin: 0 28px 16px 0; font-size: 24px; line-height: 1.35; color: #1f2d3d; font-weight: 700; }
.wsu-layer__list { margin: 0; margin-left:5px; padding: 0 0 0 18px; }
.wsu-layer__list li {list-style: circle; margin: 10px 0; color: #333; font-size: 16px; line-height: 1.65; }
.wsu-layer__list a { color: #1f4fa3; text-decoration: underline; text-underline-position: under;}
.wsu-layer__close { position: absolute; top: 10px; right: 12px; border: 0; background: transparent; font-size: 30px; line-height: 1; color: #666; cursor: pointer; }
.wsu-layer__close:hover { color: #111; }
body.layer-open { overflow: hidden; }

/* 탭 전체 레이아웃 */
.custom-tabs {display: flex !important; flex-wrap: wrap; border-bottom:0 !important; gap:5px}
.custom-tabs .nav-item { flex: 1; margin:0}
.custom-tabs .nav-link { display: block; width: 100%; padding: 15px 10px !important; background: transparent !important; border:1px solid #e9ecef !important; color: #666 !important; font-size:20px; font-weight: 500; text-align: center; transition: all 0.3s; border-radius:10px; letter-spacing:-0.75px}
.custom-tabs .nav-link:hover { color: #004ea2 !important; }
.custom-tabs .nav-link.active { color: #fff !important; border-color:#004ea2 !important; background:#004ea2 !important; font-weight: 700 !important; }
.tab-content2 > .tab-pane { display: none; }
.tab-content2 > .active { display: block; }


.table-styleA { width: 100%; border-top: 2px solid #333; border-left: 1px solid #ddd;border-collapse: collapse; word-break: break-all;}
.table-styleA th { background: #f8f9fa; border-bottom: 1px solid #ddd; padding: 15px 10px; font-weight: 700; color: #333; font-size: 16px; border-right: 1px solid #ddd; vertical-align:top}
.table-styleA td { border-bottom: 1px solid #ddd; padding: 15px 20px; font-size: 16px; color: #666; line-height: 1.6; border-right: 1px solid #ddd; vertical-align:top}
.table-styleA .course-block { border: 1px solid #eee; background: #fff; }
.table-styleA .course-header { background: #fff !important; border-bottom: 1px solid #eee !important; font-weight: 700; }


.search-filter-wrap {background:#f8f9fa; border:1px solid #e9ecef; border-radius:12px; padding:30px; margin-bottom:40px}
.filter-container {display:flex; gap:15px; align-items:center; justify-content:center; max-width:900px; margin:0 auto}
.filter-item {flex:1}
.filter-item .skip {display:none}
.form-select {width:100%; height:50px; padding:0 15px; border:1px solid #ced4da; border-radius:6px; background-color:#fff; font-size:16px; color:#495057; appearance:none; background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e"); background-repeat:no-repeat; background-position:right 15px center; background-size:12px}
.btn-search2 {display:flex; align-items: center; justify-content: center; min-width:120px; height:50px; background:#00458e; color:#fff; border:none; border-radius:6px; font-size:17px; font-weight:500; cursor:pointer; transition:background 0.3s ease}
.btn-search2:hover {background:#00336a; color:#fff}
.btn-search2 i {margin-right:5px}
.search-result-info {font-size:18px; margin-bottom:20px; color:#333}
.search-result-info .count {color:#e63946; font-weight:bold}
.search-result-info .count span {font-family:"Pretendard Variable", Pretendard, sans-serif !important; font-size:18px; color:#e63946; font-weight:bold !important}


.mentor-list-wrap { width: 100%; overflow-x: auto; margin-top: 10px; border-top: 2px solid #333; }
.table-mentor { width: 100%; border-collapse: collapse; table-layout: auto; } /* fixed에서 auto로 변경하여 내용에 따라 늘어나게 함 */
.table-mentor th { background-color: #f8f9fa; color: #333; font-weight: 600; padding: 15px 10px; border-bottom: 1px solid #dee2e6; font-size: 15px; white-space: nowrap; } /* 제목은 한 줄 유지 */
.table-mentor td { padding: 15px 10px; border-bottom: 1px solid #eee; font-size: 15px; color: #555; line-height: 1.6; vertical-align: middle; word-break: keep-all; word-wrap: break-word; } /* 내용이 길면 단어 단위로 줄바꿈 */
.txt-center { text-align: center; }
.txt-left { text-align: left; }

.badge { display: inline-block; padding:4px 8px; border-radius: 4px; font-size: 14px; font-weight: 400; }
.badge.field { background-color: #e7f3ff; color: #007bff; border: 1px solid #cce5ff; }
.badge.industry { background-color: #f0fdf4; color: #198754; border: 1px solid #d1fae5; }
.no-data { padding: 50px 0 !important; text-align: center; color: #999 !important; }

.intro-text-wrap { text-align: left; line-height: 1.8; color: #444; border-left: 4px solid #00458e; padding-left: 25px; }
.intro-text-wrap .point-text { font-size: 20px; font-weight: 700; color: #00458e; margin-bottom: 15px; }
.intro-text-wrap .main-text { font-size: 16px; word-break: keep-all; }

.img-content-box {background:#f8f9fa; border:1px solid #ddd; padding:40px 40px; color:#666}


/* 반응형 */
@media screen and (max-width:1480px) {
	.quick-item .tit {font-size:28px}
	.quick-item .desc-list li {font-size:16px}
}

@media screen and (max-width:1440px) {
	.quick-list {flex-wrap:wrap; justify-content:space-between}
	.quick-list .quick-item {flex:0 0 48%}
	.quick-item.bg-purple .tit {font-size:28px; letter-spacing:-0.75px}
}

@media screen and (max-width:1280px) {
	.gnb-list > li, .depth2-wrap {width:130px}	
	
	.main-bottom-section .container-inner {flex-direction:column; gap:40px}
    .card-banner-area, .main-notice-area, .main-right-links {width:100%; padding:0}
	.card-banner-area {margin-top:0}
	.quick-link-card {height:80px}
	.quick-list {grid-template-columns:repeat(2,1fr)}
	
	.main-gal-list > li > a img {height:auto; max-height:265px}
}

@media screen and (max-width:1180px) {
	header .logo img {height:30px}		
}

@media screen and (max-width:1024px) {
	.show1024 {display:block}
	.hide1024 {display:none}
	.header-util .container-inner {height:30px}
	.util-list a {font-size:13px}
    .header-main .container-inner {height:70px}
    header .logo img {height:30px}
	#gnb {display:none}
	.gnb-list, .gnb-bg-full {display:none !important}
    .m-menu-btn {display:flex}
    .m-gnb-wrap {display:block; position:fixed; top:0; right:-100%; width:80%; height:100%; background:#fff; z-index:2000; transition:all 0.4s; box-shadow:-5px 0 15px rgba(0,0,0,0.1)}
    .m-gnb-wrap.on {right:0}
    .m-gnb-bg {position:fixed; top:0; left:0; width:100%; height:100%; background:rgba(0,0,0,0.7); z-index:1999; display:none}
    .m-gnb-top {display:flex; justify-content:space-between; align-items:center; padding:15px 20px; border-bottom:1px solid #eee}
	.m-gnb-list-tit {font-size:17px}
    .m-close-btn {font-size:30px; border:none; background:none; cursor:pointer; position:relative; top:-3px}
    .m-gnb-list > li {border-bottom:1px solid #eee; position:relative}
    .m-gnb-list > li > a {display:block; padding:15px 20px; font-size:18px; font-weight:700; background:#f9f9f9; color:#222}
    .m-gnb-list .depth2-wrap {position:static; width:100%; display:none; padding:0; border:none; box-shadow:none}
    .m-gnb-list .depth2 li a {text-align:left; padding:15px 30px; border-bottom:1px solid #f5f5f5}
    .m-gnb-list .depth2 li a:hover {background:#f4f7ff}
	.m-gnb-list > li {position:relative}
	.m-gnb-list .eng-badge {position:absolute; top:14px; left:165px; transform:none}
	.m-gnb-list .eng-badge a {padding:2px 8px; font-size:11px; border-radius:8px}
	.m-gnb-list .eng-badge a:after {content:''; position:absolute; bottom:50%; left:-4px; transform:translateY(50%); border-top:4px solid transparent; border-bottom:4px solid transparent; border-right:5px solid #112445; border-left:none}
	
	.main-swiper .swiper-slide {height:450px}
	.visual-txt-area .container-inner {padding-top:50px}
	.txt-box .title {font-size:36px}
	.txt-box .desc {font-size:18px; margin-top:15px}
	
	.main-gal-list > li > a img {max-height:210px}
	
	.quick-list {flex-direction:column; gap:20px}
    .quick-list .quick-item {height:auto; min-height:180px}
    .quick-item .icon-box {font-size:60px; right:20px; bottom:20px}
	
	.main-partner-section {padding:60px 0}
    .partner-tit-area .p-tit {font-size:30px}
    .logo-card {height:80px; margin:0 auto}
	.partner-logo-list > li {flex:0 0 30%}
	
	.sub-visual {height:250px}
	.sub-visual .txt-box .title {font-size:36px}
	.sub-visual .txt-box .desc {font-size:16px; margin-top:10px; font-weight:400}
	
	.sub-content-wrap {padding:30px 0 150px 0}
	.sub-content-wrap .container-inner {flex-direction:column}
    .sub-side-bar {width:100%; margin-bottom:70px}
	.side-tit {display:none}
    .side-menu {display:flex; flex-wrap:wrap; gap:8px; border:none; border-radius:0}
    .side-menu li {flex:0 0 calc(33% - 4px); min-width:100px; border:none !important}
    .side-menu li a {display:flex; align-items:center; justify-content:center; height:45px; padding:5px 10px; font-size:14px; color:#666; background:#f2f2f2; border-radius:6px; text-align:center; line-height:1.2; transition:all 0.2s}
    .side-menu li.active a, .side-menu li a:hover {background:#1856AB; color:#fff !important; font-weight:600}
    .sub-real-content {width:100%; padding-left:0}
	
	.content-tit {font-size:30px}
    .sub-inner-tit {font-size:26px; margin-top:50px}
	.h5Tit {font-size:20px; margin-top:20px}
	
	.btn-mentor-group {top:0; justify-content:flex-start; margin-bottom:30px}
	
	.step-wrapper {flex-direction:column; align-items:flex-start; gap:0; position:relative; padding-left:10px}
	.step-wrapper::before {content:''; position:absolute; top:20px; bottom:20px; left:28px; width:1px; border-left:1px dashed #1856AB; z-index: 1}
	.step-unit {width:100%; flex:none; display:flex; align-items:center; text-align:left; padding-bottom:20px}
	.step-unit:last-child {padding-bottom:0}
	.step-circle {margin:0 20px 0 0; flex-shrink:0; width:36px; height:36px; font-size:15px}
	.step-unit:not(:last-child)::after {display:none}
	.step-label-text {font-size:16px; line-height:1.2}
	.step-sub-text {margin-top:3px; font-size:14px}
	.step-label-text br {display:none}
	
	.timeline {padding-left:45px}
    .step-card:hover {transform:none}
    .step-header {flex-direction:column; align-items:flex-start}
    .step-goal {text-align:left; margin-left:0; margin-top:8px; font-size:15px}
	
	.greeting-main-box {padding:30px}
	.greeting-highlight {font-size:18px}
	.greeting-intro, .greeting-programs {font-size:16px}
	.greeting-bottom-box p {font-size:17px}
	.greeting-signature strong {font-size:26px}
	
	.table-mentor { min-width: 900px; }
}

@media screen and (max-width:768px) {
	.show768 {display:block}
	.hide768 {display:none}
	
    .container-inner {padding:0 15px}
	
	.main-swiper .swiper-slide {height:380px}
	.txt-box .title {font-size:28px}
	.txt-box .desc {font-size:15px}
	
	.notice-tab-header .tab-btns {gap:10px}
	.tab-btn {font-size:22px}
	
	.main-gal-list > li > a img {max-height:155px}
	
	.quick-list {grid-template-columns:repeat(1,1fr)}
	.quick-item a {padding:35px 25px}
	
	#footer {padding:40px 20px}
    .f-link-area {flex-wrap:wrap; gap:15px 25px}
    .f-info-area address, .f-info-area .tel {display:block}
    .f-info-area .bar {display:none}
	.goSiteWrap {display:none}
	
	.sub-visual {height:180px}
	.sub-visual .txt-box .title {font-size:32px}
	.sub-visual .txt-box .desc {font-size:15px; margin-top:10px; line-height:1.2}
	
	.sub-side-bar {margin-bottom:60px}
	.side-menu {gap:6px}
    .side-menu li {flex:0 0 calc(33% - 3px)}
    .side-menu li a {height:40px}
	
	.content-head {margin-bottom:30px}
    .content-tit {font-size:28px}
    .content-tit:before {height:22px}
    .sub-inner-tit {font-size:22px; margin-top:40px}
	.h5Tit {font-size:18px; margin-top:15px}

    .blue-info-box {padding:20px}
    .blue-info-box .point-txt {font-size:16px; word-break:keep-all}
    .blue-info-box .desc-txt {font-size:15px}

    .bList > li, .dList > li, .imList > li, .circleNumList > li, .pTxt {font-size:15px}

    .cardStA .col-md-4 {margin-bottom:10px}
    .cardStA .card-title {font-size:17px}
    .cardStA .card-text {font-size:15px}

    .result-item {flex:0 0 100%; height:auto; min-height:60px; padding:10px 15px; font-size:15px; text-align:center}
	
	.process-wrapper {padding:10px 0}
    .process-steps {flex-direction: column; align-items:flex-start; gap:0; position:relative}
    .process-steps::before {content:''; position:absolute; top:30px; bottom:30px; left:30px; width:2px; height:auto; border-left:2px dashed #1856AB; border-top:none; z-index:0}
    .step-item {width:100%; display:flex; flex-direction:row; align-items:flex-start; text-align:left; padding-bottom:25px; position:relative}
    .step-item:last-child {padding-bottom:0}
    .step-icon {margin:0 25px 0 0; flex-shrink:0; width:60px; height:60px; font-size:18px; background-color:#fff; z-index:2}
    .step-title {font-size:18px; margin-top:5px; margin-bottom:5px; line-height:1.3}
	.step-desc {font-size:15px; color:#666}
	.badge-center {margin-top:5px; background-color:#f0f3f7}
	
	.timeline {padding-left:30px}
    .timeline::before {left:10px}
    .step-number {left:-32px; width:34px; height:34px; font-size:14px; top:15px}
    .step-card {padding:20px 15px; margin-bottom:30px}
    .step-title {font-size:18px; line-height:1.3}
    .content-grid {grid-template-columns:1fr; gap:15px}
    .step-card .row {flex-direction:column !important; gap:10px !important}
    .warning-box {font-size:14px; padding:12px}
    .content-section h6 {font-size:15px}
    .content-section ul {font-size:14px}
	
	.feature-grid, .curriculum-list {grid-template-columns:1fr}
	
	.wsu-layer__panel {margin-top:6vh; padding:22px 18px 18px}
	.wsu-layer__title {font-size:19px}
	.wsu-layer__list li {font-size:15px}
	
	.custom-tabs .nav-link {font-size:15px; padding:10px 5px !important;}
	
	.table-styleA th, .table-styleA td { padding: 10px; font-size: 14px; }
	.table-styleA th { width: 30% !important; }
	
	.filter-container {flex-direction:column}
    .filter-item, .filter-btn, .btn-search {width:100%}
	
	.custom-tabs .nav-item {flex:1 50%}
}

@media screen and (max-width:620px) {
	.sub-visual {height:150px}
	.sub-visual .txt-box .title {font-size:28px}
	.sub-visual .txt-box .desc {font-size:15px; margin-top:5px}
	
	.side-menu li {flex:0 0 calc(50% - 4px)}
}

@media screen and (max-width:500px) {
   header .logo img {height:24px}
   
   .main-gal-list > li:last-child {display:none}
   .main-gal-list > li > a img {max-height:145px}
   
   .tab-btn {font-size:20px}
   .custom-tabs .nav-item {flex:1 100%}
}

@media screen and (max-width:480px) {
	.step-icon {width:50px; height:50px; font-size:16px; margin-right:15px}
    .process-steps::before {left:25px; top:25px; bottom:25px}
    .step-title {font-size:16px}
	.step-desc {font-size:14px}
	
	.timeline {padding-left:0; border-left:none}
    .timeline::before {display:none}
    .step-number {position:relative; left:0; top:0; margin-bottom:15px}
    .step-card {border-left:4px solid #ddd}
    .step-title {font-size:17px}
}

@media screen and (max-width:365px) {
   header .logo img {height:20px}
}