/* ── Page content area (used when no page builder) ── */
.page-content {
  font-family: var(--font-body);
  font-size: 1rem;
  line-height: 1.8;
  color: var(--color-text);
  max-width: 900px;
}
.page-content p {
  margin-bottom: 16px;
}
.page-content strong {
  font-weight: 700;
}
.page-content a {
  color: var(--color-green);
  text-decoration: underline;
}

/* ── Gravity Forms — Theme Overrides ───────────────
   Light cosmetic overrides only — does NOT disable
   Gravity Forms' own scripts or styles
──────────────────────────────────────────────────── */

/* Input fields */
.gform_wrapper input[type="text"],
.gform_wrapper input[type="email"],
.gform_wrapper input[type="tel"],
.gform_wrapper input[type="url"],
.gform_wrapper input[type="number"],
.gform_wrapper input[type="password"],
.gform_wrapper input[type="date"],
.gform_wrapper textarea,
.gform_wrapper select {
  font-family: var(--font-body);
  font-size: 0.95rem;
  color: var(--color-text);
  border: 1.5px solid rgba(0, 0, 0, 0.15);
  border-radius: 8px;
  padding: 10px 14px;
  transition: border-color 0.2s ease;
}

.gform_wrapper input[type="text"]:focus,
.gform_wrapper input[type="email"]:focus,
.gform_wrapper input[type="tel"]:focus,
.gform_wrapper input[type="url"]:focus,
.gform_wrapper input[type="number"]:focus,
.gform_wrapper input[type="password"]:focus,
.gform_wrapper textarea:focus,
.gform_wrapper select:focus {
  outline: none;
  border-color: var(--color-green);
  box-shadow: 0 0 0 3px rgba(35, 145, 60, 0.1);
}

/* Labels */
.gform_wrapper .gfield_label {
  font-family: var(--font-body);
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--color-text);
}

/* Submit button — targets exact GF classes from DOM */
input#gform_submit_button_1,
input.gform_button,
input[type="submit"].gform_button,
input[type="submit"].button,
.gform_footer input[type="submit"],
.gform_wrapper input[type="submit"] {
  background-color: #23913c !important;
  color: #ffffff !important;
  font-family: "Urbanist", sans-serif !important;
  font-size: 0.8rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  padding: 14px 32px !important;
  border: 2px solid #23913c !important;
  border-radius: 50px !important;
  cursor: pointer !important;
  transition:
    background-color 0.2s ease,
    border-color 0.2s ease !important;
  width: auto !important;
  box-shadow: none !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  margin-top: 10px !important;
  display: inline-block !important;
}
input#gform_submit_button_1:hover,
input.gform_button:hover,
input[type="submit"].gform_button:hover,
.gform_footer input[type="submit"]:hover {
  background-color: #1a7230 !important;
  border-color: #1a7230 !important;
}

/* Validation errors */
.gform_wrapper .gfield_error input,
.gform_wrapper .gfield_error textarea,
.gform_wrapper .gfield_error select {
  border-color: #e53e3e;
}
.gform_wrapper .validation_message {
  color: #e53e3e;
  font-size: 0.8rem;
  font-family: var(--font-body);
}

/* Confirmation message */
.gform_confirmation_wrapper {
  font-family: var(--font-body);
  font-size: 1rem;
  color: var(--color-text);
  padding: 24px;
  background: #e8f5ed;
  border-radius: 10px;
  border-left: 4px solid var(--color-green);
}

/* Checkbox & radio accent color */
.gform_wrapper input[type="checkbox"],
.gform_wrapper input[type="radio"] {
  accent-color: var(--color-green);
}
