:root {
  color-scheme: light;
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  background: #f5f2eb;
  color: #211f1b;
}

* { box-sizing: border-box; }

body {
  margin: 0;
  min-height: 100vh;
  background: linear-gradient(180deg, #fffaf0 0, #f5f2eb 100%);
}

.legal-shell {
  width: min(860px, calc(100% - 32px));
  margin: 0 auto;
  padding: max(28px, env(safe-area-inset-top)) 0 max(48px, env(safe-area-inset-bottom));
}

.legal-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 22px;
}

.legal-brand {
  display: flex;
  align-items: center;
  gap: 12px;
  color: inherit;
  text-decoration: none;
  font-weight: 900;
  letter-spacing: .03em;
}

.legal-brand img {
  width: 50px;
  height: 50px;
  object-fit: contain;
}

.legal-home {
  color: #704f17;
  font-weight: 750;
  text-decoration: none;
}

.legal-card {
  background: #fff;
  border: 1px solid rgba(98, 72, 31, .16);
  border-radius: 20px;
  box-shadow: 0 14px 42px rgba(55, 41, 18, .09);
  padding: clamp(22px, 5vw, 44px);
}

h1 {
  margin: 0 0 8px;
  color: #6c4a0c;
  font-size: clamp(1.8rem, 5vw, 2.55rem);
}

h2 {
  margin: 30px 0 8px;
  color: #3f321c;
  font-size: 1.16rem;
}

p, li {
  line-height: 1.7;
}

.updated {
  margin: 0 0 26px;
  color: #6e675b;
}

.legal-callout {
  padding: 16px 18px;
  border-left: 4px solid #e5a51a;
  border-radius: 10px;
  background: #fff7df;
}

.legal-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 26px;
}

.legal-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 10px 18px;
  border-radius: 12px;
  background: #7a5311;
  color: #fff;
  font-weight: 800;
  text-decoration: none;
}

.legal-links {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin-top: 22px;
  font-size: .94rem;
}

.legal-links a { color: #704f17; }

@media (max-width: 540px) {
  .legal-shell { width: min(100% - 20px, 860px); }
  .legal-header { padding: 0 4px; }
  .legal-card { border-radius: 16px; }
  .legal-home { font-size: .9rem; }
}
