/* Row of buttons, keep previous width (~220px) */
:root { --link-card-w: 220px; }

main {
  display: block;
  width: 100%;
  padding: 18px 0;      /* light spacing above policies */
  min-height: 0;        /* cancel the old centering height */
}

/* lay out left→right, wrap on small screens */
.link-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  justify-content: center;   /* center the row */
  align-items: stretch;
  margin: 0;                 /* remove big top margin */
  padding: 0 16px;
  list-style: none;
}

/* preserve previous button width */
.link-grid li {
  flex: 0 0 var(--link-card-w);   /* no grow, no shrink, fixed basis */
}

/* keep your existing “pretty link card” styles */
.link-grid a {
  display: block;
  width: 100%;
  text-align: center;
  text-decoration: none;
  padding: 0.9rem 1rem;
  border: 1px solid rgba(0,0,0,.12);
  border-radius: 12px;
  background: rgba(255,255,255,.92);
  color: inherit;
  box-shadow: 0 1px 6px rgba(0,0,0,.06);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.link-grid a:hover,
.link-grid a:focus-visible {
  transform: translateY(-2px);
  box-shadow: 0 10px 26px rgba(0,0,0,.14);
  border-color: rgba(0,0,0,.25);
  outline: none;
}

/* (optional) on very narrow screens, let each button take the full width */
@media (max-width: 480px){
  .link-grid li { flex: 1 1 100%; }
}
  a{color:var(--link); text-decoration:none}
  a:hover,a:focus{color:var(--link-hover); text-decoration:underline}

  .wrap{
    max-width: var(--maxw);
    margin: 0 auto clamp(32px, 5vw, 72px);
    padding: 0 20px 48px;
    margin-top:190px;
  }
  header.page-head{
    text-align:center;
    margin-bottom: 28px;
  }
  .eyebrow{
    display:inline-block;
    font-size:.75rem;
    letter-spacing:.12em;
    text-transform:uppercase;
    color:var(--muted);
    background: #eef2f7;
    border:1px solid var(--border);
    padding:.25rem .5rem;
    border-radius:999px;
    margin-bottom:10px;
  }
  h1{
    margin:.25rem 0 .25rem;
    font-size: clamp(1.9rem, 1.2rem + 2.5vw, 2.6rem);
    line-height:1.2;
  }
  .meta{ color:var(--muted); font-size:.95rem; }

  .policy{
    background: var(--card);
    border: 1px solid var(--border);
    border-radius: 14px;
    padding: clamp(16px, 3vw, 36px);
    box-shadow: 0 10px 30px rgba(2,8,23,.06);
  }

  .toc{
    border:1px solid var(--border);
    background:#f9fbff;
    border-radius:10px;
    padding:16px;
    margin: 8px 0 24px;
  }
  .toc strong{
    display:block; margin-bottom:6px; color:var(--muted); font-size:.95rem; letter-spacing:.04em;
  }
  .toc ul{list-style:none; padding-left:0; margin:0}
  .toc li{margin:.25rem 0}

  h2{
    margin: 28px 0 8px;
    font-size: clamp(1.25rem, 1rem + 1vw, 1.6rem);
    line-height:1.25;
    position:relative;
    scroll-margin-top: 80px;
  }
  h3{ margin: 18px 0 6px; font-size: 1.05rem; }
  p{margin: .75rem 0}
  ul{padding-left:1.2rem; margin:.5rem 0 1rem}
  li{margin:.35rem 0}

  .small{ font-size:.925rem; color:var(--muted) }
  .term{ font-weight:700; letter-spacing:.02em }

  .note{
    background:#fafcff;
    border:1px solid var(--border);
    border-radius:10px;
    padding:.75rem .9rem;
    color:var(--muted);
  }

  .legal-links{
    display:flex; gap:12px; flex-wrap:wrap; justify-content:center;
    margin-top:28px; padding-top:18px; border-top:1px dashed var(--border)
  }

  @media print{
    body{background:#fff}
    .wrap{margin:0; padding:0; max-width:100%}
    .policy{border:none; box-shadow:none; padding:0}
    a[href^="http"]::after{content:" (" attr(href) ")"; font-size:.85em}
  }