/* FAQ */
.faqs{max-width:820px;margin:0 auto;border-top:1px solid var(--line);}
.faq{border-bottom:1px solid var(--line);}
.faq-q{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:22px 4px;cursor:pointer;font-size:17px;font-weight:700;color:var(--ink);}
.faq-q::after{content:'+';font-size:22px;font-weight:400;color:var(--blue);flex:none;transition:transform .25s;}
.faq.on .faq-q::after{transform:rotate(45deg);}
.faq-a{max-height:0;overflow:hidden;transition:max-height .3s ease;}
.faq.on .faq-a{max-height:260px;}
.faq-a p{padding:0 4px 22px;font-size:16px;}

/* CTA */
.cta{background:linear-gradient(135deg,var(--blue-deep),#1B4E8F);color:#fff;text-align:center;}
.cta h2{color:#fff;font-size:clamp(26px,4vw,38px);}
.cta p{margin-top:16px;font-size:16.5px;color:rgba(255,255,255,.72);}
.cta-btn{margin-top:30px;}
.btn-onblue{background:#fff;color:var(--blue-deep);font-size:16px;padding:14px 26px;border-radius:9px;box-shadow:0 10px 26px -12px rgba(0,0,0,.55);}
.btn-onblue:hover{background:#EAF2FB;transform:translateY(-1px);}
.cta-fine{margin-top:34px;font-size:13.5px;color:rgba(255,255,255,.45);line-height:1.9;}

/* FOOTER */
footer{background:#0F2E52;padding:48px 0 34px;}
.foot-top{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap;padding-bottom:30px;border-bottom:1px solid rgba(255,255,255,.1);}
.foot-logo{display:flex;align-items:center;gap:9px;}
.foot-logo b{font-size:19px;font-weight:800;color:#fff;letter-spacing:-.035em;}
.foot-logo b span{color:#7BB3EA;}
.foot-nav{display:flex;gap:20px;flex-wrap:wrap;font-size:14px;}
.foot-nav a{color:rgba(255,255,255,.55);}
.foot-nav a:hover{color:#fff;}
.foot-meta{margin-top:22px;font-size:12.5px;color:rgba(255,255,255,.38);line-height:1.95;}
.foot-meta a{color:rgba(255,255,255,.5);}

/* REVEAL */
/* 초기 은닉은 reveal.js가 html에 .rvon을 붙였을 때만 — 스크립트 실패 시 콘텐츠는 그대로 노출 */
.rvon .rv{opacity:0;transform:translateY(16px);transition:opacity .6s ease,transform .6s ease;}
.rvon .rv.show{opacity:1;transform:none;}
@media (prefers-reduced-motion:reduce){.rvon .rv{opacity:1;transform:none;transition:none;}}

