/* Wizefive Marketing Ops — forms + consent banner.
   Self-contained, Notion-flavoured to match the Wizefive theme. */

.wzm-form { display: flex; flex-direction: column; gap: 12px; text-align: left; }
.wzm-form__row { display: flex; flex-direction: column; gap: 10px; }
@media (min-width: 560px) {
  .wzm-form--email .wzm-form__row { flex-direction: row; }
  .wzm-form--email .wzm-input { flex: 1; }
}

.wzm-field { display: flex; flex-direction: column; gap: 6px; }
.wzm-field label { font-size: 13px; font-weight: 500; color: rgb(55, 53, 47); }

.wzm-input {
  width: 100%;
  border: 1px solid rgba(55, 53, 47, 0.16);
  border-radius: 10px;
  background: #fff;
  padding: 11px 14px;
  font: inherit;
  font-size: 15px;
  color: rgb(55, 53, 47);
  transition: border-color 0.2s;
}
.wzm-input:focus { outline: none; border-color: #2383e2; box-shadow: 0 0 0 3px rgba(35, 131, 226, 0.12); }
.wzm-textarea { min-height: 132px; resize: vertical; }

.wzm-btn {
  display: inline-flex; align-items: center; justify-content: center;
  border: 1px solid transparent; border-radius: 10px;
  background: #2383e2; color: #fff;
  padding: 11px 18px; font: inherit; font-size: 14px; font-weight: 500;
  cursor: pointer; transition: background 0.2s, transform 0.2s;
}
.wzm-btn:hover { background: #1a75d1; transform: translateY(-1px); }
.wzm-btn:disabled { opacity: 0.6; cursor: default; transform: none; }
.wzm-btn--lg { padding: 12px 22px; font-size: 15px; align-self: flex-start; }
.wzm-btn--ghost { background: transparent; color: rgb(55, 53, 47); border-color: rgba(55, 53, 47, 0.16); }
.wzm-btn--ghost:hover { background: rgba(55, 53, 47, 0.05); }

.wzm-check { display: flex; align-items: flex-start; gap: 10px; font-size: 13px; color: rgb(120, 119, 116); text-align: left; }
.wzm-check input { margin-top: 3px; }

.wzm-note { font-size: 12px; color: rgb(120, 119, 116); margin: 0; }

.wzm-feedback { margin: 4px 0 0; font-size: 14px; }
.wzm-feedback.is-error { color: #c26b5a; }
.wzm-feedback.is-success { color: #4f9d6b; }

/* Consent banner */
.wzm-cookie {
  position: fixed; bottom: 16px; left: 16px; right: 16px; z-index: 60;
  margin-inline: auto; max-width: 32rem;
  border: 1px solid rgba(55, 53, 47, 0.12); border-radius: 12px;
  background: #fff; box-shadow: 0 4px 16px rgba(15, 15, 15, 0.08);
  padding: 20px;
}
.wzm-cookie[hidden] { display: none; }
.wzm-cookie h4 { margin: 0; font-size: 14px; font-weight: 600; color: rgb(55, 53, 47); }
.wzm-cookie p { margin: 8px 0 0; font-size: 13px; line-height: 1.6; color: rgb(120, 119, 116); }
.wzm-cookie__actions { margin-top: 16px; display: flex; gap: 8px; }

.screen-reader-text {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0;
}
