/* Shared styles for the Riff static landing site.
   Layout mirrors usemixy.com (max-w-sm, text-3xl, rounded-xl, etc.). */

:root {
  --bg-page: #2D4B45;
  --bg-button: #4A6761;
  --bg-button-hover: #708681;
  --text-prose: #d1d5db;
}

* {
  box-sizing: border-box;
}

body {
  margin: 0;
  min-height: 100vh;
  color: #fff;
  font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji",
    "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* ---------- Landing page ---------- */


body.landing {
  background-color: var(--bg-page);
  font-weight: 700;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.landing-card {
  padding: 1.5rem;
  max-width: 24rem;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.75rem;
}

.landing-card .logo {
  width: 8rem;
  height: auto;
}

.landing-card .logomark {
  width: 8rem;
  height: auto;
  padding-top: 0.75rem;
}

.landing-card h1,
.landing-card h2 {
  font-weight: 900;
  font-size: 1.875rem;
  line-height: 2.25rem;
  margin: 0;
}

.landing-links {
  width: 100%;
}

.landing-links a {
  display: block;
  margin: 0.625rem auto;
  padding: 0.625rem 1.5rem;
  font-size: 1.25rem;
  line-height: 1.75rem;
  font-weight: 700;
  cursor: pointer;
  background-color: var(--bg-button);
  border: 0;
  border-radius: 0.75rem;
  color: #fff;
  text-decoration: none;
  text-align: center;
  transition: background-color 300ms;
}

.landing-links a:hover {
  background-color: var(--bg-button-hover);
}

/* ---------- Prose pages (Terms of Service, Privacy) ---------- */

body.prose-page {
  background-color: var(--bg-page);
}

.prose {
  max-width: 56rem;
  margin: 0 auto;
  padding: 1.5rem;
  color: var(--text-prose);
  font-size: 1rem;
  line-height: 1.75;
}

.prose h1 {
  color: #fff;
  font-size: 2.25rem;
  line-height: 1.1;
  font-weight: 800;
  margin: 0 0 0.9em;
}

.prose h2 {
  color: #fff;
  font-size: 1.5rem;
  line-height: 1.33;
  font-weight: 700;
  margin: 2em 0 1em;
}

.prose h3 {
  color: #fff;
  font-size: 1.25rem;
  line-height: 1.6;
  font-weight: 600;
  margin: 1.6em 0 0.6em;
}

.prose p {
  margin: 1.25em 0;
}

.prose strong {
  color: #fff;
  font-weight: 600;
}

.prose a {
  color: #fff;
  text-decoration: underline;
  font-weight: 500;
}

.prose ol,
.prose ul {
  margin: 1.25em 0;
  padding-left: 1.625em;
}

.prose li {
  margin: 0.5em 0;
}

.prose u {
  color: #fff;
}
