/* ---------- Prose (privacy policy, contact intro) ---------- */
.cc-prose {
  max-width: 760px;
  margin: 32px auto 60px;
  padding-top: 24px;
  padding-bottom: 24px;
  line-height: 1.7;
  color: var(--ev-ink);
}

.cc-prose h1 {
  font-size: 32px;
  font-weight: 700;
  color: var(--ev-navy);
  margin: 0 0 4px;
}

.cc-prose__updated {
  font-size: 13px;
  color: var(--ev-muted);
  margin: 0 0 28px;
}

.cc-prose h2 {
  font-size: 20px;
  font-weight: 700;
  color: var(--ev-navy);
  margin: 32px 0 10px;
}

.cc-prose h3 {
  font-size: 16px;
  font-weight: 600;
  color: var(--ev-navy);
  margin: 22px 0 8px;
}

.cc-prose p, .cc-prose ul {
  font-size: 15px;
  margin: 0 0 14px;
}

.cc-prose ul { padding-left: 22px; }
.cc-prose li { margin-bottom: 8px; }

.cc-prose a { color: var(--ev-blue); font-weight: 600; }
.cc-prose a:hover { text-decoration: underline; }

/* ---------- Contact form ---------- */
.cc-form {
  display: flex;
  flex-direction: column;
  gap: 18px;
  background: #fff;
  border: 1px solid var(--ev-line);
  border-radius: var(--radius);
  padding: 24px;
  margin-top: 8px;
}

.cc-form__field {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.cc-form__field label {
  font-size: 13px;
  font-weight: 600;
  color: var(--ev-navy);
}

.cc-form__field input,
.cc-form__field textarea {
  font-family: var(--font);
  font-size: 15px;
  color: var(--ev-ink);
  padding: 10px 12px;
  border: 1px solid var(--ev-line);
  border-radius: var(--radius-sm);
  background: var(--ev-bg-soft);
  resize: vertical;
}

.cc-form__field input:focus,
.cc-form__field textarea:focus {
  outline: 2px solid var(--ev-blue);
  outline-offset: 1px;
  background: #fff;
}

.cc-form button.cc-btn {
  border: none;
  cursor: pointer;
  font-family: var(--font);
  align-self: flex-start;
}

/* Honeypot field - present in the DOM for bots that parse raw HTML, hidden
   from sighted users and screen readers alike. */
.cc-form__honeypot {
  position: absolute;
  left: -9999px;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

/* ---------- Alerts ---------- */
.cc-alert {
  border-radius: var(--radius-sm);
  padding: 14px 16px;
  margin-bottom: 18px;
  font-size: 14px;
}

.cc-alert p { margin: 0 0 4px; }
.cc-alert p:last-child { margin-bottom: 0; }

.cc-alert--success {
  background: var(--ev-green-bg);
  border: 1px solid var(--ev-green);
  color: var(--ev-green);
}

.cc-alert--error {
  background: #fdecec;
  border: 1px solid #d64545;
  color: #a82a2a;
}

.cc-alert--warning {
  background: var(--ev-bg-soft);
  border: 1px solid var(--ev-amber);
  color: var(--ev-navy);
}
