.editorial-capture {
  margin:34px 0;
  padding:22px;
  border:1px solid var(--rule, #d8cfbf);
  border-radius:8px;
  background:#fffaf2;
  color:var(--ink, #0f0e0c);
}

.editorial-capture h2,
.editorial-capture p {
  margin:0;
}

.editorial-capture .sr-only {
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0, 0, 0, 0);
  white-space:nowrap;
  border:0;
}

.editorial-capture h2 {
  font-family:Fraunces, Georgia, serif;
  font-size:clamp(26px, 3vw, 36px);
  font-weight:500;
  line-height:1.05;
}

.editorial-capture-helper {
  max-width:620px;
  margin-top:8px !important;
  color:var(--muted, #6f675b);
  font-size:16px;
}

.editorial-capture-form {
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:18px;
}

.editorial-capture input {
  flex:1 1 240px;
  min-width:0;
  min-height:46px;
  border:1px solid var(--rule, #d8cfbf);
  border-radius:8px;
  background:var(--paper, #f5f1ea);
  color:var(--ink, #0f0e0c);
  padding:0 13px;
  font:inherit;
  outline:none;
}

.editorial-capture input:focus {
  border-color:var(--accent, #c8451f);
  box-shadow:0 0 0 2px rgba(200, 69, 31, .16);
}

.editorial-capture button {
  min-height:46px;
  border:1px solid var(--accent, #c8451f);
  border-radius:999px;
  background:var(--accent, #c8451f);
  color:var(--paper, #f5f1ea);
  padding:0 18px;
  font:inherit;
  font-weight:800;
  cursor:pointer;
}

.editorial-capture button:disabled {
  cursor:default;
  opacity:.7;
}

.editorial-capture-fine,
.editorial-capture-error {
  margin-top:10px !important;
  color:var(--muted, #6f675b);
  font-size:13px;
  line-height:1.45;
}

.editorial-capture-error.is-error {
  color:#b83220;
}

.editorial-capture-error:empty {
  display:none;
}

.editorial-capture-success {
  display:grid;
  gap:8px;
}

.editorial-capture-confirm {
  color:var(--ink, #0f0e0c);
  font-size:18px;
  font-weight:800;
}

.editorial-capture-confirm--success {
  color:#168a54;
}

@media (max-width:640px) {
  .editorial-capture {
    padding:18px;
  }

  .editorial-capture button {
    width:100%;
  }
}
