.privacy-page { background:var(--white); }
.privacy-header { max-width:1040px; margin:auto; padding:24px 32px; display:flex; align-items:center; justify-content:space-between; gap:24px; border-bottom:1px solid var(--line); }
.privacy-header .brand { font-size:24px; }
.privacy-header .brand-dot { margin-left:5px; font-size:12px; letter-spacing:.04em; }
.privacy-language { display:flex; gap:4px; }
.privacy-language button { min-height:40px; min-width:42px; border-radius:6px; font-size:13px; color:var(--muted); }
.privacy-language button[aria-pressed="true"] { background:var(--soft); color:var(--ink); font-weight:700; }
.privacy-document { max-width:880px; margin:auto; padding:48px 32px 72px; font-size:16px; }
.privacy-intro { padding-bottom:28px; }
.privacy-back { display:inline-flex; gap:8px; font-size:14px; color:var(--muted); margin-bottom:40px; }
.privacy-kicker { color:var(--green); font-size:12px; font-weight:700; letter-spacing:.12em; margin-bottom:12px; }
.privacy-document h1 { font-size:clamp(30px,5vw,44px); letter-spacing:-.045em; margin-bottom:16px; }
.privacy-date { font-size:13px; color:var(--muted); margin-bottom:20px; }
.privacy-contents { display:flex; flex-wrap:wrap; gap:8px 20px; padding:20px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); font-size:14px; }
.privacy-document section { padding-top:40px; scroll-margin-top:24px; }
.privacy-document h2 { font-size:23px; letter-spacing:-.025em; margin-bottom:16px; }
.privacy-document section p + p { margin-top:14px; }
.privacy-document a:not(.privacy-back), .privacy-footer a { color:var(--green); text-decoration:underline; text-underline-offset:3px; overflow-wrap:anywhere; }
.privacy-data { margin:20px 0; border-top:1px solid var(--line); }
.privacy-data > div { display:grid; grid-template-columns:175px minmax(0,1fr); gap:20px; padding:17px 0; border-bottom:1px solid var(--line); }
.privacy-data dt { font-size:14px; font-weight:650; line-height:1.8; }
.privacy-data dd { margin:0; font-size:15px; line-height:1.8; overflow-wrap:anywhere; }
.privacy-footer { max-width:1040px; margin:auto; border-top:1px solid var(--line); display:flex; flex-wrap:wrap; justify-content:space-between; gap:20px; padding:28px 32px; font-size:13px; color:var(--muted); }
@media(max-width:600px) {
  .privacy-header { padding:18px 20px; }
  .privacy-document { padding:32px 20px 52px; font-size:15px; }
  .privacy-back { margin-bottom:28px; }
  .privacy-document h2 { font-size:21px; }
  .privacy-data > div { grid-template-columns:minmax(0,1fr); gap:5px; }
  .privacy-footer { padding:24px 20px; }
}
@media print {
  .privacy-header, .privacy-back, .privacy-contents, .privacy-footer { display:none; }
  .privacy-document { max-width:none; padding:0; font-size:11pt; }
  .privacy-document section { padding-top:20px; }
  .privacy-document h2 { break-after:avoid; }
  .privacy-data > div { break-inside:avoid; }
}
