.wta-policy { padding-block: 36px 64px; }
.wta-policy__article { max-width: 960px; }
.wta-policy__header { padding-bottom: 28px; border-bottom: 1px solid var(--border); }
.wta-policy__header nav { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; margin-bottom: 24px; color: var(--text-soft); font-size: 14px; }
.wta-policy__header nav a { display: inline-flex; align-items: center; min-height: 44px; text-decoration: underline; text-underline-offset: 4px; }
.wta-policy h1 { margin: 0 0 20px; font-size: clamp(32px, 4vw, 48px); line-height: 1.2; letter-spacing: -.035em; overflow-wrap: anywhere; }
.wta-policy__lead { margin: 0; color: var(--text-soft); font-size: 18px; }
.wta-policy__draft { padding: 16px 20px; border: 1px solid #d89c1b; border-radius: 12px; background: #fff5d6; color: #654300; }
.wta-policy__content { padding-block: 12px 32px; overflow-wrap: anywhere; }
.wta-policy__content h2 { margin: 36px 0 16px; font-size: clamp(23px, 3vw, 28px); line-height: 1.35; }
.wta-policy__content h3 { font-size: 20px; }
.wta-policy__content p, .wta-policy__content li { line-height: 1.8; }
.wta-policy__content li + li { margin-top: 10px; }
.wta-policy__content ul, .wta-policy__content ol { padding-left: 24px; }
.wta-policy__content a, .wta-policy__links a { text-decoration: underline; text-underline-offset: 4px; }
.wta-policy__contact { padding: 28px; border: 1px solid var(--border); border-radius: 20px; background: var(--surface-soft); }
.wta-policy__contact h2 { margin: 0 0 12px; font-size: 24px; line-height: 1.35; }
.wta-policy__contact p { color: var(--text-soft); }
.wta-policy__links { display: flex; flex-wrap: wrap; gap: 8px 24px; margin-top: 24px; }
.wta-policy__links a { display: inline-flex; align-items: center; min-height: 44px; }
html[data-theme="dark"] .wta-policy { color: #e6f2ff; }
html[data-theme="dark"] :is(.wta-policy__lead, .wta-policy__header nav, .wta-policy__contact p) { color: #b6cce8; }
html[data-theme="dark"] .wta-policy__contact { background: #102b52; border-color: #29496f; }
html[data-theme="dark"] .wta-policy__header { border-color: #29496f; }
html[data-theme="dark"] .wta-policy__draft { background: #33290e; color: #ffe2a0; }
@media (max-width: 680px) {
  .wta-policy { padding-block: 20px 40px; }
  .wta-policy__lead { font-size: 16px; }
  .wta-policy__contact { padding: 20px; }
  .wta-policy__contact .button { width: 100%; padding-block: 14px; text-align: center; }
}
