main { width: min(820px, 86vw); margin: 0 auto; padding: clamp(104px, 14vh, 156px) 0 108px; }
.policy-header { padding-bottom: 38px; border-bottom: 1px solid var(--line); animation: policy-arrive .85s .08s cubic-bezier(.16, 1, .3, 1) both; }
.eyebrow { margin: 0 0 19px; color: var(--accent); font: 10px/1.2 var(--mono); }
h1 { margin: 0; color: #f8f9ff; font-size: clamp(54px, 8vw, 92px); font-weight: 400; line-height: .9; letter-spacing: -.055em; }
.effective { margin: 26px 0 0; color: var(--muted); font: 10px/1.4 var(--mono); }
.policy { width: min(680px, 100%); margin: 58px auto 0; color: rgba(238, 242, 253, .83); font-size: 18px; line-height: 1.68; animation: policy-body-arrive .8s .22s cubic-bezier(.16, 1, .3, 1) both; }
.policy > p { margin: 0 0 1.32em; }
.policy h2 { margin: 2.55em 0 .68em; color: #fff; font-size: 25px; font-weight: 400; line-height: 1.15; letter-spacing: -.025em; }
.policy ul { margin: .8em 0 1.5em; padding-left: 1.25em; }
.policy li { margin: .35em 0; }
.policy strong { color: #fff; font-weight: 600; }
.policy a { color: inherit; text-decoration-color: var(--accent); text-underline-offset: .17em; }
.policy a:hover,.policy a:focus-visible { color: var(--accent-bright); outline: none; }
.policy-footer { margin-top: 66px; padding-top: 21px; border-top: 1px solid var(--line); color: var(--muted); font: 9px/1.3 var(--mono); }
@keyframes policy-arrive { from { opacity: 0; filter: blur(6px); transform: translateY(14px); } to { opacity: 1; filter: none; transform: none; } }
@keyframes policy-body-arrive { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }
@media (max-width: 720px) {
  main { width: auto; margin: 0 22px; padding: 76px 0; }
  .policy { margin-top: 44px; font-size: 17px; line-height: 1.64; }
  .policy h2 { font-size: 23px; }
}
@media (prefers-reduced-motion: reduce) {
  .policy-header,
  .policy { animation: none; }
}
