:root {
  color-scheme: light;
  --purple: #4b0082;
  --gold: #f2b33d;
  --night: #190d25;
}

* { box-sizing: border-box; }
body {
  margin: 0;
  background: #faf8fc;
  color: #302839;
  font-family: Arial, Helvetica, sans-serif;
  line-height: 1.8;
}
.policy-wrap { width: min(900px, calc(100% - 48px)); margin-inline: auto; }
.policy-header { background: var(--night); color: #fff; }
.policy-header-inner { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding-block: 10px; }
.policy-header img { display: block; width: 180px; height: auto; }
.back-link { color: #fff; font-size: 13px; }
a { color: var(--purple); text-underline-offset: 4px; }
a:focus-visible { outline: 3px solid var(--gold); outline-offset: 5px; }
main { padding-block: 56px; }
.policy-kicker { color: var(--purple); font-size: 10px; font-weight: 700; letter-spacing: 1.5px; }
h1 { font-size: clamp(30px, 5vw, 46px); color: var(--purple); line-height: 1.2; letter-spacing: -1px; margin-block: 18px 28px; }
.policy-source { padding: 20px 24px; background: #eee7f4; border-left: 4px solid var(--gold); font-size: 13px; margin-bottom: 40px; }
.policy-source p { margin-block: 8px; }
.policy-document { font-size: 15px; overflow-wrap: anywhere; }
.policy-document h2 { font-size: 24px; line-height: 1.3; color: var(--night); margin-top: 36px; }
.policy-document h3 { font-size: 18px; line-height: 1.4; color: var(--night); margin-top: 28px; }
.policy-document li { margin-block: 8px; }
.policy-document ul, .policy-document ol { padding-left: 24px; }
.policy-footer { display: flex; flex-wrap: wrap; gap: 16px 24px; border-top: 1px solid #dfd4e8; padding-block: 26px 44px; font-size: 12px; }
.skip-link { position: absolute; left: 12px; top: -100px; background: white; color: var(--purple); padding: 12px; z-index: 10; }
.skip-link:focus { top: 10px; }
@media (max-width: 580px) {
  .policy-wrap { width: calc(100% - 36px); }
  .policy-header img { width: 140px; }
  .back-link { font-size: 11px; }
  main { padding-block: 35px; }
  .policy-source { padding: 16px; }
}
