.card {
  background: var(--bg);
  border-radius: var(--radius);
  box-shadow: var(--shadow-out);
  padding: 30px 26px;
}
.card h2 { font-size: 21px; font-weight: 700; color: var(--text-primary); margin-bottom: 6px; }
.card .subtitle { font-size: 14px; color: var(--text-muted); margin-bottom: 26px; line-height: 1.6; }

/* CF7 */
.wpcf7 form { margin-top: 6px; }
.wpcf7 form p { margin: 0 0 16px; }
.wpcf7 form label { display: block; font-size: 13px; font-weight: 600; color: var(--text-secondary); margin-bottom: 7px; }
.wpcf7 form .wpcf7-form-control-wrap { display: block; }

.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"] {
  width: 100%;
  padding: 13px 16px;
  border: none;
  outline: none;
  background: var(--bg);
  border-radius: var(--radius-sm);
  box-shadow: var(--shadow-in);
  font-family: 'Heebo', sans-serif;
  font-size: 15px;
  color: var(--text-primary);
  transition: box-shadow 0.2s;
}
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"] { direction: ltr; text-align: right; }
.wpcf7 input:focus { box-shadow: var(--shadow-in), 0 0 0 2px var(--beige); }

.wpcf7 .wpcf7-submit {
  width: 100%;
  padding: 15px 24px;
  background: linear-gradient(135deg, var(--beige), var(--accent));
  color: #fff;
  border: none;
  border-radius: var(--radius-pill);
  font-family: 'Heebo', sans-serif;
  font-size: 16px;
  font-weight: 700;
  cursor: pointer;
  box-shadow: -3px -3px 8px rgba(255,255,255,0.6), 3px 3px 10px rgba(139,115,85,0.38);
  transition: all 0.2s ease;
}
.wpcf7 .wpcf7-submit:hover { transform: translateY(-1px); box-shadow: -4px -4px 12px rgba(255,255,255,0.7), 5px 5px 14px rgba(139,115,85,0.42); }
.wpcf7 .wpcf7-submit:active { transform: translateY(1px); box-shadow: var(--shadow-in); }
.wpcf7-not-valid-tip { color: var(--error); font-size: 12px; margin-top: 6px; }
.wpcf7-response-output { border: none; background: var(--cream); padding: 10px 12px; border-radius: var(--radius-sm); font-size: 12px; color: var(--text-secondary); }

.turnstile-wrap { display: flex; justify-content: center; margin: 8px 0 16px; }

.privacy-note { text-align: center; font-size: 12px; color: var(--text-muted); margin-top: 14px; }

/* Google button wrapper + divider */
.fungi-google-wrap { display: flex; justify-content: center; margin-bottom: 20px; }

.fungi-divider {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0 0 16px;
  color: var(--text-muted);
  font-size: 13px;
}
.fungi-divider::before,
.fungi-divider::after {
  content: '';
  flex: 1;
  height: 1px;
  background: rgba(139,115,85,0.18);
}

.fungi-alt-label {
  font-size: 12px;
  font-weight: 600;
  color: var(--text-muted);
  text-align: center;
  margin-bottom: 12px;
  letter-spacing: 0.04em;
}

@media (max-width: 480px) { .card { padding: 24px 18px; } }
