.policy-shell {
  min-height: 100vh;
  display: grid;
  place-items: center;
  padding: 40px 20px;
}
.policy-card { width: min(100%, 780px); padding: clamp(24px, 5vw, 48px); }
.policy-card h1 { font-size: clamp(2rem, 5vw, 3rem); letter-spacing: -.04em; }
.policy-card h2 { font-size: 1.1rem; margin: 28px 0 8px; }
.policy-card p { color: #c9ced8; }
.policy-foot { border-top: 1px solid var(--line); padding-top: 18px; margin-top: 30px; }
.meta-scope-panel { margin-top: 18px; }
.meta-association-row {
  display: grid;
  grid-template-columns: minmax(180px, 1fr) minmax(220px, 1fr) minmax(210px, 1fr) auto;
  gap: 16px;
  align-items: end;
  padding: 18px 0;
  border-top: 1px solid var(--line);
}
.meta-association-row:first-child { border-top: 0; }
.meta-association-row strong, .meta-association-row small { display: block; }
.meta-association-row small { color: var(--muted); margin-top: 4px; }
.meta-association-row label { margin: 0; }
button:disabled { opacity: .45; cursor: not-allowed; }
@media (max-width: 1000px) {
  .meta-association-row { grid-template-columns: 1fr; align-items: stretch; }
}
