@charset "utf-8";
/* 서브 페이지 리뉴얼 테마 (메인 index-v1/v2.css 와 같은 컨셉). body.theme 아래에서만 적용.
   되돌리기: 각 html 의 <body class="theme"> 와 theme.css <link> 제거 (원본: _backup/before-subpages) */

body.theme {
  --point: #8B5A2B;
  --point2: #c29c6b;
  --point-light: #A67C52;
  --point-soft: #f4eee6;
  --paper: #faf6ef;
  --gold: #c29c6b;
  --ink: #3b2a1a;
  --line: #eadfcd;
  --serif: 'Nanum Myeongjo', 'Noto Serif KR', 'Batang', '바탕', serif;
  color: #3f342a;
}
.theme a { color: var(--ink); }

/* ---------- 연꽃 장식 ---------- */
.theme .sub_subject:after, .theme .sub_top_text:before {
  content: ''; display: block; background: no-repeat center / contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 30'%3E%3Cg fill='none' stroke='%23c29c6b' stroke-width='1.6' stroke-linejoin='round'%3E%3Cpath d='M24 28C17 22 17 10 24 2c7 8 7 20 0 26z'/%3E%3Cpath d='M22 28C12 26 6 18 5 10c9 1 16 7 17 18z'/%3E%3Cpath d='M26 28c10-2 16-10 17-18-9 1-16 7-17 18z'/%3E%3Cpath d='M20 29C10 30 3 26 1 20c8-2 15 1 19 9z'/%3E%3Cpath d='M28 29c10 1 17-3 19-9-8-2-15 1-19 9z'/%3E%3C/g%3E%3C/svg%3E");
}

/* ---------- 헤더 ---------- */
.theme .tnb_02 { height: 28px; line-height: 28px; background: var(--paper); border-bottom: 1px solid var(--line); }
.theme .tnb_02 .right_tnb a { padding: 0 0 0 14px; color: #8a7358; transition: color .2s; }
.theme .tnb_02 .right_tnb a:hover { color: var(--point); }
.theme .logo_wrap_01 { border-bottom: 1px solid var(--line); background: rgba(255,255,255,.96); }
.theme .pm-navigation_horizon_pc_nav_02 .dep1 > li > a { position: relative; padding: 15px 18px; font-size: 16px; font-weight: 600; color: var(--ink); letter-spacing: -.02em; }
.theme .pm-navigation_horizon_pc_nav_02 .dep1 > li:hover > a,
.theme .pm-navigation_horizon_pc_nav_02 .dep1 > li.on > a { color: var(--point); }
.theme .pm-navigation_horizon_pc_nav_02 .dep1 > li > a:after { content: ''; position: absolute; left: 50%; bottom: 4px; width: 6px; height: 6px; margin-left: -3px; border-radius: 50%; background: var(--gold); transform: scale(0); transition: transform .3s; }
.theme .pm-navigation_horizon_pc_nav_02 .dep1 > li:hover > a:after { transform: scale(1); }
.theme .pm-navigation_horizon_pc_nav_02 .dep2 {
  left: 50%; min-width: 230px; transform: translateX(-50%); padding: 12px 10px; border: 1px solid var(--line); border-top: 2px solid var(--gold);
  border-radius: 0 0 14px 14px; background: var(--paper); box-shadow: 0 16px 32px rgba(59,42,26,.14);
}
.theme .pm-navigation_horizon_pc_nav_02 .dep2 > li { border-bottom: 0; }
.theme .pm-navigation_horizon_pc_nav_02 .dep2 > li > a { position: relative; padding: 10px 16px 10px 28px; border-radius: 8px; font-size: 14px; font-weight: 400; color: #5a4632; text-align: left; transition: background .25s, color .25s, padding .25s; }
.theme .pm-navigation_horizon_pc_nav_02 .dep2 > li > a:before { content: ''; position: absolute; left: 13px; top: 50%; width: 5px; height: 5px; margin-top: -2.5px; border-radius: 50%; background: #d8c6a8; transition: background .25s, transform .25s; }
.theme .pm-navigation_horizon_pc_nav_02 .dep2 > li:hover > a { padding-left: 32px; background: #fff; color: var(--point); font-weight: 500; box-shadow: inset 0 0 0 1px var(--line); }
.theme .pm-navigation_horizon_pc_nav_02 .dep2 > li:hover > a:before { background: var(--point); transform: scale(1.4); }
.theme #pm2-nav_h_all, .theme .pm-navigation_vertical_toggle_mo_nav_01 .dep1 > li > a { background: var(--point); }
.theme .pm-navigation_vertical_toggle_mo_nav_01 .dep1 > li > a:hover { background: var(--point-light); }

/* ---------- 서브 비주얼 ---------- */
.theme .sub_visual_wrap_sub_title .sub_top_img_wrap:after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(30,18,8,.35), rgba(30,18,8,.6)); }
.theme .sub_visual_wrap_sub_title .sub_top_cont_wrap { z-index: 2; }
.theme .sub_visual_wrap_sub_title .top_text_inner { text-align: center; }
.theme .sub_visual_wrap_sub_title .sub_top_title > span { font-family: var(--serif); font-weight: 800; letter-spacing: .02em; }
.theme .sub_visual_wrap_sub_title .sub_top_text { font-family: var(--serif); }
.theme .sub_top_text:before { width: 40px; height: 24px; margin: 0 auto 8px; }

/* ---------- 서브 탭 ---------- */
.theme .sub_scroll_wrap { border-bottom-color: var(--line); background: var(--paper); }
.theme .sub_scroll_wrap .scroll_nav li a { color: #a8967d; }
.theme .sub_scroll_wrap .scroll_nav li.on a { color: var(--point); }
.theme .sub_scroll_wrap > div i.prev:before { border-right-color: var(--point); }
.theme .sub_scroll_wrap > div i.next:before { border-left-color: var(--point); }
@media (min-width: 1200px) {
  .theme .sub_scroll_wrap .scroll_nav li:before { background: var(--gold); opacity: 1; }
  .theme .sub_scroll_wrap .scroll_nav li a,
  .theme .sub_scroll_wrap .scroll_nav li.on a { height: 70px; font-weight: 600; line-height: 72px; color: #5a4632; }
  .theme .sub_scroll_wrap .scroll_nav li.on a, .theme .sub_scroll_wrap .scroll_nav li:hover a { color: var(--point); }
}

/* ---------- 본문 ---------- */
.theme .body_content .sub_subject { margin-bottom: 44px; padding: 8px 0 22px; border-bottom: 1px solid var(--line); font-family: var(--serif); font-weight: 800; color: var(--ink); text-align: center; }
.theme .body_content .sub_subject:before { display: none; }
.theme .body_content .sub_subject:after { width: 40px; height: 24px; margin: 14px auto 0; }
.theme .sub1 h2, .theme .sub1 h3 { font-family: var(--serif); color: var(--point); }
.theme .sub1 p { color: #4a3d30; }
.theme .sub1 *:not(i) { font-family: inherit; }
.theme .sub1 img { border-radius: 8px; }
/* 회색 면 → 한지 */
.theme .sub1 .bg1 li:nth-child(1):after, .theme .sub1 .bg1 li:nth-child(1):before,
.theme .sub1 .bg2 li:nth-child(1):after, .theme .sub1 .bg2 li:nth-child(1):before,
.theme .sub1 .bg1:after, .theme .sub1 .bg:after, .theme .sub1 > div > div.bg:after,
.theme .sub1 .bg p { background-color: var(--paper); }
.theme .sub1 .bg1 { background-color: var(--paper); }
.theme .sub1 li { border-color: var(--line); }
.theme .sub1 .way th, .theme .sub1 th { background-color: var(--paper); border-color: var(--line); color: var(--ink); }
.theme .sub1 td { border-color: var(--line); }

/* ---------- 게시판 ---------- */
.theme .scbd { color: #4a3d30; }
.theme .scbd a { color: var(--point); }
.theme .scbd .head { border-top: 2px solid var(--ink); }
.theme .scbd .head .nav > ul { border-bottom-color: var(--line); }
.theme .scbd .head .nav > ul > li > a { border-left-color: var(--line); color: var(--ink); }
.theme .scbd .head .searchForm form { border-color: var(--line); box-shadow: none; }
.theme .scbd .list_board tbody tr { border-bottom-color: var(--line); }
.theme .scbd .list_board tbody .subject a { color: var(--ink); }
.theme .scbd .list_board tbody .notice { background: var(--paper); }
.theme .scbd .list_board thead th { background: var(--paper); }
.theme .scbd .list_photo { border-bottom-color: var(--line); }
.theme .scbd .list_photo > li:nth-child(3n+1):before { background: var(--line); }
.theme .scbd .list_photo .thum > img { border-radius: 10px; }
.theme .scbd .list_photo .subject { color: var(--ink); font-size: 13px; }
.theme .scbd .gbg, .theme .scbd .ui-button, .theme .scbd .paginate a { border-color: var(--line); background: #fff; box-shadow: none; color: var(--ink); }
.theme .scbd .ui-button { border-radius: 8px; }
.theme .scbd .ui-button:hover, .theme .scbd .paginate a:hover { border-color: var(--gold); color: var(--point); }
.theme .scbd .paginate a, .theme .scbd .paginate strong { border-radius: 8px; }
.theme .scbd .paginate strong { border-color: var(--point); background: var(--point); color: #fff; text-decoration: none; }
.theme .scbd .detail .hgroup > h2 { font-family: var(--serif); color: var(--ink); }
.theme .scbd .detail .hgroup { padding-bottom: 14px; border-bottom: 1px solid var(--line); }
.theme .scbd .detail .attachFiles { border-color: var(--line); }

/* ---------- 폼 (로그인/가입/문의) ---------- */
.theme input[type=text], .theme input[type=password], .theme input[type=email], .theme input[type=tel], .theme textarea, .theme select { border-color: var(--line); border-radius: 6px; }
.theme input:focus, .theme textarea:focus, .theme select:focus { outline: 0; border-color: var(--gold); box-shadow: 0 0 0 3px rgba(194,156,107,.2); }
.theme button[type=submit], .theme input[type=submit] { border-radius: 8px; }

/* ---------- 푸터 / 퀵메뉴 ---------- */
.theme #footer { border-top: 0; background: #2a1d12; }
.theme .footer_info > dl { border-bottom-color: rgba(194,156,107,.25); }
.theme .footer_info > dl dt img { box-sizing: content-box; padding: 6px 12px; border-radius: 8px; background: #fff; }
.theme .navi_foot li:after { background: #6b5539; }
.theme .navi_foot li a, .theme .address ul li { color: #b9a58b; }
.theme .address ul li a { border-color: #6b5539; color: #d8c6a8; }
.theme .quick li:last-child { background: var(--point); }

@media (prefers-reduced-motion: no-preference) {
  .theme .body_content { animation: themeFade .8s ease-out both; }
  @keyframes themeFade { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: none; } }
}
