/* StayIn — Email signup section (landings + home).
 * Designed to sit near the lower CTA, styled to match the existing
 * sage-green / cream palette without competing with the primary CTAs.
 * All custom-property fallbacks point at the actual theme tokens so
 * the block degrades gracefully if a theme variable is missing.
 */
.email-signup {
  background: var(--bg-card-soft, #fbf5e4);
  border: 1px solid rgba(28, 21, 12, 0.08);
  border-radius: 18px;
  padding: 28px 28px 26px;
  max-width: 640px;
  margin: 40px auto 0;
  text-align: left;
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.5) inset,
              0 2px 14px rgba(28, 21, 12, 0.04);
}
.email-signup-heading {
  font-family: var(--serif, "Playfair Display", Georgia, serif);
  font-style: italic;
  font-weight: 600;
  font-size: 22px;
  line-height: 1.25;
  margin: 0 0 8px;
  color: var(--text, #1c150c);
}
.email-signup-sub {
  font-family: var(--sans, "Inter", system-ui, sans-serif);
  font-size: 14.5px;
  line-height: 1.5;
  color: var(--text-2, #453a2a);
  margin: 0 0 16px;
}
.email-signup-row {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  align-items: stretch;
}
.email-signup-input {
  flex: 1 1 220px;
  min-width: 0;
  padding: 11px 14px;
  font-size: 15px;
  font-family: var(--sans, "Inter", system-ui, sans-serif);
  color: var(--text, #1c150c);
  background: #ffffff;
  border: 1px solid rgba(28, 21, 12, 0.14);
  border-radius: 12px;
  transition: border-color 180ms ease, box-shadow 180ms ease;
}
.email-signup-input::placeholder {
  color: var(--text-3, #7e7260);
  opacity: 0.7;
}
.email-signup-input:focus {
  outline: none;
  border-color: var(--green-mid, #1d4a39);
  box-shadow: 0 0 0 3px rgba(20, 56, 43, 0.10);
}
.email-signup-input:disabled {
  background: #f5f1e7;
  color: var(--text-3, #7e7260);
}
.email-signup-submit {
  flex: 0 0 auto;
  padding: 11px 18px;
  font-size: 14.5px;
  font-weight: 600;
  white-space: nowrap;
  cursor: pointer;
}
.email-signup-submit:disabled {
  opacity: 0.55;
  cursor: progress;
}
.email-signup-form.is-submitted .email-signup-submit { display: none; }
.email-signup-form.is-submitted .email-signup-input  { opacity: 0.7; }
.email-signup-msg {
  margin: 12px 0 0;
  font-size: 13.5px;
  min-height: 1.4em;
  color: var(--text-3, #7e7260);
}
.email-signup-msg.is-success {
  color: var(--green-mid, #1d4a39);
  font-weight: 500;
}
.email-signup-msg.is-error {
  color: #a45050;
}
@media (max-width: 559.98px) {
  .email-signup {
    padding: 22px 20px 20px;
    border-radius: 16px;
    margin-top: 28px;
  }
  .email-signup-heading { font-size: 20px; }
  .email-signup-row { flex-direction: column; gap: 8px; }
  .email-signup-submit { width: 100%; }
}
