/*
 * [새 디자인 v2 · 1단계] 모든 페이지 공용 머리글·메뉴·바닥글·글꼴·색 (2026-10-09, redesign-v2 브랜치)
 * 클래스는 v2- 로 시작해 기존 jk_style.css 와 겹치지 않게 했다. 본문(각 페이지 내용)은 건드리지 않는다.
 */
:root{--v2-navy:#0f1f3a;--v2-navy2:#1b335c;--v2-red:#b0241f;--v2-red2:#d23a2f;--v2-gold:#ffcf6e;--v2-ink:#1d2433;--v2-mute:#5d6676;--v2-line:#e3e7ee;--v2-bg:#f6f7f9}
body{font-family:Pretendard,-apple-system,"Apple SD Gothic Neo","Malgun Gothic","맑은 고딕",sans-serif}
.v2-w{max-width:1160px;margin:0 auto;padding:0 20px;box-sizing:border-box}
.v2-h,.v2-h *,.v2-ft,.v2-ft *,.v2-fab,.v2-fab *,.v2-mbar,.v2-mbar *{box-sizing:border-box;font-family:Pretendard,-apple-system,"Apple SD Gothic Neo","Malgun Gothic",sans-serif;letter-spacing:-.01em}
/* 머리글 */
.v2-h{position:sticky;top:0;z-index:900;background:rgba(255,255,255,.97);border-bottom:1px solid var(--v2-line);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);text-align:left}
.v2-h-in{display:flex;align-items:center;gap:14px;height:66px}
.v2-logo{display:flex;align-items:center;gap:8px;text-decoration:none!important;white-space:nowrap}
.v2-logo b{color:var(--v2-red);font-size:21px;font-weight:900;letter-spacing:-.02em}.v2-logo span{color:var(--v2-mute);font-size:13.5px;font-weight:600}
.v2-nav{display:flex;margin-left:auto}
.v2-m{position:relative}
.v2-m>a{display:block;padding:22px 13px;font-size:15.5px;font-weight:700;color:#2a3242!important;text-decoration:none!important}
.v2-m>a:hover,.v2-m.on>a{color:var(--v2-red)!important}
.v2-md{display:none;position:absolute;left:0;top:100%;min-width:210px;background:#fff;border:1px solid var(--v2-line);border-radius:14px;padding:8px;box-shadow:0 18px 40px rgba(15,31,58,.16)}
.v2-m:hover .v2-md,.v2-m:focus-within .v2-md{display:block}
.v2-md a{display:block;padding:9px 12px;border-radius:9px;font-size:14.5px;color:var(--v2-ink)!important;text-decoration:none!important;white-space:nowrap}
.v2-md a:hover{background:var(--v2-bg);color:var(--v2-red)!important}
.v2-u{display:flex;gap:12px;align-items:center;font-size:13.5px;margin-left:6px;white-space:nowrap}
.v2-u a{color:var(--v2-mute)!important;text-decoration:none!important}.v2-u a:hover{color:var(--v2-ink)!important}
.v2-u .v2-adm{color:var(--v2-red)!important;font-weight:800}
.v2-srch-b{background:none;border:0;cursor:pointer;font-size:18px;padding:6px;color:#2a3242}
.v2-cta{background:var(--v2-red);color:#fff!important;padding:9px 15px;border-radius:999px;font-weight:800}
.v2-cta:hover{background:var(--v2-red2)}
.v2-burger{display:none;margin-left:auto;background:none;border:0;font-size:26px;color:#2a3242;cursor:pointer}
.v2-sp{display:none;border-top:1px solid var(--v2-line);background:#fff;padding:14px 0}
.v2-h.srch .v2-sp{display:block}
.v2-sp form{display:flex;max-width:640px;margin:0 auto;border:2px solid var(--v2-navy);border-radius:999px;overflow:hidden}
.v2-sp input{flex:1;border:0;padding:12px 18px;font-size:15px;outline:0;font-family:inherit}
.v2-sp button{border:0;background:var(--v2-navy);color:#fff;padding:0 20px;font-weight:800;font-family:inherit;cursor:pointer}
.v2-sp p{max-width:640px;margin:8px auto 0;font-size:13px;color:var(--v2-mute)}.v2-sp p a{color:var(--v2-navy2)!important;margin-right:8px}
.v2-dr{display:none;background:#fff;border-top:1px solid var(--v2-line);max-height:78vh;overflow:auto;padding:6px 20px 20px}
.v2-h.open .v2-dr{display:block}
.v2-dr details{border-bottom:1px solid var(--v2-line)}.v2-dr summary{padding:14px 0;font-weight:800;cursor:pointer;color:var(--v2-ink);list-style:none}
.v2-dr summary::-webkit-details-marker{display:none}.v2-dr summary:after{content:"+";float:right;color:var(--v2-mute)}.v2-dr details[open] summary:after{content:"−"}
.v2-dr details a{display:block;padding:8px 10px;color:var(--v2-ink)!important;text-decoration:none!important;font-size:15px}
.v2-dr-u{display:flex;flex-wrap:wrap;gap:8px;padding:12px 0}.v2-dr-u a{border:1px solid var(--v2-line);border-radius:999px;padding:7px 13px;font-size:14px;color:var(--v2-ink)!important;text-decoration:none!important}
.v2-dr-u a.v2-cta{border-color:var(--v2-red);color:#fff!important}
@media (max-width:1100px){.v2-nav,.v2-u{display:none}.v2-burger{display:block}.v2-h-in{height:58px}}
/* 바닥글 */
.v2-ft{background:#0b1730;color:#9fb0cc;font-size:13px;line-height:1.75;padding:40px 0 34px;text-align:left;clear:both}
.v2-ft b{color:#e6ecf7}.v2-ft a{color:#cdd8ea!important;text-decoration:none!important}.v2-ft a:hover{color:#fff!important}
.v2-ft-g{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;margin-bottom:18px}
.v2-ft-tel{font-size:24px;font-weight:900;color:#fff;letter-spacing:-.01em;display:block;margin:2px 0}
.v2-ft-l{border-top:1px solid rgba(255,255,255,.12);padding-top:14px;margin:0 0 8px}
.v2-ft p{margin:6px 0 0}
@media (max-width:900px){.v2-ft-g{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.v2-ft-g{grid-template-columns:minmax(0,1fr)}}
/* 늘 보이는 상담 버튼(PC 오른쪽 아래) · 휴대폰 아래 고정 줄 */
.v2-fab{position:fixed;right:22px;bottom:22px;z-index:880;display:flex;flex-direction:column;align-items:flex-end;gap:10px}
.v2-fab a{display:flex;align-items:center;gap:8px;text-decoration:none!important;border-radius:999px;padding:13px 18px;font-weight:800;font-size:15px;box-shadow:0 12px 30px rgba(0,0,0,.2)}
.v2-fab .f1{background:var(--v2-red);color:#fff!important}.v2-fab .f2{background:#fee500;color:#191919!important;padding:11px 16px;font-size:14px}
.v2-fab .pl{width:9px;height:9px;border-radius:50%;background:#fff;animation:v2pl 1.6s infinite}
@keyframes v2pl{0%{box-shadow:0 0 0 0 rgba(255,255,255,.8)}100%{box-shadow:0 0 0 12px rgba(255,255,255,0)}}
.v2-mbar{display:none}
@media (max-width:1000px){
 .v2-fab{display:none}
 .v2-mbar{display:grid;grid-template-columns:1fr 1fr 1.3fr;position:fixed;left:0;right:0;bottom:0;z-index:880;background:#fff;border-top:1px solid var(--v2-line);box-shadow:0 -8px 24px rgba(0,0,0,.08);padding:8px 10px calc(8px + env(safe-area-inset-bottom));gap:8px}
 .v2-mbar a{display:flex;align-items:center;justify-content:center;gap:6px;text-decoration:none!important;border-radius:12px;padding:12px 6px;font-weight:800;font-size:15px}
 .v2-mbar .m1{background:var(--v2-navy);color:#fff!important}.v2-mbar .m2{background:#fee500;color:#191919!important}.v2-mbar .m3{background:var(--v2-red);color:#fff!important}
 body.v2-has-mbar{padding-bottom:72px}
}
@media (prefers-reduced-motion:reduce){.v2-fab .pl{animation:none}}
/* 휴대폰 별도 페이지(/m/)의 기존 메뉴 막대(부트스트랩)를 새 색·글꼴로 — 기능은 그대로 */
.v2-mobile .navbar-default{background:#fff;border:0;border-bottom:1px solid var(--v2-line);box-shadow:0 2px 10px rgba(15,31,58,.04)}
.v2-mobile .navbar-default .navbar-nav>li>a,.v2-mobile .navbar-default .navbar-brand{color:#2a3242;font-weight:700}
.v2-mobile .navbar-default .navbar-toggle{border-color:var(--v2-line)}.v2-mobile .navbar-default .navbar-toggle .icon-bar{background:var(--v2-navy)}
.v2-mobile .navbar-default .dropdown-menu>li>a{padding:9px 18px;font-size:15px}
.v2-mobile .btn-primary,.v2-mobile .btn-jk{background:var(--v2-red);border-color:var(--v2-red)}
.v2-mobile .v2-mlogo{color:var(--v2-red);font-size:20px;font-weight:900;letter-spacing:-.02em;line-height:30px;font-family:Pretendard,sans-serif}
.v2-mobile,.v2-mobile input,.v2-mobile textarea,.v2-mobile select,.v2-mobile button{font-family:Pretendard,-apple-system,"Apple SD Gothic Neo",sans-serif}
.v2-mobile .v2-ft{padding:30px 0 26px}
/* 머리글 '무료 전화 상담' 버튼 글씨 흰색 (회원 링크 회색 규칙보다 우선) */
.v2-u a.v2-cta,.v2-dr-u a.v2-cta{color:#fff!important;background:var(--v2-red)}
.v2-u a.v2-cta:hover{background:var(--v2-red2);color:#fff!important}
/* 팝업 공지가 휴대폰 화면 밖으로 넘치지 않게 */
.div-pop{max-width:calc(100vw - 16px);box-sizing:border-box}.div-pop img{max-width:100%;height:auto}
.v2-u a.v2-att,.v2-dr-u a.v2-att{color:var(--v2-red)!important;font-weight:700} /* [10/9] 머리글 출석체크 */
