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

* { box-sizing: border-box; }

body { margin: 0; }

.legal-shell {
  min-height: 100vh;
  padding: 24px 16px 48px;
  background: linear-gradient(180deg, #fff8f7 0, #f7f8fb 320px);
}

.legal-page {
  width: min(860px, 100%);
  margin: 0 auto;
  padding: 32px clamp(20px, 5vw, 56px);
  background: #fff;
  border: 1px solid #eadfe0;
  border-radius: 18px;
  box-shadow: 0 12px 32px rgba(31, 41, 55, .08);
}

.legal-brand { color: #c73d4d; font-weight: 800; letter-spacing: .02em; }
.legal-page h1 { margin: 8px 0 10px; color: #172033; font-size: clamp(28px, 5vw, 42px); line-height: 1.15; }
.legal-page h2 { margin: 28px 0 10px; color: #24324a; font-size: 21px; }
.legal-page p, .legal-page li { color: #475467; line-height: 1.7; }
.legal-page ul { padding-left: 22px; }
.legal-meta { color: #667085; font-size: 14px; }
.legal-notice { margin: 20px 0; padding: 14px 16px; border-left: 4px solid #d9485f; background: #fff4f5; color: #7a2532; line-height: 1.6; }
.legal-nav { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 32px; }
.legal-nav a { min-height: 44px; display: inline-flex; align-items: center; padding: 10px 14px; border-radius: 10px; color: #9e2638; font-weight: 700; text-decoration: none; }
.legal-nav a:hover, .legal-nav a:focus-visible { background: #fff0f2; }
.legal-nav a:focus-visible { outline: 3px solid rgba(30, 64, 175, .35); outline-offset: 2px; }

@media (max-width: 600px) {
  .legal-shell { padding: 0; }
  .legal-page { min-height: 100vh; border: 0; border-radius: 0; padding: 24px 18px 40px; }
}
