/* Phone-friendly layout for Cookie, Privacy and Terms pages */

/* anchor links (table of contents) should not hide under the floating header */
h2[id] { scroll-margin-top: 110px; }

@media (max-width: 640px) {
  .wrap { padding: 108px 20px 64px; }
  h1 { font-size: 30px; line-height: 1.2; }
  h2 { font-size: 19px; line-height: 1.35; margin-top: 36px; }
  p, li { font-size: 15px; line-height: 1.65; }
  .intro { font-size: 15.5px; margin-bottom: 28px; }

  /* "On this page" box: one column instead of two */
  .toc { padding: 18px; margin-bottom: 36px; }
  .toc ol { columns: 1; }

  /* tables scroll sideways inside themselves instead of stretching the page */
  table { display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; font-size: 13px; }
  th, td { padding: 9px 10px; min-width: 90px; }

  /* long words / emails never push the page wider than the screen */
  a, code, td, p, li { overflow-wrap: anywhere; }

  /* cookie preference box (cookie page) */
  .pref-panel { padding: 18px; }
  .pref-row { flex-direction: column; gap: 10px; }
  .toggle-badge { align-self: flex-start; margin-top: 0; }
  .pref-actions .btn { flex: 1 1 140px; }

  .contact-box { padding: 18px; }
  .note { margin-top: 40px; padding: 14px 16px; }
  .brand-footer { margin-top: 48px; }
  .brand-footer .links { gap: 10px 18px; }
}
