/* Text pages (privacy, support, terms, 404). Tokens, header and footer come from base.css. */

.text {
  max-width: 42rem;
  margin: 0 auto;
  padding: 24px var(--gutter) 24px;
}
.text h1 { margin: 0 0 8px; font-size: clamp(1.9rem, 5vw, 2.5rem); line-height: 1.15; }
.text h2 { margin: 40px 0 8px; font-size: 1.3rem; line-height: 1.3; }
.text p, .text ul, .text ol, .text address { margin: 0 0 12px; }
.text ul, .text ol { padding-left: 1.3rem; }
.text li { margin: 0 0 6px; }
.text address { font-style: normal; }
.text strong { font-weight: 650; }
.text .date { color: var(--text-2); margin: 0 0 20px; }
.text .lead { max-width: none; margin: 0 0 20px; }

/* Cards: separation by fill, faint edge, no shadow */
.text .card {
  background: var(--card);
  border: 1px solid var(--edge);
  border-radius: var(--radius);
  padding: 20px var(--gutter) 8px;
  margin: 24px 0 12px;
}
.text .card h2 { margin-top: 0; }

/* FAQ */
.text .section-title { margin-top: 36px; }
.text details {
  background: var(--card);
  border: 1px solid var(--edge);
  border-radius: var(--radius);
  margin: 0 0 8px;
}
.text summary {
  display: flex; align-items: center; justify-content: space-between; gap: 12px;
  min-height: var(--tap); padding: 12px var(--gutter);
  font-weight: 650; cursor: pointer; list-style: none;
}
.text summary::-webkit-details-marker { display: none; }
.text summary::after {
  content: ""; flex: none; width: 8px; height: 8px;
  border-right: 2px solid var(--text-3); border-bottom: 2px solid var(--text-3);
  transform: rotate(45deg); margin-bottom: 3px;
}
.text details[open] summary::after { transform: rotate(-135deg); margin-bottom: -3px; }
.text .answer { padding: 0 var(--gutter) 8px; color: var(--text-2); }
.text .answer a { color: var(--sky-text); }

.text .button { margin-top: 4px; }
