/* POLICIES & PRACTICES.
   A reading page, so the measure is narrow and the type is bigger than the
   rest of the site's body copy — this is the one page somebody will actually
   read top to bottom rather than scan. Shares the hero shape with Talk to us
   so the two feel like the same set of pages. */

.pol { background: var(--white); color: var(--black); }
.pol__wrap { width: min(48rem, calc(100vw - 2.4rem)); margin: 0 auto; }

.pol__hero {
  background: var(--blue); color: var(--white);
  padding: calc(var(--nav-disc) + 2.6rem) 0 2.2rem;
}
.pol__hero .kicker { color: rgba(255,255,255,0.72); }
.pol__h1 {
  font-size: clamp(2.1rem, 5.4vw, 3.4rem); letter-spacing: -0.03em; line-height: 1.04;
  margin: 0.2rem 0 0.6rem;
}
.pol__line { max-width: 40rem; font-size: clamp(0.95rem, 1.5vw, 1.08rem); line-height: 1.6; opacity: 0.92; }

.pol__body { padding: 2.2rem 0 4rem; }

/* contents */
.pol__toc {
  display: flex; flex-wrap: wrap; gap: 0.5rem;
  padding-bottom: 1.8rem; margin-bottom: 1.8rem;
  border-bottom: 1px solid rgba(0,0,0,0.09);
}
.pol__toc a {
  display: inline-flex; align-items: center; gap: 0.4rem;
  padding: 0.45rem 0.9rem; border-radius: 999px; text-decoration: none;
  font-size: 0.86rem; font-weight: 700; color: var(--black);
  background: #f0f5ff; border: 1.5px solid transparent;
}
.pol__toc a:hover { border-color: var(--blue); color: var(--blue); }

.pol__item { padding-bottom: 2.4rem; margin-bottom: 2.4rem; border-bottom: 1px solid rgba(0,0,0,0.07); }
.pol__item:last-of-type { border-bottom: 0; }
/* the nav disc is sticky, so an anchor jump has to clear it */
.pol__item { scroll-margin-top: calc(var(--nav-disc) + 1.5rem); }

.pol__h2 {
  display: flex; align-items: center; gap: 0.6rem;
  font-size: clamp(1.3rem, 3vw, 1.75rem); letter-spacing: -0.02em; margin-bottom: 0.4rem;
}
.pol__icon { font-size: 1.5rem; line-height: 1; }
.pol__sum {
  font-size: 1rem; font-weight: 700; color: var(--blue);
  line-height: 1.5; margin-bottom: 0.9rem;
}
.pol__item p { font-size: 0.98rem; line-height: 1.75; margin-bottom: 0.9rem; }
.pol__doc a { color: var(--blue); font-weight: 700; }

.pol__note {
  background: #f4f8ff; border-radius: 16px; padding: 1.1rem 1.3rem;
  font-size: 0.9rem; line-height: 1.65; opacity: 0.85;
}
.pol__note a { color: var(--blue); font-weight: 700; }

@media (max-width: 640px) {
  .pol__item p { font-size: 0.95rem; }
}
