:root { --legal-navy:#132a50; --legal-blue:#2168d5; --legal-ink:#243653; --legal-muted:#6b7a8e; --legal-line:#dfe7f1; --legal-bg:#f5f8fc; }
* { box-sizing:border-box; }
body.legal-page { margin:0; background:var(--legal-bg); color:var(--legal-ink); font-family:'Noto Sans KR',sans-serif; }
.legal-hero { padding:64px 0 48px; background:linear-gradient(120deg,#e9f2ff,#fff 72%); border-bottom:1px solid #dce6f3; }
.legal-shell { width:min(920px,calc(100% - 44px)); margin:0 auto; }
.legal-kicker { margin:0 0 12px; color:var(--legal-blue); font-size:11px; font-weight:900; letter-spacing:.12em; }
.legal-hero h1 { margin:0; color:var(--legal-navy); font-size:clamp(32px,5vw,48px); line-height:1.22; letter-spacing:-.065em; }
.legal-hero p:not(.legal-kicker) { max-width:730px; margin:16px 0 0; color:var(--legal-muted); font-size:14px; line-height:1.8; }
.legal-main { padding:40px 0 84px; }
.legal-card { border:1px solid var(--legal-line); border-radius:18px; padding:36px 42px; background:#fff; box-shadow:0 10px 26px rgba(29,60,100,.05); }
.legal-draft { margin:0 0 28px; border-left:3px solid var(--legal-blue); padding:11px 14px; background:#f0f7ff; color:#42617f; font-size:12px; line-height:1.7; }
.legal-card section { padding:25px 0; border-top:1px solid #e9eef5; }
.legal-card section:first-of-type { border-top:0; padding-top:0; }
.legal-card h2 { margin:0 0 12px; color:var(--legal-navy); font-size:20px; letter-spacing:-.045em; }
.legal-card h3 { margin:18px 0 8px; color:#36547d; font-size:15px; }
.legal-card p, .legal-card li { color:#516278; font-size:14px; line-height:1.9; }
.legal-card p { margin:8px 0; }
.legal-card ul { margin:9px 0; padding-left:20px; }
.legal-card li + li { margin-top:4px; }
.legal-meta { display:grid; grid-template-columns:135px 1fr; gap:1px; overflow:hidden; margin-top:13px; border:1px solid #e0e8f1; border-radius:10px; background:#e0e8f1; }
.legal-meta dt, .legal-meta dd { margin:0; padding:10px 12px; background:#fff; font-size:13px; line-height:1.6; }
.legal-meta dt { color:#42607e; font-weight:800; background:#f7faff; }
.legal-footer { padding:28px 0; background:var(--legal-navy); color:#dce9ff; }
.legal-footer .legal-shell { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:16px; font-size:12px; }
.legal-footer a { color:#fff; font-weight:800; text-decoration:none; }
.legal-footer-nav { display:flex; flex-wrap:wrap; gap:15px; }
@media (max-width:640px) { .legal-hero { padding:46px 0 36px; } .legal-card { padding:25px 20px; border-radius:14px; } .legal-meta { grid-template-columns:1fr; gap:0; } .legal-meta dt { padding-bottom:5px; } .legal-meta dd { padding-top:0; } }
