/* Caja de correo (capture.js). Usa las variables de site.css (claro/oscuro). */
.capture { padding: 28px 0; }
.capture-card { max-width: 760px; padding: 24px; border: 2px solid var(--primary); }
.capture .capture-card h2 { margin: 0 0 8px; font-size: clamp(21px, 2.6vw, 26px); line-height: 1.2; }
.capture .capture-card p { margin: 0 0 14px; color: var(--text); font-size: 17px; line-height: 1.55; }
.capture-row { display: flex; gap: 10px; flex-wrap: wrap; }
.capture-row input { flex: 1 1 220px; min-height: 48px; padding: 10px 14px; border: 1px solid var(--border); border-radius: 12px;
  background: var(--bg); color: var(--text); font: inherit; font-size: 16px; }
.capture-row .btn { font: inherit; font-weight: 700; cursor: pointer; min-height: 48px; }
.capture-consent { display: flex; gap: 10px; align-items: flex-start; margin: 14px 0 6px; font-size: 14px; line-height: 1.45; cursor: pointer; }
.capture-consent input { width: 20px; height: 20px; flex: 0 0 auto; margin: 0; accent-color: var(--primary); }
.capture-hp { position: absolute; left: -9999px; width: 1px; height: 1px; opacity: 0; }
.capture-msg { min-height: 0; margin: 8px 0 0 !important; font-weight: 600; }
.capture-msg:empty { display: none; }
.capture-msg.ok { color: var(--ok); }
.capture-msg.err { color: var(--bad); }
.capture-note { font-size: 13px !important; color: var(--muted) !important; margin: 6px 0 0 !important; }
.capture-card.done .capture-row, .capture-card.done .capture-consent { display: none; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); border: 0; }
@media (max-width: 560px) { .capture-card { padding: 18px; } .capture-row .btn { width: 100%; justify-content: center; } }
