.img-box { height: 300px; width: 100%; border-radius: 24px; overflow: hidden; margin-top: 40px;}
.img-box img { width: 100%; height: 100%;object-fit: cover;}
p.txt-intro01 { color: #222; font-family: Pretendard; font-size: 24px;font-style: normal;font-weight: 700;line-height: 160%;letter-spacing: -0.48px;}
.col1{color:#FF9600}
.ul-type-dot > li:before { top: 5px;}
.con-box02 { padding: 0 0 150px 0;}
.talent-circle-inner strong {  color: #FF9600;}

/* 비전 박스 */
.vision-box{background:#f9f8f6;border-radius:8px;padding:42px 275px;text-align:center;margin-top:40px;}
.vision-badge{display:inline-block;background:#94795f;color:#fff;font-size:20px;font-weight:700;padding:4px 35px;border-radius:100px;margin-bottom:17px;letter-spacing:-0.4px;}
.vision-desc{color:#222;font-size:18px;font-weight:500;line-height:1.6;letter-spacing:-0.36px;}
.vision-desc b{font-weight:700;}
.major_circle_box.bg03 .ul-type-dot { display: flex;flex-direction: column;}


/* P4형 인재상 다이어그램 */
.talent-diagram{display:flex;align-items:center;justify-content:center;gap:40px;margin-top:100px;}
.talent-circle-wrap{position:relative;width:260px;height:260px;flex-shrink:0;}
.talent-circle-outer{position:absolute;inset:0;background:#fff4e5;border-radius:50%;}
.talent-circle-mid{position:absolute;inset:15px;background:#fff4e5;border:1px dashed #f8ae00;border-radius:50%;}
.talent-circle-inner{position:absolute;inset:30px;background:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow: 0 0 7px 0 rgba(255, 150, 0, 0.61);}
.talent-circle-inner span{display:block;color:#ff9600;font-size:24px;font-weight:700;line-height:1.3;text-align:center;letter-spacing:-0.48px;}
.talent-circle-inner span b{color:#111;font-weight:600;}
.talent-arrow{flex-shrink:0;width:75px;}
.talent-circle-inner p { color: #111;text-align: center;font-family: Pretendard; font-size: 24px; font-style: normal;font-weight: 600; line-height: 130%; letter-spacing: -0.48px;text-transform: uppercase;}
.talent-arrow img{width:100%;display:block;}
.talent-oval{flex:1;max-width:855px;display:flex;align-items:center;justify-content:space-between;border:1px dashed #ff9600;border-radius:260px;background:#fff;height:260px;padding:0 23px;box-sizing:border-box;}
.talent-circle-inner p b {  color: #FF9600;}
.talent-item{display:flex;flex-direction:column;align-items:center;justify-content:center;width:220px;height:220px;border-radius:50%;border:2px solid rgba(248,174,0,0.8); flex-shrink:0;margin-left:-50px; box-sizing: border-box;}
.talent-item:first-child{margin-left: 0;}
.talent-item .num{color:#ff9600;font-size:16px;font-weight:800;letter-spacing:-0.32px;margin-bottom: 10px;}
.talent-item img{width:59px;height:auto;}
.talent-item .label{color:#111;font-size:16px;font-weight:700;letter-spacing:-0.32px;text-align:center;margin-top: 10px;}
.ul-type03 > li { position: relative; padding: 0 0 0 13px;  color: #333; font-family: Pretendard;font-size: 18px; font-style: normal; font-weight: 500;line-height: 140%;letter-spacing: -0.36px;}


/* 목표 카드 */
.goal-grid{display:flex;gap:40px;justify-content:center;background:#f9f8f6;border-radius:8px;padding:60px 120px;margin-top:100px;box-sizing:border-box;}
.goal-card{width:360px;flex-shrink:0;}
.goal-head{background:#f8ae00;color:#fff;font-size:20px;font-weight:700;text-align:center;padding:22px 0;border-radius:10px 10px 0 0;letter-spacing:-0.2px;}
.goal-card.type02 .goal-head{background:#ff9600;}
.goal-card.type03 .goal-head{background:#94795f;}
.goal-body{background:#fff;border:1px solid #ddd;border-top:0;border-radius:0 0 10px 10px;padding:35px 30px;display:flex;flex-direction:column;align-items:center;gap:20px;box-sizing:border-box;}
.goal-desc{color:#222;font-size:16px;font-weight:600;text-align:center;line-height:1.5;letter-spacing:-0.32px;}
.goal-list{width:100%;list-style:none;margin:0;padding:0;}
.goal-list li{position:relative;padding:9px 0 9px 15px;color:#333;font-size:15px;font-weight:500;letter-spacing:-0.3px;border-bottom:1px solid #eee;}
.goal-list li:last-child{border-bottom:0;}
.goal-list li:before{content:'';position:absolute;left:0;top:17px;width:3px;height:3px;border-radius:50%;background:#f8ae00;}
.goal-card.type02 .goal-list li:before{background:#ff9600;}
.goal-card.type03 .goal-list li:before{background:#94795f;}

@media screen and (max-width:1024px){
	.vision-box{padding:35px 30px;}
	.talent-diagram{flex-direction:column; margin-top: 50px;gap: 10px;}
	.talent-arrow{transform:rotate(90deg);width: 55px;}
	.talent-oval{flex-direction:column;height:auto;padding: 20px;width: auto;gap:20px;display: flex;max-width: 100%;}
	.goal-grid{flex-direction:column;align-items:center;padding:30px 15px;}
}

/* 전공소개 인포그래픽 — semi.postech.ac.kr intro_major_graphic 참고, 모바일도 리플로우 없이 가로스크롤 */
.major-graphic{position:relative;padding:60px 50px;border-radius:8px;background:#f9f8f6;overflow-x:auto;max-width:100%;margin-top:40px;}
.major-circles{width:1300px;min-width:1300px;position:relative;height:600px;}

.major-center{position:absolute;top:50%;left:660px;transform:translate(-50%,-50%);width:280px;height:280px;border-radius:50%;background:#fff;border:34px solid rgba(255,150,0,0.4);box-sizing:border-box;display:flex;align-items:center;justify-content:center;z-index:1;}
.major-center span{display:block;color:#111;font-size:19px;font-weight:600;line-height:1.35;text-align:center;letter-spacing:-0.38px;}

.major-item{position:absolute;width:130px;height:130px;z-index:2;}
.major-item img{width:100%;height:100%;display:block;}
.major-item.pos01{top:26px;left:600px;}
.major-item.pos02{top:388px;left:470px;}
.major-item.pos03{top:302px;left:768px;}

.major-item.pos01::after{content:'';position:absolute;width:1px;height:110px;border-left:1px dashed #f8ae00;left:50%;bottom:-110px;}
.major-item.pos02::after{content:'';position:absolute;width:150px;height:1px;border-top:1px dashed #8d6f52;top:50%;right:130px;}
.major-item.pos03::after{content:'';position:absolute;width:82px;height:1px;border-top:1px dashed #fd9b0e;top:50%;left:130px;}
.major-item::before{content:'';position:absolute;width:9px;height:9px;border-radius:50%;z-index:3;}
.major-item.pos01::before{background:#f8ae00;left:50%;bottom:-119px;transform:translateX(-50%);}
.major-item.pos02::before{background:#8d6f52;right:271px;top:50%;transform:translateY(-50%);}
.major-item.pos03::before{background:#fd9b0e;left:203px;top:50%;transform:translateY(-50%);}

.major-card{position:absolute;width:320px;background:#fff;border-radius:8px;padding:30px 25px 30px 30px;box-sizing:border-box;z-index:2;}
.major-card>ol{margin:0 0 25px;padding:0;list-style:decimal inside;font-size:22px;font-weight:700;letter-spacing:-0.44px;}
.major-card ul{list-style:none;margin:0;padding:0;}
.major-card ul li{position:relative;padding-left:15px;font-size:16px;font-weight:500;color:#333;line-height:1.4;margin-bottom:14px;letter-spacing:-0.32px;}
.major-card ul li:last-child{margin-bottom:0;}
.major-card ul li:before{content:'';position:absolute;left:0;top:8px;width:5px;height:5px;border-radius:50%;}

.major-card.card01{top:15px;left:0;}
.major-card.card01>ol{color:#f8ae00;}
.major-card.card01 li:before{background:#f8ae00;}

.major-card.card02{bottom:15px;left:0;}
.major-card.card02>ol{color:#8d6f52;}
.major-card.card02 li:before{background:#8d6f52;}

.major-card.card03{top:70px;right:0;}
.major-card.card03>ol{color:#fd9b0e;}
.major-card.card03 .goal-group{margin-bottom:22px;}
.major-card.card03 .goal-group:last-child{margin-bottom:0;}
.major-card.card03 .goal-group>p{position:relative;padding-left:15px;font-size:16px;font-weight:500;color:#333;margin:0 0 12px;letter-spacing:-0.32px;}
.major-card.card03 .goal-group>p:before{content:'';position:absolute;left:0;top:6px;width:5px;height:5px;border-radius:50%;background:#fd9b0e;}
.major-card.card03 .goal-group ul li{padding-left:0;font-size:14px;color:#555;margin-bottom:6px;}
.major-card.card03 .goal-group ul li:before{content:'- ';position:static;width:auto;height:auto;border-radius:0;background:none;}

/* 연구역량 향상계획 */
.research-goal-row{display:flex;align-items:center;gap:26px;flex-wrap:wrap;}
.research-goal-row>strong{font-size:26px;font-weight:700;color:#222;flex-shrink:0;}
.research-goal-row ul{list-style:disc;margin:0;}
.research-goal-row ul li{position:relative;font-size:18px;font-weight:600;color:#666;line-height:26px;    padding-left: 12px;}

.strategy-grid{display:flex;gap:23px;width:100%;margin-top:30px;}
.strategy-card{flex:1;min-width:0;}
.strategy-head{background:#ff9600;color:#fff;font-size:20px;font-weight:700;text-align:center;padding:17px 0;border-radius:10px;letter-spacing:-0.4px;}
.strategy-body{background:#fff;border:0.93px solid #ddd;border-radius:10px; height: 175px;padding:20px 75px;margin-top:4px;box-sizing:border-box;}
.strategy-body ul li + li{margin-top:5px;}
.research-goal-row ul li::after {content: ''; position: absolute; left: 0; top: 36%;width: 3px;height: 3px;border-radius: 50%; background: #666;}
.strategy-body ul { display: flex; flex-direction: column; height: 100%;justify-content: center;}

/* 8대 연구 지표 */
.metric-tit{font-size:26px;font-weight:700;color:#222;letter-spacing:-0.52px;margin-top:60px;margin-bottom:30px;}
.metric-row{display:flex;gap:23px;margin-bottom:30px;}
.metric-row:last-child{margin-bottom:0;}
.metric-card{flex:1;min-width:0;}
.metric-head{background:#eee4ce;color:#222;font-size:20px;font-weight:700;text-align:center;padding:17px 0;border-radius:10px;letter-spacing:-0.4px;}
.metric-body{background:#fff;border:0.93px solid #ddd;border-radius:10px;padding:20px 40px;margin-top:4px;box-sizing:border-box;display:flex;align-items:stretch;}
.metric-chart{flex:1;min-width:0;display:flex;align-items:center;justify-content:center;}
.metric-chart+.metric-chart{border-left:1px solid #e0e5e9;margin-left:20px;padding-left:20px;}
.metric-chart img{max-width:100%;height:auto;display:block;}




/* ===== 입학안내===== */
.flex-box.admission_info{align-items: center;justify-content: space-between;}
.down_btn.arrow_t:after{content: '\2192';}
@media only screen and (max-width:1024px){
.admission_info h3.h3_tit{ margin-bottom: 0;}
.admission_info .down_btn{ margin-bottom: 15px}
.flex-box.admission_info{    display: block;}}
.intro_major_graphic {position: relative;padding: 66px 50px;border-radius: 8px;background: #F9F8F6;overflow-x: auto;max-width: 100%;position: relative;}
.major-circles-container { width: 1300px; /* PC 화면 고정 넓이 */min-width: 1300px; /* 스크롤이 생기도록 최소 넓이 지정 */display: flex; justify-content: space-between;position: relative;height: 600px;}

/* 중앙 원 */
.major_circle_box.major_center {position: absolute;top: 50%;left: 50%; transform: translate(-50%, -50%); width: 480px;height: 480px;/* background: url('/_res/postech/semi/img/circle_dashed.png') no-repeat center center;*/background-size: contain;display: flex; justify-content: center; align-items: center;z-index: 1;}

.major_circle_box.major_center .major_circle {
    width: 330px;
    height: 330px;
    border: 40px solid rgba(255, 150, 0, 0.40);
    box-shadow: 0 0 20px 15px rgba(235, 235, 235, 0.4);
   
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.major_circle span {
    color: #111;
    text-align: center;
    font-family: Pretendard;
    font-size: 21.614px;
    font-style: normal;
    font-weight: 600;
    line-height: 120%;
    letter-spacing: -0.432px;
}

.major-circles-container .major_sub_inner .ul-type-dot li p {
    color: #555;
    font-family: Pretendard;
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 140%;
    letter-spacing: -0.28px;
}
/* 외곽 원과 텍스트 박스 */
.major_circle_box {
    display: flex;
    align-items: center;
    position: absolute;
    z-index: 2;
}

.major_circle .major_inner img {width: 90%;}
.major_circle {
    width:185px;
    height: 185px;
    border-radius: 50%;
    background-color: #fff;
    border: 18px solid;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.15);
    position: relative;
}

.major_circle img {
    max-width: 100%;
    height: auto;
}

.major_sub_inner {
    padding: 30px;
    background: #fff;
    width: 350px;
    border-radius: 8px;
    position: relative;
    z-index: 2;
}

.major_sub_inner strong {
    font-size: 23px;
    font-weight: 700;
    margin-bottom: 20px;
    display: block;
}

.major_sub_inner ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.major_sub_inner li {
    /* padding-left: 20px; */
    position: relative;
    margin-bottom: 20px;
}
.major_sub_inner ul li ul li {margin-bottom: 9px;}
.major-circles-container .major_sub_inner li {
    color: #555;
    font-family: Pretendard;
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 140%;
    letter-spacing: -0.28px;
  
}
.major-circles-container .major_sub_inner > li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 9px;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #97A3EA;
}
.major-circles-container .major_sub_inner .ul-type-dot > li{color: #333;font-family: Pretendard;font-size: 16px;font-style: normal;font-weight: 500;line-height: 120%; /* 22.4px */letter-spacing: -0.32px;}


/* 개별 원 위치 및 스타일 */
.major_circle_box.bg01 {top: -60px;left: 0;/* transform: translateX(-50%); */align-items: center;max-width: 758px;width: 100%;display: flex;justify-content: space-between;flex-direction: row-reverse;}
.major_circle_box.bg01 .major_circle {border-color: #FFC53D;}
.major_circle_box.bg01 .major_sub_inner {/* margin-top: 20px; *//* margin-right: 165px; */}
.major_circle_box.bg01 .major_sub_inner strong {color: #F8AE00;}
.major_circle_box.bg01 .major_circle::after {
    content: '';
    position: absolute;
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: #C86EBD;
    left: 50%;
    bottom: -10px;
    transform: translateX(-50%);
}
.major_circle_box.bg01 .major_sub_inner:after{top: 46%;transform: translateY(-50%);background: #F87C00;left: auto;right: -10px;}
.major_circle_box.bg03 .major_sub_inner:after{ bottom: 28%; background: #C06000;top: auto;}

.major_bottom_row {
    display: flex;
    justify-content: space-between;
    width: 100%;
    position: absolute;
    bottom: 50px;
    left: 50%;
    transform: translateX(-50%);
    padding: 0 50px;
    box-sizing: border-box;
}

.major_circle_box.bg02 { position: relative;display: flex;margin-right: 20px;}
.major_circle_box.bg02 .major_circle { border-color: #B4E3F0; }
.major_circle_box.bg02 .major_sub_inner { margin-right: 20px; }
.major_circle_box.bg02 .major_sub_inner strong { color: #5493A4; }
.major_circle_box.bg02 .major_circle::after {
    content: '';
    position: absolute;
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: #5493A4;
    left: -10px;
    top: 50%;
    transform: translateY(-50%);
}

.major_circle_box .major_inner { margin: 0 auto; text-align: center;}
.major_circle_box.bg03 .major_circle { border-color: #C5DCFF; }
.major_circle_box.bg03 .major_sub_inner { margin-left: 20px; }
.major_circle_box.bg03 .major_sub_inner strong { color: #1428A0; }
.major_circle_box.bg02 li:before { background: #8D6F52;}
.major_circle_box.bg03 li:before {background: #FD9B0E;}
.major_circle_box.bg01 .major_circle::after {content: '';position: absolute;width: 9px;height: 9px;border-radius: 50%;background: #F87C00;left: -13px;top: 42%;transform: translateY(-50%);right: auto;}
.major_bottom_row { display:flex; justify-content:space-between; width:100%; position:absolute; bottom:50px; left:50%; transform:translateX(-50%); padding:0 50px; box-sizing:border-box; }
.major_circle_box.bg02 {position:relative;display:flex;margin-top: 220px;gap: 20px;align-items: flex-end;}
.major_circle_box.bg02 .major_circle {border-color: #94795F;margin-bottom: 100px;}
.major_circle_box.bg02 .major_sub_inner {margin-right:20px;margin-bottom: 0;}
.major_circle_box.bg02 .major_sub_inner strong { color:#5493A4; }
.major_circle_box.bg02 .major_circle::after {content:'';position:absolute;width:9px;height:9px;border-radius:50%;background: #5E3700;left:-10px;top:58%;transform:translateY(-50%);}
.major_circle_box.bg03 { position:relative; display:flex; flex-direction:row; margin-top: 220px;    gap: 20px;}
.major_circle_box.bg03 .major_circle {border-color: #FF9600;}
.major_circle_box.bg03 .major_sub_inner { margin-left:20px;  margin-bottom: 250px;}
.major_circle_box.bg03 .major_sub_inner strong { color:#1428A0; }

.major_circle_box.bg03 .major_circle::after {content:'';position:absolute;width:9px;height:9px;border-radius:100%;background: #C06000;right:-10px;top:52%;transform:translateY(-50%);}
.major_circle_box .major_circle::before { content:''; position:absolute; width:1px; height:100px; border-left:1px dashed #C86EBD; left:50%; top:-100px; transform:translateX(-50%); }
.major_circle_box.bg02 .major_circle::before {width: 55px;height: 1px;border-top: 1px dashed #5E3700;top: 58%;left: -65px;transform:translateY(-50%);}
.major_circle_box.bg03 .major_circle::before {width:80px;height:1px;border-top: 1px dashed #C06000;top:52%;right: -90px;left:auto;transform:translateY(-50%);}
.major_circle_box.bg02 .major_sub_inner:after{right: -10px;left: auto;background: #5E3700;top: 38%;bottom: auto;transform: translateY(-50%);}
.major_circle_box.bg01 .major_circle::before {content: '';width: 230px; height: 1px;border-top: 1px dashed #F87C00; top: 42%;right: auto;left: -243px; transform: translateY(-50%);position: absolute;}
.after_graduat_wrap > ul > li:hover { background:var(--samblue); color:#fff; }
.after_graduat_wrap > ul > li:hover .num_tit { color:#fff; }
.after_graduat_wrap > ul > li:hover .career_tit { color:#fff; }
.after_graduat_wrap > ul > li:hover .ul-type-dot li { color:#fff; }
.major_circle_box.bg02 .major_sub_inner strong {color: #8D6F52;}
.major_circle_box.bg03 .major_sub_inner strong {color: #FD9B0E;}
.major_sub_inner:after { content:''; position:absolute; width:9px; height:9px; border-radius:50%; background:#C86EBD; top:25%; left:-10px; border:7px solid #F3F4FA; }
.major_circle_box.bg01 {order:1;margin:0 auto;/* justify-content:flex-end; */margin-top: 47px;}

.after_graduat_item .num_tit { color:var(--samblue); font-family:Pretendard; font-size:34px; font-weight:700; line-height:140%; letter-spacing:-0.68px; margin-bottom:17px; display:block; }
.after_graduat_wrap > li { width:50%; }
.after_graduat_wrap > ul { display:flex; align-items:center; gap:30px; }
.after_graduat_wrap > ul > li { width:50%; border-radius:8px; border:1px solid #DDD; background:#FFF; padding:30px 40px; transition:all .3s ease-in-out; }
.after_graduat_item .career_tit { color:#333; font-family:Pretendard; font-size:22px; font-style:normal; font-weight:700; line-height:140%; letter-spacing:-0.44px; margin-bottom:20px; }
.after_graduat_item ul { min-height:75px; }

/* 중앙 원 배경 회전 (기본: 20초에 한 바퀴) */
.major_circle_box.major_center {
  position: absolute; /* 기존 설정 유지 */
  overflow: visible;  /* 가상요소가 잘려나가지 않도록 */
}

/* ::before에 점선 이미지 배경을 넣고 회전 애니메이션 적용 */
.major_circle_box.major_center::before {content: "";position: absolute;inset: 0;                     /* 부모와 동일한 크기/위치 */background: url('/_res/postech/semi/img/circle_dashed.png') no-repeat center center;background-size: contain; border-radius: 50%;           /* 이미지가 원형이면 안전하게 둠 */transform-origin: 50% 50%;    /* 가운데 기준 회전 */z-index: 0;                   /* 내부 중앙 원은 z-index:1 이므로 위에 표시됨 */ animation: center-spin 20s linear infinite; pointer-events: none;         /* 클릭/포인터 이벤트 무시 */will-change: transform;animation-duration: 40s;animation-play-state: running;}

/* 내부 중앙 원을 위로 표시하도록 기존 z-index 보장 */
.major_circle_box.major_center .major_circle {
  z-index: 1;
  position: relative;
}

/* 회전 키프레임 */
@keyframes center-spin {
  from { transform: rotate(0deg); }
  to   { transform: rotate(360deg); }
}

.major-circles-container .major_sub_inner .ul-type-dot > li ul {
    margin-top: 10px;
}


@media screen and (max-width:1024px){
	.research-goal-row{flex-direction:column;align-items:flex-start;gap:10px;}
	.strategy-grid{flex-direction:column;}
	.metric-row{flex-direction:column;}
.talent-item {margin-left: 0;margin-top: -50px;}
.talent-item:first-child {margin-top: 0;}
.talent-item img { width: 45px;}
.goal-body {padding: 25px 20px; gap: 15px}
p.txt-intro01 {font-size: 19px;}
p.txt-intro01 br {display: none;}
.img-box { border-radius: 20px; height: 220px;}	
.vision-box { padding: 30px 20px; }	
.vision-badge {font-size: 18px;}
.vision-badge { font-size: 18px;}
p.vision-desc { font-size: 16px;}
p.vision-desc br { display: none;}
.goal-card {  width: 100%;}	
.strategy-body { padding: 20px;}
.ul-type03 > li {font-size: 15px;}
.strategy-body ul { gap: 8px;}
.strategy-head {font-size: 18px;padding: 12px 0;}
.metric-head {  font-size: 18px; padding: 12px 0;}
.goal-head { font-size: 18px; padding: 12px 0;}	
.metric-chart {width: 300px; height: 250px;}
.metric-chart img {width: 100%;height: 100%;object-fit: cover;object-fit: contain;}	
.con-box02 { padding: 0 0 80px 0;}	
	
}



@media screen and (max-width:1024px){
.metric-chart+.metric-chart {border-top: 0; border-left: 1px solid #e0e5e9;}
	
}

@media screen and (max-width:760px){
.metric-body { display: flex;flex-direction: column;align-items: center;}	
.metric-chart+.metric-chart{border-left:0;border-top:1px solid #e0e5e9;margin-left:0;margin-top:20px;padding-left:0;padding-top:20px;}
}