@media (max-width: 940px) {
  .privacy-document-layout {
    grid-template-areas:
      "toc"
      "article";
    grid-template-columns: minmax(0, 720px);
    gap: 56px;
  }

  .privacy-toc {
    position: static;
    padding: 0 0 28px;
    border-bottom: 1px solid var(--line);
    border-left: 0;
  }

  .privacy-toc ol {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    column-gap: 24px;
  }
}

@media (max-width: 640px) {
  .privacy-hero {
    padding: 122px 0 54px;
  }

  .privacy-hero h1 {
    margin-bottom: 18px;
    font-size: clamp(2.55rem, 12vw, 3.4rem);
  }

  .privacy-hero-inner > p:not(.privacy-meta) {
    font-size: 15px;
    line-height: 1.65;
  }

  .privacy-meta {
    font-size: 12px;
  }

  .privacy-document-section {
    padding: 56px 0 96px;
  }

  .privacy-document-layout {
    gap: 0;
  }

  .privacy-toc {
    display: none;
  }

  .privacy-callout {
    margin-bottom: 48px;
    padding: 0 0 32px 16px;
  }

  .privacy-callout p,
  .policy-section p,
  .policy-section li,
  .permission-list dd,
  .provider-list dd {
    font-size: 14px;
  }

  .policy-section {
    padding-bottom: 44px;
  }

  .policy-section + .policy-section {
    padding-top: 44px;
  }

  .policy-section h2 {
    font-size: 1.65rem;
  }

  .policy-section h3 {
    margin-top: 28px;
    font-size: 17px;
  }

  .permission-list > div,
  .provider-list > div {
    grid-template-columns: 1fr;
    gap: 5px;
  }
}
