@charset "utf-8";
.wrap-sub-visual {background: url(../../images/sub/sub-bg.jpg)no-repeat top center/cover;}

.gray-box { background-color: #f7f7f7; border-radius: 15px; padding: 20px 24px; margin: 16px 0 32px; line-height: 1.7; }
.gray-list { margin: 0; padding: 0; list-style: none; }
.gray-list li { position: relative; padding-left: 16px; margin-bottom: 10px; line-height: 1.6; }
.gray-list li::before { content: "•"; position: absolute; left: 0; top: 0; color: #198383; font-weight: bold; }
.gray-list strong {  font-weight: 700; color: #1f3c88; display: inline-block; margin-right: 4px;}

.sub-list { list-style: none; margin-top: 16px; padding-left: 5px; } 
.sub-list li { position: relative; padding-left: 12px; margin-bottom: 4px; }
.sub-list li::before { content: "-"; position: absolute; left: 0; top: 0; color: #555; font-weight: 600; }

/* ----- 사업소개 - 비전 및 목표 ----- */
.info-vision {position: relative;top: 28px;width: 80%;display: block;padding: 70px 3% 50px;border-radius: 120px;border: 3px solid #19a59a;text-align: center;margin: 0 auto;box-shadow: 0 10px 10px rgba(0, 0, 0, 0.1);margin-bottom: 130px;}
.info-vision::before {position: absolute; bottom: -68px; left: 50%;transform: translateX(-50%);  content: ''; display: block; background: url("/sites/greenbio/images/intro-arrow.png"); width: 205px; height: 65px; z-index: -1;}
.info-vision dt{position: absolute;left: 50%;top: -30px;transform: translateX(-50%);padding: 15px 100px;font-size: 25px;background-color: #19a59a;z-index: 1;color: #fff;font-weight: bold;border-radius: 40px;}
.info-vision dd:first-of-type{font-size: 28px;color: #008379;margin-bottom: 20px;font-weight: 800;}
.info-vision dd{font-size: 18px;font-weight: 600;line-height: 1.4em;word-break: keep-all;}

.info-goal{position: relative;}
.info-goalstrong{width: 100%;font-size: 25px;background-color: #02a1cb;color: #fff;text-align: center;display: block;padding: 15px 0 60px 0;border-radius: 40px 40px 0 0;font-weight: bold;}
.info-goal ul{display: flex; position: relative; top: -45px;background-color: #fff; box-shadow: 0 10px 10px rgba(0, 0, 0, 0.05);border-radius: 40px ;padding: 50px 0;border: 1px solid #eee;}
.info-goal ul li{width: 33.2%;padding: 0 50px;}
.info-goal ul li:not(:last-of-type){border-right: 1px solid #eee;}
.info-goal ul li dl dt {font-size: 41px;font-weight: 800;color: #19a59a;height: 140px;}
.info-goal ul li dl dt span{display: block;font-size: 21px;font-weight: 700;color: #000;word-break: keep-all;}
.info-goal ul li dl dd{font-size: 18px; line-height: 1.4em; margin-bottom: 10px; word-break: keep-all;}

@media all and (max-width:1280px) {
.info-vision dd:first-of-type{font-size: 26px; margin-bottom: 10px;}
.info-vision dd{font-size: 18px;} 
}
@media all and (max-width:1024px) {
.info-vision {width: 100%; padding: 60px 3% 40px; }
.info-goal ul{padding: 40px 0;}
.info-goal ul li{padding: 0 40px;}
.info-goal ul li dl dt {font-size: 40px; height: 120px;}
.info-goal ul li dl dt span{font-size: 20px;} 
}
@media all and (max-width:768px) {
.info-vision {top: 20px;padding: 40px 5% 20px; margin-bottom: 100px; border-radius: 20px;}
.info-vision dt{font-size: 20px; padding: 10px 60px; top: -24px;}
.info-vision dd:first-of-type{font-size: 20px; margin-bottom: 10px; font-weight: 700;}
.info-vision dd{font-size: 15px; font-weight: 400;}  
 
.info-goal strong{font-size: 20px;padding: 10px 0 60px 0; border-radius: 20px 20px 0 0;}
.info-goal ul{top: -50px;border-radius: 20px ; flex-direction: column; padding: 0;}
.info-goal ul li{width: 100%;padding: 25px;}
.info-goal ul li:not(:last-of-type){border-right: none; border-bottom: 1px solid #eee;}
.info-goal ul li dl dt {font-size: 30px; height:auto; margin-bottom: 15px;}
.info-goal ul li dl dd{font-size: 15px; margin-bottom: 5px;} 
}


.lab-section {display:flex; padding:50px; border-top:1px solid #ccc;}
.lab-section.first {border-top:3px solid #000;}
.lab-title {width:300px; font-size:24px; font-weight:800; color:#222; line-height:36px; word-break:keep-all;}
.lab-content {width:calc(100% - 300px);}
.lab-content p {font-size:18px; line-height:30px; color:#333; word-break:keep-all;}
.lab-content strong {font-weight:700;}
.lab-content ul {list-style:none; padding:0; margin:0; line-height:32px;}
.lab-content ul li {position:relative; padding-left:18px; font-size:18px; color:#333;}
.lab-content ul li::before {content:"◦"; position:absolute; left:0; top:0; color:#003876; font-size:20px; line-height:32px;}
.lab-content ul li .paper-title {font-weight:700; color:#111;}
.lab-content ul li .journal {font-style:italic; color:#444;}

@media (max-width:1024px) {
  .lab-section {display:block; padding:25px 0;} .lab-title {width:100%; margin-bottom:15px; font-size:22px;} .lab-content {width:100%;}
}

.lab-card-list {list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:24px;}
.lab-card-list li {background:#f9f9f9; border:1px solid #eee; border-radius:12px; padding:20px; box-shadow:0 2px 6px rgba(0,0,0,0.04); overflow:hidden; position:relative;}
.lab-card-list li::before {content:none !important;}
.lab-card-list li, .lab-card-list li * {list-style:none;}
.lab-card-title {display:block; width:100%; background:#003876; color:#fff; font-weight:700; font-size:18px; text-align:center; padding:12px 16px; line-height:1.4; border-radius:7px; margin:0 0 16px 0; box-sizing:border-box;}
.lab-card-content {padding:0;}
.lab-card-img {text-align:center;}
.lab-card-img img {width:100%; height:auto; display:block; margin:0 auto 12px; border-radius:10px; object-fit:contain; max-width:100%;}
.lab-card-content p {margin:0; font-size:16px; color:#333; line-height:1.5;}

@media (max-width:768px) {
  .lab-card-title {font-size:16px; padding:10px 14px;} .lab-card-content p {font-size:15px;}
}


.year-tab-wrap {margin:0 auto;}
.year-tab-wrap .year-tabs {display:flex; flex-wrap:wrap; gap:5px; justify-content:flex-start; margin-bottom:40px;}
.year-tab-wrap .year-tabs li {padding:12px 20px; border:1px solid #ddd; cursor:pointer; transition:0.3s; border-radius:5px; width:calc(20% - 4px); background:#f8f9fa; font-size:18px; text-align:center;}
.year-tab-wrap .year-tabs li:hover {background:#5d58bc; color:#fff;}
.year-tab-wrap .year-tabs li.active {background:#5d58bc; color:#fff;}
.year-tab-wrap .year-contents img {width:100%; height:100%; object-fit:contain;}
.year-tab-wrap .year-contents .content {display:none;}
.year-tab-wrap .year-contents .content.active {display:block; animation:fadeIn 0.3s ease-in-out;}
@keyframes fadeIn {
  from{opacity:0;} to{opacity:1;}
}

@media (max-width:860px) {
  .year-tab-wrap .year-tabs li {width:calc(33.333% - 3.333px);}
}
@media (max-width:600px) {
  .year-tab-wrap .year-tabs li {width:calc(50% - 5px);}
}


:root {--accent:#032d8f; --cyan:#19a59a;}
.temep-vision-section {padding:80px 20px 100px; text-align:center;}
.temep-vision-section .vision-inner {display:flex; align-items:center; justify-content:space-between; gap:50px; max-width:1200px; margin:0 auto 80px; flex-wrap:wrap;}
.temep-vision-section .vision-text {flex:1 1 55%; text-align:left;}
.temep-vision-section .vision-title {font-size:44px; font-weight:800; margin-bottom:20px;}
.temep-vision-section .vision-title span {color:var(--accent);}
.temep-vision-section .vision-desc {font-size:18px; line-height:1.8;}
.temep-vision-section .vision-desc strong {color:var(--accent); font-weight:800;}
.temep-vision-section .vision-image {flex:1 1 40%; text-align:right;}
.temep-vision-section .vision-image img {width:60%; max-width:360px; height:auto; object-fit:contain;}
.goal-title {font-size:36px; font-weight:800; margin:0 auto 50px; display:inline-block; position:relative;}
.goal-title span {color:var(--accent);}
.goal-grid {display:grid; grid-template-columns:repeat(auto-fit,minmax(300px,1fr)); gap:30px; max-width:1200px; margin:0 auto;}
.goal-card {background:#fff; border:1px solid #e0e6ec; border-radius:16px; padding:32px 24px; text-align:center; box-shadow:0 4px 14px rgba(0,0,0,0.05); transition:transform 0.3s ease, box-shadow 0.3s ease;}
.goal-card:hover {transform:translateY(-6px); box-shadow:0 10px 24px rgba(0,175,207,0.15);}
.goal-card img {width:90px; height:90px; object-fit:contain; margin-bottom:18px;}
.goal-card h4 {font-size:20px; font-weight:700; color:var(--accent); margin-bottom:12px;}
.goal-card p {font-size:15px; line-height:1.8; word-break:keep-all;}

@media (max-width:992px) {
  .vision-inner {flex-direction:column; text-align:center;} .vision-text {text-align:center;} .vision-image {text-align:center;} .vision-title {font-size:36px;}
}
@media (max-width:600px) {
  .vision-title {font-size:28px;} .goal-title {font-size:26px;}
}


.major-intro-wrap .major-text-box {max-width:1200px; margin:0 auto; padding:40px 20px; font-family:'S-CoreDream-4Regular',sans-serif; color:#222; line-height:1.75;}
.major-intro-wrap .major-title {position:relative; font-size:40px; font-weight:800; text-align:center; margin-bottom:30px; padding:0 48px; line-height:1.4;}
.major-intro-wrap .major-title .emph {color:#4e53c6;}
.major-intro-wrap .major-title::before, .major-intro-wrap .major-title::after {content:""; position:absolute; top:5%; width:100px; height:22px; background:url(/sites/bme/images/sub/quotation.png) no-repeat center/contain; transform:translateY(-50%);}
.major-intro-wrap .major-title::before {left:0;}
.major-intro-wrap .major-title::after {right:0; transform:translateY(-50%) rotate(180deg);}
.major-intro-wrap .major-paragraph {font-size:18px; margin-bottom:24px; line-height:1.8; text-align:center;}
.major-intro-wrap .major-img-top {width:100%; height:350px; margin:50px 0; border-radius:30px; background:url("/sites/bme/images/sub/intro-01.jpg") no-repeat center/cover; position:relative; z-index:1;}
.major-intro-wrap .major-img-overlay {position:relative; margin-top:-140px; z-index:10; display:flex; justify-content:center;}
.major-intro-wrap .major-overlay-inner {background-color:#fff; width:1100px; margin:-24px auto 0; padding:55px 60px 60px; border-radius:30px 30px 120px 30px; text-align:left; box-shadow:31px 0 80px rgba(32,54,121,0.08); font-size:17px; line-height:1.85; color:#222; z-index:10;}
.major-intro-wrap .major-line {width:100%; margin:46px 0; height:2px; background-image:url(/sites/bme/images/sub/line-dot.png); background-repeat:repeat-x; background-position:center;}

@media (max-width:768px) {
  .major-intro-wrap .major-title {font-size:24px; padding:0 28px;}
  .major-intro-wrap .major-title::before, .major-intro-wrap .major-title::after {width:20px; height:16px;}
  .major-intro-wrap .major-paragraph {font-size:16px;}
  .major-intro-wrap .major-img-top {height:200px; margin:30px 0; border-radius:20px;}
  .major-intro-wrap .major-img-overlay {margin-top:-80px;}
  .major-intro-wrap .major-overlay-inner {width:94%; padding:24px 20px; font-size:15px;}
  .major-intro-wrap .major-line {margin:36px 0;}
}


/* 학부장 인사말 */
.greeting-box {max-width:1200px; margin:0 auto; padding:60px 20px; box-sizing:border-box;}
.greeting-box .flexBox {display:flex; align-items:flex-start; justify-content:center; gap:60px; flex-wrap:wrap;}
.greeting-box .img {position:relative; width:320px; flex-shrink:0;}
.greeting-box .img img {width:100%; height:auto; border-radius:4px;}
.greeting-box .nameplate {position:absolute; bottom:-25px; left:68%; transform:translateX(-50%) translateY(10px); background:linear-gradient(135deg, rgba(33,73,166,0.95), rgba(12,32,90,0.9)); color:#fff; text-align:center; width:270px; padding:24px 0; border-radius:12px; backdrop-filter:blur(6px); -webkit-backdrop-filter:blur(6px); box-shadow:0 10px 25px rgba(0,0,0,0.35); border:1px solid rgba(255,255,255,0.2); opacity:0; animation:nameplateFadeUp 0.6s ease-out forwards;}
@keyframes nameplateFadeUp {
  0%{opacity:0; transform:translateX(-50%) translateY(20px);}
  100%{opacity:1; transform:translateX(-50%) translateY(0);}
}
.greeting-box .nameplate small {display:block; font-size:17px; opacity:0.9; letter-spacing:0.4px;}
.greeting-box .nameplate strong {display:block; font-size:30px; margin-top:6px; font-weight:700; letter-spacing:0.6px;}
.greeting-box .conArea {flex:1; font-size:18px; color:#111; line-height:1.8;}
.greeting-box .desc .head {font-size:25px; font-weight:700; margin-bottom:20px; color:#000;}
.greeting-box .desc .head strong {color:#002f8c; font-weight:700;}
.greeting-box .desc p {margin-top:20px;}
.greeting-box .check-box {display:flex; align-items:flex-start; background:#f6f6f6; border-radius:16px; padding:20px 24px; box-shadow:0 2px 6px rgba(0,0,0,0.06); max-width:100%; margin: 18px 0;}
.greeting-box .check-icon {width:24px; height:24px; min-width:24px; margin-right:14px; margin-top:4px; background:#3366cc; color:#fff; font-size:14px; font-weight:bold; border-radius:50%; display:flex; align-items:center; justify-content:center;}
.greeting-box .check-text {font-size:17px; line-height:1.7; color:#111;}
.greeting-box .check-text strong {color:#1b3f91; font-weight:600;}

@media (max-width:1024px) {
  .greeting-box .flexBox {flex-direction:column; text-align:center; gap:40px;}
  .greeting-box .img {margin:0 auto 40px; width:100%; max-width:240px;}
  .greeting-box .nameplate {width:200px; padding:18px 0; bottom:-30px;}
  .greeting-box .nameplate strong {font-size:24px;}
  .greeting-box .desc .head {font-size:23px;}
  .greeting-box .check-box {text-align:left;}
}
@media (max-width:600px) {
  .greeting-box .nameplate strong {font-size:22px;}
  .greeting-box .desc .head {font-size:20px;}
  .greeting-box .desc p, .check-text {font-size:16px;}
}
