@charset "utf-8";
/* ==========================================================================
   대전신학대학교 상세 페이지 (contents_new, 2026 개편)
   - include/m2026_page_head.php 에서 main2026.css, board2026.css 다음에 로드
   - .m26p--modern : 이윰빌더 정리본 (Bootstrap 5.3 클래스)
   - .m26p--legacy : 기존 contents 본문 (contants.css 클래스)
   ========================================================================== */

/* ---------- 서브 상단 보조 ---------- */
.m26 .m26-subhead__group { margin: 18px 0 0; }
.m26 .m26-subhead__title { margin: 4px 0 0; }
.m26-ext { font-size: 12px; opacity: .7; }

.m26-subtabs2 { margin: 0 0 28px; }
.m26-subtabs2 ul { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
.m26 .m26-subtabs2 a {
    display: inline-flex; align-items: center; height: 38px; padding: 0 16px;
    border: 1px solid var(--line); border-radius: 999px; background: #fff;
    color: var(--ink-2); font-size: 14px; font-weight: 600; transition: border-color .2s, color .2s, background .2s;
}
.m26 .m26-subtabs2 a:hover { border-color: var(--brand); color: var(--brand); }
.m26 .m26-subtabs2 a.is-active { background: var(--ink); border-color: var(--ink); color: #fff; }

.m26p-back { margin: 0 0 20px; font-size: 14px; }
.m26 .m26p-back a { display: inline-flex; align-items: center; gap: 6px; color: var(--muted); }
.m26 .m26p-back a:hover { color: var(--brand); }

/* ---------- 본문 공통 ---------- */
.m26p-body {
    --bs-primary: #7a1408; --bs-primary-rgb: 122, 20, 8;
    --bs-link-color: #7a1408; --bs-link-color-rgb: 122, 20, 8;
    --bs-link-hover-color: #560d05; --bs-link-hover-color-rgb: 86, 13, 5;
    --bs-body-font-family: inherit; --bs-body-color: var(--ink); --bs-border-color: var(--line);
    --bs-light-rgb: 247, 244, 239;
    font-size: 16px; line-height: 1.75; color: var(--ink); word-break: keep-all; overflow-wrap: anywhere;
}
.m26p-body::after { content: ""; display: block; clear: both; }
.m26p-body p { margin: 0 0 1em; }
/* 제목 색은 상속 : .text-white, .bg-primary 같은 색 배경 머리글 안에서 흰 글자가 유지되도록 */
.m26p-body h1, .m26p-body h2, .m26p-body h3, .m26p-body h4, .m26p-body h5, .m26p-body h6 { margin: 0 0 .6em; font-weight: 700; line-height: 1.4; color: inherit; }
.m26p-body h1 { font-size: 28px; } .m26p-body h2 { font-size: 24px; } .m26p-body h3 { font-size: 20px; }
.m26p-body h4 { font-size: 18px; } .m26p-body h5 { font-size: 17px; } .m26p-body h6 { font-size: 16px; }
.m26p-body ul:not([class]), .m26p-body ol:not([class]) { margin: 0 0 1em; padding-left: 1.4em; }
.m26p-body ul:not([class]) { list-style: disc; } .m26p-body ol:not([class]) { list-style: decimal; }
.m26p-body a:not([class]) { color: var(--brand); text-decoration: underline; text-underline-offset: 3px; }
.m26p-body .text-white a:not([class]), .m26p-body [class*="bg-primary"] a:not([class]), .m26p-body [class*="bg-dark"] a:not([class]),
.m26p-body [class*="bg-success"] a:not([class]), .m26p-body [class*="bg-danger"] a:not([class]), .m26p-body [class*="bg-secondary"] a:not([class]) { color: inherit; }
.m26p-body img { max-width: 100%; height: auto; }
.m26p-body iframe, .m26p-body video, .m26p-body embed, .m26p-body object { max-width: 100%; }
.m26p-body strong, .m26p-body b { font-weight: 700; }
.m26p-h2 { margin: 40px 0 16px !important; padding-left: 14px; border-left: 4px solid var(--brand); font-size: 22px !important; }

/* 소제목 (기존 사이트 .subject1 / 이윰 정리본에서도 사용) */
.m26p-body .subject1 {
    display: flex !important; align-items: center; gap: 10px; float: none !important;
    width: auto !important; height: auto !important; margin: 36px 0 14px !important; padding: 0 !important;
    background: none !important; border: 0 !important; text-align: left !important;
    color: var(--ink) !important; font-size: 19px !important; font-weight: 700; line-height: 1.4;
}
.m26p-body .subject1::before { content: ""; flex: none; width: 4px; height: 20px; border-radius: 2px; background: var(--brand); }
.m26p-body > .subject1:first-child, .m26p-body .contants > .subject1:first-child, .m26p-body .col-12 > .subject1:first-child { margin-top: 0 !important; }
.m26p-body .subject1 .subject_label { margin: 0 !important; color: inherit !important; font-size: inherit !important; font-weight: inherit !important; vertical-align: baseline !important; }
.m26p-body .subject_ico2 { display: none !important; }
.m26p-body .subject2 { display: inline-block; margin: 8px 0 6px; color: var(--brand); font-size: 16px; font-weight: 700; }

/* 표 */
.m26p-body table { max-width: 100%; border-collapse: collapse; }
.m26p-body .iptTblX, .m26p-body .table {
    width: 100% !important; margin: 0 0 20px; border-collapse: collapse;
    border-top: 2px solid var(--ink) !important; border-bottom: 1px solid var(--line) !important; font-size: 15px;
}
.m26p-body .iptTblX th, .m26p-body .table th, .m26p-body .table thead td {
    padding: 12px 10px !important; background: var(--bg-soft) !important; color: var(--ink-2) !important;
    border: 1px solid var(--line) !important; font-size: 14.5px !important; font-weight: 700; line-height: 1.5 !important; text-align: center; vertical-align: middle;
}
.m26p-body .iptTblX td, .m26p-body .table td {
    padding: 11px 12px !important; color: var(--ink) !important; border: 1px solid var(--line) !important;
    font-size: 15px !important; line-height: 1.6 !important; vertical-align: middle;
}
.m26p-body .iptTblX tr > :first-child, .m26p-body .table tr > :first-child { border-left: 0 !important; }
.m26p-body .iptTblX tr > :last-child, .m26p-body .table tr > :last-child { border-right: 0 !important; }
.m26p-body .T1_TT, .m26p-body .T1_BB, .m26p-body .T_L { border-color: var(--line) !important; }
.m26p-body .table-responsive, .m26p-body .m26p-scroll { overflow-x: auto; -webkit-overflow-scrolling: touch; margin-bottom: 20px; }
.m26p-body .table-responsive > .table { margin-bottom: 0; }
.m26p-body .table-light, .m26p-body .table-light > th, .m26p-body .table-light > td { --bs-table-bg: var(--bg-soft); }

/* 내부 링크 버튼 (기존 a.link, .ipsi, 이윰 .btn) */
.m26p-body a.link, .m26p-body .ipsi {
    display: inline-flex; align-items: center; gap: 4px; padding: 3px 10px; margin: 2px 0;
    border-radius: 6px; background: var(--brand) !important; color: #fff !important;
    font-size: 13px; font-weight: 600; text-decoration: none !important; line-height: 1.5;
}
.m26p-body a.link:hover, .m26p-body .ipsi:hover { background: var(--brand-dark) !important; color: #fff !important; }
.m26p-body .btn { --bs-btn-border-radius: 10px; font-weight: 600; }
.m26p-body .btn-primary { --bs-btn-bg: #7a1408; --bs-btn-border-color: #7a1408; --bs-btn-hover-bg: #560d05; --bs-btn-hover-border-color: #560d05; --bs-btn-active-bg: #560d05; --bs-btn-active-border-color: #560d05; }
.m26p-body .btn-outline-primary { --bs-btn-color: #7a1408; --bs-btn-border-color: #7a1408; --bs-btn-hover-bg: #7a1408; --bs-btn-hover-border-color: #7a1408; --bs-btn-active-bg: #7a1408; }

/* 이윰 정리본 래퍼 정리 (Bootstrap .container 중첩 해제) */
.m26p-body .sub-page { padding: 0 !important; }
.m26p-body .container, .m26p-body .container-fluid { max-width: none; padding-left: 0; padding-right: 0; }
.m26p-body .text-navy { color: var(--brand) !important; }

/* 카드 */
.m26p-body .card { --bs-card-border-color: var(--line); --bs-card-border-radius: 14px; --bs-card-inner-border-radius: 13px; --bs-card-cap-bg: var(--bg-soft); overflow: hidden; }
.m26p-body .card-header { padding: 14px 20px; border-bottom-color: var(--line); }
.m26p-body .card-header h4, .m26p-body .card-header h5, .m26p-body .card-header h6 { margin: 0; font-size: 17px; }
.m26p-body .card-body { padding: 20px; }
.m26p-body .card.border-start { border-left-width: 4px !important; }
.m26p-body .list-group-item { padding: 12px 20px; border-color: var(--line); }
.m26p-body .alert { border-radius: 12px; }
.m26p-body .badge { font-weight: 600; }

/* ---------- 기존 본문 반응형 보정 (.m26p--legacy) ---------- */
.m26p--legacy .m26p-body [style*="width"] { max-width: 100%; }
.m26p--legacy .m26p-body div[class$="visual"], .m26p--legacy .m26p-body div[class*="visual "] {
    background-size: auto !important; margin-top: 0 !important; overflow: visible !important;
}
.m26p--legacy .m26p-body .contants { width: auto !important; }
.m26p--legacy .m26p-body p { margin: 0 0 .8em; }
.m26p--legacy .m26p-body td p:last-child, .m26p--legacy .m26p-body th p:last-child { margin-bottom: 0; }
.m26p--legacy .m26p-body .file1 { color: var(--ink) !important; }
.m26p--legacy .m26p-body img[usemap] { max-width: none; }

/* 기존 '사진 + 오른쪽 본문' 블록 (.xxxvisual : 왼쪽 배경사진, 본문 230px 들여쓰기) */
.m26p--legacy .m26p-body li, .m26p--legacy .m26p-body dd, .m26p--legacy .m26p-body dt { font-size: 15px !important; line-height: 1.75 !important; }
.m26p--legacy .m26p-body [class$="visual"] { min-height: 0; }
.m26p--legacy .m26p-body [class$="visual"] .subject1 { margin-left: 230px !important; }
.m26p--legacy .m26p-body [class$="visual"] > .subject1:first-child { margin-top: 0 !important; }
.m26p--legacy .m26p-body [class$="visual"] li { color: var(--ink) !important; }

/* 2열 배치용 표 + 교수 카드 (contents_330 등) : 두 칸을 같은 폭으로, 카드는 칸 폭에 맞춤 */
.m26p--legacy .m26p-body table[border="0"][cellspacing="5"] { width: 100% !important; table-layout: fixed; border-collapse: separate; border-spacing: 0; }
.m26p--legacy .m26p-body table[border="0"][cellspacing="5"] > tbody > tr > td { vertical-align: top; padding: 0 12px 24px !important; }
.m26p--legacy .m26p-body table[border="0"][cellspacing="5"] > tbody > tr > td:first-child { padding-left: 0 !important; }
.m26p--legacy .m26p-body table[border="0"][cellspacing="5"] > tbody > tr > td:last-child:not(:first-child) { padding-right: 0 !important; }
.m26p--legacy .m26p-body .iptTblX.tb_add { height: 100%; margin: 0; }
.m26p--legacy .m26p-body .iptTblX.tb_add > table { width: 100% !important; table-layout: fixed; }
.m26p--legacy .m26p-body .iptTblX.tb_add > table col:first-child { width: 130px; }
.m26p--legacy .m26p-body .iptTblX.tb_add > table col:last-child { width: auto; }
.m26p--legacy .m26p-body .iptTblX.tb_add td[rowspan] { text-align: center; vertical-align: top; padding-top: 16px !important; }
.m26p--legacy .m26p-body .iptTblX.tb_add td[rowspan] img { width: 100px; height: auto; border-radius: 6px; }
.m26p--legacy .m26p-body .iptTblX.tb_add .file1 { vertical-align: top; overflow-wrap: anywhere; }
.m26p--legacy .m26p-body .detail_click { margin-top: 10px; border-radius: 6px; font-size: 13.5px; }

@media (max-width: 767px) {
    .m26p-body { font-size: 15.5px; }
    .m26p-body h1 { font-size: 23px; } .m26p-body h2 { font-size: 20px; } .m26p-body h3 { font-size: 18px; }
    .m26p-body .subject1 { font-size: 17px !important; margin-top: 28px !important; }
    .m26-subtabs2 { margin-bottom: 20px; }
    .m26 .m26-subtabs2 a { height: 34px; padding: 0 13px; font-size: 13px; }
    /* 넓은 표는 가로 스크롤 */
    .m26p-body .iptTblX, .m26p--legacy .m26p-body table { display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; }
    .m26p-body .iptTblX th, .m26p-body .iptTblX td, .m26p-body .table th, .m26p-body .table td { font-size: 14px !important; padding: 9px 8px !important; }
    .m26p--legacy .m26p-body div[class$="visual"] { background-image: none !important; padding-left: 0 !important; }
    .m26p--legacy .m26p-body [class$="visual"] li, .m26p--legacy .m26p-body [class$="visual"] h3, .m26p--legacy .m26p-body [class$="visual"] h4,
    .m26p--legacy .m26p-body [class$="visual"] dl, .m26p--legacy .m26p-body [class$="visual"] p { padding-left: 0 !important; margin-left: 0 !important; }
    .m26p--legacy .m26p-body [class$="visual"] .subject1 { margin-left: 0 !important; }
    .m26p--legacy .m26p-body [style*="float"] { float: none !important; }
    /* 2열 배치용 표(교수소개 등)는 1열로 - width 속성 유무와 관계없이 */
    .m26p--legacy .m26p-body table[border="0"][cellspacing="5"] { display: block; overflow: visible; }
    .m26p--legacy .m26p-body table[border="0"][cellspacing="5"] > tbody,
    .m26p--legacy .m26p-body table[border="0"][cellspacing="5"] > tbody > tr,
    .m26p--legacy .m26p-body table[border="0"][cellspacing="5"] > tbody > tr > td { display: block; width: auto !important; padding: 0 0 16px !important; }
    .m26p--legacy .m26p-body .iptTblX.tb_add { display: block; overflow: visible; }
    .m26p--legacy .m26p-body .iptTblX.tb_add > table col:first-child { width: 112px; }
    .m26p--legacy .m26p-body .iptTblX.tb_add > table { display: table; }
    .m26p--legacy .m26p-body .iptTblX.tb_add td[rowspan] img { width: 84px; }
    .m26p--legacy .m26p-body .addheight { height: auto !important; }
    .m26p-body .card-body { padding: 16px; }
}

/* ---------- 총장 인사말 (contents_100) ---------- */
.m26p-body .president-greeting { padding: 0 0 20px; line-height: 1.85; color: var(--ink); }
.m26p-body .president-greeting picture, .m26p-body .president-greeting picture img { display: block; max-width: 100%; height: auto; margin: 0 auto 32px; border-radius: 16px; }
.m26p-body .president-greeting .greeting-header { text-align: center; margin-bottom: 36px; padding-bottom: 24px; border-bottom: 1px solid var(--line); }
.m26p-body .president-greeting .greeting-title { margin: 0 0 8px; font-size: 32px; font-weight: 700; color: var(--ink); letter-spacing: -0.03em; }
.m26p-body .president-greeting .greeting-subtitle { margin: 0; font-size: 18px; color: var(--brand); font-weight: 600; }
.m26p-body .president-greeting .greeting-content { max-width: 860px; margin: 0 auto; font-size: 17px; }
.m26p-body .president-greeting .greeting-content p { margin: 0 0 1.1em; }
.m26p-body .president-greeting .greeting-content .first-greeting { font-weight: 600; color: var(--brand); font-size: 18px; }
.m26p-body .president-greeting .vision-section { margin: 32px 0; padding: 28px 30px; border-radius: 16px; background: var(--bg-soft); border-left: 4px solid var(--brand); }
.m26p-body .president-greeting .vision-intro { margin-bottom: 12px; font-weight: 700; color: var(--brand); }
.m26p-body .president-greeting .vision-item { padding: 14px 0; border-bottom: 1px solid var(--line); }
.m26p-body .president-greeting .vision-item:last-child { border-bottom: 0; }
.m26p-body .president-greeting .vision-number { font-weight: 700; color: var(--brand); }
.m26p-body .president-greeting .vision-title { font-weight: 700; }
.m26p-body .president-greeting .vision-desc { margin-top: 6px; padding-left: 0; color: var(--ink-2); font-size: 16px; }
.m26p-body .president-greeting .closing-section { margin: 32px 0; padding: 28px 30px; border-radius: 16px; background: linear-gradient(120deg, var(--brand-dark), var(--brand)); color: #fff; }
.m26p-body .president-greeting .closing-section p { color: #fff; margin-bottom: .8em; }
.m26p-body .president-greeting .closing-section p:last-child { margin-bottom: 0; }
.m26p-body .president-greeting .signature-section { max-width: 860px; margin: 36px auto 0; padding-top: 20px; border-top: 1px solid var(--line); text-align: right; }
.m26p-body .president-greeting .signature-date { color: var(--muted); }
.m26p-body .president-greeting .signature-name { margin-top: 4px; font-size: 19px; font-weight: 700; }
.m26p-body .president-greeting .highlight-text { padding: 1px 4px; border-radius: 4px; background: #fdecc8; font-weight: 600; }
.m26p-body .president-greeting .scripture-quote { color: var(--brand); font-weight: 600; }

@media (max-width: 767px) {
    .m26p-body .president-greeting .greeting-title { font-size: 25px; }
    .m26p-body .president-greeting .greeting-content { font-size: 16px; }
    .m26p-body .president-greeting .vision-section, .m26p-body .president-greeting .closing-section { padding: 20px 18px; }
}
.m26p-body .subject1 + br { display: none; }

/* ---------- 교수 상세 (contents_330_x) : 프로필 블록과 학력·경력 목록을 같은 폭(본문 100%)으로 ---------- */
.m26p--legacy .m26p-body .board_wrap { max-width: none; }
.m26p--legacy .m26p-body .board_wrap > br { display: none; }
.m26p--legacy .m26p-body .prof_detail_view {
    display: flex; align-items: center; gap: 28px; box-sizing: border-box;
    width: 100%; margin: 0 0 24px; padding: 28px 32px;
    background: var(--bg-soft); border: 0; border-radius: 18px;
}
.m26p--legacy .m26p-body .prof_detail_img { display: block; flex: none; width: 120px; padding: 0; }
.m26p--legacy .m26p-body .prof_detail_img img { display: block; width: 120px; height: auto; border-radius: 12px; box-shadow: 0 6px 18px rgba(28, 31, 38, .12); }
.m26p--legacy .m26p-body .prof_detail_info { display: block; flex: 1; min-width: 0; }
.m26p--legacy .m26p-body .prof_detail_info > br { display: none; }
.m26p--legacy .m26p-body .prof_detail_info .prof_detail_name { margin: 0 0 14px; color: var(--ink); font-size: 30px; font-weight: 700; line-height: 1.3; letter-spacing: -0.02em; }
.m26p--legacy .m26p-body .prof_detail_info .prof_detail_name span { margin-left: 6px; color: var(--muted); font-size: 17px; font-weight: 500; letter-spacing: 0; }
.m26p--legacy .m26p-body .prof_detail_info .prof_detail_name span br { display: none; }
.m26p--legacy .m26p-body .prof_detail_info ul { display: flex; flex-wrap: wrap; gap: 6px 24px; margin: 0; padding: 0; list-style: none; font-size: 15px !important; }
.m26p--legacy .m26p-body .prof_detail_info ul li { padding: 0; font-size: 15px !important; }
.m26p--legacy .m26p-body .prof_detail_info ul strong { color: var(--muted); font-weight: 600; }

.m26p--legacy .m26p-body ol.prof_contents { max-width: none; width: 100%; margin: 0; padding: 0; }
.m26p--legacy .m26p-body ol.prof_contents > li {
    margin: 0 0 20px; padding: 24px 28px; box-sizing: border-box;
    background: #fff; border: 1px solid var(--line); border-radius: 16px; box-shadow: none;
}
.m26p--legacy .m26p-body ol.prof_contents > li:before {
    display: block; margin-bottom: 6px; padding-bottom: 12px; border-bottom: 1px solid var(--line);
    color: var(--ink); font-size: 18px; font-weight: 700;
}
.m26p--legacy .m26p-body ol.prof_contents ul { margin-top: 8px; padding-left: 0; }
.m26p--legacy .m26p-body ol.prof_contents ul > li { padding: 9px 0 9px 18px; border-bottom: 1px solid #f0ece6; font-size: 15px !important; line-height: 1.7 !important; color: var(--ink); }
.m26p--legacy .m26p-body ol.prof_contents ul > li:before { left: 2px; color: var(--brand); }
.m26p--legacy .m26p-body ol.prof_contents > li:nth-child(n+3) ul { margin-top: 18px; padding-left: 20px; border-left: 3px solid var(--brand); }
.m26p--legacy .m26p-body ol.prof_contents > li:nth-child(n+3) ul:before { margin-left: -23px; margin-bottom: 8px; background: var(--bg-soft); border-left-color: var(--brand); color: var(--ink); font-size: 16px; }

@media (max-width: 767px) {
    .m26p--legacy .m26p-body .prof_detail_view { gap: 16px; padding: 20px 18px; border-radius: 14px; }
    .m26p--legacy .m26p-body .prof_detail_img, .m26p--legacy .m26p-body .prof_detail_img img { width: 84px; }
    .m26p--legacy .m26p-body .prof_detail_info .prof_detail_name { margin-bottom: 10px; font-size: 22px; }
    .m26p--legacy .m26p-body .prof_detail_info .prof_detail_name span { display: block; margin: 2px 0 0; font-size: 14px; }
    .m26p--legacy .m26p-body .prof_detail_info ul { flex-direction: column; gap: 2px; }
    .m26p--legacy .m26p-body .prof_detail_info ul li { font-size: 14px !important; overflow-wrap: anywhere; }
    .m26p--legacy .m26p-body ol.prof_contents > li { padding: 18px 16px; border-radius: 14px; }
    .m26p--legacy .m26p-body ol.prof_contents > li:before { font-size: 17px; }
    .m26p--legacy .m26p-body ol.prof_contents ul > li { font-size: 14.5px !important; }
    .m26p--legacy .m26p-body ol.prof_contents > li:nth-child(n+3) ul { padding-left: 14px; }
    .m26p--legacy .m26p-body ol.prof_contents > li:nth-child(n+3) ul:before { margin-left: -17px; }
}

/* ---------- 열이 많은 표 → 모바일 카드 목록 (js/page2026.js) ---------- */
.m26tc { display: none; }
@media (max-width: 767px) {
    .m26p-body .m26tc-src { display: none !important; }
    .m26tc { display: block; margin: 0 0 24px; }
    .m26p-body .m26tc__group {
        position: sticky; top: calc(var(--header-h) + 6px); z-index: 2;
        margin: 18px 0 8px !important; padding: 8px 14px; border-radius: 10px;
        background: var(--ink); color: #fff; font-size: 14px; font-weight: 700; line-height: 1.4;
    }
    .m26p-body .m26tc__group:first-child { margin-top: 0 !important; }
    .m26p-body .m26tc__list { display: grid; gap: 8px; margin: 0; padding: 0; list-style: none; }
    .m26tc__item { padding: 14px 16px; border: 1px solid var(--line); border-radius: 12px; background: #fff; }
    .m26tc__item--note { background: var(--bg-soft); font-size: 14px; font-weight: 600; text-align: center; }
    .m26tc__title { display: block; font-size: 15.5px; font-weight: 700; line-height: 1.5; color: var(--ink); }
    .m26tc__sub { display: block; margin-top: 2px; font-size: 13px; line-height: 1.5; color: var(--muted); }
    .m26tc__meta { display: flex; flex-wrap: wrap; gap: 6px; margin: 10px 0 0; }
    .m26tc__meta > div { display: inline-flex; align-items: baseline; gap: 6px; max-width: 100%; padding: 4px 10px; border-radius: 8px; background: var(--bg-soft); font-size: 13px; line-height: 1.5; }
    .m26tc__meta dt { flex: none; color: var(--muted); font-weight: 600; }
    .m26tc__meta dd { margin: 0; color: var(--ink); font-weight: 600; overflow-wrap: anywhere; }
    .m26tc__meta dd p { margin: 0; }
    .m26tc__meta dd a.link, .m26tc__meta dd .ipsi { margin: 0; }
}
@media (max-width: 767px) {
    .m26tc__tag { display: inline-block; margin: 0 0 6px; padding: 2px 8px; border-radius: 6px; background: var(--brand-soft); color: var(--brand); font-size: 12px; font-weight: 700; line-height: 1.5; }
}
@media (max-width: 767px) {
    /* 짧은 항목은 한 줄 : [묶음] 제목 ……… 정보 */
    .m26tc__item { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; padding: 12px 14px; }
    .m26tc__tag { order: 0; margin: 0; }
    .m26tc__title { order: 1; flex: 1 1 auto; min-width: 40%; }
    .m26tc__sub { order: 2; flex-basis: 100%; margin-top: 0; }
    .m26tc__meta { order: 3; margin: 0 0 0 auto; justify-content: flex-end; }
    .m26tc__sub ~ .m26tc__meta { flex-basis: 100%; margin: 6px 0 0; justify-content: flex-start; }
    .m26tc__item--note { display: block; }
}
@media (max-width: 767px) {
    .m26tc__item--wide .m26tc__meta { flex-basis: 100%; margin: 6px 0 0; justify-content: flex-start; }
}

/* ---------- 융복합실천신학대학원 (contents_340 ~ 348, include/m2026_ipt.php) ---------- */
.m26p-body .m26-ipt-h3 { display: flex; align-items: center; gap: 10px; margin: 44px 0 16px; font-size: 21px; font-weight: 700; color: var(--ink); }
.m26p-body .m26-ipt-h3::before { content: ""; width: 4px; height: 20px; border-radius: 2px; background: var(--brand); }
.m26p-body .m26-ipt-h3--big { font-size: 24px; }
.m26p-body .m26-ipt-h4 { margin: 30px 0 12px; font-size: 17px; font-weight: 700; color: var(--ink); }
.m26p-body .m26-ipt-note { margin: -6px 0 8px; color: var(--muted); font-size: 15px; }
.m26p-body .m26-ipt-small { margin: 8px 0 0; color: var(--muted); font-size: 13.5px; line-height: 1.6; }

/* 소개 */
.m26p-body .m26-ipt-hero { padding: 36px 40px; border-radius: 20px; background: linear-gradient(135deg, var(--brand-dark), var(--brand)); color: #fff; }
.m26p-body .m26-ipt-hero__eyebrow { display: inline-block; margin: 0 0 14px; padding: 4px 12px; border-radius: 999px; background: rgba(255, 255, 255, .16); font-size: 13px; font-weight: 600; }
.m26p-body .m26-ipt-hero__title { margin: 0; color: #fff; font-size: 32px; font-weight: 700; letter-spacing: -0.02em; }
.m26p-body .m26-ipt-hero__en { margin: 4px 0 18px; color: rgba(255, 255, 255, .7); font-size: 14px; letter-spacing: .02em; }
.m26p-body .m26-ipt-hero__text { margin: 0 0 10px; color: rgba(255, 255, 255, .92); font-size: 16px; line-height: 1.8; }
.m26p-body .m26-ipt-hero__chips { display: flex; flex-wrap: wrap; gap: 8px; margin: 20px 0 0; padding: 0; list-style: none; }
.m26p-body .m26-ipt-hero__chips li { display: inline-flex; align-items: center; gap: 6px; padding: 7px 14px; border-radius: 999px; background: #fff; color: var(--brand); font-size: 14px; font-weight: 600; }
.m26p-body .m26-ipt-quote { margin: 0 0 18px; padding: 20px 24px; border-left: 4px solid var(--brand); border-radius: 0 14px 14px 0; background: var(--bg-soft); font-size: 16.5px; line-height: 1.8; color: var(--ink); }
.m26p-body .m26-ipt-motto { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin: 0; padding: 0; list-style: none; }
.m26p-body .m26-ipt-motto li { padding: 20px 22px; border: 1px solid var(--line); border-radius: 16px; }
.m26p-body .m26-ipt-motto strong { margin-right: 8px; color: var(--brand); font-size: 24px; }
.m26p-body .m26-ipt-motto span { color: var(--muted); font-size: 14px; font-weight: 600; }
.m26p-body .m26-ipt-motto p { margin: 8px 0 0; font-size: 15px; line-height: 1.7; }
.m26p-body .m26-ipt-depts { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 14px; margin: 0; padding: 0; list-style: none; }
.m26p-body .m26-ipt-depts a { display: flex; flex-direction: column; height: 100%; padding: 22px 20px; border: 1px solid var(--line); border-radius: 16px; background: #fff; color: var(--ink); text-decoration: none; transition: border-color .2s, box-shadow .2s, transform .2s; }
.m26p-body .m26-ipt-depts a:hover { border-color: var(--brand); box-shadow: var(--shadow); transform: translateY(-3px); }
.m26p-body .m26-ipt-depts__icon { display: grid; place-items: center; width: 46px; height: 46px; margin-bottom: 14px; border-radius: 12px; background: var(--brand-soft); color: var(--brand); font-size: 20px; }
.m26p-body .m26-ipt-depts strong { font-size: 17px; line-height: 1.4; }
.m26p-body .m26-ipt-depts em { margin-top: 4px; color: var(--muted); font-size: 12.5px; font-style: normal; line-height: 1.4; }
.m26p-body .m26-ipt-depts__degree { margin-top: 12px; font-size: 13.5px; color: var(--ink-2); }
.m26p-body .m26-ipt-depts__more { margin-top: auto; padding-top: 14px; color: var(--brand); font-size: 14px; font-weight: 600; }

/* 모집안내 */
.m26p-body .m26-ipt-grid2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 40px; }
.m26p-body .m26-ipt-list { margin: 0; padding: 0; list-style: none; }
.m26p-body .m26-ipt-list li { display: flex; gap: 10px; padding: 10px 0; border-bottom: 1px solid var(--line); font-size: 15.5px; line-height: 1.65; }
.m26p-body .m26-ipt-list b { flex: none; color: var(--brand); }
.m26p-body .m26-ipt-list--small li { font-size: 14.5px; }
.m26p-body .m26-ipt-score { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin: 0; padding: 0; list-style: none; }
.m26p-body .m26-ipt-score li { display: flex; flex-direction: column; align-items: center; padding: 16px 8px; border-radius: 14px; background: var(--bg-soft); }
.m26p-body .m26-ipt-score span { color: var(--muted); font-size: 14px; font-weight: 600; }
.m26p-body .m26-ipt-score strong { margin-top: 4px; color: var(--ink); font-size: 24px; }
.m26p-body .m26-ipt-score li.is-total { background: var(--brand); }
.m26p-body .m26-ipt-score li.is-total span, .m26p-body .m26-ipt-score li.is-total strong { color: #fff; }
.m26p-body .m26-ipt-timeline { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin: 0; padding: 0; list-style: none; }
.m26p-body .m26-ipt-timeline li { display: flex; flex-direction: column; gap: 4px; padding: 18px 18px 16px; border: 1px solid var(--line); border-top: 4px solid var(--brand); border-radius: 12px; background: #fff; }
.m26p-body .m26-ipt-timeline__label { color: var(--brand); font-size: 14px; font-weight: 700; }
.m26p-body .m26-ipt-timeline strong { font-size: 15.5px; line-height: 1.5; }
.m26p-body .m26-ipt-timeline__where { color: var(--muted); font-size: 13.5px; }
.m26p-body .m26-ipt-docs { display: grid; gap: 8px; margin: 0; padding: 0; list-style: none; }
.m26p-body .m26-ipt-docs li { display: flex; align-items: center; gap: 12px; padding: 12px 16px; border-radius: 12px; background: var(--bg-soft); }
.m26p-body .m26-ipt-docs i { color: var(--brand); font-size: 18px; }
.m26p-body .m26-ipt-docs strong { display: block; font-size: 15px; }
.m26p-body .m26-ipt-docs span { color: var(--muted); font-size: 13.5px; }
.m26p-body .m26-ipt-fee { margin: 0; color: var(--brand); font-size: 28px; font-weight: 700; }
.m26p-body .m26-ipt-apply { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin: 0; padding: 0; list-style: none; }
.m26p-body .m26-ipt-apply li { padding: 20px; border: 1px solid var(--line); border-radius: 14px; }
.m26p-body .m26-ipt-apply li.is-main { border-color: var(--brand); background: var(--brand-soft); }
.m26p-body .m26-ipt-apply strong { display: flex; align-items: center; gap: 8px; margin-bottom: 8px; font-size: 16px; }
.m26p-body .m26-ipt-apply strong i { color: var(--brand); }
.m26p-body .m26-ipt-apply p { margin: 0 0 12px; font-size: 14.5px; line-height: 1.7; color: var(--ink-2); }
.m26p-body .m26-ipt-contact { margin: 0; padding: 0; list-style: none; border-top: 2px solid var(--ink); }
.m26p-body .m26-ipt-contact li { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 14px; padding: 14px 4px; border-bottom: 1px solid var(--line); font-size: 15px; }
.m26p-body .m26-ipt-contact span { min-width: 190px; color: var(--muted); font-weight: 600; }
.m26p-body .m26-ipt-contact a { color: var(--brand); font-weight: 700; text-decoration: none; }
.m26p-body .m26-ipt-contact em { color: var(--muted); font-style: normal; font-size: 14px; }

/* 학과 페이지 */
.m26p-body .m26-ipt-dept__head { display: flex; align-items: center; gap: 18px; }
.m26p-body .m26-ipt-dept__icon { display: grid; place-items: center; flex: none; width: 64px; height: 64px; border-radius: 18px; background: var(--brand); color: #fff; font-size: 28px; }
.m26p-body .m26-ipt-dept__school { margin: 0; color: var(--brand); font-size: 13.5px; font-weight: 700; }
.m26p-body .m26-ipt-dept__name { margin: 2px 0 0; font-size: 28px; }
.m26p-body .m26-ipt-dept__en { margin: 2px 0 0; color: var(--muted); font-size: 14px; }
.m26p-body .m26-ipt-facts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; margin: 24px 0 0; padding: 0; list-style: none; }
.m26p-body .m26-ipt-facts li { display: flex; flex-direction: column; gap: 4px; padding: 16px 18px; border-radius: 14px; background: var(--bg-soft); }
.m26p-body .m26-ipt-facts span { color: var(--muted); font-size: 13.5px; font-weight: 600; }
.m26p-body .m26-ipt-facts strong { font-size: 16.5px; line-height: 1.4; }
.m26p-body .m26-ipt-desc { margin: 0; font-size: 16.5px; line-height: 1.9; }
.m26p-body .m26-ipt-points { display: flex; flex-wrap: wrap; gap: 8px; margin: 16px 0 0; padding: 0; list-style: none; }
.m26p-body .m26-ipt-points li { display: inline-flex; align-items: center; gap: 6px; padding: 7px 14px; border: 1px solid var(--line); border-radius: 999px; font-size: 14px; font-weight: 600; }
.m26p-body .m26-ipt-points i { color: var(--brand); font-size: 12px; }
.m26p-body .m26-ipt-pending { display: flex; align-items: center; gap: 14px; padding: 22px 24px; border: 1px dashed #d9d4cc; border-radius: 14px; color: var(--ink-2); }
.m26p-body .m26-ipt-pending i { color: var(--brand); font-size: 22px; }
.m26p-body .m26-ipt-pending p { margin: 0; font-size: 15.5px; }
.m26p-body .m26-ipt-cta { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 18px; margin-top: 44px; padding: 26px 28px; border-radius: 18px; background: var(--bg-soft); }
.m26p-body .m26-ipt-cta .m26-ipt-h3 { margin: 0 0 6px; }
.m26p-body .m26-ipt-cta p { margin: 0; max-width: 560px; color: var(--ink-2); font-size: 15px; }
.m26p-body .m26-ipt-cta__btns { display: flex; flex-wrap: wrap; gap: 8px; }
.m26p-body .m26-ipt-btn { display: inline-flex; align-items: center; gap: 8px; height: 42px; padding: 0 18px; border: 1px solid var(--brand); border-radius: 10px; background: var(--brand); color: #fff !important; font-size: 14.5px; font-weight: 600; text-decoration: none !important; }
.m26p-body .m26-ipt-btn:hover { background: var(--brand-dark); }
.m26p-body .m26-ipt-btn--line { background: #fff; color: var(--brand) !important; }
.m26p-body .m26-ipt-btn--line:hover { background: var(--brand-soft); }

@media (max-width: 1079px) {
    .m26p-body .m26-ipt-depts { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .m26p-body .m26-ipt-timeline, .m26p-body .m26-ipt-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
    .m26p-body .m26-ipt-hero { padding: 26px 20px; border-radius: 16px; }
    .m26p-body .m26-ipt-hero__title { font-size: 25px; }
    .m26p-body .m26-ipt-hero__text { font-size: 15px; }
    .m26p-body .m26-ipt-hero__chips li { padding: 6px 12px; font-size: 13px; }
    .m26p-body .m26-ipt-h3 { margin-top: 36px; font-size: 19px; }
    .m26p-body .m26-ipt-motto, .m26p-body .m26-ipt-grid2, .m26p-body .m26-ipt-apply { grid-template-columns: 1fr; }
    .m26p-body .m26-ipt-depts { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
    .m26p-body .m26-ipt-depts a { padding: 16px 14px; }
    .m26p-body .m26-ipt-depts strong { font-size: 15.5px; }
    .m26p-body .m26-ipt-timeline { grid-template-columns: 1fr; }
    .m26p-body .m26-ipt-contact span { min-width: 0; flex-basis: 100%; }
    .m26p-body .m26-ipt-dept__icon { width: 52px; height: 52px; font-size: 22px; border-radius: 14px; }
    .m26p-body .m26-ipt-dept__name { font-size: 23px; }
    .m26p-body .m26-ipt-facts strong { font-size: 15px; }
    .m26p-body .m26-ipt-desc { font-size: 15.5px; }
    .m26p-body .m26-ipt-cta { padding: 20px; }
    .m26p-body .m26-ipt-cta__btns { width: 100%; }
    .m26p-body .m26-ipt-btn { flex: 1 1 auto; justify-content: center; }
}

/* 입학안내 (contents_260) */
.m26p-body .m26-ipt-hero__btns { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 20px; }
.m26p-body .m26-ipt-btn--white { background: #fff; border-color: #fff; color: var(--brand) !important; }
.m26p-body .m26-ipt-btn--white:hover { background: var(--brand-soft); }
.m26p-body .m26-ipt-btn--ghost { background: transparent; border-color: rgba(255, 255, 255, .6); color: #fff !important; }
.m26p-body .m26-ipt-btn--ghost:hover { background: rgba(255, 255, 255, .12); }
.m26p-body .m26-ipt-adm .m26-ipt-grid2 .m26-ipt-h3 { margin-top: 36px; }
@media (max-width: 767px) {
    .m26p-body .m26-ipt-hero__btns .m26-ipt-btn { flex: 1 1 auto; justify-content: center; }
}
