input,
textarea,
select {
  width: 100%;
  padding: 0.875rem 1rem;
  border: 1px solid var(--form-border, #cbd5e1);
  border-radius: var(--radius, 0.375rem);
  background: var(--form-bg, #ffffff);
  color: var(--form-text, var(--ink, #0f172a));
}

textarea {
  min-height: 10rem;
  resize: vertical;
}

input:focus,
textarea:focus,
select:focus {
  outline: 2px solid var(--form-focus, rgba(29, 76, 124, 0.2));
  outline-offset: 0;
  border-color: var(--form-focus-border, var(--brand, #1d4c7c));
}

label {
  display: inline-block;
  margin-bottom: 0.5rem;
  font-family: var(--sans, Arial, sans-serif);
  font-weight: 600;
}

form .btn-layout {
  margin-top: 0.75rem;
}

/* ---------------------------------------------------------------------------
 * Gravity Forms — orbital theme baseline
 * Modern Gravity Forms ships its own orbital/foundation CSS that overrides
 * theme styling unless you neutralize it here. Override the GF CSS variables
 * (preferred) and add a small set of high-specificity resets. Theme pages
 * still apply their own button/colors via more specific selectors.
 * ------------------------------------------------------------------------- */
.gform_wrapper {
  --gf-color-primary: var(--brand, #1d4c7c);
  --gf-color-primary-rgb: 29, 76, 124;
  --gf-color-primary-darker: var(--brand-dark, #163a5e);
  --gf-color-primary-contrast: #ffffff;
  --gf-color-primary-contrast-darker: #ffffff;
  --gf-color-secondary: var(--ink, #0f172a);
  --gf-color-secondary-darker: #000000;
  --gf-color-secondary-contrast: #ffffff;
  --gf-ctrl-border-color-focus: var(--brand, #1d4c7c);
  --gf-ctrl-border-color-error: #b91c1c;
}

/* Inline-form helper — apply on the wrapping element to render
 * "single input + submit button" forms (notify-me, newsletter, etc.) on one row. */
.gf-inline .gform_wrapper form {
  display: flex;
  flex-wrap: nowrap;
  align-items: stretch;
  gap: 0;
  background: var(--form-bg, #f6f6f6);
  border-radius: var(--radius, 0.375rem);
  overflow: hidden;
  padding: 4px;
}
.gf-inline .gform_wrapper .gform_body,
.gf-inline .gform_wrapper .gform-body,
.gf-inline .gform_wrapper .gform_fields { flex: 1; margin: 0; padding: 0; }
.gf-inline .gform_wrapper .gfield { margin: 0 !important; padding: 0 !important; }
.gf-inline .gform_wrapper .gfield_label { display: none !important; }
.gf-inline .gform_wrapper input[type="email"],
.gf-inline .gform_wrapper input[type="text"] {
  width: 100% !important;
  border: 0 !important;
  background: transparent !important;
  outline: none !important;
  box-shadow: none !important;
}
.gf-inline .gform_wrapper .gform_footer {
  margin: 0 !important;
  padding: 0 !important;
  display: flex;
  align-items: stretch;
}
.gf-inline .gform_wrapper .gform_button.button {
  margin: 0 !important;
  width: auto !important;
}
