:root{
  --bg:#FDFBFF;--bg2:#F5F0FC;--bg3:#EDE6F8;
  --bg-dark:#1E0938;--bg-dark2:#2D1054;
  --ac:#8B5CF6;--ac2:#A78BFA;--ac3:#C4B5FD;
  --ac-bg:rgba(139,92,246,0.08);--ac-bd:rgba(139,92,246,0.22);
  --gold:#C9A84C;--gold2:#E8C96A;
  --gold-bg:rgba(201,168,76,0.1);--gold-bd:rgba(201,168,76,0.3);
  --text:#1A0F2E;--text2:#6B5F8A;--text3:#9B8EC0;
  --bd:rgba(139,92,246,0.1);--bd2:rgba(139,92,246,0.2);
  --r:14px;--rs:8px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Pretendard',sans-serif;background:var(--bg);color:var(--text);font-size:15px;line-height:1.6}
button,input,select,textarea{font-family:'Pretendard',sans-serif}

/* 커서 */
a,button,.tag,.my-tab,.faq-q,.auth-tab,[onclick]{cursor:pointer}

/* 스크롤 진행 바 */
#scroll-bar{position:fixed;top:60px;left:0;width:0%;height:3px;background:linear-gradient(90deg,var(--ac),var(--gold));z-index:299;transition:width .1s linear;pointer-events:none}

/* 태그 전환 */
.tag{transition:background .15s,color .15s,border-color .15s}

/* 버튼 hover 리프트 */
.btn-p,.btn-s,.submit-btn,.ncta{transition:all .15s}
.btn-p:hover,.submit-btn:hover{transform:translateY(-1px)}

/* 토스트 알림 */
#toast-container{position:fixed;bottom:28px;right:28px;z-index:9999;display:flex;flex-direction:column;gap:10px;pointer-events:none}
.toast{background:var(--bg-dark);color:#fff;border:1px solid var(--ac-bd);border-radius:var(--r);padding:14px 18px;font-size:13px;font-weight:500;line-height:1.5;max-width:320px;pointer-events:auto;opacity:0;transform:translateY(12px);transition:opacity .25s,transform .25s;box-shadow:0 8px 24px rgba(0,0,0,0.25)}
.toast.show{opacity:1;transform:translateY(0)}
.toast.success{border-color:rgba(74,222,128,0.4)}
.toast.error{border-color:rgba(248,113,113,0.4)}
.toast.info{border-color:var(--ac-bd)}
.toast-dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:8px;flex-shrink:0;vertical-align:middle}
.toast.success .toast-dot{background:#4ade80}
.toast.error .toast-dot{background:#f87171}
.toast.info .toast-dot{background:var(--ac2)}

/* FAQ max-height 트랜지션 */
.faq-a{overflow:hidden;transition:max-height .3s ease,padding .3s ease}

nav{display:flex;align-items:center;justify-content:space-between;padding:0 28px;height:60px;border-bottom:1px solid var(--bd);background:rgba(253,251,255,0.96);backdrop-filter:blur(16px);position:sticky;top:0;z-index:300}
.logo{font-family:'Gowun Batang',serif;font-size:22px;font-weight:700;letter-spacing:-0.5px;color:var(--text);text-decoration:none;display:inline-block}
.logo em{font-style:normal;color:var(--ac);font-weight:700}
.nav-links{display:flex;gap:2px;align-items:center}
.nl{font-size:13px;color:var(--text2);cursor:pointer;border:none;background:none;padding:7px 11px;border-radius:6px;transition:all .15s;text-decoration:none;display:inline-flex;align-items:center}
.nl:hover,.nl.on{color:var(--text);background:var(--ac-bg);font-weight:700}
.ncta{font-size:13px;font-weight:700;padding:8px 18px;background:var(--ac);color:#fff;border:none;border-radius:6px;cursor:pointer;margin-left:8px;text-decoration:none;display:inline-flex;align-items:center}
.ncta:hover{background:#7C3AED}
.nav-apply-btn,.ncta-apply{font-size:13px;font-weight:800;padding:8px 20px;background:linear-gradient(135deg,var(--ac),var(--gold));color:#fff;border:none;border-radius:var(--rs);cursor:pointer;margin-right:6px;text-decoration:none;display:inline-flex;align-items:center;box-shadow:0 0 12px rgba(139,92,246,0.35);transition:all .15s;white-space:nowrap}
.nav-apply-btn:hover,.ncta-apply:hover{transform:translateY(-1px);box-shadow:0 4px 16px rgba(139,92,246,0.45)}
.mob-apply-btn{display:block;padding:14px;background:linear-gradient(135deg,var(--ac),var(--gold));color:#fff;font-weight:800;font-size:15px;border:none;border-radius:var(--rs);text-decoration:none;text-align:center;margin-bottom:10px;box-shadow:0 0 12px rgba(139,92,246,0.3)}
.ham{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:8px;border:none;background:none}
.ham span{display:block;width:22px;height:2px;background:var(--text);border-radius:2px}
.mob-menu{display:none;position:fixed;top:60px;left:0;right:0;bottom:0;background:rgba(253,251,255,0.98);z-index:250;flex-direction:column;padding:24px 20px;gap:4px;overflow-y:auto}
.mob-menu.open{display:flex}
.mob-nl{font-size:16px;color:var(--text2);cursor:pointer;border:none;background:none;padding:13px 0;border-bottom:1px solid var(--bd);text-align:left;width:100%;text-decoration:none;display:block}
.mob-cta{margin-top:16px;padding:14px;background:var(--ac);color:#fff;border:none;border-radius:var(--rs);font-size:15px;font-weight:700;cursor:pointer;width:100%;text-decoration:none;display:block;text-align:center}
.hr{height:1px;background:var(--bd)}

@media(max-width:768px){
  .ham{display:flex}.nav-links{display:none}
  nav{padding:0 16px}
}
