.policy-page { padding: clamp(4.5rem, 9vw, 8rem) 0; background: var(--mist); }

.policy-page .policy-shell { max-width: 920px; }

.policy-page h1 {
  margin: .5rem 0 1.5rem;
  font-size: clamp(2.75rem, 8vw, 5.5rem);
  font-weight: 400;
  letter-spacing: -.045em;
  line-height: 1;
}

.policy-page .policy-intro { max-width: 760px; margin-bottom: 1rem; color: var(--muted); font-size: clamp(1.05rem, 2vw, 1.25rem); }

.policy-page .policy-date { margin-bottom: clamp(3rem, 6vw, 5rem); color: var(--muted); font-size: .85rem; }

.policy-page .policy-section { padding: 1.8rem 0; border-top: 1px solid var(--line); }

.policy-page .policy-section h2 { margin: 0 0 .8rem; font-size: clamp(1.35rem, 3vw, 1.75rem); font-weight: 600; line-height: 1.25; }

.policy-page .policy-section p,
.policy-page .policy-section ul { max-width: 760px; margin: 0 0 .8rem; color: #35445a; }

.policy-page .policy-section p:last-child,
.policy-page .policy-section ul:last-child { margin-bottom: 0; }

.policy-page .policy-section ul { padding-left: 1.3rem; }

.policy-page .policy-section li + li { margin-top: .45rem; }

.policy-page .policy-section a { color: var(--navy); text-underline-offset: .2em; overflow-wrap: anywhere; }

.policy-page .policy-return { display: inline-block; margin-top: 2rem; font-weight: 700; text-underline-offset: .3em; }

@media (max-width: 640px) {
  .policy-page { padding: 4rem 0; }
  .policy-page .policy-section { padding: 1.5rem 0; }
}
