/* Purpose: Contact Form 7 styling scoped to the theme. */

.final-cta__form {
  padding: var(--space-10) var(--space-8);
  background-color: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-xl);
  box-shadow: var(--shadow-xl);
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
}

.gb-form__row { margin-bottom: var(--space-6); }

.gb-form__label {
  display: block;
  margin-bottom: var(--space-3);
  font-size: var(--text-xs);
  font-weight: var(--weight-bold);
  letter-spacing: var(--tracking-wide);
  text-transform: uppercase;
  color: var(--color-text-muted);
}

.final-cta__form input[type="text"],
.final-cta__form input[type="email"],
.final-cta__form input[type="tel"],
.final-cta__form textarea {
  width: 100%;
  padding: var(--space-4) var(--space-5);
  background-color: rgba(255,255,255,0.04);
  border: 1px solid var(--color-border-strong);
  border-radius: var(--radius-md);
  color: var(--color-text);
  font-size: var(--text-base);
  transition: border-color var(--duration-base) var(--ease-out), box-shadow var(--duration-base) var(--ease-out), background-color var(--duration-base) var(--ease-out);
}

.final-cta__form input::placeholder,
.final-cta__form textarea::placeholder { color: var(--color-text-subtle); }

.final-cta__form input:focus,
.final-cta__form textarea:focus {
  outline: none;
  background-color: rgba(255,255,255,0.07);
  border-color: var(--color-primary);
  box-shadow: 0 0 0 3px rgba(255,145,75,0.16);
}

.final-cta__form textarea { min-height: 132px; resize: vertical; }

.final-cta__form .wpcf7-submit {
  width: 100%;
  margin-top: var(--space-2);
  padding: var(--space-5) var(--space-8);
  border: 0;
  border-radius: var(--radius-full);
  background: var(--gradient-gold-soft);
  color: var(--color-ink);
  font-size: var(--text-sm);
  font-weight: var(--weight-bold);
  letter-spacing: var(--tracking-wide);
  text-transform: uppercase;
  cursor: pointer;
  box-shadow: var(--glow-sm);
  transition: transform var(--duration-base) var(--ease-spring), box-shadow var(--duration-base) var(--ease-out);
}
.final-cta__form .wpcf7-submit:hover { transform: translateY(-2px); box-shadow: var(--glow-md); }

.wpcf7-not-valid-tip { color: var(--color-error); font-size: var(--text-xs); margin-top: var(--space-2); }
.wpcf7-response-output {
  margin: var(--space-6) 0 0 !important;
  padding: var(--space-4) var(--space-5) !important;
  border-radius: var(--radius-md);
  border-width: 1px !important;
  font-size: var(--text-sm);
  color: var(--color-text);
}
.wpcf7 form.sent .wpcf7-response-output { border-color: var(--color-success) !important; }
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.failed .wpcf7-response-output { border-color: var(--color-error) !important; }
