@charset "utf-8";
/* ============================================================
   하베스트 서브페이지 공통 스타일 (인라인 CSS 분리본)
   원칙: 디자인 변경 없이 각 페이지의 style="" 속성을 클래스로 이관.
   페이지별 prefix 로 충돌 방지.
   ============================================================ */
/* 전역: 모든 textarea 크기조절 비활성 */
textarea{resize:none !important;}

/* ===== [전역 보정] 다크 버건디 인라인 박스 내부 글씨 흰색 =====
   전역 reset 의 div/h3/h4/p{color:#333} 이 상속 흰색을 덮어, 버건디 배경 위에서
   진회색(저대비)으로 보이는 문제 방지. 골드 등 명시 inline color 는 인라인이라 그대로 우선.
   대상: background:linear-gradient(...,#4d0815,...) 다크버건디 박스 */
[style*="linear-gradient"][style*="4d0815"] h3,
[style*="linear-gradient"][style*="4d0815"] h4,
[style*="linear-gradient"][style*="4d0815"] h5,
[style*="linear-gradient"][style*="4d0815"] div,
[style*="linear-gradient"][style*="4d0815"] p,
[style*="linear-gradient"][style*="4d0815"] li,
[style*="linear-gradient"][style*="4d0815"] span,
[style*="linear-gradient"][style*="4d0815"] strong,
[style*="linear-gradient"][style*="4d0815"] b,
[style*="linear-gradient"][style*="4d0815"] td{color:#fff;}

/* ===== 메인페이지 유틸 ===== */
/* 모바일 전용 줄바꿈 (기본 숨김 → 모바일 미디어쿼리에서 inline) */
.hv-br-m{display:none;}
/* 후원 교회·기업 = CSS 마퀴(끊김 없는 흐름) */
.hv-part{margin-top:46px;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);}
.hv-part-track{display:flex;width:max-content;animation:hvPartMarquee 34s linear infinite;}
.hv-part:hover .hv-part-track{animation-play-state:paused;}
@keyframes hvPartMarquee{to{transform:translateX(-50%);}}
.hv-part-card{flex:0 0 200px;margin-right:18px;background:#fafafa;border:1px solid #eee;border-radius:14px;padding:30px 20px;text-align:center;}
.hv-part-logo{width:60px;height:60px;line-height:60px;margin:0 auto 14px;border-radius:50%;background:#f7e9ec;color:#941935;font-size:24px;font-weight:800;}
/* 실제 로고 이미지일 때: 흰 배경 원형 뱃지 + 윤곽선 */
.hv-part-logo.has-img{width:66px;height:66px;line-height:normal;border-radius:50%;background:#fff;border:1px solid #e0d4d7;overflow:hidden;padding:0;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(0,0,0,.05);}
.hv-part-logo.has-img img{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block;}
/* 글자 원형(로고 미정)도 윤곽선 통일 */
.hv-part-logo:not(.has-img){border:1px solid #e7d4da;}
.hv-part-name{color:#555;font-size:.97em;font-weight:500;}
@media(max-width:767px){
  .hv-part{margin-top:30px;}
  .hv-part-card{flex:0 0 140px;margin-right:12px;padding:22px 14px;}
  .hv-part-logo{width:50px;height:50px;line-height:50px;font-size:20px;margin-bottom:10px;}
  .hv-part-name{font-size:.9em;}
  .hv-part-track{animation-duration:26s;}
}

/* ===== intro/chairman.php (대표인사말) — prefix: cm- ===== */
.cm-wrap{max-width:1100px;margin:0 auto;padding:30px 20px 100px;}
.cm-intro{text-align:center;margin-bottom:64px;}
.cm-eyebrow{display:inline-block;color:#C8A24A;letter-spacing:.3em;font-weight:600;font-size:.82rem;}
.cm-title{font-family:'Noto Serif KR',serif;font-size:2.05em;color:#1a1a1a;font-weight:700;margin:14px 0 0;line-height:1.34;}
.cm-rule{width:64px;height:3px;background:#941935;margin:30px auto 0;border-radius:2px;}
.cm-body{display:flex;gap:60px;flex-wrap:wrap;align-items:flex-start;}
.cm-photo{flex:0 1 360px;max-width:380px;position:relative;}
.cm-deco1{position:absolute;top:-18px;left:-18px;width:120px;height:120px;border:2px solid #e3c7cd;z-index:0;}
.cm-deco2{position:absolute;bottom:-18px;right:-18px;width:80px;height:80px;background:#f7e9ec;z-index:0;}
.cm-img{position:relative;z-index:1;width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:4px;box-shadow:0 22px 50px rgba(0,0,0,.14);}
.cm-msg{flex:1 1 460px;}
.cm-text{color:#444;line-height:2;font-size:1.05em;word-break:keep-all;}
.cm-text p{margin:0 0 18px;}
.cm-text p:last-child{margin-bottom:0;}
.cm-hl{color:#941935;}
.cm-sign{margin-top:30px;text-align:right;font-family:'Noto Serif KR',serif;}
.cm-sign span{color:#888;font-size:.95em;}
.cm-cards{margin-top:90px;}

/* ===== intro/ceo.php (총장 인사말) — prefix: ce- ===== */
.ce-wrap{max-width:1100px;margin:0 auto;padding:30px 20px 100px;}
.ce-greet{display:flex;gap:60px;flex-wrap:wrap;align-items:flex-start;}
.ce-photo{flex:0 1 360px;max-width:380px;position:relative;}
.ce-deco1{position:absolute;top:-18px;left:-18px;width:120px;height:120px;border:2px solid #e3c7cd;z-index:0;}
.ce-deco2{position:absolute;bottom:-18px;right:-18px;width:80px;height:80px;background:#f7e9ec;z-index:0;}
.ce-img{position:relative;z-index:1;width:100%;border-radius:4px;box-shadow:0 22px 50px rgba(0,0,0,.14);}
.ce-msg{flex:1 1 460px;}
.ce-eyebrow{display:inline-block;color:#C8A24A;letter-spacing:.3em;font-weight:600;font-size:.82rem;}
.ce-title{font-family:'Noto Serif KR',serif;font-size:2.1em;color:#1a1a1a;font-weight:700;margin:14px 0 28px;line-height:1.34;}
.ce-text{color:#555;line-height:2;font-size:1.04em;word-break:keep-all;}
.ce-text p{margin:0 0 18px;}
.ce-text p:last-child{margin-bottom:0;}
.ce-hl{color:#941935;}
.ce-sign{margin-top:30px;text-align:right;font-family:'Noto Serif KR',serif;}
.ce-sign .role{color:#888;font-size:.95em;}
.ce-sign .nm{display:inline-block;margin-left:10px;font-size:1.5em;color:#1a1a1a;letter-spacing:.15em;}
.ce-sign .deg{color:#999;font-size:.85em;margin-left:6px;}
.ce-bio{margin-top:90px;display:flex;gap:50px;flex-wrap:wrap;}
.ce-bio-col{flex:1 1 420px;}
.ce-bio-h{font-family:'Noto Serif KR',serif;font-size:1.5em;color:#1a1a1a;font-weight:700;padding-bottom:14px;border-bottom:2px solid #941935;margin-bottom:24px;}
.ce-bio-h span{color:#C8A24A;font-size:.7em;letter-spacing:.1em;}
.ce-bio-list{list-style:none;padding:0;margin:0;}
.ce-bio-list li{display:flex;gap:16px;padding:11px 0;border-bottom:1px solid #eee;}
.ce-bio-list li b{flex:0 0 52px;color:#941935;font-weight:700;}
.ce-bio-list li span{color:#555;line-height:1.5;}
.ce-pub{margin-top:70px;background:#faf7f8;border:1px solid #eee;border-radius:16px;padding:40px 44px;}
.ce-pub-h{font-family:'Noto Serif KR',serif;font-size:1.4em;color:#1a1a1a;font-weight:700;margin:0 0 22px;}
.ce-pub-h span{color:#C8A24A;font-size:.72em;letter-spacing:.1em;}
.ce-pub-tags{display:flex;flex-wrap:wrap;gap:10px;}
.ce-pub-tags span{background:#fff;border:1px solid #e3c7cd;color:#6f0c1f;padding:9px 18px;border-radius:50px;font-size:.92em;}

/* ===== 인사말(ce-)·대표인사말(cm-) 모바일 보정 ===== */
@media(max-width:767px){
  .ce-greet,.cm-body{gap:26px;}
  /* 사진: 좌측 몰림/우측 빔 제거 → 풀폭 중앙 */
  .ce-photo,.cm-photo{flex:1 1 100% !important;max-width:340px !important;margin-left:auto !important;margin-right:auto !important;}
  /* 약력 연도칸 대폭 축소 */
  .ce-bio{gap:28px;margin-top:48px;}
  .ce-bio-list li b{flex:0 0 42px;}
  .ce-bio-list li{gap:12px;}
  /* 주요 저서: 좌우 패딩·태그 축소 */
  .ce-pub{padding:26px 16px;}
  .ce-pub-tags{gap:7px;}
  .ce-pub-tags span{padding:7px 13px;font-size:.84em;}
}

/* ===== intro/ceo_profile.php (총장 프로필) — prefix: cp- ===== */
.cp-wrap{max-width:1100px;margin:0 auto;padding:30px 20px 100px;}
.cp-head{display:flex;gap:50px;flex-wrap:wrap;align-items:center;margin-bottom:64px;}
.cp-photo{flex:0 1 280px;max-width:300px;position:relative;}
.cp-deco1{position:absolute;top:-14px;left:-14px;width:100px;height:100px;border:2px solid #e3c7cd;z-index:0;}
.cp-deco2{position:absolute;bottom:-14px;right:-14px;width:70px;height:70px;background:#f7e9ec;z-index:0;}
.cp-img{position:relative;z-index:1;width:100%;border-radius:4px;box-shadow:0 18px 40px rgba(0,0,0,.12);}
.cp-info{flex:1 1 380px;}
.cp-eyebrow{display:inline-block;color:#C8A24A;letter-spacing:.3em;font-weight:600;font-size:.82rem;}
.cp-name{font-family:'Noto Serif KR',serif;font-size:2.2em;color:#1a1a1a;font-weight:700;margin:12px 0 4px;letter-spacing:-.5px;}
.cp-name .en{color:#888;font-size:.55em;font-weight:500;letter-spacing:.05em;margin-left:8px;}
.cp-deg{margin:6px 0 18px;color:#941935;font-family:'Noto Serif KR',serif;font-weight:700;font-size:1.05em;}
.cp-roles{list-style:none;padding:0;margin:0;color:#555;line-height:1.95;font-size:.97em;}
.cp-roles b{color:#941935;margin-right:8px;}
.cp-sec{margin-bottom:70px;}
.cp-h{font-family:'Noto Serif KR',serif;font-size:1.55em;color:#1a1a1a;font-weight:700;padding-bottom:14px;border-bottom:2px solid #941935;margin-bottom:28px;}
.cp-h span{color:#C8A24A;font-size:.7em;letter-spacing:.1em;margin-left:6px;}
.cp-list{list-style:none;padding:0;margin:0;}
.cp-list li{display:flex;gap:24px;padding:14px 0;border-bottom:1px solid #eee;align-items:flex-start;}
.cp-list li b{flex:0 0 80px;color:#941935;font-family:'Noto Serif KR',serif;font-weight:700;font-size:1.05em;}
.cp-list li span{flex:1;color:#444;line-height:1.7;font-size:1em;}
.cp-pub{background:#faf7f8;border-radius:18px;padding:48px 44px;}
.cp-pub-h{font-family:'Noto Serif KR',serif;font-size:1.45em;color:#1a1a1a;font-weight:700;margin:0 0 24px;}
.cp-pub-h span{color:#C8A24A;font-size:.72em;letter-spacing:.1em;margin-left:4px;}
.cp-pub-tags{display:flex;flex-wrap:wrap;gap:10px;}
.cp-pub-tags span{background:#fff;border:1px solid #e3c7cd;color:#6f0c1f;padding:10px 20px;border-radius:50px;font-size:.94em;}
.cp-back{text-align:center;margin-top:54px;}
.cp-back-btn{display:inline-block;background:#fff;color:#941935;border:1px solid #941935;padding:13px 32px;border-radius:50px;font-weight:700;letter-spacing:-.3px;}
.cp-back-btn i{margin-right:6px;}
@media(max-width:767px){
  .cp-head{gap:24px;margin-bottom:44px;}
  .cp-photo{flex:1 1 100% !important;max-width:300px !important;margin-left:auto !important;margin-right:auto !important;}
  .cp-sec{margin-bottom:48px;}
  .cp-list li{gap:12px;}
  .cp-list li b{flex:0 0 42px;}            /* 연도칸 대폭 축소 */
  .cp-pub{padding:26px 16px;}              /* 저서 좌우 패딩 축소 */
  .cp-pub-tags{gap:7px;}
  .cp-pub-tags span{padding:7px 13px;font-size:.84em;}
}

/* ===== SNB(좌측 사이드메뉴) 세련화 — 데스크톱 전용 ===== */
.hv-snb .hv-snb-head{background:linear-gradient(150deg,#7a0f26,#941935 58%,#a3203c) !important;position:relative;border-radius:3px 3px 0 0;letter-spacing:.06em;box-shadow:0 10px 26px -14px rgba(148,25,53,.55);}
.hv-snb .hv-snb-head:after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,#C8A24A,#e3c178);}
.hv-snb .hv-snb-list{border-color:#ece4e5 !important;border-radius:0 0 3px 3px;box-shadow:0 16px 36px -24px rgba(148,25,53,.4);overflow:hidden;}
.hv-snb .hv-snb-list > li > a{position:relative;padding:17px 24px !important;color:#454040 !important;border-bottom:1px solid #f1ebec !important;letter-spacing:-.2px;}
.hv-snb .hv-snb-list > li > a:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:0;background:#941935;border-radius:0 2px 2px 0;transition:height .26s cubic-bezier(.2,.7,.2,1);}
.hv-snb .hv-snb-list > li > a:hover{color:#941935 !important;background:#fcf7f8;}
.hv-snb .hv-snb-list > li > a:hover:before,
.hv-snb .hv-snb-list > li.on > a:before{height:22px;}
.hv-snb .hv-snb-list > li.on > a{background:#faf3f5 !important;color:#941935 !important;font-weight:700;}
.hv-snb .hv-snb-toggle{color:#cbb7bb !important;}
/* 3차 메뉴 — 원래 "-" 마커 유지, 좌측 패딩만 더 줘서 2차의 하위임을 표현 (직접자식만: 4차에 영향X) */
.hv-snb .hv-snb-sub{background:#fbf8f9 !important;}
.hv-snb .hv-snb-sub > li > a{padding:10px 24px 10px 40px !important;color:#7c7177 !important;font-size:.97em;}
.hv-snb .hv-snb-sub > li > a:before{left:26px !important;color:#caa9af;}
.hv-snb .hv-snb-sub > li > a:hover{color:#941935 !important;background:#f7eef1;}
.hv-snb .hv-snb-sub > li.on > a{color:#941935 !important;font-weight:700;background:#faf3f5 !important;}
.hv-snb .hv-snb-sub > li.on > a:before{color:#941935 !important;}
/* 4차 자식이 있는 3차(has-4) li 자체의 아래 패딩 제거 — 4차가 바로 붙게 */
.hv-snb .hv-snb-sub > li.has-4{padding-bottom:0 !important;}
/* 3차 첫 항목 상단 패딩 제거 */
.hv-snb .hv-snb-sub li:first-child{padding-top:0 !important;}
/* 3차 마지막 항목 하단 패딩 제거 */
.hv-snb .hv-snb-sub li:last-child{padding-bottom:0 !important;}
/* 4차 메뉴 — 한 단계 더 들여쓰기, 기본 회색(활성만 강조) */
.hv-snb .hv-snb-sub2{list-style:none;margin:0;padding:0 !important;background:#f7f1f3 !important;}
.hv-snb .hv-snb-sub2 > li > a{display:block;position:relative;padding:9px 24px 9px 58px !important;color:#8a7f82 !important;font-size:.93em;font-weight:400 !important;}
.hv-snb .hv-snb-sub2 > li > a:before{left:44px !important;color:#caa9af;}
.hv-snb .hv-snb-sub2 > li > a:hover{color:#941935 !important;}
.hv-snb .hv-snb-sub2 > li.on > a{color:#941935 !important;font-weight:700 !important;}

/* ===== 로케이션바(hv-loca) 반응형 ===== */
/* 태블릿(768~1024): 기본 span height 64px 인데 line-height 만 50px 로 떠서 글자가 위로 쏠림 → 높이를 맞춰 상하 중앙 정렬 */
@media(min-width:768px) and (max-width:1024px){
  .hv-loca .hv-loca-item > span{height:50px !important;}
}
@media(max-width:767px){
  /* 모바일은 한 줄에 홈 + 메뉴 2개까지만. 3번째(깊은 단계: 모집요강/바로가기 등)는 숨김 */
  .hv-loca .hv-loca-l4{display:none !important;}
  .hv-loca{min-height:48px;}
}
/* 2차 없는 페이지의 현재위치(드롭다운 아님) */
.hv-loca .hv-loca-cur > span{cursor:default;}
.hv-loca .hv-loca-cur > span i{display:none;}

/* ===== 프론트 콘텐츠 페이지 공통 컴포넌트 (fp-) — 인라인 CSS 대체용. PC값은 기존 디자인 유지, 모바일은 패딩 대폭 축소 ===== */
.fp-wrap{max-width:1180px;margin:0 auto;padding:30px 20px 100px;}
.fp-hero{text-align:center;margin-bottom:54px;}
.fp-eyebrow{display:inline-block;color:#C8A24A;letter-spacing:.3em;font-weight:600;font-size:.82rem;}
.fp-hero-tit{font-family:'Noto Serif KR',serif;font-size:2.05em;color:#1a1a1a;font-weight:700;margin:14px 0 16px;line-height:1.34;}
.fp-lead{color:#666;line-height:1.85;max-width:820px;margin:0 auto;font-size:1.02em;word-break:keep-all;}
.fp-bar{width:64px;height:3px;background:#941935;margin:28px auto 0;border-radius:2px;}
.fp-box{background:#faf7f8;border-radius:18px;padding:50px 44px;margin-bottom:60px;}
.fp-box-tit{font-family:'Noto Serif KR',serif;font-size:1.4em;color:#941935;font-weight:700;margin:0 0 18px;}
.fp-box p{color:#444;line-height:1.95;font-size:1.02em;word-break:keep-all;margin:0 0 14px;}
.fp-box p:last-child{margin-bottom:0;}
.fp-box b{color:#941935;}
.fp-sec{margin-bottom:48px;}
.fp-sec-h{font-family:'Noto Serif KR',serif;font-size:1.4em;color:#1a1a1a;font-weight:700;padding-bottom:14px;border-bottom:2px solid #941935;margin-bottom:24px;}
.fp-sec-h .en{color:#C8A24A;font-size:.7em;letter-spacing:.1em;margin-left:6px;}
.fp-table{width:100%;border-collapse:collapse;font-size:.97em;}
.fp-table th{text-align:left;background:#fafafa;border:1px solid #eee;padding:14px 18px;color:#941935;font-family:'Noto Serif KR',serif;width:160px;vertical-align:top;}
.fp-table td{border:1px solid #eee;padding:14px 18px;color:#444;line-height:1.75;word-break:keep-all;}
.fp-cta{background:linear-gradient(125deg,#4d0815,#941935);color:#fff;border-radius:18px;padding:38px 36px;text-align:center;}
.fp-cta-tit{font-family:'Noto Serif KR',serif;font-size:1.4em;font-weight:700;margin:0 0 12px;color:#fff;}
.fp-cta p{margin:0 0 22px;color:#f3dcae;line-height:1.78;font-size:.95em;word-break:keep-all;}
.fp-cta-btn{display:inline-block;background:#C8A24A;color:#4d0815;padding:14px 36px;border-radius:50px;font-weight:700;letter-spacing:-.3px;}
.fp-cta-btn i{margin-left:6px;}
@media(max-width:767px){
  .fp-wrap{padding:20px 0 64px;}
  .fp-hero{margin-bottom:34px;}
  .fp-hero-tit{font-size:1.55em;margin:11px 0 13px;}
  .fp-lead{font-size:.96em;line-height:1.72;}
  .fp-bar{margin-top:20px;}
  .fp-box{padding:24px 18px;border-radius:14px;margin-bottom:34px;}
  .fp-box-tit{font-size:1.18em;margin-bottom:12px;}
  .fp-box p{font-size:.96em;line-height:1.78;margin-bottom:11px;}
  .fp-sec{margin-bottom:32px;}
  .fp-sec-h{font-size:1.18em;margin-bottom:18px;}
  .fp-table{font-size:.92em;}
  .fp-table th{width:33%;padding:11px 11px;}
  .fp-table td{padding:11px 11px;}
  .fp-cta{padding:28px 20px;border-radius:14px;}
  .fp-cta-tit{font-size:1.18em;}
  .fp-cta p{font-size:.92em;}
  .fp-cta-btn{padding:13px 28px;}
}
/* 카드 그리드 / flex 카드 / 이미지2단 / 대시리스트 / 솔리드버튼 */
.fp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:22px;}
.fp-flex{display:flex;gap:24px;flex-wrap:wrap;}
.fp-card{background:#fff;border:1px solid #e9e3e5;border-radius:12px;padding:28px 24px;flex:1 1 280px;}
.fp-card.tint{background:#fafafa;border-color:#eee;}
.fp-card-ey{display:block;color:#C8A24A;font-family:'Noto Serif KR',serif;font-size:.9em;font-weight:600;letter-spacing:.08em;}
.fp-card-tit{margin:8px 0 10px;color:#941935;font-size:1.1em;font-weight:700;}
.fp-card-desc{margin:0;color:#666;line-height:1.7;font-size:.93em;word-break:keep-all;}
.fp-cols{display:flex;gap:50px;flex-wrap:wrap;align-items:flex-start;}
.fp-cols .fp-col-img{flex:0 1 340px;max-width:360px;}
.fp-cols .fp-col-img img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:12px;display:block;}
.fp-cols .fp-col-txt{flex:1 1 460px;}
.fp-cols .fp-col-img img{box-shadow:0 18px 40px -26px rgba(40,8,16,.3);}
.fp-subtit{font-family:'Noto Serif KR',serif;color:#1a1a1a;font-size:1.5em;font-weight:700;margin:0 0 16px;}
.fp-col-txt > p{color:#555;line-height:1.95;margin:0 0 14px;word-break:keep-all;}
.fp-col-txt > p:last-child{margin-bottom:0;}
.fp-list{list-style:none;padding:0;margin:0;color:#444;line-height:1.85;}
.fp-list li{padding:8px 0 8px 24px;border-top:1px solid #eee;position:relative;}
.fp-list li:first-child{border-top:0;}
.fp-list li:before{content:"";position:absolute;left:0;top:16px;width:12px;height:2px;background:#941935;}
.fp-btn{display:inline-block;background:#941935;color:#fff;padding:14px 36px;border-radius:50px;font-weight:700;letter-spacing:-.3px;}
.fp-btn i{margin-left:6px;}
.fp-center{text-align:center;}
@media(max-width:767px){
  .fp-grid{grid-template-columns:1fr 1fr;gap:12px;}
  .fp-flex{gap:12px;}
  .fp-card{padding:18px 16px;}
  .fp-cols{gap:22px;}
  .fp-cols .fp-col-img{flex-basis:100%;max-width:100%;}
  .fp-cols .fp-col-txt{flex-basis:100%;}
  .fp-btn{padding:13px 28px;}
}
/* ===== fp 확장 유틸(1회성 장식 패턴 — 원본 PC값 유지, 모바일 패딩 축소) ===== */
.fp-box-tit.dark{color:#1a1a1a;}
.fp-box-tit.sm{font-size:1.2em;margin-bottom:14px;}
.fp-hl{color:#941935;}
.fp-eylabel{display:block;color:#C8A24A;font-size:.62em;letter-spacing:.12em;font-weight:600;margin-bottom:4px;}
.fp-ul{margin:0;padding:0 0 0 18px;color:#555;line-height:1.85;font-size:.96em;}
.fp-warn{background:#fff5f5;border:1px solid #f5d6da;border-radius:14px;padding:28px;margin-bottom:48px;}
.fp-warn > p{margin:0;color:#6f0c1f;line-height:1.78;font-size:.95em;word-break:keep-all;}
.fp-warn-tit{color:#941935;font-weight:700;margin-bottom:8px;}
.fp-fbox{background:linear-gradient(135deg,#fafafa,#fff);border:1px solid #eee;border-radius:16px;padding:42px 40px;}
.fp-chips{display:flex;flex-wrap:wrap;gap:10px;}
.fp-chip{background:#fff;border:1px solid #e3c7cd;color:#6f0c1f;padding:9px 18px;border-radius:50px;font-size:.92em;}
.fp-dl{list-style:none;padding:0;margin:0;color:#555;line-height:1.95;}
.fp-dl > li{padding:9px 0;border-top:1px solid #eee;}
.fp-dl > li:first-child{border-top:0;}
.fp-dl > li.row{display:flex;justify-content:space-between;gap:12px;}
.fp-dl .k{color:#1a1a1a;}
.fp-dl .v{color:#941935;}
.fp-dl-note{margin-top:14px;padding-top:14px;border-top:1px solid #eee;color:#888;font-size:.92em;line-height:1.65;}
.fp-steps{list-style:none;counter-reset:step;padding:0;margin:0;}
.fp-steps > li{counter-increment:step;position:relative;padding:18px 0 18px 60px;border-top:1px solid #eee;color:#444;line-height:1.85;word-break:keep-all;}
.fp-steps > li:first-child{border-top:0;}
.fp-steps > li:before{content:counter(step,decimal-leading-zero);position:absolute;left:0;top:14px;width:42px;height:42px;line-height:42px;text-align:center;border-radius:50%;background:#941935;color:#fff;font-family:'Noto Serif KR',serif;font-weight:700;}
.fp-step-tit{margin:0 0 8px;color:#1a1a1a;font-size:1.05em;font-weight:700;}
.fp-xtable{overflow-x:auto;}
.fp-mtable{width:100%;border-collapse:collapse;font-size:.95em;min-width:520px;}
.fp-mtable th,.fp-mtable td{padding:11px;border:1px solid #eee;text-align:center;color:#444;}
.fp-mtable thead th,.fp-mtable th.hd{background:#941935;color:#fff;}
.fp-mtable .b{font-weight:700;color:#941935;}
.fp-mtable.grade th,.fp-mtable.grade td{padding:12px;border-color:#941935;}
.fp-btn.ghost{background:#fff;color:#941935;border:1px solid #941935;}
/* 인증/안내 다크 박스(좌측정렬·버건디 그라데이션·흰글씨) */
.fp-acc{background:linear-gradient(125deg,#4d0815,#941935);border-radius:16px;padding:36px 38px;color:#fff;}
.fp-acc-ey{display:block;color:#f3dcae;font-family:'Noto Serif KR',serif;font-size:.85em;font-weight:700;letter-spacing:.15em;margin-bottom:10px;}
.fp-acc > p{margin:0;color:#fff;line-height:1.85;word-break:keep-all;font-size:.98em;}
.fp-acc b{color:#fff;}
/* 학장 사진 캡션 */
.fp-cap{margin-top:12px;text-align:center;font-family:'Noto Serif KR',serif;color:#1a1a1a;font-size:1.05em;font-weight:700;}
.fp-cap small{display:block;margin-top:3px;color:#9a8e90;font-size:.72em;font-weight:600;letter-spacing:.04em;}
/* 학장 인사말 본문(여러 문단) */
.fp-msg p{color:#4f4a4b;line-height:1.95;font-size:1.0em;margin:0 0 14px;word-break:keep-all;}
.fp-msg p:last-child{margin-bottom:0;}
.fp-msg .sign{margin-top:18px;color:#1a1a1a;font-weight:700;}
/* 제목형 카드 리스트(지원사업·핵심가치) */
.fp-tlist{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;}
.fp-tlist > li{background:#fff;border:1px solid #eee;border-radius:13px;padding:22px 24px;box-shadow:0 12px 30px -26px rgba(40,8,16,.3);}
.fp-tlist > li b{display:block;color:#941935;font-size:1.06em;font-weight:700;margin-bottom:8px;line-height:1.4;}
.fp-tlist > li b small{color:#9a8e90;font-weight:600;font-size:.78em;letter-spacing:.02em;}
.fp-tlist > li p{margin:0;color:#555;line-height:1.82;font-size:.95em;word-break:keep-all;}
/* 캠퍼스 면책문구 */
.fp-disclaimer{margin-top:34px;padding:16px 22px;border-left:3px solid #C8A24A;background:#faf7f8;color:#8a7f82;font-size:.86em;line-height:1.7;border-radius:0 10px 10px 0;word-break:keep-all;}
@media(max-width:767px){
  .fp-warn{padding:18px 16px;margin-bottom:32px;}
  .fp-fbox{padding:24px 18px;}
  .fp-steps > li{padding:14px 0 14px 50px;}
  .fp-steps > li:before{width:36px;height:36px;line-height:36px;top:13px;}
  .fp-mtable{font-size:.88em;}
  .fp-subtit{font-size:1.28em;}
  .fp-acc{padding:24px 18px;}
  .fp-tlist > li{padding:18px 18px;}
  .fp-disclaimer{padding:14px 16px;margin-top:24px;}
}

/* ===== intro/directors.php (이사회) — dr- ===== */
.dr-wrap{max-width:1100px;margin:0 auto;padding:30px 20px 100px;}
.dr-intro{text-align:center;margin-bottom:60px;}
.dr-eyebrow{display:inline-block;color:#C8A24A;letter-spacing:.3em;font-weight:600;font-size:.82rem;}
.dr-h2{font-family:'Noto Serif KR',serif;font-size:2em;color:#1a1a1a;font-weight:700;margin:14px 0 16px;line-height:1.34;}
.dr-lead{color:#666;line-height:1.85;max-width:760px;margin:0 auto;font-size:1.02em;word-break:keep-all;}
.dr-rule{width:64px;height:3px;background:#941935;margin:28px auto 0;border-radius:2px;}
.dr-cards{display:flex;gap:30px;flex-wrap:wrap;margin-bottom:60px;}
.dr-card{flex:1 1 360px;background:#fafafa;border:1px solid #eee;border-radius:14px;padding:36px 32px;}
.dr-card-eye{font-family:'Noto Serif KR',serif;color:#C8A24A;font-size:.85em;font-weight:700;letter-spacing:.15em;}
.dr-card-h{font-family:'Noto Serif KR',serif;color:#941935;font-size:1.35em;font-weight:700;margin:8px 0 18px;}
.dr-card-p{color:#444;line-height:1.85;margin:0;word-break:keep-all;font-size:1em;}
.dr-card-p b{color:#1a1a1a;}
.dr-list{margin:14px 0 0;padding:0;list-style:none;color:#555;line-height:1.95;font-size:.97em;}
.dr-list li{padding:6px 0;border-top:1px solid #eee;display:flex;justify-content:space-between;}
.dr-list li b{color:#941935;}
.dr-card-note{margin-top:18px;padding-top:18px;border-top:1px solid #eee;color:#888;font-size:.9em;line-height:1.65;}
.dr-index{margin-top:60px;}
@media(max-width:767px){.dr-cards{gap:16px;}.dr-card{padding:26px 20px;}}

/* ===== intro/history.php (연혁) — hist- + .hv-history(이관) ===== */
.hist-wrap{max-width:1100px;margin:0 auto;padding:30px 20px 100px;}
.hist-intro{text-align:center;margin-bottom:54px;}
.hist-eyebrow{display:inline-block;color:#C8A24A;letter-spacing:.3em;font-weight:600;font-size:.82rem;}
.hist-h2{font-family:'Noto Serif KR',serif;font-size:2em;color:#1a1a1a;font-weight:700;margin:14px 0 16px;line-height:1.34;}
.hist-lead{color:#666;line-height:1.85;max-width:780px;margin:0 auto;font-size:1.02em;word-break:keep-all;}
.hist-rule{width:64px;height:3px;background:#941935;margin:28px auto 0;border-radius:2px;}
.hv-history{position:relative;padding:20px 0;}
.hv-history:before{content:"";position:absolute;left:120px;top:0;bottom:0;width:2px;background:linear-gradient(to bottom,#941935,#C8A24A);}
.hv-history .hy-row{position:relative;display:flex;gap:46px;padding:24px 0;align-items:flex-start;}
.hv-history .hy-year{flex:0 0 96px;text-align:right;font-family:'Noto Serif KR',serif;font-size:1.6em;color:#941935;font-weight:700;line-height:1.1;padding-top:6px;}
.hv-history .hy-year small{display:block;color:#C8A24A;font-size:.5em;letter-spacing:.18em;font-weight:600;margin-top:6px;}
.hv-history .hy-dot{position:absolute;left:113px;top:32px;width:16px;height:16px;border-radius:50%;background:#fff;border:3px solid #941935;z-index:2;box-shadow:0 0 0 4px rgba(148,25,53,.08);}
.hv-history .hy-body{flex:1;background:#fff;border:1px solid #eee;border-radius:14px;padding:22px 28px;box-shadow:0 6px 20px rgba(0,0,0,.04);}
.hv-history .hy-body h4{margin:0 0 10px;font-family:'Noto Serif KR',serif;color:#1a1a1a;font-size:1.18em;font-weight:700;letter-spacing:-.3px;}
.hv-history .hy-body ul{margin:0;padding:0;list-style:none;color:#555;line-height:1.75;font-size:.97em;}
.hv-history .hy-body ul li{padding:5px 0 5px 18px;position:relative;}
.hv-history .hy-body ul li:before{content:"";position:absolute;left:0;top:13px;width:8px;height:2px;background:#C8A24A;}
.hv-history .hy-body ul li b{color:#941935;}
@media (max-width:680px){
 /* #8 선을 더 왼쪽으로 + year/FOUNDATION 글씨 좁혀 우측 박스 최대한 넓게 */
 .hv-history:before{left:15px;}
 .hv-history .hy-row{gap:12px;}
 .hv-history .hy-year{flex:0 0 auto;text-align:left;font-size:1.18em;padding-left:30px;}
 .hv-history .hy-year small{letter-spacing:.04em;font-size:.42em;}
 .hv-history .hy-dot{left:9px;top:30px;}
 .hv-history .hy-body{padding:16px 16px;}
}
.hist-cta{margin-top:60px;background:linear-gradient(125deg,#4d0815,#941935);color:#fff;border-radius:16px;padding:38px 36px;text-align:center;}
.hist-cta .ey{margin:0 0 6px;color:#f3dcae;font-family:'Noto Serif KR',serif;letter-spacing:.15em;font-weight:700;font-size:.82em;}
.hist-cta h3{margin:6px 0 12px;font-family:'Noto Serif KR',serif;font-size:1.45em;font-weight:700;color:#fff;}
.hist-cta .tx{margin:0;color:#f0e6d6;line-height:1.78;font-size:.95em;word-break:keep-all;}

/* ===== intro/vision.php (미션·비전·핵심가치) — vis- + 이관 ===== */
.vis-wrap{max-width:1180px;margin:0 auto;padding:30px 20px 100px;}
.vis-intro{text-align:center;margin-bottom:64px;}
.vis-eyebrow{display:inline-block;color:#C8A24A;letter-spacing:.3em;font-weight:600;font-size:.82rem;}
.vis-h2{font-family:'Noto Serif KR',serif;font-size:2.05em;color:#1a1a1a;font-weight:700;margin:14px 0 18px;line-height:1.34;}
.vis-lead{color:#666;line-height:1.85;max-width:780px;margin:0 auto;font-size:1.02em;word-break:keep-all;}
.vis-rule{width:64px;height:3px;background:#941935;margin:30px auto 0;border-radius:2px;}
.vis-mission{display:flex;gap:50px;flex-wrap:wrap;margin-bottom:80px;align-items:flex-start;}
.vis-mission-emb{flex:0 0 220px;text-align:center;}
.vis-emblem-cir{width:120px;height:120px;line-height:120px;margin:0 auto;border-radius:50%;background:linear-gradient(135deg,#941935,#6f0c1f);color:#fff;font-family:'Noto Serif KR',serif;font-size:2.4em;font-weight:700;}
.vis-mission-h{font-family:'Noto Serif KR',serif;font-size:1.55em;color:#1a1a1a;font-weight:700;margin:22px 0 4px;}
.vis-mission-h .en{color:#C8A24A;font-size:.7em;letter-spacing:.1em;}
.vis-mission-body{flex:1 1 480px;}
.vis-mission-list{list-style:none;padding:0;margin:0;}
.vis-mission-list li{padding:22px 0;border-top:1px solid #eee;}
.vis-mission-list li:first-child{border-top:0;}
.vis-m-name{color:#941935;font-weight:700;font-family:'Noto Serif KR',serif;font-size:1.1em;margin-bottom:6px;}
.vis-m-desc{margin:0;color:#555;line-height:1.85;word-break:keep-all;font-size:1em;}
/* 공통 엠블럼 (이관) */
.hv-vc-emblem{text-align:center;margin-bottom:44px;}
.hv-vc-emblem .em{display:inline-flex;align-items:center;justify-content:center;width:120px;height:120px;border-radius:50%;font-family:'Noto Serif KR',serif;font-size:2.4em;font-weight:700;}
.hv-vc-emblem .em.vision{background:#fff;color:#941935;border:3px solid #C8A24A;}
.hv-vc-emblem .em.value{background:linear-gradient(135deg,#C8A24A,#a0823a);color:#fff;}
.hv-vc-emblem h3{font-family:'Noto Serif KR',serif;font-size:1.55em;color:#1a1a1a;font-weight:700;margin:22px 0 6px;}
.hv-vc-emblem h3 .en{color:#C8A24A;font-size:.62em;letter-spacing:.18em;margin-left:6px;font-weight:600;}
/* 비전 3컬럼 카드 (이관) */
.hv-vision-wrap{background:#faf7f8;border-radius:18px;padding:60px 50px;margin-bottom:80px;}
.hv-vision-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.hv-vision-card{position:relative;background:#fff;border-radius:14px;padding:34px 28px 32px;overflow:hidden;transition:transform .35s ease, box-shadow .35s ease;border:1px solid #f0e8ea;}
.hv-vision-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(148,25,53,.10);}
.hv-vision-card .wm{position:absolute;top:-10px;right:-6px;font-family:'Noto Serif KR',serif;font-size:6em;font-weight:800;color:#f5e8ec;line-height:1;letter-spacing:-3px;pointer-events:none;user-select:none;}
.hv-vision-card .lbl{position:relative;color:#C8A24A;font-family:'Noto Serif KR',serif;font-size:.78em;letter-spacing:.2em;font-weight:700;display:inline-block;padding-bottom:6px;border-bottom:2px solid #C8A24A;margin-bottom:16px;}
.hv-vision-card h4{position:relative;margin:0 0 12px;font-family:'Noto Serif KR',serif;font-size:1.22em;color:#1a1a1a;font-weight:700;letter-spacing:-.3px;line-height:1.35;}
.hv-vision-card p{position:relative;margin:0;color:#666;line-height:1.75;font-size:.94em;word-break:keep-all;}
.hv-vision-card .ic{position:relative;color:#941935;font-size:1.3em;margin-bottom:14px;}
@media (max-width:920px){.hv-vision-grid{grid-template-columns:1fr;}}
/* 핵심가치 (이관) */
.hv-value-wrap{margin-bottom:80px;}
.hv-value-list{list-style:none;padding:0;margin:0;border-top:1px solid #ececec;}
.hv-value-row{display:flex;align-items:flex-start;gap:28px;padding:30px 18px;border-bottom:1px solid #ececec;transition:background .25s ease;}
.hv-value-row:hover{background:rgba(200,162,74,.08);}
.hv-value-no{flex:0 0 72px;font-family:'Noto Serif KR',serif;font-size:2.8em;font-weight:700;color:#ece1c8;line-height:1;letter-spacing:-2px;padding-top:2px;}
.hv-value-body{flex:1;min-width:0;}
.hv-value-name{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:10px;}
.hv-value-name h4{margin:0;font-family:'Noto Serif KR',serif;font-size:1.32em;color:#1a1a1a;font-weight:700;letter-spacing:-.5px;line-height:1.2;}
.hv-value-name .en{color:#bda774;font-size:.82em;letter-spacing:.06em;font-family:'Noto Serif KR',serif;font-style:italic;}
.hv-value-desc{margin:0;color:#555;line-height:1.78;font-size:.98em;word-break:keep-all;}
@media (max-width:680px){
 .hv-value-row{flex-wrap:wrap;gap:14px;padding:22px 12px;}
 .hv-value-no{flex:0 0 auto;font-size:2.2em;}
 .hv-value-name h4{font-size:1.15em;}
 /* ===== #9 미션 영역 대칭(중앙정렬) + 간격 ===== */
 .vis-wrap{padding:24px 15px 70px;}
 .vis-intro{margin-bottom:40px;}
 .vis-mission{gap:18px;margin-bottom:50px;}
 .vis-mission-emb{flex:1 1 100% !important;}
 .vis-emblem-cir{width:96px;height:96px;line-height:96px;font-size:2em;}
 .vis-mission-h{font-size:1.3em;margin-top:16px;}
 .vis-mission-body{flex:1 1 100%;}
 .vis-mission-list li{padding:18px 0;}
 /* ===== #6/#9 비전 박스: 좌우 15px, 상하 24px (카드 부모) ===== */
 .hv-vision-wrap{padding:24px 15px !important;margin-bottom:50px;}
 .hv-vision-grid{gap:14px;}
 .hv-vision-card{padding:24px 20px 22px;}
 .hv-vc-emblem{margin-bottom:26px;}
 .hv-vc-emblem .em{width:92px !important;height:92px !important;font-size:2em !important;}
 .hv-vc-emblem h3{font-size:1.3em;margin-top:16px;}
}

/* ===== intro/staff.php (교직원소개) — st- + .hv-dept(이관) ===== */
.st-wrap{max-width:1180px;margin:0 auto;padding:30px 20px 100px;}
.st-intro{text-align:center;margin-bottom:60px;}
.st-eyebrow{display:inline-block;color:#C8A24A;letter-spacing:.3em;font-weight:600;font-size:.82rem;}
.st-h2{font-family:'Noto Serif KR',serif;font-size:2em;color:#1a1a1a;font-weight:700;margin:14px 0 18px;line-height:1.34;}
.st-lead{color:#666;line-height:1.85;max-width:780px;margin:0 auto;font-size:1.02em;word-break:keep-all;}
.st-rule{width:64px;height:3px;background:#941935;margin:28px auto 0;border-radius:2px;}
.hv-dept-section{margin-bottom:80px;}
.hv-dept-head{display:flex;align-items:flex-end;justify-content:space-between;padding-bottom:24px;border-bottom:2px solid #1a1a1a;margin-bottom:0;}
.hv-dept-head h3{margin:0;font-family:'Noto Serif KR',serif;font-size:2em;color:#1a1a1a;font-weight:700;letter-spacing:-1px;line-height:1.1;}
.hv-dept-head .lbl{color:#C8A24A;font-family:'Noto Serif KR',serif;font-size:.85em;letter-spacing:.2em;font-weight:600;}
.hv-dept-head .lbl b{color:#941935;font-weight:700;}
.hv-dept-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,1fr);column-gap:0;row-gap:0;position:relative;}
.hv-dept-list:after{content:"";position:absolute;left:50%;top:0;bottom:0;width:1px;background:#ececec;pointer-events:none;}
.hv-dept-row{display:flex;align-items:flex-start;gap:22px;padding:28px 28px;border-bottom:1px solid #ececec;transition:background .25s ease;}
.hv-dept-row:hover{background:#fbf6f7;}
.hv-dept-no{flex:0 0 64px;font-family:'Noto Serif KR',serif;font-size:2.6em;font-weight:700;color:#e3d5d8;line-height:1;letter-spacing:-2px;padding-top:4px;}
.hv-dept-body{flex:1;min-width:0;}
.hv-dept-name{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:8px;}
.hv-dept-name h4{margin:0;font-family:'Noto Serif KR',serif;font-size:1.25em;color:#1a1a1a;font-weight:700;letter-spacing:-.5px;line-height:1.2;}
.hv-dept-name .en{color:#a59193;font-size:.82em;letter-spacing:.06em;font-family:'Noto Serif KR',serif;font-style:italic;}
.hv-dept-desc{margin:0;color:#666;line-height:1.65;font-size:.92em;word-break:keep-all;}
.hv-dept-arrow{display:none;}
@media (max-width:960px){
 .hv-dept-list{grid-template-columns:1fr;column-gap:0;}
 .hv-dept-no{font-size:2.2em;flex:0 0 56px;}
 .hv-dept-head h3{font-size:1.5em;}
}
.st-fac{margin-top:20px;}
.st-fac-head{margin-bottom:34px;}
.st-fac-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:26px 22px;}
.st-fac-card{text-align:center;}
.st-fac-img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:14px;display:block;margin-bottom:14px;box-shadow:0 10px 26px rgba(0,0,0,.07);}
.st-fac-name{font-family:'Noto Serif KR',serif;font-size:1.18em;color:#1a1a1a;font-weight:700;}
.st-fac-role{color:#941935;font-size:.92em;margin-top:5px;word-break:keep-all;}
.st-fac-note{text-align:center;color:#999;font-size:.86em;margin-top:30px;}

/* ===== campus/payment.php (수강료 납부안내) — pay- ===== */
.pay-wrap{max-width:1080px;margin:0 auto;padding:30px 20px 100px;}
.pay-intro{text-align:center;margin-bottom:54px;}
.pay-eyebrow{display:inline-block;color:#C8A24A;letter-spacing:.3em;font-weight:600;font-size:.82rem;}
.pay-h2{font-family:'Noto Serif KR',serif;font-size:2em;color:#1a1a1a;font-weight:700;margin:14px 0 16px;line-height:1.34;}
.pay-rule{width:64px;height:3px;background:#941935;margin:24px auto 0;border-radius:2px;}
.pay-cards{display:flex;gap:28px;flex-wrap:wrap;margin-bottom:48px;}
.pay-card{flex:1 1 360px;background:#fafafa;border:1px solid #eee;border-radius:14px;padding:32px 30px;}
.pay-card-eye{color:#C8A24A;font-family:'Noto Serif KR',serif;font-size:.85em;font-weight:700;letter-spacing:.15em;}
.pay-card-h{font-family:'Noto Serif KR',serif;color:#941935;font-size:1.3em;font-weight:700;margin:8px 0 16px;}
.pay-list{list-style:none;padding:0;margin:0;color:#555;line-height:1.85;font-size:.97em;}
.pay-list li{padding:8px 0;border-top:1px solid #eee;}
.pay-list li:first-child{border-top:0;}
.pay-list li b{color:#1a1a1a;}
.pay-bank{background:linear-gradient(125deg,#4d0815,#941935);color:#fff;border-radius:18px;padding:40px 38px;margin-bottom:48px;}
.pay-bank-eye{color:#f3dcae;font-family:'Noto Serif KR',serif;font-size:.85em;font-weight:700;letter-spacing:.15em;}
.pay-bank-h{font-family:'Noto Serif KR',serif;font-size:1.45em;font-weight:700;margin:8px 0 18px;color:#fff;}
.pay-bank-row{display:flex;gap:30px;flex-wrap:wrap;}
.pay-bank-col{flex:1 1 200px;}
.pay-bank-lbl{opacity:.7;font-size:.85em;color:#fff;}
.pay-bank-val{font-size:1.2em;font-weight:700;margin-top:4px;color:#fff;}
.pay-bank-memo{font-size:1.05em;font-weight:600;margin-top:4px;color:#fff;}
.pay-bank-memo .gold{color:#f3dcae;}
.pay-bank-note{margin:20px 0 0;padding-top:18px;border-top:1px solid rgba(255,255,255,.18);color:#f0e6d6;line-height:1.78;font-size:.95em;word-break:keep-all;}
.pay-bank-note b{color:#fff;}
.pay-welfare{background:#faf7f8;border-radius:14px;padding:32px 30px;}
.pay-welfare-h{font-family:'Noto Serif KR',serif;color:#941935;font-size:1.2em;font-weight:700;margin:0 0 12px;}
.pay-welfare-h span{color:#C8A24A;font-size:.7em;letter-spacing:.1em;margin-left:4px;}
.pay-welfare-p{margin:0;color:#444;line-height:1.85;word-break:keep-all;}
.pay-welfare-p b{color:#941935;}
/* #11 payment 모바일: 박스 패딩·간격 축소 + 계좌 정보 줄바꿈 정돈 */
@media(max-width:680px){
  .pay-wrap{padding:24px 15px 70px;}
  .pay-cards{gap:14px;margin-bottom:34px;}
  .pay-card{flex:1 1 100%;padding:22px 18px;}
  .pay-bank{padding:26px 18px;margin-bottom:34px;}
  .pay-bank-row{gap:16px;}
  .pay-bank-col{flex:1 1 100%;}
  .pay-bank-val{font-size:1.1em;}
  .pay-welfare{padding:22px 18px;}
}

/* ===== campus/schedule.php (학사일정) — sch- ===== */
.sch-wrap{max-width:1180px;margin:0 auto;padding:30px 20px 100px;}
.sch-intro{text-align:center;margin-bottom:54px;}
.sch-eyebrow{display:inline-block;color:#C8A24A;letter-spacing:.3em;font-weight:600;font-size:.82rem;}
.sch-h2{font-family:'Noto Serif KR',serif;font-size:2em;color:#1a1a1a;font-weight:700;margin:14px 0 16px;line-height:1.34;}
.sch-lead{color:#666;line-height:1.85;max-width:780px;margin:0 auto;font-size:1.02em;word-break:keep-all;}
.sch-rule{width:64px;height:3px;background:#941935;margin:28px auto 0;border-radius:2px;}
.sch-term-a{margin-bottom:48px;}
.sch-term-b{margin-bottom:60px;}
.sch-term-head{display:flex;align-items:center;gap:14px;margin-bottom:20px;}
.sch-badge{width:46px;height:46px;line-height:46px;text-align:center;border-radius:50%;color:#fff;font-family:'Noto Serif KR',serif;font-weight:700;}
.sch-badge.spr{background:#941935;}
.sch-badge.fal{background:#C8A24A;}
.sch-term-h{font-family:'Noto Serif KR',serif;font-size:1.45em;color:#1a1a1a;font-weight:700;margin:0;}
.sch-list{list-style:none;padding:0;margin:0;}
.sch-list.spr{border-top:2px solid #941935;}
.sch-list.fal{border-top:2px solid #C8A24A;}
.sch-row{display:flex;gap:24px;padding:16px 4px;border-bottom:1px solid #eee;align-items:flex-start;}
.sch-month{flex:0 0 100px;font-weight:700;font-family:'Noto Serif KR',serif;font-size:1.05em;}
.sch-list.spr .sch-month{color:#941935;}
.sch-list.fal .sch-month{color:#C8A24A;}
.sch-desc{flex:1;color:#444;line-height:1.78;word-break:keep-all;}
.sch-notes{background:#faf7f8;border-radius:16px;padding:36px 34px;}
.sch-notes-h{font-family:'Noto Serif KR',serif;font-size:1.3em;color:#941935;font-weight:700;margin:0 0 16px;}
.sch-notes-h span{color:#C8A24A;font-size:.72em;letter-spacing:.1em;margin-left:4px;}
.sch-notes-list{list-style:none;padding:0;margin:0;color:#444;line-height:1.85;}
.sch-notes-list li{padding:9px 0 9px 26px;border-top:1px solid #eee;position:relative;}
.sch-notes-list li:before{content:"";position:absolute;left:0;top:16px;width:14px;height:2px;background:#941935;}
.sch-hl{color:#941935;}
@media(max-width:680px){.sch-row{gap:14px;}.sch-month{flex:0 0 64px;}.sch-notes{padding:26px 18px;}}

/* ===== campus/library.php (전자도서관) — lib- ===== */
.lib-wrap{max-width:1180px;margin:0 auto;padding:30px 20px 100px;}
.lib-intro{text-align:center;margin-bottom:54px;}
.lib-eyebrow{display:inline-block;color:#C8A24A;letter-spacing:.3em;font-weight:600;font-size:.82rem;}
.lib-h2{font-family:'Noto Serif KR',serif;font-size:2em;color:#1a1a1a;font-weight:700;margin:14px 0 16px;line-height:1.34;}
.lib-lead{color:#666;line-height:1.85;max-width:760px;margin:0 auto;font-size:1.02em;word-break:keep-all;}
.lib-rule{width:64px;height:3px;background:#941935;margin:28px auto 0;border-radius:2px;}
.lib-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:18px;margin-bottom:60px;}
.lib-card{display:block;background:#faf7f8;border:1px solid #eee;border-radius:16px;padding:36px 32px;color:#1a1a1a;transition:.25s;}
.lib-card:hover{border-color:#e3c7cd;box-shadow:0 14px 32px -18px rgba(148,25,53,.3);}
.lib-card-ic{color:#941935;font-size:1.6em;margin-bottom:14px;}
.lib-card-h{font-family:'Noto Serif KR',serif;color:#941935;font-size:1.35em;font-weight:700;margin:0 0 10px;}
.lib-card-h span{color:#C8A24A;font-size:.65em;letter-spacing:.12em;font-weight:600;margin-left:4px;}
.lib-card-p{margin:0 0 16px;color:#555;line-height:1.7;font-size:.95em;word-break:keep-all;}
.lib-card-go{color:#941935;font-weight:700;font-size:.92em;}
.lib-howto{margin-bottom:48px;}
.lib-howto-h{font-family:'Noto Serif KR',serif;font-size:1.4em;color:#1a1a1a;font-weight:700;padding-bottom:14px;border-bottom:2px solid #941935;margin-bottom:24px;}
.lib-howto-h span{color:#C8A24A;font-size:.7em;letter-spacing:.1em;margin-left:6px;}
.lib-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;}
.lib-step{background:#fff;border:1px solid #e9e3e5;border-radius:12px;padding:26px 24px;}
.lib-step-ic{color:#941935;font-size:1.4em;margin-bottom:10px;}
.lib-step-h{margin:0 0 8px;color:#1a1a1a;font-size:1.08em;font-weight:700;}
.lib-step-p{margin:0;color:#666;line-height:1.7;font-size:.93em;word-break:keep-all;}
.lib-note{background:#fafafa;border-radius:14px;padding:28px;color:#666;text-align:center;}
.lib-note p{margin:0;line-height:1.75;font-size:.95em;}
.lib-note b{color:#941935;}

/* ===== campus/thesis_rule.php (논문 작성 규정) — tr- ===== */
.tr-wrap{max-width:1100px;margin:0 auto;padding:30px 20px 100px;}
.tr-intro{text-align:center;margin-bottom:54px;}
.tr-eyebrow{display:inline-block;color:#C8A24A;letter-spacing:.3em;font-weight:600;font-size:.82rem;}
.tr-h2{font-family:'Noto Serif KR',serif;font-size:2em;color:#1a1a1a;font-weight:700;margin:14px 0 16px;line-height:1.34;}
.tr-rule{width:64px;height:3px;background:#941935;margin:24px auto 0;border-radius:2px;}
.tr-num{color:#C8A24A;font-size:.62em;letter-spacing:.12em;font-weight:600;display:block;margin-bottom:4px;}
.tr-num-s{color:#C8A24A;font-size:.6em;letter-spacing:.12em;font-weight:600;display:block;margin-bottom:4px;}
.tr-box{background:#faf7f8;border-radius:16px;padding:36px 34px;margin-bottom:48px;}
.tr-box-h{font-family:'Noto Serif KR',serif;font-size:1.3em;color:#941935;font-weight:700;margin:0 0 16px;}
.tr-mlist{list-style:none;padding:0;margin:0;color:#444;line-height:1.85;}
.tr-mlist li{padding:8px 0 8px 24px;border-top:1px solid #eee;position:relative;}
.tr-mlist li:first-child{border-top:0;}
.tr-mlist li:before{content:"";position:absolute;left:0;top:16px;width:12px;height:2px;background:#941935;}
.tr-hl{color:#941935;}
.tr-sec{margin-bottom:48px;}
.tr-sec-h{font-family:'Noto Serif KR',serif;font-size:1.4em;color:#1a1a1a;font-weight:700;padding-bottom:12px;border-bottom:2px solid #941935;margin-bottom:24px;}
.tr-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;}
.tr-card{background:#fafafa;border:1px solid #eee;border-radius:12px;padding:22px 24px;}
.tr-card-h{margin:0 0 6px;color:#941935;font-family:'Noto Serif KR',serif;font-size:1.08em;font-weight:700;}
.tr-card-p{margin:0;color:#555;line-height:1.65;font-size:.93em;word-break:keep-all;}
.tr-steps{list-style:none;counter-reset:rstep;padding:0;margin:0;}
.tr-steps li{counter-increment:rstep;position:relative;padding:16px 0 16px 54px;border-top:1px solid #eee;color:#444;line-height:1.85;word-break:keep-all;}
.tr-steps li:first-child{border-top:0;}
.tr-step-no{position:absolute;left:0;top:12px;width:38px;height:38px;line-height:38px;text-align:center;border-radius:50%;background:#941935;color:#fff;font-family:'Noto Serif KR',serif;font-weight:700;font-size:.92em;}
.tr-foot{display:flex;gap:24px;flex-wrap:wrap;}
.tr-foot-card{flex:1 1 360px;background:#faf7f8;border-radius:14px;padding:26px 28px;}
.tr-foot-card.alt{background:#fff;border:1px solid #e9e3e5;}
.tr-foot-h{font-family:'Noto Serif KR',serif;color:#941935;font-size:1.15em;font-weight:700;margin:0 0 10px;}
.tr-foot-p{margin:0;color:#555;line-height:1.78;font-size:.95em;word-break:keep-all;}

/* ===== campus/thesis_template.php (논문 템플릿) — tt- ===== */
.tt-wrap{max-width:1080px;margin:0 auto;padding:30px 20px 100px;}
.tt-intro{text-align:center;margin-bottom:54px;}
.tt-eyebrow{display:inline-block;color:#C8A24A;letter-spacing:.3em;font-weight:600;font-size:.82rem;}
.tt-h2{font-family:'Noto Serif KR',serif;font-size:2em;color:#1a1a1a;font-weight:700;margin:14px 0 16px;line-height:1.34;}
.tt-lead{color:#666;line-height:1.85;max-width:760px;margin:0 auto;font-size:1.02em;word-break:keep-all;}
.tt-rule{width:64px;height:3px;background:#941935;margin:28px auto 0;border-radius:2px;}
.tt-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:48px;}
.tt-card{background:#fafafa;border:1px solid #eee;border-radius:14px;padding:28px 26px;color:#1a1a1a;display:flex;flex-direction:column;gap:6px;transition:.25s;}
.tt-card:hover{border-color:#e3c7cd;box-shadow:0 14px 30px -18px rgba(148,25,53,.3);}
.tt-card-ic{color:#941935;font-size:1.5em;margin-bottom:8px;}
.tt-card-eye{font-family:'Noto Serif KR',serif;color:#C8A24A;font-size:.85em;font-weight:700;letter-spacing:.12em;}
.tt-card-h{margin:2px 0 6px;color:#941935;font-size:1.12em;font-weight:700;font-family:'Noto Serif KR',serif;}
.tt-card-dl{color:#888;font-size:.88em;}
.tt-notes{background:#faf7f8;border-radius:14px;padding:32px 30px;}
.tt-notes-h{font-family:'Noto Serif KR',serif;color:#941935;font-size:1.2em;font-weight:700;margin:0 0 14px;}
.tt-notes-h span{color:#C8A24A;font-size:.7em;letter-spacing:.1em;margin-left:4px;}
.tt-mlist{list-style:none;padding:0;margin:0;color:#444;line-height:1.85;}
.tt-mlist li{padding:8px 0 8px 24px;border-top:1px solid #eee;position:relative;}
.tt-mlist li:first-child{border-top:0;}
.tt-mlist li:before{content:"";position:absolute;left:0;top:16px;width:12px;height:2px;background:#941935;}
.tt-hl{color:#941935;}

/* ===== univ/college_vision.php (대학 사명과 비전) — cv- ===== */
.cv-wrap{max-width:1100px;margin:0 auto;padding:30px 20px 100px;}
.cv-intro{text-align:center;margin-bottom:60px;}
.cv-eyebrow{display:inline-block;color:#C8A24A;letter-spacing:.3em;font-weight:600;font-size:.82rem;}
.cv-h2{font-family:'Noto Serif KR',serif;font-size:2em;color:#1a1a1a;font-weight:700;margin:14px 0 16px;line-height:1.34;}
.cv-lead{color:#666;line-height:1.85;max-width:780px;margin:0 auto;font-size:1.02em;word-break:keep-all;}
.cv-rule{width:64px;height:3px;background:#941935;margin:28px auto 0;border-radius:2px;}
.cv-identity{background:#faf7f8;border-radius:18px;padding:54px 50px;margin-bottom:60px;}
.cv-identity-h{font-family:'Noto Serif KR',serif;font-size:1.45em;color:#941935;font-weight:700;margin:0 0 22px;}
.cv-identity-h span{color:#C8A24A;font-size:.7em;letter-spacing:.1em;margin-left:6px;}
.cv-identity-text{color:#444;line-height:1.95;font-size:1.02em;word-break:keep-all;}
.cv-identity-text p{margin:0 0 16px;}
.cv-identity-text p:last-child{margin-bottom:0;}
.cv-hl{color:#941935;}
.cv-cta-wrap{text-align:center;}
.cv-cta{display:inline-block;padding:14px 36px;letter-spacing:-.3px;}
@media(max-width:680px){.cv-identity{padding:32px 22px;}}

/* ===== 공용 CTA 알약 버튼 (여러 페이지 재사용) ===== */
.hv-cta-row{text-align:center;display:flex;gap:16px;justify-content:center;flex-wrap:wrap;}
.hv-pill{display:inline-block;padding:14px 36px;border-radius:50px;font-weight:700;letter-spacing:-.3px;}
.hv-pill.solid{background:#941935;color:#fff;}
.hv-pill.ghost{background:#fff;color:#941935;border:1px solid #941935;}

/* ===== univ/college_admission.php (대학 입학안내) — ca- ===== */
.ca-wrap{max-width:1180px;margin:0 auto;padding:30px 20px 100px;}
.ca-intro{text-align:center;margin-bottom:54px;}
.ca-eyebrow{display:inline-block;color:#C8A24A;letter-spacing:.3em;font-weight:600;font-size:.82rem;}
.ca-h2{font-family:'Noto Serif KR',serif;font-size:2em;color:#1a1a1a;font-weight:700;margin:14px 0 16px;line-height:1.34;}
.ca-lead{color:#666;line-height:1.85;max-width:780px;margin:0 auto;font-size:1.02em;word-break:keep-all;}
.ca-rule{width:64px;height:3px;background:#941935;margin:28px auto 0;border-radius:2px;}
.ca-tuition{background:#faf7f8;border-radius:16px;padding:44px 40px;margin-bottom:60px;}
.ca-tuition-h{font-family:'Noto Serif KR',serif;font-size:1.4em;color:#1a1a1a;font-weight:700;margin:0 0 22px;}
.ca-tuition-h span{color:#C8A24A;font-size:.72em;letter-spacing:.1em;margin-left:4px;}
.ca-list{list-style:none;padding:0;margin:0;}
.ca-list li{display:flex;gap:20px;padding:14px 0;border-top:1px solid #eee;align-items:flex-start;}
.ca-list li:first-child{border-top:0;}
.ca-list-k{flex:0 0 150px;color:#941935;font-weight:700;font-family:'Noto Serif KR',serif;}
.ca-list-v{flex:1;color:#444;line-height:1.85;word-break:keep-all;}
.ca-muted{color:#888;}
.ca-hl{color:#941935;}
@media(max-width:680px){.ca-tuition{padding:30px 22px;}.ca-list-k{flex:0 0 110px;}}

/* ============================================================
   반응형 사이드 드로어(#sideMenu) 전면 재구성 — sleek burgundy
   기본 테마의 흰 패널/평면 메뉴를 딥 버건디 + 골드 악센트 패널로 교체.
   HTML/JS 구조는 그대로(.qbt 토글, .subnav1>div 아코디언) 유지.
   폭 290px ↔ common.js 의 right:-290px 와 동기화.
   ============================================================ */
#sideMenu{
  width:290px !important; right:-290px;
  display:flex !important; flex-direction:column;
  background:linear-gradient(168deg,#5e0d20 0%,#3c0712 58%,#2a0510 100%) !important;
  overflow:hidden;
}
/* 그림자는 열렸을 때만 — 닫힌 상태(off-canvas)에서 좌측 그림자가 화면 우측에 번져 보이던 문제 해결 */
#sideMenu.hv-open{box-shadow:-26px 0 64px -22px rgba(0,0,0,.6);}
/* 상단 골드 헤어라인 */
#sideMenu:before{content:"";position:absolute;left:0;right:0;top:0;height:3px;
  background:linear-gradient(90deg,#C8A24A,#e8cd8e 50%,#C8A24A);z-index:2;}

/* ── 헤더(학교명 + 닫기) ── */
#sideMenu .side_title{
  position:relative;height:auto !important;background:transparent !important;
  padding:32px 26px 22px;border-bottom:1px solid rgba(255,255,255,.1);cursor:default;
}
#sideMenu .side_title span{
  position:static !important;transform:none !important;max-width:none !important;
  display:block;font-family:'Noto Serif KR',serif;font-size:1.4em;font-weight:700;
  color:#fff !important;letter-spacing:.01em;line-height:1.3;
}
#sideMenu .side_title span:before{
  content:"HARVEST UNIVERSITY";display:block;margin-bottom:8px;
  color:#d9b876;font-size:.5em;font-weight:600;letter-spacing:.32em;font-family:'Noto Sans KR',sans-serif;
}
#sideMenu .side_title i{
  position:absolute !important;right:22px !important;top:30px !important;
  width:34px;height:34px;line-height:34px;text-align:center;border-radius:50%;
  font-size:1em !important;color:rgba(255,255,255,.7) !important;
  background:rgba(255,255,255,.08);transition:.2s;cursor:pointer;
}
#sideMenu .side_title i:hover{background:rgba(200,162,74,.25);color:#fff !important;transform:rotate(90deg);}

/* ── 로그인/회원 영역 ── */
#sideMenu #gnba{background:transparent !important;text-align:left !important;padding:20px 26px 8px !important;}
#sideMenu #gnba > span{display:block;margin-bottom:4px;color:#f0d9a8;font-family:'Noto Serif KR',serif;font-size:1.05em;font-weight:700;}
#sideMenu #gnba > div{display:flex;gap:10px;margin-top:12px !important;}
#sideMenu #gnba a{
  flex:1;display:block;margin:0 !important;padding:8px 0 !important;border-radius:9px;
  text-align:center;font-size:.92em !important;font-weight:600;letter-spacing:-.2px;transition:.2s;
  background:transparent !important;border:1px solid rgba(255,255,255,.22);color:#f2e7d6 !important;
}
#sideMenu #gnba a:first-child{
  background:linear-gradient(120deg,#d8b264,#c79b46) !important;border-color:transparent;color:#3a0a14 !important;
  box-shadow:0 8px 18px -10px rgba(200,162,74,.7);
}
#sideMenu #gnba a:first-child:hover{filter:brightness(1.06);}
#sideMenu #gnba a:hover{border-color:#C8A24A;color:#fff !important;}

/* ── 메뉴 리스트(스크롤 영역) ── */
#sideMenu .navi_bg{flex:1;min-height:0;overflow-y:auto;width:100% !important;}
#sideMenu .navi_bg::-webkit-scrollbar{width:5px;}
#sideMenu .navi_bg::-webkit-scrollbar-thumb{background:rgba(200,162,74,.4);border-radius:3px;}
#sideMenu .nav{height:auto !important;overflow:visible !important;padding:12px 0 40px !important;}
#sideMenu .navi_set{display:block !important;margin:0 !important;padding:0 !important;text-align:left !important;}
#sideMenu .navi_set > div{
  position:relative;height:auto !important;line-height:1.4 !important;
  padding:15px 26px !important;text-indent:0 !important;
  background:transparent !important;border-bottom:1px solid rgba(255,255,255,.07) !important;
  color:rgba(255,255,255,.9) !important;font-size:1.02em !important;font-weight:500 !important;
  letter-spacing:-.2px;transition:color .2s,background .2s;
}
#sideMenu .navi_set > div:before{
  content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);
  width:3px;height:0;background:linear-gradient(#C8A24A,#e3c178);border-radius:0 2px 2px 0;
  transition:height .26s cubic-bezier(.2,.7,.2,1);
}
#sideMenu .navi_set > div:hover{color:#f0d9a8 !important;background:rgba(255,255,255,.05) !important;}
#sideMenu .navi_set > div:hover:before{height:58%;}
#sideMenu .navi_set > div > a{display:block;height:auto !important;line-height:1.4 !important;color:inherit;}
/* chevron: 인라인 float/margin 무시하고 행 상하 정중앙 고정 */
#sideMenu .navi_set > div i{position:absolute !important;right:22px;top:50% !important;margin:0 !important;float:none !important;transform:translateY(-50%);color:rgba(240,217,168,.6) !important;transition:.25s;}

/* ── 2차 서브메뉴 ── */
#sideMenu .navi_set ul li{border-bottom:1px solid rgba(255,255,255,.05) !important;}
#sideMenu .navi_set ul li:last-child{border-bottom:0 !important;}
#sideMenu .navi_set ul li a{
  height:auto !important;line-height:1.4 !important;text-indent:0 !important;
  padding:12px 26px 12px 40px !important;background:transparent !important;
  color:rgba(255,255,255,.6) !important;font-size:.93em !important;position:relative;transition:.2s;
}
/* 디자인 대시 하나(HTML 텍스트 "- " 는 제거함) — 세로 정중앙 */
#sideMenu .navi_set ul li a:before{content:"";position:absolute;left:26px;top:50%;transform:translateY(-50%);width:8px;height:1px;background:rgba(200,162,74,.7);}
#sideMenu .navi_set ul li a:hover{color:#fff !important;background:rgba(200,162,74,.14) !important;}
/* 서브 펼침 시 배경 살짝 음영 (펼침 동작은 common.js jQuery slideToggle) */
#sideMenu .subnav{background:rgba(0,0,0,.2);}

/* ── 3차 서브메뉴 — 2차의 하위임을 들여쓰기/마커/음영으로 구분 ── */
#sideMenu .navi_set .subnav3{display:block !important;background:rgba(0,0,0,.22) !important;margin:0 !important;padding:0 !important;list-style:none;}
#sideMenu .navi_set .subnav .subnav3 > li{border-bottom:1px solid rgba(255,255,255,.045) !important;}
#sideMenu .navi_set .subnav .subnav3 > li:last-child{border-bottom:0 !important;}
#sideMenu .navi_set .subnav .subnav3 > li > a{
  padding:10px 26px 10px 58px !important;color:rgba(255,255,255,.5) !important;font-size:.88em !important;
}
/* 3차 마커 — 더 안쪽에, 채워진 작은 점(가지 끝) */
#sideMenu .navi_set .subnav .subnav3 > li > a:before{content:"" !important;left:42px !important;width:5px;height:5px;border-radius:50%;background:rgba(200,162,74,.55) !important;}
#sideMenu .navi_set .subnav .subnav3 > li > a:hover{color:#fff !important;background:rgba(200,162,74,.14) !important;}

/* ── 오버레이 ── */
#back_cover{position:fixed !important;background:rgba(22,4,9,.55) !important;}

/* ============================================================
   국제교육지원 글로벌 페이지(global/*) — gl-
   기존 "border-top 띠 카드"(AI틱) → 에디토리얼 넘버드 행 / 정의형 그리드로 교체.
   타 페이지(vision·staff·directors) 디자인 언어와 통일.
   ============================================================ */
/* 섹션 헤더 (공통) */
.gl-sec-h{font-family:'Noto Serif KR',serif;font-size:1.45em;color:#1a1a1a;font-weight:700;padding-bottom:14px;border-bottom:2px solid #941935;margin:0 0 6px;}
.gl-sec-h .en{color:#C8A24A;font-size:.62em;letter-spacing:.12em;margin-left:8px;font-weight:600;}

/* 넘버드 에디토리얼 행 (센터의 역할 등) */
.gl-roles{list-style:none;padding:0;margin:0;}
.gl-role{display:flex;align-items:flex-start;gap:26px;padding:30px 16px;border-bottom:1px solid #ececec;transition:background .25s ease;}
.gl-role:hover{background:rgba(200,162,74,.07);}
.gl-role-no{flex:0 0 64px;font-family:'Noto Serif KR',serif;font-size:2.7em;font-weight:700;color:#ece1c8;line-height:.95;letter-spacing:-2px;}
.gl-role-body{flex:1;min-width:0;}
.gl-role-h{display:flex;align-items:center;gap:11px;margin:2px 0 9px;font-family:'Noto Serif KR',serif;font-size:1.22em;color:#1a1a1a;font-weight:700;letter-spacing:-.3px;line-height:1.25;}
.gl-role-h i{color:#941935;font-size:.86em;}
.gl-role-p{margin:0;color:#555;line-height:1.78;font-size:.97em;word-break:keep-all;}
@media(max-width:680px){
  .gl-role{gap:16px;padding:22px 6px;}
  .gl-role-no{flex:0 0 44px;font-size:2.1em;}
  .gl-role-h{font-size:1.1em;}
}

/* 정의형 정보 그리드 (교회 안내 등) */
.gl-info{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);border-top:2px solid #1a1a1a;position:relative;}
.gl-info:after{content:"";position:absolute;left:50%;top:0;bottom:0;width:1px;background:#ececec;pointer-events:none;}
.gl-info-row{display:flex;align-items:flex-start;gap:18px;padding:26px 24px;border-bottom:1px solid #ececec;}
.gl-info-ic{flex:0 0 46px;width:46px;height:46px;line-height:46px;text-align:center;border-radius:50%;background:#faf3f5;color:#941935;font-size:1.05em;}
.gl-info-body{flex:1;min-width:0;}
.gl-info-lbl{display:block;font-family:'Noto Serif KR',serif;color:#941935;font-size:1.05em;font-weight:700;margin-bottom:5px;}
.gl-info-val{margin:0;color:#555;line-height:1.65;font-size:.95em;word-break:keep-all;}
@media(max-width:680px){
  .gl-info{grid-template-columns:1fr;}
  .gl-info:after{display:none;}
  .gl-info-row{padding:22px 8px;}
}

/* ============================================================
   공용 모달 (자료 준비중 등) — alert 대체, 톤앤매너 통일
   ============================================================ */
.hv-modal{position:fixed;inset:0;z-index:99999999;display:none;align-items:center;justify-content:center;padding:20px;}
.hv-modal.on{display:flex;}
.hv-modal-dim{position:absolute;inset:0;background:rgba(26,6,12,.55);backdrop-filter:blur(3px);animation:hvModalDim .25s ease;}
.hv-modal-box{position:relative;width:min(92vw,400px);background:#fff;border-radius:18px;padding:44px 36px 32px;text-align:center;box-shadow:0 30px 70px -18px rgba(40,8,16,.45);animation:hvModalPop .32s cubic-bezier(.2,.8,.2,1);overflow:hidden;}
.hv-modal-box:before{content:none;}
.hv-modal-ic{width:66px;height:66px;line-height:66px;margin:2px auto 18px;border-radius:50%;background:#faf3f5;color:#941935;font-size:1.55em;}
.hv-modal-tit{font-family:'Pretendard',serif;font-size:1.4em;color:#1a1a1a;font-weight:700;letter-spacing:-.3px;margin:0 0 12px;}
.hv-modal-msg{color:#666;line-height:1.78;font-size:.97em;margin:0 0 28px;word-break:keep-all;}
.hv-modal-msg b{color:#941935;font-weight:700;}
.hv-modal-close{display:inline-block;background:#941935;color:#fff;border:0;border-radius:50px;padding:12px 42px;font-size:.95em;font-weight:700;font-family:inherit;letter-spacing:-.2px;cursor:pointer;transition:background .2s;}
.hv-modal-close:hover{background:#6f0c1f;}
@keyframes hvModalDim{from{opacity:0}to{opacity:1}}
@keyframes hvModalPop{from{opacity:0;transform:translateY(16px) scale(.96)}to{opacity:1;transform:none}}
/* 준비중(soon) 카드 톤 */
.tt-card.is-soon{opacity:.72;}
.tt-card.is-soon .tt-card-dl{color:#a98a52;}

/* 공용 양식 다운로드 버튼 (입학원서 등) */
.hv-dl-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;}
.hv-dlbtn{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid #e3dcdd;border-radius:12px;padding:17px 20px;color:#1a1a1a;transition:.22s ease;cursor:pointer;}
.hv-dlbtn:hover{border-color:#941935;box-shadow:0 12px 26px -16px rgba(148,25,53,.4);transform:translateY(-2px);}
.hv-dlbtn .ic{flex:0 0 42px;width:42px;height:42px;line-height:42px;text-align:center;border-radius:10px;background:#faf3f5;color:#941935;font-size:1.05em;}
.hv-dlbtn .tx{flex:1;min-width:0;}
.hv-dlbtn .tx b{display:block;font-size:1em;font-weight:700;color:#1a1a1a;line-height:1.3;}
.hv-dlbtn .tx span{font-size:.83em;color:#999;}
.hv-dlbtn .dl{flex:0 0 auto;color:#941935;font-size:.92em;font-weight:700;}
.hv-dlbtn.is-soon{opacity:.72;}
.hv-dlbtn.is-soon .ic{background:#f6f1e8;color:#a98a52;}
.hv-dlbtn.is-soon .dl{color:#a98a52;}

/* ============================================================
   모바일 패딩/간격 보정 묶음 (#10 staff · #12 library · #13 thesis)
   ============================================================ */
@media (max-width:680px){
  /* #13 논문템플릿 카드: 2열 유지 + 패딩 축소 */
  .tt-grid{gap:10px;}
  .tt-card{padding:18px 14px !important;}
  .tt-card-ic{font-size:1.25em !important;margin-bottom:6px !important;}
  .tt-card-h{font-size:1.02em !important;}
  /* #12 전자도서관 카드 패딩 축소 */
  .lib-cards{gap:12px;margin-bottom:40px;}
  .lib-card{padding:22px 18px !important;}
  .lib-grid{gap:12px;}
  .lib-step{padding:18px 16px !important;}
  /* #10 교직원: 교수진 2열 + 학과 리스트 실선을 숫자 옆으로 이동(1열) */
  .st-fac-grid{grid-template-columns:1fr 1fr !important;gap:16px 12px !important;}
  .st-fac-name{font-size:1.02em !important;}
  /* 중앙선(left:50%) → 번호(좌패딩28+번호56) 우측 gap 중앙(≈95px)으로 이동 */
  .hv-dept-list:after{left:95px !important;}
}
