:root{--bg:#fff;--slate:#f8fafc;--ink:#0f2438;--ink-2:#475569;--ink-3:#94a3b8;--line:#e3e9f0;--line-2:#eef2f7;--navy:#15324e;--teal:#0d9488;--teal-d:#0f766e;--teal-soft:#effdfa;--teal-soft2:#ccfbf1;--shadow:0 1px 2px rgba(15,36,56,.05),0 12px 30px -14px rgba(15,36,56,.2)}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:"Pretendard Variable",Pretendard,-apple-system,sans-serif;background:var(--bg);color:var(--ink);line-height:1.7;-webkit-font-smoothing:antialiased;word-break:keep-all;overflow-wrap:break-word}
a{color:inherit;text-decoration:none}
.container{width:min(880px,92vw);margin-inline:auto}
nav{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.86);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.nav-content{display:flex;align-items:center;justify-content:space-between;padding:13px 0}
.logo{display:flex;align-items:center;gap:9px;font-weight:800;font-size:16.5px;letter-spacing:-.02em;color:var(--ink)}
.logo img{width:28px;height:28px;border-radius:8px}
.logo span{width:28px;height:28px;border-radius:8px;background:var(--navy);display:inline-block}
.nav-links{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;gap:6px;font-weight:700;border-radius:10px;padding:9px 15px;font-size:13.5px;border:1px solid transparent;cursor:pointer;transition:.18s;letter-spacing:-.02em}
.btn-primary{background:var(--teal);color:#fff}
.btn-primary:hover{background:var(--teal-d)}
.btn-secondary{background:#fff;border-color:var(--line);color:var(--ink-2)}
.btn-secondary:hover{background:var(--slate);color:var(--ink)}
.btn:disabled{opacity:.5;cursor:not-allowed}
.privacy-hero,.policy-hero,.page-hero{padding:54px 0 26px}
.privacy-hero h1,.policy-hero h1,.page-hero h1{font-size:clamp(28px,5vw,40px);font-weight:800;letter-spacing:-.04em;color:var(--ink)}
.privacy-meta,.policy-meta{margin-top:12px;font-size:13.5px;color:var(--ink-3);font-weight:600}
.page-copy{margin-top:14px;font-size:15.5px;color:var(--ink-2);max-width:62ch;line-height:1.65}
.policy-container,.form-shell{padding-bottom:60px;display:grid;gap:18px}
.glass-panel{background:#fff;border:1px solid var(--line);border-radius:18px;padding:26px;box-shadow:var(--shadow)}
.policy-section h2,.form-panel h2{font-size:18px;font-weight:800;color:var(--navy);margin-bottom:12px;letter-spacing:-.02em}
.policy-section p{font-size:14.5px;color:var(--ink-2);margin:6px 0;line-height:1.7}
.policy-section a{color:var(--teal-d);font-weight:700}
.highlight-text{font-weight:800;color:var(--ink)}
.policy-list,.helper-list{list-style:none;display:grid;gap:9px;margin-top:6px}
.policy-list li,.helper-list li{position:relative;padding-left:20px;font-size:14.5px;color:var(--ink-2);line-height:1.65}
.policy-list li::before,.helper-list li::before{content:"";position:absolute;left:2px;top:9px;width:7px;height:7px;border-radius:50%;background:var(--teal)}
.form-stack{display:grid;gap:16px}
.form-stack label{display:grid;gap:7px}
.form-stack label>span{font-size:13.5px;font-weight:700;color:var(--ink)}
.form-stack input,.form-stack textarea{font-family:inherit;font-size:14.5px;color:var(--ink);background:var(--slate);border:1px solid var(--line);border-radius:10px;padding:12px 14px;outline:none;transition:.18s;width:100%}
.form-stack input:focus,.form-stack textarea:focus{border-color:var(--teal);background:#fff;box-shadow:0 0 0 3px var(--teal-soft)}
.form-stack textarea{min-height:96px;resize:vertical}
.checkbox-row{display:flex!important;align-items:flex-start;gap:10px}
.checkbox-row input{width:18px;height:18px;margin-top:2px;accent-color:var(--teal);flex:none}
.checkbox-row span{font-size:13px;color:var(--ink-2);line-height:1.55;font-weight:500}
.form-stack .btn-primary{justify-content:center;padding:13px 20px;font-size:15px;margin-top:4px}
.notice-box{border-radius:11px;padding:13px 15px;font-size:14px;font-weight:600;margin-bottom:16px}
.notice-box.error{background:#fef2f2;border:1px solid #fecaca;color:#b91c1c}
.notice-box.success{background:var(--teal-soft);border:1px solid var(--teal-soft2);color:var(--teal-d)}
footer{border-top:1px solid var(--line);padding:30px 0 50px;margin-top:20px;background:var(--slate)}
.footer-content{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;align-items:center}
.copyright{font-size:13px;color:var(--ink-3);line-height:1.7}
.footer-links{display:flex;gap:18px;flex-wrap:wrap}
.footer-links a{font-size:13.5px;color:var(--ink-2);font-weight:700}
.footer-links a:hover{color:var(--teal-d)}
.reveal{opacity:1;transform:none}
@media(max-width:560px){.nav-links .btn{padding:8px 12px;font-size:12.5px}}
