/* ===== IME EXPO 안내 페이지 공통 (V71) — /expo/intro, about, guide, program/*, halls, notice ===== */
.expo-page-body{background:#f7f6f1;color:#13222c;font-family:"Noto Sans KR",system-ui,sans-serif;line-height:1.7;word-break:keep-all;-webkit-font-smoothing:antialiased}
.expo-page-body .header{position:sticky;top:0;background:rgba(3,17,29,.97)!important;border-bottom-color:rgba(255,255,255,.07)!important;box-shadow:0 10px 34px rgba(0,0,0,.18)!important}
.xp{padding:28px 0 60px;min-height:60vh}
.xp-wrap{width:min(1180px,calc(100% - 40px));margin:0 auto}
.xp a{color:inherit;text-decoration:none}
.xp-crumb{font-size:11px;color:#6e7c85;letter-spacing:.08em;display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:6px 0 0}
.xp-crumb b{color:#8a6a35;font-weight:800}
.xp-head{padding:20px 0 30px;border-bottom:1px solid #e3e6e1;margin-bottom:8px}
.xp-eng{font:600 13px/1 "Cormorant Garamond",Georgia,serif;letter-spacing:.3em;color:#8a6a35;text-transform:uppercase}
.xp-head h1{margin:12px 0 10px;font:900 clamp(30px,4vw,46px)/1.15 "Noto Serif KR",Georgia,serif;letter-spacing:-.04em;color:#0b2232;text-wrap:balance}
.xp-head p{margin:0;color:#6e7c85;font-size:14px;max-width:62ch}
.xs{padding:36px 0 6px}
.xs h2{margin:0 0 18px;font:800 22px/1.3 "Noto Serif KR",Georgia,serif;letter-spacing:-.03em;color:#0b2232;display:flex;align-items:center;gap:14px}
.xs h2::after{content:"";flex:1;height:1px;background:#e3e6e1}
.xs h2 small{font:600 11px/1 "Cormorant Garamond",Georgia,serif;letter-spacing:.24em;color:#8a6a35;text-transform:uppercase;white-space:nowrap}
/* 사양표 */
.spec{margin:0;border-top:2px solid #0b2232;border-bottom:1px solid #e3e6e1;background:#fff}
.spec>div{display:grid;grid-template-columns:170px 1fr;gap:18px;padding:16px 20px;border-bottom:1px solid #e3e6e1;font-size:14px}
.spec>div:last-child{border-bottom:0}
.spec dt{font-weight:900;color:#0b2232;letter-spacing:.14em;font-size:12px;padding-top:2px}
.spec dd{margin:0;line-height:1.8}
.spec dd small{display:block;color:#6e7c85;font-size:12px}
.spec dd b{color:#0b2232}
/* 표 */
.tbl{width:100%;border-collapse:collapse;background:#fff;font-size:14px;border-top:2px solid #0b2232}
.tbl th,.tbl td{padding:14px 16px;border-bottom:1px solid #e3e6e1;text-align:left;vertical-align:top}
.tbl th{background:#f1f3ef;font-weight:900;color:#0b2232;font-size:12px;letter-spacing:.08em}
.tbl td b{color:#0b2232;font-variant-numeric:tabular-nums}
.tbl td small{display:block;color:#6e7c85;font-size:12px}
.tbl .num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.tbl tbody tr:hover td{background:#fbfaf6}
.fine{color:#6e7c85;font-size:12px;margin:10px 0 0}
.tbl-x{overflow-x:auto}
/* 카드 */
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.cards.two{grid-template-columns:1fr 1fr}
.card{background:#fff;border:1px solid #e3e6e1;border-radius:14px;padding:22px 22px 20px;display:flex;flex-direction:column;gap:8px;min-width:0;transition:transform .2s,box-shadow .2s}
.card:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(11,34,50,.08)}
.card .k{font:600 10px/1 "Cormorant Garamond",Georgia,serif;letter-spacing:.28em;color:#8a6a35;text-transform:uppercase}
.card h3{margin:0;font:800 17px/1.4 "Noto Serif KR",Georgia,serif;color:#0b2232;letter-spacing:-.02em}
.card p{margin:0;font-size:13px;color:#4e5c66}
.card .meta{margin-top:auto;padding-top:10px;border-top:1px dashed #e3e6e1;font-size:12px;color:#6e7c85;display:grid;gap:3px}
.card .meta b{color:#0b2232;font-weight:800;margin-right:4px}
.tag{display:inline-block;font-size:10px;font-weight:900;letter-spacing:.14em;padding:4px 9px;border-radius:999px;background:#eef2ee;color:#0e6648;align-self:flex-start}
.tag.gold{background:#fbf5e8;color:#8a6a35}
/* 버튼 */
.xbtn{display:inline-flex;align-items:center;gap:10px;padding:13px 22px;border-radius:999px;font-weight:900;font-size:13px;border:1px solid transparent;cursor:pointer}
.xbtn.gold{background:linear-gradient(135deg,#c9a85c,#e0bf70);color:#1d1507}
.xbtn.navy{background:#0b2232;color:#fff}
.xbtn.navy:hover{background:#102e44}
.xbtn.line{border-color:#0b2232;color:#0b2232}
/* IME 소개 */
.intro{display:grid;grid-template-columns:1.05fr .95fr;gap:44px;align-items:center;padding:40px 0 20px}
.intro .poster{max-width:100%;border-radius:12px;background:#e3e6e1;box-shadow:0 30px 60px rgba(11,34,50,.22);overflow:hidden;line-height:0}
.intro .poster img{display:block;width:100%;height:auto}
.intro .xp-eng{margin-bottom:0}
.intro h1{margin:14px 0 12px;font:900 clamp(30px,4vw,48px)/1.15 "Noto Serif KR",Georgia,serif;color:#0b2232;letter-spacing:-.04em;text-wrap:balance}
.intro .date{display:inline-flex;align-items:center;gap:10px;padding:9px 16px;border-radius:999px;border:1px solid rgba(184,138,67,.42);background:linear-gradient(135deg,#fffaf0,#f6ecd8);font-weight:800;font-size:14px;color:#3d2b12;margin:4px 0 18px}
.intro .date i{width:7px;height:7px;border-radius:50%;background:#c9a85c}
.intro p{margin:0 0 10px;font-size:14px;color:#4e5c66}
.intro .acts{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
/* 전시관 */
.hall{background:#fff;border:1px solid #e3e6e1;border-radius:14px;padding:22px;margin-bottom:14px;display:grid;grid-template-columns:260px 1fr;gap:24px}
.hall .h{display:flex;flex-direction:column;gap:6px}
.hall .h .k{font:600 10px/1 "Cormorant Garamond",Georgia,serif;letter-spacing:.28em;color:#8a6a35}
.hall .h h3{margin:0;font:800 18px/1.4 "Noto Serif KR",Georgia,serif;color:#0b2232}
.hall ul{margin:0;padding-left:16px;font-size:13px;color:#4e5c66;columns:2;column-gap:24px}
.hall li{margin:3px 0;break-inside:avoid}
.hall li b{color:#0b2232;font-weight:800}
/* 게시판 */
.empty{background:#fff;border:1px dashed #c9cfc9;border-radius:14px;padding:70px 20px;text-align:center;color:#6e7c85}
.empty .ico{font:700 42px/1 "Cormorant Garamond",Georgia,serif;color:#d6cdb6;margin-bottom:10px}
.empty b{display:block;color:#0b2232;font-size:16px;margin-bottom:4px}
.notice-list .tbl td a{display:block;font-weight:700;color:#0b2232}
.notice-list .tbl td a:hover{color:#8a6a35}
.notice-body{background:#fff;border:1px solid #e3e6e1;border-radius:14px;padding:30px;font-size:14px;line-height:1.9}
.notice-body img{max-width:100%;border-radius:8px;margin:14px 0}
.notice-meta{display:flex;gap:16px;flex-wrap:wrap;font-size:12px;color:#6e7c85;margin:-6px 0 18px}
/* 문의 */
.contact{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.contact .card h3{font-size:16px}
.contact .card p{font-size:13px;line-height:1.9}
/* 푸터 */
.xp-footer .footer-grid{grid-template-columns:1fr auto;align-items:end}
.xp-foot-note{display:grid;gap:4px;font-size:12px;text-align:right}
@media(max-width:860px){
  .cards{grid-template-columns:1fr 1fr}
  .intro{grid-template-columns:1fr;gap:24px}
  .intro .poster{max-width:360px}
  .hall{grid-template-columns:1fr}.hall ul{columns:1}
}
@media(max-width:620px){
  .xp-wrap{width:calc(100% - 32px)}
  .cards,.cards.two,.contact{grid-template-columns:1fr}
  .spec>div{grid-template-columns:1fr;gap:4px;padding:14px 16px}
  .tbl{font-size:13px}.tbl th,.tbl td{padding:11px 10px}
  .xp-footer .footer-grid{grid-template-columns:1fr}
  .xp-foot-note{text-align:left}
}
