/* ================= 테마2 (시안4) 공통 — 헤더/푸터/서브/게시판 ================= */
:root{
  --t2-ink:#13222E; --t2-navy:#0E3550; --t2-blue:#0B6E9C; --t2-sky:#0A9BD6;
  --t2-pink:#B3447F; --t2-pink2:#C8559A; --t2-pinkbg:#FCEFF6; --t2-bluebg:#EEF7FC;
  --t2-page:#F5F8FA; --t2-line:#DCE6EE; --t2-gray:#3A4A56; --t2-gray2:#55636E;
}
body{margin:0;background:var(--t2-page);
  font-family:'Pretendard',system-ui,-apple-system,'Malgun Gothic',sans-serif;color:var(--t2-ink);
  -webkit-font-smoothing:antialiased;}
#content{max-width:none;margin:0;padding:0;width:auto;float:none;}
#skip_nav a{position:absolute;left:-9999px;}
#skip_nav a:focus{left:8px;top:8px;z-index:9999;background:var(--t2-navy);color:#fff;padding:8px 14px;border-radius:8px;}

/* ===== 헤더 ===== */
.t2hd{position:relative;z-index:1000;background:#fff;border-bottom:1px solid var(--t2-line);
  font-family:'Pretendard',sans-serif;color:var(--t2-ink);}
.t2hd-bar{height:4px;background:linear-gradient(90deg,var(--t2-sky) 0 70%,var(--t2-pink2) 70% 100%);}
.t2hd a{text-decoration:none;color:var(--t2-ink);}
.t2hd-in{max-width:1240px;margin:0 auto;padding:0 24px;min-height:84px;display:flex;flex-wrap:wrap;
  align-items:center;justify-content:space-between;gap:16px;}
.t2hd-logo{display:flex;align-items:center;gap:12px;}
.t2hd-logo img{height:50px;width:auto;display:block;}
.t2hd-nav{display:flex;flex-wrap:wrap;gap:2px;align-self:stretch;}
.t2hd-item{position:relative;display:flex;align-items:center;align-self:stretch;}
.t2hd-pill{padding:14px 14px;font-size:17px;font-weight:500;color:var(--t2-ink);transition:.12s;}
.t2hd-pill:hover{color:var(--t2-blue);}
.t2hd-pill.on{color:var(--t2-blue);font-weight:700;box-shadow:inset 0 -3px 0 var(--t2-sky);}
.t2hd-drop{position:absolute;top:100%;left:0;min-width:210px;background:#fff;border:1px solid var(--t2-line);border-top:2px solid var(--t2-sky);border-radius:0 0 12px 12px;box-shadow:0 14px 30px rgba(14,53,80,.14);padding:8px;display:none;z-index:1002;}
.t2hd-item:hover>.t2hd-drop,.t2hd-item:focus-within>.t2hd-drop{display:block;}
.t2hd-drop a{display:block;padding:11px 14px;border-radius:8px;font-size:15px;color:var(--t2-ink);white-space:nowrap;}
.t2hd-drop a:hover{background:var(--t2-bluebg);color:var(--t2-blue);}
.t2hd-right{display:flex;align-items:center;gap:8px;}
.t2hd-txt{padding:8px 8px;font-size:14px;font-weight:500;color:var(--t2-gray2);}
.t2hd-txt:hover{color:var(--t2-ink);}
.t2hd-tel{display:none;align-items:center;gap:7px;padding:8px 12px;border-radius:10px;background:var(--t2-bluebg);
  color:var(--t2-blue);font-size:14px;font-weight:700;}
.t2hd-join{padding:11px 18px;border-radius:10px;background:var(--t2-pink);color:#fff !important;font-size:15px;font-weight:700;}
.t2hd-join:hover{background:#9c3a6f;}
.t2hd-all{display:none;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border-radius:10px;
  border:1px solid #C9D5DE;background:#fff;color:var(--t2-ink);
  font-family:inherit;cursor:pointer;}
.t2hd-all:hover{border-color:var(--t2-blue);}
.t2hd-mega{position:absolute;left:0;right:0;top:100%;background:var(--t2-page);border-top:1px solid var(--t2-line);box-shadow:0 16px 32px rgba(14,53,80,.16);z-index:1001;max-height:82vh;overflow:auto;}
.t2hd-mega[hidden]{display:none;}
.t2hd-mega-in{max-width:1240px;margin:0 auto;padding:32px 24px 40px;display:grid;
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:28px;}
.t2hd-col{display:flex;flex-direction:column;gap:2px;}
.t2hd-col strong{font-size:18px;color:var(--t2-blue);padding-bottom:10px;margin-bottom:6px;border-bottom:2px solid var(--t2-sky);}
.t2hd-col a{color:var(--t2-ink);font-size:16px;padding:8px 0;}
.t2hd-col a:hover{color:var(--t2-blue);}
.mbtn{display:none;}

/* ===== 서브 배너 ===== */
.t2sub{display:block;}
.t2sub-banner{position:relative;min-height:0;background:linear-gradient(120deg,#0E3550 0%,#154a73 100%);background-image:linear-gradient(120deg,#0E3550 0%,#154a73 100%) !important;overflow:hidden;text-transform:none;}
.t2sub-banner::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--t2-sky) 0 70%,var(--t2-pink2) 70% 100%);z-index:1;}
.t2sub-bin{position:relative;max-width:1240px;margin:0 auto;padding:52px 24px 44px;color:#fff;display:flex;flex-direction:column;gap:10px;text-align:left;}
.t2sub-crumb{margin:0;font-size:14px;color:#CFE6F3;}
.t2sub-title{margin:0;font-weight:800;font-size:clamp(26px,3.6vw,40px);letter-spacing:-0.02em;color:#fff;}
/* 본문 영역 */
.t2sub-body{display:block;max-width:1200px;margin:0 auto;padding:44px 24px 80px;}
.t2sub-body .page_title{display:none;}
.t2sub-body .page_content{background:transparent;}
.t2sub-body .inner{max-width:none;}

/* 서브 사이드/네비 (sub.head.nb) 가독성 보정 */
.t2sub .sub_nav, .t2sub .lnb{font-family:'Pretendard',sans-serif;}

/* ===== 게시판/테이블 톤 맞춤 (vendor 스킨 위 보정) ===== */
.t2sub-body a{color:var(--t2-ink);}
.t2sub-body a:hover{color:var(--t2-blue);}
.t2sub-body .tbl_head01 thead th, .t2sub-body .board_list thead th{background:var(--t2-bluebg);color:var(--t2-ink);border-top:2px solid var(--t2-navy);}
.t2sub-body .btn_submit, .t2sub-body input[type=submit].btn_submit{background:var(--t2-blue);border-color:var(--t2-blue);}
.t2sub-body .btn_b01, .t2sub-body a.btn_b01{background:var(--t2-navy);border-color:var(--t2-navy);color:#fff;}
.t2sub-body .pg_current{background:var(--t2-blue);border-color:var(--t2-blue);}

/* ===== 푸터 ===== */
.t2ft{background:var(--t2-navy);color:#CFE0EA;margin-top:0;}
.t2ft a{color:#CFE0EA;text-decoration:none;}
.t2ft a:hover{color:#fff;}
.t2ft-in{max-width:1240px;margin:0 auto;padding:52px 24px 28px;display:flex;flex-direction:column;gap:30px;}
.t2ft-top{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:24px;}
.t2ft-brand{display:flex;flex-direction:column;gap:10px;}
.t2ft-logobox{display:inline-flex;align-self:flex-start;padding:8px 12px;border-radius:12px;background:#fff;}
.t2ft-logo{height:42px;width:auto;display:block;}
.t2ft-slogan{font-size:15px;color:#CFE0EA;}
.t2ft-bigtel{display:flex;flex-direction:column;gap:2px;text-align:right;color:#fff !important;}
.t2ft-bigtel span{font-size:14px;color:#A9C6D8;}
.t2ft-bigtel strong{font-size:34px;font-weight:900;letter-spacing:-0.01em;}
.t2ft-tels{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;}
.t2ft-tel{padding:16px 18px;border-radius:12px;background:#13405F;display:flex;flex-direction:column;gap:4px;color:#fff !important;}
.t2ft-tel span{font-size:13px;color:#A9C6D8;}
.t2ft-tel strong{font-size:20px;}
.t2ft-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;padding-top:22px;border-top:1px solid #285676;font-size:14px;line-height:1.8;}
.t2ft-links{display:flex;flex-wrap:wrap;gap:18px;}
.t2ft-links a:first-child{color:#fff;font-weight:700;}
.t2ft-copy{margin:0;font-size:13px;color:#8FB0C6;}

.to_top{position:fixed;right:20px;bottom:20px;z-index:900;}
.to_top .d_btn{width:48px;height:48px;border-radius:50%;border:0;background:var(--t2-navy);color:#fff;font-size:20px;cursor:pointer;box-shadow:0 6px 18px rgba(0,0,0,.2);}

.blind{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);}

/* ===== 팝업레이어 z-index 보정 (헤더에 가려지지 않도록) ===== */
#hd_pop{position:relative;z-index:10000;}
#hd_pop .hd_pops{z-index:10001;}

/* ===== 반응형 ===== */
@media (max-width:1100px){
  .t2hd-nav{display:none;}
  .t2hd-tel{display:flex;}
  .t2hd-all{display:flex;}
}
@media (max-width:760px){
  .t2hd-in{min-height:64px;padding:0 16px;gap:10px;}
  .t2hd-logo img{height:40px;}
  .t2hd-txt{display:none;}
  .t2hd-tel{display:none;}
  .t2hd-mega-in{grid-template-columns:1fr 1fr;gap:20px;padding:24px 16px 32px;}
  .t2sub-body{padding:28px 16px 60px;}
  .t2ft-bigtel{text-align:left;}
  .t2ft-bigtel strong{font-size:28px;}
}

/* ===== 섹션 서브내비 (sub.head.nb) — SubTop 디자인 ===== */
.t2snb{background:#fff;border-bottom:1px solid var(--t2-line);}
.t2snb-in{max-width:1240px;margin:0 auto;padding:0 24px;display:flex;flex-wrap:wrap;align-items:center;gap:2px;}
.t2snb-sec{padding:0 20px 0 0;margin-right:8px;font-size:16px;font-weight:700;color:var(--t2-blue);border-right:1px solid var(--t2-line);line-height:28px;}
.t2snb-items{display:flex;flex-wrap:wrap;gap:2px;}
.t2snb-item{min-height:58px;padding:0 16px;display:flex;align-items:center;font-size:16px;color:var(--t2-gray);text-decoration:none;}
.t2snb-item:hover{color:var(--t2-blue);}
.t2snb-item.on{color:var(--t2-blue);font-weight:700;box-shadow:inset 0 -3px 0 var(--t2-sky);}

/* ===== 서브페이지 본문 — 시안4 팔레트로 재색상 (vendor 변수 오버라이드) ===== */
.t2sub-body{
  --primary-color:#0B6E9C; --secondary-color:#EEF7FC; --tertiary-color:#B3447F;
  --point-color:#0A9BD6; --darkgray-color:#8FA3B1; --lightgray-color:#F5F8FA;
  --footerbg-color:#0E3550; --background-color:#F5F8FA; --line-color:#DCE6EE;
  --body-color:#13222E; --text-color:#13222E;
  color:var(--t2-ink);
}
.t2sub-body h1,.t2sub-body h2,.t2sub-body h3,.t2sub-body h4,.t2sub-body .sub_title_tit{color:var(--t2-ink);letter-spacing:-0.01em;}
.t2sub-body a{color:var(--t2-blue);}
.t2sub-body .hr,.t2sub-body hr{border:0;border-top:1px solid var(--t2-line);margin:40px 0;}
.t2sub-body table.table th,.t2sub-body .table th{background:var(--t2-bluebg);color:var(--t2-ink);}
.t2sub-body table.table td,.t2sub-body table.table th{border-color:var(--t2-line);}
.t2sub-body .content_photo .txt_area{background:var(--t2-blue);}

@media (max-width:760px){
  .t2snb-in{flex-wrap:nowrap;overflow-x:auto;padding:0 16px;}
  .t2snb-sec{flex:0 0 auto;}
  .t2snb-items{flex-wrap:nowrap;}
  .t2snb-item{flex:0 0 auto;min-height:48px;padding:0 12px;}
}

/* ===== 서브페이지 (시안4 아트보드 이식, scope: .t4p) ===== */
.t2sub-body:has(.t4p){max-width:none;padding:0;}
.t2sub-body:has(.t4p) .page_content.inner,.t2sub-body:has(.t4p) .page_content{max-width:none;padding:0;margin:0;}
.t4p{font-family:'Pretendard',system-ui,sans-serif;color:#0E3550;line-height:1.6;}
.t4p *{box-sizing:border-box;}
.t4p img{max-width:100%;}
.t4p a{color:#0E3550;text-decoration:none;}
.t4p a:hover{color:#0B6E9C;}
.t4p h2,.t4p h3{letter-spacing:-0.01em;}
.t4p .pmain{max-width:1200px;margin:0 auto;padding:56px 24px 80px;}
.t4p input,.t4p button,.t4p textarea,.t4p select{font-family:inherit;}

/* ===== 게시판 글보기(view) 가독성 보정 ===== */
.t2sub-body #bo_v{width:100%;background:#fff;border:1px solid var(--t2-line);border-radius:16px;padding:34px 40px 30px;margin:0 0 20px;box-shadow:0 2px 16px rgba(14,53,80,.05);}
@media (max-width:600px){ .t2sub-body #bo_v{padding:24px 18px;border-radius:14px;} }
.t2sub-body .bo_v_tit,.t2sub-body #bo_v_tit{font-size:24px;font-weight:800;line-height:1.45;color:var(--t2-ink);word-break:keep-all;}
.t2sub-body #bo_v_info,.t2sub-body .bo_v_info{color:var(--t2-gray2);font-size:14px;border-bottom:1px solid var(--t2-line);padding-bottom:14px;}
.t2sub-body #bo_v_info a,.t2sub-body .bo_v_info a{color:var(--t2-gray2);}
.t2sub-body #bo_v_con{font-size:16px;line-height:1.9;color:var(--t2-ink);padding:30px 4px;min-height:160px;}
.t2sub-body #bo_v_con img{max-width:100%;height:auto;}
.t2sub-body #bo_v_con p{margin:0 0 1em;}
.t2sub-body .bo_v_atc,.t2sub-body #bo_v_file{background:var(--t2-bluebg);border:1px solid var(--t2-line);border-radius:12px;padding:14px 16px;}
.t2sub-body #bo_v_act,.t2sub-body .bo_v_act{margin-top:16px;}
.t2sub-body #bo_vc,.t2sub-body #viewcomment{margin-top:24px;}
.t2sub-body .btn_b01,.t2sub-body .btn_b02,.t2sub-body a.btn,.t2sub-body button.btn{border-radius:8px;}
/* 상세 상단 버튼(목록/더보기) 밸런스 — 흰 아웃라인 정사각 */
.t2sub-body #bo_v_info{position:relative;}
.t2sub-body #bo_v_top .btn_bo_user{display:flex;gap:8px;align-items:center;margin:0;padding:0;list-style:none;}
.t2sub-body #bo_v_top .btn_bo_user > li{margin:0;padding:0;list-style:none;position:relative;}
.t2sub-body #bo_v_top .btn_b01,
.t2sub-body #bo_v_top .btn_more_opt{
  background:#fff !important;color:var(--t2-navy) !important;border:1px solid var(--t2-line) !important;
  width:44px;height:44px;min-width:44px;padding:0 !important;margin:0 !important;border-radius:10px;
  display:inline-flex;align-items:center;justify-content:center;box-shadow:none !important;cursor:pointer;
}
.t2sub-body #bo_v_top .btn_b01:hover,
.t2sub-body #bo_v_top .btn_more_opt:hover{background:var(--t2-bluebg) !important;color:var(--t2-blue) !important;border-color:var(--t2-blue) !important;}
.t2sub-body #bo_v_top .btn_b01 i,.t2sub-body #bo_v_top .btn_more_opt i,
.t2sub-body #bo_v_top .btn_b01 svg,.t2sub-body #bo_v_top .btn_more_opt svg{width:20px;height:20px;}
.t2sub-body #bo_v_top .more_opt{position:absolute;right:0;top:calc(100% + 6px);background:#fff;border:1px solid var(--t2-line);border-radius:12px;box-shadow:0 12px 28px rgba(14,53,80,.14);padding:6px;min-width:128px;z-index:50;}
.t2sub-body #bo_v_top .more_opt li{list-style:none;margin:0;}
.t2sub-body #bo_v_top .more_opt a{display:block;padding:10px 14px;border-radius:8px;color:var(--t2-ink);font-size:15px;}
.t2sub-body #bo_v_top .more_opt a:hover{background:var(--t2-bluebg);color:var(--t2-blue);}
/* 게시판 리스트 폭/톤 */
.t2sub-body .tbl_wrap,.t2sub-body #bo_list{width:100%;}
.t2sub-body .bo_cate_link{border-radius:999px;}

/* ===== 진입 애니메이션 (reveal on scroll) ===== */
@media (prefers-reduced-motion:no-preference){
  .t4reveal{opacity:0;transform:translateY(32px);transition:opacity .75s ease,transform .75s cubic-bezier(.22,.61,.36,1);will-change:opacity,transform;}
  .t4reveal.t4in{opacity:1;transform:none;}
}

/* ===== 게시판 리스트 버튼 밸런스 (유튜브 등 목록 상단/하단) ===== */
/* 상단 버튼군 — #bo_v_top과 동일한 흰 아웃라인 정사각 아이콘 버튼으로 통일 */
.t2sub-body .btn_bo_user{display:flex;gap:8px;align-items:center;justify-content:flex-end;flex-wrap:wrap;margin:0 0 12px;padding:0;list-style:none;}
.t2sub-body .btn_bo_user li{margin:0;padding:0;list-style:none;position:relative;}
.t2sub-body .btn_bo_user .btn_b01,
.t2sub-body .btn_bo_user .btn_bo_sch,
.t2sub-body .btn_bo_user .btn_more_opt{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:1px solid var(--t2-navy);background:#fff;color:var(--t2-navy);border-radius:8px;box-sizing:border-box;}
.t2sub-body .btn_bo_user .btn_b01:hover,.t2sub-body .btn_bo_user .btn_bo_sch:hover,.t2sub-body .btn_bo_user .btn_more_opt:hover{background:var(--t2-bluebg);color:var(--t2-blue);border-color:var(--t2-blue);}
.t2sub-body .btn_bo_user i,.t2sub-body .btn_bo_user svg{width:18px;height:18px;line-height:1;font-size:16px;}
.t2sub-body .btn_bo_user .more_opt{position:absolute;right:0;top:calc(100% + 6px);background:#fff;border:1px solid var(--t2-line);border-radius:12px;box-shadow:0 12px 28px rgba(14,53,80,.14);padding:6px;min-width:128px;z-index:50;list-style:none;}
.t2sub-body .btn_bo_user .more_opt li{list-style:none;margin:0;}
.t2sub-body .btn_bo_user .more_opt a{display:block;padding:10px 14px;border-radius:8px;color:var(--t2-ink);font-size:15px;white-space:nowrap;}
.t2sub-body .btn_bo_user .more_opt a:hover{background:var(--t2-bluebg);color:var(--t2-blue);}

/* 하단 글쓰기 버튼 — vendor pill(::before/::after) 제거, 네이비 텍스트 버튼 */
.t2sub-body .bo_fx{display:flex;justify-content:flex-end;align-items:center;margin-top:16px;}
.t2sub-body .icon_btn_write{position:static;margin-top:0;height:auto;min-height:0;padding:12px 26px;border-radius:10px;background:var(--t2-navy);color:#fff;font-weight:700;font-size:15px;display:inline-flex;align-items:center;gap:8px;white-space:nowrap;overflow:visible;text-decoration:none;}
.t2sub-body .icon_btn_write::before,.t2sub-body .icon_btn_write::after{content:none;display:none;}
.t2sub-body .icon_btn_write span{position:static;display:inline;color:#fff;font-size:15px;clip:auto;width:auto;height:auto;}
.t2sub-body .icon_btn_write:hover{background:#0b2740;}
